home *** CD-ROM | disk | FTP | other *** search
/ Monster Media 1993 #2 / Image.iso / clipper / pow_tb.zip / TBSIMPLE.PRG < prev    next >
Text File  |  1993-05-14  |  3KB  |  99 lines

  1.    /* tbSimple.prg: A very simple browse of supplier.dbf. 
  2.  
  3.    Copyright (C) Dave Boettcher 1993. This source code, and functional 
  4.    fragments thereof, may only be distributed unchanged and as part of 
  5.    the file POWER_TB.ARJ. See POWER_TB.TXT for full copyright details.
  6.    
  7.    Last change:  14 May 93       6:48 pm
  8.    */
  9.    
  10.    #include "setcurs.ch"
  11.    #include "inkey.ch"
  12.    #include "box.ch"
  13.    
  14. function main()
  15.    
  16.    local oBrowse
  17.    local oColumn
  18.    local nKey
  19.    local lCont := .T.
  20.    local oldColour := setcolor("w+/b")
  21.    local oldCursor := setcursor(SC_NONE)   
  22.    
  23.    use supplier new
  24.    
  25.    clear screen
  26.    @ 0, 0, 24, 79 box B_DOUBLE
  27.    
  28.    oBrowse := tbrowsedb(1, 1, 23, 78)
  29.    oBrowse:headsep   := "─┬─"
  30.    oBrowse:colsep    := " │ "
  31.    
  32.    oColumn := TBColumnNew("Name", {|| supplier->name})
  33.    oColumn:width := 30
  34.    oColumn:footsep := "─┴─"
  35.    oBrowse:AddColumn(oColumn)
  36.    
  37.    oColumn := TBColumnNew("Street", {|| supplier->street})
  38.    oColumn:width := 20 
  39.    oColumn:footsep := "─┴─"
  40.    oBrowse:AddColumn(oColumn)
  41.    
  42.    oColumn := TBColumnNew("Village", {|| supplier->village})
  43.    oColumn:width := 20 
  44.    oColumn:footsep := "─┴─"
  45.    oBrowse:AddColumn(oColumn)
  46.    
  47.    oColumn := TBColumnNew("Town", {|| supplier->town})
  48.    oColumn:width := 20
  49.    oColumn:footsep := "─┴─"
  50.    oBrowse:AddColumn(oColumn)
  51.    
  52.    oColumn := TBColumnNew("County", {|| supplier->county})
  53.    oColumn:width := 20
  54.    oColumn:footsep := "─┴─"
  55.    oBrowse:AddColumn(oColumn)
  56.    
  57.    oColumn := TBColumnNew("Postcode", {|| supplier->postcode})
  58.    oColumn:width := 7
  59.    oColumn:footsep := "─┴─"
  60.    oBrowse:AddColumn(oColumn)
  61.    
  62.    oColumn := TBColumnNew("Product", {|| supplier->product})
  63.    oColumn:width := 250
  64.    oColumn:footsep := "─┴─"
  65.    oBrowse:AddColumn(oColumn)
  66.    
  67.    do while lCont
  68.       
  69.       do while .not. oBrowse:stable .AND. (nKey := InKey()) == 0
  70.          oBrowse:Stabilize()
  71.       enddo
  72.       
  73.       if oBrowse:stable
  74.          if (oBrowse:hitTop .OR. oBrowse:hitBottom)
  75.             Tone(125,0)
  76.          endif
  77.          nKey := InKey(0)
  78.       endif
  79.       
  80.       do Case
  81.          Case nKey == K_DOWN        ;  oBrowse:Down()
  82.          Case nKey == K_UP          ;  oBrowse:Up()
  83.          Case nKey == K_LEFT        ;  oBrowse:Left()
  84.          Case nKey == K_RIGHT       ;  oBrowse:Right()
  85.          Case nKey == K_PGDN        ;  oBrowse:PageDown()
  86.          Case nKey == K_PGUP        ;  oBrowse:PageUp()
  87.          Case nKey == K_CTRL_PGUP   ;  oBrowse:GoTop()
  88.          Case nKey == K_CTRL_PGDN   ;  oBrowse:GoBottom()
  89.          Case nKey == K_ESC         ;  lCont := .F.
  90.       endcase
  91.       
  92.    enddo
  93.    
  94.    setcolor(oldColour)
  95.    setcursor(oldCursor)
  96.    clear screen
  97.    
  98.    return nil
  99.