--- a/.hgtags Tue Jul 23 20:55:42 2013 +0100
+++ b/.hgtags Wed Jul 24 11:15:26 2013 +0100
@@ -1,7 +1,6 @@
010ac94518b347db8dcc0f986d7e0f31cb6369b7 expeccoNET_1_5_0rc1
010ac94518b347db8dcc0f986d7e0f31cb6369b7 expecco_1_8_2rc1
0345171682c483a27083e267891c5c409672b786 expecco_1_0_3
-0a9b919319a9d418bd1fd8700ec1aa12f3d81b9e stable
0b1ad2518a5cd2c8273fb463e370af9d6abfbd97 expecco_2_1_0
0b715d777c488bf60cadb45e1336e6191b713369 rel2_10_8_6_last2
0b7d7aedc1cd27c9468db2e11b39e2d211556973 rel3_6_1
@@ -9,17 +8,18 @@
136ee82663fb4768cae91bde1a499b9d83bfad4d rel2_10_8_5
165da720693d3aa09b58c216d9031e316a9c82a3 rel3_4_3_1
1adbdbbef6efc3f1cae90e02bbd4d3a2216bba11 rel2_10_8_6_last_before_vmData_change
+214639c7834e9719c8dc68bde4dd0d044326848f stable
220adc5a966fbea5cf7240f98f8c929276239c58 balla
22e0a2969ab2326928f4ce90dec4827a4d0dd2bf expecco_1_7_0rc5
2707b35f964ca3bb3a769a369e7f2211ba059270 stable_expecco_sel
2a4222b491ab4d84b2f47eb0ad076c98efe53ea2 expecco_2_2_5
+2c9e9dc1b880e4bcd016987ead6691a6a48328d4 expecco_2_5_1
36540512da66279fe8fb5bdf209d65d251a9ada8 expecco_1_9_1_iX
399d8af7610109b64e2232db0ce43cde3dd1fc58 expecco_2_5_0
3c7e853977b7e8a73370be10877ca1c93482cbcb expecco_1_3_4
3e7f1d7b7a3668a30eb14f320dc532ed0f2049ae expeccoNET_1_4_0rc1
3e7f1d7b7a3668a30eb14f320dc532ed0f2049ae expecco_1_7_0rc3
463dd6fa737f1911b40acf7874e7173cf8b3525c rel5_2_1_fixed
-4b8d430a503d5abc0cd451dfbab43c236fe5978a expecco_2_5_1
596696438e67fee735ba71f62177ccc091b9a0bb expecco_1_7_2rc1
5aa270837e0ab5e0fa19d2c02d46c864cc41c859 expeccoNET_1_5_1rc1
62451ecb3d3bbf1f6067c931eda2cdb57aa67ead expeccoNET_1_7_0_0
--- a/AbstractSettingsApplication.st Tue Jul 23 20:55:42 2013 +0100
+++ b/AbstractSettingsApplication.st Wed Jul 24 11:15:26 2013 +0100
@@ -1131,9 +1131,7 @@
'Turn off all warnings'
)
-!
-
- !
+! !
!AbstractSettingsApplication::ByteCodeCompilerSettingsAppl class methodsFor:'image specs'!
@@ -13864,401 +13862,402 @@
<resource: #canvas>
^
- #(FullSpec
- name: windowSpec
- window:
- (WindowSpec
- label: 'Source Code Manager Settings'
- name: 'Source Code Manager Settings'
- min: (Point 10 10)
- bounds: (Rectangle 0 0 659 590)
- )
- component:
- (SpecCollection
- collection: (
- (VerticalPanelViewSpec
- name: 'VerticalPanel2'
- layout: (LayoutFrame 0 0.0 0 0.0 0 1.0 0 1.0)
- horizontalLayout: fit
- verticalLayout: topSpace
- horizontalSpace: 3
- verticalSpace: 20
- component:
- (SpecCollection
- collection: (
- (VerticalPanelViewSpec
- name: 'VerticalPanel3'
- horizontalLayout: fit
- verticalLayout: top
- horizontalSpace: 3
- verticalSpace: 4
- component:
- (SpecCollection
- collection: (
- (ViewSpec
- name: 'Box3'
- component:
- (SpecCollection
- collection: (
- (CheckBoxSpec
- label: 'Sourcecode Management'
- name: 'SourcecodeManagementCheckBox'
- layout: (LayoutFrame 5 0 5 0.0 256 0 27 0)
- activeHelpKey: useManager
- model: useManager
- translateLabel: true
- )
- (ComboListSpec
- name: 'ComboList1'
- layout: (LayoutFrame -151 1 5 0 -5 1 27 0)
- activeHelpKey: defaultManagerType
- visibilityChannel: moreThanOneManagerTypesAvailable
- enableChannel: useManager
- model: selectedManagerTypeIndexHolder
- comboList: availableManagerTypeNames
- useIndex: true
- )
- (LabelSpec
- label: 'Default Repository Type:'
- name: 'Label14'
- layout: (LayoutFrame -347 1 5 0 -154 1 27 0)
- activeHelpKey: defaultManagerType
- translateLabel: true
- adjust: right
- )
+ #(FullSpec
+ name: windowSpec
+ window:
+ (WindowSpec
+ label: 'Source Code Manager Settings'
+ name: 'Source Code Manager Settings'
+ min: (Point 10 10)
+ bounds: (Rectangle 0 0 659 590)
+ )
+ component:
+ (SpecCollection
+ collection: (
+ (VerticalPanelViewSpec
+ name: 'VerticalPanel2'
+ layout: (LayoutFrame 0 0.0 0 0.0 0 1.0 0 1.0)
+ horizontalLayout: fit
+ verticalLayout: topSpace
+ horizontalSpace: 3
+ verticalSpace: 20
+ component:
+ (SpecCollection
+ collection: (
+ (VerticalPanelViewSpec
+ name: 'VerticalPanel3'
+ horizontalLayout: fit
+ verticalLayout: top
+ horizontalSpace: 3
+ verticalSpace: 4
+ component:
+ (SpecCollection
+ collection: (
+ (ViewSpec
+ name: 'Box3'
+ component:
+ (SpecCollection
+ collection: (
+ (CheckBoxSpec
+ label: 'Sourcecode Management'
+ name: 'SourcecodeManagementCheckBox'
+ layout: (LayoutFrame 5 0 5 0.0 332 0 27 0)
+ activeHelpKey: useManager
+ model: useManager
+ translateLabel: true
+ )
+ (ComboListSpec
+ name: 'ComboList1'
+ layout: (LayoutFrame -151 1 5 0 -5 1 27 0)
+ activeHelpKey: defaultManagerType
+ visibilityChannel: moreThanOneManagerTypesAvailable
+ enableChannel: useManager
+ model: selectedManagerTypeIndexHolder
+ comboList: availableManagerTypeNames
+ useIndex: true
+ )
+ (LabelSpec
+ label: 'Default Repository Type:'
+ name: 'Label14'
+ layout: (AlignmentOrigin -154 1 16 0 1 0.5)
+ activeHelpKey: defaultManagerType
+ translateLabel: true
+ resizeForLabel: true
+ adjust: right
)
-
- )
- extent: (Point 659 30)
- )
- (FramedBoxSpec
- label: 'Per Package Settings'
- name: 'PerPackageConfiguration'
- activeHelpKey: perPackageConfiguration
- labelPosition: topLeft
- translateLabel: true
- component:
- (SpecCollection
- collection: (
- (VerticalPanelViewSpec
- name: 'RepositoryConfigurations'
- layout: (LayoutFrame 0 0 0 0 0 1 0 1)
- activeHelpKey: perPackageConfiguration
- horizontalLayout: fit
- verticalLayout: bottomFit
- horizontalSpace: 3
- verticalSpace: 3
- component:
- (SpecCollection
- collection: (
- (ViewSpec
- name: 'RepositoryConfigurationListBox'
- activeHelpKey: perPackageConfiguration
- component:
- (SpecCollection
- collection: (
- (DataSetSpec
- name: 'RepositoryConfigurationList'
- layout: (LayoutFrame 0 0 0 0 -85 1 0 1)
- enableChannel: useManager
- model: selectedManagerPerMatchingModuleHolder
- hasHorizontalScrollBar: true
- hasVerticalScrollBar: true
- dataList: managerPerMatchingModule
- columnHolder: managerPerMatchingModuleColumns
- beDependentOfRows: true
- )
- (VerticalPanelViewSpec
- name: 'Buttons1'
- layout: (LayoutFrame -80 1 0 0 0 1 -22 1)
- horizontalLayout: fit
- verticalLayout: top
- horizontalSpace: 5
- verticalSpace: 3
- component:
- (SpecCollection
- collection: (
- (ActionButtonSpec
- label: 'Add...'
- name: 'ButtonAdd'
- activeHelpKey: addPerPackageManager
- translateLabel: true
- model: actionAdd
- extent: (Point 80 22)
- )
- (ActionButtonSpec
- label: 'Edit...'
- name: 'ButtonEdit'
- activeHelpKey: editPerPackageManager
- translateLabel: true
- model: actionEdit
- enableChannel: canRemoveManagerPerPackageEntry
- extent: (Point 80 22)
- )
- (ActionButtonSpec
- label: 'Move Up'
- name: 'ButtonModeUp'
- activeHelpKey: moveManagerUp
- translateLabel: true
- model: actionMoveUp
- enableChannel: canMoveUp
- extent: (Point 80 22)
- )
- (ActionButtonSpec
- label: 'Move Down'
- name: 'ButtonModeDown'
- activeHelpKey: moveManagerDown
- translateLabel: true
- model: actionMoveDown
- enableChannel: canMoveDown
- extent: (Point 80 22)
- )
- (LabelSpec
- name: 'SpacingLabel'
- translateLabel: true
- extent: (Point 80 22)
- )
- (ActionButtonSpec
- label: 'Remove'
- name: 'ButtonRemove'
- activeHelpKey: removePerPackageManager
- translateLabel: true
- model: actionRemove
- enableChannel: canRemoveManagerPerPackageEntry
- extent: (Point 80 22)
- )
+ )
+
+ )
+ extent: (Point 659 30)
+ )
+ (FramedBoxSpec
+ label: 'Per Package Settings'
+ name: 'PerPackageConfiguration'
+ activeHelpKey: perPackageConfiguration
+ labelPosition: topLeft
+ translateLabel: true
+ component:
+ (SpecCollection
+ collection: (
+ (VerticalPanelViewSpec
+ name: 'RepositoryConfigurations'
+ layout: (LayoutFrame 0 0 0 0 0 1 0 1)
+ activeHelpKey: perPackageConfiguration
+ horizontalLayout: fit
+ verticalLayout: bottomFit
+ horizontalSpace: 3
+ verticalSpace: 3
+ component:
+ (SpecCollection
+ collection: (
+ (ViewSpec
+ name: 'RepositoryConfigurationListBox'
+ activeHelpKey: perPackageConfiguration
+ component:
+ (SpecCollection
+ collection: (
+ (DataSetSpec
+ name: 'RepositoryConfigurationList'
+ layout: (LayoutFrame 0 0 0 0 -100 1 0 1)
+ enableChannel: useManager
+ model: selectedManagerPerMatchingModuleHolder
+ hasHorizontalScrollBar: true
+ hasVerticalScrollBar: true
+ dataList: managerPerMatchingModule
+ columnHolder: managerPerMatchingModuleColumns
+ beDependentOfRows: true
+ )
+ (VerticalPanelViewSpec
+ name: 'Buttons1'
+ layout: (LayoutFrame -90 1 0 0 0 1 -22 1)
+ horizontalLayout: fit
+ verticalLayout: top
+ horizontalSpace: 5
+ verticalSpace: 3
+ component:
+ (SpecCollection
+ collection: (
+ (ActionButtonSpec
+ label: 'Add...'
+ name: 'ButtonAdd'
+ activeHelpKey: addPerPackageManager
+ translateLabel: true
+ model: actionAdd
+ extent: (Point 90 22)
)
-
- )
- )
- (ActionButtonSpec
- label: 'Test'
- name: 'Button2'
- layout: (LayoutFrame -80 1 -22 1 0 1 0 1)
- activeHelpKey: checkPerPackageManager
- translateLabel: true
- model: actionTest
- )
+ (ActionButtonSpec
+ label: 'Edit...'
+ name: 'ButtonEdit'
+ activeHelpKey: editPerPackageManager
+ translateLabel: true
+ model: actionEdit
+ enableChannel: canRemoveManagerPerPackageEntry
+ extent: (Point 90 22)
+ )
+ (ActionButtonSpec
+ label: 'Move Up'
+ name: 'ButtonModeUp'
+ activeHelpKey: moveManagerUp
+ translateLabel: true
+ model: actionMoveUp
+ enableChannel: canMoveUp
+ extent: (Point 90 22)
+ )
+ (ActionButtonSpec
+ label: 'Move Down'
+ name: 'ButtonModeDown'
+ activeHelpKey: moveManagerDown
+ translateLabel: true
+ model: actionMoveDown
+ enableChannel: canMoveDown
+ extent: (Point 90 22)
+ )
+ (LabelSpec
+ name: 'SpacingLabel'
+ translateLabel: true
+ extent: (Point 90 22)
+ )
+ (ActionButtonSpec
+ label: 'Remove'
+ name: 'ButtonRemove'
+ activeHelpKey: removePerPackageManager
+ translateLabel: true
+ model: actionRemove
+ enableChannel: canRemoveManagerPerPackageEntry
+ extent: (Point 90 22)
+ )
+ )
+
+ )
)
-
- )
- extent: (Point 623 264)
- )
+ (ActionButtonSpec
+ label: 'Test'
+ name: 'Button2'
+ layout: (LayoutFrame -80 1 -22 1 0 1 0 1)
+ activeHelpKey: checkPerPackageManager
+ translateLabel: true
+ model: actionTest
+ )
+ )
+
+ )
+ extent: (Point 619 260)
)
-
- )
- )
+ )
+
+ )
)
-
- )
- extent: (Point 659 300)
- )
- (FramedBoxSpec
- label: 'Source Cache'
- name: 'SourceCacheBox'
- activeHelpKey: sourceCache
- labelPosition: topLeft
- translateLabel: true
- component:
- (SpecCollection
- collection: (
- (ViewSpec
- name: 'SourceCacheDirBox'
- layout: (LayoutFrame 0 0 0 0 0 1 30 0)
- component:
- (SpecCollection
- collection: (
- (FilenameInputFieldSpec
- name: 'FilenameEntryField1'
- layout: (LayoutFrame 64 0.25 0 0 0 1 22 0)
- enableChannel: useManager
- model: sourceCacheDir
- immediateAccept: false
- acceptOnReturn: true
- acceptOnTab: true
- acceptOnLostFocus: true
- acceptOnPointerLeave: true
- )
- (LabelSpec
- label: 'Source Cache Dir:'
- name: 'SourceCacheDirLabel'
- layout: (LayoutFrame 0 0.0 0 0 60 0.25 22 0)
- translateLabel: true
- adjust: right
- )
+ )
+
+ )
+ extent: (Point 659 300)
+ )
+ (FramedBoxSpec
+ label: 'Source Cache'
+ name: 'SourceCacheBox'
+ activeHelpKey: sourceCache
+ labelPosition: topLeft
+ translateLabel: true
+ component:
+ (SpecCollection
+ collection: (
+ (ViewSpec
+ name: 'SourceCacheDirBox'
+ layout: (LayoutFrame 0 0 0 0 0 1 30 0)
+ component:
+ (SpecCollection
+ collection: (
+ (FilenameInputFieldSpec
+ name: 'FilenameEntryField1'
+ layout: (LayoutFrame 64 0.25 0 0 0 1 22 0)
+ enableChannel: useManager
+ model: sourceCacheDir
+ immediateAccept: false
+ acceptOnReturn: true
+ acceptOnTab: true
+ acceptOnLostFocus: true
+ acceptOnPointerLeave: true
+ )
+ (LabelSpec
+ label: 'Source Cache Dir:'
+ name: 'SourceCacheDirLabel'
+ layout: (LayoutFrame 0 0.0 0 0 60 0.25 22 0)
+ translateLabel: true
+ adjust: right
)
-
- )
- )
- (HorizontalPanelViewSpec
- name: 'CacheActionsHorizontalPanel1'
- layout: (LayoutFrame 0 0 -52 1 0 1 -27 1)
- horizontalLayout: right
- verticalLayout: center
- horizontalSpace: 3
- verticalSpace: 3
- component:
- (SpecCollection
- collection: (
- (ActionButtonSpec
- label: 'Fill Cache now'
- name: 'FillCacheInBackgroundButton'
- activeHelpKey: fillSourceCache
- translateLabel: true
- tabable: true
- model: fillSourceCache
- enableChannel: useManager
- extent: (Point 171 22)
- )
+ )
+
+ )
+ )
+ (HorizontalPanelViewSpec
+ name: 'CacheActionsHorizontalPanel1'
+ layout: (LayoutFrame 0 0 -52 1 0 1 -27 1)
+ horizontalLayout: right
+ verticalLayout: center
+ horizontalSpace: 3
+ verticalSpace: 3
+ component:
+ (SpecCollection
+ collection: (
+ (ActionButtonSpec
+ label: 'Fill Cache now'
+ name: 'FillCacheInBackgroundButton'
+ activeHelpKey: fillSourceCache
+ translateLabel: true
+ tabable: true
+ model: fillSourceCache
+ enableChannel: useManager
+ extent: (Point 171 22)
+ )
+ )
+
+ )
+ )
+ (HorizontalPanelViewSpec
+ name: 'CacheActionsHorizontalPanel2'
+ layout: (LayoutFrame 0 0 -25 1 0 1 0 1)
+ horizontalLayout: right
+ verticalLayout: center
+ horizontalSpace: 3
+ verticalSpace: 3
+ component:
+ (SpecCollection
+ collection: (
+ (ActionButtonSpec
+ label: 'Browse Cache'
+ name: 'Button3'
+ activeHelpKey: browseSourceCache
+ translateLabel: true
+ tabable: true
+ model: browseSourceCache
+ enableChannel: useManager
+ extent: (Point 171 22)
+ )
+ (ViewSpec
+ name: 'Box5'
+ extent: (Point 20 10)
+ )
+ (ActionButtonSpec
+ label: 'Flush Cache now'
+ name: 'Button4'
+ activeHelpKey: flushSourceCache
+ translateLabel: true
+ tabable: true
+ model: flushSourceCache
+ enableChannel: useManager
+ extent: (Point 171 22)
)
-
- )
- )
- (HorizontalPanelViewSpec
- name: 'CacheActionsHorizontalPanel2'
- layout: (LayoutFrame 0 0 -25 1 0 1 0 1)
- horizontalLayout: right
- verticalLayout: center
- horizontalSpace: 3
- verticalSpace: 3
- component:
- (SpecCollection
- collection: (
- (ActionButtonSpec
- label: 'Browse Cache'
- name: 'Button3'
- activeHelpKey: browseSourceCache
- translateLabel: true
- tabable: true
- model: browseSourceCache
- enableChannel: useManager
- extent: (Point 171 22)
- )
- (ViewSpec
- name: 'Box5'
- extent: (Point 20 10)
- )
- (ActionButtonSpec
- label: 'Flush Cache now'
- name: 'Button4'
- activeHelpKey: flushSourceCache
- translateLabel: true
- tabable: true
- model: flushSourceCache
- enableChannel: useManager
- extent: (Point 171 22)
- )
- (ActionButtonSpec
- label: 'Condense Cache now'
- name: 'Button5'
- activeHelpKey: condenseSourceCache
- translateLabel: true
- tabable: true
- model: condenseSourceCache
- enableChannel: useManager
- extent: (Point 171 22)
- )
+ (ActionButtonSpec
+ label: 'Condense Cache now'
+ name: 'Button5'
+ activeHelpKey: condenseSourceCache
+ translateLabel: true
+ tabable: true
+ model: condenseSourceCache
+ enableChannel: useManager
+ extent: (Point 171 22)
)
-
- )
- )
+ )
+
+ )
)
-
- )
- extent: (Point 659 117)
- )
- (ViewSpec
- name: 'UseLocalSourceBox'
- component:
- (SpecCollection
- collection: (
- (CheckBoxSpec
- label: 'If Present, Use Local Source (Suppress Checkout)'
- name: 'CheckBox4'
- layout: (LayoutFrame 30 0 0 0 -5 1 23 0)
- activeHelpKey: useLocalSources
- enableChannel: useManager
- model: localSourceFirst
- translateLabel: true
- )
+ )
+
+ )
+ extent: (Point 659 117)
+ )
+ (ViewSpec
+ name: 'UseLocalSourceBox'
+ component:
+ (SpecCollection
+ collection: (
+ (CheckBoxSpec
+ label: 'If Present, Use Local Source (Suppress Checkout)'
+ name: 'CheckBox4'
+ layout: (LayoutFrame 30 0 0 0 -5 1 23 0)
+ activeHelpKey: useLocalSources
+ enableChannel: useManager
+ model: localSourceFirst
+ translateLabel: true
+ )
+ )
+
+ )
+ extent: (Point 659 22)
+ )
+ (ViewSpec
+ name: 'KeepMethodSourceBox'
+ activeHelpKey: keepMethodSourceInImage
+ component:
+ (SpecCollection
+ collection: (
+ (CheckBoxSpec
+ label: 'Keep Method Source (In Image)'
+ name: 'CheckBox7'
+ layout: (LayoutFrame 30 0 0 0 -5 1 23 0)
+ activeHelpKey: keepMethodSourceInImage
+ enableChannel: useManager
+ model: keepMethodSource
+ translateLabel: true
)
-
- )
- extent: (Point 659 22)
- )
- (ViewSpec
- name: 'KeepMethodSourceBox'
- activeHelpKey: keepMethodSourceInImage
- component:
- (SpecCollection
- collection: (
- (CheckBoxSpec
- label: 'Keep Method Source (In Image)'
- name: 'CheckBox7'
- layout: (LayoutFrame 30 0 0 0 -5 1 23 0)
- activeHelpKey: keepMethodSourceInImage
- enableChannel: useManager
- model: keepMethodSource
- translateLabel: true
- )
+ )
+
+ )
+ extent: (Point 659 22)
+ )
+ (ViewSpec
+ name: 'CheckForHaltSendsBox'
+ activeHelpKey: checkClassesWhenCheckingIn
+ component:
+ (SpecCollection
+ collection: (
+ (CheckBoxSpec
+ label: 'Check for halt/error-Sends when Checking in'
+ name: 'CheckBox5'
+ layout: (LayoutFrame 30 0 0 0 -5 1 23 0)
+ activeHelpKey: checkClassesWhenCheckingIn
+ enableChannel: useManager
+ model: checkClassesWhenCheckingIn
+ translateLabel: true
)
-
- )
- extent: (Point 659 22)
- )
- (ViewSpec
- name: 'CheckForHaltSendsBox'
- activeHelpKey: checkClassesWhenCheckingIn
- component:
- (SpecCollection
- collection: (
- (CheckBoxSpec
- label: 'Check for halt/error-Sends when Checking in'
- name: 'CheckBox5'
- layout: (LayoutFrame 30 0 0 0 -5 1 23 0)
- activeHelpKey: checkClassesWhenCheckingIn
- enableChannel: useManager
- model: checkClassesWhenCheckingIn
- translateLabel: true
- )
+ )
+
+ )
+ extent: (Point 659 22)
+ )
+ (ViewSpec
+ name: 'VerboseBox'
+ activeHelpKey: verboseSourceCodeAccess
+ component:
+ (SpecCollection
+ collection: (
+ (CheckBoxSpec
+ label: 'Verbose (Trace Operations on Transcript)'
+ name: 'CheckBox6'
+ layout: (LayoutFrame 30 0 0 0 -5 1 23 0)
+ activeHelpKey: verboseSourceCodeAccess
+ enableChannel: useManager
+ model: verboseSourceCodeAccess
+ translateLabel: true
)
-
- )
- extent: (Point 659 22)
- )
- (ViewSpec
- name: 'VerboseBox'
- activeHelpKey: verboseSourceCodeAccess
- component:
- (SpecCollection
- collection: (
- (CheckBoxSpec
- label: 'Verbose (Trace Operations on Transcript)'
- name: 'CheckBox6'
- layout: (LayoutFrame 30 0 0 0 -5 1 23 0)
- activeHelpKey: verboseSourceCodeAccess
- enableChannel: useManager
- model: verboseSourceCodeAccess
- translateLabel: true
- )
- )
-
- )
- extent: (Point 659 22)
- )
- )
-
- )
- extent: (Point 659 768)
- )
+ )
+
+ )
+ extent: (Point 659 22)
+ )
+ )
+
+ )
+ extent: (Point 659 768)
)
-
- )
- )
+ )
+
+ )
)
-
- )
- )
+ )
+
+ )
+ )
! !
!AbstractSettingsApplication::SourceCodeManagementSettingsAppl class methodsFor:'tableColumns specs'!
@@ -18708,11 +18707,11 @@
!AbstractSettingsApplication class methodsFor:'documentation'!
version
- ^ '$Header: /cvs/stx/stx/libtool/AbstractSettingsApplication.st,v 1.481 2013-07-13 20:40:13 cg Exp $'
+ ^ '$Header: /cvs/stx/stx/libtool/AbstractSettingsApplication.st,v 1.482 2013-07-19 19:41:10 cg Exp $'
!
version_CVS
- ^ '$Header: /cvs/stx/stx/libtool/AbstractSettingsApplication.st,v 1.481 2013-07-13 20:40:13 cg Exp $'
+ ^ '$Header: /cvs/stx/stx/libtool/AbstractSettingsApplication.st,v 1.482 2013-07-19 19:41:10 cg Exp $'
!
version_HG
--- a/BrowserView.st Tue Jul 23 20:55:42 2013 +0100
+++ b/BrowserView.st Wed Jul 24 11:15:26 2013 +0100
@@ -6325,10 +6325,10 @@
s nextPutAll:name; space.
className := aSuperClass lastName.
- superPackage := aSuperClass package copy replaceAll:$/ with:$..
+ superPackage := aSuperClass package copyReplaceAll:$/ with:$..
superPackage = categoryString ifFalse:[
superPackage = 'java.lang' ifFalse:[
- className := aSuperClass name asString copy replaceAll:$/ with:$..
+ className := aSuperClass name copyReplaceAll:$/ with:$..
].
].
@@ -6352,8 +6352,8 @@
^ s contents
- "Created: / 23.12.1996 / 12:46:31 / cg"
- "Modified: / 15.6.1998 / 17:23:05 / cg"
+ "Created: / 23-12-1996 / 12:46:31 / cg"
+ "Modified: / 16-07-2013 / 19:50:01 / cg"
!
listOfAllClassNamesInCategory:aCategory
@@ -14532,7 +14532,7 @@
!BrowserView class methodsFor:'documentation'!
version_CVS
- ^ '$Header: /cvs/stx/stx/libtool/BrowserView.st,v 1.852 2013-06-30 09:10:54 cg Exp $'
+ ^ '$Header: /cvs/stx/stx/libtool/BrowserView.st,v 1.853 2013-07-16 17:50:18 cg Exp $'
!
version_HG
--- a/DebugView.st Tue Jul 23 20:55:42 2013 +0100
+++ b/DebugView.st Wed Jul 24 11:15:26 2013 +0100
@@ -3328,8 +3328,22 @@
steppedContext printCR.
].
- "/ kludge an bug-workaround;
- "/ I should not see those ...
+ "/ when single stepping, ignore breakpoints
+ here selector == #break ifTrue:[
+ (here receiver isKindOf:Breakpoint) ifTrue:[
+ false "here receiver isEnabled" ifFalse:[
+ con := nil.
+ where := nil. here := nil.
+ StepInterruptPending := 1.
+ InterruptPending := 1.
+ InStepInterrupt := nil.
+ ^ self
+ ]
+ ].
+ ].
+
+ "/ kludge: a bug-workaround;
+ "/ I should not see those...
here selector == #ioInterrupt ifTrue:[
DebuggingDebugger2 == true ifTrue:[
@@ -3563,7 +3577,7 @@
"/ in a block called by 'our' context ?
"/
where home == steppedContext ifTrue:[
-"/ '*block*' printCR.
+ "/ '*block*' printCR.
inBlock := true
]
].
@@ -3573,7 +3587,7 @@
where notNil ifTrue:[
where home == steppedContext ifTrue:[
-"/ '*block*' printCR.
+ "/ '*block*' printCR.
inBlock := true.
]
].
@@ -3599,22 +3613,35 @@
"/ do a single step. Otherwise, stepping through a
"/ do:-loop would be very difficult.
receiver := where receiver.
+where selector == #critical: ifTrue:[
+anyStepBlocks := true.
+] ifFalse:[
(receiver isBlock
and:[(receiver isKindOf:Block)
- and:[receiver home == steppedContext]])
+ and:[receiver homeMethod == steppedContext method
+ "receiver home == steppedContext"]])
ifTrue:[
anyStepBlocks := true.
] ifFalse:[
where args do:[:arg |
(arg isBlock
and:[(arg isKindOf:Block)
- and:[arg home == steppedContext]])
+ and:[arg homeMethod == steppedContext method
+ "arg home == steppedContext"]])
ifTrue:[
anyStepBlocks := true.
- ]
+ ] ifFalse:[
+ (where methodHome receiver isBlock
+ and:[(where methodHome receiver isKindOf:Block)
+ and:[where methodHome receiver homeMethod == steppedContext method
+ "where methodHome receiver home == steppedContext"]])
+ ifTrue:[
+ anyStepBlocks := true.
+ ]
+ ].
]
].
-
+].
DebuggingDebugger2 == true ifTrue:[
((ObjectMemory addressOf:where) printStringRadix:16)print. ' ' print.
where selector printCR.
@@ -3786,10 +3813,15 @@
].
inBlock ifTrue:[
-"/ 'inBlock' printCR.
+ DebuggingDebugger2 == true ifTrue:[
+ 'inBlock' printCR.
+ ].
s := 'in block'.
].
inBlockBelow ifTrue:[
+ DebuggingDebugger2 == true ifTrue:[
+ 'inBlockBelow' printCR.
+ ].
ignore := true
].
@@ -4727,7 +4759,7 @@
"Modified: 7.3.1997 / 18:46:49 / cg"
!
-doStep:lineNr
+doStep:lineNrOrNilOrMinus1
"common helper for step, skip & next.
Arrange for single-steppping until we pass lineNr (if nonNil)
or to next line (if nil) or to next send (if -1)"
@@ -4752,9 +4784,9 @@
steppedContextLineno := con lineNumber.
].
- skipLineNr := lineNr.
-
- lineNr == -1 ifTrue:[
+ skipLineNr := lineNrOrNilOrMinus1.
+
+ lineNrOrNilOrMinus1 == -1 ifTrue:[
steppedContextLineno := skipLineNr := nil.
].
@@ -4768,6 +4800,7 @@
steppedContext := con.
].
].
+
wrapperContext := nil.
"/ ' step con:' print. (ObjectMemory addressOf:steppedContext) printHex. ' ' print. steppedContext printCR.
@@ -4785,7 +4818,7 @@
inWrap := true
].
- lineNr == #return ifTrue:[
+ lineNrOrNilOrMinus1 == #return ifTrue:[
Processor activeProcess forceInterruptOnReturnOf:con.
].
@@ -5019,7 +5052,7 @@
items := items , #(
('-' )
('Browse Implementing Class' browseImplementingClass )
- ('Browse Receivers Class' browseReceiversClass )
+ ('Browse Receiver''s Class' browseReceiversClass )
"/ ('Browse Receivers Class Hierarchy' browseClassHierarchy )
"/ ('Browse Receivers Full Protocol' browseFullClassProtocol )
('Implementors' browseImplementors )
@@ -5060,7 +5093,7 @@
^ m.
- "Modified: / 27-07-2012 / 15:01:20 / cg"
+ "Modified: / 22-07-2013 / 15:30:05 / cg"
!
notShowingSupportCode
@@ -8573,11 +8606,11 @@
!DebugView class methodsFor:'documentation'!
version
- ^ '$Header: /cvs/stx/stx/libtool/DebugView.st,v 1.600 2013-07-13 20:39:12 cg Exp $'
+ ^ '$Header: /cvs/stx/stx/libtool/DebugView.st,v 1.602 2013-07-22 14:01:57 cg Exp $'
!
version_CVS
- ^ '$Header: /cvs/stx/stx/libtool/DebugView.st,v 1.600 2013-07-13 20:39:12 cg Exp $'
+ ^ '$Header: /cvs/stx/stx/libtool/DebugView.st,v 1.602 2013-07-22 14:01:57 cg Exp $'
!
version_HG
@@ -8586,7 +8619,7 @@
!
version_SVN
- ^ '$Id: DebugView.st,v 1.600 2013-07-13 20:39:12 cg Exp $'
+ ^ '$Id: DebugView.st,v 1.602 2013-07-22 14:01:57 cg Exp $'
! !
--- a/FileDialog.st Tue Jul 23 20:55:42 2013 +0100
+++ b/FileDialog.st Wed Jul 24 11:15:26 2013 +0100
@@ -1860,13 +1860,16 @@
(aBuilder componentAt:'okButton') cursor:(Cursor thumbsUp).
win := aBuilder window .
- hMin := (win margin * 2)
- + aBuilder menuBar preferredHeight
- + (aBuilder componentAt:#FilenameEntryField) height
- + (aBuilder componentAt:#ToolBar1) preferredHeight
- + (aBuilder componentAt:#ButtonPanel) preferredHeight.
+ win minExtent notNil ifTrue:[
+ "minExtent is nil if window is not a TopView"
+ hMin := (win margin * 2)
+ + (aBuilder menuBar isNil ifTrue:[0] ifFalse:[aBuilder menuBar preferredHeight])
+ + (aBuilder componentAt:#FilenameEntryField) height
+ + (aBuilder componentAt:#ToolBar1) preferredHeight
+ + (aBuilder componentAt:#ButtonPanel) preferredHeight.
- win minExtent:( win minExtent x @ hMin ).
+ win minExtent:(win minExtent x @ hMin).
+ ].
win topView label:self initialText.
super postBuildWith:aBuilder
@@ -2073,11 +2076,11 @@
!FileDialog class methodsFor:'documentation'!
version
- ^ '$Header: /cvs/stx/stx/libtool/FileDialog.st,v 1.128 2013-07-04 14:51:00 cg Exp $'
+ ^ '$Header: /cvs/stx/stx/libtool/FileDialog.st,v 1.129 2013-07-17 06:11:59 stefan Exp $'
!
version_CVS
- ^ '$Header: /cvs/stx/stx/libtool/FileDialog.st,v 1.128 2013-07-04 14:51:00 cg Exp $'
+ ^ '$Header: /cvs/stx/stx/libtool/FileDialog.st,v 1.129 2013-07-17 06:11:59 stefan Exp $'
!
version_HG
@@ -2086,6 +2089,6 @@
!
version_SVN
- ^ '$Id: FileDialog.st,v 1.128 2013-07-04 14:51:00 cg Exp $'
+ ^ '$Id: FileDialog.st,v 1.129 2013-07-17 06:11:59 stefan Exp $'
! !
--- a/InspectorView.st Tue Jul 23 20:55:42 2013 +0100
+++ b/InspectorView.st Wed Jul 24 11:15:26 2013 +0100
@@ -1323,6 +1323,7 @@
('Full Protocol' #protocolMenu )
('-')
('Trap Message...' #doTrap )
+ ('Trap Update Messages...' #doTrapUpdates )
('Trap all Messages' #doTrapAll )
('Trace all Messages' #doTraceAll )
('Untrace/Untrap' #doUntrace )
@@ -1413,7 +1414,7 @@
^ m
- "Modified: / 20-07-2012 / 10:50:45 / cg"
+ "Modified: / 16-07-2013 / 19:56:54 / cg"
!
localProtocolMenu
@@ -1902,6 +1903,59 @@
]
!
+doTrapUpdates
+ "place a trap on all update and XXXChanged messages sent to the inspected object"
+
+ |selectors|
+
+ selectors := IdentitySet new.
+
+ "/ find all dependencies which lead to a message to this object
+ "/ (also look for onChangeSend: and onChangeEvaluate: dependencies)
+ InterestConverter allInstances do:[:i |
+ |dest mthd messages|
+
+ dest := i destination.
+ (dest == object) ifTrue:[
+ selectors add:(i selector)
+ ] ifFalse:[
+ (dest isBlock
+ and:[ (dest methodHome receiver == object)
+ and:[ (mthd := dest methodHome method) notNil ]]) ifTrue:[
+ "/ vague
+ messages := mthd messagesSent.
+ messages := messages select:[:sel | object class implements:sel].
+ selectors addAll:messages.
+ ].
+ ]
+ ].
+ #(update:
+ update:with:
+ update:with:from:)
+ do:[:each |
+ (object class implements:each) ifTrue:[
+ selectors add:each.
+ ]
+ ].
+
+ InterestConverter allInstances
+ select:[:i | i destination isMessage
+ and:[i class == MessageSend
+ and:[i selector == #value
+ and:[i receiver == object ]]]]
+ thenDo:[:i | selectors add:(i selector)].
+
+ (Dialog
+ confirm:('About to place an instance trap on the following selectors:\\' withCRs
+ , (selectors asOrderedCollection sort asStringWith:'\' withCRs)))
+ ifFalse:[ ^ self].
+
+ self topView withWaitCursorDo:[MessageTracer trap:object
+ selectors:selectors]
+
+ "Created: / 16-07-2013 / 19:56:08 / cg"
+!
+
doUncatchChanges
|sel|
@@ -3531,11 +3585,11 @@
!InspectorView class methodsFor:'documentation'!
version
- ^ '$Header: /cvs/stx/stx/libtool/InspectorView.st,v 1.318 2013-07-08 09:51:56 cg Exp $'
+ ^ '$Header: /cvs/stx/stx/libtool/InspectorView.st,v 1.319 2013-07-16 18:01:20 cg Exp $'
!
version_CVS
- ^ '$Header: /cvs/stx/stx/libtool/InspectorView.st,v 1.318 2013-07-08 09:51:56 cg Exp $'
+ ^ '$Header: /cvs/stx/stx/libtool/InspectorView.st,v 1.319 2013-07-16 18:01:20 cg Exp $'
!
version_HG
--- a/TerminalApplication.st Tue Jul 23 20:55:42 2013 +0100
+++ b/TerminalApplication.st Wed Jul 24 11:15:26 2013 +0100
@@ -102,171 +102,173 @@
"Do not manually edit this!! If it is corrupted,
the MenuEditor may not be able to read the specification."
+
"
- MenuEditor new openOnClass:WorkspaceApplication andSelector:#mainMenu
- (Menu new fromLiteralArrayEncoding:(WorkspaceApplication mainMenu)) startUp
+ MenuEditor new openOnClass:TerminalApplication andSelector:#mainMenu
+ (Menu new fromLiteralArrayEncoding:(TerminalApplication mainMenu)) startUp
"
<resource: #menu>
^
- #(#Menu
- #(
- #(#MenuItem
- #label: 'File'
- #translateLabel: true
- #submenu:
- #(#Menu
- #(
- #(#MenuItem
- #label: 'New Shell'
- #itemValue: #newWorkspace
- #translateLabel: true
+ #(Menu
+ (
+ (MenuItem
+ label: 'File'
+ submenu:
+ (Menu
+ (
+ (MenuItem
+ label: 'New Shell'
+ itemValue: newWorkspace
)
- #(#MenuItem
- #label: '-'
+ (MenuItem
+ label: '-'
+ )
+ (MenuItem
+ label: 'Playback File...'
+ itemValue: menuPlayback
)
- #(#MenuItem
- #label: 'Playback File...'
- #itemValue: #menuPlayback
- #translateLabel: true
+ (MenuItem
+ label: '-'
+ )
+ (MenuItem
+ label: 'Save As...'
+ itemValue: menuSaveAs
)
- #(#MenuItem
- #label: '-'
+ (MenuItem
+ enabled: hasMultipleBuffersHolder
+ label: 'Save all As...'
+ itemValue: menuSaveAllAs
)
- #(#MenuItem
- #label: 'Save As...'
- #itemValue: #menuSaveAs
- #translateLabel: true
+ (MenuItem
+ label: '-'
+ )
+ (MenuItem
+ label: 'Exit'
+ itemValue: closeRequest
)
- #(#MenuItem
- #enabled: #hasMultipleBuffersHolder
- #label: 'Save all As...'
- #itemValue: #menuSaveAllAs
- #translateLabel: true
+ )
+ nil
+ nil
+ )
+ )
+ (MenuItem
+ label: 'View'
+ submenu:
+ (Menu
+ (
+ (MenuItem
+ label: 'Normal'
+ itemValue: setNormalDisplayMode
)
- #(#MenuItem
- #label: '-'
+ (MenuItem
+ label: 'Reverse'
+ itemValue: setReverseDisplayMode
)
- #(#MenuItem
- #label: 'Exit'
- #itemValue: #closeRequest
- #translateLabel: true
+ (MenuItem
+ label: 'Green'
+ itemValue: setGreenDisplayMode
)
)
nil
nil
)
)
- #(#MenuItem
- #label: 'Buffers'
- #nameKey: #Buffer
- #translateLabel: true
- #submenu:
- #(#Menu
- #(
- #(#MenuItem
- #label: 'Add Buffer'
- #itemValue: #addWorkspace
- #translateLabel: true
+ (MenuItem
+ label: 'Buffers'
+ nameKey: Buffer
+ submenu:
+ (Menu
+ (
+ (MenuItem
+ label: 'Add Buffer'
+ itemValue: addWorkspace
)
- #(#MenuItem
- #label: 'Rename...'
- #itemValue: #renameWorkspace
- #translateLabel: true
+ (MenuItem
+ label: 'Rename...'
+ itemValue: renameWorkspace
)
- #(#MenuItem
- #label: '-'
+ (MenuItem
+ label: '-'
)
- #(#MenuItem
- #enabled: #canRemoveWorkspace
- #label: 'Remove Buffer'
- #itemValue: #removeWorkspace
- #translateLabel: true
+ (MenuItem
+ enabled: canRemoveWorkspace
+ label: 'Remove Buffer'
+ itemValue: removeWorkspace
)
)
nil
nil
)
)
- #(#MenuItem
- #label: 'Edit'
- #translateLabel: true
- #submenu:
- #(#Menu
- #(
- #(#MenuItem
- #enabled: #hasSelectionInActiveWorkspace
- #label: 'Copy'
- #itemValue: #copySelection
- #translateLabel: true
+ (MenuItem
+ label: 'Edit'
+ submenu:
+ (Menu
+ (
+ (MenuItem
+ enabled: hasSelectionInActiveWorkspace
+ label: 'Copy'
+ itemValue: copySelection
)
- #(#MenuItem
- #label: 'Paste'
- #itemValue: #paste
- #translateLabel: true
+ (MenuItem
+ label: 'Paste'
+ itemValue: paste
)
- #(#MenuItem
- #label: '-'
+ (MenuItem
+ label: '-'
)
- #(#MenuItem
- #label: 'Select All'
- #itemValue: #selectAll
- #translateLabel: true
+ (MenuItem
+ label: 'Select All'
+ itemValue: selectAll
)
)
nil
nil
)
)
- #(#MenuItem
- #label: 'Shell'
- #translateLabel: true
- #submenu:
- #(#Menu
- #(
- #(#MenuItem
- #label: 'Interrupt'
- #itemValue: #doSendInterrupt
- #translateLabel: true
+ (MenuItem
+ label: 'Shell'
+ submenu:
+ (Menu
+ (
+ (MenuItem
+ label: 'Interrupt'
+ itemValue: doSendInterrupt
)
- #(#MenuItem
- #label: 'Kill'
- #itemValue: #doSendKillSignal
- #translateLabel: true
+ (MenuItem
+ label: 'Kill'
+ itemValue: doSendKillSignal
)
- #(#MenuItem
- #label: '-'
+ (MenuItem
+ label: '-'
)
- #(#MenuItem
- #label: 'Reset Terminal'
- #itemValue: #doReset
- #translateLabel: true
+ (MenuItem
+ label: 'Reset Terminal'
+ itemValue: doReset
)
)
nil
nil
)
)
- #(#MenuItem
- #label: 'Help'
- #translateLabel: true
- #startGroup: #right
- #submenu:
- #(#Menu
- #(
- #(#MenuItem
- #label: 'Documentation'
- #itemValue: #openDocumentation
- #translateLabel: true
+ (MenuItem
+ label: 'Help'
+ startGroup: right
+ submenu:
+ (Menu
+ (
+ (MenuItem
+ label: 'Documentation'
+ itemValue: openDocumentation
)
- #(#MenuItem
- #label: '-'
+ (MenuItem
+ label: '-'
)
- #(#MenuItem
- #label: 'About this Application...'
- #itemValue: #openAboutThisApplication
- #translateLabel: true
+ (MenuItem
+ label: 'About this Application...'
+ itemValue: openAboutThisApplication
)
)
nil
@@ -422,6 +424,18 @@
ws := self selectedWorkspacesTextView.
file readingLinesDo:[:eachLine | ws sendLine:eachLine]
.
+!
+
+setGreenDisplayMode
+ self selectedWorkspacesTextView setGreenDisplayMode.
+!
+
+setNormalDisplayMode
+ self selectedWorkspacesTextView setNormalDisplayMode.
+!
+
+setReverseDisplayMode
+ self selectedWorkspacesTextView setReverseDisplayMode.
! !
!TerminalApplication methodsFor:'private'!
@@ -478,7 +492,7 @@
!TerminalApplication class methodsFor:'documentation'!
version_CVS
- ^ '$Header: /cvs/stx/stx/libtool/TerminalApplication.st,v 1.12 2013-07-09 09:31:10 cg Exp $'
+ ^ '$Header: /cvs/stx/stx/libtool/TerminalApplication.st,v 1.13 2013-07-23 21:08:55 cg Exp $'
!
version_HG
--- a/Tools_ClassCategoryList.st Tue Jul 23 20:55:42 2013 +0100
+++ b/Tools_ClassCategoryList.st Wed Jul 24 11:15:26 2013 +0100
@@ -496,8 +496,11 @@
(droppedClasses contains:[:aClass | aClass isPrivate not]) ifFalse:[^ false].
cat := self categoryAtTargetPointOf:aDropContext.
- cat isNil ifTrue:[ ^ false ].
- cat = '* obsolete *' ifTrue:[ ^ false ].
+ (cat isNil
+ or:[ (cat = '* obsolete *')
+ or:[ (cat = #'* as yet unknown category *')
+ or:[ self class isPseudoCategory:cat ]]])
+ ifTrue:[ ^ false ].
(droppedClasses contains:[:aClass | aClass category ~= cat]) ifFalse:[^ false].
^ true.
@@ -531,7 +534,10 @@
objects := aDropContext dropObjects collect:[:aDropObject | aDropObject theObject].
(objects conform:[:something | something isClass]) ifTrue:[
cat := self categoryAtTargetPointOf:aDropContext.
- cat notNil ifTrue:[
+ (cat isNil
+ or:[ (cat = '* obsolete *')
+ or:[ self class isPseudoCategory:cat ]])
+ ifFalse:[
self masterApplication moveClasses:objects toCategory:cat.
].
^ self
@@ -1003,10 +1009,10 @@
!ClassCategoryList class methodsFor:'documentation'!
version
- ^ '$Header: /cvs/stx/stx/libtool/Tools_ClassCategoryList.st,v 1.48 2013-06-20 22:35:19 cg Exp $'
+ ^ '$Header: /cvs/stx/stx/libtool/Tools_ClassCategoryList.st,v 1.49 2013-07-20 10:27:15 cg Exp $'
!
version_CVS
- ^ '$Header: /cvs/stx/stx/libtool/Tools_ClassCategoryList.st,v 1.48 2013-06-20 22:35:19 cg Exp $'
+ ^ '$Header: /cvs/stx/stx/libtool/Tools_ClassCategoryList.st,v 1.49 2013-07-20 10:27:15 cg Exp $'
! !
--- a/Tools_MethodCategoryList.st Tue Jul 23 20:55:42 2013 +0100
+++ b/Tools_MethodCategoryList.st Wed Jul 24 11:15:26 2013 +0100
@@ -223,6 +223,15 @@
"Modified: / 27-04-2010 / 16:40:39 / cg"
! !
+!MethodCategoryList class methodsFor:'queries'!
+
+isPseudoCategory:cat
+ ^ (super isPseudoCategory:cat)
+ or:[ (cat startsWith:'* ')
+ and:[ (cat endsWith:' *')
+ and:[ (cat includesString:'%1') ]]]
+! !
+
!MethodCategoryList methodsFor:'aspects'!
browserNameList
@@ -800,7 +809,7 @@
(methods conform:[:aMethod | aMethod isMethod]) ifFalse:[^ false].
cat := self categoryAtTargetPointOf:aDropContext.
- cat isNil ifTrue:[^ false].
+ (cat isNil or:[ self class isPseudoCategory:cat]) ifTrue:[^ false].
(methods contains:[:aMethod | aMethod category ~= cat]) ifFalse:[^ false].
^ true
@@ -834,7 +843,7 @@
(methods conform:[:something | something isMethod]) ifFalse:[^ self].
cat := self categoryAtTargetPointOf:aDropContext.
- cat notNil ifTrue:[
+ (cat notNil and:[(self class isPseudoCategory:cat) not]) ifTrue:[
self masterApplication moveMethods:methods toProtocol:cat.
].
@@ -2080,11 +2089,11 @@
!MethodCategoryList class methodsFor:'documentation'!
version
- ^ '$Header: /cvs/stx/stx/libtool/Tools_MethodCategoryList.st,v 1.93 2013-04-02 09:34:03 stefan Exp $'
+ ^ '$Header: /cvs/stx/stx/libtool/Tools_MethodCategoryList.st,v 1.95 2013-07-20 10:29:10 cg Exp $'
!
version_CVS
- ^ '$Header: /cvs/stx/stx/libtool/Tools_MethodCategoryList.st,v 1.93 2013-04-02 09:34:03 stefan Exp $'
+ ^ '$Header: /cvs/stx/stx/libtool/Tools_MethodCategoryList.st,v 1.95 2013-07-20 10:29:10 cg Exp $'
! !
--- a/Tools__BreakpointService.st Tue Jul 23 20:55:42 2013 +0100
+++ b/Tools__BreakpointService.st Wed Jul 24 11:15:26 2013 +0100
@@ -72,6 +72,17 @@
^ 'Breakpoints'
! !
+!BreakpointService class methodsFor:'testing'!
+
+isUsefulFor:aCodeView
+ "this filters useful services.
+ Redefined to return true for myself - not for subclasses"
+
+ ^ self == Tools::BreakpointService
+
+ "Created: / 22-07-2013 / 14:01:17 / cg"
+! !
+
!BreakpointService methodsFor:'accessing'!
breakpoints
@@ -123,7 +134,7 @@
"/ codeView methodHolder class == BlockValue ifTrue:[self breakPoint:#cg].
- method := realMethod := codeView methodHolder value.
+ method := realMethod := codeView method.
(method notNil and:[method mclass isNil]) ifTrue:[
"/ hack: ouch - was wrapped in the meantime;
"/ hurry up and update. Should be done elsewhere (in codeView)
@@ -140,6 +151,8 @@
gutterView invalidate.
]
].
+
+ "Modified: / 22-07-2013 / 13:33:28 / cg"
! !
!BreakpointService methodsFor:'event handling'!
@@ -218,7 +231,13 @@
breakpoints isNil ifTrue:[^ nil].
pos := textView characterPositionOfLine:line col:1.
- ^ breakpoints detect:[:each | each position = pos ] ifNone:[ nil ]
+ ^ breakpoints
+ detect:[:each | each position = pos ]
+ ifNone:[
+ breakpoints
+ detect:[:each | each line == line and:[each position isNil ]]
+ ifNone:[ nil ]
+ ]
"Modified: / 17-06-2011 / 13:59:17 / Jan Vrany <jan.vrany@fit.cvut.cz>"
"Modified (format): / 05-07-2011 / 21:33:23 / cg"
@@ -244,9 +263,9 @@
recompile
"recompile the current method for changed breakpoints"
- |oldMethod newMethod compiler class selector|
+ |oldMethod newMethod compilerClass compiler class selector|
- oldMethod := codeView methodHolder value.
+ oldMethod := codeView method.
(oldMethod notNil and:[oldMethod hasPrimitiveCode not]) ifTrue:[
"/ be careful: if the text has been edited/modified, do not compile
textView modified ifTrue:[
@@ -269,9 +288,18 @@
selector := oldMethod selector.
Class withoutUpdatingChangesDo:[
- compiler := ByteCodeCompilerWithBreakpointSupport new.
+ "/ compilerClass := ByteCodeCompilerWithBreakpointSupport.
+ compilerClass := oldMethod programmingLanguage compilerWithBreakpointSupportClass.
+ compilerClass isNil ifTrue:[
+ Dialog warn:'No breakpoint support for this programming language'.
+ ^ self.
+ ].
+ compiler := compilerClass new.
compiler breakpoints:breakpoints.
- compiler methodClass:MethodWithBreakpoints.
+"/ not needed - new compilers already know it
+"/ compiler methodClass:(oldMethod programmingLanguage isSTXJavaScript
+"/ ifTrue:[JavaScriptFunctionWithBreakpoints]
+"/ ifFalse:[MethodWithBreakpoints]).
newMethod := compiler
compile:oldMethod source
forClass:class
@@ -330,7 +358,7 @@
"Created: / 05-07-2011 / 21:33:13 / cg"
"Modified: / 18-07-2012 / 10:53:22 / Jan Vrany <jan.vrany@fit.cvut.cz>"
- "Modified: / 02-08-2012 / 09:35:41 / cg"
+ "Modified: / 22-07-2013 / 16:00:13 / cg"
!
setOrToggleBreakpointAtLine:line
@@ -346,7 +374,7 @@
"/ prepareFullBreakSupport := false.
prepareFullBreakSupport := true.
- codeView methodHolder value isNil ifTrue:[
+ codeView method isNil ifTrue:[
^ self
].
@@ -418,7 +446,7 @@
"Created: / 17-06-2011 / 13:45:22 / Jan Vrany <jan.vrany@fit.cvut.cz>"
"Modified: / 27-07-2011 / 13:27:55 / Jan Vrany <jan.vrany@fit.cvut.cz>"
- "Modified: / 02-08-2012 / 09:26:38 / cg"
+ "Modified: / 22-07-2013 / 13:33:18 / cg"
! !
!BreakpointService methodsFor:'queries'!
@@ -464,15 +492,19 @@
|mthd bpnt icon dx dy|
- (mthd := codeView methodHolder value) isNil ifTrue:[
- ^ self
- ].
- currentMethodClass isNil ifTrue:[
- "/ hack: ouch - was wrapped in the meantime;
- ^ self. "/ wait for the real update
- "/ hurry up and update. Should be done elsewhere (in codeView)
- "/ self updateCurrentMethod.
- ].
+"/ these tests make the breakpointService unusable for other applications (which are mote
+"/ based on smalltalk methods. They are not really needed: if there is a breakpoint,
+"/ I can show it. Period.
+
+"/ (mthd := codeView methodHolder value) isNil ifTrue:[
+"/ ^ self
+"/ ].
+"/ currentMethodClass isNil ifTrue:[
+"/ "/ hack: ouch - was wrapped in the meantime;
+"/ ^ self. "/ wait for the real update
+"/ "/ hurry up and update. Should be done elsewhere (in codeView)
+"/ "/ self updateCurrentMethod.
+"/ ].
view == gutterView ifTrue:[
bpnt := self breakpointAtLine:lineNo.
@@ -504,14 +536,14 @@
!BreakpointService class methodsFor:'documentation'!
version
- ^ '$Header: /cvs/stx/stx/libtool/Tools__BreakpointService.st,v 1.31 2013-07-12 05:50:20 cg Exp $'
+ ^ '$Header: /cvs/stx/stx/libtool/Tools__BreakpointService.st,v 1.35 2013-07-22 14:00:21 cg Exp $'
!
version_CVS
- ^ '$Header: /cvs/stx/stx/libtool/Tools__BreakpointService.st,v 1.31 2013-07-12 05:50:20 cg Exp $'
+ ^ '$Header: /cvs/stx/stx/libtool/Tools__BreakpointService.st,v 1.35 2013-07-22 14:00:21 cg Exp $'
!
version_SVN
- ^ '$Id: Tools__BreakpointService.st,v 1.31 2013-07-12 05:50:20 cg Exp $'
+ ^ '$Id: Tools__BreakpointService.st,v 1.35 2013-07-22 14:00:21 cg Exp $'
! !
--- a/Tools__CodeCompletionService.st Tue Jul 23 20:55:42 2013 +0100
+++ b/Tools__CodeCompletionService.st Wed Jul 24 11:15:26 2013 +0100
@@ -91,6 +91,15 @@
"Created: / 03-04-2011 / 23:08:02 / Jan Vrany <jan.vrany@fit.cvut.cz>"
"Modified: / 08-07-2011 / 08:42:52 / cg"
"Modified: / 27-07-2011 / 11:47:22 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+!
+
+isUsefulFor:aCodeView
+ "this filters useful services.
+ Redefined to return true for myself - not for subclasses"
+
+ ^ self == Tools::CodeCompletionService
+
+ "Created: / 22-07-2013 / 13:59:54 / cg"
! !
!CodeCompletionService methodsFor:'event handling'!
@@ -185,7 +194,7 @@
!CodeCompletionService class methodsFor:'documentation'!
version_CVS
- ^ '$Header: /cvs/stx/stx/libtool/Tools__CodeCompletionService.st,v 1.7 2013-07-04 17:06:35 cg Exp $'
+ ^ '$Header: /cvs/stx/stx/libtool/Tools__CodeCompletionService.st,v 1.8 2013-07-22 12:02:14 cg Exp $'
!
version_HG
@@ -194,6 +203,6 @@
!
version_SVN
- ^ '$Id: Tools__CodeCompletionService.st,v 1.7 2013-07-04 17:06:35 cg Exp $'
+ ^ '$Id: Tools__CodeCompletionService.st,v 1.8 2013-07-22 12:02:14 cg Exp $'
! !
--- a/Tools__CodeHighlightingService.st Tue Jul 23 20:55:42 2013 +0100
+++ b/Tools__CodeHighlightingService.st Wed Jul 24 11:15:26 2013 +0100
@@ -74,6 +74,17 @@
"Created: / 07-03-2010 / 14:00:21 / Jan Vrany <jan.vrany@fit.cvut.cz>"
! !
+!CodeHighlightingService class methodsFor:'testing'!
+
+isUsefulFor:aCodeView
+ "this filters useful services.
+ Redefined to return true for myself - not for subclasses"
+
+ ^ self == Tools::CodeHighlightingService
+
+ "Created: / 22-07-2013 / 14:00:54 / cg"
+! !
+
!CodeHighlightingService methodsFor:'accessing'!
preferences:preferences
@@ -91,7 +102,7 @@
app notNil ifTrue:[
| mthd class |
- mthd := codeView methodHolder value.
+ mthd := codeView method.
(mthd notNil and:[app respondsTo: #syntaxHighlighterForMethod:]) ifTrue:[
highlighter := app syntaxHighlighterForMethod:mthd.
] ifFalse:[
@@ -119,7 +130,7 @@
"Created: / 05-08-2011 / 10:48:55 / Jan Vrany <jan.vrany@fit.cvut.cz>"
"Modified: / 28-09-2011 / 00:23:27 / Jan Vrany <jan.vrany@fit.cvut.cz>"
- "Modified: / 19-07-2012 / 13:03:21 / cg"
+ "Modified: / 22-07-2013 / 13:33:46 / cg"
!
syntaxHighlighters
@@ -366,11 +377,11 @@
!CodeHighlightingService class methodsFor:'documentation'!
version
- ^ '$Header: /cvs/stx/stx/libtool/Tools__CodeHighlightingService.st,v 1.41 2013-07-04 19:28:47 cg Exp $'
+ ^ '$Header: /cvs/stx/stx/libtool/Tools__CodeHighlightingService.st,v 1.43 2013-07-22 12:02:20 cg Exp $'
!
version_CVS
- ^ '$Header: /cvs/stx/stx/libtool/Tools__CodeHighlightingService.st,v 1.41 2013-07-04 19:28:47 cg Exp $'
+ ^ '$Header: /cvs/stx/stx/libtool/Tools__CodeHighlightingService.st,v 1.43 2013-07-22 12:02:20 cg Exp $'
!
version_HG
@@ -379,6 +390,6 @@
!
version_SVN
- ^ '$Id: Tools__CodeHighlightingService.st,v 1.41 2013-07-04 19:28:47 cg Exp $'
+ ^ '$Id: Tools__CodeHighlightingService.st,v 1.43 2013-07-22 12:02:20 cg Exp $'
! !
--- a/Tools__CodeNavigationService.st Tue Jul 23 20:55:42 2013 +0100
+++ b/Tools__CodeNavigationService.st Wed Jul 24 11:15:26 2013 +0100
@@ -118,6 +118,17 @@
"Modified: / 21-08-2011 / 11:04:20 / cg"
! !
+!CodeNavigationService class methodsFor:'testing'!
+
+isUsefulFor:aCodeView
+ "this filters useful services.
+ Redefined to return true for myself - not for subclasses"
+
+ ^ self == Tools::CodeNavigationService
+
+ "Created: / 22-07-2013 / 13:59:20 / cg"
+! !
+
!CodeNavigationService methodsFor:'change & update'!
update: aspect with: param from: sender
@@ -748,11 +759,11 @@
!CodeNavigationService class methodsFor:'documentation'!
version
- ^ '$Header: /cvs/stx/stx/libtool/Tools__CodeNavigationService.st,v 1.30 2013-07-04 19:28:51 cg Exp $'
+ ^ '$Header: /cvs/stx/stx/libtool/Tools__CodeNavigationService.st,v 1.31 2013-07-22 12:02:12 cg Exp $'
!
version_CVS
- ^ '$Header: /cvs/stx/stx/libtool/Tools__CodeNavigationService.st,v 1.30 2013-07-04 19:28:51 cg Exp $'
+ ^ '$Header: /cvs/stx/stx/libtool/Tools__CodeNavigationService.st,v 1.31 2013-07-22 12:02:12 cg Exp $'
!
version_HG
@@ -761,6 +772,6 @@
!
version_SVN
- ^ '$Id: Tools__CodeNavigationService.st,v 1.30 2013-07-04 19:28:51 cg Exp $'
+ ^ '$Id: Tools__CodeNavigationService.st,v 1.31 2013-07-22 12:02:12 cg Exp $'
! !
--- a/Tools__CodeView2.st Tue Jul 23 20:55:42 2013 +0100
+++ b/Tools__CodeView2.st Wed Jul 24 11:15:26 2013 +0100
@@ -42,9 +42,8 @@
SimpleView subclass:#GutterView
instanceVariableNames:'codeView textView textViewScroller widthAcceptCancel
- widthAnnotations widthDiffInfo firstLineShown lastLineShown
- numberOfLines acceptColor cancelColor diffColor
- currentBlockNodeHolder menuHolder'
+ widthAnnotations widthDiffInfo numberOfLines acceptColor
+ cancelColor diffColor menuHolder currentBlockNodeHolder'
classVariableNames:''
poolDictionaries:''
privateIn:CodeView2
@@ -737,15 +736,15 @@
!CodeView2 methodsFor:'accessing - code component'!
klass
-
| v |
(v := self classHolder value) notNil ifTrue:[^v].
- (v := self methodHolder value) notNil ifTrue:[^v mclass].
+ (v := self method) notNil ifTrue:[^v mclass].
^nil
"Created: / 27-07-2011 / 13:14:20 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+ "Modified: / 22-07-2013 / 13:34:05 / cg"
! !
!CodeView2 methodsFor:'accessing-code component'!
@@ -761,7 +760,7 @@
| v |
(v := self languageHolder value) notNil ifTrue:[^v].
- (v := self methodHolder value) notNil ifTrue:[^v programmingLanguage].
+ (v := self method) notNil ifTrue:[^v programmingLanguage].
(v := self classHolder value) notNil ifTrue:[^v programmingLanguage].
"/No, no default language, please.
@@ -769,6 +768,7 @@
^nil
"Modified: / 07-12-2011 / 16:38:47 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+ "Modified: / 22-07-2013 / 13:34:17 / cg"
!
language: newValue
@@ -1453,6 +1453,22 @@
!CodeView2 methodsFor:'initialization'!
+defaultServices
+ "/ used to call "CodeViewService availableServices",
+ "/ which enumerated all subclasses.
+ "/ this is BAD BAD BAD, because it does not allow for additional service
+ "/ subclasses to be built for special applications. For example,
+ "/ a debugging breakpoint service for a GDB application, a breakpoint service for
+ "/ expecco's codeview.
+
+ "/ therefore, the list of services to use in codeView2 is now filtered
+
+ ^ CodeViewService availableServices
+ select:[:service | service isUsefulFor:self]
+
+ "Created: / 22-07-2013 / 13:57:40 / cg"
+!
+
initialize
"Invoked when a new instance is created."
"Call super initialize"
@@ -1508,18 +1524,14 @@
"/ only do it, if the services have not yet been defined by the user of this view
"/ (FileBrowser does not want Smalltalk-specific services)
servicesFromClient ifFalse:[
- serviceClasses := CodeViewService availableServices
- sort:[:a :b|
- a priority = b priority
- ifTrue:[a name < b name]
- ifFalse:[a priority > b priority]].
+ serviceClasses := self defaultServices sort:[:a :b|name < b name].
serviceClasses do:[:cls|
self registerService: cls new
].
].
- "Modified: / 06-10-2011 / 14:16:01 / cg"
- "Modified: / 01-02-2012 / 10:30:38 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+ "Modified: / 27-07-2011 / 11:37:20 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+ "Modified: / 22-07-2013 / 14:02:59 / cg"
!
initializeTextView
@@ -2306,6 +2318,7 @@
self invalidate.
^ self.
].
+ "/ something printCR.
].
(changedObject == textView reallyModifiedChannel) ifTrue:[
@@ -2445,10 +2458,17 @@
"Created: / 14-12-2009 / 14:40:17 / Jindra <a>"
!
-yOfTextViewLine:line
- ^(textView yOfLine:line) + 1
-
- "Created: / 14-12-2009 / 13:35:07 / Jindra <a>"
+yOfTextViewLine:lineNr
+ "defined to allow computation of a line below what is visible in
+ the textView (because gutter may become higher than textView, iff
+ the textView has a horizontal scrollbar"
+
+ |visibleLineNr "{ Class: SmallInteger }"|
+
+ shown ifFalse:[^ nil].
+ lineNr isNil ifTrue:[^ nil].
+ visibleLineNr := lineNr - textView firstLineShown + 1.
+ ^ textView yOfVisibleLine:visibleLineNr
! !
!CodeView2::GutterView methodsFor:'redrawing'!
@@ -2531,9 +2551,11 @@
!
redrawLine:line cleared:cleared drawServices:drawServices
- "redraws specified line. Returns width of drawn object. Color of drawn objects should be taken from lineFont, lineColor"
-
- |lineString y0 textW requiredW oldFont newFont oldColor newColor|
+ "redraws specified line. Returns width of drawn object.
+ Color of drawn objects should be taken from lineFont, lineColor"
+
+ |lineString yTop yBaseline fontAscent fontDescent
+ textW requiredW oldFont newFont oldColor newColor|
lineString := self displayedString:line.
@@ -2555,15 +2577,16 @@
].
self font:newFont
].
-
- y0 := (textView yOfLine:line).
- y0 isNil ifTrue:[^ self]. "/ not visible
- y0 := y0 + (textView font ascentOn:device)
- "/ - (newFont descentOn:device)
- + 1.
+ fontAscent := textView font ascentOn:device.
+ fontDescent := textView font descentOn:device.
+
+ yTop := self yOfTextViewLine:line.
+ yBaseline := yTop + fontAscent.
cleared ifFalse:[
- self clearRectangleX:0 y:y0 - font height width: self width - 2 height: font height + font descent.
+ self clearRectangleX:0 y:yBaseline - font ascent
+ width: self width - 2
+ height: font ascent + font descent.
].
"/ cg: this should be done differently: services know about the
@@ -2574,14 +2597,14 @@
"Let services draw annotations and other stuff"
codeView
drawLine:line in: self
- atX: (self paddingLeft + self usedWidthForAcceptCancel) y:y0 width: widthAnnotations height: font height
+ atX: (self paddingLeft + self usedWidthForAcceptCancel) y:yBaseline width: widthAnnotations height: font height
from:nil to:nil with:self paint and: self backgroundColor.
].
self
displayString:lineString
x:(self width - textW - 2 - self paddingRight - widthDiffInfo)
- y:y0.
+ y:yBaseline.
newFont
ifNotNil:[
@@ -2609,6 +2632,8 @@
!
redrawX:x y:y width:w height:h
+ |firstLine lastLine yBot|
+
self redrawBackgroundX:x y:y width:w height:h.
codeView showAcceptCancelBar ifTrue:[
@@ -2616,13 +2641,13 @@
].
numberOfLines := (textView list size max:textView cursorLine).
-
- firstLineShown := textView visibleLineToAbsoluteLine:(textView visibleLineOfY:y).
- lastLineShown := textView visibleLineToAbsoluteLine:(textView visibleLineOfY:(y + h)).
- lastLineShown := lastLineShown min:numberOfLines.
-
- firstLineShown to:lastLineShown do: [:line |
- self redrawLine:line cleared:true drawServices:true
+ yBot := y + h.
+ firstLine := textView visibleLineToAbsoluteLine:(textView visibleLineOfY:y).
+ lastLine := textView visibleLineToAbsoluteLine:(textView visibleLineOfY:yBot-1).
+ lastLine := lastLine min:numberOfLines.
+
+ firstLine to:lastLine do: [:line |
+ self redrawLine:line cleared:true drawServices:true.
].
! !
@@ -3709,11 +3734,11 @@
!CodeView2 class methodsFor:'documentation'!
version
- ^ '$Header: /cvs/stx/stx/libtool/Tools__CodeView2.st,v 1.107 2013-07-13 21:06:11 cg Exp $'
+ ^ '$Header: /cvs/stx/stx/libtool/Tools__CodeView2.st,v 1.110 2013-07-23 12:14:21 cg Exp $'
!
version_CVS
- ^ '$Header: /cvs/stx/stx/libtool/Tools__CodeView2.st,v 1.107 2013-07-13 21:06:11 cg Exp $'
+ ^ '$Header: /cvs/stx/stx/libtool/Tools__CodeView2.st,v 1.110 2013-07-23 12:14:21 cg Exp $'
!
version_HG
@@ -3722,7 +3747,7 @@
!
version_SVN
- ^ '$Id: Tools__CodeView2.st,v 1.107 2013-07-13 21:06:11 cg Exp $'
+ ^ '$Id: Tools__CodeView2.st,v 1.110 2013-07-23 12:14:21 cg Exp $'
! !
--- a/Tools__CodeViewService.st Tue Jul 23 20:55:42 2013 +0100
+++ b/Tools__CodeViewService.st Wed Jul 24 11:15:26 2013 +0100
@@ -149,6 +149,16 @@
].
"Created: / 27-07-2011 / 11:49:26 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+!
+
+isUsefulFor:aCodeView
+ "this filters useful services.
+ must be redefined to return true in subclasses (but each class must do it only
+ for itself - not for subclasses"
+
+ ^ false
+
+ "Created: / 22-07-2013 / 13:58:49 / cg"
! !
!CodeViewService class methodsFor:'registering'!
@@ -428,7 +438,7 @@
!
version_CVS
- ^ '$Header: /cvs/stx/stx/libtool/Tools__CodeViewService.st,v 1.12 2013-07-04 17:06:49 cg Exp $'
+ ^ '$Header: /cvs/stx/stx/libtool/Tools__CodeViewService.st,v 1.13 2013-07-22 12:02:16 cg Exp $'
!
version_HG
@@ -437,6 +447,6 @@
!
version_SVN
- ^ '$Id: Tools__CodeViewService.st,v 1.12 2013-07-04 17:06:49 cg Exp $'
+ ^ '$Id: Tools__CodeViewService.st,v 1.13 2013-07-22 12:02:16 cg Exp $'
! !
--- a/Tools__LintService.st Tue Jul 23 20:55:42 2013 +0100
+++ b/Tools__LintService.st Wed Jul 24 11:15:26 2013 +0100
@@ -74,6 +74,17 @@
"Created: / 05-08-2011 / 11:01:33 / Jan Vrany <jan.vrany@fit.cvut.cz>"
! !
+!LintService class methodsFor:'testing'!
+
+isUsefulFor:aCodeView
+ "this filters useful services.
+ Redefined to return true for myself - not for subclasses"
+
+ ^ self == Tools::LintService
+
+ "Created: / 22-07-2013 / 14:01:38 / cg"
+! !
+
!LintService methodsFor:'accessing'!
syntaxHighlighter
@@ -204,11 +215,11 @@
!LintService class methodsFor:'documentation'!
version
- ^ '$Header: /cvs/stx/stx/libtool/Tools__LintService.st,v 1.7 2013-07-04 17:06:13 cg Exp $'
+ ^ '$Header: /cvs/stx/stx/libtool/Tools__LintService.st,v 1.8 2013-07-22 12:01:53 cg Exp $'
!
version_CVS
- ^ '$Header: /cvs/stx/stx/libtool/Tools__LintService.st,v 1.7 2013-07-04 17:06:13 cg Exp $'
+ ^ '$Header: /cvs/stx/stx/libtool/Tools__LintService.st,v 1.8 2013-07-22 12:01:53 cg Exp $'
!
version_HG
--- a/Tools__NewSystemBrowser.st Tue Jul 23 20:55:42 2013 +0100
+++ b/Tools__NewSystemBrowser.st Wed Jul 24 11:15:26 2013 +0100
@@ -18991,8 +18991,6 @@
"Created: / 24.2.2000 / 23:28:06 / cg"
! !
-
-
!NewSystemBrowser methodsFor:'aspects-organization'!
categoryMenuVisible
@@ -19966,6 +19964,10 @@
^ self hasClassAndVariableSelectedHolder
!
+
+
+
+
canGenerateMultiSetterMethodHolder
^ self hasSingleLoadedClassSelectedAndMultipleVariablesSelectedHolder
!
@@ -20509,6 +20511,10 @@
^ self selectedClassNameInCodeViewOrNil notNil
!
+
+
+
+
hasClassSelected
^ self selectedClassesValue size > 0
@@ -22655,7 +22661,6 @@
^ UserPreferences current useSearchBarInBrowser or:[self codeView searchBarActionBlock notNil]
! !
-
!NewSystemBrowser methodsFor:'change & update'!
categorySelectionChanged
@@ -22769,25 +22774,27 @@
!
delayedMethodTrapChanged:methodTrapChangeInfo
- |mthd|
+ |mthd codeView|
self hasMethodWithoutBreakPointSelectedHolder value:(self hasMethodWithoutBreakPointSelected).
self hasMethodWithBreakPointSelectedHolder value:(self hasMethodWithBreakPointSelected).
- self codeView isCodeView2 ifTrue:[
+ (codeView := self codeView) isCodeView2 ifTrue:[
mthd := self theSingleSelectedMethod.
- mthd == self codeView methodHolder value ifTrue:[
+ mthd == codeView method ifTrue:[
mthd notNil ifTrue:[
"/ would not send an update notification
- self codeView updateGutter
- ]
- ] ifFalse:[
- self codeView methodHolder value notNil ifTrue:[
+ codeView updateGutter
+ ]
+ ] ifFalse:[
+ codeView method notNil ifTrue:[
"/ will send update notification to services
- self codeView methodHolder value:mthd.
- ].
- ]
- ].
+ codeView method:mthd.
+ ].
+ ]
+ ].
+
+ "Modified: / 22-07-2013 / 13:35:47 / cg"
!
delayedMethodsSelectionChanged
@@ -23086,6 +23093,8 @@
arguments:#()
!
+
+
enqueueDelayedMethodsSelectionChanged
^ self
enqueueMessage:#delayedMethodsSelectionChanged
@@ -23802,6 +23811,8 @@
"Created: / 01-06-2012 / 23:01:35 / cg"
!
+
+
variableSelectionChanged
"variable selection changed by user interaction"
@@ -23865,6 +23876,8 @@
!NewSystemBrowser methodsFor:'menu actions-browse'!
+
+
browseImplementorsOf
"launch an enterBox for selector to search for"
@@ -25977,6 +25990,10 @@
"Modified: / 28-02-2012 / 16:15:36 / cg"
!
+
+
+
+
defaultSearchArea
"return a useful default seach area"
@@ -26225,6 +26242,12 @@
self updateBookmarkHolder.
].
+"/ self updateTestRunnerVisibility.
+ self updateExecuteMethodVisibility.
+ self updateInitSharedPoolVisibility.
+ self updateLaunchApplicationVisibility.
+ self updateToolBarButtonEnablement.
+
"/ force update of the menus orgMode aspect
"/ required since the menu has a single orgMode aspect,
"/ (i.e. there is no per-canvas menu).
@@ -37578,6 +37601,8 @@
self commonTraceHelperWith:#startCounting with:nil clear:true
!
+
+
debugMenuStartMemoryUsage
"set a countpoint for memory usage on the current method"
@@ -37841,7 +37866,6 @@
HTMLDocumentView openFullOnDocumentationFile:'TOP.html'
! !
-
!NewSystemBrowser methodsFor:'menu actions-inheritance'!
inheritanceMenuNavigateToClass
@@ -40595,13 +40619,13 @@
managerOrNil notNil ifTrue:[
sourceCodeManager := managerOrNil.
] ifFalse:[
- sourceCodeManager := (AbstractSourceCodeManager managerForModule:module) ? AbstractSourceCodeManager defaultManager.
+ sourceCodeManager := (AbstractSourceCodeManager managerForPackage:module) ? AbstractSourceCodeManager defaultManager.
].
UnimplementedFunctionalityError,SourceCodeManagerError handle:[:ex |
|msg1 msg2|
- (UnimplementedFunctionalityError accepts:ex signal) ifTrue:[
+ (UnimplementedFunctionalityError handles:ex) ifTrue:[
msg1 := 'Cannot access module "%1".\\'.
msg2 := 'Missing functionality in the "%2"-source code manager.'.
] ifFalse:[
@@ -40677,7 +40701,7 @@
relDir := checkedOutPackageDir
]
].
- relDir := relDir copy replaceAll:$\ with:$/.
+ relDir := relDir copyReplaceAll:$\ with:$/.
relDir size > 0 ifTrue:[
theProject := module , ':' , relDir
] ifFalse:[
@@ -42902,6 +42926,8 @@
^ self findResponseTo:selector in:#newBuffer
!
+
+
findResponseTo:selector in:whereWanted
|where searchClass class mthd currentMethod|
@@ -44967,6 +44993,8 @@
^ self selectorMenuFileOutAsWithFormat:#xml
!
+
+
selectorMenuGenerateCorrespondingInstanceCreationInClass
"generate a subclassResponsibility method in the methods superclass"
@@ -47272,7 +47300,6 @@
"Modified: / 28-02-2012 / 16:48:38 / cg"
! !
-
!NewSystemBrowser methodsFor:'menu actions-variables'!
browseVarRefsOrModsWithTitle:browserTitle boxTitle:boxTitle variables:varType access:accessType all:browseAll
@@ -50388,7 +50415,6 @@
"Modified: / 19-10-2011 / 16:48:31 / cg"
! !
-
!NewSystemBrowser methodsFor:'menus-dynamic-popup'!
categoryPopUpMenu
@@ -54915,7 +54941,6 @@
^ navigationState projectListApplication
! !
-
!NewSystemBrowser methodsFor:'private-history'!
lastSearchPatterns
@@ -58330,7 +58355,7 @@
"tell the codeView what to do on accept.
Return false, if NOT accepted (i.e. compilation canceled).
Ouch: this shares a lot of duplicate code with setAcceptActionForClass;
- please refacor"
+ please refacor"
|codeView returnValue package|
@@ -58341,140 +58366,142 @@
codeView modified:false.
self withExecuteCursorDo:[
- |currentCategory currentClass ns|
-
- currentClass := self theSingleSelectedClass.
- currentClass notNil ifTrue:[
- ns := currentClass nameSpace
- ] ifFalse:[
- ns := nil
- ].
- ns := nil. "/ experimental - needed for JS parsing; is it still needed for ST ?
-
- currentCategory := self theSingleSelectedCategory.
- currentCategory isNil ifTrue:[
- currentClass notNil ifTrue:[
- currentCategory := currentClass category
- ]
- ].
-
- self organizerMode value == OrganizerCanvas organizerModeProject ifTrue:[
- currentClass notNil ifTrue:[
- package := currentClass package.
- ] ifFalse:[
- package := self theSingleSelectedProject.
- ].
- package isNil ifTrue:[
- package := Dialog request:'Add to which project ?'.
- package size == 0 ifTrue:[^ self].
- ].
- package := package asSymbol.
- ] ifFalse:[
- package := Class packageQuerySignal query.
- ].
-
- Class classCategoryQuerySignal answer:(currentCategory ? '* as yet unspecified *')
- do:[
- Class packageQuerySignal answer:package
- do:[
- Class nameSpaceQuerySignal handle:[:ex |
- ns isNil ifTrue:[
- ex reject
- ].
- ex proceedWith:ns
- ] do:[
- AbortOperationRequest catch:[
- UndefinedObject createMinimumProtocolInNewSubclassQuery
- answer:true
- do:[
- (Class classRedefinitionNotification) handle:[:ex |
- |answer|
+ |currentCategory currentClass ns|
+
+ currentClass := self theSingleSelectedClass.
+ currentClass notNil ifTrue:[
+ ns := currentClass nameSpace
+ ] ifFalse:[
+ ns := nil
+ ].
+ ns := nil. "/ experimental - needed for JS parsing; is it still needed for ST ?
+
+ currentCategory := self theSingleSelectedCategory.
+ currentCategory isNil ifTrue:[
+ currentClass notNil ifTrue:[
+ currentCategory := currentClass category
+ ]
+ ].
+
+ self organizerMode value == OrganizerCanvas organizerModeProject ifTrue:[
+ currentClass notNil ifTrue:[
+ package := currentClass package.
+ ] ifFalse:[
+ package := self theSingleSelectedProject.
+ ].
+ package isNil ifTrue:[
+ package := Dialog request:'Add to which project ?'.
+ package size == 0 ifTrue:[^ self].
+ ].
+ package := package asSymbol.
+ ] ifFalse:[
+ package := Class packageQuerySignal query.
+ ].
+
+ Class classCategoryQuerySignal answer:(currentCategory ? '* as yet unspecified *')
+ do:[
+ Class packageQuerySignal answer:package
+ do:[
+ Class nameSpaceQuerySignal handle:[:ex |
+ ns isNil ifTrue:[
+ ex reject
+ ].
+ ex proceedWith:ns
+ ] do:[
+ AbortOperationRequest catch:[
+ UndefinedObject createMinimumProtocolInNewSubclassQuery
+ answer:true
+ do:[
+ (Class classRedefinitionNotification) handle:[:ex |
+ |answer|
"/ cg: now always keep the old packageID
- Class catchClassRedefinitions ifFalse:[
- ex proceedWith:#keep
- ].
- answer := OptionBox
- request:
+ Class catchClassRedefinitions ifFalse:[
+ ex proceedWith:#keep
+ ].
+ answer := OptionBox
+ request:
('You are about to change the definition of a class from another (system-) package.
The class is part of the ''%1'' package.
PS: you can disable this check in the launchers settings-compilation dialog.'
- bindWith:(ex oldPackage allBold))
-
- label:'Class redefinition'
- image:(WarningBox iconBitmap)
- buttonLabels:#('Cancel' 'Continue')
- values:#(#cancel #keep)
- default:#keep
- onCancel:#cancel.
-
- (answer ~~ #cancel) ifTrue:[
- ex proceedWith:answer
- ]
- ] do:[
- |rslt cls mcls|
-
- "/ self immediateUpdate value:true.
- navigationState realModifiedState:false.
- navigationState modified:false.
-
- ClassDescription updateHistoryLineQuerySignal answer:true do:[
- (ClassDescription updateChangeFileQuerySignal
- , ClassDescription updateChangeListQuerySignal) answer:self suppressChangeSetUpdate not
- do:[
- thisIsAFullClassesCode ifTrue:[
- rslt := (ReadStream on:theCode asString) fileIn.
- ] ifFalse:[
- ClassBuildError handle:[:ex |
- self warn:ex description
- ] do:[
- rslt := (aCompilerClass ? Compiler)
- evaluate:theCode asString string
- notifying:codeView
- compile:false.
-
- ].
- ].
- ].
- ].
- "/ self immediateUpdate value:false.
-
- (rslt isBehavior and: [rslt isJavaClass not]) ifTrue:[
- "/ look for a comment and generate a documentation method if so
- |parser tree comment|
- parser := Parser new.
- parser
- source:theCode asString string;
- saveComments:true.
- tree := parser
- parseExpressionWithSelf:nil
- notifying:nil
- ignoreErrors:true
- ignoreWarnings:true
- inNameSpace:nil.
- parser nextToken.
- comment := (parser comments collect:[:c | c string]) asStringCollection asString.
- (comment includesString:'no comment') ifFalse:[
- (rslt class implements:#documentation) ifFalse:[
- rslt class compile:'documentation\"' withCRs,comment,'"' classified:'documentation'.
- ]
- ].
- self switchToClass:rslt.
- "/ self switchToClassNamed:rslt name.
- returnValue := true.
- ].
-
- returnValue ifTrue:[
- cls := rslt theNonMetaclass.
- mcls := rslt theMetaclass.
- self askForInitialApplicationCodeFor:mcls.
- ].
- ]
- ]
- ].
- ].
- ].
+ bindWith:(ex oldPackage allBold))
+
+ label:'Class redefinition'
+ image:(WarningBox iconBitmap)
+ buttonLabels:#('Cancel' 'Continue')
+ values:#(#cancel #keep)
+ default:#keep
+ onCancel:#cancel.
+
+ (answer ~~ #cancel) ifTrue:[
+ ex proceedWith:answer
+ ]
+ ] do:[
+ |rslt cls mcls|
+
+ "/ self immediateUpdate value:true.
+ navigationState realModifiedState:false.
+ navigationState modified:false.
+
+ ClassDescription updateHistoryLineQuerySignal answer:true do:[
+ (ClassDescription updateChangeFileQuerySignal
+ , ClassDescription updateChangeListQuerySignal) answer:self suppressChangeSetUpdate not
+ do:[
+ thisIsAFullClassesCode ifTrue:[
+ rslt := (ReadStream on:theCode asString) fileIn.
+ ] ifFalse:[
+ ClassBuildError handle:[:ex |
+ self warn:ex description
+ ] do:[
+ rslt := (aCompilerClass ? Compiler)
+ evaluate:theCode asString string
+ notifying:codeView
+ compile:false.
+
+ ].
+ ].
+ ].
+ ].
+ "/ self immediateUpdate value:false.
+
+ (rslt isBehavior and: [rslt isJavaClass not]) ifTrue:[
+ "/ look for a comment and generate a documentation method if so
+ |parser tree comment|
+ parser := Parser new.
+ parser
+ source:theCode asString string;
+ saveComments:true.
+ tree := parser
+ parseExpressionWithSelf:nil
+ notifying:nil
+ ignoreErrors:true
+ ignoreWarnings:true
+ inNameSpace:nil.
+ parser nextToken.
+ (rslt class implements:#documentation) ifFalse:[
+ comment := (parser comments collect:[:c | c string]) asStringCollection asString.
+ (comment includesString:'no comment') ifFalse:[
+ (comment includesString:'the empty string arguments by true values') ifFalse:[
+ rslt class compile:'documentation\"' withCRs,comment,'"' classified:'documentation'.
+ ]
+ ]
+ ].
+ self switchToClass:rslt.
+ "/ self switchToClassNamed:rslt name.
+ returnValue := true.
+ ].
+
+ returnValue ifTrue:[
+ cls := rslt theNonMetaclass.
+ mcls := rslt theMetaclass.
+ self askForInitialApplicationCodeFor:mcls.
+ ].
+ ]
+ ]
+ ].
+ ].
+ ].
]
].
@@ -58482,7 +58509,7 @@
^ returnValue
"Created: / 13-02-2000 / 22:43:59 / cg"
- "Modified: / 27-07-2012 / 22:25:02 / cg"
+ "Modified: / 22-07-2013 / 13:47:45 / cg"
"Modified: / 23-07-2013 / 01:50:55 / Jan Vrany <jan.vrany@fit.cvut.cz>"
!
@@ -60244,11 +60271,11 @@
!NewSystemBrowser class methodsFor:'documentation'!
version
- ^ '$Header: /cvs/stx/stx/libtool/Tools__NewSystemBrowser.st,v 1.1940 2013-07-15 09:44:11 cg Exp $'
+ ^ '$Header: /cvs/stx/stx/libtool/Tools__NewSystemBrowser.st,v 1.1944 2013-07-22 14:03:14 cg Exp $'
!
version_CVS
- ^ '$Header: /cvs/stx/stx/libtool/Tools__NewSystemBrowser.st,v 1.1940 2013-07-15 09:44:11 cg Exp $'
+ ^ '$Header: /cvs/stx/stx/libtool/Tools__NewSystemBrowser.st,v 1.1944 2013-07-22 14:03:14 cg Exp $'
!
version_HG
@@ -60257,7 +60284,7 @@
!
version_SVN
- ^ '$Id: Tools__NewSystemBrowser.st,v 1.1940 2013-07-15 09:44:11 cg Exp $'
+ ^ '$Id: Tools__NewSystemBrowser.st,v 1.1944 2013-07-22 14:03:14 cg Exp $'
! !
--- a/Tools__TagList.st Tue Jul 23 20:55:42 2013 +0100
+++ b/Tools__TagList.st Wed Jul 24 11:15:26 2013 +0100
@@ -2061,15 +2061,21 @@
"create tags from a file;
either use the ctags/etags command, or an intenral naive, simple method."
- |list shellCmd numTags fileContents|
+ |forceSimpleTagList list shellCmd numTags fileContents|
rawList := nil.
list := OrderedCollection new.
- shellCmd := (self shellCommandFor:aFile pathName).
- shellCmd notNil ifTrue:[
- tagTypesPresent := false. "/ will be set again, when ctags command provides types
- list := self getTagListFromFile:aFile usingCommand:shellCmd mode:nil in:aTempDirectory
+ forceSimpleTagList := false.
+ "/ the simple builtin tagList generator is actually better than the ctags output for makefiles
+ (self class makeFilePatterns contains:[:aPattern | (aPattern match:aFile baseName asLowercase)]) ifTrue:[forceSimpleTagList := true].
+
+ forceSimpleTagList ifFalse:[
+ shellCmd := (self shellCommandFor:aFile pathName).
+ shellCmd notNil ifTrue:[
+ tagTypesPresent := false. "/ will be set again, when ctags command provides types
+ list := self getTagListFromFile:aFile usingCommand:shellCmd mode:nil in:aTempDirectory
+ ].
].
"/ in case ctags could not find anything, try our own, naive fallback (not too bad either)
@@ -3661,11 +3667,11 @@
!TagList class methodsFor:'documentation'!
version
- ^ '$Header: /cvs/stx/stx/libtool/Tools__TagList.st,v 1.28 2013-07-10 08:39:01 cg Exp $'
+ ^ '$Header: /cvs/stx/stx/libtool/Tools__TagList.st,v 1.29 2013-07-23 23:20:56 cg Exp $'
!
version_CVS
- ^ '$Header: /cvs/stx/stx/libtool/Tools__TagList.st,v 1.28 2013-07-10 08:39:01 cg Exp $'
+ ^ '$Header: /cvs/stx/stx/libtool/Tools__TagList.st,v 1.29 2013-07-23 23:20:56 cg Exp $'
!
version_HG
@@ -3674,6 +3680,6 @@
!
version_SVN
- ^ '$Id: Tools__TagList.st,v 1.28 2013-07-10 08:39:01 cg Exp $'
+ ^ '$Id: Tools__TagList.st,v 1.29 2013-07-23 23:20:56 cg Exp $'
! !