home *** CD-ROM | disk | FTP | other *** search
/ PC World 1997 November / PCWorld_1997-11_cd.bin / software / programy / komix / DATA.Z / newrazorfi.tcl < prev    next >
Text File  |  1997-03-18  |  3KB  |  107 lines

  1. #---------------------------------------------------------------------------
  2. #
  3. #      (c)     Cayenne Software Inc.    1997
  4. #
  5. #      File:           @(#)newrazorfi.tcl    /main/hindenburg/2
  6. #      Author:         <generated>
  7. #      Description:    VCM integration file
  8. #---------------------------------------------------------------------------
  9. # SccsId = @(#)newrazorfi.tcl    /main/hindenburg/2   18 Mar 1997 Copyright 1997 Cayenne Software Inc.
  10.  
  11. # Start user added include file section
  12. require_module_file "razorissue.tcl" razor-vcm
  13. # End user added include file section
  14.  
  15. require_module_file "newvsfiled.tcl" vcm
  16.  
  17. # Razor creation dialog: name, type, issue list. A select issue button
  18. # popops up an issue selector.
  19.  
  20. Class NewRazorFileDialog : {NewVSFileDialog} {
  21.     constructor
  22.     method destructor
  23.     method createInterface
  24.     method popUpIssueBrowser
  25.     method setIssues
  26.     method createVSFile
  27. }
  28.  
  29. constructor NewRazorFileDialog {class this name} {
  30.     set this [NewVSFileDialog::constructor $class $this $name]
  31.     # Start constructor user section
  32.     # End constructor user section
  33.     return $this
  34. }
  35.  
  36. method NewRazorFileDialog::destructor {this} {
  37.     # Start destructor user section
  38.     # End destructor user section
  39.     $this NewVSFileDialog::destructor
  40. }
  41.  
  42.  
  43. # Add issue list and select issue button.
  44. #
  45. method NewRazorFileDialog::createInterface {this} {
  46.     $this NewVSFileDialog::createInterface
  47.  
  48.     $this title "New Razor File"
  49.  
  50.     # Add issues part
  51.     HorSeparator new $this.DC.separator
  52.  
  53.     interface DlgRow $this.DC.issueRow {
  54.     Label label {
  55.         text "Issues:"
  56.     }
  57.     PushButton selectIssues {
  58.         label "Select Issues"
  59.     }
  60.     }
  61.  
  62.     SingleLineText new $this.DC.issueList
  63.  
  64.     $this.DC.issueRow.selectIssues activated "$this popUpIssueBrowser"
  65. }
  66.  
  67. method NewRazorFileDialog::popUpIssueBrowser {this} {
  68.     $this busy 1
  69.     if { ![isCommand .main.issueBrowser] } {
  70.     RazorIssueSelector new .main.issueBrowser
  71.     }
  72.  
  73.     .main.issueBrowser setSelectedSet [$this.DC.issueList text]
  74.     .main.issueBrowser clientObject $this
  75.     .main.issueBrowser popUp
  76. }
  77.  
  78.  
  79. # Used as callBack of the Issue browser to set the selected issues.
  80. #
  81. method NewRazorFileDialog::setIssues {this issues} {
  82.     $this.DC.issueList text $issues
  83.     $this busy 0
  84. }
  85.  
  86.  
  87. # Create file in Razor.
  88. #
  89. method NewRazorFileDialog::createVSFile {this name type} {
  90.     wmtkmessage "Creating Razor file '$name'"
  91.  
  92.     vsCommandHandler suspendOutput
  93.     busy {
  94.     set razorSystem [[ClientContext::global] currentSystem]
  95.     set issues [$this.DC.issueList text]
  96.     set razorFile [$razorSystem createVSFile $name $type "" $issues]
  97.     .main updateView
  98.     }
  99.     wmtkmessage ""
  100.     vsCommandHandler showOutput
  101.  
  102.     return $razorFile    
  103. }
  104.  
  105. # Do not delete this line -- regeneration end marker
  106.  
  107.