Igor Timofeev 2cc71a63ca aefaef
2017-01-09 14:40:42 +03:00

62 lines
2.1 KiB
Lua
Executable File

local fs = require("filesystem")
local advancedLua = require("advancedLua")
local buffer = require("doubleBuffering")
local GUI = require("GUI")
local windows = require("windows")
local MineOSCore = require("MineOSCore")
local event = require("event")
local unicode = require("unicode")
-----------------------------------------------------------------------------------------------------------------------------
local window = {}
-----------------------------------------------------------------------------------------------------------------------------
local function loadModule(moduleID)
if fs.exists(window.modules[moduleID].path) then
local success, reason = dofile(window.modules[moduleID].path)
if success then
window.modules[moduleID].module = success
window.modules[moduleID].module.execute(window)
else
error("Error due module execution: " .. reason)
end
else
error("Mudule file \"" .. window.modules[moduleID].path "\" doesn't exists")
end
end
local function createWindow()
window = windows.empty("auto", "auto", math.floor(buffer.screen.width * 0.8), math.floor(buffer.screen.height * 0.7), 78, 24)
window:addPanel(1, 1, window.width, window.height, 0xEEEEEE).disabled = true
window.tabBar = window:addTabBar(1, 1, window.width, 3, 1, 0xDDDDDD, 0x262626, 0xCCCCCC, 0x262626, "Интерпретатор Lua", "События", "Память", "Диски", "BIOS")
window:addWindowActionButtons(2, 1, false)
window.drawingArea = window:addContainer(1, 4, window.width, window.height - 3, 0xEEEEEE)
window.tabBar.onTabSwitched = function(object, eventData)
end
window.resourcesPath = MineOSCore.getCurrentApplicationResourcesDirectory()
window.modules = {}
for file in fs.list(window.resourcesPath .. "Modules/") do
table.insert(window.modules, {
path = window.resourcesPath .. "Modules/" .. file
})
end
end
-----------------------------------------------------------------------------------------------------------------------------
createWindow()
loadModule(1)
window.drawShadow = true
window:draw()
buffer.draw()
window.drawShadow = false
window:handleEvents()