FreeCAD: staging c0adc6ea

Author Committer Branch Timestamp Parent
Zheng, Lei Zheng, Lei staging 2019-07-07 04:00:13 staging a789c345
Changeset Gui: Command API changes

* invoke(), distinguish between command triggering source. Also add
  support of auto transaction using App::AutoTransaction. Now all
  command will support undo/redo by default.

* setupCheckable(), a helper function to Improve support of
  PythonGroupCommand

* getObjectCmd(), helper function to output Python command to refer to
  an object without ambiguity. Because with introduction of external
  linking, an object can no longer be safely referred through the
  current active document.

* Support auto MacroManager command logger. For commands that does not
  log any output to MacroManager, a log entry of 'Gui.runCommand()' will
  be auto generated.

* Support linked object in copyVisual()

* Modified do/runCommand() to print calling file and line number.

* Add various helper macros for run command involving a document or
  object.
mod - src/Gui/Action.cpp Diff File
mod - src/Gui/Action.h Diff File
mod - src/Gui/Command.cpp Diff File
mod - src/Gui/Command.h Diff File
mod - src/Gui/CommandStd.cpp Diff File
mod - src/Gui/CommandWindow.cpp Diff File
mod - src/Gui/Macro.cpp Diff File
mod - src/Gui/Macro.h Diff File