Main Page | Class Hierarchy | Alphabetical List | Class List | File List | Class Members

App_WithDoc_GnomeUI.h

Go to the documentation of this file.
00001 /* 00002 * Copyright 2000 Murray Cumming 00003 * 00004 * This library is free software; you can redistribute it and/or 00005 * modify it under the terms of the GNU Library General Public 00006 * License as published by the Free Software Foundation; either 00007 * version 2 of the License, or (at your option) any later version. 00008 * 00009 * This library is distributed in the hope that it will be useful, 00010 * but WITHOUT ANY WARRANTY; without even the implied warranty of 00011 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 00012 * Library General Public License for more details. 00013 * 00014 * You should have received a copy of the GNU Library General Public 00015 * License along with this library; if not, write to the Free 00016 * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. 00017 */ 00018 00019 #ifndef BAKERY_GNOMEUI_APP_WITHDOC_GTK_H 00020 #define BAKERY_GNOMEUI_APP_WITHDOC_GTK_H 00021 00022 #include <bakery_gnomeui/App/App_GnomeUI.h> 00023 #include <bakery/App/App_WithDoc.h> 00024 00025 namespace Bakery 00026 { 00027 00053 class App_WithDoc_GnomeUI 00054 //These are virtual base classes, with shared shared App and SigC::Object base classes: 00055 : public App_WithDoc, 00056 public App_GnomeUI 00057 { 00058 public: 00060 App_WithDoc_GnomeUI(const Glib::ustring& appname, const Glib::ustring& title); 00061 virtual ~App_WithDoc_GnomeUI(); 00062 00063 virtual void init(); //Unique final overrider. 00064 00065 protected: 00066 virtual void init_menus_file(); //overridden to add open/save/save as. 00067 virtual void init_toolbars(); //overridden to add open/save 00068 virtual void init_menus(); //overriden to get widget pointers. 00069 00070 00071 //Signal handlers: 00072 00073 //Session Client: 00074 virtual bool on_session_save_yourself(int phase, Gnome::UI::SaveStyle save_style, bool is_shutdown, Gnome::UI::InteractStyle interact_style, bool is_fast); //override 00075 00076 void session_load_documents_open(); 00077 static void session_save_documents_open(); 00078 00079 virtual void update_window_title(); 00080 virtual void show_document_history(); 00081 00082 //Overrides: 00083 virtual void ui_warning(const Glib::ustring& text); 00084 virtual Glib::ustring ui_file_select_open(); 00085 virtual Glib::ustring ui_file_select_save(const Glib::ustring& old_filepath); 00086 virtual void ui_show_modification_status(); 00087 virtual enumSaveChanges ui_offer_to_save_changes(); 00088 virtual bool ui_ask_overwrite(const std::string& filepath); 00089 00090 //Menu stuff: 00091 guint m_iMenuPos_File, m_iMenuPos_File_Save; 00092 Gtk::Widget* m_pMenuItem_File_Save; 00093 Gtk::Widget* m_pToolbarItem_Save; 00094 00095 bool m_bMenuOpenRecentCreated; 00096 }; 00097 00098 } //namespace 00099 00100 #endif //BAKERY_GNOMEUI_APP_WITHDOC_GTK_H

Generated on Fri Aug 13 08:52:24 2004 for bakery-gnomeui by doxygen 1.3.7