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

  1. #---------------------------------------------------------------------------
  2. #
  3. #      (c)     Cayenne Software Inc.    1997
  4. #
  5. #      File:           @(#)msrepchoos.tcl    /main/titanic/2
  6. #      Author:         <generated>
  7. #      Description:
  8. #---------------------------------------------------------------------------
  9. # SccsId = @(#)msrepchoos.tcl    /main/titanic/2   29 Aug 1997 Copyright 1997 Cayenne Software Inc.
  10.  
  11. # Start user added include file section
  12. # End user added include file section
  13.  
  14.  
  15. Class MsRepChooser : {FileChooser} {
  16.     method destructor
  17.     constructor
  18.     method handleOk
  19.     method hasUml
  20.     attribute repName
  21.     attribute msRep
  22.     attribute root
  23.     attribute repFound
  24.     attribute userName
  25.     attribute password
  26. }
  27.  
  28. method MsRepChooser::destructor {this} {
  29.     # Start destructor user section
  30.     set  msRep [$this msRep]
  31.     if [llength $msRep] {
  32.         $msRep delete
  33.     }
  34.     set root [$this root]
  35.     if [llength $root] {
  36.         $root delete
  37.     }
  38.     # End destructor user section
  39. }
  40.  
  41. constructor MsRepChooser {class this name userName password} {
  42.     set this [FileChooser::constructor $class $this $name]
  43.     $this userName $userName
  44.     $this password $password
  45.     # Start constructor user section
  46.     $this config \
  47.         -okPressed "$this handleOk" \
  48.         -cancelPressed "$this delete" \
  49.         -selectionPolicy SINGLE \
  50.         -filter "*.mdb" 
  51.     $this msRep [OleAutoObject new ObjectTeamMsRepUml.MSRepository]
  52.     $this repFound 0
  53.     # End constructor user section
  54.     return $this
  55. }
  56.  
  57. method MsRepChooser::handleOk {this} {
  58.     set selectedMdb [lindex [$this selectedSet] 0]
  59.     #$this repName "DBQ=$selectedMdb"
  60.     $this repName $selectedMdb
  61.     set root [$this root]
  62.     if [llength $root] {
  63.         $root delete
  64.     }
  65.     if [catch {set root [[$this msRep] openDB [$this repName]]}]  {
  66.         $this repFound 0
  67.     } else {
  68.         $this repFound 1
  69.     }
  70.     $this root $root
  71. }
  72.  
  73. method MsRepChooser::hasUml {this} {
  74.     set root [$this root]
  75.     if ![llength $root] {
  76.         return 0
  77.     }
  78.     if [$root hasTypeLib "UML Type Information Model"] {
  79.         return 1
  80.     }
  81.     if [$root hasTypeLib UML] {
  82.         return 1
  83.     }
  84.     return 0
  85. }
  86.  
  87. # Do not delete this line -- regeneration end marker
  88.  
  89.