improve tabs
This commit is contained in:
Binary file not shown.
@@ -62,35 +62,42 @@ PROCEDURE drawTab (t: tTabs; id, x, y, width, height: INTEGER; s: ARRAY OF CHAR;
|
|||||||
CONST
|
CONST
|
||||||
btnCloseSize = 14;
|
btnCloseSize = 14;
|
||||||
VAR
|
VAR
|
||||||
x2, y2, color, closeColor, closeForeColor, textColor: INTEGER;
|
x2, y2, bgColor, closeColor, closeForeColor, textColor: INTEGER;
|
||||||
left, top: INTEGER;
|
left, top: INTEGER;
|
||||||
BEGIN
|
BEGIN
|
||||||
IF id = t.current THEN
|
IF id = t.current THEN
|
||||||
INC(height, curTabHeight - tabHeight);
|
INC(height, curTabHeight - tabHeight + 1);
|
||||||
DEC(y, curTabHeight - tabHeight)
|
DEC(y, curTabHeight - tabHeight + 1)
|
||||||
|
ELSE
|
||||||
|
INC(height);
|
||||||
|
DEC(y)
|
||||||
END;
|
END;
|
||||||
color := K.colors.work;
|
|
||||||
textColor := K.colors.work_text;
|
textColor := K.colors.work_text;
|
||||||
DEC(x); INC(width);
|
DEC(x); INC(width);
|
||||||
x2 := x + width - 1;
|
x2 := x + width - 1;
|
||||||
y2 := y + height - 1;
|
y2 := y + height - 1;
|
||||||
|
|
||||||
K.DrawLine(x, y + 1, x2 - 1, y + 1, K.colors.light);
|
|
||||||
//K.DrawRect(x, y + 2, width, height - 3, color); //seems to be unnecessary redraw
|
//K.DrawRect(x, y + 2, width, height - 3, color); //seems to be unnecessary redraw
|
||||||
K.DrawLine(x2, y + 1, x2, y2, K.colors.line);
|
K.DrawLine(x2, y + 1, x2, y2, K.colors.line);
|
||||||
K.DrawLine(x2 - 1, y2, x, y2, K.colors.line);
|
K.DrawLine(x2 - 1, y2, x, y2, K.colors.line);
|
||||||
|
|
||||||
IF id = t.current THEN
|
IF id = t.current THEN
|
||||||
|
bgColor := K.colors.light;
|
||||||
|
K.DrawRect(x, y + 1, width - 2, height - 3, bgColor);
|
||||||
K.DrawLine(x + 1, y, x2 - 1, y, K.colors.line);
|
K.DrawLine(x + 1, y, x2 - 1, y, K.colors.line);
|
||||||
|
K.DrawLine(x2 + 1, y + 2, x2 + 1, y2 - 1, K.colors.dark);
|
||||||
K.PutPixel(x, y, K.colors.dark);
|
K.PutPixel(x, y, K.colors.dark);
|
||||||
K.PutPixel(x + 1, y + 1, K.colors.dark);
|
K.PutPixel(x + 1, y + 1, K.colors.dark);
|
||||||
K.PutPixel(x2, y, K.colors.dark);
|
K.PutPixel(x2, y, K.colors.dark);
|
||||||
K.PutPixel(x2 - 1, y + 1, K.colors.dark)
|
K.PutPixel(x2 - 1, y + 1, K.colors.dark)
|
||||||
ELSE
|
ELSE
|
||||||
|
bgColor := K.colors.work;
|
||||||
|
K.DrawLine(x, y + 1, x2 - 1, y + 1, K.colors.light);
|
||||||
K.DrawLine(x, y, x2, y, K.colors.line)
|
K.DrawLine(x, y, x2, y, K.colors.line)
|
||||||
END;
|
END;
|
||||||
|
|
||||||
top := y + 3;
|
top := y + 4;
|
||||||
|
|
||||||
IF id # t.current THEN
|
IF id # t.current THEN
|
||||||
closeColor := K.colors.button;
|
closeColor := K.colors.button;
|
||||||
closeForeColor := K.colors.button_text
|
closeForeColor := K.colors.button_text
|
||||||
@@ -101,12 +108,13 @@ BEGIN
|
|||||||
END;
|
END;
|
||||||
K.DrawLine(x, y2, x, y + 1, K.colors.line);
|
K.DrawLine(x, y2, x, y + 1, K.colors.line);
|
||||||
|
|
||||||
K.DrawText866bk(x + K.fontWidth + K.fontWidth DIV 2, y + (height - K.fontHeight) DIV 2, textColor, color, s);
|
y := y + 1;
|
||||||
|
K.DrawText866bk(x + K.fontWidth + K.fontWidth DIV 2, y + (height - K.fontHeight) DIV 2, textColor, bgColor, s);
|
||||||
IF modified THEN
|
IF modified THEN
|
||||||
K.DrawText866bk(x + K.fontWidth DIV 2, y + (height - K.fontHeight) DIV 2, modifColor, color, "*")
|
K.DrawText866bk(x + K.fontWidth DIV 2, y + (height - K.fontHeight) DIV 2, modifColor, bgColor, "*")
|
||||||
END;
|
END;
|
||||||
K.CreateButton(id + ORD({30}) + btnID, x + 1, y + 1, width - 3, height - 3, 0, "");
|
K.CreateButton(id + ORD({30}) + btnID, x + 1, y, width - 3, height - 3, 0, "");
|
||||||
left := x + width - btnCloseSize - 5;
|
left := x + width - btnCloseSize - 6;
|
||||||
K.CreateButton(id + btnClose, left, top, btnCloseSize, btnCloseSize, closeColor, "");
|
K.CreateButton(id + btnClose, left, top, btnCloseSize, btnCloseSize, closeColor, "");
|
||||||
K.DrawLine(left + 5, top + 4, left + btnCloseSize - 4, top + btnCloseSize - 5, closeForeColor);
|
K.DrawLine(left + 5, top + 4, left + btnCloseSize - 4, top + btnCloseSize - 5, closeForeColor);
|
||||||
K.DrawLine(left + 4, top + 4, left + btnCloseSize - 4, top + btnCloseSize - 4, closeForeColor);
|
K.DrawLine(left + 4, top + 4, left + btnCloseSize - 4, top + btnCloseSize - 4, closeForeColor);
|
||||||
|
Reference in New Issue
Block a user