examples/form_field.lua
changeset 68 742878c74b8e
parent 67 d33ca5572e91
child 69 ab6d4ee8974c
--- a/examples/form_field.lua	Sat Mar 28 19:43:12 2009 +0200
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,99 +0,0 @@
-
--- DATA FORM FIELD
-
-local F = { }
-local M = { }
-M.__index = M
-
--- field.new      -- create new field
--- field:index    -- get index
--- field:type     -- get type
--- field:name     -- get var
--- field:desc     -- get label, desc
--- field:value    -- get/set value
--- field:values   -- get values
--- field:clear    -- clear value
--- field:options  -- get options
--- field:required -- get required
-
-function F.new ( args )
-	local obj = {
-		t = args.type,
-		l = args.label,
-		d = args.desc,
-		o = args.options,  -- XXX
-		v = args.value,    -- XXX
-		r = args.required,
-		n = args.var,
-		i = args.index,    -- XXX
-	}
-	setmetatable ( obj, M )
-	return obj
-end
-
-function M.index ( obj )
-	return obj.i
-end
-
-function M.type ( obj )
-	return obj.t
-end
-
-function M.name ( obj )
-	return obj.n
-end
-
-function M.desc ( obj )
-	return obj.l, obj.d
-end
-
-function M.options ( obj )
-	return pairs ( obj.o )
-end
-
-function M.value ( obj, value )
-	local ftype = obj.t
-	if value == nil then
-		-- XXX
-		return obj.v
-	else
-		if ftype == 'jid-multi' or ftype == 'list-multi' or ftype == 'text-multi' then
-			table.insert ( obj.v, value )
-		else
-			obj.v = value
-		end
-	end
-end
-
-function M.values ( obj )
-	local ftype = obj.t
-	if ftype == 'jid-multi' or ftype == 'list-multi' or ftype == 'text-multi' then
-		return ipairs ( obj.v )
-	else
-		return
-			function ( arg )
-				if not arg then
-					return obj.v
-				else
-					return nil
-				end
-			end, nil
-	end
-end
-
-function M.clear ( obj )
-	local ftype = obj.t
-	if ftype == 'jid-multi' or ftype == 'list-multi' or ftype == 'text-multi' then
-		obj.v = { }
-	else
-		obj.v = ''
-	end
-end
-
-function M.required ( obj )
-	return obj.r
-end
-
-return F
-
--- vim: se ts=4: --