Author: adrian
Date: Sun Mar  7 13:51:16 2010
New Revision: 8637

URL: http://svn.slimdevices.com/jive?rev=8637&view=rev
Log:
Bug: N/A
Description: add IR and touch support for NetTest so it can be used on Touch, 
could still do with layout improvements

Modified:
    
7.5/trunk/squeezeplay/src/squeezeplay/share/applets/SetupNetTest/SetupNetTestApplet.lua
    
7.5/trunk/squeezeplay/src/squeezeplay/share/applets/SetupNetTest/SetupNetTestMeta.lua
    7.5/trunk/squeezeplay/src/squeezeplay/share/applets/SetupNetTest/strings.txt

Modified: 
7.5/trunk/squeezeplay/src/squeezeplay/share/applets/SetupNetTest/SetupNetTestApplet.lua
URL: 
http://svn.slimdevices.com/jive/7.5/trunk/squeezeplay/src/squeezeplay/share/applets/SetupNetTest/SetupNetTestApplet.lua?rev=8637&r1=8636&r2=8637&view=diff
==============================================================================
--- 
7.5/trunk/squeezeplay/src/squeezeplay/share/applets/SetupNetTest/SetupNetTestApplet.lua
 (original)
+++ 
7.5/trunk/squeezeplay/src/squeezeplay/share/applets/SetupNetTest/SetupNetTestApplet.lua
 Sun Mar  7 13:51:16 2010
@@ -25,10 +25,14 @@
 local Window        = require("jive.ui.Window")
 local Textarea      = require("jive.ui.Textarea")
 local Label         = require("jive.ui.Label")
+local Button        = require("jive.ui.Button")
+local RadioButton   = require("jive.ui.RadioButton")
+local RadioGroup    = require("jive.ui.RadioGroup")
 local Surface       = require("jive.ui.Surface")
 local Icon          = require("jive.ui.Icon")
 local Popup         = require("jive.ui.Popup")
 local Timer         = require("jive.ui.Timer")
+local ContextMenuWindow = require("jive.ui.ContextMenuWindow")
 
 local debug         = require("jive.utils.debug")
 
@@ -75,6 +79,8 @@
                }
        })
 
+       local title = Button(Label("textButton", 
self:string('SETUPNETTEST_TESTING')), function() self:showContextMenu() end)
+       self.window:setIconWidget("text", title)
        self:tieAndShowWindow(self.window)
 
        local timer = Timer(1000, function() 
self.window:addWidget(Textarea("text", self:string('SETUPNETTEST_NOSERVER'))) 
end, true)
@@ -108,7 +114,7 @@
        self.window:focusWidget(nil)
        self.window:addActionListener("add", self, _event_handler)
        self.window:addActionListener("go", self, _event_handler)
-       self.window:addListener(EVENT_SCROLL,
+       self.window:addListener(EVENT_SCROLL | EVENT_IR_ALL,
                function(event)
                        return _event_handler(self, event)
                end
@@ -127,11 +133,12 @@
 
        local type = event:getType()
 
-       if type == EVENT_SCROLL then
+       if type == EVENT_SCROLL or 
+               (type == EVENT_IR_DOWN and (event:isIRCode("arrow_up") or 
event:isIRCode("arrow_down"))) then
                local rate = self.rate or 0
                local index = self.index[rate] or 1
 
-               if event:getScroll() > 0 then
+               if (type == EVENT_SCROLL and event:getScroll() > 0) or (type == 
EVENT_IR_DOWN and event:isIRCode("arrow_down")) then
                        if index < #self.rates then index = index + 1 end
                else
                        if index > 1 then index = index - 1 end
@@ -155,6 +162,11 @@
                return EVENT_CONSUME
        end
 
+       if type == EVENT_IR_DOWN and event:isIRCode("arrow_right") then
+               self:showHelpWindow()
+               return EVENT_CONSUME
+       end
+
        return EVENT_UNUSED
 end
 
@@ -168,6 +180,37 @@
        self:tieAndShowWindow(window)
 
        return window
+end
+
+
+function showContextMenu(self)
+       local window = ContextMenuWindow(self:string('SETUPNETTEST_TESTING'))
+       local menu = SimpleMenu("menu")
+       local group = RadioGroup()
+       
+       for index, rate in ipairs(self.rates) do
+               menu:addItem({ 
+                       text  = rate .. " kbps",
+                       style = 'item_choice',
+                       check = RadioButton("radio",
+                                                               group,
+                                                               function(_, 
isSelected)
+                                                                       
self:startTest(rate)
+                                                               end,
+                                                               rate == 
self.rate
+                                       )
+               })
+       end
+
+       menu:addItem({
+               text = self:string('SETUPNETTEST_INFO'),
+               callback = function()
+                                          self:showHelpWindow()
+                                  end
+       })
+
+       window:addWidget(menu)
+       self:tieAndShowWindow(window)
 end
 
 

Modified: 
7.5/trunk/squeezeplay/src/squeezeplay/share/applets/SetupNetTest/SetupNetTestMeta.lua
URL: 
http://svn.slimdevices.com/jive/7.5/trunk/squeezeplay/src/squeezeplay/share/applets/SetupNetTest/SetupNetTestMeta.lua?rev=8637&r1=8636&r2=8637&view=diff
==============================================================================
--- 
7.5/trunk/squeezeplay/src/squeezeplay/share/applets/SetupNetTest/SetupNetTestMeta.lua
 (original)
+++ 
7.5/trunk/squeezeplay/src/squeezeplay/share/applets/SetupNetTest/SetupNetTestMeta.lua
 Sun Mar  7 13:51:16 2010
@@ -23,30 +23,29 @@
        return 1, 1
 end
 
-
-function registerApplet(meta)
-       jnt:subscribe(meta)
-
-       meta.menu = meta:menuItem('appletSetupNetTest', 'hidden', 
meta:string('SETUPNETTEST'), function(applet, ...) applet:open(...) end, 100)
-       -- add the menu item to homeMenu but 'hidden', or else the 
playerCurrent notification method below quits happening (not sure why this is 
the case, but it is)
-       -- item will be made visible by moving it to advancedSettings in the 
playerCurrent notification below
-       jiveMain:addItem(meta.menu)
+function registerApplet(self)
+       jnt:subscribe(self)
+       self.menu = self:menuItem('appletSetupNetTest', 'hidden', 
self:string("SETUPNETTEST"), function(applet, ...) applet:open(...) end, 100)
+       -- to begin with, we place this in the 'hidden' node
+       jiveMain:addItem(self.menu)
 end
 
--- hide menu item when player goes away
-function notify_playerDelete(meta, player)
-       jiveMain:removeItemFromNode(meta.menu, 'advancedSettings')
+function notify_serverConnected(self, server)
+       self:_checkServer()
 end
 
-function notify_playerCurrent(meta, player)
-       -- don't show this item if the player object: 
-       --   a. doesn't exist
-       --   b. isn't connected to a server (now possible)
-       --   c. connected to SN
-       if player == nil or not player:getSlimServer() or ( 
player:getSlimServer() and player:getSlimServer():isSqueezeNetwork() ) then
-               jiveMain:removeItemFromNode(meta.menu, 'advancedSettings')
-       else
-               jiveMain:setCustomNode('appletSetupNetTest', 'advancedSettings')
-       end
+function notify_serverDisconnected(self, server)
+       self:_checkServer()
 end
 
+function _checkServer(self)
+       for _, server in appletManager:callService("iterateSqueezeCenters") do
+               if server:isConnected() and not server:isSqueezeNetwork() then
+                       -- found a local server - show menu entry
+                       jiveMain:setCustomNode('appletSetupNetTest', 
'advancedSettings')
+                       return
+               end
+       end
+       -- hide menu entry
+       jiveMain:removeItemFromNode(self.menu, 'advancedSettings')
+end

Modified: 
7.5/trunk/squeezeplay/src/squeezeplay/share/applets/SetupNetTest/strings.txt
URL: 
http://svn.slimdevices.com/jive/7.5/trunk/squeezeplay/src/squeezeplay/share/applets/SetupNetTest/strings.txt?rev=8637&r1=8636&r2=8637&view=diff
==============================================================================
--- 
7.5/trunk/squeezeplay/src/squeezeplay/share/applets/SetupNetTest/strings.txt 
(original)
+++ 
7.5/trunk/squeezeplay/src/squeezeplay/share/applets/SetupNetTest/strings.txt 
Sun Mar  7 13:51:16 2010
@@ -124,7 +124,7 @@
        CS      Pro výběr rychlosti testování dat použijte kolečko a 
nechte běžet test po stanovenou dobu.\n\nHorní graf ukazuje aktuální 
výkon sítě jakožto zlomek rychlosti testu.\n\nNa spodním grafu je 
znázorněna historie výsledků testů, které jsou seskupeny do 
výkonnostních pásem a označeny barevně: červeně,  žlutě a 
zeleně.\n\nDobrá výkonnost sítě je indikována minimálním množstvím 
klipů v horním grafu a pouze zelenými lištami na spodním grafu. 
\n\nVidíte-li mnoho klipů v horním grafu a výrazné červené lišty na 
spodním grafu, výkonnost sítě není přijatelná pro přehrávání 
datových proudů při této datové rychlosti.
        DA      Brug drejeknappen til at vælge den datahastighed der skal 
bruges i testen, og lad testen køre i et stykke tid.\n\nDen øverste graf 
viser den nuværende netværkshastighed som en procentdel af 
testhastigheden.\n\nDen nederste graf viser en oversigt over testresultaterne, 
der er grupperet efter hastighed og farvet hhv. røde, gule og grønne.\n\nEn 
god netværksforbindelse er kendetegnet ved at der kun er minimale drop i den 
øverste graf og udelukkende grønne bjælker i den nederste.\n\nHvis der er 
mange drop i den øverste graf og en del røde bjælker i den nederste, er 
netværksforbindelsen sandsynligvis ikke god nok til at der kan streames med 
denne datahastighed.
        DE      Wählen Sie mit dem Rad eine Datenrate, um sie zu testen und 
lassen Sie den Test eine gewisse Zeit laufen.\n\nDer obere Graph zeigt die 
aktuelle Netzwerkleistung als Bruch der Testrate.\n\nDer untere Graph zeigt den 
Verlauf der Testergebnisse nach Leistungsgruppen (Rot, Bernstein und Grün) 
geordnet.\n\nDie Netzwerkleistung ist gut, wenn geringe Abfälle im oberen 
Graphen und nur grüne Balken im unteren Graphen angezeigt werden.\n\nEnthält 
der obere Graph viele Abfälle und der untere viele rote Balken, ist die 
Netzwerkleistung eventuell zur Übertragung mit dieser Datenrate nicht 
ausreichend.
-       EN      Use the scroll wheel to select a data rate to test at and leave 
the test running for a period of time.\n\nThe top graph shows the current 
network performance as a fraction of the test rate.\n\nThe lower graph shows 
the history of test results grouped into performance bands which are colour 
coded Red, Amber and Green.\n\nGood network performance is indicated by minimal 
dips in the top graph and only Green bars on the lower graph.\n\nIf you see 
frequent dips in the top graph and significant Red bars on the lower graph, 
network performance may not be acceptable for streaming at this data rate.
+       EN      Select a data rate to test at and leave the test running for a 
period of time.\n\nThe top graph shows the current network performance as a 
fraction of the test rate.\n\nThe lower graph shows the history of test results 
grouped into performance bands which are colour coded Red, Amber and 
Green.\n\nGood network performance is indicated by minimal dips in the top 
graph and only Green bars on the lower graph.\n\nIf you see frequent dips in 
the top graph and significant Red bars on the lower graph, network performance 
may not be acceptable for streaming at this data rate.
        ES      Utilice la rueda de desplazamiento para seleccionar la 
velocidad de datos a la que desea realizar la prueba y deje la prueba en 
ejecución durante un tiempo.\n\nEl gráfico superior muestra el rendimiento 
actual de la red en forma de fracción de la velocidad de la prueba.\n\nEl 
gráfico inferior muestra el historial de los resultados de la prueba, los 
cuales se agrupan mediante colores según el rendimiento: rojo, ámbar y 
verde.\n\nSi el rendimiento es bueno, el gráfico superior mostrará pocas 
bajadas y sólo se verán barras verdes en el gráfico inferior.\n\nSi ve 
muchas bajadas en el gráfico superior y bastantes barras rojas en el gráfico 
inferior, puede que el rendimiento de la red no sea suficiente para transmitir 
por secuencias a esta velocidad de datos.
        FI      Valitse testattava siirtonopeus vierityskiekolla ja anna testin 
olla käynnissä jonkin aikaa.\n\nYläkaaviossa näkyy verkon suorituskyky 
testinopeuden osana.\n\nAlakaaviossa näkyvät aiemmat testitulokset 
ryhmitettyinä suorituskykykaistoihin, jotka ovat väreiltään punaisia, 
keltaisia ja vihreitä.\n\nHyvä verkon suorituskyky näkyy minimaalisina 
pudotuksina yläkaaviossa ja pelkästään vihreinä palkkeina 
alakaaviossa.\n\nJos yläkaaviossa näkyy useita pudotuksia ja alakaaviossa on 
huomattavasti punaisia palkkeja, verkon suorituskyky ei ehkä riitä 
virtauttamiseen tällä siirtonopeudella.
        FR      Utilisez la molette pour sélectionner un débit à tester et 
laissez le test s'exécuter pour une certaine période.\n\nLe graphique 
supérieur illustre la performance actuelle du réseau en pour cent du débit 
testé.\n\nLe graphique inférieur affiche l'historique des résultats du test 
groupés d'après leur performance, signalée par les couleurs rouge, orange et 
vert.\n\nUn graphique supérieur ne présentant que des baisses minimales et un 
graphique inférieur ne contenant que des barres vertes témoignent d'un bon 
niveau de performance du réseau.\n\nL'apparition fréquente de baisses dans le 
graphique supérieur et de barres rouges dans le graphique inférieur indiquent 
que le niveau de performance du réseau n'est probablement pas suffisant pour 
diffuser à ce débit.

_______________________________________________
Jive-checkins mailing list
[email protected]
http://lists.slimdevices.com/mailman/listinfo/jive-checkins

Reply via email to