Event based programming
Download
1 / 14

Event-Based Programming - PowerPoint PPT Presentation


  • 131 Views
  • Updated On :

Event-Based Programming. Chris North cs3724: HCI. Presentations. HW#1 due today brian hostetler daniel boisson Vote: UI Hall of Fame/Shame?. Quiz. 3 UI interaction styles? dm Menu command. Quiz. 4 principles of direct manipulation? visual Actions reversible Feedback

loader
I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
capcha
Download Presentation

PowerPoint Slideshow about 'Event-Based Programming' - janae


An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript
Event based programming l.jpg

Event-Based Programming

Chris North

cs3724: HCI


Presentations l.jpg
Presentations

  • HW#1 due today

  • brian hostetler

  • daniel boisson

  • Vote: UI Hall of Fame/Shame?


Slide3 l.jpg
Quiz

  • 3 UI interaction styles?

    • dm

    • Menu

    • command


Slide4 l.jpg
Quiz

  • 4 principles of direct manipulation?

    • visual

    • Actions reversible

    • Feedback

    • Point select


Gui development goals l.jpg
GUI Development: Goals

  • Learn basic GUI concepts

    • Events, graphics, components, …

  • Learn some specific technologies

    • VisualBasic, Java, ASP

      Goal: can pick-up new technologies quickly

    • .NET, C#, Xwin, Java 49


  • Technologies l.jpg
    Technologies

    • Microsoft:

      • Visual Basic (6)

      • C++, MFC (dead!)

      • C#, .Net

      • Borland Delphi

  • Unix:

    • Xlib

    • Motif, …

    • Tcl/tk

    • Cross Platform:

      • Visix Galaxy (dead)

      • Java, Swing

  • Mac ???

  • Palm

  • Web

    • Dhtml, javascript

    • ASP, JSP, cgi, …

    • Cold fusion, …


  • Gui events l.jpg
    GUI Events

    System

    MS: Windows

    Unix: Xwindows

    Java: AWT/Swing

    event

    loop

    App Code:

    OK_button_callback()

    {

    do stuff;

    }

    Cancel_button_callback()

    {

    do different stuff;

    }

    Mouse click,

    Mouse move,

    Key press,

    Application

    OK

    Cancel


    Typical gui program l.jpg
    Typical GUI program

    App Code:

    Global storage for data state

    Startup stuff

    initialization

    create GUI

    Event callback proc

    Event callback proc

    Event callback proc

    Event callback proc

    Example: Word Processor

    Datastruct current_text

    Startup()

    current_text = “”

    create window, text area, buttons

    Event text area keypress(char key)

    current_text.insert(key)

    Event bold button click()

    current_text.makebold()


    Unpredictable flow l.jpg
    Unpredictable Flow

    Non-GUI app:

    Code

    Code

    Code

    Code

    Code

    Code

    Code

    Code

    Code

    Code

    Code

    Code

    Code

    GUI app:

    Global storage for data state

    Startup stuff

    initialization

    create GUI

    Event callback proc

    Event callback proc

    Event callback proc

    Event callback proc

    Event callback proc

    Event callback proc

    Event callback proc

    Most time spent idle!


    Visual basic l.jpg
    Visual Basic

    • Form = window

    • RAD tools

    • Components: properties, methods, events

    • Modes: edit, run

    • Debug

    • Object Browser

    • msdn

      • CD

      • Web: http://www.msdn.microsoft.com/library/en-us/vbcon98/html/vbmscVisualBasicDocumentationMap.asp


    Components l.jpg
    Components

    • Properties

      • Read/write (get/set)

      • E.g. color

  • Methods

    • Procedures or functions

    • E.g. move x,y,w,h

  • Events

    • Send message to component’s container

    • E.g. buttonClick


  • Project 1 vb l.jpg
    Project 1: VB

    • See website

    • Due Thurs Feb 7 (2 weeks)

    • Virtual VCR programming tool

    • Idea: Cable PC, records onto huge disk drive

    • Visual Basic

    • 50% UI design, 50% program

    • Individual assignment


    Slide14 l.jpg
    Next

    • Homework #1 due now

      Presentations:

    • Next Tues: bruce billian, nick meyers

    • Next Thurs: taylor mitchell, chris henry


    ad