Commit Graph

137 Commits

Author SHA1 Message Date
wmayer
dfc74591cc Material: add workbench manipulator
Implement a workbench manipulator to inject Std_Material and Std_Appearance to (context) menu.
2024-04-05 10:08:06 +02:00
David Carter
ba20441935 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
bb87b572c5 Core: Std_ToggleTransparency: Fixes #11353 2024-04-01 11:23:49 -05:00
Roy-043
fcf638849b Gui: Std_ViewLeft should be last in "Individual views" toolbar
See #13227.
2024-03-30 17:46:25 +01:00
Max Wilfinger
78249a8ed8 add missing view top option + arrangement 2024-03-30 11:50:17 +01:00
Max Wilfinger
560509bfe1 Create a toolbar command group for default views.
Optional toolbar for all individual views is available.
2024-03-12 16:03:59 +01:00
Florian Foinant-Willig
c53d5fbf9d Introduce object freeze (#12580)
* Introduce object freeze

* do nothing at property change
2024-03-04 17:54:25 +01:00
Paddle
21905c0d62 Core: add property command, that shows property view. 2024-01-19 10:26:00 +01:00
Max Wilfinger
44dfb959dc add placement command to context menu 2024-01-05 19:14:02 -06:00
Kacper Donat
afd72f3585 Gui: Add ability to easily lock Toolbars from UI
This adds the Std_ToggleToolBarLock action mentioned in #4992. It is
exposed in the context menu of toolbar and also in the view -> toolbars
app menu.
2023-12-01 12:13:43 +01:00
Paddle
aa9708b46e Core: Hide macro toolbar by default. 2023-11-28 23:46:29 +01:00
PaddleStroke
a296c10491 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
Florian Foinant-Willig
741296b82e Core: modernize type checking 2023-10-23 18:07:07 +02:00
wmayer
abe9fabc46 Gui: implement option to disable overlay management 2023-10-14 13:36:12 +02:00
Zheng, Lei
ba6b2a4375 Gui: add support for transparent overlay docking widget 2023-10-11 09:58:53 +02:00
wmayer
3c8f245e67 Part: handle Part_SectionCut in WorkbenchManipulator 2023-10-03 19:26:28 +02:00
wmayer
9429d6a44a Gui: integrate WorkbenchManipulator 2023-10-03 19:26:28 +02:00
Paddle
eefdeb1db5 Remove macro recording stop from toolbar and menu, and adds the stop functionality to the main macro recording command. 2023-10-01 17:22:19 -05:00
wmayer
9f42bdb323 Gui: fixes #10807: By default keep the old tabulated layout of ComboView and TaskView 2023-09-30 17:33:33 +02:00
Paddle
566864c316 Add "Std_LinkSelectActions" to the view menu.
Remove "Std_LinkSelectActions" from the toolbar.
Remove "Std_SelBack" & "Std_SelForward" from the toolbar
Remove "Std_SelBoundingBox"
 from the toolbar
Reorder the toolbar entries.
2023-09-20 12:44:38 +02:00
Paddle
567925e442 Structure toolbar : put Link in the command group. 2023-09-20 12:44:33 +02:00
wmayer
23c5b330d9 Gui: add TaskView to its own dock window 2023-09-14 13:17:33 +02:00
wmayer
f17790eb24 Gui: fixes issue #9422: Dependency Graph: export to .dot/.gv 2023-09-07 08:40:05 +02:00
Syres916
658452de6d [Gui] Change View toolbar order
as per discussion https://forum.freecad.org/viewtopic.php?p=702171#p702171
2023-08-28 10:36:10 -05:00
wmayer
6beace8da6 Gui: modernize C++: use default member init 2023-08-23 19:51:44 +02:00
Syres916
6770713eb1 [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
888a33917d Gui: modernize C++: use equals default 2023-08-20 18:12:43 +02:00
Paddle
54e2990b4b Move 'Recent Files' menu entry and rename it 'Open Recent' 2023-07-27 11:40:33 +02:00
Abdullah Tahiri
554ede35d2 Sketcher/Gui: Extend toolbar framework and fix toolbar visibility not preserved
=================================================================================

fixes #9208

Essentially:
- The regular mechanism to save toolbar state when changing from one WB to another
is not designed to support changes within one WB (e.g. from edit mode and back).
- At creation time, toolbars can be initialised with default visible or default hidden
state. Additionally, there is third configuration "Unavailable", which refers to a
toolbar that is hidden, and the control to enable it is also hidden by default.
- The ToolBarManager is extended to enable to set the State of one or more toolbars.
- The State refers to changes to be effected on one or more toolbars by client code:
* ForceHidden allows to hide a toolbar and also hide its control (a toolbar not available
in a mode).
* ForceAvailable allows to make a toolbar available by making its control visible, the
toolbar itself is visible or not depending on user settings.
* RestoreDefault allows to bring the control visibility to the default of the toolbar, the
toolbar itself is visible or not depending on user settings.
* SaveState allows to store the current visibility state of a toolbar. It enables client
code to save the state when appropriate. It provides the only option for default "Unavailable"
toolbars, which are fully managed by client code. It provides additional flexibility to save
other toolbar visibility on request.

For the Sketcher this means:
- That edit mode toolbars are not shown outside edit mode.
- That edit mode toolbars and non-edit mode toolbars can be configured independently.
- that edit mode toolbars' state is saved when leaving edit mode if and only if, the
workbench that is selected when leaving edit mode is the Sketcher WB.
- it won't save the state if the user manually selected another WB and then left edit
mode (why? see limitation above).

Limitation:
- When switching to another WB while in edit mode, the other WB is activated before the
current WB (sketcher WB) is deactivated. This means that at sketcher level, the sketcher
has no chance to save states or do other tidy up actions before the tools of the other WB
are activated.
- This, however, is understood as not relevant enough as to warrant changing the mechanisms
in place.
2023-05-30 16:37:53 +02:00
Chris Hennes
aeb059fc7a GUI: Add missing toolbar translation strings 2023-04-18 09:21:19 -05:00
Ronny Standtke
32650526b7 removed redundant "Toggle visibility" menu item from View menu 2023-04-13 10:57:49 +02:00
marioalexis
ae480d70cd Gui: Add CommandAction descriptor object to access commands action 2023-04-10 16:53:51 +02:00
wmayer
3cd81b9bb3 Gui: add an image view 2023-03-22 15:45:38 +01:00
Adrian Insaurralde Avalos
2d68ad5e7a [Gui] Split "File" toolbar and add "Clipboard" toolbar
"File" is split into "File", "Edit" and "Help"
"Clipboard" is hidden by default
2023-03-03 22:47:11 -06:00
Chris Hennes
cabb88019f Gui: Eliminate variable reuse
Coverity complains about USE_AFTER_FREE here, and it was difficult to reason about the code. To help address this, use different variables for the different parameter groups.
2023-02-26 10:36:16 +01:00
luzpaz
a40a5dcad2 Fix trailing newlines 2023-02-08 15:08:42 +01:00
Jakub Świerk
16f85753aa GUI: Removed Std_ArrangeIcons command. 2023-01-10 13:46:33 +01:00
wmayer
90ddd187f5 Gui: fix some clang-tidy warnings:
* readability-braces-around-statements
2022-11-13 17:42:08 +01:00
wmayer
7f104b077b Gui: fix readability-identifier-length 2022-11-12 23:57:14 +01:00
wmayer
3eaad09ed1 Gui: implement WorkbenchSwitcher class to encapsulate the parameter details 2022-11-11 22:53:02 +01:00
wmayer
e6a8533fa8 Gui: simplify code to handle workbench selector
+ replace three boolean parameters with a single string parameter
+ refactor DlgGeneralImp::saveSettings/loadSettings
+ handle visibility of corner widgets
2022-11-11 22:53:02 +01:00
Zheng, Lei
0a37a85ea2 Minor code change according to suggestions 2022-11-10 23:20:18 +01:00
Zheng, Lei
775452cbc0 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
Paddle
c87c4bbd9f Gui: Add setting enabling workbench selector to be on the menubar. Restart required. 2022-11-07 11:57:53 -05:00
Chris Hennes
0b294a955c Gui: Remove Print from toolbar
Inadvertently left by previous commit.
2022-10-07 14:20:40 -05:00
PaddleStroke
7720925e28 GUI: Remove copy cut print paste from File toolbar (#7571)
As discussed in the forums poll at https://forum.freecadweb.org/viewtopic.php?f=8&t=71924

Co-authored-by: Paddle <PaddleStroke@users.noreply.github.com>
2022-10-07 11:43:41 -05:00
PaddleStroke
de4b18c999 GUI: Remove Edit Mode from File toolbar (#7570)
See poll at https://forum.freecadweb.org/viewtopic.php?f=8&t=71925

Co-authored-by: Paddle <PaddleStroke@users.noreply.github.com>
2022-10-07 11:06:01 -05:00
0penBrain
186d671a0c Gui: add 2 commands to store and recall working view in 3D viewport 2022-09-28 17:29:11 +02:00
berniev
ae53c9b0a4 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
berniev
7aede27553 Gui: Redundant_string_initialization 2022-08-08 16:51:32 +02:00