![]() |
NDEVR
API Documentation
|
A table widget for displaying and managing ModelTileGroup children of a parent model. More...
Public Member Functions | |
| ModelTileTable (const DynamicPointer< QTDesignObject > &target, QWidget *parent=nullptr) | |
| Constructs the tile table bound to the given design object. | |
| ModelTileTable (QWidget *parent=nullptr) | |
| Constructs the tile table with no initial target. | |
| void | init () |
| Initializes columns, filters, sorting, and the new-item button. | |
| void | setTarget (const DynamicPointer< QTDesignObject > &target) |
| Sets the target design object and populates the table with its tile group descendants. | |
| Public Member Functions inherited from DesignPropertyTable | |
| DesignPropertyTable (QTModelManager *manager, QWidget *parent=nullptr) | |
| Constructs a DesignPropertyTable with a model manager. | |
| DesignPropertyTable (QWidget *parent=nullptr) | |
| Constructs a DesignPropertyTable without a model manager. | |
| uint04 | addColumn (const DesignParameter ¶meter, bool is_editable=true) |
| Adds a column displaying the given design parameter. | |
| uint04 | addColumn (const ModelTableColumnSpec &column) |
| Adds a column from a fully specified ModelTableColumnSpec. | |
| uint04 | addColumn (const TranslatedString &custom_column_name, const DesignParameter ¶meter, bool is_editable=true) |
| Adds a column with a custom name displaying the given design parameter. | |
| uint04 | addColumn (const TranslatedString &name, const StringView &icon, const std::function< void(UUID)> &callback) |
| Adds a button column with a custom icon and click callback. | |
| uint04 | addColumn (NDPO property, bool is_editable=true) |
| Adds a column displaying the given NDPO property. | |
| void | addListItem (const UUID &id) |
| Adds a single object to the table. | |
| uint04 | addMaterialDataColumn (const TranslatedString &custom_column_name=TranslatedString()) |
| Adds a column showing material data for each design object. | |
| Button * | addNewButton (std::function< void(Button *)> callback, const TranslatedString &new_title=_t("Add New"), const StringView &add_icon="plus") |
| Adds an "Add New" button to the bottom button bar. | |
| void | addOpenButton (std::function< void(Button *)> callback, const TranslatedString &new_title=_t("Open"), const StringView &add_icon="open") |
| Adds an "Open" button to the bottom button bar. | |
| uint04 | addParentPathColumn (const TranslatedString &custom_column_name=TranslatedString()) |
| Adds a column showing the parent path of each design object. | |
| void | addWidget (QWidget *widget) |
| Adds a custom widget to the bottom button bar. | |
| bool | event (QEvent *event) override |
| Handles events, including custom polish events for deferred setup. | |
| void | filterAndSetList (Buffer< UUID > ids) |
| Applies the current search filter and sets the list of objects to display. | |
| bool | isEditable () |
| Returns whether the table is currently editable. | |
| const std::function< void(Model, PopupInfo)> & | selectedCallback () const |
| Returns the current selection callback. | |
| Buffer< UUID > | selectedIDs () const |
| Returns the UUIDs of the currently selected rows. | |
| void | setAddedFilter (const std::function< bool(const Model &)> &callback) |
| Sets a custom filter callback applied when objects are added. | |
| void | setColumnEditable (uint04 column, bool editable) |
| Sets whether a specific column is editable. | |
| void | setColumnVisible (uint04 column, bool visible) |
| Shows or hides a specific column. | |
| void | setEditable (bool editable) |
| Sets whether the entire table is editable. | |
| void | setList (const Buffer< UUID > &ids) |
| Sets the list of objects to display in the table. | |
| virtual void | setModelManager (QTModelManager *manager) |
| Sets the model manager and connects it to the table model. | |
| void | setModels (const Buffer< Model > &models) |
| Sets the table contents from a buffer of Models. | |
| void | setSelectedCallback (const std::function< void(Model, PopupInfo)> &callback) |
| Sets the callback invoked when a row is selected. | |
| void | setSortCallback (const std::function< bool(const Model &a, const Model &b)> &callback) |
| Sets a custom sort comparison callback for ordering rows. | |
| void | setTypeAddedFilter (const String &type) |
| Sets a type-based filter so only objects of the given type appear when added. | |
| void | setup () |
| Performs initial setup of the table layout, search bar, and edit button. | |
| void | setupTable () |
| Sets up the table view, proxy model, and delegate. | |
| void | showSearch (bool show_search) |
| Shows or hides the search bar. | |
| void | updateRow (uint04 row) |
| Updates the data display for a specific row. | |
| void | viewSettingsSignal () |
| Emitted when the view settings should be shown or updated. | |
Public Attributes | |
| DynamicPointer< QTDesignObject > | m_object_parent |
| The parent design object whose tile group children are displayed. | |
Additional Inherited Members | |
| Protected Member Functions inherited from DesignPropertyTable | |
| void | contextMenu (const QPoint &pos) |
| Slot called to display a context menu at the given position. | |
| void | selected (QModelIndex index) |
| Slot called when a table row is selected. | |
| Protected Attributes inherited from DesignPropertyTable | |
| QHBoxLayout * | m_bottom_button_layout |
| The layout for buttons at the bottom of the table. | |
| Button * | m_edit_button |
| The button for toggling edit mode. | |
| QTModelManager * | m_manager |
| The model manager providing design objects. | |
| DesignObjectSearchWidget * | m_search_text |
| The search text input widget. | |
| QWidget * | m_search_widget |
| The container widget for the search bar. | |
| DesignSortFilterProxyModel * | m_sort_model |
| The sort/filter proxy model. | |
| DesignPropertyTableView * | m_table_view |
| The table view displaying design object properties. | |
| DesignTableModel * | m_view_model |
| The underlying table model. | |
A table widget for displaying and managing ModelTileGroup children of a parent model.
Provides columns for icon, name, and visibility, with the ability to create new tile groups.
Definition at line 14 of file ModelTileTable.h.
|
inline |
Constructs the tile table with no initial target.
| [in] | parent | The optional parent widget. |
Definition at line 21 of file ModelTileTable.h.
References DesignPropertyTable::DesignPropertyTable(), and init().
|
inline |
Constructs the tile table bound to the given design object.
| [in] | target | The design object whose tile group children are displayed. |
| [in] | parent | The optional parent widget. |
Definition at line 31 of file ModelTileTable.h.
References DesignPropertyTable::DesignPropertyTable(), init(), m_object_parent, and setTarget().
|
inline |
Sets the target design object and populates the table with its tile group descendants.
| [in] | target | The design object whose tile group children are displayed. |
Definition at line 42 of file ModelTileTable.h.
References Model::getDescendantsByType(), m_object_parent, DesignPropertyTable::setModels(), and ModelTileGroup::TypeName().
Referenced by ModelTileTable().