mirror of
https://github.com/IgorTimofeev/MineOS.git
synced 2025-12-20 11:09:21 +01:00
OS transparency disabling fixes
This commit is contained in:
parent
2e79a724fb
commit
49e6425522
@ -50,12 +50,16 @@ FTPButton.colors.disabled = prevButton.colors.disabled
|
||||
FTPButton.disabled = not MineOSNetwork.internetProxy
|
||||
|
||||
local sidebarContainer = window:addChild(GUI.container(1, 4, 20, 1))
|
||||
sidebarContainer.panel = sidebarContainer:addChild(GUI.panel(1, 1, sidebarContainer.width, 1, 0xFFFFFF, MineOSCore.properties.transparencyEnabled and 0.3))
|
||||
local sidebarPanel = sidebarContainer:addChild(GUI.object(1, 1, sidebarContainer.width, 1, 0xFFFFFF))
|
||||
sidebarPanel.draw = function(object)
|
||||
buffer.drawRectangle(object.x, object.y, object.width, object.height, 0xFFFFFF, 0x0, " ", MineOSCore.properties.transparencyEnabled and 0.3)
|
||||
end
|
||||
|
||||
sidebarContainer.itemsContainer = sidebarContainer:addChild(GUI.container(1, 1, sidebarContainer.width, 1))
|
||||
|
||||
local searchInput = window:addChild(GUI.input(1, 2, 36, 1, 0xFFFFFF, 0x4B4B4B, 0xA5A5A5, 0xFFFFFF, 0x2D2D2D, nil, MineOSCore.localization.search, true))
|
||||
|
||||
local iconField = window:addChild(MineOSInterface.iconField(1, 4, 1, 1, 2, 2, 0x3C3C3C, 0x3C3C3C, MineOSPaths.desktop))
|
||||
local iconField = window:addChild(MineOSInterface.iconField(1, 4, 1, 1, 2, 2, 0x3C3C3C, 0x969696, MineOSPaths.desktop))
|
||||
|
||||
local scrollBar = window:addChild(GUI.scrollBar(1, 4, 1, 1, 0xC3C3C3, 0x4B4B4B, iconFieldYOffset, 1, 1, 1, 1, true))
|
||||
scrollBar.eventHandler = nil
|
||||
@ -433,8 +437,8 @@ end
|
||||
local function calculateSizes(width, height)
|
||||
sidebarContainer.height = height - 3
|
||||
|
||||
sidebarContainer.panel.width = sidebarContainer.width
|
||||
sidebarContainer.panel.height = sidebarContainer.height
|
||||
sidebarPanel.width = sidebarContainer.width
|
||||
sidebarPanel.height = sidebarContainer.height
|
||||
|
||||
sidebarContainer.itemsContainer.width = sidebarContainer.width
|
||||
sidebarContainer.itemsContainer.height = sidebarContainer.height
|
||||
|
||||
4
OS.lua
4
OS.lua
@ -375,7 +375,7 @@ local function createOSWidgets()
|
||||
|
||||
icon.onRightClick = function(icon, e1, e2, e3, e4, ...)
|
||||
local indexOf = icon:indexOf()
|
||||
local menu = MineOSInterface.addContextMenu(MineOSInterface.mainContainer, e3, e4)
|
||||
local menu = GUI.addContextMenu(MineOSInterface.mainContainer, e3, e4)
|
||||
|
||||
menu.onMenuClosed = function()
|
||||
icon.selected = false
|
||||
@ -456,7 +456,7 @@ local function createOSWidgets()
|
||||
end
|
||||
|
||||
icon.onRightClick = function(icon, e1, e2, e3, e4)
|
||||
local menu = MineOSInterface.addContextMenu(MineOSInterface.mainContainer, e3, e4)
|
||||
local menu = GUI.addContextMenu(MineOSInterface.mainContainer, e3, e4)
|
||||
|
||||
menu.onMenuClosed = function()
|
||||
icon.selected = false
|
||||
|
||||
@ -306,9 +306,4 @@ MineOSCore.setPackageUnloading(MineOSCore.properties.packageUnloading)
|
||||
|
||||
-----------------------------------------------------------------------------------------------------------------------------------
|
||||
|
||||
return MineOSCore
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
return MineOSCore
|
||||
@ -81,35 +81,37 @@ function MineOSInterface.cacheIconSource(name, path)
|
||||
return MineOSInterface.iconsCache[name]
|
||||
end
|
||||
|
||||
local function iconDrawNameLine(x, y, line, icon)
|
||||
local lineLength = unicode.len(line)
|
||||
local x = math.floor(x - lineLength / 2)
|
||||
if icon.selected then
|
||||
buffer.drawRectangle(x, y, lineLength, 1, icon.colors.selection, 0x0, " ", icon.colors.selectionTransparency)
|
||||
end
|
||||
buffer.drawText(x, y, icon.colors.text, line)
|
||||
end
|
||||
|
||||
local function iconDraw(icon)
|
||||
local selectionTransparency = MineOSCore.properties.transparencyEnabled and 0.6
|
||||
local text = MineOSCore.properties.showExtension and icon.name or icon.nameWithoutExtension
|
||||
local xCenter, yText = icon.x + MineOSInterface.iconHalfWidth, icon.y + MineOSInterface.iconImageHeight + 1
|
||||
|
||||
local function iconDrawNameLine(y, line)
|
||||
local lineLength = unicode.len(line)
|
||||
local x = math.floor(xCenter - lineLength / 2)
|
||||
|
||||
if icon.selected then
|
||||
buffer.drawRectangle(x, y, lineLength, 1, icon.colors.selection, 0x0, " ", selectionTransparency)
|
||||
end
|
||||
buffer.drawText(x, y, icon.colors.text, line)
|
||||
end
|
||||
|
||||
local charIndex = 1
|
||||
for lineIndex = 1, MineOSInterface.iconTextHeight do
|
||||
if lineIndex < MineOSInterface.iconTextHeight then
|
||||
iconDrawNameLine(xCenter, yText, unicode.sub(text, charIndex, charIndex + icon.width - 1), icon)
|
||||
iconDrawNameLine(yText, unicode.sub(text, charIndex, charIndex + icon.width - 1))
|
||||
charIndex, yText = charIndex + icon.width, yText + 1
|
||||
else
|
||||
iconDrawNameLine(xCenter, yText, string.limit(unicode.sub(text, charIndex, -1), icon.width, "center"), icon)
|
||||
iconDrawNameLine(yText, string.limit(unicode.sub(text, charIndex, -1), icon.width, "center"))
|
||||
end
|
||||
end
|
||||
|
||||
local xImage = icon.x + MineOSInterface.iconImageHorizontalOffset
|
||||
if icon.selected then
|
||||
local xSelection = xImage - 1
|
||||
buffer.drawText(xSelection, icon.y - 1, icon.colors.selection, string.rep("▄", MineOSInterface.iconImageWidth + 2), icon.colors.selectionTransparency)
|
||||
buffer.drawText(xSelection, icon.y + MineOSInterface.iconImageHeight, icon.colors.selection, string.rep("▀", MineOSInterface.iconImageWidth + 2), icon.colors.selectionTransparency)
|
||||
buffer.drawRectangle(xSelection, icon.y, MineOSInterface.iconImageWidth + 2, MineOSInterface.iconImageHeight, icon.colors.selection, 0x0, " ", icon.colors.selectionTransparency)
|
||||
buffer.drawText(xSelection, icon.y - 1, icon.colors.selection, string.rep("▄", MineOSInterface.iconImageWidth + 2), selectionTransparency)
|
||||
buffer.drawText(xSelection, icon.y + MineOSInterface.iconImageHeight, icon.colors.selection, string.rep("▀", MineOSInterface.iconImageWidth + 2), selectionTransparency)
|
||||
buffer.drawRectangle(xSelection, icon.y, MineOSInterface.iconImageWidth + 2, MineOSInterface.iconImageHeight, icon.colors.selection, 0x0, " ", selectionTransparency)
|
||||
end
|
||||
|
||||
if icon.image then
|
||||
@ -278,8 +280,7 @@ function MineOSInterface.icon(x, y, path, textColor, selectionColor)
|
||||
|
||||
icon.colors = {
|
||||
text = textColor,
|
||||
selection = selectionColor,
|
||||
selectionTransparency = 0.6
|
||||
selection = selectionColor
|
||||
}
|
||||
|
||||
icon.path = path
|
||||
@ -480,7 +481,7 @@ local function iconFieldBackgroundObjectEventHandler(mainContainer, object, e1,
|
||||
|
||||
mainContainer:drawOnScreen()
|
||||
else
|
||||
local menu = MineOSInterface.addContextMenu(MineOSInterface.mainContainer, e3, e4)
|
||||
local menu = GUI.addContextMenu(MineOSInterface.mainContainer, e3, e4)
|
||||
|
||||
local subMenu = menu:addSubMenu(MineOSCore.localization.create)
|
||||
|
||||
@ -592,7 +593,11 @@ local function iconFieldBackgroundObjectDraw(object)
|
||||
y1, y2 = y2, y1
|
||||
end
|
||||
|
||||
buffer.drawRectangle(x1, y1, x2 - x1 + 1, y2 - y1 + 1, object.parent.colors.selection, 0x0, " ", 0.6)
|
||||
if MineOSCore.properties.transparencyEnabled then
|
||||
buffer.drawRectangle(x1, y1, x2 - x1 + 1, y2 - y1 + 1, object.parent.colors.selection, 0x0, " ", 0.6)
|
||||
else
|
||||
buffer.drawFrame(x1, y1, x2 - x1 + 1, y2 - y1 + 1, object.parent.colors.selection)
|
||||
end
|
||||
|
||||
for i = 1, #object.parent.iconsContainer.children do
|
||||
local xCenter, yCenter = object.parent.iconsContainer.children[i].x + MineOSCore.properties.iconWidth / 2, object.parent.iconsContainer.children[i].y + MineOSCore.properties.iconHeight / 2
|
||||
@ -675,9 +680,9 @@ end
|
||||
|
||||
----------------------------------------------------------------------------------------------------------------
|
||||
|
||||
function MineOSInterface.addContextMenu(...)
|
||||
local menu = GUI.addContextMenu(...)
|
||||
|
||||
local overrideGUIDropDownMenu = GUI.dropDownMenu
|
||||
GUI.dropDownMenu = function(...)
|
||||
local menu = overrideGUIDropDownMenu(...)
|
||||
menu.colors.transparency.background = MineOSCore.properties.transparencyEnabled and GUI.CONTEXT_MENU_BACKGROUND_TRANSPARENCY
|
||||
menu.colors.transparency.shadow = MineOSCore.properties.transparencyEnabled and GUI.CONTEXT_MENU_SHADOW_TRANSPARENCY
|
||||
|
||||
@ -705,7 +710,7 @@ function MineOSInterface.iconRightClick(icon, e1, e2, e3, e4)
|
||||
|
||||
local selectedIcons = icon.parent.parent:getSelectedIcons()
|
||||
|
||||
local menu = MineOSInterface.addContextMenu(MineOSInterface.mainContainer, e3, e4)
|
||||
local menu = GUI.addContextMenu(MineOSInterface.mainContainer, e3, e4)
|
||||
|
||||
menu.onMenuClosed = function()
|
||||
icon.parent.parent:deselectAll()
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user