From 6249f25238ddc6abfadfb977077d1ce0b61d0e09 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?J=C3=B8rgen=20Lien=20Sell=C3=A6g?= Date: Wed, 11 Feb 2015 10:55:36 +0100 Subject: [PATCH 1/2] fix return in source --- juci/source.cc | 41 +++++++++++++++++++---------------------- juci/source.h | 8 ++++++-- 2 files changed, 25 insertions(+), 24 deletions(-) diff --git a/juci/source.cc b/juci/source.cc index 8070f7e..48c5a19 100644 --- a/juci/source.cc +++ b/juci/source.cc @@ -1,47 +1,44 @@ #include "source.h" #include -using namespace std; - - ////////////// //// View //// ////////////// Source::View::View() { - cout << "View construktor run" << endl; + std::cout << "View constructor run" << std::endl; } void Source::View::UpdateLine(Glib::RefPtr mark) { - cout << "Update line called. linum: " << mark->get_iter().get_line() << endl; + std::cout << "Update line called. linum: "; + std::cout << mark->get_iter().get_line() << std::endl; } /////////////// //// Model //// /////////////// -Source::Model::Model(){ - cout << "Model construktor run" << endl; +Source::Model::Model() { + std::cout << "Model constructor run" << std::endl; } //////////////////// //// Controller //// //////////////////// -/** - * - */ +// Source::Controller::Controller() +// Constructor for Controller Source::Controller::Controller() { - cout << "Controller construktor run" << endl; + std::cout << "Controller constructor run" << std::endl; } -/** - * - */ -std::shared_ptr Source::Controller::sourceview() { - sourceview(); - return std::shared_ptr(&sourceview_); +// Source::Controller::view() +// return shared_ptr to the view +std::shared_ptr Source::Controller::view() { + return std::shared_ptr(&view_); } -/** - * - */ -void Source::Controller::OnLineEdit(Glib::RefPtr mark){ - +// Source::Controller::model() +// return shared_ptr to the model() +std::shared_ptr Source::Controller::model() { + return std::shared_ptr(&model_); } +// Source::Controller::OnLineEdit() +// fired when a line in the buffer is edited +void Source::Controller::OnLineEdit(Glib::RefPtr mark) {} diff --git a/juci/source.h b/juci/source.h index 773b15e..8d5d9a6 100644 --- a/juci/source.h +++ b/juci/source.h @@ -21,11 +21,15 @@ namespace Source { class Controller { public: Controller(); - std::shared_ptr sourceview(); + std::shared_ptr view(); + std::shared_ptr model(); + private: void OnLineEdit(Glib::RefPtr mark); + protected: - View sourceview_; + View view_; + Model model_; }; // class Controller } // namespace Source #endif // JUCI_SOURCE_H_ From 19311982e01dc8bbb5f20b2df76094a2666d44e8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?J=C3=B8rgen=20Lien=20Sell=C3=A6g?= Date: Wed, 11 Feb 2015 11:39:58 +0100 Subject: [PATCH 2/2] Fix pointer settings --- juci/CMakeLists.txt | 3 ++- juci/juci.h | 4 ++-- juci/source.cc | 8 ++++---- juci/source.h | 4 ++-- juci/window.cc | 7 +++---- 5 files changed, 13 insertions(+), 13 deletions(-) diff --git a/juci/CMakeLists.txt b/juci/CMakeLists.txt index 9d13438..5581401 100644 --- a/juci/CMakeLists.txt +++ b/juci/CMakeLists.txt @@ -67,11 +67,12 @@ endif() # name of the executable on Windows will be example.exe add_executable(${project_name} #list of every needed file to create the executable + juci.h + juci.cc keybindings menu source window - juci api #there is no need for extentions ) diff --git a/juci/juci.h b/juci/juci.h index 6eb5018..ab439b8 100644 --- a/juci/juci.h +++ b/juci/juci.h @@ -1,4 +1,4 @@ -/*juCi++ main header file*/ +//juCi++ main header file #ifndef JUCI_JUCI_H_ #define JUCI_JUCI_H_ @@ -12,7 +12,7 @@ public: Window(); virtual ~Window() {} Gtk::Box window_box_; - std::shared_ptr source(); + Source::Controller& source(); private: Keybindings::Controller keybindings_; Menu::Controller menu_; diff --git a/juci/source.cc b/juci/source.cc index 48c5a19..9fb3b05 100644 --- a/juci/source.cc +++ b/juci/source.cc @@ -31,13 +31,13 @@ Source::Controller::Controller() { } // Source::Controller::view() // return shared_ptr to the view -std::shared_ptr Source::Controller::view() { - return std::shared_ptr(&view_); +Source::View& Source::Controller::view() { + return view_; } // Source::Controller::model() // return shared_ptr to the model() -std::shared_ptr Source::Controller::model() { - return std::shared_ptr(&model_); +Source::Model& Source::Controller::model() { + return model_; } // Source::Controller::OnLineEdit() // fired when a line in the buffer is edited diff --git a/juci/source.h b/juci/source.h index 8d5d9a6..4c901f4 100644 --- a/juci/source.h +++ b/juci/source.h @@ -21,8 +21,8 @@ namespace Source { class Controller { public: Controller(); - std::shared_ptr view(); - std::shared_ptr model(); + View& view(); + Model& model(); private: void OnLineEdit(Glib::RefPtr mark); diff --git a/juci/window.cc b/juci/window.cc index 4e27b3b..977fc1a 100644 --- a/juci/window.cc +++ b/juci/window.cc @@ -5,14 +5,13 @@ Window::Window() : menu_(keybindings_) { set_title("example juCi++"); set_default_size(600, 600); - // window_box_.add(*source_.sourceview()); + window_box_.add(source().view()); add(window_box_); add_accel_group(keybindings_.ui_manager()->get_accel_group()); window_box_.pack_start(menu_.view()); show_all_children(); - } -std::shared_ptr Window::source() { - return std::shared_ptr(&source_); +Source::Controller& Window::source() { + return source_; }