Author: titmuss
Date: Fri Jan 18 08:57:08 2008
New Revision: 1503
URL: http://svn.slimdevices.com?rev=1503&root=Jive&view=rev
Log:
Bug: N/A
Description:
Modify the ui after discussions with Dean.
Modified:
trunk/jive/src/pkg/jive/share/applets/SetupSlimServers/SetupSlimServersApplet.lua
trunk/jive/src/pkg/jive/share/applets/SetupSlimServers/strings.txt
Modified:
trunk/jive/src/pkg/jive/share/applets/SetupSlimServers/SetupSlimServersApplet.lua
URL:
http://svn.slimdevices.com/trunk/jive/src/pkg/jive/share/applets/SetupSlimServers/SetupSlimServersApplet.lua?rev=1503&root=Jive&r1=1502&r2=1503&view=diff
==============================================================================
---
trunk/jive/src/pkg/jive/share/applets/SetupSlimServers/SetupSlimServersApplet.lua
(original)
+++
trunk/jive/src/pkg/jive/share/applets/SetupSlimServers/SetupSlimServersApplet.lua
Fri Jan 18 08:57:08 2008
@@ -109,28 +109,6 @@
}
menu:addItem(item)
- --[[
- -- Remove auto discovery, most of the time Jive now is only
- -- connected to the same server as the current player, so
- -- this is less relevant.
- item = {
- text = self:string("SLIMSERVER_AUTO_DISCOVERY"),
- sound = "WINDOWSHOW",
- icon = Checkbox("checkbox",
- function(object, isSelected)
- if isSelected then
- self:_add("255.255.255.255")
- else
- self:_del("255.255.255.255")
- end
- end,
- poll["255.255.255.255"] ~= nil
- ),
- weight = 4
- }
- menu:addItem(item)
- --]]
-
-- Store the applet settings when the window is closed
window:addListener(EVENT_WINDOW_POP,
function()
@@ -156,20 +134,30 @@
self.serverMenu:removeItem(self.serverList[server:getIpPort()])
end
+ local currentPlayer = self.sdApplet:getCurrentPlayer()
+
-- new entry
- local item = {
- text = server and server:getName() or address,
- sound = "WINDOWSHOW",
- callback = function() self:_serverMenu(server, address) end,
- weight = 1
- }
-
- -- this is the current server if _server.id == id .. ":" .. port
- local currentPlayer = self.sdApplet:getCurrentPlayer()
- if currentPlayer then
+ local item
+ if server and currentPlayer then
+ item = {
+ text = server:getName(),
+ sound = "WINDOWSHOW",
+ callback = function()
+ self:connectPlayer(currentPlayer,
server)
+ end,
+ weight = 1
+ }
+
+ -- check current player
if server == currentPlayer:getSlimServer() then
item.style = 'checked'
end
+ else
+ item = {
+ text = server and server:getName() or address,
+ weight = 1,
+ style = 'itemNoAction'
+ }
end
self.serverMenu:addItem(item)
@@ -193,54 +181,6 @@
self:_addServerItem(nil, address)
end
end
-end
-
-
-function _serverMenu(self, server, address)
- local name = server and server:getName() or address
-
- local window = Window("window", name)
- local menu = SimpleMenu("menu", items)
-
- local currentPlayer = self.sdApplet:getCurrentPlayer()
-
- if server then
- if server and currentPlayer and currentPlayer:getSlimServer()
~= server then
- menu:addItem({
- text =
self:string("SLIMSERVER_CONNECT", name),
- callback = function()
-
self:connectPlayer(currentPlayer, server)
- window:hide()
- end
- })
- end
-
- menu:addItem({
- text = self:string("SLIMSERVER_ADDRESS"),
- icon = Label("value", table.concat({
server:getIpPort() }, ":"))
- })
- menu:addItem({
- text = self:string("SLIMSERVER_VERSION"),
- icon = Label("value", server:getVersion()
or "")
- })
- end
-
- local poll = self.sdApplet:pollList()
- local id = address or server:getIpPort()
- if poll[id] then
- menu:addItem({
- text = self:string("SLIMSERVER_FORGET",
name),
- sound = "WINDOWHIDE",
- callback = function()
- self:_del(id)
-
self:_delServerItem(nil, id)
- window:hide()
- end
- })
- end
-
- window:addWidget(menu)
- self:tieAndShowWindow(window)
end
@@ -383,35 +323,41 @@
end
+function _getOtherServer(self)
+ local list = self.sdApplet:pollList()
+ for i,v in pairs(list) do
+ if i ~= "255.255.255.255" then
+ return i
+ end
+ end
+
+ return nil
+end
+
+
-- remove broadcast address & add new address
function _add(self, address)
log:debug("SlimServerApplet:_add: ", address)
- local list = self.sdApplet:pollList()
- list[address] = address
+ -- only keep other server and the broadcast address
+ local oldAddress = self:_getOtherServer()
+ self:_delServerItem(nil, oldAddress)
+
+ local list = {
+ ["255.255.255.255"] = "255.255.255.255",
+ [address] = address
+ }
self.sdApplet:pollList(list)
self:getSettings().poll = list
end
-
--- remove address and add broadcast if no other addresses
-function _del(self, address)
- log:debug("SlimServerApplet:_del: ", address)
-
- local list = self.sdApplet:pollList()
- list[address] = nil
-
- self.sdApplet:pollList(list)
- self:getSettings().poll = list
-end
-
-- ip address input window
function _addServer(self, menuItem)
local window = Window("window", menuItem.text)
- local v = Textinput.ipAddressValue("0.0.0.0")
+ local v = Textinput.ipAddressValue(self:_getOtherServer() or "0.0.0.0")
local input = Textinput("textinput", v,
function(_, value)
self:_add(value:getValue())
Modified: trunk/jive/src/pkg/jive/share/applets/SetupSlimServers/strings.txt
URL:
http://svn.slimdevices.com/trunk/jive/src/pkg/jive/share/applets/SetupSlimServers/strings.txt?rev=1503&root=Jive&r1=1502&r2=1503&view=diff
==============================================================================
--- trunk/jive/src/pkg/jive/share/applets/SetupSlimServers/strings.txt
(original)
+++ trunk/jive/src/pkg/jive/share/applets/SetupSlimServers/strings.txt Fri Jan
18 08:57:08 2008
@@ -9,38 +9,6 @@
FR Source musicale
IT Sorgente musicale
NL Muziekbron
-
-SLIMSERVER_AUTO_DISCOVERY
- DE Autom. Erkennung
- EN Auto Discovery
- ES Detección automática
- FR Détection automatique
- IT Rilevamento automatico
- NL Autom. detectie
-
-SLIMSERVER_FORGET
- DE %s vergessen
- EN Forget %s
- ES Olvidar %s
- FR Ignorer %s
- IT Ignora %s
- NL %s vergeten
-
-SLIMSERVER_ADDRESS
- DE Adresse:
- EN Address:
- ES Dirección:
- FR Adresse:
- IT Indirizzo:
- NL Adres:
-
-SLIMSERVER_VERSION
- DE Version:
- EN Version:
- ES Versión:
- FR Version:
- IT Versione:
- NL Versie:
SLIMSERVER_ADD_SERVER
DE Anderer Server
@@ -82,10 +50,6 @@
IT Connesso a\n%s
NL Verbonden met\n%s
-SLIMSERVER_CONNECT
- EN Use %s
-
-
SQUEEZEBOX_PROBLEM
DE Verbindungsproblem
EN Problem Connecting
_______________________________________________
Jive-checkins mailing list
[email protected]
http://lists.slimdevices.com/cgi-bin/mailman/listinfo/jive-checkins