Commit Graph

3583 Commits

Author SHA1 Message Date
wmayer
369fc153b1 Gui: code refactoring that handles printer settings, also support color mode 2022-01-24 12:45:06 +01:00
0penBrain
c4c81e6e69 [Core] Fix unit management in QuantitySpinBox 2022-01-23 22:04:06 +01:00
wmayer
88ded38ca1 Base: only handle Base::ParserError exceptions for quantity expressions 2022-01-22 01:15:12 +01:00
0penBrain
e4bc11d973 [GUI] Allow origin plane/axis selection with entire label bounding box 2022-01-20 00:32:24 +01:00
wmayer
ead1bce8e9 Gui: [skip ci] improve comment 2022-01-18 10:55:34 +01:00
wmayer
9d37d27229 Gui: fix handling of dimensionless expressions 2022-01-18 10:52:45 +01:00
wmayer
f147986fa9 App: Bugfix for NULL-Pointer dereference of Property->getName() 2022-01-16 14:30:51 +01:00
Zheng, Lei
29ae8b0502 Gui: remove obsolete/incorrect tree view comments
It's part of the suggestion of this forum post:
https://forum.freecadweb.org/viewtopic.php?p=560433#p560433
2022-01-12 14:44:35 +01:00
wmayer
771d9a735a Gui: improve safety of Application::getViewProvider()
This is a suggestion offered by realthunder at https://forum.freecadweb.org/viewtopic.php?p=560433#p560433
and this commit https://github.com/realthunder/FreeCAD/commit/0e20656ffae

This commit additionally moves the relevant code into a separate class.
2022-01-12 14:39:05 +01:00
marioalexis
07c51f1b2c Gui: Prevent crash when calling stderr.write and stdout.write without arguments 2022-01-11 01:03:44 +01:00
Yorik van Havre
e33ef084ff Merged crowdin translations 2022-01-10 11:23:59 +01:00
luz paz
b0fcf45513 Fix various superfluous whitespace in *.dox files 2022-01-09 21:01:42 -06:00
Uwe
9eb3012ecc [Gui] use predefined M_PI 2022-01-07 21:55:48 +01:00
luz paz
4f886b2b8c Fix various typos and refinements 2022-01-06 20:22:34 +01:00
wmayer
6aec424aa5 Gui: override QuantitySpinBox::setExpression and validate expression to update internal representation 2022-01-05 20:15:03 +01:00
wmayer
00d6f4f2df Gui: refactor code to reduce code duplication 2022-01-05 20:13:09 +01:00
luz paz
3292475613 Fix various typos 2022-01-04 18:57:56 -06:00
wmayer
3d359e2e24 Mouse navigation: change unnecesary messages to log messages 2021-12-31 19:09:15 +01:00
wmayer
9458ab6708 Gui: add function to check matches of key event and key sequence 2021-12-31 17:02:12 +01:00
Chris Hennes
a9cf722d04 Addon Manager: Convert dev startup warning to log 2021-12-30 20:13:24 -06:00
wmayer
513d15886d Gui: move options to use native or Qt dialogs to class DialogOptions 2021-12-30 17:31:00 +01:00
mwganson
31175b5788 [core] Add new parameter to BaseApp/Preferences/Dialog called DontUseNativeColorDialog, default to true 2021-12-30 17:07:25 +01:00
Adrian
fddfc7bdcd Mouse navigation: change unnecesary warnings to messages
sent when trying to set rotation center without an object under the cursor and can be annoying if report view is set to show with warnings.
2021-12-30 15:46:38 +01:00
wmayer
b962326bf7 Gui: encoding/decoding of system specific error message 2021-12-30 00:48:57 +01:00
Yorik van Havre
6cb3782c03 Merged crowdin translations 2021-12-29 12:20:12 +01:00
Syres916
214d9d19f0 [Gui] MainWindow New Doc camera position bugfix
See https://forum.freecadweb.org/viewtopic.php?p=556465#p556465
2021-12-28 20:49:58 +01:00
wmayer
afa40eaf87 Gui: reduce code duplication in ReportOutputObserver and ReportOutput 2021-12-27 17:50:48 +01:00
wmayer
0bc96dfedd + code refactoring of View3DInventorPy::viewDefaultOrientation 2021-12-27 16:32:31 +01:00
Uwe
5923ce1858 [GUI] don't show report view on warnings by default
I introduced FreeCAD to several people and see that especially newbies are confused with all the warnings they get but cannot understand.
The solution was to change that the report view panel is not automatically shown on every warning.
This PR does this.

More experienced users can anytime enable the option. Thus this PR has not much impact but obviously makes life easier for beginners.
2021-12-25 20:40:24 +01:00
Zheng, Lei
ccf10b8867 Minor code changes according to suggestions 2021-12-21 21:41:02 -07:00
Zheng, Lei
75e639c94c App/Gui: add new ObjectStatus TouchOnColorChange
For triggering recompute on color changes
2021-12-21 21:41:02 -07:00
Zheng, Lei
715d67e2c3 Gui: do not prompt when closing view of temp document 2021-12-21 21:41:02 -07:00
Zheng, Lei
a9895e4f04 Gui: expose 'Expression...' property editor menu action
For expression binding of all type of property. Previously this action
is only available if 'Show all' is activated.
2021-12-21 21:41:02 -07:00
Zheng, Lei
4f29e81d0c App: support CopyOnChange property in Link
New property status bit 'CopyOnChange' is added for any document object
to publish any property as a 'Configuration' option. When Link is
linked to any object with such property, it will duplicate those
properties and added it Link itself as dynamic properties. If the user
changes any of these dynamic properties, the Link will auto copy the
linked to object and apply the new configuration to it.

The Link has a new property 'LinkCopyOnChange' to allow user to
enable/disable this feature.

Spreadsheet's 'Configuration Table' feature will publish its
configuration property with 'CopyOnChange'.

Currently, once the linked object is copied, it will be independent with
the original object. There is no mechanism to auto sync changes back to
the copy.
2021-12-21 21:41:02 -07:00
Zheng, Lei
1f604ec632 Gui: fix property view linked property highlight 2021-12-21 21:41:02 -07:00
Zheng, Lei
2a3951ca32 Spreadsheet: change alias handling
No longer add dynamic property for alias, simply rely on
get(Dynamic)PropertyByName() to check for aliases.

Add new API PropertyContainer::getPropertyNamedList() so that
ExpressionCompleter can discover properties with aliases.
2021-12-21 21:41:02 -07:00
Zheng, Lei
68fca40983 Spreadsheet: support cell binding
Cell binding allows one to bind a range of cells of one sheet to another
range of cells of an arbitary sheet, including any empty cells in the
range.

The binding is implemented with PropertyExpressionEngine and
PropertySheet::setPathValue(), which binds a special path of
PropertySheet, such as

    .cells.Bind.A1.D1

to an expression, such as

     tuple(.cells, <<A2>>, <<A5>>)

The A1 and D1 in the example above specifies the binding start and end
cell address. And <<A2>> and <<A5>> are the range of cells to bind to.
Note that you can use any expression that evalutes to string for the
binding destination, e.g. <<A%d>> % B1, which uses the value inside B1
to construct the binding destination. The '.cells' in the tuple shown
above is an example to bind cells of the same PropertySheet. It can be
change to to reference to any other spreadsheet, even those outside the
current document, e.g. Document#Spreadsheet001.cells
2021-12-21 21:41:02 -07:00
Zheng, Lei
b76509bfea Gui: handle exception in property item display 2021-12-21 21:41:02 -07:00
wmayer
47eee38c02 Gui: in catch blocks first write the error message before cleaning the resources 2021-12-20 16:10:01 +01:00
wmayer
a178cc15f2 Gui: boost 1.76 provides an overloaded version of file_lock that accepts a wchar_t string 2021-12-19 21:24:17 +01:00
wmayer
1f9c602ae7 0004807: Freecad crashes when windows username contains special characters 2021-12-19 17:02:19 +01:00
Chris Hennes
6a9600e3c7 Gui: Add PrefTextEdit 2021-12-18 20:29:42 -06:00
Chris Hennes
c600fda0d9 GUI: Tweak verbosity of InitGui startup sequence 2021-12-18 20:29:42 -06:00
Chris Hennes
5c1655d125 Core: Fix installation conflict with pkgutils 2021-12-18 20:29:42 -06:00
Chris Hennes
2bfcf6af09 GUI: Handle packaged Workbenches and their icons 2021-12-18 20:29:42 -06:00
Mark Ganson TheMarkster
f17c85fc47 [MainWindow] Add toolbar name as toolbar's tooltip (#5259)
* [MainWindow] Add toolbar name as toolbar's  tooltip

Co-authored-by: Uwe <donovaly@users.noreply.github.com>
2021-12-17 03:16:30 +01:00
wmayer
b5e67c14a5 Gui: remove pop-up dialog in case the macro directory is empty 2021-12-15 13:52:12 +01:00
0penBrain
2bfbbb9973 [Gui] Ensure dockwidget is stacked on top when activated 2021-12-14 17:35:59 +01:00
wmayer
a853d80c73 Gui: make the Copy command of the report window working if an object in the tree is selected 2021-12-13 18:57:28 +01:00
wmayer
b6527a7098 Gui: add function View3DInventorViewer::projectPointToLine and expose to Python 2021-12-12 12:49:53 +01:00