E N D
1. DEV-6: Introduction to the OpenEdge® Advanced GUI
2. DEV-6: Introduction to the OpenEdge Advanced GUI Agenda What is the New UI
Advanced GUI Overview
Architectural Overview
Visual Designer Demo
Q & A
3. DEV-6: Introduction to the OpenEdge Advanced GUI Under Development This talk includes information about potential future products and/or product enhancements.
What I am going to say reflects our current thinking, but the information contained herein is preliminary and subject to change. Any future products we ultimately deliver may be materially different from what is described here.
4. DEV-6: Introduction to the OpenEdge Advanced GUI A Microsoft® .NET™ based Windows graphical user interface that can replace or be integrated into an existing OpenEdge GUI Client What is the New UI?
5. DEV-6: Introduction to the OpenEdge Advanced GUI Why an OpenEdge GUI for .NET? Microsoft Windows is the market leader for desktop applications
De-facto standard
Competitive
Start-of-the-art user interfaces
Microsoft .NET Windows Forms is purposed for line of business applications
Model-View-Presenter (MVP) pattern
Data-centric UI controls
ADO.NET maps well to a ProDataSet™
6. DEV-6: Introduction to the OpenEdge Advanced GUI .NET UI Components Wealth of .NET controls
Microsoft and Infragistics®
Other 3rd party controls
.NET Extender providers
Cross-control functionality (Tooltips, Errors)
.NET User Controls
User-defined custom controls
7. DEV-6: Introduction to the OpenEdge Advanced GUI What is it Called? New UI
Project name: “OpenEdge Advanced GUI”
Not a product…
A feature of OpenEdge
Develop using OpenEdge Architect or ABL development products
New control set
Project name: “OpenEdge Advanced UI Controls”
Will be a product… optional add-on
Add-on to OpenEdge development products
Bundle of controls from Infragistics that extends the .NET UI development capability
8. DEV-6: Introduction to the OpenEdge Advanced GUI Who is the target audience? ABL Developers using OpenEdge Architect…
Seeking to build extremely modern and appealing .NET graphical user interface…
Through the ease of ABL
9. DEV-6: Introduction to the OpenEdge Advanced GUI Target audience characteristics Customers using OpenEdge Architect…
For customers on OpenEdge
Comfortable with Object Oriented concepts
Seeking to build extremely modern and appealing .NET graphical user interface…
Windows oriented for development and user client
Through the ease of ABL
Desires an OpenEdge-centric development environment
10. DEV-6: Introduction to the OpenEdge Advanced GUI Development Methodology
Early POC and Usability input from customers
Structured “Technology Preview” approach; Beta; GA
Expected dates
Technology Previews released during 2007
Beta test target Q3 2008
General Availability target 2H 2008
Interested?
Beta signup will be open at Exchange!
www.progress.com/openedge/beta
11. DEV-6: Introduction to the OpenEdge Advanced GUI What reviewers are saying…
12. DEV-6: Introduction to the OpenEdge Advanced GUI Leverages the ABL
Single language; No need to learn C#, VB.NET
Data binding between ABL data sources and UI controls
Event binding between ABL methods and UI events
Single design center: OpenEdge Architect
No need to purchase, learn or use non-OpenEdge products (Visual Studio®)
Benefits:
Shorter ramp-up ? Higher productivity
Built-in data binding ? Purposed for business applications
Built on OpenEdge: Deployment and data source flexibility Primary Features and Benefits
13. DEV-6: Introduction to the OpenEdge Advanced GUI Integrates with existing GUI (at container level)
Independent of deployment topology (C/S or n-tier)
Extensible with 3rd party controls and custom controls
Adaptable to future UI enhancements or other emerging UIs
Benefits:
Adopt at your own pace
Contemporary Windows look and feel without compromise
Architected for investment protection Primary Features and Benefits
14. DEV-6: Introduction to the OpenEdge Advanced GUI How does it compare to other OpenEdge UI Technologies?
15. DEV-6: Introduction to the OpenEdge Advanced GUI
16. DEV-6: Introduction to the OpenEdge Advanced GUI OpenEdge GUI Architecture (“Classic”)
17. DEV-6: Introduction to the OpenEdge Advanced GUI Advanced GUI Architecture (“New”)
18. DEV-6: Introduction to the OpenEdge Advanced GUI ABL Extensions Progress.Windows.Form
ABL forms inherit from this class
InitializeComponent method (generated)
Progress.Data.BindingSource
New ABL object to access Progress data sources
Extends .NET BindingSource class
Binds .NET control to ABL data source (query)
Event Subscription
Subscribe method added to every .NET event
Takes an ABL method / procedure name
19. DEV-6: Introduction to the OpenEdge Advanced GUI A Closer Look into the Advanced GUIPresentation Layer
20. DEV-6: Introduction to the OpenEdge Advanced GUI A Closer Look into the Advanced GUI Presentation Layer
21. DEV-6: Introduction to the OpenEdge Advanced GUI Advanced GUI ABL Language
22. DEV-6: Introduction to the OpenEdge Advanced GUI Advanced GUI Tools Architecture
23. DEV-6: Introduction to the OpenEdge Advanced GUI WYSIWYG Form creation and editing
Define Form
Add .NET controls
Set properties of controls and components
Define data binding objects
Add event subscriptions
Class Browser
Displays class member information about ABL and .NET classes Visual Designer
24. DEV-6: Introduction to the OpenEdge Advanced GUI Visual Designer Perspective
25. DEV-6: Introduction to the OpenEdge Advanced GUI Generated code for a form
26. DEV-6: Introduction to the OpenEdge Advanced GUI Advanced GUI Demo
27. DEV-6: Introduction to the OpenEdge Advanced GUI Visual Designer Perspective
28. DEV-6: Introduction to the OpenEdge Advanced GUI Advanced GUI Prerequisites ABL Programming
Object-oriented ABL
.NET Windows Form Framework Classes
.NET Infragistics Windows Form Classes
OpenEdge Architect
WYSIWYG Visual Designer
Properties view and Control Toolbox
Object-oriented Class Browser
29. DEV-6: Introduction to the OpenEdge Advanced GUI Preparing for Advanced GUI Move to OpenEdge 10… Ideally 10.1C
Move UI logic to methods
Consider UI Design
Get familiar with OOABL constructs and syntax
Create and access UI objects
Call methods, access properties
Subscribe to UI events
Beta signup
30. DEV-6: Introduction to the OpenEdge Advanced GUI Exchange Content OpenEdge Advanced GUI DEV-16 Leveraging the Power of the Advanced GUI
Tony Vertenten, Intris
Erwin in ‘t Veld, CCS
Roland de Pijper, Eric Debeij, Progress
DEV-29 Deep Dive into Developing with Advanced GUI
Shelley Chase, Product Architect, Progress
DEV-32 Using the Advanced GUI, Structured Error Handling and SonicMQ to build a Semi-Disconnected Point of Sale
Brian Preece and Romin Sanai, BCP Software
DEV-40 Using SmartObjects with Advanced GUI
Mike Fechner, ConsultingWerk
DEV-43 OpenEdge Tools and User Interface Info Exchange
Jim Lundy, Principal Product Manager, Progress
31. DEV-6: Introduction to the OpenEdge Advanced GUI What are your questions?What are your questions?
32. DEV-6: Introduction to the OpenEdge Advanced GUI Thank you for your time.Thank you for your time.
33. DEV-6: Introduction to the OpenEdge Advanced GUI