/script_binding/lua/demo_combo_box.lua

http://ftk.googlecode.com/ · Lua · 59 lines · 46 code · 13 blank · 0 comment · 2 complexity · 8b14403732a74b4dfddcc429e0ca0aa6 MD5 · raw file

  1. function OnQuit(button)
  2. for i=1, 4 do
  3. combo_box=button:Toplevel():Lookup(i)
  4. print(tostring(i) .. ":" .. combo_box:GetText())
  5. end
  6. Ftk.Quit()
  7. return RET_OK
  8. end
  9. function ComboBoxInit(combo_box, n)
  10. for i=1,n do
  11. combo_box:Append(nil, i .. " seconds");
  12. end
  13. end
  14. function AppInit()
  15. win=FtkAppWindow.Create()
  16. win:SetText("Demo combobox")
  17. win:SetAttr(FTK_ATTR_QUIT_WHEN_CLOSE)
  18. width=win:Width()
  19. height=win:Height()
  20. width = width/2 - 10;
  21. combo_box=FtkComboBox.Create(win, 0, height/4, width, 50)
  22. combo_box:SetId(1)
  23. combo_box:SetText("1 second")
  24. ComboBoxInit(combo_box, 10)
  25. combo_box=FtkComboBox.Create(win, width + 10, height/4, width, 50);
  26. combo_box:SetId(2)
  27. combo_box:SetText("2 second")
  28. ComboBoxInit(combo_box, 3)
  29. button=FtkButton.Create(win, width/2, height/2, width, 60);
  30. button:SetText("Quit")
  31. button:SetClickedListener("OnQuit")
  32. combo_box=FtkComboBox.Create(win, 0, 3*height/4+5, width, 50)
  33. combo_box:SetId(3)
  34. combo_box:SetText("3 second")
  35. ComboBoxInit(combo_box, 3)
  36. combo_box=FtkComboBox.Create(win, width + 10, 3*height/4+5, width, 50);
  37. combo_box:SetId(4)
  38. combo_box:SetText("4 second")
  39. ComboBoxInit(combo_box, 30)
  40. win:SetFocus(button)
  41. win:ShowAll(1)
  42. return 1
  43. end
  44. Ftk.Init(1, {"combobox"})
  45. AppInit()
  46. Ftk.Run()