home *** CD-ROM | disk | FTP | other *** search
/ PC World 1998 October / PCWorld_1998-10_cd.bin / software / prehled / komix / DATA.Z / iconselect.tcl < prev    next >
Text File  |  1997-07-31  |  2KB  |  68 lines

  1. #---------------------------------------------------------------------------
  2. #
  3. #      (c)     Cadre Technologies Inc.    1996
  4. #
  5. #      File:           @(#)iconselect.tcl    /main/titanic/1
  6. #      Author:         <generated>
  7. #      Description:
  8. #---------------------------------------------------------------------------
  9. # SccsId = @(#)iconselect.tcl    /main/titanic/1   31 Jul 1997 Copyright 1996 Cadre Technologies Inc.
  10.  
  11. # Start user added include file section
  12. # End user added include file section
  13.  
  14.  
  15. Class IconSelector : {TemplateDialog} {
  16.     method destructor
  17.     constructor
  18.     method select
  19.     method popUp
  20.     attribute image
  21.     attribute size
  22. }
  23.  
  24. method IconSelector::destructor {this} {
  25.     # Start destructor user section
  26.     # End destructor user section
  27. }
  28.  
  29. constructor IconSelector {class this name size} {
  30.     set this [TemplateDialog::constructor $class $this $name]
  31.     $this size $size
  32.     return $this
  33. }
  34.  
  35. method IconSelector::select {this forImage} {
  36.     $this image $forImage
  37.     $this popUp
  38. }
  39.  
  40. method IconSelector::popUp {this} {
  41.     
  42.     if {![isCommand $this.HCP]} {
  43.         HorControlPanel new $this.HCP
  44.     
  45.         set path [path_name concat [m4_var get M4_home] bitmaps]
  46.         set pattern *_[$this size]$BITMAP_EXT
  47.         set path [file join $path $pattern]
  48.  
  49.         set bitmaps [glob $path]
  50.         set count 1
  51.         foreach i $bitmaps {
  52.             set name [file rootname [lindex [file split $i] end]]
  53.             lappend names $name
  54.             incr count
  55.         }
  56.         $this.HCP rowCount [ expr {$count/10}]
  57.         $this.HCP entrySet $names
  58.         $this modal Yes
  59.         $this okPressed {[%this image] pixmap [%this.HCP selected]}
  60.         $this helpPressed {.main helpOnName iconSelector}
  61.     }
  62.     
  63.     $this TemplateDialog::popUp
  64. }
  65.  
  66. # Do not delete this line -- regeneration end marker
  67.  
  68.