|
|
|
@ -1,63 +1,29 @@ |
|
|
|
#include "keybindings.h" |
|
|
|
#include "keybindings.h" |
|
|
|
|
|
|
|
|
|
|
|
Keybindings::Model::Model(const Keybindings::Config &config) : |
|
|
|
Keybindings::Model::Model(Keybindings::Config &config) : |
|
|
|
menu_ui_string_(config.menu_xml()) { |
|
|
|
menu_ui_string_(config.menu_xml()) { |
|
|
|
/* menu_ui_string_ =
|
|
|
|
/* hidden_ui_string_ =
|
|
|
|
"<ui> " |
|
|
|
|
|
|
|
" <menubar name='MenuBar'> " |
|
|
|
|
|
|
|
" <menu action='FileMenu'> " |
|
|
|
|
|
|
|
" <menu action='FileNew'> " |
|
|
|
|
|
|
|
" <menuitem action='FileNewStandard'/> " |
|
|
|
|
|
|
|
" <menuitem action='FileNewCC'/> " |
|
|
|
|
|
|
|
" <menuitem action='FileNewH'/> " |
|
|
|
|
|
|
|
" </menu> " |
|
|
|
|
|
|
|
" <menuitem action='FileOpenFile'/> " |
|
|
|
|
|
|
|
" <menuitem action='FileOpenFolder'/> " |
|
|
|
|
|
|
|
" <separator/> " |
|
|
|
|
|
|
|
" <menuitem action='FileQuit'/> " |
|
|
|
|
|
|
|
" </menu> " |
|
|
|
|
|
|
|
" <menu action='EditMenu'> " |
|
|
|
|
|
|
|
" <menuitem action='EditCopy'/> " |
|
|
|
|
|
|
|
" <menuitem action='EditCut'/> " |
|
|
|
|
|
|
|
" <menuitem action='EditPaste'/> " |
|
|
|
|
|
|
|
" <separator/> " |
|
|
|
|
|
|
|
" <menuitem action='EditFind'/> " |
|
|
|
|
|
|
|
" </menu> " |
|
|
|
|
|
|
|
" <menu action='WindowMenu'> " |
|
|
|
|
|
|
|
" <menuitem action='WindowCloseTab'/> " |
|
|
|
|
|
|
|
" <menuitem action='WindowSplitWindow'/> " |
|
|
|
|
|
|
|
" </menu> " |
|
|
|
|
|
|
|
" <menu action='PluginMenu'> " |
|
|
|
|
|
|
|
// " <menu action='PluginSnippet'> "
|
|
|
|
|
|
|
|
// " <menuitem action='PluginAddSnippet'/>"
|
|
|
|
|
|
|
|
// " </menu> "
|
|
|
|
|
|
|
|
" </menu> " |
|
|
|
|
|
|
|
" <menu action='HelpMenu'> " |
|
|
|
|
|
|
|
" <menuitem action='HelpAbout'/> " |
|
|
|
|
|
|
|
" </menu> " |
|
|
|
|
|
|
|
" </menubar> " |
|
|
|
|
|
|
|
"</ui> ";*/ |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
hidden_ui_string_ = |
|
|
|
|
|
|
|
"<ui> " |
|
|
|
"<ui> " |
|
|
|
" <menubar name='MenuBar'> " |
|
|
|
" <menubar name='MenuBar'> " |
|
|
|
" <menuitem action='Test'/> " |
|
|
|
" <menuitem action='Test'/> " |
|
|
|
" </menubar> " |
|
|
|
" </menubar> " |
|
|
|
"</ui> "; |
|
|
|
"</ui> ";*/ |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
Keybindings::Model::~Model() { |
|
|
|
Keybindings::Model::~Model() { |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
Keybindings::Controller::Controller(const Keybindings::Config &config) : |
|
|
|
Keybindings::Controller::Controller(Keybindings::Config &config) : |
|
|
|
config_(config), model_(config) { |
|
|
|
config_(config), model_(config) { |
|
|
|
action_group_menu_ = Gtk::ActionGroup::create(); |
|
|
|
action_group_menu_ = Gtk::ActionGroup::create(); |
|
|
|
ui_manager_menu_ = Gtk::UIManager::create(); |
|
|
|
ui_manager_menu_ = Gtk::UIManager::create(); |
|
|
|
action_group_hidden_ = Gtk::ActionGroup::create(); |
|
|
|
action_group_hidden_ = Gtk::ActionGroup::create(); |
|
|
|
ui_manager_hidden_ = Gtk::UIManager::create(); |
|
|
|
ui_manager_hidden_ = Gtk::UIManager::create(); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
Keybindings::Controller::~Controller() { |
|
|
|
Keybindings::Controller::~Controller() { |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
void Keybindings::Controller::BuildMenu() { |
|
|
|
void Keybindings::Controller::BuildMenu() { |
|
|
|
try { |
|
|
|
try { |
|
|
|
ui_manager_menu_->add_ui_from_string(model_.menu_ui_string()); |
|
|
|
ui_manager_menu_->add_ui_from_string(model_.menu_ui_string()); |
|
|
|
@ -77,10 +43,24 @@ void Keybindings::Controller::BuildHiddenMenu() { |
|
|
|
ui_manager_hidden_->insert_action_group(action_group_hidden_); |
|
|
|
ui_manager_hidden_->insert_action_group(action_group_hidden_); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
Keybindings::Config::Config(const Keybindings::Config &original) : |
|
|
|
Keybindings::Config::Config(Keybindings::Config &original) { |
|
|
|
menu_xml_(original.menu_xml()) {
|
|
|
|
SetMenu(original.menu_xml()); |
|
|
|
|
|
|
|
SetKeyMap(original.key_map()); |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Keybindings::Config::Config() { |
|
|
|
|
|
|
|
menu_xml_ = ""; |
|
|
|
|
|
|
|
std::unordered_map<std::string, std::string> key_map(); |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
void Keybindings::Config::AppendXml(std::string &child) { |
|
|
|
|
|
|
|
menu_xml_ += child; |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
void Keybindings::Config::SetMenu(std::string &menu_xml) { |
|
|
|
void Keybindings::Config::SetMenu(std::string &menu_xml) { |
|
|
|
menu_xml_ = menu_xml; |
|
|
|
menu_xml_ = menu_xml; |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
void Keybindings::Config::SetKeyMap(std::unordered_map<std::string, std::string> &key_map) { |
|
|
|
|
|
|
|
key_map_ = key_map; |
|
|
|
|
|
|
|
} |
|
|
|
|