AbstractSettingsApplication.st
changeset 12789 d4ecb44c1426
parent 12764 708a66028cad
child 12792 ce37daafb99f
--- a/AbstractSettingsApplication.st	Wed May 29 13:12:56 2013 +0200
+++ b/AbstractSettingsApplication.st	Wed May 29 13:13:37 2013 +0200
@@ -99,7 +99,8 @@
 		searchDialogIsModal startTextDragWithControl
 		extendedWordSelectMode whitespaceWordSelectMode
 		enforceContentsDropForFiles selectAllWhenClickingBeyondEnd
-		showAcceptCancelBarInBrowser useCodeView2InTools'
+		showAcceptCancelBarInBrowser useCodeView2InTools
+		autoIndentInCodeView'
 	classVariableNames:''
 	poolDictionaries:''
 	privateIn:AbstractSettingsApplication
@@ -3540,6 +3541,45 @@
 
 #changeToVisualAgeLook
 'Change settings for a VisualAge-like look (bold variable fonts)'
+
+#alwaysPasteFileContents
+'When pasting a file (from the Filebrowser or Explorer), always paste the file''s contents\without asking. If off, a dialog appears to ask the name or the contents of the file should be pasted'
+
+#autoIndentInCodeView
+'Automatically position the cursor to a reasonably indented position when pressing the return key.\This affects editors which show code'
+
+#extendedWordSelectMode
+'Controls if underlines will be treated as part of the word or not when selecting a word.\Many programming languages (including ST/X, but excluding Squeak and old ST80)\treat underline like a letter in identifiers'
+
+#searchBoxIsModal
+'If off, a text search box is non-modal, and can be left floating beside an editor to mix search and edit operations.\If modal, it behaves as usual, blocking interaction with the editor while open'
+
+#selectAllWhenClickingBeyondEnd
+'If on, a click beyond (i.e. below) the end of the text selects the whole text.\If off, use quadruple-click to select all (triple-click to select a full line)'
+
+#showAcceptCancelBar
+'Display an green-red-yellow accept-cancel bar to the left of the text.\Press green to accept, red to cancel, and yellow to compare against the original version.'
+
+#st80DoubleClickSelectMode
+'Enable the ST-80 mode for double-click on the character right after an opening parenthesis or string-quote,\to select the paranethized or quoted text.\Also, a double-click on the very first character selects the whole text'
+
+#st80EditMode
+'Enable the ST-80 line-end/text-end cursor behavior.\There, the cursor cannot be positioned beyond the end of text, and cursor movement leads to the next/previous line.\This is similar to the behavior of other editors, such as "vi" or "emacs".\If off, the page is treated like a piece of paper, where any position can be reached immediately ("Rand-Editor" behavior)'
+
+
+#startTextDragWithCTRL
+'Press CTRL to drag the selected text into another view'
+
+#tabStops4
+'Controls if tab stops are multiples of 4 or 8 while editing.\Notice that this only affects the cursor positioning while editing, and that tabs are never part of the text internally.\The external (file-) representation always uses tab stops in multiples of 8.\Thus, when saving, one leading tab is generated for every 8 leading spaces,\and when reading a file, each tab is replaced by 8 spaces'
+
+#useNewCodeView2
+'Use the new advanced CodeView2, which supports line numbers, advanced variable and selector highlighting,\and other useful programmer features'
+
+#whitespaceWordSelectMode
+'Controls if non-whitespace separators (such as fullstop, parenthesis etc.) are treated as separator when selecting a word (via double-click).\If off, only whitespace is treated as such. Useful when editing plain text, or code written in Lisp or Scheme'
+
+
 )
 
     "Created: / 17-03-2012 / 11:37:51 / cg"
@@ -3596,18 +3636,45 @@
                  (CheckBoxSpec
                     label: 'Use the new Code Editor2 (experimental)'
                     name: 'UserCodeView2'
+                    activeHelpKey: useNewCodeView2
                     model: useCodeView2InTools
                     extent: (Point 600 25)
                   )
                  (CheckBoxSpec
+                    label: 'Tab Stops in Multiples of 4'
+                    name: 'TabStopsMultiples4CheckBox'
+                    activeHelpKey: tabStops4
+                    model: tabsIs4
+                    translateLabel: true
+                    extent: (Point 600 25)
+                  )
+                 (DividerSpec
+                    name: 'Separator1'
+                    extent: (Point 600 4)
+                  )
+                 (CheckBoxSpec
                     label: 'Show Accept/Cancel Bar in Editor'
                     name: 'ShowAcceptCancelBarInBrowser'
+                    activeHelpKey: showAcceptCancelBar
                     model: showAcceptCancelBarInBrowser
                     extent: (Point 600 25)
                   )
                  (CheckBoxSpec
+                    label: 'SearchBox is Modal'
+                    name: 'SearchBoxModalCheckBox'
+                    activeHelpKey: searchBoxIsModal
+                    model: searchDialogIsModal
+                    translateLabel: true
+                    extent: (Point 600 25)
+                  )
+                 (DividerSpec
+                    name: 'Separator2'
+                    extent: (Point 600 4)
+                  )
+                 (CheckBoxSpec
                     label: 'CTRL-Key to Start TextDrag'
                     name: 'CTRLKeyStTextDragCheckBox'
+                    activeHelpKey: startTextDragWithCTRL
                     model: startTextDragWithControl
                     translateLabel: true
                     extent: (Point 600 25)
@@ -3615,34 +3682,27 @@
                  (CheckBoxSpec
                     label: 'Always Paste the Contents when Dropping a File (Do not Ask) '
                     name: 'EnforceContentsDropForFiles'
+                    activeHelpKey: alwaysPasteFileContents
                     model: enforceContentsDropForFiles
                     translateLabel: true
                     extent: (Point 600 25)
                   )
-                 (CheckBoxSpec
-                    label: 'SearchBox is Modal'
-                    name: 'SearchBoxModalCheckBox'
-                    model: searchDialogIsModal
-                    translateLabel: true
-                    extent: (Point 600 25)
-                  )
-                 (CheckBoxSpec
-                    label: 'Tab Stops in Multiples of 4'
-                    name: 'TabStopsMultiples4CheckBox'
-                    model: tabsIs4
-                    translateLabel: true
-                    extent: (Point 600 25)
-                  )
-                 (CheckBoxSpec
-                    label: 'Double Click Select Behavior as in ST80'
-                    name: 'DoubleClickSelectBehaviorST80CheckBox'
-                    model: st80DoubleClickSelectMode
+                 (DividerSpec
+                    name: 'Separator4'
+                    extent: (Point 600 4)
+                  )
+                 (CheckBoxSpec
+                    label: 'Autoindent (Position Cursor on Return Key in Code Editors)'
+                    name: 'CheckBox3'
+                    activeHelpKey: autoIndentInCodeView
+                    model: autoIndentInCodeView
                     translateLabel: true
                     extent: (Point 600 25)
                   )
                  (CheckBoxSpec
                     label: 'Cursor has ST80 Line-end Behavior'
                     name: 'CursorST80LineEndBehaviorCheckBox'
+                    activeHelpKey: st80EditMode
                     model: st80EditMode
                     translateLabel: true
                     extent: (Point 600 25)
@@ -3650,13 +3710,27 @@
                  (CheckBoxSpec
                     label: 'Select all when Clicking beyond the Text''s End'
                     name: 'CheckBox2'
+                    activeHelpKey: selectAllWhenClickingBeyondEnd
                     model: selectAllWhenClickingBeyondEnd
                     translateLabel: true
                     extent: (Point 600 25)
                   )
+                 (DividerSpec
+                    name: 'Separator3'
+                    extent: (Point 600 4)
+                  )
+                 (CheckBoxSpec
+                    label: 'Double Click Select Behavior as in ST80'
+                    name: 'DoubleClickSelectBehaviorST80CheckBox'
+                    activeHelpKey: st80DoubleClickSelectMode
+                    model: st80DoubleClickSelectMode
+                    translateLabel: true
+                    extent: (Point 600 25)
+                  )
                  (CheckBoxSpec
                     label: 'Treat Underscore as Letter in Word-Select'
                     name: 'UnderscoreIsLetterCheckBox'
+                    activeHelpKey: extendedWordSelectMode
                     model: extendedWordSelectMode
                     translateLabel: true
                     extent: (Point 600 25)
@@ -3664,6 +3738,7 @@
                  (CheckBoxSpec
                     label: 'Any non-Whitespace in Word-Select'
                     name: 'CheckBox1'
+                    activeHelpKey: whitespaceWordSelectMode
                     model: whitespaceWordSelectMode
                     translateLabel: true
                     extent: (Point 600 25)
@@ -3724,6 +3799,7 @@
          #extendedWordSelectMode
          #whitespaceWordSelectMode
          #selectAllWhenClickingBeyondEnd
+         #autoIndentInCodeView
     )
 
     "Modified: / 07-03-2012 / 14:33:40 / cg"
@@ -3731,6 +3807,14 @@
 
 !AbstractSettingsApplication::EditSettingsAppl methodsFor:'aspects'!
 
+autoIndentInCodeView
+    autoIndentInCodeView isNil ifTrue:[
+        autoIndentInCodeView := false asValue.
+        autoIndentInCodeView onChangeSend:#updateModifiedChannel to:self.
+    ].
+    ^ autoIndentInCodeView.
+!
+
 enforceContentsDropForFiles
     enforceContentsDropForFiles isNil ifTrue:[
         enforceContentsDropForFiles := true asValue.
@@ -17785,10 +17869,10 @@
 !AbstractSettingsApplication class methodsFor:'documentation'!
 
 version
-    ^ '$Header: /cvs/stx/stx/libtool/AbstractSettingsApplication.st,v 1.466 2013-05-21 20:31:29 cg Exp $'
+    ^ '$Header: /cvs/stx/stx/libtool/AbstractSettingsApplication.st,v 1.467 2013-05-29 11:13:37 cg Exp $'
 !
 
 version_CVS
-    ^ '$Header: /cvs/stx/stx/libtool/AbstractSettingsApplication.st,v 1.466 2013-05-21 20:31:29 cg Exp $'
-! !
-
+    ^ '$Header: /cvs/stx/stx/libtool/AbstractSettingsApplication.st,v 1.467 2013-05-29 11:13:37 cg Exp $'
+! !
+