Merge pull request #251 from x-qq/fix_scrollbar_segfaults
fix for scrollbar segfaults * fixes #206 * fixes broken mousewheel scrolling of the scenedit palette * removed boost threads dependency * added foundation for further refactoring of the drawing and event handling code: interfaces and drawable manager with layering * removed a bunch of unneeded redraw calls * removed some repeated recalculation of effectively constant values (boe.actions) * removed recalculation of effectively constant scrollbar and button positions (boe.graphics) Closes #251
This commit is contained in:
@@ -1,16 +1,26 @@
|
||||
#include "scen.global.hpp"
|
||||
#include "scen.menus.hpp"
|
||||
#include <SFML/Graphics/RenderWindow.hpp>
|
||||
#include <memory>
|
||||
#include <unordered_map>
|
||||
#include <string>
|
||||
#include "scen.menu.hpp"
|
||||
#include "undo.hpp"
|
||||
#include "event_listener.hpp"
|
||||
#include "drawable_manager.hpp"
|
||||
|
||||
extern sf::RenderWindow mainPtr;
|
||||
extern cUndoList undo_list;
|
||||
extern std::unordered_map <std::string, std::shared_ptr <iEventListener>> event_listeners;
|
||||
extern cDrawableManager drawable_mgr;
|
||||
|
||||
std::shared_ptr <OpenBoESceneditMenu> menu_ptr;
|
||||
|
||||
void init_menubar() {
|
||||
menu_ptr.reset(new OpenBoESceneditMenu(mainPtr));
|
||||
|
||||
event_listeners["menubar"] = std::dynamic_pointer_cast <iEventListener> (menu_ptr);
|
||||
drawable_mgr.add_drawable(UI_LAYER_MENUBAR, "menubar", menu_ptr);
|
||||
}
|
||||
|
||||
void shut_down_menus(short mode) {
|
||||
@@ -21,13 +31,5 @@ void update_edit_menu() {
|
||||
menu_ptr->update_edit_menu(undo_list);
|
||||
}
|
||||
|
||||
bool menuBarProcessEvent(const sf::Event& event) {
|
||||
return menu_ptr->handle_event(event);
|
||||
}
|
||||
|
||||
void drawMenuBar() {
|
||||
menu_ptr->draw();
|
||||
}
|
||||
|
||||
void set_up_apple_events(int argc, char* argv[]) {
|
||||
}
|
||||
|
Reference in New Issue
Block a user