libglom-1.22  1.21.7
Public Types | Public Member Functions | Static Public Member Functions | Protected Member Functions | Protected Attributes
GlomBakery::Document Class Reference

The Document is like the 'Model' in the Model-View-Controller framework. More...

Inheritance diagram for GlomBakery::Document:
Inheritance graph
[legend]
Collaboration diagram for GlomBakery::Document:
Collaboration graph
[legend]

List of all members.

Public Types

enum  LoadFailureCodes {
  LOAD_FAILURE_CODE_NONE = 0,
  LOAD_FAILURE_CODE_NOT_FOUND = 1,
  LOAD_FAILURE_CODE_LAST = 20
}
typedef sigc::signal< void, bool > type_signal_modified
 For instance, void on_document_modified(bool modified);.
typedef sigc::signal< void > type_signal_forget

Public Member Functions

 Document ()
virtual ~Document ()
bool save ()
bool load (int& failure_code)
bool load_from_data (const guchar* data, std::size_t length, int& failure_code)
bool get_modified () const
virtual void set_modified (bool bVal=true)
bool get_is_new () const
 Whether this just a default document.
void set_is_new (bool bVal)
 Called by AppWindow_WithDoc::init_create_document().
Glib::ustring get_contents () const
Glib::ustring get_file_uri_with_extension (const Glib::ustring& uri)
Glib::ustring get_file_uri () const
virtual void set_file_uri (const Glib::ustring& file_uri, bool bEnforceFileExtension=false)
virtual Glib::ustring get_name () const
 Gets filename part of file_uri, or 'untitled'.
bool get_read_only () const
void set_read_only (bool bVal)
void set_view (ViewBase* pView)
 If you don't want to use a View, then don't use set_view().
ViewBaseget_view ()
void set_file_extension (const Glib::ustring& strVal)
Glib::ustring get_file_extension () const
type_signal_modifiedsignal_modified ()
 This signal is emitted when the document has been modified.
type_signal_forgetsignal_forget ()
 This signal is emitted when the view should forget the document.

Static Public Member Functions

static Glib::ustring util_file_uri_get_name (const Glib::ustring& file_uri, const Glib::ustring& file_extension)

Protected Member Functions

virtual bool load_after (int& failure_code)
 Allow app to update icons/title bar.
virtual bool save_before ()
 overrideable.
bool read_from_disk (int& failure_code)
bool write_to_disk ()

Protected Attributes

Glib::ustring m_strContents
Glib::ustring m_file_uri
Glib::ustring m_file_extension
ViewBasem_pView
type_signal_modified signal_modified_
type_signal_forget signal_forget_
bool m_bModified
bool m_bIsNew
bool m_bReadOnly

Detailed Description

The Document is like the 'Model' in the Model-View-Controller framework.

Each App should have a Document. Each View gets and sets data in its document.


Member Typedef Documentation

typedef sigc::signal<void> GlomBakery::Document::type_signal_forget
typedef sigc::signal<void, bool> GlomBakery::Document::type_signal_modified

For instance, void on_document_modified(bool modified);.


Member Enumeration Documentation

Enumerator:
LOAD_FAILURE_CODE_NONE 
LOAD_FAILURE_CODE_NOT_FOUND 
LOAD_FAILURE_CODE_LAST 

Constructor & Destructor Documentation

Reimplemented in Glom::Document.

virtual GlomBakery::Document::~Document ( ) [virtual]

Reimplemented in Glom::Document.


Member Function Documentation

Glib::ustring GlomBakery::Document::get_contents ( ) const
Glib::ustring GlomBakery::Document::get_file_uri ( ) const
Glib::ustring GlomBakery::Document::get_file_uri_with_extension ( const Glib::ustring &  uri)

Whether this just a default document.

virtual Glib::ustring GlomBakery::Document::get_name ( ) const [virtual]

Gets filename part of file_uri, or 'untitled'.

Reimplemented in Glom::Document.

bool GlomBakery::Document::load ( int &  failure_code)

Reimplemented in Glom::Document.

virtual bool GlomBakery::Document::load_after ( int &  failure_code) [protected, virtual]

Allow app to update icons/title bar.

overrideable. Does anything which should be done after the data has been loaded from disk, but before updating the View.

Parameters:
failure_codeUsed to return a custom error code that is understood by your application. This must be greater than zero.

Reimplemented in GlomBakery::Document_XML.

bool GlomBakery::Document::load_from_data ( const guchar *  data,
std::size_t  length,
int &  failure_code 
)
bool GlomBakery::Document::read_from_disk ( int &  failure_code) [protected]
virtual bool GlomBakery::Document::save_before ( ) [protected, virtual]

overrideable.

Does anything which should be done before the view has saved its data, before writing to disk..

Reimplemented in GlomBakery::Document_XML.

void GlomBakery::Document::set_file_extension ( const Glib::ustring &  strVal)
virtual void GlomBakery::Document::set_file_uri ( const Glib::ustring &  file_uri,
bool  bEnforceFileExtension = false 
) [virtual]

Reimplemented in Glom::Document.

void GlomBakery::Document::set_is_new ( bool  bVal)

Called by AppWindow_WithDoc::init_create_document().

virtual void GlomBakery::Document::set_modified ( bool  bVal = true) [virtual]

Reimplemented in Glom::Document.

If you don't want to use a View, then don't use set_view().

This signal is emitted when the view should forget the document.

This is used internally, and you should not need to use it yourself.

This signal is emitted when the document has been modified.

It allows the view to update itself to show the new information.

static Glib::ustring GlomBakery::Document::util_file_uri_get_name ( const Glib::ustring &  file_uri,
const Glib::ustring &  file_extension 
) [static]

Member Data Documentation

Glib::ustring GlomBakery::Document::m_file_extension [protected]
Glib::ustring GlomBakery::Document::m_file_uri [protected]
Glib::ustring GlomBakery::Document::m_strContents [protected]

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