ADTF Qt5
Loading...
Searching...
No Matches
adtf::ui::riddler::IQtXSystem::IWindowState Class Referenceabstract

#include <qtxsystem_intf.h>

Inherited by adtf::ui::riddler::qt_ui_filter< adtf::filter::cFilter >, adtf::ui::riddler::qt_ui_filter< FILTERBASECLASS >, adtf::ui::riddler::qt_ui_service< SERVICEBASECLASS >, and adtf::ui::spider::cQtWindow.

Public Member Functions

virtual QString GetStateIdentifier () const =0
 
virtual void OnLoadState (const QString &strStateFolder)=0
 
virtual void OnSaveState (const QString &strStateFolder) const =0
 

Protected Member Functions

 ~IWindowState ()=default
 protected DTOR
 

Detailed Description

Window state callback interface.

While registering a window with IQtXSystem::CreateWindow you are allowed to use the window creation flag WCF_HasWindowState. The implementation of parameter pWindow must derive by IWindow and IWindowState.

Remarks

Member Function Documentation

◆ GetStateIdentifier()

virtual QString adtf::ui::riddler::IQtXSystem::IWindowState::GetStateIdentifier ( ) const
pure virtual

Returns The user defined window state identifier.

Returns
The state identifier.
See also
adtf::ui::riddler::qt_ui_filter::GetStateIdentifier, adtf::ui::riddler::qt_ui_service::GetStateIdentifier

Implemented in adtf::ui::qt_ui_filter< FILTERBASECLASS, QTWINDOWBASECLASS >, adtf::ui::qt_ui_service< SERVICEBASECLASS, QTWINDOWBASECLASS >, adtf::ui::riddler::qt_ui_filter< FILTERBASECLASS >, adtf::ui::riddler::qt_ui_filter< adtf::filter::cFilter >, adtf::ui::riddler::qt_ui_filter< adtf::filter::cFilter >, adtf::ui::riddler::qt_ui_service< SERVICEBASECLASS >, adtf::ui::spider::cQtWindow, adtf::ui::spider::qt_ui_filter< FILTERBASECLASS, QTWINDOWBASECLASS >, adtf::ui::spider::qt_ui_filter< adtf::filter::cFilter, cQtWindow >, adtf::ui::spider::qt_ui_filter< adtf::filter::cFilter, cQtWindow >, adtf::ui::spider::qt_ui_filter< adtf::filter::cFilter, cQtWindow >, adtf::ui::spider::qt_ui_filter< adtf::filter::cFilter, cQtWindow >, adtf::ui::spider::qt_ui_filter< adtf::filter::cFilter, cQtWindow >, adtf::ui::spider::qt_ui_filter< adtf::filter::cFilter, cQtWindow >, adtf::ui::spider::qt_ui_service< SERVICEBASECLASS, QTWINDOWBASECLASS >, adtf::ui::spider::qt_ui_service< adtf::system::ant::cADTFService, spider::cQtWindow >, adtf::ui::spider::qt_ui_service< adtf::system::ant::cADTFService, spider::cQtWindow >, adtf::ui::spider::qt_ui_service< adtf::system::ant::cADTFService, spider::cQtWindow >, adtf::ui::spider::qt_ui_service< adtf::system::ant::cADTFService, spider::cQtWindow >, adtf::ui::spider::qt_ui_service< adtf::system::ant::cADTFService, spider::cQtWindow >, adtf::ui::spider::qt_ui_service< adtf::system::ant::cADTFService, spider::cQtWindow >, adtf::ui::v0::cQtWindow, adtf::ui::v0::qt_ui_filter< FILTERBASECLASS, QTWINDOWBASECLASS >, and adtf::ui::v0::qt_ui_service< SERVICEBASECLASS, QTWINDOWBASECLASS >.

◆ OnLoadState()

virtual void adtf::ui::riddler::IQtXSystem::IWindowState::OnLoadState ( const QString & strStateFolder)
pure virtual

Callback function to load the internal window state from the given folder strStateFolder. We recommend to use QSettings to save and load a UI View Settings file.

void cMyFilter::OnLoadState(const QString& strStateFolder)
{
const auto strUISettingsFile = strStateFolder + "/my_ui_view.settings";
if (QFileInfo(strLayoutFile).exists())
{
QSettings oSettings(strUISettingsFile, QSettings::IniFormat);
oSettings.beginGroup("my_window");
// read your state from the UI View Settings as created within OnSaveState
oSettings.endGroup();
}
else
{
if (!is_window_state_folder_on_runlevel_change(strStateFolder))
{
THROW_ERROR_DESC(ERR_INVALID_FILE, "UI View Settings file not found: %s",
strLayoutFile.toStdString().c_str());
}
}
}
Parameters
[in]strStateFolderThe folder to save the UI View Settings files to.
Remarks
If no UI View Settings file is found you may throw ERR_INVALID_FILE, unless the state folder was recently created, while initializing the very first time on runlevel changes.
throw ERR_CANCEL to indicate the loading was cancelled on purpose.

Implemented in adtf::ui::riddler::qt_ui_filter< FILTERBASECLASS >, adtf::ui::riddler::qt_ui_filter< adtf::filter::cFilter >, adtf::ui::riddler::qt_ui_filter< adtf::filter::cFilter >, adtf::ui::riddler::qt_ui_service< SERVICEBASECLASS >, adtf::ui::spider::cQtWindow, and adtf::ui::v0::cQtWindow.

◆ OnSaveState()

virtual void adtf::ui::riddler::IQtXSystem::IWindowState::OnSaveState ( const QString & strStateFolder) const
pure virtual

Callback function to save the internal window state to the given folder strStateFolder. We recommend to use QSettings to save and load a UI View Settings file.

void cMyFilter::OnSaveState(const QString& strStateFolder) const
{
QSettings oSettings(strStateFolder + "/my_ui_view.settings", QSettings::IniFormat);
oSettings.beginGroup("my_window");
// save your window state to the UI View Settings file.
oSettings.endGroup();
}
Parameters
[in]strStateFolderThe folder to save the UI View Settings files to.
Remarks
You may throw within a tResult to indicate an error during saving. An ERR_CANCLED indicates the saving was cancelled on purpose.

Implemented in adtf::ui::riddler::qt_ui_filter< FILTERBASECLASS >, adtf::ui::riddler::qt_ui_filter< adtf::filter::cFilter >, adtf::ui::riddler::qt_ui_filter< adtf::filter::cFilter >, adtf::ui::riddler::qt_ui_service< SERVICEBASECLASS >, adtf::ui::spider::cQtWindow, and adtf::ui::v0::cQtWindow.


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