Commit Graph

204 Commits

Author SHA1 Message Date
hlorus
47fd87af51 [Gui] Add command and task for unified measurement facility 2024-04-29 09:27:22 -04:00
David Carter
495a96a0f5 Material: Material appearance
Uses new material system for appearance

Each feature object now has a property called ShapeMaterial that
describes its physical properties. If it has a shape, it has a
material.

The ShapeColor attribute is replaced by a ShapeAppearance attribute.
This is a material list that describes all appearance properties, not
just diffuse color. As a list in can be used for all elements of a
shape, such as edges and faces.

A new widget is provided to allow the user to select materials in a
consistent fashion. It can also launch the material editor with its
more advanced capabilities.
2024-04-04 07:39:58 -05:00
PaddleStroke
4b16444bae Core: Std_ToggleTransparency: Fixes #11353 2024-04-01 11:23:49 -05:00
Max Wilfinger
67b587efde add missing view top option + arrangement 2024-03-30 11:50:17 +01:00
wmayer
83b72e75a2 Fixes #12865: CommandView Cursor Icons use hardcoded XPM
For the cursor use the device pixel ratio to avoid to look pixelated on HiDPI screens
2024-03-28 07:26:12 +01:00
Max Wilfinger
62eb03aebe Create a toolbar command group for default views.
Optional toolbar for all individual views is available.
2024-03-12 16:03:59 +01:00
André Caldas
560898907b Avoids using getNameInDocument() to test if DocumentObject is attached to a Document.
This patch substitutes by isAttachedToDocument() (almost) everywhere where
getNameInDocument() is used for this purpose.

The very few places not touched by this patch demand a (just a little) less trivial change.
When we change the returning type of getNameInDocument() to std::string,
those places will be easily found, because they shall generate a compiler error
(converting std::string to bool).

Rationale:
The fact that getNameInDocument() return nullptr to indicate
that the object is not attached to a document is responsible for lots of bugs
where the developer does not check for "nullptr".

The idea is to eliminate all those uses of getNameInDocument() and, in the near future,
make getNameInDocument() return always a valid std::string.
2023-12-11 17:37:58 +01:00
PaddleStroke
4eb8fc590c Std_Transparency : Toggle transparency of objects. (#10805)
* Std_Transparency : Toggle transparency of objects.
* Remove "Std_ToggleTransparency" from toolbar

---------

Co-authored-by: Paddle <PaddleStroke@users.noreply.github.com>
2023-11-06 12:41:27 -06:00
bgbsww
4c5d6ce303 Change overlay window arrow keys to use Ctrl instead of Shift 2023-11-06 11:23:59 -06:00
Roy-043
6d8fb68f3b Gui: Make "Dock window overlay" GUI texts more consistent (#11121)
* Gui: Make "Dock window overlay" GUI texts more consistent
* overlays -> overlay windows
2023-10-23 10:57:45 -05:00
Roy-043
2f5ea88ab7 Gui: MenuText for Std_SelBack and Std_SelForward in sentence case 2023-10-20 20:11:36 +02:00
Zheng, Lei
bf9584a90b Gui: add support for transparent overlay docking widget 2023-10-11 09:58:53 +02:00
wmayer
255e9eb434 Part: move CmdSelectFilter and friends from core to Part module 2023-10-03 19:26:28 +02:00
wmayer
eec9bdcefa Gui: do not create the commands StdCmdSelBack and StdCmdSelForward twice 2023-09-26 11:07:51 +02:00
Paddle
a515bd0244 Improve tooltips and remove the html from the translate. 2023-09-21 07:31:15 +02:00
Paddle
e833a495fa Add Std_SelBack and Std_SelForward to the Std_TreeViewActions group where they belong.
This also solve the fact that these commands were not in the menu which are supposed to be exaustive.
2023-09-20 12:44:38 +02:00
Paddle
b77ab713b3 Give std_SelBack and std_selforward proper names and tooltips. 2023-09-20 12:44:38 +02:00
wmayer
5a153e50ff Gui: modernize C++: use default member init 2023-08-23 19:51:44 +02:00
Syres916
b799cef4ca [Gui] Add new Selection Filter functionality (#2)
* [Gui] Add Selection Filters

* [Gui] Add Selection Filters to Toolbar

* [Gui] Add Selection Filter Icons

* [Gui] Add 4 new Selection filter Icon Files

* [Gui] Update Context Menu

* [Gui] Add default Selection Filter icon

* [Gui] Update resource.qrc with new icon

* [Gui] Add SelectFilter dropdown toolbar

* [Gui] Update Content Menu and Toolbar

* [Gui] Icon changed to Plain SVG

* [Gui] edge-selection icon as Plain SVG

* [Gui] vertex-selection icon as Plain SVG

* [Gui] selection-filter.svg replace metadata
2023-08-21 11:07:04 -05:00
wmayer
c016f1c1fb Gui: modernize C++: use equals default 2023-08-20 18:12:43 +02:00
wmayer
d150fa7164 modernize C++: avoid bind
In many cases std::bind() is kept because the code is much simpler
2023-08-08 21:10:16 +02:00
wmayer
68d22d864b modernize C++: move from boost::bind to std::bind 2023-08-08 17:36:13 +02:00
wmayer
0af4990817 modernize C++: make unique 2023-08-07 19:51:30 -06:00
wmayer
bb23aaf3e9 Core: modernize C++: redundant void arg 2023-08-05 16:50:31 +02:00
wmayer
2de08f77b7 Use View3DInventorViewer::setSelectionEnabled instead of SoFCUnifiedSelection::selectionRole 2023-05-04 08:03:11 +02:00
Chris Hennes
f1e57968cd Gui: Adjust tooltips for improved translation
Tooltips should not be identical to the command menu entry, it prevents translators from translating them separately.
2023-04-29 13:03:02 -05:00
Roy-043
8ee06381fa Gui: CommandView.cpp: Fix typos and more consistent WindowTitle 2023-04-13 18:24:00 +02:00
wmayer
649e5a673c Gui: fix image handling:
* Change FileHandlder to accepts all image format supported by Qt
* Make sure image object is not touched after accepting or rejecting changes
* Make option 'Keep aspect ratio' the default
* Fix WhatThis text of command
2023-03-22 17:55:55 +01:00
wmayer
03d2479047 Gui: add image icon resources 2023-03-22 16:08:09 +01:00
wmayer
565cf73f1d Gui: send message events for zoom in/out commands to also support the image view 2023-03-22 16:03:14 +01:00
wmayer
965aeb4b6b Gui: add an image view 2023-03-22 15:45:38 +01:00
wmayer
2e5cb03261 Gui: move to new style connect() 2023-02-01 13:49:35 +01:00
Uwe
0533550f95 remove some unnecessary Boolean checks
- checks for true/false and nullptr
2022-12-12 21:17:49 -06:00
Zheng, Lei
41dcee396d Gui: split out TreeParams into its own source files
Auto generated using TreeParams.py
2022-12-03 17:08:17 -06:00
wmayer
21f47cf2ec Gui: fix warnings reported by GH Actions:
* Fix trailing spaces
* Replace tabs
* Mark constructors with one argument explicit
* Fix typos
* Include FCGlobal.h to fix parsing errors
2022-11-11 09:56:43 +01:00
Zheng, Lei
2328284884 Gui: add ShortcutManager to unify shortcut handling
Support longest key sequence match with user defined delay (configurable
through 'Customize -> Keyboard -> Key sequence delay').

Support user defined priority to resolve shortcut conflict through
'Customize -> Keyboard')

Add 'All' category in 'Customize -> Keyboard' to list all command and
showing their shortcuts

Unify macro command shortcut setting (BaseApp/Preferences/Shortcut).
2022-11-10 23:20:18 +01:00
wmayer
d4f53c2412 Qt: replace deprecated methods of QMessageBox 2022-11-03 09:54:00 +01:00
wmayer
ec553a9292 Qt6 port:
* Explicitly include some missing headers
* Use 'static const char*' for XPM icon
* Skip template parameters for qMakePair
* Constructor of QFileInfo is marked as 'explicit' now
* QString::fromLatin1() also accepts a QByteArray
* QDateTime::fromTime_t() is deprecated in Qt5 and has been removed in Qt6. Use QDateTime::fromSecsSinceEpoch()
* QDateTime::toTime_t() is deprecated in Qt5 and has been removed in Qt6. Use QDateTime::toSecsSinceEpoch()
* QApplication::globalStrut() is deprecated. Don't use it any more.
* QWidget::isTopLevel() is deprecated, use QWidget::isWindow()
2022-11-02 15:16:41 +01:00
wmayer
bc9897caf8 Gui: depending on parameter settings open a transaction when changing visibility or selectability 2022-10-07 22:06:01 +02:00
0penBrain
8924e265c0 Gui: add 2 commands to store and recall working view in 3D viewport 2022-09-28 17:29:11 +02:00
marioalexis
0382f276a2 Gui: Replace C cast 2022-09-18 11:06:51 -05:00
berniev
75acacd1b7 Gui: Use auto and range-based for (#7481)
* On lines where the variable type is obvious from inspection, avoid repeating the type using auto. 
* When possible use a ranged for loop instead of begin() and end() iterators
2022-09-14 13:25:13 -05:00
wmayer
ba8d5ab055 Gui: modernize C++: replace 'typedef' with 'using' 2022-08-29 14:09:18 +02:00
berniev
0c70d45c83 Gui: Use override etc 2 2022-08-09 12:43:23 +02:00
berniev
656ef8961f Gui: redundant void 2 2022-08-08 10:21:44 +02:00
berniev
d88729d2c4 Gui: use empty 2022-08-06 16:35:45 +02:00
wmayer
0ebdf4743a Fix several clazy issues:
* Don't call ... on temporary [-Wclazy-detaching-temporary]
2022-07-25 00:18:42 +02:00
wmayer
6ee2c7f865 Fix several clazy issues:
* C++11 range-loop might detach Qt container [-Wclazy-range-loop-detach]
2022-07-24 23:48:37 +02:00
Uwe
3e99d39d05 [Gui] remove some more superfluous nullptr checks 2022-07-18 13:15:38 +02:00
andrea
3018985f80 Remove unused code into GUI 2022-07-17 03:53:11 +02:00