--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/.hgignore Mon Sep 12 06:57:58 2016 +0200
@@ -0,0 +1,16 @@
+
+syntax: glob
+*Init.c
+makefile
+*.so
+*.H
+*.o
+*.STH
+*.sc
+objbc
+objvc
+*.class
+java/libs/*.jar
+java/libs-src/*.jar
+*-Test.xml
+st.chg
--- a/AssistantApplication.st Sun Sep 11 15:41:51 2016 +0200
+++ b/AssistantApplication.st Mon Sep 12 06:57:58 2016 +0200
@@ -1,3 +1,14 @@
+"
+ COPYRIGHT (c) 2006 by eXept Software AG
+ All Rights Reserved
+
+ This software is furnished under a license and may be used
+ only in accordance with the terms of that license and with the
+ inclusion of the above copyright notice. This software may not
+ be provided or otherwise made available to, or used by, any
+ other person. No title to or ownership of the software is
+ hereby transferred.
+"
"{ Package: 'stx:libwidg2' }"
"{ NameSpace: Smalltalk }"
@@ -16,6 +27,20 @@
!AssistantApplication class methodsFor:'documentation'!
+copyright
+"
+ COPYRIGHT (c) 2006 by eXept Software AG
+ All Rights Reserved
+
+ This software is furnished under a license and may be used
+ only in accordance with the terms of that license and with the
+ inclusion of the above copyright notice. This software may not
+ be provided or otherwise made available to, or used by, any
+ other person. No title to or ownership of the software is
+ hereby transferred.
+"
+!
+
documentation
"
an easy to use framework for assistant-dialog applications.
--- a/ColoredListEntry.st Sun Sep 11 15:41:51 2016 +0200
+++ b/ColoredListEntry.st Mon Sep 12 06:57:58 2016 +0200
@@ -9,8 +9,9 @@
other person. No title to or ownership of the software is
hereby transferred.
"
+"{ Package: 'stx:libwidg2' }"
-"{ Package: 'stx:libwidg2' }"
+"{ NameSpace: Smalltalk }"
ListEntry subclass:#ColoredListEntry
instanceVariableNames:'color string bgColor'
@@ -179,3 +180,4 @@
version
^ '$Header: /cvs/stx/stx/libwidg2/ColoredListEntry.st,v 1.14 2006-11-13 16:11:29 cg Exp $'
! !
+
--- a/ComboBrowseView.st Sun Sep 11 15:41:51 2016 +0200
+++ b/ComboBrowseView.st Mon Sep 12 06:57:58 2016 +0200
@@ -9,8 +9,9 @@
other person. No title to or ownership of the software is
hereby transferred.
"
+"{ Package: 'stx:libwidg2' }"
-"{ Package: 'stx:libwidg2' }"
+"{ NameSpace: Smalltalk }"
ComboBoxView subclass:#ComboBrowseView
instanceVariableNames:'browseAction'
@@ -154,3 +155,4 @@
version
^ '$Header: /cvs/stx/stx/libwidg2/ComboBrowseView.st,v 1.4 2006-11-13 16:11:29 cg Exp $'
! !
+
--- a/ComboUpDownView.st Sun Sep 11 15:41:51 2016 +0200
+++ b/ComboUpDownView.st Mon Sep 12 06:57:58 2016 +0200
@@ -9,10 +9,9 @@
other person. No title to or ownership of the software is
hereby transferred.
"
-
"{ Package: 'stx:libwidg2' }"
-'From Smalltalk/X, Version:3.2.1 on 25-oct-1997 at 9:33:18 pm' !
+"{ NameSpace: Smalltalk }"
ComboBoxView subclass:#ComboUpDownView
instanceVariableNames:'minValue maxValue step currentValue values valueIndex'
@@ -287,3 +286,4 @@
version
^ '$Header: /cvs/stx/stx/libwidg2/ComboUpDownView.st,v 1.5 2006-11-13 16:11:29 cg Exp $'
! !
+
--- a/DoWhatIMeanSupport.st Sun Sep 11 15:41:51 2016 +0200
+++ b/DoWhatIMeanSupport.st Mon Sep 12 06:57:58 2016 +0200
@@ -1185,7 +1185,7 @@
language := method programmingLanguage
] ifFalse:[
contextOrNilArg isJavaContext ifTrue:[
- language := JavaLanguage instance
+ language := (Smalltalk at:#JavaLanguage) instance
] ifFalse:[
language := SmalltalkLanguage instance.
].
@@ -1212,10 +1212,9 @@
"/ No completion support for given language
"/ self breakPoint: #cg.
- self breakPoint: #jv.
"Created: / 27-09-2013 / 10:21:10 / Jan Vrany <jan.vrany@fit.cvut.cz>"
- "Modified: / 26-11-2013 / 23:43:16 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+ "Modified: / 25-09-2015 / 07:36:13 / Jan Vrany <jan.vrany@fit.cvut.cz>"
!
codeCompletionForLanguage: languageOrNil class: classOrNilArg context:contextOrNilArg codeView:codeViewArg
@@ -1282,21 +1281,21 @@
or nil, if called from the browser.
If nonNil, we can make better guesses, because we actually know what a variable's type is"
- languageOrNil := STXJavaScriptLanguage instance.
+ languageOrNil := (Smalltalk at:#STXJavaScriptLanguage) instance.
methodOrNil := methodOrNilArg.
classOrNil := classOrNilArg.
codeView := codeViewArg.
contextOrNil := contextOrNilArg.
- JavaScriptCompletionEngine notNil ifTrue:[
- JavaScriptCompletionEngine new
+ (Smalltalk at:#STXJavaScriptLanguage) notNil ifTrue:[
+ (Smalltalk at:#STXJavaScriptLanguage) new
completeForMethod: methodOrNil class: classOrNil context: contextOrNil codeView: codeView into: actionBlock.
].
self information:'Not yet supported'.
"Created: / 18-09-2013 / 16:24:36 / Jan Vrany <jan.vrany@fit.cvut.cz>"
- "Modified: / 25-09-2013 / 15:13:34 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+ "Modified: / 25-09-2015 / 07:37:32 / Jan Vrany <jan.vrany@fit.cvut.cz>"
! !
!DoWhatIMeanSupport methodsFor:'code completion - Smalltalk'!
@@ -4799,7 +4798,9 @@
rbTypes size > 1 ifTrue:[
rbTypes remove:ProtoObject ifAbsent:[].
rbTypes remove:Autoload ifAbsent:[].
- rbTypes remove:ObsoleteObject ifAbsent:[].
+ (Smalltalk includesKey:#ObsoleteObject) ifTrue:[
+ rbTypes remove:(Smalltalk at:#ObsoleteObject) ifAbsent:[].
+ ]
].
rbTypes size == 1 ifTrue:[
rbType := rbTypes first.
@@ -5102,8 +5103,8 @@
].
"Created: / 10-11-2006 / 13:18:27 / cg"
- "Modified: / 16-02-2010 / 10:33:48 / Jan Vrany <jan.vrany@fit.cvut.cz>"
"Modified: / 30-04-2016 / 18:21:21 / cg"
+ "Modified: / 25-09-2015 / 07:39:04 / Jan Vrany <jan.vrany@fit.cvut.cz>"
!
codeCompletionForVariable:node inClass:classOrNil codeView:codeView
@@ -6199,5 +6200,10 @@
version_CVS
^ '$Header$'
+!
+
+version_HG
+
+ ^ '$Changeset: <not expanded> $'
! !
--- a/GraphColumn.st Sun Sep 11 15:41:51 2016 +0200
+++ b/GraphColumn.st Mon Sep 12 06:57:58 2016 +0200
@@ -1,5 +1,7 @@
"{ Package: 'stx:libwidg2' }"
+"{ NameSpace: Smalltalk }"
+
Model subclass:#GraphColumn
instanceVariableNames:'aspects functionYblock'
classVariableNames:''
@@ -733,3 +735,4 @@
version
^ '$Header: /cvs/stx/stx/libwidg2/GraphColumn.st,v 1.4 2006-11-13 16:11:29 cg Exp $'
! !
+
--- a/GraphColumnView2DSpec.st Sun Sep 11 15:41:51 2016 +0200
+++ b/GraphColumnView2DSpec.st Mon Sep 12 06:57:58 2016 +0200
@@ -11,6 +11,8 @@
"
"{ Package: 'stx:libwidg2' }"
+"{ NameSpace: Smalltalk }"
+
GraphColumnViewSpec subclass:#GraphColumnView2DSpec
instanceVariableNames:'gridX gridY actionBlock doubleClickBlock buttonReleaseBlock
menuAccessBlock'
@@ -487,3 +489,4 @@
version
^ '$Header: /cvs/stx/stx/libwidg2/GraphColumnView2DSpec.st,v 1.11 2008-01-10 13:00:51 cg Exp $'
! !
+
--- a/GraphColumnView3D.st Sun Sep 11 15:41:51 2016 +0200
+++ b/GraphColumnView3D.st Mon Sep 12 06:57:58 2016 +0200
@@ -874,7 +874,7 @@
index := colorMap size + self class numberOfStandardColors.
( (index > self class maxColors)
- or:[(useCol := useCol onDevice:device) colorId isNil]
+ or:[(useCol := useCol onDevice:self device) colorId isNil]
) ifTrue:[
Transcript showCR:'cannot allocate more colors'.
index := (useCol brightness > 0.5) ifTrue:[White]
--- a/GraphColumnView3DSpec.st Sun Sep 11 15:41:51 2016 +0200
+++ b/GraphColumnView3DSpec.st Mon Sep 12 06:57:58 2016 +0200
@@ -11,6 +11,8 @@
"
"{ Package: 'stx:libwidg2' }"
+"{ NameSpace: Smalltalk }"
+
GraphColumnViewSpec subclass:#GraphColumnView3DSpec
instanceVariableNames:'rotateX rotateY rotateZ zoomZ'
classVariableNames:''
@@ -356,3 +358,4 @@
version
^ '$Header: /cvs/stx/stx/libwidg2/GraphColumnView3DSpec.st,v 1.10 2008-01-10 13:00:52 cg Exp $'
! !
+
--- a/GraphColumnViewSpec.st Sun Sep 11 15:41:51 2016 +0200
+++ b/GraphColumnViewSpec.st Mon Sep 12 06:57:58 2016 +0200
@@ -11,6 +11,8 @@
"
"{ Package: 'stx:libwidg2' }"
+"{ NameSpace: Smalltalk }"
+
MenuComponentSpec subclass:#GraphColumnViewSpec
instanceVariableNames:'listHolder references referenceSelector showGrid showDefaultMenu
zoomY windowSize graphOriginX scrollUpdatesOriginX'
@@ -690,4 +692,5 @@
^ '$Header: /cvs/stx/stx/libwidg2/GraphColumnViewSpec.st,v 1.13 2008-01-10 13:00:55 cg Exp $'
! !
+
GraphColumnViewSpec initialize!
--- a/HorizontalScale.st Sun Sep 11 15:41:51 2016 +0200
+++ b/HorizontalScale.st Mon Sep 12 06:57:58 2016 +0200
@@ -9,8 +9,9 @@
other person. No title to or ownership of the software is
hereby transferred.
"
+"{ Package: 'stx:libwidg2' }"
-"{ Package: 'stx:libwidg2' }"
+"{ NameSpace: Smalltalk }"
SimpleView subclass:#HorizontalScale
instanceVariableNames:'slider range action'
@@ -143,3 +144,4 @@
version
^ '$Header: /cvs/stx/stx/libwidg2/HorizontalScale.st,v 1.6 2006-11-13 16:11:30 cg Exp $'
! !
+
--- a/ImageSelectionBox.st Sun Sep 11 15:41:51 2016 +0200
+++ b/ImageSelectionBox.st Mon Sep 12 06:57:58 2016 +0200
@@ -9,8 +9,9 @@
other person. No title to or ownership of the software is
hereby transferred.
"
+"{ Package: 'stx:libwidg2' }"
-"{ Package: 'stx:libwidg2' }"
+"{ NameSpace: Smalltalk }"
FileSelectionBox subclass:#ImageSelectionBox
instanceVariableNames:'previewField preview info'
@@ -19,7 +20,7 @@
category:'Views-DialogBoxes'
!
-!ImageSelectionBox class methodsFor:'documentation'!
+!ImageSelectionBox class methodsFor:'documentation'!
copyright
"
@@ -183,8 +184,9 @@
"Modified: 7.6.1996 / 12:25:19 / cg"
! !
-!ImageSelectionBox class methodsFor:'documentation'!
+!ImageSelectionBox class methodsFor:'documentation'!
version
^ '$Header: /cvs/stx/stx/libwidg2/ImageSelectionBox.st,v 1.6 2006-11-13 16:11:30 cg Exp $'
! !
+
--- a/KeyboardView.st Sun Sep 11 15:41:51 2016 +0200
+++ b/KeyboardView.st Mon Sep 12 06:57:58 2016 +0200
@@ -11,6 +11,8 @@
"
"{ Package: 'stx:libwidg2' }"
+"{ NameSpace: Smalltalk }"
+
View subclass:#KeyboardView
instanceVariableNames:'targetView keyboardImage keyPositions shiftLeftState
shiftRightState altLeftState altRightState ctrlLeftState
--- a/LabelAndIcon.st Sun Sep 11 15:41:51 2016 +0200
+++ b/LabelAndIcon.st Mon Sep 12 06:57:58 2016 +0200
@@ -460,7 +460,8 @@
|iconHeight imageHeight stringHeight oneMillimeter|
- oneMillimeter := aGC device isNil ifTrue:[2] ifFalse:[aGC horizontalIntegerPixelPerMillimeter].
+ "/oneMillimeter := aGC device isNil ifTrue:[2] ifFalse:[aGC horizontalIntegerPixelPerMillimeter].
+ oneMillimeter := 0.
icon notNil ifTrue:[
iconHeight := icon value height + oneMillimeter
@@ -478,6 +479,8 @@
stringHeight := 0
].
^ (iconHeight max: imageHeight) max: stringHeight
+
+ "Modified: / 02-06-2015 / 14:14:55 / Jan Vrany <jan.vrany@fit.cvut.cz>"
!
widthOn:aGC
@@ -528,5 +531,10 @@
version_CVS
^ '$Header$'
+!
+
+version_HG
+
+ ^ '$Changeset: <not expanded> $'
! !
--- a/LinkButton.st Sun Sep 11 15:41:51 2016 +0200
+++ b/LinkButton.st Mon Sep 12 06:57:58 2016 +0200
@@ -1,3 +1,14 @@
+"
+ COPYRIGHT (c) 2006 by eXept Software AG
+ All Rights Reserved
+
+ This software is furnished under a license and may be used
+ only in accordance with the terms of that license and with the
+ inclusion of the above copyright notice. This software may not
+ be provided or otherwise made available to, or used by, any
+ other person. No title to or ownership of the software is
+ hereby transferred.
+"
"{ Package: 'stx:libwidg2' }"
"{ NameSpace: Smalltalk }"
@@ -11,6 +22,20 @@
!LinkButton class methodsFor:'documentation'!
+copyright
+"
+ COPYRIGHT (c) 2006 by eXept Software AG
+ All Rights Reserved
+
+ This software is furnished under a license and may be used
+ only in accordance with the terms of that license and with the
+ inclusion of the above copyright notice. This software may not
+ be provided or otherwise made available to, or used by, any
+ other person. No title to or ownership of the software is
+ hereby transferred.
+"
+!
+
documentation
"
Looks like a Label, but behaves like a button with individually clickable text components.
--- a/ListEditor.st Sun Sep 11 15:41:51 2016 +0200
+++ b/ListEditor.st Mon Sep 12 06:57:58 2016 +0200
@@ -9,8 +9,9 @@
other person. No title to or ownership of the software is
hereby transferred.
"
+"{ Package: 'stx:libwidg2' }"
-"{ Package: 'stx:libwidg2' }"
+"{ NameSpace: Smalltalk }"
ApplicationModel subclass:#ListEditor
instanceVariableNames:'choiceList choiceSelection selectionList selectionSelection'
@@ -200,3 +201,4 @@
version
^ '$Header: /cvs/stx/stx/libwidg2/ListEditor.st,v 1.5 2006-11-13 16:11:30 cg Exp $'
! !
+
--- a/Make.proto Sun Sep 11 15:41:51 2016 +0200
+++ b/Make.proto Mon Sep 12 06:57:58 2016 +0200
@@ -34,7 +34,7 @@
# add the path(es) here:,
# ********** OPTIONAL: MODIFY the next lines ***
# LOCALINCLUDES=-Ifoo -Ibar
-LOCALINCLUDES= -I$(INCLUDE_TOP)/stx/libbasic -I$(INCLUDE_TOP)/stx/libbasic2 -I$(INCLUDE_TOP)/stx/libui -I$(INCLUDE_TOP)/stx/libview -I$(INCLUDE_TOP)/stx/libview2 -I$(INCLUDE_TOP)/stx/libwidg
+LOCALINCLUDES= -I$(INCLUDE_TOP)/stx/goodies/refactoryBrowser/browser -I$(INCLUDE_TOP)/stx/libbasic -I$(INCLUDE_TOP)/stx/libbasic2 -I$(INCLUDE_TOP)/stx/libui -I$(INCLUDE_TOP)/stx/libview -I$(INCLUDE_TOP)/stx/libview2 -I$(INCLUDE_TOP)/stx/libwidg
# if you need any additional defines for embedded C code,
@@ -70,6 +70,13 @@
+# Enforce recompilation of package definition class if Mercurial working
+# copy state changes. Together with --guessVersion it ensures that package
+# definition class always contains correct binary revision string.
+ifneq (**NOHG**, $(shell hg root 2> /dev/null || echo -n '**NOHG**'))
+stx_libwidg2.$(O): $(shell hg root)/.hg/dirstate
+endif
+
--- a/Make.spec Sun Sep 11 15:41:51 2016 +0200
+++ b/Make.spec Mon Sep 12 06:57:58 2016 +0200
@@ -76,6 +76,7 @@
HierarchyNode \
ImageView \
LabelledEnterField \
+ LicenceBox \
LinkButton \
LinkButtonController \
ListEntry \
@@ -120,6 +121,7 @@
ImageEditView \
ModelListEntry \
MultiColListEntry \
+ PluggableHierarchicalList \
SelectionInListModelView \
TabView \
ThreeColumnTextView \
@@ -135,7 +137,6 @@
HierarchicalItemWithLabelAndIcon \
LabelAndTwoIcons \
HierarchicalItemWithLabelAndIconAndValue \
- LicenceBox \
@@ -166,6 +167,7 @@
$(OUTDIR_SLASH)HierarchyNode.$(O) \
$(OUTDIR_SLASH)ImageView.$(O) \
$(OUTDIR_SLASH)LabelledEnterField.$(O) \
+ $(OUTDIR_SLASH)LicenceBox.$(O) \
$(OUTDIR_SLASH)LinkButton.$(O) \
$(OUTDIR_SLASH)LinkButtonController.$(O) \
$(OUTDIR_SLASH)ListEntry.$(O) \
@@ -210,6 +212,7 @@
$(OUTDIR_SLASH)ImageEditView.$(O) \
$(OUTDIR_SLASH)ModelListEntry.$(O) \
$(OUTDIR_SLASH)MultiColListEntry.$(O) \
+ $(OUTDIR_SLASH)PluggableHierarchicalList.$(O) \
$(OUTDIR_SLASH)SelectionInListModelView.$(O) \
$(OUTDIR_SLASH)TabView.$(O) \
$(OUTDIR_SLASH)ThreeColumnTextView.$(O) \
@@ -225,7 +228,6 @@
$(OUTDIR_SLASH)HierarchicalItemWithLabelAndIcon.$(O) \
$(OUTDIR_SLASH)LabelAndTwoIcons.$(O) \
$(OUTDIR_SLASH)HierarchicalItemWithLabelAndIconAndValue.$(O) \
- $(OUTDIR_SLASH)LicenceBox.$(O) \
--- a/MenuButton.st Sun Sep 11 15:41:51 2016 +0200
+++ b/MenuButton.st Mon Sep 12 06:57:58 2016 +0200
@@ -11,6 +11,8 @@
"
"{ Package: 'stx:libwidg2' }"
+"{ NameSpace: Smalltalk }"
+
Button subclass:#MenuButton
instanceVariableNames:'enterAction'
classVariableNames:''
--- a/MenuPanel.st Sun Sep 11 15:41:51 2016 +0200
+++ b/MenuPanel.st Mon Sep 12 06:57:58 2016 +0200
@@ -6883,17 +6883,21 @@
app := menuPanel application.
+ "/ JV@2016-04-15: Fix for https://swing.fit.cvut.cz/projects/stx-jv/ticket/78
+ "/ The isKinfOf: below is a super ugly, whip me hard,
+ "/ but a correct fix, i.e., adding isUIPainter to UISelectionPanel
+ "/ would require to fork stx:libtool2 which I'd like to avoid for now.
+ "/ If more fixes would go to stx:libtool2 then I will fork, and
+ "/ remove this code.
(menuPanel receiver isNil
and:[ app notNil
- and:[ app askFor:#isUIPainter]])
+ and:[ (app askFor:#isUIPainter) or:[app isKindOf: (Smalltalk at:#UISelectionPanel)]]])
ifTrue:[
- ^ self "/ suppressed
- ].
- aMessage infoPrint.
-"/ app notNil ifTrue:[
-"/ ' Application: ' infoPrint. app infoPrint
-"/ ].
- '' infoPrintCR.
+ ^ self "/ suppressed
+ ].
+ Logger info: aMessage
+
+ "Modified: / 15-04-2016 / 18:29:43 / Jan Vrany <jan.vrany@fit.cvut.cz>"
!
indication
@@ -7467,7 +7471,7 @@
ex reject
].
self ifNotInUIBuilderInfoPrintCR:
- ('MenuPanel::Item [error]: application (%1) does not provide aspect: %2 (in %3)'
+ ('application (%1) does not provide aspect: %2 (in %3)'
bindWith:appl classNameWithArticle
with:aKey
with:(label isString ifTrue:[label] ifFalse:[self nameKey ? self itemValue ? '???'])).
@@ -7485,6 +7489,7 @@
^ value
"Modified: / 02-08-2013 / 16:44:28 / cg"
+ "Modified: / 15-04-2016 / 18:29:04 / Jan Vrany <jan.vrany@fit.cvut.cz>"
! !
!MenuPanel::Item methodsFor:'change & update'!
@@ -8504,39 +8509,40 @@
indication isNil ifTrue:[^ self]. "no indication specified"
indication isSymbol ifFalse:[
- indication perform:#value: with:aValue ifNotUnderstood:nil. "block or model"
- ^ self
+ indication perform:#value: with:aValue ifNotUnderstood:nil. "block or model"
+ ^ self
].
(numArgs := indication numArgs) == 0 ifTrue:[ "no arguments to selector; cannot set"
- ^ self
+ ^ self
].
recv := menuPanel receiver.
recv isValueModel ifTrue:[^ self].
recv isNil ifTrue:[
- recv := menuPanel application.
- recv isNil ifTrue:[^ self].
+ recv := menuPanel application.
+ recv isNil ifTrue:[^ self].
].
MessageNotUnderstood handle:[:ex|
- (ex selector ~~ indication) ifTrue:[
- ex reject
- ].
- self ifNotInUIBuilderInfoPrintCR:
- ('MenuPanel::Item [info]: application (%1) does not respond to: %2'
- bindWith:recv classNameWithArticle
- with:indication).
+ (ex selector ~~ indication) ifTrue:[
+ ex reject
+ ].
+ self ifNotInUIBuilderInfoPrintCR:
+ ('application (%1) does not respond to: %2'
+ bindWith:recv classNameWithArticle
+ with:indication).
] do:[
- numArgs == 1 ifTrue:[
- recv perform:indication with:aValue
- ] ifFalse:[
- recv perform:indication with:(menuItem argument ? self) with:aValue
- ]
+ numArgs == 1 ifTrue:[
+ recv perform:indication with:aValue
+ ] ifFalse:[
+ recv perform:indication with:(menuItem argument ? self) with:aValue
+ ]
].
"Modified (format): / 02-08-2013 / 16:42:20 / cg"
+ "Modified: / 15-04-2016 / 18:28:56 / Jan Vrany <jan.vrany@fit.cvut.cz>"
!
isEntered
@@ -9270,6 +9276,11 @@
version_CVS
^ '$Header$'
+!
+
+version_HG
+
+ ^ '$Changeset: <not expanded> $'
! !
--- a/MotionButton.st Sun Sep 11 15:41:51 2016 +0200
+++ b/MotionButton.st Mon Sep 12 06:57:58 2016 +0200
@@ -11,6 +11,8 @@
"
"{ Package: 'stx:libwidg2' }"
+"{ NameSpace: Smalltalk }"
+
Button subclass:#MotionButton
instanceVariableNames:'oldBorderWidth'
classVariableNames:''
--- a/NoteBookFrameView.st Sun Sep 11 15:41:51 2016 +0200
+++ b/NoteBookFrameView.st Mon Sep 12 06:57:58 2016 +0200
@@ -9,8 +9,9 @@
other person. No title to or ownership of the software is
hereby transferred.
"
+"{ Package: 'stx:libwidg2' }"
-"{ Package: 'stx:libwidg2' }"
+"{ NameSpace: Smalltalk }"
SimpleView subclass:#NoteBookFrameView
instanceVariableNames:''
@@ -169,3 +170,4 @@
version
^ '$Header: /cvs/stx/stx/libwidg2/NoteBookFrameView.st,v 1.3 2006-11-13 16:11:31 cg Exp $'
! !
+
--- a/ParagraphSpecification.st Sun Sep 11 15:41:51 2016 +0200
+++ b/ParagraphSpecification.st Mon Sep 12 06:57:58 2016 +0200
@@ -9,8 +9,9 @@
other person. No title to or ownership of the software is
hereby transferred.
"
+"{ Package: 'stx:libwidg2' }"
-"{ Package: 'stx:libwidg2' }"
+"{ NameSpace: Smalltalk }"
TabulatorSpecification subclass:#ParagraphSpecification
instanceVariableNames:'leftMargin rightMargin textAlignment'
@@ -48,25 +49,30 @@
leftMargin
"return leftMargin"
- ^ leftMargin!
+ ^ leftMargin
+!
leftMargin:something
"set leftMargin"
- leftMargin := something.!
+ leftMargin := something.
+!
rightMargin
"return rightMargin"
- ^ rightMargin!
+ ^ rightMargin
+!
rightMargin:something
"set rightMargin"
- rightMargin := something.! !
+ rightMargin := something.
+! !
!ParagraphSpecification class methodsFor:'documentation'!
version
^ '$Header: /cvs/stx/stx/libwidg2/ParagraphSpecification.st,v 1.6 2006-11-13 16:11:31 cg Exp $'
! !
+
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/PluggableHierarchicalList.st Mon Sep 12 06:57:58 2016 +0200
@@ -0,0 +1,137 @@
+"
+ COPYRIGHT (c) 2006 by eXept Software AG
+ All Rights Reserved
+
+ This software is furnished under a license and may be used
+ only in accordance with the terms of that license and with the
+ inclusion of the above copyright notice. This software may not
+ be provided or otherwise made available to, or used by, any
+ other person. No title to or ownership of the software is
+ hereby transferred.
+"
+"{ Package: 'stx:libwidg2' }"
+
+"{ NameSpace: Smalltalk }"
+
+HierarchicalList subclass:#PluggableHierarchicalList
+ instanceVariableNames:'childBlock labelBlock iconBlock'
+ classVariableNames:''
+ poolDictionaries:''
+ category:'Views-Support'
+!
+
+!PluggableHierarchicalList class methodsFor:'documentation'!
+
+copyright
+"
+ COPYRIGHT (c) 2006 by eXept Software AG
+ All Rights Reserved
+
+ This software is furnished under a license and may be used
+ only in accordance with the terms of that license and with the
+ inclusion of the above copyright notice. This software may not
+ be provided or otherwise made available to, or used by, any
+ other person. No title to or ownership of the software is
+ hereby transferred.
+"
+!
+
+documentation
+"
+ A customizable hierarchical tree list for ad-hoc trees
+
+ [author:]
+ Jan Vrany <jan.vrany@fit.cvut.cz>
+
+ [instance variables:]
+
+ [class variables:]
+
+ [see also:]
+ protocol examples
+
+"
+! !
+
+!PluggableHierarchicalList class methodsFor:'examples'!
+
+example1
+ | window view list |
+ "
+ PluggableHierarchicalList example1
+ "
+
+ window := StandardSystemView new; extent:300@300.
+ window label: self class name , '>> #example1'.
+ view := ScrollableView for:HierarchicalListView origin:0.0@0.0 corner:1.0@1.0 in: window.
+
+ list := PluggableHierarchicalList new.
+ list childBlock:[ :parent | 1 to: 5 collect: [:i | parent copyWith: i ] ].
+ list labelBlock:[ :child | 'Section ' , child printString ].
+ list root: #(1).
+ view list: list.
+
+ window open.
+
+ "Created: / 21-05-2015 / 19:05:42 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+! !
+
+!PluggableHierarchicalList methodsFor:'accessing'!
+
+childBlock
+ ^ childBlock
+!
+
+childBlock:aBlock
+ childBlock := aBlock.
+!
+
+iconBlock
+ ^ iconBlock
+!
+
+iconBlock:aBlock
+ iconBlock := aBlock.
+!
+
+labelBlock
+ ^ labelBlock
+!
+
+labelBlock:aBlock
+ labelBlock := aBlock.
+! !
+
+!PluggableHierarchicalList methodsFor:'accessing-root'!
+
+root:anObject
+ | item |
+
+ item := HierarchicalItemWithLabelAndIconAndValue new.
+ item label: (labelBlock notNil ifTrue:[ labelBlock value: anObject ] ifFalse:[ anObject displayString ]).
+ item icon: (iconBlock notNil ifTrue:[ iconBlock value: anObject ] ifFalse:[ nil ]).
+ item value: anObject.
+ super root: item.
+
+ "Created: / 21-05-2015 / 19:17:00 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+! !
+
+!PluggableHierarchicalList methodsFor:'protocol'!
+
+childrenFor: parentItem
+ | parent children |
+
+ parent := parentItem value.
+ children := childBlock value: parent.
+ ^ children collect:[ :child |
+ | childItem |
+ childItem := HierarchicalItemWithLabelAndIconAndValue new.
+ childItem label: (labelBlock notNil ifTrue:[ labelBlock value: child ] ifFalse:[ child displayString ]).
+ childItem icon: (iconBlock notNil ifTrue:[ iconBlock value: child] ifFalse:[ nil ]).
+ childItem value: child.
+ childItem parent: parentItem
+ ]
+
+ "Created: / 21-05-2015 / 19:19:06 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+! !
+
--- a/RoundButton.st Sun Sep 11 15:41:51 2016 +0200
+++ b/RoundButton.st Mon Sep 12 06:57:58 2016 +0200
@@ -9,8 +9,9 @@
other person. No title to or ownership of the software is
hereby transferred.
"
+"{ Package: 'stx:libwidg2' }"
-"{ Package: 'stx:libwidg2' }"
+"{ NameSpace: Smalltalk }"
Button subclass:#RoundButton
instanceVariableNames:''
@@ -148,3 +149,4 @@
version
^ '$Header: /cvs/stx/stx/libwidg2/RoundButton.st,v 1.5 2006-11-13 16:11:31 cg Exp $'
! !
+
--- a/Ruler.st Sun Sep 11 15:41:51 2016 +0200
+++ b/Ruler.st Mon Sep 12 06:57:58 2016 +0200
@@ -9,8 +9,9 @@
other person. No title to or ownership of the software is
hereby transferred.
"
+"{ Package: 'stx:libwidg2' }"
-"{ Package: 'stx:libwidg2' }"
+"{ NameSpace: Smalltalk }"
SimpleView subclass:#Ruler
instanceVariableNames:'fgColor metric paperWidth paperHeight scale showUnit orientation'
@@ -513,3 +514,4 @@
version
^ '$Header: /cvs/stx/stx/libwidg2/Ruler.st,v 1.28 2002-10-31 21:49:29 cg Exp $'
! !
+
--- a/Scale.st Sun Sep 11 15:41:51 2016 +0200
+++ b/Scale.st Mon Sep 12 06:57:58 2016 +0200
@@ -9,8 +9,9 @@
other person. No title to or ownership of the software is
hereby transferred.
"
+"{ Package: 'stx:libwidg2' }"
-"{ Package: 'stx:libwidg2' }"
+"{ NameSpace: Smalltalk }"
SimpleView subclass:#Scale
instanceVariableNames:'slider range action'
@@ -141,3 +142,4 @@
version
^ '$Header: /cvs/stx/stx/libwidg2/Scale.st,v 1.6 2006-11-13 16:11:31 cg Exp $'
! !
+
--- a/StrokeView.st Sun Sep 11 15:41:51 2016 +0200
+++ b/StrokeView.st Mon Sep 12 06:57:58 2016 +0200
@@ -1,5 +1,7 @@
"{ Package: 'stx:libwidg2' }"
+"{ NameSpace: Smalltalk }"
+
View subclass:#StrokeView
instanceVariableNames:'strokes currentStroke lastPoint clearButton clearLastButton
strokeAction'
@@ -190,3 +192,4 @@
version
^ '$Header: /cvs/stx/stx/libwidg2/StrokeView.st,v 1.3 2004-03-02 08:44:45 cg Exp $'
! !
+
--- a/TabControl.st Sun Sep 11 15:41:51 2016 +0200
+++ b/TabControl.st Mon Sep 12 06:57:58 2016 +0200
@@ -9,8 +9,9 @@
other person. No title to or ownership of the software is
hereby transferred.
"
+"{ Package: 'stx:libwidg2' }"
-"{ Package: 'stx:libwidg2' }"
+"{ NameSpace: Smalltalk }"
NoteBookView subclass:#TabControl
instanceVariableNames:''
@@ -230,3 +231,4 @@
version
^ '$Header: /cvs/stx/stx/libwidg2/TabControl.st,v 1.2 2006-03-13 19:27:30 cg Exp $'
! !
+
--- a/TabView.st Sun Sep 11 15:41:51 2016 +0200
+++ b/TabView.st Mon Sep 12 06:57:58 2016 +0200
@@ -11,6 +11,8 @@
"
"{ Package: 'stx:libwidg2' }"
+"{ NameSpace: Smalltalk }"
+
NoteBookView subclass:#TabView
instanceVariableNames:''
classVariableNames:''
@@ -152,4 +154,10 @@
version_CVS
^ '$Header: /cvs/stx/stx/libwidg2/TabView.st,v 1.48 2010-05-11 11:43:14 ca Exp $'
+!
+
+version_HG
+
+ ^ '$Changeset: <not expanded> $'
! !
+
--- a/TextRuler.st Sun Sep 11 15:41:51 2016 +0200
+++ b/TextRuler.st Mon Sep 12 06:57:58 2016 +0200
@@ -9,16 +9,17 @@
other person. No title to or ownership of the software is
hereby transferred.
"
+"{ Package: 'stx:libwidg2' }"
-"{ Package: 'stx:libwidg2' }"
+"{ NameSpace: Smalltalk }"
Ruler subclass:#TextRuler
- instanceVariableNames:'leftMargin rightMargin spec moving settingTab'
- classVariableNames:'LeftAlignForm RightAlignForm AlignForm CenterForm LeftMarginForm
+ instanceVariableNames:'leftMargin rightMargin spec moving settingTab'
+ classVariableNames:'LeftAlignForm RightAlignForm AlignForm CenterForm LeftMarginForm
RightMarginForm LeftTabForm RightTabForm CenterTabForm
DecimalTabForm'
- poolDictionaries:''
- category:'Views-Interactors'
+ poolDictionaries:''
+ category:'Views-Interactors'
!
!TextRuler class methodsFor:'documentation'!
@@ -48,48 +49,17 @@
TextRuler new open
"
-!
-
-version
- ^ '$Header: /cvs/stx/stx/libwidg2/TextRuler.st,v 1.15 2006-11-13 16:11:31 cg Exp $'
! !
!TextRuler class methodsFor:'defaults'!
-rightMarginForm
- "return the form displayed for the right margin marker"
+alignForm
+ "return the form displayed in the align-button"
- RightMarginForm isNil ifTrue:[
- RightMarginForm := Image fromFile:'bitmaps/rightMarg.xbm' resolution:100
- ].
- ^ RightMarginForm
-!
-
-leftMarginForm
- "return the form displayed for the left margin marker"
-
- LeftMarginForm isNil ifTrue:[
- LeftMarginForm := Image fromFile:'bitmaps/leftMargin.xbm' resolution:100
+ AlignForm isNil ifTrue:[
+ AlignForm := Image fromFile:'bitmaps/align.xbm' resolution:100
].
- ^ LeftMarginForm
-!
-
-rightAlignForm
- "return the form displayed in the rightAlign-button"
-
- RightAlignForm isNil ifTrue:[
- RightAlignForm := Image fromFile:'bitmaps/rightAlign.xbm' resolution:100
- ].
- ^ RightAlignForm
-!
-
-leftTabForm
- "return the form displayed in the leftTab-button"
-
- LeftTabForm isNil ifTrue:[
- LeftTabForm := Image fromFile:'bitmaps/leftTab.xbm' resolution:100
- ].
- ^ LeftTabForm
+ ^ AlignForm
!
centerForm
@@ -101,31 +71,13 @@
^ CenterForm
!
-alignForm
- "return the form displayed in the align-button"
-
- AlignForm isNil ifTrue:[
- AlignForm := Image fromFile:'bitmaps/align.xbm' resolution:100
- ].
- ^ AlignForm
-!
-
-rightTabForm
- "return the form displayed in the rightTab-button"
+centerTabForm
+ "return the form displayed in the centerTab-button"
- RightTabForm isNil ifTrue:[
- RightTabForm := Image fromFile:'bitmaps/rightTab.xbm' resolution:100
+ CenterTabForm isNil ifTrue:[
+ CenterTabForm := Image fromFile:'bitmaps/centerTab.xbm' resolution:100
].
- ^ RightTabForm
-!
-
-leftAlignForm
- "return the form displayed in the leftAlign-button"
-
- LeftAlignForm isNil ifTrue:[
- LeftAlignForm := Image fromFile:'bitmaps/leftAlign.xbm' resolution:100
- ].
- ^ LeftAlignForm
+ ^ CenterTabForm
!
decimalTabForm
@@ -137,13 +89,58 @@
^ DecimalTabForm
!
-centerTabForm
- "return the form displayed in the centerTab-button"
+leftAlignForm
+ "return the form displayed in the leftAlign-button"
+
+ LeftAlignForm isNil ifTrue:[
+ LeftAlignForm := Image fromFile:'bitmaps/leftAlign.xbm' resolution:100
+ ].
+ ^ LeftAlignForm
+!
+
+leftMarginForm
+ "return the form displayed for the left margin marker"
+
+ LeftMarginForm isNil ifTrue:[
+ LeftMarginForm := Image fromFile:'bitmaps/leftMargin.xbm' resolution:100
+ ].
+ ^ LeftMarginForm
+!
+
+leftTabForm
+ "return the form displayed in the leftTab-button"
- CenterTabForm isNil ifTrue:[
- CenterTabForm := Image fromFile:'bitmaps/centerTab.xbm' resolution:100
+ LeftTabForm isNil ifTrue:[
+ LeftTabForm := Image fromFile:'bitmaps/leftTab.xbm' resolution:100
+ ].
+ ^ LeftTabForm
+!
+
+rightAlignForm
+ "return the form displayed in the rightAlign-button"
+
+ RightAlignForm isNil ifTrue:[
+ RightAlignForm := Image fromFile:'bitmaps/rightAlign.xbm' resolution:100
].
- ^ CenterTabForm
+ ^ RightAlignForm
+!
+
+rightMarginForm
+ "return the form displayed for the right margin marker"
+
+ RightMarginForm isNil ifTrue:[
+ RightMarginForm := Image fromFile:'bitmaps/rightMarg.xbm' resolution:100
+ ].
+ ^ RightMarginForm
+!
+
+rightTabForm
+ "return the form displayed in the rightTab-button"
+
+ RightTabForm isNil ifTrue:[
+ RightTabForm := Image fromFile:'bitmaps/rightTab.xbm' resolution:100
+ ].
+ ^ RightTabForm
! !
!TextRuler methodsFor:'accessing'!
@@ -152,232 +149,6 @@
spec := aSpec
! !
-!TextRuler methodsFor:'redrawing'!
-
-redraw
- "redraw margin & tab marks"
-
- |x top form tab type tabStops tabAlign viewOrigin orgX orgY|
-
- self clear.
-
- super redraw.
-
- viewOrigin := self viewOrigin.
- orgX := viewOrigin x.
- orgY := viewOrigin y.
-
- self paint:fgColor.
-
- top := height - (font height) - (font ascent).
-
- x := (self inchToPixel:leftMargin) rounded.
- form := self class leftMarginForm.
- self displayForm:form
- x:(x - (form width // 2) - orgX)
- y:(top - form height - orgY).
-
- x := (self inchToPixel:rightMargin) rounded.
- form := self class rightMarginForm.
- self displayForm:form
- x:(x - (form width // 2) - orgX)
- y:(top - form height - orgY).
-
- spec notNil ifTrue:[
- tabStops := spec positions.
- tabAlign := spec align.
- tabStops notNil ifTrue:[
- 1 to:tabStops size do:[:tabNr |
- tab := tabStops at:tabNr.
- type := tabAlign at:tabNr.
- x := (spec positionOfTab:tabNr on:self) rounded.
- (type == #left) ifTrue:[
- form := self class leftTabForm
- ] ifFalse:[
- (type == #right) ifTrue:[
- form := self class rightTabForm
- ] ifFalse:[
- (type == #center) ifTrue:[
- form := self class centerTabForm
- ] ifFalse:[
- (type == #decimal) ifTrue:[
- form := self class decimalTabForm
- ]
- ]
- ]
- ].
- self displayForm:form
- x:(x - (form width // 2) - orgX)
- y:(top - form height - orgY)
- ]
- ]
- ]
-!
-
-clearMargin:which
- "clear margin"
-
- |this other otherX otherX2 x x2 top form symOther viewOrigin|
-
- self paint:viewBackground.
-
- top := height - (font height) - (font ascent).
-
- (which == #left) ifTrue:[
- this := leftMargin.
- other := rightMargin. symOther := #right.
- form := self class leftMarginForm
- ].
- (which == #right) ifTrue:[
- this := rightMargin.
- other := leftMargin. symOther := #left.
- form := self class rightMarginForm
- ].
-
- x := (self inchToPixel:this) rounded - (form width // 2).
- viewOrigin := self viewOrigin.
- self displayForm:form
- x:x + viewOrigin x
- y:(top - form height - viewOrigin y).
-
- "
- if it covers any other, redraw them
- "
- x2 := x + form width.
- otherX := (self inchToPixel:other) rounded - (form width // 2).
- otherX2 := otherX + form width.
-
- otherX > x2 ifFalse:[
- otherX2 < x ifFalse:[
- self drawMargin:symOther
- ]
- ].
-!
-
-drawMargin:which
- "clear margin"
-
- |x top form viewOrigin|
-
- self paint:fgColor.
-
- top := height - (font height) - (font ascent).
-
- (which == #left) ifTrue:[
- x := (self inchToPixel:leftMargin) rounded.
- form := self class leftMarginForm
- ].
- (which == #right) ifTrue:[
- x := (self inchToPixel:rightMargin) rounded.
- form := self class rightMarginForm
- ].
-
- viewOrigin := self viewOrigin.
- self displayForm:form
- x:(x - (form width // 2) - viewOrigin x)
- y:(top - form height - viewOrigin y).
-
-! !
-
-!TextRuler methodsFor:'user interaction'!
-
-buttonRelease:button x:x y:y
- "position a tab or start moving a ruler"
-
- moving := nil
-!
-
-buttonPress:button x:pX y:y
- "position a tab or start moving a ruler"
-
- |mpos x|
-
- ((button == #select) or:[button == 1]) ifFalse:[
- ^ super buttonPress:button x:pX y:y
- ].
-
- x := pX + self viewOrigin x.
- settingTab notNil ifTrue:[
- self setTabX:x.
- settingTab := nil.
- ^ self
- ].
-
- mpos := self inchToPixel:leftMargin.
- (((mpos - 4) <= x) and:[x <= (mpos + 4)]) ifTrue:[
- "start moving left margin"
- moving := #left.
- ^ self
- ].
- mpos := self inchToPixel:rightMargin.
- (((mpos - 4) <= x) and:[x <= (mpos + 4)]) ifTrue:[
- "start moving right margin"
- moving := #right.
- ^ self
- ].
-
- ^ self
-!
-
-buttonMotion:state x:x y:y
- "position a tab or start moving a ruler"
-
- |mpos|
-
- moving notNil ifTrue:[
- self clearMargin:moving.
- mpos := self pixelToInch:x + self viewOrigin x.
- (mpos < 0) ifTrue:[
- mpos := 0
- ].
- (mpos > paperWidth) ifTrue:[
- mpos := paperWidth
- ].
- (moving == #left) ifTrue:[
- leftMargin := mpos
- ].
- (moving == #right) ifTrue:[
- rightMargin := mpos
- ].
- self drawMargin:moving
- ]
-!
-
-leftAlign
- ^ self
-!
-
-rightAlign
- ^ self
-!
-
-leftTab
- settingTab := #left.
-
-!
-
-align
- ^ self
-!
-
-center
- ^ self
-!
-
-centerTab
- settingTab := #center.
-!
-
-rightTab
- settingTab := #right.
-
-!
-
-decimalTab
- settingTab := #decimal.
-
-! !
-
!TextRuler methodsFor:'initializing'!
initialize
@@ -447,3 +218,236 @@
"TextRuler new open"
! !
+
+!TextRuler methodsFor:'redrawing'!
+
+clearMargin:which
+ "clear margin"
+
+ |this other otherX otherX2 x x2 top form symOther viewOrigin|
+
+ self paint:viewBackground.
+
+ top := height - (font height) - (font ascent).
+
+ (which == #left) ifTrue:[
+ this := leftMargin.
+ other := rightMargin. symOther := #right.
+ form := self class leftMarginForm
+ ].
+ (which == #right) ifTrue:[
+ this := rightMargin.
+ other := leftMargin. symOther := #left.
+ form := self class rightMarginForm
+ ].
+
+ x := (self inchToPixel:this) rounded - (form width // 2).
+ viewOrigin := self viewOrigin.
+ self displayForm:form
+ x:x + viewOrigin x
+ y:(top - form height - viewOrigin y).
+
+ "
+ if it covers any other, redraw them
+ "
+ x2 := x + form width.
+ otherX := (self inchToPixel:other) rounded - (form width // 2).
+ otherX2 := otherX + form width.
+
+ otherX > x2 ifFalse:[
+ otherX2 < x ifFalse:[
+ self drawMargin:symOther
+ ]
+ ].
+!
+
+drawMargin:which
+ "clear margin"
+
+ |x top form viewOrigin|
+
+ self paint:fgColor.
+
+ top := height - (font height) - (font ascent).
+
+ (which == #left) ifTrue:[
+ x := (self inchToPixel:leftMargin) rounded.
+ form := self class leftMarginForm
+ ].
+ (which == #right) ifTrue:[
+ x := (self inchToPixel:rightMargin) rounded.
+ form := self class rightMarginForm
+ ].
+
+ viewOrigin := self viewOrigin.
+ self displayForm:form
+ x:(x - (form width // 2) - viewOrigin x)
+ y:(top - form height - viewOrigin y).
+
+!
+
+redraw
+ "redraw margin & tab marks"
+
+ |x top form tab type tabStops tabAlign viewOrigin orgX orgY|
+
+ self clear.
+
+ super redraw.
+
+ viewOrigin := self viewOrigin.
+ orgX := viewOrigin x.
+ orgY := viewOrigin y.
+
+ self paint:fgColor.
+
+ top := height - (font height) - (font ascent).
+
+ x := (self inchToPixel:leftMargin) rounded.
+ form := self class leftMarginForm.
+ self displayForm:form
+ x:(x - (form width // 2) - orgX)
+ y:(top - form height - orgY).
+
+ x := (self inchToPixel:rightMargin) rounded.
+ form := self class rightMarginForm.
+ self displayForm:form
+ x:(x - (form width // 2) - orgX)
+ y:(top - form height - orgY).
+
+ spec notNil ifTrue:[
+ tabStops := spec positions.
+ tabAlign := spec align.
+ tabStops notNil ifTrue:[
+ 1 to:tabStops size do:[:tabNr |
+ tab := tabStops at:tabNr.
+ type := tabAlign at:tabNr.
+ x := (spec positionOfTab:tabNr on:self) rounded.
+ (type == #left) ifTrue:[
+ form := self class leftTabForm
+ ] ifFalse:[
+ (type == #right) ifTrue:[
+ form := self class rightTabForm
+ ] ifFalse:[
+ (type == #center) ifTrue:[
+ form := self class centerTabForm
+ ] ifFalse:[
+ (type == #decimal) ifTrue:[
+ form := self class decimalTabForm
+ ]
+ ]
+ ]
+ ].
+ self displayForm:form
+ x:(x - (form width // 2) - orgX)
+ y:(top - form height - orgY)
+ ]
+ ]
+ ]
+! !
+
+!TextRuler methodsFor:'user interaction'!
+
+align
+ ^ self
+!
+
+buttonMotion:state x:x y:y
+ "position a tab or start moving a ruler"
+
+ |mpos|
+
+ moving notNil ifTrue:[
+ self clearMargin:moving.
+ mpos := self pixelToInch:x + self viewOrigin x.
+ (mpos < 0) ifTrue:[
+ mpos := 0
+ ].
+ (mpos > paperWidth) ifTrue:[
+ mpos := paperWidth
+ ].
+ (moving == #left) ifTrue:[
+ leftMargin := mpos
+ ].
+ (moving == #right) ifTrue:[
+ rightMargin := mpos
+ ].
+ self drawMargin:moving
+ ]
+!
+
+buttonPress:button x:pX y:y
+ "position a tab or start moving a ruler"
+
+ |mpos x|
+
+ ((button == #select) or:[button == 1]) ifFalse:[
+ ^ super buttonPress:button x:pX y:y
+ ].
+
+ x := pX + self viewOrigin x.
+ settingTab notNil ifTrue:[
+ self setTabX:x.
+ settingTab := nil.
+ ^ self
+ ].
+
+ mpos := self inchToPixel:leftMargin.
+ (((mpos - 4) <= x) and:[x <= (mpos + 4)]) ifTrue:[
+ "start moving left margin"
+ moving := #left.
+ ^ self
+ ].
+ mpos := self inchToPixel:rightMargin.
+ (((mpos - 4) <= x) and:[x <= (mpos + 4)]) ifTrue:[
+ "start moving right margin"
+ moving := #right.
+ ^ self
+ ].
+
+ ^ self
+!
+
+buttonRelease:button x:x y:y
+ "position a tab or start moving a ruler"
+
+ moving := nil
+!
+
+center
+ ^ self
+!
+
+centerTab
+ settingTab := #center.
+!
+
+decimalTab
+ settingTab := #decimal.
+
+!
+
+leftAlign
+ ^ self
+!
+
+leftTab
+ settingTab := #left.
+
+!
+
+rightAlign
+ ^ self
+!
+
+rightTab
+ settingTab := #right.
+
+! !
+
+!TextRuler class methodsFor:'documentation'!
+
+version
+ ^ '$Header: /cvs/stx/stx/libwidg2/TextRuler.st,v 1.15 2006-11-13 16:11:31 cg Exp $'
+! !
+
--- a/VT52TerminalView.st Sun Sep 11 15:41:51 2016 +0200
+++ b/VT52TerminalView.st Mon Sep 12 06:57:58 2016 +0200
@@ -11,6 +11,8 @@
"
"{ Package: 'stx:libwidg2' }"
+"{ NameSpace: Smalltalk }"
+
TerminalView subclass:#VT52TerminalView
instanceVariableNames:'param1 param2'
classVariableNames:''
--- a/VerticalRuler.st Sun Sep 11 15:41:51 2016 +0200
+++ b/VerticalRuler.st Mon Sep 12 06:57:58 2016 +0200
@@ -9,8 +9,9 @@
other person. No title to or ownership of the software is
hereby transferred.
"
+"{ Package: 'stx:libwidg2' }"
-"{ Package: 'stx:libwidg2' }"
+"{ NameSpace: Smalltalk }"
Ruler subclass:#VerticalRuler
instanceVariableNames:''
@@ -60,3 +61,4 @@
version
^ '$Header: /cvs/stx/stx/libwidg2/VerticalRuler.st,v 1.11 2006-11-13 16:11:31 cg Exp $'
! !
+
--- a/abbrev.stc Sun Sep 11 15:41:51 2016 +0200
+++ b/abbrev.stc Mon Sep 12 06:57:58 2016 +0200
@@ -26,6 +26,7 @@
HierarchyNode HierarchyNode stx:libwidg2 'Interface-Support' 0
ImageView ImageView stx:libwidg2 'Views-Misc' 2
LabelledEnterField LabelledEnterField stx:libwidg2 'Views-Interactors' 2
+LicenceBox LicenceBox stx:libwidg2 'Views-DialogBoxes' 2
LinkButton LinkButton stx:libwidg2 'Views-Layout' 2
LinkButtonController LinkButtonController stx:libwidg2 'Interface-Support-Controllers' 0
ListEntry ListEntry stx:libwidg2 'Views-Support' 0
@@ -51,7 +52,6 @@
TabulatorSpecification TabulatorSpecification stx:libwidg2 'Views-Support' 0
TerminalView TerminalView stx:libwidg2 'Views-TerminalViews' 2
TextBox TextBox stx:libwidg2 'Views-DialogBoxes' 2
-ThumbWheel ThumbWheel stx:libwidg2 'Views-Interactors' 2
TreeItem TreeItem stx:libwidg2 'Interface-Support' 0
UpDownButton UpDownButton stx:libwidg2 'Views-Interactors' 2
ViewScroller ViewScroller stx:libwidg2 'Views-Basic' 2
@@ -70,6 +70,7 @@
ImageEditView ImageEditView stx:libwidg2 'Views-Misc' 2
ModelListEntry ModelListEntry stx:libwidg2 'Views-Support' 0
MultiColListEntry MultiColListEntry stx:libwidg2 'Views-Support' 0
+PluggableHierarchicalList PluggableHierarchicalList stx:libwidg2 'Views-Support' 0
SelectionInListModelView SelectionInListModelView stx:libwidg2 'Views-Lists' 2
TabView TabView stx:libwidg2 'Views-Interactors' 2
ThreeColumnTextView ThreeColumnTextView stx:libwidg2 'Views-Text' 2
@@ -96,7 +97,7 @@
GraphColumnView GraphColumnView stx:libwidg2 'Views-Graphs' 2
GraphColumnView2D GraphColumnView2D stx:libwidg2 'Views-Graphs' 2
GraphColumnView2DSpec GraphColumnView2DSpec stx:libwidg2 'Interface-Support-UI-Specs' 0
-GraphColumnView3D GraphColumnView3D stx:libwidg2 'Views-Graphs' 0
+GraphColumnView3D GraphColumnView3D stx:libwidg2 'Views-Graphs' 2
GraphColumnView3DSpec GraphColumnView3DSpec stx:libwidg2 'Interface-Support-UI-Specs' 0
GraphColumnViewSpec GraphColumnViewSpec stx:libwidg2 'Interface-Support-UI-Specs' 0
HorizontalScale HorizontalScale stx:libwidg2 'Views-Interactors' 2
@@ -104,6 +105,11 @@
ListEditor ListEditor stx:libwidg2 'Views-Lists' 1
MotionButton MotionButton stx:libwidg2 'Views-Obsolete' 2
NoteBookFrameView NoteBookFrameView stx:libwidg2 'Views-Misc' 2
+KeyboardView KeyboardView stx:libwidg2 'Views-Special' 2
+ListEditor ListEditor stx:libwidg2 'Views-Lists' 1
+MenuButton MenuButton stx:libwidg2 'Views-Obsolete' 2
+MotionButton MotionButton stx:libwidg2 'Views-Obsolete' 2
+NoteBookFrameView NoteBookFrameView stx:libwidg2 'Views-Misc' 2
ParagraphSpecification ParagraphSpecification stx:libwidg2 'Views-Support' 0
RoundButton RoundButton stx:libwidg2 'Views-Interactors' 2
Ruler Ruler stx:libwidg2 'Views-Misc' 2
@@ -112,4 +118,8 @@
TextRuler TextRuler stx:libwidg2 'Views-Interactors' 2
VT52TerminalView VT52TerminalView stx:libwidg2 'Views-TerminalViews' 2
VerticalRuler VerticalRuler stx:libwidg2 'Views-Misc' 2
-LicenceBox LicenceBox stx:libwidg2 'Views-DialogBoxes' 2
+StrokeView StrokeView stx:libwidg2 'Views-Special' 2
+TabControl TabControl stx:libwidg2 'Views-Layout' 2
+TextRuler TextRuler stx:libwidg2 'Views-Interactors' 2
+VT52TerminalView VT52TerminalView stx:libwidg2 'Views-TerminalViews' 2
+VerticalRuler VerticalRuler stx:libwidg2 'Views-Misc' 2
--- a/bc.mak Sun Sep 11 15:41:51 2016 +0200
+++ b/bc.mak Mon Sep 12 06:57:58 2016 +0200
@@ -38,7 +38,7 @@
-LOCALINCLUDES= -I$(INCLUDE_TOP)\stx\libbasic -I$(INCLUDE_TOP)\stx\libbasic2 -I$(INCLUDE_TOP)\stx\libui -I$(INCLUDE_TOP)\stx\libview -I$(INCLUDE_TOP)\stx\libview2 -I$(INCLUDE_TOP)\stx\libwidg
+LOCALINCLUDES= -I$(INCLUDE_TOP)\stx\goodies\refactoryBrowser\browser -I$(INCLUDE_TOP)\stx\libbasic -I$(INCLUDE_TOP)\stx\libbasic2 -I$(INCLUDE_TOP)\stx\libui -I$(INCLUDE_TOP)\stx\libview -I$(INCLUDE_TOP)\stx\libview2 -I$(INCLUDE_TOP)\stx\libwidg
LOCALDEFINES=
STCLOCALOPT=-package=$(PACKAGE) -I. $(LOCALINCLUDES) -headerDir=. $(STCLOCALOPTIMIZATIONS) $(STCWARNINGS) $(LOCALDEFINES) $(COMMONSYMBOLS) -varPrefix=$(LIBNAME)
@@ -69,7 +69,7 @@
test: $(TOP)\goodies\builder\reports\NUL
pushd $(TOP)\goodies\builder\reports & $(MAKE_BAT)
$(TOP)\goodies\builder\reports\report-runner.bat -D . -r Builder::TestReport -p $(PACKAGE)
-
+
clean::
-del *.$(CSUFFIX)
@@ -162,3 +162,12 @@
$(OUTDIR)LicenceBox.$(O) LicenceBox.$(C) LicenceBox.$(H): LicenceBox.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)
# ENDMAKEDEPEND --- do not remove this line
+
+# **Must be at end**
+
+# Enforce recompilation of package definition class if Mercurial working
+# copy state changes. Together with --guessVersion it ensures that package
+# definition class always contains correct binary revision string.
+!IFDEF HGROOT
+$(OUTDIR)stx_libwidg2.$(O): $(HGROOT)\.hg\dirstate
+!ENDIF
--- a/bmake.bat Sun Sep 11 15:41:51 2016 +0200
+++ b/bmake.bat Mon Sep 12 06:57:58 2016 +0200
@@ -5,6 +5,7 @@
@REM -------
@SET DEFINES=
+
make.exe -N -f bc.mak %DEFINES% %*
--- a/libInit.cc Sun Sep 11 15:41:51 2016 +0200
+++ b/libInit.cc Mon Sep 12 06:57:58 2016 +0200
@@ -139,6 +139,7 @@
_HierarchyNode_Init(pass,__pRT__,snd);
_ImageView_Init(pass,__pRT__,snd);
_LabelledEnterField_Init(pass,__pRT__,snd);
+_LicenceBox_Init(pass,__pRT__,snd);
_LinkButton_Init(pass,__pRT__,snd);
_LinkButtonController_Init(pass,__pRT__,snd);
_ListEntry_Init(pass,__pRT__,snd);
@@ -183,6 +184,7 @@
_ImageEditView_Init(pass,__pRT__,snd);
_ModelListEntry_Init(pass,__pRT__,snd);
_MultiColListEntry_Init(pass,__pRT__,snd);
+_PluggableHierarchicalList_Init(pass,__pRT__,snd);
_SelectionInListModelView_Init(pass,__pRT__,snd);
_TabView_Init(pass,__pRT__,snd);
_ThreeColumnTextView_Init(pass,__pRT__,snd);
@@ -198,7 +200,6 @@
_HierarchicalItemWithLabelAndIcon_Init(pass,__pRT__,snd);
_LabelAndTwoIcons_Init(pass,__pRT__,snd);
_HierarchicalItemWithLabelAndIconAndValue_Init(pass,__pRT__,snd);
- _LicenceBox_Init(pass,__pRT__,snd);
__END_PACKAGE__();
--- a/stx_libwidg2.st Sun Sep 11 15:41:51 2016 +0200
+++ b/stx_libwidg2.st Mon Sep 12 06:57:58 2016 +0200
@@ -52,7 +52,6 @@
additionalClassNamesAndAttributes
^ #(
"/ <className> or (<className> attributes...)
- 'LicenceBox'
)
"Created: / 21-08-2006 / 19:52:03 / cg"
@@ -170,6 +169,7 @@
HierarchyNode
ImageView
LabelledEnterField
+ LicenceBox
LinkButton
LinkButtonController
ListEntry
@@ -214,6 +214,7 @@
ImageEditView
ModelListEntry
MultiColListEntry
+ PluggableHierarchicalList
SelectionInListModelView
TabView
ThreeColumnTextView
@@ -229,10 +230,6 @@
HierarchicalItemWithLabelAndIcon
LabelAndTwoIcons
HierarchicalItemWithLabelAndIconAndValue
- (KeyboardView autoload)
- (MenuButton autoload)
- (StrokeView autoload)
- (TabControl autoload)
(ColoredListEntry autoload)
(ComboBrowseView autoload)
(ComboUpDownView autoload)
@@ -245,7 +242,9 @@
(GraphColumnViewSpec autoload)
(HorizontalScale autoload)
(ImageSelectionBox autoload)
+ (KeyboardView autoload)
(ListEditor autoload)
+ (MenuButton autoload)
(MotionButton autoload)
(NoteBookFrameView autoload)
(ParagraphSpecification autoload)
@@ -253,6 +252,8 @@
(Ruler autoload)
(Scale autoload)
(SelectionInHierarchyView autoload)
+ (StrokeView autoload)
+ (TabControl autoload)
(TextRuler autoload)
(VT52TerminalView autoload)
(VerticalRuler autoload)
@@ -303,5 +304,9 @@
version_CVS
^ '$Header$'
+!
+
+version_HG
+ ^ '$Changeset: <not expanded> $'
! !
--- a/vcmake.bat Sun Sep 11 15:41:51 2016 +0200
+++ b/vcmake.bat Mon Sep 12 06:57:58 2016 +0200
@@ -10,6 +10,10 @@
popd
)
@SET DEFINES=
+@REM Kludge got Mercurial, cannot be implemented in Borland make
+@FOR /F "tokens=*" %%i in ('hg root') do SET HGROOT=%%i
+@IF "%HGROOT%" NEQ "" SET DEFINES=%DEFINES% "-DHGROOT=%HGROOT%"
+
make.exe -N -f bc.mak -DUSEVC=1 %DEFINES% %*