Commit Graph

76 Commits

Author SHA1 Message Date
donovaly 8c45bef57c [TD] add missing repaints for DrawView
- this enables to see e.g. changes of the rotation of all kinds of views directly

- also fix a bug, see https://forum.freecadweb.org/viewtopic.php?f=35&t=44571
2020-03-26 08:08:41 -04:00
wandererfan 37b578bf49 [TD]support App::Link in View Source 2020-03-13 09:00:14 -04:00
wandererfan 3a42205cb4 [TD]fix autoscale for DPG 2020-02-14 07:44:56 -05:00
donovaly 78e6861127 TD: DrawProjGroup: add units for spacing
-also improve some tooltips
2019-12-10 06:50:27 -05:00
wandererfan 54d9e04304 [TD]use XDirection to align DPGI in DPG 2019-11-27 07:31:45 -05:00
wandererfan 92dfecea75 [TD]correct alignment of Section & Detail with Base 2019-11-27 07:31:45 -05:00
wandererfan a7ad04ba4a [TD]const-ness for dump function parameter 2019-11-10 15:58:45 -05:00
wandererfan 5bb659e7e2 [TD]Transition to on demand page updates ph1 2019-10-23 14:19:52 -04:00
Zheng, Lei 5bef136deb TechDraw: avoid touching children if possible
There are lots of dependency inversion problem in TechDraw, the ideal
organization should let a child depend on project group, instead of the
other way round, e.g. using PropertyLinkListHidden.

This patch is just a cheap fix. The problem occurs when the user uses
any expression to update properties like Scale in a projection group.
The Scale property will be changed on recomputing projection group,
which triggers children update, but since the group depends on the
children, the children has already been recomputed.
2019-08-30 14:47:05 +02:00
Zheng, Lei d26f772035 TechDraw: Link related changes
* Support link and group objects

* Support view sync by implementing view provider API getMDIView()

* Use handleChangedPropertyType() for object migration instead of
  reimplementing Restore() because of a lots of changes in
  PropertyContainer::Restore().

* Various other small fixes.
2019-08-17 15:15:46 +02:00
wandererfan 71a095360a Hide Caption property where not applicable 2019-06-01 15:59:26 -04:00
wandererfan 75d43757c4 Fix crash on malformed python script 2019-05-13 12:29:15 -04:00
wandererfan 1f6b2daefc Fix coverity CID 151722 2019-04-05 19:35:26 -04:00
wandererfan 7b5458b7fa Ensure ProjGroup is created before child 2019-03-07 10:58:29 +01:00
wandererfan 9a99a87a9a Replace static_cast with dynamic_cast
- replace all static_cast with dynamic_cast + error test
2019-03-07 10:58:28 +01:00
wandererfan 7189b8ebc0 Fix segfault on missing Anchor view
- test script did not create Anchor(Front) view.  DPG/DVP did not
  handle missing Anchor properly
2019-03-07 10:58:28 +01:00
wandererfan 198c2258d4 Remove superfluous updates
- under certain conditions, unnecessary screen paints
  were being performed.
2019-03-07 10:58:28 +01:00
wandererfan 77b22f4f30 Fix bad highlight position in Detail from ProjGroup 2019-02-22 11:55:21 +01:00
wandererfan 4ced49da81 Fix update of children on parent LockPosition change 2019-02-14 21:14:11 +01:00
wandererfan 41ab00c116 Restore secondary ortho view movement to v017 style
- this should also complete the fix for #3809
2019-02-14 21:14:11 +01:00
wandererfan a0e3ab1a40 Fix #3810 X/Y Property Update on Locked View
- fixes x/y update when position locked for simple
  Views and ProjectionGroups.
2019-02-14 21:14:10 +01:00
wandererfan 0c5629870c Hide n/a Rotation property
- DPG does not rotate, but shows Rotation property in
  Property Editor
2019-01-30 10:12:49 -02:00
wandererfan 5a26558a9d Fix out of scope warnings
- Links within TD were not set to Global scope. This caused
  problems when a Page was in a container, but Views were not
  in the container.
2019-01-22 10:15:04 -02:00
wandererfan 90fd3ae483 Fix movement of Front View in ProjectionGroup 2019-01-21 11:45:30 +01:00
wmayer b0247d184e Replace Base::Exception with appropriate subclass 2018-11-14 19:42:10 +01:00
wandererfan 859fed207d Fix double scaling in DPG AutoScale 2018-09-26 16:59:39 +02:00
wandererfan 3163c3d6f5 Fix late repaint of secondary views
- when ScaleType=Automatic and Scale changes
  individual views were not being repainted until
  next document recompute.
2018-09-26 16:59:12 +02:00
wandererfan aa8feb79d0 Use Face or 3D direction for View and ProjGroup
- use current 3D window direction as starting
  direction for DrawViewPart and ProjectionGroup
- if a Face is selected, use Face normal as
  starting direction.
2018-09-06 08:00:00 +02:00
wandererfan 0432ecdb88 Fix propagation of Source property to children 2018-08-18 21:59:05 +02:00
wandererfan 9f29693df3 Fix Dimension update on DPG Scale Change 2018-08-11 11:24:13 +02:00
wandererfan ee607d36a9 Fix iso View position in AutoDistribute 2018-07-31 16:08:48 -03:00
wandererfan 2cc80b6131 Add preference settings
- autodistribute, vertex size, vertex color
2018-07-23 12:47:17 -03:00
WandererFan 4f291f7305 Allow ProgGroup Item AutoPosition from Python 2018-02-11 20:07:57 +01:00
WandererFan 356f879659 Prevent Loop in BRepBuilderAPI_Transform
- if a scale transform with scale = 0 is passed to
  BRepBuilderAPI_Transform, it will loop forever.
  If Page.keepUpdated is false, and Views have not yet
  been executed (ex at load time), Views will have a
  0.0 x 0.0 bbox and if Autoscale is true, a scale of
  0.0 will be used in fit-to-page.
2018-02-01 17:01:12 -05:00
WandererFan e163ae1746 Allow multiple sources for all View types 2017-12-31 14:54:05 +01:00
WandererFan 381a7375e7 Fix XXX is still touched after recompute in DPG 2017-10-02 13:48:45 -03:00
wmayer 09737f2db3 rename method from remObject to removeObject to be more readable 2017-09-13 18:57:38 +02:00
WandererFan d27b8387e8 Eliminate superfluous DPG executes 2017-09-10 15:22:49 +02:00
WandererFan e8f2c68b5c Allow DrawPage updates to be suspended 2017-09-10 15:21:54 +02:00
WandererFan 17b69c7c3a Replace DPG table lookup logic with calculations
DPG used a pair of large tables to determine view
direction and rotation vector when subject was rotated
and spun.  There were many errors in the tables that
needed manual checking to correct.  The new version
uses calculations on a virtual glass cube to find view
direction and rotation vector.
2017-06-23 08:14:46 +02:00
Kunda dde52952f4 source typo fixes pt1 (only on py3 merged code)
issue 0002914
2017-02-27 11:32:47 +01:00
WandererFan 49c2be14ba Fix potential race when cancelling DPG creation 2017-01-29 19:40:34 -05:00
WandererFan f51b5818cc Initial working version of geometric crosshatch/PAT files 2017-01-29 19:40:34 -05:00
WandererFan 6cad2bc834 Delete DPGI's when parent DPG deleted
Ensure Gui/QGIVxx is removed when App/DVxxxx is deleted
2017-01-29 19:40:33 -05:00
WandererFan 0204b77766 Warn if Anchor view deleted in Projection Group 2017-01-29 19:40:33 -05:00
WandererFan d8afbe563e Fix 2843 DrawProjGroup Restore 2017-01-14 16:56:30 +01:00
WandererFan 16ce8d40f5 Section directions from rotated DPGI's 2016-12-29 14:43:37 +01:00
WandererFan 139edb2415 Working revolving part DPG 2016-12-29 14:43:25 +01:00
WandererFan 90935d0600 Reset/Match 3d buttons working 2016-12-29 14:43:13 +01:00
WandererFan 93fb9273dd Working proof of concept for DPG rots & dirs 2016-12-29 14:43:00 +01:00