diff --git a/Applications.txt b/Applications.txt index cd17e874..48ca3be2 100644 --- a/Applications.txt +++ b/Applications.txt @@ -447,6 +447,13 @@ ["icon"]="IgorTimofeev/OpenComputers/master/Applications/Autorun/Icon.pic", ["version"]=1.0, }, + { + ["name"]="MineOS/Applications/AppStore", + ["url"]="IgorTimofeev/OpenComputers/master/Applications/AppStore/AppStore.lua", + ["type"]="Application", + ["icon"]="IgorTimofeev/OpenComputers/master/Applications/AppStore/Icon.pic", + ["version"]=1.0, + }, ----------------------------------------------------- Приложения с ресурсами -------------------------------------------------------------------------- diff --git a/Applications/AppStore/AppStore.lua b/Applications/AppStore/AppStore.lua new file mode 100644 index 00000000..70d5564d --- /dev/null +++ b/Applications/AppStore/AppStore.lua @@ -0,0 +1,2 @@ +local ecs = require("ECSAPI") +ecs.universalWindow("auto", "auto", 30, 0xeeeeee, true, {"EmptyLine"}, {"CenterText", 0x262626, "Hello world!"}, {"EmptyLine"}, {"Button", {0x880000, 0xffffff, "Hello!"}}) diff --git a/Applications/AppStore/Icon.pic b/Applications/AppStore/Icon.pic new file mode 100644 index 00000000..159faa33 Binary files /dev/null and b/Applications/AppStore/Icon.pic differ diff --git a/Applications/Finder/Finder.lua b/Applications/Finder/Finder.lua index 4c8e6092..ed11b7c5 100644 --- a/Applications/Finder/Finder.lua +++ b/Applications/Finder/Finder.lua @@ -25,17 +25,17 @@ local colors = { main = 0xffffff, leftBar = 0xeeeeee, leftBarSelection = ecs.colors.blue, - closes = {cross = 0xCC4C4C, hide = 0xDEDE6C, full = 0x57A64E}, + closes = {cross = ecs.colors.red, hide = ecs.colors.orange, full = ecs.colors.green}, topText = 0x262626, topButtons = 0xffffff, topButtonsText = 0x262626, - leftBarHeader = 0x262626, - leftBarList = 0x666666, + leftBarHeader = 0x000000, + leftBarList = 0x444444, selection = 0x555555, } local leftBar -local pathToConfig = "System/Finder/Config.cfg" +local pathToConfig = "MineOS/System/Finder/Config.cfg" local lang = {} @@ -46,6 +46,8 @@ local x, y, width, height, yEnd, xEnd, heightOfTopBar, widthOfLeftBar, heightOfL local widthOfBottom, widthOfIcon, heightOfIcon, xSpaceBetweenIcons, ySpaceBetweenIcons, xCountOfIcons, yCountOfIcons local fileList, fromLine, fromLineLeftBar = nil, 1, 1 local showSystemFiles, showHiddenFiles, showFileFormat +local oldPixelsOfMini, oldPixelsOfFullScreen +local isFullScreen ------------------------------------------------------------------------------------------------------------------ @@ -72,10 +74,12 @@ local function loadConfig() leftBar = { {"Title", "Избранное"}, {"Element", "Root", ""}, - {"Element", "Desktop", "System/OS/Desktop/"}, + {"Element", "System", "MineOS/System/"}, {"Element", "Libraries", "lib/"}, - {"Element", "Applications", "bin/"}, - {"Element", "System", "System/"}, + {"Element", "Scripts", "bin/"}, + {"Element", "Desktop", "MineOS/Desktop/"}, + {"Element", "Applications", "MineOS/Applications/"}, + {"Element", "Pictures", "MineOS/Pictures"}, {"Title", "", ""}, {"Title", "Диски"}, } @@ -168,15 +172,13 @@ end --Рисем цветные кружочки слева вверху local function drawCloses() - local symbol = "⮾" - gpu.setBackground(colors.topBar) - local yPos = y - ecs.colorText(x + 1, yPos , colors.closes.cross, symbol) - ecs.colorText(x + 3, yPos , colors.closes.hide, symbol) - ecs.colorText(x + 5, yPos , colors.closes.full, symbol) - newObj("Closes", 1, x + 1, yPos, x + 1, yPos) - newObj("Closes", 2, x + 3, yPos, x + 3, yPos) - newObj("Closes", 3, x + 5, yPos, x + 5, yPos) + local symbol = "⬤" + buffer.set(x + 1, y, colors.topBar, colors.closes.cross, symbol) + buffer.set(x + 3, y, colors.topBar, colors.closes.hide, symbol) + buffer.set(x + 5, y, colors.topBar, colors.closes.full, symbol) + newObj("Closes", 1, x + 1, y, x + 1, y) + newObj("Closes", 2, x + 3, y, x + 3, y) + newObj("Closes", 3, x + 5, y, x + 5, y) end --Рисуем строку поиска @@ -194,15 +196,15 @@ local function drawFsControl() if cyka then return 0x262626, 0xffffff else return 0xffffff, 0x262626 end end - name = "Формат"; newObj("FSButtons", 1, ecs.drawAdaptiveButton(xPos, yPos, 1, 0, name, getColors(showFileFormat))); xPos = xPos + unicode.len(name) + 3 - name = "Скрытые"; newObj("FSButtons", 2, ecs.drawAdaptiveButton(xPos, yPos, 1, 0, name, getColors(showHiddenFiles))); xPos = xPos + unicode.len(name) + 3 - name = "Системные"; newObj("FSButtons", 3, ecs.drawAdaptiveButton(xPos, yPos, 1, 0, name, getColors(showSystemFiles))); xPos = xPos + unicode.len(name) + 3 + -- name = "Формат"; newObj("FSButtons", 1, buffer.adaptiveButton(xPos, yPos, 1, 0, getColors(showFileFormat), name)); xPos = xPos + unicode.len(name) + 3 + -- name = "Скрытые"; newObj("FSButtons", 2, buffer.adaptiveButton(xPos, yPos, 1, 0, getColors(showHiddenFiles), name)); xPos = xPos + unicode.len(name) + 3 + -- name = "Системные"; newObj("FSButtons", 3, buffer.adaptiveButton(xPos, yPos, 1, 0, getColors(showSystemFiles), name)); xPos = xPos + unicode.len(name) + 3 end --Рисуем верхнюю часть local function drawTopBar() --Рисуем сам бар - ecs.square(x, y, width, heightOfTopBar, colors.topBar) + buffer.square(x, y, width, heightOfTopBar, colors.topBar, 0xffffff, " ") --Рисуем кнопочки drawCloses() --Рисуем титл @@ -210,9 +212,9 @@ local function drawTopBar() -- ecs.colorText(x + math.floor(width / 2 - unicode.len(text) / 2), y, colors.topText, text) --Рисуем кнопочки влево-вправо local xPos, yPos = x + 1, y + 1 - name = "<"; newObj("TopButtons", name, ecs.drawButton(xPos, yPos, 3, 1, name, colors.topButtons, colors.topButtonsText)) + name = "<"; newObj("TopButtons", name, buffer.button(xPos, yPos, 3, 1, colors.topButtons, colors.topButtonsText, name)) xPos = xPos + 4 - name = ">"; newObj("TopButtons", name, ecs.drawButton(xPos, yPos, 3, 1, name, colors.topButtons, colors.topButtonsText)) + name = ">"; newObj("TopButtons", name, buffer.button(xPos, yPos, 3, 1, colors.topButtons, colors.topButtonsText, name)) --Поиск рисуем --drawSearch() --Кнопочки контроля файловой системы рисуем @@ -222,7 +224,7 @@ end --Рисуем нижнюю полосочку с путем local function drawBottomBar() --Подложка - ecs.square(xMain, yEnd, widthOfBottom, 1, colors.leftBar) + buffer.square(xMain, yEnd, widthOfBottom, 1, colors.leftBar, 0xffffff, " ") --Создаем переменную строки истории local historyString = workPathHistory[currentWorkPathHistoryElement] if historyString == "" or historyString == "/" then @@ -234,7 +236,7 @@ local function drawBottomBar() end end --Рисуем ее - ecs.colorText(xMain + 1, yEnd, colors.topText, ecs.stringLimit("start", historyString, widthOfMain - 2)) + buffer.text(xMain + 1, yEnd, colors.topText, ecs.stringLimit("start", historyString, widthOfMain - 2)) end --Рисуем зону иконок @@ -247,7 +249,7 @@ local function drawMain(fromLine) buffer.square(xMain, yLeftBar, widthOfMain, heightOfMain, colors.main, 0xffffff, " ") --Рисуем скроллбарчик, епты бля! local scrollHeight = math.ceil(#fileList / xCountOfIcons); if scrollHeight == 0 then scrollHeight = 1 end - ecs.srollBar(xEnd, yLeftBar, 1, heightOfMain, scrollHeight, fromLine, colors.topBar, ecs.colors.blue) + buffer.scrollBar(xEnd, yLeftBar, 1, heightOfMain, scrollHeight, fromLine, colors.topBar, 0x555555) --Позиции отрисовки иконок local xPos, yPos = xMain + 1, yLeftBar + 1 --С какой иконки начинать отрисовку @@ -273,15 +275,14 @@ local function drawMain(fromLine) xPos = xMain + 1 yPos = yPos + heightOfIcon + ySpaceBetweenIcons end - buffer.draw() end --Рисуем левую часть local function drawLeftBar() obj["Favorites"] = {} --Рисуем подложку лефтбара - ecs.srollBar(x + widthOfLeftBar - 1, yLeftBar, 1, heightOfLeftBar, #leftBar, fromLineLeftBar, colors.topBar, ecs.colors.blue) - ecs.square(x, yLeftBar, widthOfLeftBar - 1, heightOfLeftBar, colors.leftBar) + buffer.square(x, yLeftBar, widthOfLeftBar, heightOfLeftBar, 0xffffff, 0xffffff, " ", 30) + buffer.scrollBar(x + widthOfLeftBar - 1, yLeftBar, 1, heightOfLeftBar, #leftBar, fromLineLeftBar, colors.topBar, 0x555555) --Коорды local xPos, yPos, limit = x + 1, yLeftBar, widthOfLeftBar - 3 @@ -291,17 +292,16 @@ local function drawLeftBar() if leftBar[i] then --Рисуем заголовок if leftBar[i][1] == "Title" then - ecs.colorText(xPos, yPos, colors.leftBarHeader, leftBar[i][2]) + buffer.text(xPos, yPos, colors.leftBarHeader, leftBar[i][2]) else --Делаем сразу строку local text = ecs.stringLimit("end", leftBar[i][2], limit) --Если текущий путь сопадает с путем фаворитса if leftBar[i][3] == workPathHistory[currentWorkPathHistoryElement] then - ecs.square(x, yPos, widthOfLeftBar - 1, 1, colors.leftBarSelection) - ecs.colorText(xPos + 1, yPos, 0xffffff, text ) - gpu.setBackground(colors.leftBar) + buffer.square(x, yPos, widthOfLeftBar - 1, 1, colors.leftBarSelection, 0xffffff, " ") + buffer.text(xPos + 1, yPos, 0xffffff, text) else - ecs.colorText(xPos + 1, yPos, colors.leftBarList,text ) + buffer.text(xPos + 1, yPos, colors.leftBarList,text ) end newObj("Favorites", i, x, yPos, x + widthOfLeftBar - 1, yPos, leftBar[i][3]) @@ -313,12 +313,24 @@ local function drawLeftBar() end end +local function drawShadows() + buffer.square(xEnd + 1, y + 1, 2, height, 0x000000, 0xffffff, " ", 60) + buffer.square(x + 2, yEnd + 1, width - 2, 1, 0x000000, 0xffffff, " ", 60) +end + --Рисуем вообще все -local function drawAll() +local function drawAll(force) + if isFullScreen then + buffer.paste(1, 1, oldPixelsOfFullScreen) + else + buffer.paste(x, y, oldPixelsOfMini) + end drawTopBar() drawBottomBar() drawLeftBar() drawMain(fromLine) + drawShadows() + buffer.draw(force) end --Назад по истории @@ -330,12 +342,9 @@ local function backToPast() getFileList(workPathHistory[currentWorkPathHistoryElement]) --Раб стол перерисовываем, блеа! fromLine = 1 - drawMain(fromLine) - drawBottomBar() - drawLeftBar() end --Кнопы перерисовываем, ды! - drawTopBar() + drawAll() end --Вперед по истории @@ -347,12 +356,9 @@ local function backToFuture() getFileList(workPathHistory[currentWorkPathHistoryElement]) --Раб стол перерисовываем, блеа! fromLine = 1 - drawMain(fromLine) - drawBottomBar() - drawLeftBar() end --Кнопы перерисовываем, ды! - drawTopBar() + drawAll() end --Добавить что-то в избранное @@ -360,298 +366,299 @@ local function addToFavourites(name, path) table.insert(leftBar, 2, {"Element", name, path}) end ---Главная функция -local function drawManager(xStart, yStart, widthOfManager, heightOfManager, startPath) - --Загружаем конфигурационный файл - loadConfig() - --Создаем дисковую парашу там вон - chkdsk() - --Задаем стартовые размеры - width = widthOfManager - height = heightOfManager - --Задаем стартовый путь - changePath(startPath) - --Даем возможность авторасчета координат - xStart, yStart = ecs.correctStartCoords(xStart, yStart, width, height) - x, y = xStart, yStart - --Пересчитываем все размеры - calculateSizes() - --Запоминаем старые пиксели, чтобы потом можно было отрисовать предыдущий интерфейс - local oldPixelsOfMini = ecs.rememberOldPixels(x, y, x + width - 1, y + height - 1) - local oldPixelsOfFullScreen = ecs.rememberOldPixels(1, 1, gpu.getResolution()) - local isFullScreen = false - --Рисуем вообще все - drawAll() +---------------------------------------------------------------------------------------------------------------------------------- - local clickedOnEmptySpace - while true do - local e = {event.pull()} - if e[1] == "touch" then - --Переменная, становящаяся ложью только в случае клика на какой-либо элемент, не суть какой - clickedOnEmptySpace = true - - --Перебираем иконки - for key in pairs(obj["Icons"]) do - if ecs.clickedAtArea(e[3], e[4], obj["Icons"][key][1], obj["Icons"][key][2], obj["Icons"][key][3], obj["Icons"][key][4]) then - --Рисуем иконку выделенную - buffer.square(obj["Icons"][key][1], obj["Icons"][key][2], widthOfIcon, heightOfIcon, colors.selection, 0xffffff, " ") - ecs.drawOSIcon(obj["Icons"][key][1], obj["Icons"][key][2], obj["Icons"][key][5], showFileFormat, 0xffffff) - buffer.draw() +local args = { ... } +-- local cykaImage = image.load("MineOS/Pictures/AhsokaTano.pic") +-- buffer.image(1, 1, cykaImage) - --Получаем путь иконки и ее формат - local path = obj["Icons"][key][5] - local fileFormat = ecs.getFileFormat(path) - local action +--Загружаем конфигурационный файл +loadConfig() +--Создаем дисковую парашу там вон +chkdsk() +--Задаем стартовые размеры +local startWidth, startHeight = 86, 25 +width = startWidth +height = startHeight +--Задаем стартовый путь +changePath(args[1] or "") +--Даем возможность авторасчета координат +local xStart, yStart = ecs.correctStartCoords("auto", "auto", width, height) +x, y = xStart, yStart +--Пересчитываем все размеры +calculateSizes() +--Запоминаем старые пиксели, чтобы потом можно было отрисовать предыдущий интерфейс +oldPixelsOfMini = buffer.copy(x, y, width + 2, height + 1) +oldPixelsOfFullScreen = buffer.copy(1, 1, buffer.screen.width, buffer.screen.height) +isFullScreen = false - --Левая кнопка мыши - if e[5] == 0 then - os.sleep(0.2) - --Думаем, че делать дальше - if fs.isDirectory(path) and fileFormat ~= ".app" then - changePath(path) - else - ecs.launchIcon(path) - if not isFullScreen then ecs.drawOldPixels(oldPixelsOfFullScreen) end - end - drawAll() - --А если правая - else - if fs.isDirectory(path) then - if fileFormat ~= ".app" then - action = context.menu(e[3], e[4], {"Добавить в избранное"},"-", {"Копировать", false, "^C"}, {"Вставить", (_G.clipboard == nil), "^V"}, "-", {"Переименовать"}, {"Создать ярлык"}, "-", {"Добавить в архив"}, "-", {"Удалить", false, "⌫"}) - else - action = context.menu(e[3], e[4], {"Показать содержимое"}, {"Добавить в избранное"},"-", {"Копировать", false, "^C"}, {"Вставить", (_G.clipboard == nil), "^V"}, "-", {"Переименовать"}, {"Создать ярлык"}, "-", {"Добавить в архив"}, "-", {"Удалить", false, "⌫"}) - end - else - action = context.menu(e[3], e[4], {"Редактировать"}, "-", {"Копировать", false, "^C"}, {"Вставить", (not _G.clipboard), "^V"}, "-", {"Переименовать"}, {"Создать ярлык"}, "-", {"Добавить в архив"}, {"Загрузить на Pastebin"}, "-", {"Удалить", false, "⌫"}) - end +--Рисуем вообще все +drawAll() - --АналИз действия - if action == "Редактировать" then - ecs.prepareToExit() - shell.execute("edit "..path) - ecs.drawOldPixels(oldPixelsOfFullScreen) - drawAll() - elseif action == "Добавить в избранное" then - addToFavourites(fs.name(path), path) - drawLeftBar() - drawMain(fromLine) - elseif action == "Показать содержимое" then - changePath(path) - drawAll() - elseif action == "Копировать" then - _G.clipboard = path - drawAll() - elseif action == "Вставить" then - ecs.copy(_G.clipboard, fs.path(path) or "") - getFileList(workPathHistory[currentWorkPathHistoryElement]) - drawAll() - elseif action == "Удалить" then - fs.remove(path) - getFileList(workPathHistory[currentWorkPathHistoryElement]) - drawAll() - elseif action == "Переименовать" then - ecs.rename(path) - getFileList(workPathHistory[currentWorkPathHistoryElement]) - drawAll() - elseif action == "Создать ярлык" then - ecs.createShortCut(fs.path(path).."/"..ecs.hideFileFormat(fs.name(path))..".lnk", path) - getFileList(workPathHistory[currentWorkPathHistoryElement]) - drawAll() - elseif action == "Добавить в архив" then - ecs.info("auto", "auto", "", "Архивация файлов...") - zip.archive(path, ecs.hideFileFormat(fs.name(path))..".zip") - getFileList(workPathHistory[currentWorkPathHistoryElement]) - drawAll() - elseif action == "Загрузить на Pastebin" then - shell.execute("Pastebin.app/Pastebin.lua upload " .. path) - else - --Рисуем иконку выделенную - buffer.square(obj["Icons"][key][1], obj["Icons"][key][2], widthOfIcon, heightOfIcon, colors.main, 0xffffff, " ") - ecs.drawOSIcon(obj["Icons"][key][1], obj["Icons"][key][2], obj["Icons"][key][5], showFileFormat, 0x000000) - buffer.draw() - end - end +local clickedOnEmptySpace +while true do + local e = {event.pull()} + if e[1] == "touch" then + --Переменная, становящаяся ложью только в случае клика на какой-либо элемент, не суть какой + clickedOnEmptySpace = true + + --Перебираем иконки + for key in pairs(obj["Icons"]) do + if ecs.clickedAtArea(e[3], e[4], obj["Icons"][key][1], obj["Icons"][key][2], obj["Icons"][key][3], obj["Icons"][key][4]) then + --Рисуем иконку выделенную + buffer.square(obj["Icons"][key][1], obj["Icons"][key][2], widthOfIcon, heightOfIcon, colors.selection, 0xffffff, " ") + ecs.drawOSIcon(obj["Icons"][key][1], obj["Icons"][key][2], obj["Icons"][key][5], showFileFormat, 0xffffff) + buffer.draw() - - --Кликнули не в жопу! - clickedOnEmptySpace = false - break - end - end + --Получаем путь иконки и ее формат + local path = obj["Icons"][key][5] + local fileFormat = ecs.getFileFormat(path) + local action - --ВНИМАНИЕ: ЖОПА!!!! - --КЛИКНУЛИ В ЖОПУ!!!!!! - if ecs.clickedAtArea(e[3], e[4], xMain, yLeftBar, xEnd, yEnd - 1) and clickedOnEmptySpace and e[5] == 1 then - action = context.menu(e[3], e[4], {"Новый файл"}, {"Новая папка"}, {"Новое приложение"}, "-", {"Вставить", (_G.clipboard == nil), "^V"}) - if action == "Новый файл" then - ecs.newFile(workPathHistory[currentWorkPathHistoryElement]) - getFileList(workPathHistory[currentWorkPathHistoryElement]) - ecs.drawOldPixels(oldPixelsOfFullScreen) - drawAll() - elseif action == "Новая папка" then - ecs.newFolder(workPathHistory[currentWorkPathHistoryElement]) - getFileList(workPathHistory[currentWorkPathHistoryElement]) - drawAll() - elseif action == "Вставить" then - ecs.copy(_G.clipboard, workPathHistory[currentWorkPathHistoryElement]) - getFileList(workPathHistory[currentWorkPathHistoryElement]) - drawAll() - elseif action == "Новое приложение" then - ecs.newApplication(workPathHistory[currentWorkPathHistoryElement]) - getFileList(workPathHistory[currentWorkPathHistoryElement]) - drawAll() - end - end - - --Перебираем всякую шнягу наверху - for key in pairs(obj["TopButtons"]) do - if ecs.clickedAtArea(e[3], e[4], obj["TopButtons"][key][1], obj["TopButtons"][key][2], obj["TopButtons"][key][3], obj["TopButtons"][key][4]) then - ecs.drawButton(obj["TopButtons"][key][1], obj["TopButtons"][key][2], 3, 1, key, colors.topButtonsText, colors.topButtons) + --Левая кнопка мыши + if e[5] == 0 then os.sleep(0.2) - if key == ">" then - backToFuture() - elseif key == "<" then - backToPast() - end - - break - end - end - - --Фаворитсы слева - for key in pairs(obj["Favorites"]) do - if ecs.clickedAtArea(e[3], e[4], obj["Favorites"][key][1], obj["Favorites"][key][2], obj["Favorites"][key][3], obj["Favorites"][key][4]) then - --Левая кнопка мыши - if e[5] == 0 then - changePath(obj["Favorites"][key][5]) + --Думаем, че делать дальше + if fs.isDirectory(path) and fileFormat ~= ".app" then + changePath(path) drawAll() else - local action = context.menu(e[3], e[4], {"Показать содержащую папку"}, "-",{"Удалить из избранного"}) - if action == "Удалить из избранного" then - table.remove(leftBar, key) - drawLeftBar() + ecs.launchIcon(path) + drawAll(true) + end + --А если правая + else + if fs.isDirectory(path) then + if fileFormat ~= ".app" then + action = context.menu(e[3], e[4], {"Добавить в избранное"},"-", {"Копировать", false, "^C"}, {"Вставить", (_G.clipboard == nil), "^V"}, "-", {"Переименовать"}, {"Создать ярлык"}, "-", {"Добавить в архив"}, "-", {"Удалить", false, "⌫"}) else - changePath(fs.path(leftBar[key][3]) or "") - drawAll() + action = context.menu(e[3], e[4], {"Показать содержимое"}, {"Добавить в избранное"},"-", {"Копировать", false, "^C"}, {"Вставить", (_G.clipboard == nil), "^V"}, "-", {"Переименовать"}, {"Создать ярлык"}, "-", {"Добавить в архив"}, "-", {"Удалить", false, "⌫"}) end + else + action = context.menu(e[3], e[4], {"Редактировать"}, "-", {"Копировать", false, "^C"}, {"Вставить", (not _G.clipboard), "^V"}, "-", {"Переименовать"}, {"Создать ярлык"}, "-", {"Добавить в архив"}, {"Загрузить на Pastebin"}, "-", {"Удалить", false, "⌫"}) end - break - end - end - - --Кнопочки красивые наверху слева круглые кароч вот хыыы - for key in pairs(obj["Closes"]) do - if ecs.clickedAtArea(e[3], e[4], obj["Closes"][key][1], obj["Closes"][key][2], obj["Closes"][key][3], obj["Closes"][key][4]) then - - - --Закрыть прогу - if key == 1 then - ecs.colorTextWithBack(obj["Closes"][key][1], obj["Closes"][key][2], ecs.colors.blue, colors.topBar, "⮾") - os.sleep(0.2) - saveConfig() - if isFullScreen then - ecs.drawOldPixels(oldPixelsOfFullScreen) - else - ecs.drawOldPixels(oldPixelsOfMini) - end - return - - --Пока ниче не делать - elseif key == 2 and isFullScreen then - ecs.colorTextWithBack(obj["Closes"][key][1], obj["Closes"][key][2], ecs.colors.blue, colors.topBar, "⮾") - os.sleep(0.2) - x, y, width, height = xStart, yStart, widthOfManager, heightOfManager - --Пересчитываем все размеры - calculateSizes() - --Рисуем старые пиксельсы из фулл скрина + --АналИз действия + if action == "Редактировать" then + ecs.prepareToExit() + shell.execute("edit "..path) ecs.drawOldPixels(oldPixelsOfFullScreen) - --Рисуем окно заново drawAll() - isFullScreen = false - --Масштаб - elseif key == 3 and not isFullScreen then - ecs.colorTextWithBack(obj["Closes"][key][1], obj["Closes"][key][2], ecs.colors.blue, colors.topBar, "⮾") - os.sleep(0.2) - --Задаем новые координаты окна - x = 1 - y = 1 - width, height = gpu.getResolution() - --Пересчитываем все размеры - calculateSizes() - --Рисуем окно заново + elseif action == "Добавить в избранное" then + addToFavourites(fs.name(path), path) drawAll() - isFullScreen = true - end - - break - end - end - - for key in pairs(obj["FSButtons"]) do - if ecs.clickedAtArea(e[3], e[4], obj["FSButtons"][key][1], obj["FSButtons"][key][2], obj["FSButtons"][key][3], obj["FSButtons"][key][4]) then - if key == 1 then - showFileFormat = not showFileFormat - elseif key == 2 then - showHiddenFiles = not showHiddenFiles + elseif action == "Показать содержимое" then + changePath(path) + drawAll() + elseif action == "Копировать" then + _G.clipboard = path + drawAll() + elseif action == "Вставить" then + ecs.copy(_G.clipboard, fs.path(path) or "") + getFileList(workPathHistory[currentWorkPathHistoryElement]) + drawAll() + elseif action == "Удалить" then + fs.remove(path) + getFileList(workPathHistory[currentWorkPathHistoryElement]) + drawAll() + elseif action == "Переименовать" then + ecs.rename(path) + getFileList(workPathHistory[currentWorkPathHistoryElement]) + drawAll() + elseif action == "Создать ярлык" then + ecs.createShortCut(fs.path(path).."/"..ecs.hideFileFormat(fs.name(path))..".lnk", path) + getFileList(workPathHistory[currentWorkPathHistoryElement]) + drawAll() + elseif action == "Добавить в архив" then + ecs.info("auto", "auto", "", "Архивация файлов...") + zip.archive(path, ecs.hideFileFormat(fs.name(path))..".zip") + getFileList(workPathHistory[currentWorkPathHistoryElement]) + drawAll() + elseif action == "Загрузить на Pastebin" then + shell.execute("System/Applications/Pastebin.app/Pastebin.lua upload " .. path) else - showSystemFiles = not showSystemFiles + --Рисуем иконку выделенную + buffer.square(obj["Icons"][key][1], obj["Icons"][key][2], widthOfIcon, heightOfIcon, colors.main, 0xffffff, " ") + ecs.drawOSIcon(obj["Icons"][key][1], obj["Icons"][key][2], obj["Icons"][key][5], showFileFormat, 0x000000) + buffer.draw() end - fromLine = 1 - getFileList(workPathHistory[currentWorkPathHistoryElement]) - drawAll() + end - break + + --Кликнули не в жопу! + clickedOnEmptySpace = false + break + end + end + + --ВНИМАНИЕ: ЖОПА!!!! + --КЛИКНУЛИ В ЖОПУ!!!!!! + if ecs.clickedAtArea(e[3], e[4], xMain, yLeftBar, xEnd, yEnd - 1) and clickedOnEmptySpace and e[5] == 1 then + action = context.menu(e[3], e[4], {"Новый файл"}, {"Новая папка"}, {"Новое приложение"}, "-", {"Вставить", (_G.clipboard == nil), "^V"}) + if action == "Новый файл" then + ecs.newFile(workPathHistory[currentWorkPathHistoryElement]) + getFileList(workPathHistory[currentWorkPathHistoryElement]) + ecs.drawOldPixels(oldPixelsOfFullScreen) + drawAll() + elseif action == "Новая папка" then + ecs.newFolder(workPathHistory[currentWorkPathHistoryElement]) + getFileList(workPathHistory[currentWorkPathHistoryElement]) + drawAll() + elseif action == "Вставить" then + ecs.copy(_G.clipboard, workPathHistory[currentWorkPathHistoryElement]) + getFileList(workPathHistory[currentWorkPathHistoryElement]) + drawAll() + elseif action == "Новое приложение" then + ecs.newApplication(workPathHistory[currentWorkPathHistoryElement]) + getFileList(workPathHistory[currentWorkPathHistoryElement]) + drawAll() + end + end + + --Перебираем всякую шнягу наверху + for key in pairs(obj["TopButtons"]) do + if ecs.clickedAtArea(e[3], e[4], obj["TopButtons"][key][1], obj["TopButtons"][key][2], obj["TopButtons"][key][3], obj["TopButtons"][key][4]) then + ecs.drawButton(obj["TopButtons"][key][1], obj["TopButtons"][key][2], 3, 1, key, colors.topButtonsText, colors.topButtons) + os.sleep(0.2) + if key == ">" then + backToFuture() + elseif key == "<" then + backToPast() + end + + break + end + end + + --Фаворитсы слева + for key in pairs(obj["Favorites"]) do + if ecs.clickedAtArea(e[3], e[4], obj["Favorites"][key][1], obj["Favorites"][key][2], obj["Favorites"][key][3], obj["Favorites"][key][4]) then + + changePath(obj["Favorites"][key][5]) + drawAll() + + --Левая кнопка мыши + if e[5] == 1 then + local action = context.menu(e[3], e[4], {"Показать содержащую папку"}, "-",{"Удалить из избранного"}) + if action == "Удалить из избранного" then + table.remove(leftBar, key) + drawAll() + elseif action == "Показать содержащую папку" then + changePath(fs.path(leftBar[key][3]) or "") + drawAll() + end + end + + break + end + end + + --Кнопочки красивые наверху слева круглые кароч вот хыыы + for key in pairs(obj["Closes"]) do + if ecs.clickedAtArea(e[3], e[4], obj["Closes"][key][1], obj["Closes"][key][2], obj["Closes"][key][3], obj["Closes"][key][4]) then + + + --Закрыть прогу + if key == 1 then + ecs.colorTextWithBack(obj["Closes"][key][1], obj["Closes"][key][2], ecs.colors.blue, colors.topBar, "⮾") + os.sleep(0.2) + saveConfig() + if isFullScreen then + buffer.paste(1, 1, oldPixelsOfFullScreen) + buffer.draw() + else + buffer.paste(x, y, oldPixelsOfMini) + buffer.draw() + end + return + + --Пока ниче не делать + elseif key == 2 and isFullScreen then + ecs.colorTextWithBack(obj["Closes"][key][1], obj["Closes"][key][2], ecs.colors.blue, colors.topBar, "⮾") + os.sleep(0.2) + x, y, width, height = xStart, yStart, startWidth, startHeight + isFullScreen = false + --Пересчитываем все размеры + calculateSizes() + --Рисуем старые пиксельсы из фулл скрина + buffer.paste(1, 1, oldPixelsOfFullScreen) + --Рисуем окно заново + drawAll() + --Масштаб + elseif key == 3 and not isFullScreen then + ecs.colorTextWithBack(obj["Closes"][key][1], obj["Closes"][key][2], ecs.colors.blue, colors.topBar, "⮾") + os.sleep(0.2) + --Задаем новые координаты окна + x = 1 + y = 1 + width, height = gpu.getResolution() + isFullScreen = true + --Пересчитываем все размеры + calculateSizes() + --Рисуем окно заново + drawAll() + end + + break + end + end + + -- for key in pairs(obj["FSButtons"]) do + -- if ecs.clickedAtArea(e[3], e[4], obj["FSButtons"][key][1], obj["FSButtons"][key][2], obj["FSButtons"][key][3], obj["FSButtons"][key][4]) then + -- if key == 1 then + -- showFileFormat = not showFileFormat + -- elseif key == 2 then + -- showHiddenFiles = not showHiddenFiles + -- else + -- showSystemFiles = not showSystemFiles + -- end + -- fromLine = 1 + -- getFileList(workPathHistory[currentWorkPathHistoryElement]) + -- drawAll() + + -- break + -- end + -- end + + elseif e[1] == "component_added" and e[3] == "filesystem" then + chkdsk() + drawAll() + elseif e[1] == "component_removed" and e[3] == "filesystem" then + chkdsk() + changePath("") + drawAll() + elseif e[1] == "scroll" then + --Если скроллим в зоне иконок + if ecs.clickedAtArea(e[3], e[4], xMain, yLeftBar, xEnd, yEnd - 1) then + if e[5] == 1 then + if fromLine > 1 then + fromLine = fromLine - 1 + drawMain(fromLine) + buffer.draw() + end + else + if fromLine < (math.ceil(#fileList / xCountOfIcons)) then + fromLine = fromLine + 1 + drawMain(fromLine) + buffer.draw() end end - elseif e[1] == "component_added" and e[3] == "filesystem" then - chkdsk() - drawLeftBar() - elseif e[1] == "component_removed" and e[3] == "filesystem" then - chkdsk() - changePath("") - drawAll() - elseif e[1] == "scroll" then - --Если скроллим в зоне иконок - if ecs.clickedAtArea(e[3], e[4], xMain, yLeftBar, xEnd, yEnd - 1) then - if e[5] == 1 then - if fromLine > 1 then - fromLine = fromLine - 1 - drawMain(fromLine) - end - else - if fromLine < (math.ceil(#fileList / xCountOfIcons)) then - fromLine = fromLine + 1 - drawMain(fromLine) - end + --А если в зоне лефтбара + elseif ecs.clickedAtArea(e[3], e[4], x, yLeftBar, x + widthOfLeftBar - 1, yEnd) then + if e[5] == 1 then + if fromLineLeftBar > 1 then + fromLineLeftBar = fromLineLeftBar - 1 + drawAll() end - - --А если в зоне лефтбара - elseif ecs.clickedAtArea(e[3], e[4], x, yLeftBar, x + widthOfLeftBar - 1, yEnd) then - if e[5] == 1 then - if fromLineLeftBar > 1 then - fromLineLeftBar = fromLineLeftBar - 1 - drawLeftBar() - end - else - if fromLineLeftBar < #leftBar then - fromLineLeftBar = fromLineLeftBar + 1 - drawLeftBar() - end + else + if fromLineLeftBar < #leftBar then + fromLineLeftBar = fromLineLeftBar + 1 + drawAll() end end end end end ------------------------------------------------------------------------------------------------------------------- - -local args = {...} -drawManager("auto", "auto", 84, 28, args[1] or "") - - - - diff --git a/MineOS/Icons/Archive.pic b/MineOS/Icons/Archive.pic index 809352df..d0f035c8 100644 Binary files a/MineOS/Icons/Archive.pic and b/MineOS/Icons/Archive.pic differ diff --git a/MineOS/Icons/Archive.png b/MineOS/Icons/Archive.png deleted file mode 100644 index c9757268..00000000 --- a/MineOS/Icons/Archive.png +++ /dev/null @@ -1,4 +0,0 @@ -ffffff cccccc # ffffff 000000 ffffff 3c3c3c ║ ffffff 000000 ffffff 000000 2d2d2d ffffff ▄ 2d2d2d ffffff ffffff cccccc # -ffffff cccccc # ffffff 000000 ffffff 3c3c3c ║ ffffff 000000 ffffff 2d2d2d ffffff 2d2d2d ffffff 2d2d2d ffffff cccccc # -ffffff cccccc # 3c3c3c ffffff z 3c3c3c ffffff i 3c3c3c ffffff p 3c3c3c ffffff ffffff 000000 ffffff 000000 ffffff cccccc # -ffffff cccccc # ffffff 2d2d2d ffffff 3c3c3c ║ ffffff 000000 ffffff 000000 ffffff 000000 ffffff 000000 ffffff cccccc # diff --git a/MineOS/Icons/Config.pic b/MineOS/Icons/Config.pic index 502b87f6..894317a8 100644 Binary files a/MineOS/Icons/Config.pic and b/MineOS/Icons/Config.pic differ diff --git a/MineOS/Icons/Config.png b/MineOS/Icons/Config.png deleted file mode 100644 index b5b2eba6..00000000 --- a/MineOS/Icons/Config.png +++ /dev/null @@ -1,4 +0,0 @@ -ffffff cccccc # ffffff a5a5a5 x ffffff a5a5a5 y ffffff a5a5a5 u ffffff a5a5a5 = ffffff a5a5a5 1 ffffff a5a5a5 9 ffffff cccccc # -ffffff cccccc # ffffff a5a5a5 b ffffff a5a5a5 l ffffff a5a5a5 a ffffff a5a5a5 = ffffff a5a5a5 n ffffff a5a5a5 o ffffff cccccc # -ffffff cccccc # ffffff a5a5a5 1 ffffff a5a5a5 = ffffff a5a5a5 t ffffff a5a5a5 r ffffff a5a5a5 u ffffff a5a5a5 e ffffff cccccc # -ffffff cccccc # ffffff 990000 C ffffff 990000 o ffffff 990000 n ffffff 990000 f ffffff 990000 i ffffff 990000 g ffffff cccccc # diff --git a/MineOS/Icons/FileNotExists.png b/MineOS/Icons/FileNotExists.png deleted file mode 100644 index 7128e5f5..00000000 --- a/MineOS/Icons/FileNotExists.png +++ /dev/null @@ -1,4 +0,0 @@ -ffffff 000000 ffffff 000000 ffffff 000000 ffffff 000000 ffffff 000000 ffffff 000000 ffffff 000000 ffffff 000000 -ffffff 990000 F ffffff 990000 i ffffff 990000 l ffffff 990000 e ffffff 990000 ffffff 990000 n ffffff 990000 o ffffff 990000 t -ffffff 000000 ffffff 990000 e ffffff 990000 x ffffff 990000 i ffffff 990000 s ffffff 990000 t ffffff 990000 s ffffff 000000 -ffffff 000000 ffffff 000000 ffffff 000000 ffffff 000000 ffffff 000000 ffffff 000000 ffffff 000000 ffffff 000000 diff --git a/MineOS/Icons/Finger.png b/MineOS/Icons/Finger.png deleted file mode 100644 index 281f5686..00000000 --- a/MineOS/Icons/Finger.png +++ /dev/null @@ -1,15 +0,0 @@ -ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # -ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # 000000 ffffff 000000 ffffff 000000 ffffff 000000 ffffff 000000 ffffff 000000 ffffff 000000 ffffff ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # -ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # 000000 ffffff 000000 ffffff 000000 ffffff ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # 000000 ffffff 000000 ffffff 000000 ffffff ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # -ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # 000000 ffffff 000000 ffffff 000000 ffffff ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # 000000 ffffff 000000 ffffff 000000 ffffff 000000 ffffff ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # 000000 ffffff 000000 ffffff ffffff cccccc # ffffff cccccc # ffffff cccccc # -ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # 000000 ffffff 000000 ffffff ffffff cccccc # ffffff cccccc # ffffff cccccc # 000000 ffffff 000000 ffffff 000000 ffffff 000000 ffffff ffffff cccccc # ffffff cccccc # 000000 ffffff 000000 ffffff 000000 ffffff 000000 ffffff ffffff cccccc # ffffff cccccc # ffffff cccccc # 000000 ffffff 000000 ffffff ffffff cccccc # ffffff cccccc # -ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # 000000 ffffff 000000 ffffff ffffff cccccc # ffffff cccccc # ffffff cccccc # 000000 ffffff 000000 ffffff ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # 000000 ffffff 000000 ffffff ffffff cccccc # ffffff cccccc # 000000 ffffff ffffff cccccc # ffffff cccccc # -ffffff cccccc # ffffff cccccc # ffffff cccccc # 000000 ffffff 000000 ffffff ffffff cccccc # ffffff cccccc # ffffff cccccc # 000000 ffffff 000000 ffffff ffffff cccccc # ffffff cccccc # ffffff cccccc # 000000 ffffff 000000 ffffff 000000 ffffff 000000 ffffff 000000 ffffff 000000 ffffff ffffff cccccc # ffffff cccccc # 000000 ffffff ffffff cccccc # ffffff cccccc # 000000 ffffff 000000 ffffff ffffff cccccc # -ffffff cccccc # ffffff cccccc # ffffff cccccc # 000000 ffffff ffffff cccccc # ffffff cccccc # ffffff cccccc # 000000 ffffff ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # 000000 ffffff 000000 ffffff ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # 000000 ffffff 000000 ffffff ffffff cccccc # 000000 ffffff 000000 ffffff ffffff cccccc # ffffff cccccc # 000000 ffffff ffffff cccccc # -ffffff cccccc # ffffff cccccc # ffffff cccccc # 000000 ffffff ffffff cccccc # ffffff cccccc # ffffff cccccc # 000000 ffffff 000000 ffffff ffffff cccccc # ffffff cccccc # 000000 ffffff ffffff cccccc # ffffff cccccc # ffffff cccccc # 000000 ffffff 000000 ffffff ffffff cccccc # ffffff cccccc # 000000 ffffff ffffff cccccc # ffffff cccccc # 000000 ffffff ffffff cccccc # ffffff cccccc # 000000 ffffff 000000 ffffff -ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # 000000 ffffff ffffff cccccc # ffffff cccccc # ffffff cccccc # 000000 ffffff ffffff cccccc # ffffff cccccc # 000000 ffffff 000000 ffffff ffffff cccccc # ffffff cccccc # ffffff cccccc # 000000 ffffff ffffff cccccc # ffffff cccccc # 000000 ffffff ffffff cccccc # ffffff cccccc # 000000 ffffff ffffff cccccc # ffffff cccccc # 000000 ffffff ffffff cccccc # -ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # 000000 ffffff 000000 ffffff ffffff cccccc # ffffff cccccc # 000000 ffffff ffffff cccccc # ffffff cccccc # ffffff cccccc # 000000 ffffff ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # 000000 ffffff 000000 ffffff ffffff cccccc # 000000 ffffff ffffff cccccc # ffffff cccccc # 000000 ffffff 000000 ffffff ffffff cccccc # -ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # 000000 ffffff ffffff cccccc # ffffff cccccc # 000000 ffffff 000000 ffffff ffffff cccccc # ffffff cccccc # ffffff cccccc # 000000 ffffff ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # 000000 ffffff ffffff cccccc # 000000 ffffff ffffff cccccc # ffffff cccccc # ffffff cccccc # 000000 ffffff ffffff cccccc # ffffff cccccc # -ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # 000000 ffffff 000000 ffffff ffffff cccccc # ffffff cccccc # 000000 ffffff 000000 ffffff ffffff cccccc # ffffff cccccc # 000000 ffffff 000000 ffffff ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # 000000 ffffff 000000 ffffff ffffff cccccc # 000000 ffffff 000000 ffffff ffffff cccccc # ffffff cccccc # ffffff cccccc # -ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # 000000 ffffff 000000 ffffff ffffff cccccc # ffffff cccccc # 000000 ffffff 000000 ffffff ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # 000000 ffffff 000000 ffffff 000000 ffffff ffffff cccccc # 000000 ffffff 000000 ffffff ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # -ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # 000000 ffffff 000000 ffffff ffffff cccccc # ffffff cccccc # 000000 ffffff 000000 ffffff ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # 000000 ffffff ffffff cccccc # ffffff cccccc # 000000 ffffff 000000 ffffff ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # diff --git a/MineOS/Icons/Floppy.png b/MineOS/Icons/Floppy.png deleted file mode 100644 index 2ea6972d..00000000 --- a/MineOS/Icons/Floppy.png +++ /dev/null @@ -1,4 +0,0 @@ -99ff80 ffffff a5a5a5 ffffff a5a5a5 ffffff a5a5a5 ffffff a5a5a5 ffffff a5a5a5 000000 * a5a5a5 ffffff ffffff cccccc # -99ff80 ffffff 99ff80 a5a5a5 ▀ 99ff80 a5a5a5 ▀ 99ff80 a5a5a5 ▀ 99ff80 a5a5a5 ▀ 99ff80 a5a5a5 ▀ 99ff80 a5a5a5 ▀ 99ff80 ffffff -99ff80 ffffff ffffff b4b4b4 - ffffff b4b4b4 - ffffff b4b4b4 - ffffff b4b4b4 - ffffff b4b4b4 - ffffff b4b4b4 - 99ff80 ffffff -99ff80 ffffff ffffff b4b4b4 - ffffff b4b4b4 - ffffff b4b4b4 - ffffff b4b4b4 - ffffff b4b4b4 - ffffff b4b4b4 - 99ff80 ffffff diff --git a/MineOS/Icons/Folder.pic b/MineOS/Icons/Folder.pic index 48befd2c..bea0b347 100644 Binary files a/MineOS/Icons/Folder.pic and b/MineOS/Icons/Folder.pic differ diff --git a/MineOS/Icons/Folder.png b/MineOS/Icons/Folder.png deleted file mode 100644 index 05080b49..00000000 --- a/MineOS/Icons/Folder.png +++ /dev/null @@ -1,4 +0,0 @@ -ffff80 ffffff ffff80 ffffff ffff80 ffffff ffff80 ffffff ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # -ffff80 000000 - ffff80 000000 - ffff80 000000 - ffff80 000000 - ffff80 000000 - ffff80 000000 - ffff80 000000 - ffff80 000000 - -ffff80 ffffff ffff80 ffffff ffff80 ffffff ffff80 ffffff ffff80 ffffff ffff80 ffffff ffff80 ffffff ffff80 ffffff -ffff80 000000 ffff80 000000 F ffff80 000000 o ffff80 000000 l ffff80 000000 d ffff80 000000 e ffff80 000000 r ffff80 ffffff diff --git a/MineOS/Icons/HDD.png b/MineOS/Icons/HDD.png deleted file mode 100644 index cfa2343a..00000000 --- a/MineOS/Icons/HDD.png +++ /dev/null @@ -1,4 +0,0 @@ -ffffff cccccc # f0f0f0 000000 ● f0f0f0 ffffff f0f0f0 ffffff f0f0f0 ffffff f0f0f0 ffffff f0f0f0 000000 ● ffffff cccccc # -ffffff cccccc # e1e1e1 ffffff e1e1e1 000000 ┌ e1e1e1 000000 ─ e1e1e1 000000 ─ e1e1e1 000000 ┐ e1e1e1 000000 ffffff cccccc # -ffffff cccccc # d2d2d2 ffffff d2d2d2 000000 └ d2d2d2 000000 ─ d2d2d2 000000 ─ d2d2d2 000000 ┘ d2d2d2 ffffff ffffff cccccc # -ffffff cccccc # c3c3c3 000000 ● c3c3c3 000000 c3c3c3 99ff40 * c3c3c3 ffff40 * c3c3c3 ffffff c3c3c3 000000 ● ffffff cccccc # diff --git a/MineOS/Icons/Image.pic b/MineOS/Icons/Image.pic index e2e89868..09d246c6 100644 Binary files a/MineOS/Icons/Image.pic and b/MineOS/Icons/Image.pic differ diff --git a/MineOS/Icons/Image.png b/MineOS/Icons/Image.png deleted file mode 100644 index 92127595..00000000 --- a/MineOS/Icons/Image.png +++ /dev/null @@ -1,4 +0,0 @@ -ffffff cccccc # ff0000 000000 ff9200 000000 ffff00 000000 33ff00 000000 00dbff 000000 6600ff 000000 ffffff cccccc # -ffffff cccccc # ff0000 000000 ff9200 000000 ffff00 000000 33ff00 000000 00dbff 000000 6600ff 000000 ffffff cccccc # -ffffff cccccc # ff0000 000000 ff9200 000000 ffff00 000000 33ff00 000000 00dbff 000000 6600ff 000000 ffffff cccccc # -ffffff cccccc # ffffff 000000 ffffff 2d2d2d . ffffff 2d2d2d p ffffff 2d2d2d n ffffff 2d2d2d g ffffff 000000 ffffff cccccc # diff --git a/MineOS/Icons/ImageJPG.png b/MineOS/Icons/ImageJPG.png deleted file mode 100644 index 1dd65d96..00000000 --- a/MineOS/Icons/ImageJPG.png +++ /dev/null @@ -1,4 +0,0 @@ -ffffff cccccc # ff0000 000000 ff9200 000000 ffff00 000000 33ff00 000000 00dbff 000000 6600ff 000000 ffffff cccccc # -ffffff cccccc # ff0000 000000 ff9200 000000 ffff00 000000 33ff00 000000 00dbff 000000 6600ff 000000 ffffff cccccc # -ffffff cccccc # ff0000 000000 ff9200 000000 ffff00 000000 33ff00 000000 00dbff 000000 6600ff 000000 ffffff cccccc # -ffffff cccccc # ffffff 000000 ffffff 2d2d2d . ffffff 2d2d2d j ffffff 2d2d2d p ffffff 2d2d2d g ffffff 000000 ffffff cccccc # diff --git a/MineOS/Icons/Love.png b/MineOS/Icons/Love.png deleted file mode 100644 index 49ccd16f..00000000 --- a/MineOS/Icons/Love.png +++ /dev/null @@ -1,17 +0,0 @@ -ffffff cccccc # ffffff cccccc # 003f49 338592 003f49 338592 003f49 338592 003f49 338592 003f49 338592 003f49 338592 003f49 338592 003f49 338592 003f49 338592 003f49 338592 003f49 338592 003f49 338592 003f49 338592 003f49 338592 003f49 ffffff 003f49 ffffff 003f49 ffffff 003f49 ffffff 003f49 ffffff 003f49 ffffff 003f49 ffffff 003f49 ffffff 003f49 ffffff 003f49 ffffff 003f49 ffffff 003f49 ffffff 003f49 ffffff 003f49 ffffff 003f49 ffffff 003f49 ffffff 003f49 ffffff 003f49 ffffff ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # -ffffff cccccc # ffffff cccccc # 003f49 338592 003f49 338592 338592 003f49 338592 003f49 003f49 338592 003f49 338592 338592 003f49 338592 003f49 003f49 338592 003f49 338592 33ff66 0092ff 33ff66 0092ff 33ff66 0092ff 33ff66 0092ff 33ff66 0092ff 33ff66 0092ff 003f49 338592 003f49 338592 338592 003f49 338592 003f49 003f49 338592 003f49 338592 336d3f 004936 336d3f 004936 336d3f 004936 336d3f 004936 003f49 338592 003f49 338592 338592 003f49 338592 003f49 003f49 ffffff 003f49 ffffff ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # -ffffff cccccc # ffffff cccccc # 003f49 338592 003f49 338592 338592 003f49 338592 003f49 003f49 338592 003f49 338592 338592 003f49 338592 003f49 003f49 338592 003f49 338592 003f49 338592 003f49 338592 003f49 338592 003f49 338592 003f49 338592 003f49 338592 003f49 338592 003f49 338592 338592 003f49 338592 003f49 003f49 338592 003f49 338592 003f49 338592 003f49 338592 003f49 338592 003f49 338592 003f49 338592 003f49 338592 338592 003f49 338592 003f49 003f49 ffffff 003f49 ffffff ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # -ffffff cccccc # ffffff cccccc # 003f49 338592 003f49 338592 338592 003f49 338592 003f49 003f49 338592 003f49 338592 339286 004936 339286 004936 339286 004936 339286 004936 339286 004936 339286 004936 339286 004936 339286 004936 339286 004936 339286 004936 339286 004936 339286 004936 339286 004936 338592 003f49 338592 003f49 338592 003f49 338592 003f49 338592 003f49 338592 003f49 338592 003f49 338592 003f49 338592 003f49 338592 003f49 338592 003f49 003f49 ffffff 003f49 ffffff ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # -ffffff cccccc # ffffff cccccc # 003f49 338592 003f49 338592 338592 003f49 338592 003f49 003f49 338592 003f49 338592 003f49 338592 003f49 338592 003f49 338592 003f49 338592 003f49 338592 003f49 338592 003f49 338592 003f49 338592 004936 00926d 004936 00926d 004936 00926d 003f49 338592 003f49 338592 003f49 338592 003f49 338592 003f49 338592 003f49 338592 003f49 338592 003f49 338592 003f49 338592 003f49 338592 003f49 338592 003f49 338592 003f49 338592 003f49 ffffff 003f49 ffffff ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # -ffffff cccccc # ffffff cccccc # 003f49 338592 003f49 338592 338592 003f49 338592 003f49 003f49 338592 003f49 338592 338592 003f49 338592 003f49 338592 003f49 338592 003f49 003f49 338592 003f49 338592 1e1e1e 004936 1e1e1e 004936 1e1e1e 004936 1e1e1e 004936 003f49 338592 004936 339286 338592 003f49 338592 003f49 338592 003f49 338592 003f49 338592 003f49 338592 003f49 338592 003f49 338592 003f49 338592 003f49 338592 003f49 338592 003f49 338592 003f49 003f49 ffffff 003f49 ffffff ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # -ffffff cccccc # ffffff cccccc # 003f49 338592 003f49 338592 338592 003f49 338592 003f49 003f49 338592 003f49 338592 003f49 338592 003f49 338592 003f49 338592 003f49 338592 003f49 338592 003f49 338592 1e1e1e 004936 1e1e1e 004936 1e1e1e 004936 1e1e1e 004936 004936 339286 004936 339286 339286 004936 339286 004936 003f49 338592 003f49 338592 003f49 338592 003f49 338592 003f49 338592 003f49 338592 003f49 338592 003f49 338592 003f49 338592 003f49 338592 003f49 ffffff 003f49 ffffff ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # -ffffff cccccc # ffffff cccccc # 003f49 338592 003f49 338592 338592 003f49 338592 003f49 003f49 338592 003f49 338592 338592 003f49 338592 003f49 338592 003f49 338592 003f49 003f49 338592 003f49 338592 1e1e1e 004936 1e1e1e 004936 1e1e1e 004936 1e1e1e 004936 004936 339286 004936 339286 339286 004936 339286 004936 338592 003f49 338592 003f49 338592 003f49 ff6d80 004940 cc0000 004940 cc0000 004940 cc0000 004940 cc0000 004940 338592 003f49 338592 003f49 003f49 ffffff 003f49 ffffff 660000 004940 660000 004940 660000 004940 660000 004940 660000 004940 ffffff cccccc # ffffff cccccc # ffffff cccccc # -ffffff cccccc # ffffff cccccc # 003f49 338592 003f49 338592 338592 003f49 338592 003f49 003f49 338592 003f49 338592 003f49 338592 003f49 338592 003f49 338592 003f49 338592 003f49 338592 003f49 338592 1e1e1e 004936 1e1e1e 004936 1e1e1e 004936 1e1e1e 004936 004936 339286 004936 339286 338592 003f49 339286 004936 003f49 338592 ff6d80 004940 ff6d80 004940 ff6d80 004940 ff4940 004940 ff4940 004940 ff4940 004940 cc0000 004940 cc0000 004940 003f49 338592 004940 ffffff 660000 004940 990000 004940 990000 004940 990000 004940 990000 004940 990000 004940 660000 004940 660000 004940 ffffff cccccc # -ffffff cccccc # ffffff cccccc # 003f49 338592 003f49 338592 338592 003f49 338592 003f49 003f49 338592 003f49 338592 338592 003f49 338592 003f49 338592 003f49 338592 003f49 003f49 338592 003f49 338592 1e1e1e 004936 1e1e1e 004936 1e1e1e 004936 1e1e1e 004936 004936 339286 004936 339286 338592 003f49 338592 003f49 ff6d80 004940 ff4940 004940 ff4940 004940 ff4940 004940 ff4940 004940 ff4940 004940 ff4940 004940 ff4940 004940 cc0000 004940 660000 004940 660000 004940 660000 004940 cc0000 004940 cc0000 004940 cc0000 004940 cc0000 004940 cc0000 004940 990000 004940 990000 004940 660000 004940 -ffffff cccccc # ffffff cccccc # 003f49 338592 003f49 338592 338592 003f49 338592 003f49 003f49 338592 003f49 338592 003f49 338592 003f49 338592 003f49 338592 003f49 338592 003f49 338592 003f49 338592 1e1e1e 004936 1e1e1e 004936 1e1e1e 004936 1e1e1e 004936 004936 339286 004936 339286 338592 003f49 339286 004936 ff6d80 004940 ff4940 004940 ff4940 004940 ff4940 004940 ff4940 004940 ff4940 004940 ff0000 ffffff ff0000 ffffff ff0000 004940 ff0000 004940 ff0000 004940 ff0000 004940 ff0000 004940 ff0000 ffffff ff0000 ffffff ff0000 ffffff cc0000 004940 cc0000 004940 990000 004940 660000 004940 -ffffff cccccc # ffffff cccccc # 003f49 338592 003f49 338592 338592 003f49 338592 003f49 003f49 338592 003f49 338592 338592 003f49 338592 003f49 338592 003f49 338592 003f49 003f49 338592 003f49 338592 1e1e1e 004936 1e1e1e 004936 1e1e1e 004936 1e1e1e 004936 003f49 338592 004936 339286 339286 004936 339286 004936 338592 003f49 ff4940 004940 ff4940 004940 ff4940 004940 ff4940 004940 ff0000 ffffff ff0000 ffffff ff0000 ffffff ff0000 ffffff ff0000 ffffff ff0000 ffffff ff0000 ffffff ff0000 ffffff ff0000 ffffff cc0000 004940 cc0000 004940 cc0000 004940 990000 004940 660000 004940 ffffff cccccc # -ffffff cccccc # ffffff cccccc # 003f49 338592 003f49 338592 338592 003f49 338592 003f49 003f49 338592 003f49 338592 003f49 338592 003f49 338592 003f49 338592 003f49 338592 003f49 338592 003f49 338592 1e1e1e 004936 1e1e1e 004936 1e1e1e 004936 1e1e1e 004936 003f49 338592 004936 339286 339286 004936 339286 004936 003f49 338592 003f49 338592 ff4940 004940 ff4940 004940 ff4940 004940 ff0000 ffffff ff0000 ffffff ff0000 ffffff ff0000 ffffff ff0000 ffffff ff0000 ffffff ff0000 ffffff cc0000 004940 cc0000 004940 cc0000 004940 990000 004940 990000 004940 660000 004940 ffffff cccccc # ffffff cccccc # -ffffff cccccc # ffffff cccccc # 003f49 338592 003f49 338592 338592 003f49 338592 003f49 003f49 338592 003f49 338592 338592 003f49 338592 003f49 338592 003f49 338592 003f49 003f49 338592 003f49 338592 1e1e1e 004936 1e1e1e 004936 1e1e1e 004936 1e1e1e 004936 003f49 338592 004936 339286 339286 004936 339286 004936 338592 003f49 338592 003f49 338592 003f49 ff4940 004940 ff4940 004940 ff4940 004940 ff4940 004940 ff0000 ffffff ff0000 ffffff ff0000 ffffff cc0000 004940 cc0000 004940 cc0000 004940 990000 004940 990000 004940 660000 004940 660000 004940 ffffff cccccc # ffffff cccccc # ffffff cccccc # -ffffff cccccc # ffffff cccccc # 003f49 338592 003f49 338592 338592 003f49 338592 003f49 003f49 338592 003f49 338592 003f49 338592 003f49 338592 003f49 338592 003f49 338592 003f49 338592 003f49 338592 1e1e1e 004936 1e1e1e 004936 1e1e1e 004936 1e1e1e 004936 003f49 338592 004936 339286 339286 004936 339286 004936 003f49 338592 003f49 338592 003f49 338592 003f49 338592 003f49 338592 ff4940 004940 ff4940 004940 ff0000 ffffff cc0000 004940 cc0000 004940 cc0000 004940 990000 004940 990000 004940 660000 004940 660000 004940 ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # -ffffff cccccc # ffffff cccccc # 003f49 338592 003f49 338592 003f49 338592 003f49 338592 003f49 338592 003f49 338592 003f49 338592 003f49 338592 003f49 338592 003f49 338592 003f49 338592 003f49 338592 003f49 338592 003f49 338592 003f49 338592 003f49 338592 003f49 338592 003f49 338592 003f49 ffffff 003f49 ffffff 003f49 ffffff 003f49 338592 003f49 338592 003f49 ffffff 003f49 ffffff 004940 ffffff 004940 ffffff cc0000 004940 cc0000 004940 990000 004940 990000 004940 660000 004940 660000 004940 ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # -ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # 660000 004940 660000 004940 ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # diff --git a/MineOS/Icons/Lua.pic b/MineOS/Icons/Lua.pic index 287efaf9..b1e3020b 100644 Binary files a/MineOS/Icons/Lua.pic and b/MineOS/Icons/Lua.pic differ diff --git a/MineOS/Icons/Lua.png b/MineOS/Icons/Lua.png deleted file mode 100644 index 5f6b9492..00000000 --- a/MineOS/Icons/Lua.png +++ /dev/null @@ -1,4 +0,0 @@ -ffffff cccccc # ffffff 33b640 - ffffff 33b640 - ffffff 33b640 К ffffff 33b640 о ffffff 33b640 д ffffff 33b640 ffffff cccccc # -ffffff cccccc # ffffff d2d2d2 p ffffff d2d2d2 r ffffff d2d2d2 i ffffff d2d2d2 n ffffff d2d2d2 t ffffff d2d2d2 ( ffffff cccccc # -ffffff cccccc # ffffff d2d2d2 r ffffff d2d2d2 e ffffff d2d2d2 t ffffff d2d2d2 u ffffff d2d2d2 r ffffff d2d2d2 n ffffff cccccc # -ffffff cccccc # ffffff 000000 ffffff 000000 . ffffff 000000 l ffffff 000000 u ffffff 000000 a ffffff 000000 ffffff cccccc # diff --git a/MineOS/Icons/Pastebin.png b/MineOS/Icons/Pastebin.png deleted file mode 100644 index 16140217..00000000 --- a/MineOS/Icons/Pastebin.png +++ /dev/null @@ -1,4 +0,0 @@ -2d2d2d ffffff P 2d2d2d ffffff a 2d2d2d ffffff s 2d2d2d ffffff t 2d2d2d ffffff e 2d2d2d ffffff b 2d2d2d ffffff i 2d2d2d ffffff n -2d2d2d ffffff 2d2d2d ffffff 2d2d2d ffffff 2d2d2d 66ff80 ⇩ 2d2d2d 66ff80 ⇩ 2d2d2d ffffff 2d2d2d ffffff 2d2d2d ffffff -2d2d2d ffffff 2d2d2d ffffff 2d2d2d ffffff 2d2d2d 66ff80 ⇩ 2d2d2d 66ff80 ⇩ 2d2d2d ffffff 2d2d2d ffffff 2d2d2d ffffff -2d2d2d ccb6ff C 2d2d2d ccb6ff o 2d2d2d ccb6ff m 2d2d2d ccb6ff p 2d2d2d ccb6ff u 2d2d2d ccb6ff t 2d2d2d ccb6ff e 2d2d2d ccb6ff r diff --git a/MineOS/Icons/RawImage.pic b/MineOS/Icons/RawImage.pic new file mode 100644 index 00000000..068a9b3b Binary files /dev/null and b/MineOS/Icons/RawImage.pic differ diff --git a/MineOS/Icons/SampleIcon.png b/MineOS/Icons/SampleIcon.png deleted file mode 100644 index 01c879f9..00000000 --- a/MineOS/Icons/SampleIcon.png +++ /dev/null @@ -1,4 +0,0 @@ -ffffff 000000 ffffff 000000 S ffffff 000000 a ffffff 000000 m ffffff 000000 p ffffff 000000 l ffffff 000000 e ffffff 000000 -ffffff 000000 ffffff 000000 ffffff 000000 I ffffff 000000 c ffffff 000000 o ffffff 000000 n ffffff 000000 ffffff 000000 -ffffff 000000 ffffff 000000 ffffff 000000 ffffff 000000 ffffff 000000 ffffff 000000 ffffff 000000 ffffff 000000 -666dff 000000 666dff 000000 666dff ffffff . 666dff ffffff a 666dff ffffff p 666dff ffffff p 666dff 000000 666dff 000000 diff --git a/MineOS/Icons/Script.png b/MineOS/Icons/Script.png deleted file mode 100644 index 0babb8ba..00000000 --- a/MineOS/Icons/Script.png +++ /dev/null @@ -1,4 +0,0 @@ -000000 ffffff 000000 ffff00 > 000000 ffffff _ 000000 ffffff 000000 ffffff 000000 ffffff 000000 ffffff 000000 ffffff -000000 ffffff 000000 ffffff 000000 ffffff 000000 ffffff 000000 ffffff 000000 ffffff 000000 ffffff 000000 ffffff -000000 ffffff 000000 ffffff 000000 ffffff 000000 ffffff 000000 ffffff 000000 ffffff 000000 ffffff 000000 ffffff -000000 ffffff 000000 ffffff 000000 ffffff 000000 ffffff 000000 ffffff 000000 ffffff 000000 ffffff 000000 ffffff diff --git a/MineOS/Icons/Security.png b/MineOS/Icons/Security.png deleted file mode 100644 index bfa04680..00000000 --- a/MineOS/Icons/Security.png +++ /dev/null @@ -1,16 +0,0 @@ -ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # 6692ff 334980 334980 c3c3c3 ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # -6692ff 969696 6692ff 969696 6692ff 969696 ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # 6692ff 334980 336dbf 334980 334980 c3c3c3 334980 c3c3c3 ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # 002440 6692ff 002440 6692ff 002440 6692ff 002440 6692ff -ffffff cccccc # 6692ff 969696 336dbf 334980 6692ff 969696 6692ff 969696 6692ff 969696 ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # 6692ff 969696 6692ff 969696 6692ff 334980 6692ff 334980 336dbf 334980 3349bf 334980 3349bf 334980 3349bf 334980 334980 c3c3c3 334980 c3c3c3 334980 c3c3c3 334980 c3c3c3 ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # 004980 e1e1e1 002480 334980 002480 334980 002480 334980 002440 6692ff ffffff cccccc # -ffffff cccccc # 6692ff 969696 336dbf 334980 336dbf 334980 336dbf 334980 336dbf 334980 6692ff 969696 6692ff 969696 6692ff 969696 6692ff 969696 336dbf 334980 336dbf 334980 336dbf 334980 3349bf 334980 e1e1e1 334980 e1e1e1 334980 e1e1e1 334980 e1e1e1 334980 3349bf 334980 334980 c3c3c3 334980 c3c3c3 334980 c3c3c3 334980 c3c3c3 334980 c3c3c3 334980 c3c3c3 334980 c3c3c3 334980 c3c3c3 004980 e1e1e1 004980 e1e1e1 002480 334980 002440 6692ff ffffff cccccc # -ffffff cccccc # ffffff cccccc # 6692ff 969696 336dbf 334980 3349bf 334980 336dbf 334980 336dbf 334980 336dbf 334980 336dbf 334980 336dbf 334980 3349bf 334980 3349bf 334980 e1e1e1 334980 e1e1e1 334980 000000 334980 000000 334980 000000 334980 000000 334980 e1e1e1 334980 c3c3c3 334980 334980 c3c3c3 334980 c3c3c3 334980 c3c3c3 334980 c3c3c3 334980 c3c3c3 334980 c3c3c3 334980 c3c3c3 004980 e1e1e1 002480 334980 002440 6692ff ffffff cccccc # ffffff cccccc # -ffffff cccccc # ffffff cccccc # 6692ff 969696 336dbf 334980 3349bf 334980 3349bf 334980 3349bf 334980 3349bf 334980 3349bf 334980 3349bf 334980 3349bf 334980 e1e1e1 334980 000000 334980 000000 334980 000000 334980 000000 334980 000000 334980 000000 334980 000000 334980 000000 c3c3c3 c3c3c3 334980 334980 c3c3c3 334980 c3c3c3 334980 c3c3c3 334980 c3c3c3 334980 c3c3c3 334980 c3c3c3 004980 e1e1e1 002480 334980 002440 6692ff ffffff cccccc # ffffff cccccc # -ffffff cccccc # ffffff cccccc # ffffff cccccc # 6692ff 969696 336dbf 334980 3349bf 334980 3349bf 334980 3349bf 334980 3349bf 334980 334980 c3c3c3 3349bf 334980 e1e1e1 334980 000000 334980 000000 334980 000000 334980 000000 334980 000000 334980 000000 334980 000000 334980 000000 c3c3c3 c3c3c3 334980 334980 c3c3c3 334980 c3c3c3 334980 c3c3c3 334980 c3c3c3 334980 c3c3c3 004980 e1e1e1 002480 334980 002440 6692ff ffffff cccccc # ffffff cccccc # ffffff cccccc # -ffffff cccccc # ffffff cccccc # ffffff cccccc # 6692ff 969696 336dbf 334980 336dbf 334980 336dbf 334980 3349bf 334980 334980 c3c3c3 334980 c3c3c3 334980 c3c3c3 3349bf 334980 e1e1e1 0049bf e1e1e1 334980 000000 334980 000000 334980 000000 334980 000000 334980 c3c3c3 334980 e1e1e1 0049bf 334980 c3c3c3 334980 c3c3c3 334980 c3c3c3 334980 c3c3c3 334980 c3c3c3 334980 c3c3c3 004980 e1e1e1 002480 334980 002440 6692ff ffffff cccccc # ffffff cccccc # ffffff cccccc # -ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # 6692ff 969696 6692ff 969696 336dbf 334980 3349bf 334980 334980 c3c3c3 334980 c3c3c3 334980 c3c3c3 334980 c3c3c3 e1e1e1 334980 000000 334980 000000 334980 000000 334980 000000 334980 000000 334980 000000 334980 c3c3c3 334980 334980 c3c3c3 334980 c3c3c3 334980 c3c3c3 334980 c3c3c3 334980 c3c3c3 004980 e1e1e1 002480 334980 002440 6692ff ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # -ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # 6692ff 969696 336dbf 334980 3349bf 334980 334980 c3c3c3 334980 c3c3c3 334980 c3c3c3 c3c3c3 334980 000000 334980 000000 334980 000000 334980 000000 334980 000000 334980 000000 334980 000000 334980 000000 334980 969696 334980 334980 c3c3c3 334980 c3c3c3 004980 e1e1e1 004980 e1e1e1 002480 334980 002440 6692ff ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # -ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # 3349bf 334980 334980 0049bf 334980 0049bf 334980 c3c3c3 c3c3c3 334980 000000 334980 000000 334980 000000 334980 000000 334980 000000 334980 000000 334980 000000 334980 000000 334980 000000 334980 000000 334980 969696 334980 004980 e1e1e1 002480 334980 002480 334980 002440 6692ff ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # -ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # 3349bf 334980 334980 0049bf 334980 c3c3c3 334980 c3c3c3 c3c3c3 334980 c3c3c3 334980 c3c3c3 334980 969696 334980 969696 334980 969696 334980 969696 334980 969696 334980 969696 334980 969696 334980 002480 334980 002480 334980 002440 6692ff 002440 6692ff ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # -ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # 334980 c3c3c3 334980 c3c3c3 334980 c3c3c3 334980 c3c3c3 334980 c3c3c3 334980 c3c3c3 334980 0049bf 334980 c3c3c3 004980 e1e1e1 004980 e1e1e1 004980 e1e1e1 002480 334980 002440 6692ff 002440 6692ff ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # -ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # 004980 e1e1e1 004980 e1e1e1 004980 e1e1e1 004980 e1e1e1 004980 e1e1e1 004980 e1e1e1 002480 334980 002480 334980 002440 6692ff 002440 6692ff ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # -ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # 002440 6692ff 002440 6692ff 002480 334980 002480 334980 002440 6692ff 002440 6692ff ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # -ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # 002440 6692ff 002440 6692ff ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # diff --git a/MineOS/Icons/Text.pic b/MineOS/Icons/Text.pic index 1c0cf9fa..3b965fc6 100644 Binary files a/MineOS/Icons/Text.pic and b/MineOS/Icons/Text.pic differ diff --git a/MineOS/Icons/Text.png b/MineOS/Icons/Text.png deleted file mode 100644 index 0abd5325..00000000 --- a/MineOS/Icons/Text.png +++ /dev/null @@ -1,4 +0,0 @@ -ffffff cccccc # ffffff a5a5a5 - ffffff a5a5a5 - ffffff a5a5a5 - ffffff a5a5a5 - ffffff a5a5a5 - ffffff a5a5a5 - ffffff cccccc # -ffffff cccccc # ffffff a5a5a5 - ffffff a5a5a5 - ffffff a5a5a5 - ffffff a5a5a5 - ffffff a5a5a5 - ffffff a5a5a5 - ffffff cccccc # -ffffff cccccc # ffffff a5a5a5 - ffffff a5a5a5 - ffffff a5a5a5 - ffffff a5a5a5 - ffffff a5a5a5 - ffffff a5a5a5 - ffffff cccccc # -ffffff cccccc # ffffff 000000 ffffff 000000 T ffffff 000000 e ffffff 000000 x ffffff 000000 t ffffff 000000 ffffff cccccc # diff --git a/MineOS/Icons/Update.png b/MineOS/Icons/Update.png deleted file mode 100644 index e7d58721..00000000 --- a/MineOS/Icons/Update.png +++ /dev/null @@ -1,16 +0,0 @@ -ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # 99dbff ffffff 99dbff ffffff 99dbff ffffff 99dbff ffffff 99dbff ffffff 99dbff ffffff 99dbff ffffff 99dbff ffffff ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # -ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # 99dbff ffffff 99dbff ffffff 99dbff ffffff 99dbff ffffff 99dbff ffffff 99dbff ffffff 99dbff ffffff 99dbff ffffff 99dbff ffffff 99dbff ffffff 99dbff ffffff 99dbff ffffff 99dbff ffffff 99dbff ffffff 99dbff ffffff 99dbff ffffff ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # -ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # 66b6ff ffffff 66b6ff ffffff 66b6ff ffffff 66b6ff ffffff 66b6ff ffffff 66b6ff ffffff 66b6ff ffffff 66b6ff ffffff 66b6ff ffffff 66b6ff ffffff 66b6ff ffffff 66b6ff ffffff 66b6ff ffffff 66b6ff ffffff 66b6ff ffffff 66b6ff ffffff 66b6ff ffffff 66b6ff ffffff 66b6ff ffffff 66b6ff ffffff 66b6ff ffffff 66b6ff ffffff 66b6ff ffffff 66b6ff ffffff ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # -ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # 66b6ff ffffff 66b6ff ffffff 66b6ff ffffff 66b6ff ffffff 66b6ff ffffff 66b6ff ffffff 66b6ff ffffff 66b6ff ffffff 66b6ff ffffff 66b6ff ffffff 66b6ff ffffff 66b6ff ffffff 66b6ff ffffff 66b6ff ffffff 66b6ff ffffff 66b6ff ffffff 66b6ff ffffff 66b6ff ffffff 66b6ff ffffff 66b6ff ffffff 66b6ff ffffff 66b6ff ffffff 66b6ff ffffff 66b6ff ffffff ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # -ffffff cccccc # ffffff cccccc # 3392ff ffffff 3392ff ffffff 3392ff ffffff 3392ff ffffff 3392ff ffffff 3392ff ffffff 3392ff ffffff 3392ff ffffff 3392ff ffffff 3392ff ffffff 3392ff ffffff ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # 3392ff ffffff 3392ff ffffff 3392ff ffffff 3392ff ffffff 3392ff ffffff 3392ff ffffff 3392ff ffffff 3392ff ffffff 3392ff ffffff 3392ff ffffff 3392ff ffffff ffffff cccccc # ffffff cccccc # -ffffff cccccc # ffffff cccccc # 3392ff ffffff 3392ff ffffff 3392ff ffffff 3392ff ffffff 3392ff ffffff 3392ff ffffff 3392ff ffffff 3392ff ffffff 3392ff ffffff 3392ff ffffff 3392ff ffffff ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # 3392ff ffffff 3392ff ffffff 3392ff ffffff 3392ff ffffff 3392ff ffffff 3392ff ffffff 3392ff ffffff 3392ff ffffff 3392ff ffffff 3392ff ffffff 3392ff ffffff ffffff cccccc # ffffff cccccc # -006dff ffffff 006dff ffffff 006dff ffffff 006dff ffffff 006dff ffffff 006dff ffffff 006dff ffffff 006dff ffffff 006dff ffffff 006dff ffffff 006dff ffffff 006dff ffffff 006dff ffffff ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # 006dff ffffff 006dff ffffff 006dff ffffff 006dff ffffff 006dff ffffff 006dff ffffff 006dff ffffff 006dff ffffff 006dff ffffff 006dff ffffff 006dff ffffff 006dff ffffff 006dff ffffff -006dff ffffff 006dff ffffff 006dff ffffff 006dff ffffff 006dff ffffff 006dff ffffff 006dff ffffff 006dff ffffff 006dff ffffff 006dff ffffff 006dff ffffff 006dff ffffff 006dff ffffff ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # 006dff ffffff 006dff ffffff 006dff ffffff 006dff ffffff 006dff ffffff 006dff ffffff 006dff ffffff 006dff ffffff 006dff ffffff 006dff ffffff 006dff ffffff 006dff ffffff 006dff ffffff -006dff ffffff 006dff ffffff 006dff ffffff 006dff ffffff 006dff ffffff 006dff ffffff 006dff ffffff 006dff ffffff 006dff ffffff 006dff ffffff 006dff ffffff 006dff ffffff 006dff ffffff ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # 006dff ffffff 006dff ffffff 006dff ffffff 006dff ffffff 006dff ffffff 006dff ffffff 006dff ffffff 006dff ffffff 006dff ffffff 006dff ffffff 006dff ffffff 006dff ffffff 006dff ffffff -006dff ffffff 006dff ffffff 006dff ffffff 006dff ffffff 006dff ffffff 006dff ffffff 006dff ffffff 006dff ffffff 006dff ffffff ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # 006dff ffffff 006dff ffffff 006dff ffffff 006dff ffffff 006dff ffffff 006dff ffffff 006dff ffffff 006dff ffffff 006dff ffffff -ffffff cccccc # ffffff cccccc # 0049bf ffffff 0049bf ffffff 0049bf ffffff 0049bf ffffff 0049bf ffffff 0049bf ffffff 0049bf ffffff 0049bf ffffff 0049bf ffffff ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # 0049bf ffffff 0049bf ffffff 0049bf ffffff 0049bf ffffff 0049bf ffffff 0049bf ffffff 0049bf ffffff 0049bf ffffff 0049bf ffffff ffffff cccccc # ffffff cccccc # -ffffff cccccc # ffffff cccccc # 0049bf ffffff 0049bf ffffff 0049bf ffffff 0049bf ffffff 0049bf ffffff 0049bf ffffff 0049bf ffffff 0049bf ffffff 0049bf ffffff 0049bf ffffff 0049bf ffffff ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # 0049bf ffffff 0049bf ffffff 0049bf ffffff 0049bf ffffff 0049bf ffffff 0049bf ffffff 0049bf ffffff 0049bf ffffff 0049bf ffffff 0049bf ffffff 0049bf ffffff ffffff cccccc # ffffff cccccc # -ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # 0049bf ffffff 0049bf ffffff 0049bf ffffff 0049bf ffffff 0049bf ffffff 0049bf ffffff 0049bf ffffff 0049bf ffffff 0049bf ffffff 0049bf ffffff 0049bf ffffff ffffff cccccc # ffffff cccccc # 0049bf ffffff 0049bf ffffff 0049bf ffffff 0049bf ffffff 0049bf ffffff 0049bf ffffff 0049bf ffffff 0049bf ffffff 0049bf ffffff 0049bf ffffff 0049bf ffffff ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # -ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # 004980 ffffff 004980 ffffff 004980 ffffff 004980 ffffff 004980 ffffff 004980 ffffff 004980 ffffff 004980 ffffff 004980 ffffff 004980 ffffff 004980 ffffff 004980 ffffff 004980 ffffff 004980 ffffff 004980 ffffff 004980 ffffff 004980 ffffff 004980 ffffff 004980 ffffff 004980 ffffff 004980 ffffff 004980 ffffff 004980 ffffff 004980 ffffff ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # -ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # 004980 ffffff 004980 ffffff 004980 ffffff 004980 ffffff 004980 ffffff 004980 ffffff 004980 ffffff 004980 ffffff 004980 ffffff 004980 ffffff 004980 ffffff 004980 ffffff 004980 ffffff 004980 ffffff 004980 ffffff 004980 ffffff ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # -ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # 004980 ffffff 004980 ffffff 004980 ffffff 004980 ffffff 004980 ffffff 004980 ffffff 004980 ffffff 004980 ffffff ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # ffffff cccccc # diff --git a/lib/ECSAPI.lua b/lib/ECSAPI.lua index 99951b95..28e7501c 100644 --- a/lib/ECSAPI.lua +++ b/lib/ECSAPI.lua @@ -1481,10 +1481,10 @@ local function OSIconsInit() ECSAPI.OSIcons.config = image.load(ECSAPI.pathToIcons .. "Config.pic") ECSAPI.OSIcons.lua = image.load(ECSAPI.pathToIcons .. "Lua.pic") ECSAPI.OSIcons.image = image.load(ECSAPI.pathToIcons .. "Image.pic") - ECSAPI.OSIcons.imageJPG = image.load(ECSAPI.pathToIcons .. "ImageJPG.pic") + ECSAPI.OSIcons.imageJPG = image.load(ECSAPI.pathToIcons .. "RawImage.pic") ECSAPI.OSIcons.pastebin = image.load(ECSAPI.pathToIcons .. "Pastebin.pic") ECSAPI.OSIcons.fileNotExists = image.load(ECSAPI.pathToIcons .. "FileNotExists.pic") - ECSAPI.OSIcons.archive = image.load(ECSAPI.pathToIcons .. "archive.pic") + ECSAPI.OSIcons.archive = image.load(ECSAPI.pathToIcons .. "Archive.pic") end end @@ -1559,11 +1559,15 @@ function ECSAPI.launchIcon(path, arguments) if arguments then arguments = " " .. arguments else arguments = "" end --Получаем файл формат заранее local fileFormat = ECSAPI.getFileFormat(path) + local isDirectory = fs.isDirectory(path) --Если это приложение if fileFormat == ".app" then local cyka = path .. "/" .. ECSAPI.hideFileFormat(fs.name(path)) .. ".lua" local success, reason = shell.execute(cyka) if not success then ECSAPI.displayCompileMessage(1, reason, true) end + --Если это папка + elseif (fileFormat == "" or fileFormat == nil) and isDirectory then + shell.execute("MineOS/Applications/Finder.app/Finder.lua " .. path) --Если это обычный луа файл - т.е. скрипт elseif fileFormat == ".lua" or fileFormat == nil then ECSAPI.prepareToExit() @@ -1577,10 +1581,10 @@ function ECSAPI.launchIcon(path, arguments) end --Если это фоточка elseif fileFormat == ".pic" then - shell.execute("MineOS/Applications/Photoshop.app/Photoshop.lua open "..path) + shell.execute("MineOS/Applications/Photoshop.app/Photoshop.lua open " .. path) --Если это фоточка - elseif fileFormat == ".jpg" then - shell.execute("MineOS/Applications/Photoshop.app/Photoshop.lua open "..path) + elseif fileFormat == ".raw" then + shell.execute("MineOS/Applications/Photoshop.app/Photoshop.lua open " .. path) --Если это текст или конфиг или языковой elseif fileFormat == ".txt" or fileFormat == ".cfg" or fileFormat == ".lang" then ECSAPI.prepareToExit() diff --git a/lib/doubleBuffering.lua b/lib/doubleBuffering.lua index 6c0e43de..2dc87238 100644 --- a/lib/doubleBuffering.lua +++ b/lib/doubleBuffering.lua @@ -55,12 +55,12 @@ function buffer.createArray() for y = 1, buffer.screen.height do for x = 1, buffer.screen.width do - table.insert(buffer.screen.current, -1) - table.insert(buffer.screen.current, -1) + table.insert(buffer.screen.current, 0x010101) + table.insert(buffer.screen.current, 0xFEFEFE) table.insert(buffer.screen.current, " ") - table.insert(buffer.screen.new, -1) - table.insert(buffer.screen.new, -1) + table.insert(buffer.screen.new, 0x010101) + table.insert(buffer.screen.new, 0xFEFEFE) table.insert(buffer.screen.new, " ") end end @@ -307,6 +307,35 @@ function buffer.image(x, y, picture) end end +function buffer.button(x, y, width, height, background, foreground, text) + local textPosX = math.floor(x + width / 2 - unicode.len(text) / 2) + local textPosY = math.floor(y + height / 2) + buffer.square(x, y, width, height, background, 0xFFFFFF, " ") + buffer.text(textPosX, textPosY, foreground, text) + + return x, y, (x + width - 1), (y + height - 1) +end + +function buffer.adaptiveButton(x, y, xOffset, yOffset, background, foreground, text) + local width = xOffset * 2 + unicode.len(text) + local height = yOffset * 2 + 1 + + buffer.square(x, y, width, height, background, 0xFFFFFF, " ") + buffer.text(x + xOffset, y + yOffset, foreground, text) + + return x, y, (x + width - 1), (y + height - 1) +end + +function buffer.scrollBar(x, y, width, height, countOfAllElements, currentElement, backColor, frontColor) + local sizeOfScrollBar = math.ceil(1 / countOfAllElements * height) + local displayBarFrom = math.floor(y + height * ((currentElement - 1) / countOfAllElements)) + + buffer.square(x, y, width, height, backColor, 0xFFFFFF, " ") + buffer.square(x, displayBarFrom, width, sizeOfScrollBar, frontColor, 0xFFFFFF, " ") + + sizeOfScrollBar, displayBarFrom = nil, nil +end + function buffer.calculateDifference(x, y) local index = convertCoordsToIndex(x, y) local backgroundIsChanged, foregroundIsChanged, symbolIsChanged = false, false, false