Glom::Document Class Reference

Inherits GlomBakery::Document_XML.

Collaboration diagram for Glom::Document:
Collaboration graph
[legend]

List of all members.

Public Types

enum HostingMode {
  HOSTING_MODE_POSTGRES_CENTRAL,
  HOSTING_MODE_POSTGRES_SELF,
  HOSTING_MODE_SQLITE,
  HOSTING_MODE_DEFAULT = HOSTING_MODE_POSTGRES_SELF
}
 

How the database is hosted.

More...
enum userLevelReason {
  USER_LEVEL_REASON_UNKNOWN,
  USER_LEVEL_REASON_FILE_READ_ONLY,
  USER_LEVEL_REASON_DATABASE_ACCESS_LEVEL,
  USER_LEVEL_REASON_OPENED_FROM_BROWSE
}
enum load_failure_codes { LOAD_FAILURE_CODE_FILE_VERSION_TOO_NEW = LOAD_FAILURE_CODE_LAST + 1 }
 

Failure codes that could be returned by load_after().

More...
typedef std::vector< sharedptr
< Relationship > > 
type_vec_relationships
typedef std::vector< sharedptr
< Field > > 
type_vec_fields
typedef std::vector< sharedptr
< LayoutGroup > > 
type_list_layout_groups
typedef std::list< sharedptr
< TranslatableItem > > 
type_list_translatables
typedef std::list< sharedptr
< TableInfo > > 
type_listTableInfo
typedef std::vector
< Gnome::Gda::Value > 
type_row_data
typedef std::vector
< type_row_data
type_example_rows
typedef std::list< GroupInfotype_list_groups
 These are only used when recreating a database from an example file. The actualy access-control is on the server, of course.
typedef std::list< Glib::ustringtype_listReports
typedef std::list< Glib::ustringtype_listPrintLayouts
typedef sigc::signal< void,
AppState::userlevels
type_signal_userlevel_changed

Public Member Functions

 Document ()
virtual ~Document ()
virtual void set_modified (bool value=true)
virtual void set_file_uri (const Glib::ustring& file_uri, bool bEnforceFileExtension=false)
bool load (int& failure_code)
void set_opened_from_browse (bool val=true)
 Whether the document was opened from another networked glom instance, instead of via a URI.
bool get_opened_from_browse () const
void set_allow_autosave (bool value=true)
 The document usually saves itself when you call set_modified().
bool get_is_example_file () const
void set_is_example_file (bool value=true)
bool get_is_backup_file () const
void set_is_backup_file (bool value=true)
guint get_document_format_version ()
void set_hosting_mode (HostingMode mode)
 Set the hosting mode of the database.
HostingMode get_hosting_mode () const
 This returns how the database is hosted.
void set_network_shared (bool shared=true)
 Whether the database (and document) is shared over the network.
bool get_network_shared () const
 See set_network_shared().
void set_connection_server (const Glib::ustring& strVal)
void set_connection_database (const Glib::ustring& strVal)
void set_connection_port (unsigned int port_number)
void set_connection_try_other_ports (bool val)
void set_connection_user (const Glib::ustring& strVal)
 Temporarily set a username in the document.
std::string get_connection_self_hosted_directory_uri () const
 If the database should be hosted, this provides the path to the directory that contains all the files needed to do that.
Glib::ustring get_connection_server () const
Glib::ustring get_connection_database () const
unsigned int get_connection_port () const
bool get_connection_try_other_ports () const
Glib::ustring get_connection_user () const
 Retrieve a username previously set in the document.
void set_translation_original_locale (const Glib::ustring& locale)
 Set the language/locale used by original titles.
Glib::ustring get_translation_original_locale () const
 Get the language/locale used by original titles.
type_vec_relationships get_relationships (const Glib::ustring& table_name, bool plus_system_prefs=false) const
void set_relationships (const Glib::ustring& table_name, const type_vec_relationships& vecRelationships)
sharedptr< Relationshipget_relationship (const Glib::ustring& table_name, const Glib::ustring& relationship_name) const
void set_relationship (const Glib::ustring& table_name, const sharedptr< Relationship >& relationship)
void remove_relationship (const sharedptr< const Relationship >& relationship)
bool get_relationship_is_to_one (const Glib::ustring& table_name, const Glib::ustring& relationship_name) const
 Returns whether the relationship's to-field is a primary key or unique field, meaning that there can be only one related record for each value of the from-field.
sharedptr< const Relationshipget_field_used_in_relationship_to_one (const Glib::ustring& table_name, const sharedptr< const LayoutItem_Field >& layout_field) const
 Returns whether the field is the from-field in a to-one relationship.
type_vec_fields get_table_fields (const Glib::ustring& table_name) const
void set_table_fields (const Glib::ustring& table_name, const type_vec_fields& vecFields)
sharedptr< Fieldget_field (const Glib::ustring& table_name, const Glib::ustring& strFieldName) const
void remove_field (const Glib::ustring& table_name, const Glib::ustring& field_name)
 Use this after removing a field from a table, so that it is not used anymore in relationships, layouts, reports, etc.
type_list_layout_groups get_data_layout_groups (const Glib::ustring& layout_name, const Glib::ustring& parent_table_name, const Glib::ustring& layout_platform=Glib::ustring()) const
 Get the layout groups for a layout.
bool get_data_layout_groups_have_any_fields (const Glib::ustring& layout_name, const Glib::ustring& parent_table_name, const Glib::ustring& layout_platform=Glib::ustring()) const
 Discover whether there are any fields in the layout.
void set_data_layout_groups (const Glib::ustring& layout_name, const Glib::ustring& parent_table_name, const Glib::ustring& layout_platform, const type_list_layout_groups& groups)
 Set the layout groups for a layout.
type_list_layout_groups get_data_layout_groups_plus_new_fields (const Glib::ustring& layout_name, const Glib::ustring& parent_table_name, const Glib::ustring& layout_platform=Glib::ustring()) const
 The layout_name, such as "details", "list".
type_list_layout_groups get_data_layout_groups_default (const Glib::ustring& layout_name, const Glib::ustring& parent_table_name, const Glib::ustring& layout_platform=Glib::ustring()) const
type_list_translatables get_translatable_layout_items (const Glib::ustring& table_name)
type_list_translatables get_translatable_report_items (const Glib::ustring& table_name, const Glib::ustring& report_title)
void fill_layout_field_details (const Glib::ustring& parent_table_name, const sharedptr< LayoutGroup >& layout_group) const
void fill_layout_field_details (const Glib::ustring& parent_table_name, type_list_layout_groups& groups) const
void change_field_name (const Glib::ustring& table_name, const Glib::ustring& strFieldNameOld, const Glib::ustring& strFieldNameNew)
 When a field name is changed, change it in the relationships, layouts, reports, and fields data:
void change_table_name (const Glib::ustring& table_name_old, const Glib::ustring& table_name_new)
 When a table name is changed, change it in the relationships and tables data:
void change_relationship_name (const Glib::ustring& table_name, const Glib::ustring& name, const Glib::ustring& name_new)
 When a relationship name is changed, change it in layouts and reports:
type_listTableInfo get_tables (bool plus_system_prefs=false) const
std::vector< Glib::ustringget_table_names (bool plus_system_prefs=false) const
void set_tables (const type_listTableInfo& tables)
sharedptr< TableInfoget_table (const Glib::ustring& table_name) const
void add_table (const sharedptr< TableInfo >& table_name)
void remove_table (const Glib::ustring& table_name)
 Use this after DROPing the table.
bool get_table_is_known (const Glib::ustring& table_name) const
bool get_table_is_hidden (const Glib::ustring& table_name) const
Glib::ustring get_table_title (const Glib::ustring& table_name) const
void set_table_title (const Glib::ustring& table_name, const Glib::ustring&value)
Glib::ustring get_table_title_singular (const Glib::ustring& table_name) const
void set_table_example_data (const Glib::ustring& table_name, const type_example_rows& rows)
 Save example data into the document, for use when creating the example database on the server.
type_example_rows get_table_example_data (const Glib::ustring& table_name) const
virtual Glib::ustring get_name () const
 Gets filename part of file_uri, or 'untitled'.
Glib::ustring get_default_table () const
Glib::ustring get_first_table () const
Glib::ustring get_database_title () const
void set_database_title (const Glib::ustring& title)
std::vector< Glib::ustringget_library_module_names () const
void set_library_module (const Glib::ustring& name, const Glib::ustring& script)
Glib::ustring get_library_module (const Glib::ustring& name) const
void remove_library_module (const Glib::ustring& name)
Glib::ustring get_startup_script () const
 Get a Python script that should be run when the document is opened.
void set_startup_script (const Glib::ustring& script)
 See get_startup_script().
type_list_groups get_groups () const
void set_group (GroupInfo& group)
 This adds the group if necessary.
void remove_group (const Glib::ustring& group_name)
type_listReports get_report_names (const Glib::ustring& table_name) const
void remove_all_reports (const Glib::ustring& table_name)
void set_report (const Glib::ustring& table_name, const sharedptr< Report >& report)
sharedptr< Reportget_report (const Glib::ustring& table_name, const Glib::ustring& report_name) const
void remove_report (const Glib::ustring& table_name, const Glib::ustring& report_name)
type_listPrintLayouts get_print_layout_names (const Glib::ustring& table_name) const
void remove_all_print_layouts (const Glib::ustring& table_name)
void set_print_layout (const Glib::ustring& table_name, const sharedptr< PrintLayout >& print_layout)
sharedptr< PrintLayoutget_print_layout (const Glib::ustring& table_name, const Glib::ustring& print_layout_name) const
void remove_print_layout (const Glib::ustring& table_name, const Glib::ustring& print_layout_name)
void set_layout_record_viewed (const Glib::ustring& table_name, const Glib::ustring& layout_name, const Gnome::Gda::Value& primary_key_value)
void forget_layout_record_viewed (const Glib::ustring& table_name)
Gnome::Gda::Value get_layout_record_viewed (const Glib::ustring& table_name, const Glib::ustring& layout_name) const
void set_layout_current (const Glib::ustring& table_name, const Glib::ustring& layout_name)
 Temporarily save (but not in the document) the last-viewed layout for the table, so we can show the same layout when navigating back to this table later.
void set_criteria_current (const Glib::ustring& table_name, const FoundSet& found_set)
 Temporarily save (but not in the document) the last-viewed criteria for the table, so we can show the same criteria (sort order, where clause) when navigating back to this table later.
Glib::ustring get_layout_current (const Glib::ustring& table_name) const
FoundSet get_criteria_current (const Glib::ustring& table_name) const
bool get_table_overview_position (const Glib::ustring& table_name, float& x, float& y) const
 Retrieve the x and y coordinates for the given table position in the relationship overview dialog.
void set_table_overview_position (const Glib::ustring& utable_name, float x, float y)
 Set the position of a table in the relationship overview dialog.
AppState::userlevels get_userlevel (userLevelReason& reason) const
AppState::userlevels get_userlevel () const
bool set_userlevel (AppState::userlevels userlevel)
 This is transitory information, not saved to disk.
type_signal_userlevel_changed signal_userlevel_changed ()
void emit_userlevel_changed ()
Glib::ustring get_active_layout_platform () const
 This is transitory information, not saved to disk.
void set_active_layout_platform (const Glib::ustring& layout_platform=Glib::ustring())
 This is transitory information, not saved to disk.
void maemo_restrict_layouts_to_single_column ()
 Change any non-maemo layouts so their groups never have multiple columns, because this could never be displayed on the Maemo screen.
Glib::ustring build_and_get_contents () const

Static Public Member Functions

static guint get_latest_known_document_format_version ()
static sharedptr< TableInfocreate_table_system_preferences ()
static sharedptr< TableInfocreate_table_system_preferences (type_vec_fields& fields)
static sharedptr< Relationshipcreate_relationship_system_preferences (const Glib::ustring& table_name)
static bool get_relationship_is_system_properties (const sharedptr< const Relationship >& relationship)

Static Protected Member Functions

static void set_node_attribute_value_as_decimal (xmlpp::Element* node, const Glib::ustring& strAttributeName, guint value, guint value_default=0)
 If value is equal to the default then no attribute will be set, to save text space in the XML file.
static void set_node_attribute_value_as_decimal_double (xmlpp::Element* node, const Glib::ustring& strAttributeName, double value)

Member Typedef Documentation

These are only used when recreating a database from an example file. The actualy access-control is on the server, of course.

typedef std::vector< Gnome::Gda::Value > Glom::Document::type_row_data

Member Enumeration Documentation

How the database is hosted.

Enumerator:
HOSTING_MODE_POSTGRES_CENTRAL 

The database is hosted on an external postgresql server.

HOSTING_MODE_POSTGRES_SELF 

A new postgres database process is spawned that hosts the data.

HOSTING_MODE_SQLITE 

A sqlite database file is used.

HOSTING_MODE_DEFAULT 

Failure codes that could be returned by load_after().

Enumerator:
LOAD_FAILURE_CODE_FILE_VERSION_TOO_NEW 
Enumerator:
USER_LEVEL_REASON_UNKNOWN 
USER_LEVEL_REASON_FILE_READ_ONLY 
USER_LEVEL_REASON_DATABASE_ACCESS_LEVEL 
USER_LEVEL_REASON_OPENED_FROM_BROWSE 

Constructor & Destructor Documentation

Glom::Document::Document (  ) 

Reimplemented from GlomBakery::Document.

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

Reimplemented from GlomBakery::Document.


Member Function Documentation

void Glom::Document::add_table ( const sharedptr< TableInfo >&  table_name  ) 
Glib::ustring Glom::Document::build_and_get_contents (  )  const
void Glom::Document::change_field_name ( const Glib::ustring table_name,
const Glib::ustring strFieldNameOld,
const Glib::ustring strFieldNameNew 
)

When a field name is changed, change it in the relationships, layouts, reports, and fields data:

void Glom::Document::change_relationship_name ( const Glib::ustring table_name,
const Glib::ustring name,
const Glib::ustring name_new 
)

When a relationship name is changed, change it in layouts and reports:

void Glom::Document::change_table_name ( const Glib::ustring table_name_old,
const Glib::ustring table_name_new 
)

When a table name is changed, change it in the relationships and tables data:

static sharedptr<Relationship> Glom::Document::create_relationship_system_preferences ( const Glib::ustring table_name  )  [static]
static sharedptr<TableInfo> Glom::Document::create_table_system_preferences ( type_vec_fields fields  )  [static]
static sharedptr<TableInfo> Glom::Document::create_table_system_preferences (  )  [static]
void Glom::Document::emit_userlevel_changed (  ) 
void Glom::Document::fill_layout_field_details ( const Glib::ustring parent_table_name,
type_list_layout_groups groups 
) const
void Glom::Document::fill_layout_field_details ( const Glib::ustring parent_table_name,
const sharedptr< LayoutGroup >&  layout_group 
) const
void Glom::Document::forget_layout_record_viewed ( const Glib::ustring table_name  ) 
Glib::ustring Glom::Document::get_active_layout_platform (  )  const

This is transitory information, not saved to disk.

Glib::ustring Glom::Document::get_connection_database (  )  const
unsigned int Glom::Document::get_connection_port (  )  const
std::string Glom::Document::get_connection_self_hosted_directory_uri (  )  const

If the database should be hosted, this provides the path to the directory that contains all the files needed to do that.

This is usually a specifically-named directory at the same level as the .glom file. If the database is a sqlite database, this specifies the directory in which the database file is in.

Glib::ustring Glom::Document::get_connection_server (  )  const
bool Glom::Document::get_connection_try_other_ports (  )  const
Glib::ustring Glom::Document::get_connection_user (  )  const

Retrieve a username previously set in the document.

Note that this is not saved in the document's file.

TODO: Remove this, and just store it in ConnectionPool?

FoundSet Glom::Document::get_criteria_current ( const Glib::ustring table_name  )  const
type_list_layout_groups Glom::Document::get_data_layout_groups ( const Glib::ustring layout_name,
const Glib::ustring parent_table_name,
const Glib::ustring layout_platform = Glib::ustring() 
) const

Get the layout groups for a layout.

Parameters:
layout_name The name of the layout, such as list or details.
parent_table_name The name of the table for which this layout should appear.
layout_platform The platform for which this layout should be used. Possible values are an empty string (meaning normal platforms) or "maemo" meaning "normal".
Returns:
A list of layout groups at the top-level of the requested layout.
type_list_layout_groups Glom::Document::get_data_layout_groups_default ( const Glib::ustring layout_name,
const Glib::ustring parent_table_name,
const Glib::ustring layout_platform = Glib::ustring() 
) const
bool Glom::Document::get_data_layout_groups_have_any_fields ( const Glib::ustring layout_name,
const Glib::ustring parent_table_name,
const Glib::ustring layout_platform = Glib::ustring() 
) const

Discover whether there are any fields in the layout.

Parameters:
layout_name The name of the layout, such as list or details.
parent_table_name The name of the table for which this layout should appear.
layout_platform The platform for which this layout should be used. Possible values are an empty string (meaning normal platforms) or "maemo" meaning "normal".
Returns:
true if there is at least one field in the layout group or its sub groups.
type_list_layout_groups Glom::Document::get_data_layout_groups_plus_new_fields ( const Glib::ustring layout_name,
const Glib::ustring parent_table_name,
const Glib::ustring layout_platform = Glib::ustring() 
) const

The layout_name, such as "details", "list".

parent_table_name The name of the table on whose layout the layout appears.

Parameters:
layout_platform The platform for which this layout should be used. Possible values are an empty string (meaning normal platforms) or "maemo" meaning "normal".
Glib::ustring Glom::Document::get_database_title (  )  const
Glib::ustring Glom::Document::get_default_table (  )  const
guint Glom::Document::get_document_format_version (  ) 
sharedptr<Field> Glom::Document::get_field ( const Glib::ustring table_name,
const Glib::ustring strFieldName 
) const
sharedptr<const Relationship> Glom::Document::get_field_used_in_relationship_to_one ( const Glib::ustring table_name,
const sharedptr< const LayoutItem_Field >&  layout_field 
) const

Returns whether the field is the from-field in a to-one relationship.

See also:
get_relationship_is_to_one(). Ignores hidden tables.
Glib::ustring Glom::Document::get_first_table (  )  const
type_list_groups Glom::Document::get_groups (  )  const
HostingMode Glom::Document::get_hosting_mode (  )  const

This returns how the database is hosted.

bool Glom::Document::get_is_backup_file (  )  const
bool Glom::Document::get_is_example_file (  )  const
static guint Glom::Document::get_latest_known_document_format_version (  )  [static]
Glib::ustring Glom::Document::get_layout_current ( const Glib::ustring table_name  )  const
Gnome::Gda::Value Glom::Document::get_layout_record_viewed ( const Glib::ustring table_name,
const Glib::ustring layout_name 
) const
Glib::ustring Glom::Document::get_library_module ( const Glib::ustring name  )  const
std::vector<Glib::ustring> Glom::Document::get_library_module_names (  )  const
virtual Glib::ustring Glom::Document::get_name (  )  const [virtual]

Gets filename part of file_uri, or 'untitled'.

Reimplemented from GlomBakery::Document.

bool Glom::Document::get_network_shared (  )  const

See set_network_shared().

Returns:
true if the database is (or should be) shared over the network.
bool Glom::Document::get_opened_from_browse (  )  const
sharedptr<PrintLayout> Glom::Document::get_print_layout ( const Glib::ustring table_name,
const Glib::ustring print_layout_name 
) const
type_listPrintLayouts Glom::Document::get_print_layout_names ( const Glib::ustring table_name  )  const
sharedptr<Relationship> Glom::Document::get_relationship ( const Glib::ustring table_name,
const Glib::ustring relationship_name 
) const
static bool Glom::Document::get_relationship_is_system_properties ( const sharedptr< const Relationship >&  relationship  )  [static]
bool Glom::Document::get_relationship_is_to_one ( const Glib::ustring table_name,
const Glib::ustring relationship_name 
) const

Returns whether the relationship's to-field is a primary key or unique field, meaning that there can be only one related record for each value of the from-field.

type_vec_relationships Glom::Document::get_relationships ( const Glib::ustring table_name,
bool  plus_system_prefs = false 
) const
sharedptr<Report> Glom::Document::get_report ( const Glib::ustring table_name,
const Glib::ustring report_name 
) const
type_listReports Glom::Document::get_report_names ( const Glib::ustring table_name  )  const
Glib::ustring Glom::Document::get_startup_script (  )  const

Get a Python script that should be run when the document is opened.

sharedptr<TableInfo> Glom::Document::get_table ( const Glib::ustring table_name  )  const
type_example_rows Glom::Document::get_table_example_data ( const Glib::ustring table_name  )  const
type_vec_fields Glom::Document::get_table_fields ( const Glib::ustring table_name  )  const
bool Glom::Document::get_table_is_hidden ( const Glib::ustring table_name  )  const
bool Glom::Document::get_table_is_known ( const Glib::ustring table_name  )  const
std::vector<Glib::ustring> Glom::Document::get_table_names ( bool  plus_system_prefs = false  )  const
bool Glom::Document::get_table_overview_position ( const Glib::ustring table_name,
float &  x,
float &  y 
) const

Retrieve the x and y coordinates for the given table position in the relationship overview dialog.

Parameters:
table_name The name of the table to query.
x The x coordinate of the table position.
y The y coordinate of the table position.
Returns:
false if the table does not have any position for this table.
Glib::ustring Glom::Document::get_table_title ( const Glib::ustring table_name  )  const
Glib::ustring Glom::Document::get_table_title_singular ( const Glib::ustring table_name  )  const
type_listTableInfo Glom::Document::get_tables ( bool  plus_system_prefs = false  )  const
type_list_translatables Glom::Document::get_translatable_layout_items ( const Glib::ustring table_name  ) 
type_list_translatables Glom::Document::get_translatable_report_items ( const Glib::ustring table_name,
const Glib::ustring report_title 
)
Glib::ustring Glom::Document::get_translation_original_locale (  )  const

Get the language/locale used by original titles.

Title translations are translations of the text in this language.

AppState::userlevels Glom::Document::get_userlevel (  )  const
AppState::userlevels Glom::Document::get_userlevel ( userLevelReason reason  )  const
Parameters:
reason The reason that the user is not a developer, if he is not.
Returns:
Whether the user is a developer.
bool Glom::Document::load ( int &  failure_code  ) 

Reimplemented from GlomBakery::Document.

void Glom::Document::maemo_restrict_layouts_to_single_column (  ) 

Change any non-maemo layouts so their groups never have multiple columns, because this could never be displayed on the Maemo screen.

This allows layouts to be shown fairly sanely on Maemo even if no custom maemo layout was defined. This does not save the change to disk.

void Glom::Document::remove_all_print_layouts ( const Glib::ustring table_name  ) 
void Glom::Document::remove_all_reports ( const Glib::ustring table_name  ) 
void Glom::Document::remove_field ( const Glib::ustring table_name,
const Glib::ustring field_name 
)

Use this after removing a field from a table, so that it is not used anymore in relationships, layouts, reports, etc.

void Glom::Document::remove_group ( const Glib::ustring group_name  ) 
void Glom::Document::remove_library_module ( const Glib::ustring name  ) 
void Glom::Document::remove_print_layout ( const Glib::ustring table_name,
const Glib::ustring print_layout_name 
)
void Glom::Document::remove_relationship ( const sharedptr< const Relationship >&  relationship  ) 
void Glom::Document::remove_report ( const Glib::ustring table_name,
const Glib::ustring report_name 
)
void Glom::Document::remove_table ( const Glib::ustring table_name  ) 

Use this after DROPing the table.

It removes information about the table, including fields and layouts, and any place that parts of the table are used.

void Glom::Document::set_active_layout_platform ( const Glib::ustring layout_platform = Glib::ustring()  ) 

This is transitory information, not saved to disk.

void Glom::Document::set_allow_autosave ( bool  value = true  ) 

The document usually saves itself when you call set_modified().

Pass false to this function to prevent that temporarily. The document will be saved, if necessary, after you call this function with true.

void Glom::Document::set_connection_database ( const Glib::ustring strVal  ) 
void Glom::Document::set_connection_port ( unsigned int  port_number  ) 
void Glom::Document::set_connection_server ( const Glib::ustring strVal  ) 
void Glom::Document::set_connection_try_other_ports ( bool  val  ) 
void Glom::Document::set_connection_user ( const Glib::ustring strVal  ) 

Temporarily set a username in the document.

Note that this is not saved in the document's file.

TODO: Remove this, and just store it in ConnectionPool?

void Glom::Document::set_criteria_current ( const Glib::ustring table_name,
const FoundSet found_set 
)

Temporarily save (but not in the document) the last-viewed criteria for the table, so we can show the same criteria (sort order, where clause) when navigating back to this table later.

Parameters:
table_name The table.
found_set Additional information about the last use of that layout, such as the sort order or where clause.
void Glom::Document::set_data_layout_groups ( const Glib::ustring layout_name,
const Glib::ustring parent_table_name,
const Glib::ustring layout_platform,
const type_list_layout_groups groups 
)

Set the layout groups for a layout.

Parameters:
layout_name The name of the layout, such as list or details.
parent_table_name The name of the table for which this layout should appear.
layout_platform The platform for which this layout should be used. Possible values are an empty string (meaning normal platforms) or "maemo" meaning "normal".
groups A list of layout groups at the top-level of the requested layout.
void Glom::Document::set_database_title ( const Glib::ustring title  ) 
virtual void Glom::Document::set_file_uri ( const Glib::ustring file_uri,
bool  bEnforceFileExtension = false 
) [virtual]

Reimplemented from GlomBakery::Document.

void Glom::Document::set_group ( GroupInfo group  ) 

This adds the group if necessary.

void Glom::Document::set_hosting_mode ( HostingMode  mode  ) 

Set the hosting mode of the database.

void Glom::Document::set_is_backup_file ( bool  value = true  ) 
void Glom::Document::set_is_example_file ( bool  value = true  ) 
void Glom::Document::set_layout_current ( const Glib::ustring table_name,
const Glib::ustring layout_name 
)

Temporarily save (but not in the document) the last-viewed layout for the table, so we can show the same layout when navigating back to this table later.

Parameters:
table_name The table.
layout_name The layout name, such as "list" or "details".
void Glom::Document::set_layout_record_viewed ( const Glib::ustring table_name,
const Glib::ustring layout_name,
const Gnome::Gda::Value &  primary_key_value 
)
void Glom::Document::set_library_module ( const Glib::ustring name,
const Glib::ustring script 
)
virtual void Glom::Document::set_modified ( bool  value = true  )  [virtual]

Reimplemented from GlomBakery::Document.

void Glom::Document::set_network_shared ( bool  shared = true  ) 

Whether the database (and document) is shared over the network.

This setting is saved in the file, allowing the database to be shared immediately after opening the document.

Parameters:
shared true if the database should be shared.
static void Glom::Document::set_node_attribute_value_as_decimal ( xmlpp::Element *  node,
const Glib::ustring strAttributeName,
guint  value,
guint  value_default = 0 
) [static, protected]

If value is equal to the default then no attribute will be set, to save text space in the XML file.

static void Glom::Document::set_node_attribute_value_as_decimal_double ( xmlpp::Element *  node,
const Glib::ustring strAttributeName,
double  value 
) [static, protected]
void Glom::Document::set_opened_from_browse ( bool  val = true  ) 

Whether the document was opened from another networked glom instance, instead of via a URI.

void Glom::Document::set_print_layout ( const Glib::ustring table_name,
const sharedptr< PrintLayout >&  print_layout 
)
void Glom::Document::set_relationship ( const Glib::ustring table_name,
const sharedptr< Relationship >&  relationship 
)
void Glom::Document::set_relationships ( const Glib::ustring table_name,
const type_vec_relationships vecRelationships 
)
void Glom::Document::set_report ( const Glib::ustring table_name,
const sharedptr< Report >&  report 
)
void Glom::Document::set_startup_script ( const Glib::ustring script  ) 
void Glom::Document::set_table_example_data ( const Glib::ustring table_name,
const type_example_rows rows 
)

Save example data into the document, for use when creating the example database on the server.

Don't use this for large amounts of data.

Parameters:
table_name The table that should contain this example data.
rows Each row is separated by a newline. Each line has comma-separated field values, in SQL format.
void Glom::Document::set_table_fields ( const Glib::ustring table_name,
const type_vec_fields vecFields 
)
void Glom::Document::set_table_overview_position ( const Glib::ustring utable_name,
float  x,
float  y 
)

Set the position of a table in the relationship overview dialog.

Parameters:
table_name The name of the table to modify.
x The x coordinate of the table position.
y The y coordinate of the table position.
void Glom::Document::set_table_title ( const Glib::ustring table_name,
const Glib::ustring value 
)
void Glom::Document::set_tables ( const type_listTableInfo tables  ) 
void Glom::Document::set_translation_original_locale ( const Glib::ustring locale  ) 

Set the language/locale used by original titles.

Title translations are translations of the text in this language.

Parameters:
locale,: For instance, "en_US.UTF-8".
bool Glom::Document::set_userlevel ( AppState::userlevels  userlevel  ) 

This is transitory information, not saved to disk.

type_signal_userlevel_changed Glom::Document::signal_userlevel_changed (  ) 

The documentation for this class was generated from the following file:
Generated on Mon Oct 18 15:52:37 2010 for libglom-1.16 by  doxygen 1.6.3