Commit Graph

38 Commits

Author SHA1 Message Date
Zheng, Lei
b2893691cf Gui: improve Gui.addIcon(), add Gui.isIconCached()
The motivation of this patch is to make it easy for Python workbench
cache its own icons (possibly generated at runtime), saving the trouble
of pre-compiling the icons as binary resources.

* Gui.addIcon() now support a third argument as format. Default format
  is 'XPM' as before. The intention is to allow user to cache other
  format of icon image, like 'PNG'.

* ViewProviderPythonFeature::getIcon() now checks if the given string
  argument is a key to a cached icon.
2019-09-07 16:01:19 +02:00
wmayer
d05ae18340 fix -Wreturn-std-move 2019-09-07 15:19:28 +02:00
Zheng, Lei
ad57821cf9 Python feature/observer related changes
* Add new API and signal handler in document observer

* Pre initialize python handler function to improve performance. In
  case Python code use dynamic patching, i.e. add class method at
  runtime (which is rare and should be discouraged), the python feature
  can be re-initialized by simply assign proeprty Proxy again.

* Add property tracking in DocumentObjectT

* WidgetFactory adds support for accepting python QIcon, which is used
  by ViewProviderPythonFeature
2019-08-17 15:08:34 +02:00
wmayer
2f359cbee1 correctly handle again NotImplementedError in Python view providers 2019-02-22 13:26:33 +01:00
wmayer
4192b88298 fixes 0003804: FC becomes unusable after double-cicking on FEM elements while clip view is active 2019-02-15 23:30:18 +01:00
wmayer
36271b4052 move from deprecated boost.signals to boost.signals2 library 2018-10-30 19:09:03 +01:00
wmayer
6ceee1f6b2 returning a boolean from setEdit/unsetEdit of a Python view provider indicates a handled edit mode, None indicates to forward it to the C++ view provider 2018-10-03 17:39:22 +02:00
markus
80c1e0417d Return NotImplemented on PythonFeature::setEdit if the setEdit is implemented and returns True for one of the standard, not Default, edit modes 2018-10-03 16:49:10 +02:00
wmayer
74c0ba5fcf fixes #0003564: Python objects: updateData calls to proxy instance that should have been deleted 2018-08-25 16:33:22 +02:00
wmayer
8a16eec936 fixes #0003424: 'basic_string::_M_construct null not valid' when opening a v0.16 project with v0.17 2018-04-10 10:51:34 +02:00
wmayer
beff8eb3ca remove undesired virtual keyword from ViewProviderPythonFeatureImp 2017-04-28 21:15:53 +02:00
Yorik van Havre
77f652ea2f Gui: implemented isShow() for python viewproviders 2017-04-28 15:03:47 -03:00
wmayer
8d19b38550 fix setEdit, unsetEdit and doubleClicked methods of Python view provider 2017-02-20 22:16:56 +01:00
wmayer
577ed59fbc switch to PySide2 for Qt5 2016-12-24 15:33:15 +01:00
wmayer
a012f6ba49 remove obsolete class ViewProviderPythonFeaturePy 2016-11-09 12:15:15 +01:00
wmayer
1e6dcabefc fix -Wextra in FreeCADGui 2016-09-21 20:54:52 +02:00
wmayer
123f182c96 + support of drag'n'drop for custom view provider 2015-11-03 16:21:51 +01:00
wmayer
8850da2315 + implement onDelete for Python proxy of view provider 2015-07-16 16:13:39 +02:00
wmayer
cab441cf2a + remove references to SoFCSelection where not needed 2015-05-20 19:24:12 +02:00
wmayer
8e2b45b245 + build failure 2015-03-31 13:00:42 +02:00
wmayer
85ae6ad4bb + support context-menu in Python view providers 2015-03-31 11:32:43 +02:00
Sebastian Hoogen
d2bb75566e add encoding parameter to .as_std_string()
to handle PyUnicode Objects. Usually ASCII for object names and Utf-8
for file names and console output.
issue #995
2015-02-08 15:37:00 +01:00
jriegel
d0d832896a Merge remote-tracking branch 'refs/remotes/origin/jriegel/NewWinBuild' into jriegel/review-NewLibPack
Conflicts:
	src/3rdParty/salomesmesh/CMakeLists.txt
2014-08-27 15:39:00 +02:00
wmayer
a50743041b + fix -Wnull-conversion, -Woverloaded-virtual, -Wlogical-not-parentheses, -Wsometimes-uninitialized 2014-08-26 19:14:13 +02:00
jriegel
d46e0d0cb6 some type clearification 2014-08-21 17:59:33 +02:00
wmayer
5b43758db7 + fixes #0001522: SIGSEGV, crashes on long script (500 Lines) 2014-05-03 17:58:57 +02:00
wmayer
8aac094b06 + Selection handling of Python view providers 2013-10-26 22:15:20 +02:00
wmayer
d761e01511 + Selection handling of Python view providers 2013-10-26 19:52:22 +02:00
wmayer
4c005e4602 + Interface for selection of Python view providers 2013-10-25 15:07:39 +02:00
wmayer
ad877e1ae1 + Make Python API more pythonic 2013-10-11 13:57:05 +02:00
jriegel
d0494bad26 add double click handling to the PythonViewProvider template 2013-08-04 19:20:54 +02:00
wmayer
3a591b3a94 Improve reporting of Python exceptions 2013-05-04 14:23:53 +02:00
wmayer
90aed2baf4 0001059: Cannot add object to DocumentObjectGroupPython 2013-03-23 16:45:37 +01:00
wmayer
51a6d34c8b Fix problem with undo/redo with python-based features 2012-11-19 13:06:16 +01:00
wmayer
33ad622209 Convert unicode into string for de-serialized strings from JSON 2012-08-13 12:50:07 +02:00
wmayer
0d175d5e5b 0000415: Wrong tree structure of restored python objects 2012-04-12 14:52:24 +02:00
wmayer
e95de7090d + add method to get SoDetail from element name
+ fix broken selection mechanism

git-svn-id: https://free-cad.svn.sourceforge.net/svnroot/free-cad/trunk@5260 e8eeb9e2-ec13-0410-a4a9-efa5cf37419d
2011-12-10 21:11:20 +00:00
wmayer
120ca87015 + unify DLL export defines to namespace names
git-svn-id: https://free-cad.svn.sourceforge.net/svnroot/free-cad/trunk@5000 e8eeb9e2-ec13-0410-a4a9-efa5cf37419d
2011-10-10 13:44:52 +00:00