bakery 2.6
|
Main Window which supports documents. More...
#include <App_WithDoc.h>
Public Types | |
enum | enumSaveChanges { SAVECHANGES_Save, SAVECHANGES_Cancel, SAVECHANGES_Discard } |
Public Member Functions | |
App_WithDoc (const Glib::ustring &appname="") | |
Don't forget to call init() too. | |
virtual | ~App_WithDoc () |
virtual void | init () |
virtual void | on_menu_file_open () |
virtual void | on_menu_file_saveas () |
virtual void | offer_saveas () |
virtual void | on_menu_file_save () |
virtual void | on_menu_file_close () |
virtual void | on_menu_edit_copy () |
virtual void | on_menu_edit_paste () |
virtual void | on_menu_edit_clear () |
Static Public Member Functions | |
static bool | file_exists (const Glib::ustring &uri) |
Protected Types | |
typedef std::list< Glib::ustring > | type_list_strings |
Protected Member Functions | |
virtual void | init_create_document () |
virtual Document * | get_document () |
static_cast<> or dynamic_cast<> this pointer to the correct type. | |
virtual const Document * | get_document () const |
static_cast<> or dynamic_cast<> this pointer to the correct type. | |
virtual void | set_document_modified (bool bModified=true) |
virtual bool | open_document (const Glib::ustring &file_uri) |
Open the document from a file at a URI. | |
bool | open_document_from_data (const guchar *data, std::size_t length) |
Open the document using the supplied document contents. | |
virtual void | document_history_add (const Glib::ustring &file_uri) |
virtual void | document_history_remove (const Glib::ustring &file_uri) |
virtual void | on_document_modified (bool modified) |
Update visual status. | |
virtual bool | on_document_load () |
override this to show document contents. | |
virtual void | offer_to_save_changes () |
virtual void | cancel_close_or_exit () |
Stop the File|Close or the File|Exit. | |
virtual void | close_mark_or_destroy () |
destroy it or mark it for destruction. | |
virtual void | update_window_title () |
virtual void | after_successful_save () |
virtual void | ui_warning (const Glib::ustring &text, const Glib::ustring &secondary_text)=0 |
virtual Glib::ustring | ui_file_select_open (const Glib::ustring &ui_file_select_open=Glib::ustring())=0 |
virtual Glib::ustring | ui_file_select_save (const Glib::ustring &old_file_uri)=0 |
Present a user interface that allows the user to select a location to save the file. | |
virtual void | ui_show_modification_status ()=0 |
virtual enumSaveChanges | ui_offer_to_save_changes ()=0 |
Static Protected Member Functions | |
static void | add_mime_type (const Glib::ustring &mime_type) |
Add a MIME-type that this application can support. | |
static Glib::ustring | get_conf_fullkey (const Glib::ustring &key) |
Protected Attributes | |
Document * | m_pDocument |
bool | m_bCloseAfterSave |
Static Protected Attributes | |
static type_list_strings | m_mime_types |
Main Window which supports documents.
This is an abstract class. You must use a class such as App_WithDoc_Gtk, which implements the ui_* methods for a particular GUI toolkit.
Features:
TODO:
typedef std::list<Glib::ustring> Bakery::App_WithDoc::type_list_strings [protected] |
Bakery::App_WithDoc::App_WithDoc | ( | const Glib::ustring & | appname = "" | ) |
Don't forget to call init() too.
virtual Bakery::App_WithDoc::~App_WithDoc | ( | ) | [virtual] |
static void Bakery::App_WithDoc::add_mime_type | ( | const Glib::ustring & | mime_type | ) | [static, protected] |
Add a MIME-type that this application can support.
You should also register the MIME-type when the application is installed: See http://freedesktop.org/Standards/AddingMIMETutor
virtual void Bakery::App_WithDoc::after_successful_save | ( | ) | [protected, virtual] |
virtual void Bakery::App_WithDoc::cancel_close_or_exit | ( | ) | [protected, virtual] |
Stop the File|Close or the File|Exit.
virtual void Bakery::App_WithDoc::close_mark_or_destroy | ( | ) | [protected, virtual] |
destroy it or mark it for destruction.
virtual void Bakery::App_WithDoc::document_history_add | ( | const Glib::ustring & | file_uri | ) | [protected, virtual] |
Reimplemented in Bakery::App_WithDoc_Gtk.
virtual void Bakery::App_WithDoc::document_history_remove | ( | const Glib::ustring & | file_uri | ) | [protected, virtual] |
Reimplemented in Bakery::App_WithDoc_Gtk.
static bool Bakery::App_WithDoc::file_exists | ( | const Glib::ustring & | uri | ) | [static] |
static Glib::ustring Bakery::App_WithDoc::get_conf_fullkey | ( | const Glib::ustring & | key | ) | [static, protected] |
virtual Document* Bakery::App_WithDoc::get_document | ( | ) | [protected, virtual] |
static_cast<> or dynamic_cast<> this pointer to the correct type.
virtual const Document* Bakery::App_WithDoc::get_document | ( | ) | const [protected, virtual] |
static_cast<> or dynamic_cast<> this pointer to the correct type.
virtual void Bakery::App_WithDoc::init | ( | ) | [virtual] |
Reimplemented from Bakery::App.
Reimplemented in Bakery::App_WithDoc_Gtk.
virtual void Bakery::App_WithDoc::init_create_document | ( | ) | [protected, virtual] |
virtual void Bakery::App_WithDoc::offer_saveas | ( | ) | [virtual] |
virtual void Bakery::App_WithDoc::offer_to_save_changes | ( | ) | [protected, virtual] |
virtual bool Bakery::App_WithDoc::on_document_load | ( | ) | [protected, virtual] |
override this to show document contents.
virtual void Bakery::App_WithDoc::on_document_modified | ( | bool | modified | ) | [protected, virtual] |
Update visual status.
virtual void Bakery::App_WithDoc::on_menu_edit_clear | ( | ) | [virtual] |
Reimplemented from Bakery::App.
virtual void Bakery::App_WithDoc::on_menu_edit_copy | ( | ) | [virtual] |
Reimplemented from Bakery::App.
virtual void Bakery::App_WithDoc::on_menu_edit_paste | ( | ) | [virtual] |
Reimplemented from Bakery::App.
virtual void Bakery::App_WithDoc::on_menu_file_close | ( | ) | [virtual] |
Reimplemented from Bakery::App.
virtual void Bakery::App_WithDoc::on_menu_file_open | ( | ) | [virtual] |
virtual void Bakery::App_WithDoc::on_menu_file_save | ( | ) | [virtual] |
virtual void Bakery::App_WithDoc::on_menu_file_saveas | ( | ) | [virtual] |
virtual bool Bakery::App_WithDoc::open_document | ( | const Glib::ustring & | file_uri | ) | [protected, virtual] |
Open the document from a file at a URI.
This will check whether the document is already open.
bool Bakery::App_WithDoc::open_document_from_data | ( | const guchar * | data, |
std::size_t | length | ||
) | [protected] |
Open the document using the supplied document contents.
Unlike open_document(), this has no way to know whether the document is already open.
data | A pointer to the bytes of the document contents. |
length | The number of bytes in the data. |
virtual void Bakery::App_WithDoc::set_document_modified | ( | bool | bModified = true | ) | [protected, virtual] |
virtual Glib::ustring Bakery::App_WithDoc::ui_file_select_open | ( | const Glib::ustring & | ui_file_select_open = Glib::ustring() | ) | [protected, pure virtual] |
Implemented in Bakery::App_WithDoc_Gtk.
virtual Glib::ustring Bakery::App_WithDoc::ui_file_select_save | ( | const Glib::ustring & | old_file_uri | ) | [protected, pure virtual] |
Present a user interface that allows the user to select a location to save the file.
old_file_uri | The existing URI of the file, if any. |
Implemented in Bakery::App_WithDoc_Gtk.
virtual enumSaveChanges Bakery::App_WithDoc::ui_offer_to_save_changes | ( | ) | [protected, pure virtual] |
Implemented in Bakery::App_WithDoc_Gtk.
virtual void Bakery::App_WithDoc::ui_show_modification_status | ( | ) | [protected, pure virtual] |
Implemented in Bakery::App_WithDoc_Gtk.
virtual void Bakery::App_WithDoc::ui_warning | ( | const Glib::ustring & | text, |
const Glib::ustring & | secondary_text | ||
) | [protected, pure virtual] |
Implemented in Bakery::App_WithDoc_Gtk.
virtual void Bakery::App_WithDoc::update_window_title | ( | ) | [protected, virtual] |
Reimplemented in Bakery::App_WithDoc_Gtk.
bool Bakery::App_WithDoc::m_bCloseAfterSave [protected] |
type_list_strings Bakery::App_WithDoc::m_mime_types [static, protected] |
Document* Bakery::App_WithDoc::m_pDocument [protected] |