This document provides an introduction to the Eclipse GEF (Graphical Editing Framework). It outlines key GEF concepts like MVC architecture and basic components. It then walks through an example of creating a graphical editor to display wafers and dies, explaining how to define models, views, and controllers. It describes key classes like EditPart, GraphicalEditor, and GraphicalViewer and how they integrate. The document recommends references for further GEF learning.
How to Protect Your Business Against RansomwareHouse of I.T.
How can you protect your business from a ransomware attack?
#ransomware #infographics #business #security
https://houseofit.com.au/how-to-protect-your-business-against-ransomware/
How to Protect Your Business Against RansomwareHouse of I.T.
How can you protect your business from a ransomware attack?
#ransomware #infographics #business #security
https://houseofit.com.au/how-to-protect-your-business-against-ransomware/
BDI- The Beginning (Big data training in Coimbatore)Ashok Rangaswamy
The main objective of “Big Data intelligence” is to understand all of us better to predict the future. Be it 4 billion google queries a day or 1 billion FB users, we need smarter AI algorithms to learn and connect the dots from the ocean of data. With massive parallelism and Map-Reduce techniques, millions of servers take us one step closer to the “Turing’s Intelligent machine”. Near AI success stories are google, facebook, twitter, youtube and Amazon. Let's begin our journey by knowing big hype, big dreams of 50's , big laws, big growth and basic operations to extract big data intelligence.For more information on Big Data training in coimbatore, please visit https://bigzettab.wordpress.com/ . - Prof. Ashok.R, +91-9943900101, ashok@zettab.com.
Presentation on the principles, philosophy and a few applications of object oriented programming along with a few pointers on how to effectively code. Presented at a session aimed at undergrad computer science students at the University of Pune.
Present along with Mr. Anirudh Tomer and Mr. Toshish Jawale.
Shader programming is typically an esoteric technological area for those that have started off programming game clients using Unity. Since Unity abstracts out the graphics pipeline into an easy to use visual editor, we rarely delve into the inner workings of the programmable GPU
My lecture slides in Advanced Programming with Java course in K.N. Toosi University of Technology about JavaFX.
In this slides I described the basic concept of JavaFX like Shapes, Observer Pattern, Even-Driven Programming and more.
In the Part II I'll describe more advanced topic like FXML applications and CSS styling and more... .
Conquering Gef Part 1: Effectively creating a well designed graphical editorVineet Sinha
The Graphical Editing Framework (GEF) enables developers to create client-side rich graphical editors based on existing domain models.
Eclipse's GEF has a steep learning curve, and at times it can be difficult to understand even for developers fully accustomed to it. There are a number of technical challenges associated with using GEF that developers should be aware of and know how to handle.
We discuss difficulties that GEF developers face, and we enumerate ways to overcome them. Topics include using GEF correctly, implementing features not provided by the framework, and avoiding misuses of GEF that result in errors and bugs. In particular we present thoughts on MVC logic separation, the role of edit policies, customized layouts and graphical techniques, and potential threading concerns. The tips and insights provided by this talk are useful for both new and experienced GEF developers.
See http://www.architexa.com/labs#gef for more information on our work.
Re-architecting visualisations in Java Swingmartinjgraham
hallelujah moment as I realise coding everything from scratch is a waste of time. So I decide to code a toolkit from scratch instead.... well, almost, i extend various Java Swing widgets
WebGL is an exciting new HTML5 JavaScript API that allows for rendering real-time 3D graphics in your web browser without a plugin. The technology is gaining fast acceptance and is allowing for truly amazing applications to be built in a native browser environment that were once considered impossible. This new API has it challenges, as it requires an understanding of the low-level Graphics Pipeline and OpengGL ES 2.0. This talk will cover the basics of 3D graphics and the JavaScript API allowing the audience to take away the steps required to create, initialize and run a WebGL application. The talk will also discuss the current state of browser acceptance of WebGL along with existing libraries that can get you up and running with WebGL even faster.
OpenGL Fixed Function to Shaders - Porting a fixed function application to “m...ICS
Watch the video here: http://bit.ly/1TA24fU
OpenGL Fixed Function to Shaders - Porting a fixed function application to “modern” OpenGL - Webinar Mar 2016
BDI- The Beginning (Big data training in Coimbatore)Ashok Rangaswamy
The main objective of “Big Data intelligence” is to understand all of us better to predict the future. Be it 4 billion google queries a day or 1 billion FB users, we need smarter AI algorithms to learn and connect the dots from the ocean of data. With massive parallelism and Map-Reduce techniques, millions of servers take us one step closer to the “Turing’s Intelligent machine”. Near AI success stories are google, facebook, twitter, youtube and Amazon. Let's begin our journey by knowing big hype, big dreams of 50's , big laws, big growth and basic operations to extract big data intelligence.For more information on Big Data training in coimbatore, please visit https://bigzettab.wordpress.com/ . - Prof. Ashok.R, +91-9943900101, ashok@zettab.com.
Presentation on the principles, philosophy and a few applications of object oriented programming along with a few pointers on how to effectively code. Presented at a session aimed at undergrad computer science students at the University of Pune.
Present along with Mr. Anirudh Tomer and Mr. Toshish Jawale.
Shader programming is typically an esoteric technological area for those that have started off programming game clients using Unity. Since Unity abstracts out the graphics pipeline into an easy to use visual editor, we rarely delve into the inner workings of the programmable GPU
My lecture slides in Advanced Programming with Java course in K.N. Toosi University of Technology about JavaFX.
In this slides I described the basic concept of JavaFX like Shapes, Observer Pattern, Even-Driven Programming and more.
In the Part II I'll describe more advanced topic like FXML applications and CSS styling and more... .
Conquering Gef Part 1: Effectively creating a well designed graphical editorVineet Sinha
The Graphical Editing Framework (GEF) enables developers to create client-side rich graphical editors based on existing domain models.
Eclipse's GEF has a steep learning curve, and at times it can be difficult to understand even for developers fully accustomed to it. There are a number of technical challenges associated with using GEF that developers should be aware of and know how to handle.
We discuss difficulties that GEF developers face, and we enumerate ways to overcome them. Topics include using GEF correctly, implementing features not provided by the framework, and avoiding misuses of GEF that result in errors and bugs. In particular we present thoughts on MVC logic separation, the role of edit policies, customized layouts and graphical techniques, and potential threading concerns. The tips and insights provided by this talk are useful for both new and experienced GEF developers.
See http://www.architexa.com/labs#gef for more information on our work.
Re-architecting visualisations in Java Swingmartinjgraham
hallelujah moment as I realise coding everything from scratch is a waste of time. So I decide to code a toolkit from scratch instead.... well, almost, i extend various Java Swing widgets
WebGL is an exciting new HTML5 JavaScript API that allows for rendering real-time 3D graphics in your web browser without a plugin. The technology is gaining fast acceptance and is allowing for truly amazing applications to be built in a native browser environment that were once considered impossible. This new API has it challenges, as it requires an understanding of the low-level Graphics Pipeline and OpengGL ES 2.0. This talk will cover the basics of 3D graphics and the JavaScript API allowing the audience to take away the steps required to create, initialize and run a WebGL application. The talk will also discuss the current state of browser acceptance of WebGL along with existing libraries that can get you up and running with WebGL even faster.
OpenGL Fixed Function to Shaders - Porting a fixed function application to “m...ICS
Watch the video here: http://bit.ly/1TA24fU
OpenGL Fixed Function to Shaders - Porting a fixed function application to “modern” OpenGL - Webinar Mar 2016
Improperly architected applications may work, may perform well, and may meet the acceptance criteria, but the ability to maintain them degrades over time. This presentation will show some of the common mistakes made when building large web applications, how to be aware of them, correct them, and hopefully prevent them.
Mixing Diagram, Tree, Text, Table and Form editors to build a kick-ass modeli...Chauvin Mariot
The last few years Obeo has built - mainly for corporate customers - several modeling workbenches dedicated to various domains : from enterprise applications to embedded system going through the insurance portfolios management. For each of those project defining a specific vocabulary leveraging the domain concepts was a key success factor but was not the only one : the ability to easily adapt the associated meta-model and the associated workbench, to support rich user interactions hiding some complexity and leveraging several kind of representations in a coherent environment were important factors too : they allowed us to adapt the tooling to the customer's methodology.
Threats to mobile devices are more prevalent and increasing in scope and complexity. Users of mobile devices desire to take full advantage of the features
available on those devices, but many of the features provide convenience and capability but sacrifice security. This best practices guide outlines steps the users can take to better protect personal devices and information.
GraphSummit Singapore | The Art of the Possible with Graph - Q2 2024Neo4j
Neha Bajwa, Vice President of Product Marketing, Neo4j
Join us as we explore breakthrough innovations enabled by interconnected data and AI. Discover firsthand how organizations use relationships in data to uncover contextual insights and solve our most pressing challenges – from optimizing supply chains, detecting fraud, and improving customer experiences to accelerating drug discoveries.
Communications Mining Series - Zero to Hero - Session 1DianaGray10
This session provides introduction to UiPath Communication Mining, importance and platform overview. You will acquire a good understand of the phases in Communication Mining as we go over the platform with you. Topics covered:
• Communication Mining Overview
• Why is it important?
• How can it help today’s business and the benefits
• Phases in Communication Mining
• Demo on Platform overview
• Q/A
UiPath Test Automation using UiPath Test Suite series, part 6DianaGray10
Welcome to UiPath Test Automation using UiPath Test Suite series part 6. In this session, we will cover Test Automation with generative AI and Open AI.
UiPath Test Automation with generative AI and Open AI webinar offers an in-depth exploration of leveraging cutting-edge technologies for test automation within the UiPath platform. Attendees will delve into the integration of generative AI, a test automation solution, with Open AI advanced natural language processing capabilities.
Throughout the session, participants will discover how this synergy empowers testers to automate repetitive tasks, enhance testing accuracy, and expedite the software testing life cycle. Topics covered include the seamless integration process, practical use cases, and the benefits of harnessing AI-driven automation for UiPath testing initiatives. By attending this webinar, testers, and automation professionals can gain valuable insights into harnessing the power of AI to optimize their test automation workflows within the UiPath ecosystem, ultimately driving efficiency and quality in software development processes.
What will you get from this session?
1. Insights into integrating generative AI.
2. Understanding how this integration enhances test automation within the UiPath platform
3. Practical demonstrations
4. Exploration of real-world use cases illustrating the benefits of AI-driven test automation for UiPath
Topics covered:
What is generative AI
Test Automation with generative AI and Open AI.
UiPath integration with generative AI
Speaker:
Deepak Rai, Automation Practice Lead, Boundaryless Group and UiPath MVP
Epistemic Interaction - tuning interfaces to provide information for AI supportAlan Dix
Paper presented at SYNERGY workshop at AVI 2024, Genoa, Italy. 3rd June 2024
https://alandix.com/academic/papers/synergy2024-epistemic/
As machine learning integrates deeper into human-computer interactions, the concept of epistemic interaction emerges, aiming to refine these interactions to enhance system adaptability. This approach encourages minor, intentional adjustments in user behaviour to enrich the data available for system learning. This paper introduces epistemic interaction within the context of human-system communication, illustrating how deliberate interaction design can improve system understanding and adaptation. Through concrete examples, we demonstrate the potential of epistemic interaction to significantly advance human-computer interaction by leveraging intuitive human communication strategies to inform system design and functionality, offering a novel pathway for enriching user-system engagements.
How to Get CNIC Information System with Paksim Ga.pptxdanishmna97
Pakdata Cf is a groundbreaking system designed to streamline and facilitate access to CNIC information. This innovative platform leverages advanced technology to provide users with efficient and secure access to their CNIC details.
GridMate - End to end testing is a critical piece to ensure quality and avoid...ThomasParaiso2
End to end testing is a critical piece to ensure quality and avoid regressions. In this session, we share our journey building an E2E testing pipeline for GridMate components (LWC and Aura) using Cypress, JSForce, FakerJS…
DevOps and Testing slides at DASA ConnectKari Kakkonen
My and Rik Marselis slides at 30.5.2024 DASA Connect conference. We discuss about what is testing, then what is agile testing and finally what is Testing in DevOps. Finally we had lovely workshop with the participants trying to find out different ways to think about quality and testing in different parts of the DevOps infinity loop.
A tale of scale & speed: How the US Navy is enabling software delivery from l...sonjaschweigert1
Rapid and secure feature delivery is a goal across every application team and every branch of the DoD. The Navy’s DevSecOps platform, Party Barge, has achieved:
- Reduction in onboarding time from 5 weeks to 1 day
- Improved developer experience and productivity through actionable findings and reduction of false positives
- Maintenance of superior security standards and inherent policy enforcement with Authorization to Operate (ATO)
Development teams can ship efficiently and ensure applications are cyber ready for Navy Authorizing Officials (AOs). In this webinar, Sigma Defense and Anchore will give attendees a look behind the scenes and demo secure pipeline automation and security artifacts that speed up application ATO and time to production.
We will cover:
- How to remove silos in DevSecOps
- How to build efficient development pipeline roles and component templates
- How to deliver security artifacts that matter for ATO’s (SBOMs, vulnerability reports, and policy evidence)
- How to streamline operations with automated policy checks on container images
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024Albert Hoitingh
In this session I delve into the encryption technology used in Microsoft 365 and Microsoft Purview. Including the concepts of Customer Key and Double Key Encryption.
Pushing the limits of ePRTC: 100ns holdover for 100 daysAdtran
At WSTS 2024, Alon Stern explored the topic of parametric holdover and explained how recent research findings can be implemented in real-world PNT networks to achieve 100 nanoseconds of accuracy for up to 100 days.
2. Outlines
• What’s GEF?
• Basic Concepts in GEF
• Brief Introduction to Draw2d
• Dive into a Real Case – How to draw a wafer and dies on it?
• Summary
• References
3. What’s GEF?
• Stands for Graphical Editing Framework
• A library to ease the task of building a graphical editor, in
Eclipse
• Model – View – Controller Architecture
8. Model View Controller
• Hold all data you • Not hold any • Make the link
want to be edited important data between M and V
by the users • Know nothing • In GEF, controllers
• Know nothing about the model are subclasses of
about the view EditPart.
• Must be
• Must implement completely dumb
some kind of
notification • In GEF, view is
mechanism built with Draw2d
Figures
11. Brief Introduction to Draw2d
• a lightweight system of graphical components
• Its purpose is only to show things on the screen, not to hold
and manipulate any data.
• Figures
13. • Interesting features
• Layout Managers
• Hit-testing
• Events
• Predefined types of Figures
• Predefined types of Borders
• Connections
• Cursors and tooltips
• Layers
14. Dive into a Real Case –
How to draw a wafer and dies on it?
Q: What is in
your mind now?
How to solve
this problem?
Die
Wafer
15. Maybe…
• We need to write a model to represent wafer, die and their
relations.
• We need to write the view to represent them on screen to
users.
• And also create subclasses of EditPart (controllers).
16. Model classes? Emm… seems easy!
Just my own implementation.
If you have better idea, let me
know!
Q: What’s the relationship
between Wafer and Die?
17. View classes (Let’s simplify it)
• A wafer is a round plate.
• A die is a square.
Ellipse RectangleFigure
If so, I believe there must be predefined figures
in draw2d to represent ellipse and rectangle!
18. The next is the subclasses of EditPart!
• Actually, we are going to use AbstractGraphicalEditPart (an
abstract class which implements the interface of EditPart).
a class org.eclipse.gef
g
«abstract»
AbstractGraphicalEditPart
+ createEditPolicies() : void
+ createFigure() : IFigure
Q: What is createFigure() used
for?
Q: How to derive it and create the link
between model and view?
Q: How many subclasses do we need? 1 or
2?
19. We need 2! One for Wafer, the other is for Die.
Cover this line first!
Return an Ellipse
Tell GEF what is my model children
21. All classes are ready! How to integrate them into
Eclipse?
• In Eclipse, editing action happens in some Editors!
• We call such classes as EditorParts.
• Graphical editing action also happens there!
G
class org.eclipse.gef.editpart
EditorPart
GraphicalEditor
+ setEditPartFactory(EditPartFactory) : void
+ setRootEditPart(RootEditPart) : void
GraphicalViewer
+ setContents(Object) : void
GraphicalEditorWithFlyoutPalette GraphicalEditorWithPalette
22. Oh, many new classes! See this sample
Palette GraphicalEditor GraphicalViewer
23. Data Flow Wait! the parameter is Object!
How does GEF know it is a wafer object
Wafer Data and create WaferPart?
GraphicalEditor
GraphicalViewer
Wafer View
WaferPart
Die View
DiePart
31. Summary
• You should know…
• The basic concepts of GEF, draw2D and MVC archiecture
• How to write model, view and controller
• What GraphicalEditor and GraphicalViewer are.
• How to use EditorPartFactory
• How to use LayoutManager
• Next, in Part II, I will cover…
• how to add EditPolicy
• how to do notification?
• how to use EditDomain?
• How to add Tool and Commands?
• …
32. References
• GEF Main Page (http://www.eclipse.org/gef/)
• Good GEF tutorial (http://wiki.eclipse.org/GEF_Description,
http://wiki.eclipse.org/GEF_Description2)
• Good Chinese GEF tutorial (
http://liugang594.iteye.com/blog/152084,
http://liugang594.iteye.com/blog/152086,
http://liugang594.iteye.com/blog/152087)