Commit Graph

79 Commits

Author SHA1 Message Date
Magne Sjaastad
2e456a6f9b Add font size to text content frame 2024-03-21 07:11:21 +01:00
Magne Sjaastad
28d281e1d6 Use polygon as data source for intersection
- Use polygon as data source for intersection
- Add padlock icon
- Show padlock icon on read only polygons
- Add Fwk function appendMenuItems() to make it possible to define context menu content in a PdmObject
- Context menu "Create Polygon Intersection"
- Updates to make visualization consistent with object and object collection enabled state
2024-02-25 09:21:48 +01:00
Magne Sjaastad
6fe997b3c9 Add and use caf::PdmUiPushButtonEditor::configureEditorLabelHidden 2024-02-23 08:47:52 +01:00
Magne Sjaastad
ce513be638 Remove all use of .uiCapability()->setUiTreeHidden( true ); 2024-02-05 10:15:36 +01:00
Magne Sjaastad
ec53c7704d Improve legend display of ensemble curves
Remove symbol and increase curve thickness
2023-11-27 13:14:16 +01:00
Magne Sjaastad
678a368361 Refactor LayoutOptions to improve readability
* Make it possible to use designated initializer list
- remove default constructor
- move static member to outer scope

* Add helper function to add field on same row
2023-11-10 14:48:56 +01:00
Magne Sjaastad
184ed5fb65 Call zoomAlll when x-axis type changes
This will ensure that the x-axis range is reset when switching from a cross plot to time plot
2023-10-30 11:20:21 +01:00
Magne Sjaastad
6357844d5e Make sure Show ensemble curves works when multiple curves are selected 2023-10-20 13:56:11 +02:00
Magne Sjaastad
b6f2dbb915 Regression curve: Make sure source curve for regression always is created
The regression curve is using the curve object as data source for regression. Make sure that the source curve is always created, and set uncheck based on curve visibility.
2023-10-20 13:56:11 +02:00
Magne Sjaastad
a027febc57 Remove confusing UI elements
- hide selection of data source, set either summary or ensemble based on curve used as source
- only show available statistics curves
2023-10-19 07:50:02 +02:00
Magne Sjaastad
3b372109ec Only show cross plot group for cross plots 2023-10-13 08:08:35 +02:00
Magne Sjaastad
4a3cdc4e94 Avoid use of time_t when using sliders in GUI
* Avoid use of time_t when using sliders in GUI
Sliders use int as internal representation of values, and time_t can cause overflow
2023-10-12 10:02:58 +02:00
Magne Sjaastad
51fe80b897 Create cross plot menu from list of addresses in preferences 2023-10-09 13:28:36 +02:00
Magne Sjaastad
263e39b97b Add regression curves to ensemble statistics curves
* Add statistics enum
* Support ensemble statistics curve as data source for regression curves
* Allow creation of regression curves from statistics curves
* Make sure regression curves are updated after source curves
* Add state to use full or user defined range for regression source data
* Add isRegressionCurve
* Make sure source stepping works when regression curves are present
2023-09-30 11:07:23 +02:00
Magne Sjaastad
40803581dd Add line style and symbol type to ensemble curves 2023-09-28 14:33:05 +02:00
Magne Sjaastad
d34bb8a64c Improve ensemble cross plot statistics
* Support cross plot in plot templates
* Fix source stepping for cross plots
* Show cross plot data in "Show Plot Data"
* Use bin size and realization count when computing cross plot statistics
2023-09-28 14:32:32 +02:00
Magne Sjaastad
1b1984e216 Adjustments related to cross plot curves
* Verify vector size only for cross plot regression curves
* Add filtering on axis orientation
Makes it possible to show only horizontal or vertical axes when selecting an axis to attach a curve to.

* Send curvesChanged signal to trigger multi plot updates
This signal will trigger update of axes and set correct scaling factor

* Use object name for axis object
* Use address for both x and y axis to create ensemble curve name
* Fix bug for drag/drop of ensemble object into plot
* Add RiaSummaryCurveAddress to RiaSummaryCurveDefinition
* Remove SummaryDataSource
* Use childFieldChangedByUi to trigger update of curves and titles
2023-09-27 10:18:52 +02:00
Kristian Bendiksen
959c9d48fa #10649 ApplicationLibCode: Use collection.empty() instead of comparing with size 2023-09-27 10:16:37 +02:00
Magne Sjaastad
fb288f602d Support ensemble cross plot curves
* Remove use of RifEnsembleStatisticsReader
* Add RimSummaryAddressSelector and RimEnsembleCrossPlotStatisticsCase
* Remove RifEnsembleStatisticsReader
* Add support for cross plot x-axis selection
* Support source stepping on ensemble cross plot curves
* Add isXAxisSummaryVector
2023-09-25 12:45:47 +02:00
Magne Sjaastad
146412c600 Add support for summary cross plot curves in summary plots 2023-09-20 13:58:22 +02:00
Magne Sjaastad
f07a5db559 Use post fix Y in RiaSummaryCurveDefinition 2023-09-20 09:58:48 +02:00
Magne Sjaastad
806f367566 Rename to SummaryCategory 2023-09-20 09:58:48 +02:00
Magne Sjaastad
e8aada80c5 Rename to plotAxis() 2023-09-20 09:58:48 +02:00
Magne Sjaastad
96b3bef878 Reduce memory use for summary address object
* Use one common variable for object name, use three ints
* Move enums to separate file
* Refactor use of enums
* Move implementation to cpp
* Refactor includes
2023-08-21 07:12:08 +02:00
Kristian Bendiksen
5bf2c2a89d #10367 Janitor: Remove unneccessary 'this' pointers 2023-08-07 13:38:27 +02:00
Kristian Bendiksen
94f7bd3c1a 10214 ensemble appearance
* Regression Analysis: Use only positive values for Power Fit regression.

* Add visible tag short cut for changning curve color.
* #10214 Ensemble Curve Set: Fix color mode text.
* #10214 Ensemble: Switch P10 and P90 symbols to point towards mean.
* Cache hit rects for tree item tags.
* #10214 Ensemble curve set: allow reordering with tree view tag
* #10214 Keep curve legend text when ensemble curves are hidden
2023-05-23 08:10:35 +02:00
Magne Sjaastad
40080a99de 9978 Improve UI for long drop-down lists, use tree selection more
* Improve tree selection editor
- always call defineEditorAttributes
- use heightHint in editor attributes 
- use tree selection editor as default editor for std::vector

* Use tree selection editor instead of list selection editor
List selection editor must be used when editing std::vector<cvf::vec3d> and similar. Replace other use of list selection editor with tree selection editor.

* Set checked state based on text string for integer only models
For models with only integer values, use text string to define the items to be selected. The full list will always be visible, and the checked state will be updated when editing the filter text.

Example: "1, 5-7" will set items 1, 5, 6, 7 checked and all other items unchecked

* Minor fixes
- Set placeholder text after content is added (to ensure correct data type)
- Fix check of integers. `canConvert<int>()`returns true for both QString and int. Thus convert to string and then check for int conversion.

* Activate filtering when unchecking all items in list with only integers
- Reactivate filtering when uncheck of all items for a list with only integer values (to keep consistency between filter and list)
- Update function name for clarity

---------

Co-authored-by: Jørgen Herje <jorgen.herje@ceetronsolutions.com>
2023-05-22 15:44:37 +02:00
Magne Sjaastad
0c90f67dcc Change API for PdmObjectHandle and PdmFieldHandle
* Refactor interface to PdmObjectHandle and PdmFieldHandle
Return objects instead of passing in structures as parameters

* Add nodiscard to several functions
* Remove redundant this->
* Rename to ptrReferencedObjectsByType
2023-05-12 21:41:34 +02:00
Magne Sjaastad
643ccd67b8 Improve ensemble curve colors
* Use unique_ptr
* Improve default assignment of curve appearance
* Improve display of color tags in tree view items
* Select curve or ensemble instead of plot
* Only change curves connected to a Rim-object

* Improve color management for ensemble curves
Use a base color for statistics curves and set realization curves transparent
Make sure new curves are assigned a unique color
Harmonize how dropped addresses are handled

* Update all tags always
The update of tags for a subset of tree nodes is currently broken. Always update all tags.

* Add const
2023-04-19 15:36:06 +02:00
Magne Sjaastad
952e766c2f Update clang-format.yml (#10068)
* Update to clang-format-15
Removed two custom .clang-format files in subfolders of AppFwk

* Fixes by clang-format
2023-04-13 07:05:53 +02:00
Magne Sjaastad
064c0adb8c #9956 Summary Plot: Fix update of operations on multiple ensembles
When multiple ensemble curve sets are toggled on/off, it is required to do a full RimSummaryPlot::loadDataAndUpdate() that will call RimEnsembleCurveSet::updateCurves() on all ensembles in the plot. This can be a heavy operation, but will happen only once.
2023-03-13 19:33:36 +01:00
jonjenssen
3772fbac79 Turn off statistics curve legends by default and add option to turn them on, 2023-03-11 14:16:25 +01:00
Magne Sjaastad
f8c5cf389f clang-format: Set column width to 140
* Set column width to 140
* Use c++20
* Remove redundant virtual
2023-02-26 10:48:40 +01:00
Magne Sjaastad
8768e186d8 #9671 summary calculations for summary items
* Summary Calculation: use shorter name in title
* Sort summary addresses to group calculated results last.
* Summary Calculation: add option to distribute calculation to other items.
* Add support for summary calculation for RimGridSummaryCase.
* Use short name for calculations in plot titles.
* Update ensembles in Data Sources when calculation is added.
* Summary Calculation: allow drag-and-drop of ensembles
* Summary Plot: fix axis range aggregation for calculated ensemble addresses.

---------

Co-authored-by: Kristian Bendiksen <kristian.bendiksen@gmail.com>
2023-02-26 08:08:06 +01:00
Jørgen Herje
0601de4c18 Prevent update of show statistics selection in source stepping
- Refactor code into two functions
- Do not update selection when performing source stepping
2023-02-23 07:40:27 +01:00
Kristian Bendiksen
6b631b3d5a #9591 Janitor: remove unused parameter in RiuPlotWigdet::createPlotCurve. 2023-01-09 15:39:42 +01:00
Magne Sjaastad
752363a4b8 #9624 Add alphabetical and by value sorting 2023-01-05 12:14:49 +01:00
Magne Sjaastad
e29b310566 Summary improvements
* #9424 Show vector name in curve names when history vector is present
* #9426 Curve Legend disappears when curve is unchecked
* Remove duplicate call to visibilityChanged
* Remove unused code
2022-11-01 08:00:51 +01:00
Magne Sjaastad
506bfbd638 Remove control flag in setCollapsedByDefault
* Remove control flag in setCollapsedByDefault
* Set regions/annotations collapsed by default
2022-08-19 14:18:36 +02:00
jonjenssen
d4ff0a0175 Missing legend (#9095)
* Make sure ensemble curveset legends are shown in multiplot legend.
* Remove information already shown in title from curve legend.
* Fix missing legend when creating curve plot from ensemble curves
* Show actual curve color in legend
2022-06-29 11:49:46 +02:00
Magne Sjaastad
e5cf5f4cf3 Improve history curve color and symbols 2022-06-27 19:25:27 +02:00
Magne Sjaastad
b706192ea3 Performance updates (#9082)
* Avoid creation of curve legend widgets during construction of a multi plot
* Make sure default z-value is correct to avoid expensive Qwt updates
* Avoid duplicate plot updates
* Do not create internal Qwt legend by default
* RFT import: Avoid expensive method throwing exception if no data is found
2022-06-24 16:16:46 +02:00
Magne Sjaastad
fe0d009b25 Improve visual appearance for ensemble curves (#9016)
* Ensemble Curves : Improve visual appearance
Set line thickness to 1
If ensemble curves are bright, use a high saturation color for the highlight curve
Increase line thickness for highlighted curve
* Use color by summary vector phase for ensemble curves
* Do not create curves for non-existing history vectors
2022-06-13 15:08:15 +02:00
Magne Sjaastad
3b5139c24d #9023 Performance : Use cached analyzer
Remove min max from RimSummaryCaseCollection
Guard null pointer access
Improve default behaviour for axis range control
2022-06-10 06:25:41 +02:00
Magne Sjaastad
d36bf11c62 Several performance fixes (#9026)
* #9023 Performance: Use count instead of for loop

* #9023  Analyzer: Cache vector names for categories

* #9023 Performance : Use cached ensemble analyzer

* #9023 Performance : Add min/max values to ensemble statistics

* #9023 Performance : Improve statistics calculator

* #9023 Performance : Use high performance toInt()

* #9023 Performance : Build summary addresses in parallell
2022-06-07 21:09:36 +02:00
Magne Sjaastad
6a7e2f6033 #8993 Default Ensemble Curve : Do not show statistics for history vectors 2022-06-01 12:25:36 +02:00
Magne Sjaastad
6a5b9f7300 Use deleteChildren() when required to avoid memory leak 2022-05-31 15:05:07 +02:00
Magne Sjaastad
c74701b687 Rename several child() and children() functions 2022-05-31 15:05:07 +02:00
Magne Sjaastad
f0ce04597d Merge pull request #8985 from OPM/8926-remove-useoptionsonly
AppFwk : Remove obsolete useOptionsOnly
2022-05-29 13:01:27 +02:00
Magne Sjaastad
f91fe41f1d Several minor issues (#8948)
* #8947 Plot Template : Split export dialog into file path and name
* #8946  Update multi plot title when curve is appended by copy/paste
* #8946 Separate axis object name and axis title text
* If multi plot auto name is empty, use plot title "Plot N"
* QwtPlotWidget: Double click activates Zoom All
* More testing on valid main window before use
* Return false if event is not handeled
* Improve fallback plot name
* Tree View Editor: Early exit if selected object is unchanged
Resetting selection causes flickering
* Summary Plot : Select curve object in project tree when clicking on curve
2022-05-24 15:24:38 +02:00