StoreSourceCodeManagementSettingsAppl.st
branchjv
changeset 12123 4bde08cebd48
parent 11126 6ac7a4d1e195
child 12125 0c49a3b13e43
equal deleted inserted replaced
11227:3d57003855a7 12123:4bde08cebd48
    10  hereby transferred.
    10  hereby transferred.
    11 "
    11 "
    12 "{ Package: 'stx:libtool' }"
    12 "{ Package: 'stx:libtool' }"
    13 
    13 
    14 AbstractSourceCodeManagementSettingsAppl subclass:#StoreSourceCodeManagementSettingsAppl
    14 AbstractSourceCodeManagementSettingsAppl subclass:#StoreSourceCodeManagementSettingsAppl
    15 	instanceVariableNames:'useManager repositoryHolder manager listOfModules
    15 	instanceVariableNames:'sourceCacheDir useManager availableManagers condenseSourceCache
    16 		addPerModuleRoot removeEnabled perModuleRootModule perModuleRoot
    16 		setupSourceCodeManager checkClassesWhenCheckingIn
    17 		selectedPerModuleRoot rootsPerModule
    17 		formattingConfiguration flushSourceCache localSourceFirst
    18 		managerIsCVSSourceCodeManager managerIsStoreSourceCodeManager
    18 		repositoryHolder manager repository listOfModules
    19 		storeLoginEnabled storeHostPrototypeList storeHostnameHolder
    19 		cvsRootPrototypeList addPerModuleRoot removeEnabled
    20 		storeUsernameHolder storePasswordHolder
    20 		perModuleRootModule acceptChannel removePerModuleRoot
    21 		perStoreModuleHostnameHolder perStoreModuleUsernameHolder
    21 		perModuleRoot cvsRootHolder selectedPerModuleRoot
    22 		perStoreModulePasswordHolder perStoreModuleRoot
    22 		cvsBinDirectoryHolder cvsExecutableHolder rootsPerModule
    23 		perStoreModuleRootModule selectedPerStoreModuleRoot
    23 		cvsLoginInModuleEnabled cvsLoginEnabled
    24 		storeConnectEnabled storeConnectInModuleEnabled
    24 		selectedManagerTypeIndexHolder managerIsCVSSourceCodeManager
    25 		perModuleFieldsEnableHolder managerIsSmallTeamSourceCodeManager
    25 		managerIsStoreSourceCodeManager storeLoginEnabled
    26 		perSmallTeamModuleFieldsEnableHolder'
    26 		storeHostPrototypeList storeHostnameHolder storeUsernameHolder
       
    27 		storePasswordHolder perStoreModuleHostnameHolder
       
    28 		perStoreModuleUsernameHolder perStoreModulePasswordHolder
       
    29 		perStoreModuleRoot perStoreModuleRootModule
       
    30 		selectedPerStoreModuleRoot storeConnectEnabled
       
    31 		storeConnectInModuleEnabled perModuleFieldsEnableHolder
       
    32 		managerIsSmallTeamSourceCodeManager
       
    33 		selectedPerSmallTeamModuleRoot
       
    34 		perSmallTeamModuleFieldsEnableHolder perSmallTeamModuleRoot
       
    35 		perSmallTeamModuleRootModule perSmallTeamModuleHostnameHolder
       
    36 		smallTeamHostnameHolder verboseSourceCodeAccess keepMethodSource'
    27 	classVariableNames:'RecentlyUsedCVSRoots RecentlyUsedStoreHosts
    37 	classVariableNames:'RecentlyUsedCVSRoots RecentlyUsedStoreHosts
    28 		RecentlyUsedSmallTeamHosts LastStoreHost LastStoreUser
    38 		RecentlyUsedSmallTeamHosts LastStoreHost LastStoreUser
    29 		LastStorePassword'
    39 		LastStorePassword'
    30 	poolDictionaries:''
    40 	poolDictionaries:''
    31 	category:'System-SourceCodeManagement'
    41 	category:'System-SourceCodeManagement'
    69     "
    79     "
    70 
    80 
    71     <resource: #image>
    81     <resource: #image>
    72 
    82 
    73     ^Icon
    83     ^Icon
    74         constantNamed:'StoreSourceCodeManagementSettingsAppl class defaultIcon'
    84         constantNamed:#'AbstractSettingsApplication::SourceCodeManagementSettingsAppl class defaultIcon'
    75         ifAbsentPut:[(Depth8Image new) width: 22; height: 22; photometric:(#palette); bitsPerSample:(#[8]); samplesPerPixel:(1); bits:(ByteArray fromPackedString:'
    85         ifAbsentPut:[(Depth8Image new) width: 22; height: 22; photometric:(#palette); bitsPerSample:(#(8 )); samplesPerPixel:(1); bits:(ByteArray fromPackedString:'
    76 @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@BFFH=<AS8@@@@@@@@@@@@@
    86 @@@@@@@@@@@A@PHB@0P@@@@@@@@@@@@@@@@@@@HEA \HA $JB0HD@@@@@@@@@@@@@@HLA04NC0HD@@L@@ P@@@@@@@@@@@@ED@ NDP@@@@@@@@@D@@@@@@@@
    77 @@@@@E8=X(!!#T!!0-X@D@@@@@@@@@@@@@@C%%CC@K"B9SUF$QR@@@@@@@@@@@@@A[K00LL@.H]P%SGUUZ@@@@@@@@@@@@R"$<F&P0B8]ONGECQ @@@@@@@@@@
    87 @@@BA \FAPP@@@@@@@@@@@P@@@@@@@@@AQ@RC0@@@@@@@@@@@@@@@@@@@@@@@@TGA!!DD@@@@@@@@@@@@@@@@@@@D@PDIA08OA@@@@@@@@@@@@@@@@@@@AP S
    78 @BX[G7X, T$BIR)(^E @@@@@@@@@@@A?F4T''[F]@XXNDZFYX@@@@@@@@@@@@Z9VU$)I''PFFC!!H.IV@@@@@@@@@@@@IJU%YVU$$@+["P1N$X@@@@@@@@@@IFU
    88 A0XIBPXGC0P@@@@@@@@@@@@@@@@ECAPLBPXOAP@@@@@@EQX@@@@@@@@@@@TIE@XOAP@@@@@@EQ\XE @@@@@@@@@@AP$OAP@@@@@@FQ\ZE!! V@@@@@@@@@@@E
    79 %P"ESQBR^3LTHG&N@@@@@@@@@@BR$9IEI61''PFFC!!F!!VZ @@@@@@@IJR%YRU%"],%4A!! 8Q(G% @@@@@@@@@$)RU$$T''%9^WXXNDQDIX@@@@@@@@@@BR&0<G
    89 F0@@@@@@EQ\ZF!!(VFAX@@@@@@@@@@@@@@@@ZEQ\VE!!(ZF!!XWF @@@@@@@@@@@@@@@@@@@A\ZE!!(@@@@@@@@@@@@@@@@@@@@@@@@XE!!XZ@@@@@@@@@@@@@@@@
    80 %9*Z&Y]]D 9P# @@@@@@@@@@@@AG%9^X%9^WH49AU50@@@@@@@@@%0@@@HA>%9^L#BEF_(@@@@@@@@@@@@BW%9^W%9^P@@@@@@@@@@@@@@@@@@@@@I"W%9^P
    90 @@@@@@@@EQ(V@@@@@@@@@@@@@@@@@@@@@@@@EQ\VE @@@@@@@@@@@@@@@@@@@@@@EQ VE @@@@@@@@@@@@@@F @@@@@WEQ VE!!(@@@@@@@@@@@@@@@@@E!!\W
    81 @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@a') ; colorMapFromArray:#[219 185 65 198 168 74 219 190 79 243 243 243 247 247 247 212 188 103 224 198 109 222 200 122 234 215 144 254 223 141 240 223 165 253 234 173 253 237 183 241 231 193 188 151 42 211 174 48 191 161 59 254 242 210 208 176 66 242 239 229 220 189 76 242 242 242 245 245 245 255 255 255 222 198 111 244 220 117 237 216 141 255 233 149 254 227 155 250 228 170 196 152 26 252 239 190 253 238 192 212 212 212 249 242 210 207 171 55 211 178 65 225 194 72 230 197 74 255 251 236 250 248 244 231 203 98 246 219 105 245 221 117 227 210 143 241 216 146 253 228 154 249 232 171 253 237 182 174 139 37 239 228 192 202 168 50 209 174 52 210 173 51 214 179 60 222 188 68 210 174 70 224 193 81 208 180 89 254 254 254 225 200 105 232 208 118 220 202 138 252 229 143 252 235 160 205 200 181 186 147 30 202 156 27 251 235 189 255 244 201 216 216 216 233 228 211 193 161 65 207 177 72 230 197 73 252 249 237 252 251 244 208 183 100 213 188 101 231 202 112 206 189 131 252 230 145 254 225 148 254 228 160 254 233 176 187 149 35 198 153 27 211 211 211 215 215 215 248 241 209 225 225 225 223 192 70 231 231 231 231 201 81 225 195 86 253 253 253 219 192 114 251 228 125 243 221 145 253 226 149 247 229 168 252 236 180 201 155 26 253 243 195 255 240 196 255 239 199 217 217 217 220 185 61 254 249 224 223 188 69 232 203 81 244 244 244 252 252 252 211 183 100 236 208 111 227 205 125 252 230 144 253 226 148 236 222 171 197 156 25 202 156 26 190 149 32 187 154 48 197 165 54 203 172 59 215 179 59 224 224 224 228 196 72 236 236 236 210 184 89 249 249 249 250 223 100 251 225 111 217 194 122 233 215 148 246 222 149 253 230 161 186 145 25 200 158 27 251 236 189 209 209 209 205 168 48 218 218 218 208 177 64 0 0 0 0 64 0 32 96 32 96 192 128 32 128 64 32 160 64 32 128 32 64 64 64 96 96 96 128 128 128 32 32 32 32 64 32]; mask:((Depth1Image new) width: 22; height: 22; photometric:(#blackIs0); bitsPerSample:(#[1]); samplesPerPixel:(1); bits:(ByteArray fromPackedString:'@@@@@@@@@@@@@O0@@?<@A?>@A??@A??@A??@A??@A??@A??@C??@C??@O??@G??@C??@@??@D_>@C>@@A<@@@@@@') ; yourself); yourself]
    91 EQXVE @@@@@@@@@@@@@@@@@@@@@@@A(Z@@@@@@@@@@@@@@@a') ; colorMapFromArray:#[0 0 0 32 64 0 0 64 0 32 32 0 0 32 0 32 96 32 96 192 128 192 224 192 160 224 160 32 128 64 64 96 64 64 96 32 32 160 64 160 224 192 64 160 96 32 128 32 224 224 224 64 128 64 160 192 160 224 224 192 32 160 96 160 160 160 64 64 64 96 96 96 128 128 128 192 192 192 32 32 32 32 64 32]; mask:((ImageMask new) width: 22; height: 22; photometric:(#blackIs0); bitsPerSample:(#(1 )); samplesPerPixel:(1); bits:(ByteArray fromPackedString:'@O8@@?>@A??@A?C C<@0C8@PC8@@??@@??F@_>O@O<_ G8?0C1?8A#?<@C?<@@_@H@_@L@?@GC>@C?>@A?<@@_0@') ; yourself); yourself]
    82 ! !
    92 ! !
    83 
    93 
    84 !StoreSourceCodeManagementSettingsAppl class methodsFor:'interface specs'!
    94 !StoreSourceCodeManagementSettingsAppl class methodsFor:'interface specs'!
    85 
    95 
    86 windowSpec
    96 windowSpec
   104         window: 
   114         window: 
   105        (WindowSpec
   115        (WindowSpec
   106           label: 'Source Code Manager Settings'
   116           label: 'Source Code Manager Settings'
   107           name: 'Source Code Manager Settings'
   117           name: 'Source Code Manager Settings'
   108           min: (Point 10 10)
   118           min: (Point 10 10)
   109           bounds: (Rectangle 0 0 659 592)
   119           bounds: (Rectangle 0 0 659 580)
   110         )
   120         )
   111         component: 
   121         component: 
   112        (SpecCollection
   122        (SpecCollection
   113           collection: (
   123           collection: (
   114            (VerticalPanelViewSpec
   124            (VerticalPanelViewSpec
   115               name: 'VerticalPanel3'
   125               name: 'VerticalPanel2'
   116               layout: (LayoutFrame 0 0 0 0 0 1 0 1)
   126               layout: (LayoutFrame 0 0.0 0 0.0 0 1.0 0 1.0)
   117               horizontalLayout: fit
   127               horizontalLayout: fit
   118               verticalLayout: topSpace
   128               verticalLayout: topSpace
   119               horizontalSpace: 3
   129               horizontalSpace: 3
   120               verticalSpace: 4
   130               verticalSpace: 20
   121               component: 
   131               component: 
   122              (SpecCollection
   132              (SpecCollection
   123                 collection: (
   133                 collection: (
   124                  (ViewSpec
   134                  (VerticalPanelViewSpec
   125                     name: 'ManagerSetupBoxx'
   135                     name: 'VerticalPanel3'
       
   136                     horizontalLayout: fit
       
   137                     verticalLayout: top
       
   138                     horizontalSpace: 3
       
   139                     verticalSpace: 4
   126                     component: 
   140                     component: 
   127                    (SpecCollection
   141                    (SpecCollection
   128                       collection: (
   142                       collection: (
   129                        (FramedBoxSpec
   143                        (ViewSpec
   130                           label: 'Store-DB Source Repository Settings'
   144                           name: 'ManagerSetupBoxx'
   131                           name: 'StoreSetupBox'
       
   132                           layout: (LayoutFrame 0 0 0 0 0 1 0 1)
       
   133                           labelPosition: topLeft
       
   134                           translateLabel: true
       
   135                           component: 
   145                           component: 
   136                          (SpecCollection
   146                          (SpecCollection
   137                             collection: (
   147                             collection: (
   138                              (CheckBoxSpec
   148                              (FramedBoxSpec
   139                                 label: 'Show in Browser Menus'
   149                                 label: 'Store-DB Source Repository Settings'
   140                                 name: 'CheckBox1'
   150                                 name: 'StoreSetupBox'
   141                                 layout: (LayoutFrame 0 0 5 0 0 1 27 0)
   151                                 layout: (LayoutFrame 0 0 0 0 0 1 0 1)
   142                                 model: shownInBrowserMenusHolder
   152                                 labelPosition: topLeft
   143                                 activeHelpKey: shownInBrowserMenus
       
   144                                 translateLabel: true
   153                                 translateLabel: true
   145                               )
       
   146                              (ViewSpec
       
   147                                 name: 'HostBox'
       
   148                                 layout: (LayoutFrame 0 0 40 0 0 1 65 0)
       
   149                                 component: 
   154                                 component: 
   150                                (SpecCollection
   155                                (SpecCollection
   151                                   collection: (
   156                                   collection: (
       
   157                                    (ViewSpec
       
   158                                       name: 'HostBox'
       
   159                                       layout: (LayoutFrame 0 0 0 0 0 1 25 0)
       
   160                                       component: 
       
   161                                      (SpecCollection
       
   162                                         collection: (
       
   163                                          (LabelSpec
       
   164                                             label: 'DB or DB@Host:'
       
   165                                             name: 'StoreHostLabel'
       
   166                                             layout: (LayoutFrame 0 0.0 0 0 40 0.25 22 0)
       
   167                                             level: 0
       
   168                                             translateLabel: true
       
   169                                             adjust: right
       
   170                                           )
       
   171                                          (ComboBoxSpec
       
   172                                             name: 'StoreHostComboBox'
       
   173                                             layout: (LayoutFrame 44 0.25 0 0 0 1 22 0)
       
   174                                             tabable: true
       
   175                                             model: storeHostnameHolder
       
   176                                             immediateAccept: true
       
   177                                             acceptOnLeave: true
       
   178                                             acceptOnReturn: true
       
   179                                             acceptOnTab: true
       
   180                                             acceptOnLostFocus: true
       
   181                                             acceptChannel: acceptChannel
       
   182                                             acceptOnPointerLeave: true
       
   183                                             comboList: storeHostPrototypeList
       
   184                                           )
       
   185                                          )
       
   186                                        
       
   187                                       )
       
   188                                     )
       
   189                                    (ViewSpec
       
   190                                       name: 'UserBox'
       
   191                                       layout: (LayoutFrame 0 0.0 27 0 0 1 52 0)
       
   192                                       component: 
       
   193                                      (SpecCollection
       
   194                                         collection: (
       
   195                                          (LabelSpec
       
   196                                             label: 'Username:'
       
   197                                             name: 'StoreUserLabel'
       
   198                                             layout: (LayoutFrame 0 0.0 0 0 40 0.25 22 0)
       
   199                                             level: 0
       
   200                                             translateLabel: true
       
   201                                             adjust: right
       
   202                                           )
       
   203                                          (InputFieldSpec
       
   204                                             name: 'StoreUserEntryField'
       
   205                                             layout: (LayoutFrame 44 0.25 0 0 0 1 22 0)
       
   206                                             tabable: true
       
   207                                             model: storeUsernameHolder
       
   208                                             acceptChannel: acceptChannel
       
   209                                             acceptOnPointerLeave: true
       
   210                                           )
       
   211                                          )
       
   212                                        
       
   213                                       )
       
   214                                     )
       
   215                                    (ViewSpec
       
   216                                       name: 'PasswordBox'
       
   217                                       layout: (LayoutFrame 0 0.0 54 0 0 1 79 0)
       
   218                                       component: 
       
   219                                      (SpecCollection
       
   220                                         collection: (
       
   221                                          (LabelSpec
       
   222                                             label: 'Password:'
       
   223                                             name: 'Label7'
       
   224                                             layout: (LayoutFrame 0 0.0 0 0 40 0.25 22 0)
       
   225                                             level: 0
       
   226                                             translateLabel: true
       
   227                                             adjust: right
       
   228                                           )
       
   229                                          (InputFieldSpec
       
   230                                             name: 'PasswordEntryField'
       
   231                                             layout: (LayoutFrame 44 0.25 0 0 -130 1 22 0)
       
   232                                             tabable: true
       
   233                                             model: storePasswordHolder
       
   234                                             type: password
       
   235                                             acceptChannel: acceptChannel
       
   236                                             acceptOnPointerLeave: true
       
   237                                           )
       
   238                                          )
       
   239                                        
       
   240                                       )
       
   241                                     )
       
   242                                    (HorizontalPanelViewSpec
       
   243                                       name: 'HorizontalPanel4'
       
   244                                       layout: (LayoutFrame -130 1 51 0 0 1 82 0)
       
   245                                       horizontalLayout: fitSpace
       
   246                                       verticalLayout: center
       
   247                                       horizontalSpace: 3
       
   248                                       verticalSpace: 3
       
   249                                       component: 
       
   250                                      (SpecCollection
       
   251                                         collection: (
       
   252                                          (ActionButtonSpec
       
   253                                             label: 'Try to Connect'
       
   254                                             name: 'TryConnectButton1'
       
   255                                             translateLabel: true
       
   256                                             tabable: true
       
   257                                             model: storeConnect
       
   258                                             enableChannel: storeConnectEnabled
       
   259                                             extent: (Point 124 22)
       
   260                                           )
       
   261                                          )
       
   262                                        
       
   263                                       )
       
   264                                     )
   152                                    (LabelSpec
   265                                    (LabelSpec
   153                                       label: 'DB or DB@Host:'
   266                                       label: 'DB per Module:'
   154                                       name: 'StoreHostLabel'
   267                                       name: 'Label4'
   155                                       layout: (LayoutFrame 0 0.0 0 0 40 0.25 22 0)
   268                                       layout: (LayoutFrame 0 0.0 82 0 40 0.25 104 0)
   156                                       level: 0
       
   157                                       translateLabel: true
   269                                       translateLabel: true
   158                                       adjust: right
   270                                       adjust: right
   159                                     )
   271                                     )
       
   272                                    (SequenceViewSpec
       
   273                                       name: 'List2'
       
   274                                       layout: (LayoutFrame 44 0.25 82 0 0 1 180 0)
       
   275                                       tabable: true
       
   276                                       model: selectedPerStoreModuleRoot
       
   277                                       hasHorizontalScrollBar: true
       
   278                                       hasVerticalScrollBar: true
       
   279                                       miniScrollerHorizontal: true
       
   280                                       useIndex: false
       
   281                                       sequenceList: listOfModules
       
   282                                     )
       
   283                                    (LabelSpec
       
   284                                       label: 'Module:'
       
   285                                       name: 'perModuleModuleLabel'
       
   286                                       layout: (LayoutFrame 0 0.0 186 0 40 0.25 203 0)
       
   287                                       translateLabel: true
       
   288                                       adjust: right
       
   289                                     )
       
   290                                    (InputFieldSpec
       
   291                                       name: 'perModuleModuleEntryField'
       
   292                                       layout: (LayoutFrame 44 0.25 182 0 0 1 204 0)
       
   293                                       tabable: true
       
   294                                       model: perStoreModuleRoot
       
   295                                       acceptChannel: acceptChannel
       
   296                                       acceptOnPointerLeave: true
       
   297                                     )
       
   298                                    (LabelSpec
       
   299                                       label: 'DB:'
       
   300                                       name: 'perModuleDBLabel'
       
   301                                       layout: (LayoutFrame 0 0.0 211 0 40 0.25 228 0)
       
   302                                       translateLabel: true
       
   303                                       adjust: right
       
   304                                     )
   160                                    (ComboBoxSpec
   305                                    (ComboBoxSpec
   161                                       name: 'StoreHostComboBox'
   306                                       name: 'perModuleModuleHostComboBox2'
   162                                       layout: (LayoutFrame 44 0.25 0 0 0 1 22 0)
   307                                       layout: (LayoutFrame 44 0.25 207 0 0 1 229 0)
   163                                       tabable: true
   308                                       tabable: true
   164                                       model: storeHostnameHolder
   309                                       model: perStoreModuleHostnameHolder
   165                                       immediateAccept: true
   310                                       immediateAccept: true
   166                                       acceptOnLeave: true
   311                                       acceptOnLeave: true
   167                                       acceptOnReturn: true
   312                                       acceptOnReturn: true
   168                                       acceptOnTab: true
   313                                       acceptOnTab: true
   169                                       acceptOnLostFocus: true
   314                                       acceptOnLostFocus: true
   170                                       acceptChannel: acceptChannel
   315                                       acceptChannel: acceptChannel
   171                                       acceptOnPointerLeave: true
   316                                       acceptOnPointerLeave: true
   172                                       comboList: storeHostPrototypeList
   317                                       comboList: storeHostPrototypeList
   173                                     )
   318                                     )
       
   319                                    (LabelSpec
       
   320                                       label: 'User / Password:'
       
   321                                       name: 'perModuleUserPasswordLabel'
       
   322                                       layout: (LayoutFrame 0 0.0 236 0 40 0.25 253 0)
       
   323                                       translateLabel: true
       
   324                                       adjust: right
       
   325                                     )
       
   326                                    (InputFieldSpec
       
   327                                       name: 'perModuleUserEntryField'
       
   328                                       layout: (LayoutFrame 44 0.25 232 0 -2 0.65 254 0)
       
   329                                       tabable: true
       
   330                                       model: perStoreModuleUsernameHolder
       
   331                                       acceptChannel: acceptChannel
       
   332                                       acceptOnPointerLeave: true
       
   333                                     )
       
   334                                    (InputFieldSpec
       
   335                                       name: 'perModulePasswordEntryField'
       
   336                                       layout: (LayoutFrame 5 0.65 232 0 0 1 254 0)
       
   337                                       tabable: true
       
   338                                       model: perStoreModulePasswordHolder
       
   339                                       type: password
       
   340                                       acceptChannel: acceptChannel
       
   341                                       acceptOnPointerLeave: true
       
   342                                     )
       
   343                                    (HorizontalPanelViewSpec
       
   344                                       name: 'HorizontalPanel5'
       
   345                                       layout: (LayoutFrame 44 0.25 -25 1 -10 0.65 6 1)
       
   346                                       horizontalLayout: fit
       
   347                                       verticalLayout: center
       
   348                                       horizontalSpace: 3
       
   349                                       verticalSpace: 3
       
   350                                       component: 
       
   351                                      (SpecCollection
       
   352                                         collection: (
       
   353                                          (ActionButtonSpec
       
   354                                             label: 'Add/Apply'
       
   355                                             name: 'AddButton2'
       
   356                                             translateLabel: true
       
   357                                             tabable: true
       
   358                                             model: addPerStoreModuleDB
       
   359                                             extent: (Point 96 22)
       
   360                                           )
       
   361                                          (ActionButtonSpec
       
   362                                             label: 'Remove'
       
   363                                             name: 'RemoveButton3'
       
   364                                             translateLabel: true
       
   365                                             tabable: true
       
   366                                             model: removePerStoreModuleDB
       
   367                                             enableChannel: removeEnabled
       
   368                                             extent: (Point 97 22)
       
   369                                           )
       
   370                                          )
       
   371                                        
       
   372                                       )
       
   373                                     )
       
   374                                    (HorizontalPanelViewSpec
       
   375                                       name: 'HorizontalPanel6'
       
   376                                       layout: (LayoutFrame 10 0.65 -25 1 0 1 6 1)
       
   377                                       horizontalLayout: fit
       
   378                                       verticalLayout: center
       
   379                                       horizontalSpace: 3
       
   380                                       verticalSpace: 3
       
   381                                       component: 
       
   382                                      (SpecCollection
       
   383                                         collection: (
       
   384                                          (ActionButtonSpec
       
   385                                             label: 'Try to Connect'
       
   386                                             name: 'ConnectPerStoreModuleButton'
       
   387                                             translateLabel: true
       
   388                                             tabable: true
       
   389                                             model: connectPerStoreModuleDB
       
   390                                             enableChannel: storeConnectInModuleEnabled
       
   391                                             extent: (Point 103 22)
       
   392                                           )
       
   393                                          (ActionButtonSpec
       
   394                                             label: 'Browse'
       
   395                                             name: 'BrowsePerStoreModuleButton'
       
   396                                             translateLabel: true
       
   397                                             tabable: true
       
   398                                             model: browsePerStoreModuleDB
       
   399                                             enableChannel: storeConnectInModuleEnabled
       
   400                                             extent: (Point 103 22)
       
   401                                           )
       
   402                                          )
       
   403                                        
       
   404                                       )
       
   405                                     )
   174                                    )
   406                                    )
   175                                  
   407                                  
   176                                 )
   408                                 )
   177                               )
   409                               )
       
   410                              )
       
   411                            
       
   412                           )
       
   413                           extent: (Point 659 327)
       
   414                         )
       
   415                        (FramedBoxSpec
       
   416                           label: 'Source Cache'
       
   417                           name: 'FramedBox1'
       
   418                           labelPosition: topLeft
       
   419                           translateLabel: true
       
   420                           component: 
       
   421                          (SpecCollection
       
   422                             collection: (
   178                              (ViewSpec
   423                              (ViewSpec
   179                                 name: 'UserBox'
   424                                 name: 'SourceCacheDirBox'
   180                                 layout: (LayoutFrame 0 0.0 67 0 0 1 92 0)
   425                                 layout: (LayoutFrame 0 0 0 0 0 1 30 0)
   181                                 component: 
   426                                 component: 
   182                                (SpecCollection
   427                                (SpecCollection
   183                                   collection: (
   428                                   collection: (
   184                                    (LabelSpec
   429                                    (LabelSpec
   185                                       label: 'Username:'
   430                                       label: 'Source Cache Dir:'
   186                                       name: 'StoreUserLabel'
   431                                       name: 'SourceCacheDirLabel'
   187                                       layout: (LayoutFrame 0 0.0 0 0 40 0.25 22 0)
   432                                       layout: (LayoutFrame 0 0.0 0 0 60 0.25 22 0)
   188                                       level: 0
       
   189                                       translateLabel: true
   433                                       translateLabel: true
   190                                       adjust: right
   434                                       adjust: right
   191                                     )
   435                                     )
   192                                    (InputFieldSpec
   436                                    (InputFieldSpec
   193                                       name: 'StoreUserEntryField'
   437                                       name: 'SourceCacheDirEntryField'
   194                                       layout: (LayoutFrame 44 0.25 0 0 0 1 22 0)
   438                                       layout: (LayoutFrame 64 0.25 0 0 0 1 22 0)
   195                                       tabable: true
   439                                       enableChannel: useManager
   196                                       model: storeUsernameHolder
   440                                       model: sourceCacheDir
   197                                       acceptChannel: acceptChannel
   441                                       immediateAccept: false
   198                                       acceptOnPointerLeave: true
   442                                       acceptOnReturn: true
   199                                     )
   443                                       acceptOnTab: true
   200                                    )
   444                                       acceptOnLostFocus: true
   201                                  
       
   202                                 )
       
   203                               )
       
   204                              (ViewSpec
       
   205                                 name: 'PasswordBox'
       
   206                                 layout: (LayoutFrame 0 0.0 94 0 0 1 119 0)
       
   207                                 component: 
       
   208                                (SpecCollection
       
   209                                   collection: (
       
   210                                    (LabelSpec
       
   211                                       label: 'Password:'
       
   212                                       name: 'Label7'
       
   213                                       layout: (LayoutFrame 0 0.0 0 0 40 0.25 22 0)
       
   214                                       level: 0
       
   215                                       translateLabel: true
       
   216                                       adjust: right
       
   217                                     )
       
   218                                    (InputFieldSpec
       
   219                                       name: 'PasswordEntryField'
       
   220                                       layout: (LayoutFrame 44 0.25 0 0 -130 1 22 0)
       
   221                                       tabable: true
       
   222                                       model: storePasswordHolder
       
   223                                       type: password
       
   224                                       acceptChannel: acceptChannel
       
   225                                       acceptOnPointerLeave: true
   445                                       acceptOnPointerLeave: true
   226                                     )
   446                                     )
   227                                    )
   447                                    )
   228                                  
   448                                  
   229                                 )
   449                                 )
   230                               )
   450                               )
   231                              (HorizontalPanelViewSpec
   451                              (HorizontalPanelViewSpec
   232                                 name: 'HorizontalPanel4'
   452                                 name: 'CacheActionsHorizontalPanel'
   233                                 layout: (LayoutFrame -130 1 91 0 0 1 122 0)
   453                                 layout: (LayoutFrame 44 0.25 33 0 0 1 67 0)
   234                                 horizontalLayout: fitSpace
   454                                 horizontalLayout: fitSpace
   235                                 verticalLayout: center
   455                                 verticalLayout: center
   236                                 horizontalSpace: 3
   456                                 horizontalSpace: 3
   237                                 verticalSpace: 3
   457                                 verticalSpace: 3
   238                                 component: 
   458                                 component: 
   239                                (SpecCollection
   459                                (SpecCollection
   240                                   collection: (
   460                                   collection: (
   241                                    (ActionButtonSpec
   461                                    (ActionButtonSpec
   242                                       label: 'Try to Connect'
   462                                       label: 'Flush Cache now'
   243                                       name: 'TryConnectButton1'
   463                                       name: 'FlushCacheNowButton'
   244                                       translateLabel: true
   464                                       translateLabel: true
   245                                       tabable: true
   465                                       tabable: true
   246                                       model: storeConnect
   466                                       model: flushSourceCache
   247                                       enableChannel: storeConnectEnabled
   467                                       enableChannel: useManager
   248                                       extent: (Point 124 22)
   468                                       extent: (Point 208 22)
   249                                     )
   469                                     )
   250                                    )
       
   251                                  
       
   252                                 )
       
   253                               )
       
   254                              (LabelSpec
       
   255                                 label: 'DB per Module:'
       
   256                                 name: 'Label4'
       
   257                                 layout: (LayoutFrame 0 0.0 122 0 40 0.25 144 0)
       
   258                                 translateLabel: true
       
   259                                 adjust: right
       
   260                               )
       
   261                              (SequenceViewSpec
       
   262                                 name: 'List2'
       
   263                                 layout: (LayoutFrame 44 0.25 122 0 0 1 220 0)
       
   264                                 tabable: true
       
   265                                 model: selectedPerStoreModuleRoot
       
   266                                 hasHorizontalScrollBar: true
       
   267                                 hasVerticalScrollBar: true
       
   268                                 miniScrollerHorizontal: true
       
   269                                 useIndex: false
       
   270                                 sequenceList: listOfModules
       
   271                               )
       
   272                              (LabelSpec
       
   273                                 label: 'Module:'
       
   274                                 name: 'perModuleModuleLabel'
       
   275                                 layout: (LayoutFrame 0 0.0 226 0 40 0.25 243 0)
       
   276                                 translateLabel: true
       
   277                                 adjust: right
       
   278                               )
       
   279                              (InputFieldSpec
       
   280                                 name: 'perModuleModuleEntryField'
       
   281                                 layout: (LayoutFrame 44 0.25 222 0 0 1 244 0)
       
   282                                 tabable: true
       
   283                                 model: perStoreModuleRoot
       
   284                                 acceptChannel: acceptChannel
       
   285                                 acceptOnPointerLeave: true
       
   286                               )
       
   287                              (LabelSpec
       
   288                                 label: 'DB:'
       
   289                                 name: 'perModuleDBLabel'
       
   290                                 layout: (LayoutFrame 0 0.0 251 0 40 0.25 268 0)
       
   291                                 translateLabel: true
       
   292                                 adjust: right
       
   293                               )
       
   294                              (ComboBoxSpec
       
   295                                 name: 'perModuleModuleHostComboBox2'
       
   296                                 layout: (LayoutFrame 44 0.25 247 0 0 1 269 0)
       
   297                                 tabable: true
       
   298                                 model: perStoreModuleHostnameHolder
       
   299                                 immediateAccept: true
       
   300                                 acceptOnLeave: true
       
   301                                 acceptOnReturn: true
       
   302                                 acceptOnTab: true
       
   303                                 acceptOnLostFocus: true
       
   304                                 acceptChannel: acceptChannel
       
   305                                 acceptOnPointerLeave: true
       
   306                                 comboList: storeHostPrototypeList
       
   307                               )
       
   308                              (LabelSpec
       
   309                                 label: 'User / Password:'
       
   310                                 name: 'perModuleUserPasswordLabel'
       
   311                                 layout: (LayoutFrame 0 0.0 276 0 40 0.25 293 0)
       
   312                                 translateLabel: true
       
   313                                 adjust: right
       
   314                               )
       
   315                              (InputFieldSpec
       
   316                                 name: 'perModuleUserEntryField'
       
   317                                 layout: (LayoutFrame 44 0.25 272 0 -2 0.65 294 0)
       
   318                                 tabable: true
       
   319                                 model: perStoreModuleUsernameHolder
       
   320                                 acceptChannel: acceptChannel
       
   321                                 acceptOnPointerLeave: true
       
   322                               )
       
   323                              (InputFieldSpec
       
   324                                 name: 'perModulePasswordEntryField'
       
   325                                 layout: (LayoutFrame 5 0.65 272 0 0 1 294 0)
       
   326                                 tabable: true
       
   327                                 model: perStoreModulePasswordHolder
       
   328                                 type: password
       
   329                                 acceptChannel: acceptChannel
       
   330                                 acceptOnPointerLeave: true
       
   331                               )
       
   332                              (HorizontalPanelViewSpec
       
   333                                 name: 'HorizontalPanel5'
       
   334                                 layout: (LayoutFrame 44 0.25 295 0 -10 0.65 326 0)
       
   335                                 horizontalLayout: fit
       
   336                                 verticalLayout: center
       
   337                                 horizontalSpace: 3
       
   338                                 verticalSpace: 3
       
   339                                 component: 
       
   340                                (SpecCollection
       
   341                                   collection: (
       
   342                                    (ActionButtonSpec
   470                                    (ActionButtonSpec
   343                                       label: 'Add/Apply'
   471                                       label: 'Condense Cache now'
   344                                       name: 'AddButton2'
   472                                       name: 'CondenseCacheNowButton'
   345                                       translateLabel: true
   473                                       translateLabel: true
   346                                       tabable: true
   474                                       tabable: true
   347                                       model: addPerStoreModuleDB
   475                                       model: condenseSourceCache
   348                                       extent: (Point 96 22)
   476                                       enableChannel: useManager
   349                                     )
   477                                       extent: (Point 208 22)
   350                                    (ActionButtonSpec
       
   351                                       label: 'Remove'
       
   352                                       name: 'RemoveButton3'
       
   353                                       translateLabel: true
       
   354                                       tabable: true
       
   355                                       model: removePerStoreModuleDB
       
   356                                       enableChannel: removeEnabled
       
   357                                       extent: (Point 97 22)
       
   358                                     )
       
   359                                    )
       
   360                                  
       
   361                                 )
       
   362                               )
       
   363                              (HorizontalPanelViewSpec
       
   364                                 name: 'HorizontalPanel6'
       
   365                                 layout: (LayoutFrame 10 0.65 295 0 0 1 326 0)
       
   366                                 horizontalLayout: fit
       
   367                                 verticalLayout: center
       
   368                                 horizontalSpace: 3
       
   369                                 verticalSpace: 3
       
   370                                 component: 
       
   371                                (SpecCollection
       
   372                                   collection: (
       
   373                                    (ActionButtonSpec
       
   374                                       label: 'Try to Connect'
       
   375                                       name: 'ConnectPerStoreModuleButton'
       
   376                                       translateLabel: true
       
   377                                       tabable: true
       
   378                                       model: connectPerStoreModuleDB
       
   379                                       enableChannel: storeConnectInModuleEnabled
       
   380                                       extent: (Point 103 22)
       
   381                                     )
       
   382                                    (ActionButtonSpec
       
   383                                       label: 'Browse'
       
   384                                       name: 'BrowsePerStoreModuleButton'
       
   385                                       translateLabel: true
       
   386                                       tabable: true
       
   387                                       model: browsePerStoreModuleDB
       
   388                                       enableChannel: storeConnectInModuleEnabled
       
   389                                       extent: (Point 103 22)
       
   390                                     )
   478                                     )
   391                                    )
   479                                    )
   392                                  
   480                                  
   393                                 )
   481                                 )
   394                               )
   482                               )
   395                              )
   483                              )
   396                            
   484                            
   397                           )
   485                           )
       
   486                           extent: (Point 659 95)
   398                         )
   487                         )
   399                        )
   488                        )
   400                      
   489                      
   401                     )
   490                     )
   402                     extent: (Point 659 357)
   491                     extent: (Point 659 768)
   403                   )
       
   404                  (FramedBoxSpec
       
   405                     label: 'Source Cache'
       
   406                     name: 'FramedBox1'
       
   407                     visibilityChannel: false
       
   408                     labelPosition: topLeft
       
   409                     translateLabel: true
       
   410                     component: 
       
   411                    (SpecCollection
       
   412                       collection: (
       
   413                        (ViewSpec
       
   414                           name: 'SourceCacheDirBox'
       
   415                           layout: (LayoutFrame 0 0 0 0 0 1 30 0)
       
   416                           component: 
       
   417                          (SpecCollection
       
   418                             collection: (
       
   419                              (LabelSpec
       
   420                                 label: 'Source Cache Dir:'
       
   421                                 name: 'SourceCacheDirLabel'
       
   422                                 layout: (LayoutFrame 0 0.0 0 0 60 0.25 22 0)
       
   423                                 translateLabel: true
       
   424                                 adjust: right
       
   425                               )
       
   426                              (InputFieldSpec
       
   427                                 name: 'SourceCacheDirEntryField'
       
   428                                 layout: (LayoutFrame 64 0.25 0 0 0 1 22 0)
       
   429                                 enableChannel: useManager
       
   430                                 model: sourceCacheDir
       
   431                                 immediateAccept: false
       
   432                                 acceptOnReturn: true
       
   433                                 acceptOnTab: true
       
   434                                 acceptOnLostFocus: true
       
   435                                 acceptOnPointerLeave: true
       
   436                               )
       
   437                              )
       
   438                            
       
   439                           )
       
   440                         )
       
   441                        (HorizontalPanelViewSpec
       
   442                           name: 'CacheActionsHorizontalPanel'
       
   443                           layout: (LayoutFrame 44 0.25 33 0 0 1 67 0)
       
   444                           horizontalLayout: fitSpace
       
   445                           verticalLayout: center
       
   446                           horizontalSpace: 3
       
   447                           verticalSpace: 3
       
   448                           component: 
       
   449                          (SpecCollection
       
   450                             collection: (
       
   451                              (ActionButtonSpec
       
   452                                 label: 'Flush Cache now'
       
   453                                 name: 'FlushCacheNowButton'
       
   454                                 translateLabel: true
       
   455                                 tabable: true
       
   456                                 model: flushSourceCache
       
   457                                 enableChannel: useManager
       
   458                                 extent: (Point 208 22)
       
   459                               )
       
   460                              (ActionButtonSpec
       
   461                                 label: 'Condense Cache now'
       
   462                                 name: 'CondenseCacheNowButton'
       
   463                                 translateLabel: true
       
   464                                 tabable: true
       
   465                                 model: condenseSourceCache
       
   466                                 enableChannel: useManager
       
   467                                 extent: (Point 208 22)
       
   468                               )
       
   469                              )
       
   470                            
       
   471                           )
       
   472                         )
       
   473                        )
       
   474                      
       
   475                     )
       
   476                     extent: (Point 659 95)
       
   477                   )
   492                   )
   478                  )
   493                  )
   479                
   494                
   480               )
   495               )
   481             )
   496             )
   482            )
   497            )
   483          
   498          
   484         )
   499         )
   485       )
   500       )
   486 
       
   487     "Modified: / 11-01-2012 / 15:39:47 / cg"
       
   488 ! !
   501 ! !
   489 
   502 
   490 !StoreSourceCodeManagementSettingsAppl class methodsFor:'queries'!
   503 !StoreSourceCodeManagementSettingsAppl class methodsFor:'queries'!
   491 
   504 
   492 managerClass
   505 managerClass
   524 
   537 
   525     "/ StoreSourceCodeManager forgetDisabledModules.
   538     "/ StoreSourceCodeManager forgetDisabledModules.
   526     self storeHostnameHolder value: (StoreSourceCodeManager hostAndDBName).
   539     self storeHostnameHolder value: (StoreSourceCodeManager hostAndDBName).
   527     self storeUsernameHolder value: (StoreSourceCodeManager userName).
   540     self storeUsernameHolder value: (StoreSourceCodeManager userName).
   528     self storePasswordHolder value: (StoreSourceCodeManager password).
   541     self storePasswordHolder value: (StoreSourceCodeManager password).
   529     self shownInBrowserMenusHolder value:StoreSourceCodeManager shownInBrowserMenus. 
       
   530 
   542 
   531     (Array with:StoreSourceCodeManager) "self availableManagers" do:[:eachManager |
   543     (Array with:StoreSourceCodeManager) "self availableManagers" do:[:eachManager |
   532         |infoPerModule|
   544         |infoPerModule|
   533 
   545 
   534         infoPerModule := eachManager repositoryInfoPerModule.
   546         infoPerModule := eachManager repositoryInfoPerModule.
   543         self listOfModules removeAll.
   555         self listOfModules removeAll.
   544         listOfModules addAll:rootsPerModule keys asList.
   556         listOfModules addAll:rootsPerModule keys asList.
   545     ].
   557     ].
   546 "/    self selectedPerModuleRootChanged.
   558 "/    self selectedPerModuleRootChanged.
   547 
   559 
   548     "Modified: / 10-01-2012 / 00:21:13 / cg"
   560     "Modified: / 18-04-2011 / 18:40:40 / cg"
   549 !
   561 !
   550 
   562 
   551 basicSaveSettings
   563 basicSaveSettings
   552     |modules nm fn infoPerModule|
   564     |modules nm fn|
   553 
   565 
   554     nm := self sourceCacheDir value.
   566     nm := self sourceCacheDir value.
   555     nm notEmptyOrNil ifTrue:[
   567     nm notEmptyOrNil ifTrue:[
   556         (fn := nm asFilename) exists ifFalse:[
   568         (fn := nm asFilename) exists ifFalse:[
   557             (self confirm:('Cache directory ''' , nm , ''' does not exist\create ?' withCRs)) ifTrue:[
   569             (self confirm:('Cache directory ''' , nm , ''' does not exist\create ?' withCRs)) ifTrue:[
   568         ] ifFalse:[
   580         ] ifFalse:[
   569             self warn:'Invalid sourceCache directory.'
   581             self warn:'Invalid sourceCache directory.'
   570         ]
   582         ]
   571     ].
   583     ].
   572 
   584 
   573     modules := rootsPerModule select:[:entry | entry first == StoreSourceCodeManager].
   585     (Array with:StoreSourceCodeManager) "self availableManagers" do:[:eachManager |
   574     infoPerModule := Dictionary new.
   586         |infoPerModule|
   575     modules keysAndValuesDo:[:module :entry | 
   587         modules := rootsPerModule select:[:entry | entry first == eachManager].
   576         entry first == StoreSourceCodeManager ifTrue:[
   588         infoPerModule := Dictionary new.
   577             infoPerModule at:module put:(entry second).
   589         modules keysAndValuesDo:[:module :entry | 
       
   590             entry first == eachManager ifTrue:[
       
   591                 infoPerModule at:module put:(entry second).
       
   592             ].
   578         ].
   593         ].
   579     ].
   594         eachManager repositoryInfoPerModule:infoPerModule.
   580     StoreSourceCodeManager repositoryInfoPerModule:infoPerModule.
   595     ].
   581 
       
   582     StoreSourceCodeManager shownInBrowserMenus:self shownInBrowserMenusHolder value. 
       
   583 
   596 
   584     self basicSaveStoreSettings.
   597     self basicSaveStoreSettings.
   585 
   598 
   586     self sourceCacheDir value:(StoreSourceCodeManager cacheDirectoryName).
   599     self sourceCacheDir value:(StoreSourceCodeManager cacheDirectoryName).
   587 
   600 
   588     DebugView newDebugger. "/ ???
   601     DebugView newDebugger. "/ ???
   589 
   602 
   590     self acceptChannel value.
   603     self acceptChannel value.
   591 
   604 
   592     "Modified: / 10-01-2012 / 00:22:56 / cg"
   605     "Modified: / 18-04-2011 / 18:36:42 / cg"
   593 !
   606 !
   594 
   607 
   595 condenseSourceCache
   608 condenseSourceCache
   596     self withWaitCursorDo:[ AbstractSourceCodeManager condenseSourceCache ].
   609     self withWaitCursorDo:[ AbstractSourceCodeManager condenseSourceCache ].
   597     Method flushSourceStreamCache.
   610     Method flushSourceStreamCache.
   599     "Modified: / 28-11-2006 / 12:21:33 / cg"
   612     "Modified: / 28-11-2006 / 12:21:33 / cg"
   600 !
   613 !
   601 
   614 
   602 flushSourceCache
   615 flushSourceCache
   603     self withWaitCursorDo:[ AbstractSourceCodeManager flushSourceCache ].
   616     self withWaitCursorDo:[ AbstractSourceCodeManager flushSourceCache ].
   604 
   617     Method flushSourceStreamCache.
   605     "Modified: / 30-09-2011 / 13:33:55 / cg"
   618 
       
   619     "Modified: / 28-11-2006 / 12:21:21 / cg"
   606 !
   620 !
   607 
   621 
   608 removePerModuleRoot
   622 removePerModuleRoot
   609 
   623 
   610     |module|
   624     |module|
   649 !
   663 !
   650 
   664 
   651 basicSaveStoreSettings
   665 basicSaveStoreSettings
   652     |storeHost|
   666     |storeHost|
   653 
   667 
   654     self storeHostnameHolder value notEmptyOrNil ifTrue:[
   668     StoreSourceCodeManager hostAndDBName:(storeHost := self storeHostnameHolder value withoutSeparators).
   655         StoreSourceCodeManager hostAndDBName:(storeHost := self storeHostnameHolder value withoutSeparators).
   669     StoreSourceCodeManager userName:(self storeUsernameHolder value withoutSeparators).
   656         StoreSourceCodeManager userName:(self storeUsernameHolder value withoutSeparators).
   670     StoreSourceCodeManager password:(self storePasswordHolder value withoutSeparators).
   657         StoreSourceCodeManager password:(self storePasswordHolder value withoutSeparators).
       
   658     ].
       
   659 
   671 
   660     storeHost notEmptyOrNil ifTrue:[
   672     storeHost notEmptyOrNil ifTrue:[
   661         StoreSourceCodeManager connectToDatabase.
   673         StoreSourceCodeManager connectToDatabase.
   662     ].
   674     ].
   663 
   675 
   668         RecentlyUsedStoreHosts addFirst:storeHost.
   680         RecentlyUsedStoreHosts addFirst:storeHost.
   669         RecentlyUsedStoreHosts size > 20 ifTrue:[
   681         RecentlyUsedStoreHosts size > 20 ifTrue:[
   670             RecentlyUsedStoreHosts removeLast.
   682             RecentlyUsedStoreHosts removeLast.
   671         ].
   683         ].
   672     ].
   684     ].
   673 
       
   674     "Modified: / 10-01-2012 / 00:32:42 / cg"
       
   675 !
   685 !
   676 
   686 
   677 browsePerStoreModuleDB
   687 browsePerStoreModuleDB
   678     |testInfo|
   688     |testInfo|
   679 
   689 
   743         acceptChannel := TriggerValue new.
   753         acceptChannel := TriggerValue new.
   744     ].
   754     ].
   745     ^ acceptChannel.
   755     ^ acceptChannel.
   746 !
   756 !
   747 
   757 
       
   758 checkClassesWhenCheckingIn
       
   759 
       
   760     checkClassesWhenCheckingIn isNil ifTrue:[
       
   761         checkClassesWhenCheckingIn := (currentUserPrefs at:#checkClassesWhenCheckingIn ifAbsent:true) asValue.
       
   762         checkClassesWhenCheckingIn onChangeSend:#updateModifiedChannel to:self
       
   763     ].
       
   764     ^ checkClassesWhenCheckingIn.
       
   765 !
       
   766 
       
   767 keepMethodSource
       
   768 
       
   769     keepMethodSource isNil ifTrue:[
       
   770         keepMethodSource := ValueHolder new.
       
   771         keepMethodSource onChangeSend:#updateModifiedChannel to:self
       
   772     ].
       
   773     ^ keepMethodSource.
       
   774 !
       
   775 
   748 listOfModules
   776 listOfModules
   749 
   777 
   750     listOfModules isNil ifTrue:[
   778     listOfModules isNil ifTrue:[
   751         rootsPerModule notNil ifTrue:[
   779         rootsPerModule notNil ifTrue:[
   752             listOfModules := rootsPerModule keys asList.
   780             listOfModules := rootsPerModule keys asList.
   755         listOfModules onChangeSend:#updateModifiedChannel to:self
   783         listOfModules onChangeSend:#updateModifiedChannel to:self
   756     ].
   784     ].
   757     ^ listOfModules.
   785     ^ listOfModules.
   758 !
   786 !
   759 
   787 
       
   788 localSourceFirst
       
   789 
       
   790     localSourceFirst isNil ifTrue:[
       
   791         localSourceFirst := ValueHolder new.
       
   792         localSourceFirst onChangeSend:#updateModifiedChannel to:self
       
   793     ].
       
   794     ^ localSourceFirst.
       
   795 !
       
   796 
   760 managerIsCVSSourceCodeManager
   797 managerIsCVSSourceCodeManager
   761     managerIsCVSSourceCodeManager isNil ifTrue:[
   798     managerIsCVSSourceCodeManager isNil ifTrue:[
   762         managerIsCVSSourceCodeManager := (SourceCodeManager notNil and:
   799         managerIsCVSSourceCodeManager := (SourceCodeManager notNil and:
   763                                          [SourceCodeManager isCVS]) asValue.
   800                                          [SourceCodeManager isCVS]) asValue.
   764     ].
   801     ].
   882     selectedPerStoreModuleRoot isNil ifTrue:[
   919     selectedPerStoreModuleRoot isNil ifTrue:[
   883         selectedPerStoreModuleRoot := ValueHolder new.
   920         selectedPerStoreModuleRoot := ValueHolder new.
   884         selectedPerStoreModuleRoot addDependent:self.
   921         selectedPerStoreModuleRoot addDependent:self.
   885     ].
   922     ].
   886     ^ selectedPerStoreModuleRoot.
   923     ^ selectedPerStoreModuleRoot.
       
   924 !
       
   925 
       
   926 sourceCacheDir
       
   927     sourceCacheDir isNil ifTrue:[
       
   928         sourceCacheDir := ValueHolder new.
       
   929         sourceCacheDir onChangeSend:#updateModifiedChannel to:self
       
   930     ].
       
   931     ^ sourceCacheDir.
   887 !
   932 !
   888 
   933 
   889 storeConnectEnabled
   934 storeConnectEnabled
   890     storeConnectEnabled isNil ifTrue:[
   935     storeConnectEnabled isNil ifTrue:[
   891         storeConnectEnabled := false asValue.
   936         storeConnectEnabled := false asValue.
  1174     sourceCacheDir addDependent:self.
  1219     sourceCacheDir addDependent:self.
  1175 
  1220 
  1176     repositoryHolder := '' asValue.
  1221     repositoryHolder := '' asValue.
  1177     rootsPerModule := Dictionary new.
  1222     rootsPerModule := Dictionary new.
  1178 
  1223 
  1179     StoreSourceCodeManager repositoryInfoPerModule 
  1224     (Array with:StoreSourceCodeManager) "self availableManagers" do:[:eachManager |
  1180         keysAndValuesDo:[:module :info |
  1225         eachManager repositoryInfoPerModule 
  1181             module withoutSeparators ~= module ifTrue:[
  1226             keysAndValuesDo:[:module :info |
  1182                 self halt:'should not happen any longer'
  1227                 module withoutSeparators ~= module ifTrue:[
       
  1228                     self halt:'should not happen any longer'
       
  1229                 ].
       
  1230                 rootsPerModule at:module put:(Array with:eachManager with:info)
  1183             ].
  1231             ].
  1184             rootsPerModule at:module put:(Array with:StoreSourceCodeManager with:info)
  1232     ].
  1185         ].
       
  1186 
  1233 
  1187     super initialize.
  1234     super initialize.
  1188 
  1235 
  1189     "Modified: / 14-01-2012 / 20:28:30 / cg"
  1236     "Modified: / 18-04-2011 / 18:38:02 / cg"
  1190 ! !
  1237 ! !
  1191 
  1238 
  1192 !StoreSourceCodeManagementSettingsAppl methodsFor:'queries'!
  1239 !StoreSourceCodeManagementSettingsAppl methodsFor:'queries'!
  1193 
  1240 
  1194 cvsRootFromCVSRootFileOrNil
  1241 cvsRootFromCVSRootFileOrNil
  1210     ^ AbstractSourceCodeManager notNil and:[AbstractSourceCodeManager isLoaded]
  1257     ^ AbstractSourceCodeManager notNil and:[AbstractSourceCodeManager isLoaded]
  1211 !
  1258 !
  1212 
  1259 
  1213 hasUnsavedChanges
  1260 hasUnsavedChanges
  1214     ((StoreSourceCodeManager cacheDirectoryName ? '') ~= (self sourceCacheDir value ? '')) ifTrue:[^ true].
  1261     ((StoreSourceCodeManager cacheDirectoryName ? '') ~= (self sourceCacheDir value ? '')) ifTrue:[^ true].
  1215 
       
  1216     (StoreSourceCodeManager shownInBrowserMenus ~= self shownInBrowserMenusHolder value)
       
  1217         ifTrue:[^ true].
       
  1218 
  1262 
  1219     (Array with:StoreSourceCodeManager) "self availableManagers" do:[:mgr |
  1263     (Array with:StoreSourceCodeManager) "self availableManagers" do:[:mgr |
  1220         |modules|
  1264         |modules|
  1221 
  1265 
  1222         modules := rootsPerModule select:[:entry | entry first == mgr].
  1266         modules := rootsPerModule select:[:entry | entry first == mgr].
  1238     ((StoreSourceCodeManager password ? '') ~= (self storePasswordHolder value ? '') withoutSeparators)  
  1282     ((StoreSourceCodeManager password ? '') ~= (self storePasswordHolder value ? '') withoutSeparators)  
  1239         ifTrue:[^ true].
  1283         ifTrue:[^ true].
  1240             
  1284             
  1241     ^ false
  1285     ^ false
  1242 
  1286 
  1243     "Modified: / 10-01-2012 / 00:31:49 / cg"
  1287     "Modified: / 18-04-2011 / 18:32:21 / cg"
  1244 ! !
  1288 ! !
  1245 
  1289 
  1246 !StoreSourceCodeManagementSettingsAppl class methodsFor:'documentation'!
  1290 !StoreSourceCodeManagementSettingsAppl class methodsFor:'documentation'!
  1247 
  1291 
  1248 version
       
  1249     ^ '$Header: /cvs/stx/stx/libtool/StoreSourceCodeManagementSettingsAppl.st,v 1.13 2012-01-14 20:04:43 cg Exp $'
       
  1250 !
       
  1251 
       
  1252 version_CVS
  1292 version_CVS
  1253     ^ '$Header: /cvs/stx/stx/libtool/StoreSourceCodeManagementSettingsAppl.st,v 1.13 2012-01-14 20:04:43 cg Exp $'
  1293     ^ '§Header: /cvs/stx/stx/libtool/StoreSourceCodeManagementSettingsAppl.st,v 1.5 2011/08/05 07:20:54 cg Exp §'
  1254 !
  1294 !
  1255 
  1295 
  1256 version_SVN
  1296 version_SVN
  1257     ^ '§Id§'
  1297     ^ '$Id$'
  1258 ! !
  1298 ! !