asv [Wed, 12 Jan 2005 11:37:53 +0000 (11:37 +0000)]
A small bug was fixed: when library is not accessible (library file not found, etc.), the Library dialog with empty list of library nodes was still shown. Now a new method Library::CanImport() is introduced. It is called BEFORE showing the dialog, if it returns false - dialog is not shown.
asv [Tue, 11 Jan 2005 13:38:09 +0000 (13:38 +0000)]
"InitLoop" port name changed to "DoLoop". This change was implemented in the Engine's code as well. "DoLoop" is the correct name of "hidden" port of Loops.
asv [Tue, 11 Jan 2005 10:53:17 +0000 (10:53 +0000)]
The following bug was fixed:
for Loop node, removal of an Input Port automatically removes the corresponding Output Port. So for Loops the oldPorts list (removed before creation of new ports) should be filtered to include only Input Ports.
asv [Mon, 10 Jan 2005 10:43:27 +0000 (10:43 +0000)]
A constructor and destructor added.
A bug was fixed: replacement of ALL occurances of function name in the node's code, NOT only in "def Func_Name():" line.
asv [Mon, 10 Jan 2005 06:17:28 +0000 (06:17 +0000)]
replacement "on the fly" (during the call) of "InitLoop" port by "DoLoop" port is commented out. Please, see the comment in the code (use diff with previous version).
asv [Mon, 10 Jan 2005 06:13:52 +0000 (06:13 +0000)]
Copy/Paste ports and nodes functionality was transfered to SUPERVGUI_Clipboard class. All references to the functions in various classes were modified to reflect this change.
rahuel [Fri, 7 Jan 2005 15:15:05 +0000 (15:15 +0000)]
Gates were not properly handled in Loops ; now they are
Input Values of ports were allowd but were not properly handled : now they are
See GraphInputLoop in examples
See GraphLoopGates and GraphLoopsGates in example
mkr [Wed, 29 Dec 2004 13:35:39 +0000 (13:35 +0000)]
Point 2.3 of "SUPERVISOR: Current state - bugs/improvements":
disable popup menu items "Copy Node" and "Paste Port"
if Loop or Switch node has been copied and then delete
before paste operation.
mkr [Wed, 29 Dec 2004 11:36:50 +0000 (11:36 +0000)]
Point 2.3 of "SUPERVISOR: Current state - bugs/improvements" :
enable popup menu item "Copy Node" on EndLoop and EndSwitch nodes,
disable popup menu items "Paste Port" and "Paste Node" if port and node,
which has been copied, were deleted respectively.
asv [Wed, 29 Dec 2004 11:23:24 +0000 (11:23 +0000)]
The internal predefined port of a LOOP node was renamed from "InitLoop" to "DoLoop" in the Supervisor Engine. This change influenced all graphs that contain Loops - they must be changed, all references to "InitLoop" port must be replaced with "DoLoop" port in PY and XML files.
asv [Wed, 29 Dec 2004 11:20:41 +0000 (11:20 +0000)]
Methods ReRun(), ReRunAt(), ReStart(), ReStartAt() were removed from CNode's interface. These methods are called in GraphSyracuse* python scripts - decided to remove them with the corresponding XML graphs.
asv [Fri, 24 Dec 2004 13:26:26 +0000 (13:26 +0000)]
An improvement for adding a library node: it will use addNode() function, so creation of a PythonEditPane and LibDlg must take Service::myX, myY as arguments for future modification (on Add node command).
asv [Fri, 24 Dec 2004 13:24:51 +0000 (13:24 +0000)]
A new functionality: Import/Export Inline nodes to Library is implemented. CanvasNode modification: add a popup command to call "Export to Library" on an InLine node.
asv [Fri, 24 Dec 2004 12:55:06 +0000 (12:55 +0000)]
Adding a Node to viewport is unified: one common method addNode() is created in Service to be called form all places where Engine's nodes are created (Paste, Library, etc.)
Messages are modified as usual: new messages were added.
asv [Thu, 23 Dec 2004 13:47:40 +0000 (13:47 +0000)]
An improvement on link creation: if a link already exists between the ports, then on new link creation it is removed, and new link is created. If link already exists - is important check for Input Gate ports, which can accept many incoming links.
asv [Wed, 22 Dec 2004 11:20:26 +0000 (11:20 +0000)]
An improvement on link creation: if a link already exists between the ports, then on new link creation it is removed, and new link is created. If link already exists - is important check for Input Gate ports, which can accept many incoming links.
asv [Wed, 15 Dec 2004 11:24:19 +0000 (11:24 +0000)]
1. PAL6170, "Bugs and Improvements" p.2.21: calling of dataflow->Editing() added inside each of edition operations (see list of edition operations in comments of PAL6170). Also removed "Set Value" command from popup of CanvasPort in during execution (in Suspend).
2. removed ReRun(), ReStart() methods from Main as deprecated (p.1.20 of "Bugs and Improvements").
asv [Wed, 15 Dec 2004 11:20:32 +0000 (11:20 +0000)]
The following methods and constants were removed as never being used:
OutNode: Run(3 params), ReRun(), ReStart()
DataFlow: Run(3 params),
InNode: ReStart()
FiniteStateMachine: ReRunnedState.
Also removed use of deprecated constants from SUPERV namespace: ReRunEvent, ReStartEvent, ReRunState, ReStartState.
asv [Wed, 15 Dec 2004 11:16:38 +0000 (11:16 +0000)]
a new private method run() was introduced instead of using CNode_Impl::Run() which was removed. run() is now called from both Run() ("Execute graph") and Start() ("Execute graph step-by-step") to remove code dublication.
asv [Wed, 15 Dec 2004 11:14:49 +0000 (11:14 +0000)]
Run(), ReRun(), ReRunAt(), ReStart(), ReStartAt() methods were removed. ReXXX methods were removed from IDL as never being called. Run() methods was removed, its functionality (basic calling of Executor->Run() ) was moved to Graph_Impl with modification.
asv [Wed, 15 Dec 2004 11:12:40 +0000 (11:12 +0000)]
ReRun(), ReRunAt(), ReStart(), ReStartAt() methods of Graph interface were removed. Also corresponding constants ReRunEvent, ReStartEvent, ReRunState, ReStartState were removed from enumerations.
These methods and constants were not used and only complicated the code.
mkr [Tue, 14 Dec 2004 13:40:57 +0000 (13:40 +0000)]
Inconsistencies between GUI and TUI in SUPERVISOR:
1) add the possibility to create of an InLine node without a
Python function defined (empty, no code);
2) add the possibility to define Python functions in EndLoop and EndSwith
nodes and to create Loop and Switch nodes with empty functions;
3) add the possibilyty to define a function without a body - in this case,
if a function with the same name was already defined in another node,
it's code (body) will be used (executed).
asv [Mon, 13 Dec 2004 14:36:34 +0000 (14:36 +0000)]
A bug was fixed: _Loading field is set to "false" (as it normally should be except for explicid "loading" time) in 2 cases:
1) constructors of InNode (in InitInNode() )
2) before invocation of Python interpreteur during InLine nodes' excution.
asv [Mon, 13 Dec 2004 14:33:09 +0000 (14:33 +0000)]
Unfortunatelly, I have to write a common comment for check-in of many files in SUPERVGUI. Two main things were done during this edition:
1) improvements that were implemented in cvs-PAL were merged here. They mainly concerned Python editor improvements ("Load from file" works with Python functions with blank lines, etc.) and some minor (N4) bugs in SUPERVGUI fixed by SAK.
2) removal of all unused classes, so called non-canvas classes. Only Canvas-bases GUI entities (Node, Port, Link) are left in SUPERVGUI, and the other classes, used in SUPERVISOR previously, are permanentally removed. 2 view modes were removed from SUPERVGUI_Def.h: TABLE and GRAPH. CANVASTABLE, CANVAS, and CONTROLFLOW are now the only implemented modes of dataflow presentation.
rahuel [Fri, 10 Dec 2004 12:53:04 +0000 (12:53 +0000)]
Graphs for test of catch of SIGSEGV and SIGFPE in Containers and in Python InLineNodes. Graph for test of Undefined symbol : there is no way to know that there is that situation ...
asv [Fri, 10 Dec 2004 09:53:57 +0000 (09:53 +0000)]
A special "Loading" state was implemented. It is returned to GUI if the corresponding InNode returns IsLoading()==true.
So,
1) OutNode::State( char* aNodeName ) will return LoadingState in case InNode is Loading
2) InNode::IsLoading( bool b ) pushes to GUI "Executing" state if b == false -- loading is complete.
asv [Thu, 9 Dec 2004 07:41:23 +0000 (07:41 +0000)]
A new dialog class for edition of Ports of an InLine nodes is introduced. This functionality is described in details in "Bugs and improvements in SUPERVISOR" 2.1, and Bug PAL 7384.
rahuel [Wed, 8 Dec 2004 13:37:42 +0000 (13:37 +0000)]
SuperVisionContainer method and Main Thread Identification for calls to pthread_kill to manage Python functions execution
Suspend, Resume and Kill management
rahuel [Wed, 8 Dec 2004 13:31:47 +0000 (13:31 +0000)]
Management of loading of a Component in a Container for Kill, Suspend because it is not possible to call the corresponding method in the Container at that time.
rahuel [Wed, 8 Dec 2004 13:29:58 +0000 (13:29 +0000)]
Management of loading of a Component in a Container for Kill, Suspend because it is not possible to call the corresponding method in the Container at that time.
Kill, Suspend and Resume are now possible for InLineNodes.
But they do not run for MacroNodes : developpement is necessary.
rahuel [Wed, 8 Dec 2004 13:01:36 +0000 (13:01 +0000)]
Management of loading of a Component in a Container for Kill, Suspend because it is not possible to call the corresponding method in the Container at that time.
asv [Thu, 2 Dec 2004 12:25:19 +0000 (12:25 +0000)]
An error message on Export dataflow failed event was changed. Now it is: "Export failed. Backup copy of overwritten file is stored in'%1'" - it must be concatinated with a string (file name) argument on use.
asv [Thu, 2 Dec 2004 12:23:41 +0000 (12:23 +0000)]
Fixed a bug described in VSR's "Bugs and improvements in Supervisor" 1.8: Crash while exporting graph to XML file. When export failed, and export was done to an existing file, then contents of that file were lost.
The fix: if an existing file is selected, then a backup copy of it is made first, then Export().
If Export() succeeds, then backup copy is removed.
If Export() fails, a message box "Export failed. Backup copy of overwritten file is stored in'backup_file_path'" is displayed.
New function SUPERVGUI::createBackupFile()
Called in SUPERVGUI.cxx - export of Supergraph
SUPERVGUI_ControlNode.cxx - export of MacroNode
asv [Thu, 2 Dec 2004 12:18:14 +0000 (12:18 +0000)]
Removed exportDataflow() function. It was called from SUPERVGUI class only, so the code of the function was just moved there, replacing main->exportDataflow() call.