diff --git a/juci/controller.h b/juci/controller.h index b9e79a9..fcbd074 100644 --- a/juci/controller.h +++ b/juci/controller.h @@ -35,6 +35,13 @@ public: void onFileOpenFolder(); void onSystemQuit(); void onPluginAddSnippet(); + void onWindowCloseTab(); + void onEditCopy(); + void onEditCut(); + void onEditPaste(); + void onEditFind(); + void onWindowSplitWindow(); + void onHelpAbout(); }; }; diff --git a/juci/controllers.cc b/juci/controllers.cc index f6ab2e7..8410e09 100644 --- a/juci/controllers.cc +++ b/juci/controllers.cc @@ -3,10 +3,10 @@ Controller::Menu::Menu() : menu_view_(Gtk::ORIENTATION_VERTICAL), menu_model_() { -/*Add action to menues*/ -/*File menu*/ +/* Add action to menues */ +/* START file menu */ menu_view_.action_group()->add(Gtk::Action::create("FileMenu", Gtk::Stock::FILE)); - /*File->New files*/ + /* File->New files */ menu_view_.action_group()->add(Gtk::Action::create("FileNew", "New")); menu_view_.action_group()->add(Gtk::Action::create("FileNewStandard", @@ -29,23 +29,67 @@ Controller::Menu::Menu() : /* File-> New files end */ menu_view_.action_group()->add(Gtk::Action::create("FileOpenFile", Gtk::Stock::OPEN), [this]() { - onFileNewEmptyfile(); + onFileOpenFile(); }); menu_view_.action_group()->add(Gtk::Action::create("FileOpenFolder", "Open folder"), [this]() { - onFileNewEmptyfile(); + onFileOpenFolder(); }); menu_view_.action_group()->add(Gtk::Action::create("FileQuit", Gtk::Stock::QUIT), [this]() { onSystemQuit(); }); - menu_view_.action_group()->add(Gtk::Action::create("PluginMenu", "Plugins")); +/* END file menu */ +/* START edit menu */ + menu_view_.action_group()->add(Gtk::Action::create("EditMenu", Gtk::Stock::EDIT)); + menu_view_.action_group()->add(Gtk::Action::create("EditCopy", Gtk::Stock::COPY), + [this]() { + onEditCopy(); + }); + menu_view_.action_group()->add(Gtk::Action::create("EditCut", Gtk::Stock::CUT), + [this]() { + onEditCut(); + }); + menu_view_.action_group()->add(Gtk::Action::create("EditPaste", Gtk::Stock::PASTE), + [this]() { + onEditPaste(); + }); + menu_view_.action_group()->add(Gtk::Action::create("EditFind", Gtk::Stock::FIND), + [this]() { + onEditFind(); + }); +/* END edit menu */ +/* START window menu */ + menu_view_.action_group()->add(Gtk::Action::create("WindowMenu", "_Window")); + menu_view_.action_group()->add(Gtk::Action::create("WindowCloseTab", "Close tab"), + Gtk::AccelKey("w"), + [this]() { + onWindowCloseTab(); + }); + menu_view_.action_group()->add(Gtk::Action::create("WindowSplitWindow", "Split window"), + Gtk::AccelKey("S"), + [this]() { + onWindowSplitWindow(); + }); +/* END window menu */ +/* START Plugin menu */ + menu_view_.action_group()->add(Gtk::Action::create("PluginMenu", "_Plugins")); + /*Plugin->snippet*/ menu_view_.action_group()->add(Gtk::Action::create("PluginSnippet", "Snippet")); menu_view_.action_group()->add(Gtk::Action::create("PluginAddSnippet", "Add snippet"), Gtk::AccelKey("space"), [this]() { onPluginAddSnippet(); }); + /* End snippet */ +/* END plugin menu */ +/* START help menu */ + menu_view_.action_group()->add(Gtk::Action::create("HelpMenu", Gtk::Stock::HELP)); + menu_view_.action_group()->add(Gtk::Action::create("HelpAbout", Gtk::Stock::ABOUT), + [this]() { + onHelpAbout(); + }); +/* END help menu */ menu_view_.set_ui_manager_action_group(menu_view_.action_group()); @@ -62,13 +106,16 @@ Gtk::Box &Controller::Menu::view() { void Controller::Menu::onFileNewEmptyfile() { std::cout << "New file clicked" << std::endl; + //TODO(Oyvang) Legg til funksjon } void Controller::Menu::onFileNewCCFile() { std::cout << "New cc file clicked" << std::endl; + //TODO(Oyvang) Legg til funksjon } void Controller::Menu::onFileNewHeaderFile() { std::cout << "New cc file clicked" << std::endl; + //TODO(Oyvang) Legg til funksjon } void Controller::Menu::onSystemQuit(){ //TODO(Oyvang, Zalox, Forgie) Add everything that needs to be done before quiting @@ -78,3 +125,39 @@ void Controller::Menu::onSystemQuit(){ void Controller::Menu::onPluginAddSnippet() { std::cout << "Add snipper" << std::endl; //TODO(Forgi add you snippet magic code) } +void Controller::Menu::onFileOpenFile() { + std::cout << "Open file clicked" << std::endl; + //TODO(Oyvang) Legg til funksjon +} +void Controller::Menu::onFileOpenFolder() { + std::cout << "Open folder clicked" << std::endl; + //TODO(Oyvang) Legg til funksjon +} +void Controller::Menu::onWindowCloseTab() { + std::cout << "Closing tab clicked" << std::endl; + //TODO(Oyvang) Legg til funksjon +} +void Controller::Menu::onEditCopy() { + std::cout << "Clicked copy" << std::endl; + //TODO(Oyvang) Legg til funksjon +} +void Controller::Menu::onEditCut() { + std::cout << "Clicked cut" << std::endl; + //TODO(Oyvang) Legg til funksjon +} +void Controller::Menu::onEditPaste() { + std::cout << "Clicked paste" << std::endl; + //TODO(Oyvang) Legg til funksjon +} +void Controller::Menu::onEditFind() { + std::cout << "Clicked find" << std::endl; + //TODO(Oyvang) Legg til funksjon +} +void Controller::Menu::onWindowSplitWindow() { + std::cout << "Clicked split window" << std::endl; + //TODO(Oyvang) Legg til funksjon +} +void Controller::Menu::onHelpAbout() { + std::cout << "Clicked about" << std::endl; + //TODO(Oyvang) Legg til funksjon +} diff --git a/juci/models.cc b/juci/models.cc index 4b7f70a..d262574 100644 --- a/juci/models.cc +++ b/juci/models.cc @@ -10,16 +10,30 @@ Model::Menu::Menu() { " " " " " " - // " " - //" " + " " + " " " " " " " " + " " + " " + " " + " " + " " + " " + " " + " " + " " + " " + " " " " " " " " " " " " + " " + " " + " " " " " ";