diff options
Diffstat (limited to 'Window.cpp')
-rw-r--r-- | Window.cpp | 72 |
1 files changed, 0 insertions, 72 deletions
diff --git a/Window.cpp b/Window.cpp deleted file mode 100644 index bfb5690..0000000 --- a/Window.cpp +++ /dev/null @@ -1,72 +0,0 @@ -#include "Window.h" -#include "WindowManager.h" - - -gboolean Window::deleteEvent(GtkWidget *widget, GdkEvent *event, Window *window) { - gtk_widget_hide(widget); - - window->manager->windowClosed(window); - - return TRUE; -} - -Window::Window(GdkGLConfig *glconfig, WindowManager *manager) - : uiManager(this), editor(this), drawer(this, glconfig), sidebar(this), - fileManager(this) -{ - this->manager = manager; - - window = gtk_window_new(GTK_WINDOW_TOPLEVEL); - gtk_window_set_default_size(GTK_WINDOW(window), 640, 480); - g_signal_connect(G_OBJECT(window), "delete-event", G_CALLBACK(deleteEvent), this); - - GtkWidget *vbox = gtk_vbox_new(FALSE, 0); - gtk_container_add(GTK_CONTAINER(window), vbox); - - gtk_box_pack_start(GTK_BOX(vbox), uiManager.getMenu(), FALSE, FALSE, 0); - gtk_box_pack_start(GTK_BOX(vbox), uiManager.getToolbar(), FALSE, FALSE, 0); - - gtk_window_add_accel_group(GTK_WINDOW(window), uiManager.getAccels()); - - GtkWidget *hPaned = gtk_hpaned_new(); - gtk_box_pack_end(GTK_BOX(vbox), hPaned, TRUE, TRUE, 0); - - gtk_paned_pack1(GTK_PANED(hPaned), drawer.getWidget(), TRUE, TRUE); - - gtk_paned_pack2(GTK_PANED(hPaned), sidebar.getWidget(), FALSE, TRUE); - sidebar.update(); - - gtk_widget_show_all(vbox); -} - -Window::~Window() { - gtk_widget_destroy(window); -} - -void Window::show() { - gtk_widget_show(window); -} - -void Window::update() { - drawer.update(); - sidebar.update(); -} - -void Window::handleAction(UIManager::Action action) { - switch(action) { - case UIManager::SAVE: - fileManager.save(GTK_WINDOW(window)); - break; - - case UIManager::SAVE_AS: - fileManager.saveAs(GTK_WINDOW(window)); - break; - - case UIManager::ZOOM_IN: - drawer.zoom(2); - break; - - case UIManager::ZOOM_OUT: - drawer.zoom(-2); - } -} |