--- a/Make.spec Tue Aug 16 15:23:21 2022 +0100
+++ b/Make.spec Fri Sep 02 11:34:33 2022 +0100
@@ -61,6 +61,7 @@
SmallSense::CompletionResult \
SmallSense::CompletionView \
SmallSense::CriticsWindow \
+ SmallSense::DialogBox \
SmallSense::EditService \
SmallSense::EditSupport \
SmallSense::Info \
@@ -146,6 +147,7 @@
$(OUTDIR)SmallSense__CompletionResult.$(O) \
$(OUTDIR)SmallSense__CompletionView.$(O) \
$(OUTDIR)SmallSense__CriticsWindow.$(O) \
+ $(OUTDIR)SmallSense__DialogBox.$(O) \
$(OUTDIR)SmallSense__EditService.$(O) \
$(OUTDIR)SmallSense__EditSupport.$(O) \
$(OUTDIR)SmallSense__Info.$(O) \
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/SmallSense__DialogBox.st Fri Sep 02 11:34:33 2022 +0100
@@ -0,0 +1,125 @@
+"
+COPYRIGHT (c) 2022 LabWare
+
+stx:goodies/smallsense - A productivity plugin for Smalltalk/X IDE
+
+This library is free software; you can redistribute it and/or
+modify it under the terms of the GNU Lesser General Public
+License as published by the Free Software Foundation; either
+version 2.1 of the License.
+
+This library is distributed in the hope that it will be useful,
+but WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+Lesser General Public License for more details.
+
+You should have received a copy of the GNU Lesser General Public
+License along with this library; if not, write to the Free Software
+Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
+"
+"{ Package: 'stx:goodies/smallsense' }"
+
+"{ NameSpace: SmallSense }"
+
+Smalltalk::DialogBox subclass:#DialogBox
+ instanceVariableNames:''
+ classVariableNames:'PreviousDialog'
+ poolDictionaries:''
+ category:'SmallSense-Core-Interface'
+!
+
+!DialogBox class methodsFor:'documentation'!
+
+copyright
+"
+COPYRIGHT (c) 2022 LabWare
+
+stx:goodies/smallsense - A productivity plugin for Smalltalk/X IDE
+
+This library is free software; you can redistribute it and/or
+modify it under the terms of the GNU Lesser General Public
+License as published by the Free Software Foundation; either
+version 2.1 of the License.
+
+This library is distributed in the hope that it will be useful,
+but WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+Lesser General Public License for more details.
+
+You should have received a copy of the GNU Lesser General Public
+License along with this library; if not, write to the Free Software
+Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
+"
+!
+
+documentation
+"
+ This is a drop-in replacement for stock DialogBox replacing old
+ 'smalltalk' dialogs with Smallsense ones.
+
+ [author:]
+ Jan Vrany <jan.vrany@labware.com>
+
+ [instance variables:]
+
+ [class variables:]
+
+ [see also:]
+ DialogBox class, protocol 'smalltalk dialogs'
+
+"
+! !
+
+!DialogBox class methodsFor:'installing'!
+
+install
+ | currentDialog |
+
+ currentDialog := Smalltalk at: #Dialog.
+ (currentDialog isNil or: [ currentDialog ~~ self ]) ifTrue: [
+ PreviousDialog := currentDialog.
+ Smalltalk at: #Dialog put: self.
+ ].
+
+ "Created: / 02-09-2022 / 20:10:15 / Jan Vrany <jan.vrany@labware.com>"
+!
+
+uninstall
+ | currentDialog |
+
+ currentDialog := Smalltalk at: #Dialog.
+ currentDialog == self ifTrue: [
+ Smalltalk at: #Dialog put: PreviousDialog.
+ ].
+
+ "Created: / 02-09-2022 / 20:10:59 / Jan Vrany <jan.vrany@labware.com>"
+! !
+
+!DialogBox class methodsFor:'smalltalk dialogs'!
+
+requestProject:title from:listOfProjects initialAnswer:initialTextOrNil suggestions:suggestions
+ "Ask for a project (package-id)"
+ | dialog |
+
+ UserPreferences current smallSenseNewDialogsEnabled ifFalse:[
+ ^ super requestProject:title from:listOfProjects initialAnswer:initialTextOrNil suggestions:suggestions.
+ ].
+ dialog := SmallSense::PackageSelectDialog new.
+ dialog title: title.
+ dialog filter: [ :pkg | listOfProjects includes: pkg ].
+ (initialTextOrNil notNil and:[initialTextOrNil ~~ PackageId noProjectID]) ifTrue:[
+ initialTextOrNil isEmpty ifTrue:[
+ suggestions size == 1 ifTrue:[
+ dialog pattern: suggestions anElement.
+ dialog selection: suggestions anElement.
+ ].
+ ] ifFalse:[
+ dialog pattern: initialTextOrNil.
+ dialog selection: initialTextOrNil.
+ ]
+ ].
+ ^ dialog open.
+
+ "Created: / 24-08-2022 / 14:40:04 / Jan Vrany <jan.vrany@labware.com>"
+! !
+
--- a/abbrev.stc Tue Aug 16 15:23:21 2022 +0100
+++ b/abbrev.stc Fri Sep 02 11:34:33 2022 +0100
@@ -11,6 +11,7 @@
SmallSense::CompletionResult SmallSense__CompletionResult stx:goodies/smallsense 'SmallSense-Core' 0
SmallSense::CompletionView SmallSense__CompletionView stx:goodies/smallsense 'SmallSense-Core-Interface' 2
SmallSense::CriticsWindow SmallSense__CriticsWindow stx:goodies/smallsense 'SmallSense-Core-Interface' 3
+SmallSense::DialogBox SmallSense__DialogBox stx:goodies/smallsense 'SmallSense-Core-Interface' 2
SmallSense::EditService SmallSense__EditService stx:goodies/smallsense 'SmallSense-Core-Services' 0
SmallSense::EditSupport SmallSense__EditSupport stx:goodies/smallsense 'SmallSense-Core-Services' 0
SmallSense::Info SmallSense__Info stx:goodies/smallsense 'SmallSense-Smalltalk-Types-Info' 0
--- a/bc.mak Tue Aug 16 15:23:21 2022 +0100
+++ b/bc.mak Fri Sep 02 11:34:33 2022 +0100
@@ -35,7 +35,7 @@
-LOCALINCLUDES= -I$(INCLUDE_TOP)\stx\goodies\refactoryBrowser\changes -I$(INCLUDE_TOP)\stx\goodies\refactoryBrowser\helpers -I$(INCLUDE_TOP)\stx\goodies\refactoryBrowser\lint -I$(INCLUDE_TOP)\stx\goodies\refactoryBrowser\parser -I$(INCLUDE_TOP)\stx\goodies\regex -I$(INCLUDE_TOP)\stx\goodies\smallsense\refactoring_custom -I$(INCLUDE_TOP)\stx\goodies\sunit -I$(INCLUDE_TOP)\stx\libbasic -I$(INCLUDE_TOP)\stx\libbasic2 -I$(INCLUDE_TOP)\stx\libbasic3 -I$(INCLUDE_TOP)\stx\libcomp -I$(INCLUDE_TOP)\stx\libhtml -I$(INCLUDE_TOP)\stx\libjava -I$(INCLUDE_TOP)\stx\libjava\tools -I$(INCLUDE_TOP)\stx\libtool -I$(INCLUDE_TOP)\stx\libview -I$(INCLUDE_TOP)\stx\libview2 -I$(INCLUDE_TOP)\stx\libwidg -I$(INCLUDE_TOP)\stx\libwidg2
+LOCALINCLUDES= -I$(INCLUDE_TOP)\stx\goodies\refactoryBrowser\changes -I$(INCLUDE_TOP)\stx\goodies\refactoryBrowser\helpers -I$(INCLUDE_TOP)\stx\goodies\refactoryBrowser\lint -I$(INCLUDE_TOP)\stx\goodies\refactoryBrowser\parser -I$(INCLUDE_TOP)\stx\goodies\regex -I$(INCLUDE_TOP)\stx\libbasic -I$(INCLUDE_TOP)\stx\libbasic2 -I$(INCLUDE_TOP)\stx\libbasic3 -I$(INCLUDE_TOP)\stx\libcomp -I$(INCLUDE_TOP)\stx\libhtml -I$(INCLUDE_TOP)\stx\libjava -I$(INCLUDE_TOP)\stx\libjava\tools -I$(INCLUDE_TOP)\stx\libtool -I$(INCLUDE_TOP)\stx\libview -I$(INCLUDE_TOP)\stx\libview2 -I$(INCLUDE_TOP)\stx\libwidg -I$(INCLUDE_TOP)\stx\libwidg2
LOCALDEFINES=
STCLOCALOPT=-package=$(PACKAGE) -I. $(LOCALINCLUDES) -headerDir=. $(STCLOCALOPTIMIZATIONS) $(STCWARNINGS) $(LOCALDEFINES) -varPrefix=$(LIBNAME)
@@ -92,6 +92,7 @@
$(OUTDIR)SmallSense__CompletionResult.$(O) SmallSense__CompletionResult.$(C) SmallSense__CompletionResult.$(H): SmallSense__CompletionResult.st $(INCLUDE_TOP)\stx\libbasic\Collection.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(INCLUDE_TOP)\stx\libbasic\OrderedCollection.$(H) $(INCLUDE_TOP)\stx\libbasic\SequenceableCollection.$(H) $(INCLUDE_TOP)\stx\libbasic\SortedCollection.$(H) $(STCHDR)
$(OUTDIR)SmallSense__CompletionView.$(O) SmallSense__CompletionView.$(C) SmallSense__CompletionView.$(H): SmallSense__CompletionView.st $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(INCLUDE_TOP)\stx\libview\DisplaySurface.$(H) $(INCLUDE_TOP)\stx\libview\GraphicsMedium.$(H) $(INCLUDE_TOP)\stx\libview\SimpleView.$(H) $(INCLUDE_TOP)\stx\libview\TopView.$(H) $(INCLUDE_TOP)\stx\libview\View.$(H) $(STCHDR)
$(OUTDIR)SmallSense__CriticsWindow.$(O) SmallSense__CriticsWindow.$(C) SmallSense__CriticsWindow.$(H): SmallSense__CriticsWindow.st $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(INCLUDE_TOP)\stx\libview2\ApplicationModel.$(H) $(INCLUDE_TOP)\stx\libview2\Model.$(H) $(INCLUDE_TOP)\stx\libview2\SimpleDialog.$(H) $(STCHDR)
+$(OUTDIR)SmallSense__DialogBox.$(O) SmallSense__DialogBox.$(C) SmallSense__DialogBox.$(H): SmallSense__DialogBox.st $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(INCLUDE_TOP)\stx\libview\DisplaySurface.$(H) $(INCLUDE_TOP)\stx\libview\GraphicsMedium.$(H) $(INCLUDE_TOP)\stx\libview\ModalBox.$(H) $(INCLUDE_TOP)\stx\libview\SimpleView.$(H) $(INCLUDE_TOP)\stx\libview\StandardSystemView.$(H) $(INCLUDE_TOP)\stx\libview\TopView.$(H) $(INCLUDE_TOP)\stx\libview\View.$(H) $(INCLUDE_TOP)\stx\libwidg\DialogBox.$(H) $(STCHDR)
$(OUTDIR)SmallSense__EditService.$(O) SmallSense__EditService.$(C) SmallSense__EditService.$(H): SmallSense__EditService.st $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(INCLUDE_TOP)\stx\libtool\Tools__CodeViewService.$(H) $(STCHDR)
$(OUTDIR)SmallSense__EditSupport.$(O) SmallSense__EditSupport.$(C) SmallSense__EditSupport.$(H): SmallSense__EditSupport.st $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(STCHDR)
$(OUTDIR)SmallSense__Info.$(O) SmallSense__Info.$(C) SmallSense__Info.$(H): SmallSense__Info.st $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(STCHDR)
@@ -162,7 +163,7 @@
$(OUTDIR)SmallSense__CategorySelectDialog.$(O) SmallSense__CategorySelectDialog.$(C) SmallSense__CategorySelectDialog.$(H): SmallSense__CategorySelectDialog.st $(INCLUDE_TOP)\stx\goodies\smallsense\SmallSense__AbstractDIalog.$(H) $(INCLUDE_TOP)\stx\goodies\smallsense\SmallSense__AbstractListDialog.$(H) $(INCLUDE_TOP)\stx\goodies\smallsense\SmallSense__AbstractSelectDialog.$(H) $(INCLUDE_TOP)\stx\goodies\smallsense\SmallSense__CetegoryOrProtocolSelectDialog.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(INCLUDE_TOP)\stx\libview2\ApplicationModel.$(H) $(INCLUDE_TOP)\stx\libview2\Model.$(H) $(INCLUDE_TOP)\stx\libview2\SimpleDialog.$(H) $(STCHDR)
$(OUTDIR)SmallSense__GroovyCompletionEngineSimple.$(O) SmallSense__GroovyCompletionEngineSimple.$(C) SmallSense__GroovyCompletionEngineSimple.$(H): SmallSense__GroovyCompletionEngineSimple.st $(INCLUDE_TOP)\stx\goodies\smallsense\SmallSense__AbstractJavaCompletionEngine.$(H) $(INCLUDE_TOP)\stx\goodies\smallsense\SmallSense__AbstractJavaCompletionEngineSimple.$(H) $(INCLUDE_TOP)\stx\goodies\smallsense\SmallSense__CompletionEngine.$(H) $(INCLUDE_TOP)\stx\goodies\smallsense\SmallSense__JavaCompletionEngineSimple.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(STCHDR)
$(OUTDIR)SmallSense__ProtocolSelectDialog.$(O) SmallSense__ProtocolSelectDialog.$(C) SmallSense__ProtocolSelectDialog.$(H): SmallSense__ProtocolSelectDialog.st $(INCLUDE_TOP)\stx\goodies\smallsense\SmallSense__AbstractDIalog.$(H) $(INCLUDE_TOP)\stx\goodies\smallsense\SmallSense__AbstractListDialog.$(H) $(INCLUDE_TOP)\stx\goodies\smallsense\SmallSense__AbstractSelectDialog.$(H) $(INCLUDE_TOP)\stx\goodies\smallsense\SmallSense__CetegoryOrProtocolSelectDialog.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(INCLUDE_TOP)\stx\libview2\ApplicationModel.$(H) $(INCLUDE_TOP)\stx\libview2\Model.$(H) $(INCLUDE_TOP)\stx\libview2\SimpleDialog.$(H) $(STCHDR)
-$(OUTDIR)extensions.$(O): extensions.st $(INCLUDE_TOP)\stx\goodies\refactoryBrowser\helpers\RBMethod.$(H) $(INCLUDE_TOP)\stx\goodies\refactoryBrowser\lint\RBBasicLintRule.$(H) $(INCLUDE_TOP)\stx\goodies\refactoryBrowser\lint\RBBlockLintRule.$(H) $(INCLUDE_TOP)\stx\goodies\refactoryBrowser\lint\RBContainsSmalltalkXEOLCommentRule.$(H) $(INCLUDE_TOP)\stx\goodies\refactoryBrowser\lint\RBLintRule.$(H) $(INCLUDE_TOP)\stx\goodies\refactoryBrowser\lint\RBTransformationRule.$(H) $(INCLUDE_TOP)\stx\goodies\refactoryBrowser\parser\RBBlockNode.$(H) $(INCLUDE_TOP)\stx\goodies\refactoryBrowser\parser\RBMethodNode.$(H) $(INCLUDE_TOP)\stx\goodies\refactoryBrowser\parser\RBProgramNode.$(H) $(INCLUDE_TOP)\stx\goodies\refactoryBrowser\parser\RBStatementNode.$(H) $(INCLUDE_TOP)\stx\goodies\refactoryBrowser\parser\RBValueNode.$(H) $(INCLUDE_TOP)\stx\libbasic\Collection.$(H) $(INCLUDE_TOP)\stx\libbasic\CompiledCode.$(H) $(INCLUDE_TOP)\stx\libbasic\ConfigurableFeatures.$(H) $(INCLUDE_TOP)\stx\libbasic\Dictionary.$(H) $(INCLUDE_TOP)\stx\libbasic\ExecutableFunction.$(H) $(INCLUDE_TOP)\stx\libbasic\IdentityDictionary.$(H) $(INCLUDE_TOP)\stx\libbasic\Method.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(INCLUDE_TOP)\stx\libbasic\Set.$(H) $(INCLUDE_TOP)\stx\libbasic\UserPreferences.$(H) $(INCLUDE_TOP)\stx\libcomp\AssignmentNode.$(H) $(INCLUDE_TOP)\stx\libcomp\BlockNode.$(H) $(INCLUDE_TOP)\stx\libcomp\MessageNode.$(H) $(INCLUDE_TOP)\stx\libcomp\ParseErrorNode.$(H) $(INCLUDE_TOP)\stx\libcomp\ParseNode.$(H) $(INCLUDE_TOP)\stx\libcomp\Parser.$(H) $(INCLUDE_TOP)\stx\libcomp\PrimaryNode.$(H) $(INCLUDE_TOP)\stx\libcomp\PrimitiveNode.$(H) $(INCLUDE_TOP)\stx\libcomp\ReturnNode.$(H) $(INCLUDE_TOP)\stx\libcomp\Scanner.$(H) $(INCLUDE_TOP)\stx\libcomp\StatementNode.$(H) $(INCLUDE_TOP)\stx\libcomp\VariableNode.$(H) $(INCLUDE_TOP)\stx\libhtml\HTMLDocumentFrame.$(H) $(INCLUDE_TOP)\stx\libhtml\HTMLDocumentView.$(H) $(INCLUDE_TOP)\stx\libtool\DebugView.$(H) $(INCLUDE_TOP)\stx\libtool\InspectorView.$(H) $(INCLUDE_TOP)\stx\libtool\MultiViewToolApplication.$(H) $(INCLUDE_TOP)\stx\libtool\SystemBrowser.$(H) $(INCLUDE_TOP)\stx\libtool\Tools__BackgroundSourceProcessingService.$(H) $(INCLUDE_TOP)\stx\libtool\Tools__CodeCompletionService.$(H) $(INCLUDE_TOP)\stx\libtool\Tools__CodeHighlightingService.$(H) $(INCLUDE_TOP)\stx\libtool\Tools__CodeNavigationService.$(H) $(INCLUDE_TOP)\stx\libtool\Tools__CodeViewService.$(H) $(INCLUDE_TOP)\stx\libtool\Tools__Inspector2.$(H) $(INCLUDE_TOP)\stx\libtool\Tools__LintService.$(H) $(INCLUDE_TOP)\stx\libtool\Tools__NavigationState.$(H) $(INCLUDE_TOP)\stx\libtool\Tools__NewSystemBrowser.$(H) $(INCLUDE_TOP)\stx\libtool\WorkspaceApplication.$(H) $(INCLUDE_TOP)\stx\libview\DisplaySurface.$(H) $(INCLUDE_TOP)\stx\libview\GraphicsMedium.$(H) $(INCLUDE_TOP)\stx\libview\ModalBox.$(H) $(INCLUDE_TOP)\stx\libview\SimpleView.$(H) $(INCLUDE_TOP)\stx\libview\StandardSystemView.$(H) $(INCLUDE_TOP)\stx\libview\TopView.$(H) $(INCLUDE_TOP)\stx\libview\View.$(H) $(INCLUDE_TOP)\stx\libview2\ApplicationModel.$(H) $(INCLUDE_TOP)\stx\libview2\Model.$(H) $(INCLUDE_TOP)\stx\libview2\ToolApplicationModel.$(H) $(INCLUDE_TOP)\stx\libwidg\DialogBox.$(H) $(INCLUDE_TOP)\stx\libwidg\EditTextView.$(H) $(INCLUDE_TOP)\stx\libwidg\EditTextViewCompletionSupport.$(H) $(INCLUDE_TOP)\stx\libwidg\ListView.$(H) $(INCLUDE_TOP)\stx\libwidg\TextView.$(H) $(STCHDR)
+$(OUTDIR)extensions.$(O): extensions.st $(INCLUDE_TOP)\stx\goodies\refactoryBrowser\helpers\RBMethod.$(H) $(INCLUDE_TOP)\stx\goodies\refactoryBrowser\lint\RBBasicLintRule.$(H) $(INCLUDE_TOP)\stx\goodies\refactoryBrowser\lint\RBBlockLintRule.$(H) $(INCLUDE_TOP)\stx\goodies\refactoryBrowser\lint\RBContainsSmalltalkXEOLCommentRule.$(H) $(INCLUDE_TOP)\stx\goodies\refactoryBrowser\lint\RBLintRule.$(H) $(INCLUDE_TOP)\stx\goodies\refactoryBrowser\lint\RBTransformationRule.$(H) $(INCLUDE_TOP)\stx\goodies\refactoryBrowser\parser\RBBlockNode.$(H) $(INCLUDE_TOP)\stx\goodies\refactoryBrowser\parser\RBMethodNode.$(H) $(INCLUDE_TOP)\stx\goodies\refactoryBrowser\parser\RBProgramNode.$(H) $(INCLUDE_TOP)\stx\goodies\refactoryBrowser\parser\RBStatementNode.$(H) $(INCLUDE_TOP)\stx\goodies\refactoryBrowser\parser\RBValueNode.$(H) $(INCLUDE_TOP)\stx\libbasic\Collection.$(H) $(INCLUDE_TOP)\stx\libbasic\CompiledCode.$(H) $(INCLUDE_TOP)\stx\libbasic\ConfigurableFeatures.$(H) $(INCLUDE_TOP)\stx\libbasic\Dictionary.$(H) $(INCLUDE_TOP)\stx\libbasic\ExecutableFunction.$(H) $(INCLUDE_TOP)\stx\libbasic\IdentityDictionary.$(H) $(INCLUDE_TOP)\stx\libbasic\Method.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(INCLUDE_TOP)\stx\libbasic\Set.$(H) $(INCLUDE_TOP)\stx\libbasic\UserPreferences.$(H) $(INCLUDE_TOP)\stx\libcomp\AssignmentNode.$(H) $(INCLUDE_TOP)\stx\libcomp\BlockNode.$(H) $(INCLUDE_TOP)\stx\libcomp\MessageNode.$(H) $(INCLUDE_TOP)\stx\libcomp\ParseErrorNode.$(H) $(INCLUDE_TOP)\stx\libcomp\ParseNode.$(H) $(INCLUDE_TOP)\stx\libcomp\Parser.$(H) $(INCLUDE_TOP)\stx\libcomp\PrimaryNode.$(H) $(INCLUDE_TOP)\stx\libcomp\PrimitiveNode.$(H) $(INCLUDE_TOP)\stx\libcomp\ReturnNode.$(H) $(INCLUDE_TOP)\stx\libcomp\Scanner.$(H) $(INCLUDE_TOP)\stx\libcomp\StatementNode.$(H) $(INCLUDE_TOP)\stx\libcomp\VariableNode.$(H) $(INCLUDE_TOP)\stx\libhtml\HTMLDocumentFrame.$(H) $(INCLUDE_TOP)\stx\libhtml\HTMLDocumentView.$(H) $(INCLUDE_TOP)\stx\libtool\DebugView.$(H) $(INCLUDE_TOP)\stx\libtool\InspectorView.$(H) $(INCLUDE_TOP)\stx\libtool\MultiViewToolApplication.$(H) $(INCLUDE_TOP)\stx\libtool\SystemBrowser.$(H) $(INCLUDE_TOP)\stx\libtool\Tools__BackgroundSourceProcessingService.$(H) $(INCLUDE_TOP)\stx\libtool\Tools__CodeCompletionService.$(H) $(INCLUDE_TOP)\stx\libtool\Tools__CodeHighlightingService.$(H) $(INCLUDE_TOP)\stx\libtool\Tools__CodeNavigationService.$(H) $(INCLUDE_TOP)\stx\libtool\Tools__CodeViewService.$(H) $(INCLUDE_TOP)\stx\libtool\Tools__Inspector2.$(H) $(INCLUDE_TOP)\stx\libtool\Tools__LintService.$(H) $(INCLUDE_TOP)\stx\libtool\Tools__NavigationState.$(H) $(INCLUDE_TOP)\stx\libtool\Tools__NewSystemBrowser.$(H) $(INCLUDE_TOP)\stx\libtool\WorkspaceApplication.$(H) $(INCLUDE_TOP)\stx\libview\DisplaySurface.$(H) $(INCLUDE_TOP)\stx\libview\GraphicsMedium.$(H) $(INCLUDE_TOP)\stx\libview\SimpleView.$(H) $(INCLUDE_TOP)\stx\libview\StandardSystemView.$(H) $(INCLUDE_TOP)\stx\libview\TopView.$(H) $(INCLUDE_TOP)\stx\libview\View.$(H) $(INCLUDE_TOP)\stx\libview2\ApplicationModel.$(H) $(INCLUDE_TOP)\stx\libview2\Model.$(H) $(INCLUDE_TOP)\stx\libview2\ToolApplicationModel.$(H) $(INCLUDE_TOP)\stx\libwidg\EditTextView.$(H) $(INCLUDE_TOP)\stx\libwidg\EditTextViewCompletionSupport.$(H) $(INCLUDE_TOP)\stx\libwidg\ListView.$(H) $(INCLUDE_TOP)\stx\libwidg\TextView.$(H) $(STCHDR)
# ENDMAKEDEPEND --- do not remove this line
--- a/extensions.st Tue Aug 16 15:23:21 2022 +0100
+++ b/extensions.st Fri Sep 02 11:34:33 2022 +0100
@@ -75,42 +75,6 @@
"Modified: / 11-02-2015 / 21:34:32 / Jan Vrany <jan.vrany@fit.cvut.cz>"
! !
-!DialogBox class methodsFor:'smalltalk dialogs-SmallSense'!
-
-stx_goodies_smallsense_requestProject:title from:listOfProjects initialAnswer:initialTextOrNil suggestions:suggestions
- "Ask for a project (package-id)"
-
- <swizzle: #requestProject:from:initialAnswer:suggestions:>
- "
- stx_goodies_smallsense swizzle: (DialogBox class >> #stx_goodies_smallsense_requestProject:from:initialAnswer:suggestions:)
- "
-
- | dialog |
-
- UserPreferences current smallSenseNewDialogsEnabled ifFalse:[
- ^ self stx_libwidg_requestProject:title from:listOfProjects initialAnswer:initialTextOrNil suggestions:suggestions
- ].
- dialog := SmallSense::PackageSelectDialog new.
- dialog title: title.
- dialog filter: [ :pkg | listOfProjects includes: pkg ].
- (initialTextOrNil notNil and:[initialTextOrNil ~~ PackageId noProjectID]) ifTrue:[
- initialTextOrNil isEmpty ifTrue:[
- suggestions size == 1 ifTrue:[
- dialog pattern: suggestions anElement.
- dialog selection: suggestions anElement.
- ].
- ] ifFalse:[
- dialog pattern: initialTextOrNil.
- dialog selection: initialTextOrNil.
- ]
- ].
- ^ dialog open.
-
- "Created: / 25-11-2014 / 13:20:33 / Jan Vrany <jan.vrany@fit.cvut.cz>"
- "Modified: / 21-02-2015 / 08:59:15 / Jan Vrany <jan.vrany@fit.cvut.cz>"
- "Modified (comment): / 21-02-2015 / 17:53:24 / Jan Vrany <jan.vrany@fit.cvut.cz>"
-! !
-
!EditTextView methodsFor:'accessing-behavior'!
autoIndent
@@ -1239,9 +1203,23 @@
smallSenseNewDialogsEnabled: aBoolean
- ^self at:#smallSenseNewDialogsEnabled put: aBoolean
+ self at:#smallSenseNewDialogsEnabled put: aBoolean.
+ UserPreferences current == self ifTrue: [
+ aBoolean ifTrue: [
+ SmallSense::DialogBox install
+ ] ifFalse: [
+ SmallSense::DialogBox uninstall
+ ].
+ ].
+
+ "
+ UserPreferences current smallSenseNewDialogsEnabled: true.
+ UserPreferences current smallSenseNewDialogsEnabled: false.
+ Dialog
+ "
"Created: / 10-05-2014 / 00:04:51 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+ "Modified (comment): / 02-09-2022 / 20:14:28 / Jan Vrany <jan.vrany@labware.com>"
! !
!UserPreferences methodsFor:'accessing-SmallSense-Smalltalk'!
--- a/libInit.cc Tue Aug 16 15:23:21 2022 +0100
+++ b/libInit.cc Fri Sep 02 11:34:33 2022 +0100
@@ -26,6 +26,7 @@
extern void _SmallSense__CompletionResult_Init(int pass, struct __vmData__ *__pRT__, OBJ snd);
extern void _SmallSense__CompletionView_Init(int pass, struct __vmData__ *__pRT__, OBJ snd);
extern void _SmallSense__CriticsWindow_Init(int pass, struct __vmData__ *__pRT__, OBJ snd);
+extern void _SmallSense__DialogBox_Init(int pass, struct __vmData__ *__pRT__, OBJ snd);
extern void _SmallSense__EditService_Init(int pass, struct __vmData__ *__pRT__, OBJ snd);
extern void _SmallSense__EditSupport_Init(int pass, struct __vmData__ *__pRT__, OBJ snd);
extern void _SmallSense__Info_Init(int pass, struct __vmData__ *__pRT__, OBJ snd);
@@ -120,6 +121,7 @@
_SmallSense__CompletionResult_Init(pass,__pRT__,snd);
_SmallSense__CompletionView_Init(pass,__pRT__,snd);
_SmallSense__CriticsWindow_Init(pass,__pRT__,snd);
+ _SmallSense__DialogBox_Init(pass,__pRT__,snd);
_SmallSense__EditService_Init(pass,__pRT__,snd);
_SmallSense__EditSupport_Init(pass,__pRT__,snd);
_SmallSense__Info_Init(pass,__pRT__,snd);
--- a/stx_goodies_smallsense.st Tue Aug 16 15:23:21 2022 +0100
+++ b/stx_goodies_smallsense.st Fri Sep 02 11:34:33 2022 +0100
@@ -1,7 +1,7 @@
"
stx:goodies/smallsense - A productivity plugin for Smalltalk/X IDE
Copyright (C) 2013-2015 Jan Vrany
-Copyright (C) 2021 LabWare
+Copyright (C) 2021-2022 LabWare
This library is free software; you can redistribute it and/or
modify it under the terms of the GNU Lesser General Public
@@ -34,7 +34,7 @@
"
stx:goodies/smallsense - A productivity plugin for Smalltalk/X IDE
Copyright (C) 2013-2015 Jan Vrany
-Copyright (C) 2021 LabWare
+Copyright (C) 2021-2022 LabWare
This library is free software; you can redistribute it and/or
modify it under the terms of the GNU Lesser General Public
@@ -108,7 +108,7 @@
#'stx:libtool' "AbstractSettingsApplication - superclass of SmallSense::SettingsAppl"
#'stx:libview' "DisplaySurface - extended"
#'stx:libview2' "ApplicationModel - extended"
- #'stx:libwidg' "DialogBox - extended"
+ #'stx:libwidg' "DialogBox - superclass of SmallSense::DialogBox"
#'stx:libwidg2' "AbstractHierarchicalItem - superclass of SmallSense::ClassPO"
)
!
@@ -126,11 +126,9 @@
^ #(
#'stx:goodies/refactoryBrowser/changes' "CompositeRefactoryChange - referenced by Tools::NewSystemBrowser>>stx_goodies_smallsense_categoryMenuRename"
- #'stx:goodies/smallsense/refactoring_custom' "SmallSense::CustomMock - referenced by SmallSense::SmalltalkSyntaxHighlighterTests>>setUp"
- #'stx:goodies/sunit' "TestAsserter - superclass of SmallSense::AbstractJavaCompletionEngineTests"
#'stx:libbasic2' "BackgroundJob - referenced by SmallSense::AbstractListDialog>>initialize"
#'stx:libbasic3' "ChangeSet - referenced by RBContainsSmalltalkXEOLCommentRule>>fixes:"
- #'stx:libjava' "GroovyLanguage - referenced by SmallSense::GroovyCompletionEngineSimpleTests>>completionLanguage"
+ #'stx:libjava' "Java - referenced by SmallSense::JavaCompletionEngine>>complete"
#'stx:libjava/tools' "GroovyScanner - referenced by SmallSense::GroovyCompletionEngineSimple>>scannerClass"
)
!
@@ -165,6 +163,7 @@
#'SmallSense::CompletionResult'
#'SmallSense::CompletionView'
#'SmallSense::CriticsWindow'
+ #'SmallSense::DialogBox'
#'SmallSense::EditService'
#'SmallSense::EditSupport'
#'SmallSense::Info'
@@ -322,7 +321,6 @@
RBProgramNode endPosition
RBProgramNode startPosition
RBContainsSmalltalkXEOLCommentRule fixes:
- 'DialogBox class' #'stx_goodies_smallsense_requestProject:from:initialAnswer:suggestions:'
'Tools::CodeCompletionService class' new
#'Tools::LintService' buttonPress:x:y:in:
#'Tools::LintService' showInfoWindowForLine: