1 // Ryzom - MMORPG Framework <http://dev.ryzom.com/projects/ryzom/>
2 // Copyright (C) 2010 Winch Gate Property Limited
4 // This source file has been modified by the following contributors:
5 // Copyright (C) 2013 Laszlo KIS-ADAM (dfighter) <dfighter1985@gmail.com>
7 // This program is free software: you can redistribute it and/or modify
8 // it under the terms of the GNU Affero General Public License as
9 // published by the Free Software Foundation, either version 3 of the
10 // License, or (at your option) any later version.
12 // This program is distributed in the hope that it will be useful,
13 // but WITHOUT ANY WARRANTY; without even the implied warranty of
14 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15 // GNU Affero General Public License for more details.
17 // You should have received a copy of the GNU Affero General Public License
18 // along with this program. If not, see <http://www.gnu.org/licenses/>.
22 #ifndef NL_TASK_BAR_MANAGER_H
23 #define NL_TASK_BAR_MANAGER_H
25 #include "nel/misc/types_nl.h"
26 #include "nel/misc/stream.h"
27 #include "dbctrl_sheet.h"
28 #include "nel/gui/group_container.h"
31 // ***************************************************************************
34 // ***************************************************************************
35 #define TBM_SHORTCUT_DB "ui:interface:taskbar:shortcuts:shortcut_bar"
36 #define TBM_EMPTY_SHORTCUT_DB "UI:SHORTCUTS:EMPTY"
37 #define TBM_NUM_BARS 10
38 #define TBM_NUM_SHORTCUT_PER_BAR 10
41 // ***************************************************************************
43 * DEPRECATED. Still here for serial() compatibility (icfg)
44 * Management of the TaskBar
45 * \author Lionel Berenguier
46 * \author Nevrax France
53 static CTaskBarManager
*getInstance();
56 static void releaseInstance();
59 void serial(NLMISC::IStream
&f
);
63 static CTaskBarManager
*_Instance
;
67 CCtrlSheetInfo::TSheetType SheetType
;
74 SheetType
= CCtrlSheetInfo::SheetType_SBrick
;
77 void serial(NLMISC::IStream
&f
);
84 // ***************************************************************************
86 * Management of the TaskBar (windows)
87 * \author Matthieu 'Trap' Besson
88 * \author Nevrax France
91 class CGroupContainerWindows
: public CGroupContainer
95 CGroupContainerWindows(const TCtorParam
¶m
)
96 : CGroupContainer(param
)
101 virtual bool wantSerialConfig() const { return true; }
103 virtual void serialConfig(NLMISC::IStream
&f
);
105 void update(bool updatePos
=false);
107 bool getShowDesktops () { return _ShowDesktops
; }
109 void setShowDesktops (bool newVal
) { _ShowDesktops
= newVal
; update(true); }
116 #endif // NL_TASK_BAR_MANAGER_H
118 /* End of task_bar_manager.h */