mirror of
https://github.com/OPM/ResInsight.git
synced 2026-10-25 14:40:26 -05:00
Persist the geometry of PdmUiPropertyViewDialog and RiuPropertyViewTabWidget to the application settings on close and restore it on the next show. Restoring is done in showEvent rather than the constructor so it is applied reliably for a modal dialog. The settings key includes the bound object class keyword so distinct dialogs that share a window title do not collide. This behaviour is gated behind a new "Remember Dialog Size" experimental feature, disabled by default. PdmUiPropertyViewDialog cannot access RiaPreferencesSystem, so the application pushes the current setting via the static enableGeometryPersistence(), following the existing pattern used for class-name display. RiuPropertyViewTabWidget queries the feature directly.
44 lines
2.0 KiB
C++
44 lines
2.0 KiB
C++
/////////////////////////////////////////////////////////////////////////////////
|
|
//
|
|
// Copyright (C) 2026 Equinor ASA
|
|
//
|
|
// ResInsight is free software: you can redistribute it and/or modify
|
|
// it under the terms of the GNU General Public License as published by
|
|
// the Free Software Foundation, either version 3 of the License, or
|
|
// (at your option) any later version.
|
|
//
|
|
// ResInsight is distributed in the hope that it will be useful, but WITHOUT ANY
|
|
// WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
|
// FITNESS FOR A PARTICULAR PURPOSE.
|
|
//
|
|
// See the GNU General Public License at <http://www.gnu.org/licenses/gpl.html>
|
|
// for more details.
|
|
//
|
|
/////////////////////////////////////////////////////////////////////////////////
|
|
|
|
#include "RiaExperimentalFeatures.h"
|
|
|
|
//--------------------------------------------------------------------------------------------------
|
|
///
|
|
//--------------------------------------------------------------------------------------------------
|
|
const std::vector<RiaExperimentalFeatures::Feature>& RiaExperimentalFeatures::availableFeatures()
|
|
{
|
|
// Register experimental features here. Each entry automatically becomes a checkbox in
|
|
// Preferences -> System -> Experimental Features. Gate the related code path behind
|
|
// RiaPreferencesSystem::isFeatureEnabled( "<keyword>" ).
|
|
//
|
|
// Example:
|
|
// { "my-feature", "My Feature", "Short description of what it does." },
|
|
static const std::vector<Feature> features = {
|
|
{ "osdu-well-logs", "OSDU Well Logs", "Enable import of well logs from OSDU." },
|
|
{ "undo-redo-view", "Undo/Redo View", "Show the command undo/redo history view." },
|
|
{ "oil-volume-result", "Oil Volume Result", "Compute the derived oil volume cell result." },
|
|
{ "remember-dialog-size",
|
|
"Remember Dialog Size",
|
|
"Remember the size of property and preferences dialogs between sessions and restore it the next time they "
|
|
"open." },
|
|
};
|
|
|
|
return features;
|
|
}
|