use FbMenu::window instead of WindowCmd<>::window for displaying items in the window menu
This commit is contained in:
parent
fd0389d2e1
commit
41b2e0ced4
4 changed files with 20 additions and 21 deletions
|
@ -35,14 +35,11 @@ FbMenu::FbMenu(FbTk::ThemeProxy<FbTk::MenuTheme> &tm,
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
void FbMenu::show() {
|
|
||||||
WindowCmd<void>::setWindow(s_window);
|
|
||||||
FbTk::Menu::show();
|
|
||||||
}
|
|
||||||
|
|
||||||
void FbMenu::buttonPressEvent(XButtonEvent &be) {
|
void FbMenu::buttonPressEvent(XButtonEvent &be) {
|
||||||
|
WinClient *old = WindowCmd<void>::client();
|
||||||
WindowCmd<void>::setWindow(s_window);
|
WindowCmd<void>::setWindow(s_window);
|
||||||
FbTk::Menu::buttonPressEvent(be);
|
FbTk::Menu::buttonPressEvent(be);
|
||||||
|
WindowCmd<void>::setClient(old);
|
||||||
}
|
}
|
||||||
|
|
||||||
void FbMenu::buttonReleaseEvent(XButtonEvent &be) {
|
void FbMenu::buttonReleaseEvent(XButtonEvent &be) {
|
||||||
|
@ -55,13 +52,17 @@ void FbMenu::buttonReleaseEvent(XButtonEvent &be) {
|
||||||
screen->getHeadWidth(head),
|
screen->getHeadWidth(head),
|
||||||
screen->getHeadHeight(head));
|
screen->getHeadHeight(head));
|
||||||
}
|
}
|
||||||
WindowCmd<void>::setWindow(s_window);
|
|
||||||
|
|
||||||
// now get on with the show
|
// now get on with the show
|
||||||
|
WinClient *old = WindowCmd<void>::client();
|
||||||
|
WindowCmd<void>::setWindow(s_window);
|
||||||
FbTk::Menu::buttonReleaseEvent(be);
|
FbTk::Menu::buttonReleaseEvent(be);
|
||||||
|
WindowCmd<void>::setClient(old);
|
||||||
}
|
}
|
||||||
|
|
||||||
void FbMenu::keyPressEvent(XKeyEvent &ke) {
|
void FbMenu::keyPressEvent(XKeyEvent &ke) {
|
||||||
|
WinClient *old = WindowCmd<void>::client();
|
||||||
WindowCmd<void>::setWindow(s_window);
|
WindowCmd<void>::setWindow(s_window);
|
||||||
FbTk::Menu::keyPressEvent(ke);
|
FbTk::Menu::keyPressEvent(ke);
|
||||||
|
WindowCmd<void>::setClient(old);
|
||||||
}
|
}
|
||||||
|
|
|
@ -42,7 +42,6 @@ public:
|
||||||
virtual ~FbMenu() { }
|
virtual ~FbMenu() { }
|
||||||
void raise() { m_layeritem.raise(); }
|
void raise() { m_layeritem.raise(); }
|
||||||
void lower() { m_layeritem.lower(); }
|
void lower() { m_layeritem.lower(); }
|
||||||
void show();
|
|
||||||
void buttonPressEvent(XButtonEvent &be);
|
void buttonPressEvent(XButtonEvent &be);
|
||||||
void buttonReleaseEvent(XButtonEvent &be);
|
void buttonReleaseEvent(XButtonEvent &be);
|
||||||
void keyPressEvent(XKeyEvent &ke);
|
void keyPressEvent(XKeyEvent &ke);
|
||||||
|
|
|
@ -168,14 +168,14 @@ private:
|
||||||
class MenuContext: public LayerObject {
|
class MenuContext: public LayerObject {
|
||||||
public:
|
public:
|
||||||
void moveToLayer(int layer_number) {
|
void moveToLayer(int layer_number) {
|
||||||
if (WindowCmd<void>::window() == 0)
|
if (FbMenu::window() == 0)
|
||||||
return;
|
return;
|
||||||
WindowCmd<void>::window()->moveToLayer(layer_number);
|
FbMenu::window()->moveToLayer(layer_number);
|
||||||
}
|
}
|
||||||
int layerNumber() const {
|
int layerNumber() const {
|
||||||
if (WindowCmd<void>::window() == 0)
|
if (FbMenu::window() == 0)
|
||||||
return -1;
|
return -1;
|
||||||
return WindowCmd<void>::window()->layerItem().getLayerNum();
|
return FbMenu::window()->layerItem().getLayerNum();
|
||||||
}
|
}
|
||||||
|
|
||||||
};
|
};
|
||||||
|
|
|
@ -29,7 +29,6 @@
|
||||||
#include "FbMenu.hh"
|
#include "FbMenu.hh"
|
||||||
#include "FbCommands.hh"
|
#include "FbCommands.hh"
|
||||||
#include "fluxbox.hh"
|
#include "fluxbox.hh"
|
||||||
#include "WindowCmd.hh"
|
|
||||||
#include "Layer.hh"
|
#include "Layer.hh"
|
||||||
|
|
||||||
#include "FbTk/I18n.hh"
|
#include "FbTk/I18n.hh"
|
||||||
|
@ -250,23 +249,23 @@ public:
|
||||||
}
|
}
|
||||||
|
|
||||||
bool isSelected() const {
|
bool isSelected() const {
|
||||||
if (WindowCmd<void>::window() == 0)
|
if (FbMenu::window() == 0)
|
||||||
return false;
|
return false;
|
||||||
|
|
||||||
if (WindowCmd<void>::window()->numClients()) // ensure it HAS clients
|
if (FbMenu::window()->numClients()) // ensure it HAS clients
|
||||||
return Remember::instance().isRemembered(WindowCmd<void>::window()->winClient(), m_attrib);
|
return Remember::instance().isRemembered(FbMenu::window()->winClient(), m_attrib);
|
||||||
else
|
else
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
bool isEnabled() const {
|
bool isEnabled() const {
|
||||||
if (WindowCmd<void>::window() == 0)
|
if (FbMenu::window() == 0)
|
||||||
return false;
|
return false;
|
||||||
|
|
||||||
if (m_attrib != Remember::REM_JUMPWORKSPACE)
|
if (m_attrib != Remember::REM_JUMPWORKSPACE)
|
||||||
return true;
|
return true;
|
||||||
else if (WindowCmd<void>::window()->numClients())
|
else if (FbMenu::window()->numClients())
|
||||||
return (Remember::instance().isRemembered(WindowCmd<void>::window()->winClient(), Remember::REM_WORKSPACE));
|
return (Remember::instance().isRemembered(FbMenu::window()->winClient(), Remember::REM_WORKSPACE));
|
||||||
else
|
else
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
@ -274,11 +273,11 @@ public:
|
||||||
void click(int button, int time, unsigned int mods) {
|
void click(int button, int time, unsigned int mods) {
|
||||||
// reconfigure only does stuff if the apps file has changed
|
// reconfigure only does stuff if the apps file has changed
|
||||||
Remember::instance().checkReload();
|
Remember::instance().checkReload();
|
||||||
if (WindowCmd<void>::window() != 0) {
|
if (FbMenu::window() != 0) {
|
||||||
if (isSelected()) {
|
if (isSelected()) {
|
||||||
Remember::instance().forgetAttrib(WindowCmd<void>::window()->winClient(), m_attrib);
|
Remember::instance().forgetAttrib(FbMenu::window()->winClient(), m_attrib);
|
||||||
} else {
|
} else {
|
||||||
Remember::instance().rememberAttrib(WindowCmd<void>::window()->winClient(), m_attrib);
|
Remember::instance().rememberAttrib(FbMenu::window()->winClient(), m_attrib);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
Remember::instance().save();
|
Remember::instance().save();
|
||||||
|
|
Loading…
Reference in a new issue