KConfig 5.109.0
Functions
KWindowConfig Namespace Reference

Save and load window sizes into a config. More...

Functions

void restoreWindowPosition (QWindow *window, const KConfigGroup &config)
 Restores the window's screen position from the configuration and calls restoreWindowScreenPosition.
 
void restoreWindowScreenPosition (QWindow *window, const QScreen *screen, const KConfigGroup &config)
 Restores the window's position on provided screen from the configuration.
 
void restoreWindowSize (QWindow *window, const KConfigGroup &config)
 Restores the dialog's size from the configuration according to the screen size.
 
void saveWindowPosition (const QWindow *window, KConfigGroup &config, KConfigGroup::WriteConfigFlags options=KConfigGroup::Normal)
 Saves the window's position either to the global or application config file.
 
void saveWindowSize (const QWindow *window, KConfigGroup &config, KConfigGroup::WriteConfigFlags options=KConfigGroup::Normal)
 Saves the window's size dependent on the screen dimension either to the global or application config file.
 

Detailed Description

Save and load window sizes into a config.

Function Documentation

◆ restoreWindowPosition()

void KWindowConfig::restoreWindowPosition ( QWindow *  window,
const KConfigGroup config 
)

Restores the window's screen position from the configuration and calls restoreWindowScreenPosition.

This function has no effect on Wayland, where the compositor is responsible for window positioning.

Note
the group must be set before calling
Parameters
windowThe window whose position to restore.
configThe config group to read from.
Since
5.74

◆ restoreWindowScreenPosition()

void KWindowConfig::restoreWindowScreenPosition ( QWindow *  window,
const QScreen *  screen,
const KConfigGroup config 
)

Restores the window's position on provided screen from the configuration.

This function has no effect on Wayland, where the compositor is responsible for window positioning.

Note
the group must be set before calling
Parameters
windowThe window whose position to restore.
screenScreen on which window should be placed.
configThe config group to read from.
Since
5.99

◆ restoreWindowSize()

void KWindowConfig::restoreWindowSize ( QWindow *  window,
const KConfigGroup config 
)

Restores the dialog's size from the configuration according to the screen size.

If you're calling this from a constructor (for a mainwindow or dialog, for instance) you should first call winId() so that a QWindow is created, then you can call windowHandle() to pass to this method.

Example code:

create(); // ensure there's a window created
const QSize availableSize = windowHandle()->screen()->availableSize();
windowHandle()->resize(availableSize.width() * 0.7, availableSize.height() * 0.5); // default size
KWindowConfig::restoreWindowSize(windowHandle(), KSharedConfig::openConfig()->group("MyDialog"));
resize(windowHandle()->size()); // workaround for QTBUG-40584
static KSharedConfig::Ptr openConfig(const QString &fileName=QString(), OpenFlags mode=FullConfig, QStandardPaths::StandardLocation type=QStandardPaths::GenericConfigLocation)
Creates a KSharedConfig object to manipulate a configuration file.
void restoreWindowSize(QWindow *window, const KConfigGroup &config)
Restores the dialog's size from the configuration according to the screen size.
Note
the group must be set before calling
Parameters
windowThe window to restore size.
configThe config group to read from.
Since
5.0.

◆ saveWindowPosition()

void KWindowConfig::saveWindowPosition ( const QWindow *  window,
KConfigGroup config,
KConfigGroup::WriteConfigFlags  options = KConfigGroup::Normal 
)

Saves the window's position either to the global or application config file.

This function has no effect on Wayland, where the compositor is responsible for window positioning.

Note
the group must be set before calling
Parameters
windowThe window whose position to save.
configThe config group to read from.
optionspassed to KConfigGroup::writeEntry()
Since
5.74

◆ saveWindowSize()

void KWindowConfig::saveWindowSize ( const QWindow *  window,
KConfigGroup config,
KConfigGroup::WriteConfigFlags  options = KConfigGroup::Normal 
)

Saves the window's size dependent on the screen dimension either to the global or application config file.

Note
the group must be set before calling
Parameters
windowThe window to save size.
configThe config group to read from.
optionspassed to KConfigGroup::writeEntry()
Since
5.0