from System.Drawing import Color
from System.Linq import Enumerable
from Windawesome import ILayout, TileLayout, FullScreenLayout, FloatingLayout, IPlugin, Workspace
from Windawesome import Bar, LayoutWidget, WorkspacesWidget, ApplicationTabsWidget, SystemTrayWidget, CpuMonitorWidget, LaptopBatteryMonitorWidget, LanguageBarWidget
from Windawesome import LoggerPlugin, ShortcutsManager
from Windawesome.NativeMethods import MOD
from System import Tuple
from System.Windows.Forms import Keys
def onLayoutLabelClick():
if windawesome.CurrentWorkspace.Layout.LayoutName() == "Full Screen":
windawesome.CurrentWorkspace.ChangeLayout(FloatingLayout())
elif windawesome.CurrentWorkspace.Layout.LayoutName() == "Floating":
windawesome.CurrentWorkspace.ChangeLayout(TileLayout())
else:
windawesome.CurrentWorkspace.ChangeLayout(FullScreenLayout())
config.WindowBorderWidth = 0
config.WindowPaddedBorderWidth = 0
showMenu = 0
config.Bars = Enumerable.ToArray[Bar]([
Bar(windawesome.monitors[0],
[WorkspacesWidget(), LayoutWidget(onClick = onLayoutLabelClick)],
[SystemTrayWidget(False), LaptopBatteryMonitorWidget(), CpuMonitorWidget(),
DateTimeWidget("ddd, d MMM"), DateTimeWidget("h:mm tt", Color.FromArgb(0xA8, 0xA8, 0xA5))],
[ApplicationTabsWidget(False)],
),
Bar(windawesome.monitors[0],
[WorkspacesWidget(), LayoutWidget(onClick = onLayoutLabelClick)],
[SystemTrayWidget(False), LaptopBatteryMonitorWidget(), CpuMonitorWidget(),
DateTimeWidget("ddd, d-MMM"), DateTimeWidget("h:mm tt", Color.FromArgb(0xA8, 0xA8, 0xA5))],
[ApplicationTabsWidget(False)],
)
])
config.Workspaces = Enumerable.ToArray[Workspace]([
Workspace(windawesome.monitors[0], TileLayout(masterAreaAxis = TileLayout.LayoutAxis.RightToLeft, masterAreaWindowsCount = 1, masterAreaFactor = 0.5), [config.Bars[1]], name = 'main', showWindowsTaskbar = 'AsIs', ),
Workspace(windawesome.monitors[0], FullScreenLayout(), [config.Bars[0]], name = 'web', showWindowsTaskbar = 'AsIs'),
Workspace(windawesome.monitors[0], TileLayout(masterAreaAxis = TileLayout.LayoutAxis.LeftToRight, masterAreaWindowsCount = 5, masterAreaFactor = 0.5), [config.Bars[0]], name = 'irc', showWindowsTaskbar = 'AsIs'),
Workspace(windawesome.monitors[0], TileLayout(masterAreaAxis = TileLayout.LayoutAxis.LeftToRight, masterAreaWindowsCount = 1, masterAreaFactor = 0.6), [config.Bars[0]], name = 'ent', showWindowsTaskbar = 'AsIs'),
Workspace(windawesome.monitors[0], FullScreenLayout(), [config.Bars[0]], name = 'work', showWindowsTaskbar = 'AsIs'),
Workspace(windawesome.monitors[0], FullScreenLayout(), [config.Bars[0]], name = 'misc', showWindowsTaskbar = 'AsIs'),
])
config.StartingWorkspaces = [config.Workspaces[0]]
config.Plugins = [
#LoggerPlugin(logWorkspaceSwitching = True, logWindowMinimization = True, logWindowRestoration = True,
# logActivation = True),
ShortcutsManager()
]