Commit Graph

10620 Commits

Author SHA1 Message Date
Yorik van Havre
99e400e87a Addon manager: Added check for optional py dependencies 2017-06-01 12:07:46 -03:00
wmayer
749d666099 fixes #0002156: Sketcher Visualization fails to represent sketch properly 2017-06-01 12:43:41 +02:00
Abdullah Tahiri
bc6a52ee94 fixes #0002499 2017-06-01 07:47:31 +02:00
Yorik van Havre
58909797a0 Addonmanager: Small fix 2017-05-31 22:53:50 -03:00
Yorik van Havre
e2e1f44b45 Addon manager: strip possible whitespaces in dependencies checking 2017-05-31 19:23:28 -03:00
Yorik van Havre
590c57d29f Merge branch 'master' of github.com:FreeCAD/FreeCAD 2017-05-31 19:18:31 -03:00
Yorik van Havre
456d3b80f1 Addon manager: Added dependency checking 2017-05-31 19:18:18 -03:00
Abdullah Tahiri
1a33f3bf99 Fixes #0002735 2017-05-31 23:59:17 +02:00
sliptonic
f6e0f06a63 Path: add output precision option to linuxcnc post.
Modified unit tests to use it.
2017-05-31 23:38:59 +02:00
sliptonic
69a797b99c Path: trying to fix unit test again 2017-05-31 23:38:59 +02:00
sliptonic
0405a67c24 Path: added use of return_last to contour.
Path: bug fixes
2017-05-31 23:38:59 +02:00
sliptonic
aad865375b Path: fixes for unittest
Path: precision fix to unittest pathpost
2017-05-31 23:38:59 +02:00
sliptonic
6768a70a2d Path: PathArea logging 2017-05-31 23:38:59 +02:00
sliptonic
8f690e676a Path: Cleanup MillFace Dialog 2017-05-31 23:38:59 +02:00
sliptonic
39631cf4ef Path: Area logging 2017-05-31 23:38:59 +02:00
sliptonic
68ca689e94 Path: minor fixes to PathMillFace 2017-05-31 23:38:59 +02:00
sliptonic
098ca483d3 Path: add cursor waiting decorator to long running functions.
Remove obsolete ToolDescription code from label change.
2017-05-31 23:38:59 +02:00
sliptonic
9b1b12d87c Path: TC panel bug. Loses decimal part of float spindle rate 2017-05-31 23:38:59 +02:00
sliptonic
29a8cbf114 Path: make cursor reflect busy
Path: fix label buy in PathProfileEdges

Path: cleanup
2017-05-31 23:38:59 +02:00
sliptonic
2ef59ac0b6 Path: More work on PathMillFace to remove old heeks dependency 2017-05-31 23:38:59 +02:00
sliptonic
0917fcb37b Path: TD version of getEnvelope for testing. 2017-05-31 23:38:59 +02:00
sliptonic
c7afbd1e12 Path: Engrave was using safeheight and clearance incorrectly. 2017-05-31 23:38:59 +02:00
sliptonic
474282f595 Path: engrave will do arrays 2017-05-31 23:38:59 +02:00
sliptonic
775b91d1a2 PATH: conversion of PathContour to PathArea nearly complete
Path: improve contour to use makeSections
2017-05-31 23:38:59 +02:00
sliptonic
018ba981f8 Path: use verbose mode for fromShapes() to get relative arc centers 2017-05-31 23:38:59 +02:00
sliptonic
9524ef8100 PATH: Smoothie post for laser
includes spindle speed (power) on every line
2017-05-31 23:38:59 +02:00
sliptonic
697fd74bb3 Path: Convert Contour and MillFace to use PathArea 2017-05-31 23:38:59 +02:00
looooo
947c10a4fd py3: src/Tools: python3 diff, 2. part
issue 0000995
2017-05-31 23:23:21 +02:00
Zheng, Lei
0c8a8733ff Path.Command: fix toGCode() bug introduced in 0e9c1c07
* output 6 digits instead of 5
* fixed negative value output
2017-05-31 23:50:05 +08:00
looooo
11dcd18e0f py3: src/Tools: python3 diff, 1. part
issue 0000995
2017-05-31 12:04:48 +02:00
Abdullah Tahiri
4b042536f8 Notification to the user that a body is not active when inserting a datum entity - fixes #2511 2017-05-31 02:41:29 +02:00
Abdullah Tahiri
7863a63659 Fillet Feature: Return if radius <= 0 2017-05-30 23:09:29 +02:00
Zheng, Lei
0e9c1c076e Path.Command: rounding instead of truncate in toGCode
Also changed default Path.Area pareameter ClipperScale to 1e6 which
corresponds to the default 5 digits output of Path.Command toGCode()
2017-05-30 18:49:34 +02:00
crobarcro
4a08048901 TopoShapeEdgePy.xml: improved docstrings
Corrected docstrings for *At methods (valueAt, tangentAt etc.) to explain parameter position meaning

Improved docstrings for FirstParameter, LastParameter, Length and getParameterByLength
2017-05-30 18:09:33 +02:00
WandererFan
052704eb0c Fix #1937 mis-shapen projections in TechDraw and Drawing
Complex curves need more bezier segments for accurate representation.
2017-05-30 15:44:38 +02:00
wmayer
8032a7a492 replace hard-coded values with enum values 2017-05-30 15:21:23 +02:00
wmayer
455b646854 set Restore flag also for copy&paste operation 2017-05-30 14:16:29 +02:00
Abdullah Tahiri
b7067c0237 minimal improvement of Document documentation 2017-05-30 13:01:45 +02:00
Abdullah Tahiri
2686f51c57 Checking for Document Restoring when extension has a null property
==================================================================

The problem:

OriginGroupExtension::OriginGroupExtension () {

    initExtensionType(OriginGroupExtension::getExtensionClassTypeId());

    EXTENSION_ADD_PROPERTY_TYPE ( Origin, (0), 0, App::Prop_Hidden, "Origin linked to the group" );
}

initializes the Origin property to null.

Then Document::Restore => readObjects => addObject => slotNewObject => ViewProviderDocumentObject::updateView => ViewProviderBody::updateData => ViewProviderGeometryObject::updateData =>
ViewProviderDocumentObject::updateData => ViewProvider::updateData => ViewProviderOriginGroupExtension::extensionUpdateData => updateOriginSize() => OriginGroupExtension::getOrigin,

the latter throws an exception because the origin property is null.

Afterwards, the origin property is initialized during Document::Restore => readObjects => ExtensionContainer::Restore() => PropertyContainer::Restore() => App::PropertyLink::Restore()
=> App::PropertyLink::setValue() => Property::hasSetValue, which triggers an onChange: Body::onChanged => BodyBase::onChanged => Feature::onChanged => DocumentObject::onChanged =>
Document::onChangedProperty => Document::slotChangedObject => ViewProviderOriginGroupExtension::slotChangedObjectGui => ViewProviderOriginGroupExtension::updateOriginSize =>
OriginGroupExtension::getOrigin,

now, the latter that is the same that was throwing the exception and generating the error message above, does not throw anymore because Origin has been initialized.

When creating a new object, isNew==true; whereas when loading a file, isNew==false. Therefore, when loading a file setupObject is not executed. SetupObject, effectively initializes
the extension via: Body::setupObject => DocumentObject::setupObject => OriginGroupExtension::onExtendedSetupObject.

DocumentObject * Document::addObject(const char* sType, const char* pObjectName, bool isNew)
{
    [more code here]
    // Call the object-specific initialization
    if (!d->undoing && !d->rollback && isNew) {
        pcObject->setupObject ();
    }
    [more code here]

As DocumentObject code is generic for all objects (workbenches), by design it was chosen to initialize the object only if new. Therefore a object or an extension of a object being restored,
between the addition (addObject) and the restoring of the properties, must by design expect it not to be initialized.

The solution:

Making use of the Restore flag at document level (the one at object level is not sufficient), no exception regarding the null property is reported during document restoring.

Ticket:
https://freecadweb.org/tracker/view.php?id=2530

fixes #2530
2017-05-30 13:01:45 +02:00
Abdullah Tahiri
548a79af16 App:Document new status bit to mark Restoring 2017-05-30 13:01:45 +02:00
Yorik van Havre
1a136c960e Arch Fixed wrong direction of preset structures 2017-05-29 18:02:36 -03:00
Yorik van Havre
f55592755e Draft: First version of Draft Label object 2017-05-29 16:57:25 -03:00
wmayer
f5a8ffb92e check for valid vertexes when measuring angles between two edges 2017-05-29 20:49:35 +02:00
wmayer
abc5c2ab07 handle OCC exception when accessing point of a vertex 2017-05-29 20:36:06 +02:00
Kurt Kremitzki
ee1d9533ee Invert test case 2017-05-29 12:59:00 -03:00
Kurt Kremitzki
5dceccda52 Add PartDesignMirrored test 2017-05-29 12:59:00 -03:00
Kurt Kremitzki
24728b4fa1 Change TestPartDesignApp to spaces and unix line endings 2017-05-29 12:59:00 -03:00
Kurt Kremitzki
7858b470bc Add PartDesignMirrored test 2017-05-29 12:59:00 -03:00
Kurt Kremitzki
0ca3f6c4b3 Change TestPartDesignApp to spaces and unix line endings 2017-05-29 12:59:00 -03:00
wmayer
2a6a58e587 properly raise exception in TopoShapePy::check 2017-05-29 16:52:44 +02:00