Some Eclipse Foundation services are deprecated, or will be soon. Please ensure you've read this important communication.
Bug 317129 - Implement graphical editor
Summary: Implement graphical editor
Status: RESOLVED FIXED
Alias: None
Product: STEM
Classification: Technology
Component: Core (show other bugs)
Version: unspecified   Edit
Hardware: All All
: P2 enhancement (vote)
Target Milestone: 1.2.0   Edit
Assignee: Christian Thoens CLA
QA Contact:
URL:
Whiteboard:
Keywords:
: 233281 318686 (view as bug list)
Depends on:
Blocks:
 
Reported: 2010-06-16 19:44 EDT by Stefan Edlund CLA
Modified: 2012-09-11 12:27 EDT (History)
6 users (show)

See Also:


Attachments
Patch from Jan-Fredrick Wigger (103.52 KB, patch)
2011-03-07 13:19 EST, Stefan Edlund CLA
sedlund: iplog+
Details | Diff
Patch from Jan-Fredrick Wigger (73.41 KB, patch)
2011-03-21 14:37 EDT, Stefan Edlund CLA
sedlund: iplog+
Details | Diff
Patch from Jan-Fredrick Wigger (2.39 KB, patch)
2011-03-21 14:38 EDT, Stefan Edlund CLA
sedlund: iplog+
Details | Diff
Some changes in the graph editor (80.72 KB, text/plain)
2011-04-08 09:08 EDT, Jan-Frederik Wigger CLA
no flags Details
saving of additional labels (31.29 KB, text/plain)
2011-04-15 08:31 EDT, Jan-Frederik Wigger CLA
no flags Details

Note You need to log in before you can comment on or make changes to this bug.
Description Stefan Edlund CLA 2010-06-16 19:44:39 EDT
Implement a full fledges graphical editor for STEM
Comment 1 James Kaufman CLA 2010-07-09 18:32:02 EDT
*** Bug 318686 has been marked as a duplicate of this bug. ***
Comment 2 Matthew Davis CLA 2010-07-10 12:17:11 EDT
Accepting, target to 1.2.0
Comment 3 Matthias Filter CLA 2010-07-12 05:13:53 EDT
Just want to remind you on the following library as a possible source to be used in this context:
http://jung.sourceforge.net/
Comment 4 Matthew Davis CLA 2010-09-07 13:47:12 EDT
*** Bug 233281 has been marked as a duplicate of this bug. ***
Comment 5 Matthias Filter CLA 2010-11-12 09:00:47 EST
As discussed on this weeks call some thoughts on features that the graph editor should possess:

- it should be possible to visualize the value that is assigned to an edge, e.g. after encoding it as width of the drawn line
- in case of unbalanced migration rates it should be possible to display edges as arrows that do not overlap
- it should be possible to visualize any STEM graph immediately, i.e. independently from any disease model or scenario
- it should be possible to add nodes and edges (and their corresponding parameters) within the new graph editor, e.g. by a simple right-click into the graph editor pane
- it should be possible to relocate or move nodes, most relevant in case of arbitrary networks like those imported from a Pajek .net file
- from the newsgroup threat on "Modifying Disease Parameters by Location" there was also the wish to enable the creation of completely new node (and edge) labels via the graph editor
- provide complete compatibility between all kind of graphs, e.g. lattice, arbitrary networks, map graphs, i.e. one should in this way also be able to delete nodes from a map, e.g. to remove certain districts.

- use the available property files that are already implemented in STEM

Matthias
Comment 6 Matthew Davis CLA 2010-12-10 14:33:39 EST
Another potential editor is the Eclipse Graphical Editing Framework (GEF)
http://www.eclipse.org/gef/
Comment 7 Matthias Filter CLA 2010-12-10 15:38:30 EST
You are right,

the Zest subproject might come close to what jung offers:
http://www.eclipse.org/gef/zest/index.php
We will have a look on it,
Matthias
Comment 8 Matthew Davis CLA 2010-12-13 17:42:42 EST
Hi Mathias,

Here are a few license findings re/Jung.

Direct Dependencies (according to Jung Web site):

* Collections-Generic
Not currently approved by Eclipse
License:  Apache

---

* CERN Colt Library
Not currently approved by Eclipse
Multiple licensed...

Packages prefixed with cern.* are licensed by a CERN open license which reads

"Copyright (c) 1999 CERN - European Organization for Nuclear Research. 
Permission to use, copy, modify, distribute and sell this software and its documentation for any purpose is hereby granted without fee, provided that the above copyright notice appear in all copies and that both that copyright notice and this permission notice appear in supporting documentation. CERN makes no representations about the suitability of this software for any purpose. It is provided "as is" without expressed or implied warranty."

Packages are prefixed by hep.aida.* are licensed by the LGPL, which is a NO GO from an Eclipse perspective.

Further, a source check of Colt found the class corejava.Format, which is used in both hep.* and cern.* packages in Colt.  This class is also LGPL.

Another small addendum is the mention with hep.aida.* that "any usage related to military applications is expressly forbidden".  While LGPL is a no-go to begin with, this may also be difficult because STEM has received substantial funding from the United States Air Force.

The hep.aida.* packages cannot be distributed with Eclipse packages.  This is a no-go.
*********************************

Indirect dependencies (JARs shipped w/Jung)

---

Concurrency 1.3.4
Eclipse IP Approved CQ 1423
Public domain and with an exclusionary usage license from Sun.

---

StAX API 1.0.1
License:  ASL 2
Eclipse IP Approved CQ 1264 and others

--

Woodstox 3.2.6
Eclipse IP Approved CQ 3165 and others

License: ASL 2 (Cross-license w/GPL)

---

Java3d Core 1.3.1
Not currently approved by Eclipse

License:
Version 1.3.2 (and 1.3.1?) use JDL (https://java3d.dev.java.net/jdl-java3d.pdf) and JRL (http://java3d.dev.java.net/jrl.html). Newer versions use GPL

---

Java3d VecMath 1.3.1
Not currently approved by Eclipse

License:
Version 1.3.2 (and 1.3.1?) uses JDL (https://java3d.dev.java.net/jdl-java3d.pdf) and JRL (http://java3d.dev.java.net/jrl.html).  Newer versions use GPL.
Comment 9 Jan-Frederik Wigger CLA 2010-12-14 10:03:09 EST
After having had a look at GEF/Zest, it seems that it is the better path to follow and most of the desired features can be implemented in STEM.

- In contrast to JUNG the GEF/Zest framework avoids the legal and technical problems that arise with old or incompatible licenses and third party content.  
- It is easy to set the dependencies on the Zest libraries within a STEM package.
- It is possible to label edges, to move nodes within the display and get/set their coordinates. 
- I think with a little effort, a context menu can be installed to add/delete edges between nodes.
Comment 10 Stefan Edlund CLA 2011-03-07 13:19:09 EST
Created attachment 190581 [details]
Patch from Jan-Fredrick Wigger
Comment 11 Stefan Edlund CLA 2011-03-21 14:37:44 EDT
Created attachment 191633 [details]
Patch from Jan-Fredrick Wigger
Comment 12 Stefan Edlund CLA 2011-03-21 14:38:11 EDT
Created attachment 191634 [details]
Patch from Jan-Fredrick Wigger
Comment 13 James Kaufman CLA 2011-03-28 16:32:27 EDT
Adding this contribution to IPLog
All original Software from Jan-Frederic Wigger and Dirk Reuter
Contributor agreement in place and signed by their employer
Comment 14 Jan-Frederik Wigger CLA 2011-04-08 09:08:59 EDT
Created attachment 192824 [details]
Some changes in the graph editor

Click on models instead on graphs, assignment of information from other graphs in canonical graph, adapters, creating local copies.
Comment 15 Jan-Frederik Wigger CLA 2011-04-15 08:30:29 EDT
adding saving of additional labels
Comment 16 Jan-Frederik Wigger CLA 2011-04-15 08:31:57 EDT
Created attachment 193361 [details]
saving of additional labels
Comment 17 Christian Thoens CLA 2012-02-28 11:31:49 EST
Extended GraphEditor committed (Revision 2775):
1. Nodes, Edges and NodeLabels can be added and removed
2. Improved GUI and zooming
3. Several Bug Fixes
4. NLS, Javadoc and Wiki documention will be added soon
Comment 18 Christian Thoens CLA 2012-04-13 07:50:58 EDT
Additional Improvements committed, will not be part of 1.3.1.
Documenation will be updated for 1.3.2.
Comment 19 Christian Thoens CLA 2012-09-11 06:51:02 EDT
Is done.
Comment 20 Stefan Edlund CLA 2012-09-11 12:26:22 EDT
Clear IP log per recommendation
Comment 21 Stefan Edlund CLA 2012-09-11 12:26:53 EDT
Comment on attachment 190581 [details]
Patch from Jan-Fredrick Wigger

Add IP log + per recommendation
Comment 22 Stefan Edlund CLA 2012-09-11 12:27:15 EDT
Comment on attachment 191633 [details]
Patch from Jan-Fredrick Wigger

Add IP log + per recommendation
Comment 23 Stefan Edlund CLA 2012-09-11 12:27:30 EDT
Comment on attachment 191634 [details]
Patch from Jan-Fredrick Wigger

Add IP log + per recommendation