diff options
author | Mathias Gumz <akira@fluxbox.org> | 2015-01-16 07:39:05 (GMT) |
---|---|---|
committer | Mathias Gumz <akira@fluxbox.org> | 2015-01-16 07:39:05 (GMT) |
commit | 6d5781ce7198a8a82fd0cae8554e4c120d01df3d (patch) | |
tree | 265fd89d382dcf6d9a8e2ea84813db0332aa83cd /src/MenuCreator.cc | |
parent | b4958780650cfab97d4dc694a34c0c77bf99b26d (diff) | |
download | fluxbox-6d5781ce7198a8a82fd0cae8554e4c120d01df3d.zip fluxbox-6d5781ce7198a8a82fd0cae8554e4c120d01df3d.tar.bz2 |
Refactor: move some menu-creation functions to MenuCreator
Another patch to trim down the code that needs to be part of BScreen
Diffstat (limited to 'src/MenuCreator.cc')
-rw-r--r-- | src/MenuCreator.cc | 18 |
1 files changed, 11 insertions, 7 deletions
diff --git a/src/MenuCreator.cc b/src/MenuCreator.cc index b2b15f5..e8fb90b 100644 --- a/src/MenuCreator.cc +++ b/src/MenuCreator.cc | |||
@@ -482,20 +482,24 @@ bool getStart(FbMenuParser &parser, string &label, FbTk::StringConvertor &labelc | |||
482 | 482 | ||
483 | } // end of anonymous namespace | 483 | } // end of anonymous namespace |
484 | 484 | ||
485 | FbMenu *MenuCreator::createMenu(const string &label, int screen_number) { | ||
486 | BScreen *screen = Fluxbox::instance()->findScreen(screen_number); | ||
487 | if (screen == 0) | ||
488 | return 0; | ||
489 | 485 | ||
490 | FbMenu *menu = new FbMenu(screen->menuTheme(), | 486 | |
491 | screen->imageControl(), | 487 | FbMenu* MenuCreator::createMenu(const std::string& label, BScreen& screen) { |
492 | *screen->layerManager().getLayer(ResourceLayer::MENU)); | 488 | FbTk::Layer* layer = screen.layerManager().getLayer(ResourceLayer::MENU); |
489 | FbMenu *menu = new FbMenu(screen.menuTheme(), screen.imageControl(), *layer); | ||
493 | if (!label.empty()) | 490 | if (!label.empty()) |
494 | menu->setLabel(label); | 491 | menu->setLabel(label); |
495 | 492 | ||
496 | return menu; | 493 | return menu; |
497 | } | 494 | } |
498 | 495 | ||
496 | FbMenu *MenuCreator::createMenu(const string &label, int screen_number) { | ||
497 | BScreen *screen = Fluxbox::instance()->findScreen(screen_number); | ||
498 | if (screen == 0) | ||
499 | return 0; | ||
500 | return MenuCreator::createMenu(label, *screen); | ||
501 | } | ||
502 | |||
499 | bool MenuCreator::createFromFile(const string &filename, | 503 | bool MenuCreator::createFromFile(const string &filename, |
500 | FbTk::Menu &inject_into, | 504 | FbTk::Menu &inject_into, |
501 | AutoReloadHelper *reloader, bool begin) { | 505 | AutoReloadHelper *reloader, bool begin) { |