[Oberon] N-O: HOW2 SelectTextStretch given beg, end ?

Bernhard Egger bernhard at aces.snu.ac.kr
Sat Jan 13 05:51:27 MET 2007


For me, the following code works in Bluebottle Oberon:

moving the current selection by 5 characters:

PROCEDURE MoveSelection*;
VAR M: Oberon.SelectMsg;
BEGIN
	(* get current selection *)
	M.F := NIL; M.id := Oberon.get; M.time := -1; M.text := NIL;
	Display.Broadcast(M);
	
	(* move selection by 5 characters *)
	M.id := Oberon.set; M.beg := M.beg+5; M.end := M.end+5;
	Display.Broadcast(M)
END MoveSelection;



setting a new selection in the marked (*) text:

PROCEDURE SetSelection*;
VAR M: Oberon.SelectMsg;
BEGIN
	(* get marked text and select chars 5..10 *)
	M.sel := Oberon.MarkedFrame(); M.text := Oberon.MarkedText();
	M.id := Oberon.set; M.time := -1; M.beg := 5; M.end := 10;
	Display.Broadcast(M)
END SetSelection;

The complete source follows below.


--Bernhard


http://aces.snu.ac.kr/~bernhard/bluebottle/Select.Mod

AsciiCoder.DecodeFiles Select.Mod ~

gO0EUQ7M4mfHciRCUM7A_=60000000b0B1`m8H4000`@3m6K_9703h0000PA\56M0400<mfH[E6I
04003mVKd9gK\=7010`CbM6038Z00000K;DB595H0000R100000000000>30`7`800001lTHU9gK
^53<^<eH^iRA^A70?00230000P`000 at C?ADE<E48CE6KU=6Mk02:ZX281E5E8mTDP8RHU9b>P0EE
B1eCCE48R<GId1bLUaFISAGJ_i68TEFK_9b>PXB:=d at B=1eCBA58?9FIbmVK\02EUQ7Mca284UfL
`aFHi]C3=0UD?=DA4EUD51BC_IGICE6KU=6MYmVKZ\C3F5TDPdT>PlTHU9gK^ibDUaFISAGCcMf>
=8DA7UTC=T0:Z0bIUA78SEWLbEVKd1bLUaFISAGJ_i68ZTB39dT;61R>m0RC9ad>PdT;YA68jd38
?9FIbmVK^LFId]38=i2MYeFIPXC?PdB<k0BC^@GIhA78jd38>U4Ck02AY=7L\5FN^8TL_56IS5fL
dQBCY\C39d at 2XX28]mVMU1bLUaFISAGJ_i68RU78e0bHX5VLQ=6MU9gLPXB:=T at C^T6IPXC?PlTH
U9gK^ibLUAg>PdT;REfIPXC?PdT;REfI[Dc>PdT;Ui6IPXC?PdT;Ui6I[Dc>P at DJc17KQUW;29gK
QAfHQ=7MXdD:=DTC41BC_IGICE6KU=6MYmVKkd at 3@9eC3E4AE9EAP<EId=EI\EfHdUfK^Yb>=HE@
B1BCj0bCREVL_iV;CE6KU=6M==gIkdP at 5MDB>e at 2XX28WE6MPdFHb]FIT12MUQ7MP4VKT1bLUaFI
SA78SQFHb=78ehR;a038ZTB39dT;cE6KPXC?PlTHU9gK^iBCQ9gJUAVAb5FKUQB:k0BC^@GIhA78
jd38?9FIbmVK^dDHb]FITAEIhA7:Y\38=T at C^T6IPXC?PlTHU9gK^ibLUAg>PdT;dUFKU1R>m0B;
a\38=iRHUM68jd38e\38=iBI^A68jd38a0c>Pd at 24UfL`aFHiiR at bmFHT=FHcA7:=UB35i4AP<EI
d=EI\EfHdUfK^]C3=DTC41bDUaFISAW;=d@@c=FJY=dKTEVL^<dKTE6EUQ7MPX28=<ENcAGI]iRA
bEFIP<EI\EfHd1RO=d`DUaFISAW;=mVMU=EI\EfHdUfK^1B3CE6KU=6M^<EId=EI\EfHdUfK^1B3
=0$



More information about the Oberon mailing list