ORE Studio 0.0.4
Loading...
Searching...
No Matches
Signals | Public Member Functions | Protected Member Functions | List of all members
OriginDimensionController Class Referencefinal

Controller for managing origin dimension windows and operations. More...

#include <OriginDimensionController.hpp>

Inheritance diagram for OriginDimensionController:
Inheritance graph
Collaboration diagram for OriginDimensionController:
Collaboration graph

Signals

void statusMessage (const QString &message)
 
void errorMessage (const QString &error)
 
- Signals inherited from EntityController
void statusMessage (const QString &message)
 Emitted when a status message should be shown to the user.
 
void errorMessage (const QString &message)
 Emitted when an error message should be shown to the user.
 
void detachableWindowCreated (DetachableMdiSubWindow *window)
 Emitted when a detachable window is created by this controller.
 
void detachableWindowDestroyed (DetachableMdiSubWindow *window)
 Emitted when a detachable window managed by this controller is destroyed.
 

Public Member Functions

 OriginDimensionController (QMainWindow *mainWindow, QMdiArea *mdiArea, ClientManager *clientManager, const QString &username, QObject *parent=nullptr)
 
void showListWindow () override
 Shows the main list window for this entity. Must be implemented by derived classes.
 
void closeAllWindows () override
 Closes all windows managed by this controller. Must be implemented by derived classes.
 
void reloadListWindow () override
 Reloads the list window. Must be implemented by derived classes.
 
- Public Member Functions inherited from EntityController
 EntityController (QMainWindow *mainWindow, QMdiArea *mdiArea, ClientManager *clientManager, const QString &username, std::string_view eventName={}, QObject *parent=nullptr)
 Constructs an entity controller.
 
void setClientManager (ClientManager *clientManager, const QString &username)
 Updates the client manager and username (e.g. after re-login).
 
void setUsername (const QString &username)
 Updates just the username.
 
void setAutoReloadOnSave (bool enabled)
 Sets whether the list window should auto-reload after save/delete.
 

Protected Member Functions

EntityListMdiWindowlistWindow () const override
 Returns the list window for marking as stale on notifications.
 
- Protected Member Functions inherited from EntityController
QString build_window_key (const QString &windowType, const QString &identifier) const
 Generates a unique key for tracking windows.
 
bool try_reuse_window (const QString &key)
 Tries to reuse an existing window if one exists for the key.
 
void bring_window_to_front (DetachableMdiSubWindow *window)
 Activates the specified window, handling detached state.
 
void track_window (const QString &key, DetachableMdiSubWindow *window)
 Registers a window for tracking.
 
void untrack_window (const QString &key)
 Unregisters a window from tracking.
 
void show_managed_window (DetachableMdiSubWindow *window, DetachableMdiSubWindow *referenceWindow=nullptr, QPoint offset=QPoint(30, 30))
 Shows a window in the MDI area, handling detach state.
 
void connect_dialog_close (DetailDialogBase *dialog, DetachableMdiSubWindow *window)
 Connects a dialog's closeRequested signal to the window's close slot.
 
void register_detachable_window (DetachableMdiSubWindow *window)
 Registers a detachable window and emits detachableWindowCreated signal.
 
void handleEntitySaved ()
 Called when an entity is saved.
 
void handleEntityDeleted ()
 Called when an entity is deleted.
 

Additional Inherited Members

- Protected Attributes inherited from EntityController
QMainWindow * mainWindow_
 
QMdiArea * mdiArea_
 
ClientManagerclientManager_
 
QString username_
 
QMap< QString, DetachableMdiSubWindow * > managed_windows_
 Map of active windows indexed by unique key.
 
bool autoReloadOnSave_ = false
 Whether to auto-reload the list window after save/delete. Default: false.
 

Detailed Description

Controller for managing origin dimension windows and operations.

Manages the lifecycle of origin dimension list, detail, and history windows. Handles event subscriptions and coordinates between windows.

Member Function Documentation

◆ showListWindow()

void showListWindow ( )
overridevirtual

Shows the main list window for this entity. Must be implemented by derived classes.

Implements EntityController.

◆ closeAllWindows()

void closeAllWindows ( )
overridevirtual

Closes all windows managed by this controller. Must be implemented by derived classes.

Implements EntityController.

◆ reloadListWindow()

void reloadListWindow ( )
overridevirtual

Reloads the list window. Must be implemented by derived classes.

Implements EntityController.

◆ listWindow()

EntityListMdiWindow * listWindow ( ) const
overrideprotectedvirtual

Returns the list window for marking as stale on notifications.

Override in derived classes to return the list window pointer. This is used by the base class onNotificationReceived to call markAsStale().

Returns
Pointer to the list window, or nullptr if not available.

Reimplemented from EntityController.