--- a/Tools__LintRuleSettingsApplication.st Tue Jul 07 06:36:31 2015 +0200
+++ b/Tools__LintRuleSettingsApplication.st Wed Jul 08 07:02:00 2015 +0200
@@ -17,7 +17,8 @@
AbstractSettingsApplication subclass:#LintRuleSettingsApplication
instanceVariableNames:'rulesetList rulesetSelectionHolder hasSelectionHolder
- hasSelectionAndUserDefinedHolder smallSenseEnabledHolder'
+ hasSelectionAndUserDefinedHolder smallSenseEnabledHolder
+ smallLintRulesetDefault defaultInBrowserRuleNameHolder'
classVariableNames:'LastFileName'
poolDictionaries:''
category:'Interface-Lint'
@@ -92,6 +93,9 @@
#resetDefault
'Recreate the default ruleset with all existing RBRules.\(Do this after new rules have been added or rule classes were modified)'
+#makeDefaultInBrowser
+'Make this the default ruleset to be used in browsers'
+
#smallSenseEnabled
'Enable SmallSense (incremental lint rule checking in the editor).\If the SmallSense package is not yet loaded, checking this will force it into the image.\\Sorry, but this will only affect new windows,\so you have to reopen the browsers.'
@@ -178,7 +182,7 @@
)
(SelectionInListModelViewSpec
name: 'ProfileList'
- layout: (LayoutFrame 0 0 30 0 -128 1 0 1)
+ layout: (LayoutFrame 0 0 30 0 -128 1 -30 1)
enableChannel: svnEnabled
model: rulesetSelectionHolder
hasHorizontalScrollBar: true
@@ -190,7 +194,7 @@
)
(VerticalPanelViewSpec
name: 'Buttons1'
- layout: (LayoutFrame -128 1 30 0 0 1 -65 0.70000000000000018)
+ layout: (LayoutFrame -128 1 30 0 0 1 -65 0.70000000000000095)
horizontalLayout: fit
verticalLayout: top
horizontalSpace: 5
@@ -203,8 +207,8 @@
name: 'ButtonEdit'
activeHelpKey: edit
translateLabel: true
+ tabable: true
model: doEdit
- enableChannel: canEditHolder
extent: (Point 128 22)
)
(ActionButtonSpec
@@ -212,8 +216,8 @@
name: 'ButtonCopy'
activeHelpKey: copy
translateLabel: true
+ tabable: true
model: doCopy
- enableChannel: canCopyHolder
extent: (Point 128 22)
)
(ActionButtonSpec
@@ -221,6 +225,7 @@
name: 'ButtonAdd'
activeHelpKey: add
translateLabel: true
+ tabable: true
model: doAdd
extent: (Point 128 22)
)
@@ -229,8 +234,8 @@
name: 'ButtonRemove'
activeHelpKey: remove
translateLabel: true
+ tabable: true
model: doRemove
- enableChannel: canRemoveHolder
extent: (Point 128 22)
)
)
@@ -239,7 +244,7 @@
)
(VerticalPanelViewSpec
name: 'Buttons2'
- layout: (LayoutFrame -128 1 -64 0.70000000000000018 0 1 0 1)
+ layout: (LayoutFrame -128 1 -64 0.70000000000000095 0 1 0 1)
horizontalLayout: fit
verticalLayout: bottom
horizontalSpace: 5
@@ -248,10 +253,27 @@
(SpecCollection
collection: (
(ActionButtonSpec
- label: 'Reset Default'
+ label: 'Make Default\in Browser'
+ name: 'Button5'
+ activeHelpKey: makeDefaultInBrowser
+ translateLabel: true
+ adjust: centerEach
+ multiLineLabel: true
+ tabable: true
+ model: makeDefaultInBrowser
+ enableChannel: hasSelectionHolder
+ extent: (Point 128 44)
+ )
+ (ViewSpec
+ name: 'Box3'
+ extent: (Point 128 29)
+ )
+ (ActionButtonSpec
+ label: 'Reinitialize'
name: 'Button4'
activeHelpKey: resetDefault
translateLabel: true
+ tabable: true
model: doResetDefault
extent: (Point 128 22)
)
@@ -264,8 +286,8 @@
name: 'Button2'
activeHelpKey: export
translateLabel: true
+ tabable: true
model: doExport
- enableChannel: canExportHolder
extent: (Point 128 22)
)
(ActionButtonSpec
@@ -273,6 +295,7 @@
name: 'Button3'
activeHelpKey: import
translateLabel: true
+ tabable: true
model: doImport
extent: (Point 128 22)
)
@@ -280,6 +303,21 @@
)
)
+ (LabelSpec
+ label: 'Default in Browser:'
+ name: 'Label1'
+ layout: (LayoutFrame 0 0 -30 1 170 0 0 1)
+ translateLabel: true
+ adjust: left
+ )
+ (LabelSpec
+ label: 'default ruleset in browser'
+ name: 'Label2'
+ layout: (LayoutFrame 170 0 -30 1 -128 1 0 1)
+ translateLabel: true
+ labelChannel: defaultInBrowserRuleNameHolder
+ adjust: left
+ )
)
)
@@ -391,13 +429,13 @@
| file |
- DIalog warn: 'Not yet implemented'.
+ Dialog warn: 'Not yet implemented'.
^ self.
- file := Dialog requestFileName: (resources string: 'Select file') default: (LastFileName ? Filename currentDirectory / 'exported-ruleset.st').
- file isEmptyOrNil ifTrue:[ ^ self ].
-
- self shouldImplement
+"/ file := Dialog requestFileName: (resources string: 'Select file') default: (LastFileName ? Filename currentDirectory / 'exported-ruleset.st').
+"/ file isEmptyOrNil ifTrue:[ ^ self ].
+"/
+"/ self shouldImplement
"Modified: / 14-10-2014 / 16:33:37 / Jan Vrany <jan.vrany@fit.cvut.cz>"
!
@@ -413,14 +451,15 @@
doRemove
<resource: #uiCallback>
- | rule idx |
+ | rule idx rulesetList |
rule := self rulesetSelectionHolder value.
- idx := self rulesetList indexOf: rule.
+ rulesetList := self rulesetList.
+ idx := rulesetList indexOf: rule.
idx ~~ 0 ifTrue:[
- self rulesetList remove: rule.
- self rulesetList size > 0 ifTrue:[
- self rulesetSelectionHolder value: (self rulesetList at: ((idx -1 ) max: 1))
+ rulesetList remove: rule.
+ rulesetList size > 0 ifTrue:[
+ self rulesetSelectionHolder value: (rulesetList at: ((idx -1 ) max: 1))
]
].
self updateModifiedChannel
@@ -432,6 +471,12 @@
<resource: #uiCallback>
RBBuiltinRuleSet flushBuiltinDefault.
+!
+
+makeDefaultInBrowser
+ <resource: #uiCallback>
+
+ self smallLintRulesetDefault value:(self rulesetSelectionHolder value).
! !
!LintRuleSettingsApplication methodsFor:'aspects'!
@@ -462,6 +507,13 @@
"Modified: / 11-11-2014 / 15:12:10 / Jan Vrany <jan.vrany@fit.cvut.cz>"
!
+defaultInBrowserRuleNameHolder
+ defaultInBrowserRuleNameHolder isNil ifTrue:[
+ defaultInBrowserRuleNameHolder := '' asValue
+ ].
+ ^ defaultInBrowserRuleNameHolder
+!
+
hasSelectionAndUserDefinedHolder
@@ -514,6 +566,21 @@
^ rulesetSelectionHolder
!
+smallLintRulesetDefault
+ smallLintRulesetDefault isNil ifTrue:[
+ smallLintRulesetDefault := ValueHolder with:false.
+ smallLintRulesetDefault
+ onChangeEvaluate:[
+ self updateModifiedChannel.
+ self defaultInBrowserRuleNameHolder
+ value:(smallLintRulesetDefault value isNil
+ ifTrue:[ RBBuiltinRuleSet rulesetBuiltinDefault]
+ ifFalse:[ smallLintRulesetDefault value name ])
+ ].
+ ].
+ ^ smallLintRulesetDefault
+!
+
smallSenseEnabledHolder
smallSenseEnabledHolder isNil ifTrue:[
smallSenseEnabledHolder := ValueHolder with:false.
@@ -531,7 +598,9 @@
self smallSenseEnabledHolder
value:(self hasSmallSenseLoaded
- and:[ UserPreferences current perform:#smallSenseEnabled ifNotUnderstood:false]).
+ and:[ currentUserPrefs perform:#smallSenseEnabled ifNotUnderstood:false]).
+
+ self smallLintRulesetDefault value:(currentUserPrefs smallLintRulesetDefault).
rbCompositeLintRuleClass := Smalltalk at:#'RBCompositeLintRule'.
@@ -560,10 +629,12 @@
| oldRulesets newRulesets toRemove toAdd rbCompositeLintRuleClass|
self smallSenseEnabledHolder value ifTrue:[
- UserPreferences current addPreloadedPackage:'stx:goodies/smallsense'
+ currentUserPrefs addPreloadedPackage:'stx:goodies/smallsense'
] ifFalse:[
- UserPreferences current removePreloadedPackage:'stx:goodies/smallsense'
+ currentUserPrefs removePreloadedPackage:'stx:goodies/smallsense'
].
+ currentUserPrefs smallLintRulesetDefault:(smallLintRulesetDefault value).
+
(Smalltalk at:#'SmallSense::SmalltalkChecker') notNil ifTrue:[
UserPreferences current
perform:#smallSenseEnabled: with:(self smallSenseEnabledHolder value) ifNotUnderstood:[]
@@ -611,13 +682,15 @@
|defaultRules currentRules firstTry rbCompositeLintRuleClass|
self smallSenseEnabledHolder value ifTrue:[
- UserPreferences current addPreloadedPackage:'stx:goodies/smallsense'
+ currentUserPrefs addPreloadedPackage:'stx:goodies/smallsense'
].
- (UserPreferences current perform:#smallSenseEnabled ifNotUnderstood:false)
+ (currentUserPrefs perform:#smallSenseEnabled ifNotUnderstood:false)
~= (self smallSenseEnabledHolder value)
ifTrue:[
^ true
].
+ currentUserPrefs smallLintRulesetDefault ~= (smallLintRulesetDefault value) ifTrue:[^ true].
+
rbCompositeLintRuleClass := Smalltalk at:#'RBCompositeLintRule'.
rbCompositeLintRuleClass isNil ifTrue:[^ false].
--- a/WorkspaceApplication.st Tue Jul 07 06:36:31 2015 +0200
+++ b/WorkspaceApplication.st Wed Jul 08 07:02:00 2015 +0200
@@ -148,10 +148,10 @@
'Undent (shift left)'
#languageSelection
-'Syntax for doits and syntax coloring. Right-Click for menu to change'
+'Syntax for doits, syntax checks and coloring. Right-click for menu to change'
#namespaceSelection
-'Namespace for doits. Right-Click for menu to change'
+'Namespace for doits. Right-click for menu to change'
#menuSave
'Save the page''s contents in the original file'
@@ -4591,14 +4591,14 @@
!WorkspaceApplication class methodsFor:'documentation'!
version
- ^ '$Header: /cvs/stx/stx/libtool/WorkspaceApplication.st,v 1.285 2015-05-02 15:37:41 cg Exp $'
+ ^ '$Header$'
!
version_CVS
- ^ '$Header: /cvs/stx/stx/libtool/WorkspaceApplication.st,v 1.285 2015-05-02 15:37:41 cg Exp $'
+ ^ '$Header$'
!
version_SVN
- ^ '$Id: WorkspaceApplication.st,v 1.285 2015-05-02 15:37:41 cg Exp $'
+ ^ '$Id$'
! !