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

  1. #---------------------------------------------------------------------------
  2. #
  3. #      (c)     Cadre Technologies Inc.    1996
  4. #
  5. #      File:           @(#)newmenusep.tcl    /main/hindenburg/2
  6. #      Author:         <generated>
  7. #      Description:
  8. #---------------------------------------------------------------------------
  9. # SccsId = @(#)newmenusep.tcl    /main/hindenburg/2   11 Nov 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 NewMenuSeparatorDialog : {NewCustObjectDialog} {
  17.     constructor
  18.     method destructor
  19.     method popUp
  20. }
  21.  
  22. constructor NewMenuSeparatorDialog {class this name} {
  23.     set this [NewCustObjectDialog::constructor $class $this $name]
  24.     # Start constructor user section
  25.     $this title CustMenuSeparator
  26.     
  27.     interface DlgColumn $this.DC {
  28.         Label L {
  29.             text "Parent:"
  30.         }
  31.         DropDwnList  parentDDL {
  32.             rowCount 10
  33.         }
  34.     }
  35.  
  36.     $this okPressed {
  37.         %this popDown
  38.         [.main editorArea] \
  39.             newObject [%this title] CustMenuSeparator \
  40.             [%this.DC.parentDDL selected] [%this edit]
  41.     }
  42.  
  43.     lappend checkList "$this.DC.parentDDL selectionChanged selected"
  44.     $this checkList $checkList
  45.  
  46.     $this helpPressed { .main helpOnName newMenuPart }
  47.     # End constructor user section
  48.     return $this
  49. }
  50.  
  51. method NewMenuSeparatorDialog::destructor {this} {
  52.     # Start destructor user section
  53.     # End destructor user section
  54.     $this NewCustObjectDialog::destructor
  55. }
  56.  
  57. method NewMenuSeparatorDialog::popUp {this} {
  58.  
  59.     if {[[.main editorArea] _level] != "user"} {
  60.         # remove the invalid ones (user defined parents)
  61.         set pars {}
  62.         foreach i [[.main editorArea] getParentTypeObjects] {
  63.             if {![$i userDefined]} {
  64.                 lappend pars $i
  65.             }
  66.         }
  67.     } else {
  68.         set pars [[.main editorArea] getParentTypeObjects]
  69.     }
  70.  
  71.     set select [[.main editorArea] selected]
  72.     set names {}
  73.     foreach i $pars {
  74.         lappend names [$i label]
  75.     }
  76.     $this.DC.parentDDL entrySet $names
  77.     if {[isCommand $select] && [$select isA ParentNode]} {
  78.         $this.DC.parentDDL selected [$select label]
  79.     } else {
  80.         $this.DC.parentDDL selected [lindex $names 0]
  81.     }
  82.  
  83.     $this TemplateDialog::popUp
  84. }
  85.  
  86. # Do not delete this line -- regeneration end marker
  87.  
  88.