1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283 |
- MODULE ExampleTextWriter; (** AUTHOR "TF"; PURPOSE "Template/Example for component windows"; *)
- (** This program shows the implementation of a multi instance component containing window *)
- IMPORT
- Strings, WMGraphics, WMComponents, WMWindowManager,
- WMEditors, TextUtilities, Math;
- TYPE
- Window* = OBJECT (WMComponents.FormWindow)
- VAR editor : WMEditors.Editor;
- PROCEDURE &New*;
- BEGIN
- NEW(editor); editor.bounds.SetExtents(800, 700);
- editor.fillColor.Set(WMGraphics.White);
- Init(editor.bounds.GetWidth(), editor.bounds.GetHeight(), FALSE);
- SetContent(editor);
- WMWindowManager.DefaultAddWindow(SELF);
- SetTitle(Strings.NewString("TextWriter Example"));
- WriteToEditor;
- END New;
- PROCEDURE WriteToEditor;
- VAR
- tw : TextUtilities.TextWriter;
- i : LONGINT;
- buffer : ARRAY 256 OF CHAR;
- BEGIN
- NEW(tw, editor.text);
- tw.SetFontSize(20);
- tw.String("This is a simple text. Count from 0 to 10 : "); tw.Ln;
- FOR i := 0 TO 10 DO tw.Int(i, 5) END; tw.Ln;
- tw.SetFontStyle({WMGraphics.FontBold});
- tw.String("This is bold. ");
- tw.SetFontStyle({WMGraphics.FontItalic});
- tw.String("This is italic.");
- tw.SetFontStyle({WMGraphics.FontBold});
- tw.SetFontColor(WMGraphics.Red);
- tw.String("This is bold red."); tw.Ln;
- tw.SetBgColor(WMGraphics.Black);
- tw.SetFontColor(WMGraphics.White);
- tw.String("This is bold white on black");
- tw.Ln;
- tw.SetFontStyle({});
- tw.SetBgColor(WMGraphics.White);
- tw.SetFontColor(WMGraphics.Black);
- buffer := "This is a bit fancy! It modulates the vertical offset with a cosine function and fades out.";
- i := 0;
- tw.SetFontStyle({WMGraphics.FontBold});
- WHILE buffer[i] # 0X DO
- tw.SetFontColor(WMGraphics.RGBAToColor(i * 2, i * 2, i * 2, 0FFH));
- tw.SetVerticalOffset(ENTIER(15 * Math.cos(i/4)));
- tw.Char(buffer[i]);
- INC(i)
- END;
- tw.Update;
- END WriteToEditor;
- END Window;
- PROCEDURE Open*;
- VAR inst, i2 : Window;
- BEGIN
- NEW(inst);
- NEW(i2);
- i2.editor.SetText(inst.editor.text);
- END Open;
- END ExampleTextWriter.
- System.Free ExampleTextWriter ~
- ExampleTextWriter.Open
|