Tools__CheckinInfoDialog.st
branchjv
changeset 12572 8049ed54a850
parent 12431 9f0c59c742d5
parent 12560 27c2f7b1baa4
child 13170 c9b815af5777
--- a/Tools__CheckinInfoDialog.st	Wed Mar 27 12:24:47 2013 +0000
+++ b/Tools__CheckinInfoDialog.st	Thu Mar 28 12:24:57 2013 +0000
@@ -16,7 +16,8 @@
 SimpleDialog subclass:#CheckinInfoDialog
 	instanceVariableNames:'descriptionHolder logMessageHolder isStableHolder tagHolder
 		quickCheckInHolder quickCheckInVisibleHolder allowEmptyLogMessage
-		warningMessageHolder logHistory logHistoryHeadLineSelectionHolder'
+		warningMessageHolder logHistory logHistoryHeadLineSelectionHolder
+		validateConsistencyHolder validateConsistencyVisibleHolder'
 	classVariableNames:''
 	poolDictionaries:''
 	category:'System-SourceCodeManagement'
@@ -54,6 +55,45 @@
 "
 ! !
 
+
+!CheckinInfoDialog class methodsFor:'help specs'!
+
+flyByHelpSpec
+    "This resource specification was automatically generated
+     by the UIHelpTool of ST/X."
+
+    "Do not manually edit this!! If it is corrupted,
+     the UIHelpTool may not be able to read the specification."
+
+    "
+     UIHelpTool openOnClass:Tools::CheckinInfoDialog    
+    "
+
+    <resource: #help>
+
+    ^ super flyByHelpSpec addPairsFrom:#(
+
+#logMessage
+'This message is added as a check-in log message. 
+It can later be retrieved via the browser''s revision info menu function'
+
+#markAsStable
+'Mark this as a stable version (i.e. give it a stable tag)'
+
+#quickCheckin
+'Only checkin classes which have been vreated or changed during this session'
+
+#tag
+'Mark this version with a tag'
+
+#validateConsistency
+'Perform some consistency checks before checking in. 
+Especially checks the correctness of the ProjectDefinition vs. the actual set of classes in the image'
+
+)
+! !
+
+
 !CheckinInfoDialog class methodsFor:'interface specs'!
 
 windowSpec
@@ -84,13 +124,6 @@
         component: 
        (SpecCollection
           collection: (
-           (ComboListSpec
-              name: 'ComboList1'
-              layout: (LayoutFrame 180 0.0 38 0 0 1.0 58 0)
-              model: logHistoryHeadLineSelectionHolder
-              comboList: logHistoryHeadLines
-              useIndex: true
-            )
            (HorizontalPanelViewSpec
               name: 'HorizontalPanel2'
               layout: (LayoutFrame 0 0.0 0 0 0 1.0 32 0)
@@ -118,9 +151,24 @@
                
               )
             )
+           (LabelSpec
+              label: 'Previous Log Messages:'
+              name: 'Label5'
+              layout: (LayoutFrame 0 0 37 0 180 0 59 0)
+              translateLabel: true
+              adjust: right
+            )
+           (ComboListSpec
+              name: 'ComboList1'
+              layout: (LayoutFrame 180 0.0 38 0 0 1.0 58 0)
+              model: logHistoryHeadLineSelectionHolder
+              comboList: logHistoryHeadLines
+              useIndex: true
+            )
            (TextEditorSpec
               name: 'TextEditor1'
-              layout: (LayoutFrame 2 0.0 68 0 -2 1 -125 1)
+              layout: (LayoutFrame 2 0.0 68 0 -2 1 -152 1)
+              activeHelpKey: logMessage
               model: logMessageHolder
               hasHorizontalScrollBar: true
               hasVerticalScrollBar: true
@@ -128,14 +176,24 @@
             )
            (LabelSpec
               name: 'Label4'
-              layout: (LayoutFrame 0 0.0 -119 1 0 1.0 -97 1)
+              layout: (LayoutFrame 0 0.0 -147 1 0 1.0 -125 1)
               translateLabel: true
               labelChannel: warningMessageHolder
             )
            (CheckBoxSpec
+              label: 'Validate Package Consistency'
+              name: 'CheckBox1'
+              layout: (LayoutFrame 3 0 -122 1 -3 1 -100 1)
+              activeHelpKey: validateConsistency
+              visibilityChannel: validateConsistencyVisibleHolder
+              model: validateConsistencyHolder
+              translateLabel: true
+            )
+           (CheckBoxSpec
               label: 'Quick Checkin (Only Classes in ChangeSet)'
               name: 'CheckInChangedOnlyCheckbox'
               layout: (LayoutFrame 3 0 -95 1 -3 1 -73 1)
+              activeHelpKey: quickCheckin
               visibilityChannel: quickCheckInVisibleHolder
               model: quickCheckInHolder
               translateLabel: true
@@ -144,6 +202,7 @@
               label: 'Mark as Stable'
               name: 'MarkStableCheckBox'
               layout: (LayoutFrame 3 0 -68 1 -3 1 -46 1)
+              activeHelpKey: markAsStable
               model: isStableHolder
               translateLabel: true
             )
@@ -151,6 +210,7 @@
               label: 'Tag:'
               name: 'Label3'
               layout: (LayoutFrame -40 0.5 -67 1 0 0.5 -45 1)
+              activeHelpKey: tag
               translateLabel: true
               adjust: right
             )
@@ -192,13 +252,7 @@
                  )
                
               )
-            )
-           (LabelSpec
-              label: 'Previous Log Messages:'
-              name: 'Label5'
-              layout: (LayoutFrame 0 0 37 0 180 0 59 0)
-              translateLabel: true
-              adjust: right
+              keepSpaceForOSXResizeHandleH: true
             )
            )
          
@@ -206,6 +260,7 @@
       )
 ! !
 
+
 !CheckinInfoDialog class methodsFor:'opening'!
 
 getCheckinInfoFor:aString initialAnswer:initialAnswer
@@ -236,6 +291,23 @@
 !
 
 getCheckinInfoFor:aClassNameOrPackageNameString initialAnswer:initialAnswer withQuickOption:withQuickOption logHistory:logHistoryArg
+    ^  self     
+        getCheckinInfoFor:aClassNameOrPackageNameString 
+        initialAnswer:initialAnswer 
+        withQuickOption:withQuickOption 
+        logHistory:logHistoryArg 
+        withValidateConsistencyOption:false
+
+    "
+     self getCheckinInfoFor:'hello' initialAnswer:'bla'
+     self getCheckinInfoFor:'hello' initialAnswer:'bla' withQuickOption:true
+     self getCheckinInfoFor:'hello' initialAnswer:'bla' withQuickOption:true logHistory:nil withConsistencyCheckOption:true
+    "
+
+    "Created: / 12-03-2012 / 12:36:26 / cg"
+!
+
+getCheckinInfoFor:aClassNameOrPackageNameString initialAnswer:initialAnswer withQuickOption:withQuickOption logHistory:logHistoryArg withValidateConsistencyOption:withValidateConsistencyOption
     |dialog warnMessage|
 
     warnMessage := nil.
@@ -246,6 +318,7 @@
             description:aClassNameOrPackageNameString; 
             logMessage:initialAnswer;
             withQuickOption:withQuickOption;
+            withValidateConsistencyOption:withValidateConsistencyOption;
             logHistory:logHistoryArg.
 
         dialog warningMessageHolder value:warnMessage.
@@ -273,6 +346,7 @@
     "Created: / 12-03-2012 / 12:36:26 / cg"
 ! !
 
+
 !CheckinInfoDialog methodsFor:'accessing'!
 
 allowEmptyLogMessage
@@ -339,10 +413,19 @@
     "Created: / 12-09-2006 / 13:06:49 / cg"
 !
 
+validateConsistency
+    ^ self validateConsistencyHolder value
+!
+
 withQuickOption:aBoolean
     ^ self quickCheckInVisibleHolder value:aBoolean
+!
+
+withValidateConsistencyOption:aBoolean
+    ^ self validateConsistencyVisibleHolder value:aBoolean
 ! !
 
+
 !CheckinInfoDialog methodsFor:'aspects'!
 
 descriptionHolder
@@ -414,6 +497,20 @@
     ^ tagHolder
 !
 
+validateConsistencyHolder
+    validateConsistencyHolder isNil ifTrue:[
+        validateConsistencyHolder := true asValue.
+    ].
+    ^ validateConsistencyHolder
+!
+
+validateConsistencyVisibleHolder
+    validateConsistencyVisibleHolder isNil ifTrue:[
+        validateConsistencyVisibleHolder := false asValue.
+    ].
+    ^ validateConsistencyVisibleHolder
+!
+
 warningMessageHolder
     warningMessageHolder isNil ifTrue:[
         warningMessageHolder := nil asValue.
@@ -423,14 +520,15 @@
     "Created: / 06-07-2010 / 11:30:29 / cg"
 ! !
 
+
 !CheckinInfoDialog class methodsFor:'documentation'!
 
 version
-    ^ '$Header: /cvs/stx/stx/libtool/Tools__CheckinInfoDialog.st,v 1.15 2012-03-12 12:13:08 cg Exp $'
+    ^ '$Header: /cvs/stx/stx/libtool/Tools__CheckinInfoDialog.st,v 1.17 2013-03-28 00:14:16 cg Exp $'
 !
 
 version_CVS
-    ^ '$Header: /cvs/stx/stx/libtool/Tools__CheckinInfoDialog.st,v 1.15 2012-03-12 12:13:08 cg Exp $'
+    ^ '$Header: /cvs/stx/stx/libtool/Tools__CheckinInfoDialog.st,v 1.17 2013-03-28 00:14:16 cg Exp $'
 !
 
 version_HG