Widgets: Change interface to no longer need a screen parameter for each widget
This commit is contained in:
parent
9265f70e4b
commit
15b75812cc
31
rc.lua
31
rc.lua
|
@ -27,33 +27,32 @@ tags.setup()
|
|||
|
||||
-- {{{ widgets
|
||||
widgets = require("widgets")
|
||||
widgets.setup()
|
||||
for s = 1, screen.count() do
|
||||
local ltop = widgets.layout(s,"left","top")
|
||||
local rtop = widgets.layout(s,"right","top")
|
||||
local lbottom = widgets.layout(s,"left","bottom")
|
||||
local rbottom = widgets.layout(s,"right","bottom")
|
||||
local ltop = widgets.layout(s, "left", "top")
|
||||
local rtop = widgets.layout(s, "right", "top")
|
||||
local lbottom = widgets.layout(s, "left", "bottom")
|
||||
local rbottom = widgets.layout(s, "right", "bottom")
|
||||
|
||||
widgets.add.clock("clock", s, ltop)
|
||||
widgets.add.clock("clock", ltop)
|
||||
|
||||
widgets.add.layout(s, lbottom)
|
||||
widgets.add.taglist("tags", s, lbottom)
|
||||
widgets.add.layout(lbottom)
|
||||
widgets.add.taglist("tags", lbottom)
|
||||
|
||||
widgets.add.mail("mail_me", s, rbottom, { os.getenv("HOME") .. "/.maildir/me" }, "bottom_right")
|
||||
widgets.add.mail("mail_me", rbottom, { os.getenv("HOME") .. "/.maildir/me" }, "bottom_right")
|
||||
widgets.add.spacer(rbottom)
|
||||
widgets.add.mail("mail_uber", s, rbottom, { os.getenv("HOME") .. "/.maildir/uber" }, "bottom_right")
|
||||
widgets.add.mail("mail_uber", rbottom, { os.getenv("HOME") .. "/.maildir/uber" }, "bottom_right")
|
||||
|
||||
widgets.add.cpu("cpu", s, rtop)
|
||||
widgets.add.cpu("cpu", rtop)
|
||||
widgets.add.spacer(rtop)
|
||||
widgets.add.battery("bat", s, rtop, "BAT0")
|
||||
widgets.add.battery("int", rtop, "BAT0")
|
||||
widgets.add.spacer(rtop)
|
||||
widgets.add.battery("slice", s, rtop, "BAT1")
|
||||
widgets.add.battery("ext", rtop, "BAT1")
|
||||
widgets.add.spacer(rtop)
|
||||
widgets.add.wifi("wlan", s, rtop, "wlan0")
|
||||
widgets.add.wifi("wlan", rtop, "wlan0")
|
||||
widgets.add.spacer(rtop)
|
||||
widgets.add.systray(s, rtop)
|
||||
widgets.add.systray(rtop)
|
||||
|
||||
widgets.set_spacer_text(" ◈ ")
|
||||
widgets.set_spacer_text(" ◈ ")
|
||||
end
|
||||
-- }}}
|
||||
|
||||
|
|
59
widgets.lua
59
widgets.lua
|
@ -86,7 +86,6 @@ local function setup() -- {{{
|
|||
bars[s].right.top = right_top_layout
|
||||
end
|
||||
end -- }}}
|
||||
widgets.setup = setup
|
||||
|
||||
-- }}}
|
||||
--------------------------------------------------------------------------------
|
||||
|
@ -114,7 +113,7 @@ widgets.update = update
|
|||
local function get_layout(screen, bar, align) --{{{
|
||||
if bars[screen][bar] == nil then return nil end
|
||||
|
||||
return bars[screen][bar][align]
|
||||
return {screen = screen, layout = bars[screen][bar][align]}
|
||||
end --}}}
|
||||
widgets.layout = get_layout
|
||||
|
||||
|
@ -126,7 +125,7 @@ widgets.layout = get_layout
|
|||
--------------------------------------------------------------------------------
|
||||
|
||||
-- mail widget
|
||||
local function mailwidget(name, screen, parent_layout, mailboxes, notify_pos) --{{{
|
||||
local function mailwidget(name, parent, mailboxes, notify_pos) --{{{
|
||||
local widget = wibox.widget.textbox()
|
||||
local bg = wibox.widget.background()
|
||||
bg:set_widget(widget)
|
||||
|
@ -149,60 +148,60 @@ local function mailwidget(name, screen, parent_layout, mailboxes, notify_pos) --
|
|||
end
|
||||
return "⬓⬓ Unread "..args[2].." / New "..args[1].. " "
|
||||
end, 0, mailboxes)
|
||||
wlist[screen][name] = widget
|
||||
parent_layout:add(bg)
|
||||
wlist[parent.screen][name] = widget
|
||||
parent.layout:add(bg)
|
||||
widgets.update(name)
|
||||
end
|
||||
--}}}
|
||||
widgets.add.mail = mailwidget
|
||||
|
||||
-- text clock
|
||||
local function clockwidget(name, screen, parent_layout) -- {{{
|
||||
wlist[screen][name] = awful.widget.textclock()
|
||||
parent_layout:add(wlist[screen][name])
|
||||
local function clockwidget(name, parent) -- {{{
|
||||
wlist[parent.screen][name] = awful.widget.textclock()
|
||||
parent.layout:add(wlist[parent.screen][name])
|
||||
end
|
||||
--}}}
|
||||
widgets.add.clock = clockwidget
|
||||
|
||||
-- layoutbox
|
||||
local function layoutwidget(screen, parent_layout) -- {{{
|
||||
wlist[screen]["layout"] = awful.widget.layoutbox(s)
|
||||
parent_layout:add(wlist[screen]["layout"])
|
||||
local function layoutwidget(parent) -- {{{
|
||||
wlist[parent.screen]["layout"] = awful.widget.layoutbox(s)
|
||||
parent.layout:add(wlist[parent.screen]["layout"])
|
||||
end
|
||||
--}}}
|
||||
widgets.add.layout = layoutwidget
|
||||
|
||||
-- taglist
|
||||
local function taglistwidget(name, screen, parent_layout) --{{{
|
||||
local function taglistwidget(name, parent) --{{{
|
||||
-- Create a taglist widget
|
||||
wlist[screen][name] = awful.widget.taglist(screen,
|
||||
wlist[parent.screen][name] = awful.widget.taglist(parent.screen,
|
||||
awful.widget.taglist.filter.all,
|
||||
mytaglist.buttons)
|
||||
parent_layout:add(wlist[screen][name])
|
||||
parent.layout:add(wlist[parent.screen][name])
|
||||
end --}}}
|
||||
widgets.add.taglist = taglistwidget
|
||||
|
||||
-- system tray
|
||||
-- not using a name argument, because only one systray is allowed
|
||||
local function systraywidget(screen, parent_layout) --{{{
|
||||
local function systraywidget(parent) --{{{
|
||||
if (wlist["systray"] ~= nil) then
|
||||
return
|
||||
end
|
||||
wlist["systray"] = wibox.widget.systray()
|
||||
parent_layout:add(wlist["systray"])
|
||||
parent.layout:add(wlist["systray"])
|
||||
end --}}}
|
||||
widgets.add.systray = systraywidget
|
||||
|
||||
-- cpu usage
|
||||
local function cpuwidget(name, screen, parent_layout) --{{{
|
||||
wlist[screen][name] = wibox.widget.textbox()
|
||||
vicious.register(wlist[screen][name], vicious.widgets.cpu, "CPU: $1%")
|
||||
parent_layout:add(wlist[screen][name])
|
||||
local function cpuwidget(name, parent) --{{{
|
||||
wlist[parent.screen][name] = wibox.widget.textbox()
|
||||
vicious.register(wlist[parent.screen][name], vicious.widgets.cpu, "CPU: $1%")
|
||||
parent.layout:add(wlist[parent.screen][name])
|
||||
end --}}}
|
||||
widgets.add.cpu = cpuwidget
|
||||
|
||||
-- battery
|
||||
local function batterywidget(name, screen, parent_layout, batname) --{{{
|
||||
local function batterywidget(name, parent, batname) --{{{
|
||||
print("creating batwidget '" .. name .. "' for battery '"..batname.."'")
|
||||
local widget = wibox.widget.textbox()
|
||||
local bg = wibox.widget.background()
|
||||
|
@ -221,18 +220,18 @@ local function batterywidget(name, screen, parent_layout, batname) --{{{
|
|||
args[1]..args[2].."% - "..args[3]
|
||||
end
|
||||
end, 61, batname)
|
||||
wlist[screen][name] = widget
|
||||
parent_layout:add(bg)
|
||||
wlist[parent.screen][name] = widget
|
||||
parent.layout:add(bg)
|
||||
widgets.update(name)
|
||||
end --}}}
|
||||
widgets.add.battery = batterywidget
|
||||
|
||||
-- wireless status
|
||||
local function wifiwidget(name, screen, parent_layout, interface) --{{{
|
||||
wlist[screen][name] = wibox.widget.textbox()
|
||||
vicious.register(wlist[screen][name], vicious.widgets.wifi,
|
||||
local function wifiwidget(name, parent, interface) --{{{
|
||||
wlist[parent.screen][name] = wibox.widget.textbox()
|
||||
vicious.register(wlist[parent.screen][name], vicious.widgets.wifi,
|
||||
"WLAN ${ssid} @ ${sign}, Q:${link}/70", 31, interface)
|
||||
parent_layout:add(wlist[screen][name])
|
||||
parent.layout:add(wlist[parent.screen][name])
|
||||
end --}}}
|
||||
widgets.add.wifi = wifiwidget
|
||||
|
||||
|
@ -247,8 +246,8 @@ local spacer = wibox.widget.textbox()
|
|||
spacer:set_text(" ")
|
||||
|
||||
-- manual spacing between widgets
|
||||
local function spacerwidget(parent_layout) --{{{
|
||||
parent_layout:add(spacer)
|
||||
local function spacerwidget(parent) --{{{
|
||||
parent.layout:add(spacer)
|
||||
end --}}}
|
||||
widgets.add.spacer = spacerwidget
|
||||
|
||||
|
@ -261,6 +260,8 @@ widgets.set_spacer_text = spacertext
|
|||
-- }}}
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
setup()
|
||||
|
||||
return widgets
|
||||
|
||||
-- vim:foldmethod=marker
|
||||
|
|
Loading…
Reference in a new issue