2016 Update
This commit is contained in:
parent
948b86eafa
commit
dcf5d15da3
7965 changed files with 139854 additions and 31002 deletions
|
|
@ -0,0 +1,76 @@
|
|||
MODULE RosettaGreys;
|
||||
IMPORT Views, Ports, Properties, Controllers, StdLog;
|
||||
|
||||
CONST
|
||||
(* orient values *)
|
||||
left = 1;
|
||||
right = 0;
|
||||
|
||||
TYPE
|
||||
View = POINTER TO RECORD
|
||||
(Views.View)
|
||||
END;
|
||||
|
||||
PROCEDURE LoadGreyPalette(VAR colors: ARRAY OF Ports.Color);
|
||||
VAR
|
||||
i, step, hue: INTEGER;
|
||||
BEGIN
|
||||
step := 255 DIV LEN(colors);
|
||||
FOR i := 1 TO LEN(colors) DO
|
||||
hue := i * step;
|
||||
colors[i - 1] := Ports.RGBColor(hue,hue,hue)
|
||||
END
|
||||
END LoadGreyPalette;
|
||||
|
||||
PROCEDURE (v: View) Restore(f: Views.Frame; l, t, r, b: INTEGER);
|
||||
VAR
|
||||
i, w, h: INTEGER;
|
||||
colors: POINTER TO ARRAY OF Ports.Color;
|
||||
|
||||
PROCEDURE Draw(row, cols: INTEGER; orient: INTEGER);
|
||||
VAR
|
||||
w: INTEGER;
|
||||
c: Ports.Color;
|
||||
BEGIN
|
||||
NEW(colors,cols);LoadGreyPalette(colors^);
|
||||
w := (r - l) DIV cols;
|
||||
FOR i := 1 TO cols DO
|
||||
IF orient = left THEN c := colors[cols - i] ELSE c := colors[i - 1] END;
|
||||
f.DrawRect((l + w) * (i - 1), t + (row - 1) * h, (l + w) * i, t + row * h,Ports.fill,c);
|
||||
END
|
||||
END Draw;
|
||||
BEGIN
|
||||
h := (b - t) DIV 4;
|
||||
Draw(1,8,right);
|
||||
Draw(2,16,left);
|
||||
Draw(3,32,right);
|
||||
Draw(4,64,left);
|
||||
END Restore;
|
||||
|
||||
PROCEDURE (v: View) HandlePropMsg(VAR msg: Properties.Message);
|
||||
CONST
|
||||
min = 5 * Ports.mm;
|
||||
max = 50 * Ports.mm;
|
||||
VAR
|
||||
stdProp: Properties.StdProp;
|
||||
prop: Properties.Property;
|
||||
BEGIN
|
||||
WITH msg: Properties.SizePref DO
|
||||
IF (msg.w = Views.undefined) OR (msg.h = Views.undefined) THEN
|
||||
msg.w := 100 * Ports.mm;
|
||||
msg.h := 35 * Ports.mm
|
||||
END
|
||||
ELSE (* ignore other messages *)
|
||||
END
|
||||
END HandlePropMsg;
|
||||
|
||||
PROCEDURE Deposit*;
|
||||
VAR
|
||||
v: View;
|
||||
BEGIN
|
||||
NEW(v);
|
||||
Views.Deposit(v)
|
||||
END Deposit;
|
||||
END RosettaGreys.
|
||||
|
||||
"RosettaGreys.Deposit; StdCmds.Open"
|
||||
Loading…
Add table
Add a link
Reference in a new issue