| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| |
|
| | #include "lc_dialog.h" |
| | #include "rs_settings.h" |
| |
|
| | |
| | LC_Dialog::LC_Dialog(QWidget* parent, const QString& dlgName) |
| | :QDialog(parent) |
| | ,m_dialogName(dlgName){ |
| | } |
| |
|
| | void LC_Dialog::showEvent(QShowEvent *event) { |
| | QDialog::showEvent(event); |
| | if (!m_positionLoaded) { |
| | loadDialogPosition(); |
| | m_positionLoaded = true; |
| | } |
| | } |
| |
|
| | QString LC_Dialog::getPositionSettingsGroupName() const{ |
| | return "Dlg"+m_dialogName; |
| | } |
| |
|
| | void LC_Dialog::loadDialogPosition() { |
| | LC_GROUP("Appearance"); |
| | bool persistentDialogPositions = LC_GET_BOOL("PersistDialogPositions", false); |
| | bool restoreSizeOnly = LC_GET_BOOL("PersistDialogRestoreSizeOnly", false); |
| | if (persistentDialogPositions) { |
| | LC_GROUP_GUARD(getPositionSettingsGroupName()); |
| | { |
| | bool hasSettings = LC_GET_BOOL("hasPosition"); |
| | if (hasSettings) { |
| | int x = LC_GET_INT("X", 0); |
| | int y = LC_GET_INT("Y", 0); |
| | int h = LC_GET_INT("Height", 0); |
| | int w = LC_GET_INT("Width", 0); |
| | if (x > 0 && y > 0 && h > 0 && w > 0) { |
| | if (!restoreSizeOnly) { |
| | move(x, y); |
| | } |
| | resize(w, h); |
| | } |
| | } |
| | } |
| | } |
| | } |
| |
|
| | void LC_Dialog::saveDialogPosition() const { |
| | bool persistentDialogPositions = LC_GET_ONE_BOOL("Appearance","PersistDialogPositions", false); |
| | if (persistentDialogPositions) { |
| | LC_GROUP_GUARD(getPositionSettingsGroupName()); |
| | { |
| | LC_SET("hasPosition", true); |
| |
|
| | const QPoint &point = pos(); |
| | const QSize &size = QWidget::size(); |
| |
|
| | int x = point.x(); |
| | int y = point.y(); |
| | int h = size.height(); |
| | int w = size.width(); |
| | LC_SET("X", x); |
| | LC_SET("Y", y); |
| | LC_SET("Height", h); |
| | LC_SET("Width", w); |
| | } |
| | } |
| | } |
| |
|
| | void LC_Dialog::accept() { |
| | saveDialogPosition(); |
| | QDialog::accept(); |
| | } |
| |
|
| | void LC_Dialog::reject() { |
| | saveDialogPosition(); |
| | QDialog::reject(); |
| | } |
| |
|