Tutorials on different topics I have learned. The best way to know if you have learned something is when you can explain it to others, so this is what I do. If you enjoy these tutorial you can give your thanks by buying me a beer (or a hamburger, or whatever you like) – using the donation button on your right. Thanks!
- Creating an EMF and GEF based OPM Editor: the tutorial shows, step by step, how to create a graphical editor based on the Eclipse Modeling Framework (EMF) and the Graphical Modeling Framework (GEF).
- Creating a GEF editor – Part 1: Defining the Model
- Creating a GEF Editor – Part 2: EMF Code Generation
- Creating a GEF Editor – Part 3: Basic GEF Editor
- Creating a GEF Editor – Part 4: Showing the Model on the Editor
- Creating a GEF Editor – Part 5: Loading the Model from an EMF File
- Creating a GEF Editor – Part 6: Model Refactoring and Editing Diagram Entities
- Creating a GEF Editor – Part 7: Moving Elements and Direct Editing
- Creating a GEF Editor – Part 8: Delete, Undo and Redo
- Creating a GEF Editor – Part 9: Connections
- Creating a GEF Editor – Part 10: Deleting Connections and Fixing of Thing Delete Command
- Creating a GEF Editor – Part 11: Creating Link Bendpoints
- Creating a GEF Editor – Part 12: Enable Save Action on the Editor
- Creating an OPM GEF Editor – Part 13: Adding Procedural Links
- Creating an OPM GEF Editor – Part 14: Refactoring, Refactoring and More Refactoring
- Creating an OPM GEF Editor – Part 15: Adding Structural Link
- Creating an OPM GEF Editor – Part 16: Displaying EMF Properties in a GEF Editor
- Creating an OPM GEF Editor – Part 17: How to Define Container Edit Parts
- Creating an OPM GEF Editor – Part 18: Snapping to Grid and to Geometry
- Creating an OPM GEF Editor – Part 19: Displaying Tooltips
- Creating an OPM GEF Editor – Part 20: Creating a Context Menu and Adding Custom Actions
- Some investigative work on how GEF works.
- GEF Internals Part 1 – Mouse Interaction and the Selection Tool
- GEF Internals Part 2 – Mouse Interaction and the Creation Tool
- JGraph Tutorials: some things I learned while testing the java JGraph Graph Visualization and Layout library. Although the framework is simple to use, it lacks good editing capabilities, it is not well documented (codewise). After working with it a few days I decided to try the GEF framework instead.
- JUNG: the Java Universal Network/Graph Framework, the first java graph framework I tested. Some things I learned.


In the objectprocessdiagrameditpart your figure is an freeform layer with setopaque set to false. My scenario here is i have two editparts one is the root with figure as freeformlayer and an child editpart which is also has an figure of freeformlayer . both has setopaque as false . the child figure does not extend to all four directions. it works only when child figures setbounds is given ?
My ObjectProcessDiagram figure does not define any opacity. Take a look at the code here. What are the contents of the child figure? if you only draw a freeformlayer you wont see it.. I don’t seem to understand what you are trying to do.
hi, how to create an collapsable and expandable containers. the figure when expanded should show the children and should hide the children when collpased and display in a small size . its similar to windows maximize and minimize.
sample
http://www.eclipse.org/forums/index.php/m/722586/#msg_722586
No idea… If you find out how to do this I’ll be glad to learn.
Hi Do you know how to make the label multiline and wrappable.
You can see an example of a multiline and wrappable lable in the tooltip tutorial
ya i have seen the tutorial . i have an figure with toolbarlayout containing two label as childrens . one displaying an icon and aother displaying text . when i perform direct edit on the label the label text is displayed like bbb…. beyound the bounds of the parent . i would like to increase the parent figure automatically as and when the child resizes
You can retrieve the full size of the label using the Label’s getTextBounds() method. So at the end of the label editing’s action/command, you can also resize its container.
thanks a lot so much for your reply it worked and my container is able to resize accordingly
I want to display any problems in the model in the problem view. Also when the user clicks on the problem view, it should select the particular EditPart (whose model caused the problem ) example => there should be no nodes in gef editor without any outgoing connnection then if u have an node which does not have any outgoing connections and u perform save action . the editor should display that there is no outgoing connection from the node and when clicked on the error in problems view then it should select the particular EditPart (whose model caused the problem )
Hi Karthick. I have not yet worked with the Problems view. From your questions you seem to be developing a complex application, so you should thoroughly read the eclipse plug-in documentation. If you find out things that are not listed in my tutorial I’ll be glad to know. Furthermore, you could open a blog where you can share this with others.
I am working on a project that has very intensive visualizations and needs to be able to actively manipulate these visualizations. Is it possible to render 2D bar-charts and graphs using GEF or GEF3D?
Although I haven’t seen this, I’m pretty sure it can be done since graph2d is a very flexible tool. I heard of some using GEF to plot graphs of tens of thousands of points so I guess performance wise it will also work. I would be glad if you could share with me the results of any checks you do (even if you finish using another framework).