2 * Copyright 2009, Ingo Weinhold, ingo_weinhold@gmx.de.
3 * Copyright 2013-2015, Rene Gollent, rene@gollent.com.
4 * Distributed under the terms of the MIT License.
6 #ifndef TEAM_SETTINGS_H
7 #define TEAM_SETTINGS_H
12 #include <ObjectList.h>
16 class BreakpointSetting
;
18 class TeamFileManagerSettings
;
19 class TeamSignalSettings
;
21 class TeamUiSettingsFactory
;
27 TeamSettings(const TeamSettings
& other
);
28 // throws std::bad_alloc
31 status_t
SetTo(Team
* team
);
32 status_t
SetTo(const BMessage
& archive
,
33 const TeamUiSettingsFactory
& factory
);
34 status_t
WriteTo(BMessage
& archive
) const;
36 const BString
& TeamName() const { return fTeamName
; }
38 int32
CountBreakpoints() const;
39 const BreakpointSetting
* BreakpointAt(int32 index
) const;
41 int32
CountUiSettings() const;
42 const TeamUiSettings
* UiSettingAt(int32 index
) const;
43 const TeamUiSettings
* UiSettingFor(const char* id
) const;
44 status_t
AddUiSettings(TeamUiSettings
* settings
);
46 TeamSettings
& operator=(const TeamSettings
& other
);
47 // throws std::bad_alloc
49 TeamFileManagerSettings
*
50 FileManagerSettings() const;
51 status_t
SetFileManagerSettings(
52 TeamFileManagerSettings
* settings
);
54 TeamSignalSettings
* SignalSettings() const;
55 status_t
SetSignalSettings(
56 TeamSignalSettings
* settings
);
59 typedef BObjectList
<BreakpointSetting
> BreakpointList
;
60 typedef BObjectList
<TeamUiSettings
> UiSettingsList
;
66 BreakpointList fBreakpoints
;
67 UiSettingsList fUiSettings
;
68 TeamFileManagerSettings
*
70 TeamSignalSettings
* fSignalSettings
;
75 #endif // TEAM_SETTINGS_H