aboutsummaryrefslogtreecommitdiff
path: root/src/Slit.cc
diff options
context:
space:
mode:
authorPavel Labath <pavelo@centrum.sk>2011-08-15 21:03:57 (GMT)
committerPavel Labath <pavelo@centrum.sk>2011-11-01 10:04:02 (GMT)
commit698a4af938737295494dade50950d1aeebc8b55d (patch)
tree075017c3a59ac2575f708d223cf2391e82b9eb69 /src/Slit.cc
parent678a98de943963e993827540496741ae814af8bd (diff)
downloadfluxbox_paul-698a4af938737295494dade50950d1aeebc8b55d.zip
fluxbox_paul-698a4af938737295494dade50950d1aeebc8b55d.tar.bz2
Move declarations of Resource enums to a separate file
The reason for this is that I need to access those enums from fluxbox-update_configs and I don't want to #include and link everything in src. I also merged Slit::Placement, Toolbar::Placement and FbWinFrame::TabPlacement into one enum.
Diffstat (limited to 'src/Slit.cc')
-rw-r--r--src/Slit.cc73
1 files changed, 26 insertions, 47 deletions
diff --git a/src/Slit.cc b/src/Slit.cc
index 9fc4ef1..1cf13cf 100644
--- a/src/Slit.cc
+++ b/src/Slit.cc
@@ -89,27 +89,6 @@ using std::endl;
89using std::hex; 89using std::hex;
90using std::dec; 90using std::dec;
91 91
92namespace FbTk {
93
94template<>
95const EnumTraits<Slit::Placement>::Pair EnumTraits<Slit::Placement>::s_map[] = {
96 { "TopLeft", Slit::TOPLEFT },
97 { "LeftCenter", Slit::LEFTCENTER },
98 { "BottomLeft", Slit::BOTTOMLEFT },
99 { "TopCenter", Slit::TOPCENTER },
100 { "BottomCenter", Slit::BOTTOMCENTER },
101 { "TopRight", Slit::TOPRIGHT },
102 { "RightCenter", Slit::RIGHTCENTER },
103 { "BottomRight", Slit::BOTTOMRIGHT },
104 { "LeftTop", Slit::LEFTTOP },
105 { "RightTop", Slit::RIGHTTOP },
106 { "LeftBottom", Slit::LEFTBOTTOM },
107 { "RightBottom", Slit::RIGHTBOTTOM },
108 { NULL, Slit::RIGHTBOTTOM },
109};
110
111} // end namespace FbTk
112
113namespace { 92namespace {
114 93
115class SlitClientMenuItem: public FbTk::MenuItem{ 94class SlitClientMenuItem: public FbTk::MenuItem{
@@ -145,7 +124,7 @@ private:
145 124
146class PlaceSlitMenuItem: public FbTk::RadioMenuItem { 125class PlaceSlitMenuItem: public FbTk::RadioMenuItem {
147public: 126public:
148 PlaceSlitMenuItem(const FbTk::FbString &label, Slit &slit, Slit::Placement place, FbTk::RefCount<FbTk::Command<void> > &cmd): 127 PlaceSlitMenuItem(const FbTk::FbString &label, Slit &slit, Placement place, FbTk::RefCount<FbTk::Command<void> > &cmd):
149 FbTk::RadioMenuItem(label, cmd), m_slit(slit), m_place(place) { 128 FbTk::RadioMenuItem(label, cmd), m_slit(slit), m_place(place) {
150 setCloseOnClick(false); 129 setCloseOnClick(false);
151 } 130 }
@@ -156,7 +135,7 @@ public:
156 } 135 }
157private: 136private:
158 Slit &m_slit; 137 Slit &m_slit;
159 Slit::Placement m_place; 138 Placement m_place;
160}; 139};
161 140
162} // End anonymous namespace 141} // End anonymous namespace
@@ -231,10 +210,10 @@ Slit::Slit(BScreen &scr, FbTk::Layer &layer)
231 m_screen(scr), 210 m_screen(scr),
232 m_clientlist_menu(new FbMenu(scr.menuTheme(), 211 m_clientlist_menu(new FbMenu(scr.menuTheme(),
233 scr.imageControl(), 212 scr.imageControl(),
234 *scr.layerManager().getLayer(ResourceLayer::MENU)) ), 213 *scr.layerManager().getLayer(LAYERMENU)) ),
235 m_slitmenu(new FbMenu(scr.menuTheme(), 214 m_slitmenu(new FbMenu(scr.menuTheme(),
236 scr.imageControl(), 215 scr.imageControl(),
237 *scr.layerManager().getLayer(ResourceLayer::MENU)) ), 216 *scr.layerManager().getLayer(LAYERMENU)) ),
238#ifdef XINERAMA 217#ifdef XINERAMA
239 m_xineramaheadmenu(0), 218 m_xineramaheadmenu(0),
240#endif // XINERAMA 219#endif // XINERAMA
@@ -258,7 +237,7 @@ Slit::Slit(BScreen &scr, FbTk::Layer &layer)
258 m_rc_placement(scr.resourceManager(), RIGHTBOTTOM, scr.name() + ".slit.placement"), 237 m_rc_placement(scr.resourceManager(), RIGHTBOTTOM, scr.name() + ".slit.placement"),
259 m_rc_alpha(scr.resourceManager(), 255, scr.name() + ".slit.alpha"), 238 m_rc_alpha(scr.resourceManager(), 255, scr.name() + ".slit.alpha"),
260 m_rc_on_head(scr.resourceManager(), 0, scr.name() + ".slit.onhead"), 239 m_rc_on_head(scr.resourceManager(), 0, scr.name() + ".slit.onhead"),
261 m_rc_layernum(scr.resourceManager(), ResourceLayer::DOCK, scr.name() + ".slit.layer") { 240 m_rc_layernum(scr.resourceManager(), LAYERDOCK, scr.name() + ".slit.layer") {
262 241
263 _FB_USES_NLS; 242 _FB_USES_NLS;
264 243
@@ -298,7 +277,7 @@ Slit::Slit(BScreen &scr, FbTk::Layer &layer)
298 m_layermenu.reset(new LayerMenu(scr.menuTheme(), 277 m_layermenu.reset(new LayerMenu(scr.menuTheme(),
299 scr.imageControl(), 278 scr.imageControl(),
300 *scr.layerManager(). 279 *scr.layerManager().
301 getLayer(ResourceLayer::MENU), 280 getLayer(LAYERMENU),
302 this, 281 this,
303 true)); 282 true));
304 m_layermenu->setLabel(_FB_XTEXT(Slit, Layer, "Slit Layer", "Title of Slit Layer Menu")); 283 m_layermenu->setLabel(_FB_XTEXT(Slit, Layer, "Slit Layer", "Title of Slit Layer Menu"));
@@ -1114,7 +1093,7 @@ void Slit::setupMenu() {
1114 1093
1115 FbTk::RefCount<FbTk::Menu> placement_menu( new FbMenu(m_screen.menuTheme(), 1094 FbTk::RefCount<FbTk::Menu> placement_menu( new FbMenu(m_screen.menuTheme(),
1116 m_screen.imageControl(), 1095 m_screen.imageControl(),
1117 *m_screen.layerManager().getLayer(::ResourceLayer::MENU)) ); 1096 *m_screen.layerManager().getLayer(LAYERMENU)) );
1118 1097
1119 1098
1120 // setup base menu 1099 // setup base menu
@@ -1129,7 +1108,7 @@ void Slit::setupMenu() {
1129 if (screen().hasXinerama()) { 1108 if (screen().hasXinerama()) {
1130 m_xineramaheadmenu.reset( new XineramaHeadMenu<Slit>( 1109 m_xineramaheadmenu.reset( new XineramaHeadMenu<Slit>(
1131 screen().menuTheme(), screen(), screen().imageControl(), 1110 screen().menuTheme(), screen(), screen().imageControl(),
1132 *screen().layerManager().getLayer(::ResourceLayer::MENU), *this, 1111 *screen().layerManager().getLayer(LAYERMENU), *this,
1133 _FB_XTEXT(Slit, OnHead, "Slit on Head", "Title of Slits On Head menu")) ); 1112 _FB_XTEXT(Slit, OnHead, "Slit on Head", "Title of Slits On Head menu")) );
1134 m_slitmenu->insert(_FB_XTEXT(Menu, OnHead, "On Head...", "Title of On Head menu"), 1113 m_slitmenu->insert(_FB_XTEXT(Menu, OnHead, "On Head...", "Title of On Head menu"),
1135 FbTk::RefCount<FbTk::Menu>(m_xineramaheadmenu)); 1114 FbTk::RefCount<FbTk::Menu>(m_xineramaheadmenu));
@@ -1167,32 +1146,32 @@ void Slit::setupMenu() {
1167 placement_menu->setLabel(_FB_XTEXT(Slit, Placement, "Slit Placement", "Slit Placement")); 1146 placement_menu->setLabel(_FB_XTEXT(Slit, Placement, "Slit Placement", "Slit Placement"));
1168 placement_menu->setMinimumColumns(3); 1147 placement_menu->setMinimumColumns(3);
1169 1148
1170 typedef pair<FbTk::FbString, Slit::Placement> PlacementP; 1149 typedef pair<FbTk::FbString, Placement> PlacementP;
1171 typedef list<PlacementP> Placements; 1150 typedef list<PlacementP> Placements;
1172 Placements place_menu; 1151 Placements place_menu;
1173 1152
1174 // menu is 3 wide, 5 down 1153 // menu is 3 wide, 5 down
1175 place_menu.push_back(PlacementP(_FB_XTEXT(Align, TopLeft, "Top Left", "Top Left"), Slit::TOPLEFT)); 1154 place_menu.push_back(PlacementP(_FB_XTEXT(Align, TopLeft, "Top Left", "Top Left"), TOPLEFT));
1176 place_menu.push_back(PlacementP(_FB_XTEXT(Align, LeftTop, "Left Top", "Left Top"), Slit::LEFTTOP)); 1155 place_menu.push_back(PlacementP(_FB_XTEXT(Align, LeftTop, "Left Top", "Left Top"), LEFTTOP));
1177 place_menu.push_back(PlacementP(_FB_XTEXT(Align, LeftCenter, "Left Center", "Left Center"), Slit::LEFTCENTER)); 1156 place_menu.push_back(PlacementP(_FB_XTEXT(Align, LeftCenter, "Left Center", "Left Center"), LEFTCENTER));
1178 place_menu.push_back(PlacementP(_FB_XTEXT(Align, LeftBottom, "Left Bottom", "Left Bottom"), Slit::LEFTBOTTOM)); 1157 place_menu.push_back(PlacementP(_FB_XTEXT(Align, LeftBottom, "Left Bottom", "Left Bottom"), LEFTBOTTOM));
1179 place_menu.push_back(PlacementP(_FB_XTEXT(Align, BottomLeft, "Bottom Left", "Bottom Left"), Slit::BOTTOMLEFT)); 1158 place_menu.push_back(PlacementP(_FB_XTEXT(Align, BottomLeft, "Bottom Left", "Bottom Left"), BOTTOMLEFT));
1180 place_menu.push_back(PlacementP(_FB_XTEXT(Align, TopCenter, "Top Center", "Top Center"), Slit::TOPCENTER)); 1159 place_menu.push_back(PlacementP(_FB_XTEXT(Align, TopCenter, "Top Center", "Top Center"), TOPCENTER));
1181 place_menu.push_back(PlacementP("", Slit::TOPLEFT)); 1160 place_menu.push_back(PlacementP("", TOPLEFT));
1182 place_menu.push_back(PlacementP("", Slit::TOPLEFT)); 1161 place_menu.push_back(PlacementP("", TOPLEFT));
1183 place_menu.push_back(PlacementP("", Slit::TOPLEFT)); 1162 place_menu.push_back(PlacementP("", TOPLEFT));
1184 place_menu.push_back(PlacementP(_FB_XTEXT(Align, BottomCenter, "Bottom Center", "Bottom Center"), Slit::BOTTOMCENTER)); 1163 place_menu.push_back(PlacementP(_FB_XTEXT(Align, BottomCenter, "Bottom Center", "Bottom Center"), BOTTOMCENTER));
1185 place_menu.push_back(PlacementP(_FB_XTEXT(Align, TopRight, "Top Right", "Top Right"), Slit::TOPRIGHT)); 1164 place_menu.push_back(PlacementP(_FB_XTEXT(Align, TopRight, "Top Right", "Top Right"), TOPRIGHT));
1186 place_menu.push_back(PlacementP(_FB_XTEXT(Align, RightTop, "Right Top", "Right Top"), Slit::RIGHTTOP)); 1165 place_menu.push_back(PlacementP(_FB_XTEXT(Align, RightTop, "Right Top", "Right Top"), RIGHTTOP));
1187 place_menu.push_back(PlacementP(_FB_XTEXT(Align, RightCenter, "Right Center", "Right Center"), Slit::RIGHTCENTER)); 1166 place_menu.push_back(PlacementP(_FB_XTEXT(Align, RightCenter, "Right Center", "Right Center"), RIGHTCENTER));
1188 place_menu.push_back(PlacementP(_FB_XTEXT(Align, RightBottom, "Right Bottom", "Right Bottom"), Slit::RIGHTBOTTOM)); 1167 place_menu.push_back(PlacementP(_FB_XTEXT(Align, RightBottom, "Right Bottom", "Right Bottom"), RIGHTBOTTOM));
1189 place_menu.push_back(PlacementP(_FB_XTEXT(Align, BottomRight, "Bottom Right", "Bottom Right"), Slit::BOTTOMRIGHT)); 1168 place_menu.push_back(PlacementP(_FB_XTEXT(Align, BottomRight, "Bottom Right", "Bottom Right"), BOTTOMRIGHT));
1190 1169
1191 1170
1192 // create items in sub menu 1171 // create items in sub menu
1193 for (size_t i=0; i<15; ++i) { 1172 for (size_t i=0; i<15; ++i) {
1194 const FbTk::FbString &str = place_menu.front().first; 1173 const FbTk::FbString &str = place_menu.front().first;
1195 Slit::Placement placement = place_menu.front().second; 1174 Placement placement = place_menu.front().second;
1196 1175
1197 if (str == "") { 1176 if (str == "") {
1198 placement_menu->insert(""); 1177 placement_menu->insert("");
@@ -1212,7 +1191,7 @@ void Slit::setupMenu() {
1212 1191
1213void Slit::moveToLayer(int layernum) { 1192void Slit::moveToLayer(int layernum) {
1214 m_layeritem->moveToLayer(layernum); 1193 m_layeritem->moveToLayer(layernum);
1215 *m_rc_layernum = static_cast<ResourceLayer::Type>(layernum); 1194 *m_rc_layernum = static_cast<LayerType>(layernum);
1216} 1195}
1217 1196
1218void Slit::saveOnHead(int head) { 1197void Slit::saveOnHead(int head) {