--- a/Tools__StoreProjectBrowser.st Mon Aug 28 15:35:24 2006 +0200
+++ b/Tools__StoreProjectBrowser.st Mon Aug 28 15:39:01 2006 +0200
@@ -134,6 +134,7 @@
name: 'PackageList'
layout: (LayoutFrame 0 0 60 0 0 1 0 1)
model: selectedPackageHolder
+ menu: packageListMenu
hasHorizontalScrollBar: true
hasVerticalScrollBar: true
valueChangeSelector: packageSelectionChanged
@@ -165,11 +166,12 @@
(SequenceViewSpec
name: 'VersionsList'
model: selectedVersionHolder
+ menu: versionsListMenu
hasHorizontalScrollBar: true
hasVerticalScrollBar: true
+ valueChangeSelector: versionSelectionChanged
useIndex: true
sequenceList: versionsList
- valueChangeSelector: versionSelectionChanged
)
(ViewSpec
name: 'Box2'
@@ -331,6 +333,70 @@
nil
nil
)
+!
+
+packageListMenu
+ "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:Tools::StoreProjectBrowser andSelector:#packageListMenu
+ (Menu new fromLiteralArrayEncoding:(Tools::StoreProjectBrowser packageListMenu)) startUp
+ "
+
+ <resource: #menu>
+
+ ^
+ #(Menu
+ (
+ (MenuItem
+ label: 'Update'
+ itemValue: menuUpdatePackageList
+ translateLabel: true
+ )
+ )
+ nil
+ nil
+ )
+!
+
+versionsListMenu
+ "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:Tools::StoreProjectBrowser andSelector:#versionsListMenu
+ (Menu new fromLiteralArrayEncoding:(Tools::StoreProjectBrowser versionsListMenu)) startUp
+ "
+
+ <resource: #menu>
+
+ ^
+ #(Menu
+ (
+ (MenuItem
+ label: 'Load'
+ itemValue: versionsListMenuLoad
+ translateLabel: true
+ )
+ (MenuItem
+ label: '-'
+ )
+ (MenuItem
+ label: 'Update'
+ itemValue: versionsListMenuUpdate
+ translateLabel: true
+ )
+ )
+ nil
+ nil
+ )
! !
!StoreProjectBrowser class methodsFor:'startup'!
@@ -354,7 +420,7 @@
selectedBundleOrPackage := packagesList value at:(selectedPackageHolder value).
self updateVersionsListFor:selectedBundleOrPackage.
- versionsList notEmptyOrNil ifTrue:[
+ versionsList value notEmptyOrNil ifTrue:[
newest := versionsList value first.
self updateCommentFor:newest
]
@@ -562,6 +628,10 @@
getConnection
|session|
+ dbInfo isNil ifTrue:[
+ self askForDatabaseInfo
+ ].
+
session := SQL::ODBCSession new.
session
connectWithUsername:(dbInfo userName)
@@ -598,7 +668,7 @@
getVersionsForBundleOrPackage:aBundle isBundle:isBundle
|items cursor row table|
- connection isNil ifTrue:[^ self ].
+ connection isNil ifTrue:[^ #() ].
table := isBundle ifTrue:'tw_bundle' ifFalse:'tw_package'.
@@ -712,8 +782,7 @@
^ self.
].
connection := session.
- self window label:(aDBInfo dbName).
- self infoLabelHolder value:('Connected to ',aDBInfo dbName).
+ self updateInfo.
^ self
!
@@ -726,10 +795,30 @@
connection disconnect.
connection := nil.
]
+!
+
+updateInfo
+ self isConnected ifTrue:[
+ self window label:('Store Browser: ',dbInfo dbName).
+ self infoLabelHolder value:('Connected to ',dbInfo dbName).
+ ] ifFalse:[
+ self window label:'Store Browser'.
+ self infoLabelHolder value:nil.
+ ]
! !
!StoreProjectBrowser methodsFor:'menu actions'!
+askForDatabaseInfo
+ |defaultInfo|
+
+ defaultInfo := StoreSourceCodeManager defaultDBInfo.
+ defaultInfo dbName isNil ifTrue:[
+ defaultInfo := StoreSourceCodeManager repositoryInfoPerModule first.
+ ].
+ dbInfo := defaultInfo
+!
+
menuConnect
|session|
@@ -739,6 +828,7 @@
^ self.
].
connection := session.
+ self updateInfo.
]
!
@@ -746,6 +836,7 @@
connection notNil ifTrue:[
connection disconnect.
connection := nil.
+ self updateInfo.
]
!
@@ -934,5 +1025,5 @@
!StoreProjectBrowser class methodsFor:'documentation'!
version
- ^ '$Header: /cvs/stx/stx/libtool/Tools__StoreProjectBrowser.st,v 1.7 2006-08-28 08:59:54 cg Exp $'
+ ^ '$Header: /cvs/stx/stx/libtool/Tools__StoreProjectBrowser.st,v 1.8 2006-08-28 13:39:01 cg Exp $'
! !