Ticket #6103: bigclock_v3.patch
File bigclock_v3.patch, 3.7 KB (added by , 17 years ago) |
---|
-
programs/mythlcdserver/lcdprocclient.cpp
426 426 sendToServer("widget_add Time sep num"); 427 427 sendToServer("widget_add Time d2 num"); 428 428 sendToServer("widget_add Time d3 num"); 429 dobigclock(1); 429 sendToServer("widget_add Time ampm string"); 430 sendToServer("widget_add Time dot string"); 430 431 } 431 432 else 432 433 { … … 1779 1780 1780 1781 void LCDProcClient::dobigclock (bool init) 1781 1782 { 1782 // kludge ahead: use illegal number to clear num display type1783 1783 QString aString; 1784 QString time = QTime::currentTime().toString(timeformat); 1785 int toffset = 0; 1784 1786 1785 QString time = QTime::currentTime().toString("hh:mm"); 1786 // each char is 3 wide, colon is 1 1787 // kludge ahead: use illegal number (11) to clear num display type 1788 1789 // kluge - Uses string length to determine time format for parsing 1790 // 1:00 = 4 characters = 24-hour format, 1 digit hour 1791 // 12:00 = 5 characters = 24-hour format, 2 digit hour 1792 // 1:00 am = 7 characters = 12-hour format, 1 digit hour 1793 // 12:00 am = 8 characters = 12-hour format, 2 digit hour 1794 if ((time.length()==8) || (time.length()==5)) 1795 toffset = 1; 1796 1797 // if 12-hour clock, add AM/PM indicator to end of the 2nd line 1798 if (time.length()>6) 1799 { 1800 aString = time.at(5+toffset); 1801 aString += time.at(6+toffset); 1802 } 1803 else 1804 { 1805 aString = " "; 1806 } 1807 outputRightText("Time", aString, "ampm", 2); 1808 1809 // Add Hour 10's Digit 1787 1810 aString = "widget_set Time d0 "; 1788 aString += QString::number(lcdWidth/2 - 7) + " ";1789 if ( init)1811 aString += QString::number(lcdWidth/2 - 6) + " "; 1812 if (toffset==0) 1790 1813 aString += "11"; 1791 1814 else 1792 aString += time.at(0); 1815 aString += time.at(0); 1793 1816 sendToServer(aString); 1794 1817 1818 // Add Hour 1's Digit 1795 1819 aString = "widget_set Time d1 "; 1796 aString += QString::number(lcdWidth/2 - 4) + " "; 1797 if (init) 1798 aString += "11"; 1799 else 1800 aString += time.at(1); 1820 aString += QString::number(lcdWidth/2 - 3) + " "; 1821 aString += time.at(0+toffset); 1801 1822 sendToServer(aString); 1802 1823 1824 // Add the Colon (made 'solid'- now flash a dot in the corner) 1825 aString = "widget_set Time sep "; 1826 aString += QString::number(lcdWidth/2); 1827 aString += " 10"; // 10 means: colon 1828 sendToServer(aString); 1829 1830 // Add Minute 10's Digit 1803 1831 aString = "widget_set Time d2 "; 1804 aString += QString::number(lcdWidth/2 + 2) + " "; 1805 if (init) 1806 aString += "11"; 1807 else 1808 aString += time.at(3); 1832 aString += QString::number(lcdWidth/2 + 1) + " "; 1833 aString += time.at(2+toffset); 1809 1834 sendToServer(aString); 1810 1835 1836 // Add Minute 1's Digit 1811 1837 aString = "widget_set Time d3 "; 1812 aString += QString::number(lcdWidth/2 + 5) + " "; 1813 if (init) 1814 aString += "11"; 1815 else 1816 aString += time.at(4); 1838 aString += QString::number(lcdWidth/2 + 4) + " "; 1839 aString += time.at(3+toffset); 1817 1840 sendToServer(aString); 1818 1841 1819 aString = "widget_set Time sep "; 1820 aString += QString::number(lcdWidth/2); 1842 // Added a flashing dot in the bottom-right corner (instead of the colon) 1821 1843 if (timeFlash) 1822 { // 10 means: colon1823 aString += " 10";1844 { 1845 outputRightText("Time",".","dot",4); 1824 1846 timeFlash = false; 1825 1847 } 1826 1848 else 1827 1849 { 1828 aString += " 11";1850 outputRightText("Time"," ","dot",4); 1829 1851 timeFlash = true; 1830 1852 } 1831 sendToServer(aString);1832 1853 } 1833 1854 1834 1835 1855 void LCDProcClient::outputTime() 1836 1856 { 1837 1857 if (lcd_bigclock)