You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 

44 lines
1.0 KiB

#ifndef JUCI_NOTEBOOK_H_
#define JUCI_NOTEBOOK_H_
#include <iostream>
#include "gtkmm.h"
#include "entry.h"
#include "source.h"
namespace Notebook {
class View {
public:
View();
Gtk::Box& view();
Gtk::Notebook& notebook() { return notebook_; }
protected:
Gtk::Box view_;
Gtk::Notebook notebook_;
};
class Controller {
public:
Controller(Keybindings::Controller& keybindings);
Gtk::Box& view();
Gtk::Box& entry_view();
void OnNewPage(std::string name);
void OnCloseCurrentPage();
void OnOpenFile(std::string filename);
private:
View view_;
Entry::Controller entry_;
std::vector<Source::Controller*> source_vec_;
std::vector<Gtk::ScrolledWindow*> scrolledwindow_vec_;
Glib::RefPtr<Gtk::Clipboard> refClipboard;
std::list<Gtk::TargetEntry> listTargets;
void OnFileNewEmptyfile();
void OnFileNewCCFile();
void OnFileNewHeaderFile();
void OnEditCopy();
void OnEditPaste();
void OnEditCut();
}; // class controller
} // namespace Notebook
#endif // JUCI_NOTEBOOK_H_