1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465 |
- Textm : module {
- PATH : con "/dis/acme/text.dis";
- init : fn(mods : ref Dat->Mods);
- # Text.what
- Columntag, Rowtag, Tag, Body : con iota;
- newtext : fn() : ref Text;
- Text : adt {
- file : cyclic ref Filem->File;
- frame : ref Framem->Frame;
- reffont : ref Dat->Reffont;
- org : int;
- q0 : int;
- q1 : int;
- what : int;
- tabstop : int;
- w : cyclic ref Windowm->Window;
- scrollr : Draw->Rect;
- lastsr : Draw->Rect;
- all : Draw->Rect;
- row : cyclic ref Rowm->Row;
- col : cyclic ref Columnm->Column;
- eq0 : int; # start of typing for ESC
- cq0 : int; # cache position
- ncache : int; # storage for insert
- ncachealloc : int;
- cache : string;
- nofill : int;
- init : fn(t : self ref Text, f : ref Filem->File, r : Draw->Rect, rf : ref Dat->Reffont, cols : array of ref Draw->Image);
- redraw : fn(t : self ref Text, r : Draw->Rect, f : ref Draw->Font, b : ref Draw->Image, n : int);
- insert : fn(t : self ref Text, n : int, s : string, p : int, q : int, r : int);
- bsinsert : fn(t : self ref Text, n : int, s : string, p : int, q : int) : (int, int);
- delete : fn(t : self ref Text, n : int, p : int, q : int);
- loadx : fn(t : self ref Text, n : int, b : string, q : int) : int;
- typex : fn(t : self ref Text, r : int, echomode : int);
- select : fn(t : self ref Text, d : int);
- select2 : fn(t : self ref Text, p : int, q : int) : (int, ref Text, int, int);
- select3 : fn(t : self ref Text, p: int, q : int) : (int, int, int);
- setselect : fn(t : self ref Text, p : int, q : int);
- setselect0 : fn(t : self ref Text, p : int, q : int);
- show : fn(t : self ref Text, p : int, q : int, dosel : int);
- fill : fn(t : self ref Text);
- commit : fn(t : self ref Text, n : int);
- setorigin : fn(t : self ref Text, p : int, q : int);
- readc : fn(t : self ref Text, n : int) : int;
- reset : fn(t : self ref Text);
- reshape : fn(t : self ref Text, r : Draw->Rect) : int;
- close : fn(t : self ref Text);
- framescroll : fn(t : self ref Text, n : int);
- select23 : fn(t : self ref Text, p : int, q : int, i, it : ref Draw->Image, n : int) : (int, int, int);
- forwnl : fn(t : self ref Text, p : int, q : int) : int;
- backnl : fn(t : self ref Text, p : int, q : int) : int;
- bswidth : fn(t : self ref Text, r : int) : int;
- doubleclick : fn(t : self ref Text, p : int, q : int) : (int, int);
- clickmatch : fn(t : self ref Text, p : int, q : int, r : int, n : int) : (int, int);
- columnate : fn(t : self ref Text, d : array of ref Dat->Dirlist, n : int);
- };
- framescroll : fn(f : ref Framem->Frame, dl : int);
- setalphabet: fn(s: string);
- };
|