Propositional Production Systems. State Space State space: The set of actions possible in a user interface, defined by a set of fields. In most cases.

Slides:



Advertisements
Similar presentations
ZoomText, Step-by-Step IU Adaptive Technology Center.
Advertisements

DEVELOPING ICT SKILLS PART -TWO
Using Macros and Visual Basic for Applications (VBA) with Excel
XP Tutorial 4 New Perspectives on Microsoft Windows XP 1 Microsoft Windows XP Personalizing Your Windows Environment Tutorial 4.
Operating Systems First Program to load. Controls Hardware And software. Enable User to operate PC( Personal Computer) –Examples: DOS: Disk Operating.
Visual Basic 2010 How to Program. © by Pearson Education, Inc. All Rights Reserved.2.
Visual Basic 2010 How to Program Reference: Instructor: Maysoon Bin Duwais slides Visual Basic 2010 how to program by Deitel © by Pearson Education,
CGS 1060 Introduction to MicroComputer Usage Chapter 1 Windows 7
Microsoft Windows Vista Chapter 6 Customizing Your Computer Using the Control Panel.
Exploring the Basics of Windows XP. Objectives Start Windows XP and tour the desktop Explore the Start menu Run software programs, switch between them,
Technology Education and Information Design Copyright 2009 MediTech NUI: New User Interface Online Training.
The sequence of folders to a file or folder is called a(n) ________.
Operating Systems Day 3. Changing Date & Time 1.Double click on digital clock on the notification area of a task bar (Click start button, Click control.
Office XP Introductory Concepts and Techniques Windows XP Edition M i c r o s o f t Windows XP Project An Introduction to Windows XP Professional and Office.
Exploring the Basics of Windows XP
COMPREHENSIVE Excel Tutorial 8 Developing an Excel Application.
Access Tutorial 10 Automating Tasks with Macros
LOGO Chapter V Formattings 1. LOGO Overview  Conditional formatting  Working with tables  Filtering  Sorting  Freeze panes  Pivot tables  How to.
Microsoft Visual Basic 2012 CHAPTER TWO Program and Graphical User Interface Design.
WORKING WITH MACROS CHAPTER 10 WORKING WITH MACROS.
I Can… Define basic file management and related terms Identify levels of a file system Identify and explain ways to view files in Windows OS Explain the.
BIM313 – Advanced Programming Simple Controls 1. Contents Traditional Controls – Labels, Text Boxes, Buttons, Check Boxes, List Boxes, Combo Boxes Advanced.
© 2008 The McGraw-Hill Companies, Inc. All rights reserved. WORD 2007 M I C R O S O F T ® THE PROFESSIONAL APPROACH S E R I E S Lesson 22 Macros.
Chapter 1 Databases and Database Objects: An Introduction
XP New Perspectives on Microsoft Office FrontPage 2003 Tutorial 4 1 Microsoft Office FrontPage 2003 Tutorial 4 – Using Shared Borders and Themes.
Microsoft Windows 7 Essential Introduction to Windows 7.
Microsoft Word 2000 Presentation 5. Major Word Topics Columns Tables Lists.
Introduction To Windows Operating Systems Manipulating Windows GUI
1 2 Lab 2: Organizing Your Work. 2 Competencies 3 After completing this lab, you will know how to: 1. Use Explorer to manage files. 2. Copy files. 3.
Chapter 3: Using GUI Objects and the Visual Studio IDE.
Introduction to Windows7
ACTIVITY : 5 BRIDGE COURSE of INFORMATION & COMMUNICATION TECHNOLOGY WORKING WITH WORD PROCESSING SOFTWARE TO PREPARE / FORMAT LETTERS/DOCUMENTS.
XP New Perspectives on Windows XP Tutorial 1 Exploring the Basics.
Computing Fundamentals Module Lesson 3 — Changing Settings and Customizing the Desktop Computer Literacy BASICS.
Windows Tutorial Common Objects ACOS: 1, 4. Using the Taskbar 1. Using the taskbar, you can switch between open programs and between open documents within.
XP New Perspectives on Microsoft Windows 2000 Professional Windows 2000 Tutorial 1 1 Microsoft Windows 2000 Professional Tutorial 1 – Exploring the Basics.
Introducing… Microsoft Windows VISTA Introducing… Microsoft Windows VISTA.
Office 2003 Introductory Concepts and Techniques, 2 nd Edition M i c r o s o f t Windows XP Project Introduction to Microsoft Windows XP and Office 2003.
Exploring Windows and Essential Computing Concepts 1 Windows Desktop u Windows Basics u Icon u Start Button u My Computer u Network Neighborhood u Recycle.
RIGHT Mouse Button Formatting Cut Copy Paste Save LEFT Mouse Button MAIN BUTTON Single clicks Double clicks Drag Highlight.
Microsoft Access 2010 Chapter 10 Administering a Database System.
® Microsoft Access 2010 Tutorial 12 Managing and Securing a Database.
Microsoft Publisher 2010 Chapter 1 Creating a Flyer.
CIS111 PC Literacy Getting Started with Windows XP.
Microsoft Office XP Illustrated Introductory, Enhanced Started with Windows 2000 Getting.
® Microsoft Office 2010 Exploring the Basics of Microsoft Windows 7.
CMPF124: Basics Skills for Knowledge Workers Manipulating Windows GUI.
Microsoft Office 2010 is the newest version of Microsoft Office, offering features that provide users with better functionality and easier ways to work.
Microsoft Visual Basic 2010 CHAPTER TWO Program and Graphical User Interface Design.
The Excel model for information processing The Excel model is a grid of cells in which items of information are stored and processed. Any information that.
1 After completing this lesson, you will be able to: Get around the Internet with your browser. Connect to the Internet. Print Web pages. Save Web pages.
1 Introduction to Microsoft Windows Lecture Outline.
Know your Operating System Thanks to Dina Sokol. An operating system is software (a computer program) that manages your computer.
® Microsoft Office 2010 Exploring the Basics of Microsoft Windows 7.
Windows 95/NT/XP. What is Windows 95/NT/XP n A program that sets up an environment for you to work in on your computer, based on colorful pictures (icons)
CMPF124 Personal Productivity With Information Technology Chapter 1 – Part 2 Introduction to Windows Operating Systems Manipulating Windows GUI CMPF 124.
Creating and Editing a Web Page Using Inline Styles
Module 2 Part II Introduction To Windows Operating Systems Manipulating Windows GUI Introduction To Windows Operating Systems Manipulating Windows GUI.
WINDOWS Part 2 – File Management. File Management Files - Electronic collections of data that you create and save on a computer Examples: –Resume created.
Fundamentals of Windows Mouse n 4 Basic Operations: –Pointing –Clicking –Double Clicking –Dragging.
Excel Tutorial 8 Developing an Excel Application
Appendix A Introduction to Windows 7
Computer Literacy BASICS
Introducing… Microsoft Windows7
Program and Graphical User Interface Design
Microsoft Windows 2000 Professional
Windows xp PART 1 DR.WAFAA SHRIEF.
Exploring the Basics of Windows XP
Objectives Use Help and Support Copy, move, rename, and delete files
Exploring the Basics of Microsoft Windows 7
Presentation transcript:

Propositional Production Systems

State Space State space: The set of actions possible in a user interface, defined by a set of fields. In most cases the state space is partitioned into a set of controller state spaces, one controller per widget. Field: Set of mutually exclusive conditions (or values). Each field is assigned one of its values. The collection of values gives the state of the system.

Example – Fields Two fields of a controller of a widget with their values listed in { } may be: Color {Black, White, Red} Size {Small, Medium, Large}

Input Events Widget controllers react to events performed by the user. These inputs are described by the Input field and additional fields to specify button states. The values of the Input field are events and are distinguished by a leading bullet .

Input Events (2) Input {  MouseDown (one of the mouse buttons is pressed),  MouseUp (one of the mouse buttons is released),  MouseMove (mouse position is changed),  MouseEnter (mouse position enters a subwindow),  MouseExit (mouse position enters a subwindow),  Keypress (from keyboard) }

Input Events (3) Button state fields ShiftKey {Shift, NoShift} ControlKey {Cntl, NoCntl} LeftButton {LeftDown, LeftUp} MiddleButton {MiddleDown, MiddleUp} RightButton {RightDown, RightUp} and possibly others

Exercises (1) 1.Why do we not use the simpler condition names of down and up for all the buttons? 2.Write the field values that represent discovering what an icon means by displaying its tag. 3.Write the field values that represent clicking on an OK button.

Exercises (2) 4.Write the field values that represent dragging a folder on the desktop to the Recycle Bin. 5.What key fields are missing from the Input event definition? 6.Give the field values that represent choosing the File menu with the keystroke shortcut.

Actions Widget controllers may have actions that they can perform. For example, a button controller for a Search button should, when pressed, invoke the search process. There may be more than one Action field if several actions can be carried out simultaneously. The values of an Action field are distinguished by a leading exclamation point !.

Actions (2) Examples: FileAction { !PrintFile, !DeleteFile, !CopyFile }. Shows that one must choose only one of the three actions to perform. Action { !Import }

Outside Events Frequently two widget controllers will want to communicate with one another. The values of a field describing an outside event are distinguished by a leading greater than sign > showing information coming to a controller or by a trailing greater than sign > showing information being sent to another controller.

Outside Events (2) Examples: EnDis { >Enable, >Disable} Shows that the widget controller accepts an outside message to enable or disable itself.

Outside Events (3) Example: A scroll bar needs to report its state to its parent window. TellParent { Scroll>, StepUp>, StepDown>, PageUp>, PageDown>}

Productions Productions are rules that show how the field values of the controller state space change. Productions are written in the form V1, V2,…, Vp  W1, W2,…, Wq where Vi is the initial value (or condition) of a field and Wj is the resulting value of a field. Because all field values are required to have unique names, the field names do not appear in the productions.

Productions (2) Example:  MouseUp, Shift  !DoMultipleSelect, InSelectMode says if the Input field has value  MouseUp and the ShiftKey field has value Shift, then set the Action field to !DoMultipleSelect (thus performing the action) and set another field to InSelectMode

Simple Button A simple button is a window area that will invoke an action whenever  MouseUp occurs in the area. The controller state space for a simple button is defined by two fields Action { !Import } Input {  MouseDown,  MouseUp,  MouseMove,  MouseEnter,  MouseExit,  Keypress } and one production  MouseUp  !Import

Button Fields Input { } LeftButton { LeftUp, LeftDown } VisualState { Inactive, Active, Disabled} Action { !Extract } DamageAction { !DamageAll } OutsideAction { >Enable, >Disable }

Example LocationInputLeftButton AMouseMoveLeftUp BMouseEnterLeftUp CMouseDownLeftDown DMouseMoveLeftDown EMouseUpLeftUp FMouseMoveLeftUp GMouseExitLeftUp HMouseMoveLeftUp

Button Rules (Productions) 1.  MouseDown, LeftDown, Inactive  Active, !DamageAll 2.  MouseUp, LeftUp, Active  Inactive, !Extract, !DamageAll 3. >Disable  Disabled, !DamageAll 4. >Enable, LeftDown  Active, !DamageAll 5. >Enable, LeftUp  Inactive, !DamageAll

Button Rules (2) 6.  MouseExit, Active  Inactive, !DamageAll 7.  MouseEnter, LeftDown, Inactive  Active, !DamageAll

Button: Exercises 1.Write the rules that describe the behavior of the Minimize button when it is pointed to. 2.Write the rules that describe the behavior of a button whose view does not change when it is pointed to. 3.Write the rules that describe the behavior of the Folders button in Windows Explorer when it is pointed to and the left mouse button is pressed.

Button: Exercises (2) 4.Write the rules that describe the behavior of the Folders button in Windows Explorer when the cursor is moved off the button while the left mouse button is pressed. 5.Write the rules that describe the behavior of the Folders button in Windows Explorer when it is pointed to and clicked.

Query Fields A query field describes information the widget controller needs from the View. Each field represents one type of information, with one of several values. E.g., the following field checks the mouse location for a scroll bar. Mouse Location { ?InSlider, ?InPageUp, ?InPageDown, ?InStepUp, ?InStepDown }

Query Fields: Exercises 1.Write a query field to work with a dialog box with drop down menu. 2.Write a query field to work with a pane separator.

Text Box Fields SelectionQuery { ?SelectedPoint, ?SelectedRange} SelectionAction { !SetSelectStart, !SetSelectEnd, !OrderSelection } State { Inactive, Dragging } KeyQuery { ?DeleteKey, ?LeftArrow, ?RightArrow, ?NormalKey } EditAction { !DeleteSelectedRange, !DeletePreviousChar, !InsertChar, !DecrementSelection, !IncrementSelection }

Text Box Productions 1.-MouseDown, LeftDown, Inactive  !GrabMouseFocus, !SetSelectStart, Dragging 2.-MouseMove, Dragging  !SetSelectEnd 3.-MouseUp, LeftUp, Dragging  !ReleaseMouseFocus, !SetSelectEnd, !OrderSelection, Inactive 4.-MouseDown, LeftDown, Inactive  !GrabKeyFocus 5.-KeyPress, ?DeleteKey, ?SelectedRange  !DeleteSelectedRange

Text Box Productions 6. -KeyPress, ?DeleteKey, ?SelectedPoint  !DeletePreviousChar 7. -KeyPress, ?LeftArrow  !DecrementSelection 8. -KeyPress, ?RightArrow  !IncrementSelection 9. -KeyPress, ?NormalKey, ?SelectedRange  !DeletedSelectedRange, !InsertChar 10. -KeyPress, ?NormalKey, ?SelectedPoint  !InsertChar

Text Box: Exercises (1) 1.Verify the productions (or change them as necessary) for the Named text box in the Find All Files window. 2.Verify the productions (or change them as necessary) for the text box that opens renaming a file in Windows Explorer. 3. Verify the productions (or change them as necessary) for the Location text box in Netscape.

Text Box: Exercises (2) 4. For Raskin’s design principles that describe interactions with text boxes, construct productions that codify these interactions. 5. For the course design principles that describe interactions with text boxes, construct productions that codify these interactions.

Text Box: Exercises (3) 6. Construct productions to describe the action that fills in a text box with a default character and leaves the character selected when one tabs to the next box. 7. Construct productions to describe the action that deselects a text string when either the right arrow or left arrow key is pressed.