libglom-1.32: Glom::LayoutGroup Class Reference

libglom-1.32 1.32.0

Public Types | Public Member Functions | Public Attributes | List of all members
Glom::LayoutGroup Class Reference
Inheritance diagram for Glom::LayoutGroup:
[legend]
Collaboration diagram for Glom::LayoutGroup:
[legend]

## Public Types
typedef std::vector< std::shared_ptr< LayoutItem > > | type_list_items
typedef std::vector< std::shared_ptr< const LayoutItem > > | type_list_const_items
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::unordered_map< Glib::ustring, Glib::ustring, std::hash< std::string > > | type_map_locale_to_translations

## Public Member Functions
| LayoutGroup ()
| LayoutGroup (const LayoutGroup& src)
| LayoutGroup (LayoutGroup&& src)=default
LayoutGroup& | operator= (const LayoutGroup& src)
LayoutGroup& | operator= (LayoutGroup&& src)=default
| ~LayoutGroup () override
LayoutItem* | clone () const override
| Create a new copied instance. More...
bool | has_field (const Glib::ustring& parent_table_name, const Glib::ustring& table_name, const Glib::ustring& field_name) const
| Discover whether the layout group contains the specified field (from the current table). More...
bool | has_any_fields () const
| Discover whether the layout group contains any fields. More...
void | add_item (const std::shared_ptr< LayoutItem >& item)
| Add the item to the end of the list. More...
void | add_item (const std::shared_ptr< LayoutItem >& item, const std::shared_ptr< const LayoutItem >& position)
| Add the item after the specified existing item. More...
void | remove_item (const std::shared_ptr< LayoutItem >& item)
| Remove a layout item from the group. More...
void | remove_field (const Glib::ustring& parent_table_name, const Glib::ustring& table_name, const Glib::ustring& field_name)
| Remove any instance of the field from the layout. More...
virtual void | change_field_item_name (const Glib::ustring& table_name, const Glib::ustring& field_name, const Glib::ustring& field_name_new)
virtual void | change_related_field_item_name (const Glib::ustring& table_name, const Glib::ustring& field_name, const Glib::ustring& field_name_new)
virtual void | remove_relationship (const std::shared_ptr< const Relationship >& relationship)
| Remove any use of the relationship from the layout. More...
void | remove_all_items ()
double | get_border_width () const
void | set_border_width (double border_width)
guint | get_items_count () const
guint | get_columns_count () const
void | set_columns_count (guint columns_count)
type_list_items | get_items ()
type_list_const_items | get_items () const
type_list_const_items | get_items_recursive () const
| Get the items recursively, depth-first, not returning any groups. More...
type_list_items | get_items_recursive ()
| Get the items recursively, depth-first, not returning any groups. More...
type_list_const_items | get_items_recursive_with_groups () const
| Get the items recursively, depth-first, also returning the groups. More...
Glib::ustring | get_part_type_name () const override
Glib::ustring | get_report_part_id () const override
| Gets the node name to use for the intermediate XML, (and usually, the CSS style class to use for the resulting HTML). More...
Public Member Functions inherited from Glom::LayoutItem
| LayoutItem ()
| LayoutItem (const LayoutItem& src)
| LayoutItem (LayoutItem&& src)=default
LayoutItem& | operator= (const LayoutItem& src)
LayoutItem& | operator= (LayoutItem&& src)=default
| ~LayoutItem () override=default
bool | operator== (const LayoutItem& src) const
bool | get_editable () const
void | set_editable (bool val=true)
virtual Glib::ustring | get_layout_display_name () const
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)=default
| TranslatableItem (TranslatableItem&& src)=default
virtual | ~TranslatableItem ()=default
TranslatableItem& | operator= (const TranslatableItem& src)=default
TranslatableItem& | operator= (TranslatableItem&& src)=default
bool | operator== (const TranslatableItem& src) const noexcept
bool | operator!= (const TranslatableItem& src) const noexcept
virtual void | set_name (const Glib::ustring& name) noexcept
| Set the non-translated identifier name. More...
virtual Glib::ustring | get_name () const noexcept
| Get the non-translated identifier name. More...
bool | get_name_not_empty () const noexcept
virtual Glib::ustring | get_title_or_name (const Glib::ustring& locale) const noexcept
virtual Glib::ustring | get_title (const Glib::ustring& locale) const noexcept
| Get the title's translation for the specified locale, falling back to the original text if there is no translation. More...
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 Attributes
type_list_items | m_list_items

## Additional Inherited Members
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

## Member Typedef Documentation

## ◆ type_list_const_items

typedef std::vector< std::shared_ptr<const LayoutItem> > Glom::LayoutGroup::type_list_const_items

## ◆ type_list_items

typedef std::vector< std::shared_ptr<LayoutItem> > Glom::LayoutGroup::type_list_items

## Constructor & Destructor Documentation

## ◆ LayoutGroup() [1/3]

Glom::LayoutGroup::LayoutGroup | ( |  | ) |

## ◆ LayoutGroup() [2/3]

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

## ◆ LayoutGroup() [3/3]

Glom::LayoutGroup::LayoutGroup | ( | LayoutGroup&& | src | ) |
| default

## ◆ ~LayoutGroup()

Glom::LayoutGroup::~LayoutGroup | ( |  | ) |
| override

## Member Function Documentation

## ◆ add_item() [1/2]

void Glom::LayoutGroup::add_item | ( | const std::shared_ptr< LayoutItem >& | item | ) |

Add the item to the end of the list.

Parameters

  item | The item to add.

## ◆ add_item() [2/2]

void Glom::LayoutGroup::add_item | ( | const std::shared_ptr< LayoutItem >& | item,
|  | const std::shared_ptr< const LayoutItem >& | position
| ) |  |

Add the item after the specified existing item.

Parameters

  item | The item to add.
  position | The item after which the item should be added.

## ◆ change_field_item_name()

virtual void Glom::LayoutGroup::change_field_item_name | ( | const Glib::ustring & | table_name,
|  | const Glib::ustring & | field_name,
|  | const Glib::ustring & | field_name_new
| ) |  |
| virtual

Reimplemented in Glom::LayoutItem_Portal, and Glom::LayoutItem_CalendarPortal.

## ◆ change_related_field_item_name()

virtual void Glom::LayoutGroup::change_related_field_item_name | ( | const Glib::ustring & | table_name,
|  | const Glib::ustring & | field_name,
|  | const Glib::ustring & | field_name_new
| ) |  |
| virtual

Reimplemented in Glom::LayoutItem_Portal, and Glom::LayoutItem_CalendarPortal.

## ◆ clone()

LayoutItem* Glom::LayoutGroup::clone | ( |  | ) | const
| overridevirtual

Create a new copied instance.

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

Implements Glom::LayoutItem.

Reimplemented in Glom::LayoutItem_Portal, Glom::LayoutItem_GroupBy, Glom::LayoutItem_Notebook, Glom::LayoutItem_Footer, Glom::LayoutItem_Header, Glom::LayoutItem_VerticalGroup, Glom::LayoutItem_Summary, and Glom::LayoutItem_CalendarPortal.

## ◆ get_border_width()

double Glom::LayoutGroup::get_border_width | ( |  | ) | const

## ◆ get_columns_count()

guint Glom::LayoutGroup::get_columns_count | ( |  | ) | const

## ◆ get_items() [1/2]

type_list_items Glom::LayoutGroup::get_items | ( |  | ) |

## ◆ get_items() [2/2]

type_list_const_items Glom::LayoutGroup::get_items | ( |  | ) | const

## ◆ get_items_count()

guint Glom::LayoutGroup::get_items_count | ( |  | ) | const

## ◆ get_items_recursive() [1/2]

type_list_const_items Glom::LayoutGroup::get_items_recursive | ( |  | ) | const

Get the items recursively, depth-first, not returning any groups.

## ◆ get_items_recursive() [2/2]

type_list_items Glom::LayoutGroup::get_items_recursive | ( |  | ) |

Get the items recursively, depth-first, not returning any groups.

## ◆ get_items_recursive_with_groups()

type_list_const_items Glom::LayoutGroup::get_items_recursive_with_groups | ( |  | ) | const

Get the items recursively, depth-first, also returning the groups.

This is only used by the tests so far.

## ◆ get_part_type_name()

Glib::ustring Glom::LayoutGroup::get_part_type_name | ( |  | ) | const
| overridevirtual

Implements Glom::LayoutItem.

Reimplemented in Glom::LayoutItem_GroupBy, Glom::LayoutItem_Notebook, Glom::LayoutItem_Footer, Glom::LayoutItem_Header, Glom::LayoutItem_VerticalGroup, Glom::LayoutItem_Summary, and Glom::LayoutItem_CalendarPortal.

## ◆ get_report_part_id()

Glib::ustring Glom::LayoutGroup::get_report_part_id | ( |  | ) | const
| overridevirtual

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_GroupBy, Glom::LayoutItem_Footer, Glom::LayoutItem_Header, Glom::LayoutItem_VerticalGroup, and Glom::LayoutItem_Summary.

## ◆ has_any_fields()

bool Glom::LayoutGroup::has_any_fields | ( |  | ) | const

Discover whether the layout group contains any fields.

Returns
  True if the field is in the layout group (or its child groups).

## ◆ has_field()

bool Glom::LayoutGroup::has_field | ( | const Glib::ustring & | parent_table_name,
|  | const Glib::ustring & | table_name,
|  | const Glib::ustring & | field_name
| ) |  | const

Discover whether the layout group contains the specified field (from the current table).

Parameters

  parent_table_name | The table to which this layout belongs.
  table_name | The table to which the field, specified by field_name, belongs.
  field_name | The name of the field to search for.

Returns
  True if the field is in the layout group (or its child groups).

## ◆ operator=() [1/2]

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

## ◆ operator=() [2/2]

LayoutGroup& Glom::LayoutGroup::operator= | ( | LayoutGroup&& | src | ) |
| default

## ◆ remove_all_items()

void Glom::LayoutGroup::remove_all_items | ( |  | ) |

## ◆ remove_field()

void Glom::LayoutGroup::remove_field | ( | const Glib::ustring & | parent_table_name,
|  | const Glib::ustring & | table_name,
|  | const Glib::ustring & | field_name
| ) |  |

Remove any instance of the field from the layout.

Parameters

  parent_table_name | The table to which this layout belongs.
  table_name | The table to which the field, specified by field_name, belongs.
  field_name | The name of the field to remove.

## ◆ remove_item()

void Glom::LayoutGroup::remove_item | ( | const std::shared_ptr< LayoutItem >& | item | ) |

Remove a layout item from the group.

Parameters

  item | The item to remove.

## ◆ remove_relationship()

virtual void Glom::LayoutGroup::remove_relationship | ( | const std::shared_ptr< const Relationship >& | relationship | ) |
| virtual

Remove any use of the relationship from the layout.

## ◆ set_border_width()

void Glom::LayoutGroup::set_border_width | ( | double | border_width | ) |

## ◆ set_columns_count()

void Glom::LayoutGroup::set_columns_count | ( | guint | columns_count | ) |

## Member Data Documentation

## ◆ m_list_items

type_list_items Glom::LayoutGroup::m_list_items

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

- libglom/data_structure/layout/layoutgroup.h