libglom-1.30: Glom::LayoutItem_Field Class Reference

libglom-1.30 1.30.0

- Main Page
- Namespaces
- Classes

- Class List
- Class Index
- Class Hierarchy
- Class Members

Public Member Functions | Public Attributes | List of all members
Glom::LayoutItem_Field Class Reference

A LayoutItem that shows the data from a table field. More...

Inheritance diagram for Glom::LayoutItem_Field:
[legend]
Collaboration diagram for Glom::LayoutItem_Field:
[legend]

## Public Member Functions
| LayoutItem_Field ()
| LayoutItem_Field (const LayoutItem_Field& src)
| LayoutItem_Field (LayoutItem_Field&& src)=delete
LayoutItem_Field& | operator= (const LayoutItem_Field& src)
LayoutItem_Field& | operator= (LayoutItem_Field&& src)=delete
virtual | ~LayoutItem_Field ()
virtual LayoutItem* | clone () const
| Create a new copied instance. More...
bool | operator== (const LayoutItem_Field& src) const
void | set_name (const Glib::ustring& name) noexceptoverride
| Set the non-user-visible name of the field. More...
Glib::ustring | get_name () const noexceptoverride
| Get the non-user-visible name of the field. More...
Glib::ustring | get_title (const Glib::ustring& locale) const noexceptoverride
| Get the user-visible title for the field, in the user's current locale. More...
Glib::ustring | get_title_or_name (const Glib::ustring& locale) const noexceptoverride
| Get the user-visible title for the field, in the user's current locale. More...
Glib::ustring | get_title_or_name_no_custom (const Glib::ustring& locale) const
std::shared_ptr< const CustomTitle > | get_title_custom () const
std::shared_ptr< CustomTitle > | get_title_custom ()
void | set_title_custom (const std::shared_ptr< CustomTitle >& title)
virtual Glib::ustring | get_layout_display_name () const
| Get a text representation for the field, such as Relationship::FieldName. More...
virtual Glib::ustring | get_part_type_name () const
virtual Glib::ustring | get_report_part_id () const
| Gets the node name to use for the intermediate XML, (and usually, the CSS style class to use for the resulting HTML). More...
void | set_full_field_details (const std::shared_ptr< const Field >& field)
std::shared_ptr< const Field > | get_full_field_details () const
Field::glom_field_type | get_glom_type () const
| Convenience function, to avoid use of get_full_field_details(). More...
bool | get_editable_and_allowed () const
bool | get_hidden () const
| For extra fields, needed for SQL queries. The user should never be able to make an item hidden - he can just remove it. More...
void | set_hidden (bool val=true)
bool | get_formatting_use_default () const
| Discover whether to use the default formatting for this field, instead of some custom per-layout-item field formatting. More...
void | set_formatting_use_default (bool use_default=true)
| Specify whether to use the default formatting for this field, instead of some custom per-layout-item field formatting. More...
virtual const Formatting& | get_formatting_used () const
| Get the field formatting used by this layout item, which may be either custom field formatting or the default field formatting. More...
virtual Formatting::HorizontalAlignment | get_formatting_used_horizontal_alignment (bool for_details_view=false) const
| Get the alignment for the formatting used (see get_formatting_used()), choosing an appropriate alignment if it is set to HorizontalAlignment::AUTO. More...
bool | get_formatting_used_has_translatable_choices () const
| A convenience method to discover whether the formatting that is used has custom choices with the values restricted to those choices, meaning that those choices could be translated. More...
bool | is_same_field (const std::shared_ptr< const LayoutItem_Field >& field) const
| Compare the name, relationship, and related_relationship. More...
Public Member Functions inherited from Glom::LayoutItem_WithFormatting
| LayoutItem_WithFormatting ()
| LayoutItem_WithFormatting (const LayoutItem_WithFormatting& src)
| LayoutItem_WithFormatting (LayoutItem_WithFormatting&& src)=delete
LayoutItem_WithFormatting& | operator= (const LayoutItem_WithFormatting& src)
LayoutItem_WithFormatting& | operator= (LayoutItem_WithFormatting&& src)=delete
virtual | ~LayoutItem_WithFormatting ()
bool | operator== (const LayoutItem_WithFormatting& src) const
Public Member Functions inherited from Glom::LayoutItem
| LayoutItem ()
| LayoutItem (const LayoutItem& src)
| LayoutItem (LayoutItem&& src)=delete
LayoutItem& | operator= (const LayoutItem& src)
LayoutItem& | operator= (LayoutItem&& src)=delete
virtual | ~LayoutItem ()
bool | operator== (const LayoutItem& src) const
virtual bool | get_editable () const
virtual void | set_editable (bool val=true)
guint | get_display_width () const
void | set_display_width (guint value)
void | get_print_layout_position (double& x, double& y, double& width, double& height) const
| This is used only for the print layouts. More...
void | set_print_layout_position (double x, double y, double width, double height)
| This is used only for the print layouts. More...
void | set_print_layout_position_y (double y)
| This is used only for the print layouts. More...
void | set_print_layout_split_across_pages (bool split=true)
| This is used only for the print layouts. More...
bool | get_print_layout_split_across_pages () const
| This is used only for the print layouts. More...
Public Member Functions inherited from Glom::TranslatableItem
| TranslatableItem () noexcept
| TranslatableItem (const TranslatableItem& src) noexcept
| TranslatableItem (TranslatableItem&& src) noexcept
virtual | ~TranslatableItem ()
TranslatableItem& | operator= (const TranslatableItem& src) noexcept
TranslatableItem& | operator= (TranslatableItem&& src) noexcept
bool | operator== (const TranslatableItem& src) const noexcept
bool | operator!= (const TranslatableItem& src) const noexcept
bool | get_name_not_empty () const noexcept
virtual Glib::ustring | get_title_original () const noexcept
| Get the title's original (non-translated, usually English) text. More...
Glib::ustring | get_title_translation (const Glib::ustring& locale, bool fallback=true) const noexcept
| Get the title's translation for the specified locale, optionally falling back to a locale of the same language, and then falling back to the original. More...
void | set_title (const Glib::ustring& title, const Glib::ustring& locale) noexcept
| Set the title's translation for the specified locale. More...
void | set_title_original (const Glib::ustring& title) noexcept
| Set the title's original (non-translated, usually English) text. More...
void | clear_title_in_all_locales () noexcept
| Clear the original title and any translations of the title. More...
bool | get_has_translations () const noexcept
enumTranslatableItemType | get_translatable_item_type () const noexcept
Public Member Functions inherited from Glom::UsesRelationship
| UsesRelationship ()
| UsesRelationship (const UsesRelationship& src)
| UsesRelationship (UsesRelationship&& src)=delete
UsesRelationship& | operator= (const UsesRelationship& src)
UsesRelationship& | operator= (UsesRelationship&& src)=delete
virtual | ~UsesRelationship ()
bool | operator== (const UsesRelationship& src) const
bool | get_has_relationship_name () const
bool | get_has_related_relationship_name () const
Glib::ustring | get_relationship_name () const
| Convenience function, equivalent to get_relationship()->get_name(). More...
Glib::ustring | get_related_relationship_name () const
| Convenience function, equivalent to get_relationship()->get_name(). More...
std::shared_ptr< const Relationship > | get_relationship () const
| Return the relationship used by this item, if any, or a null std::shared_ptr. More...
void | set_relationship (const std::shared_ptr< const Relationship >& relationship)
std::shared_ptr< const Relationship > | get_related_relationship () const
| Return the related relationship used by this item, if any, or a null std::shared_ptr. More...
void | set_related_relationship (const std::shared_ptr< const Relationship >& relationship)
Glib::ustring | get_table_used (const Glib::ustring& parent_table) const
| Returns either the parent_table, related to table, or doubly-related to-table. More...
Glib::ustring | get_title_used (const Glib::ustring& parent_table_title, const Glib::ustring& locale) const
| Get the title of the relationship that is actually used, falling back to the relationship's name. More...
Glib::ustring | get_title_singular_used (const Glib::ustring& parent_table_title, const Glib::ustring& locale) const
| Get the singular title of the relationship that is actually used, falling back to the regular (plural) title, and then to the relationship's name. More...
Glib::ustring | get_to_field_used () const
Glib::ustring | get_relationship_name_used () const
| Get the name of the related relationship used, if any, or the relationship if there is no related relationship, or an empty string if neither are used by this item. More...
bool | get_relationship_used_allows_edit () const
| Discover whether the relationship used allows the user to edit values in its to table. More...
Glib::ustring | get_sql_join_alias_name () const
| Get a name to use as an alias in SQL statements. More...
Glib::ustring | get_sql_table_or_join_alias_name (const Glib::ustring& parent_table) const
| Get the item's alias name, if it uses a relationship, or just get its table name. More...
Glib::ustring | get_relationship_display_name () const
| Get a human-readable representation of th relationship. More...

## Public Attributes
bool | m_priv_view
bool | m_priv_edit
Public Attributes inherited from Glom::LayoutItem_WithFormatting
Formatting | m_formatting

## Additional Inherited Members
Public Types inherited from Glom::TranslatableItem
enum | enumTranslatableItemType { enumTranslatableItemType::INVALID, enumTranslatableItemType::FIELD, enumTranslatableItemType::RELATIONSHIP, enumTranslatableItemType::LAYOUT_ITEM, enumTranslatableItemType::CUSTOM_TITLE, enumTranslatableItemType::PRINT_LAYOUT, enumTranslatableItemType::REPORT, enumTranslatableItemType::TABLE, enumTranslatableItemType::BUTTON, enumTranslatableItemType::TEXTOBJECT, enumTranslatableItemType::IMAGEOBJECT, enumTranslatableItemType::CHOICEVALUE, enumTranslatableItemType::DATABASE_TITLE, enumTranslatableItemType::STATIC_TEXT }
typedef std::map< Glib::ustring, Glib::ustring > | type_map_locale_to_translations
Static Public Member Functions inherited from Glom::TranslatableItem
static Glib::ustring | get_translatable_type_name (enumTranslatableItemType item_type) noexcept
static Glib::ustring | get_translatable_type_name_nontranslated (enumTranslatableItemType item_type) noexcept
| The non-translated name is used for the context in gettext .po files. More...
Protected Attributes inherited from Glom::TranslatableItem
enumTranslatableItemType | m_translatable_item_type

## Detailed Description

A LayoutItem that shows the data from a table field.

The field may be in a known table, or in a to table of a relationship or related relatinoship. See UsesRelationship::get_relationship() and UsesRelationship::get_related_relationship() in the base class.

get_title() returns either the title of the Field or the CustomTitle. You should not call get/set_title_original() or get/set_title_translation() on items of this type.

## Constructor & Destructor Documentation

Glom::LayoutItem_Field::LayoutItem_Field | ( |  | ) |

Glom::LayoutItem_Field::LayoutItem_Field | ( | const LayoutItem_Field& | src | ) |

Glom::LayoutItem_Field::LayoutItem_Field | ( | LayoutItem_Field&& | src | ) |
| delete

virtual Glom::LayoutItem_Field::~LayoutItem_Field | ( |  | ) |
| virtual

## Member Function Documentation

virtual LayoutItem* Glom::LayoutItem_Field::clone | ( |  | ) | const
| virtual

Create a new copied instance.

This allows us to deep-copy a list of LayoutItems.

Implements Glom::LayoutItem.

Reimplemented in Glom::LayoutItem_FieldSummary.

bool Glom::LayoutItem_Field::get_editable_and_allowed | ( |  | ) | const

bool Glom::LayoutItem_Field::get_formatting_use_default | ( |  | ) | const

Discover whether to use the default formatting for this field, instead of some custom per-layout-item field formatting.

virtual const Formatting& Glom::LayoutItem_Field::get_formatting_used | ( |  | ) | const
| virtual

Get the field formatting used by this layout item, which may be either custom field formatting or the default field formatting.

Reimplemented from Glom::LayoutItem_WithFormatting.

bool Glom::LayoutItem_Field::get_formatting_used_has_translatable_choices | ( |  | ) | const

A convenience method to discover whether the formatting that is used has custom choices with the values restricted to those choices, meaning that those choices could be translated.

virtual Formatting::HorizontalAlignment Glom::LayoutItem_Field::get_formatting_used_horizontal_alignment | ( | bool | for_details_view = `false` | ) | const
| virtual

Get the alignment for the formatting used (see get_formatting_used()), choosing an appropriate alignment if it is set to HorizontalAlignment::AUTO.

Note that this never returns HorizontalAlignment::AUTO.

Parameters

  for_details_view | This can change the effect of HorizontalAlignment::AUTO.

Reimplemented from Glom::LayoutItem_WithFormatting.

std::shared_ptr<const Field> Glom::LayoutItem_Field::get_full_field_details | ( |  | ) | const

Field::glom_field_type Glom::LayoutItem_Field::get_glom_type | ( |  | ) | const

Convenience function, to avoid use of get_full_field_details().

bool Glom::LayoutItem_Field::get_hidden | ( |  | ) | const

For extra fields, needed for SQL queries. The user should never be able to make an item hidden - he can just remove it.

virtual Glib::ustring Glom::LayoutItem_Field::get_layout_display_name | ( |  | ) | const
| virtual

Get a text representation for the field, such as Relationship::FieldName.

Reimplemented from Glom::LayoutItem.

Reimplemented in Glom::LayoutItem_FieldSummary.

Glib::ustring Glom::LayoutItem_Field::get_name | ( |  | ) | const
| overridevirtualnoexcept

Get the non-user-visible name of the field.

Reimplemented from Glom::TranslatableItem.

virtual Glib::ustring Glom::LayoutItem_Field::get_part_type_name | ( |  | ) | const
| virtual

Implements Glom::LayoutItem.

Reimplemented in Glom::LayoutItem_FieldSummary.

virtual Glib::ustring Glom::LayoutItem_Field::get_report_part_id | ( |  | ) | const
| virtual

Gets the node name to use for the intermediate XML, (and usually, the CSS style class to use for the resulting HTML).

Reimplemented from Glom::LayoutItem.

Reimplemented in Glom::LayoutItem_FieldSummary.

Glib::ustring Glom::LayoutItem_Field::get_title | ( | const Glib::ustring & | locale | ) | const
| overridevirtualnoexcept

Get the user-visible title for the field, in the user's current locale.

This returns the name if no title is set.

Reimplemented from Glom::TranslatableItem.

Reimplemented in Glom::LayoutItem_FieldSummary.

std::shared_ptr<const CustomTitle> Glom::LayoutItem_Field::get_title_custom | ( |  | ) | const

std::shared_ptr<CustomTitle> Glom::LayoutItem_Field::get_title_custom | ( |  | ) |

Glib::ustring Glom::LayoutItem_Field::get_title_or_name | ( | const Glib::ustring & | locale | ) | const
| overridevirtualnoexcept

Get the user-visible title for the field, in the user's current locale.

Reimplemented from Glom::TranslatableItem.

Reimplemented in Glom::LayoutItem_FieldSummary.

Glib::ustring Glom::LayoutItem_Field::get_title_or_name_no_custom | ( | const Glib::ustring & | locale | ) | const

bool Glom::LayoutItem_Field::is_same_field | ( | const std::shared_ptr< const LayoutItem_Field >& | field | ) | const

Compare the name, relationship, and related_relationship.

LayoutItem_Field& Glom::LayoutItem_Field::operator= | ( | const LayoutItem_Field& | src | ) |

LayoutItem_Field& Glom::LayoutItem_Field::operator= | ( | LayoutItem_Field&& | src | ) |
| delete

bool Glom::LayoutItem_Field::operator== | ( | const LayoutItem_Field& | src | ) | const

void Glom::LayoutItem_Field::set_formatting_use_default | ( | bool | use_default = `true` | ) |

Specify whether to use the default formatting for this field, instead of some custom per-layout-item field formatting.

void Glom::LayoutItem_Field::set_full_field_details | ( | const std::shared_ptr< const Field >& | field | ) |

void Glom::LayoutItem_Field::set_hidden | ( | bool | val = `true` | ) |

void Glom::LayoutItem_Field::set_name | ( | const Glib::ustring & | name | ) |
| overridevirtualnoexcept

Set the non-user-visible name of the field.

Reimplemented from Glom::TranslatableItem.

void Glom::LayoutItem_Field::set_title_custom | ( | const std::shared_ptr< CustomTitle >& | title | ) |

## Member Data Documentation

bool Glom::LayoutItem_Field::m_priv_edit

bool Glom::LayoutItem_Field::m_priv_view

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

- libglom/data_structure/layout/layoutitem_field.h