diff --git a/wtest.lua.bak b/wtest.lua.bak deleted file mode 100644 index 306e20582..000000000 --- a/wtest.lua.bak +++ /dev/null @@ -1,284 +0,0 @@ -#!./koreader-base - -require "defaults" -print(package.path) -package.path = "./frontend/?.lua;./?.lua" -local UIManager = require("ui/uimanager") -local RenderText = require("ui/rendertext") -local Font = require("ui/font") -local Geom = require("ui/geometry") -local Menu = require("ui/widget/menu") -local Widget = require("ui/widget/widget") -local InfoMessage = require("ui/widget/infomessage") -local InputContainer = require("ui/widget/container/inputcontainer") -local CenterContainer = require("ui/widget/container/centercontainer") -local FrameContainer = require("ui/widget/container/framecontainer") -local ConfirmBox = require("ui/widget/confirmbox") -local TouchMenu = require("ui/widget/touchmenu") -local InputText = require("ui/widget/inputtext") -local DocumentRegistry = require("document/documentregistry") -local ReaderUI = require("ui/readerui") -local Dbg = require("dbg") -local Device = require("ui/device") -local Screen = require("ui/screen") - - ------------------------------------------------------ --- widget that paints the grid on the background ------------------------------------------------------ -TestGrid = Widget:new{} - -function TestGrid:paintTo(bb) - v_line = math.floor(bb:getWidth() / 50) - h_line = math.floor(bb:getHeight() / 50) - for i=1,h_line do - y_num = i*50 - RenderText:renderUtf8Text(bb, 0, y_num+10, Font:getFace("ffont", 12), y_num, true) - bb:paintRect(0, y_num, bb:getWidth(), 1, 10) - end - for i=1,v_line do - x_num = i*50 - RenderText:renderUtf8Text(bb, x_num, 10, Font:getFace("ffont", 12), x_num, true) - bb:paintRect(x_num, 0, 1, bb:getHeight(), 10) - end -end - ------------------------------------------------------ --- we create a widget that paints a background: ------------------------------------------------------ -Background = InputContainer:new{ - is_always_active = true, -- receive events when other dialogs are active - key_events = { - OpenDialog = { { "Press" } }, - OpenConfirmBox = { { "Del" } }, - QuitApplication = { { {"Home","Back"} } } - }, - -- contains a gray rectangular desktop - FrameContainer:new{ - background = 3, - bordersize = 0, - dimen = Screen:getSize(), - Widget:new{ - dimen = { - w = Screen:getWidth(), - h = Screen:getHeight(), - } - }, - } -} - -function Background:onOpenDialog() - UIManager:show(InfoMessage:new{ - text = "Example message.", - timeout = 10 - }) -end - -function Background:onOpenConfirmBox() - UIManager:show(ConfirmBox:new{ - text = "Please confirm delete" - }) -end - -function Background:onInputError() - UIManager:quit() -end - -function Background:onQuitApplication() - UIManager:quit() -end - - - ------------------------------------------------------ --- example widget: a clock ------------------------------------------------------ -Clock = FrameContainer:new{ - background = 0, - bordersize = 1, - margin = 0, - padding = 1 -} - -function Clock:schedFunc() - self[1]:free() - self[1] = self:getTextWidget() - UIManager:setDirty(self) - -- reschedule - -- TODO: wait until next real second shift - UIManager:scheduleIn(1, function() self:schedFunc() end) -end - -function Clock:onShow() - self[1] = self:getTextWidget() - self:schedFunc() -end - -function Clock:getTextWidget() - return CenterContainer:new{ - dimen = { w = 300, h = 25 }, - TextWidget:new{ - text = os.date("%H:%M:%S"), - face = Font:getFace("cfont", 12) - } - } -end - ------------------------------------------------------ --- a confirmbox box widget ------------------------------------------------------ -Quiz = ConfirmBox:new{ - text = "Tell me the truth, isn't it COOL?!", - width = 300, - ok_text = "Yes, of course.", - cancel_text = "No, it's ugly.", - cancel_callback = function() - UIManager:show(InfoMessage:new{ - text="You liar!", - }) - end, -} - ------------------------------------------------------ --- a menu widget ------------------------------------------------------ -menu_items = { - {text = "item1"}, - {text = "item2"}, - {text = "This is a very very log item whose length should exceed the width of the menu."}, - {text = "item3"}, - {text = "item4"}, - {text = "item5"}, - {text = "item6"}, - {text = "item7"}, - {text = "item8"}, - {text = "item9"}, - {text = "item10"}, - {text = "item11"}, - {text = "item12"}, - {text = "item13"}, - {text = "item14"}, - {text = "item15"}, - {text = "item16"}, - {text = "item17"}, -} -M = Menu:new{ - title = "Test Menu", - item_table = menu_items, - width = 500, - height = 600, -} - - ------------------------------------------------------ --- a reader view widget ------------------------------------------------------ -readerwindow = CenterContainer:new{ - dimen = Screen:getSize(), - FrameContainer:new{ - background = 0 - } -} -reader = ReaderUI:new{ - dialog = readerwindow, - dimen = Geom:new{ w = Screen:getWidth() - 100, h = Screen:getHeight() - 100 }, - document = DocumentRegistry:openDocument("test/2col.pdf") - --document = DocumentRegistry:openDocument("test/djvu3spec.djvu") - --document = DocumentRegistry:openDocument("./README.TXT") -} -readerwindow[1][1] = reader - - -touch_menu = TouchMenu:new{ - title = "Document menu", - width = Screen:getWidth(), - tab_item_table = { - { - icon = "resources/icons/appbar.pokeball.png", - { - text = "item1", - callback = function() - end, - }, - { - text = "item2", - callback = function() - end, - }, - { - text = "item3", - callback = function() - end, - }, - { - text = "item4", - callback = function() - end, - }, - { - text = "item5", - callback = function() - end, - }, - { - text = "item6", - callback = function() - end, - }, - { - text = "item7", - callback = function() - end, - }, - { - text = "item8", - callback = function() - end, - }, - { - text = "item9", - callback = function() - end, - }, - }, - { - icon = "resources/icons/appbar.page.corner.bookmark.png", - { - text = "item10", - callback = function() - end, - }, - { - text = "item11", - callback = function() - end, - }, - }, - { - icon = "resources/icons/appbar.home.png", - callback = function() - DEBUG("hello world!") - end - } - }, -} - -inputtext = InputText:new{ - width = 400, - height = 300, -} - ------------------------------------------------------------------------ --- you may want to uncomment following show calls to see the changes ------------------------------------------------------------------------ -UIManager:show(Background:new()) -UIManager:show(TestGrid) ---UIManager:show(Clock:new()) ---UIManager:show(M) ---UIManager:show(Quiz) ---UIManager:show(readerwindow) ---UIManager:show(touch_menu) ---UIManager:show(keyboard) -UIManager:show(inputtext) - -UIManager:run()