SlideShare a Scribd company logo
JMP102:
Creating a Great
XPages User Interface
Howard Greenberg, TLCC
Paul Della-Nebbia, TLCC

© 2014 IBM Corporation
Acknowledgements and Disclaimers
Availability. References in this presentation to IBM products, programs, or services do not imply that they will be available in all countries in which IBM operates.
The workshops, sessions and materials have been prepared by IBM or the session speakers and reflect their own views. They are provided for informational purposes only, and are neither
intended to, nor shall have the effect of being, legal or other guidance or advice to any participant. While efforts were made to verify the completeness and accuracy of the information
contained in this presentation, it is provided AS-IS without warranty of any kind, express or implied. IBM shall not be responsible for any damages arising out of the use of, or otherwise
related to, this presentation or any other materials. Nothing contained in this presentation is intended to, nor shall have the effect of, creating any warranties or representations from IBM or
its suppliers or licensors, or altering the terms and conditions of the applicable license agreement governing the use of IBM software.
All customer examples described are presented as illustrations of how those customers have used IBM products and the results they may have achieved. Actual environmental costs and
performance characteristics may vary by customer. Nothing contained in these materials is intended to, nor shall have the effect of, stating or implying that any activities undertaken by you
will result in any specific sales, revenue growth or other results.

© Copyright IBM Corporation 2014. All rights reserved.
 U.S. Government Users Restricted Rights - Use, duplication or disclosure restricted by GSA ADP Schedule Contract with IBM Corp.
 IBM, the IBM logo, ibm.com, Domino, and Notes are trademarks or registered trademarks of International Business Machines Corporation in the United States, other countries, or both. If
these and other IBM trademarked terms are marked on their first occurrence in this information with a trademark symbol (® or ™), these symbols indicate U.S. registered or common law
trademarks owned by IBM at the time this information was published. Such trademarks may also be registered or common law trademarks in other countries. A current list of IBM
trademarks is available on the Web at “Copyright and trademark information” at www.ibm.com/legal/copytrade.shtml
Other company, product, or service names may be trademarks or service marks of others.

2
Who are we?
 Howard Greenberg & Paul Della-Nebbia
– Teaching Notes and Domino since 1994
– Partners at TLCC, the Leader in Notes and Domino Training
– And Now, the Leader in XPages Training

3
About TLCC
 Lots of XPages Courses for both 9 and 8.5!
‒
‒
‒
‒
‒

Introduction to XPages Development … FREE !!
JavaScript for XPages Development
XPages Development 1
XPages Development 2
Rapid XPages Development Using the Application
Layout and Dojo UI Controls
‒ Mobile XPages for Domino
‒ Java 1 for XPages Developers
‒ Java 2 for XPages Developers

 Self Paced Training
‒ Learn anywhere!
‒ An Instructor is a click away
 Instructor Led (Private)
‒ Online or at your site
 TLCC Mentoring Services
4
Goal: Make a More Usable, Better Looking XPages
Application!

Data View

View Panel
Demo100_ViewPanel
Demo761_CustByNameView

5
 Prerequisites & Configuration
 Form Table control
 Data View control
 Dojo Form controls
 Dialogs and Value pickers
 Navigation controls
 Application Layout Design Framework
 Wrap up

6
System Prerequisites
 Notes and Domino 8.5.3 (Install Extension Library from
OpenNTF or IBM’s Update Pack 1)
– Domino Server
• Copy files or use an Update Site Database (preferred)
– Designer
• Install Plugin
– Notes client (only needed for XPINC apps)
• Use Update Site
 Notes and Domino 9 (Extension Library is already included for
Domino server, Designer, and Notes clients)
– Optionally install Bootstrap4XPages plugin - to use Bootstrap
and Bootstrap responsive themes

7
Application Configuration

8
 Prerequisites & Configuration
 Form Table control
 Data View control
 Dojo Form controls
 Dialogs and Value pickers
 Navigation controls
 Application Layout Design Framework
 Wrap up

9
Form Table
 Quickly create input area for editing and
reading
 Server-side validation error messages
– Either at top or next to field control
 Header area
– title and description at top
– content area
 labels can be positioned above or left of
the input controls
 required field indicator ( * )

Note: Need IBM OneUIV2 Theme to display (or
BootStrap4Xpages)

 Footer area (use for buttons)
 Multi-column
Demo101_FormTable
10
What’s a facet?
 Not a flat surface of a jewel, think the other definition
– “part or element of something”
 It is a place to add control(s) to a control
 Either Named or Unnamed
– Example of Unnamed
• Where the Form Column and Form Row controls
go in the Form Table control
• Can have as many as you want
– Example of Named
• Footer area of Form Table
• Uses the XP:Key to denote where the facet area is
attached to
• Can only have ONE (but can add a panel)
 Used Extensively on XPages Controls
11
Named versus Unnamed Facets

12
 Prerequisites & Configuration
 Form Table control
 Data View control
 Dojo Form controls
 Dialogs and Value pickers
 Navigation controls
 Application Layout Design Framework
 Wrap up

13
Data View

Data View

View Panel

14
What’s Better About the Data View
 A completely different interface
– styling differences for links, pagers, column headings, column text, etc…
 A Summary column (or facet to add anything)
 A row detail area
– shown or hidden all at once or individually
– can have other controls to allow:
• in-view editing
• look-ups to other data
• single page read-only applications
 additional pager types and locations available
 additional columns are right-aligned
 Note: Need IBM OneUIV2 Theme to display (or Bootstrap4XPages)
15
New Pagers
 New pagers in addition to standard pager control
– Use with any iterator control (repeat, Data
Table, View)
 pagerDetail – show/hide details for all rows (Data
View only)
 pagerSizes - choose the number of rows per
page to display
 pagerAddRows - append more rows (great for
mobile)
 pagerExpand – expand/collapse all rows)
 pagerSaveState – Not really a pager,
save/restore the view state (return to same page)
– Used with viewStateBean
16

Demo151DataView
Demo153DataView
Demo154DataView
 Prerequisites & Configuration
 Form Table control
 Data View control
 Dojo Form controls
 Dialogs and Value pickers
 Navigation controls
 Application Layout Design Framework
 Wrap up

17
Dojo Form Controls
 An easy way to increase input usability!
 Client-side – does not require a server round-trip
 Uses Dojo Toolkit
– 1.8 for Domino 9, 1.6 for 8.5.3
 Either extends a control with added functionality
– Dojo Combo Box
 Or, adds entirely new functionality
– Dojo Slider Rule or Dojo Number Spinner

18
Dojo Validation Text Box
 Immediately validate text entry using:
– Required: user must enter something
– A Regular Expression to validate content
 User sees prompt when entering field
 User gets immediate feedback
 No JavaScript alerts!
 Must Require User Input
– Either set the required property to true
– Or, provide a Required Validator
 Optionally, provide a Regular Expression
 Server Side Validators (like length) still use Error
Message Control

19

Demo210_ValidationTextBox
Dojo Combo Box and Filtering Select
 Provides Type Ahead along with a drop-down selection
– Dojo Combo Box allows the entry of values not in list
– Dojo Filtering Select only allows user to select supplied values
 Optionally can limit the number of items shown
 Filtering Select adds support for:
– label | value pairs
– built-in validation for entered values
– Can provide a tooltip prompt
 Tip! Create a standard Combo Box to build Select Items and copy
via source view to the Dojo Combo Box or Filtering Select

Demo220_FilteringSelect

20
Dojo Number Text Box and Dojo Currency Text Box
 Add number constraints with messages displayed as a tooltip
– User gets immediate feedback
 Can provide a tooltip prompt
 Can set a pattern (to standardize format instead of allowing for
locale changes)
 Can set decimal places
 Display Options
– Decimal
– Percent
– Currency

Demo230_Number

 Currency Text Box adds ability to fix the currency symbol
– ISO 4217 three letter sequence

21
Dojo Spinner
 User can type in a number or use up/down arrows
 Extension of Dojo Number Text Box
 Set constraints and tooltips
 Set a value for the increment/decrement when:
– User uses up or down arrow keys or clicks arrow (smallDelta)
– User uses page up or down key (largeDelta)

Demo240_Spinner

22
Dojo Slider
 Horizontal or Vertical (two different controls)
 User can drag slider, use arrows, or click on slider to set value
 Optional Slider Rule and Slider Rule Labels
 Set a value for the increment/decrement when:
– User uses up or down arrow keys or clicks arrow (smallDelta)
– User uses page up or down key (largeDelta)
 User does not see value selected
– Can add via the onchange Client side event
– Get the value via CSJS and write to a computed field

Demo250_Slider
23
 Prerequisites & Configuration
 Form Table control
 Data View control
 Dojo Form controls
 Dialogs and Value pickers
 Navigation controls
 Application Layout Design Framework
 Wrap up

24
Dialog Control
 Displays a modal dialog
 Related controls (optional but useful!)
– dialogButtonBar – placeholder for buttons
– dialogContent – placeholder for content
 Opening and Closing a Dialog Control
– Client Side JavaScript
• XSP.openDialog("#{id:dialogId }")
• XSP.closeDialog("#{id:dialogId }","#{id:refreshId }" );
– Server Side JavaScript (use getComponent(“id”) for dialogComponent)
• dialogComponent.show( )
• dialogComponent.hide(refreshId )

25
Dialog Control Strategies
Different ways to accept input and pass values back to “calling” page
 Use the same data source for both “calling” page and dialog
– easy to implement
 Have a different data source for dialog content
– Dialog close button saves data source in dialog
 Bind the same scoped variables in dialog and on “calling” page
 Pass values using the getValue() and setValue() methods
– Use getValue() to get values from dialog controls
– Use setValue() to write to controls on “calling” page
– Least preferred way!

Demo310DataView
Demo310Input

26
Value Picker
 Present a dialog to user to select a value(s)
 Data Providers
– xe:simpleValuePicker - hard coded or computed choices
– xe:dominoViewValuePicker – uses Domino view
– xe:beanValuePicker – the choices are from a Java bean
 Value Picker is for selection only, must be bound to a control
like an Edit Box which is bound to the data source
 Options
– Support for Label | Value pairs (value is always first sorted
column in view)
– Single or Multi-value
– Optionally use checkboxes
– Add search capability
– Type Ahead in Edit Box (values are from Value Picker)
27

Demo320_ValuePicker
Value Picker Validation
 Can set target control to only allow values that are in the Value Picker
– Use case: When user types in a value in the target control (Edit Box)
 New Validator: xe:pickerValidator

Demo330_ValuePickerValidation

28
Dojo List Text Box and Value Pickers
 Works Great Together!
 In Edit mode user can delete entries with the X
 In Read mode only the values show
 Specify a MultipleSeparator
 Works with Label | Value Pairs too
– displayLabel property set to true
 Use onChange event to trigger refresh if needed

29

Demo340_DojoListTextBox
Tooltip and Tooltip Dialog
 Both display a tooltip with content
– Non-modal, they go away when user clicks elsewhere or moves cursor
 Tooltip is for displaying text when user hovers over a control
– Tooltip goes away when user moves cursor off control
– Doesn’t work for all controls or for panels
– Tie the Tooltip control to the desired control the user hovers over
 Tooltip Dialog is opened via code

30
Tooltip
 Used for displaying information when user hovers over a control
– Goes away when user moves mouse off control (onMouseOut)
– No need for any code
 for property defines what control
 Either use:
– label property for one value (Simple)
– Put content between tooltip tags and set dynamicContent=“true” (Complex)

Demo350_Tooltip
31
Tooltip Dialog
 Useful to allow user to edit information
– Requires code to open
– Closes when user clicks outside toolip or via code (button or link)
 Open via Client Side JavaScript
– XSP.openTooltipDialog("#{id:tooltipDialogId }","#{id:tooltipTargetId }")
– No Server Side equivalent
 Close via Client Side or Server Side JavaScript
– Client Side: XSP.closeTooltipDialog("#{id:tooltipDialogId }","#{id:refreshId }" );
– Server Side: dialogComponent.hide(refreshId )
 Put all content inside TooltipDialog tags
– No label property like Tooltip

32
Dialog vs. Tooltip Dialog

Dialog
Tooltip Dialog

Demo360_DojoTooltipDialog
33
InPlaceForm
 Displays a dialog “in-line” on the page
– Shifts contents down (unlike Tooltip Dialog)
– Only closed via buttons
 Related controls (optional but useful!)
– dialogButtonBar – placeholder for buttons
– dialogContent – placeholder for content
 Creates components when opened
 Opened and closed via SSJS
 Great for use in a Data View, Repeat, etc.

34
InPlaceForm Methods, Properties, and Events
 Open the InPlace Form
– inPlaceFormComponent.show( )
 Close the InPlace Form
– inPlaceFormComponent.hide( )
 Toggle the InPlaceForm
– inPlaceFormComponent.toggle( )
 Determine if InPlaceForm is being shown/hidden
– inPlaceFormComponent.isVisible( )
 Events (SSJS only)
– beforeContentLoad
– afterContentLoad

Demo370_InPlaceForm
35
Inline View Editing Made Easy!
 Edit Domino data right in the view!
 Use a Data View with an InPlace Form in the Details

Demo380_InPlaceForm_DataView
36
 Prerequisites & Configuration
 Form Table control
 Data View control
 Dojo Form controls
 Dialogs and Value pickers
 Navigation controls
 Application Layout Design Framework
 Wrap up

37
Navigation Controls
 Dozen or so navigation type controls
 Most use TreeNodes for items
 Set submitValue property for each item
– onItemClick event to find out what user clicked (CSJS or SSJS)
 Navigator control is most useful when combined with Application
Layout control
– selected property used to determine which item is highlighted

38
Tree Nodes – Builds the list
 xe:basicLeafNode
 xe:basicContainerNode
 xe:separatorTreeNode
 xe:dominoViewEntriesTreeNode
 xe:dominoViewListTreeNode
 xe:pageTreeNode
 xe:repeatTreeNode
 xe:loginTreeNode
 xe:userTreeNode
 xe:beanTreeNode
39
One onItemClick event per control
 Code to determine what the user clicked (submitValue property is returned)
– CSJS … XSP.getSubmitValue()
– SSJS … context.getSubmittedValue()

40

DemoXPage617
Navigator control
 Best navigator control for use in LeftColumn
facet of Application Layout control
– node for currently displayed page is
automatically selected (pageTreeNode)
– selected property can be coded when
other types of nodes
• dominoViewEntriesTreeNode
• dominoViewListTreeNode

41

DemoXPage619
DemoXPage621a, 621b, 621c
Toolbar control
 Good control for functionality of Form and View Action Bars

42

DemoXPage652View
DemoXPage652Input
Popup Menu control
 Popup menu navigation
 Code an event on a button or link to popup the menu using XSP.openMenu

DemoXPage642
43
 Prerequisites & Configuration
 Form Table control
 Data View control
 Dojo Form controls
 Dialogs and Value pickers
 Navigation controls
 Application Layout Design Framework
 Wrap up

44
Six Facets and Five Bar Areas

45
One onItemClick event for All Nodes in Configuration
 onItemClick – triggered when any node in any of its configuration properties is fired,
including:
– bannerApplicationLinks
SSJS - get submitted value for clicked node:
– bannerUtilityLinks
– titleBarTabs
– placeBarActions
– footerLinks
CSJS - get the submit value for clicked node:

DemoXPage711, DemoXPage712

46
Designing an Application Layout in a Custom Control

Demo761_CustByNameView

47
Designing an Application Layout in a Custom Control
 Enable all six facet areas in the
applicationLayout by adding an Editable
Area control (xp:callback) to each facet

 Add Property Definitions to the custom
control to pass property values from the
XPage to ccAppLayout (like
navigationPath, enableSearch,
enableSalesBar enablePartsBar, etc…)

48
Designing an Application Layout in a Custom Control
(procedure)
 Step 1: Create a Custom Control and drag in an Application Layout control
– Choose a OneUI version 2.1 theme

49
Designing an Application Layout in a Custom Control
(procedure continued)
 Step 2: Set the configuration properties:
– Banner nodes
– Title Bar nodes (tabs)
– Place Bar nodes (buttons)
– Footer links
– Legal text

50
Designing an Application Layout in a Custom Control
(procedure continued)
 Step 3: Enable required columns (not the recommended approach)
– Left column
– Middle column
– Right column

51
Designing an Application Layout in a Custom Control
(procedure continued)
 Step 3: Enable ALL SIX facet areas in the applicationLayout by adding an
Editable Area control (xp:callback) to each facet

52
Designing an Application Layout in a Custom Control
(procedure continued)
 Step 3 continued: Establish a Naming Convention for facets and panels

53
Designing an Application Layout in a Custom Control
(procedure continued)
 Step 4: Add Property Definitions to the custom control to pass property values from the
XPage to ccAppLayout (like navigationPath, enableSearch, enableSalesBar, etc…)

54
Navigation and Context – You are Here!

Demo761_AppLayout (custom control)
Demo761_CustByNameView

55
Application Configuration for Bootstrap4XPages
 Install Bootstrap4XPages plugin
– Domino sever
– Domino Designer
– Notes client (for XPiNC)
 Application settings (xsp.properties)
– xsp.library.depends=
com.ibm.xsp.extlib.library,
org.openntf.xsp.bootstrap.library
– xsp.theme= (one of these)
• bootstrapv2.3.2
• bootstrapv2.3.2r
• bootstrapv3.0.0

56

DemoXPage721
 Prerequisites & Configuration
 Form Table control
 Data View control
 Dojo Form controls
 Dialogs and Value pickers
 Navigation controls
 Application Layout Design Framework
 Wrap up

57
Get the Slides and Demo Database

http://www.tlcc.com/JMP102

58
Key Points
 Great stuff in the Extension Library
– Build better looking apps faster
 Data View and Form Table make your apps look very Web 2.0
 OneUI is a very good idea
 The Application Layout control is used to Rapidly develop a consistent user interface that
can implement the “One UI” design framework (awesome)
 Application Layout control + Bootstrap4XPages (totally awesome)

59
Other Suggested Sessions
 BP202 - Rapid XPages Development Using the Application Layout Control, Thursday at 11:00
– with Howard and Paul!
 SHOW102 - XPages: Still No Experience Necessary, Wednesday at 10:30
 CUST104 - XPages at SMC Corporation: See how XPages can drive business forward, Wednesday at 11:15
 AD302 - Get the Best Out of Bootstrap with Bootstrap4XPages, Tuesday at 3:00
 AD503 - XPages Mobile Development in IBM Domino 9.0.1 and Beyond, Thursday at 10:00
 BP204 - It's Not Infernal: Dante's Nine Circles of XPages Heaven, Tuesday at 10:00
 BP203 - EXTJS in XPages: Modernizing IBM Notes Views Without Sacrificing Functionality, Tuesday at 1:30

Reminder: Slides and Demo Database are at:
http://www.tlcc.com/JMP102

60
 Access Connect Online to complete your session surveys using any:
– Web or mobile browser
– Connect Online kiosk onsite

61

More Related Content

What's hot

Skills Navigation Guide 06 19 2009
Skills Navigation Guide 06 19 2009Skills Navigation Guide 06 19 2009
Skills Navigation Guide 06 19 2009Pedab
 
AD506: IBM Connect 2014. IBM Sametime Proxy 9: A fuller, richer customizable ...
AD506: IBM Connect 2014. IBM Sametime Proxy 9: A fuller, richer customizable ...AD506: IBM Connect 2014. IBM Sametime Proxy 9: A fuller, richer customizable ...
AD506: IBM Connect 2014. IBM Sametime Proxy 9: A fuller, richer customizable ...
William Holmes
 
BP501 - Building and deploying custom IBM sametime connect client installatio...
BP501 - Building and deploying custom IBM sametime connect client installatio...BP501 - Building and deploying custom IBM sametime connect client installatio...
BP501 - Building and deploying custom IBM sametime connect client installatio...
Carl Tyler
 
How a tactical HATS solution became a strategic asset - A Customer Story
How a tactical HATS solution became a strategic asset - A Customer StoryHow a tactical HATS solution became a strategic asset - A Customer Story
How a tactical HATS solution became a strategic asset - A Customer Story
Strongback Consulting
 
IBM Notes : Have it your way and make it work for you
IBM Notes : Have it your way and make it work for you IBM Notes : Have it your way and make it work for you
IBM Notes : Have it your way and make it work for you
Vinayak Tavargeri
 
Integrating Visual Composer UI with BPM - Webinar Presentation
Integrating Visual Composer UI with BPM - Webinar PresentationIntegrating Visual Composer UI with BPM - Webinar Presentation
Integrating Visual Composer UI with BPM - Webinar Presentationdanyackel
 
SAP NetWeaver Composition Environment EhP1%2c Visual Composer Overview of Fea...
SAP NetWeaver Composition Environment EhP1%2c Visual Composer Overview of Fea...SAP NetWeaver Composition Environment EhP1%2c Visual Composer Overview of Fea...
SAP NetWeaver Composition Environment EhP1%2c Visual Composer Overview of Fea...danyackel
 
IBM Lotusphere 2012 AD205 - IBM Sametime® in IBM Connections®, IBM WebSphere®...
IBM Lotusphere 2012 AD205 - IBM Sametime® in IBM Connections®, IBM WebSphere®...IBM Lotusphere 2012 AD205 - IBM Sametime® in IBM Connections®, IBM WebSphere®...
IBM Lotusphere 2012 AD205 - IBM Sametime® in IBM Connections®, IBM WebSphere®...
William Holmes
 
Social Enabler for XPages
Social Enabler for XPagesSocial Enabler for XPages
Social Enabler for XPages
Niklas Heidloff
 
IBM Lotusphere 2013 AD109: Using the IBM® Sametime® Proxy SDK: WebSphere Port...
IBM Lotusphere 2013 AD109: Using the IBM® Sametime® Proxy SDK: WebSphere Port...IBM Lotusphere 2013 AD109: Using the IBM® Sametime® Proxy SDK: WebSphere Port...
IBM Lotusphere 2013 AD109: Using the IBM® Sametime® Proxy SDK: WebSphere Port...
William Holmes
 
IMS03 how design thinking is shaping ims
IMS03   how design thinking is shaping imsIMS03   how design thinking is shaping ims
IMS03 how design thinking is shaping ims
Robert Hain
 
Soccnx III - IBM Connections 3.0.1 Integration with Sametime
Soccnx III  - IBM Connections 3.0.1 Integration with SametimeSoccnx III  - IBM Connections 3.0.1 Integration with Sametime
Soccnx III - IBM Connections 3.0.1 Integration with Sametime
LetsConnect
 
Customizing the Look of Lotus Notes 8
Customizing the Look of Lotus Notes 8Customizing the Look of Lotus Notes 8
Customizing the Look of Lotus Notes 8
dominion
 
What's new in iNotes 9.0 Social Edition
What's new in iNotes 9.0 Social EditionWhat's new in iNotes 9.0 Social Edition
What's new in iNotes 9.0 Social Edition
Rahul A. Garg
 
Application Modernization: Where Consumer, Social, and Mobile Converge
Application Modernization: Where Consumer, Social, and Mobile ConvergeApplication Modernization: Where Consumer, Social, and Mobile Converge
Application Modernization: Where Consumer, Social, and Mobile Converge
John Head
 
What's New in IBM iNotes 9.0 Social Edition & IBM Notes Browser Plugin
What's New in IBM iNotes 9.0 Social Edition & IBM Notes Browser PluginWhat's New in IBM iNotes 9.0 Social Edition & IBM Notes Browser Plugin
What's New in IBM iNotes 9.0 Social Edition & IBM Notes Browser PluginRahul A. Garg
 
IBM Worspace: Towards a culture of conversations
IBM Worspace: Towards a culture of conversationsIBM Worspace: Towards a culture of conversations
IBM Worspace: Towards a culture of conversations
Dominopoint - Italian Lotus User Group
 
NELotus - OpenNTF.org & XPages Mobile Controls
NELotus - OpenNTF.org & XPages Mobile ControlsNELotus - OpenNTF.org & XPages Mobile Controls
NELotus - OpenNTF.org & XPages Mobile ControlsJohn Head
 
Application Development for IBM Connections with IBM Bluemix
Application Development  for IBM Connections with IBM BluemixApplication Development  for IBM Connections with IBM Bluemix
Application Development for IBM Connections with IBM Bluemix
IBM Connections Developers
 

What's hot (20)

Skills Navigation Guide 06 19 2009
Skills Navigation Guide 06 19 2009Skills Navigation Guide 06 19 2009
Skills Navigation Guide 06 19 2009
 
Software architecture
Software architectureSoftware architecture
Software architecture
 
AD506: IBM Connect 2014. IBM Sametime Proxy 9: A fuller, richer customizable ...
AD506: IBM Connect 2014. IBM Sametime Proxy 9: A fuller, richer customizable ...AD506: IBM Connect 2014. IBM Sametime Proxy 9: A fuller, richer customizable ...
AD506: IBM Connect 2014. IBM Sametime Proxy 9: A fuller, richer customizable ...
 
BP501 - Building and deploying custom IBM sametime connect client installatio...
BP501 - Building and deploying custom IBM sametime connect client installatio...BP501 - Building and deploying custom IBM sametime connect client installatio...
BP501 - Building and deploying custom IBM sametime connect client installatio...
 
How a tactical HATS solution became a strategic asset - A Customer Story
How a tactical HATS solution became a strategic asset - A Customer StoryHow a tactical HATS solution became a strategic asset - A Customer Story
How a tactical HATS solution became a strategic asset - A Customer Story
 
IBM Notes : Have it your way and make it work for you
IBM Notes : Have it your way and make it work for you IBM Notes : Have it your way and make it work for you
IBM Notes : Have it your way and make it work for you
 
Integrating Visual Composer UI with BPM - Webinar Presentation
Integrating Visual Composer UI with BPM - Webinar PresentationIntegrating Visual Composer UI with BPM - Webinar Presentation
Integrating Visual Composer UI with BPM - Webinar Presentation
 
SAP NetWeaver Composition Environment EhP1%2c Visual Composer Overview of Fea...
SAP NetWeaver Composition Environment EhP1%2c Visual Composer Overview of Fea...SAP NetWeaver Composition Environment EhP1%2c Visual Composer Overview of Fea...
SAP NetWeaver Composition Environment EhP1%2c Visual Composer Overview of Fea...
 
IBM Lotusphere 2012 AD205 - IBM Sametime® in IBM Connections®, IBM WebSphere®...
IBM Lotusphere 2012 AD205 - IBM Sametime® in IBM Connections®, IBM WebSphere®...IBM Lotusphere 2012 AD205 - IBM Sametime® in IBM Connections®, IBM WebSphere®...
IBM Lotusphere 2012 AD205 - IBM Sametime® in IBM Connections®, IBM WebSphere®...
 
Social Enabler for XPages
Social Enabler for XPagesSocial Enabler for XPages
Social Enabler for XPages
 
IBM Lotusphere 2013 AD109: Using the IBM® Sametime® Proxy SDK: WebSphere Port...
IBM Lotusphere 2013 AD109: Using the IBM® Sametime® Proxy SDK: WebSphere Port...IBM Lotusphere 2013 AD109: Using the IBM® Sametime® Proxy SDK: WebSphere Port...
IBM Lotusphere 2013 AD109: Using the IBM® Sametime® Proxy SDK: WebSphere Port...
 
IMS03 how design thinking is shaping ims
IMS03   how design thinking is shaping imsIMS03   how design thinking is shaping ims
IMS03 how design thinking is shaping ims
 
Soccnx III - IBM Connections 3.0.1 Integration with Sametime
Soccnx III  - IBM Connections 3.0.1 Integration with SametimeSoccnx III  - IBM Connections 3.0.1 Integration with Sametime
Soccnx III - IBM Connections 3.0.1 Integration with Sametime
 
Customizing the Look of Lotus Notes 8
Customizing the Look of Lotus Notes 8Customizing the Look of Lotus Notes 8
Customizing the Look of Lotus Notes 8
 
What's new in iNotes 9.0 Social Edition
What's new in iNotes 9.0 Social EditionWhat's new in iNotes 9.0 Social Edition
What's new in iNotes 9.0 Social Edition
 
Application Modernization: Where Consumer, Social, and Mobile Converge
Application Modernization: Where Consumer, Social, and Mobile ConvergeApplication Modernization: Where Consumer, Social, and Mobile Converge
Application Modernization: Where Consumer, Social, and Mobile Converge
 
What's New in IBM iNotes 9.0 Social Edition & IBM Notes Browser Plugin
What's New in IBM iNotes 9.0 Social Edition & IBM Notes Browser PluginWhat's New in IBM iNotes 9.0 Social Edition & IBM Notes Browser Plugin
What's New in IBM iNotes 9.0 Social Edition & IBM Notes Browser Plugin
 
IBM Worspace: Towards a culture of conversations
IBM Worspace: Towards a culture of conversationsIBM Worspace: Towards a culture of conversations
IBM Worspace: Towards a culture of conversations
 
NELotus - OpenNTF.org & XPages Mobile Controls
NELotus - OpenNTF.org & XPages Mobile ControlsNELotus - OpenNTF.org & XPages Mobile Controls
NELotus - OpenNTF.org & XPages Mobile Controls
 
Application Development for IBM Connections with IBM Bluemix
Application Development  for IBM Connections with IBM BluemixApplication Development  for IBM Connections with IBM Bluemix
Application Development for IBM Connections with IBM Bluemix
 

Viewers also liked

XPages Extension Library - Create an app in 1 hour (almost)
XPages Extension Library - Create an app in 1 hour (almost)XPages Extension Library - Create an app in 1 hour (almost)
XPages Extension Library - Create an app in 1 hour (almost)
Per Henrik Lausten
 
Bootstrap and XPages (DanNotes 2013)
Bootstrap and XPages (DanNotes 2013)Bootstrap and XPages (DanNotes 2013)
Bootstrap and XPages (DanNotes 2013)
Mark Leusink
 
Bootstrap4XPages - an introduction
Bootstrap4XPages - an introductionBootstrap4XPages - an introduction
Bootstrap4XPages - an introduction
Per Henrik Lausten
 
An introduction to IBM BlueMix
An introduction to IBM BlueMixAn introduction to IBM BlueMix
An introduction to IBM BlueMix
Per Henrik Lausten
 
XPages Application Layout Control - TLCC March, 2014 Webinar
XPages Application Layout Control - TLCC March, 2014 WebinarXPages Application Layout Control - TLCC March, 2014 Webinar
XPages Application Layout Control - TLCC March, 2014 Webinar
Howard Greenberg
 
Show110 | Using the XPages Extension Library for the Real World
Show110 | Using the XPages Extension Library for the Real WorldShow110 | Using the XPages Extension Library for the Real World
Show110 | Using the XPages Extension Library for the Real World
pdhannan
 
Bootstrap4XPages
Bootstrap4XPagesBootstrap4XPages
Bootstrap4XPages
Teamstudio
 
Building Responsive Applications Using XPages
Building Responsive Applications Using XPagesBuilding Responsive Applications Using XPages
Building Responsive Applications Using XPages
Teamstudio
 

Viewers also liked (8)

XPages Extension Library - Create an app in 1 hour (almost)
XPages Extension Library - Create an app in 1 hour (almost)XPages Extension Library - Create an app in 1 hour (almost)
XPages Extension Library - Create an app in 1 hour (almost)
 
Bootstrap and XPages (DanNotes 2013)
Bootstrap and XPages (DanNotes 2013)Bootstrap and XPages (DanNotes 2013)
Bootstrap and XPages (DanNotes 2013)
 
Bootstrap4XPages - an introduction
Bootstrap4XPages - an introductionBootstrap4XPages - an introduction
Bootstrap4XPages - an introduction
 
An introduction to IBM BlueMix
An introduction to IBM BlueMixAn introduction to IBM BlueMix
An introduction to IBM BlueMix
 
XPages Application Layout Control - TLCC March, 2014 Webinar
XPages Application Layout Control - TLCC March, 2014 WebinarXPages Application Layout Control - TLCC March, 2014 Webinar
XPages Application Layout Control - TLCC March, 2014 Webinar
 
Show110 | Using the XPages Extension Library for the Real World
Show110 | Using the XPages Extension Library for the Real WorldShow110 | Using the XPages Extension Library for the Real World
Show110 | Using the XPages Extension Library for the Real World
 
Bootstrap4XPages
Bootstrap4XPagesBootstrap4XPages
Bootstrap4XPages
 
Building Responsive Applications Using XPages
Building Responsive Applications Using XPagesBuilding Responsive Applications Using XPages
Building Responsive Applications Using XPages
 

Similar to Connect 2014 - JMP102: Creating a Great XPages User Interface

Creating a Great XPages User Interface
Creating a Great XPages User InterfaceCreating a Great XPages User Interface
Creating a Great XPages User Interface
Teamstudio
 
Creating a Great XPages User Interface, TLCC Teamstudio Webinar - Feb, 2014
Creating a Great XPages User Interface, TLCC Teamstudio Webinar - Feb, 2014Creating a Great XPages User Interface, TLCC Teamstudio Webinar - Feb, 2014
Creating a Great XPages User Interface, TLCC Teamstudio Webinar - Feb, 2014
Howard Greenberg
 
Connect 2014 - BP202: Rapid XPages Development Using the Application Layout C...
Connect 2014 - BP202: Rapid XPages Development Using the Application Layout C...Connect 2014 - BP202: Rapid XPages Development Using the Application Layout C...
Connect 2014 - BP202: Rapid XPages Development Using the Application Layout C...
Howard Greenberg
 
Practical Field Experience: Using Ajax / Dojo with WebSphere Portlet Factory
Practical Field Experience: Using Ajax / Dojo with WebSphere Portlet FactoryPractical Field Experience: Using Ajax / Dojo with WebSphere Portlet Factory
Practical Field Experience: Using Ajax / Dojo with WebSphere Portlet Factory
Davalen LLC
 
AD207 Presentation
AD207 PresentationAD207 Presentation
AD207 Presentation
mackejo1
 
WebSphere Portlet Factory: Davalen’s Practical Advice from the Field
WebSphere Portlet Factory: Davalen’s Practical Advice from the Field WebSphere Portlet Factory: Davalen’s Practical Advice from the Field
WebSphere Portlet Factory: Davalen’s Practical Advice from the Field
Davalen LLC
 
IBM Connect 2014 AD 501 - IBM Worklight for IBM Domino Developers
IBM Connect 2014 AD 501 - IBM Worklight for IBM Domino DevelopersIBM Connect 2014 AD 501 - IBM Worklight for IBM Domino Developers
IBM Connect 2014 AD 501 - IBM Worklight for IBM Domino Developers
Mat Newman
 
Tip from IBM Connect 2014: Rapid XPages Developing Using the Application Layo...
Tip from IBM Connect 2014: Rapid XPages Developing Using the Application Layo...Tip from IBM Connect 2014: Rapid XPages Developing Using the Application Layo...
Tip from IBM Connect 2014: Rapid XPages Developing Using the Application Layo...
SocialBiz UserGroup
 
Get the Jump on Mobilizing your Notes and Domino Applications Today! (JMP103...
Get the Jump on Mobilizing your Notes and Domino Applications Today!  (JMP103...Get the Jump on Mobilizing your Notes and Domino Applications Today!  (JMP103...
Get the Jump on Mobilizing your Notes and Domino Applications Today! (JMP103...Paul Della-Nebbia
 
Using Portal and Collaboration to Bring Value | Portal Excellence Conference ...
Using Portal and Collaboration to Bring Value | Portal Excellence Conference ...Using Portal and Collaboration to Bring Value | Portal Excellence Conference ...
Using Portal and Collaboration to Bring Value | Portal Excellence Conference ...
leo_radovsky
 
Sure Outputs
Sure OutputsSure Outputs
Sure Outputs
SAP Sure
 
Connect ed2014 ad501_ibm worklight for ibm domino developers
Connect ed2014 ad501_ibm worklight for ibm domino developersConnect ed2014 ad501_ibm worklight for ibm domino developers
Connect ed2014 ad501_ibm worklight for ibm domino developers
a8us
 
IBM Cognos 10 Framework Manager Metadata Modeling: Tips and Tricks
IBM Cognos 10 Framework Manager Metadata Modeling: Tips and TricksIBM Cognos 10 Framework Manager Metadata Modeling: Tips and Tricks
IBM Cognos 10 Framework Manager Metadata Modeling: Tips and Tricks
Senturus
 
Tip from IBM Connect2014: XPages Accessibility
Tip from IBM Connect2014: XPages AccessibilityTip from IBM Connect2014: XPages Accessibility
Tip from IBM Connect2014: XPages Accessibility
SocialBiz UserGroup
 
What's new in IBM BPM 8.5.7
What's new in IBM BPM 8.5.7What's new in IBM BPM 8.5.7
What's new in IBM BPM 8.5.7
Dennis Parrott
 
LMS Comparison: Docebo Vs. Talent, E-Learning platform features
LMS Comparison: Docebo Vs. Talent, E-Learning platform featuresLMS Comparison: Docebo Vs. Talent, E-Learning platform features
LMS Comparison: Docebo Vs. Talent, E-Learning platform features
DoceboElearning
 
New World Of 2010 Share Point Administration
New World Of 2010 Share Point AdministrationNew World Of 2010 Share Point Administration
New World Of 2010 Share Point Administration
Mike Watson
 
SAP Adobe forms
SAP Adobe formsSAP Adobe forms
SAP Adobe forms
Jugul Crasta
 
Salesforce Developer Group Toronto - Winter'19
Salesforce Developer Group Toronto - Winter'19Salesforce Developer Group Toronto - Winter'19
Salesforce Developer Group Toronto - Winter'19
Jaswinder Rattanpal
 
IBM Forms Experience Builder - Web Form Apps for Marketers
IBM Forms Experience Builder - Web Form Apps for MarketersIBM Forms Experience Builder - Web Form Apps for Marketers
IBM Forms Experience Builder - Web Form Apps for Marketers
mlech23
 

Similar to Connect 2014 - JMP102: Creating a Great XPages User Interface (20)

Creating a Great XPages User Interface
Creating a Great XPages User InterfaceCreating a Great XPages User Interface
Creating a Great XPages User Interface
 
Creating a Great XPages User Interface, TLCC Teamstudio Webinar - Feb, 2014
Creating a Great XPages User Interface, TLCC Teamstudio Webinar - Feb, 2014Creating a Great XPages User Interface, TLCC Teamstudio Webinar - Feb, 2014
Creating a Great XPages User Interface, TLCC Teamstudio Webinar - Feb, 2014
 
Connect 2014 - BP202: Rapid XPages Development Using the Application Layout C...
Connect 2014 - BP202: Rapid XPages Development Using the Application Layout C...Connect 2014 - BP202: Rapid XPages Development Using the Application Layout C...
Connect 2014 - BP202: Rapid XPages Development Using the Application Layout C...
 
Practical Field Experience: Using Ajax / Dojo with WebSphere Portlet Factory
Practical Field Experience: Using Ajax / Dojo with WebSphere Portlet FactoryPractical Field Experience: Using Ajax / Dojo with WebSphere Portlet Factory
Practical Field Experience: Using Ajax / Dojo with WebSphere Portlet Factory
 
AD207 Presentation
AD207 PresentationAD207 Presentation
AD207 Presentation
 
WebSphere Portlet Factory: Davalen’s Practical Advice from the Field
WebSphere Portlet Factory: Davalen’s Practical Advice from the Field WebSphere Portlet Factory: Davalen’s Practical Advice from the Field
WebSphere Portlet Factory: Davalen’s Practical Advice from the Field
 
IBM Connect 2014 AD 501 - IBM Worklight for IBM Domino Developers
IBM Connect 2014 AD 501 - IBM Worklight for IBM Domino DevelopersIBM Connect 2014 AD 501 - IBM Worklight for IBM Domino Developers
IBM Connect 2014 AD 501 - IBM Worklight for IBM Domino Developers
 
Tip from IBM Connect 2014: Rapid XPages Developing Using the Application Layo...
Tip from IBM Connect 2014: Rapid XPages Developing Using the Application Layo...Tip from IBM Connect 2014: Rapid XPages Developing Using the Application Layo...
Tip from IBM Connect 2014: Rapid XPages Developing Using the Application Layo...
 
Get the Jump on Mobilizing your Notes and Domino Applications Today! (JMP103...
Get the Jump on Mobilizing your Notes and Domino Applications Today!  (JMP103...Get the Jump on Mobilizing your Notes and Domino Applications Today!  (JMP103...
Get the Jump on Mobilizing your Notes and Domino Applications Today! (JMP103...
 
Using Portal and Collaboration to Bring Value | Portal Excellence Conference ...
Using Portal and Collaboration to Bring Value | Portal Excellence Conference ...Using Portal and Collaboration to Bring Value | Portal Excellence Conference ...
Using Portal and Collaboration to Bring Value | Portal Excellence Conference ...
 
Sure Outputs
Sure OutputsSure Outputs
Sure Outputs
 
Connect ed2014 ad501_ibm worklight for ibm domino developers
Connect ed2014 ad501_ibm worklight for ibm domino developersConnect ed2014 ad501_ibm worklight for ibm domino developers
Connect ed2014 ad501_ibm worklight for ibm domino developers
 
IBM Cognos 10 Framework Manager Metadata Modeling: Tips and Tricks
IBM Cognos 10 Framework Manager Metadata Modeling: Tips and TricksIBM Cognos 10 Framework Manager Metadata Modeling: Tips and Tricks
IBM Cognos 10 Framework Manager Metadata Modeling: Tips and Tricks
 
Tip from IBM Connect2014: XPages Accessibility
Tip from IBM Connect2014: XPages AccessibilityTip from IBM Connect2014: XPages Accessibility
Tip from IBM Connect2014: XPages Accessibility
 
What's new in IBM BPM 8.5.7
What's new in IBM BPM 8.5.7What's new in IBM BPM 8.5.7
What's new in IBM BPM 8.5.7
 
LMS Comparison: Docebo Vs. Talent, E-Learning platform features
LMS Comparison: Docebo Vs. Talent, E-Learning platform featuresLMS Comparison: Docebo Vs. Talent, E-Learning platform features
LMS Comparison: Docebo Vs. Talent, E-Learning platform features
 
New World Of 2010 Share Point Administration
New World Of 2010 Share Point AdministrationNew World Of 2010 Share Point Administration
New World Of 2010 Share Point Administration
 
SAP Adobe forms
SAP Adobe formsSAP Adobe forms
SAP Adobe forms
 
Salesforce Developer Group Toronto - Winter'19
Salesforce Developer Group Toronto - Winter'19Salesforce Developer Group Toronto - Winter'19
Salesforce Developer Group Toronto - Winter'19
 
IBM Forms Experience Builder - Web Form Apps for Marketers
IBM Forms Experience Builder - Web Form Apps for MarketersIBM Forms Experience Builder - Web Form Apps for Marketers
IBM Forms Experience Builder - Web Form Apps for Marketers
 

More from Howard Greenberg

January OpenNTF Webinar - Backup your Domino Server - New Options in V12
January OpenNTF Webinar - Backup your Domino Server - New Options in V12January OpenNTF Webinar - Backup your Domino Server - New Options in V12
January OpenNTF Webinar - Backup your Domino Server - New Options in V12
Howard Greenberg
 
BRPA November Meeting
BRPA November MeetingBRPA November Meeting
BRPA November Meeting
Howard Greenberg
 
October OpenNTF Webinar - What we like about Domino/Notes 12, recommended new...
October OpenNTF Webinar - What we like about Domino/Notes 12, recommended new...October OpenNTF Webinar - What we like about Domino/Notes 12, recommended new...
October OpenNTF Webinar - What we like about Domino/Notes 12, recommended new...
Howard Greenberg
 
September-2021 OpenNTF Webinar: Domino Online Meeting Integration (DOMI)
September-2021 OpenNTF Webinar: Domino Online Meeting Integration (DOMI)September-2021 OpenNTF Webinar: Domino Online Meeting Integration (DOMI)
September-2021 OpenNTF Webinar: Domino Online Meeting Integration (DOMI)
Howard Greenberg
 
August OpenNTF Webinar - Git and GitHub Explained
August OpenNTF Webinar - Git and GitHub ExplainedAugust OpenNTF Webinar - Git and GitHub Explained
August OpenNTF Webinar - Git and GitHub Explained
Howard Greenberg
 
July OpenNTF Webinar - HCL Presents Keep, a new API for Domino
July OpenNTF Webinar - HCL Presents Keep, a new API for DominoJuly OpenNTF Webinar - HCL Presents Keep, a new API for Domino
July OpenNTF Webinar - HCL Presents Keep, a new API for Domino
Howard Greenberg
 
June OpenNTF Webinar - Domino V12 Certification Manager
June OpenNTF Webinar - Domino V12 Certification ManagerJune OpenNTF Webinar - Domino V12 Certification Manager
June OpenNTF Webinar - Domino V12 Certification Manager
Howard Greenberg
 
April, 2021 OpenNTF Webinar - Domino Administration Best Practices
April, 2021 OpenNTF Webinar - Domino Administration Best PracticesApril, 2021 OpenNTF Webinar - Domino Administration Best Practices
April, 2021 OpenNTF Webinar - Domino Administration Best Practices
Howard Greenberg
 
OpenNTF Webinar, March, 2021
OpenNTF Webinar, March, 2021OpenNTF Webinar, March, 2021
OpenNTF Webinar, March, 2021
Howard Greenberg
 
February OpenNTF Webinar: Introduction to Ansible for Newbies
February OpenNTF Webinar: Introduction to Ansible for NewbiesFebruary OpenNTF Webinar: Introduction to Ansible for Newbies
February OpenNTF Webinar: Introduction to Ansible for Newbies
Howard Greenberg
 
January OpenNTF Webinar: 4D - Domino Docker Deep Dive
January OpenNTF Webinar: 4D - Domino Docker Deep DiveJanuary OpenNTF Webinar: 4D - Domino Docker Deep Dive
January OpenNTF Webinar: 4D - Domino Docker Deep Dive
Howard Greenberg
 
December OpenNTF Webinar: The Volt MX LotusScript Toolkit
December OpenNTF Webinar: The Volt MX LotusScript ToolkitDecember OpenNTF Webinar: The Volt MX LotusScript Toolkit
December OpenNTF Webinar: The Volt MX LotusScript Toolkit
Howard Greenberg
 
OpNovember Water Cooler Talk: The Mystery of Domino on Docker - Part 1
OpNovember Water Cooler Talk: The Mystery of Domino on Docker - Part 1OpNovember Water Cooler Talk: The Mystery of Domino on Docker - Part 1
OpNovember Water Cooler Talk: The Mystery of Domino on Docker - Part 1
Howard Greenberg
 
OpenNTF Webinar, October 2020
OpenNTF Webinar, October 2020OpenNTF Webinar, October 2020
OpenNTF Webinar, October 2020
Howard Greenberg
 
August Webinar - Water Cooler Talks: A Look into a Developer's Workbench
August Webinar - Water Cooler Talks: A Look into a Developer's WorkbenchAugust Webinar - Water Cooler Talks: A Look into a Developer's Workbench
August Webinar - Water Cooler Talks: A Look into a Developer's Workbench
Howard Greenberg
 
July 2020 OpenNTF Webinar - Hear the Latest from the User Groups!
July 2020 OpenNTF Webinar - Hear the Latest from the User Groups!July 2020 OpenNTF Webinar - Hear the Latest from the User Groups!
July 2020 OpenNTF Webinar - Hear the Latest from the User Groups!
Howard Greenberg
 
Open ntf 2020-jun
Open ntf 2020-junOpen ntf 2020-jun
Open ntf 2020-jun
Howard Greenberg
 
OpenNTF Webinar, May 19, 2020
OpenNTF Webinar, May 19, 2020OpenNTF Webinar, May 19, 2020
OpenNTF Webinar, May 19, 2020
Howard Greenberg
 
Dev112 let's calendar that
Dev112   let's calendar thatDev112   let's calendar that
Dev112 let's calendar that
Howard Greenberg
 
Bp101-Can Domino Be Hacked
Bp101-Can Domino Be HackedBp101-Can Domino Be Hacked
Bp101-Can Domino Be Hacked
Howard Greenberg
 

More from Howard Greenberg (20)

January OpenNTF Webinar - Backup your Domino Server - New Options in V12
January OpenNTF Webinar - Backup your Domino Server - New Options in V12January OpenNTF Webinar - Backup your Domino Server - New Options in V12
January OpenNTF Webinar - Backup your Domino Server - New Options in V12
 
BRPA November Meeting
BRPA November MeetingBRPA November Meeting
BRPA November Meeting
 
October OpenNTF Webinar - What we like about Domino/Notes 12, recommended new...
October OpenNTF Webinar - What we like about Domino/Notes 12, recommended new...October OpenNTF Webinar - What we like about Domino/Notes 12, recommended new...
October OpenNTF Webinar - What we like about Domino/Notes 12, recommended new...
 
September-2021 OpenNTF Webinar: Domino Online Meeting Integration (DOMI)
September-2021 OpenNTF Webinar: Domino Online Meeting Integration (DOMI)September-2021 OpenNTF Webinar: Domino Online Meeting Integration (DOMI)
September-2021 OpenNTF Webinar: Domino Online Meeting Integration (DOMI)
 
August OpenNTF Webinar - Git and GitHub Explained
August OpenNTF Webinar - Git and GitHub ExplainedAugust OpenNTF Webinar - Git and GitHub Explained
August OpenNTF Webinar - Git and GitHub Explained
 
July OpenNTF Webinar - HCL Presents Keep, a new API for Domino
July OpenNTF Webinar - HCL Presents Keep, a new API for DominoJuly OpenNTF Webinar - HCL Presents Keep, a new API for Domino
July OpenNTF Webinar - HCL Presents Keep, a new API for Domino
 
June OpenNTF Webinar - Domino V12 Certification Manager
June OpenNTF Webinar - Domino V12 Certification ManagerJune OpenNTF Webinar - Domino V12 Certification Manager
June OpenNTF Webinar - Domino V12 Certification Manager
 
April, 2021 OpenNTF Webinar - Domino Administration Best Practices
April, 2021 OpenNTF Webinar - Domino Administration Best PracticesApril, 2021 OpenNTF Webinar - Domino Administration Best Practices
April, 2021 OpenNTF Webinar - Domino Administration Best Practices
 
OpenNTF Webinar, March, 2021
OpenNTF Webinar, March, 2021OpenNTF Webinar, March, 2021
OpenNTF Webinar, March, 2021
 
February OpenNTF Webinar: Introduction to Ansible for Newbies
February OpenNTF Webinar: Introduction to Ansible for NewbiesFebruary OpenNTF Webinar: Introduction to Ansible for Newbies
February OpenNTF Webinar: Introduction to Ansible for Newbies
 
January OpenNTF Webinar: 4D - Domino Docker Deep Dive
January OpenNTF Webinar: 4D - Domino Docker Deep DiveJanuary OpenNTF Webinar: 4D - Domino Docker Deep Dive
January OpenNTF Webinar: 4D - Domino Docker Deep Dive
 
December OpenNTF Webinar: The Volt MX LotusScript Toolkit
December OpenNTF Webinar: The Volt MX LotusScript ToolkitDecember OpenNTF Webinar: The Volt MX LotusScript Toolkit
December OpenNTF Webinar: The Volt MX LotusScript Toolkit
 
OpNovember Water Cooler Talk: The Mystery of Domino on Docker - Part 1
OpNovember Water Cooler Talk: The Mystery of Domino on Docker - Part 1OpNovember Water Cooler Talk: The Mystery of Domino on Docker - Part 1
OpNovember Water Cooler Talk: The Mystery of Domino on Docker - Part 1
 
OpenNTF Webinar, October 2020
OpenNTF Webinar, October 2020OpenNTF Webinar, October 2020
OpenNTF Webinar, October 2020
 
August Webinar - Water Cooler Talks: A Look into a Developer's Workbench
August Webinar - Water Cooler Talks: A Look into a Developer's WorkbenchAugust Webinar - Water Cooler Talks: A Look into a Developer's Workbench
August Webinar - Water Cooler Talks: A Look into a Developer's Workbench
 
July 2020 OpenNTF Webinar - Hear the Latest from the User Groups!
July 2020 OpenNTF Webinar - Hear the Latest from the User Groups!July 2020 OpenNTF Webinar - Hear the Latest from the User Groups!
July 2020 OpenNTF Webinar - Hear the Latest from the User Groups!
 
Open ntf 2020-jun
Open ntf 2020-junOpen ntf 2020-jun
Open ntf 2020-jun
 
OpenNTF Webinar, May 19, 2020
OpenNTF Webinar, May 19, 2020OpenNTF Webinar, May 19, 2020
OpenNTF Webinar, May 19, 2020
 
Dev112 let's calendar that
Dev112   let's calendar thatDev112   let's calendar that
Dev112 let's calendar that
 
Bp101-Can Domino Be Hacked
Bp101-Can Domino Be HackedBp101-Can Domino Be Hacked
Bp101-Can Domino Be Hacked
 

Recently uploaded

AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
Product School
 
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdfFIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
FIDO Alliance
 
From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...
From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...
From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...
Product School
 
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
Product School
 
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdfFIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
FIDO Alliance
 
FIDO Alliance Osaka Seminar: FIDO Security Aspects.pdf
FIDO Alliance Osaka Seminar: FIDO Security Aspects.pdfFIDO Alliance Osaka Seminar: FIDO Security Aspects.pdf
FIDO Alliance Osaka Seminar: FIDO Security Aspects.pdf
FIDO Alliance
 
Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...
Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...
Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...
Ramesh Iyer
 
State of ICS and IoT Cyber Threat Landscape Report 2024 preview
State of ICS and IoT Cyber Threat Landscape Report 2024 previewState of ICS and IoT Cyber Threat Landscape Report 2024 preview
State of ICS and IoT Cyber Threat Landscape Report 2024 preview
Prayukth K V
 
Generating a custom Ruby SDK for your web service or Rails API using Smithy
Generating a custom Ruby SDK for your web service or Rails API using SmithyGenerating a custom Ruby SDK for your web service or Rails API using Smithy
Generating a custom Ruby SDK for your web service or Rails API using Smithy
g2nightmarescribd
 
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
DanBrown980551
 
The Art of the Pitch: WordPress Relationships and Sales
The Art of the Pitch: WordPress Relationships and SalesThe Art of the Pitch: WordPress Relationships and Sales
The Art of the Pitch: WordPress Relationships and Sales
Laura Byrne
 
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
Tobias Schneck
 
UiPath Test Automation using UiPath Test Suite series, part 3
UiPath Test Automation using UiPath Test Suite series, part 3UiPath Test Automation using UiPath Test Suite series, part 3
UiPath Test Automation using UiPath Test Suite series, part 3
DianaGray10
 
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
Sri Ambati
 
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...
Jeffrey Haguewood
 
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdf
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdfSmart TV Buyer Insights Survey 2024 by 91mobiles.pdf
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdf
91mobiles
 
Elevating Tactical DDD Patterns Through Object Calisthenics
Elevating Tactical DDD Patterns Through Object CalisthenicsElevating Tactical DDD Patterns Through Object Calisthenics
Elevating Tactical DDD Patterns Through Object Calisthenics
Dorra BARTAGUIZ
 
Connector Corner: Automate dynamic content and events by pushing a button
Connector Corner: Automate dynamic content and events by pushing a buttonConnector Corner: Automate dynamic content and events by pushing a button
Connector Corner: Automate dynamic content and events by pushing a button
DianaGray10
 
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Albert Hoitingh
 
GraphRAG is All You need? LLM & Knowledge Graph
GraphRAG is All You need? LLM & Knowledge GraphGraphRAG is All You need? LLM & Knowledge Graph
GraphRAG is All You need? LLM & Knowledge Graph
Guy Korland
 

Recently uploaded (20)

AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
 
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdfFIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
 
From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...
From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...
From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...
 
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
 
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdfFIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
 
FIDO Alliance Osaka Seminar: FIDO Security Aspects.pdf
FIDO Alliance Osaka Seminar: FIDO Security Aspects.pdfFIDO Alliance Osaka Seminar: FIDO Security Aspects.pdf
FIDO Alliance Osaka Seminar: FIDO Security Aspects.pdf
 
Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...
Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...
Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...
 
State of ICS and IoT Cyber Threat Landscape Report 2024 preview
State of ICS and IoT Cyber Threat Landscape Report 2024 previewState of ICS and IoT Cyber Threat Landscape Report 2024 preview
State of ICS and IoT Cyber Threat Landscape Report 2024 preview
 
Generating a custom Ruby SDK for your web service or Rails API using Smithy
Generating a custom Ruby SDK for your web service or Rails API using SmithyGenerating a custom Ruby SDK for your web service or Rails API using Smithy
Generating a custom Ruby SDK for your web service or Rails API using Smithy
 
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
 
The Art of the Pitch: WordPress Relationships and Sales
The Art of the Pitch: WordPress Relationships and SalesThe Art of the Pitch: WordPress Relationships and Sales
The Art of the Pitch: WordPress Relationships and Sales
 
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
 
UiPath Test Automation using UiPath Test Suite series, part 3
UiPath Test Automation using UiPath Test Suite series, part 3UiPath Test Automation using UiPath Test Suite series, part 3
UiPath Test Automation using UiPath Test Suite series, part 3
 
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
 
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...
 
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdf
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdfSmart TV Buyer Insights Survey 2024 by 91mobiles.pdf
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdf
 
Elevating Tactical DDD Patterns Through Object Calisthenics
Elevating Tactical DDD Patterns Through Object CalisthenicsElevating Tactical DDD Patterns Through Object Calisthenics
Elevating Tactical DDD Patterns Through Object Calisthenics
 
Connector Corner: Automate dynamic content and events by pushing a button
Connector Corner: Automate dynamic content and events by pushing a buttonConnector Corner: Automate dynamic content and events by pushing a button
Connector Corner: Automate dynamic content and events by pushing a button
 
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
 
GraphRAG is All You need? LLM & Knowledge Graph
GraphRAG is All You need? LLM & Knowledge GraphGraphRAG is All You need? LLM & Knowledge Graph
GraphRAG is All You need? LLM & Knowledge Graph
 

Connect 2014 - JMP102: Creating a Great XPages User Interface

  • 1. JMP102: Creating a Great XPages User Interface Howard Greenberg, TLCC Paul Della-Nebbia, TLCC © 2014 IBM Corporation
  • 2. Acknowledgements and Disclaimers Availability. References in this presentation to IBM products, programs, or services do not imply that they will be available in all countries in which IBM operates. The workshops, sessions and materials have been prepared by IBM or the session speakers and reflect their own views. They are provided for informational purposes only, and are neither intended to, nor shall have the effect of being, legal or other guidance or advice to any participant. While efforts were made to verify the completeness and accuracy of the information contained in this presentation, it is provided AS-IS without warranty of any kind, express or implied. IBM shall not be responsible for any damages arising out of the use of, or otherwise related to, this presentation or any other materials. Nothing contained in this presentation is intended to, nor shall have the effect of, creating any warranties or representations from IBM or its suppliers or licensors, or altering the terms and conditions of the applicable license agreement governing the use of IBM software. All customer examples described are presented as illustrations of how those customers have used IBM products and the results they may have achieved. Actual environmental costs and performance characteristics may vary by customer. Nothing contained in these materials is intended to, nor shall have the effect of, stating or implying that any activities undertaken by you will result in any specific sales, revenue growth or other results. © Copyright IBM Corporation 2014. All rights reserved.  U.S. Government Users Restricted Rights - Use, duplication or disclosure restricted by GSA ADP Schedule Contract with IBM Corp.  IBM, the IBM logo, ibm.com, Domino, and Notes are trademarks or registered trademarks of International Business Machines Corporation in the United States, other countries, or both. If these and other IBM trademarked terms are marked on their first occurrence in this information with a trademark symbol (® or ™), these symbols indicate U.S. registered or common law trademarks owned by IBM at the time this information was published. Such trademarks may also be registered or common law trademarks in other countries. A current list of IBM trademarks is available on the Web at “Copyright and trademark information” at www.ibm.com/legal/copytrade.shtml Other company, product, or service names may be trademarks or service marks of others. 2
  • 3. Who are we?  Howard Greenberg & Paul Della-Nebbia – Teaching Notes and Domino since 1994 – Partners at TLCC, the Leader in Notes and Domino Training – And Now, the Leader in XPages Training 3
  • 4. About TLCC  Lots of XPages Courses for both 9 and 8.5! ‒ ‒ ‒ ‒ ‒ Introduction to XPages Development … FREE !! JavaScript for XPages Development XPages Development 1 XPages Development 2 Rapid XPages Development Using the Application Layout and Dojo UI Controls ‒ Mobile XPages for Domino ‒ Java 1 for XPages Developers ‒ Java 2 for XPages Developers  Self Paced Training ‒ Learn anywhere! ‒ An Instructor is a click away  Instructor Led (Private) ‒ Online or at your site  TLCC Mentoring Services 4
  • 5. Goal: Make a More Usable, Better Looking XPages Application! Data View View Panel Demo100_ViewPanel Demo761_CustByNameView 5
  • 6.  Prerequisites & Configuration  Form Table control  Data View control  Dojo Form controls  Dialogs and Value pickers  Navigation controls  Application Layout Design Framework  Wrap up 6
  • 7. System Prerequisites  Notes and Domino 8.5.3 (Install Extension Library from OpenNTF or IBM’s Update Pack 1) – Domino Server • Copy files or use an Update Site Database (preferred) – Designer • Install Plugin – Notes client (only needed for XPINC apps) • Use Update Site  Notes and Domino 9 (Extension Library is already included for Domino server, Designer, and Notes clients) – Optionally install Bootstrap4XPages plugin - to use Bootstrap and Bootstrap responsive themes 7
  • 9.  Prerequisites & Configuration  Form Table control  Data View control  Dojo Form controls  Dialogs and Value pickers  Navigation controls  Application Layout Design Framework  Wrap up 9
  • 10. Form Table  Quickly create input area for editing and reading  Server-side validation error messages – Either at top or next to field control  Header area – title and description at top – content area  labels can be positioned above or left of the input controls  required field indicator ( * ) Note: Need IBM OneUIV2 Theme to display (or BootStrap4Xpages)  Footer area (use for buttons)  Multi-column Demo101_FormTable 10
  • 11. What’s a facet?  Not a flat surface of a jewel, think the other definition – “part or element of something”  It is a place to add control(s) to a control  Either Named or Unnamed – Example of Unnamed • Where the Form Column and Form Row controls go in the Form Table control • Can have as many as you want – Example of Named • Footer area of Form Table • Uses the XP:Key to denote where the facet area is attached to • Can only have ONE (but can add a panel)  Used Extensively on XPages Controls 11
  • 12. Named versus Unnamed Facets 12
  • 13.  Prerequisites & Configuration  Form Table control  Data View control  Dojo Form controls  Dialogs and Value pickers  Navigation controls  Application Layout Design Framework  Wrap up 13
  • 15. What’s Better About the Data View  A completely different interface – styling differences for links, pagers, column headings, column text, etc…  A Summary column (or facet to add anything)  A row detail area – shown or hidden all at once or individually – can have other controls to allow: • in-view editing • look-ups to other data • single page read-only applications  additional pager types and locations available  additional columns are right-aligned  Note: Need IBM OneUIV2 Theme to display (or Bootstrap4XPages) 15
  • 16. New Pagers  New pagers in addition to standard pager control – Use with any iterator control (repeat, Data Table, View)  pagerDetail – show/hide details for all rows (Data View only)  pagerSizes - choose the number of rows per page to display  pagerAddRows - append more rows (great for mobile)  pagerExpand – expand/collapse all rows)  pagerSaveState – Not really a pager, save/restore the view state (return to same page) – Used with viewStateBean 16 Demo151DataView Demo153DataView Demo154DataView
  • 17.  Prerequisites & Configuration  Form Table control  Data View control  Dojo Form controls  Dialogs and Value pickers  Navigation controls  Application Layout Design Framework  Wrap up 17
  • 18. Dojo Form Controls  An easy way to increase input usability!  Client-side – does not require a server round-trip  Uses Dojo Toolkit – 1.8 for Domino 9, 1.6 for 8.5.3  Either extends a control with added functionality – Dojo Combo Box  Or, adds entirely new functionality – Dojo Slider Rule or Dojo Number Spinner 18
  • 19. Dojo Validation Text Box  Immediately validate text entry using: – Required: user must enter something – A Regular Expression to validate content  User sees prompt when entering field  User gets immediate feedback  No JavaScript alerts!  Must Require User Input – Either set the required property to true – Or, provide a Required Validator  Optionally, provide a Regular Expression  Server Side Validators (like length) still use Error Message Control 19 Demo210_ValidationTextBox
  • 20. Dojo Combo Box and Filtering Select  Provides Type Ahead along with a drop-down selection – Dojo Combo Box allows the entry of values not in list – Dojo Filtering Select only allows user to select supplied values  Optionally can limit the number of items shown  Filtering Select adds support for: – label | value pairs – built-in validation for entered values – Can provide a tooltip prompt  Tip! Create a standard Combo Box to build Select Items and copy via source view to the Dojo Combo Box or Filtering Select Demo220_FilteringSelect 20
  • 21. Dojo Number Text Box and Dojo Currency Text Box  Add number constraints with messages displayed as a tooltip – User gets immediate feedback  Can provide a tooltip prompt  Can set a pattern (to standardize format instead of allowing for locale changes)  Can set decimal places  Display Options – Decimal – Percent – Currency Demo230_Number  Currency Text Box adds ability to fix the currency symbol – ISO 4217 three letter sequence 21
  • 22. Dojo Spinner  User can type in a number or use up/down arrows  Extension of Dojo Number Text Box  Set constraints and tooltips  Set a value for the increment/decrement when: – User uses up or down arrow keys or clicks arrow (smallDelta) – User uses page up or down key (largeDelta) Demo240_Spinner 22
  • 23. Dojo Slider  Horizontal or Vertical (two different controls)  User can drag slider, use arrows, or click on slider to set value  Optional Slider Rule and Slider Rule Labels  Set a value for the increment/decrement when: – User uses up or down arrow keys or clicks arrow (smallDelta) – User uses page up or down key (largeDelta)  User does not see value selected – Can add via the onchange Client side event – Get the value via CSJS and write to a computed field Demo250_Slider 23
  • 24.  Prerequisites & Configuration  Form Table control  Data View control  Dojo Form controls  Dialogs and Value pickers  Navigation controls  Application Layout Design Framework  Wrap up 24
  • 25. Dialog Control  Displays a modal dialog  Related controls (optional but useful!) – dialogButtonBar – placeholder for buttons – dialogContent – placeholder for content  Opening and Closing a Dialog Control – Client Side JavaScript • XSP.openDialog("#{id:dialogId }") • XSP.closeDialog("#{id:dialogId }","#{id:refreshId }" ); – Server Side JavaScript (use getComponent(“id”) for dialogComponent) • dialogComponent.show( ) • dialogComponent.hide(refreshId ) 25
  • 26. Dialog Control Strategies Different ways to accept input and pass values back to “calling” page  Use the same data source for both “calling” page and dialog – easy to implement  Have a different data source for dialog content – Dialog close button saves data source in dialog  Bind the same scoped variables in dialog and on “calling” page  Pass values using the getValue() and setValue() methods – Use getValue() to get values from dialog controls – Use setValue() to write to controls on “calling” page – Least preferred way! Demo310DataView Demo310Input 26
  • 27. Value Picker  Present a dialog to user to select a value(s)  Data Providers – xe:simpleValuePicker - hard coded or computed choices – xe:dominoViewValuePicker – uses Domino view – xe:beanValuePicker – the choices are from a Java bean  Value Picker is for selection only, must be bound to a control like an Edit Box which is bound to the data source  Options – Support for Label | Value pairs (value is always first sorted column in view) – Single or Multi-value – Optionally use checkboxes – Add search capability – Type Ahead in Edit Box (values are from Value Picker) 27 Demo320_ValuePicker
  • 28. Value Picker Validation  Can set target control to only allow values that are in the Value Picker – Use case: When user types in a value in the target control (Edit Box)  New Validator: xe:pickerValidator Demo330_ValuePickerValidation 28
  • 29. Dojo List Text Box and Value Pickers  Works Great Together!  In Edit mode user can delete entries with the X  In Read mode only the values show  Specify a MultipleSeparator  Works with Label | Value Pairs too – displayLabel property set to true  Use onChange event to trigger refresh if needed 29 Demo340_DojoListTextBox
  • 30. Tooltip and Tooltip Dialog  Both display a tooltip with content – Non-modal, they go away when user clicks elsewhere or moves cursor  Tooltip is for displaying text when user hovers over a control – Tooltip goes away when user moves cursor off control – Doesn’t work for all controls or for panels – Tie the Tooltip control to the desired control the user hovers over  Tooltip Dialog is opened via code 30
  • 31. Tooltip  Used for displaying information when user hovers over a control – Goes away when user moves mouse off control (onMouseOut) – No need for any code  for property defines what control  Either use: – label property for one value (Simple) – Put content between tooltip tags and set dynamicContent=“true” (Complex) Demo350_Tooltip 31
  • 32. Tooltip Dialog  Useful to allow user to edit information – Requires code to open – Closes when user clicks outside toolip or via code (button or link)  Open via Client Side JavaScript – XSP.openTooltipDialog("#{id:tooltipDialogId }","#{id:tooltipTargetId }") – No Server Side equivalent  Close via Client Side or Server Side JavaScript – Client Side: XSP.closeTooltipDialog("#{id:tooltipDialogId }","#{id:refreshId }" ); – Server Side: dialogComponent.hide(refreshId )  Put all content inside TooltipDialog tags – No label property like Tooltip 32
  • 33. Dialog vs. Tooltip Dialog Dialog Tooltip Dialog Demo360_DojoTooltipDialog 33
  • 34. InPlaceForm  Displays a dialog “in-line” on the page – Shifts contents down (unlike Tooltip Dialog) – Only closed via buttons  Related controls (optional but useful!) – dialogButtonBar – placeholder for buttons – dialogContent – placeholder for content  Creates components when opened  Opened and closed via SSJS  Great for use in a Data View, Repeat, etc. 34
  • 35. InPlaceForm Methods, Properties, and Events  Open the InPlace Form – inPlaceFormComponent.show( )  Close the InPlace Form – inPlaceFormComponent.hide( )  Toggle the InPlaceForm – inPlaceFormComponent.toggle( )  Determine if InPlaceForm is being shown/hidden – inPlaceFormComponent.isVisible( )  Events (SSJS only) – beforeContentLoad – afterContentLoad Demo370_InPlaceForm 35
  • 36. Inline View Editing Made Easy!  Edit Domino data right in the view!  Use a Data View with an InPlace Form in the Details Demo380_InPlaceForm_DataView 36
  • 37.  Prerequisites & Configuration  Form Table control  Data View control  Dojo Form controls  Dialogs and Value pickers  Navigation controls  Application Layout Design Framework  Wrap up 37
  • 38. Navigation Controls  Dozen or so navigation type controls  Most use TreeNodes for items  Set submitValue property for each item – onItemClick event to find out what user clicked (CSJS or SSJS)  Navigator control is most useful when combined with Application Layout control – selected property used to determine which item is highlighted 38
  • 39. Tree Nodes – Builds the list  xe:basicLeafNode  xe:basicContainerNode  xe:separatorTreeNode  xe:dominoViewEntriesTreeNode  xe:dominoViewListTreeNode  xe:pageTreeNode  xe:repeatTreeNode  xe:loginTreeNode  xe:userTreeNode  xe:beanTreeNode 39
  • 40. One onItemClick event per control  Code to determine what the user clicked (submitValue property is returned) – CSJS … XSP.getSubmitValue() – SSJS … context.getSubmittedValue() 40 DemoXPage617
  • 41. Navigator control  Best navigator control for use in LeftColumn facet of Application Layout control – node for currently displayed page is automatically selected (pageTreeNode) – selected property can be coded when other types of nodes • dominoViewEntriesTreeNode • dominoViewListTreeNode 41 DemoXPage619 DemoXPage621a, 621b, 621c
  • 42. Toolbar control  Good control for functionality of Form and View Action Bars 42 DemoXPage652View DemoXPage652Input
  • 43. Popup Menu control  Popup menu navigation  Code an event on a button or link to popup the menu using XSP.openMenu DemoXPage642 43
  • 44.  Prerequisites & Configuration  Form Table control  Data View control  Dojo Form controls  Dialogs and Value pickers  Navigation controls  Application Layout Design Framework  Wrap up 44
  • 45. Six Facets and Five Bar Areas 45
  • 46. One onItemClick event for All Nodes in Configuration  onItemClick – triggered when any node in any of its configuration properties is fired, including: – bannerApplicationLinks SSJS - get submitted value for clicked node: – bannerUtilityLinks – titleBarTabs – placeBarActions – footerLinks CSJS - get the submit value for clicked node: DemoXPage711, DemoXPage712 46
  • 47. Designing an Application Layout in a Custom Control Demo761_CustByNameView 47
  • 48. Designing an Application Layout in a Custom Control  Enable all six facet areas in the applicationLayout by adding an Editable Area control (xp:callback) to each facet  Add Property Definitions to the custom control to pass property values from the XPage to ccAppLayout (like navigationPath, enableSearch, enableSalesBar enablePartsBar, etc…) 48
  • 49. Designing an Application Layout in a Custom Control (procedure)  Step 1: Create a Custom Control and drag in an Application Layout control – Choose a OneUI version 2.1 theme 49
  • 50. Designing an Application Layout in a Custom Control (procedure continued)  Step 2: Set the configuration properties: – Banner nodes – Title Bar nodes (tabs) – Place Bar nodes (buttons) – Footer links – Legal text 50
  • 51. Designing an Application Layout in a Custom Control (procedure continued)  Step 3: Enable required columns (not the recommended approach) – Left column – Middle column – Right column 51
  • 52. Designing an Application Layout in a Custom Control (procedure continued)  Step 3: Enable ALL SIX facet areas in the applicationLayout by adding an Editable Area control (xp:callback) to each facet 52
  • 53. Designing an Application Layout in a Custom Control (procedure continued)  Step 3 continued: Establish a Naming Convention for facets and panels 53
  • 54. Designing an Application Layout in a Custom Control (procedure continued)  Step 4: Add Property Definitions to the custom control to pass property values from the XPage to ccAppLayout (like navigationPath, enableSearch, enableSalesBar, etc…) 54
  • 55. Navigation and Context – You are Here! Demo761_AppLayout (custom control) Demo761_CustByNameView 55
  • 56. Application Configuration for Bootstrap4XPages  Install Bootstrap4XPages plugin – Domino sever – Domino Designer – Notes client (for XPiNC)  Application settings (xsp.properties) – xsp.library.depends= com.ibm.xsp.extlib.library, org.openntf.xsp.bootstrap.library – xsp.theme= (one of these) • bootstrapv2.3.2 • bootstrapv2.3.2r • bootstrapv3.0.0 56 DemoXPage721
  • 57.  Prerequisites & Configuration  Form Table control  Data View control  Dojo Form controls  Dialogs and Value pickers  Navigation controls  Application Layout Design Framework  Wrap up 57
  • 58. Get the Slides and Demo Database http://www.tlcc.com/JMP102 58
  • 59. Key Points  Great stuff in the Extension Library – Build better looking apps faster  Data View and Form Table make your apps look very Web 2.0  OneUI is a very good idea  The Application Layout control is used to Rapidly develop a consistent user interface that can implement the “One UI” design framework (awesome)  Application Layout control + Bootstrap4XPages (totally awesome) 59
  • 60. Other Suggested Sessions  BP202 - Rapid XPages Development Using the Application Layout Control, Thursday at 11:00 – with Howard and Paul!  SHOW102 - XPages: Still No Experience Necessary, Wednesday at 10:30  CUST104 - XPages at SMC Corporation: See how XPages can drive business forward, Wednesday at 11:15  AD302 - Get the Best Out of Bootstrap with Bootstrap4XPages, Tuesday at 3:00  AD503 - XPages Mobile Development in IBM Domino 9.0.1 and Beyond, Thursday at 10:00  BP204 - It's Not Infernal: Dante's Nine Circles of XPages Heaven, Tuesday at 10:00  BP203 - EXTJS in XPages: Modernizing IBM Notes Views Without Sacrificing Functionality, Tuesday at 1:30 Reminder: Slides and Demo Database are at: http://www.tlcc.com/JMP102 60
  • 61.  Access Connect Online to complete your session surveys using any: – Web or mobile browser – Connect Online kiosk onsite 61