aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPavel Labath <pavelo@centrum.sk>2011-07-14 11:02:29 (GMT)
committerPaul Tagliamonte <paultag@fluxbox.org>2012-04-07 02:11:31 (GMT)
commit6fad392312cf634020354fd66afe95ca530d18e7 (patch)
tree457e57fbf302e0b0daf50dbc42050859d0faeb9a
parentdd6dfdfaa19bdc1e57f3ac39ab778fecea3ad6b6 (diff)
downloadfluxbox_paul-6fad392312cf634020354fd66afe95ca530d18e7.zip
fluxbox_paul-6fad392312cf634020354fd66afe95ca530d18e7.tar.bz2
Attach a modifiedSig handler to the session.menuFile resource
-rw-r--r--src/Screen.cc10
-rw-r--r--src/fluxbox.hh2
2 files changed, 6 insertions, 6 deletions
diff --git a/src/Screen.cc b/src/Screen.cc
index a667406..956cebf 100644
--- a/src/Screen.cc
+++ b/src/Screen.cc
@@ -805,8 +805,6 @@ BScreen::addExtraWindowMenu(const FbTk::FbString &label, const FbTk::RefCount<Fb
805} 805}
806 806
807void BScreen::reconfigure() { 807void BScreen::reconfigure() {
808 Fluxbox *fluxbox = Fluxbox::instance();
809
810 focusedWinFrameTheme()->setAlpha(*resource.focused_alpha); 808 focusedWinFrameTheme()->setAlpha(*resource.focused_alpha);
811 unfocusedWinFrameTheme()->setAlpha(*resource.unfocused_alpha); 809 unfocusedWinFrameTheme()->setAlpha(*resource.unfocused_alpha);
812 m_menutheme->setAlpha(*resource.menu_alpha); 810 m_menutheme->setAlpha(*resource.menu_alpha);
@@ -825,7 +823,6 @@ void BScreen::reconfigure() {
825 m_workspaces_list[i]->setName( resource.workspace_names.get()[i] ); 823 m_workspaces_list[i]->setName( resource.workspace_names.get()[i] );
826 824
827 // update menu filenames 825 // update menu filenames
828 m_rootmenu->reloadHelper()->setMainFile(fluxbox->getMenuFilename());
829 m_windowmenu->reloadHelper()->setMainFile(windowMenuFilename()); 826 m_windowmenu->reloadHelper()->setMainFile(windowMenuFilename());
830 827
831 // reconfigure workspaces 828 // reconfigure workspaces
@@ -1342,7 +1339,10 @@ void BScreen::reassociateWindow(FluxboxWindow *w, unsigned int wkspc_id,
1342void BScreen::initMenus() { 1339void BScreen::initMenus() {
1343 m_workspacemenu = MenuCreator::createMenuType("workspacemenu", screenNumber()); 1340 m_workspacemenu = MenuCreator::createMenuType("workspacemenu", screenNumber());
1344 1341
1345 m_rootmenu->reloadHelper()->setMainFile(Fluxbox::instance()->getMenuFilename()); 1342 m_tracker.join(Fluxbox::instance()->getMenuResource().modifiedSig(),
1343 MemFun(*m_rootmenu->reloadHelper(), &FbTk::AutoReloadHelper::setMainFile));
1344 m_rootmenu->reloadHelper()->setMainFile(*Fluxbox::instance()->getMenuResource());
1345
1346 m_windowmenu->reloadHelper()->setMainFile(windowMenuFilename()); 1346 m_windowmenu->reloadHelper()->setMainFile(windowMenuFilename());
1347} 1347}
1348 1348
@@ -1356,7 +1356,7 @@ void BScreen::rereadMenu() {
1356 1356
1357 m_rootmenu->removeAll(); 1357 m_rootmenu->removeAll();
1358 try { 1358 try {
1359 l.loadfile(FbTk::StringUtil::expandFilename(fb->getMenuFilename()).c_str()); 1359 l.loadfile(FbTk::StringUtil::expandFilename(*fb->getMenuResource()).c_str());
1360 l.call(0, 1); 1360 l.call(0, 1);
1361 MenuCreator::createMenu(*m_rootmenu, l, m_rootmenu->reloadHelper()); 1361 MenuCreator::createMenu(*m_rootmenu, l, m_rootmenu->reloadHelper());
1362 } 1362 }
diff --git a/src/fluxbox.hh b/src/fluxbox.hh
index 7d479ae..dc3b0b3 100644
--- a/src/fluxbox.hh
+++ b/src/fluxbox.hh
@@ -120,7 +120,7 @@ public:
120 FbTk::StringResource &getStyleResource() { return m_rc_stylefile; } 120 FbTk::StringResource &getStyleResource() { return m_rc_stylefile; }
121 const std::string &getStyleOverlayFilename() const { return *m_rc_styleoverlayfile; } 121 const std::string &getStyleOverlayFilename() const { return *m_rc_styleoverlayfile; }
122 122
123 const std::string &getMenuFilename() const { return *m_rc_menufile; } 123 FbTk::StringResource &getMenuResource() { return m_rc_menufile; }
124 FbTk::StringResource &getAppsResource() { return m_rc_appsfile; } 124 FbTk::StringResource &getAppsResource() { return m_rc_appsfile; }
125 FbTk::StringResource &getKeysResource() { return m_rc_keyfile; } 125 FbTk::StringResource &getKeysResource() { return m_rc_keyfile; }
126 int colorsPerChannel() const { return *m_rc_colors_per_channel; } 126 int colorsPerChannel() const { return *m_rc_colors_per_channel; }