# HG changeset patch # User Stefan Vogel # Date 842288807 -7200 # Node ID f24a0853e7545a38d927784bcf177b0a45d5a005 # Parent a0e97ba3d7f4bf02edd4896c60a502963af1f3f0 New class LicenceBox. diff -r a0e97ba3d7f4 -r f24a0853e754 LicenceBox.st --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/LicenceBox.st Mon Sep 09 19:06:47 1996 +0200 @@ -0,0 +1,145 @@ +'From Smalltalk/X, Version:2.10.9 on 9-sep-1996 at 18:00:22' ! + +DialogBox subclass:#LicenceBox + instanceVariableNames:'accepted destroySemaphore' + classVariableNames:'LicenceRejectSignal' + poolDictionaries:'' + category:'Views-DialogBoxes' +! + +!LicenceBox class methodsFor:'documentation'! + +documentation +" + LicenceBox shows a licence text when opened, an returns true, + if the licence has been accepted, false otherwise. +" +! + +examples +" + [exBegin] + LicenceRejectSignal handle:[:ex| + Transcript showCR:'Licence rejected'. + ] do:[ + LicenceBox open. + Transcript showCR:'Licence accepted'. + ] + [exEnd] +" +! + +history + + "Created: 6.9.1996 / 13:29:15 / stefan" + "Modified: 9.9.1996 / 14:53:11 / stefan" +! ! + +!LicenceBox class methodsFor:'initialization'! + +initialize + LicenceRejectSignal isNil ifTrue:[ + LicenceRejectSignal := ErrorSignal newSignalMayProceed:true. + LicenceRejectSignal nameClass:self message:#licenceRejectSignal. + LicenceRejectSignal notifierString:'licence rejected by user'. + ]. + + " + self initialize + " +! ! + +!LicenceBox class methodsFor:'instance creation'! + +open + "open myself modal and return true if accepted, false otherwise" + + ^ super open accepted. + + " + self open + " + + "Modified: 9.9.1996 / 17:52:48 / stefan" +! ! + +!LicenceBox class methodsFor:'Signal constants'! + +licenceRejectSignal + "licence has been rejected by user" + + ^ LicenceRejectSignal + +! ! + +!LicenceBox methodsFor:'accessing'! + +accepted + "return accepted" + + ^ accepted + + "Created: 6.9.1996 / 13:24:44 / stefan" +! + +accepted:something + "set accepted" + + accepted := something. + + "Created: 6.9.1996 / 13:24:44 / stefan" +! ! + +!LicenceBox methodsFor:'destroying'! + +terminate + "this is the close from a windowmanager + (only if UseTransientViews == true). + Redefined, since ModalBox keeps the View alive (only hidden)" + + self destroy. + + "Created: 9.9.1996 / 15:15:31 / stefan" +! ! + +!LicenceBox methodsFor:'initialization'! + +initialize + |textView| + + super initialize. + accepted := false. + + (self addTextLabel:(resources string:'Please read the licence terms:')) adjust:#left. + textView := self addTextBoxOn:nil + class:HTMLDocumentView + withNumberOfLines:40 + hScrollable:true + vScrollable:true. + self width:(textView preferredExtentForLines:40 cols:70) x. + textView setText:(self licenceText). + self addAbortButtonLabelled:(resources string:'reject licence terms'). + self addOkButtonLabelled:(resources string:'accept licence terms'). + self abortAction:[self destroy. accepted := false. LicenceRejectSignal raise]. + self okAction:[self destroy. accepted := true]. + self stickAtBottomWithVariableHeight:textView. + + "Modified: 9.9.1996 / 17:52:13 / stefan" +! ! + +!LicenceBox methodsFor:'private'! + +licenceText + "get licence text" + + ^ (resources at:'LICENCEFILE') asFilename readStream contents. + + "Created: 6.9.1996 / 12:17:07 / stefan" +! ! + +!LicenceBox class methodsFor:'documentation'! + +version + ^ '$Header: /cvs/stx/stx/libwidg2/LicenceBox.st,v 1.1 1996-09-09 17:06:46 stefan Exp $' +! ! +LicenceBox initialize! diff -r a0e97ba3d7f4 -r f24a0853e754 Make.proto --- a/Make.proto Thu Sep 05 11:55:57 1996 +0200 +++ b/Make.proto Mon Sep 09 19:06:47 1996 +0200 @@ -1,4 +1,4 @@ -# $Header: /cvs/stx/stx/libwidg2/Make.proto,v 1.49 1996-07-22 23:25:28 cg Exp $ +# $Header: /cvs/stx/stx/libwidg2/Make.proto,v 1.50 1996-09-09 17:06:46 stefan Exp $ # # -------------- no need to change anything below ---------- @@ -70,6 +70,7 @@ ViewScroller.$(O) OBJS= \ + LicenceBox.$(O) \ Slider.$(O) \ HSlider.$(O) \ LEnterFld.$(O) \ diff -r a0e97ba3d7f4 -r f24a0853e754 resources/LicenceBox.rs --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/resources/LicenceBox.rs Mon Sep 09 19:06:47 1996 +0200 @@ -0,0 +1,20 @@ +; $Header: /cvs/stx/stx/libwidg2/resources/Attic/LicenceBox.rs,v 1.1 1996-09-09 17:06:47 stefan Exp $ +; +; LicenceBox +; +; messages & button labels +; +; this file contains 8bit national characters; +; DONT EDIT this file with an old vi ! +; + +'LICENCEFILE' '../../doc/online/english/LICENCE.STX' + +#if (Language == #german) or:[Language == #de] +'LICENCEFILE' '../../doc/online/german/LICENCE.STX' +'Please read the licence terms:' 'Bitte lesen Sie die Lizenzbedingungen:' +'accept licence terms' 'Lizenzbedingungen akzeptieren' +'reject licence terms' 'Lizenzbedingungen ablehnen' +#endif + +