Graph Visualization Plug-in for Eclipse Gong Jun CCIS Northeastern Univ 10/2003 How To Finish your Project within Four Weeks.

Slides:



Advertisements
Similar presentations
Extending Eclipse Kai-Uwe Mätzel IBM OTI Labs Zurich
Advertisements

Introduction to Eclipse plugin development for CSU 670 course project, Selector language (Xaspect) editor plugin implementation.
Developing an Eclipse Plug-in David Gallardo. Platform Runtime Workspace Help Team Workbench JFace SWT Eclipse Project Java Development Tools (JDT) Their.
Using Eclipse. Getting Started There are three ways to create a Java project: 1:Select File > New > Project, 2 Select the arrow of the button in the upper.
 Copyright 2005 Digital Enterprise Research Institute. All rights reserved. The Web Services Modeling Toolkit Mick Kerrigan.
Goals Give you a feeling of what Eclipse is.
PRESENTATION 3 Sri Raguraman CIS 895 Kansas State University.
1 Eclipse Example Guide Example : Java Editor. 2 Introduction l The Java Editor example : »demonstrates the standard features available for custom text.
Android: Hello World Frank Xu Gannon University. Steps Configuration ▫Android SDK ▫Android Development Tools (ADT)  Eclipse plug-in ▫Android SDK and.
Introduction to Java Lab CS110A – Lab Section 004 Instructor: Duo Wei.
Presented by IBM developer Works ibm.com/developerworks/ 2006 January – April © 2006 IBM Corporation. Making the most of Creating Eclipse plug-ins.
Whole Platform Tesi di Dottorato di: RICCARDO SOLMI Università degli Studi di Bologna Facoltà di scienze matematiche, fisiche e naturali Corso di Dottorato.
Views Dwight Deugo Nesa Matic
1 Plug-in Development Environment (PDE) Guide. 2 Introduction to PDE l What is PDE: »a tool designed to help you develop platform plug-ins while working.
Tahir Nawaz Visual Programming C# Week 2. What is C#? C# (pronounced "C sharp") is an object- oriented language that is used to build applications for.
CRSX plug-in development. Prerequisites Software and Libraries Eclipse RCP (3.5 or higher) –Go –Select.
Eclipse is an open source IDE (Integrated Development Environment) for developing applications in Java, C/C++, HTML, Cobol, Perl, etc. The official Eclipse.
Overview of Eclipse Parallel Tools Platform Adam Leko UPC Group HCS Research Laboratory University of Florida Color encoding key: Blue: Information Red:
Lab 8 – C# Programming Adding two numbers CSCI 6303 – Principles of I.T. Dr. Abraham Fall 2012.
11 Getting Started with C# Chapter Objectives You will be able to: 1. Say in general terms how C# differs from C. 2. Create, compile, and run a.
Esri UC2013. Technical Workshop. Technical Workshop 2013 Esri International User Conference July 8–12, 2013 | San Diego, California Creating.NET Add-ins.
PRESENTATION 2 Sri Raguraman CIS 895 Kansas State University.
Duke University Program Design & Construction Course Application Development Tools Sherry Shavor
Definition of the SDK for FIspace Augusto Morales & Hector Bedón UPM.
Deutsches Elektronen-Synchrotron DESY Helmholtz Association of German Research Centres Hamburg, Germany The European X-Ray Laser Project.
Arc: AddIns Dr Andy Evans. Java Direct access to ArcObjects Framework inside and outside Arc. Ability to add components to the GUI. Ability to communicate.
Writing Widgets & Custom Script API for BOY Xihui Chen
Tools for Diagrammatic Specifications Stian Skjerveggen Supervisors: Yngve Lamo, Adrian Rutle, Uwe Egbert Wolter.
ECE 452 / CS 446 / SE464 Design Patterns: Part 2 - Answers A Tutorial By Peter Kim Partially based on the tutorial by Michał Antkiewicz.
Introduction to Eclipse Plug-in Development. Who am I? Scott Kellicker Java, C++, JNI, Eclipse.
ISP666 MVC & Design Patterns. Outline Review Event Programming Model Model-View-Controller Revisit Simple Calculator Break Design Patterns Exercise.
Ontology Engineering and Plugin Development with the NeOn Toolkit Plug-in Development for the NeOn Toolkit June 1st, 2008 Michael Erdmann, Peter Haase,
Vision The ultimate IDE/CASE tool should supports all steps in the software development process. Current tools perform only minimal semantic-level analysis.
Clement Allen, PhD Florida A&M University SUMMER 2006.
Selected Topics in Software Engineering - Distributed Software Development.
Advanced Compiler Design An Introduction to the Javali Compiler Framework Zoltán Majó 1.
ECE 452 / CS 446 / SE464 Design Patterns: Part 2 - Questions A Tutorial By Peter Kim Partially based on the tutorial by Michał Antkiewicz.
BUILD ON THE POLYGLOT COMPILER FRAMEWORK MIHAL BRUMBULLI 7th Workshop “SEERE” Montenegro-Risan 9-14 September 2007 SimJ Programming Language.
John J. Sung TA Consulting. Motivation for TraversalJ KL Enterprises identified AOP Enter into the AOP market early Add value by adding traversals to.
SIMO SIMulation and Optimization ”New generation forest planning system” Antti Mäkinen & Jussi Rasinmäki Dept. of Forest Resource Management.
Abstracting and alternatives for XBRL implementation Abstracting the XBRL Formula Piotr Malczak (GPM Systemy) April 22, 2010.
Nucleus BridgePoint Roadmap Bill Tanner Engineering Manager.
With Jeff Gray and Ira Baxter Robert Tairas Visualization of Clone Detection Results Eclipse Technology Exchange Workshop OOPSLA 2006 Portland, Oregon.
Tool Install How to download & install Java 6 & Eclipse updated version based on Dr. G. L. Ray’s slides.
Celluloid An interactive media sequencing language.
User Profiling using Semantic Web Group members: Ashwin Somaiah Asha Stephen Charlie Sudharshan Reddy.
Project Help CSU 670 Fall 2003 Karl Lieberherr. New Book on AUTHOR = "Erich Gamma and Kent Beck", TITLE = "Contributing.
PRESENTATION 2 Sri Raguraman CIS 895 Kansas State University.
Architecture for an Ontology and Web Service Modelling Studio Michael Felderer & Holger Lausen DERI Innsbruck Frankfurt,
Chapter 1 Introducing Ant. What is ant? Ant is a build tool  Automate the tasks of compiling code, running test, and packaging the results for redistribution.
Plug-in Architectures Presented by Truc Nguyen. What’s a plug-in? “a type of program that tightly integrates with a larger application to add a special.
Faculty Advisor – Dr. Suraj Kothari Client – Jon Mathews Team Members – Chaz Beck Marcus Rosenow Shaun Brockhoff Jason Lackore.
® IBM Software Group © 2007 IBM Corporation Module 1: Getting Started with Rational Software Architect Essentials of Modeling with IBM Rational Software.
ANU comp2110 Software Design lecture 10 COMP2110 Software Design in 2004 lecture 10 Software Architecture 2 of 2 design lecture 5 of 6 Goal of this small.
Managed by UT-Battelle for the Department of Energy Kay Kasemir ORNL/SNS Jan Control System Studio Training - Extension Points:
JavaScript Introduction and Background. 2 Web languages Three formal languages HTML JavaScript CSS Three different tasks Document description Client-side.
An EPICS IDE Using Eclipse Kenneth Evans, Jr. Presented at the EPICS Collaboration Meeting June 15, 2006 Argonne National Laboratory, Argonne, IL.
10 Copyright © 2004, Oracle. All rights reserved. Building ADF View Components.
Orion 'Code Edit': A Really Sweet Stand-Alone Code Editor Eric Moffatt Orion Committer IDS Web IDE (Tooling)
1 Eclipse Example Guide Example : Java Editor. 2 Introduction l The Java Editor example : »demonstrates the standard features available for custom text.
Plug-In Architecture Pattern. Problem The functionality of a system needs to be extended after the software is shipped The set of possible post-shipment.
Eclipse.NET An Integration Platform for ProjectIT-Studio João Saraiva IST & INESC-ID (GSI)
Project Help CSU 670 Fall 2004 Karl Lieberherr. New Book on AUTHOR = "Erich Gamma and Kent Beck", TITLE = "Contributing.
ECLIPSE RICH CLIENT PLATFORM Part 1 Introduction.
Textual Visualization Plug-in for Eclipse Gong Jun CCIS Northeastern Univ 02/2004.
Automata Editor Tool with GEF and EMF
Goals Give you a feeling of what Eclipse is.
.NET and .NET Core Foot View of .NET Pan Wuming 2017.
Presentation transcript:

Graph Visualization Plug-in for Eclipse Gong Jun CCIS Northeastern Univ 10/2003 How To Finish your Project within Four Weeks

What You Already Have A detailed project description. Source codes of a half implemented Eclipse plug-in. An extended DJ package. – Parse the Selector Language – Generate a list of StrategyExpressions and a list of NodeSubsetExpressions. Lab exercises

What You Need to Do Add a syntax sensitive Selector Language Editor to this plug-in. Add traversal highlighting functionality to the Class Diagram Editor. Write your own class dictionary of the Selector Language.

Eclipse Platform Overview The definition from the official website: – Eclipse is a kind of universal tool platform - an open extensible IDE for anything and nothing in particular. The Java compiler itself is a plug-in!!!

Eclipse Platform Overview

Plugin.xml Plug-in Manifest file Plugin_name.jar Plug-in Eclipse core …

What ’ s Inside plug-in.xml Function is added to the system using a common extension model. Extension points – well-defined function points in the system that can be extended by plug-ins When a plug-in contributes an implementation for an extension point, we say that it adds an extension to the platform.

Example

Selector Language Editor A simple extension to org.eclipse.ui.texteditor Add syntax rules. – Syntax coloring is provided in the platform text framework using a model of damage, repair, and reconciling Do Lab exercise 18.

GEF MVC Architecture MVC: Model-View-Controller. Model: represents the data being displayed View: responsible for rendering the data Controller: responsible for handling user input, making changes on the model if necessary, and refreshing the view.

GEF MVC Architecture

MVC Example 5

Class Diagram Editor Model ---- model – BasicSubpart, ClassDiagramModel, Connector BasicSubpart ClassDiagramModelConnector

Class Diagram Editor View ---- figure – ClassFigure, PolylineConnection Anchor. Can be black boxes for this project.

Class Diagram Editor Controller ---- EditPart – ClassEditPart, ConnectorEditPart Installed EditPolicies. EditPart e

ClassDiagramModel A list of all the ClassDiagramModels in the diagram will be given to you. getSourceConnections() method. getTargetConnections() method. isSelected() method. setSelected(boolean b) method. How to have the list of all the connectors?

Construct DJ Class Graph Create a new class graph. – Be sure to use: edu.neu.ccs.demeter.aplib.cd.ClassGraph addConstructionEdge (String source, String name, String target)String addAlternationEdge(String source, String target) addAlternationEdgeString addInheritanceEdge(String source, String target) addInheritanceEdgeString

Construct DJ Traversal Class Graph + Strategy = Traversal. Be sure to use: edu.neu.ccs.demeter.aplib.Traversal getEdgeSets() getEdgeSets getNodeSets() getNodeSets

Show The Path What you get from getEdgeSets() and getNodeSets() are lists of names. getEdgeSets getNodeSets Rescan the ClassDiagramModel list, when a selected ClassDiagramModel is met, setSelect(). If it’s not NodeSubsetLanguage, also scan the Connector list, do the same thing.

The Hooks public static ClassGraph createClassGraph(List nodeList) public static String highlightTraversal (ClassGraph cg, List nodeList, String strategy, boolean is_nodeset) public static String RefreshStrategy(String name) public static boolean isNodeSet(String name)

Good Luck! The End