bakery  2.6
Public Types | Public Member Functions | Static Public Member Functions | Protected Types | Protected Member Functions | Static Protected Member Functions | Protected Attributes | Static Protected Attributes
Bakery::App_WithDoc Class Reference

Main Window which supports documents. More...

#include <App_WithDoc.h>

Inheritance diagram for Bakery::App_WithDoc:
Inheritance graph
[legend]

List of all members.

Public Types

enum  enumSaveChanges { SAVECHANGES_Save, SAVECHANGES_Cancel, SAVECHANGES_Discard }
- Public Types inherited from Bakery::App
typedef std::vector
< Glib::ustring > 
type_vecStrings
typedef sigc::signal< void > type_signal_hide

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 ()
- Public Member Functions inherited from Bakery::App
 App (const Glib::ustring &appname=Glib::ustring())
 Don't forget to call init() too.
virtual ~App ()
virtual Glib::ustring get_version () const
type_signal_hide ui_signal_hide ()
virtual void on_menu_file_new ()
virtual void on_menu_file_exit ()
virtual void on_menu_edit_cut ()
virtual void on_menu_help_about ()=0
virtual void on_about_close ()

Static Public Member Functions

static bool file_exists (const Glib::ustring &uri)
- Static Public Member Functions inherited from Bakery::App
static void set_about_information (const Glib::ustring &strVersion, const type_vecStrings &vecAuthors, const Glib::ustring &strCopyright, const Glib::ustring &strDescription)
static void set_about_information (const Glib::ustring &strVersion, const type_vecStrings &vecAuthors, const Glib::ustring &strCopyright, const Glib::ustring &strDescription, const type_vecStrings &vecDocumenters, const Glib::ustring &strTranslatorCredits)
static void set_command_line_args (int argc, char **&argv)

Protected Types

typedef std::list< Glib::ustring > type_list_strings

Protected Member Functions

virtual void init_create_document ()
virtual Documentget_document ()
 static_cast<> or dynamic_cast<> this pointer to the correct type.
virtual const Documentget_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
- Protected Member Functions inherited from Bakery::App
virtual void init_ui_manager ()
 Builds the intial ui string, with placeholders.
virtual void init_menus ()
 Override this to add more menus or different menus.
virtual void init_menus_file ()=0
 Call this from init_menus() to add the standard file menu.
virtual void init_menus_edit ()=0
 Call this from init_menus() to add the standard edit menu.
virtual void init_menus_help ()=0
 Call this from init_menus() to add the standard help menu.
virtual void init_toolbars ()
virtual Appnew_instance ()=0
virtual void ui_hide ()=0
virtual void ui_bring_to_front ()=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)
- Static Protected Member Functions inherited from Bakery::App
static void init_app_name (const Glib::ustring &appname)
static void set_operation_cancelled (bool bVal=true)
static bool get_operation_cancelled ()

Protected Attributes

Documentm_pDocument
bool m_bCloseAfterSave
- Protected Attributes inherited from Bakery::App
type_signal_hide m_signal_hide

Static Protected Attributes

static type_list_strings m_mime_types
- Static Protected Attributes inherited from Bakery::App
static Glib::ustring m_strAppName
static HelpInfo m_HelpInfo
static AppInstanceManager m_AppInstanceManager
static bool m_bOperationCancelled
static bool m_bAboutShown
static Glib::ustring m_strCommandLine_0

Detailed Description

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:


Member Typedef Documentation

typedef std::list<Glib::ustring> Bakery::App_WithDoc::type_list_strings
protected

Member Enumeration Documentation

Enumerator:
SAVECHANGES_Save 
SAVECHANGES_Cancel 
SAVECHANGES_Discard 

Constructor & Destructor Documentation

Bakery::App_WithDoc::App_WithDoc ( const Glib::ustring &  appname = "")

Don't forget to call init() too.

virtual Bakery::App_WithDoc::~App_WithDoc ( )
virtual

Member Function Documentation

static void Bakery::App_WithDoc::add_mime_type ( const Glib::ustring &  mime_type)
staticprotected

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 ( )
protectedvirtual
virtual void Bakery::App_WithDoc::cancel_close_or_exit ( )
protectedvirtual

Stop the File|Close or the File|Exit.

virtual void Bakery::App_WithDoc::close_mark_or_destroy ( )
protectedvirtual

destroy it or mark it for destruction.

virtual void Bakery::App_WithDoc::document_history_add ( const Glib::ustring &  file_uri)
protectedvirtual

Reimplemented in Bakery::App_WithDoc_Gtk.

virtual void Bakery::App_WithDoc::document_history_remove ( const Glib::ustring &  file_uri)
protectedvirtual

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)
staticprotected
virtual Document* Bakery::App_WithDoc::get_document ( )
protectedvirtual

static_cast<> or dynamic_cast<> this pointer to the correct type.

virtual const Document* Bakery::App_WithDoc::get_document ( ) const
protectedvirtual

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 ( )
protectedvirtual
virtual void Bakery::App_WithDoc::offer_saveas ( )
virtual
virtual void Bakery::App_WithDoc::offer_to_save_changes ( )
protectedvirtual
virtual bool Bakery::App_WithDoc::on_document_load ( )
protectedvirtual

override this to show document contents.

virtual void Bakery::App_WithDoc::on_document_modified ( bool  modified)
protectedvirtual

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)
protectedvirtual

Open the document from a file at a URI.

This will check whether the document is already open.

Returns:
true indicates success.
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.

Parameters:
dataA pointer to the bytes of the document contents.
lengthThe number of bytes in the data.
Returns:
true indicates success.
virtual void Bakery::App_WithDoc::set_document_modified ( bool  bModified = true)
protectedvirtual
virtual Glib::ustring Bakery::App_WithDoc::ui_file_select_open ( const Glib::ustring &  ui_file_select_open = Glib::ustring())
protectedpure virtual

Implemented in Bakery::App_WithDoc_Gtk.

virtual Glib::ustring Bakery::App_WithDoc::ui_file_select_save ( const Glib::ustring &  old_file_uri)
protectedpure virtual

Present a user interface that allows the user to select a location to save the file.

Parameters:
old_file_uriThe existing URI of the file, if any.
Returns:
The URI of the file chosen by the user.

Implemented in Bakery::App_WithDoc_Gtk.

virtual enumSaveChanges Bakery::App_WithDoc::ui_offer_to_save_changes ( )
protectedpure virtual

Implemented in Bakery::App_WithDoc_Gtk.

virtual void Bakery::App_WithDoc::ui_show_modification_status ( )
protectedpure virtual

Implemented in Bakery::App_WithDoc_Gtk.

virtual void Bakery::App_WithDoc::ui_warning ( const Glib::ustring &  text,
const Glib::ustring &  secondary_text 
)
protectedpure virtual

Implemented in Bakery::App_WithDoc_Gtk.

virtual void Bakery::App_WithDoc::update_window_title ( )
protectedvirtual

Reimplemented in Bakery::App_WithDoc_Gtk.


Member Data Documentation

bool Bakery::App_WithDoc::m_bCloseAfterSave
protected
type_list_strings Bakery::App_WithDoc::m_mime_types
staticprotected
Document* Bakery::App_WithDoc::m_pDocument
protected

The documentation for this class was generated from the following file: