WIMP Elements. GUI goo. What is WIMP?

Similar documents
Interaction Style Categories. COSC 3461 User Interfaces. Windows. Window Manager

Containers. Atomic Components. Containment Hierarchy. Example Example 3.3 (revisited) Example DemoSwing.java

Sema Foundation ICT Department. Lesson - 18

Single Menus No other menus will follow necessitating additional user choices

What is interaction? communication user system. communication between the user and the system

Libraries. Multi-Touch. Aero Peek. Sema Foundation 10 Classes 2 nd Exam Review ICT Department 5/22/ Lesson - 15

Human-Computer Interaction IS4300

chapter 3 the interaction

Introduction to the JAVA UI classes Advanced HCI IAT351

Center for Faculty Development and Support Creating Powerful and Accessible Presentation

Human Computer Interaction Lecture 07. The Interaction

Human-Computer Interaction. Chapter 2. What is HCI?

File Storage & Windows Tips

Introduction p. 1 JFC Architecture p. 5 Introduction to JFC p. 7 The JFC 1.2 Extension p. 8 Swing p. 9 Drag and Drop p. 16 Accessibility p.

Chapter 10: Interface Components

Control Flow: Overview CSE3461. An Example of Sequential Control. Control Flow: Revisited. Control Flow Paradigms: Reacting to the User

Excel 2013 for Beginners

Getting Started with Windows XP

Computer Basics Microsoft Windows CB 200

Display Systems International Software Demo Instructions

Correcting Grammar as You Type. 1. Right-click the text marked with the blue, wavy underline. 2. Click the desired option on the shortcut menu.

RAM JAYAM VIDYAA MANDIR MATRIC HR SEC SCHOOL. Cumbum. Theni district. 1 D.EASWARAN M.Sc B.Ed Computer Instructor RJMS_SCHOOL.

The Interaction. notion of interaction interaction frameworks ergonomics interaction styles context of interaction

Windows Me Navigating

Software User s Manual

Microsoft Windows XP. Operating System. Starting Windows XP. You might be asked to enter your username and password

Guide to WB Annotations

What can Word 2013 do?

Microsoft Excel 2010 Part 2: Intermediate Excel

Section 2 Getting Started

Word 2013 Quick Start Guide

Graphical User Interface (GUI)

Switch between open apps Close the active item, or exit the active app

GUI Programming. Chapter. A Fresh Graduate s Guide to Software Development Tools and Technologies

Microsoft Office Training Skills 2010

Intermediate Word for Windows

AEMLog Users Guide. Version 1.01

XnView Image Viewer. a ZOOMERS guide

The Interaction. Dr. Karim Bouzoubaa

WORD 2010 TIP SHEET GLOSSARY

AutoCollage 2008 makes it easy to create an AutoCollage from a folder of Images. To create an AutoCollage:

WINDOWS NT BASICS

Computer Shortcut Keys

PowerPoint 2016 Basics for Mac

Introduction to Microsoft Office PowerPoint 2010

Using Windows 7 Explorer By Len Nasman, Bristol Village Computer Club

Correcting Grammar as You Type

2 Getting Started. Getting Started (v1.8.6) 3/5/2007

Lesson 4 - Creating a Text Document Using WordPad

Graphical User Interface (GUI)

Table of Contents Welcome to Menu.Applet... 2 Why Java -based menus?... 2 Basic terminology... 2 Getting to know Menu.Applet... 4 Creating a new menu

Getting Familiar with Microsoft Word 2010 for Windows

TABLE OF CONTENTS TABLE OF CONTENTS... 1 INTRODUCTION... 2 USING WORD S MENUS... 3 USING WORD S TOOLBARS... 5 TASK PANE... 9

Bold, Italic and Underline formatting.

Windows 10 Essentials

PowerPoint 2016 Building a Presentation

Using Adobe Photoshop

Getting Started with. Microsoft Office 2010

Microsoft How to Series

Introduction to Microsoft Word 2008

PROGRAMMING DESIGN USING JAVA (ITT 303) Unit 7

Table of Contents WINDOWS 95. What is Windows 95? Features LINC TWO

PowerPoint 2010 Level 1 Computer Training Solutions Student Guide Version Revision Date Course Length

Using Graphics. Digital Camera. Auto Shapes

Outline. Widgets. Categories of Widgets. What is a Widget?

DW DIGs Model Windows Tricks

WELCOME TO ALL-TECH SYSTEMS & CO INTRODUCTION TO MICROSOFT WORD TUTORIAL

Getting Started Guide

Horizon Launcher Configuration Guide

Microsoft PowerPoint 2010 Beginning

Quick Access Toolbar. You click on it to see these options: New, Open, Save, Save As, Print, Prepare, Send, Publish and Close.

Lesson 1: Getting Familiar with Microsoft Word 2007 for Windows

Microsoft Word 2010 Part 1: Introduction to Word

Introduction to Windows

Introduction to Microsoft Office 2016: Word

Beyond 20/20. Browser - English. Version 7.0, SP3

Chapter 9 Slide Shows

Introduction To Photoshop Basics!!

Impress Guide. Chapter 11 Setting Up and Customizing Impress

PowerPoint X. 1. The Project Gallery window with the PowerPoint presentation icon already selected. 2. Click on OK.

Using Microsoft Word. Getting Started With Word. Starting the Program

Sample Chapters. To learn more about this book, visit the detail page at: go.microsoft.com/fwlink/?linkid=192147

Word Creating & Using Tables. IT Training & Development (818) Information Technology

Introduction to MS Word XP 2002: An Overview

Access 2013 Keyboard Shortcuts

Introduction to Microsoft Windows

Chapter 9 Slide Shows

Getting Started (1.8.7) 9/2/2009

Microsoft PowerPoint 2013 Beginning

Screen Designer. The Power of Ultimate Design. 43-TV GLO Issue 2 01/01 UK

Software User s Manual

Microsoft Office Word 2016 for Mac

Microsoft Word Important Notice

COMP 388/441 HCI: 07 - Menu Selection, Forms, and Dialog Boxes Menu Selection, Forms, and Dialog Boxes

Introducing Motif. Motif User s Guide 1

For detailed instructions, click the links below. To ask questions, request features, or report problems, visit feedback.photoshop.com.

Excel Main Screen. Fundamental Concepts. General Keyboard Shortcuts Open a workbook Create New Save Preview and Print Close a Workbook

Introduction to Personal Computing

What is Emcee? Actions in Thumbnail View Starting Emcee and Activating the Thumbnail View... 5

Chapter 2 Using Slide Masters, Styles, and Templates

Transcription:

WIMP Elements GUI goo What is WIMP? 1

There are many kinds of WIMPs WIMP The GUI Interface Windows Icons Menus Pointers 2

Windows Icons Pointers Menus Windows Windows are areas of the screen that act like individual terminals for an application Behaviour of windows determined by the system s window manager (aka windowing system) Windows can contain text, graphics, menus, toolbars, etc. Can be moved, resized, closed, minimized, maximized 3

Parts of a Window title bar focus indicator (blue) size control menu bar contents scroll bar size control Layout Policy Multiple windows may exist simultaneously Physical arrangement determined by the window manager s layout policy Layout policy may be fixed or user-selectable Possible layouts include Overlapping - One window partially obscures another Tiled - Adjoin but don t overlap Cascading A sequence with each window offset from the preceding according to a rule (e.g., 10 pixels to the right and below) Let s see 4

Overlapping Windows Tiled Windows 5

Cascading Windows Focus The active window is said to have focus Title bar of active window is differentiated from the others by a distinct colour or style Clicking in an inactive window makes it the active window (i.e., gives it focus) Screen must be redrawn to bring the active window to the front 6

Window Size States Windows have three size states Maximized Fills available space Minimizied Reduced to a title bar or icon Normal (aka Restored) This is the size of the window, either when it was first opened, or before the window was maximized From this mode, the window width and height may be adjusted Removing Chrome Windows can be expanded even further than maximized by removing the window chrome and displaying the contents FULL SCREEN 7

Window Size Control (Windows) Via boxes in upper-right corner of window When maximized When restored When minimized Minimize Restore Close Minimize Restore Close Minimize Restore Close Window Size Control (2) Via handle in lower-right corner of window When normal Drag to resize 8

Window Size Control (3) Via virtual handles on edges When normal Drag either edge to resize height Drag either edge to resize width Resize From Any Corner Drag to resize 9

Window Managers User interfaces are typically implemented within the framework of a window manager Also known as windowing system or user interface management system (UIMS) Provides Partitioning to prevent chaos on the screen (What if there was only one window shared by all applications?) Layout policy Infrastructure to support common services in building UIs Window Manager Structure Base layer (implements the basic infrastructure) Output model (graphics primitives) Input model (keyboard, mouse) UI layer (handles all visible aspects) Presentation (e.g., what is on top?) Commands (window & content manipulation) Mapping of input actions to applications When building a UI, use services of windowing system where possible (rather than writing custom code) 10

Containment Hierarchy A window contains a number of nested interactive objects (e.g., buttons, text fields, other windows) Relationship of objects is expressed by a containment hierarchy (aka interactor tree) based on screen geometry of objects represents the hierarchy/nesting of the objects Containment Hierarchy - Example 1 11

Containment Hierarchy - Example 2 Java s Containment Hierarchy With JFC/Swing, the basic building block for a window is the JFrame and its associated panes 12

Java s Containment Hierarchy (2) See "Using Top-Level Containers" in the Swing Tutorial (click here) (http://docs.oracle.com/javase/tutorial/uiswing/components/toplevel.html) Containers Components are placed in containers A JFrame is a top-level container It exists mainly as a place for other components to paint themselves Other top-level containers are dialogs (JDialog) and applets (JApplet) Cannot place a JFrame inside a JFrame A JPanel is an intermediate container Sole purpose is to simplify the positioning of interactive objects, such as buttons or text fields Other intermediate containers are scroll panes (JScrollPane) and tabbed panes (JTabbedPane) Can place a JPanel inside a JPanel (or inside a JFrame, via the content pane) 13

Atomic Components An atomic component is a component that exists solely to present and perhaps accept information Examples: buttons (JButton), text fields (JTextField), combo boxes (JComboBox) They cannot hold other components JFrame and JPanel are also components, however They are not atomic components They can hold other components Containment Hierarchy for JFC/Swing 14

So Example Program DemoSwing.java JButton JLabel JFrame Root pane Layered pane Content pane JPanel (container) JButton CTRL-SHIFT-F1 dumps the containment hierarchy to the console (next slide) 15

Containment Hierarchy (abbreviated) for DemoSwing.java DemoSwingFrame[frame0,0,0,121x128,... javax.swing.jrootpane[,4,23,113x101,... javax.swing.jpanel[null.glasspane,0,0,113x101,... javax.swing.jlayeredpane[null.layeredpane,0,0,113x101,... javax.swing.jpanel[,0,0,113x101,... javax.swing.jbutton[,10,10,93x27,... javax.swing.jlabel[,10,37,93x27,... javax.swing.jbutton[,10,64,93x27,... Outline Windows Icons Pointers Menus 16

What is an Icon From Webster s dictionary: Icon: a pictorial representation A window may be closed and lost forever, or Shrunk to a reduced representation The reduced representation is called an icon The act of reducing a window to an icon is called iconifying or minimizing A window may be restored by clicking on its icon Advantages of icons Save screen space Serve as a reminder of available dialogs, applications, or commands that may be restored or invoked Icons Are Used to Represent 17

Outline Windows Icons Pointers Menus What is a Pointer? A pointer is the input device used to interact with GUI components E.g., mouse, trackball, joystick, touchpad, finger, stylus, light pen Two primary purposes Position control of the on-screen tracker Selection via buttons 18

Direct vs. Indirect Input Direct input Via finger, stylus, light pen No spatial displacement between input device and display Tracker generally not needed Selection via tapping or pressing Indirect input Via mouse, joystick, or trackball Spatial displacement between input device and display Tracker needed Selection via button presses Selection Primitives Generally, at least two buttons on pointing devices Selection primitives Primary button (default = left) Single Click/Tap select Double Click/Tap launch Drag select region Secondary button (default = right) Click/Force Touch invoke context-sensitive menu 19

Tracker The on-screen symbol that follows ( tracks ) the motion of the input device is called a tracker (aka cursor) Two primary purposes Position indicator crucial feedback for input control State indicator reveals current state of the system or GUI component Tracker Hot Spot The tracker is a bit-mapped image (x by y pixels) One pixel in the image is defined as the hot spot Selection occurs at the coordinate of the hot spot When designing custom trackers, use an image with an obvious hot spot if selection is required while the tracker is displayed 20

Tracker Examples Examples from MS Windows Where is the hot spot? Example Program DemoCursorControl.java 21

Outline Windows Icons Pointers Menus What is a Menu? A means of presenting a choice of operations that can be performed by the system at a given time Main advantage: Menu options are recognized rather than recalled Human ability to recognize is superior to ability to recall Example of recall: Who is the President of York University? Example of recognition: The captain of the Maple Leafs is (a) Nasem Kadri (b) Phil Kessel, (c) Dion Phaneuf, (d) Steven Harper. Menus typically navigated two ways Keyboard Pointing device 22

What is a Menu? A means of presenting a choice of operations that can be performed by the system at a given time Main advantage: Menu options are recognized rather than recalled Human ability to recognize is superior to ability to recall Example of recall: Who is the President of York University? Example of recognition: The President of York University is: (a) Satya Nadella (b) Mamdouh Shoukri, (c) Celine Dion, (d) Steven Harper. Menus typically navigated two ways Keyboard Pointing device Menu Location Most application windows include a menu bar directly below the title bar title bar menu bar 23

Menu Design Techniques Numerous techniques are used to design effective menus Many are accompanied by visual indicators Serve as a signal to the user Menus features Cascading submenus Groupings Dialog boxes Icons Keyboard input Mnemonics Accelerators Popup menus Cascading Menus Menus are inefficent if they contain too many items One solution is to use cascading menus (aka submenus) Selecting an item opens up another menu adjacent to selected item Several layers of cascading menus may be used Visual indicator: triangle Example 24

File menu File menu with focus on Preferences Groupings Similar items are grouped together in a menu Visual indicator: separator (i.e., line) Example 25

Color menu Image adjust group Visual indicator for group Channel group Palette group Color depth group Dialog Boxes A Menu choice that involves the collection of input parameters can use a dialog box May contain a message, editable fields, buttons, etc. Types of dialog boxes File (open, new, save as) Print Color chooser Visual indicator: Ellipsis ( ) Example 26

File menu Visual indicator for dialog box New dialog box Icons in Menus Menu items typically contain words as labels Two problems with words as labels: Culturally biased Often poorly express the purpose of the choice Icons are used to suggest purpose Example Icons can be used as, or added to, menu items for the same reason Example 27

Format menu Font icon Paragraph icon Keyboard Input for Menu Navigation Besides using a pointing device, most menus support keyboard input Best for expert/frequent users (because they are better at recall. For novices, recognize is better.) Typically use function keys or modifier keys (shift, control, alt) In many settings, systems are required to support full interaction using only a keyboard for input The goal: Accessibility for people with disabilities 28

Mnemonics vs. Accelerators Two techniques for keyboard menu navigation: mnemonics and accelerators Mnemonics The full menu hierarchy may be accessed using only the keyboard An underlined single letter serves as the mnemonic Alt-letter to initiate mnemonic access Accelerators Shortcuts to bypass the menu hierarchy and directly invoke a menu option Example Two keyboard techniques to invoke the Full Screen Preview command in the View menu Using mnemonics Alt-V Alt-P View menu Using accelerator Shift-Ctrl-A 29

Popup Menus Invoked anywhere by right-clicking on mouse button Menu that pops up is context sensitive (i.e., depends on where the tracker is when the mouse button is clicked) Context sensitive popup menus on Windows desktop. Right-click on Start button Right-click on background 30

Example Program DemoMenu.java Example Program DemoMenu2.java Note: uses Win32 Look and Feel 31

Example Program DemoLookAndFeel.java Metal (java) Motif Windows Example Program DemoFileMenu.java 32

Next Topic 33