home *** CD-ROM | disk | FTP | other *** search
/ PC World 1997 November / PCWorld_1997-11_cd.bin / software / programy / komix / DATA.Z / newproploc.tcl < prev    next >
Text File  |  1996-05-29  |  2KB  |  95 lines

  1. #---------------------------------------------------------------------------
  2. #
  3. #      (c)     Cadre Technologies Inc.    1996
  4. #
  5. #      File:           @(#)newproploc.tcl    1.11
  6. #      Author:         <generated>
  7. #      Description:
  8. #---------------------------------------------------------------------------
  9. # SccsId = @(#)newproploc.tcl    1.11   05 Apr 1996 Copyright 1996 Cadre Technologies Inc.
  10.  
  11. # Start user added include file section
  12. # End user added include file section
  13.  
  14. require "newcustobj.tcl"
  15.  
  16. Class NewPropLocDialog : {NewCustObjectDialog} {
  17.     constructor
  18.     method destructor
  19.     method popUp
  20.     method handleOkPressed
  21.     attribute editorArea
  22. }
  23.  
  24. constructor NewPropLocDialog {class this name} {
  25.     set this [NewCustObjectDialog::constructor $class $this $name]
  26.     # Start constructor user section
  27.     $this title "New Property Location"
  28.     interface DlgColumn $this.DC {
  29.         allowResize 1
  30.         Label L {
  31.             text "Property:"
  32.         }
  33.         BrowsView nameBV {
  34.             rowCount 10
  35.             columnCount 30
  36.             selectionPolicy BROWSE
  37.             mode DETAIL
  38.         }
  39.     }
  40.     BrowsHeader new $this.DC.nameBV.shortBH -label Name -width 12
  41.     BrowsHeader new $this.DC.nameBV.longBH -label "Long Name" -width 30
  42.  
  43.     $this helpPressed { .main helpOnName newPropLocation }
  44.     $this okPressed "$this handleOkPressed"
  45.  
  46.     # End constructor user section
  47.     return $this
  48. }
  49.  
  50. method NewPropLocDialog::destructor {this} {
  51.     # Start destructor user section
  52.     # End destructor user section
  53.     $this NewCustObjectDialog::destructor
  54. }
  55.  
  56. method NewPropLocDialog::popUp {this} {
  57.  
  58.     set objs [$this.DC.nameBV objectSet]
  59.  
  60.     if [lempty $objs] {
  61.         set dict [[$this editorArea] longName]
  62.  
  63.         foreach def [$dict names] {
  64.             set objName $this.DC.nameBV.$def
  65.             BrowsObject new $objName
  66.             $objName smallIcon folder_16
  67.             $objName label $def
  68.             $objName details "\"[$dict set $def]\""
  69.             $objName activated "$this handleOkPressed"
  70.         }
  71.  
  72.         # sort on name
  73.         $this.DC.nameBV sort -column $this.DC.nameBV.shortBH
  74.  
  75.         $this.DC.nameBV selectedSet [lindex [$this.DC.nameBV objectSet] 0]
  76.     }
  77.  
  78.     $this TemplateDialog::popUp
  79. }
  80.  
  81. method NewPropLocDialog::handleOkPressed {this} {
  82.  
  83.     set name [[$this.DC.nameBV selectedSet] label]
  84.  
  85.     if {$name == ""} {
  86.         wmtkerror "Invalid selection."
  87.     } else {
  88.         $this popDown
  89.         [.main editorArea] newObject $name [$this edit]
  90.     }
  91. }
  92.  
  93. # Do not delete this line -- regeneration end marker
  94.  
  95.