MCRepositoryBrowser.st
changeset 460 46f1637ee276
parent 435 b0695f00424b
child 462 bc04bf43bf7a
--- a/MCRepositoryBrowser.st	Fri Aug 26 11:08:06 2011 +0200
+++ b/MCRepositoryBrowser.st	Mon Aug 29 08:12:03 2011 +0200
@@ -86,6 +86,7 @@
           name: 'MC Repository Browser'
           min: (Point 10 10)
           bounds: (Rectangle 0 0 796 497)
+          menu: mainMenu
         )
         component: 
        (SpecCollection
@@ -108,18 +109,23 @@
                           majorKey: MCRepositoryList
                           subAspectHolders: 
                          (Array
+                            
                            (SubChannelInfoSpec
                               subAspect: menuHolder
                               aspect: repositoryListMenu
+                            ) 
+                           (SubChannelInfoSpec
+                              subAspect: inGeneratorHolder
+                              aspect: repositoriesHolder
                             )
                             
                            (SubChannelInfoSpec
-                              subAspect: inGeneratorHolder
-                              aspect: repositoriesHolder
+                              subAspect: outGeneratorHolder
+                              aspect: packagesHolder
                             ) 
                            (SubChannelInfoSpec
-                              subAspect: outGeneratorHolder
-                              aspect: packagesHolder
+                              subAspect: selectionHolder
+                              aspect: selectedRepositoryHolder
                             )
                           )
                           createNewApplication: true
@@ -132,18 +138,23 @@
                           majorKey: MCPackageList
                           subAspectHolders: 
                          (Array
+                            
                            (SubChannelInfoSpec
                               subAspect: menuHolder
                               aspect: packageListMenu
+                            ) 
+                           (SubChannelInfoSpec
+                              subAspect: inGeneratorHolder
+                              aspect: packagesHolder
                             )
                             
                            (SubChannelInfoSpec
-                              subAspect: inGeneratorHolder
-                              aspect: packagesHolder
+                              subAspect: outGeneratorHolder
+                              aspect: versionsHolder
                             ) 
                            (SubChannelInfoSpec
-                              subAspect: outGeneratorHolder
-                              aspect: versionsHolder
+                              subAspect: selectionHolder
+                              aspect: selectedPackageHolder
                             )
                           )
                           createNewApplication: true
@@ -192,12 +203,90 @@
          
         )
       )
-
-    "Modified: / 22-08-2011 / 10:31:32 / cg"
 ! !
 
 !MCRepositoryBrowser class methodsFor:'menu specs'!
 
+mainMenu
+    "This resource specification was automatically generated
+     by the MenuEditor of ST/X."
+
+    "Do not manually edit this!! If it is corrupted,
+     the MenuEditor may not be able to read the specification."
+
+
+    "
+     MenuEditor new openOnClass:MCRepositoryBrowser andSelector:#mainMenu
+     (Menu new fromLiteralArrayEncoding:(MCRepositoryBrowser mainMenu)) startUp
+    "
+
+    <resource: #menu>
+
+    ^ 
+     #(Menu
+        (
+         (MenuItem
+            label: 'File'
+            translateLabel: true
+            submenu: 
+           (Menu
+              (
+               (MenuItem
+                  label: 'Exit'
+                  itemValue: closeRequest
+                  translateLabel: true
+                )
+               )
+              nil
+              nil
+            )
+          )
+         (MenuItem
+            label: 'Repository'
+            translateLabel: true
+            submenuChannel: repositoryListMenu
+          )
+         (MenuItem
+            label: 'Package'
+            translateLabel: true
+            submenuChannel: packageListMenu
+          )
+         (MenuItem
+            label: 'Version'
+            translateLabel: true
+            submenuChannel: versionsMenu
+          )
+         (MenuItem
+            label: 'Help'
+            translateLabel: true
+            startGroup: conditionalRight
+            submenu: 
+           (Menu
+              (
+               (MenuItem
+                  label: 'Documentation'
+                  itemValue: openDocumentation
+                  translateLabel: true
+                )
+               (MenuItem
+                  label: '-'
+                )
+               (MenuItem
+                  label: 'About this Application...'
+                  itemValue: openAboutThisApplication
+                  translateLabel: true
+                )
+               )
+              nil
+              nil
+            )
+          )
+         )
+        nil
+        nil
+      )
+!
+
 packageListMenu
     "This resource specification was automatically generated
      by the MenuEditor of ST/X."
@@ -217,7 +306,8 @@
      #(Menu
         (
          (MenuItem
-            label: 'No Items Yet  !!'
+            enabled: packageSelectedAndOperatingSystemIsWindows
+            label: 'No Entry Yet'
             translateLabel: true
           )
          )
@@ -233,6 +323,7 @@
     "Do not manually edit this!! If it is corrupted,
      the MenuEditor may not be able to read the specification."
 
+
     "
      MenuEditor new openOnClass:MCRepositoryBrowser andSelector:#repositoryListMenu
      (Menu new fromLiteralArrayEncoding:(MCRepositoryBrowser repositoryListMenu)) startUp
@@ -248,6 +339,15 @@
             itemValue: repositoryAdd
             translateLabel: true
           )
+         (MenuItem
+            label: '-'
+          )
+         (MenuItem
+            enabled: repositoryIsDirectory
+            label: 'Browse Directory'
+            itemValue: repositoryBrowseDirectory
+            translateLabel: true
+          )
          )
         nil
         nil
@@ -261,6 +361,7 @@
     "Do not manually edit this!! If it is corrupted,
      the MenuEditor may not be able to read the specification."
 
+
     "
      MenuEditor new openOnClass:MCRepositoryBrowser andSelector:#versionsMenu
      (Menu new fromLiteralArrayEncoding:(MCRepositoryBrowser versionsMenu)) startUp
@@ -299,6 +400,12 @@
             label: '-'
           )
          (MenuItem
+            enabled: hasVersionSelectedAndOperatingSystemIsWindowsHolder
+            label: 'Show in Winzip'
+            itemValue: showPackageInWinZip
+            translateLabel: true
+          )
+         (MenuItem
             enabled: hasVersionSelectedHolder
             label: 'Inspect'
             itemValue: versionInspect
@@ -308,6 +415,8 @@
         nil
         nil
       )
+
+    "Modified: / 25-08-2011 / 08:48:36 / cg"
 ! !
 
 !MCRepositoryBrowser methodsFor:'accessing'!
@@ -335,6 +444,13 @@
 
 !MCRepositoryBrowser methodsFor:'aspect-queries'!
 
+hasVersionSelectedAndOperatingSystemIsWindowsHolder
+    ^[self hasVersionSelectedHolder value
+      and:[ OperatingSystem isMSWINDOWSlike ]]
+
+    "Created: / 25-08-2011 / 08:49:24 / cg"
+!
+
 hasVersionSelectedHolder
 
     ^[self selectedVersionHolder value notNil]
@@ -535,11 +651,11 @@
 !MCRepositoryBrowser class methodsFor:'documentation'!
 
 version
-    ^ '$Header: /cvs/stx/stx/goodies/monticello/MCRepositoryBrowser.st,v 1.4 2011-08-22 08:36:12 cg Exp $'
+    ^ '$Header: /cvs/stx/stx/goodies/monticello/MCRepositoryBrowser.st,v 1.5 2011-08-29 06:12:03 cg Exp $'
 !
 
 version_CVS
-    ^ '$Header: /cvs/stx/stx/goodies/monticello/MCRepositoryBrowser.st,v 1.4 2011-08-22 08:36:12 cg Exp $'
+    ^ '$Header: /cvs/stx/stx/goodies/monticello/MCRepositoryBrowser.st,v 1.5 2011-08-29 06:12:03 cg Exp $'
 !
 
 version_SVN