Commit Graph

1380 Commits

Author SHA1 Message Date
Magne Sjaastad
12ca418ef0 Add fixes to handle missing data correctly 2024-01-19 11:53:06 +01:00
Sigurd Pettersen
ce9a65ee41 VizFwk housekeeping (#11026)
Housekeeping in VizFwk in preparation for introducing support for QOpenGLWidget and Qt6

* Adjusted unit tests to changes in source code
* Use Qt5 as default and removed copying of Qt DLLs
* Removed support for Qt4
* Removed the CVF_OPENGL_ES define. If we ever want to re-introduce support fro OpenGLES/Angle it should be handled differently.
*Added include of <locale.h>
* Added target for running Glsl2Include in order to build cvfShaderSourceStrings.h
* Removed all usage of CVF_USING_CMAKE
* Removed visual studio project files
2024-01-09 14:38:57 +01:00
Magne Sjaastad
edf44cb4c0 Prepare CMake to support both Qt5 andf Qt6
CEE_USE_QT6 controls if Qt6 is used.
Improved install and package for Qt6, target version Qt 6.5.3
Added Qt6 to github action for AppFwkUnitTest
2024-01-09 11:02:41 +01:00
Magne Sjaastad
8424c77167 Remove norwegian characters
On Qt6, text with norwegian characters causes build failure.
2024-01-09 11:02:41 +01:00
Magne Sjaastad
d1b3445bef gcc10: add missing include 2024-01-09 11:02:41 +01:00
Magne Sjaastad
118d88b973 Create singleton before displaying window 2024-01-09 11:02:41 +01:00
Magne Sjaastad
f6be434b85 Remove Qt version checking for old Qt version 2024-01-07 18:28:36 +01:00
Magne Sjaastad
b5616561c2 Support use of of std::pair<T, QString> 2024-01-07 18:28:36 +01:00
Magne Sjaastad
d38ebf68f4 Check for Qt5 when using removed class QDesktopWidget 2024-01-07 18:28:36 +01:00
Magne Sjaastad
870bcf0a46 Test for Qt5 when using obsolete OpenGL functions 2024-01-07 18:28:36 +01:00
Magne Sjaastad
2c02d61846 Use QRegularExpression instead of QRegExp 2024-01-07 18:28:36 +01:00
Magne Sjaastad
e23560d9a0 Use setContentsMargins instead of setMargin 2024-01-07 18:28:36 +01:00
Magne Sjaastad
50234f0ea8 Add missing includes 2024-01-07 18:28:36 +01:00
Eirik Marthinsen
1f1904d72b Add dependency on QtSvg for project cafUserInterface
The project cafUserInterface requires the library QtSvg because of the
use of QSvgRenderer in cafUiIconFactory.cpp. The library has to be
linked into the final executable. The target introdicing the dependency
should also be the one specifying it.

This allows us to remove the dependency from targets that doesn't
directly use QtSvg at all.

Closes #10955
2023-12-16 17:39:09 +01:00
Eirik Marthinsen
9701866736 CMake: Update/Remove old minimum version check
- Update the minimum required CMake version to 3.15 for Fwk folders
  that might be used as top level projects.
- Remove the minimum required CMake version from projects that is just
  included from other top level projects.

Since version 3.19 CMake has been warning that CMake versions below 3.5
is deprecated and support will be removed in the future. This will
silence those warning.

By removing the minimum required version check from projects that is not
intended as top level projects we avoid redundant checks and simplifies
future maintenance.

Closes #10957
2023-12-16 17:35:54 +01:00
Eirik Marthinsen
77e5d642e9 Fix insufficient forward declaration
It is not sufficient with a forward declaration of QString here. Since
the vector is created in PdmFieldCapability::attributes() the size of
QString must be known at that point.

closes #10950
2023-12-13 18:40:09 +01:00
Jon Jenssen
9a78e69d52 Only show clear button/icon in tree search if user has entered text 2023-11-27 15:34:20 +01:00
Magne Sjaastad
8fbc532149 Guard missing field for combo box editor
This can happen if all summary plots are deleted. The toolbar is still visible, and interaction with toolbar causes crash.
2023-11-27 13:14:16 +01:00
Magne Sjaastad
f092f18614 Make sure toolbar is updated for when a single plot is present
We try to update the content of the toolbar only when required, as this can take some time to produce the combo box content for large cases. Return false to make sure the UI is rebuild if any invalid text is present.
2023-11-20 14:13:24 +01:00
Magne Sjaastad
9e65eb3be9 Add helper functions to convert from cellIndex to cafVecIjk 2023-11-13 11:08:36 +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
319dc2ab9b Adjust build settings to c++20
Adjust build settings to c++20
Add ifdef for code related to CeeViz, so it is possible to compile AppFwk without CeeViz
2023-11-09 14:17:43 +01:00
Magne Sjaastad
d8b842147b Use action with icon instead of push button
Add action with an icon inside the line edit to clear the content of the line edit.
2023-11-02 15:19:42 +01:00
Magne Sjaastad
43c5705c8b Define and use a common set of content margin sizes 2023-11-01 09:37:52 +01:00
Magne Sjaastad
718d40de56 Fix hang when editing regression curve degree
Disable editingFinsished() signal when read-only. Using tab after change of Degree in a regression curve object causes the application to hang.
2023-10-30 11:20:21 +01:00
Magne Sjaastad
6858cfe3cf Performance: Update toolbar when required 2023-10-19 07:50:02 +02:00
Magne Sjaastad
6ce456d43e Performance: Make sure the model list is created once
Creating multiple lists during recursion caused a quite large performance penalty.
2023-10-13 16:31:14 +02:00
Magne Sjaastad
bd0ef7f63b Performance: Move selectedUiItems outside the for loop
When number of objects is quite large, this causes a huge performance penalty.
2023-10-13 16:31:14 +02:00
Magne Sjaastad
f1823da6d7 Performance: Cache the uiCapability to costly dynamic_cast 2023-10-13 16:31:14 +02:00
Magne Sjaastad
69b513bcb1 #10713 Add flag used to detect if resolveReferences is called from initAfterRead 2023-10-13 16:31:14 +02:00
Magne Sjaastad
6a8b72c0c5 Add comment and static keyword 2023-10-13 16:31:14 +02:00
Magne Sjaastad
a446f874cb Propagate updated object to onChildrenUpdated() 2023-10-13 08:08:35 +02:00
Magne Sjaastad
21843820e6 Update clang-tidy.yml
* Make sure clang-tidy action use .clang-tidy config file
Use add-paths to instruct create-pull-request to a sub folder to avoid diff from Qt and vcpkg

* Use empty() in macro to avoid clang-tidy warning
* Add NOLINT to CAF_ASSERT
* Add NOLINT to cvfAssert
2023-10-03 09:04:08 +02:00
Kristian Bendiksen
98796b0dd9 #10649 Fwk: Use collection.empty() instead of comparing with size 2023-09-27 10:16:37 +02:00
Magne Sjaastad
a0d696e596 Add Value Range editor backed by std::pair<double, double> 2023-09-22 09:30:08 +02:00
Magne Sjaastad
6f845f0d42 Add flag to constructor of LineEditor 2023-09-22 09:30:08 +02:00
Magne Sjaastad
f4255ba16e Remove unused include 2023-09-04 15:37:51 +02:00
Magne Sjaastad
3800246b79 Performance: Slow performance for some plot and curve operations
* Performance: Cache registry value
* Performance: Avoid recursive update
Early return if values are identical
updateConnectedEditors is handled by setValueFromUiEditor
Avoid fieldChanged in analyzePlotsAndAdjustAppearanceSettings
2023-08-25 10:39:19 +02:00
Kristian Bendiksen
7aabe8c4a8 Python: add type hinting to python code.
Types are checked using mypy.

Fixes #10394.
2023-08-23 09:47:44 +02:00
Magne Sjaastad
533b0805c0 Color legend range: Do not round values if min and max is identical
If min and max is identical, keep the original value. This will ensure that a discrete legend contains only one level.
2023-08-17 07:02:26 +02:00
Magne Sjaastad
5a18442ed1 #10483 Use list editor for proxy of vector of string 2023-08-09 17:09:11 +02:00
Magne Sjaastad
1da509166a Improve CmdFeature base class
Add default implementation of isEnabled() and add const
2023-06-26 14:28:46 +02:00
Magne Sjaastad
34d83efaed #10417 Use radiobuttons for single selection in lists 2023-06-26 10:17:47 +02:00
Magne Sjaastad
91762aaeb1 RC3 adjustments
* Update icons for summary and ensemble templates

* Icons for regression and decline

* #10374 LineEditor: Hide the placeholder widget when not used

* #10376 Assign a case ID to delta summary case

* Do not show decline range text in plot
2023-06-10 16:30:34 +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
jonjenssen
f17c02ce86 Add step support to range text format (#10311)
* Add step support to range text format
* Add step support to integer selection filter
2023-05-26 08:59:13 +02:00
jonjenssen
6a137f5ca9 Do some additional assert cleanup 2023-05-25 14:56:26 +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
bce8177033 Delete some unused variables and disable warnings 2023-05-21 15:15:09 +02:00