Ticket #6106: scrolldiff.out

File scrolldiff.out, 7.1 KB (added by avdongen@…, 11 years ago)

Patch to consequently add (or don't add) spaces on menus

Line 
1Index: mythtv/programs/mythlcdserver/lcdprocclient.cpp
2===================================================================
3--- mythtv/programs/mythlcdserver/lcdprocclient.cpp     (revision 19631)
4+++ mythtv/programs/mythlcdserver/lcdprocclient.cpp     (working copy)
5@@ -30,7 +30,6 @@
6 #define LCD_TIME_TIME       5000
7 #define LCD_SCROLLLIST_TIME 2000
8 
9-int lcdStartCol = LCD_START_COL;
10 
11 LCDProcClient::LCDProcClient(LCDServer *lparent) :
12     QObject(NULL, "LCDProcClient")
13@@ -56,11 +55,6 @@
14     cellWidth = 1;
15     cellHeight = 1;
16     lcdStartCol = LCD_START_COL;
17-    if (lcdWidth < 12)
18-        if (lcdHeight == 1)
19-           lcdStartCol = 0;
20-        else
21-           lcdStartCol = 1;
22 
23     hostname = "";
24     port = 13666;
25@@ -221,34 +215,36 @@
26 void LCDProcClient::setPriority(const QString &screen, PRIORITY priority)
27 {
28     QString aString;
29-
30+    int err  = 0;
31     aString = "screen_set ";
32     aString += screen;
33     aString += " priority ";
34 
35     switch (priority) {
36     case TOP:
37-      aString += QString::number (prioTop);
38+      aString += prioTop;
39       break;
40     case URGENT:
41-      aString += QString::number (prioUrgent);
42+      aString += prioUrgent;
43       break;
44     case HIGH:
45-      aString += QString::number (prioHigh);
46+      aString += prioHigh;
47       break;
48     case MEDIUM:
49-      aString += QString::number (prioMedium);
50+      aString += prioMedium;
51       break;
52     case LOW:
53-      aString += QString::number (prioLow);
54+      aString += prioLow;
55       break;
56     case OFF:
57-      aString += QString::number (prioOff);
58+      aString += prioOff;
59       break;
60-
61+    default:
62+      err = 1;
63+      break;
64     }
65-
66-    sendToServer (aString);
67+    if (err == 0)
68+      sendToServer (aString);
69 }
70 
71 void LCDProcClient::setHeartbeat (const QString &screen, bool onoff)
72@@ -622,7 +618,18 @@
73     if (x < 1 || x > 80)
74         return;
75     else
76+    {
77         lcdWidth = x;
78+        if (lcdWidth < 12)
79+        { 
80+            if (lcdHeight == 1)
81+               lcdStartCol = 0;
82+            else
83+               lcdStartCol = 1;
84+        }
85+        else
86+            lcdStartCol = LCD_START_COL;
87+    }
88 }
89 
90 void LCDProcClient::setHeight(unsigned int x)
91@@ -662,22 +669,22 @@
92     {
93         // Latest CVS versions of LCDd has priorities switched
94         pVersion = LCD_VERSION_5;
95-        prioTop = 252;
96-        prioUrgent = 248;
97-        prioHigh = 240;
98-        prioMedium = 128;
99-        prioLow = 64;
100-        prioOff = 0;
101+        prioTop = "input";
102+        prioUrgent = "alert";
103+        prioHigh = "foreground";
104+        prioMedium = "info";
105+        prioLow = "background";
106+        prioOff = "hidden";
107     }
108     else
109     {
110         pVersion = LCD_VERSION_4;
111-        prioTop = 64;
112-        prioUrgent = 128;
113-        prioHigh = 240;
114-        prioMedium = 248;
115-        prioLow = 252;
116-        prioOff = 255;
117+        prioTop = "64";
118+        prioUrgent = "128";
119+        prioHigh = "240";
120+        prioMedium = "248";
121+        prioLow = "252";
122+        prioOff = "255";
123     }
124 }
125 
126@@ -1193,7 +1200,7 @@
127 
128     // Write out the app name
129     if (lcdHeight > 1)
130-    outputCenteredText("Menu", app_name, "topWidget", 1);
131+        outputCenteredText("Menu", app_name, "topWidget", 1);
132 
133     QPtrListIterator<LCDMenuItem> it(*menuItems);
134     LCDMenuItem *curItem;
135@@ -1278,9 +1285,9 @@
136                 {
137                     switch (curItem->isChecked())
138                     {
139-                        case CHECKED: aString += "X "; break;
140-                        case UNCHECKED: aString += "O "; break;
141-                        case NOTCHECKABLE: aString += "  "; break;
142+                        case CHECKED: aString += "X"; break;
143+                        case UNCHECKED: aString += "O"; break;
144+                        case NOTCHECKABLE: break;
145                         default: break;
146                     }
147                 }
148@@ -1347,13 +1354,26 @@
149         else
150             aString += " ";
151 
152-        switch (curItem->isChecked())
153+        if (lcdStartCol == 1)  // small display -> don't waste space for additional spaces
154         {
155-            case CHECKED: aString += "X "; break;
156-            case UNCHECKED: aString += "O "; break;
157-            case NOTCHECKABLE: aString += "  "; break;
158-            default: break;
159+            switch (curItem->isChecked())
160+            {
161+                case CHECKED: aString += "X"; break;
162+                case UNCHECKED: aString += "O"; break;
163+                case NOTCHECKABLE: aString += ""; break;
164+                default: break;
165+            }
166         }
167+        else if (lcdStartCol != 0)
168+        {
169+            switch (curItem->isChecked())
170+            {
171+                case CHECKED: aString += "X "; break;
172+                case UNCHECKED: aString += "O "; break;
173+                case NOTCHECKABLE: aString += "  "; break;
174+                default: break;
175+            }
176+        }
177 
178         aString += curItem->ItemName().left(lcdWidth - lcdStartCol) + "\"";
179         sendToServer(aString);
180@@ -1470,26 +1490,26 @@
181 
182                 if (lcdHeight == 2)
183                 {
184-                aString  = "widget_set Menu menuWidget1 1 2 \">";
185+                    aString  = "widget_set Menu menuWidget1 1 2 \">";
186                 }
187                 else
188                 {
189                     aString  = "widget_set Menu menuWidget1 1 1 \"";
190                 }
191 
192-                if (lcdWidth < 12)
193+                if (lcdStartCol == 1)  // small display -> don't waste space for additional spaces
194                 {
195-                    switch(curItem->isChecked())
196+                    switch (curItem->isChecked())
197                     {
198                         case CHECKED: aString += "X"; break;
199                         case UNCHECKED: aString += "O"; break;
200-                        case NOTCHECKABLE: aString += ""; break;
201+                        case NOTCHECKABLE: break;
202                         default: break;
203                     }
204                 }
205-                else
206+                else if (lcdStartCol != 0)
207                 {
208-                    switch(curItem->isChecked())
209+                    switch (curItem->isChecked())
210                     {
211                         case CHECKED: aString += "X "; break;
212                         case UNCHECKED: aString += "O "; break;
213Index: mythtv/programs/mythlcdserver/lcdprocclient.h
214===================================================================
215--- mythtv/programs/mythlcdserver/lcdprocclient.h       (revision 19631)
216+++ mythtv/programs/mythlcdserver/lcdprocclient.h       (working copy)
217@@ -150,17 +150,18 @@
218     void setVersion(const QString &, const QString &);
219     void describeServer();
220 
221-    unsigned int prioTop;
222-    unsigned int prioUrgent;
223-    unsigned int prioHigh;
224-    unsigned int prioMedium;
225-    unsigned int prioLow;
226-    unsigned int prioOff;
227+    QString  prioTop;
228+    QString  prioUrgent;
229+    QString  prioHigh;
230+    QString  prioMedium;
231+    QString  prioLow;
232+    QString  prioOff;
233 
234     unsigned int lcdWidth;
235     unsigned int lcdHeight;
236     unsigned int cellWidth;
237     unsigned int cellHeight;
238+    unsigned int lcdStartCol;
239 
240     QString serverVersion;
241     QString protocolVersion;