[tekui-devel] tekui: greatly improved demo; Button now sets its own BorderStyl...

Timm S. Mueller tmueller at neoscientists.org
Sun Mar 23 18:35:34 CET 2008


details:   http://hg.teklib.org/tekui/rev/519f77cf735e
changeset: 375:519f77cf735e
user:      Timm S. Mueller <tmueller at neoscientists.org>
date:      Thu Mar 20 23:38:15 2008 +0100
description:
greatly improved demo; Button now sets its own BorderStyle; Canvas:
implemented KeepWinWidth, KeepMinHeight, FreeWidth, FreeHeight; CheckMark: now
sets alignment to left; FloatText: Width of longest word is now min width,
simplified logic; Gadget:new() removed; Handle: added checkFocus(), Mode
reverted to "inert"; MenuBar: VMax is now false; PopItem: cosmetic;
ScrollGroup: Canvas.ScrollGroup is now inserted automatically; Text: sets its
own BorderStyle and IBorderStyle now; Window: Fixes in Tab cycle logic; Label
class removed

diffs (truncated from 939 to 100 lines):

diff -r 08785d4cd7c5 -r 519f77cf735e TODO
--- a/TODO	Wed Mar 19 23:05:04 2008 +0100
+++ b/TODO	Thu Mar 20 23:38:15 2008 +0100
@@ -16,12 +16,12 @@
 === General ===
 
  * Alignment paramters: "left", "right", ...
-
+ * Clearify terminology: Caption, Label, Heading, Title
+ * FloatText styling options
  * Change theme, Application.ThemeName
- * Caption vs. Label
  * Layouter ported to C
  * C-Library
- * Cursor movement
+ * Cursor movement [ok]
  * Keyboard shortcuts
  * Localisation
  * Run in TEKlib-Lua-Interpreter
@@ -29,6 +29,8 @@
 
 === Bugs ===
 
+ * overlong group headings
+ * Foreign elements are getting hilited during move
  * Antialiased fonts not supported with Composite Extension
  * Initial Window refresh problem: layout/rendered twice
  * Initial Window refresh problem: not layout/rendered at all
diff -r 08785d4cd7c5 -r 519f77cf735e tek/app/ui/demo.lua
--- a/tek/app/ui/demo.lua	Wed Mar 19 23:05:04 2008 +0100
+++ b/tek/app/ui/demo.lua	Thu Mar 20 23:38:15 2008 +0100
@@ -2,9 +2,9 @@
 
 require "tek.lib.debug".level = 4
 local ui = require "tek.lib.ui"
-ui.DEBUG = true
-
-local notifications = ui.window:new {
+-- ui.DEBUG = true
+
+local notificationswindow = ui.window:new {
 	HMax = true,
 	VMax = true,
 	Id = "notifications-window",
@@ -44,7 +44,7 @@ local notifications = ui.window:new {
 	},
 }
 
-local anims = ui.window:new {
+local animswindow = ui.window:new {
 	Id = "anims-window",
 	Title = "Anims",
 	Status = "hidden",
@@ -63,7 +63,7 @@ local anims = ui.window:new {
 	},
 }
 
-local groups = ui.window:new {
+local groupswindow = ui.window:new {
 	Id = "groups-window",
 	Title = "Groups",
 	Status = "hidden",
@@ -161,64 +161,154 @@ local groups = ui.window:new {
 	},
 }
 
+local mainwindow = ui.window:new {
+	handleCloseMsg = function(self, msg)
+		self.Application:setValue("Status", "quit")
+	end,
+	Notifications = {
+		["Status"] = {
+			["hidden"] = {
+				{ ui.NOTIFY_APPLICATION, "setValue", "Status", "quit" },
+			},
+		},
+	},
+	HMax = true,
+	VMax = true,
+	Children = {
+		ui.MenuBar:new {
+			Children = {
+				ui.menuitem:new {
+					Label = "File",
+					Children = {
+						ui.menuitem:new {
+							Label = "Quit",
+							Notifications = {
+								Pressed = {
+									[false] = { { ui.NOTIFY_APPLICATION, "setValue", "Status", "quit" } },
+								},
+							},
+						},
+					},
+				},
+				ui.menuitem:new {
+					Label = "Help",
+					Children = {
+						ui.menuitem:new {
+							Label = "About...",


More information about the tekui-devel mailing list