diff --git a/PyResources/icons.qrc b/PyResources/icons.qrc
index 29d9ea7..e9a885c 100644
--- a/PyResources/icons.qrc
+++ b/PyResources/icons.qrc
@@ -18,10 +18,12 @@
icons/Lattice2_PlacementFromShape.svg
icons/Lattice2_PolarArray.svg
icons/Lattice2_ProjectArray.svg
+ icons/Lattice2_RecomputeLocker_Locked.svg
icons/Lattice2_RecomputeLocker_LockRecomputes.svg
icons/Lattice2_RecomputeLocker_MakeFeature.svg
icons/Lattice2_RecomputeLocker_RecomputeDocument.svg
icons/Lattice2_RecomputeLocker_RecomputeFeature.svg
+ icons/Lattice2_RecomputeLocker_Unlocked.svg
icons/Lattice2_RecomputeLocker_UnlockRecomputes.svg
icons/Lattice2_Resample.svg
diff --git a/PyResources/icons/Lattice2_RecomputeLocker_LockRecomputes.svg b/PyResources/icons/Lattice2_RecomputeLocker_LockRecomputes.svg
index d44f8e4..ce971b2 100644
--- a/PyResources/icons/Lattice2_RecomputeLocker_LockRecomputes.svg
+++ b/PyResources/icons/Lattice2_RecomputeLocker_LockRecomputes.svg
@@ -18,7 +18,7 @@
id="svg11300"
sodipodi:version="0.32"
inkscape:version="0.48.4 r9939"
- sodipodi:docname="Lattice2_RecomputeLocker_MakeFeature.svg"
+ sodipodi:docname="Lattice2_RecomputeLocker_LockRecomputes.svg"
version="1.1">
@@ -263,7 +263,7 @@
http://jimmac.musichall.cz
-
+
reload
@@ -403,6 +403,36 @@
id="path3805"
d="M 16.793786,22.367379 C 16.440233,9.285903 31.112698,10.876893 30.405591,22.013825"
style="fill:none;stroke:#000000;stroke-width:4;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none" />
+
+
+
+
+
+
diff --git a/PyResources/icons/Lattice2_RecomputeLocker_Locked.svg b/PyResources/icons/Lattice2_RecomputeLocker_Locked.svg
new file mode 100644
index 0000000..d44f8e4
--- /dev/null
+++ b/PyResources/icons/Lattice2_RecomputeLocker_Locked.svg
@@ -0,0 +1,408 @@
+
+
+
+
diff --git a/PyResources/icons/Lattice2_RecomputeLocker_UnlockRecomputes.svg b/PyResources/icons/Lattice2_RecomputeLocker_UnlockRecomputes.svg
index b661359..81e85d4 100644
--- a/PyResources/icons/Lattice2_RecomputeLocker_UnlockRecomputes.svg
+++ b/PyResources/icons/Lattice2_RecomputeLocker_UnlockRecomputes.svg
@@ -401,8 +401,38 @@
sodipodi:nodetypes="cc"
inkscape:connector-curvature="0"
id="path3805"
- d="M 28.284271,21.837049 C 27.930718,8.7555729 42.603183,10.346563 41.896076,21.483495"
+ d="M 29.168155,21.660272 C 28.814602,8.5787962 43.487067,10.169786 42.77996,21.306718"
style="fill:none;stroke:#000000;stroke-width:4;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none" />
+
+
+
+
+
+
diff --git a/PyResources/icons/Lattice2_RecomputeLocker_Unlocked.svg b/PyResources/icons/Lattice2_RecomputeLocker_Unlocked.svg
new file mode 100644
index 0000000..b661359
--- /dev/null
+++ b/PyResources/icons/Lattice2_RecomputeLocker_Unlocked.svg
@@ -0,0 +1,408 @@
+
+
+
+
diff --git a/lattice2RecomputeLocker.py b/lattice2RecomputeLocker.py
index a613ec2..be8c9f1 100644
--- a/lattice2RecomputeLocker.py
+++ b/lattice2RecomputeLocker.py
@@ -218,7 +218,10 @@ class ViewProviderLatticeRecomputeLocker:
vobj.Proxy = self
def getIcon(self):
- return getIconPath("Lattice2_RecomputeLocker_Feature.svg")
+ if self.Object.LockRecomputes:
+ return getIconPath("Lattice2_RecomputeLocker_Locked.svg")
+ else:
+ return getIconPath("Lattice2_RecomputeLocker_Unlocked.svg")
def attach(self, vobj):
self.ViewObject = vobj
@@ -259,6 +262,7 @@ class _CommandMakeLockerObj:
if getLocker() is None:
FreeCADGui.addModule("lattice2RecomputeLocker")
FreeCADGui.doCommand("lattice2RecomputeLocker.makeRecomputeLocker('LatticeRecomputeLocker')")
+ FreeCADGui.doCommand("App.ActiveDocument.LatticeRecomputeLocker.purgeTouched()")
else:
mb = QtGui.QMessageBox()
mb.setIcon(mb.Icon.Warning)
@@ -283,6 +287,7 @@ class _CommandLockRecomputes:
if getLocker is not None:
FreeCADGui.addModule("lattice2RecomputeLocker")
FreeCADGui.doCommand("lattice2RecomputeLocker.getLocker().LockRecomputes = True")
+ FreeCADGui.doCommand("lattice2RecomputeLocker.getLocker().touch()") #gets rid of the tick, plus updates the icon.
else:
mb = QtGui.QMessageBox()
mb.setIcon(mb.Icon.Warning)
@@ -291,7 +296,7 @@ class _CommandLockRecomputes:
mb.exec_()
def IsActive(self):
- return getLocker() is not None
+ return getLocker() is not None and not getLocker().LockRecomputes
FreeCADGui.addCommand('Lattice2_RecomputeLocker_LockRecomputes', _CommandLockRecomputes())
@@ -307,6 +312,7 @@ class _CommandUnlockRecomputes:
if getLocker is not None:
FreeCADGui.addModule("lattice2RecomputeLocker")
FreeCADGui.doCommand("lattice2RecomputeLocker.getLocker().LockRecomputes = False")
+ FreeCADGui.doCommand("lattice2RecomputeLocker.getLocker().purgeTouched()") #gets rid of the tick, plus updates the icon.
else:
mb = QtGui.QMessageBox()
mb.setIcon(mb.Icon.Warning)
@@ -315,7 +321,7 @@ class _CommandUnlockRecomputes:
mb.exec_()
def IsActive(self):
- return getLocker() is not None
+ return getLocker() is not None and getLocker().LockRecomputes
FreeCADGui.addCommand('Lattice2_RecomputeLocker_UnlockRecomputes', _CommandUnlockRecomputes())
diff --git a/lattice2_rc.py b/lattice2_rc.py
index 2d0499b..ed036f7 100644
--- a/lattice2_rc.py
+++ b/lattice2_rc.py
@@ -2,16 +2,16 @@
# Resource object code
#
-# Created: Сб 28. ноя 02:42:59 2015
+# Created: Сб 28. ноя 02:55:00 2015
# by: The Resource Compiler for PySide (Qt v4.8.6)
#
# WARNING! All changes made in this file will be lost!
from PySide import QtCore
-qt_resource_data = "\x00\x00\x1f\x03\x0d\x0a\x0d\x0a\x0d\x0a\x0d\x0a\x00\x001\xf9\x0d\x0a\x0d\x0a\x0d\x0a\x0d\x0a\x00\x00(\xcb\x0d\x0a\x0d\x0a\x0d\x0a\x0d\x0a\x00\x000\xe1\x0d\x0a\x0d\x0a\x0d\x0a\x0d\x0a\x00\x00EV\x0a\x0a\x0a\x0a\x00\x00\x12\xb1\x0d\x0a\x0d\x0a\x0d\x0a\x0d\x0a\x00\x00D\xc9\x0a\x0a\x0a\x0a\x00\x00P\x16\x0d\x0a\x0d\x0a\x0d\x0a\x0d\x0a\x00\x00J\xd2\x0a\x0a\x0a\x0a\x00\x00!]\x0d\x0a\x0d\x0a\x0d\x0a\x0d\x0a\x00\x00?1\x0d\x0a\x0d\x0a\x0d\x0a\x0d\x0a\x00\x00&;\x0d\x0a\x0d\x0a\x0d\x0a\x0d\x0a\x00\x00\x13\xa3\x0d\x0a\x0d\x0a\x0d\x0a\x0d\x0a\x00\x00Q\x8b\x0a\x0a\x0a\x0a\x00\x00\x1d\xb9\x0d\x0a\x0d\x0a\x0d\x0a\x0d\x0a\x00\x00D\xcd\x0a\x0a\x0a\x0a\x00\x00!.\x0d\x0a\x0d\x0a\x0d\x0a\x0d\x0a\x00\x005\xcd\x0d\x0a\x0d\x0a\x0d\x0a\x0d\x0a\x00\x00*\xc4\x0d\x0a\x0d\x0a\x0d\x0a\x0d\x0a\x00\x00-\xa6\x0d\x0a\x0d\x0a\x0d\x0a\x0d\x0a\x00\x00(R\x0d\x0a\x0d\x0a\x0d\x0a\x0d\x0a\x00\x00+%\x0d\x0a\x0d\x0a\x0d\x0a\x0d\x0a\x00\x000\xb8\x0d\x0a\x0d\x0a\x0d\x0a\x0d\x0a\x00\x008v\x0d\x0a\x0d\x0a\x0d\x0a\x0d\x0a"
-qt_resource_name = "\x00\x05\x00o\xa6S\x00i\x00c\x00o\x00n\x00s\x00\x15\x00\xfa\xa5\x87\x00L\x00a\x00t\x00t\x00i\x00c\x00e\x002\x00_\x00B\x00o\x00u\x00n\x00d\x00B\x00o\x00x\x00.\x00s\x00v\x00g\x00\x14\x09\x0d\x0a\x0d\x0a\x0d\x0a\x0d\x0a\x00\x00D\xc9\x0a\x0a\x0a\x0a\x00\x001\xf9\x0d\x0a\x0d\x0a\x0d\x0a\x0d\x0a\x00\x00(\xcb\x0d\x0a\x0d\x0a\x0d\x0a\x0d\x0a\x00\x000\xe1\x0d\x0a\x0d\x0a\x0d\x0a\x0d\x0a\x00\x00EV\x0a\x0a\x0a\x0a\x00\x00\x12\xb1\x0d\x0a\x0d\x0a\x0d\x0a\x0d\x0a\x00\x00J\xa9\x0a\x0a\x0a\x0a\x00\x00P\x16\x0d\x0a\x0d\x0a\x0d\x0a\x0d\x0a\x00\x00J\xd2\x0a\x0a\x0a\x0a\x00\x00!]\x0d\x0a\x0d\x0a\x0d\x0a\x0d\x0a\x00\x00?1\x0d\x0a\x0d\x0a\x0d\x0a\x0d\x0a\x00\x00&;\x0d\x0a\x0d\x0a\x0d\x0a\x0d\x0a\x00\x00\x13\xa3\x0d\x0a\x0d\x0a\x0d\x0a\x0d\x0a\x00\x00Q\x8b\x0a\x0a\x0a\x0a\x00\x00\x1d\xb9\x0d\x0a\x0d\x0a\x0d\x0a\x0d\x0a\x00\x00J\xb2\x0a\x0a\x0a\x0a\x00\x00!.\x0d\x0a\x0d\x0a\x0d\x0a\x0d\x0a\x00\x005\xcd\x0d\x0a\x0d\x0a\x0d\x0a\x0d\x0a\x00\x00*\xc4\x0d\x0a\x0d\x0a\x0d\x0a\x0d\x0a\x00\x00-\xa6\x0d\x0a\x0d\x0a\x0d\x0a\x0d\x0a\x00\x00(R\x0d\x0a\x0d\x0a\x0d\x0a\x0d\x0a\x00\x00+%\x0d\x0a\x0d\x0a\x0d\x0a\x0d\x0a\x00\x000\xb8\x0d\x0a\x0d\x0a\x0d\x0a\x0d\x0a\x00\x00D\xcd\x0a\x0a\x0a\x0a\x00\x008v\x0d\x0a\x0d\x0a\x0d\x0a\x0d\x0a"
+qt_resource_name = "\x00\x05\x00o\xa6S\x00i\x00c\x00o\x00n\x00s\x00\x15\x00\xfa\xa5\x87\x00L\x00a\x00t\x00t\x00i\x00c\x00e\x002\x00_\x00B\x00o\x00u\x00n\x00d\x00B\x00o\x00x\x00.\x00s\x00v\x00g\x00#\x021ZG\x00L\x00a\x00t\x00t\x00i\x00c\x00e\x002\x00_\x00R\x00e\x00c\x00o\x00m\x00p\x00u\x00t\x00e\x00L\x00o\x00c\x00k\x00e\x00r\x00_\x00L\x00o\x00c\x00k\x00e\x00d\x00.\x00s\x00v\x00g\x00\x14\x09