Commit Graph
59 Commits
Author SHA1 Message Date
Magne Sjaastad 4dfe238fef Summary: Keep curves in other ensembles unchanged when highlighting a realization 2026-04-20 10:52:02 +02:00
Magne Sjaastad d64dcefc07 CorrelationReportPlot: Add optional summary plot with ADS dock manager layout
- Add optional summary plot in upper right corner
- Replace fixed grid layout with ADS dock manager for flexible layout
- Show plot titles and set splitter width to 1px
- Use setupBeforeSave to persist dock layout state
2026-03-30 12:06:57 +02:00
Magne Sjaastad b6f0164de7 #13176 Use guarded pointers for highlighted curves 2025-11-14 13:06:32 +01:00
Magne Sjaastad 5f2e2919c8 Avoids iterator invalidation in QwtPlot item lists
When working with a summary ensemble in a Debug build on Windows, a crash happened in RiuQwtPlotWidget::resetPlotCurveHighlighting(). When iterating over list of plot items, one pointer to item pointed to 0xddddddd, a clear indication that the underlying list had been updated during the loop and the iterator invalidated.

The change ensures that modifications to the item list during iteration do not cause unexpected behavior, particularly in scenarios involving grid lines and curve highlighting.

This is achieved by making a copy of the item list before iteration when modifications may occur. For cases where no add/remove will be performed during the iteration, a comment is added to clarify that it is safe to access the reference to the list.
2025-10-14 12:52:24 +02:00
Magne Sjaastad b9f13f742d Select the first visible plot item in the Project Tree
When clicking on a plot, this change ensures that the first visible ancestor plot in the hierarchy is selected in the project tree.
2025-07-25 08:42:13 +02:00
Magne Sjaastad 054001cef4 Selects plot on right-click as well 2025-07-23 10:34:27 +02:00
Magne Sjaastad 7e38cc79b1 Remove duplicate parenthesis 2025-04-22 08:22:22 +02:00
magnesj 77c2d624fc Fixes by clang-tidy 2025-04-19 08:26:02 +02:00
Magne Sjaastad 5f0dd58de9 Improves zoom behavior in multi-plots
Refactors zoom handling in multi-plot scenarios to ensure consistent
axis ranges and proper synchronization between subplots, especially
when linking subplot axes.

Removes direct zoom event handling from subplots and centralizes zoom
logic in the multi-plot container.

This ensures that the 'Zoom All' operation correctly adjusts the
Y-axis ranges based on the configured aggregation method and linked
axes settings.
2025-04-04 13:37:53 +02:00
Magne Sjaastad 3cd03c8e1c #12310 Summary plot and RFT plot adjustments
* Use vector name as axis object text, avoid identifier text
* Select the plot clicked at in the Project Tree
* Make sure RFT plots are updated when summary case and ensemble is changed
* Make sure all plots are updated for multiselect and toggle statistics
* Allow paste of plot on top level plot collection
* Allow multiple top level plots as destination for Append operations
2025-03-31 08:02:00 +02:00
Magne Sjaastad 587bf67994 #12203 Improve selection of curves
Interpolate distance from mouse cursor to the line between index above and below closest index. This will make sure selection works when zoomed, and clear highlighting if mouse click is far from curves.
2025-03-14 13:44:00 +01:00
Magne Sjaastad 5f7823b8d3 Use point size when defining font size
Avoid pixel size for easier config across multiple environments
Set default font size for plots to 10 points
Use Small instead of XSmall for default font in plot
Remove pt postfix to indicate point size
2025-03-10 16:56:16 +01:00
Magne Sjaastad c728979bc1 #12203 Improve selection and highlight of curves in summary plot
Skip distance check when clicking in the plot, always select closest curve
When pressing CTRL, toggle highlighted curves
Allow multi select of realizations in Project Tree
Avoid curve highlight operation during zoom
Make sure wheel zoom works for a single plot
2025-03-07 11:05:39 +01:00
Magne Sjaastad bbd79cca6a #12168 Allow highlight of curves based on selection of realization object
Use the first available highlighted curve as basis for display of horizontal readout value. Fallback to single realization curves.
When selecting a realization in project tree, highlight all related curves
Make sure zoom rect works when readout annotations are active
2025-02-18 11:04:40 +01:00
Magne Sjaastad 996a10f781 Fix curve highlight for non-ensemble curves 2024-12-05 08:18:43 +01:00
Magne Sjaastad 2619f1a33a #11771 Highlight all curves for a realization when picking
When selecting a single curve in an ensemble, select and highlight all curves connected to this realization.
2024-10-16 14:32:36 +02:00
Magne Sjaastad 4b0f2b362e Add support for placing legend at several positions
Show legends on top of preview plot
2023-11-27 13:14:16 +01:00
Magne Sjaastad 146412c600 Add support for summary cross plot curves in summary plots 2023-09-20 13:58:22 +02:00
Magne Sjaastad beb43c585c Adjust highlight color only when hue or saturation is above threshold 2023-08-11 13:54:03 +02:00
Magne Sjaastad aaecd846fd Improve plot titles and layout adjustments 2023-07-06 08:40:09 +02:00
Magne Sjaastad 06b5c9afbf Adjustments for release
* Add notification of parent object when multiple objects are updated

* Make sure unchecked curves are removed from track

* Use object names instead of "Sub Items" when possible

* Set default simulation well visualization to top of reservoir

* Show plot window after plot is created

* Allow setting plot rendering flags

* Add more plots for update when clicking in 3D view

* Seismic Difference: Fix typo for poly line data extraction

* Version RC_5
2023-06-16 09:27:35 +02:00
Magne Sjaastad 76102a8396 Maintenance issues
* Improve toggling of checked state of sub items
Toggling state is only supported for objects in an array. For example, this will ensure that faults are toggled without altering the fault result object.

* Use gray instead of black for icons

* #9719 Use delete instead of deleteLater to avoid visual artifacts
Artifacts are seen in the Property Editor related to obsolete group boxes. This seems to be related to deleteLater().

* Improve text in menu when toggling sub items

* #10011 Make sure all grid cases are visible in RFT data source

* #10354 Show more info when hovering on curves in summary plot

* #10355 Copy model text info in 3D view to clipboard

* Make sure cell filter option is propagated to new field
Make sure the previous value of  m_showFaultsOutsideFilters_obsolete is propagated into m_applyCellFilters

* Fix wrong spelling when using of stylesheet color
2023-06-06 15:45:54 +02:00
Jørgen HerjeandMagne Sjaastad 342f191288 Add filtering/exclude of rows in SummaryTable (#10193)
- Add selector for excluding rows in table
- Row selection is based on category, vector, threshold
- Move data containers to utils class
- TreeSelectionEditor: Add context menu to invert selection
- Improved naming of menu items
- Guard plotDefinition before connect signal/slots

---------

Co-authored-by: Magne Sjaastad <magne.sjaastad@ceetronsolutions.com>
2023-05-02 11:18:45 +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 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
Jørgen Herje dfb942cc97 Add custom tickmark configuration for Summary Plot (#9867)
- Added custom tickmark configuration in time axis properties for `Time Mode = Date` 
- Refactor code to separate handling of time axis properties and regular axis properties in RimSummaryPlot
- Add method for setting major ticks by use of list for RiuPlotWidget interface.
2023-02-20 14:45:16 +01:00
Jørgen Herje 7a2aebe8b9 Fix active cell not resetting when clicking on cells (#9804)
- Refactor PlotShapeItems highlighting in QwtPlotWdiget - s.t. highlighting is not dependent on plotDefinition RimPlot object and its isCurveHighlightSupported flag.
- Remove plot definition assert and utilize guards to allow nullptr/undefined plotDefinition
2023-02-06 14:33:09 +01:00
Jørgen Herje 3c296202c2 Fix bug in QwtPlotWidget highlight reset
QwtPlotShapeItem objects were not reset
2023-01-27 07:14:04 +01:00
Jørgen Herje 8aff5b4694 Well Allocation over time adjustements (#9738)
- Add font size settings
- Move legend to right side of plot
- Set default selected time steps to time step count = 10
- When excluding time steps, duplicates rates from next valid time step onto excluded time steps
- Allow time step selection "Show all time steps" or "Time step count" for subset of time steps
- Allow excluding on the active set, i.e. all or subset, of time steps
2023-01-26 10:56:42 +01:00
Kristian Bendiksen 6b631b3d5a #9591 Janitor: remove unused parameter in RiuPlotWigdet::createPlotCurve. 2023-01-09 15:39:42 +01:00
Magne Sjaastad 46b364d0b0 RFT file improvements
* Guard null pointer access
* Delay open of RFT files until data is requested
When opening ensemble summary cases, the opening of RFT files can take some time. Avoid this by delaying the file open operation.

* Fix infinite update loop for RFT plots
* Avoid moving the tracker line when clicking in the plot
2022-11-11 10:07:27 +01:00
Magne Sjaastad 95813f510e Summary Plot adjustments
* #9435 Do not auto update curve appearance during source stepping
* Update toolbar after vector is dropped into empty plot
* Use summary vector text in RiaSummaryDefines
* Fix missing update of curve color when curve is highlighted
2022-11-08 08:18:31 +01:00
Magne Sjaastad 0d3347d4d7 RFT plot improvements
* Make curve selection optional to avoid flickering in depth plots
* Replace undefined with zero for some curves
* Add spacing factor for min and max depth
2022-10-28 15:37:45 +02:00
Magne Sjaastad a33f651bcc Depth Track Plots: Optionally show a line in all tracks
* #9378 Depth Track Plots: Optionally show a line in all tracks
* Use RiaDefines::Orientation
2022-10-24 16:24:51 +02:00
Magne Sjaastad c734a22bd6 Improve user interface for axis linking
Several adjustments to UI as discussed with Håkon and Alireza.

* add link/unlink command to right-click menu of axis
* select curve in project tree when clicking on legend item
* make sure internal legend is always visible when toggling plot
* fix issue when using sub plot as data source for axis range
2022-09-09 16:06:56 +02:00
Magne Sjaastad b641d6b86f Adjustments for RC2
* Add dependency to Svg
* Renaming
* Remove special handling of bright colored curves
For some ensemble cases, the curve highlight does not work well. A prototype for ensemble curve highlight was introduced, but this was not working for a collection of standalone summary curves.
* Set version to RC_02
2022-09-06 15:29:10 +02:00
jonjenssen 2aedf38f79 Highlight the curve belonging to the legend you click on. (#9259)
* Highlight the curve belonging to the legend you click on.
* Make sure legend curve order remains the same when changing hilited curve
2022-09-06 07:21:24 +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 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
Kristian Bendiksen 039ec05ab8 #8794 Multi Axes: Highlight relevant axes 2022-05-23 13:23:55 +02:00
Magne Sjaastad 64bed1d611 Summary Multi Plot: Minor adjustments (#8856)
Remove obsolete single summary template code
Always use maximized state of the QMdiSubWindow when a plot or view is deleted.
Move time axis to top
Set correct text for unused axis
Avoid assert when layout is requested for non existing legend
2022-04-29 15:31:07 +02:00
Magne Sjaastad 853b4a26d5 #8822 Summary Axis: Add tick mark count to y-axis 2022-04-22 23:14:48 +02:00
Kristian Bendiksen ed87c9028c #8792 Summary Multiple Axes : Remove axis after delete in project tree 2022-04-20 14:26:53 +02:00
Magne Sjaastad f099a8c89f #8779 Summary Multi Plot : Add flag to control visibility of axis number values
Useful for making plots anonymized
2022-04-07 17:49:07 +02:00
Kristian Bendiksen 391d13565e RiuPlotWidget: highlight relevant curves when clicking on an axis. 2022-04-04 12:10:20 +02:00
Kristian Bendiksen 11060078d8 RiuQwtPlotWidget: fix actions on selection of axis. 2022-04-04 12:10:20 +02:00
Kristian Bendiksen 288269fad7 Multiaxis: Use correct mapping from PlotAxis to QwtAxisId. 2022-04-04 12:10:20 +02:00
Kristian Bendiksen 32ec472829 Multiaxis plot: fix moving axis from other side 2022-04-04 12:10:20 +02:00
Magne Sjaastad dde0487024 Multiaxis: add support for Qwt multiaxis plot 2022-04-04 12:10:20 +02:00