You can subscribe to this list here.
| 2012 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
(5) |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 2013 |
Jan
(8) |
Feb
(6) |
Mar
(5) |
Apr
(7) |
May
(3) |
Jun
(5) |
Jul
|
Aug
(2) |
Sep
(4) |
Oct
(2) |
Nov
(8) |
Dec
(2) |
| 2014 |
Jan
(3) |
Feb
(2) |
Mar
(2) |
Apr
(3) |
May
|
Jun
|
Jul
(5) |
Aug
(4) |
Sep
|
Oct
(4) |
Nov
(5) |
Dec
(1) |
| 2015 |
Jan
|
Feb
(6) |
Mar
(24) |
Apr
(29) |
May
(43) |
Jun
(17) |
Jul
(2) |
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
|
From: Thilo G. <tux...@ne...> - 2013-04-30 06:20:06
|
Project "Tuxbox-GIT: cdk":
The branch, master has been updated
via 7e7921525b7f4535f6b943be878a21b82ac01135 (commit)
from 460f1bd69ee25ae5a13147158972ddb59d10115a (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
commit 7e7921525b7f4535f6b943be878a21b82ac01135
Author: GetAway <get...@t-...>
Date: Mon Apr 29 20:31:18 2013 +0200
version bump zlib-1.2.8
Signed-off-by: Thilo Graf <db...@no...>
diff --git a/rules-archive b/rules-archive
index 555e7e8..ef001c1 100644
--- a/rules-archive
+++ b/rules-archive
@@ -77,7 +77,7 @@ ncurses-5.3.tar.gz;ftp://$(gnuserver)/ncurses
jpegsrc.v6b.tar.gz;http://www.xfig.org/software/jpeg
libpng-1.2.50.tar.bz2;http://prdownloads.sourceforge.net/sourceforge/libpng
libxml2-2.4.30.tar.gz;ftp://ftp.gnome.org/pub/GNOME/sources/libxml2/2.4
-zlib-1.2.7.tar.bz2;http://zlib.net
+zlib-1.2.8.tar.gz;http://zlib.net
libffi-1.20.tar.gz;ftp://sources.redhat.com/pub/libffi
SDL-1.2.6.tar.gz;http://www.libsdl.org/release
readline-4.3.tar.gz;ftp://$(gnuserver)/readline
diff --git a/rules-make b/rules-make
index 0b1f230..732783a 100644
--- a/rules-make
+++ b/rules-make
@@ -86,7 +86,7 @@ libsdl;1.2.6;SDL-1.2.6;SDL-1.2.6.tar.gz:sdl.diff;extract:SDL-1.2.6.tar.gz;patch:
libsigc;1.2.7;libsigc++-1.2.7;libsigc++-1.2.7.tar.gz;extract:libsigc++-1.2.7.tar.gz
libvorbisidec;1.0.2+svn15687;libvorbisidec-1.0.2+svn15687;libvorbisidec_1.0.2+svn15687.orig.tar.gz:tremor.diff;extract:libvorbisidec_1.0.2+svn15687.orig.tar.gz;patch:tremor.diff
libxml2;2.4.30;libxml2-2.4.30;libxml2-2.4.30.tar.gz:libxml2.diff;extract:libxml2-2.4.30.tar.gz;patch:libxml2.diff
-libz;1.2.7;zlib-1.2.7;zlib-1.2.7.tar.bz2;extract:zlib-1.2.7.tar.bz2
+libz;1.2.8;zlib-1.2.8;zlib-1.2.8.tar.gz;extract:zlib-1.2.8.tar.gz
libglib;2.8.3;glib-2.8.3;glib-2.8.3.tar.gz;extract:glib-2.8.3.tar.gz
libungif;4.1.4;libungif-4.1.4;libungif-4.1.4.tar.bz2;extract:libungif-4.1.4.tar.bz2
libiconv;1.9.1;libiconv-1.9.1;libiconv-1.9.1.tar.gz;extract:libiconv-1.9.1.tar.gz
-----------------------------------------------------------------------
Summary of changes:
rules-archive | 2 +-
rules-make | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
--
Tuxbox-GIT: cdk
|
|
From: Thilo G. <tux...@ne...> - 2013-04-30 06:15:37
|
Project "Tuxbox-GIT: apps":
The branch, master has been updated
via 51c9a02e9630fb0744eea7664b6772aca8b6d7f3 (commit)
via 2ee986630202e9b08b881fe972cc33b7b68967dd (commit)
via 09fe447728d819946215b26f3ce1a75a12b8de19 (commit)
via a8c58ff7f14ce3e28ae35090aa931f4bea75823f (commit)
via 6854af4a1f6d7cd12f23ccd3f179fa36eb70276d (commit)
via 72e67085ff69553395eb5d23c24896c156b8248c (commit)
via 8c56d34e5591a42768b96ddd3305c755441ba8d4 (commit)
via a967ebae0744fe64f265c98d1fed0c1a6a162fb5 (commit)
via d7b95b5a94e6f0c44a410bde47ad6a3c7c556e1c (commit)
via 275bf133983690f10d36cc141bef989889575e89 (commit)
via 524fe056252cd77792885c9bb081e1f80cff52b1 (commit)
via df0adb40aef302167639dd79b141e550a9350a34 (commit)
via 8d58661d3e921afc184233a5896ec1f3eaab1e19 (commit)
via 5b3a1e1f3272ee141083e97b8f6ca94c804baf40 (commit)
via ebe5796b56af0d90fed1b07c32eb6d2f45a0a20a (commit)
via d61aadd2ba940cd52a15f45ff7d3feb7796d7fe6 (commit)
via ad82c8eed470084299f37a718e1be5cf8d837fe7 (commit)
via 83716e51dca34a19feaf414b298af2363fcc5bd9 (commit)
via 15f3b51886a333256e7698be8cebfcc8c8540828 (commit)
via 4876e6f59be97e12e9caa76cd775a33e50faf80e (commit)
via 5a61b058ba4e4f5328c2c32eae69916ba152a741 (commit)
via 8a9a9871586d6386d4443c2d84fbd5d772dde940 (commit)
via 53a3fa70e547b8a164184dc466d7d833bad6aa89 (commit)
via 31f4161bd4b7900a1299e3475eef51a5622e07b1 (commit)
via aa628e1b7f5aa7539749dd61e9b7a0096145a607 (commit)
from db94409e9100a7cac7f438cbd8aebce09c7b1126 (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
commit 51c9a02e9630fb0744eea7664b6772aca8b6d7f3
Author: GetAway <get...@t-...>
Date: Mon Apr 29 17:27:44 2013 +0200
audioplayer: use new style of item2Detailsline recalc playlistsize if filled and empty
Signed-off-by: Thilo Graf <db...@no...>
diff --git a/tuxbox/neutrino/src/gui/audioplayer.cpp b/tuxbox/neutrino/src/gui/audioplayer.cpp
index 58e9c7d..66ffe51 100644
--- a/tuxbox/neutrino/src/gui/audioplayer.cpp
+++ b/tuxbox/neutrino/src/gui/audioplayer.cpp
@@ -92,10 +92,10 @@
#define DVR ADAP "/dvr0"
#endif
-#ifdef ConnectLineBox_Width
-#undef ConnectLineBox_Width
-#endif
-#define ConnectLineBox_Width 16
+//#ifdef ConnectLineBox_Width
+//#undef ConnectLineBox_Width
+//#endif
+#define ConnectLineBox_Width 12
#define AUDIOPLAYERGUI_SMSKEY_TIMEOUT 1000
#define SHOW_FILE_LOAD_LIMIT 50
@@ -250,7 +250,7 @@ int CAudioPlayerGui::exec(CMenuTarget* parent, const std::string &)
m_current = 0;
m_selected = 0;
- m_width = w_max(710, ConnectLineBox_Width);
+ m_width = w_max(720, 2 * ConnectLineBox_Width);
m_height = h_max(570, 0);
m_sheight = g_Font[SNeutrinoSettings::FONT_TYPE_INFOBAR_SMALL]->getHeight();
m_buttonHeight = std::min(25, m_sheight);
@@ -260,9 +260,8 @@ int CAudioPlayerGui::exec(CMenuTarget* parent, const std::string &)
m_info_height = m_fheight*2;
m_listmaxshow = (m_height - m_info_height - m_title_height - m_theight - 2*m_buttonHeight) / (m_fheight);
m_height = m_theight + m_info_height + m_title_height + 2*m_buttonHeight + m_listmaxshow * m_fheight; // recalc height
+ calcSize();
- m_x = getScreenStartX(m_width + ConnectLineBox_Width) + ConnectLineBox_Width;
- m_y = getScreenStartY(m_height);
m_idletime=time(NULL);
m_screensaver=false;
@@ -387,6 +386,13 @@ int CAudioPlayerGui::exec(CMenuTarget* parent, const std::string &)
//------------------------------------------------------------------------
+void CAudioPlayerGui::calcSize()
+{
+ m_x = getScreenStartX(m_width - (m_playlist.empty() ? 0 : ConnectLineBox_Width));
+ m_y = getScreenStartY(m_height);
+}
+//------------------------------------------------------------------------
+
int CAudioPlayerGui::show()
{
neutrino_msg_t msg;
@@ -431,6 +437,7 @@ int CAudioPlayerGui::show()
clear_before_update = false;
}
update = false;
+ calcSize();
paint();
}
g_RCInput->getMsg(&msg, &data, 10); // 1 sec timeout to update play/stop state display
@@ -1881,29 +1888,34 @@ void CAudioPlayerGui::paintItemID3DetailsLine (int pos)
m_height - m_title_height - m_info_height);
// paint Line if detail info (and not valid list pos)
- if (!m_playlist.empty() && (pos >= 0))
+ if (!m_playlist.empty() && (pos > -1))
{
// paint id3 infobox
- int yoffs = g_settings.rounded_corners ? 7 : 0;
- m_frameBuffer->paintBoxRel(xpos + ConnectLineBox_Width - 4, ypos2+yoffs, 1, m_info_height-2*yoffs, col2);
- m_frameBuffer->paintBoxRel(m_x - 3, ypos2+yoffs, 3, m_info_height-2*yoffs, col1);
m_frameBuffer->paintBoxFrame(m_x, ypos2, m_width, m_info_height, 2,col1, RADIUS_MID);
m_frameBuffer->paintBoxRel(m_x + 2, ypos2 + 2 , m_width - 4, m_info_height - 4, col3, RADIUS_MID);
- // 1. col thick line
- m_frameBuffer->paintBoxRel(xpos + ConnectLineBox_Width - 4, ypos1, 4, m_fheight, col2, RADIUS_SMALL, CORNER_LEFT);
- m_frameBuffer->paintBoxRel(xpos + ConnectLineBox_Width - 3, ypos1, 8, m_fheight, col1, RADIUS_SMALL, CORNER_LEFT); // item marker
- m_frameBuffer->paintBoxRel(xpos + ConnectLineBox_Width - 16, ypos1a, 4, ypos2a - ypos1a, col1);
+ // 1. top line vert.
+ m_frameBuffer->paintBoxRel(xpos+11, ypos1+4, 1,m_fheight-8, col2); // item marker gray vert.
+ m_frameBuffer->paintBoxRel(xpos+8, ypos1+4, 3,m_fheight-8, col1); // white vert.
+
+ // 2. top line hor.
+ m_frameBuffer->paintBoxRel(xpos, ypos1a , 8, 3, col1); //top small hor. line
+ m_frameBuffer->paintBoxRel(xpos, ypos1a+3, 8, 1, col2); // hor. gray top xxx
+
+ // 3. long line
+ m_frameBuffer->paintBoxRel(xpos, ypos1a, 3,ypos2a-ypos1a, col1); // white
+ m_frameBuffer->paintBoxRel(xpos+3, ypos1a+4, 1,ypos2a-ypos1a-4, col2); //vert. gray
- m_frameBuffer->paintBoxRel(xpos + ConnectLineBox_Width - 16, ypos1a, 12, 4, col1);
- m_frameBuffer->paintBoxRel(xpos + ConnectLineBox_Width - 16, ypos2a, 12, 4, col1);
+ // 4. bottom line vert.
+ m_frameBuffer->paintBoxRel(xpos, ypos2a , 8,3, col1); // white
+ m_frameBuffer->paintBoxRel(xpos, ypos2a+3, 8,1, col2); // gray
- // 2. col small line
- m_frameBuffer->paintBoxRel(xpos + ConnectLineBox_Width - 16, ypos1a, 1, ypos2a - ypos1a + 4, col2);
+ // 5. col thick line bottom
+ int yoffs = g_settings.rounded_corners ? 10 : 0;
+ m_frameBuffer->paintBoxRel(m_x-1, ypos2+yoffs, 1, m_info_height-2*yoffs, col2);
+ m_frameBuffer->paintBoxRel(m_x-4, ypos2+yoffs, 3, m_info_height-2*yoffs, col1);
- m_frameBuffer->paintBoxRel(xpos + ConnectLineBox_Width - 16, ypos1a, 12, 1, col2);
- m_frameBuffer->paintBoxRel(xpos + ConnectLineBox_Width - 12, ypos2a, 8, 1, col2);
g_Font[SNeutrinoSettings::FONT_TYPE_MENU]->RenderString(m_x + 10, ypos2 + 2 + 1*m_fheight, m_width- 80,
m_playlist[m_selected].MetaData.title, COL_MENUCONTENTDARK, 0, true); // UTF-8
diff --git a/tuxbox/neutrino/src/gui/audioplayer.h b/tuxbox/neutrino/src/gui/audioplayer.h
index cb06273..f288e97 100644
--- a/tuxbox/neutrino/src/gui/audioplayer.h
+++ b/tuxbox/neutrino/src/gui/audioplayer.h
@@ -147,6 +147,7 @@ class CAudioPlayerGui : public CMenuTarget
void paintInfo();
void paintLCD();
void hide();
+ void calcSize();
void get_id3(CAudiofileExt * audiofile);
void get_mp3info(CAudiofileExt * audiofile);
commit 2ee986630202e9b08b881fe972cc33b7b68967dd
Author: Christian Schuett <Gau...@ho...>
Date: Mon Apr 29 16:16:53 2013 +0200
Neutrino moviebrowser: only add separator line to serie menu if needed
Signed-off-by: Christian Schuett <Gau...@ho...>
Signed-off-by: Thilo Graf <db...@no...>
diff --git a/tuxbox/neutrino/src/gui/moviebrowser.cpp b/tuxbox/neutrino/src/gui/moviebrowser.cpp
index d218780..16713ee 100644
--- a/tuxbox/neutrino/src/gui/moviebrowser.cpp
+++ b/tuxbox/neutrino/src/gui/moviebrowser.cpp
@@ -3008,7 +3008,8 @@ int CMovieBrowser::showMovieInfoMenu(MI_MOVIE_INFO* movie_info)
CMenuWidget serieMenu(LOCALE_MOVIEBROWSER_INFO_HEAD, NEUTRINO_ICON_STREAMING);
serieMenu.addIntroItems(LOCALE_MOVIEBROWSER_SERIE_HEAD);
serieMenu.addItem( new CMenuForwarder(LOCALE_MOVIEBROWSER_SERIE_NAME, true, movie_info->serieName,&serieUserInput));
- serieMenu.addItem(GenericMenuSeparatorLine);
+ if (!m_vHandleSerienames.empty())
+ serieMenu.addItem(GenericMenuSeparatorLine);
for(unsigned int i=0; i < m_vHandleSerienames.size(); i++)
serieMenu.addItem( new CMenuSelector(m_vHandleSerienames[i]->serieName.c_str(), true, movie_info->serieName));
commit 09fe447728d819946215b26f3ce1a75a12b8de19
Author: [CST] Focus <foc...@gm...>
Date: Mon Apr 29 11:09:30 2013 +0200
settings: remove useDefaults(), init all variables to default values
Signed-off-by: GetAway <get...@t-...>
Signed-off-by: Thilo Graf <db...@no...>
diff --git a/tuxbox/neutrino/src/system/settings.cpp b/tuxbox/neutrino/src/system/settings.cpp
index 36f0352..70dfb99 100644
--- a/tuxbox/neutrino/src/system/settings.cpp
+++ b/tuxbox/neutrino/src/system/settings.cpp
@@ -36,7 +36,10 @@ CScanSettings::CScanSettings(void)
: configfile('\t')
{
delivery_system = DVB_S;
- satNameNoDiseqc[0] = 0;
+ bouquetMode = CZapitClient::BM_UPDATEBOUQUETS;
+ scanType = CZapitClient::ST_ALL;
+ strcpy(satNameNoDiseqc, "none");
+
for( int i = 0; i < MAX_SATELLITES; i++)
{
satName[i][0] = 0;
@@ -183,60 +186,31 @@ void CScanSettings::toMotorPosList(CZapitClient::ScanMotorPosList& motorPosList)
}
}
-void CScanSettings::useDefaults(const delivery_system_t _delivery_system)
+bool CScanSettings::loadSettings(const char * const fileName, const delivery_system_t dsys)
{
- delivery_system = _delivery_system;
- bouquetMode = CZapitClient::BM_UPDATEBOUQUETS;
- scanType = CZapitClient::ST_ALL;
- diseqcMode = NO_DISEQC;
- diseqcRepeat = 0;
- uni_qrg = 1210;
- uni_scr = 0;
-
- motorRotationSpeed = 8;
- useGotoXX = 0;
- gotoXXLatitude = 00.000000;
- gotoXXLongitude = 00.000000;
- gotoXXLaDirection = 1;
- gotoXXLoDirection = 1;
+ bool ret = configfile.loadConfig(fileName);
-#ifdef HAVE_TRIPLEDRAGON
- TP_mod = 0;
-#elif HAVE_DVB_API_VERSION >= 3
- TP_mod = QAM_AUTO;
-#else
- // i do not know how to do it correctly for old API -- seife
- TP_mod = QAM_256;
-#endif
- strcpy(satNameNoDiseqc, "none");
-}
-
-bool CScanSettings::loadSettings(const char * const fileName, const delivery_system_t _delivery_system)
-{
- useDefaults(_delivery_system);
-
- if(!configfile.loadConfig(fileName))
- return false;
-
- if (configfile.getInt32("delivery_system", -1) != delivery_system)
+ if (configfile.getInt32("delivery_system", -1) != dsys)
{
// configfile is not for this delivery system
configfile.clear();
- return false;
+ ret = false;
}
- diseqcMode = (diseqc_t) configfile.getInt32("diseqcMode" , diseqcMode);
- diseqcRepeat = configfile.getInt32("diseqcRepeat", diseqcRepeat);
- uni_qrg = configfile.getInt32("uni_qrg", uni_qrg);
- uni_scr = configfile.getInt32("uni_scr", uni_scr);
- bouquetMode = (CZapitClient::bouquetMode) configfile.getInt32("bouquetMode" , bouquetMode);
+ delivery_system = dsys;
+
+ diseqcMode = (diseqc_t) configfile.getInt32("diseqcMode", NO_DISEQC);
+ diseqcRepeat = configfile.getInt32("diseqcRepeat", 0);
+ uni_qrg = configfile.getInt32("uni_qrg", 1210);
+ uni_scr = configfile.getInt32("uni_scr", 0);
+ bouquetMode = (CZapitClient::bouquetMode) configfile.getInt32("bouquetMode", bouquetMode);
scanType=(CZapitClient::scanType) configfile.getInt32("scanType", scanType);
strcpy(satNameNoDiseqc, configfile.getString("satNameNoDiseqc", satNameNoDiseqc).c_str());
motorRotationSpeed = configfile.getInt32("motorRotationSpeed", 8);
useGotoXX = configfile.getInt32("useGotoXX", 0);
- gotoXXLatitude = strtod(configfile.getString("gotoXXLatitude", "00.000000").c_str(), NULL);
- gotoXXLongitude = strtod(configfile.getString("gotoXXLongitude", "00.000000").c_str(), NULL);
+ gotoXXLatitude = strtod(configfile.getString("gotoXXLatitude", "0.0").c_str(), NULL);
+ gotoXXLongitude = strtod(configfile.getString("gotoXXLongitude", "0.0").c_str(), NULL);
gotoXXLaDirection = configfile.getInt32("gotoXXLaDirection", 1);
gotoXXLoDirection = configfile.getInt32("gotoXXLoDirection", 1);
@@ -271,16 +245,22 @@ bool CScanSettings::loadSettings(const char * const fileName, const delivery_sys
// i do not know how to do it correctly for old API -- seife
TP_mod = configfile.getInt32("TP_mod", QAM_256); // default qam 256
#endif
- strcpy(TP_freq, configfile.getString("TP_freq", "10100000").c_str());
- strcpy(TP_rate, configfile.getString("TP_rate", "27500000").c_str());
- strncpy(TP_satname, configfile.getString("TP_satname", "Astra 19.2E").c_str(), 30);
+
+ if(delivery_system == DVB_S) {
+ strcpy(TP_freq, configfile.getString("TP_freq", "10100000").c_str());
+ strcpy(TP_rate, configfile.getString("TP_rate", "27500000").c_str());
+ } else {
+ strcpy(TP_freq, configfile.getString("TP_freq", "362000000").c_str());
+ strcpy(TP_rate, configfile.getString("TP_rate", "6875000").c_str());
+ }
+ strncpy(TP_satname, configfile.getString("TP_satname", "").c_str(), 30);
TP_diseqc = *diseqscOfSat(TP_satname);
#if HAVE_DVB_API_VERSION >= 3
if(TP_fec == 4) TP_fec = 5;
#endif
scanSectionsd = configfile.getInt32("scanSectionsd", 0);
- return true;
+ return ret;
}
bool CScanSettings::saveSettings(const char * const fileName)
diff --git a/tuxbox/neutrino/src/system/settings.h b/tuxbox/neutrino/src/system/settings.h
index b78ecac..1ec81e7 100644
--- a/tuxbox/neutrino/src/system/settings.h
+++ b/tuxbox/neutrino/src/system/settings.h
@@ -633,9 +633,7 @@ class CScanSettings
void toSatList( CZapitClient::ScanSatelliteList& ) const;
void toMotorPosList( CZapitClient::ScanMotorPosList& ) const;
- void useDefaults(const delivery_system_t _delivery_system);
-
- bool loadSettings(const char * const fileName, const delivery_system_t _delivery_system);
+ bool loadSettings(const char * const fileName, const delivery_system_t dsys);
bool saveSettings(const char * const fileName);
};
commit a8c58ff7f14ce3e28ae35090aa931f4bea75823f
Author: Christian Schuett <Gau...@ho...>
Date: Mon Apr 29 00:33:53 2013 +0200
Neutrino CMenuWidget: consider scrollbar width when calculating start pos
Signed-off-by: Christian Schuett <Gau...@ho...>
Signed-off-by: Thilo Graf <db...@no...>
diff --git a/tuxbox/neutrino/src/gui/widget/menue.cpp b/tuxbox/neutrino/src/gui/widget/menue.cpp
index e43d379..7c98c5c 100644
--- a/tuxbox/neutrino/src/gui/widget/menue.cpp
+++ b/tuxbox/neutrino/src/gui/widget/menue.cpp
@@ -669,15 +669,15 @@ void CMenuWidget::paint()
if(hheight+itemHeightTotal < height)
height=hheight+itemHeightTotal;
- x = getScreenStartX(width);
- y = getScreenStartY(height);
-
int sb_width;
if(total_pages > 1)
sb_width=15;
else
sb_width=0;
+ x = getScreenStartX(width + sb_width);
+ y = getScreenStartY(height);
+
int c_rad_mid = RADIUS_MID;
frameBuffer->paintBoxRel(x + SHADOW_OFFSET, y + SHADOW_OFFSET, width + sb_width, height + (c_rad_mid / 3 * 2), COL_MENUCONTENTDARK_PLUS_0, c_rad_mid);
commit 6854af4a1f6d7cd12f23ccd3f179fa36eb70276d
Author: Christian Schuett <Gau...@ho...>
Date: Sun Apr 28 22:49:11 2013 +0200
Neutrino: move redundant code from menu item classes into base class
ported from Neutrino-HD
Signed-off-by: Christian Schuett <Gau...@ho...>
Signed-off-by: Thilo Graf <db...@no...>
diff --git a/tuxbox/neutrino/src/gui/moviebrowser.cpp b/tuxbox/neutrino/src/gui/moviebrowser.cpp
index 2d6a71c..d218780 100644
--- a/tuxbox/neutrino/src/gui/moviebrowser.cpp
+++ b/tuxbox/neutrino/src/gui/moviebrowser.cpp
@@ -3677,7 +3677,6 @@ bool CBookItemMenuForwarderNotifier::changeNotify(const neutrino_locale_t, void*
CMenuSelector::CMenuSelector(const char * OptionName, const bool Active , char * OptionValue, int* ReturnInt ,int ReturnIntValue ) : CMenuItem()
{
- height = g_Font[SNeutrinoSettings::FONT_TYPE_MENU]->getHeight();
optionValueString = NULL;
optionName = OptionName;
optionValue = OptionValue;
@@ -3688,7 +3687,6 @@ CMenuSelector::CMenuSelector(const char * OptionName, const bool Active , char *
CMenuSelector::CMenuSelector(const char * OptionName, const bool Active , std::string& OptionValue, int* ReturnInt ,int ReturnIntValue ) : CMenuItem()
{
- height = g_Font[SNeutrinoSettings::FONT_TYPE_MENU]->getHeight();
optionValueString = &OptionValue;
optionName = OptionName;
strncpy(buffer,OptionValue.c_str(),BUFFER_MAX);
@@ -3699,6 +3697,11 @@ CMenuSelector::CMenuSelector(const char * OptionName, const bool Active , std::s
returnInt = ReturnInt;
};
+int CMenuSelector::getHeight(void) const
+{
+ return g_Font[SNeutrinoSettings::FONT_TYPE_MENU]->getHeight();
+}
+
int CMenuSelector::exec(CMenuTarget* /*parent*/)
{
if(returnInt != NULL)
@@ -3716,28 +3719,16 @@ int CMenuSelector::exec(CMenuTarget* /*parent*/)
int CMenuSelector::paint(bool selected)
{
- CFrameBuffer * frameBuffer = CFrameBuffer::getInstance();
-
- unsigned char color = COL_MENUCONTENT;
- fb_pixel_t bgcolor = COL_MENUCONTENT_PLUS_0;
- if (selected)
- {
- color = COL_MENUCONTENTSELECTED;
- bgcolor = COL_MENUCONTENTSELECTED_PLUS_0;
- }
- if (!active)
- {
- color = COL_MENUCONTENTINACTIVE;
- bgcolor = COL_MENUCONTENTINACTIVE_PLUS_0;
- }
+ int height = getHeight();
- frameBuffer->paintBoxRel(x, y, dx, height, bgcolor);
+ //paint item
+ prepareItem(selected, height);
- int stringstartposName = x + offx + 10;
- g_Font[SNeutrinoSettings::FONT_TYPE_MENU]->RenderString(stringstartposName, y+height,dx- (stringstartposName - x), optionName, color, 0, true); // UTF-8
+ //paint item icon
+ paintItemButton(selected, height, NEUTRINO_ICON_BUTTON_OKAY);
- if (selected)
- CLCD::getInstance()->showMenuText(0, optionName, -1, true); // UTF-8
+ //paint text
+ paintItemCaption(selected, height, optionName);
return y+height;
}
diff --git a/tuxbox/neutrino/src/gui/moviebrowser.h b/tuxbox/neutrino/src/gui/moviebrowser.h
index 03e096c..9065a47 100644
--- a/tuxbox/neutrino/src/gui/moviebrowser.h
+++ b/tuxbox/neutrino/src/gui/moviebrowser.h
@@ -427,14 +427,13 @@ class CMenuSelector : public CMenuItem
std::string* optionValueString;
int returnIntValue;
int* returnInt;
- int height;
char buffer[BUFFER_MAX];
public:
CMenuSelector(const char * OptionName, const bool Active = true, char * OptionValue = NULL, int* ReturnInt = NULL,int ReturnIntValue = 0);
CMenuSelector(const char * OptionName, const bool Active , std::string & OptionValue, int* ReturnInt = NULL,int ReturnIntValue = 0);
int exec(CMenuTarget* parent);
int paint(bool selected);
- int getHeight(void) const{return height;};
+ int getHeight(void) const;
bool isSelectable(void) const { return active;}
};
diff --git a/tuxbox/neutrino/src/gui/widget/menue.cpp b/tuxbox/neutrino/src/gui/widget/menue.cpp
index 441bb99..e43d379 100644
--- a/tuxbox/neutrino/src/gui/widget/menue.cpp
+++ b/tuxbox/neutrino/src/gui/widget/menue.cpp
@@ -92,11 +92,78 @@ void CMenuItem::setItemButton(const std::string& icon_Name, const bool is_select
iconName = icon_Name;
}
-void CMenuItem::paintItemButton(const int startX, const int frame_height, const bool select_mode, const std::string &icon_Name)
+void CMenuItem::initItemColors(const bool select_mode)
+{
+ if (select_mode)
+ {
+ item_color = COL_MENUCONTENTSELECTED;
+ item_bgcolor = COL_MENUCONTENTSELECTED_PLUS_0;
+ }
+ else if (!active)
+ {
+ item_color = COL_MENUCONTENTINACTIVE;
+ item_bgcolor = COL_MENUCONTENTINACTIVE_PLUS_0;
+ }
+ else
+ {
+ item_color = COL_MENUCONTENT;
+ item_bgcolor = COL_MENUCONTENT_PLUS_0;
+ }
+}
+
+void CMenuItem::paintItemBackground (const bool /*select_mode*/, const int &item_height)
+{
+ CFrameBuffer *frameBuffer = CFrameBuffer::getInstance();
+#if 0
+ //FIXME what select_mode change here ??
+ if (select_mode)
+ frameBuffer->paintBoxRel(x, y, dx, item_height, item_bgcolor, RADIUS_SMALL);
+ else
+#endif
+ frameBuffer->paintBoxRel(x, y, dx, item_height, item_bgcolor, RADIUS_SMALL);
+}
+
+void CMenuItem::paintItemCaption(const bool select_mode, const int &item_height, const char * left_text, const char * right_text)
+{
+ bool right_text_is_utf8 = (right_text != NULL) ? isUTF8(right_text, strlen(right_text)) : false;
+
+ if (select_mode)
+ {
+ CLCD::getInstance()->showMenuText(0, left_text, -1, true); // UTF-8
+ if (right_text != NULL)
+ CLCD::getInstance()->showMenuText(1, right_text, -1, right_text_is_utf8);
+ else
+ CLCD::getInstance()->showMenuText(1, "");
+ }
+
+ //left text
+ int stringstartposName = x + offx + 10;
+ g_Font[SNeutrinoSettings::FONT_TYPE_MENU]->RenderString(stringstartposName, y + item_height, dx - (stringstartposName - x), left_text, item_color, 0, true); // UTF-8
+
+ //right text
+ if (right_text != NULL)
+ {
+ int stringwidth = g_Font[SNeutrinoSettings::FONT_TYPE_MENU]->getRenderWidth(right_text, right_text_is_utf8);
+ int stringstartposOption = std::max(stringstartposName + g_Font[SNeutrinoSettings::FONT_TYPE_MENU]->getRenderWidth(left_text, true) + 10,
+ x + dx - stringwidth - 10); //+ offx
+ g_Font[SNeutrinoSettings::FONT_TYPE_MENU]->RenderString(stringstartposOption, y + item_height, dx - (stringstartposOption - x), right_text, item_color, 0, right_text_is_utf8);
+ }
+}
+
+void CMenuItem::prepareItem(const bool select_mode, const int &item_height)
+{
+ //set colors
+ initItemColors(select_mode);
+
+ //paint item background
+ paintItemBackground(select_mode, item_height);
+}
+
+void CMenuItem::paintItemButton(const bool select_mode, const int &item_height, const std::string &icon_Name)
{
CFrameBuffer *frameBuffer = CFrameBuffer::getInstance();
bool selected = select_mode;
- int height = frame_height;
+ int height = item_height;
bool icon_painted = false;
std::string icon_name = iconName;
@@ -128,7 +195,7 @@ void CMenuItem::paintItemButton(const int startX, const int frame_height, const
frameBuffer->getIconSize(NEUTRINO_ICON_RIGHT_MARKER, &m_icon_w, &m_icon_h);
int icon_x = 0;
- int icon_space = (x+(startX-x)/2);
+ int icon_space = x + (offx+10)/2;
if (!icon_name.empty())
{
@@ -744,27 +811,10 @@ int CMenuOptionNumberChooser::exec(CMenuTarget*)
int CMenuOptionNumberChooser::paint(bool selected)
{
- CFrameBuffer * frameBuffer = CFrameBuffer::getInstance();
int height = getHeight();
- unsigned char color = COL_MENUCONTENT;
- fb_pixel_t bgcolor = COL_MENUCONTENT_PLUS_0;
- if (selected)
- {
- color = COL_MENUCONTENTSELECTED;
- bgcolor = COL_MENUCONTENTSELECTED_PLUS_0;
- }
- if (!active)
- {
- color = COL_MENUCONTENTINACTIVE;
- bgcolor = COL_MENUCONTENTINACTIVE_PLUS_0;
- }
-
- frameBuffer->paintBoxRel(x, y, dx, height, bgcolor, RADIUS_SMALL);
-
const char * l_option;
char option_value[11];
-
if ((localized_value_name == NONEXISTANT_LOCALE) || ((*optionValue) != localized_value))
{
sprintf(option_value, "%d", ((*optionValue) + display_offset));
@@ -775,21 +825,14 @@ int CMenuOptionNumberChooser::paint(bool selected)
const char * l_optionName = (optionString != NULL) ? optionString : g_Locale->getText(optionName);
- int stringwidth = g_Font[SNeutrinoSettings::FONT_TYPE_MENU]->getRenderWidth(l_option, true); // UTF-8
- int stringstartposName = x + offx + 10;
- int stringstartposOption = std::max(stringstartposName + g_Font[SNeutrinoSettings::FONT_TYPE_MENU]->getRenderWidth(l_optionName, true) + 10,
- x + dx - stringwidth - 10); //+ offx
+ //paint item
+ prepareItem(selected, height);
- g_Font[SNeutrinoSettings::FONT_TYPE_MENU]->RenderString(stringstartposName, y+height,dx- (stringstartposName - x), l_optionName, color, 0, true); // UTF-8
- g_Font[SNeutrinoSettings::FONT_TYPE_MENU]->RenderString(stringstartposOption, y+height,dx- (stringstartposOption - x), l_option, color, 0, true); // UTF-8
-
- paintItemButton(stringstartposName, height, selected, NEUTRINO_ICON_BUTTON_OKAY);
+ //paint item icon
+ paintItemButton(selected, height, NEUTRINO_ICON_BUTTON_OKAY);
- if (selected)
- {
- CLCD::getInstance()->showMenuText(0, l_optionName, -1, true); // UTF-8
- CLCD::getInstance()->showMenuText(1, l_option, -1, true); // UTF-8
- }
+ //paint text
+ paintItemCaption(selected, height, l_optionName, l_option);
return y+height;
}
@@ -903,26 +946,9 @@ int CMenuOptionChooser::exec(CMenuTarget* parent)
int CMenuOptionChooser::paint( bool selected )
{
- CFrameBuffer * frameBuffer = CFrameBuffer::getInstance();
int height = getHeight();
- unsigned char color = COL_MENUCONTENT;
- fb_pixel_t bgcolor = COL_MENUCONTENT_PLUS_0;
- if (selected)
- {
- color = COL_MENUCONTENTSELECTED;
- bgcolor = COL_MENUCONTENTSELECTED_PLUS_0;
- }
- if (!active)
- {
- color = COL_MENUCONTENTINACTIVE;
- bgcolor = COL_MENUCONTENTINACTIVE_PLUS_0;
- }
-
- frameBuffer->paintBoxRel(x, y, dx, height, bgcolor, RADIUS_SMALL);
-
neutrino_locale_t option = NONEXISTANT_LOCALE;
-
for(unsigned int count = 0 ; count < number_of_options; count++)
{
if (options[count].key == *optionValue)
@@ -931,27 +957,16 @@ int CMenuOptionChooser::paint( bool selected )
break;
}
}
-
- if (optionName != NONEXISTANT_LOCALE)
- optionNameString = g_Locale->getText(optionName);
-
const char * l_option = g_Locale->getText(option);
- int stringwidth = g_Font[SNeutrinoSettings::FONT_TYPE_MENU]->getRenderWidth(l_option, true); // UTF-8
- int stringstartposName = x + offx + 10;
- int stringstartposOption = std::max(stringstartposName + g_Font[SNeutrinoSettings::FONT_TYPE_MENU]->getRenderWidth(optionNameString.c_str(), true) + 10,
- x + dx - stringwidth - 10); //+ offx
-
- g_Font[SNeutrinoSettings::FONT_TYPE_MENU]->RenderString(stringstartposName, y+height,dx- (stringstartposName - x), optionNameString.c_str(), color, 0, true); // UTF-8
- g_Font[SNeutrinoSettings::FONT_TYPE_MENU]->RenderString(stringstartposOption, y+height,dx- (stringstartposOption - x), l_option, color, 0, true); // UTF-8
+ //paint item
+ prepareItem(selected, height);
- paintItemButton(stringstartposName, height, selected, NEUTRINO_ICON_BUTTON_OKAY);
+ //paint item icon
+ paintItemButton(selected, height, NEUTRINO_ICON_BUTTON_OKAY);
- if (selected)
- {
- CLCD::getInstance()->showMenuText(0, optionNameString.c_str(), -1, true); // UTF-8
- CLCD::getInstance()->showMenuText(1, l_option, -1, true); // UTF-8
- }
+ //paint text
+ paintItemCaption(selected, height, optionNameString.c_str(), l_option);
return y+height;
}
@@ -1050,39 +1065,16 @@ int CMenuOptionStringChooser::exec(CMenuTarget* parent)
int CMenuOptionStringChooser::paint( bool selected )
{
int height = getHeight();
-
- unsigned char color = COL_MENUCONTENT;
- fb_pixel_t bgcolor = COL_MENUCONTENT_PLUS_0;
- if (selected)
- {
- color = COL_MENUCONTENTSELECTED;
- bgcolor = COL_MENUCONTENTSELECTED_PLUS_0;
- }
- if (!active)
- {
- color = COL_MENUCONTENTINACTIVE;
- bgcolor = COL_MENUCONTENTINACTIVE_PLUS_0;
- }
-
- CFrameBuffer::getInstance()->paintBoxRel(x, y, dx, height, bgcolor, RADIUS_SMALL);
-
const char * l_optionName = g_Locale->getText(optionName);
- int stringwidth = g_Font[SNeutrinoSettings::FONT_TYPE_MENU]->getRenderWidth(optionValue);
- int stringstartposName = x + offx + 10;
- int stringstartposOption = std::max(stringstartposName + g_Font[SNeutrinoSettings::FONT_TYPE_MENU]->getRenderWidth(l_optionName, true) + 10,
- x + dx - stringwidth - 10); //+ offx
+ //paint item
+ prepareItem(selected, height);
- g_Font[SNeutrinoSettings::FONT_TYPE_MENU]->RenderString(stringstartposName, y+height,dx- (stringstartposName - x), l_optionName, color, 0, true); // UTF-8
- g_Font[SNeutrinoSettings::FONT_TYPE_MENU]->RenderString(stringstartposOption, y+height,dx- (stringstartposOption - x), optionValue, color);
+ //paint item icon
+ paintItemButton(selected, height, NEUTRINO_ICON_BUTTON_OKAY);
- paintItemButton(stringstartposName, height, selected, NEUTRINO_ICON_BUTTON_OKAY);
-
- if (selected)
- {
- CLCD::getInstance()->showMenuText(0, l_optionName, -1, true); // UTF-8
- CLCD::getInstance()->showMenuText(1, optionValue);
- }
+ //paint text
+ paintItemCaption(selected, height, l_optionName, optionValue);
return y+height;
}
@@ -1168,52 +1160,18 @@ const char * CMenuForwarder::getName(void)
int CMenuForwarder::paint(bool selected)
{
- CFrameBuffer * frameBuffer = CFrameBuffer::getInstance();
int height = getHeight();
const char * l_text = getName();
-
- int stringstartposX = x + offx + 10;
-
const char * option_text = getOption();
- bool option_text_is_utf8 = (option_text != NULL) ? isUTF8(option_text, strlen(option_text)) : false;
-
- if (selected)
- {
- CLCD * lcd = CLCD::getInstance();
- lcd->showMenuText(0, l_text, -1, true); // UTF-8
-
- if (option_text != NULL)
- lcd->showMenuText(1, option_text, -1, option_text_is_utf8);
- else
- lcd->showMenuText(1, "", -1, true); // UTF-8
- }
-
- unsigned char color = COL_MENUCONTENT;
- fb_pixel_t bgcolor = COL_MENUCONTENT_PLUS_0;
- if (selected)
- {
- color = COL_MENUCONTENTSELECTED;
- bgcolor = COL_MENUCONTENTSELECTED_PLUS_0;
- }
- if (!active)
- {
- color = COL_MENUCONTENTINACTIVE;
- bgcolor = COL_MENUCONTENTINACTIVE_PLUS_0;
- }
-
- frameBuffer->paintBoxRel(x, y, dx, height, bgcolor, RADIUS_SMALL);
- g_Font[SNeutrinoSettings::FONT_TYPE_MENU]->RenderString(stringstartposX, y+ height, dx- (stringstartposX - x), l_text, color, 0, true); // UTF-8
- paintItemButton(stringstartposX, height, selected);
+ //paint item
+ prepareItem(selected, height);
- if (option_text != NULL)
- {
- int stringwidth = g_Font[SNeutrinoSettings::FONT_TYPE_MENU]->getRenderWidth(option_text, option_text_is_utf8);
- int stringstartposOption = std::max(stringstartposX + g_Font[SNeutrinoSettings::FONT_TYPE_MENU]->getRenderWidth(l_text, true) + 10,
- x + dx - stringwidth - 10); //+ offx
+ //paint item icon
+ paintItemButton(selected, height);
- g_Font[SNeutrinoSettings::FONT_TYPE_MENU]->RenderString(stringstartposOption, y + height, dx - (stringstartposOption - x), option_text, color, 0, option_text_is_utf8);
- }
+ //paint text
+ paintItemCaption(selected, height, l_text, option_text);
return y+ height;
}
@@ -1276,27 +1234,23 @@ void CMenuSeparator::setString(const std::string& s_text)
}
-int CMenuSeparator::paint(bool selected)
+int CMenuSeparator::paint(bool /*selected*/)
{
- int height;
+ int height = getHeight();
CFrameBuffer * frameBuffer = CFrameBuffer::getInstance();
- height = getHeight();
- uint8_t color;
- fb_pixel_t bgcolor0;
if ((type & SUB_HEAD))
{
- color = COL_MENUHEAD;
- bgcolor0 = COL_MENUHEAD_PLUS_0;
+ item_color = COL_MENUHEAD;
+ item_bgcolor = COL_MENUHEAD_PLUS_0;
}
else
{
- color = COL_MENUCONTENTINACTIVE;
- bgcolor0 = COL_MENUCONTENT_PLUS_0;
+ item_color = COL_MENUCONTENTINACTIVE;
+ item_bgcolor = COL_MENUCONTENT_PLUS_0;
}
-
- frameBuffer->paintBoxRel(x,y, dx, height, bgcolor0);
+ frameBuffer->paintBoxRel(x,y, dx, height, item_bgcolor);
if ((type & LINE))
{
frameBuffer->paintHLineRel(x+10,dx-20,y+(height>>1), COL_MENUCONTENT_PLUS_3);
@@ -1322,20 +1276,15 @@ int CMenuSeparator::paint(bool selected)
stringstartposX = x + (dx >> 1) - (stringwidth >> 1);
if (type & LINE)
- frameBuffer->paintBoxRel(stringstartposX-5, y, stringwidth+10, height, bgcolor0);
+ frameBuffer->paintBoxRel(stringstartposX - 5, y, stringwidth + 10, height, item_bgcolor);
- g_Font[SNeutrinoSettings::FONT_TYPE_MENU]->RenderString(stringstartposX, y+height,dx- (stringstartposX- x) , l_text, color, 0, true); // UTF-8
+ g_Font[SNeutrinoSettings::FONT_TYPE_MENU]->RenderString(stringstartposX, y + height, dx - (stringstartposX - x), l_text, item_color, 0, true); // UTF-8
if (type & SUB_HEAD)
CLCD::getInstance()->setMode(CLCD::MODE_MENU_UTF8, l_text);
-
- if (selected)
- {
- CLCD::getInstance()->showMenuText(0, l_text, -1, true); // UTF-8
- CLCD::getInstance()->showMenuText(1, "", -1, true); // UTF-8
- }
}
}
+
return y+ height;
}
diff --git a/tuxbox/neutrino/src/gui/widget/menue.h b/tuxbox/neutrino/src/gui/widget/menue.h
index 6929980..be6de3d 100644
--- a/tuxbox/neutrino/src/gui/widget/menue.h
+++ b/tuxbox/neutrino/src/gui/widget/menue.h
@@ -80,6 +80,11 @@ class CMenuItem
protected:
int x, y, dx, offx;
bool used;
+ unsigned char item_color;
+ fb_pixel_t item_bgcolor;
+
+ void initItemColors(const bool select_mode);
+
public:
bool active;
neutrino_msg_t directKey;
@@ -116,9 +121,15 @@ class CMenuItem
}
virtual void setActive(const bool Active);
- virtual void paintItemButton(const int startX, const int frame_height, const bool select_mode, const std::string& icon_Name = NEUTRINO_ICON_BUTTON_RIGHT);
+ virtual void paintItemButton(const bool select_mode, const int &item_height, const std::string& icon_Name = NEUTRINO_ICON_BUTTON_RIGHT);
+
+ virtual void paintItemBackground (const bool select_mode, const int &item_height);
+
+ virtual void prepareItem(const bool select_mode, const int &item_height);
virtual void setItemButton(const std::string& icon_Name, const bool is_select_button = false);
+
+ virtual void paintItemCaption(const bool select_mode, const int &item_height, const char * left_text = NULL, const char * right_text = NULL);
};
class CMenuSeparator : public CMenuItem
commit 72e67085ff69553395eb5d23c24896c156b8248c
Author: Christian Schuett <Gau...@ho...>
Date: Sun Apr 28 22:46:19 2013 +0200
Neutrino CMenuOption*Chooser: remove icon from pulldown list ...
... and use width of corresponding menu option chooser
Signed-off-by: Christian Schuett <Gau...@ho...>
Signed-off-by: Thilo Graf <db...@no...>
diff --git a/tuxbox/neutrino/src/gui/widget/menue.cpp b/tuxbox/neutrino/src/gui/widget/menue.cpp
index bb3bc99..441bb99 100644
--- a/tuxbox/neutrino/src/gui/widget/menue.cpp
+++ b/tuxbox/neutrino/src/gui/widget/menue.cpp
@@ -848,13 +848,14 @@ int CMenuOptionChooser::exec(CMenuTarget* parent)
if (pulldown)
{
+ int menu_width = dx;
int select = -1;
char cnt[5];
if (parent)
parent->hide();
- CMenuWidget* menu = new CMenuWidget(optionNameString.c_str(), NEUTRINO_ICON_SETTINGS);
+ CMenuWidget* menu = new CMenuWidget(optionNameString.c_str(), "", menu_width);
menu->addIntroItems(NONEXISTANT_LOCALE, NONEXISTANT_LOCALE, CMenuWidget::BTN_TYPE_CANCEL);
CMenuSelectorTarget * selector = new CMenuSelectorTarget(&select);
for(unsigned int count = 0; count < number_of_options; count++)
@@ -996,13 +997,14 @@ int CMenuOptionStringChooser::exec(CMenuTarget* parent)
if (pulldown)
{
+ int menu_width = dx;
int select = -1;
char cnt[5];
if (parent)
parent->hide();
- CMenuWidget* menu = new CMenuWidget(optionName, NEUTRINO_ICON_SETTINGS);
+ CMenuWidget* menu = new CMenuWidget(optionName, "", menu_width);
menu->addIntroItems(NONEXISTANT_LOCALE, NONEXISTANT_LOCALE, CMenuWidget::BTN_TYPE_CANCEL);
CMenuSelectorTarget * selector = new CMenuSelectorTarget(&select);
for (unsigned int count = 0; count < options.size(); count++)
commit 8c56d34e5591a42768b96ddd3305c755441ba8d4
Author: Christian Schuett <Gau...@ho...>
Date: Sun Apr 28 21:21:46 2013 +0200
Neutrino CMenuWidget: fix segfault if head iconname is empty
Signed-off-by: Christian Schuett <Gau...@ho...>
Signed-off-by: Thilo Graf <db...@no...>
diff --git a/tuxbox/neutrino/src/gui/widget/menue.cpp b/tuxbox/neutrino/src/gui/widget/menue.cpp
index e47e89c..bb3bc99 100644
--- a/tuxbox/neutrino/src/gui/widget/menue.cpp
+++ b/tuxbox/neutrino/src/gui/widget/menue.cpp
@@ -617,10 +617,15 @@ void CMenuWidget::paint()
frameBuffer->paintBoxRel(x, y + height - ((c_rad_mid * 2) + 1) + (c_rad_mid / 3 * 2), width + sb_width, ((c_rad_mid * 2) + 1), COL_MENUCONTENT_PLUS_0, c_rad_mid, CORNER_BOTTOM);
frameBuffer->paintBoxRel(x, y, width + sb_width, hheight, COL_MENUHEAD_PLUS_0, c_rad_mid, CORNER_TOP);
- int iconw, iconh;
- frameBuffer->getIconSize(iconfile.c_str(), &iconw, &iconh);
- g_Font[SNeutrinoSettings::FONT_TYPE_MENU_TITLE]->RenderString(x + 8 + iconw + 10, y + hheight + 2, width - 8 - iconw - 10, nameString.c_str(), COL_MENUHEAD, 0, true); // UTF-8
- frameBuffer->paintIcon(iconfile, x + 8, y + hheight / 2 - iconh / 2);
+ int head_iconoffset = 0;
+ if (!iconfile.empty())
+ {
+ int iconw, iconh;
+ frameBuffer->getIconSize(iconfile.c_str(), &iconw, &iconh);
+ frameBuffer->paintIcon(iconfile, x + 8, y + hheight / 2 - iconh / 2);
+ head_iconoffset = 8 + iconw;
+ }
+ g_Font[SNeutrinoSettings::FONT_TYPE_MENU_TITLE]->RenderString(x + head_iconoffset + 10, y + hheight + 2, width - head_iconoffset - 10, nameString.c_str(), COL_MENUHEAD, 0, true); // UTF-8
item_start_y = y+hheight;
paintItems();
commit a967ebae0744fe64f265c98d1fed0c1a6a162fb5
Author: Christian Schuett <Gau...@ho...>
Date: Sun Apr 28 20:59:34 2013 +0200
Neutrino moviebrowser: reduce console spam
Signed-off-by: Christian Schuett <Gau...@ho...>
Signed-off-by: Thilo Graf <db...@no...>
diff --git a/tuxbox/neutrino/src/gui/moviebrowser.cpp b/tuxbox/neutrino/src/gui/moviebrowser.cpp
index c67a6af..2d6a71c 100644
--- a/tuxbox/neutrino/src/gui/moviebrowser.cpp
+++ b/tuxbox/neutrino/src/gui/moviebrowser.cpp
@@ -2888,7 +2888,7 @@ void CMovieBrowser::loadMovies(bool doRefresh)
{
time_t time_start = time(NULL);
clock_t clock_start = clock()/10000; // CLOCKS_PER_SECOND
- clock_t clock_prev = clock_start;
+ //clock_t clock_prev = clock_start;
clock_t clock_act = clock_start;
TRACE("[mb] loadMovies: \n");
@@ -2896,15 +2896,15 @@ void CMovieBrowser::loadMovies(bool doRefresh)
CHintBox loadBox(LOCALE_MOVIEBROWSER_HEAD,g_Locale->getText(LOCALE_MOVIEBROWSER_SCAN_FOR_MOVIES));
loadBox.paint();
- clock_act = clock()/10000;TRACE("[mb] *1: time %9ld clock %6ld dclock %6ld*\n",(long)time(NULL),clock_act,clock_act - clock_prev);clock_prev = clock_act;
+ //clock_act = clock()/10000;TRACE("[mb] *1: time %9ld clock %6ld dclock %6ld*\n",(long)time(NULL),clock_act,clock_act - clock_prev);clock_prev = clock_act;
loadAllTsFileNamesFromStorage(); // P1
- clock_act = clock()/10000;TRACE("[mb] *2: time %9ld clock %6ld dclock %6ld*\n",(long)time(NULL),clock_act,clock_act - clock_prev);clock_prev = clock_act;
+ //clock_act = clock()/10000;TRACE("[mb] *2: time %9ld clock %6ld dclock %6ld*\n",(long)time(NULL),clock_act,clock_act - clock_prev);clock_prev = clock_act;
loadAllMovieInfo(); // P1
- clock_act = clock()/10000;TRACE("[mb] *3: time %9ld clock %6ld dclock %6ld*\n",(long)time(NULL),clock_act,clock_act - clock_prev);clock_prev = clock_act;
+ //clock_act = clock()/10000;TRACE("[mb] *3: time %9ld clock %6ld dclock %6ld*\n",(long)time(NULL),clock_act,clock_act - clock_prev);clock_prev = clock_act;
m_file_info_stale = false;
m_seriename_stale = true; // we reloded the movie info, so make sure the other list are updated later on as well
updateSerienames();
- clock_act = clock()/10000;TRACE("[mb] *4: time %9ld clock %6ld dclock %6ld*\n",(long)time(NULL),clock_act,clock_act - clock_prev);clock_prev = clock_act;
+ //clock_act = clock()/10000;TRACE("[mb] *4: time %9ld clock %6ld dclock %6ld*\n",(long)time(NULL),clock_act,clock_act - clock_prev);clock_prev = clock_act;
if(m_settings.serie_auto_create == 1)
{
autoFindSerie();
@@ -2914,16 +2914,17 @@ void CMovieBrowser::loadMovies(bool doRefresh)
if (doRefresh)
{
- clock_act = clock()/10000;TRACE("[mb] *5: time %9ld clock %6ld dclock %6ld*\n",(long)time(NULL),clock_act,clock_act - clock_prev);clock_prev = clock_act;
+ //clock_act = clock()/10000;TRACE("[mb] *5: time %9ld clock %6ld dclock %6ld*\n",(long)time(NULL),clock_act,clock_act - clock_prev);clock_prev = clock_act;
refreshBrowserList();
- clock_act = clock()/10000;TRACE("[mb] *6: time %9ld clock %6ld dclock %6ld*\n",(long)time(NULL),clock_act,clock_act - clock_prev);clock_prev = clock_act;
+ //clock_act = clock()/10000;TRACE("[mb] *6: time %9ld clock %6ld dclock %6ld*\n",(long)time(NULL),clock_act,clock_act - clock_prev);clock_prev = clock_act;
refreshLastPlayList();
refreshLastRecordList();
refreshFilterList();
refreshMovieInfo(); // is done by refreshBrowserList if needed
- clock_act = clock()/10000;TRACE("[mb] *7: time %9ld clock %6ld dclock %6ld*\n",(long)time(NULL),clock_act,clock_act - clock_prev);clock_prev = clock_act;
+ //clock_act = clock()/10000;TRACE("[mb] *7: time %9ld clock %6ld dclock %6ld*\n",(long)time(NULL),clock_act,clock_act - clock_prev);clock_prev = clock_act;
}
+ clock_act = clock()/10000;
TRACE("[mb] ***Total:time %ld clock %ld***\n",(time(NULL)-time_start), clock_act-clock_start);
}
/************************************************************************
commit d7b95b5a94e6f0c44a410bde47ad6a3c7c556e1c
Author: Christian Schuett <Gau...@ho...>
Date: Sat Apr 27 22:34:14 2013 +0200
Neutrino moviebrowser: use pulldown list to change genre
Signed-off-by: Christian Schuett <Gau...@ho...>
Signed-off-by: Thilo Graf <db...@no...>
diff --git a/tuxbox/neutrino/src/gui/moviebrowser.cpp b/tuxbox/neutrino/src/gui/moviebrowser.cpp
index 93b6bba..c67a6af 100644
--- a/tuxbox/neutrino/src/gui/moviebrowser.cpp
+++ b/tuxbox/neutrino/src/gui/moviebrowser.cpp
@@ -3063,7 +3063,7 @@ int CMovieBrowser::showMovieInfoMenu(MI_MOVIE_INFO* movie_info)
movieInfoMenu.addItem( new CMenuForwarder(LOCALE_MOVIEBROWSER_INFO_TITLE, true, movie_info->epgTitle, &titelUserInput,NULL, CRCInput::RC_1, NEUTRINO_ICON_BUTTON_1));
movieInfoMenu.addItem( new CMenuForwarder(LOCALE_MOVIEBROWSER_INFO_SERIE, true, movie_info->serieName, &serieMenu,NULL, CRCInput::RC_2, NEUTRINO_ICON_BUTTON_2));
movieInfoMenu.addItem( new CMenuForwarder(LOCALE_MOVIEBROWSER_INFO_INFO1, true, movie_info->epgInfo1, &epgUserInput,NULL, CRCInput::RC_3, NEUTRINO_ICON_BUTTON_3));
- movieInfoMenu.addItem( new CMenuOptionChooser(LOCALE_MOVIEBROWSER_INFO_GENRE_MAJOR, &movie_info->genreMajor, GENRE_ALL, GENRE_ALL_COUNT, true,NULL, CRCInput::RC_4, NEUTRINO_ICON_BUTTON_4));
+ movieInfoMenu.addItem( new CMenuOptionChooser(LOCALE_MOVIEBROWSER_INFO_GENRE_MAJOR, &movie_info->genreMajor, GENRE_ALL, GENRE_ALL_COUNT, true, NULL, CRCInput::RC_4, NEUTRINO_ICON_BUTTON_4, true));
movieInfoMenu.addItem(GenericMenuSeparatorLine);
movieInfoMenu.addItem( new CMenuOptionNumberChooser(LOCALE_MOVIEBROWSER_INFO_QUALITY, &movie_info->quality, true, 0, 3, 0, 0, NONEXISTANT_LOCALE, NULL, CRCInput::RC_5, NEUTRINO_ICON_BUTTON_5));
movieInfoMenu.addItem( new CMenuOptionChooser(LOCALE_MOVIEBROWSER_INFO_PARENTAL_LOCKAGE, &movie_info->parentalLockAge, MESSAGEBOX_PARENTAL_LOCKAGE_OPTIONS, MESSAGEBOX_PARENTAL_LOCKAGE_OPTION_COUNT, true,NULL, CRCInput::RC_6, NEUTRINO_ICON_BUTTON_6 ));
commit 275bf133983690f10d36cc141bef989889575e89
Author: GetAway <get...@t-...>
Date: Fri Apr 26 16:57:55 2013 +0200
settings.cpp: hardcoded sat/provider not longer needed
Signed-off-by: Thilo Graf <db...@no...>
diff --git a/tuxbox/neutrino/src/system/settings.cpp b/tuxbox/neutrino/src/system/settings.cpp
index 3bca8c6..36f0352 100644
--- a/tuxbox/neutrino/src/system/settings.cpp
+++ b/tuxbox/neutrino/src/system/settings.cpp
@@ -208,19 +208,7 @@ void CScanSettings::useDefaults(const delivery_system_t _delivery_system)
// i do not know how to do it correctly for old API -- seife
TP_mod = QAM_256;
#endif
-
- switch (delivery_system)
- {
- case DVB_C:
- strcpy(satNameNoDiseqc, "Kabel Deutschland");
- break;
- case DVB_S:
- strcpy(satNameNoDiseqc, "Astra 19.2E");
- break;
- case DVB_T:
- strcpy(satNameNoDiseqc, "");
- break;
- }
+ strcpy(satNameNoDiseqc, "none");
}
bool CScanSettings::loadSettings(const char * const fileName, const delivery_system_t _delivery_system)
commit 524fe056252cd77792885c9bb081e1f80cff52b1
Author: GetAway <get...@t-...>
Date: Fri Apr 26 10:22:37 2013 +0200
scan-setup: use pulldown list to select providers/sats
Signed-off-by: Thilo Graf <db...@no...>
diff --git a/tuxbox/neutrino/src/gui/scan_setup.cpp b/tuxbox/neutrino/src/gui/scan_setup.cpp
index 2b573f1..ca73633 100644
--- a/tuxbox/neutrino/src/gui/scan_setup.cpp
+++ b/tuxbox/neutrino/src/gui/scan_setup.cpp
@@ -247,15 +247,25 @@ int CScanSetup::showScanService()
//sat-lnb-settings
if(g_info.delivery_system == DVB_S)
{
+ satList.clear();
g_Zapit->getScanSatelliteList(satList);
//prepare diseqc
- CMenuOptionStringChooser* ojSat = new CMenuOptionStringChooser(LOCALE_SATSETUP_SATELLITE, scanSettings.satNameNoDiseqc, ((scanSettings.diseqcMode == DISEQC_1_2) || (scanSettings.diseqcMode == NO_DISEQC)|| scanSettings.diseqcMode == DISEQC_UNICABLE));
+ CMenuOptionStringChooser* ojSat = new CMenuOptionStringChooser(LOCALE_SATSETUP_SATELLITE, (char*)&scanSettings.satNameNoDiseqc, ((scanSettings.diseqcMode == DISEQC_1_2) || (scanSettings.diseqcMode == NO_DISEQC)|| scanSettings.diseqcMode == DISEQC_UNICABLE), NULL, CRCInput::RC_nokey, "", true);
- for (uint i=0; i < sat_list_size; i++)
- {
- ojSat->addOption(satList[i].satName);
- dprintf(DEBUG_DEBUG, "got scanprovider (sat): %s\n", satList[i].satName );
+ bool sfound = false;
+ for (CZapitClient::SatelliteList::iterator it = satList.begin(); it != satList.end(); ++it) {
+
+ ojSat->addOption(it->satName);
+
+ if (!sfound && strcmp(scanSettings.satNameNoDiseqc, it->satName) == 0)
+ sfound = true;
+ dprintf(DEBUG_DEBUG, "got scanprovider (sat): %s\n", it->satName);
+ }
+
+ if (!sfound && !satList.empty()) {
+ CZapitClient::SatelliteList::iterator it = satList.begin();
+ snprintf(scanSettings.satNameNoDiseqc, sizeof(scanSettings.satNameNoDiseqc), "%s", it->satName);
}
//prepare diseqc repeats
@@ -354,14 +364,23 @@ int CScanSetup::showScanService()
CZapitClient::SatelliteList providerList;
g_Zapit->getScanSatelliteList(providerList);
-
- //prepare/show providers
- CMenuOptionStringChooser* oj = new CMenuOptionStringChooser(LOCALE_CABLESETUP_PROVIDER, (char*)&scanSettings.satNameNoDiseqc, true);
- for( uint i=0; i< provider_list_size; i++)
- {
- oj->addOption(providerList[i].satName);
- dprintf(DEBUG_DEBUG, "got scanprovider (cable): %s\n", providerList[i].satName );
+ // sat/provider selector
+ CMenuOptionStringChooser * ojProv = new CMenuOptionStringChooser(LOCALE_CABLESETUP_PROVIDER, (char*)&scanSettings.satNameNoDiseqc, true, NULL, CRCInput::RC_nokey, "", true);
+
+ bool sfound = false;
+ for (CZapitClient::SatelliteList::iterator it = providerList.begin(); it != providerList.end(); ++it) {
+
+ ojProv->addOption(it->satName);
+
+ if (!sfound && strcmp(scanSettings.satNameNoDiseqc, it->satName) == 0)
+ sfound = true;
+ dprintf(DEBUG_DEBUG, "got scanprovider (cable): %s\n", it->satName);
+ }
+
+ if (!sfound && !providerList.empty()) {
+ CZapitClient::SatelliteList::iterator it = providerList.begin();
+ snprintf(scanSettings.satNameNoDiseqc, sizeof(scanSettings.satNameNoDiseqc), "%s", it->satName);
}
//show general entries
@@ -369,7 +388,7 @@ int CScanSetup::showScanService()
scansetup->addItem( ojBouquets );
//show cable provider
- scansetup->addItem( oj);
+ scansetup->addItem( ojProv );
}
//prepare scan mode (fast->on/off)
@@ -522,7 +541,7 @@ void CScanSetup::initScanSettings()
scanSettings.satMotorPos[i] = satList[i].motorPosition;
strcpy(scanSettings.satName[i], satList[i].satName);
//scanSettings.satDiseqc[i] = satList[i].satDiseqc;
- if (satList[i].satPosition == currentSatellitePosition)
+ if (satList[i].satPosition == currentSatellitePosition) // make that sense?
strcpy(scanSettings.satNameNoDiseqc, satList[i].satName);
}
for (uint i = satList.size(); i < MAX_SATELLITES; i++)
@@ -540,7 +559,7 @@ void CScanSetup::initScanSettings()
CZapitClient::SatelliteList providerList;
g_Zapit->getScanSatelliteList(providerList);
- printf("[scan-setup] received %d providers\n", providerList.size());
+ printf("[scan-setup] received %d cable provider(s)\n", providerList.size());
provider_list_size = providerList.size();
}
commit df0adb40aef302167639dd79b141e550a9350a34
Author: GetAway <get...@t-...>
Date: Fri Apr 26 10:18:47 2013 +0200
Neutrino: add pulldown list functionality to CMenuOption*Chooser
ported from Neutrino-HD
Signed-off-by: Christian Schuett <Gau...@ho...>
Signed-off-by: Thilo Graf <db...@no...>
diff --git a/tuxbox/neutrino/src/gui/widget/menue.cpp b/tuxbox/neutrino/src/gui/widget/menue.cpp
index 1860107..e47e89c 100644
--- a/tuxbox/neutrino/src/gui/widget/menue.cpp
+++ b/tuxbox/neutrino/src/gui/widget/menue.cpp
@@ -792,7 +792,7 @@ int CMenuOptionNumberChooser::paint(bool selected)
-CMenuOptionChooser::CMenuOptionChooser(const neutrino_locale_t OptionName, int * const OptionValue, const struct keyval * const Options, const unsigned Number_Of_Options, const bool Active, CChangeObserver * const Observ, const neutrino_msg_t DirectKey, const std::string & IconName)
+CMenuOptionChooser::CMenuOptionChooser(const neutrino_locale_t OptionName, int * const OptionValue, const struct keyval * const Options, const unsigned Number_Of_Options, const bool Active, CChangeObserver * const Observ, const neutrino_msg_t DirectKey, const std::string & IconName, bool Pulldown)
{
optionNameString = g_Locale->getText(OptionName);
optionName = OptionName;
@@ -803,9 +803,10 @@ CMenuOptionChooser::CMenuOptionChooser(const neutrino_locale_t OptionName, int *
observ = Observ;
directKey = DirectKey;
iconName = IconName;
+ pulldown = Pulldown;
}
-CMenuOptionChooser::CMenuOptionChooser(const char* OptionName, int * const OptionValue, const struct keyval * const Options, const unsigned Number_Of_Options, const bool Active, CChangeObserver * const Observ, const neutrino_msg_t DirectKey, const std::string & IconName)
+CMenuOptionChooser::CMenuOptionChooser(const char* OptionName, int * const OptionValue, const struct keyval * const Options, const unsigned Number_Of_Options, const bool Active, CChangeObserver * const Observ, const neutrino_msg_t DirectKey, const std::string & IconName, bool Pulldown)
{
optionNameString = OptionName;
optionName = NONEXISTANT_LOCALE;
@@ -816,6 +817,7 @@ CMenuOptionChooser::CMenuOptionChooser(const char* OptionName, int * const Optio
observ = Observ;
directKey = DirectKey;
iconName = IconName;
+ pulldown = Pulldown;
}
int CMenuOptionChooser::getHeight(void) const
@@ -834,33 +836,63 @@ int CMenuOptionChooser::getOptionValue(void) const
}
-int CMenuOptionChooser::exec(CMenuTarget*)
+int CMenuOptionChooser::exec(CMenuTarget* parent)
{
bool wantsRepaint = false;
- unsigned int count;
+ int ret = menu_return::RETURN_NONE;
- for(count = 0; count < number_of_options; count++)
+ if (pulldown)
{
- if (options[count].key == (*optionValue))
+ int select = -1;
+ char cnt[5];
+
+ if (parent)
+ parent->hide();
+
+ CMenuWidget* menu = new CMenuWidget(optionNameString.c_str(), NEUTRINO_ICON_SETTINGS);
+ menu->addIntroItems(NONEXISTANT_LOCALE, NONEXISTANT_LOCALE, CMenuWidget::BTN_TYPE_CANCEL);
+ CMenuSelectorTarget * selector = new CMenuSelectorTarget(&select);
+ for(unsigned int count = 0; count < number_of_options; count++)
{
- *optionValue = options[(count+1) % number_of_options].key;
- break;
+ bool selected = false;
+ if (options[count].key == (*optionValue))
+ selected = true;
+ sprintf(cnt, "%d", count);
+ CMenuForwarder *mn_option = new CMenuForwarder(options[count].value, true, NULL, selector, cnt);
+ mn_option->setItemButton(NEUTRINO_ICON_BUTTON_OKAY, true /*for selected item*/);
+ menu->addItem(mn_option, selected);
}
+ menu->exec(NULL, "");
+ ret = menu_return::RETURN_REPAINT;
+ if (select >= 0)
+ *optionValue = options[select].key;
+ delete menu;
+ delete selector;
}
- // if options are removed optionValue may not exist anymore -> use 1st available option
- if ((count == number_of_options) && number_of_options) {
- *optionValue = options[0].key;
+ else
+ {
+ unsigned int count;
+ for(count = 0; count < number_of_options; count++)
+ {
+ if (options[count].key == (*optionValue))
+ {
+ *optionValue = options[(count+1) % number_of_options].key;
+ break;
+ }
+ }
+ // if options are removed optionValue may not exist anymore -> use 1st available option
+ if ((count == number_of_options) && number_of_options)
+ *optionValue = options[0].key;
+ paint(true);
}
- paint(true);
- if(observ)
- {
+ if (observ)
wantsRepaint = observ->changeNotify(optionName, optionValue);
- }
- if ( wantsRepaint )
- return menu_return::RETURN_REPAINT;
- else
- return menu_return::RETURN_NONE;
+
+ if (wantsRepaint)
+ ret = menu_return::RETURN_REPAINT;
+
+ return ret;
}
int CMenuOptionChooser::paint( bool selected )
@@ -921,15 +953,15 @@ int CMenuOptionChooser::paint( bool selected )
//-------------------------------------------------------------------------------------------------------------------------------
-CMenuOptionStringChooser::CMenuOptionStringChooser(const neutrino_locale_t OptionName, char* OptionValue, bool Active, CChangeObserver* Observ)
+CMenuOptionStringChooser::CMenuOptionStringChooser(const neutrino_locale_t OptionName, char* OptionValue, bool Active, CChangeObserver* Observ, const neutrino_msg_t DirectKey, const std::string & IconName, bool Pulldown)
{
optionName = OptionName;
active = Active;
optionValue = OptionValue;
observ = Observ;
-
- directKey = CRCInput::RC_nokey;
- iconName = "";
+ directKey = DirectKey;
+ iconName = IconName;
+ pulldown = Pulldown;
}
int CMenuOptionStringChooser::getHeight(void) const
@@ -952,28 +984,60 @@ void CMenuOptionStringChooser::addOption(const char * const value)
options.push_back(std::string(value));
}
-int CMenuOptionStringChooser::exec(CMenuTarget*)
+int CMenuOptionStringChooser::exec(CMenuTarget* parent)
{
bool wantsRepaint = false;
- //select next value
- for(unsigned int count = 0; count < options.size(); count++)
+ int ret = menu_return::RETURN_NONE;
+
+ if (pulldown)
{
- if ((strcmp(options[count].c_str(), optionValue) == 0) || (optionValue[0] == '\0'))
+ int select = -1;
+ char cnt[5];
+
+ if (parent)
+ parent->hide();
+
+ CMenuWidget* menu = new CMenuWidget(optionName, NEUTRINO_ICON_SETTINGS);
+ menu->addIntroItems(NONEXISTANT_LOCALE, NONEXISTANT_LOCALE, CMenuWidget::BTN_TYPE_CANCEL);
+ CMenuSelectorTarget * selector = new CMenuSelectorTarget(&select);
+ for (unsigned int count = 0; count < options.size(); count++)
{
- strcpy(optionValue, options[(count + 1) % options.size()].c_str());
- break;
+ bool selected = false;
+ if (strcmp(options[count].c_str(), optionValue) == 0)
+ selected = true;
+ sprintf(cnt, "%d", count);
+ CMenuForwarderNonLocalized *mn_option = new CMenuForwarderNonLocalized(options[count].c_str(), true, NULL, selector, cnt);
+ mn_option->setItemButton(NEUTRINO_ICON_BUTTON_OKAY, true /*for selected item*/);
+ menu->addItem(mn_option, selected);
}
+ menu->exec(NULL, "");
+ ret = menu_return::RETURN_REPAINT;
+ if (select >= 0)
+ strcpy(optionValue, options[select].c_str());
+ delete menu;
+ delete selector;
}
-
- paint(true);
- if(observ)
+ else
{
- wantsRepaint = observ->changeNotify(optionName, optionValue);
+ //select next value
+ for(unsigned int count = 0; count < options.size(); count++)
+ {
+ if ((strcmp(options[count].c_str(), optionValue) == 0) || (optionValue[0] == '\0'))
+ {
+ strcpy(optionValue, options[(count + 1) % options.size()].c_str());
+ break;
+ }
+ }
+ paint(true);
}
- if ( wantsRepaint )
- return menu_return::RETURN_REPAINT;
- else
- return menu_return::RETURN_NONE;
+
+ if (observ)
+ wantsRepaint = observ->changeNotify(optionName, optionValue);
+
+ if (wantsRepaint)
+ ret = menu_return::RETURN_REPAINT;
+
+ return ret;
}
int CMenuOptionStringChooser::paint( bool selected )
diff --git a/tuxbox/neutrino/src/gui/widget/menue.h b/tuxbox/neutrino/src/gui/widget/menue.h
index 6856a33..6929980 100644
--- a/tuxbox/neutrino/src/gui/widget/menue.h
+++ b/tuxbox/neutrino/src/gui/widget/menue.h
@@ -245,10 +245,11 @@ class CMenuOptionChooser : public CAbstractMenuOptionChooser
unsigned number_of_options;
CChangeObserver * observ;
std::string optionNameString;
+ bool pulldown;
public:
- CMenuOptionChooser(const neutrino_locale_t OptionName, int * const OptionValue, const struct keyval * const Options, const unsigned Number_Of_Options, const bool Active = false, CChangeObserver * const Observ = NULL, const neutrino_msg_t DirectKey = CRCInput::RC_nokey, const std::string & IconName= ""); // UTF-8
- CMenuOptionChooser(const char* OptionName, int * const OptionValue, const struct keyval * const Options, const unsigned Number_Of_Options, const bool Active = false, CChangeObserver * const Observ = NULL, const neutrino_msg_t DirectKey = CRCInput::RC_nokey, const std::string & IconName= ""); // UTF-8
+ CMenuOptionChooser(const neutrino_locale_t OptionName, int * const OptionValue, const struct keyval * const Options, const unsigned Number_Of_Options, const bool Active = false, CChangeObserver * const Observ = NULL, const neutrino_msg_t DirectKey = CRCInput::RC_nokey, const std::string & IconName= "", bool Pulldown = false);
+ CMenuOptionChooser(const char* OptionName, int * const OptionValue, const struct keyval * const Options, const unsigned Number_Of_Options, const bool Active = false, CChangeObserver * const Observ = NULL, const neutrino_msg_t DirectKey = CRCInput::RC_nokey, const std::string & IconName= "", bool Pulldown = false);
void setOptionValue(const int newvalue);
int getOptionValue(void) const;
@@ -266,9 +267,10 @@ class CMenuOptionStringChooser : public CMenuItem
char * optionValue;
std::vector<std::string> options;
CChangeObserver * observ;
+ bool pulldown;
public:
- CMenuOptionStringChooser(const neutrino_locale_t OptionName, char* OptionValue, bool Active = false, CChangeObserver* Observ = NULL);
+ CMenuOptionStringChooser(const neutrino_locale_t OptionName, char* OptionValue, bool Active = false, CChangeObserver* Observ = NULL, const neutrino_msg_t DirectKey = CRCInput::RC_nokey, const std::string & IconName= "", bool Pulldown = false);
~CMenuOptionStringChooser();
void addOption(const char * value);
commit 8d58661d3e921afc184233a5896ec1f3eaab1e19
Author: Christian Schuett <Gau...@ho...>
Date: Thu Apr 25 21:53:53 2013 +0200
Neutrino infoviewer: remove offset for green button
offset for green button is not needed anymore because of shorter
locales for red button
Signed-off-by: Christian Schuett <Gau...@ho...>
Signed-off-by: Thilo Graf <db...@no...>
diff --git a/tuxbox/neutrino/src/gui/infoviewer.cpp b/tuxbox/neutrino/src/gui/infoviewer.cpp
index f76a6fb..4f36b70 100644
--- a/tuxbox/neutrino/src/gui/infoviewer.cpp
+++ b/tuxbox/neutrino/src/gui/infoviewer.cpp
@@ -1029,7 +1029,6 @@ void CInfoViewer::showButton(const int button, const bool calledFromMPlayer, con
int bx = BoxStartX + (ChanWidth / 3);
int by = BoxEndY + (InfoHeightY_Info >> 3) + ((g_settings.infobar_sat_display && !calledFromMPlayer) ? 25 : 0);
int startX = bx;
- int xoffset = 0;
bool paint = true;
switch (button)
@@ -1062,10 +1061,7 @@ void CInfoViewer::showButton(const int button, const bool calledFromMPlayer, con
if (mode == VLC_MODE)
InfobarButtons[SNeutrinoSettings::BUTTON_GREEN].locale = LOCALE_MOVIEPLAYER_RESYNC;
else
- {
InfobarButtons[SNeutrinoSettings::BUTTON_GREEN].locale = LOCALE_INFOVIEWER_LANGUAGES;
- xoffset = 18;
- }
}
else
{
@@ -1079,7 +1075,6 @@ void CInfoViewer::showButton(const int button, const bool calledFromMPlayer, con
InfobarButtons[SNeutrinoSettings::BUTTON_GREEN].locale = LOCALE_INFOVIEWER_LANGUAGES;
else
paint = false;
- xoffset = 8;
int ac3state;
if ( ( g_RemoteControl->curr...
[truncated message content] |
|
From: Thilo G. <tux...@ne...> - 2013-04-20 14:54:12
|
Project "Tuxbox-GIT: cdk":
The branch, master has been updated
via 460f1bd69ee25ae5a13147158972ddb59d10115a (commit)
from e3bdd7530669d4c2dc182a8a41d6c2a190e2c410 (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
commit 460f1bd69ee25ae5a13147158972ddb59d10115a
Author: GetAway <get...@t-...>
Date: Sun Apr 14 11:33:54 2013 +0200
version bump boost 1.53.0 version bump binutils 2.23.52.0.1
Signed-off-by: Thilo Graf <db...@no...>
diff --git a/rules-archive b/rules-archive
index 508b37f..555e7e8 100644
--- a/rules-archive
+++ b/rules-archive
@@ -15,7 +15,7 @@ linux-2.6.26.8.tar.bz2;http://sources.buildroot.net
cifs-1.20c-2.4.tar.gz;http://us1.samba.org/samba/ftp/cifs-cvs
linux-2.4.34-dbox2-mtd0305.diff.bz2
autofs4-2.4-module-20050404.tar.gz;http://www.kernel.org/pub/linux/daemons/autofs/v4
-binutils-2.23.51.0.3.tar.bz2;http://www.kernel.org/pub/linux/devel/binutils/
+binutils-2.23.52.0.1.tar.bz2;http://www.kernel.org/pub/linux/devel/binutils/
300-001_ld_makefile_patch.patch;http://crosstool-ng.org/hg/crosstool-ng/raw-file/c7fa97debb36/patches/binutils/2.22
300-012_check_ldrunpath_length.patch;http://crosstool-ng.org/hg/crosstool-ng/raw-file/c7fa97debb36/patches/binutils/2.22
gcc-core-3.4.6.tar.bz2;ftp://$(gnuserver)/../../../gcc/releases/gcc-3.4.6
@@ -88,7 +88,7 @@ libdvbpsi-0.1.3.tar.bz2;http://www.videolan.org/pub/videolan/libdvbpsi/0.1.3
DirectFB-1.0.0.tar.gz;http://directfb.org/downloads/Old
DFB++-1.0.0.tar.gz;http://directfb.org/downloads/Extras
++DFB-1.0.0.tar.gz;http://directfb.org/downloads/Extras
-boost_1_51_0.tar.bz2;http://prdownloads.sourceforge.net/sourceforge/boost
+boost_1_53_0.tar.bz2;http://prdownloads.sourceforge.net/sourceforge/boost
libvorbisidec_1.0.2+svn15687.orig.tar.gz;http://old-releases.ubuntu.com/ubuntu/pool/universe/libv/libvorbisidec
fribidi-0.10.4.tar.gz;http://fribidi.org/download
expat-1.95.6.tar.gz;http://prdownloads.sourceforge.net/sourceforge/expat
diff --git a/rules-make b/rules-make
index e228d96..0b1f230 100644
--- a/rules-make
+++ b/rules-make
@@ -15,7 +15,7 @@
uboot;2012.04;u-boot-2012.04;u-boot-2012.04.tar.bz2:u-boot-2011.06.diff;extract:u-boot-2012.04.tar.bz2
linux24;2.4.37.11-dbox2;linux-2.4.37.11;linux-2.4.37.11.tar.bz2:linux-2.4-dbox2.diff:linux-2.4.34-dbox2-mtd0305.diff.bz2:linux-2.4-jffs2_lzma.diff:linux-2.4.git.diff;remove:linux;extract:linux-2.4.37.11.tar.bz2;patch:linux-2.4-dbox2.diff;patch:squashfs3.0-patch;patch:squashfs3.0_lzma-patch;patch:linux-2.4.git.diff;link:linux-2.4.37.11:linux
linux;2.6.26.8-dbox2;linux-2.6.26.8;linux-2.6.26.8.tar.bz2:squashfs3.0.tar.gz:linux-2.6.26.4-dbox2.diff:linux-2.6.25-create-console.diff:linux-2.6.25-squashfs3.0.diff:linux-2.6.25.6-squashfs3.0.diff:linux-2.6.25.6-squashfs3.0_lzma.diff:linux-2.6-jffs2_lzma.diff;remove:linux;extract:linux-2.6.26.8.tar.bz2;extract:squashfs3.0.tar.gz;move:squashfs3.0/linux-2.6.15/squashfs3.0-patch:Patches/squashfs3.0_2.6-patch;remove:squashfs3.0;patch:linux-2.6.26.4-dbox2.diff;patch:linux-2.6.25-create-console.diff;patch:linux-2.6.25-squashfs3.0.diff;patch:squashfs3.0_2.6-patch;patch:linux-2.6.25.6-squashfs3.0.diff;patch:linux-2.6.25.6-squashfs3.0_lzma.diff;patch:linux-2.6.26.8-new-make.patch;link:linux-2.6.26.8:linux
-binutils;2.23.51.0.3;binutils-2.23.51.0.3;binutils-2.23.51.0.3.tar.bz2:binutils.diff;extract:binutils-2.23.51.0.3.tar.bz2;patch:binutils.diff;apatch:300-001_ld_makefile_patch.patch;apatch:300-012_check_ldrunpath_length.patch
+binutils;2.23.52.0.1;binutils-2.23.52.0.1;binutils-2.23.52.0.1.tar.bz2:binutils.diff;extract:binutils-2.23.52.0.1.tar.bz2;patch:binutils.diff;apatch:300-001_ld_makefile_patch.patch;apatch:300-012_check_ldrunpath_length.patch
bootstrap_gcc;3.4.6;gcc-3.4.6;gcc-core-3.4.6.tar.bz2:gcc-core.diff;extract:gcc-core-3.4.6.tar.bz2;patch:gcc-core.diff
bootstrap_gcc41;4.1.2;gcc-4.1.2;gcc-core-4.1.2.tar.bz2:gcc-4.1.2-patches-1.3.tar.bz2;extract:gcc-core-4.1.2.tar.bz2
gcc;3.4.6;gcc-3.4.6;gcc-core-3.4.6.tar.bz2:gcc-g++-3.4.6.tar.bz2:gcc-core.diff:gcc-binutils.diff;extract:gcc-core-3.4.6.tar.bz2;extract:gcc-g++-3.4.6.tar.bz2;patch:gcc-core.diff;patch:gcc-binutils.diff
@@ -60,7 +60,7 @@ squashfs;3.0;mksquashfs;squashfs3.0.tar.gz:mksquashfs_lzma.diff:lzma442.tar.bz2:
#
# contrib libs
#
-libboost;boost-1.51.0;boost_1_51_0;boost_1_51_0.tar.bz2;extract:boost_1_51_0.tar.bz2
+libboost;boost-1.53.0;boost_1_53_0;boost_1_53_0.tar.bz2;extract:boost_1_53_0.tar.bz2
libcommoncplusplus;1.0.13;commoncpp2-1.0.13;commoncpp2-1.0.13.tar.gz:libcommoncplusplus.diff;extract:commoncpp2-1.0.13.tar.gz;patch:libcommoncplusplus.diff
libcrypto;0.9.7e;openssl-0.9.7e;openssl-0.9.7e.tar.gz:libcrypto.diff;extract:openssl-0.9.7e.tar.gz;patch:libcrypto.diff
libcurl;7.10.1;curl-7.10.1;curl-7.10.1.tar.gz:libcurl.diff;extract:curl-7.10.1.tar.gz;patch:libcurl.diff
-----------------------------------------------------------------------
Summary of changes:
rules-archive | 4 ++--
rules-make | 4 ++--
2 files changed, 4 insertions(+), 4 deletions(-)
--
Tuxbox-GIT: cdk
|
|
From: Thilo G. <tux...@ne...> - 2013-04-20 14:52:31
|
Project "Tuxbox-GIT: apps":
The branch, master has been updated
via db94409e9100a7cac7f438cbd8aebce09c7b1126 (commit)
via decf127fbd8238669a220f8b8fb8eb0c347f72d0 (commit)
via 8a9877685eac6dfcb369666ee618a91566c32a87 (commit)
via 4a990011083f3edaa4766cf2fe21a2e1b92b74aa (commit)
via 14d932a2a82a2790ea5593d9319ac6b5d034fb8d (commit)
via 0bc7146dde19443cf74b25947fdad32af11ef60a (commit)
via 812420d89cfdff064a4ed95dd31672027a748c76 (commit)
via 25661a8ec03b6e358f3faedca629077f3301bfa0 (commit)
via 6dfc4a10ddee54d1243cb3d6ef0b0068054e9043 (commit)
via 8fce27f9f3bac0c2936dcb9cdf7758b812ccb741 (commit)
via aa9ed3a250e2199ae5926311bf96cf9d42edeadf (commit)
via 9d41be2229f2ddd54fdf91e70bdd1e0945d624b5 (commit)
via c71ced00b4b79a26748db8abfff073c0e2c4972b (commit)
via 0d8e87d0dd0d18733e718a672354c67f0ab23c52 (commit)
via 57fee374147866531f505b9e37980dd10cf6e9dd (commit)
via 0c6cca5f974ff1f8e1841ed9e69832a0094fa230 (commit)
via 35932730de5d5ef0a146422343614607a948e6af (commit)
via 2f44ca87959f0753f39be138bb83c04d454d8e80 (commit)
via 138640a39419b848f95aa3a1c404dcdc7df574ee (commit)
via 11be07035e47084cf84c49c08356568fca112a37 (commit)
via ffbe3fcb336710de2109934507a2c68378ac4c40 (commit)
via 9b99f1d5df316d295f3c3904eca50697bac6d92d (commit)
via fc737402d3d23b5ba0bb7dd9f4442860fa33536e (commit)
via 375f222b69f8e6a689a37b5913acd65d724f2074 (commit)
via 80ed9f3b85e299e0b8e5308ceba8133a0bac8b5c (commit)
from cf53e3b3fd4f361346e0d57cabea8cd0ffbb9622 (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
commit db94409e9100a7cac7f438cbd8aebce09c7b1126
Author: Christian Schuett <Gau...@ho...>
Date: Fri Apr 19 22:20:56 2013 +0200
Neutrino infoviewer: remove newline from the end of infotext
this avoids paragraph sign in infotext line
Signed-off-by: Christian Schuett <Gau...@ho...>
Signed-off-by: Thilo Graf <db...@no...>
diff --git a/tuxbox/neutrino/src/gui/infoviewer.cpp b/tuxbox/neutrino/src/gui/infoviewer.cpp
index 5a75a0f..f76a6fb 100644
--- a/tuxbox/neutrino/src/gui/infoviewer.cpp
+++ b/tuxbox/neutrino/src/gui/infoviewer.cpp
@@ -1836,13 +1836,16 @@ void CInfoViewer::showInfoFile()
return;
cnt = read(fd, infotext, 79);
- if (cnt < 0) {
+ if (cnt < 1) {
fprintf(stderr, "CInfoViewer::showInfoFile: could not read from infobar.txt: %m");
close(fd);
return;
}
close(fd);
- infotext[cnt] = '\0';
+ if (infotext[cnt-1] == '\n')
+ infotext[cnt-1] = '\0';
+ else
+ infotext[cnt] = '\0';
xStart = BoxStartX + ChanWidth + 40; // right of record icon
xEnd = BoxEndX - 125; // left of progressbar
commit decf127fbd8238669a220f8b8fb8eb0c347f72d0
Author: Christian Schuett <Gau...@ho...>
Date: Thu Apr 18 21:07:32 2013 +0200
Neutrino EPG Viewer: properly encode extended information
Signed-off-by: Christian Schuett <Gau...@ho...>
Signed-off-by: Thilo Graf <db...@no...>
diff --git a/tuxbox/neutrino/src/gui/epgview.cpp b/tuxbox/neutrino/src/gui/epgview.cpp
index eaeb54b..1d9f964 100644
--- a/tuxbox/neutrino/src/gui/epgview.cpp
+++ b/tuxbox/neutrino/src/gui/epgview.cpp
@@ -552,7 +552,9 @@ int CEpgData::show(const t_channel_id channel_id, unsigned long long a_id, time_
std::vector<std::string>::iterator description;
std::vector<std::string>::iterator item;
for (description = epgData.itemDescriptions.begin(), item = epgData.items.begin(); description != epgData.itemDescriptions.end(); ++description, ++item) {
- sprintf(line, "%s: %s", (*(description)).c_str(), (*(item)).c_str());
+ sprintf(line, "%s: %s",
+ (isUTF8(*description) ? (*description) : Latin1_to_UTF8(*description)).c_str(),
+ Latin1_to_UTF8(*item).c_str());
processTextToArray(line);
}
}
commit 8a9877685eac6dfcb369666ee618a91566c32a87
Author: Christian Schuett <Gau...@ho...>
Date: Thu Apr 18 20:07:01 2013 +0200
Neutrino: fix getting width of UTF-8 strings in some classes
Signed-off-by: Christian Schuett <Gau...@ho...>
Signed-off-by: Thilo Graf <db...@no...>
diff --git a/tuxbox/neutrino/src/gui/channellist.cpp b/tuxbox/neutrino/src/gui/channellist.cpp
index addd988..27702cb 100644
--- a/tuxbox/neutrino/src/gui/channellist.cpp
+++ b/tuxbox/neutrino/src/gui/channellist.cpp
@@ -1737,7 +1737,7 @@ void CChannelList::processTextToArray(std::string text) // UTF-8
aktWord += *text_;
int aktWordWidth = g_Font[eventFont]->getRenderWidth(aktWord, true);
- if ((aktWordWidth+aktWidth)<(infozone_width - 20))
+ if ((aktWordWidth+aktWidth)<=(infozone_width - 20))
{//space ok, add
aktWidth += aktWordWidth;
aktLine += aktWord;
diff --git a/tuxbox/neutrino/src/gui/epgview.cpp b/tuxbox/neutrino/src/gui/epgview.cpp
index 7fd692c..eaeb54b 100644
--- a/tuxbox/neutrino/src/gui/epgview.cpp
+++ b/tuxbox/neutrino/src/gui/epgview.cpp
@@ -180,8 +180,8 @@ void CEpgData::processTextToArray(std::string text, int screening) // UTF-8
aktWord += *text_;
// check the wordwidth - add to this line if size ok
- int aktWordWidth = g_Font[SNeutrinoSettings::FONT_TYPE_EPG_INFO2]->getRenderWidth(aktWord);
- if((aktWordWidth+aktWidth)<(ox- 10- 15))
+ int aktWordWidth = g_Font[SNeutrinoSettings::FONT_TYPE_EPG_INFO2]->getRenderWidth(aktWord, true);
+ if((aktWordWidth+aktWidth)<=(ox- 15- 15))
{//space ok, add
aktWidth += aktWordWidth;
aktLine += aktWord;
diff --git a/tuxbox/neutrino/src/gui/eventlist.cpp b/tuxbox/neutrino/src/gui/eventlist.cpp
index d4a733a..91edf50 100644
--- a/tuxbox/neutrino/src/gui/eventlist.cpp
+++ b/tuxbox/neutrino/src/gui/eventlist.cpp
@@ -850,7 +850,7 @@ void EventList::showFunctionBar (bool show)
}
frameBuffer->getIconSize(icon, &iconw, &iconh);
- cellwidth = std::min(ButtonWidth, iconw + 4 + space + g_Font[SNeutrinoSettings::FONT_TYPE_INFOBAR_SMALL]->getRenderWidth(btncaption));
+ cellwidth = std::min(ButtonWidth, iconw + 4 + space + g_Font[SNeutrinoSettings::FONT_TYPE_INFOBAR_SMALL]->getRenderWidth(btncaption, true));
// paint 1st button
::paintButtons(frameBuffer, g_Font[SNeutrinoSettings::FONT_TYPE_INFOBAR_SMALL], g_Locale, bx, by, ButtonWidth, 1, &EventListButtons[0]);
@@ -866,7 +866,7 @@ void EventList::showFunctionBar (bool show)
btncaption = g_Locale->getText(LOCALE_EVENTFINDER_SEARCH);
frameBuffer->getIconSize(icon, &iconw, &iconh);
- cellwidth = std::min(ButtonWidth, iconw + 4 + space + g_Font[SNeutrinoSettings::FONT_TYPE_INFOBAR_SMALL]->getRenderWidth(btncaption));
+ cellwidth = std::min(ButtonWidth, iconw + 4 + space + g_Font[SNeutrinoSettings::FONT_TYPE_INFOBAR_SMALL]->getRenderWidth(btncaption, true));
// paint second button
::paintButtons(frameBuffer, g_Font[SNeutrinoSettings::FONT_TYPE_INFOBAR_SMALL], g_Locale, bx, by, ButtonWidth, 1, &EventListButtons[1]);
@@ -891,7 +891,7 @@ void EventList::showFunctionBar (bool show)
}
frameBuffer->getIconSize(icon, &iconw, &iconh);
- cellwidth = std::min(ButtonWidth, iconw + 4 + space + g_Font[SNeutrinoSettings::FONT_TYPE_INFOBAR_SMALL]->getRenderWidth(btncaption));
+ cellwidth = std::min(ButtonWidth, iconw + 4 + space + g_Font[SNeutrinoSettings::FONT_TYPE_INFOBAR_SMALL]->getRenderWidth(btncaption, true));
// paint 3rd button
::paintButtons(frameBuffer, g_Font[SNeutrinoSettings::FONT_TYPE_INFOBAR_SMALL], g_Locale, bx, by, ButtonWidth, 1, &EventListButtons[2]);
@@ -907,7 +907,7 @@ void EventList::showFunctionBar (bool show)
btncaption = g_Locale->getText(LOCALE_EVENTLISTBAR_EVENTSORT);
frameBuffer->getIconSize(icon, &iconw, &iconh);
- cellwidth = std::min(ButtonWidth, iconw + 4 + space + g_Font[SNeutrinoSettings::FONT_TYPE_INFOBAR_SMALL]->getRenderWidth(btncaption));
+ cellwidth = std::min(ButtonWidth, iconw + 4 + space + g_Font[SNeutrinoSettings::FONT_TYPE_INFOBAR_SMALL]->getRenderWidth(btncaption, true));
// paint 4th button
::paintButtons(frameBuffer, g_Font[SNeutrinoSettings::FONT_TYPE_INFOBAR_SMALL], g_Locale, bx, by, ButtonWidth, 1, &EventListButtons[3]);
diff --git a/tuxbox/neutrino/src/gui/filebrowser.cpp b/tuxbox/neutrino/src/gui/filebrowser.cpp
index edbd680..def4cb8 100644
--- a/tuxbox/neutrino/src/gui/filebrowser.cpp
+++ b/tuxbox/neutrino/src/gui/filebrowser.cpp
@@ -1345,13 +1345,13 @@ void CFileBrowser::paintHead()
/* too long? Leave out the "Filebrowser" or "Shoutcast" prefix
* the allocated space is sufficient since it is surely shorter than before */
- if (fnt_title->getRenderWidth(l_name) > width - 11)
+ if (fnt_title->getRenderWidth(l_name, true) > width - 11)
l = sprintf(l_name, "%s", FILESYSTEM_ENCODING_TO_UTF8_STRING(name).c_str());
if (l_name[l - 1] == '/')
l_name[--l] = '\0';
/* still too long? the last part is probably more interesting than the first part... */
- while ((fnt_title->getRenderWidth(&l_name[i]) > width - 11)
+ while ((fnt_title->getRenderWidth(&l_name[i], true) > width - 11)
&& (i < l))
i++;
@@ -1425,7 +1425,7 @@ void CFileBrowser::paintFoot()
char cKey[2] = {m_SMSKeyInput.getOldKey(), 0};
cKey[0] = toupper(cKey[0]);
int len = fnt_small->getRenderWidth(cKey);
- fnt_small->RenderString(x + width - 10 - len, by2 + foheight, len, cKey, COL_MENUHEAD, 0, true);
+ fnt_small->RenderString(x + width - 10 - len, by2 + foheight, len, cKey, COL_MENUHEAD);
}
}
diff --git a/tuxbox/neutrino/src/gui/infoviewer.cpp b/tuxbox/neutrino/src/gui/infoviewer.cpp
index bc50465..5a75a0f 100644
--- a/tuxbox/neutrino/src/gui/infoviewer.cpp
+++ b/tuxbox/neutrino/src/gui/infoviewer.cpp
@@ -1268,7 +1268,7 @@ void CInfoViewer::showMotorMoving(int duration)
strcat(text, buffer);
strcat(text, " s)");
- ShowHintUTF(LOCALE_MESSAGEBOX_INFO, text, g_Font[SNeutrinoSettings::FONT_TYPE_MENU]->getRenderWidth(text) + 10, duration); // UTF-8
+ ShowHintUTF(LOCALE_MESSAGEBOX_INFO, text, g_Font[SNeutrinoSettings::FONT_TYPE_MENU]->getRenderWidth(text, true) + 10, duration); // UTF-8
}
#ifdef ENABLE_RADIOTEXT
diff --git a/tuxbox/neutrino/src/gui/upnpbrowser.cpp b/tuxbox/neutrino/src/gui/upnpbrowser.cpp
index 06d7ff2..0600a55 100644
--- a/tuxbox/neutrino/src/gui/upnpbrowser.cpp
+++ b/tuxbox/neutrino/src/gui/upnpbrowser.cpp
@@ -917,7 +917,7 @@ void CUpnpBrowserGui::paintDevicePos(unsigned int pos)
std::string name = m_devices[pos + m_indexdevice].friendlyname;
- int w = g_Font[SNeutrinoSettings::FONT_TYPE_FILEBROWSER_ITEM]->getRenderWidth(name) + 5;
+ int w = g_Font[SNeutrinoSettings::FONT_TYPE_FILEBROWSER_ITEM]->getRenderWidth(name, true) + 5; // UTF-8
g_Font[SNeutrinoSettings::FONT_TYPE_FILEBROWSER_ITEM]->RenderString(m_x + 10, ypos + m_fheight, m_width - 30 - w,
num, color, m_fheight, true); // UTF-8
g_Font[SNeutrinoSettings::FONT_TYPE_FILEBROWSER_ITEM]->RenderString(m_x + m_width - 15 - w, ypos + m_fheight,
diff --git a/tuxbox/neutrino/src/gui/widget/textbox.cpp b/tuxbox/neutrino/src/gui/widget/textbox.cpp
index 663f2c2..585e630 100644
--- a/tuxbox/neutrino/src/gui/widget/textbox.cpp
+++ b/tuxbox/neutrino/src/gui/widget/textbox.cpp
@@ -404,7 +404,7 @@ void CTextBox::refreshTextLineArray(void)
}
aktWord = m_cText.substr(pos_prev, pos - pos_prev + 1);
- aktWordWidth = m_pcFontText->getRenderWidth(aktWord);
+ aktWordWidth = m_pcFontText->getRenderWidth(aktWord, true);
pos_prev = pos + 1;
//if(aktWord.find(""") == )
if(1)
@@ -558,7 +558,7 @@ void CTextBox::refreshText(void)
if( m_nMode & CENTER )
{
- x_center = (m_cFrameTextRel.iWidth - m_pcFontText->getRenderWidth(m_cLineArray[i]))>>1;
+ x_center = (m_cFrameTextRel.iWidth - m_pcFontText->getRenderWidth(m_cLineArray[i]), true)>>1;
}
m_pcWindow->RenderString( m_pcFontText,
commit 4a990011083f3edaa4766cf2fe21a2e1b92b74aa
Author: Christian Schuett <Gau...@ho...>
Date: Thu Apr 18 19:13:29 2013 +0200
Neutrino file browser: fix typo in SMS key input
Signed-off-by: Christian Schuett <Gau...@ho...>
Signed-off-by: Thilo Graf <db...@no...>
diff --git a/tuxbox/neutrino/src/gui/filebrowser.cpp b/tuxbox/neutrino/src/gui/filebrowser.cpp
index a1c3571..edbd680 100644
--- a/tuxbox/neutrino/src/gui/filebrowser.cpp
+++ b/tuxbox/neutrino/src/gui/filebrowser.cpp
@@ -184,7 +184,7 @@ unsigned char SMSKeyInput::handleMsg(const neutrino_msg_t msg)
else if(m_oldKey == 'r' && timeoutNotReached)
key = 's';
else if(m_oldKey == 's' && timeoutNotReached)
- key = 's';
+ key = '7';
else
key = 'p';
}
commit 14d932a2a82a2790ea5593d9319ac6b5d034fb8d
Author: Christian Schuett <Gau...@ho...>
Date: Wed Apr 17 18:37:42 2013 +0200
Neutrino infoviewer: satfind values are not UTF-8 encoded
Signed-off-by: Christian Schuett <Gau...@ho...>
Signed-off-by: Thilo Graf <db...@no...>
diff --git a/tuxbox/neutrino/src/gui/infoviewer.cpp b/tuxbox/neutrino/src/gui/infoviewer.cpp
index 43330c1..bc50465 100644
--- a/tuxbox/neutrino/src/gui/infoviewer.cpp
+++ b/tuxbox/neutrino/src/gui/infoviewer.cpp
@@ -186,24 +186,24 @@ void CInfoViewer::showSatfind()
frameBuffer->paintBoxRel(ChanInfoX, BoxEndY, BoxEndX-ChanInfoX, 30, COL_INFOBAR_PLUS_0);
sprintf (percent, "sig %d%%", sig);
- g_Font[SNeutrinoSettings::FONT_TYPE_INFOBAR_SMALL]->RenderString(ChanInfoX+ 10, BoxEndY+ 25, BoxEndX- ChanInfoX- 10, percent, COL_INFOBAR_PLUS_0, 0, true); // UTF-8
+ g_Font[SNeutrinoSettings::FONT_TYPE_INFOBAR_SMALL]->RenderString(ChanInfoX+ 10, BoxEndY+ 25, BoxEndX- ChanInfoX- 10, percent, COL_INFOBAR_PLUS_0);
percent_width = g_Font[SNeutrinoSettings::FONT_TYPE_INFOBAR_SMALL]->getRenderWidth(percent);
pbsig.paintProgressBar(ChanInfoX+ 10+ percent_width+ 5, BoxEndY+ 7, 60, 15, sig, 100, 0, 0, COL_INFOBAR_PLUS_0, 0, "", COL_INFOBAR);
sprintf (percent, "snr %d%%", snr);
- g_Font[SNeutrinoSettings::FONT_TYPE_INFOBAR_SMALL]->RenderString(ChanInfoX+ 140, BoxEndY+ 25, BoxEndX- ChanInfoX- 140, percent, COL_INFOBAR_PLUS_0, 0, true); // UTF-8
+ g_Font[SNeutrinoSettings::FONT_TYPE_INFOBAR_SMALL]->RenderString(ChanInfoX+ 140, BoxEndY+ 25, BoxEndX- ChanInfoX- 140, percent, COL_INFOBAR_PLUS_0);
percent_width = g_Font[SNeutrinoSettings::FONT_TYPE_INFOBAR_SMALL]->getRenderWidth(percent);
pbsnr.paintProgressBar(ChanInfoX+ 140+ percent_width+ 5, BoxEndY+ 7, 60, 15, snr, 100, 0, 0, COL_INFOBAR_PLUS_0, 0, "", COL_INFOBAR);
sprintf (percent, "ber %d%%", ber);
- g_Font[SNeutrinoSettings::FONT_TYPE_INFOBAR_SMALL]->RenderString(ChanInfoX+ 270, BoxEndY+ 25, BoxEndX- ChanInfoX- 270, percent, COL_INFOBAR_PLUS_0, 0, true); // UTF-8
+ g_Font[SNeutrinoSettings::FONT_TYPE_INFOBAR_SMALL]->RenderString(ChanInfoX+ 270, BoxEndY+ 25, BoxEndX- ChanInfoX- 270, percent, COL_INFOBAR_PLUS_0);
- g_Font[SNeutrinoSettings::FONT_TYPE_INFOBAR_SMALL]->RenderString(ChanInfoX+ 350, BoxEndY+ 25, BoxEndX- ChanInfoX- 350, freq, COL_INFOBAR_PLUS_0, 0, true); // UTF-8
+ g_Font[SNeutrinoSettings::FONT_TYPE_INFOBAR_SMALL]->RenderString(ChanInfoX+ 350, BoxEndY+ 25, BoxEndX- ChanInfoX- 350, freq, COL_INFOBAR_PLUS_0);
if (satpos != 0 && (g_info.delivery_system == DVB_S))
{
sprintf (pos, "%d.%d%c", satpos < 0 ? -satpos / 10 : satpos / 10, satpos < 0 ? -satpos % 10 : satpos % 10, satpos < 0 ? 'W' : 'E');
- g_Font[SNeutrinoSettings::FONT_TYPE_INFOBAR_SMALL]->RenderString(BoxEndX- 60, BoxEndY+ 25, 60, pos, COL_INFOBAR_PLUS_0, 0, true); // UTF-8
+ g_Font[SNeutrinoSettings::FONT_TYPE_INFOBAR_SMALL]->RenderString(BoxEndX- 60, BoxEndY+ 25, 60, pos, COL_INFOBAR_PLUS_0);
}
}
}
commit 0bc7146dde19443cf74b25947fdad32af11ef60a
Author: Christian Schuett <Gau...@ho...>
Date: Tue Apr 16 21:12:09 2013 +0200
sectionsd: remove unnecessary SIevent creation
Signed-off-by: Christian Schuett <Gau...@ho...>
Signed-off-by: Thilo Graf <db...@no...>
diff --git a/tuxbox/neutrino/daemons/sectionsd/sectionsd.cpp b/tuxbox/neutrino/daemons/sectionsd/sectionsd.cpp
index 0e2cdf2..0fb246a 100644
--- a/tuxbox/neutrino/daemons/sectionsd/sectionsd.cpp
+++ b/tuxbox/neutrino/daemons/sectionsd/sectionsd.cpp
@@ -706,24 +706,15 @@ static void addEvent(const SIevent &evt, const time_t zeit, bool cn = false)
if (evt.get_channel_id() == messaging_current_servicekey && // but only if it is the current channel...
(messaging_got_CN != 0x03)) { // ...and if we don't have them already.
unlockMessaging();
- SIevent *eptr = new SIevent(evt);
- if (!eptr)
- {
- printf("[sectionsd::addEvent] new SIevent1 failed.\n");
- throw std::bad_alloc();
- }
-
- SIeventPtr e(eptr);
-
writeLockEvents();
- if (e->runningStatus() > 2) { // paused or currently running
- if (!myCurrentEvent || (myCurrentEvent && (*myCurrentEvent).uniqueKey() != e->uniqueKey())) {
+ if (evt.runningStatus() > 2) { // paused or currently running
+ if (!myCurrentEvent || (myCurrentEvent && (*myCurrentEvent).uniqueKey() != evt.uniqueKey())) {
if (myCurrentEvent)
delete myCurrentEvent;
myCurrentEvent = new SIevent(evt);
writeLockMessaging();
messaging_got_CN |= 0x01;
- if (myNextEvent && (*myNextEvent).uniqueKey() == e->uniqueKey()) {
+ if (myNextEvent && (*myNextEvent).uniqueKey() == evt.uniqueKey()) {
dprintf("addevent-cn: removing next-event\n");
/* next got "promoted" to current => trigger re-read */
delete myNextEvent;
@@ -732,17 +723,17 @@ static void addEvent(const SIevent &evt, const time_t zeit, bool cn = false)
}
unlockMessaging();
dprintf("addevent-cn: added running (%d) event 0x%04x '%s'\n",
- e->runningStatus(), e->eventID, e->getName().c_str());
+ evt.runningStatus(), evt.eventID, evt.getName().c_str());
} else {
writeLockMessaging();
messaging_got_CN |= 0x01;
unlockMessaging();
dprintf("addevent-cn: not add runn. (%d) event 0x%04x '%s'\n",
- e->runningStatus(), e->eventID, e->getName().c_str());
+ evt.runningStatus(), evt.eventID, evt.getName().c_str());
}
} else {
- if ((!myNextEvent || (myNextEvent && (*myNextEvent).uniqueKey() != e->uniqueKey() && (*myNextEvent).times.begin()->startzeit < e->times.begin()->startzeit)) &&
- (!myCurrentEvent || (myCurrentEvent && (*myCurrentEvent).uniqueKey() != e->uniqueKey()))) {
+ if ((!myNextEvent || (myNextEvent && (*myNextEvent).uniqueKey() != evt.uniqueKey() && (*myNextEvent).times.begin()->startzeit < evt.times.begin()->startzeit)) &&
+ (!myCurrentEvent || (myCurrentEvent && (*myCurrentEvent).uniqueKey() != evt.uniqueKey()))) {
if (myNextEvent)
delete myNextEvent;
myNextEvent = new SIevent(evt);
@@ -750,10 +741,10 @@ static void addEvent(const SIevent &evt, const time_t zeit, bool cn = false)
messaging_got_CN |= 0x02;
unlockMessaging();
dprintf("addevent-cn: added next (%d) event 0x%04x '%s'\n",
- e->runningStatus(), e->eventID, e->getName().c_str());
+ evt.runningStatus(), evt.eventID, evt.getName().c_str());
} else {
dprintf("addevent-cn: not added next(%d) event 0x%04x '%s'\n",
- e->runningStatus(), e->eventID, e->getName().c_str());
+ evt.runningStatus(), evt.eventID, evt.getName().c_str());
writeLockMessaging();
messaging_got_CN |= 0x02;
unlockMessaging();
commit 812420d89cfdff064a4ed95dd31672027a748c76
Author: Christian Schuett <Gau...@ho...>
Date: Tue Apr 16 20:47:02 2013 +0200
Neutrino infoviewer: move global vars into class
Signed-off-by: Christian Schuett <Gau...@ho...>
Signed-off-by: Thilo Graf <db...@no...>
diff --git a/tuxbox/neutrino/src/gui/infoviewer.cpp b/tuxbox/neutrino/src/gui/infoviewer.cpp
index 2f4b427..43330c1 100644
--- a/tuxbox/neutrino/src/gui/infoviewer.cpp
+++ b/tuxbox/neutrino/src/gui/infoviewer.cpp
@@ -91,13 +91,8 @@ extern "C" int tuxtxt_start(int tpid);
extern "C" int tuxtxt_stop();
#endif
-int time_left_width;
-int time_dot_width;
-int time_width;
-int time_height;
-char old_timestr[10];
/* hack: remember the last shown event IDs to reduce flickering */
-static event_id_t last_curr_id = 0, last_next_id = 0;
+event_id_t CInfoViewer::last_curr_id = 0, CInfoViewer::last_next_id = 0;
extern CZapitClient::SatelliteList satList;
diff --git a/tuxbox/neutrino/src/gui/infoviewer.h b/tuxbox/neutrino/src/gui/infoviewer.h
index 3fbcde5..18e1520 100644
--- a/tuxbox/neutrino/src/gui/infoviewer.h
+++ b/tuxbox/neutrino/src/gui/infoviewer.h
@@ -90,6 +90,14 @@ class CInfoViewer
CSectionsdClient::CurrentNextInfo oldinfo;
t_channel_id channel_id;
+ int time_left_width;
+ int time_dot_width;
+ int time_width;
+ int time_height;
+ char old_timestr[10];
+
+ static event_id_t last_curr_id, last_next_id;
+
char aspectRatio;
uint sec_timer_id;
commit 25661a8ec03b6e358f3faedca629077f3301bfa0
Author: Christian Schuett <Gau...@ho...>
Date: Tue Apr 16 20:12:09 2013 +0200
Neutrino timer list: calculate width of time column
with smaller horizontal font scale factor the space between time
column and other infos grows unnecessary
Signed-off-by: Christian Schuett <Gau...@ho...>
Signed-off-by: Thilo Graf <db...@no...>
diff --git a/tuxbox/neutrino/src/gui/timerlist.cpp b/tuxbox/neutrino/src/gui/timerlist.cpp
index 94c1c7b..94217a9 100644
--- a/tuxbox/neutrino/src/gui/timerlist.cpp
+++ b/tuxbox/neutrino/src/gui/timerlist.cpp
@@ -439,6 +439,7 @@ int CTimerList::show()
frameBuffer->getIconSize(NEUTRINO_ICON_TIMER, &iconw, &iconh);
theight = std::max(iconh, g_Font[SNeutrinoSettings::FONT_TYPE_MENU_TITLE]->getHeight());
fheight = g_Font[SNeutrinoSettings::FONT_TYPE_MENU]->getHeight();
+ time_width = g_Font[SNeutrinoSettings::FONT_TYPE_MENU]->getRenderWidth("00.00. 00:00 ");
neutrino_msg_t msg;
neutrino_msg_data_t data;
@@ -617,12 +618,12 @@ void CTimerList::paintItem(int pos)
char zStopTime[25] = {0};
struct tm *stopTime = localtime(&(timer.stopTime));
strftime(zStopTime,20,"%d.%m. %H:%M",stopTime);
- g_Font[SNeutrinoSettings::FONT_TYPE_MENU]->RenderString(x+10,ypos+fheight, 150, zAlarmTime, color, fheight, true); // UTF-8
+ g_Font[SNeutrinoSettings::FONT_TYPE_MENU]->RenderString(x+10, ypos+fheight, time_width, zAlarmTime, color, fheight, true); // UTF-8
if(timer.stopTime != 0)
{
- g_Font[SNeutrinoSettings::FONT_TYPE_MENU]->RenderString(x+10,ypos+2*fheight, 150, zStopTime, color, fheight, true); // UTF-8
+ g_Font[SNeutrinoSettings::FONT_TYPE_MENU]->RenderString(x+10, ypos+2*fheight, time_width, zStopTime, color, fheight, true); // UTF-8
}
- g_Font[SNeutrinoSettings::FONT_TYPE_MENU]->RenderString(x+160,ypos+fheight, (real_width-160)/2-5, convertTimerRepeat2String(timer.eventRepeat), color, fheight, true); // UTF-8
+ g_Font[SNeutrinoSettings::FONT_TYPE_MENU]->RenderString(x+10+time_width, ypos+fheight, (real_width-10-time_width)/2-5, convertTimerRepeat2String(timer.eventRepeat), color, fheight, true); // UTF-8
if (timer.eventRepeat != CTimerd::TIMERREPEAT_ONCE)
{
@@ -633,9 +634,9 @@ void CTimerList::paintItem(int pos)
sprintf(srepeatcount,"00");
else
sprintf(srepeatcount,"%ux",timer.repeatCount);
- g_Font[SNeutrinoSettings::FONT_TYPE_MENU]->RenderString(x+160+(real_width-300)/2,ypos+fheight, (real_width-160)/2-5, srepeatcount, color, fheight, true); // UTF-8
+ g_Font[SNeutrinoSettings::FONT_TYPE_MENU]->RenderString(x+10+time_width+(real_width-10-time_width-140)/2, ypos+fheight, (real_width-10-time_width)/2-5, srepeatcount, color, fheight, true); // UTF-8
}
- g_Font[SNeutrinoSettings::FONT_TYPE_MENU]->RenderString(x+160+(real_width-160)/2,ypos+fheight, (real_width-160)/2-5, convertTimerType2String(timer.eventType), color, fheight, true); // UTF-8
+ g_Font[SNeutrinoSettings::FONT_TYPE_MENU]->RenderString(x+10+time_width+(real_width-10-time_width)/2, ypos+fheight, (real_width-10-time_width)/2-5, convertTimerType2String(timer.eventType), color, fheight, true); // UTF-8
std::string zAddData("");
switch(timer.eventType)
{
@@ -706,7 +707,7 @@ void CTimerList::paintItem(int pos)
break;
default:{}
}
- g_Font[SNeutrinoSettings::FONT_TYPE_MENU]->RenderString(x+160,ypos+2*fheight, real_width-165, zAddData, color, fheight, true); // UTF-8
+ g_Font[SNeutrinoSettings::FONT_TYPE_MENU]->RenderString(x+10+time_width, ypos+2*fheight, real_width-10-time_width-5, zAddData, color, fheight, true); // UTF-8
// LCD Display
if(liststart+pos==selected)
{
diff --git a/tuxbox/neutrino/src/gui/timerlist.h b/tuxbox/neutrino/src/gui/timerlist.h
index 4c62aef..716d613 100644
--- a/tuxbox/neutrino/src/gui/timerlist.h
+++ b/tuxbox/neutrino/src/gui/timerlist.h
@@ -51,6 +51,7 @@ class CTimerList : public CMenuTarget
unsigned int listmaxshow;
int fheight; //fontheight timerlist-content (text)
int theight; //fontheight timerlist-title
+ int time_width;
bool visible;
CTimerdClient *Timer;
commit 6dfc4a10ddee54d1243cb3d6ef0b0068054e9043
Author: Stefan Seyfried <se...@tu...>
Date: Mon Apr 15 17:59:50 2013 +0200
auto-enumerate FONT_TYPE_COUNT instead of defining it
Signed-off-by: GetAway <get...@t-...>
Signed-off-by: Thilo Graf <db...@no...>
diff --git a/tuxbox/neutrino/src/global.h b/tuxbox/neutrino/src/global.h
index 496bd1e..3033576 100644
--- a/tuxbox/neutrino/src/global.h
+++ b/tuxbox/neutrino/src/global.h
@@ -68,7 +68,7 @@ NEUTRINO_CPP CTimerdClient *g_Timerd;
NEUTRINO_CPP FBFontRenderClass *g_fontRenderer;
-NEUTRINO_CPP Font *g_Font[FONT_TYPE_COUNT];
+NEUTRINO_CPP Font *g_Font[SNeutrinoSettings::FONT_TYPE_COUNT];
NEUTRINO_CPP CRCInput *g_RCInput;
diff --git a/tuxbox/neutrino/src/neutrino.cpp b/tuxbox/neutrino/src/neutrino.cpp
index 904126f..7c3f292 100644
--- a/tuxbox/neutrino/src/neutrino.cpp
+++ b/tuxbox/neutrino/src/neutrino.cpp
@@ -288,7 +288,7 @@ CNeutrinoApp* CNeutrinoApp::getInstance()
}
-const font_sizes_struct neutrino_font[FONT_TYPE_COUNT] =
+const font_sizes_struct neutrino_font[SNeutrinoSettings::FONT_TYPE_COUNT] =
{
{LOCALE_FONTSIZE_MENU , 20, FONT_STYLE_BOLD , 0},
{LOCALE_FONTSIZE_MENU_TITLE , 30, FONT_STYLE_BOLD , 0},
@@ -1766,7 +1766,7 @@ void CNeutrinoApp::SetupFonts()
else
style[2] = g_fontRenderer->AddFont(font.filename[2]);
- for (int i = 0; i < FONT_TYPE_COUNT; i++)
+ for (int i = 0; i < SNeutrinoSettings::FONT_TYPE_COUNT; i++)
{
g_Font[i] = g_fontRenderer->getFont(fontname, style[neutrino_font[i].style], configfile.getInt32(locale_real_names[neutrino_font[i].name], neutrino_font[i].defaultsize) + neutrino_font[i].size_offset * font.size_offset);
}
diff --git a/tuxbox/neutrino/src/system/settings.h b/tuxbox/neutrino/src/system/settings.h
index 9b961ff..b78ecac 100644
--- a/tuxbox/neutrino/src/system/settings.h
+++ b/tuxbox/neutrino/src/system/settings.h
@@ -369,31 +369,31 @@ struct SNeutrinoSettings
// Font sizes
-#define FONT_TYPE_COUNT 23
enum FONT_TYPES {
- FONT_TYPE_MENU = 0,
- FONT_TYPE_MENU_TITLE = 1,
- FONT_TYPE_MENU_INFO = 2,
- FONT_TYPE_EPG_TITLE = 3,
- FONT_TYPE_EPG_INFO1 = 4,
- FONT_TYPE_EPG_INFO2 = 5,
- FONT_TYPE_EPG_DATE = 6,
- FONT_TYPE_EVENTLIST_TITLE = 7,
- FONT_TYPE_EVENTLIST_ITEMLARGE = 8,
- FONT_TYPE_EVENTLIST_ITEMSMALL = 9,
- FONT_TYPE_EVENTLIST_DATETIME = 10,
- FONT_TYPE_GAMELIST_ITEMLARGE = 11,
- FONT_TYPE_GAMELIST_ITEMSMALL = 12,
- FONT_TYPE_CHANNELLIST = 13,
- FONT_TYPE_CHANNELLIST_DESCR = 14,
- FONT_TYPE_CHANNELLIST_NUMBER = 15,
- FONT_TYPE_CHANNELLIST_EVENT = 16,
- FONT_TYPE_CHANNEL_NUM_ZAP = 17,
- FONT_TYPE_INFOBAR_NUMBER = 18,
- FONT_TYPE_INFOBAR_CHANNAME = 19,
- FONT_TYPE_INFOBAR_INFO = 20,
- FONT_TYPE_INFOBAR_SMALL = 21,
- FONT_TYPE_FILEBROWSER_ITEM = 22
+ FONT_TYPE_MENU = 0,
+ FONT_TYPE_MENU_TITLE,
+ FONT_TYPE_MENU_INFO,
+ FONT_TYPE_EPG_TITLE,
+ FONT_TYPE_EPG_INFO1,
+ FONT_TYPE_EPG_INFO2,
+ FONT_TYPE_EPG_DATE,
+ FONT_TYPE_EVENTLIST_TITLE,
+ FONT_TYPE_EVENTLIST_ITEMLARGE,
+ FONT_TYPE_EVENTLIST_ITEMSMALL,
+ FONT_TYPE_EVENTLIST_DATETIME,
+ FONT_TYPE_GAMELIST_ITEMLARGE,
+ FONT_TYPE_GAMELIST_ITEMSMALL,
+ FONT_TYPE_CHANNELLIST,
+ FONT_TYPE_CHANNELLIST_DESCR,
+ FONT_TYPE_CHANNELLIST_NUMBER,
+ FONT_TYPE_CHANNELLIST_EVENT,
+ FONT_TYPE_CHANNEL_NUM_ZAP,
+ FONT_TYPE_INFOBAR_NUMBER,
+ FONT_TYPE_INFOBAR_CHANNAME,
+ FONT_TYPE_INFOBAR_INFO,
+ FONT_TYPE_INFOBAR_SMALL,
+ FONT_TYPE_FILEBROWSER_ITEM,
+ FONT_TYPE_COUNT
};
// lcdd
commit 8fce27f9f3bac0c2936dcb9cdf7758b812ccb741
Author: Christian Schuett <Gau...@ho...>
Date: Sun Apr 14 21:24:14 2013 +0200
Neutrino infoviewer: fix paint of satfind progressbars
with smaller horizontal font scale factor it looks like the progressbars
belong to the value on its right instead of its left
Signed-off-by: Christian Schuett <Gau...@ho...>
Signed-off-by: Thilo Graf <db...@no...>
diff --git a/tuxbox/neutrino/src/gui/infoviewer.cpp b/tuxbox/neutrino/src/gui/infoviewer.cpp
index 67d9eb4..2f4b427 100644
--- a/tuxbox/neutrino/src/gui/infoviewer.cpp
+++ b/tuxbox/neutrino/src/gui/infoviewer.cpp
@@ -163,6 +163,7 @@ void CInfoViewer::showSatfind()
char freq[20];
char percent[10];
char pos[6];
+ int percent_width;
int sig;
int snr;
int ber;
@@ -191,11 +192,13 @@ void CInfoViewer::showSatfind()
sprintf (percent, "sig %d%%", sig);
g_Font[SNeutrinoSettings::FONT_TYPE_INFOBAR_SMALL]->RenderString(ChanInfoX+ 10, BoxEndY+ 25, BoxEndX- ChanInfoX- 10, percent, COL_INFOBAR_PLUS_0, 0, true); // UTF-8
- pbsig.paintProgressBar(ChanInfoX+ 72, BoxEndY+ 7, 60, 15, sig, 100, 0, 0, COL_INFOBAR_PLUS_0, 0, "", COL_INFOBAR);
+ percent_width = g_Font[SNeutrinoSettings::FONT_TYPE_INFOBAR_SMALL]->getRenderWidth(percent);
+ pbsig.paintProgressBar(ChanInfoX+ 10+ percent_width+ 5, BoxEndY+ 7, 60, 15, sig, 100, 0, 0, COL_INFOBAR_PLUS_0, 0, "", COL_INFOBAR);
sprintf (percent, "snr %d%%", snr);
g_Font[SNeutrinoSettings::FONT_TYPE_INFOBAR_SMALL]->RenderString(ChanInfoX+ 140, BoxEndY+ 25, BoxEndX- ChanInfoX- 140, percent, COL_INFOBAR_PLUS_0, 0, true); // UTF-8
- pbsnr.paintProgressBar(ChanInfoX+202 , BoxEndY+ 7, 60, 15, snr, 100, 0, 0, COL_INFOBAR_PLUS_0, 0, "", COL_INFOBAR);
+ percent_width = g_Font[SNeutrinoSettings::FONT_TYPE_INFOBAR_SMALL]->getRenderWidth(percent);
+ pbsnr.paintProgressBar(ChanInfoX+ 140+ percent_width+ 5, BoxEndY+ 7, 60, 15, snr, 100, 0, 0, COL_INFOBAR_PLUS_0, 0, "", COL_INFOBAR);
sprintf (percent, "ber %d%%", ber);
g_Font[SNeutrinoSettings::FONT_TYPE_INFOBAR_SMALL]->RenderString(ChanInfoX+ 270, BoxEndY+ 25, BoxEndX- ChanInfoX- 270, percent, COL_INFOBAR_PLUS_0, 0, true); // UTF-8
commit aa9ed3a250e2199ae5926311bf96cf9d42edeadf
Author: GetAway <get...@t-...>
Date: Sat Apr 13 10:51:52 2013 +0200
yWeb: improve LiveTV udpstreaming
use deamonized 'udpstreamts'
Thanks arno-neutrinoTV for reporting.
Thread: http://www.dbox2-tuning.net/forum/viewtopic.php?f=2&t=46095&start=25&hilit=udpstreamts
fix switching streamts <-> udpstreamts
Signed-off-by: Thilo Graf <db...@no...>
diff --git a/tuxbox/neutrino/daemons/nhttpd/web/Y_Live.js b/tuxbox/neutrino/daemons/nhttpd/web/Y_Live.js
index 9127d39..8cd0489 100644
--- a/tuxbox/neutrino/daemons/nhttpd/web/Y_Live.js
+++ b/tuxbox/neutrino/daemons/nhttpd/web/Y_Live.js
@@ -4,17 +4,20 @@
*/
/*globals*/
var V2 = null;
-var IsUDP = false;
+var isUDP = false;
+var haveUDP = false;
var IsTimeshift = true; //TEST
var IsLocked = false;
var IsMute = false;
+var isDeinterlace = true;
var vlc_width = 384;
var vlc_height = 288;
var Window_delta_w = 0;
var Window_delta_h = 0;
var Mode = "tv";
var AudioChannel = 0;
-var isSubs=false;
+var isSubs = false;
+var cachetime = 0;
/*resize,init*/
function do_onload()
{
@@ -22,11 +25,16 @@ function do_onload()
Mode = "tv";
set_controls("disable");
if(isUDP && Mode == "tv")
- id('udp').checked = true;
+ change_button_img('udp',"udp_switch_off");
else if(Mode == "tv")
- id('udp').checked = false;
+ change_button_img('udp',"udp_switch_on");
window.setTimeout("do_init()",300);
}
+function do_unload()
+{
+ if(isUDP)
+ loadXMLDoc("/control/exec?api&udp_stream&stop", dummy);
+}
function do_onresize()
{
if((vlc_width+Window_delta_w != window.innerWidth) || (vlc_height+Window_delta_h != window.innerHeight)){
@@ -139,7 +147,7 @@ function set_controls(state)
obj_enable('transcode', play && opt);
}
if(Mode == "tv"){
- show_obj('have_udp',haveUDP);
+ show_obj('udp',haveUDP);
obj_enable('udp', go);
obj_enable('fullscreen', play);
show_obj('snapshot',(plugin != "moz3"));
@@ -156,12 +164,12 @@ function do_play()
options.push(":vout-filter=deinterlace");
options.push(":deinterlace-mode=bob");
}
- if(id('udp').checked && Mode == "tv"){
+ if(isUDP && Mode == "tv"){
options.push(":access-filter=timeshift");
}
- else
- if(cachetime > 0)
+ else if(cachetime > 0){
options.push(":http-caching="+cachetime);
+ }
if(AudioChannel != 0)
options.push(":audio-track="+AudioChannel);
}
@@ -170,7 +178,7 @@ function do_play()
function start_udp_server()
{
var pids = loadSyncURL("/control/yweb?video_stream_pids=0&no_commas=true");
- var args = ClientAddr+" 31330 0 "+pids;
+ var args = "-b /dev/null "+ClientAddr+" 31330 0 "+pids;
var _cmd = "udp_stream start "+args;
var __cmd = _cmd.replace(/ /g, "&");
loadXMLDoc("/control/exec?Y_Live&"+__cmd, dummy);
@@ -180,6 +188,8 @@ function do_stop()
V2.stop();
while(V2.is_playing())
;
+ if(isUDP)
+ loadXMLDoc("/control/exec?api&udp_stream&stop", dummy);
change_button_img('PlayOrPause',"play");
set_controls("stop");
}
@@ -197,15 +207,22 @@ function do_play_state(_state, _options)
_options.push(":input-repeat=1");
V2.options = _options;
var mrl = "";
- if(Mode == "tv" && id('udp').checked)
+ if(Mode == "tv" && isUDP)
mrl = "udp://@:31330";
- else
+ else {
+ if(Mode == "tv") {
+ loadXMLDoc("/control/exec?Y_Live&udp_stream&stop", dummy);
+ }
mrl = loadSyncURL("/control/build_live_url");
+ }
V2.set_actual_mrl(mrl);
V2.play();
V2.next();
set_controls("play");
- if(Mode == "tv" && id('udp').checked)
+ if(isDeinterlace && V2.plugin=="moz2"){
+ V2.vlc.video.deinterlace.enable("bob");
+ }
+ if(Mode == "tv" && isUDP)
window.setTimeout("start_udp_server()",1000);
}
function do_play_or_pause()
@@ -218,7 +235,7 @@ function do_play_or_pause()
change_button_img('PlayOrPause',"pause");
V2.play();
set_controls("play");
- if(id('udp').checked)
+ if(isUDP)
window.setTimeout("start_udp_server()",1000);
}
}
@@ -298,6 +315,7 @@ function build_subchannels()
}
function change_channel_play()
{
+ insert_vlc_control();
do_play();
if (V2.have_options() && Mode == "tv") {
build_audio_pid_list();
@@ -329,6 +347,13 @@ function do_mute_toggle()
IsMute = !IsMute;
V2.toggle_mute();
}
+function do_udp_toggle()
+{
+ change_button_img('udp', (isUDP)?"udp_switch_on":"udp_switch_off");
+ isUDP = !isUDP;
+ do_stop();
+ do_play();
+}
function view_streaminfo()
{
window.open("/fb/info.dbox2","streaminfo","width=400,height=400");
diff --git a/tuxbox/neutrino/daemons/nhttpd/web/Y_Live.yhtm b/tuxbox/neutrino/daemons/nhttpd/web/Y_Live.yhtm
index 80e3199..df26a17 100644
--- a/tuxbox/neutrino/daemons/nhttpd/web/Y_Live.yhtm
+++ b/tuxbox/neutrino/daemons/nhttpd/web/Y_Live.yhtm
@@ -50,7 +50,7 @@ function view_transcode_mode()
//]]>
</script>
</head>
-<body>
+<body onunload="do_unload()">
{=var-set:wait_text=Streaming-Informationen<br/>werden ermittelt.=}{=include-block:Y_Blocks.txt;snip_wait=}
<div id="live_panel">
<form name="x" action="" method="get">
@@ -118,7 +118,8 @@ function view_transcode_mode()
<img src="/images/livelock.png"></button>
{=if-equal:{=mode=}~tv~
- <span id="have_udp" style="visibility:hidden"><input type="checkbox" id="udp" title="UDP Streaming"/>UDP</span>
+ <button class="y_live_button" type="button" value="set" title="UDP Streaming" id="udp" onclick="do_udp_toggle()" style="visibility:hidden">
+ <img src="/images/udp_switch_on.png"/></button>
<button class="y_live_button" type="button" value="set" title="LiveView settings" id="settings" onclick="view_settings_mode()">
<img src="/images/properties.png"></button>
<button class="y_live_button" type="button" value="S" title="create snapshot picture" id="snapshot" onclick="V2.snapshot()" style="visibility:hidden">
diff --git a/tuxbox/neutrino/daemons/nhttpd/web/Y_Version.txt b/tuxbox/neutrino/daemons/nhttpd/web/Y_Version.txt
index 9707a05..e4675dd 100644
--- a/tuxbox/neutrino/daemons/nhttpd/web/Y_Version.txt
+++ b/tuxbox/neutrino/daemons/nhttpd/web/Y_Version.txt
@@ -1,5 +1,5 @@
-version=2.7.0.23
-date=04.09.2013
+version=2.7.0.24
+date=12.04.2013
type=Release
info=
diff --git a/tuxbox/neutrino/daemons/nhttpd/web/scripts/Y_Live.sh b/tuxbox/neutrino/daemons/nhttpd/web/scripts/Y_Live.sh
index 877dae8..c74e346 100755
--- a/tuxbox/neutrino/daemons/nhttpd/web/scripts/Y_Live.sh
+++ b/tuxbox/neutrino/daemons/nhttpd/web/scripts/Y_Live.sh
@@ -95,15 +95,16 @@ case "$1" in
killall udpstreamts
if [ -e /var/bin/udpstreamts ]
then
- /var/bin/udpstreamts $* &
+ /var/bin/udpstreamts $*
else
- udpstreamts $* &
+ udpstreamts $*
fi
pidof udpstreamts >/tmp/udpstreamts.pid
fi
if [ "$2" = "stop" ]
then
killall udpstreamts
+ rm /tmp/udpstreamts.pid
fi
;;
commit 9d41be2229f2ddd54fdf91e70bdd1e0945d624b5
Author: GetAway <get...@t-...>
Date: Fri Apr 12 21:46:33 2013 +0200
yWeb LiveTV: add two new icons-> udp on/off
Signed-off-by: Thilo Graf <db...@no...>
diff --git a/tuxbox/neutrino/daemons/nhttpd/web/images/udp_switch_off.png b/tuxbox/neutrino/daemons/nhttpd/web/images/udp_switch_off.png
new file mode 100644
index 0000000..66217f5
Binary files /dev/null and b/tuxbox/neutrino/daemons/nhttpd/web/images/udp_switch_off.png differ
diff --git a/tuxbox/neutrino/daemons/nhttpd/web/images/udp_switch_on.png b/tuxbox/neutrino/daemons/nhttpd/web/images/udp_switch_on.png
new file mode 100644
index 0000000..a2c5124
Binary files /dev/null and b/tuxbox/neutrino/daemons/nhttpd/web/images/udp_switch_on.png differ
commit c71ced00b4b79a26748db8abfff073c0e2c4972b
Author: GetAway <get...@t-...>
Date: Fri Apr 12 21:01:08 2013 +0200
fontrenderer: init colors and make it static
Signed-off-by: Thilo Graf <db...@no...>
diff --git a/tuxbox/neutrino/src/driver/fontrenderer.cpp b/tuxbox/neutrino/src/driver/fontrenderer.cpp
index aefeb31..459f1c1 100644
--- a/tuxbox/neutrino/src/driver/fontrenderer.cpp
+++ b/tuxbox/neutrino/src/driver/fontrenderer.cpp
@@ -392,7 +392,7 @@ void Font::RenderString(int x, int y, const int width, const char *text, const u
#ifdef FB_USE_PALETTE
#define PRE_CALC_TRANSLATION_TABLE
#ifdef PRE_CALC_TRANSLATION_TABLE
- fb_pixel_t colors[256];
+ static fb_pixel_t colors[256] = {0};
int coff = 7 - ((color + 2) & 7);
for (int i = (256 - 32); i >= 0; i -= 32)
@@ -429,7 +429,7 @@ void Font::RenderString(int x, int y, const int width, const char *text, const u
int deltab = (((int)bgcolor >> bo) & ((1 << bl) - 1)) - fgb;
int deltat = (((int)bgcolor >> to) & ((1 << tl) - 1)) - fgt;
- fb_pixel_t colors[256];
+ static fb_pixel_t colors[256] = {0};
for (int i = 0; i < 256; i++)
{
commit 0d8e87d0dd0d18733e718a672354c67f0ab23c52
Author: Christian Schuett <Gau...@ho...>
Date: Fri Apr 12 19:41:05 2013 +0200
Neutrino channel list: fix height calculation if font sizes differ
Signed-off-by: Christian Schuett <Gau...@ho...>
Signed-off-by: Thilo Graf <db...@no...>
diff --git a/tuxbox/neutrino/src/gui/channellist.cpp b/tuxbox/neutrino/src/gui/channellist.cpp
index 517f883..addd988 100644
--- a/tuxbox/neutrino/src/gui/channellist.cpp
+++ b/tuxbox/neutrino/src/gui/channellist.cpp
@@ -155,11 +155,12 @@ void CChannelList::calcSize()
frameBuffer->getIconSize(NEUTRINO_ICON_BUTTON_HELP, &icol_w, &icol_h);
theight = std::max(theight, icol_h);
- fheight = g_Font[SNeutrinoSettings::FONT_TYPE_CHANNELLIST]->getHeight();
- if (fheight == 0)
- fheight = 1; /* avoid crash on invalid font */
+ fheight = std::max(g_Font[SNeutrinoSettings::FONT_TYPE_CHANNELLIST]->getHeight(),
+ std::max(g_Font[SNeutrinoSettings::FONT_TYPE_CHANNELLIST_DESCR]->getHeight(),
+ std::max(g_Font[SNeutrinoSettings::FONT_TYPE_CHANNELLIST_NUMBER]->getHeight(),
+ 1))); /* min 1 to avoid crash on invalid font */
- info_height = 2*fheight + g_Font[SNeutrinoSettings::FONT_TYPE_CHANNELLIST_DESCR]->getHeight() + 10;
+ info_height = 3*fheight + 10;
height = h_max(576, info_height);
listmaxshow = (height - theight - footerHeight -0)/fheight;
commit 57fee374147866531f505b9e37980dd10cf6e9dd
Author: Christian Schuett <Gau...@ho...>
Date: Fri Apr 12 19:35:26 2013 +0200
Neutrino OSD setup: fix count of entries in font sizes groups
Signed-off-by: Christian Schuett <Gau...@ho...>
Signed-off-by: Thilo Graf <db...@no...>
diff --git a/tuxbox/neutrino/src/gui/osd_setup.cpp b/tuxbox/neutrino/src/gui/osd_setup.cpp
index 4890d30..70b1bf8 100644
--- a/tuxbox/neutrino/src/gui/osd_setup.cpp
+++ b/tuxbox/neutrino/src/gui/osd_setup.cpp
@@ -102,8 +102,8 @@ const SNeutrinoSettings::FONT_TYPES other_font_sizes[4] =
font_sizes_groups font_sizes_groups[6] =
{
- {LOCALE_FONTMENU_CHANNELLIST, 4, channellist_font_sizes, "fontsize.dcha"},
- {LOCALE_FONTMENU_EVENTLIST , 5, eventlist_font_sizes , "fontsize.deve"},
+ {LOCALE_FONTMENU_CHANNELLIST, 5, channellist_font_sizes, "fontsize.dcha"},
+ {LOCALE_FONTMENU_EVENTLIST , 4, eventlist_font_sizes , "fontsize.deve"},
{LOCALE_FONTMENU_EPG , 4, epg_font_sizes , "fontsize.depg"},
{LOCALE_FONTMENU_INFOBAR , 4, infobar_font_sizes , "fontsize.dinf"},
{LOCALE_FONTMENU_GAMELIST , 2, gamelist_font_sizes , "fontsize.dgam"},
commit 0c6cca5f974ff1f8e1841ed9e69832a0094fa230
Author: Christian Schuett <Gau...@ho...>
Date: Wed Apr 10 19:45:48 2013 +0200
Neutrino EPG Viewer: add missing hide() if no epg info found
this scales big fonts back to normal
Signed-off-by: Christian Schuett <Gau...@ho...>
Signed-off-by: Thilo Graf <db...@no...>
diff --git a/tuxbox/neutrino/src/gui/epgview.cpp b/tuxbox/neutrino/src/gui/epgview.cpp
index e1f12a3..7fd692c 100644
--- a/tuxbox/neutrino/src/gui/epgview.cpp
+++ b/tuxbox/neutrino/src/gui/epgview.cpp
@@ -476,6 +476,7 @@ int CEpgData::show(const t_channel_id channel_id, unsigned long long a_id, time_
if (epgData.title.empty()) /* no epg info found */
{
ShowLocalizedHint(LOCALE_MESSAGEBOX_INFO, LOCALE_EPGVIEWER_NOTFOUND);
+ hide();
return res;
}
commit 35932730de5d5ef0a146422343614607a948e6af
Author: Christian Schuett <Gau...@ho...>
Date: Wed Apr 10 19:12:42 2013 +0200
Neutrino EPG Plus: remove duplicate code
Signed-off-by: Christian Schuett <Gau...@ho...>
Signed-off-by: Thilo Graf <db...@no...>
diff --git a/tuxbox/neutrino/src/gui/epgplus.cpp b/tuxbox/neutrino/src/gui/epgplus.cpp
index 4e422b5..68fad22 100644
--- a/tuxbox/neutrino/src/gui/epgplus.cpp
+++ b/tuxbox/neutrino/src/gui/epgplus.cpp
@@ -604,15 +604,6 @@ void EpgPlus::Footer::paintButtons(button_label* _buttonLabels, int numberOfButt
EpgPlus::EpgPlus()
{
frameBuffer = CFrameBuffer::getInstance();
-
- currentViewMode = ViewMode_Scroll;
- currentSwapMode = SwapMode_ByPage;
-
- // this->usableScreenWidth = 580;
- // this->usableScreenHeight = 480;
- usableScreenWidth = w_max(720, 4);
- usableScreenHeight = h_max(576, 4);
-
selectedChannelEntry = NULL;
init();
}
commit 2f44ca87959f0753f39be138bb83c04d454d8e80
Author: Christian Schuett <Gau...@ho...>
Date: Tue Apr 9 20:54:11 2013 +0200
Neutrino: change locale string recordingmenu.choose_direct_rec_dir
the setting 'recording_choose_direct_rec_dir' is not only used for
immediate recordings but also for adding recording timers in event
list, EPG Viewer and EPG Plus
Signed-off-by: Christian Schuett <Gau...@ho...>
Signed-off-by: Thilo Graf <db...@no...>
diff --git a/tuxbox/neutrino/daemons/nhttpd/web/Y_neutrino_Blocks.txt b/tuxbox/neutrino/daemons/nhttpd/web/Y_neutrino_Blocks.txt
index 516e7fd..cdc0b74 100644
--- a/tuxbox/neutrino/daemons/nhttpd/web/Y_neutrino_Blocks.txt
+++ b/tuxbox/neutrino/daemons/nhttpd/web/Y_neutrino_Blocks.txt
@@ -1398,8 +1398,8 @@ start-block~neutrino_form-data_direct_recording
<input type="radio" name="recordingmenu_gen_psi" value="true"/>AN
</td>
</tr>
- <tr title="Choose directory on record: off/on">
- <td>Bei Sofortaufn. Verzeichnisauswahl</td>
+ <tr title="Choose directory: off/on">
+ <td>Verzeichnisauswahl anzeigen</td>
<td>
<input type="radio" name="recording_choose_direct_rec_dir" value="0"/>AUS
<input type="radio" name="recording_choose_direct_rec_dir" value="1"/>AN
diff --git a/tuxbox/neutrino/data/locale/deutsch.locale b/tuxbox/neutrino/data/locale/deutsch.locale
index ad099db..217ee0e 100644
--- a/tuxbox/neutrino/data/locale/deutsch.locale
+++ b/tuxbox/neutrino/data/locale/deutsch.locale
@@ -1175,7 +1175,7 @@ recordingmenu.apids Voreinstellung für Tonspuren
recordingmenu.apids_ac3 AC3 Tonspuren aufnehmen
recordingmenu.apids_alt Alternative Tonspuren aufn.
recordingmenu.apids_std Standard Tonspur aufnehmen
-recordingmenu.choose_direct_rec_dir Bei Sofortaufn. Verzeichnisauswahl
+recordingmenu.choose_direct_rec_dir Verzeichnisauswahl anzeigen
recordingmenu.defdir Aufnahmeverzeichnis
recordingmenu.dir Verzeichnis
recordingmenu.dir_permissions Verzeichnisrechte
diff --git a/tuxbox/neutrino/data/locale/english.locale b/tuxbox/neutrino/data/locale/english.locale
index cdbb5d5..f6fa95e 100644
--- a/tuxbox/neutrino/data/locale/english.locale
+++ b/tuxbox/neutrino/data/locale/english.locale
@@ -1175,7 +1175,7 @@ recordingmenu.apids Default Audio Streams
recordingmenu.apids_ac3 Record AC3 Streams
recordingmenu.apids_alt Record Alternative Streams
recordingmenu.apids_std Record Standard Stream
-recordingmenu.choose_direct_rec_dir Choose Directory on Recording
+recordingmenu.choose_direct_rec_dir Choose Directory
recordingmenu.defdir Recording Directory
recordingmenu.dir Directory
recordingmenu.dir_permissions Directory Permissions
commit 138640a39419b848f95aa3a1c404dcdc7df574ee
Author: Christian Schuett <Gau...@ho...>
Date: Tue Apr 9 20:32:00 2013 +0200
Neutrino event list: fix paint after choosing recording directory
Signed-off-by: Christian Schuett <Gau...@ho...>
Signed-off-by: Thilo Graf <db...@no...>
diff --git a/tuxbox/neutrino/src/gui/eventlist.cpp b/tuxbox/neutrino/src/gui/eventlist.cpp
index dcd87c0..d4a733a 100644
--- a/tuxbox/neutrino/src/gui/eventlist.cpp
+++ b/tuxbox/neutrino/src/gui/eventlist.cpp
@@ -398,7 +398,9 @@ int EventList::exec(const t_channel_id channel_id, const std::string& channelnam
CRecDirChooser recDirs(LOCALE_TIMERLIST_RECORDING_DIR, NEUTRINO_ICON_TIMER, NULL, &recDir);
hide();
recDirs.exec(NULL,"");
+ paintHead();
paint();
+ showFunctionBar(true);
recDir = recDirs.get_selected_dir();
}
commit 11be07035e47084cf84c49c08356568fca112a37
Author: Jacek Jendrzej <cra...@go...>
Date: Tue Apr 9 18:09:05 2013 +0200
Y-Web/Y_VLC.js: fix vlc version parse
Signed-off-by: GetAway <get...@t-...>
Signed-off-by: Thilo Graf <db...@no...>
diff --git a/tuxbox/neutrino/daemons/nhttpd/web/Y_VLC.js b/tuxbox/neutrino/daemons/nhttpd/web/Y_VLC.js
index d0f7bfd..88bfd11 100644
--- a/tuxbox/neutrino/daemons/nhttpd/web/Y_VLC.js
+++ b/tuxbox/neutrino/daemons/nhttpd/web/Y_VLC.js
@@ -1,6 +1,6 @@
/* VLC abstraction by yj...@on...
- $Date: 2008/11/13 16:45:38 $
- $Revision: 1.4 $
+ $Date: $
+ $Revision: $
*/
/*ie1=ActiveC, moz1=Mozilla<0.8.5.1, moz2>= 0.8.5.1*/
var CyVLC = function(_id, masterid, width, height) {
@@ -51,15 +51,26 @@ CyVLC.prototype = {
return words[0];
}
else
- if(navigator.plugins) {
- var plug = navigator.plugins['VLC multimedia plugin'];
- if(typeof plug == 'undefined')
- var plug = navigator.plugins['VLC Multimedia Plugin'];
- if(typeof plug == 'undefined')
- var plug = navigator.plugins['VLC Multimedia Plug-in'];
- var ex = /^.*[vV]ersion [\"]*([^ \"]*)[\"]*.*$/;
- var ve = ex.exec(plug.description);
- if(ve[1])
+ if (navigator.plugins && (navigator.plugins.length > 0)) {
+ var name = "VLC";
+ for(var i=0;i<navigator.plugins.length;++i)
+ if (navigator.plugins[i].name.indexOf(name) != -1)
+ var plug = navigator.plugins[navigator.plugins[i].name];
+
+ if(typeof plug != 'undefined') {
+ var Suche = /(PLUGIN)/gi;
+ var Ergebnis = Suche.test(plug.description);
+ if (Ergebnis == true){
+ var ex = /^.*[pP]lugin [\"]*([^ \"]*)[\"]*.*$/;
+ var ve = ex.exec(plug.description);
+ }else{
+ var ex = /^.*[vV]ersion [\"]*([^ \"]*)[\"]*.*$/;
+ var ve = ex.exec(plug.description);
+ }
+ }
+ var Suche = /([0-9])/g;
+ var Ergebnis = Suche.test(ve);
+ if (Ergebnis == true)
return ve[1];
else
return "0.0.0";
diff --git a/tuxbox/neutrino/daemons/nhttpd/web/Y_Version.txt b/tuxbox/neutrino/daemons/nhttpd/web/Y_Version.txt
index 1650fee..9707a05 100644
--- a/tuxbox/neutrino/daemons/nhttpd/web/Y_Version.txt
+++ b/tuxbox/neutrino/daemons/nhttpd/web/Y_Version.txt
@@ -1,5 +1,5 @@
-version=2.7.0.22
-date=04.04.2013
+version=2.7.0.23
+date=04.09.2013
type=Release
info=
commit ffbe3fcb336710de2109934507a2c68378ac4c40
Author: Christian Schuett <Gau...@ho...>
Date: Mon Apr 8 19:59:23 2013 +0200
Neutrino EPG Viewer: reset scroll position after rec dir selection
Signed-off-by: Christian Schuett <Gau...@ho...>
Signed-off-by: Thilo Graf <db...@no...>
diff --git a/tuxbox/neutrino/src/gui/epgview.cpp b/tuxbox/neutrino/src/gui/epgview.cpp
index dc18466..e1f12a3 100644
--- a/tuxbox/neutrino/src/gui/epgview.cpp
+++ b/tuxbox/neutrino/src/gui/epgview.cpp
@@ -739,6 +739,7 @@ int CEpgData::show(const t_channel_id channel_id, unsigned long long a_id, time_
}
bigFonts = g_settings.bigFonts;
show(channel_id, id, &startzeit, false, call_fromfollowlist);
+ showPos = 0;
recDir = recDirs.get_selected_dir();
}
commit 9b99f1d5df316d295f3c3904eca50697bac6d92d
Author: Stefan Seyfried <se...@tu...>
Date: Mon Apr 8 18:42:31 2013 +0200
audioplayer: don't free curl_handle too early
Signed-off-by: Thilo Graf <db...@no...>
diff --git a/tuxbox/neutrino/src/gui/audioplayer.cpp b/tuxbox/neutrino/src/gui/audioplayer.cpp
index 06c3227..8b6ffe4 100644
--- a/tuxbox/neutrino/src/gui/audioplayer.cpp
+++ b/tuxbox/neutrino/src/gui/audioplayer.cpp
@@ -1006,9 +1006,6 @@ void CAudioPlayerGui::processPlaylistUrl(const char *url, const char *name, cons
/* get it! */
curl_easy_perform(curl_handle);
- /* cleanup curl stuff */
- curl_easy_cleanup(curl_handle);
-
/*
* Now, our chunk.memory points to a memory block that is chunk.size
* bytes big and contains the remote file.
@@ -1049,6 +1046,9 @@ void CAudioPlayerGui::processPlaylistUrl(const char *url, const char *name, cons
}
}
+ /* cleanup curl stuff */
+ curl_easy_cleanup(curl_handle);
+
if(chunk.memory)
free(chunk.memory);
commit fc737402d3d23b5ba0bb7dd9f4442860fa33536e
Author: Christian Schuett <Gau...@ho...>
Date: Sun Apr 7 16:12:48 2013 +0200
Neutrino: rework big font code in ShowMsg2UTF()
this removes an unnecessary call of Font::setSize() if normal
font size is used
Signed-off-by: Christian Schuett <Gau...@ho...>
Signed-off-by: Thilo Graf <db...@no...>
diff --git a/tuxbox/neutrino/src/gui/widget/msgbox.cpp b/tuxbox/neutrino/src/gui/widget/msgbox.cpp
index 910f620..8b76a5d 100644
--- a/tuxbox/neutrino/src/gui/widget/msgbox.cpp
+++ b/tuxbox/neutrino/src/gui/widget/msgbox.cpp
@@ -868,8 +868,6 @@ int ShowMsg2UTF( const char * const Title,
bigfonts = !bigfonts;
if (bigfonts)
g_Font[SNeutrinoSettings::FONT_TYPE_EPG_INFO2]->setSize(oldfontsize * 15 / 10);
- else
- g_Font[SNeutrinoSettings::FONT_TYPE_EPG_INFO2]->setSize(oldfontsize);
CMsgBox* msgBox = new CMsgBox( Text,
g_Font[SNeutrinoSettings::FONT_TYPE_EPG_INFO2],
@@ -885,10 +883,11 @@ int ShowMsg2UTF( const char * const Title,
res = msgBox->result();
delete msgBox;
+
+ if (bigfonts)
+ g_Font[SNeutrinoSettings::FONT_TYPE_EPG_INFO2]->setSize(oldfontsize);
} while (ret == -1);
- if (bigfonts)
- g_Font[SNeutrinoSettings::FONT_TYPE_EPG_INFO2]->setSize(oldfontsize);
g_settings.bigFonts = bigfonts;
return res;
commit 375f222b69f8e6a689a37b5913acd65d724f2074
Author: GetAway <get...@t-...>
Date: Sun Apr 7 15:41:43 2013 +0200
fix gcc4 warnings break-strict-aliasing rules
Signed-off-by: Christian Schuett <Gau...@ho...>
Signed-off-by: Thilo Graf <db...@no...>
diff --git a/tuxbox/neutrino/src/gui/audioplayer.cpp b/tuxbox/neutrino/src/gui/audioplayer.cpp
index bf51ed9..06c3227 100644
--- a/tuxbox/neutrino/src/gui/audioplayer.cpp
+++ b/tuxbox/neutrino/src/gui/audioplayer.cpp
@@ -629,7 +629,7 @@ int CAudioPlayerGui::show()
{
// keylevel 2 can only be reached if the currently played file
// is no stream, so we do not have to test for this case
- long seconds=0;
+ int seconds=0;
CIntInput secondsInput(LOCALE_AUDIOPLAYER_JUMP_DIALOG_TITLE,
seconds,
5,
@@ -727,7 +727,7 @@ int CAudioPlayerGui::show()
{
// keylevel 2 can only be reached if the currently played file
// is no stream, so we do not have to test for this case
- long seconds=0;
+ int seconds=0;
CIntInput secondsInput(LOCALE_AUDIOPLAYER_JUMP_DIALOG_TITLE,
seconds,
5,
diff --git a/tuxbox/neutrino/src/gui/moviebrowser.cpp b/tuxbox/neutrino/src/gui/moviebrowser.cpp
index e00ea28..93b6bba 100644
--- a/tuxbox/neutrino/src/gui/moviebrowser.cpp
+++ b/tuxbox/neutrino/src/gui/moviebrowser.cpp
@@ -2967,9 +2967,9 @@ int CMovieBrowser::showMovieInfoMenu(MI_MOVIE_INFO* movie_info)
CMenuForwarderNonLocalized* pBookItemMenuForwarder[MAX_NUMBER_OF_BOOKMARK_ITEMS];
CBookItemMenuForwarderNotifier* pBookItemMenuForwarderNotifier[MAX_NUMBER_OF_BOOKMARK_ITEMS];
- CIntInput bookStartIntInput (LOCALE_MOVIEBROWSER_EDIT_BOOK, (long&)movie_info->bookmarks.start, 5, LOCALE_MOVIEBROWSER_EDIT_BOOK_POS_INFO1, LOCALE_MOVIEBROWSER_EDIT_BOOK_POS_INFO2);
- CIntInput bookLastIntInput (LOCALE_MOVIEBROWSER_EDIT_BOOK, (long&)movie_info->bookmarks.lastPlayStop, 5, LOCALE_MOVIEBROWSER_EDIT_BOOK_POS_INFO1, LOCALE_MOVIEBROWSER_EDIT_BOOK_POS_INFO2);
- CIntInput bookEndIntInput (LOCALE_MOVIEBROWSER_EDIT_BOOK, (long&)movie_info->bookmarks.end, 5, LOCALE_MOVIEBROWSER_EDIT_BOOK_POS_INFO1, LOCALE_MOVIEBROWSER_EDIT_BOOK_POS_INFO2);
+ CIntInput bookStartIntInput (LOCALE_MOVIEBROWSER_EDIT_BOOK, (int&)movie_info->bookmarks.start, 5, LOCALE_MOVIEBROWSER_EDIT_BOOK_POS_INFO1, LOCALE_MOVIEBROWSER_EDIT_BOOK_POS_INFO2);
+ CIntInput bookLastIntInput (LOCALE_MOVIEBROWSER_EDIT_BOOK, (int&)movie_info->bookmarks.lastPlayStop, 5, LOCALE_MOVIEBROWSER_EDIT_BOOK_POS_INFO1, LOCALE_MOVIEBROWSER_EDIT_BOOK_POS_INFO2);
+ CIntInput bookEndIntInput (LOCALE_MOVIEBROWSER_EDIT_BOOK, (int&)movie_info->bookmarks.end, 5, LOCALE_MOVIEBROWSER_EDIT_BOOK_POS_INFO1, LOCALE_MOVIEBROWSER_EDIT_BOOK_POS_INFO2);
CMenuWidget bookmarkMenu(LOCALE_MOVIEBROWSER_INFO_HEAD, NEUTRINO_ICON_STREAMING);
bookmarkMenu.addIntroItems(LOCALE_MOVIEBROWSER_BOOK_HEAD);
@@ -2985,8 +2985,8 @@ int CMovieBrowser::showMovieInfoMenu(MI_MOVIE_INFO* movie_info)
pBookItemMenuForwarderNotifier[i] = new CBookItemMenuForwarderNotifier();
pBookNameInput[i] = new CStringInputSMS (LOCALE_MOVIEBROWSER_EDIT_BOOK, &movie_info->bookmarks.user[i].name, 20, true, LOCALE_MOVIEBROWSER_EDIT_BOOK_NAME_INFO1, LOCALE_MOVIEBROWSER_EDIT_BOOK_NAME_INFO2, "abcdefghijklmnopqrstuvwxyz\xE4\xF6\xFC\xDF""0123456789-_/()<>=.,:!?\\'\"& ", pBookItemMenuForwarderNotifier[i]);
- pBookPosIntInput[i] = new CIntInput (LOCALE_MOVIEBROWSER_EDIT_BOOK, (long&) movie_info->bookmarks.user[i].pos, 20, LOCALE_MOVIEBROWSER_EDIT_BOOK_POS_INFO1, LOCALE_MOVIEBROWSER_EDIT_BOOK_POS_INFO2);
- pBookTypeIntInput[i] = new CIntInput (LOCALE_MOVIEBROWSER_EDIT_BOOK, (long&) movie_info->bookmarks.user[i].length, 20, LOCALE_MOVIEBROWSER_EDIT_BOOK_TYPE_INFO1, LOCALE_MOVIEBROWSER_EDIT_BOOK_TYPE_INFO2);
+ pBookPosIntInput[i] = new CIntInput (LOCALE_MOVIEBROWSER_EDIT_BOOK, (int&) movie_info->bookmarks.user[i].pos, 20, LOCALE_MOVIEBROWSER_EDIT_BOOK_POS_INFO1, LOCALE_MOVIEBROWSER_EDIT_BOOK_POS_INFO2);
+ pBookTypeIntInput[i] = new CIntInput (LOCALE_MOVIEBROWSER_EDIT_BOOK, (int&) movie_info->bookmarks.user[i].length, 20, LOCALE_MOVIEBROWSER_EDIT_BOOK_TYPE_INFO1, LOCALE_MOVIEBROWSER_EDIT_BOOK_TYPE_INFO2);
pBookItemMenu[i] = new CMenuWidget(LOCALE_MOVIEBROWSER_INFO_HEAD, NEUTRINO_ICON_STREAMING);
pBookItemMenu[i]->addIntroItems(LOCALE_MOVIEBROWSER_BOOK_HEAD);
@@ -3051,9 +3051,9 @@ int CMovieBrowser::showMovieInfoMenu(MI_MOVIE_INFO* movie_info)
CStringInputSMS epgUserInput(LOCALE_MOVIEBROWSER_INFO_INFO1, &movie_info->epgInfo1, MAX_STRING, true, LOCALE_GENERIC_EMPTY, LOCALE_GENERIC_EMPTY, "abcdefghijklmnopqrstuvwxyz\xE4\xF6\xFC\xDF""0123456789-_/()<>=.,:!?\\'\"& ");
CDateInput dateUserDateInput(LOCALE_MOVIEBROWSER_INFO_LENGTH, &movie_info->dateOfLastPlay, LOCALE_GENERIC_EMPTY, LOCALE_GENERIC_EMPTY);
CDateInput recUserDateInput(LOCALE_MOVIEBROWSER_INFO_LENGTH, &movie_info->file.Time, LOCALE_GENERIC_EMPTY, LOCALE_GENERIC_EMPTY);
- CIntInput lengthUserIntInput(LOCALE_MOVIEBROWSER_INFO_LENGTH, (long&)movie_info->length, 3, LOCALE_GENERIC_EMPTY, LOCALE_GENERIC_EMPTY);
+ CIntInput lengthUserIntInput(LOCALE_MOVIEBROWSER_INFO_LENGTH, (int&)movie_info->length, 3, LOCALE_GENERIC_EMPTY, LOCALE_GENERIC_EMPTY);
CStringInputSMS countryUserInput(LOCALE_MOVIEBROWSER_INFO_PRODCOUNTRY, &movie_info->productionCountry, 11, true, LOCALE_GENERIC_EMPTY, LOCALE_GENERIC_EMPTY, "abcdefghijklmnopqrstuvwxyz\xE4\xF6\xFC\xDF""0123456789-_/()<>=.,:!?\\'\"& ");
- CIntInput yearUserIntInput(LOCALE_MOVIEBROWSER_INFO_PRODYEAR, (long&)movie_info->productionDate, 4, LOCALE_GENERIC_EMPTY, LOCALE_GENERIC_EMPTY);
+ CIntInput yearUserIntInput(LOCALE_MOVIEBROWSER_INFO_PRODYEAR, (int&)movie_info->productionDate, 4, LOCALE_GENERIC_EMPTY, LOCALE_GENERIC_EMPTY);
CMenuWidget movieInfoMenu(LOCALE_MOVIEBROWSER_MENU_MAIN_HEAD, NEUTRINO_ICON_STREAMING, m_cBoxFrame.iWidth);
movieInfoMenu.addIntroItems(LOCALE_MOVIEBROWSER_INFO_HEAD);
@@ -3159,13 +3159,13 @@ bool CMovieBrowser::showMenu(MI_MOVIE_INFO* /*movie_info*/)
/********************************************************************/
/** optionsMenuBrowser **************************************************/
- CIntInput playMaxUserIntInput(LOCALE_MOVIEBROWSER_LAST_PLAY_MAX_ITEMS, (long&) m_settings.lastPlayMaxItems, 3, LOCALE_GENERIC_EMPTY, LOCALE_GENERIC_EMPTY);
- CIntInput recMaxUserIntInput(LOCALE_MOVIEBROWSER_LAST_RECORD_MAX_ITEMS, (long&) m_settings.lastRecordMaxItems, 3, LOCALE_GENERIC_EMPTY, LOCALE_GENERIC_EMPTY);
- CIntInput browserFrameUserIntInput(LOCALE_MOVIEBROWSER_BROWSER_FRAME_HIGH, (long&) m_settings.browserFrameHeight, 4, LOCALE_GENERIC_EMPTY, LOCALE_GENERIC_EMPTY);
- CIntInput browserRowNrIntInput(LOCALE_MOVIEBROWSER_BROWSER_ROW_NR, (long&) m_settings.browserRowNr, 1, LOCALE_GENERIC_EMPTY, LOCALE_GENERIC_EMPTY);
+ CIntInput playMaxUserIntInput(LOCALE_MOVIEBROWSER_LAST_PLAY_MAX_ITEMS, (int&) m_settings.lastPlayMaxItems, 3, LOCALE_GENERIC_EMPTY, LOCALE_GENERIC_EMPTY);
+ CIntInput recMaxUserIntInput(LOCALE_MOVIEBROWSER_LAST_RECORD_MAX_ITEMS, (int&) m_settings.lastRecordMaxItems, 3, LOCALE_GENERIC_EMPTY, LOCALE_GENERIC_EMPTY);
+ CIntInput browserFrameUserInt...
[truncated message content] |
|
From: Thilo G. <tux...@ne...> - 2013-04-06 19:03:31
|
Project "Tuxbox-GIT: apps":
The branch, master has been updated
via cf53e3b3fd4f361346e0d57cabea8cd0ffbb9622 (commit)
via b59f8af6b12e54f8f2bd8e8c1b7b4257b335c44f (commit)
via 8311bc1c1ad934ac0833676928d3426046e935ee (commit)
via 1eaeff6d050fd4c6b759d5f71fb844fcafe1261b (commit)
from 3f027bea78d52a62045a2e356c8c26e67a57660b (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
commit cf53e3b3fd4f361346e0d57cabea8cd0ffbb9622
Author: Jacek Jendrzej <cra...@go...>
Date: Fri Apr 5 23:05:42 2013 +0200
neutrino: show epginfo from followlist also
Signed-off-by: Christian Schuett <Gau...@ho...>
Signed-off-by: Thilo Graf <db...@no...>
diff --git a/tuxbox/neutrino/src/gui/epgview.cpp b/tuxbox/neutrino/src/gui/epgview.cpp
index eacc09f..dc18466 100644
--- a/tuxbox/neutrino/src/gui/epgview.cpp
+++ b/tuxbox/neutrino/src/gui/epgview.cpp
@@ -447,12 +447,12 @@ static bool sortByDateTime (const CChannelEvent& a, const CChannelEvent& b)
return a.startTime< b.startTime;
}
-int CEpgData::show(const t_channel_id channel_id, unsigned long long a_id, time_t* a_startzeit, bool doLoop )
+int CEpgData::show(const t_channel_id channel_id, unsigned long long a_id, time_t* a_startzeit, bool doLoop, bool callFromfollowlist )
{
int res = menu_return::RETURN_REPAINT;
static unsigned long long id;
static time_t startzeit;
-
+ call_fromfollowlist = callFromfollowlist;
if(a_startzeit)
startzeit=*a_startzeit;
id=a_id;
@@ -649,13 +649,13 @@ int CEpgData::show(const t_channel_id channel_id, unsigned long long a_id, time_
}
GetPrevNextEPGData( epgData.eventID, &epgData.epg_times.startzeit );
- if (prev_id != 0)
+ if ((prev_id != 0) && !call_fromfollowlist)
{
frameBuffer->paintBoxRel(sx+ 5, sy+ oy- botboxheight+ 4, botboxheight- 8, botboxheight- 8, COL_MENUCONTENT_PLUS_3);
g_Font[SNeutrinoSettings::FONT_TYPE_EPG_DATE]->RenderString(sx+ 10, sy+ oy- 3, widthr, "<", COL_MENUCONTENT + 3);
}
- if (next_id != 0)
+ if ((next_id != 0) && !call_fromfollowlist)
{
frameBuffer->paintBoxRel(sx+ ox- botboxheight+ 8- 5, sy+ oy- botboxheight+ 4, botboxheight- 8, botboxheight- 8, COL_MENUCONTENT_PLUS_3);
g_Font[SNeutrinoSettings::FONT_TYPE_EPG_DATE]->RenderString(sx+ ox- botboxheight+ 8, sy+ oy- 3, widthr, ">", COL_MENUCONTENT + 3);
@@ -681,7 +681,7 @@ int CEpgData::show(const t_channel_id channel_id, unsigned long long a_id, time_
switch ( msg )
{
case CRCInput::RC_left:
- if (prev_id != 0)
+ if ((prev_id != 0) && !call_fromfollowlist)
{
frameBuffer->paintBoxRel(sx+ 5, sy+ oy- botboxheight+ 4, botboxheight- 8, botboxheight- 8, COL_MENUCONTENT_PLUS_1);
g_Font[SNeutrinoSettings::FONT_TYPE_EPG_DATE]->RenderString(sx+ 10, sy+ oy- 3, widthr, "<", COL_MENUCONTENT + 1);
@@ -692,7 +692,7 @@ int CEpgData::show(const t_channel_id channel_id, unsigned long long a_id, time_
break;
case CRCInput::RC_right:
- if (next_id != 0)
+ if ((next_id != 0) && !call_fromfollowlist)
{
frameBuffer->paintBoxRel(sx+ ox- botboxheight+ 8- 5, sy+ oy- botboxheight+ 4, botboxheight- 8, botboxheight- 8, COL_MENUCONTENT_PLUS_1);
g_Font[SNeutrinoSettings::FONT_TYPE_EPG_DATE]->RenderString(sx+ ox- botboxheight+ 8, sy+ oy- 3, widthr, ">", COL_MENUCONTENT + 1);
@@ -733,7 +733,12 @@ int CEpgData::show(const t_channel_id channel_id, unsigned long long a_id, time_
CRecDirChooser recDirs(LOCALE_TIMERLIST_RECORDING_DIR, NEUTRINO_ICON_TIMER, NULL, &recDir);
hide();
recDirs.exec(NULL,"");
- show(channel_id,epgData.eventID,&epgData.epg_times.startzeit,false);
+ if (!bigFonts && g_settings.bigFonts) {
+ g_Font[SNeutrinoSettings::FONT_TYPE_EPG_INFO1]->setSize(g_Font[SNeutrinoSettings::FONT_TYPE_EPG_INFO1]->getSize() * BIG_FONT_FAKTOR / 10);
+ g_Font[SNeutrinoSettings::FONT_TYPE_EPG_INFO2]->setSize(g_Font[SNeutrinoSettings::FONT_TYPE_EPG_INFO2]->getSize() * BIG_FONT_FAKTOR / 10);
+ }
+ bigFonts = g_settings.bigFonts;
+ show(channel_id, id, &startzeit, false, call_fromfollowlist);
recDir = recDirs.get_selected_dir();
}
@@ -792,9 +797,11 @@ int CEpgData::show(const t_channel_id channel_id, unsigned long long a_id, time_
// more screenings
case CRCInput::RC_blue:
- if (!followlist.empty())
+ if (!followlist.empty() && !call_fromfollowlist)
{
hide();
+ time_t tmp_sZeit = epgData.epg_times.startzeit;
+ unsigned long long tmp_eID = epgData.eventID;
EventList* eventList = new EventList();
res = eventList->exec(channel_id, g_Locale->getText(LOCALE_EPGVIEWER_MORE_SCREENINGS_SHORT), followlist); // UTF-8
delete eventList;
@@ -807,7 +814,7 @@ int CEpgData::show(const t_channel_id channel_id, unsigned long long a_id, time_
g_Font[SNeutrinoSettings::FONT_TYPE_EPG_INFO2]->setSize(g_Font[SNeutrinoSettings::FONT_TYPE_EPG_INFO2]->getSize() * BIG_FONT_FAKTOR / 10);
}
bigFonts = g_settings.bigFonts;
- show(channel_id, id, &startzeit, false);
+ show(channel_id, tmp_eID, &tmp_sZeit, false);
showPos = 0;
}
}
@@ -825,7 +832,7 @@ int CEpgData::show(const t_channel_id channel_id, unsigned long long a_id, time_
g_Font[SNeutrinoSettings::FONT_TYPE_EPG_INFO2]->setSize(g_Font[SNeutrinoSettings::FONT_TYPE_EPG_INFO2]->getSize() * 10 / BIG_FONT_FAKTOR);
}
g_settings.bigFonts = bigFonts;
- show(channel_id, id, &startzeit, false);
+ show(channel_id, id, &startzeit, false, call_fromfollowlist);
showPos=0;
break;
@@ -1018,7 +1025,7 @@ void CEpgData::showTimerEventBar(bool _show)
::paintButtons(frameBuffer, g_Font[SNeutrinoSettings::FONT_TYPE_INFOBAR_SMALL], g_Locale, sx + 8 + ButtonWidth, by, ButtonWidth, 1, &epgviewButtons[1]);
// Button: more screenings
- if (!followlist.empty())
+ if (!followlist.empty() && !call_fromfollowlist)
::paintButtons(frameBuffer, g_Font[SNeutrinoSettings::FONT_TYPE_INFOBAR_SMALL], g_Locale, sx + 8 + 2 * ButtonWidth, by, ButtonWidth, 1, &epgviewButtons[2], 2 * ButtonWidth - 2 * (ICON_LARGE_WIDTH + 2) - 4);
}
diff --git a/tuxbox/neutrino/src/gui/epgview.h b/tuxbox/neutrino/src/gui/epgview.h
index db206fd..5d8872e 100644
--- a/tuxbox/neutrino/src/gui/epgview.h
+++ b/tuxbox/neutrino/src/gui/epgview.h
@@ -61,6 +61,7 @@ class CEpgData
std::string epg_start;
std::string epg_end;
int epg_done;
+ bool call_fromfollowlist;
unsigned long long prev_id;
time_t prev_zeit;
@@ -90,7 +91,7 @@ class CEpgData
CEpgData();
void start( );
- int show(const t_channel_id channel_id, unsigned long long id = 0, time_t* startzeit = NULL, bool doLoop = true );
+ int show(const t_channel_id channel_id, unsigned long long id = 0, time_t* startzeit = NULL, bool doLoop = true, bool callFromfollowlist = false );
void hide();
};
diff --git a/tuxbox/neutrino/src/gui/eventlist.cpp b/tuxbox/neutrino/src/gui/eventlist.cpp
index 3e4161e..dcd87c0 100644
--- a/tuxbox/neutrino/src/gui/eventlist.cpp
+++ b/tuxbox/neutrino/src/gui/eventlist.cpp
@@ -553,12 +553,12 @@ int EventList::exec(const t_channel_id channel_id, const std::string& channelnam
#endif
else if (msg==CRCInput::RC_help || msg==CRCInput::RC_right || msg==CRCInput::RC_ok)
{
- if (!showfollow && evtlist[selected].eventID != 0)
+ if (evtlist[selected].eventID != 0)
{
hide();
// res = g_EpgData->show(channel_id, evtlist[selected].eventID, &evtlist[selected].startTime);
- res = g_EpgData->show(evtlist[selected].get_channel_id(), evtlist[selected].eventID, &evtlist[selected].startTime);
+ res = g_EpgData->show(evtlist[selected].get_channel_id(), evtlist[selected].eventID, &evtlist[selected].startTime, true, showfollow);
if ( res == menu_return::RETURN_EXIT_ALL )
{
loop = false;
@@ -743,7 +743,7 @@ void EventList::paint()
liststart = (selected/listmaxshow)*listmaxshow;
- if (!showfollow && evtlist[0].eventID != 0)
+ if (evtlist[0].eventID != 0)
{
int iconw = 0, iconh = 0;
frameBuffer->getIconSize(NEUTRINO_ICON_BUTTON_HELP, &iconw, &iconh);
commit b59f8af6b12e54f8f2bd8e8c1b7b4257b335c44f
Author: Jacek Jendrzej <cra...@go...>
Date: Fri Apr 5 21:10:59 2013 +0200
neutrino: epgview: osd fix dates, tab for screening
Signed-off-by: Christian Schuett <Gau...@ho...>
Signed-off-by: Thilo Graf <db...@no...>
diff --git a/tuxbox/neutrino/src/gui/epgview.cpp b/tuxbox/neutrino/src/gui/epgview.cpp
index aff3f07..eacc09f 100644
--- a/tuxbox/neutrino/src/gui/epgview.cpp
+++ b/tuxbox/neutrino/src/gui/epgview.cpp
@@ -143,7 +143,7 @@ void CEpgData::start()
toph = topboxheight;
}
-void CEpgData::addTextToArray(const std::string & text) // UTF-8
+void CEpgData::addTextToArray(const std::string & text, int screening) // UTF-8
{
//printf("line: >%s<\n", text.c_str() );
if (text==" ")
@@ -151,17 +151,17 @@ void CEpgData::addTextToArray(const std::string & text) // UTF-8
emptyLineCount ++;
if(emptyLineCount<2)
{
- epgText.push_back(text);
+ epgText.push_back(epg_pair(text, screening));
}
}
else
{
emptyLineCount = 0;
- epgText.push_back(text);
+ epgText.push_back(epg_pair(text, screening));
}
}
-void CEpgData::processTextToArray(std::string text) // UTF-8
+void CEpgData::processTextToArray(std::string text, int screening) // UTF-8
{
std::string aktLine = "";
std::string aktWord = "";
@@ -181,14 +181,14 @@ void CEpgData::processTextToArray(std::string text) // UTF-8
// check the wordwidth - add to this line if size ok
int aktWordWidth = g_Font[SNeutrinoSettings::FONT_TYPE_EPG_INFO2]->getRenderWidth(aktWord);
- if((aktWordWidth+aktWidth)<(ox- 20- 15))
+ if((aktWordWidth+aktWidth)<(ox- 10- 15))
{//space ok, add
aktWidth += aktWordWidth;
aktLine += aktWord;
if(*text_=='\n')
{ //enter-handler
- addTextToArray( aktLine );
+ addTextToArray( aktLine, screening);
aktLine = "";
aktWidth= 0;
}
@@ -196,7 +196,7 @@ void CEpgData::processTextToArray(std::string text) // UTF-8
}
else
{//new line needed
- addTextToArray( aktLine );
+ addTextToArray( aktLine, screening);
aktLine = aktWord;
aktWidth = aktWordWidth;
aktWord = "";
@@ -213,7 +213,7 @@ void CEpgData::processTextToArray(std::string text) // UTF-8
text_++;
}
//add the rest
- addTextToArray( aktLine + aktWord );
+ addTextToArray( aktLine + aktWord, screening );
}
void CEpgData::showText( int startPos, int ypos )
@@ -224,15 +224,45 @@ void CEpgData::showText( int startPos, int ypos )
int textSize = epgText.size();
int y=ypos;
-
+ const char tok = ' ';
+ int offset = 0, count = 0;
+ int max_mon_w = 0, max_wday_w = 0;
+ int digi = g_Font[SNeutrinoSettings::FONT_TYPE_EPG_INFO2]->getRenderWidth("29..");
+ for(int i = 0; i < 12;i++){
+ max_mon_w = std::max(max_mon_w, g_Font[SNeutrinoSettings::FONT_TYPE_EPG_INFO2]->getRenderWidth(std::string(g_Locale->getText(CLocaleManager::getMonth(i))) + ".", true)); // UTF-8
+ if(i > 6)
+ continue;
+ max_wday_w = std::max(max_wday_w, g_Font[SNeutrinoSettings::FONT_TYPE_EPG_INFO2]->getRenderWidth(std::string(g_Locale->getText(CLocaleManager::getWeekday(i))) + ".", true)); // UTF-8
+ }
frameBuffer->paintBoxRel(sx, y, ox- 15, sb, COL_MENUCONTENT_PLUS_0); // background of the text box
-
for(int i = startPos; i < textSize && i < startPos + medlinecount; i++, y += medlineheight)
{
- if ( i< info1_lines )
- g_Font[SNeutrinoSettings::FONT_TYPE_EPG_INFO1]->RenderString(sx+10, y+medlineheight, ox- 15- 15, epgText[i], COL_MENUCONTENT, 0, true); // UTF-8
- else
- g_Font[SNeutrinoSettings::FONT_TYPE_EPG_INFO2]->RenderString(sx+10, y+medlineheight, ox- 15- 15, epgText[i], COL_MENUCONTENT, 0, true); // UTF-8
+ if(epgText[i].second){
+ std::string::size_type pos1 = epgText[i].first.find_first_not_of(tok, 0);
+ std::string::size_type pos2 = epgText[i].first.find_first_of(tok, pos1);
+ while( pos2 != string::npos || pos1 != string::npos ){
+ switch(count){
+ case 1:
+ offset += max_wday_w;
+ break;
+ case 3:
+ offset += max_mon_w;
+ break;
+ default:
+ offset += digi;
+ break;
+ }
+ g_Font[SNeutrinoSettings::FONT_TYPE_EPG_INFO2]->RenderString(sx+10+offset, y+medlineheight, ox- 15- 15, epgText[i].first.substr(pos1, pos2 - pos1), (epgText[i].second==2)? COL_MENUCONTENTINACTIVE: COL_MENUCONTENT, 0, true); // UTF-8
+ count++;
+ pos1 = epgText[i].first.find_first_not_of(tok, pos2);
+ pos2 = epgText[i].first.find_first_of(tok, pos1);
+ }
+ offset = 0;
+ count = 0;
+ }
+ else{
+ g_Font[( i< info1_lines ) ?SNeutrinoSettings::FONT_TYPE_EPG_INFO1:SNeutrinoSettings::FONT_TYPE_EPG_INFO2]->RenderString(sx+10, y+medlineheight, ox- 15- 15, epgText[i].first, COL_MENUCONTENT, 0, true); // UTF-8
+ }
}
int sbc = ((textSize - 1)/ medlinecount) + 1;
@@ -567,7 +597,7 @@ int CEpgData::show(const t_channel_id channel_id, unsigned long long a_id, time_
if (hasFollowScreenings(channel_id, epgData.title, epgData.epg_times.startzeit)) {
processTextToArray(""); // UTF-8
processTextToArray(std::string(g_Locale->getText(LOCALE_EPGVIEWER_MORE_SCREENINGS)) + ':'); // UTF-8
- FollowScreenings();
+ FollowScreenings(epgData.epg_times.startzeit);
}
//show the epg
@@ -861,7 +891,7 @@ void CEpgData::GetEPGData(const t_channel_id channel_id, unsigned long long id,
}
struct tm *pStartZeit = localtime(&(epgData.epg_times).startzeit);
- char temp[11];
+ char temp[11] = {0};
strftime( temp, sizeof(temp), "%d.%m.%Y", pStartZeit);
epg_date = g_Locale->getText(CLocaleManager::getWeekday(pStartZeit));
epg_date += ". ";
@@ -919,12 +949,13 @@ void CEpgData::GetPrevNextEPGData( unsigned long long id, time_t* startzeit )
// -- 2002-05-03 rasc
//
-void CEpgData::FollowScreenings()
+void CEpgData::FollowScreenings(const time_t startzeit)
{
- CChannelEventList::iterator e;
- struct tm *tmStartZeit;
- std::string screening_dates,screening_nodual;
- char tmpstr[256];
+ CChannelEventList::iterator e;
+ struct tm *tmStartZeit;
+ std::string screening_dates, screening_nodual;
+ int flag = 1;
+ char tmpstr[256] = {0};
screening_dates = screening_nodual = "";
@@ -932,22 +963,22 @@ void CEpgData::FollowScreenings()
{
tmStartZeit = localtime(&(e->startTime));
- screening_dates = " ";
-
- screening_dates += g_Locale->getText(CLocaleManager::getWeekday(tmStartZeit));
+ screening_dates = g_Locale->getText(CLocaleManager::getWeekday(tmStartZeit));
screening_dates += '.';
- strftime(tmpstr, sizeof(tmpstr), " %d.", tmStartZeit );
+ strftime(tmpstr, sizeof(tmpstr), " %d.", tmStartZeit );
screening_dates += tmpstr;
screening_dates += g_Locale->getText(CLocaleManager::getMonth(tmStartZeit));
- strftime(tmpstr, sizeof(tmpstr), ". %H:%M ", tmStartZeit );
+ strftime(tmpstr, sizeof(tmpstr), ". %H:%M ", tmStartZeit );
screening_dates += tmpstr;
+ flag = (e->startTime <= startzeit) ? 2 : 1;
+
if (screening_dates != screening_nodual){
screening_nodual=screening_dates;
- processTextToArray(screening_dates ); // UTF-8
+ processTextToArray(screening_dates, flag ); // UTF-8
}
}
}
diff --git a/tuxbox/neutrino/src/gui/epgview.h b/tuxbox/neutrino/src/gui/epgview.h
index 619d5f3..db206fd 100644
--- a/tuxbox/neutrino/src/gui/epgview.h
+++ b/tuxbox/neutrino/src/gui/epgview.h
@@ -70,7 +70,8 @@ class CEpgData
int ox, oy, sx, sy, toph, sb;
int emptyLineCount, info1_lines;
int textCount;
- std::vector<std::string> epgText;
+ typedef std::pair<std::string,int> epg_pair;
+ std::vector<epg_pair> epgText;
int topheight,topboxheight;
int botheight,botboxheight;
int medlineheight,medlinecount;
@@ -78,11 +79,11 @@ class CEpgData
void GetEPGData(const t_channel_id channel_id, unsigned long long id, time_t* startzeit );
void GetPrevNextEPGData( unsigned long long id, time_t* startzeit );
- void addTextToArray( const std::string & text );
- void processTextToArray(std::string text);
+ void addTextToArray( const std::string & text, int screening );
+ void processTextToArray(std::string text, int screening = 0);
void showText( int startPos, int ypos );
bool hasFollowScreenings(const t_channel_id channel_id, const std::string & title, const time_t startzeit);
- void FollowScreenings();
+ void FollowScreenings(const time_t startzeit);
void showTimerEventBar(bool show);
public:
diff --git a/tuxbox/neutrino/src/system/localize.cpp b/tuxbox/neutrino/src/system/localize.cpp
index d63462d..5ab8489 100644
--- a/tuxbox/neutrino/src/system/localize.cpp
+++ b/tuxbox/neutrino/src/system/localize.cpp
@@ -330,8 +330,23 @@ neutrino_locale_t CLocaleManager::getMonth(const struct tm * struct_tm_p)
return locale_month[struct_tm_p->tm_mon];
}
+neutrino_locale_t CLocaleManager::getMonth(const int mon)
+{
+ if(mon > -1 && mon < 12)
+ return locale_month[mon];
+ else
+ return LOCALE_MESSAGEBOX_ERROR;
+}
+
neutrino_locale_t CLocaleManager::getWeekday(const struct tm * struct_tm_p)
{
return locale_weekday[struct_tm_p->tm_wday];
}
+neutrino_locale_t CLocaleManager::getWeekday(const int wday)
+{
+ if(wday > -1 && wday < 7)
+ return locale_weekday[wday];
+ else
+ return LOCALE_MESSAGEBOX_ERROR;
+}
diff --git a/tuxbox/neutrino/src/system/localize.h b/tuxbox/neutrino/src/system/localize.h
index 1a4098f..e6a0837 100644
--- a/tuxbox/neutrino/src/system/localize.h
+++ b/tuxbox/neutrino/src/system/localize.h
@@ -62,6 +62,8 @@ class CLocaleManager
const char * getText(const neutrino_locale_t keyName) const;
static neutrino_locale_t getMonth (const struct tm * struct_tm_p);
+ static neutrino_locale_t getMonth (const int mon);
static neutrino_locale_t getWeekday(const struct tm * struct_tm_p);
+ static neutrino_locale_t getWeekday(const int wday);
};
#endif
commit 8311bc1c1ad934ac0833676928d3426046e935ee
Author: Christian Schuett <Gau...@ho...>
Date: Thu Apr 4 20:01:17 2013 +0200
Neutrino: use big font setting also in movieinfo window
Signed-off-by: Christian Schuett <Gau...@ho...>
Signed-off-by: Thilo Graf <db...@no...>
diff --git a/tuxbox/neutrino/src/gui/widget/msgbox.cpp b/tuxbox/neutrino/src/gui/widget/msgbox.cpp
index 2c97da5..910f620 100644
--- a/tuxbox/neutrino/src/gui/widget/msgbox.cpp
+++ b/tuxbox/neutrino/src/gui/widget/msgbox.cpp
@@ -861,10 +861,16 @@ int ShowMsg2UTF( const char * const Title,
CBox position(x, y, width, height);
int oldfontsize = g_Font[SNeutrinoSettings::FONT_TYPE_EPG_INFO2]->getSize();
- bool bigfonts = false;
+ bool bigfonts = !g_settings.bigFonts;
+
int ret, res;
do {
- //TRACE("\r\n->ShowTextUTF %s\r\n",Text);
+ bigfonts = !bigfonts;
+ if (bigfonts)
+ g_Font[SNeutrinoSettings::FONT_TYPE_EPG_INFO2]->setSize(oldfontsize * 15 / 10);
+ else
+ g_Font[SNeutrinoSettings::FONT_TYPE_EPG_INFO2]->setSize(oldfontsize);
+
CMsgBox* msgBox = new CMsgBox( Text,
g_Font[SNeutrinoSettings::FONT_TYPE_EPG_INFO2],
mode,
@@ -879,15 +885,11 @@ int ShowMsg2UTF( const char * const Title,
res = msgBox->result();
delete msgBox;
- bigfonts = !bigfonts;
- if (bigfonts)
- g_Font[SNeutrinoSettings::FONT_TYPE_EPG_INFO2]->setSize(oldfontsize * 15 / 10);
- else
- g_Font[SNeutrinoSettings::FONT_TYPE_EPG_INFO2]->setSize(oldfontsize);
} while (ret == -1);
if (bigfonts)
g_Font[SNeutrinoSettings::FONT_TYPE_EPG_INFO2]->setSize(oldfontsize);
-
+ g_settings.bigFonts = bigfonts;
+
return res;
}
commit 1eaeff6d050fd4c6b759d5f71fb844fcafe1261b
Author: GetAway <get...@t-...>
Date: Thu Apr 4 16:10:06 2013 +0200
neutrino: calculate centering of channellist including itemline
Signed-off-by: Christian Schuett <Gau...@ho...>
Signed-off-by: Thilo Graf <db...@no...>
diff --git a/tuxbox/neutrino/src/gui/channellist.cpp b/tuxbox/neutrino/src/gui/channellist.cpp
index 3f2013e..517f883 100644
--- a/tuxbox/neutrino/src/gui/channellist.cpp
+++ b/tuxbox/neutrino/src/gui/channellist.cpp
@@ -165,7 +165,7 @@ void CChannelList::calcSize()
listmaxshow = (height - theight - footerHeight -0)/fheight;
height = theight + footerHeight + listmaxshow * fheight;
- x = getScreenStartX(full_width);
+ x = getScreenStartX(full_width - ConnectLineBox_Width);
y = getScreenStartY(height + info_height);
infozone_width = full_width - width;
-----------------------------------------------------------------------
Summary of changes:
tuxbox/neutrino/src/gui/channellist.cpp | 2 +-
tuxbox/neutrino/src/gui/epgview.cpp | 114 +++++++++++++++++++----------
tuxbox/neutrino/src/gui/epgview.h | 12 ++-
tuxbox/neutrino/src/gui/eventlist.cpp | 6 +-
tuxbox/neutrino/src/gui/widget/msgbox.cpp | 18 +++--
tuxbox/neutrino/src/system/localize.cpp | 15 ++++
tuxbox/neutrino/src/system/localize.h | 2 +
7 files changed, 114 insertions(+), 55 deletions(-)
--
Tuxbox-GIT: apps
|
|
From: Thilo G. <tux...@ne...> - 2013-04-04 09:04:02
|
Project "Tuxbox-GIT: apps":
The branch, master has been updated
via 3f027bea78d52a62045a2e356c8c26e67a57660b (commit)
from 48f0523f8f08aa559c0b32159a875248d0ac3721 (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
commit 3f027bea78d52a62045a2e356c8c26e67a57660b
Author: Thilo Graf <db...@no...>
Date: Thu Apr 4 11:03:48 2013 +0200
yWeb: increase revision to 2.7.0.22
diff --git a/tuxbox/neutrino/daemons/nhttpd/web/Y_Version.txt b/tuxbox/neutrino/daemons/nhttpd/web/Y_Version.txt
index 6987f11..1650fee 100644
--- a/tuxbox/neutrino/daemons/nhttpd/web/Y_Version.txt
+++ b/tuxbox/neutrino/daemons/nhttpd/web/Y_Version.txt
@@ -1,5 +1,5 @@
-version=2.7.0.21
-date=31.12.2012
+version=2.7.0.22
+date=04.04.2013
type=Release
info=
-----------------------------------------------------------------------
Summary of changes:
tuxbox/neutrino/daemons/nhttpd/web/Y_Version.txt | 4 ++--
1 files changed, 2 insertions(+), 2 deletions(-)
--
Tuxbox-GIT: apps
|
|
From: Thilo G. <tux...@ne...> - 2013-04-04 08:49:20
|
Project "Tuxbox-GIT: apps":
The branch, master has been updated
via 48f0523f8f08aa559c0b32159a875248d0ac3721 (commit)
via f87a2f7007916baf089cfc1fd8386728ab314950 (commit)
via 294d7fc3773a2fb2f66cbd2b90ef3a1cbaaac676 (commit)
via aaaa235ac2f7113e047f89631bf84c34e7f57d80 (commit)
via d55b2c57052a0e560da9fd352611589b5c54e9cc (commit)
via c04ce058e4b64fdfe2c74072be861a579324ded0 (commit)
via 32a52d7fe15b3d09cdfe2e33783fd8b374f324f1 (commit)
via 782fbb88514b258334cfd99676d6bb5dca8450d9 (commit)
via d48495ced0fb71c06c5e1f93a1eeee23aeee325f (commit)
via e83d957e4555d8cf47359aeb1bc31ebb7feb9fae (commit)
via 6d05b78afb254a54659d8b26f401e372150247e2 (commit)
via cbb38ce3f9968ed9035725743277e05787ecc646 (commit)
via 38adb0c12c2a4d21c2fe29b84cf132c3a89c2961 (commit)
via 970baf22101354be1ce7ea5636c47794430ef939 (commit)
via 87c371d4bbec173d24c94ecc30ff3a07a98047a0 (commit)
via 266cf7735b558caffdab88af77314377bf792611 (commit)
via ad450de365d980a7ec05dbdb04324399bf33355d (commit)
via cb48498e8632b30477e31080e891ff8d18526ca4 (commit)
via 8c04fadc5ff7229f3f737011a2c6689fe02a37bd (commit)
from d1d728263e78e1bbb10797adc44a380dc6162368 (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
commit 48f0523f8f08aa559c0b32159a875248d0ac3721
Author: GetAway <get...@t-...>
Date: Wed Apr 3 22:37:21 2013 +0200
neutrino: port save bigFonts code in epgview from N-HD
Signed-off-by: Thilo Graf <db...@no...>
diff --git a/tuxbox/neutrino/src/gui/epgview.cpp b/tuxbox/neutrino/src/gui/epgview.cpp
index 9ed2678..aff3f07 100644
--- a/tuxbox/neutrino/src/gui/epgview.cpp
+++ b/tuxbox/neutrino/src/gui/epgview.cpp
@@ -433,6 +433,11 @@ int CEpgData::show(const t_channel_id channel_id, unsigned long long a_id, time_
GetEPGData(channel_id, id, &startzeit );
if (doLoop)
{
+ if (!bigFonts && g_settings.bigFonts) {
+ g_Font[SNeutrinoSettings::FONT_TYPE_EPG_INFO1]->setSize(g_Font[SNeutrinoSettings::FONT_TYPE_EPG_INFO1]->getSize() * BIG_FONT_FAKTOR / 10);
+ g_Font[SNeutrinoSettings::FONT_TYPE_EPG_INFO2]->setSize(g_Font[SNeutrinoSettings::FONT_TYPE_EPG_INFO2]->getSize() * BIG_FONT_FAKTOR / 10);
+ }
+ bigFonts = g_settings.bigFonts;
evtlist = g_Sectionsd->getEventsServiceKey(channel_id);
// Houdini added for Private Premiere EPG start sorted by start date/time
sort(evtlist.begin(),evtlist.end(),sortByDateTime);
@@ -767,6 +772,11 @@ int CEpgData::show(const t_channel_id channel_id, unsigned long long a_id, time_
loop = false;
else
{
+ if (!bigFonts && g_settings.bigFonts) {
+ g_Font[SNeutrinoSettings::FONT_TYPE_EPG_INFO1]->setSize(g_Font[SNeutrinoSettings::FONT_TYPE_EPG_INFO1]->getSize() * BIG_FONT_FAKTOR / 10);
+ g_Font[SNeutrinoSettings::FONT_TYPE_EPG_INFO2]->setSize(g_Font[SNeutrinoSettings::FONT_TYPE_EPG_INFO2]->getSize() * BIG_FONT_FAKTOR / 10);
+ }
+ bigFonts = g_settings.bigFonts;
show(channel_id, id, &startzeit, false);
showPos = 0;
}
@@ -784,6 +794,7 @@ int CEpgData::show(const t_channel_id channel_id, unsigned long long a_id, time_
g_Font[SNeutrinoSettings::FONT_TYPE_EPG_INFO1]->setSize(g_Font[SNeutrinoSettings::FONT_TYPE_EPG_INFO1]->getSize() * 10 / BIG_FONT_FAKTOR);
g_Font[SNeutrinoSettings::FONT_TYPE_EPG_INFO2]->setSize(g_Font[SNeutrinoSettings::FONT_TYPE_EPG_INFO2]->getSize() * 10 / BIG_FONT_FAKTOR);
}
+ g_settings.bigFonts = bigFonts;
show(channel_id, id, &startzeit, false);
showPos=0;
break;
diff --git a/tuxbox/neutrino/src/neutrino.cpp b/tuxbox/neutrino/src/neutrino.cpp
index 9536fbb..904126f 100644
--- a/tuxbox/neutrino/src/neutrino.cpp
+++ b/tuxbox/neutrino/src/neutrino.cpp
@@ -375,6 +375,9 @@ int CNeutrinoApp::loadSetup()
g_settings.epg_max_events = configfile.getString("epg_max_events", "6000");
g_settings.epg_dir = configfile.getString("epg_dir", "");
+ // EPG-View
+ g_settings.bigFonts = configfile.getInt32("bigFonts", 0);
+
// NTP-Server for sectionsd
g_settings.network_ntpserver = configfile.getString("network_ntpserver", "130.60.7.42");
g_settings.network_ntprefresh = configfile.getString("network_ntprefresh", "30" );
@@ -978,6 +981,9 @@ void CNeutrinoApp::saveSetup()
configfile.setString("epg_max_events" ,g_settings.epg_max_events );
configfile.setString("epg_dir" ,g_settings.epg_dir);
+ // EPG-View
+ configfile.setInt32("bigFonts", g_settings.bigFonts);
+
//misc
configfile.setBool("standby_save_power" , g_settings.standby_save_power);
configfile.setBool("shutdown_real" , g_settings.shutdown_real);
diff --git a/tuxbox/neutrino/src/system/settings.h b/tuxbox/neutrino/src/system/settings.h
index c61a93f..9b961ff 100644
--- a/tuxbox/neutrino/src/system/settings.h
+++ b/tuxbox/neutrino/src/system/settings.h
@@ -68,6 +68,7 @@ struct SNeutrinoSettings
int progressbar_color;
int infobar_show;
int show_mute_icon;
+ int bigFonts;
int channellist_additional;
int channellist_epgtext_align_right;
int channellist_extended;
commit f87a2f7007916baf089cfc1fd8386728ab314950
Author: GetAway <get...@t-...>
Date: Wed Apr 3 20:33:24 2013 +0200
zapit: check ModifiedFlag before save controld.conf
Signed-off-by: Thilo Graf <db...@no...>
diff --git a/dvb/zapit/src/controld.cpp b/dvb/zapit/src/controld.cpp
index e3446dd..7c90eed 100644
--- a/dvb/zapit/src/controld.cpp
+++ b/dvb/zapit/src/controld.cpp
@@ -340,7 +340,8 @@ void controldSaveSettings()
{
/* does not really belong here? */
controldconfig->setInt32("volume_type", settings.volume_type);
- controldconfig->saveConfig(CONF_FILE);
+ if (controldconfig->getModifiedFlag())
+ controldconfig->saveConfig(CONF_FILE);
}
void shutdownBox()
@@ -951,7 +952,7 @@ void setAviaChip()
void controld_main(void)
{
/* load configuration */
- controldconfig = new CConfigFile(',');
+ controldconfig = new CConfigFile(',', false);
if (!controldconfig->loadConfig(CONF_FILE))
{
commit 294d7fc3773a2fb2f66cbd2b90ef3a1cbaaac676
Author: Christian Schuett <Gau...@ho...>
Date: Tue Apr 2 21:32:28 2013 +0200
Neutrino: use {w,h}_max() and getScreenStart{X,Y}() if possible
also remove some unnecessary if-clauses when using these functions
Signed-off-by: Christian Schuett <Gau...@ho...>
Signed-off-by: Thilo Graf <db...@no...>
diff --git a/tuxbox/neutrino/src/gui/alphasetup.cpp b/tuxbox/neutrino/src/gui/alphasetup.cpp
index 37de8b0..2fe47ab 100644
--- a/tuxbox/neutrino/src/gui/alphasetup.cpp
+++ b/tuxbox/neutrino/src/gui/alphasetup.cpp
@@ -69,7 +69,7 @@ CAlphaSetup::CAlphaSetup(const neutrino_locale_t Name)
width = w_max (360, 100);
hheight = g_Font[SNeutrinoSettings::FONT_TYPE_MENU_TITLE]->getHeight();
mheight = g_Font[SNeutrinoSettings::FONT_TYPE_MENU]->getHeight();
- height = hheight+ mheight*3;
+ height = h_max (hheight + mheight * 3, 0);
x = getScreenStartX (width);
y = getScreenStartY (height);
diff --git a/tuxbox/neutrino/src/gui/audioplayer.cpp b/tuxbox/neutrino/src/gui/audioplayer.cpp
index 29f3d8e..bf51ed9 100644
--- a/tuxbox/neutrino/src/gui/audioplayer.cpp
+++ b/tuxbox/neutrino/src/gui/audioplayer.cpp
@@ -46,6 +46,7 @@
#include <driver/encoding.h>
#include <driver/fontrenderer.h>
#include <driver/rcinput.h>
+#include <driver/screen_max.h>
#include <driver/audioplay.h>
#include <driver/audiometadata.h>
@@ -249,12 +250,8 @@ int CAudioPlayerGui::exec(CMenuTarget* parent, const std::string &)
m_current = 0;
m_selected = 0;
- m_width = 710;
- if((g_settings.screen_EndX - g_settings.screen_StartX) < m_width+ConnectLineBox_Width)
- m_width=(g_settings.screen_EndX - g_settings.screen_StartX) - ConnectLineBox_Width;
- m_height = 570;
- if((g_settings.screen_EndY - g_settings.screen_StartY) < m_height)
- m_height = (g_settings.screen_EndY - g_settings.screen_StartY);
+ m_width = w_max(710, ConnectLineBox_Width);
+ m_height = h_max(570, 0);
m_sheight = g_Font[SNeutrinoSettings::FONT_TYPE_INFOBAR_SMALL]->getHeight();
m_buttonHeight = std::min(25, m_sheight);
m_theight = g_Font[SNeutrinoSettings::FONT_TYPE_MENU_TITLE]->getHeight();
@@ -264,9 +261,8 @@ int CAudioPlayerGui::exec(CMenuTarget* parent, const std::string &)
m_listmaxshow = (m_height - m_info_height - m_title_height - m_theight - 2*m_buttonHeight) / (m_fheight);
m_height = m_theight + m_info_height + m_title_height + 2*m_buttonHeight + m_listmaxshow * m_fheight; // recalc height
- m_x = (((g_settings.screen_EndX - g_settings.screen_StartX) - (m_width + ConnectLineBox_Width)) / 2)
- + g_settings.screen_StartX + ConnectLineBox_Width;
- m_y = (((g_settings.screen_EndY- g_settings.screen_StartY) - m_height)/ 2) + g_settings.screen_StartY;
+ m_x = getScreenStartX(m_width + ConnectLineBox_Width) + ConnectLineBox_Width;
+ m_y = getScreenStartY(m_height);
m_idletime=time(NULL);
m_screensaver=false;
@@ -791,8 +787,8 @@ int CAudioPlayerGui::show()
/* show a hint box with current char (too slow at the moment?)*/
// char selectedKey[1];
// sprintf(selectedKey,"%c",smsKey);
-// int x1=(g_settings.screen_EndX- g_settings.screen_StartX)/2 + g_settings.screen_StartX-50;
-// int y1=(g_settings.screen_EndY- g_settings.screen_StartY)/2 + g_settings.screen_StartY;
+// int x1 = getScreenStartX(0) - 50;
+// int y1 = getScreenStartY(0);
// int h = g_Font[SNeutrinoSettings::FONT_TYPE_CHANNEL_NUM_ZAP]->getHeight();
// int w = g_Font[SNeutrinoSettings::FONT_TYPE_CHANNEL_NUM_ZAP]->getRenderWidth(selectedKey);
// m_frameBuffer->paintBoxRel(x1 - 7, y1 - h - 5, w + 14, h + 10, COL_MENUCONTENT_PLUS_6);
@@ -2330,8 +2326,8 @@ void CAudioPlayerGui::GetMetaData(CAudiofileExt &File)
bool CAudioPlayerGui::getNumericInput(neutrino_msg_t& msg, int& val) {
neutrino_msg_data_t data;
- int x1 = (g_settings.screen_EndX - g_settings.screen_StartX) / 2 + g_settings.screen_StartX - 50;
- int y1 = (g_settings.screen_EndY - g_settings.screen_StartY) / 2 + g_settings.screen_StartY;
+ int x1 = getScreenStartX(0) - 50;
+ int y1 = getScreenStartY(0);
char str[11];
do
{
diff --git a/tuxbox/neutrino/src/gui/bookmarkmanager.cpp b/tuxbox/neutrino/src/gui/bookmarkmanager.cpp
index 099dc37..6f311af 100644
--- a/tuxbox/neutrino/src/gui/bookmarkmanager.cpp
+++ b/tuxbox/neutrino/src/gui/bookmarkmanager.cpp
@@ -228,10 +228,8 @@ const CBookmark * CBookmarkManager::getBookmark(CMenuTarget* parent)
frameBuffer = CFrameBuffer::getInstance();
visible = false;
selected = 0;
- // Max
+
width = w_max (720, 30);
- if(g_settings.screen_EndX-g_settings.screen_StartX < width)
- width=g_settings.screen_EndX-g_settings.screen_StartX-10;
int iconw = 0, iconh = 0;
frameBuffer->getIconSize(NEUTRINO_ICON_BOOKMARKMANAGER, &iconw, &iconh);
diff --git a/tuxbox/neutrino/src/gui/drive_setup.cpp b/tuxbox/neutrino/src/gui/drive_setup.cpp
index aaa6b4d..5666ba7 100644
--- a/tuxbox/neutrino/src/gui/drive_setup.cpp
+++ b/tuxbox/neutrino/src/gui/drive_setup.cpp
@@ -203,7 +203,7 @@ CDriveSetup::CDriveSetup():configfile('\t')
width = w_max (600, 50);
hheight = g_Font[SNeutrinoSettings::FONT_TYPE_MENU_TITLE]->getHeight();
mheight = g_Font[SNeutrinoSettings::FONT_TYPE_MENU]->getHeight();
- height = hheight+13*mheight+ 10;
+ height = h_max (hheight+13*mheight+10, 0);
selected_main = -1;
x = getScreenStartX (width);
y = getScreenStartY (height);
diff --git a/tuxbox/neutrino/src/gui/epgplus.cpp b/tuxbox/neutrino/src/gui/epgplus.cpp
index b7f258c..426de17 100644
--- a/tuxbox/neutrino/src/gui/epgplus.cpp
+++ b/tuxbox/neutrino/src/gui/epgplus.cpp
@@ -610,8 +610,8 @@ EpgPlus::EpgPlus()
// this->usableScreenWidth = 580;
// this->usableScreenHeight = 480;
- usableScreenWidth = w_max(g_settings.screen_EndX, 4);
- usableScreenHeight = h_max(g_settings.screen_EndY, 4);
+ usableScreenWidth = w_max(720, 4);
+ usableScreenHeight = h_max(576, 4);
selectedChannelEntry = NULL;
init();
@@ -832,14 +832,14 @@ void EpgPlus::init()
entryHeight = ChannelEntry::getUsedHeight();
int footerHeight = Footer::getUsedHeight();
- usableScreenWidth = w_max(g_settings.screen_EndX, 4);
- usableScreenHeight = h_max(g_settings.screen_EndY, 4);
+ usableScreenWidth = w_max(720, 4);
+ usableScreenHeight = h_max(576, 4);
maxNumberOfDisplayableEntries = (usableScreenHeight - headerHeight - timeLineHeight - horGap1Height - horGap2Height - footerHeight) / entryHeight;
usableScreenHeight = headerHeight + timeLineHeight + horGap1Height + maxNumberOfDisplayableEntries * entryHeight + horGap2Height + footerHeight; // recalc deltaY
- usableScreenX = ((g_settings.screen_EndX - g_settings.screen_StartX - usableScreenWidth) / 2) + g_settings.screen_StartX;
- usableScreenY = ((g_settings.screen_EndY - g_settings.screen_StartY - usableScreenHeight) / 2) + g_settings.screen_StartY;
+ usableScreenX = getScreenStartX(usableScreenWidth);
+ usableScreenY = getScreenStartY(usableScreenHeight);
headerX = usableScreenX;
headerY = usableScreenY;
diff --git a/tuxbox/neutrino/src/gui/filebrowser.cpp b/tuxbox/neutrino/src/gui/filebrowser.cpp
index 0fa1464..a1c3571 100644
--- a/tuxbox/neutrino/src/gui/filebrowser.cpp
+++ b/tuxbox/neutrino/src/gui/filebrowser.cpp
@@ -41,6 +41,7 @@
#include <gui/widget/messagebox.h>
#include <driver/encoding.h>
+#include <driver/screen_max.h>
#include <algorithm>
#include <iostream>
@@ -62,8 +63,6 @@
#include <curl/easy.h>
#endif
-#include <driver/encoding.h>
-
#include <xmltree/xmlinterface.h>
#ifdef __USE_FILE_OFFSET64
@@ -382,11 +381,11 @@ void CFileBrowser::commonInit()
selected = 0;
selections.clear();
- x = g_settings.screen_StartX + 20;
- y = g_settings.screen_StartY + 20;
+ width = w_max(720, 40);
+ height = h_max(576, 40);
- width = (g_settings.screen_EndX - g_settings.screen_StartX - 40);
- height = (g_settings.screen_EndY - g_settings.screen_StartY - 40);
+ x = getScreenStartX(width);
+ y = getScreenStartY(height);
theight = fnt_title->getHeight();
fheight = fnt_item->getHeight();
diff --git a/tuxbox/neutrino/src/gui/motorcontrol.cpp b/tuxbox/neutrino/src/gui/motorcontrol.cpp
index 8fc3b5c..1cc6328 100644
--- a/tuxbox/neutrino/src/gui/motorcontrol.cpp
+++ b/tuxbox/neutrino/src/gui/motorcontrol.cpp
@@ -67,8 +67,8 @@ CMotorControl::CMotorControl()
width = w_max (550, 30);
height = h_max (head_height + status_height + menue_height, 30);
- x = ((720 - width) >> 1);
- y = (576 - height) >> 1;
+ x = getScreenStartX (width);
+ y = getScreenStartY (height);
stepSize = 1; //default: 1 step
stepMode = STEP_MODE_TIMED;
diff --git a/tuxbox/neutrino/src/gui/moviebrowser.cpp b/tuxbox/neutrino/src/gui/moviebrowser.cpp
index e3b411d..e00ea28 100644
--- a/tuxbox/neutrino/src/gui/moviebrowser.cpp
+++ b/tuxbox/neutrino/src/gui/moviebrowser.cpp
@@ -58,6 +58,7 @@
#include <algorithm>
#include <stdlib.h>
+#include <driver/screen_max.h>
#include <gui/moviebrowser.h>
#include <gui/movieplayer.h>
#include <gui/filebrowser.h>
@@ -147,11 +148,11 @@ const CMenuOptionChooser::keyval MESSAGEBOX_PARENTAL_LOCKAGE_OPTIONS[MESSAGEBOX_
{ 99, LOCALE_MOVIEBROWSER_INFO_PARENTAL_LOCKAGE_ALWAYS }
};
-#define MAX_WINDOW_WIDTH (g_settings.screen_EndX - g_settings.screen_StartX - 40)
-#define MAX_WINDOW_HEIGHT (g_settings.screen_EndY - g_settings.screen_StartY - 40)
+#define MAX_WINDOW_WIDTH (w_max(720, 40))
+#define MAX_WINDOW_HEIGHT (h_max(576, 40))
-#define MIN_WINDOW_WIDTH ((g_settings.screen_EndX - g_settings.screen_StartX)>>1)
-#define MIN_WINDOW_HEIGHT 200
+#define MIN_WINDOW_WIDTH (w_max(720, 0) >> 1)
+#define MIN_WINDOW_HEIGHT 200
#define TITLE_BACKGROUND_COLOR ((CFBWindow::color_t)COL_MENUHEAD_PLUS_0)
#define TITLE_FONT_COLOR ((CFBWindow::color_t)COL_MENUHEAD)
@@ -589,8 +590,6 @@ void CMovieBrowser::initGlobalSettings(void)
}
/***** Browser List **************/
- m_settings.browserFrameHeight = g_settings.screen_EndY - g_settings.screen_StartY - 20 - ((g_settings.screen_EndY - g_settings.screen_StartY - 20)>>1) - (INTER_FRAME_SPACE>>1);
-
m_settings.browserFrameHeight = 250;
m_settings.browserRowNr = 6;
@@ -622,10 +621,10 @@ void CMovieBrowser::initGlobalSettings(void)
void CMovieBrowser::initFrames(void)
{
//TRACE("[mb]->initFrames\r\n");
- m_cBoxFrame.iX = g_settings.screen_StartX + 10;
- m_cBoxFrame.iY = g_settings.screen_StartY + 10;
- m_cBoxFrame.iWidth = g_settings.screen_EndX - g_settings.screen_StartX - 20;
- m_cBoxFrame.iHeight = g_settings.screen_EndY - g_settings.screen_StartY - 20;
+ m_cBoxFrame.iWidth = w_max(720, 20);
+ m_cBoxFrame.iHeight = h_max(720, 20);
+ m_cBoxFrame.iX = getScreenStartX(m_cBoxFrame.iWidth);
+ m_cBoxFrame.iY = getScreenStartY(m_cBoxFrame.iHeight);
m_cBoxFrameTitleRel.iX = 0;
m_cBoxFrameTitleRel.iY = 0;
diff --git a/tuxbox/neutrino/src/gui/pictureviewer.cpp b/tuxbox/neutrino/src/gui/pictureviewer.cpp
index 1ecaa4a..b4c578a 100644
--- a/tuxbox/neutrino/src/gui/pictureviewer.cpp
+++ b/tuxbox/neutrino/src/gui/pictureviewer.cpp
@@ -122,11 +122,7 @@ int CPictureViewerGui::exec(CMenuTarget* parent, const std::string & /*actionKey
struct stat sFileInfo;
selected = 0;
width = w_max (710, 30);
- if((g_settings.screen_EndX- g_settings.screen_StartX) < width)
- width=(g_settings.screen_EndX- g_settings.screen_StartX);
- height = 570;
- if((g_settings.screen_EndY- g_settings.screen_StartY) < height)
- height=(g_settings.screen_EndY- g_settings.screen_StartY);
+ height = h_max (570, 0);
sheight = g_Font[SNeutrinoSettings::FONT_TYPE_INFOBAR_SMALL]->getHeight();
buttonHeight = std::min(25, sheight);
diff --git a/tuxbox/neutrino/src/gui/pluginlist.cpp b/tuxbox/neutrino/src/gui/pluginlist.cpp
index 342f005..cc46e71 100644
--- a/tuxbox/neutrino/src/gui/pluginlist.cpp
+++ b/tuxbox/neutrino/src/gui/pluginlist.cpp
@@ -75,22 +75,6 @@ CPluginList::CPluginList(const neutrino_locale_t Name, const uint listtype)
name = Name;
pluginlisttype = listtype;
selected = 0;
- width = w_max (500, 100);
- if(width>(g_settings.screen_EndX-g_settings.screen_StartX))
- width=(g_settings.screen_EndX-g_settings.screen_StartX);
- height = 526;
- if((height+50)>(g_settings.screen_EndY-g_settings.screen_StartY))
- height=(g_settings.screen_EndY-g_settings.screen_StartY) - 50; // 2*25 pixel frei
- theight = g_Font[SNeutrinoSettings::FONT_TYPE_MENU_TITLE]->getHeight();
- //
- fheight1 = g_Font[SNeutrinoSettings::FONT_TYPE_GAMELIST_ITEMLARGE]->getHeight();
- fheight2 = g_Font[SNeutrinoSettings::FONT_TYPE_GAMELIST_ITEMSMALL]->getHeight();
- fheight = fheight1 + fheight2 + 2;
- //
- listmaxshow = (height-theight-0)/fheight;
- height = theight+0+listmaxshow*fheight; // recalc height
- x = getScreenStartX (width);
- y = getScreenStartY (height);
liststart = 0;
}
@@ -302,11 +286,13 @@ void CPluginList::paint()
{
hide();
width = w_max (500, 100);
- if(width>(g_settings.screen_EndX-g_settings.screen_StartX))
- width=(g_settings.screen_EndX-g_settings.screen_StartX);
- height = 526;
- if((height+50)>(g_settings.screen_EndY-g_settings.screen_StartY))
- height=(g_settings.screen_EndY-g_settings.screen_StartY) - 50; // 2*25 pixel frei
+ height = h_max (526, 50);
+ theight = g_Font[SNeutrinoSettings::FONT_TYPE_MENU_TITLE]->getHeight();
+ //
+ fheight1 = g_Font[SNeutrinoSettings::FONT_TYPE_GAMELIST_ITEMLARGE]->getHeight();
+ fheight2 = g_Font[SNeutrinoSettings::FONT_TYPE_GAMELIST_ITEMSMALL]->getHeight();
+ fheight = fheight1 + fheight2 + 2;
+ //
listmaxshow = (height-theight-0)/fheight;
height = theight+0+listmaxshow*fheight; // recalc height
x = getScreenStartX (width);
diff --git a/tuxbox/neutrino/src/gui/scan.cpp b/tuxbox/neutrino/src/gui/scan.cpp
index b1d7bc1..e896052 100644
--- a/tuxbox/neutrino/src/gui/scan.cpp
+++ b/tuxbox/neutrino/src/gui/scan.cpp
@@ -75,9 +75,9 @@ CScanTs::CScanTs()
hheight = g_Font[SNeutrinoSettings::FONT_TYPE_MENU_TITLE]->getHeight();
mheight = g_Font[SNeutrinoSettings::FONT_TYPE_MENU]->getHeight();
width = w_max (500, 100);
- height = hheight + (9 * mheight); //9 lines
+ height = h_max (hheight + 9 * mheight, 0); //9 lines
x = getScreenStartX (width);
- y = (576 - height) >> 1;
+ y = getScreenStartY (height);
radar = 0;
xpos_radar = x + 420;
ypos_radar = y + hheight + (mheight >> 1);
diff --git a/tuxbox/neutrino/src/gui/streaminfo.cpp b/tuxbox/neutrino/src/gui/streaminfo.cpp
index f5e541d..4e947b0 100644
--- a/tuxbox/neutrino/src/gui/streaminfo.cpp
+++ b/tuxbox/neutrino/src/gui/streaminfo.cpp
@@ -40,7 +40,7 @@ CStreamInfo::CStreamInfo()
hheight = g_Font[SNeutrinoSettings::FONT_TYPE_MENU_TITLE]->getHeight();
mheight = g_Font[SNeutrinoSettings::FONT_TYPE_MENU]->getHeight();
width = w_max (400, 50);
- height = hheight+14*mheight+ 10;
+ height = h_max (hheight + 14 * mheight + 10, 0);
x = getScreenStartX (width);
y = getScreenStartY (height);
diff --git a/tuxbox/neutrino/src/gui/timerlist.cpp b/tuxbox/neutrino/src/gui/timerlist.cpp
index 977584b..3fd11c8 100644
--- a/tuxbox/neutrino/src/gui/timerlist.cpp
+++ b/tuxbox/neutrino/src/gui/timerlist.cpp
@@ -254,10 +254,6 @@ CTimerList::CTimerList()
frameBuffer = CFrameBuffer::getInstance();
visible = false;
selected = 0;
- width = w_max (600, 50);
-
- x = getScreenStartX (width);
- y = getScreenStartY (height+INFO_HEIGHT);
liststart = 0;
Timer = new CTimerdClient();
skipEventID=0;
@@ -417,6 +413,7 @@ void CTimerList::updateEvents(void)
}
sort(timerlist.begin(), timerlist.end());
+ width = w_max(600, 50);
height = h_max(576, INFO_HEIGHT+50);
listmaxshow = (height-theight-0)/(fheight*2);
height = theight+0+listmaxshow*fheight*2; // recalc height
diff --git a/tuxbox/neutrino/src/gui/upnpbrowser.cpp b/tuxbox/neutrino/src/gui/upnpbrowser.cpp
index d718bea..06d7ff2 100644
--- a/tuxbox/neutrino/src/gui/upnpbrowser.cpp
+++ b/tuxbox/neutrino/src/gui/upnpbrowser.cpp
@@ -46,6 +46,7 @@
#include <driver/encoding.h>
#include <driver/fontrenderer.h>
#include <driver/rcinput.h>
+#include <driver/screen_max.h>
#include <driver/audioplay.h>
#include <driver/audiofile.h>
#include <driver/audiometadata.h>
@@ -133,12 +134,8 @@ int CUpnpBrowserGui::exec(CMenuTarget* parent, const std::string & /*actionKey*/
// set zapit in standby mode
g_Zapit->setStandby(true);
- m_width = 710;
- if((g_settings.screen_EndX - g_settings.screen_StartX) < m_width+ConnectLineBox_Width)
- m_width=(g_settings.screen_EndX - g_settings.screen_StartX) - ConnectLineBox_Width;
- m_height = 570;
- if((g_settings.screen_EndY - g_settings.screen_StartY) < m_height)
- m_height = (g_settings.screen_EndY - g_settings.screen_StartY);
+ m_width = w_max(710, ConnectLineBox_Width);
+ m_height = h_max(570, 0);
m_sheight = g_Font[SNeutrinoSettings::FONT_TYPE_INFOBAR_SMALL]->getHeight();
m_buttonHeight = std::min(25, m_sheight);
m_theight = g_Font[SNeutrinoSettings::FONT_TYPE_MENU_TITLE]->getHeight();
@@ -149,9 +146,8 @@ int CUpnpBrowserGui::exec(CMenuTarget* parent, const std::string & /*actionKey*/
m_listmaxshow = (m_height - m_info_height - m_title_height - m_theight - 2*m_buttonHeight) / (m_fheight);
m_height = m_theight + m_info_height + m_title_height + 2*m_buttonHeight + m_listmaxshow * m_fheight; // recalc height
- m_x = (((g_settings.screen_EndX - g_settings.screen_StartX) - (m_width + ConnectLineBox_Width)) / 2)
- + g_settings.screen_StartX + ConnectLineBox_Width;
- m_y = (((g_settings.screen_EndY- g_settings.screen_StartY) - m_height)/ 2) + g_settings.screen_StartY;
+ m_x = getScreenStartX(m_width + ConnectLineBox_Width) + ConnectLineBox_Width;
+ m_y = getScreenStartY(m_height);
// Stop sectionsd
g_Sectionsd->setPauseScanning(true);
diff --git a/tuxbox/neutrino/src/gui/widget/colorchooser.cpp b/tuxbox/neutrino/src/gui/widget/colorchooser.cpp
index 9275ebe..ed57401 100644
--- a/tuxbox/neutrino/src/gui/widget/colorchooser.cpp
+++ b/tuxbox/neutrino/src/gui/widget/colorchooser.cpp
@@ -40,6 +40,7 @@
#include <driver/fontrenderer.h>
#include <driver/rcinput.h>
+#include <driver/screen_max.h>
#include <gui/color.h>
#include <gui/widget/messagebox.h>
@@ -71,10 +72,10 @@ CColorChooser::CColorChooser(const neutrino_locale_t Name, unsigned char *R, uns
mheight = g_Font[SNeutrinoSettings::FONT_TYPE_MENU]->getHeight();
observer = Observer;
name = Name;
- width = 360;
- height = hheight + mheight * 4 + 4;
- x=((720-width) >> 1) -20;
- y=(576-height)>>1;
+ width = w_max(360, 0);
+ height = h_max(hheight + mheight * 4 + 4, 0);
+ x = getScreenStartX(width);
+ y = getScreenStartY(height);
value[VALUE_R] = R;
value[VALUE_G] = G;
diff --git a/tuxbox/neutrino/src/gui/widget/hintbox.cpp b/tuxbox/neutrino/src/gui/widget/hintbox.cpp
index 810de05..9cda7f4 100644
--- a/tuxbox/neutrino/src/gui/widget/hintbox.cpp
+++ b/tuxbox/neutrino/src/gui/widget/hintbox.cpp
@@ -40,7 +40,7 @@
#include <neutrino.h>
#include <driver/screen_max.h>
-#define HINTBOX_MAX_HEIGHT 420
+#define HINTBOX_MAX_HEIGHT (h_max(420, 0))
CHintBox::CHintBox(const neutrino_locale_t Caption, const char * const Text, const int Width, const char * const Icon)
@@ -135,8 +135,8 @@ void CHintBox::paint(void)
return;
}
- window = new CFBWindow((((g_settings.screen_EndX- g_settings.screen_StartX) - width ) >> 1) + g_settings.screen_StartX,
- (((g_settings.screen_EndY- g_settings.screen_StartY) - height) >> 2) + g_settings.screen_StartY,
+ window = new CFBWindow(getScreenStartX(width),
+ ((g_settings.screen_EndY - g_settings.screen_StartY - height) >> 2) + g_settings.screen_StartY,
width + SHADOW_OFFSET,
height + SHADOW_OFFSET);
refresh();
diff --git a/tuxbox/neutrino/src/gui/widget/hintboxext.cpp b/tuxbox/neutrino/src/gui/widget/hintboxext.cpp
index 6502a51..023b108 100644
--- a/tuxbox/neutrino/src/gui/widget/hintboxext.cpp
+++ b/tuxbox/neutrino/src/gui/widget/hintboxext.cpp
@@ -191,6 +191,8 @@ void CHintBoxExt::init(const neutrino_locale_t Caption, const int Width, const c
if (nw > m_width)
m_width = nw;
+ m_width = w_max(m_width, SHADOW_OFFSET);
+
m_window = NULL;
}
@@ -207,8 +209,8 @@ void CHintBoxExt::paint(void)
return;
}
- m_window = new CFBWindow((((g_settings.screen_EndX- g_settings.screen_StartX) - m_width ) >> 1) + g_settings.screen_StartX,
- (((g_settings.screen_EndY- g_settings.screen_StartY) - m_height) >> 2) + g_settings.screen_StartY,
+ m_window = new CFBWindow(getScreenStartX(m_width),
+ ((g_settings.screen_EndY - g_settings.screen_StartY - m_height) >> 2) + g_settings.screen_StartY,
m_width + SHADOW_OFFSET,
m_height + SHADOW_OFFSET);
refresh();
diff --git a/tuxbox/neutrino/src/gui/widget/keychooser.cpp b/tuxbox/neutrino/src/gui/widget/keychooser.cpp
index 7965af6..f45b291 100644
--- a/tuxbox/neutrino/src/gui/widget/keychooser.cpp
+++ b/tuxbox/neutrino/src/gui/widget/keychooser.cpp
@@ -38,6 +38,8 @@
#include <global.h>
#include <neutrino.h>
+#include <driver/screen_max.h>
+
#include <gui/color.h>
@@ -154,10 +156,10 @@ void CKeyChooserItem::paint()
int hheight = g_Font[SNeutrinoSettings::FONT_TYPE_MENU_TITLE]->getHeight();
int mheight = g_Font[SNeutrinoSettings::FONT_TYPE_MENU]->getHeight();
- width = 350;
- height = hheight + 2 * mheight;
- x = ((720-width) >> 1) -20;
- y = (576-height) >> 1;
+ width = w_max(350, 0);
+ height = h_max(hheight + 2 * mheight, 0);
+ x = getScreenStartX(width);
+ y = getScreenStartY(height);
CFrameBuffer * frameBuffer = CFrameBuffer::getInstance();
diff --git a/tuxbox/neutrino/src/gui/widget/lcdcontroler.cpp b/tuxbox/neutrino/src/gui/widget/lcdcontroler.cpp
index 0de8ad5..b0ccb48 100644
--- a/tuxbox/neutrino/src/gui/widget/lcdcontroler.cpp
+++ b/tuxbox/neutrino/src/gui/widget/lcdcontroler.cpp
@@ -37,6 +37,7 @@
#include <driver/fontrenderer.h>
#include <driver/rcinput.h>
+#include <driver/screen_max.h>
#include <gui/color.h>
#include <gui/widget/messagebox.h>
@@ -57,10 +58,10 @@ CLcdControler::CLcdControler(const neutrino_locale_t Name, CChangeObserver* Obse
mheight = g_Font[SNeutrinoSettings::FONT_TYPE_MENU]->getHeight();
observer = Observer;
name = Name;
- width = 390;
- height = hheight+ mheight* 4+ +mheight/2;
- x=((720-width) >> 1) -20;
- y=(576-height)>>1;
+ width = w_max(390, 0);
+ height = h_max(hheight + mheight * 4 + mheight / 2, 0);
+ x = getScreenStartX(width);
+ y = getScreenStartY(height);
contrast = CLCD::getInstance()->getContrast();
brightness = CLCD::getInstance()->getBrightness();
diff --git a/tuxbox/neutrino/src/gui/widget/listbox.cpp b/tuxbox/neutrino/src/gui/widget/listbox.cpp
index e022c0e..8111d98 100644
--- a/tuxbox/neutrino/src/gui/widget/listbox.cpp
+++ b/tuxbox/neutrino/src/gui/widget/listbox.cpp
@@ -40,7 +40,7 @@ CListBox::CListBox(const char * const Caption)
liststart = 0;
selected = 0;
width = w_max (400, 100);
- height = 420;
+ height = h_max (420, 0);
ButtonHeight = 25;
modified = false;
theight = g_Font[SNeutrinoSettings::FONT_TYPE_MENU_TITLE]->getHeight();
diff --git a/tuxbox/neutrino/src/gui/widget/listframe.cpp b/tuxbox/neutrino/src/gui/widget/listframe.cpp
index 2e345cc..d786f82 100644
--- a/tuxbox/neutrino/src/gui/widget/listframe.cpp
+++ b/tuxbox/neutrino/src/gui/widget/listframe.cpp
@@ -50,6 +50,7 @@
#include "stdlib.h"
#include "listframe.h"
+#include <driver/screen_max.h>
#include <gui/widget/icons.h>
#define TEXT_BORDER_WIDTH 8
@@ -57,11 +58,11 @@
#define SCROLL_FRAME_WIDTH 10
#define SCROLL_MARKER_BORDER 2
-#define MAX_WINDOW_WIDTH (g_settings.screen_EndX - g_settings.screen_StartX - 40)
-#define MAX_WINDOW_HEIGHT (g_settings.screen_EndY - g_settings.screen_StartY - 40)
+#define MAX_WINDOW_WIDTH (w_max(720, 40))
+#define MAX_WINDOW_HEIGHT (h_max(576, 40))
-#define MIN_WINDOW_WIDTH ((g_settings.screen_EndX - g_settings.screen_StartX)>>1)
-#define MIN_WINDOW_HEIGHT 40
+#define MIN_WINDOW_WIDTH (w_max(720, 0) >> 1)
+#define MIN_WINDOW_HEIGHT 40
#define TITLE_BACKGROUND_COLOR ((CFBWindow::color_t)COL_MENUHEAD_PLUS_0)
#define HEADER_LIST_BACKGROUND_COLOR ((CFBWindow::color_t)COL_MENUCONTENT_PLUS_0)
@@ -248,10 +249,10 @@ void CListFrame::initVar(void)
m_nCurrentPage = 0;
m_nSelectedLine = 0;
- m_cFrame.iX = g_settings.screen_StartX + ((g_settings.screen_EndX - g_settings.screen_StartX - MIN_WINDOW_WIDTH) >>1);
m_cFrame.iWidth = MIN_WINDOW_WIDTH;
- m_cFrame.iY = g_settings.screen_StartY + ((g_settings.screen_EndY - g_settings.screen_StartY - MIN_WINDOW_HEIGHT) >>1);
m_cFrame.iHeight = MIN_WINDOW_HEIGHT;
+ m_cFrame.iX = getScreenStartX(m_cFrame.iWidth);
+ m_cFrame.iY = getScreenStartY(m_cFrame.iHeight);
m_nMaxHeight = MAX_WINDOW_HEIGHT;
m_nMaxWidth = MAX_WINDOW_WIDTH;
diff --git a/tuxbox/neutrino/src/gui/widget/msgbox.cpp b/tuxbox/neutrino/src/gui/widget/msgbox.cpp
index 5da5679..2c97da5 100644
--- a/tuxbox/neutrino/src/gui/widget/msgbox.cpp
+++ b/tuxbox/neutrino/src/gui/widget/msgbox.cpp
@@ -55,6 +55,7 @@
#include "msgbox.h"
+#include <driver/screen_max.h>
#include <gui/widget/icons.h>
#include <neutrino.h>
@@ -62,11 +63,11 @@
#define ADD_FOOT_HEIGHT 14
#define TEXT_BORDER_WIDTH 8
-#define MAX_WINDOW_WIDTH (g_settings.screen_EndX - g_settings.screen_StartX )
-#define MAX_WINDOW_HEIGHT (g_settings.screen_EndY - g_settings.screen_StartY - 40)
+#define MAX_WINDOW_WIDTH (w_max(720, 0))
+#define MAX_WINDOW_HEIGHT (h_max(576, 40))
-#define MIN_WINDOW_WIDTH (MAX_WINDOW_WIDTH>>1)
-#define MIN_WINDOW_HEIGHT 40
+#define MIN_WINDOW_WIDTH (MAX_WINDOW_WIDTH >> 1)
+#define MIN_WINDOW_HEIGHT 40
#define DEFAULT_TITLE_FONT g_Font[SNeutrinoSettings::FONT_TYPE_MENU_TITLE]
#define DEFAULT_FOOT_FONT g_Font[SNeutrinoSettings::FONT_TYPE_INFOBAR_SMALL]
@@ -140,8 +141,8 @@ CMsgBox::CMsgBox(const char *text,
if(_mode & CENTER)
{
- m_cBoxFrame.iX = g_settings.screen_StartX + ((g_settings.screen_EndX - g_settings.screen_StartX - m_cBoxFrame.iWidth) >>1);
- m_cBoxFrame.iY = g_settings.screen_StartY + ((g_settings.screen_EndY - g_settings.screen_StartY - m_cBoxFrame.iHeight) >>2);
+ m_cBoxFrame.iX = getScreenStartX(m_cBoxFrame.iWidth);
+ m_cBoxFrame.iY = g_settings.screen_StartY + ((g_settings.screen_EndY - g_settings.screen_StartY - m_cBoxFrame.iHeight) >> 2);
}
m_nResult = default_result;
@@ -236,10 +237,10 @@ void CMsgBox::initVar(void)
m_nWindowFrameBorderWidth = 0;
// set the main frame to default
- m_cBoxFrame.iX = g_settings.screen_StartX + ((g_settings.screen_EndX - g_settings.screen_StartX - MIN_WINDOW_WIDTH) >>1);
m_cBoxFrame.iWidth = MIN_WINDOW_WIDTH;
- m_cBoxFrame.iY = g_settings.screen_StartY + ((g_settings.screen_EndY - g_settings.screen_StartY - MIN_WINDOW_HEIGHT) >>2);
m_cBoxFrame.iHeight = MIN_WINDOW_HEIGHT;
+ m_cBoxFrame.iX = getScreenStartX(m_cBoxFrame.iWidth);
+ m_cBoxFrame.iY = g_settings.screen_StartY + ((g_settings.screen_EndY - g_settings.screen_StartY - m_cBoxFrame.iHeight) >> 2);
m_pcWindow = NULL;
@@ -772,8 +773,8 @@ bool CMsgBox::setText(const std::string* newText)
// since the frames size has changed, we have to recenter the window again */
if(m_nMode & CENTER)
{
- m_cBoxFrame.iX = g_settings.screen_StartX + ((g_settings.screen_EndX - g_settings.screen_StartX - m_cBoxFrame.iWidth) >>1);
- m_cBoxFrame.iY = g_settings.screen_StartY + ((g_settings.screen_EndY - g_settings.screen_StartY - m_cBoxFrame.iHeight) >>1);
+ m_cBoxFrame.iX = getScreenStartX(m_cBoxFrame.iWidth);
+ m_cBoxFrame.iY = g_settings.screen_StartY + ((g_settings.screen_EndY - g_settings.screen_StartY - m_cBoxFrame.iHeight) >> 2);
}
}
}
@@ -852,11 +853,13 @@ int ShowMsg2UTF( const char * const Title,
//CMsgBox::CENTER |
//CMsgBox::AUTO_WIDTH |
//CMsgBox::AUTO_HIGH;
- CBox position ( g_settings.screen_StartX+30,
- g_settings.screen_StartY+30,
- g_settings.screen_EndX - g_settings.screen_StartX-60,
- g_settings.screen_EndY - g_settings.screen_StartY-60);
-
+
+ int width = w_max(720, 60);
+ int height = h_max(576, 60);
+ int x = getScreenStartX(width);
+ int y = getScreenStartY(height);
+ CBox position(x, y, width, height);
+
int oldfontsize = g_Font[SNeutrinoSettings::FONT_TYPE_EPG_INFO2]->getSize();
bool bigfonts = false;
int ret, res;
diff --git a/tuxbox/neutrino/src/gui/widget/progresswindow.cpp b/tuxbox/neutrino/src/gui/widget/progresswindow.cpp
index e0a27b8..a00c60e 100644
--- a/tuxbox/neutrino/src/gui/widget/progresswindow.cpp
+++ b/tuxbox/neutrino/src/gui/widget/progresswindow.cpp
@@ -34,6 +34,7 @@
#include <driver/fontrenderer.h>
#include <driver/rcinput.h>
+#include <driver/screen_max.h>
#include <gui/color.h>
@@ -43,14 +44,14 @@ CProgressWindow::CProgressWindow()
frameBuffer = CFrameBuffer::getInstance();
hheight = g_Font[SNeutrinoSettings::FONT_TYPE_MENU_TITLE]->getHeight();
mheight = g_Font[SNeutrinoSettings::FONT_TYPE_MENU]->getHeight();
- width = 500;
- height = hheight+5*mheight+20;
+ width = w_max(500, 0);
+ height = h_max(hheight + 5 * mheight + 20, 0);
global_progress = local_progress = 101;
statusText = "";
- x= ( ( ( g_settings.screen_EndX- g_settings.screen_StartX ) - width ) >> 1 ) + g_settings.screen_StartX;
- y=(576-height)>>1;
+ x = getScreenStartX(width);
+ y = getScreenStartY(height);
progressbar_x = x + 10;
progressbar_h = 16;
diff --git a/tuxbox/neutrino/src/gui/widget/rgbcsynccontroler.cpp b/tuxbox/neutrino/src/gui/widget/rgbcsynccontroler.cpp
index 9d57c72..54aa9b2 100644
--- a/tuxbox/neutrino/src/gui/widget/rgbcsynccontroler.cpp
+++ b/tuxbox/neutrino/src/gui/widget/rgbcsynccontroler.cpp
@@ -37,6 +37,7 @@
#include <driver/fontrenderer.h>
#include <driver/rcinput.h>
+#include <driver/screen_max.h>
#include <gui/color.h>
#include <gui/widget/messagebox.h>
@@ -57,10 +58,10 @@ CRGBCSyncControler::CRGBCSyncControler(const neutrino_locale_t Name, unsigned ch
mheight = g_Font[SNeutrinoSettings::FONT_TYPE_MENU]->getHeight() + 6;
observer = Observer;
name = Name;
- width = 390;
- height = hheight+ mheight* 1+ +mheight/2;
- x=((720-width) >> 1) -20;
- y=(576-height)>>1;
+ width = w_max(390, 0);
+ height = h_max(hheight + mheight * 1 + mheight / 2, 0);
+ x = getScreenStartX(width);
+ y = getScreenStartY(height);
csync=Csync;
}
diff --git a/tuxbox/neutrino/src/gui/widget/stringinput.cpp b/tuxbox/neutrino/src/gui/widget/stringinput.cpp
index 90a7402..1adff4b 100644
--- a/tuxbox/neutrino/src/gui/widget/stringinput.cpp
+++ b/tuxbox/neutrino/src/gui/widget/stringinput.cpp
@@ -37,6 +37,7 @@
#include <driver/fontrenderer.h>
#include <driver/rcinput.h>
+#include <driver/screen_max.h>
#include <gui/color.h>
@@ -124,8 +125,8 @@ void CStringInput::init()
height += iheight;
}
- x = ((720-width)>>1);
- y = ((500-height)>>1);
+ x = getScreenStartX(width);
+ y = getScreenStartY(height);
}
void CStringInput::NormalKeyPressed(const neutrino_msg_t key)
diff --git a/tuxbox/neutrino/src/gui/widget/stringinput_ext.cpp b/tuxbox/neutrino/src/gui/widget/stringinput_ext.cpp
index 8394197..3d94ccb 100644
--- a/tuxbox/neutrino/src/gui/widget/stringinput_ext.cpp
+++ b/tuxbox/neutrino/src/gui/widget/stringinput_ext.cpp
@@ -37,6 +37,7 @@
#include <driver/fontrenderer.h>
#include <driver/rcinput.h>
+#include <driver/screen_max.h>
#include <gui/color.h>
@@ -70,8 +71,8 @@ CExtendedInput::CExtendedInput(const neutrino_locale_t Name, char* Value, const
// if (hint_2 != NULL)
height += iheight;
- x = ((720-width)>>1);
- y = ((500-height)>>1);
+ x = getScreenStartX(width);
+ y = getScreenStartY(height);
}
CExtendedInput::~CExtendedInput()
@@ -115,8 +116,8 @@ void CExtendedInput::calculateDialog()
// if (hint_2 != NULL)
height += iheight;
- x = ((720-width)>>1);
- y = ((500-height)>>1);
+ x = getScreenStartX(width);
+ y = getScreenStartY(height);
}
diff --git a/tuxbox/neutrino/src/gui/widget/textbox.cpp b/tuxbox/neutrino/src/gui/widget/textbox.cpp
index b28fa90..663f2c2 100644
--- a/tuxbox/neutrino/src/gui/widget/textbox.cpp
+++ b/tuxbox/neutrino/src/gui/widget/textbox.cpp
@@ -55,17 +55,18 @@
#endif
#include "textbox.h"
+#include <driver/screen_max.h>
#include <gui/widget/icons.h>
#define TEXT_BORDER_WIDTH 8
#define SCROLL_FRAME_WIDTH 15
#define SCROLL_MARKER_BORDER 2
-#define MAX_WINDOW_WIDTH (g_settings.screen_EndX - g_settings.screen_StartX - 40)
-#define MAX_WINDOW_HEIGHT (g_settings.screen_EndY - g_settings.screen_StartY - 40)
+#define MAX_WINDOW_WIDTH (w_max(720, 40))
+#define MAX_WINDOW_HEIGHT (h_max(576, 40))
-#define MIN_WINDOW_WIDTH ((g_settings.screen_EndX - g_settings.screen_StartX)>>1)
-#define MIN_WINDOW_HEIGHT 40
+#define MIN_WINDOW_WIDTH (w_max(720, 0) >> 1)
+#define MIN_WINDOW_HEIGHT 40
//////////////////////////////////////////////////////////////////////
// Construction/Destruction
@@ -218,10 +219,10 @@ void CTextBox::initVar(void)
m_nCurrentLine = 0;
m_nCurrentPage = 0;
- m_cFrame.iX = g_settings.screen_StartX + ((g_settings.screen_EndX - g_settings.screen_StartX - MIN_WINDOW_WIDTH) >>1);
m_cFrame.iWidth = MIN_WINDOW_WIDTH;
- m_cFrame.iY = g_settings.screen_StartY + ((g_settings.screen_EndY - g_settings.screen_StartY - MIN_WINDOW_HEIGHT) >>1);
m_cFrame.iHeight = MIN_WINDOW_HEIGHT;
+ m_cFrame.iX = getScreenStartX(m_cFrame.iWidth);
+ m_cFrame.iY = getScreenStartY(m_cFrame.iHeight);
m_nMaxHeight = MAX_WINDOW_HEIGHT;
m_nMaxWidth = MAX_WINDOW_WIDTH;
commit aaaa235ac2f7113e047f89631bf84c34e7f57d80
Author: Christian Schuett <Gau...@ho...>
Date: Tue Apr 2 20:34:55 2013 +0200
Neutrino locale: remove newline from the end of lines
this avoids paragraph sign in movieplayer help
Signed-off-by: Christian Schuett <Gau...@ho...>
Signed-off-by: Thilo Graf <db...@no...>
diff --git a/tuxbox/neutrino/data/locale/deutsch.locale b/tuxbox/neutrino/data/locale/deutsch.locale
index e09d288..41ad21c 100644
--- a/tuxbox/neutrino/data/locale/deutsch.locale
+++ b/tuxbox/neutrino/data/locale/deutsch.locale
@@ -952,7 +952,7 @@ movieplayer.toomanybookmarks Sie haben bereits zu viele Bookmarks angelegt.\nEs
movieplayer.tshelp1 Stop
movieplayer.tshelp10 ca. 10 Minuten zurück
movieplayer.tshelp11 ca. 10 Minuten vor
-movieplayer.tshelp12 Hilfe: http://www.giggo.de/dbox2/movieplayer.html\n
+movieplayer.tshelp12 Hilfe: http://www.giggo.de/dbox2/movieplayer.html
movieplayer.tshelp13 Springe zu ...
movieplayer.tshelp14 Springe zum Filmanfang
movieplayer.tshelp15 Springe zum Filmende
@@ -977,7 +977,7 @@ movieplayer.vcdplayback (S)VCD
movieplayer.vlchelp1 Stop
movieplayer.vlchelp10 ca. 10 Minuten zurück
movieplayer.vlchelp11 ca. 10 Minuten vor
-movieplayer.vlchelp12 Hilfe: http://www.giggo.de/dbox2/movieplayer.html\n
+movieplayer.vlchelp12 Hilfe: http://www.giggo.de/dbox2/movieplayer.html
movieplayer.vlchelp13 Springe zu ...
movieplayer.vlchelp14 Technische Informationen
movieplayer.vlchelp15 Nächste Datei in Playlist
diff --git a/tuxbox/neutrino/data/locale/english.locale b/tuxbox/neutrino/data/locale/english.locale
index 7f92551..3627fa3 100644
--- a/tuxbox/neutrino/data/locale/english.locale
+++ b/tuxbox/neutrino/data/locale/english.locale
@@ -952,7 +952,7 @@ movieplayer.toomanybookmarks There are too many bookmarks.\nYou need to delete o
movieplayer.tshelp1 Stop
movieplayer.tshelp10 approx. 10 minutes back
movieplayer.tshelp11 skip approx. 10 minutes
-movieplayer.tshelp12 Help: http://www.giggo.de/dbox2/movieplayer.html\n
+movieplayer.tshelp12 Help: http://www.giggo.de/dbox2/movieplayer.html
movieplayer.tshelp13 skip to ...
movieplayer.tshelp14 skip to beginning
movieplayer.tshelp15 skip to end
@@ -977,7 +977,7 @@ movieplayer.vcdplayback (S)VCD
movieplayer.vlchelp1 Stop
movieplayer.vlchelp10 approx. 10 minutes back
movieplayer.vlchelp11 skip approx. 10 minutes
-movieplayer.vlchelp12 Help: http://www.giggo.de/dbox2/movieplayer.html\n
+movieplayer.vlchelp12 Help: http://www.giggo.de/dbox2/movieplayer.html
movieplayer.vlchelp13 skip to ...
movieplayer.vlchelp14 Technical information
movieplayer.vlchelp15 Next item in playlist
commit d55b2c57052a0e560da9fd352611589b5c54e9cc
Author: Stefan Seyfried <se...@tu...>
Date: Mon Apr 1 22:43:40 2013 +0200
libconfigfile: update config file atomically when saving
Signed-off-by: GetAway <get...@t-...>
Signed-off-by: Thilo Graf <db...@no...>
diff --git a/misc/libs/libconfigfile/configfile.cpp b/misc/libs/libconfigfile/configfile.cpp
index c8bdb47..d3a6640 100644
--- a/misc/libs/libconfigfile/configfile.cpp
+++ b/misc/libs/libconfigfile/configfile.cpp
@@ -29,6 +29,8 @@
#include <sstream>
#include <string>
#include <cstdlib> // atoi...
+#include <cerrno>
+#include <cstring>
#include <sys/stat.h>
@@ -90,7 +92,9 @@ bool CConfigFile::loadConfig(const std::string & filename)
bool CConfigFile::saveConfig(const char * const filename)
{
- std::fstream configFile(filename);
+ std::string tmpname = std::string(filename) + ".tmp";
+ unlink(tmpname.c_str());
+ std::fstream configFile(tmpname.c_str(), std::ios::out);
if (configFile != NULL)
{
@@ -99,17 +103,21 @@ bool CConfigFile::saveConfig(const char * const filename)
{
configFile << it->first << "=" << it->second << std::endl;
}
+
configFile.sync();
configFile.close();
- chmod(filename, S_IRUSR | S_IWUSR | S_IRGRP | S_IROTH);
+ chmod(tmpname.c_str(), S_IRUSR | S_IWUSR | S_IRGRP | S_IROTH);
+ /* TODO: check available space? */
+ rename(tmpname.c_str(), filename);
modifiedFlag = false;
return true;
}
else
{
- std::cerr << "[ConfigFile] Unable to open file " << filename << " for writing." << std::endl;
+ std::cerr << "[ConfigFile] Unable to open file " << tmpname << " for writing: "
+ << strerror(errno) << std::endl;
return false;
}
}
@@ -399,7 +407,7 @@ void CConfigFile::setInt32Vector(const std::string & key, const std::vector<int3
if (it == vec.end())
break;
s << (*it);
- it++;
+ ++it;
if (it == vec.end())
break;
s << delimiter;
@@ -424,7 +432,7 @@ void CConfigFile::setStringVector(const std::string & key, const std::vector<std
if (it == vec.end())
break;
newVal += *it;
- it++;
+ ++it;
if (it == vec.end())
break;
newVal += delimiter;
commit c04ce058e4b64fdfe2c74072be861a579324ded0
Author: Stefan Seyfried <se...@tu...>
Date: Mon Apr 1 21:13:30 2013 +0200
configfile: do a partial sync() after saving
Signed-off-by: GetAway <get...@t-...>
Signed-off-by: Thilo Graf <db...@no...>
diff --git a/misc/libs/libconfigfile/configfile.cpp b/misc/libs/libconfigfile/configfile.cpp
index 9f96ac0..c8bdb47 100644
--- a/misc/libs/libconfigfile/configfile.cpp
+++ b/misc/libs/libconfigfile/configfile.cpp
@@ -90,15 +90,16 @@ bool CConfigFile::loadConfig(const std::string & filename)
bool CConfigFile::saveConfig(const char * const filename)
{
- std::ofstream configFile(filename);
+ std::fstream configFile(filename);
if (configFile != NULL)
{
- for (ConfigDataMap::const_iterator it = configData.begin(); it != configData.end(); it++)
+ std::cout << "[ConfigFile] saving " << filename << std::endl;
+ for (ConfigDataMap::const_iterator it = configData.begin(); it != configData.end(); ++it)
{
configFile << it->first << "=" << it->second << std::endl;
}
-
+ configFile.sync();
configFile.close();
chmod(filename, S_IRUSR | S_IWUSR | S_IRGRP | S_IROTH);
commit 32a52d7fe15b3d09cdfe2e33783fd8b374f324f1
Author: Christian Schuett <Gau...@ho...>
Date: Sun Mar 31 21:55:24 2013 +0200
Neutrino timer list: use h_max() for height calculation
Signed-off-by: Christian Schuett <Gau...@ho...>
Signed-off-by: Thilo Graf <db...@no...>
diff --git a/tuxbox/neutrino/src/gui/timerlist.cpp b/tuxbox/neutrino/src/gui/timerlist.cpp
index e28cfd8..977584b 100644
--- a/tuxbox/neutrino/src/gui/timerlist.cpp
+++ b/tuxbox/neutrino/src/gui/timerlist.cpp
@@ -417,7 +417,7 @@ void CTimerList::updateEvents(void)
}
sort(timerlist.begin(), timerlist.end());
- height = (g_settings.screen_EndY-g_settings.screen_StartY)-(INFO_HEIGHT+50);
+ height = h_max(576, INFO_HEIGHT+50);
listmaxshow = (height-theight-0)/(fheight*2);
height = theight+0+listmaxshow*fheight*2; // recalc height
if(timerlist.size() < listmaxshow)
commit 782fbb88514b258334cfd99676d6bb5dca8450d9
Author: Christian Schuett <Gau...@ho...>
Date: Sun Mar 31 21:27:13 2013 +0200
Neutrino bookmark manager: remove duplicate code and use h_max()
Signed-off-by: Christian Schuett <Gau...@ho...>
Signed-off-by: Thilo Graf <db...@no...>
diff --git a/tuxbox/neutrino/src/gui/bookmarkmanager.cpp b/tuxbox/neutrino/src/gui/bookmarkmanager.cpp
index 084a7df..099dc37 100644
--- a/tuxbox/neutrino/src/gui/bookmarkmanager.cpp
+++ b/tuxbox/neutrino/src/gui/bookmarkmanager.cpp
@@ -237,12 +237,9 @@ const CBookmark * CBookmarkManager::getBookmark(CMenuTarget* parent)
frameBuffer->getIconSize(NEUTRINO_ICON_BOOKMARKMANAGER, &iconw, &iconh);
theight = std::max(iconh, g_Font[SNeutrinoSettings::FONT_TYPE_MENU_TITLE]->getHeight());
fheight = g_Font[SNeutrinoSettings::FONT_TYPE_MENU]->getHeight();
- x = getScreenStartX (width);
- y = getScreenStartY (height + info_height);
- listmaxshow = (height-theight-0)/(fheight*2);
liststart = 0;
- height = (g_settings.screen_EndY-g_settings.screen_StartY)-(info_height+50);
+ height = h_max(576, info_height+50);
listmaxshow = (height-theight-0)/(fheight*2);
height = theight+0+listmaxshow*fheight*2; // recalc height
if(bookmarks.size() < listmaxshow)
commit d48495ced0fb71c06c5e1f93a1eeee23aeee325f
Author: Christian Schuett <Gau...@ho...>
Date: Sun Mar 31 17:06:56 2013 +0200
Neutrino: fix width and height calculation in image and stream info
Signed-off-by: Christian Schuett <Gau...@ho...>
Signed-off-by: Thilo Graf <db...@no...>
diff --git a/tuxbox/neutrino/src/gui/imageinfo.cpp b/tuxbox/neutrino/src/gui/imageinfo.cpp
index b08ac3f..177a9f9 100644
--- a/tuxbox/neutrino/src/gui/imageinfo.cpp
+++ b/tuxbox/neutrino/src/gui/imageinfo.cpp
@@ -77,15 +77,15 @@ CImageInfo::CImageInfo()
iheight = g_Font[font_info]->getHeight();
sheight = g_Font[font_small]->getHeight();
ssheight = g_Font[font_small_text]->getHeight();
+
+ width = w_max(720, 10);
+ height = h_max(572, 10);
- startX = 45; //mainwindow position
- startY = 35;
- endX = 720-startX;
- endY = 572-startY;
-
- width = endX-startX;
- height = endY-startY;
-
+ startX = getScreenStartX(width); //mainwindow position
+ startY = getScreenStartY(height);
+ endX = startX + width;
+ endY = startY + height;
+
#if defined BOXMODEL_DM500 || defined HAVE_IPBOX_HARDWARE
pigw = 180;
pigh = 144;
diff --git a/tuxbox/neutrino/src/gui/streaminfo2.cpp b/tuxbox/neutrino/src/gui/streaminfo2.cpp
index ef9bb75..fa6c992 100644
--- a/tuxbox/neutrino/src/gui/streaminfo2.cpp
+++ b/tuxbox/neutrino/src/gui/streaminfo2.cpp
@@ -56,7 +56,6 @@ CStreamInfo2::CStreamInfo2()
pig = new CPIG (0);
frameBuffer = CFrameBuffer::getInstance();
-
font_head = SNeutrinoSettings::FONT_TYPE_MENU_TITLE;
font_info = SNeutrinoSettings::FONT_TYPE_MENU;
font_small = SNeutrinoSettings::FONT_TYPE_INFOBAR_SMALL;
@@ -65,13 +64,13 @@ CStreamInfo2::CStreamInfo2()
iheight = g_Font[font_info]->getHeight();
sheight = g_Font[font_small]->getHeight();
- x = 60; //mainwindow position
- y = 45;
- endX = 720-x;
- endY = 572-y;
-
- width = endX-x-10;
- height = endY-y;
+ width = w_max(SCREEN_X, 10);
+ height = h_max(SCREEN_Y, 10);
+
+ x = getScreenStartX(width); //mainwindow position
+ y = getScreenStartY(height);
+ endX = x + width;
+ endY = y + height;
max_height = SCREEN_Y-1;
max_width = SCREEN_X-1;
commit e83d957e4555d8cf47359aeb1bc31ebb7feb9fae
Author: Christian Schuett <Gau...@ho...>
Date: Sun Mar 31 16:40:16 2013 +0200
Neutrino channel list: fix height calculation
Signed-off-by: Christian Schuett <Gau...@ho...>
Signed-off-by: Thilo Graf <db...@no...>
diff --git a/tuxbox/neutrino/src/gui/channellist.cpp b/tuxbox/neutrino/src/gui/channellist.cpp
index 0af4288..3f2013e 100644
--- a/tuxbox/neutrino/src/gui/channellist.cpp
+++ b/tuxbox/neutrino/src/gui/channellist.cpp
@@ -145,8 +145,6 @@ void CChannelList::calcSize()
else
width = full_width;
- height = h_max(576 / 20 * 16, 0);
-
/* assuming all color icons must have same size */
int icol_w, icol_h;
frameBuffer->getIconSize(NEUTRINO_ICON_BUTTON_RED, &icol_w, &icol_h);
@@ -161,9 +159,11 @@ void CChannelList::calcSize()
if (fheight == 0)
fheight = 1; /* avoid crash on invalid font */
+ info_height = 2*fheight + g_Font[SNeutrinoSettings::FONT_TYPE_CHANNELLIST_DESCR]->getHeight() + 10;
+ height = h_max(576, info_height);
+
listmaxshow = (height - theight - footerHeight -0)/fheight;
height = theight + footerHeight + listmaxshow * fheight;
- info_height = 2*fheight + g_Font[SNeutrinoSettings::FONT_TYPE_CHANNELLIST_DESCR]->getHeight() + 10;
x = getScreenStartX(full_width);
y = getScreenStartY(height + info_height);
commit 6d05b78afb254a54659d8b26f401e372150247e2
Author: Christian Schuett <Gau...@ho...>
Date: Sun Mar 31 16:01:18 2013 +0200
Neutrino channel list: repaint head after scrolling
to update sat name and time
Signed-off-by: Christian Schuett <Gau...@ho...>
Signed-off-by: Thilo Graf <db...@no...>
diff --git a/tuxbox/neutrino/src/gui/channellist.cpp b/tuxbox/neutrino/src/gui/channellist.cpp
index cc71257..0af4288 100644
--- a/tuxbox/neutrino/src/gui/channellist.cpp
+++ b/tuxbox/neutrino/src/gui/channellist.cpp
@@ -495,6 +495,7 @@ int CChannelList::show()
msg == (g_settings.key_channelList_pageup | CRCInput::RC_Release) ||
msg == (g_settings.key_channelList_pagedown | CRCInput::RC_Release) )
{
+ paintHead();
paintButtonBar();
paintDetails(selected);
}
commit cbb38ce3f9968ed9035725743277e05787ecc646
Author: Christian Schuett <Gau...@ho...>
Date: Sat Mar 30 20:21:08 2013 +0100
Neutrino: only paint PIG in TV mode
Signed-off-by: Christian Schuett <Gau...@ho...>
Signed-off-by: Thilo Graf <db...@no...>
diff --git a/tuxbox/neutrino/src/gui/imageinfo.cpp b/tuxbox/neutrino/src/gui/imageinfo.cpp
index be603d2..b08ac3f 100644
--- a/tuxbox/neutrino/src/gui/imageinfo.cpp
+++ b/tuxbox/neutrino/src/gui/imageinfo.cpp
@@ -65,6 +65,7 @@ extern CRemoteControl * g_RemoteControl; /* neutrino.cpp */
CImageInfo::CImageInfo()
{
+ pig = new CPIG (0);
frameBuffer = CFrameBuffer::getInstance();
font_head = SNeutrinoSettings::FONT_TYPE_MENU_TITLE;
@@ -90,7 +91,7 @@ CImageInfo::CImageInfo()
pigh = 144;
#else
pigw = 215;
- pigh = 170;
+ pigh = 190;
#endif
x = endX - pigw -16;
@@ -120,8 +121,11 @@ int CImageInfo::exec(CMenuTarget* parent, const std::string &)
paint();
- pig = new CPIG (0);
- paint_pig( x, y, pigw, pigh);
+ // paint PIG
+ if (CNeutrinoApp::getInstance()->getMode() == NeutrinoMessages::mode_tv)
+ {
+ paint_pig(x, y, pigw, pigh);
+ }
neutrino_msg_t msg;
@@ -170,7 +174,6 @@ int CImageInfo::exec(CMenuTarget* parent, const std::string &)
}
hide();
- delete pig;
return menu_return::RETURN_REPAINT;
}
@@ -193,6 +196,7 @@ void CImageInfo::paint_pig(int xPig, int yPig, int w, int h)
#else
frameBuffer->paintBoxRel(xPig, yPig, w, h, COL_MENUCONTENT_PLUS_0);
#endif
+ pig->set_coord(0, 0, 0, 0);
pig->show (xPig, yPig, w, h);
}
diff --git a/tuxbox/neutrino/src/gui/streaminfo2.cpp b/tuxbox/neutrino/src/gui/streaminfo2.cpp
index ab1dffe..ef9bb75 100644
--- a/tuxbox/neutrino/src/gui/streaminfo2.cpp
+++ b/tuxbox/neutrino/src/gui/streaminfo2.cpp
@@ -296,6 +296,7 @@ void CStreamInfo2::paint_pig(int _x, int _y, int w, int h)
#else
frameBuffer->paintBoxRel(_x, _y, w, h, COL_BLACK); //black
#endif
+ pig->set_coord(0, 0, 0, 0);
pig->show(_x, _y, w, h);
}
@@ -464,12 +465,15 @@ void CStreamInfo2::paint(int/*mode*/)
ypos = y+hheight+8;
// paint PIG
+ if (CNeutrinoApp::getInstance()->getMode() == NeutrinoMessages::mode_tv)
+ {
#if defined BOXMODEL_DM500 || defined HAVE_IPBOX_HARDWARE
- // the dm500 seems to like only half / quarter resolution...
- paint_pig(pigboxes_x + 60, ypos, 180, 144);
+ // the dm500 seems to like only half / quarter resolution...
+ paint_pig(pigboxes_x + 60, ypos, 180, 144);
#else
- paint_pig( pigboxes_x, ypos , 240, 190);
+ paint_pig(pigboxes_x, ypos, 240, 190);
#endif
+ }
// Info Output
paint_techinfo ( xpos, ypos );
commit 38adb0c12c2a4d21c2fe29b84cf132c3a89c2961
Author: GetAway <get...@t-...>
Date: Sat Mar 30 19:35:35 2013 +0100
Neutrino: improved channellist, speedup scrolling!
there is no need to update events while scrolling
now update responds at key release
Signed-off-by: Christian Schuett <Gau...@ho...>
Signed-off-by: Thilo Graf <db...@no...>
diff --git a/tuxbox/neutrino/src/gui/channellist.cpp b/tuxbox/neutrino/src/gui/channellist.cpp
index 1608a05..cc71257 100644
--- a/tuxbox/neutrino/src/gui/channellist.cpp
+++ b/tuxbox/neutrino/src/gui/channellist.cpp
@@ -319,7 +319,6 @@ void CChannelList::updateSelection(unsigned int newpos)
paintItem(prev_selected - liststart);
paintItem(selected - liststart);
}
- paintDetails(selected);
}
}
@@ -342,10 +341,11 @@ int CChannelList::show()
calcSize();
paintHead();
-// paintButtonBar(); // remove to re-paint buttons
+ paintButtonBar();
// updateEvents();
paintItemDetailsBox();
paint();
+ paintDetails(selected);
int oldselected = selected;
int zapOnExit = false;
@@ -436,9 +436,10 @@ int CChannelList::show()
{
displayList = 1;
paintHead();
- //paintButtonBar(); // remove to re-paint buttons
+ paintButtonBar();
paintItemDetailsBox();
paint();
+ paintDetails(selected);
}
}
else if ( ( msg == CRCInput::RC_yellow ) &&
@@ -449,10 +450,9 @@ int CChannelList::show()
}
else if ( msg == CRCInput::RC_blue )
{
- paintHead(); // update button bar when lines marked to "remove to re-paint buttons" are removed
+ paintHead();
if (g_settings.channellist_additional) {
displayList = !displayList;
- paintButtonBar();
if (!displayList)
showdescription(selected);
else
@@ -461,7 +461,9 @@ int CChannelList::show()
else {
displayNext = !displayNext;
paint();
+ paintDetails(selected);
}
+ paintButtonBar();
}
else if ( msg == CRCInput::RC_help )
{
@@ -483,9 +485,18 @@ int CChannelList::show()
displayList = 1;
paintHead();
- //paintButtonBar(); // remove to re-paint buttons
+ paintButtonBar();
paintItemDetailsBox();
paint();
+ paintDetails(selected);
+ }
+ else if (msg == (CRCInput::RC_up | CRCInput::RC_Release) ||
+ msg == (CRCInput::RC_down | CRCInput::RC_Release) ||
+ msg == (g_settings.key_channelList_pageup | CRCInput::RC_Release) ||
+ msg == (g_settings.key_channelList_pagedown | CRCInput::RC_Release) )
+ {
+ paintButtonBar();
+ paintDetails(selected);
}
else
{
@@ -1259,7 +1270,6 @@ void CChannelList::paintItem(int pos)
int c_rad_small;
uint8_t color;
fb_pixel_t bgcolor;
- bool paintbuttons = false;
unsigned int curr = liststart + pos;
if (curr == selected)
@@ -1268,7 +1278,6 @@ void CChannelList::paintItem(int pos)
bgcolor = COL_MENUCONTENTSELECTED_PLUS_0;
paintItem2DetailsLine(pos);
c_rad_small = RADIUS_SMALL;
- paintbuttons = true;
}
else
{
@@ -1303,10 +1312,6 @@ void CChannelList::paintItem(int pos)
p_event = &chan->currentEvent;
}
- //paint buttons
- if (paintbuttons)
- paintButtonBar();
-
//number
int numpos = x+5+numwidth- g_Font[SNeutrinoSettings::FONT_TYPE_CHANNELLIST_NUMBER]->getRenderWidth(tmp);
g_Font[SNeutrinoSettings::FONT_TYPE_CHANNELLIST_NUMBER]->RenderString(numpos,ypos+fheight, numwidth+5, tmp, color, fheight);
@@ -1404,9 +1409,8 @@ void CChannelList::paintItem(int pos)
// name
g_Font[SNeutrinoSettings::FONT_TYPE_CHANNELLIST]->RenderString(x + 5 + numwidth + 10 + prg_offset, ypos + fheight, width - numwidth - 20 - 12 - prg_offset, nameAndDescription, color);
- if (curr == selected) // at last LCD and Infobox
+ if (curr == selected) // at last LCD
{
- //paintDetails(curr);
CLCD::getInstance()->showMenuText(0, chan->name.c_str(), -1, true); // UTF-8
CLCD::getInstance()->showMenuText(1, p_event->description.c_str());
}
@@ -1459,8 +1463,6 @@ void CChannelList::paintHead()
if (gotTime){
g_Font[SNeutrinoSettings::FONT_TYPE_MENU_TITLE]->RenderString(x + full_width - 10 - timestr_len, y + theight + 2, timestr_len + 1, timestr, COL_MENUHEAD, 0, true); // UTF-8
}
-
- // paintFoot(); // activate to re-paint buttons
}
struct button_label CChannelListButtons[] =
@@ -1547,8 +1549,6 @@ void CChannelList::paint()
{
paintItem(count);
}
-
- paintDetails(selected); // at last reduce flickering of listing
}
void CChannelList::paint_pig (int _x, int _y, int w, int h)
commit 970baf22101354be1ce7ea5636c47794430ef939
Author: GetAway <get...@t-...>
Date: Sat Mar 30 19:20:57 2013 +0100
Neutrino: add MiniTV to Channellist
this patch includes resize of channellist
channellist with additional eventlist/MiniTV
additionally selectable next event for infobox
additionally selectable Tuning-Parameters for infobox
reorder painting of modules
redesign of DetailsItemline
yellow Button for Bouquets
blue-button to switch between description and eventlist
Signed-off-by: Christian Schuett <Gau...@ho...>
Signed-off-by: Thilo Graf <db...@no...>
diff --git a/tuxbox/neutrino/data/locale/deutsch.locale b/tuxbox/neutrino/data/locale/deutsch.locale
index 98f3eb2..e09d288 100644
--- a/tuxbox/neutrino/data/locale/deutsch.locale
+++ b/tuxbox/neutrino/data/locale/deutsch.locale
@@ -218,9 +218,17 @@ bouqueteditor.switchmode TV/Radio
bouquetlist.bouquetselect Bouquet auswählen
bouquetlist.head Bouquets
cablesetup.provider Kabelanbieter
+channellist.additional Zusatzinformatio...
[truncated message content] |
|
From: Thilo G. <tux...@ne...> - 2013-03-22 08:37:49
|
Project "Tuxbox-GIT: apps":
The branch, master has been updated
via d1d728263e78e1bbb10797adc44a380dc6162368 (commit)
via 3c7bde553e4eaa96cecb4f295bac21046d51774b (commit)
from 6c4303efe0bad86e1d152d2181ec12b8bb428034 (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
commit d1d728263e78e1bbb10797adc44a380dc6162368
Author: Michael Liebmann <tux...@gm...>
Date: Thu Mar 21 20:03:34 2013 +0100
CTextBox::scrollPageUp/Down: Suppress refresh when there is nothing to scroll
Signed-off-by: Christian Schuett <Gau...@ho...>
diff --git a/tuxbox/neutrino/src/gui/widget/textbox.cpp b/tuxbox/neutrino/src/gui/widget/textbox.cpp
index 93c26e2..b28fa90 100644
--- a/tuxbox/neutrino/src/gui/widget/textbox.cpp
+++ b/tuxbox/neutrino/src/gui/widget/textbox.cpp
@@ -600,8 +600,10 @@ void CTextBox::scrollPageDown(const int pages)
{
m_nCurrentPage = m_nNrOfPages - 1;
}
+ int oldCurrentLine = m_nCurrentLine;
m_nCurrentLine = m_nCurrentPage * m_nLinesPerPage;
- refresh();
+ if (oldCurrentLine != m_nCurrentLine)
+ refresh();
}
//////////////////////////////////////////////////////////////////////
@@ -627,8 +629,10 @@ void CTextBox::scrollPageUp(const int pages)
{
m_nCurrentPage = 0;
}
+ int oldCurrentLine = m_nCurrentLine;
m_nCurrentLine = m_nCurrentPage * m_nLinesPerPage;
- refresh();
+ if (oldCurrentLine != m_nCurrentLine)
+ refresh();
}
//////////////////////////////////////////////////////////////////////
commit 3c7bde553e4eaa96cecb4f295bac21046d51774b
Author: Christian Schuett <Gau...@ho...>
Date: Thu Mar 21 19:57:48 2013 +0100
Neutrino EPG Viewer: increase max width of more screenings button
ensure that more screenings button caption will not be cut off
even with standard font scale
Signed-off-by: Christian Schuett <Gau...@ho...>
diff --git a/tuxbox/neutrino/src/gui/epgview.cpp b/tuxbox/neutrino/src/gui/epgview.cpp
index 3a6d67a..9ed2678 100644
--- a/tuxbox/neutrino/src/gui/epgview.cpp
+++ b/tuxbox/neutrino/src/gui/epgview.cpp
@@ -977,7 +977,7 @@ void CEpgData::showTimerEventBar(bool _show)
// Button: more screenings
if (!followlist.empty())
- ::paintButtons(frameBuffer, g_Font[SNeutrinoSettings::FONT_TYPE_INFOBAR_SMALL], g_Locale, sx + 8 + 2 * ButtonWidth, by, ButtonWidth, 1, &epgviewButtons[2]);
+ ::paintButtons(frameBuffer, g_Font[SNeutrinoSettings::FONT_TYPE_INFOBAR_SMALL], g_Locale, sx + 8 + 2 * ButtonWidth, by, ButtonWidth, 1, &epgviewButtons[2], 2 * ButtonWidth - 2 * (ICON_LARGE_WIDTH + 2) - 4);
}
-----------------------------------------------------------------------
Summary of changes:
tuxbox/neutrino/src/gui/epgview.cpp | 2 +-
tuxbox/neutrino/src/gui/widget/textbox.cpp | 8 ++++++--
2 files changed, 7 insertions(+), 3 deletions(-)
--
Tuxbox-GIT: apps
|
|
From: Thilo G. <tux...@ne...> - 2013-03-21 06:29:03
|
Project "Tuxbox-GIT: apps":
The branch, master has been updated
via 6c4303efe0bad86e1d152d2181ec12b8bb428034 (commit)
from 4131910966d8e6bd33ba92b7d7db179ba2e088b9 (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
commit 6c4303efe0bad86e1d152d2181ec12b8bb428034
Author: GetAway <get...@t-...>
Date: Wed Mar 20 22:50:20 2013 +0100
sectionsd: increase size of returned NextEvent text
this is need to watch NextEvent in channellist infobox
when using small font zoom factor; old was 50 chars
Signed-off-by: Thilo Graf <db...@no...>
diff --git a/tuxbox/neutrino/daemons/sectionsd/sectionsd.cpp b/tuxbox/neutrino/daemons/sectionsd/sectionsd.cpp
index 633994e..0e2cdf2 100644
--- a/tuxbox/neutrino/daemons/sectionsd/sectionsd.cpp
+++ b/tuxbox/neutrino/daemons/sectionsd/sectionsd.cpp
@@ -1,5 +1,5 @@
//
-// $Id: sectionsd.cpp,v 1.345 2013/03/07 19:30:00 GetAway Exp Exp $
+// $Id: sectionsd.cpp,v 1.346 2013/03/20 22:40:00 GetAway Exp $
//
// sectionsd.cpp (network daemon for SI-sections)
// (dbox-II-project)
@@ -2476,7 +2476,7 @@ static void sendAllEvents(int connfd, t_channel_id serviceUniqueKey, bool oldFor
count += sizeof(event_id_t) + 4 + 4 + (*e)->getName().length() + 1;
if (((*e)->getText()).empty())
{
- count += (*e)->getExtendedText().substr(0, 50).length();
+ count += (*e)->getExtendedText().substr(0, 95).length();
}
else
{
@@ -2497,7 +2497,7 @@ static void sendAllEvents(int connfd, t_channel_id serviceUniqueKey, bool oldFor
if (((*e)->getText()).empty())
{
- strcpy(liste, (*e)->getExtendedText().substr(0, 50).c_str());
+ strcpy(liste, (*e)->getExtendedText().substr(0, 95).c_str());
liste += strlen(liste);
}
else
@@ -2606,7 +2606,7 @@ static void commandDumpStatusInformation(int connfd, char* /*data*/, const unsig
char stati[MAX_SIZE_STATI];
snprintf(stati, MAX_SIZE_STATI,
- "$Id: sectionsd.cpp,v 1.345 2013/03/07 19:30:00 GetAway Exp $\n"
+ "$Id: sectionsd.cpp,v 1.346 2013/03/20 22:40:00 GetAway Exp $\n"
"%sCurrent time: %s"
"Hours to cache: %ld\n"
"Hours to cache extended text: %ld\n"
@@ -8590,7 +8590,7 @@ int main(int argc, char **argv)
struct sched_param parm;
- printf("$Id: sectionsd.cpp,v 1.345 2013/03/07 19:30:00 GetAway Exp $\n");
+ printf("$Id: sectionsd.cpp,v 1.346 2013/03/20 22:40:00 GetAway Exp $\n");
#ifdef ENABLE_FREESATEPG
printf("[sectionsd] FreeSat enabled\n");
#endif
-----------------------------------------------------------------------
Summary of changes:
tuxbox/neutrino/daemons/sectionsd/sectionsd.cpp | 10 +++++-----
1 files changed, 5 insertions(+), 5 deletions(-)
--
Tuxbox-GIT: apps
|
|
From: Thilo G. <tux...@ne...> - 2013-03-20 07:00:25
|
Project "Tuxbox-GIT: apps":
The branch, master has been updated
via 4131910966d8e6bd33ba92b7d7db179ba2e088b9 (commit)
via ed450e164dec029152a19cf00ddddbce10faf54c (commit)
via 76dbda03bf959bb9a83b624eb96de70a78a82478 (commit)
via bb0961cbcceb6411f9d10fed92fccfa753e0159a (commit)
via 8844a62fab2a41f16cde5f92f722b0a8dca42515 (commit)
via dd4e304799b7b818ebd1b583e0448f6d057b4e4f (commit)
via d111c4e6c462f3032d8137fa42bdb37c44572fe6 (commit)
via 06223d8149981c055c407bda93fd13fceb08eca6 (commit)
via d6d6813aa578d4a918c633b4e46a6e9c9c303948 (commit)
via 346b925b26e17f501b2552dbe3e19a13c09dc9d6 (commit)
via 21e23bf1da812e6f1aa08d8c222414f17d3038e7 (commit)
from a0de98af3b9ad40ee7d015e5fce203feb84d5f10 (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
commit 4131910966d8e6bd33ba92b7d7db179ba2e088b9
Author: Christian Schuett <Gau...@ho...>
Date: Tue Mar 19 21:04:30 2013 +0100
Neutrino: fix calculating max button width in button bar
prevent button text from overflowing the button bar
Signed-off-by: Christian Schuett <Gau...@ho...>
diff --git a/tuxbox/neutrino/data/locale/deutsch.locale b/tuxbox/neutrino/data/locale/deutsch.locale
index e18d2f7..fd9d341 100644
--- a/tuxbox/neutrino/data/locale/deutsch.locale
+++ b/tuxbox/neutrino/data/locale/deutsch.locale
@@ -424,6 +424,7 @@ eventfinder.start_search Starte Suche
eventlistbar.channelswitch Umschalten
eventlistbar.eventsort Sortieren
eventlistbar.recordevent Aufnehmen
+eventlistbar.reload Aktualisieren
experimentalsettings Experimentelle Einstellungen
experimentalsettings.head Experimentelle Einstellungen
favorites.addchannel Der aktuelle Kanal wird dem Bouquet \n"Meine Favoriten" hinzugefügt. \nDie Speicherung benötigt einen Moment...
@@ -936,6 +937,8 @@ movieplayer.goto.h2 +,- -> relativer Sprung
movieplayer.head Movieplayer
movieplayer.nostreamingserver Es konnte keine Verbindung\nzum Streamingserver hergestellt werden.
movieplayer.pleasewait Bitte warten Sie.\nDie Verbindung zum Streamingserver wird hergestellt.
+movieplayer.plugin Plugin
+movieplayer.resync Resync
movieplayer.toomanybookmarks Sie haben bereits zu viele Bookmarks angelegt.\nEs muà erst ein anderes gelöscht werden.
movieplayer.tshelp1 Stop
movieplayer.tshelp10 ca. 10 Minuten zurück
diff --git a/tuxbox/neutrino/data/locale/english.locale b/tuxbox/neutrino/data/locale/english.locale
index f14024e..894db50 100644
--- a/tuxbox/neutrino/data/locale/english.locale
+++ b/tuxbox/neutrino/data/locale/english.locale
@@ -424,6 +424,7 @@ eventfinder.start_search Start Search
eventlistbar.channelswitch schedule
eventlistbar.eventsort sorting
eventlistbar.recordevent record
+eventlistbar.reload reload
experimentalsettings Experimental Settings
experimentalsettings.head Experimental Settings
favorites.addchannel The current channel will be added \nto the bouquet "My Favorites".\nThis will take a few seconds...
@@ -936,6 +937,8 @@ movieplayer.goto.h2 +,- -> relative jump
movieplayer.head Movie Player
movieplayer.nostreamingserver The streaming server could not be reached.
movieplayer.pleasewait Please wait.\nConnecting to the streaming server...
+movieplayer.plugin Plugin
+movieplayer.resync Resync
movieplayer.toomanybookmarks There are too many bookmarks.\nYou need to delete one of them first.
movieplayer.tshelp1 Stop
movieplayer.tshelp10 approx. 10 minutes back
diff --git a/tuxbox/neutrino/src/gui/audioplayer.cpp b/tuxbox/neutrino/src/gui/audioplayer.cpp
index c349124..29f3d8e 100644
--- a/tuxbox/neutrino/src/gui/audioplayer.cpp
+++ b/tuxbox/neutrino/src/gui/audioplayer.cpp
@@ -1680,7 +1680,8 @@ void CAudioPlayerGui::paintFoot()
start_x = m_x + 10;
start_top = top + 2;
- int ButtonWidth = (m_width - 20) / 4;
+ int ButtonsMaxWidth = m_width - 20;
+ int ButtonWidth = ButtonsMaxWidth / 4;
int ButtonWidth2 = (m_width - 50) / 2;
m_frameBuffer->paintBoxRel(m_x, top, m_width, 2 * m_buttonHeight, COL_INFOBAR_SHADOW_PLUS_1, c_rad_mid, CORNER_BOTTOM);
m_frameBuffer->paintHLine(m_x, m_x + m_width, top, COL_INFOBAR_SHADOW_PLUS_1);
@@ -1694,29 +1695,29 @@ void CAudioPlayerGui::paintFoot()
if (m_playlist.empty()) {
if (m_inetmode)
::paintButtons(m_frameBuffer, g_Font[SNeutrinoSettings::FONT_TYPE_INFOBAR_SMALL], g_Locale,
- start_x, start_top, ButtonWidth, 2, AudioPlayerButtons[7]);
+ start_x, start_top, ButtonWidth, 2, AudioPlayerButtons[7], ButtonsMaxWidth);
else
::paintButtons(m_frameBuffer, g_Font[SNeutrinoSettings::FONT_TYPE_INFOBAR_SMALL], g_Locale,
- start_x, start_top, ButtonWidth, 1, &(AudioPlayerButtons[7][0]));
+ start_x, start_top, ButtonWidth, 1, &(AudioPlayerButtons[7][0]), ButtonsMaxWidth);
} else
if (m_inetmode)
::paintButtons(m_frameBuffer, g_Font[SNeutrinoSettings::FONT_TYPE_INFOBAR_SMALL], g_Locale,
- start_x, start_top, ButtonWidth, 4, AudioPlayerButtons[8]);
+ start_x, start_top, ButtonWidth, 4, AudioPlayerButtons[8], ButtonsMaxWidth);
else
::paintButtons(m_frameBuffer, g_Font[SNeutrinoSettings::FONT_TYPE_INFOBAR_SMALL], g_Locale,
- start_x, start_top, ButtonWidth, 4, AudioPlayerButtons[1]);
+ start_x, start_top, ButtonWidth, 4, AudioPlayerButtons[1], ButtonsMaxWidth);
}
else if (m_key_level == 1)
{
if (m_curr_audiofile.FileType != CFile::STREAM_AUDIO)
{
::paintButtons(m_frameBuffer, g_Font[SNeutrinoSettings::FONT_TYPE_INFOBAR_SMALL], g_Locale,
- start_x, start_top, ButtonWidth, 4, AudioPlayerButtons[0]);
+ start_x, start_top, ButtonWidth, 4, AudioPlayerButtons[0], ButtonsMaxWidth);
}
else
{
::paintButtons(m_frameBuffer, g_Font[SNeutrinoSettings::FONT_TYPE_INFOBAR_SMALL], g_Locale,
- start_x, start_top, ButtonWidth*2, 2, AudioPlayerButtons[6]);
+ start_x, start_top, ButtonWidth*2, 2, AudioPlayerButtons[6], ButtonsMaxWidth);
}
}
else
@@ -1726,12 +1727,12 @@ void CAudioPlayerGui::paintFoot()
if (m_select_title_by_name)
{
::paintButtons(m_frameBuffer, g_Font[SNeutrinoSettings::FONT_TYPE_INFOBAR_SMALL], g_Locale,
- start_x, start_top, ButtonWidth, 2, AudioPlayerButtons[5]);
+ start_x, start_top, ButtonWidth, 2, AudioPlayerButtons[5], ButtonsMaxWidth);
}
else
{
::paintButtons(m_frameBuffer, g_Font[SNeutrinoSettings::FONT_TYPE_INFOBAR_SMALL], g_Locale,
- start_x, start_top, ButtonWidth, 2, AudioPlayerButtons[4]);
+ start_x, start_top, ButtonWidth, 2, AudioPlayerButtons[4], ButtonsMaxWidth);
}
}
else
@@ -1739,12 +1740,12 @@ void CAudioPlayerGui::paintFoot()
if (m_select_title_by_name)
{
::paintButtons(m_frameBuffer, g_Font[SNeutrinoSettings::FONT_TYPE_INFOBAR_SMALL], g_Locale,
- start_x, start_top, ButtonWidth*2, 2, AudioPlayerButtons[3]);
+ start_x, start_top, ButtonWidth*2, 2, AudioPlayerButtons[3], ButtonsMaxWidth);
}
else
{
::paintButtons(m_frameBuffer, g_Font[SNeutrinoSettings::FONT_TYPE_INFOBAR_SMALL], g_Locale,
- start_x, start_top, ButtonWidth*2, 2, AudioPlayerButtons[2]);
+ start_x, start_top, ButtonWidth*2, 2, AudioPlayerButtons[2], ButtonsMaxWidth);
}
}
}
diff --git a/tuxbox/neutrino/src/gui/bedit/bouqueteditor_bouquets.cpp b/tuxbox/neutrino/src/gui/bedit/bouqueteditor_bouquets.cpp
index 1ec7a6e..92a05fc 100644
--- a/tuxbox/neutrino/src/gui/bedit/bouqueteditor_bouquets.cpp
+++ b/tuxbox/neutrino/src/gui/bedit/bouqueteditor_bouquets.cpp
@@ -159,7 +159,7 @@ void CBEBouquetWidget::paintFoot()
CBEBouquetWidgetButtons1[4].locale = LOCALE_BOUQUETEDITOR_LOCK;
break;
}
- ::paintButtons(frameBuffer, g_Font[SNeutrinoSettings::FONT_TYPE_INFOBAR_SMALL], g_Locale, x + 5, y + height+2, (width-20)/5, 5, CBEBouquetWidgetButtons1, width-20);
+ ::paintButtons(frameBuffer, g_Font[SNeutrinoSettings::FONT_TYPE_INFOBAR_SMALL], g_Locale, x + 5, y + height + 2, (width - 10) / 5, 5, CBEBouquetWidgetButtons1);
}
void CBEBouquetWidget::hide()
diff --git a/tuxbox/neutrino/src/gui/bedit/bouqueteditor_channels.cpp b/tuxbox/neutrino/src/gui/bedit/bouqueteditor_channels.cpp
index 3954a0b..654cbaf 100644
--- a/tuxbox/neutrino/src/gui/bedit/bouqueteditor_channels.cpp
+++ b/tuxbox/neutrino/src/gui/bedit/bouqueteditor_channels.cpp
@@ -142,7 +142,7 @@ const struct button_label CBEChannelWidgetButtons[4] =
void CBEChannelWidget::paintFoot()
{
frameBuffer->paintBoxRel(x,y+height, width,ButtonHeight, COL_INFOBAR_SHADOW_PLUS_1, RADIUS_MID, CORNER_BOTTOM);
- ::paintButtons(frameBuffer, g_Font[SNeutrinoSettings::FONT_TYPE_INFOBAR_SMALL], g_Locale, x + 10, y + height, width/5, 4, CBEChannelWidgetButtons);
+ ::paintButtons(frameBuffer, g_Font[SNeutrinoSettings::FONT_TYPE_INFOBAR_SMALL], g_Locale, x + 10, y + height, (width - 20) / 4, 4, CBEChannelWidgetButtons);
}
void CBEChannelWidget::hide()
diff --git a/tuxbox/neutrino/src/gui/bedit/bouqueteditor_chanselect.cpp b/tuxbox/neutrino/src/gui/bedit/bouqueteditor_chanselect.cpp
index d138b27..ac13741 100644
--- a/tuxbox/neutrino/src/gui/bedit/bouqueteditor_chanselect.cpp
+++ b/tuxbox/neutrino/src/gui/bedit/bouqueteditor_chanselect.cpp
@@ -171,5 +171,5 @@ void CBEChannelSelectWidget::paintFoot()
int y_foot = y + height;
frameBuffer->paintBoxRel(x, y_foot, width, ButtonHeight, COL_INFOBAR_SHADOW_PLUS_1, RADIUS_MID, CORNER_BOTTOM);
- ::paintButtons(frameBuffer, g_Font[SNeutrinoSettings::FONT_TYPE_INFOBAR_SMALL], g_Locale, x + 5, y_foot, width/2, 2, CBEBouquetSelectWidgetButtons);
+ ::paintButtons(frameBuffer, g_Font[SNeutrinoSettings::FONT_TYPE_INFOBAR_SMALL], g_Locale, x + 5, y_foot, (width - 10) / 2, 2, CBEBouquetSelectWidgetButtons);
}
diff --git a/tuxbox/neutrino/src/gui/bouquetlist.cpp b/tuxbox/neutrino/src/gui/bouquetlist.cpp
index 3f36106..07c01d5 100644
--- a/tuxbox/neutrino/src/gui/bouquetlist.cpp
+++ b/tuxbox/neutrino/src/gui/bouquetlist.cpp
@@ -426,8 +426,8 @@ void CBouquetList::paint()
//footbar
int fy = y + theight + listmaxshow * fheight ;
- int ButtonWith = width/3;
+ int ButtonWith = (width - 8) / 3;
int icony = fy + theight / 2 - 12;
frameBuffer->paintBoxRel(x, fy, width, theight, COL_INFOBAR_SHADOW_PLUS_1, RADIUS_MID, CORNER_BOTTOM);
- ::paintButtons(frameBuffer, g_Font[SNeutrinoSettings::FONT_TYPE_INFOBAR_SMALL], g_Locale, x + 4, icony, ButtonWith, sizeof(CBouquetListButtons)/sizeof(CBouquetListButtons[0]), CBouquetListButtons, width);
+ ::paintButtons(frameBuffer, g_Font[SNeutrinoSettings::FONT_TYPE_INFOBAR_SMALL], g_Locale, x + 4, icony, ButtonWith, 6, CBouquetListButtons);
}
diff --git a/tuxbox/neutrino/src/gui/channellist.cpp b/tuxbox/neutrino/src/gui/channellist.cpp
index 09abc7d..0900ca0 100644
--- a/tuxbox/neutrino/src/gui/channellist.cpp
+++ b/tuxbox/neutrino/src/gui/channellist.cpp
@@ -1343,7 +1343,7 @@ struct button_label CChannelListButtons[] =
void CChannelList::paintFoot()
{
- int ButtonWidth = width/4;
+ int ButtonWidth = (width - 20) / 4;
int buttonHeight = 7 + std::min(16, g_Font[SNeutrinoSettings::FONT_TYPE_INFOBAR_SMALL]->getHeight());
frameBuffer->paintHLineRel(x, width, y + (height - buttonHeight), COL_INFOBAR_SHADOW_PLUS_0);
@@ -1359,7 +1359,7 @@ void CChannelList::paintFoot()
}
frameBuffer->paintBoxRel(x, y + (height - buttonHeight), width, buttonHeight, COL_INFOBAR_SHADOW_PLUS_1, RADIUS_MID, CORNER_BOTTOM);
- ::paintButtons(frameBuffer, g_Font[SNeutrinoSettings::FONT_TYPE_INFOBAR_SMALL], g_Locale, x + 10, y + (height - buttonHeight), ButtonWidth, sizeof(CChannelListButtons)/sizeof(CChannelListButtons[0]), CChannelListButtons, width);
+ ::paintButtons(frameBuffer, g_Font[SNeutrinoSettings::FONT_TYPE_INFOBAR_SMALL], g_Locale, x + 10, y + (height - buttonHeight), ButtonWidth, 4, CChannelListButtons);
}
void CChannelList::paint()
diff --git a/tuxbox/neutrino/src/gui/epgplus.cpp b/tuxbox/neutrino/src/gui/epgplus.cpp
index f0f59f2..b7f258c 100644
--- a/tuxbox/neutrino/src/gui/epgplus.cpp
+++ b/tuxbox/neutrino/src/gui/epgplus.cpp
@@ -595,7 +595,7 @@ struct button_label buttonLabels[6] =
void EpgPlus::Footer::paintButtons(button_label* _buttonLabels, int numberOfButtons)
{
int yPos = y + getUsedHeight() - fontButtons->getHeight();
- int buttonWidth = (width - 10) / 6; //40
+ int buttonWidth = (width - 10) / numberOfButtons; //40
frameBuffer->paintBoxRel(x, yPos, width, fontButtons->getHeight(), COL_INFOBAR_SHADOW_PLUS_1, RADIUS_MID, CORNER_BOTTOM);
::paintButtons(frameBuffer, fontButtons, g_Locale, x + 5, yPos , buttonWidth, numberOfButtons, _buttonLabels);
diff --git a/tuxbox/neutrino/src/gui/epgview.cpp b/tuxbox/neutrino/src/gui/epgview.cpp
index 9c1e4a0..3a6d67a 100644
--- a/tuxbox/neutrino/src/gui/epgview.cpp
+++ b/tuxbox/neutrino/src/gui/epgview.cpp
@@ -955,7 +955,7 @@ const struct button_label epgviewButtons[3] =
void CEpgData::showTimerEventBar(bool _show)
{
- int ButtonWidth = ox / 4; // 4 cells
+ int ButtonWidth = (ox - 16) / 4; // 4 cells
int fheight = std::max(16, g_Font[SNeutrinoSettings::FONT_TYPE_INFOBAR_SMALL]->getHeight()) + BUTTONBAR_FONT_OFFSET;
int by = sy + oy + (fheight >> 3) - 1;
@@ -973,11 +973,11 @@ void CEpgData::showTimerEventBar(bool _show)
::paintButtons(frameBuffer, g_Font[SNeutrinoSettings::FONT_TYPE_INFOBAR_SMALL], g_Locale, sx + 8, by, ButtonWidth, 1, &epgviewButtons[0]);
// Button: Timer Channelswitch
- ::paintButtons(frameBuffer, g_Font[SNeutrinoSettings::FONT_TYPE_INFOBAR_SMALL], g_Locale, sx + ButtonWidth, by, ButtonWidth, 1, &epgviewButtons[1]);
+ ::paintButtons(frameBuffer, g_Font[SNeutrinoSettings::FONT_TYPE_INFOBAR_SMALL], g_Locale, sx + 8 + ButtonWidth, by, ButtonWidth, 1, &epgviewButtons[1]);
// Button: more screenings
if (!followlist.empty())
- ::paintButtons(frameBuffer, g_Font[SNeutrinoSettings::FONT_TYPE_INFOBAR_SMALL], g_Locale, sx + 2 * ButtonWidth, by, ButtonWidth, 1, &epgviewButtons[2]);
+ ::paintButtons(frameBuffer, g_Font[SNeutrinoSettings::FONT_TYPE_INFOBAR_SMALL], g_Locale, sx + 8 + 2 * ButtonWidth, by, ButtonWidth, 1, &epgviewButtons[2]);
}
diff --git a/tuxbox/neutrino/src/gui/eventlist.cpp b/tuxbox/neutrino/src/gui/eventlist.cpp
index aaa656d..bfb72ad 100644
--- a/tuxbox/neutrino/src/gui/eventlist.cpp
+++ b/tuxbox/neutrino/src/gui/eventlist.cpp
@@ -805,7 +805,7 @@ struct button_label EventListButtons[5] =
{ "", LOCALE_EVENTFINDER_SEARCH }, // search button
{ "", LOCALE_GENERIC_EMPTY }, // timerlist delete / channelswitch
{ "", LOCALE_EVENTLISTBAR_EVENTSORT }, // sort button
- { "", LOCALE_KEYBINDINGMENU_RELOAD } // reload button
+ { "", LOCALE_EVENTLISTBAR_RELOAD } // reload button
};
void EventList::showFunctionBar (bool show)
@@ -823,7 +823,7 @@ void EventList::showFunctionBar (bool show)
bx = x + 5;
by = y + height - iheight;
- int ButtonWidth = width / 5;
+ int ButtonWidth = (width - 10) / 5;
// -- hide only?
if (!show)
@@ -855,7 +855,7 @@ void EventList::showFunctionBar (bool show)
}
frameBuffer->getIconSize(icon, &iconw, &iconh);
- cellwidth = iconw + 4 + space + g_Font[SNeutrinoSettings::FONT_TYPE_INFOBAR_SMALL]->getRenderWidth(btncaption);
+ cellwidth = std::min(ButtonWidth, iconw + 4 + space + g_Font[SNeutrinoSettings::FONT_TYPE_INFOBAR_SMALL]->getRenderWidth(btncaption));
// paint 1st button
::paintButtons(frameBuffer, g_Font[SNeutrinoSettings::FONT_TYPE_INFOBAR_SMALL], g_Locale, bx, by, ButtonWidth, 1, &EventListButtons[0]);
@@ -871,7 +871,7 @@ void EventList::showFunctionBar (bool show)
btncaption = g_Locale->getText(LOCALE_EVENTFINDER_SEARCH);
frameBuffer->getIconSize(icon, &iconw, &iconh);
- cellwidth = iconw + 4 + space + g_Font[SNeutrinoSettings::FONT_TYPE_INFOBAR_SMALL]->getRenderWidth(btncaption);
+ cellwidth = std::min(ButtonWidth, iconw + 4 + space + g_Font[SNeutrinoSettings::FONT_TYPE_INFOBAR_SMALL]->getRenderWidth(btncaption));
// paint second button
::paintButtons(frameBuffer, g_Font[SNeutrinoSettings::FONT_TYPE_INFOBAR_SMALL], g_Locale, bx, by, ButtonWidth, 1, &EventListButtons[1]);
@@ -896,7 +896,7 @@ void EventList::showFunctionBar (bool show)
}
frameBuffer->getIconSize(icon, &iconw, &iconh);
- cellwidth = iconw + 4 + space + g_Font[SNeutrinoSettings::FONT_TYPE_INFOBAR_SMALL]->getRenderWidth(btncaption);
+ cellwidth = std::min(ButtonWidth, iconw + 4 + space + g_Font[SNeutrinoSettings::FONT_TYPE_INFOBAR_SMALL]->getRenderWidth(btncaption));
// paint 3rd button
::paintButtons(frameBuffer, g_Font[SNeutrinoSettings::FONT_TYPE_INFOBAR_SMALL], g_Locale, bx, by, ButtonWidth, 1, &EventListButtons[2]);
@@ -912,7 +912,7 @@ void EventList::showFunctionBar (bool show)
btncaption = g_Locale->getText(LOCALE_EVENTLISTBAR_EVENTSORT);
frameBuffer->getIconSize(icon, &iconw, &iconh);
- cellwidth = iconw + 4 + space + g_Font[SNeutrinoSettings::FONT_TYPE_INFOBAR_SMALL]->getRenderWidth(btncaption);
+ cellwidth = std::min(ButtonWidth, iconw + 4 + space + g_Font[SNeutrinoSettings::FONT_TYPE_INFOBAR_SMALL]->getRenderWidth(btncaption));
// paint 4th button
::paintButtons(frameBuffer, g_Font[SNeutrinoSettings::FONT_TYPE_INFOBAR_SMALL], g_Locale, bx, by, ButtonWidth, 1, &EventListButtons[3]);
@@ -926,7 +926,6 @@ void EventList::showFunctionBar (bool show)
EventListButtons[4].button = icon;
// paint 5th button
- btncaption = g_Locale->getText(LOCALE_KEYBINDINGMENU_RELOAD);
::paintButtons(frameBuffer, g_Font[SNeutrinoSettings::FONT_TYPE_INFOBAR_SMALL], g_Locale, bx, by, ButtonWidth, 1, &EventListButtons[4]);
}
diff --git a/tuxbox/neutrino/src/gui/filebrowser.cpp b/tuxbox/neutrino/src/gui/filebrowser.cpp
index e844ec2..819cabc 100644
--- a/tuxbox/neutrino/src/gui/filebrowser.cpp
+++ b/tuxbox/neutrino/src/gui/filebrowser.cpp
@@ -1410,7 +1410,7 @@ void CFileBrowser::paintFoot()
{
int by = y + height - 2 * (foheight - 2);
- ::paintButtons(frameBuffer, g_Font[SNeutrinoSettings::FONT_TYPE_INFOBAR_SMALL], g_Locale, x + 10, by, ButtonWidth, Multi_Select ? 3 : 2, FileBrowserButtons);
+ ::paintButtons(frameBuffer, g_Font[SNeutrinoSettings::FONT_TYPE_INFOBAR_SMALL], g_Locale, x + 10, by, ButtonWidth, Multi_Select ? 3 : 2, FileBrowserButtons, 3 * ButtonWidth);
//Blue-Button
if (Filter != NULL)
@@ -1424,11 +1424,11 @@ void CFileBrowser::paintFoot()
//?-Button
FileBrowserHelpButton[0].locale = sortByNames[g_settings.filebrowser_sortmethod];
- ::paintButtons(frameBuffer, g_Font[SNeutrinoSettings::FONT_TYPE_INFOBAR_SMALL], g_Locale, x + (1 * ButtonWidth), by2, ButtonWidth, 1, FileBrowserHelpButton);
+ ::paintButtons(frameBuffer, g_Font[SNeutrinoSettings::FONT_TYPE_INFOBAR_SMALL], g_Locale, x + 10 + (1 * ButtonWidth), by2, ButtonWidth, 1, FileBrowserHelpButton);
//Mute-Button
if (strncmp(Path.c_str(), VLC_URI, strlen(VLC_URI)) != 0) { //Not in vlc mode
- ::paintButtons(frameBuffer, g_Font[SNeutrinoSettings::FONT_TYPE_INFOBAR_SMALL], g_Locale, x + (2 * ButtonWidth), by2, ButtonWidth, 1, FileBrowserDeleteButton);
+ ::paintButtons(frameBuffer, g_Font[SNeutrinoSettings::FONT_TYPE_INFOBAR_SMALL], g_Locale, x + 10 + (2 * ButtonWidth), by2, ButtonWidth, 1, FileBrowserDeleteButton);
}
if (m_SMSKeyInput.getOldKey() != 0)
diff --git a/tuxbox/neutrino/src/gui/imageinfo.cpp b/tuxbox/neutrino/src/gui/imageinfo.cpp
index 80340ee..be603d2 100644
--- a/tuxbox/neutrino/src/gui/imageinfo.cpp
+++ b/tuxbox/neutrino/src/gui/imageinfo.cpp
@@ -530,9 +530,8 @@ const struct button_label CImageInfoButtons[5] =
void CImageInfo::paintFoot(int xf, int yf)
{
- int ButtonHeight = ssheight;
- frameBuffer->paintBoxRel(xf, yf, width, ButtonHeight, COL_INFOBAR_SHADOW_PLUS_1, RADIUS_MID, CORNER_BOTTOM);
- ::paintButtons(frameBuffer, g_Font[SNeutrinoSettings::FONT_TYPE_INFOBAR_SMALL], g_Locale, xf + 5, yf, width/6, 5, CImageInfoButtons, width);
+ frameBuffer->paintBoxRel(xf, yf, width, ssheight, COL_INFOBAR_SHADOW_PLUS_1, RADIUS_MID, CORNER_BOTTOM);
+ ::paintButtons(frameBuffer, g_Font[SNeutrinoSettings::FONT_TYPE_INFOBAR_SMALL], g_Locale, xf + 5, yf, (width - 10) / 5, 5, CImageInfoButtons);
}
void CImageInfo::paint()
diff --git a/tuxbox/neutrino/src/gui/infoviewer.cpp b/tuxbox/neutrino/src/gui/infoviewer.cpp
index 320dec5..121f2a6 100644
--- a/tuxbox/neutrino/src/gui/infoviewer.cpp
+++ b/tuxbox/neutrino/src/gui/infoviewer.cpp
@@ -1040,7 +1040,7 @@ void CInfoViewer::showButton(const int button, const bool calledFromMPlayer, con
if (mode == VLC_MODE)
InfobarButtons[SNeutrinoSettings::BUTTON_RED].locale = LOCALE_AUDIOPLAYER_STOP;
else
- InfobarButtons[SNeutrinoSettings::BUTTON_RED].locale = LOCALE_MOVIEPLAYER_TSHELP17;
+ InfobarButtons[SNeutrinoSettings::BUTTON_RED].locale = LOCALE_MOVIEPLAYER_PLUGIN;
}
else
{
@@ -1060,7 +1060,7 @@ void CInfoViewer::showButton(const int button, const bool calledFromMPlayer, con
if(calledFromMPlayer)
{
if (mode == VLC_MODE)
- InfobarButtons[SNeutrinoSettings::BUTTON_GREEN].locale = LOCALE_MOVIEPLAYER_VLCHELP2;
+ InfobarButtons[SNeutrinoSettings::BUTTON_GREEN].locale = LOCALE_MOVIEPLAYER_RESYNC;
else
{
InfobarButtons[SNeutrinoSettings::BUTTON_GREEN].locale = LOCALE_INFOVIEWER_LANGUAGES;
@@ -1139,7 +1139,7 @@ void CInfoViewer::showButton(const int button, const bool calledFromMPlayer, con
}
if (paint)
::paintButtons(frameBuffer, g_Font[SNeutrinoSettings::FONT_TYPE_INFOBAR_SMALL], g_Locale,
- startX, by, ButtonWidth, 1, &InfobarButtons[button], 720, false, COL_INFOBAR_SHADOW_PLUS_1, txt);
+ startX, by, ButtonWidth, 1, &InfobarButtons[button], 0, false, COL_INFOBAR_SHADOW_PLUS_1, txt);
}
#ifdef ENABLE_RADIOTEXT
diff --git a/tuxbox/neutrino/src/gui/motorcontrol.cpp b/tuxbox/neutrino/src/gui/motorcontrol.cpp
index 20196cd..8fc3b5c 100644
--- a/tuxbox/neutrino/src/gui/motorcontrol.cpp
+++ b/tuxbox/neutrino/src/gui/motorcontrol.cpp
@@ -494,7 +494,8 @@ const struct button_label CMotorControlMenueButtons5[3] =
void CMotorControl::paintMenu()
{
ypos_menue = y + head_height + status_height;
- int buttonwidth = width/2;
+ int buttonsMaxWidth = width - 20;
+ int buttonWidth = buttonsMaxWidth / 2;
int xposButton = x + 10;
int font = SNeutrinoSettings::FONT_TYPE_INFOBAR_SMALL;
@@ -511,15 +512,15 @@ void CMotorControl::paintMenu()
ypos_menue += 10;
// buttons 0 / Ok / home
- ::paintButtons(frameBuffer, g_Font[font], g_Locale, xposButton, ypos_menue, buttonwidth-28, 3, CMotorControlMenueButtons1);
+ ::paintButtons(frameBuffer, g_Font[font], g_Locale, xposButton, ypos_menue, buttonWidth - 28, 3, CMotorControlMenueButtons1, buttonsMaxWidth);
// buttons left / right
ypos_menue += mheight;
- ::paintButtons(frameBuffer, g_Font[font], g_Locale, xposButton, ypos_menue, buttonwidth,2, CMotorControlMenueButtons2);
+ ::paintButtons(frameBuffer, g_Font[font], g_Locale, xposButton, ypos_menue, buttonWidth, 2, CMotorControlMenueButtons2, buttonsMaxWidth);
// button red
ypos_menue += mheight;
- ::paintButtons(frameBuffer, g_Font[font], g_Locale, xposButton, ypos_menue, buttonwidth,1, CMotorControlMenueButtons3);
+ ::paintButtons(frameBuffer, g_Font[font], g_Locale, xposButton, ypos_menue, buttonWidth, 1, CMotorControlMenueButtons3, buttonsMaxWidth);
// variant buttons
if (installerMenue)
@@ -541,10 +542,10 @@ void CMotorControl::paintMenu()
CMotorControlMenueButtons4[5].locale = LOCALE_MOTORCONTROL_DECREASE_STEP_SIZE;
}
ypos_menue += mheight;
- ::paintButtons(frameBuffer, g_Font[font], g_Locale, xposButton, ypos_menue, buttonwidth, 6, CMotorControlMenueButtons4, width, true); //vertical
+ ::paintButtons(frameBuffer, g_Font[font], g_Locale, xposButton, ypos_menue, buttonWidth, 6, CMotorControlMenueButtons4, 0, true); //vertical
//ypos_menue += mheight;
- ::paintButtons(frameBuffer, g_Font[font], g_Locale, xposButton+buttonwidth, ypos_menue, buttonwidth, 3, CMotorControlMenueButtons5, width, true); //vertical
+ ::paintButtons(frameBuffer, g_Font[font], g_Locale, xposButton + buttonWidth, ypos_menue, buttonWidth, 3, CMotorControlMenueButtons5, 0, true); //vertical
}
void CMotorControl::startSatFind(void)
diff --git a/tuxbox/neutrino/src/gui/streaminfo2.cpp b/tuxbox/neutrino/src/gui/streaminfo2.cpp
index b8324d7..ab1dffe 100644
--- a/tuxbox/neutrino/src/gui/streaminfo2.cpp
+++ b/tuxbox/neutrino/src/gui/streaminfo2.cpp
@@ -501,8 +501,8 @@ void CStreamInfo2::paint(int/*mode*/)
StreamInfoButtons[0].locale = LOCALE_STREAMINFO_RESIZE;
- ::paintButtons(frameBuffer, g_Font[SNeutrinoSettings::FONT_TYPE_INFOBAR_SMALL], g_Locale, xpos, button_y-20, ButtonWidth, 1, &StreamInfoButtons[0], NULL, NULL, COL_MENUCONTENT_PLUS_0);
- ::paintButtons(frameBuffer, g_Font[SNeutrinoSettings::FONT_TYPE_INFOBAR_SMALL], g_Locale, width - 110, button_y-20, ButtonWidth, 1, &StreamInfoButtons[1], NULL, NULL, COL_MENUCONTENT_PLUS_0);
+ ::paintButtons(frameBuffer, g_Font[SNeutrinoSettings::FONT_TYPE_INFOBAR_SMALL], g_Locale, xpos, button_y - 20, ButtonWidth, 1, &StreamInfoButtons[0], 0, false, COL_MENUCONTENT_PLUS_0);
+ ::paintButtons(frameBuffer, g_Font[SNeutrinoSettings::FONT_TYPE_INFOBAR_SMALL], g_Locale, width - 110, button_y - 20, ButtonWidth, 1, &StreamInfoButtons[1], 0, false, COL_MENUCONTENT_PLUS_0);
}
}
diff --git a/tuxbox/neutrino/src/gui/timerlist.cpp b/tuxbox/neutrino/src/gui/timerlist.cpp
index 3d24384..4cd4aeb 100644
--- a/tuxbox/neutrino/src/gui/timerlist.cpp
+++ b/tuxbox/neutrino/src/gui/timerlist.cpp
@@ -779,21 +779,18 @@ void CTimerList::paintHead()
frameBuffer->paintIcon(NEUTRINO_ICON_BUTTON_HELP, x + width - iconw - 8, ypos);
}
-const struct button_label TimerListButtons[4] =
+const struct button_label TimerListButtons[5] =
{
- { NEUTRINO_ICON_BUTTON_HOME , LOCALE_MENU_CANCEL },
{ NEUTRINO_ICON_BUTTON_RED , LOCALE_TIMERLIST_DELETE },
{ NEUTRINO_ICON_BUTTON_GREEN , LOCALE_TIMERLIST_NEW },
- { NEUTRINO_ICON_BUTTON_YELLOW, LOCALE_TIMERLIST_RELOAD }
-};
-const struct button_label TimerListButtonOK[1] =
-{
+ { NEUTRINO_ICON_BUTTON_YELLOW, LOCALE_TIMERLIST_RELOAD },
+ { NEUTRINO_ICON_BUTTON_HOME , LOCALE_MENU_CANCEL },
{ NEUTRINO_ICON_BUTTON_OKAY , LOCALE_TIMERLIST_MODIFY }
};
void CTimerList::paintFoot()
{
- int ButtonWidth = (width - 20) / 4;
+ int ButtonWidth = (width - 20) / 5;
int iconw = 0, iconh = 0;
frameBuffer->getIconSize(NEUTRINO_ICON_BUTTON_OKAY, &iconw, &iconh);
int footHeight = std::max(iconh, g_Font[SNeutrinoSettings::FONT_TYPE_INFOBAR_SMALL]->getHeight());
@@ -801,12 +798,9 @@ void CTimerList::paintFoot()
frameBuffer->paintBoxRel(x, y + height, width, footHeight, COL_INFOBAR_SHADOW_PLUS_1, RADIUS_MID, CORNER_BOTTOM);
if (timerlist.empty())
- ::paintButtons(frameBuffer, g_Font[SNeutrinoSettings::FONT_TYPE_INFOBAR_SMALL], g_Locale, x + ButtonWidth + 10, y + height, ButtonWidth, 3, /*&(*/TimerListButtons/*[1])*/);
+ ::paintButtons(frameBuffer, g_Font[SNeutrinoSettings::FONT_TYPE_INFOBAR_SMALL], g_Locale, x + 10 + ButtonWidth, y + height, ButtonWidth, 3, &(TimerListButtons[1]));
else
- {
- ::paintButtons(frameBuffer, g_Font[SNeutrinoSettings::FONT_TYPE_INFOBAR_SMALL], g_Locale, x + 10, y + height, ButtonWidth, 4, TimerListButtons);
- ::paintButtons(frameBuffer, g_Font[SNeutrinoSettings::FONT_TYPE_INFOBAR_SMALL], g_Locale, x + 10 + width - 1 * ButtonWidth, y + height, ButtonWidth, 1, TimerListButtonOK);
- }
+ ::paintButtons(frameBuffer, g_Font[SNeutrinoSettings::FONT_TYPE_INFOBAR_SMALL], g_Locale, x + 10, y + height, ButtonWidth, 5, TimerListButtons);
}
void CTimerList::paint()
diff --git a/tuxbox/neutrino/src/gui/widget/buttons.cpp b/tuxbox/neutrino/src/gui/widget/buttons.cpp
index 2a652fe..6c43b20 100644
--- a/tuxbox/neutrino/src/gui/widget/buttons.cpp
+++ b/tuxbox/neutrino/src/gui/widget/buttons.cpp
@@ -34,7 +34,7 @@
* buttonwidth set width of button include width of icon, space and caption
* count set count of buttons
* content set iconfile and locale constant, for an empty text let locale constant empty , so you can paint icons without captions,
- * maxwidth optional, default value is 720 (full screenwidth) sets maximal width there can paint buttons, should be the same like width eg. from a menue
+ * maxwidth optional, default value is 0, sets maximal width there can paint buttons, should be the same like width eg. from a menu
* vertical_paint optional, default value is false (horizontal) sets direction of painting
* backgroundcolor optional, default value is COL_INFOBAR_SHADOW_PLUS_1, use it to render font with other backgroundcolor (example: streaminfo2.cpp)
*/
@@ -56,8 +56,10 @@ void paintButtons(CFrameBuffer * const frameBuffer, Font * const font,
int iconh, iconw, max_iconw = 0;
int xstart = x, ystart = y;
int space = 4;
+ unsigned int maxTextwidth = 0;
unsigned int bestButtonwidth = maxwidth/count;
unsigned int maxButtonwidth = bestButtonwidth > buttonwidth ? bestButtonwidth : buttonwidth;
+ unsigned int x_max = x + count * maxButtonwidth;
for (unsigned int i = 0; i < count; i++)
{
@@ -78,10 +80,12 @@ void paintButtons(CFrameBuffer * const frameBuffer, Font * const font,
max_iconw = max_iconw>iconw ? max_iconw : iconw;
// get width of buttontext
- fwidth = ((max_iconw+2*space+real_textwidth) > (maxButtonwidth)) ? maxButtonwidth : real_textwidth;
+ maxTextwidth += maxButtonwidth - max_iconw - space;
+ fwidth = (real_textwidth > maxTextwidth) ? maxTextwidth : real_textwidth;
+ maxTextwidth -= fwidth;
// calculate finally buttonwidth
- bwidth = max_iconw + 2*space + fwidth;
+ bwidth = max_iconw + space + fwidth;
// calculate baseline startposition of icon and text in y
ybase = ystart + fheight - fheight / 2;
@@ -91,7 +95,9 @@ void paintButtons(CFrameBuffer * const frameBuffer, Font * const font,
// paint icon and text
frameBuffer->paintIcon(icon, xstart , yicon_start);
int xbuttontext = xstart + max_iconw + space;
- font->RenderString(xbuttontext, ytext_start, bwidth, buttontext, bcolor /*COL_INFOBAR_SHADOW + 1*/, 0, true); // UTF-8
+ if (xbuttontext + fwidth > x_max)
+ fwidth = x_max - xbuttontext; // don't overflow max width
+ font->RenderString(xbuttontext, ytext_start, fwidth, buttontext, bcolor, 0, true); // UTF-8
/* set next startposition x, if text is length=0 then offset is =renderwidth of icon,
* for generating buttons without captions,
diff --git a/tuxbox/neutrino/src/gui/widget/buttons.h b/tuxbox/neutrino/src/gui/widget/buttons.h
index 048c9ea..d106f5e 100644
--- a/tuxbox/neutrino/src/gui/widget/buttons.h
+++ b/tuxbox/neutrino/src/gui/widget/buttons.h
@@ -41,7 +41,7 @@ void paintButtons(CFrameBuffer * const frameBuffer,
const unsigned int buttonwidth,
const unsigned int count,
const struct button_label * const content,
- const unsigned int maxwidth = 720,
+ const unsigned int maxwidth = 0,
bool vertical_paint = false,
const unsigned char bcolor = COL_INFOBAR_SHADOW_PLUS_1,
const char * alt_buttontext = NULL);
diff --git a/tuxbox/neutrino/src/gui/widget/stringinput.cpp b/tuxbox/neutrino/src/gui/widget/stringinput.cpp
index 8316637..90a7402 100644
--- a/tuxbox/neutrino/src/gui/widget/stringinput.cpp
+++ b/tuxbox/neutrino/src/gui/widget/stringinput.cpp
@@ -682,7 +682,7 @@ void CStringInputSMS::paint()
int c_rad_mid = RADIUS_MID;
frameBuffer->paintBoxRel(x, y + height - 25, width, 25, COL_INFOBAR_SHADOW_PLUS_1, c_rad_mid, CORNER_BOTTOM);
- ::paintButtons(frameBuffer, g_Font[SNeutrinoSettings::FONT_TYPE_INFOBAR_SMALL], g_Locale, x + 8, y+height-25, 230, 2, CStringInputSMSButtons);
+ ::paintButtons(frameBuffer, g_Font[SNeutrinoSettings::FONT_TYPE_INFOBAR_SMALL], g_Locale, x + 8, y + height - 25, (width - 16) / 2, 2, CStringInputSMSButtons);
}
void CPINInput::paintChar(int pos)
diff --git a/tuxbox/neutrino/src/system/locals.h b/tuxbox/neutrino/src/system/locals.h
index 41c2ece..f4eeae7 100644
--- a/tuxbox/neutrino/src/system/locals.h
+++ b/tuxbox/neutrino/src/system/locals.h
@@ -451,6 +451,7 @@ typedef enum
LOCALE_EVENTLISTBAR_CHANNELSWITCH,
LOCALE_EVENTLISTBAR_EVENTSORT,
LOCALE_EVENTLISTBAR_RECORDEVENT,
+ LOCALE_EVENTLISTBAR_RELOAD,
LOCALE_EXPERIMENTALSETTINGS,
LOCALE_EXPERIMENTALSETTINGS_HEAD,
LOCALE_FAVORITES_ADDCHANNEL,
@@ -963,6 +964,8 @@ typedef enum
LOCALE_MOVIEPLAYER_HEAD,
LOCALE_MOVIEPLAYER_NOSTREAMINGSERVER,
LOCALE_MOVIEPLAYER_PLEASEWAIT,
+ LOCALE_MOVIEPLAYER_PLUGIN,
+ LOCALE_MOVIEPLAYER_RESYNC,
LOCALE_MOVIEPLAYER_TOOMANYBOOKMARKS,
LOCALE_MOVIEPLAYER_TSHELP1,
LOCALE_MOVIEPLAYER_TSHELP10,
diff --git a/tuxbox/neutrino/src/system/locals_intern.h b/tuxbox/neutrino/src/system/locals_intern.h
index 52bbdb4..e1e519a 100644
--- a/tuxbox/neutrino/src/system/locals_intern.h
+++ b/tuxbox/neutrino/src/system/locals_intern.h
@@ -451,6 +451,7 @@ const char * locale_real_names[] =
"eventlistbar.channelswitch",
"eventlistbar.eventsort",
"eventlistbar.recordevent",
+ "eventlistbar.reload",
"experimentalsettings",
"experimentalsettings.head",
"favorites.addchannel",
@@ -963,6 +964,8 @@ const char * locale_real_names[] =
"movieplayer.head",
"movieplayer.nostreamingserver",
"movieplayer.pleasewait",
+ "movieplayer.plugin",
+ "movieplayer.resync",
"movieplayer.toomanybookmarks",
"movieplayer.tshelp1",
"movieplayer.tshelp10",
commit ed450e164dec029152a19cf00ddddbce10faf54c
Author: Christian Schuett <Gau...@ho...>
Date: Tue Mar 19 20:25:17 2013 +0100
Neutrino: fix overflowing text in infobar
prevent satfind values from overflowing the infobar
Signed-off-by: Christian Schuett <Gau...@ho...>
diff --git a/tuxbox/neutrino/src/gui/infoviewer.cpp b/tuxbox/neutrino/src/gui/infoviewer.cpp
index 41cbb06..320dec5 100644
--- a/tuxbox/neutrino/src/gui/infoviewer.cpp
+++ b/tuxbox/neutrino/src/gui/infoviewer.cpp
@@ -188,22 +188,22 @@ void CInfoViewer::showSatfind()
frameBuffer->paintBoxRel(ChanInfoX, BoxEndY, BoxEndX-ChanInfoX, 30, COL_INFOBAR_PLUS_0);
sprintf (percent, "sig %d%%", sig);
- g_Font[SNeutrinoSettings::FONT_TYPE_INFOBAR_SMALL]->RenderString(ChanInfoX+ 10, BoxEndY+ 25, BoxEndX, percent, COL_INFOBAR_PLUS_0, 0, true); // UTF-8
+ g_Font[SNeutrinoSettings::FONT_TYPE_INFOBAR_SMALL]->RenderString(ChanInfoX+ 10, BoxEndY+ 25, BoxEndX- ChanInfoX- 10, percent, COL_INFOBAR_PLUS_0, 0, true); // UTF-8
pbsig.paintProgressBar(ChanInfoX+ 72, BoxEndY+ 7, 60, 15, sig, 100, 0, 0, COL_INFOBAR_PLUS_0, 0, "", COL_INFOBAR);
sprintf (percent, "snr %d%%", snr);
- g_Font[SNeutrinoSettings::FONT_TYPE_INFOBAR_SMALL]->RenderString(ChanInfoX+ 140, BoxEndY+ 25, BoxEndX, percent, COL_INFOBAR_PLUS_0, 0, true); // UTF-8
+ g_Font[SNeutrinoSettings::FONT_TYPE_INFOBAR_SMALL]->RenderString(ChanInfoX+ 140, BoxEndY+ 25, BoxEndX- ChanInfoX- 140, percent, COL_INFOBAR_PLUS_0, 0, true); // UTF-8
pbsnr.paintProgressBar(ChanInfoX+202 , BoxEndY+ 7, 60, 15, snr, 100, 0, 0, COL_INFOBAR_PLUS_0, 0, "", COL_INFOBAR);
sprintf (percent, "ber %d%%", ber);
- g_Font[SNeutrinoSettings::FONT_TYPE_INFOBAR_SMALL]->RenderString(ChanInfoX+ 270, BoxEndY+ 25, BoxEndX, percent, COL_INFOBAR_PLUS_0, 0, true); // UTF-8
+ g_Font[SNeutrinoSettings::FONT_TYPE_INFOBAR_SMALL]->RenderString(ChanInfoX+ 270, BoxEndY+ 25, BoxEndX- ChanInfoX- 270, percent, COL_INFOBAR_PLUS_0, 0, true); // UTF-8
- g_Font[SNeutrinoSettings::FONT_TYPE_INFOBAR_SMALL]->RenderString(ChanInfoX+ 350, BoxEndY+ 25, BoxEndX, freq, COL_INFOBAR_PLUS_0, 0, true); // UTF-8
+ g_Font[SNeutrinoSettings::FONT_TYPE_INFOBAR_SMALL]->RenderString(ChanInfoX+ 350, BoxEndY+ 25, BoxEndX- ChanInfoX- 350, freq, COL_INFOBAR_PLUS_0, 0, true); // UTF-8
if (satpos != 0 && (g_info.delivery_system == DVB_S))
{
sprintf (pos, "%d.%d%c", satpos < 0 ? -satpos / 10 : satpos / 10, satpos < 0 ? -satpos % 10 : satpos % 10, satpos < 0 ? 'W' : 'E');
- g_Font[SNeutrinoSettings::FONT_TYPE_INFOBAR_SMALL]->RenderString(BoxEndX- 60, BoxEndY+ 25, BoxEndX, pos, COL_INFOBAR_PLUS_0, 0, true); // UTF-8
+ g_Font[SNeutrinoSettings::FONT_TYPE_INFOBAR_SMALL]->RenderString(BoxEndX- 60, BoxEndY+ 25, 60, pos, COL_INFOBAR_PLUS_0, 0, true); // UTF-8
}
}
}
commit 76dbda03bf959bb9a83b624eb96de70a78a82478
Author: Christian Schuett <Gau...@ho...>
Date: Sun Mar 17 19:48:49 2013 +0100
stringinput.cpp: fix paint in input classes
move the calling of init() into exec() to avoid wrong size calculation
of CStringInputSMS window and to avoid a segfault while accessing
uninitialized variables in CPLPINInput::exec()
Signed-off-by: Christian Schuett <Gau...@ho...>
diff --git a/tuxbox/neutrino/src/gui/widget/stringinput.cpp b/tuxbox/neutrino/src/gui/widget/stringinput.cpp
index f79628a..8316637 100644
--- a/tuxbox/neutrino/src/gui/widget/stringinput.cpp
+++ b/tuxbox/neutrino/src/gui/widget/stringinput.cpp
@@ -297,6 +297,7 @@ int CStringInput::exec( CMenuTarget* parent, const std::string & )
strncpy(oldval, value, size);
dispval[0] = 0;
+ init();
paint();
unsigned long long timeoutEnd = CRCInput::calcTimeoutEnd(g_settings.timing[SNeutrinoSettings::TIMING_MENU]);
@@ -454,7 +455,6 @@ const char * CStringInput::getHint1(void)
void CStringInput::paint()
{
- init();
int iconoffset, c_rad_mid = RADIUS_MID;
frameBuffer->paintBoxRel(x, y, width, hheight, COL_MENUHEAD_PLUS_0, c_rad_mid, CORNER_TOP);
@@ -558,9 +558,6 @@ void CStringInputSMS::initSMS(const char * const Valid_Chars)
Chars[i][j++] = ' '; // prevent empty char lists
arraySizes[i] = j;
}
-
- height+=260;
- y = ((500-height)>>1);
}
void CStringInputSMS::NormalKeyPressed(const neutrino_msg_t key)
@@ -673,6 +670,9 @@ const struct button_label CStringInputSMSButtons[2] =
void CStringInputSMS::paint()
{
+ height+=260;
+ y = ((500-height)>>1);
+
CStringInput::paint();
int iconw, iconh;
@@ -703,6 +703,7 @@ int CPINInput::exec( CMenuTarget* parent, const std::string & )
for(int count=strlen(value)-1;count<size-1;count++)
strcat(value, " ");
+ CStringInput::init();
paint();
bool loop = true;
@@ -813,6 +814,8 @@ const char * CPLPINInput::getHint1(void)
int CPLPINInput::exec( CMenuTarget* parent, const std::string & )
{
+ CStringInput::init();
+
fb_pixel_t * pixbuf = new fb_pixel_t[(width+ 2* borderwidth) * (height+ 2* borderwidth)];
if (pixbuf != NULL)
commit bb0961cbcceb6411f9d10fed92fccfa753e0159a
Author: svenhoefer <sve...@sv...>
Date: Sat Mar 16 17:59:21 2013 +0100
Neutrino locale: two little requested fixes (typo and intelligibility)
Signed-off-by: Christian Schuett <Gau...@ho...>
diff --git a/tuxbox/neutrino/data/locale/deutsch.locale b/tuxbox/neutrino/data/locale/deutsch.locale
index 74c06dc..e18d2f7 100644
--- a/tuxbox/neutrino/data/locale/deutsch.locale
+++ b/tuxbox/neutrino/data/locale/deutsch.locale
@@ -1248,7 +1248,7 @@ satsetup.long Längengrad Ort
satsetup.minidiseqc Mini-DiSEqC
satsetup.motorcontrol Manueller Motor-Setup
satsetup.motorspeed Motorgeschwindigkeit
-satsetup.nodiseqc Kein DiSEqC
+satsetup.nodiseqc kein DiSEqC
satsetup.north Nord
satsetup.satellite Satellit
satsetup.savesettingsnow Einstellungen jetzt speichern
diff --git a/tuxbox/neutrino/data/locale/english.locale b/tuxbox/neutrino/data/locale/english.locale
index 3e09a55..f14024e 100644
--- a/tuxbox/neutrino/data/locale/english.locale
+++ b/tuxbox/neutrino/data/locale/english.locale
@@ -1402,7 +1402,7 @@ streamingserver.noconnect No connection to streamingserver.\nRecording canceled.
stringinput.caps caps / no caps
stringinput.clear clear all
subtitles.head Subtitles
-timer.eventrecord.msg ... TO be DONE, or not to be done
+timer.eventrecord.msg The event is scheduled for recording.\nTo edit the schedule open the timer list.
timer.eventrecord.title Schedule Record
timer.eventtimed.msg The event is scheduled.\nThe dbox2 will power on and \nswitch to this channel at the given time.
timer.eventtimed.title Schedule Event
commit 8844a62fab2a41f16cde5f92f722b0a8dca42515
Author: Christian Schuett <Gau...@ho...>
Date: Sun Mar 3 19:12:05 2013 +0100
Neutrino: reinit EPG viewer and event list after changing OSD region
Signed-off-by: Christian Schuett <Gau...@ho...>
diff --git a/tuxbox/neutrino/src/gui/screensetup.cpp b/tuxbox/neutrino/src/gui/screensetup.cpp
index 0935a78..8a6f4c7 100644
--- a/tuxbox/neutrino/src/gui/screensetup.cpp
+++ b/tuxbox/neutrino/src/gui/screensetup.cpp
@@ -100,6 +100,9 @@ int CScreenSetup::exec(CMenuTarget* parent, const std::string &)
g_settings.screen_StartY = y_coord[0];
g_settings.screen_EndY = y_coord[1];
frameBuffer->setScreenSize(g_settings.screen_StartX, g_settings.screen_StartY, g_settings.screen_EndX, g_settings.screen_EndY);
+ // reinit
+ g_EpgData->start();
+ g_EventList->init();
loop = false;
break;
commit dd4e304799b7b818ebd1b583e0448f6d057b4e4f
Author: Christian Schuett <Gau...@ho...>
Date: Sat Mar 2 17:02:59 2013 +0100
Neutrino: reinit infobar, EPG viewer and event list after changing font size
Signed-off-by: Christian Schuett <Gau...@ho...>
diff --git a/tuxbox/neutrino/src/gui/eventlist.cpp b/tuxbox/neutrino/src/gui/eventlist.cpp
index f4ea133..aaa656d 100644
--- a/tuxbox/neutrino/src/gui/eventlist.cpp
+++ b/tuxbox/neutrino/src/gui/eventlist.cpp
@@ -99,8 +99,18 @@ EventList::EventList()
m_search_channel_id = 1;
m_search_bouquet_id= 1;
- //width = 580;
- //height = 480;
+ liststart = 0;
+ sort_mode = 0;
+
+ init();
+}
+
+EventList::~EventList()
+{
+}
+
+void EventList::init()
+{
width = w_max (590, 20);
height = h_max (480, 20);
@@ -116,18 +126,10 @@ EventList::EventList()
fwidth1 = g_Font[SNeutrinoSettings::FONT_TYPE_EVENTLIST_DATETIME]->getRenderWidth("DDD, 00:00, ");
fwidth2 = g_Font[SNeutrinoSettings::FONT_TYPE_EVENTLIST_ITEMSMALL]->getRenderWidth("[999 min] ");
-
listmaxshow = (height-theight-iheight-0)/fheight;
height = theight+iheight+0+listmaxshow*fheight; // recalc height
x = getScreenStartX (width);
y = getScreenStartY (height);
- liststart = 0;
- sort_mode = 0;
-}
-
-
-EventList::~EventList()
-{
}
void EventList::UpdateTimerList(void)
diff --git a/tuxbox/neutrino/src/gui/eventlist.h b/tuxbox/neutrino/src/gui/eventlist.h
index 6b5b03b..56fcbd5 100644
--- a/tuxbox/neutrino/src/gui/eventlist.h
+++ b/tuxbox/neutrino/src/gui/eventlist.h
@@ -140,6 +140,7 @@ class EventList
public:
EventList();
~EventList();
+ void init();
int exec(const t_channel_id channel_id, const std::string& channelname, const CChannelEventList &followlist = CChannelEventList()); // UTF-8
};
diff --git a/tuxbox/neutrino/src/gui/infoviewer.cpp b/tuxbox/neutrino/src/gui/infoviewer.cpp
index e1cc0d7..41cbb06 100644
--- a/tuxbox/neutrino/src/gui/infoviewer.cpp
+++ b/tuxbox/neutrino/src/gui/infoviewer.cpp
@@ -120,6 +120,7 @@ CInfoViewer::CInfoViewer()
gotTime = g_Sectionsd->getIsTimeSet();
CA_Status = false;
virtual_zap_mode = false;
+ lcdUpdateTimer = 0;
}
void CInfoViewer::start()
@@ -138,7 +139,8 @@ void CInfoViewer::start()
time_dot_width = g_Font[SNeutrinoSettings::FONT_TYPE_INFOBAR_CHANNAME]->getRenderWidth(":");
time_width = time_left_width* 2+ time_dot_width;
- lcdUpdateTimer = g_RCInput->addTimer( LCD_UPDATE_TIME_TV_MODE, false, true );
+ if (lcdUpdateTimer == 0)
+ lcdUpdateTimer = g_RCInput->addTimer( LCD_UPDATE_TIME_TV_MODE, false, true );
}
void CInfoViewer::showSatfind()
diff --git a/tuxbox/neutrino/src/gui/osd_setup.cpp b/tuxbox/neutrino/src/gui/osd_setup.cpp
index 2d0d2a4..d0f9d38 100644
--- a/tuxbox/neutrino/src/gui/osd_setup.cpp
+++ b/tuxbox/neutrino/src/gui/osd_setup.cpp
@@ -700,6 +700,9 @@ bool CFontSizeNotifier::changeNotify(const neutrino_locale_t OptionName, void *
hintBox.paint();
CNeutrinoApp::getInstance()->SetupFonts();
+ g_InfoViewer->start();
+ g_EpgData->start();
+ g_EventList->init();
hintBox.hide();
commit d111c4e6c462f3032d8137fa42bdb37c44572fe6
Author: Christian Schuett <Gau...@ho...>
Date: Fri Mar 1 22:22:50 2013 +0100
CMenuOption*Chooser: get current font height in paint()
font heights could change at runtime, so don't store them
Signed-off-by: Christian Schuett <Gau...@ho...>
diff --git a/tuxbox/neutrino/src/gui/widget/menue.cpp b/tuxbox/neutrino/src/gui/widget/menue.cpp
index 90ebb92..1860107 100644
--- a/tuxbox/neutrino/src/gui/widget/menue.cpp
+++ b/tuxbox/neutrino/src/gui/widget/menue.cpp
@@ -702,7 +702,6 @@ void CMenuWidget::addIntroItems(neutrino_locale_t subhead_text, neutrino_locale_
//-------------------------------------------------------------------------------------------------------------------------------
CMenuOptionNumberChooser::CMenuOptionNumberChooser(const neutrino_locale_t name, int * const OptionValue, const bool Active, const int min_value, const int max_value, const int print_offset, const int special_value, const neutrino_locale_t special_value_name, const char * non_localized_name, const neutrino_msg_t DirectKey, const std::string & IconName)
{
- height = g_Font[SNeutrinoSettings::FONT_TYPE_MENU]->getHeight();
optionName = name;
active = Active;
optionValue = OptionValue;
@@ -721,6 +720,11 @@ CMenuOptionNumberChooser::CMenuOptionNumberChooser(const neutrino_locale_t name,
iconName = IconName;
}
+int CMenuOptionNumberChooser::getHeight(void) const
+{
+ return g_Font[SNeutrinoSettings::FONT_TYPE_MENU]->getHeight();
+}
+
int CMenuOptionNumberChooser::exec(CMenuTarget*)
{
if (((*optionValue) >= upper_bound) || ((*optionValue) < lower_bound))
@@ -736,6 +740,7 @@ int CMenuOptionNumberChooser::exec(CMenuTarget*)
int CMenuOptionNumberChooser::paint(bool selected)
{
CFrameBuffer * frameBuffer = CFrameBuffer::getInstance();
+ int height = getHeight();
unsigned char color = COL_MENUCONTENT;
fb_pixel_t bgcolor = COL_MENUCONTENT_PLUS_0;
@@ -789,7 +794,6 @@ int CMenuOptionNumberChooser::paint(bool selected)
CMenuOptionChooser::CMenuOptionChooser(const neutrino_locale_t OptionName, int * const OptionValue, const struct keyval * const Options, const unsigned Number_Of_Options, const bool Active, CChangeObserver * const Observ, const neutrino_msg_t DirectKey, const std::string & IconName)
{
- height = g_Font[SNeutrinoSettings::FONT_TYPE_MENU]->getHeight();
optionNameString = g_Locale->getText(OptionName);
optionName = OptionName;
options = Options;
@@ -803,7 +807,6 @@ CMenuOptionChooser::CMenuOptionChooser(const neutrino_locale_t OptionName, int *
CMenuOptionChooser::CMenuOptionChooser(const char* OptionName, int * const OptionValue, const struct keyval * const Options, const unsigned Number_Of_Options, const bool Active, CChangeObserver * const Observ, const neutrino_msg_t DirectKey, const std::string & IconName)
{
- height = g_Font[SNeutrinoSettings::FONT_TYPE_MENU]->getHeight();
optionNameString = OptionName;
optionName = NONEXISTANT_LOCALE;
options = Options;
@@ -815,6 +818,11 @@ CMenuOptionChooser::CMenuOptionChooser(const char* OptionName, int * const Optio
iconName = IconName;
}
+int CMenuOptionChooser::getHeight(void) const
+{
+ return g_Font[SNeutrinoSettings::FONT_TYPE_MENU]->getHeight();
+}
+
void CMenuOptionChooser::setOptionValue(const int newvalue)
{
*optionValue = newvalue;
@@ -858,6 +866,7 @@ int CMenuOptionChooser::exec(CMenuTarget*)
int CMenuOptionChooser::paint( bool selected )
{
CFrameBuffer * frameBuffer = CFrameBuffer::getInstance();
+ int height = getHeight();
unsigned char color = COL_MENUCONTENT;
fb_pixel_t bgcolor = COL_MENUCONTENT_PLUS_0;
@@ -914,7 +923,6 @@ int CMenuOptionChooser::paint( bool selected )
CMenuOptionStringChooser::CMenuOptionStringChooser(const neutrino_locale_t OptionName, char* OptionValue, bool Active, CChangeObserver* Observ)
{
- height = g_Font[SNeutrinoSettings::FONT_TYPE_MENU]->getHeight();
optionName = OptionName;
active = Active;
optionValue = OptionValue;
@@ -924,6 +932,11 @@ CMenuOptionStringChooser::CMenuOptionStringChooser(const neutrino_locale_t Optio
iconName = "";
}
+int CMenuOptionStringChooser::getHeight(void) const
+{
+ return g_Font[SNeutrinoSettings::FONT_TYPE_MENU]->getHeight();
+}
+
void CMenuOptionStringChooser::removeOptions()
{
options.clear();
@@ -965,6 +978,8 @@ int CMenuOptionStringChooser::exec(CMenuTarget*)
int CMenuOptionStringChooser::paint( bool selected )
{
+ int height = getHeight();
+
unsigned char color = COL_MENUCONTENT;
fb_pixel_t bgcolor = COL_MENUCONTENT_PLUS_0;
if (selected)
diff --git a/tuxbox/neutrino/src/gui/widget/menue.h b/tuxbox/neutrino/src/gui/widget/menue.h
index 4c78ae6..6856a33 100644
--- a/tuxbox/neutrino/src/gui/widget/menue.h
+++ b/tuxbox/neutrino/src/gui/widget/menue.h
@@ -202,14 +202,8 @@ class CAbstractMenuOptionChooser : public CMenuItem
{
protected:
neutrino_locale_t optionName;
- int height;
int * optionValue;
- int getHeight(void) const
- {
- return height;
- }
-
bool isSelectable(void) const
{
return active;
@@ -232,6 +226,7 @@ class CMenuOptionNumberChooser : public CAbstractMenuOptionChooser
CMenuOptionNumberChooser(const neutrino_locale_t name, int * const OptionValue, const bool Active, const int min_value, const int max_value, const int print_offset = 0, const int special_value = 0, const neutrino_locale_t special_value_name = NONEXISTANT_LOCALE, const char * non_localized_name = NULL, const neutrino_msg_t DirectKey = CRCInput::RC_nokey, const std::string & IconName = "");
int paint(bool selected);
+ int getHeight(void) const;
int exec(CMenuTarget* parent);
};
@@ -259,6 +254,7 @@ class CMenuOptionChooser : public CAbstractMenuOptionChooser
int getOptionValue(void) const;
int paint(bool selected);
+ int getHeight(void) const;
std::string getOptionName() {return optionNameString;};
int exec(CMenuTarget* parent);
@@ -267,7 +263,6 @@ class CMenuOptionChooser : public CAbstractMenuOptionChooser
class CMenuOptionStringChooser : public CMenuItem
{
neutrino_locale_t optionName;
- int height;
char * optionValue;
std::vector<std::string> options;
CChangeObserver * observ;
@@ -279,10 +274,7 @@ class CMenuOptionStringChooser : public CMenuItem
void addOption(const char * value);
void removeOptions(void);
int paint(bool selected);
- int getHeight(void) const
- {
- return height;
- }
+ int getHeight(void) const;
bool isSelectable(void) const
{
return active;
commit 06223d8149981c055c407bda93fd13fceb08eca6
Author: Christian Schuett <Gau...@ho...>
Date: Fri Mar 1 22:21:43 2013 +0100
CStringInput: move init of 'selected' into constructors
this avoids a reset of the cursor position when paint() is called
Signed-off-by: Christian Schuett <Gau...@ho...>
diff --git a/tuxbox/neutrino/src/gui/widget/stringinput.cpp b/tuxbox/neutrino/src/gui/widget/stringinput.cpp
index 6d7ace3..f79628a 100644
--- a/tuxbox/neutrino/src/gui/widget/stringinput.cpp
+++ b/tuxbox/neutrino/src/gui/widget/stringinput.cpp
@@ -58,6 +58,7 @@ CStringInput::CStringInput(const neutrino_locale_t Name, char* Value, int Size,
valueString = NULL;
valueStringIsUtf8 = false;
size = Size;
+ selected = 0;
hint_1 = Hint_1;
hint_2 = Hint_2;
@@ -80,6 +81,7 @@ CStringInput::CStringInput(const neutrino_locale_t Name, std::string* Value, int
valueString = Value;
valueStringIsUtf8 = ValueIsUtf8;
size = Size;
+ selected = 0;
hint_1 = Hint_1;
hint_2 = Hint_2;
@@ -124,11 +126,8 @@ void CStringInput::init()
x = ((720-width)>>1);
y = ((500-height)>>1);
- selected = 0;
-
}
-
void CStringInput::NormalKeyPressed(const neutrino_msg_t key)
{
if (CRCInput::isNumeric(key))
commit d6d6813aa578d4a918c633b4e46a6e9c9c303948
Author: GetAway <get...@t-...>
Date: Thu Mar 7 19:42:31 2013 +0100
increase size of returned CurrentNext text
Signed-off-by: Thilo Graf <db...@no...>
diff --git a/tuxbox/neutrino/daemons/sectionsd/sectionsd.cpp b/tuxbox/neutrino/daemons/sectionsd/sectionsd.cpp
index bfb7124..633994e 100644
--- a/tuxbox/neutrino/daemons/sectionsd/sectionsd.cpp
+++ b/tuxbox/neutrino/daemons/sectionsd/sectionsd.cpp
@@ -1,5 +1,5 @@
//
-// $Id: sectionsd.cpp,v 1.344 2012/09/23 08:25:00 rhabarber1848 Exp $
+// $Id: sectionsd.cpp,v 1.345 2013/03/07 19:30:00 GetAway Exp Exp $
//
// sectionsd.cpp (network daemon for SI-sections)
// (dbox-II-project)
@@ -2606,7 +2606,7 @@ static void commandDumpStatusInformation(int connfd, char* /*data*/, const unsig
char stati[MAX_SIZE_STATI];
snprintf(stati, MAX_SIZE_STATI,
- "$Id: sectionsd.cpp,v 1.344 2012/09/23 08:25:00 rhabarber1848 Exp $\n"
+ "$Id: sectionsd.cpp,v 1.345 2013/03/07 19:30:00 GetAway Exp $\n"
"%sCurrent time: %s"
"Hours to cache: %ld\n"
"Hours to cache extended text: %ld\n"
@@ -3810,7 +3810,7 @@ static void sendEventList(int connfd, const unsigned char serviceTyp1, const uns
count += sizeof(event_id_t) + 4 + 4 + eName.length() + 1;
if (eText.empty())
{
- count += eExtendedText.substr(0, 50).length();
+ count += eExtendedText.substr(0, 95).length();
}
else
{
@@ -3831,7 +3831,8 @@ static void sendEventList(int connfd, const unsigned char serviceTyp1, const uns
if (eText.empty())
{
- strcpy(liste, eExtendedText.substr(0, 50).c_str());
+ /* we need about 95 chars for infobox, when using smallest font zoom factor*/
+ strcpy(liste, eExtendedText.substr(0, 95).c_str());
liste += strlen(liste);
}
else
@@ -8589,7 +8590,7 @@ int main(int argc, char **argv)
struct sched_param parm;
- printf("$Id: sectionsd.cpp,v 1.344 2012/09/23 08:25:00 rhabarber1848 Exp $\n");
+ printf("$Id: sectionsd.cpp,v 1.345 2013/03/07 19:30:00 GetAway Exp $\n");
#ifdef ENABLE_FREESATEPG
printf("[sectionsd] FreeSat enabled\n");
#endif
commit 346b925b26e17f501b2552dbe3e19a13c09dc9d6
Author: GetAway <get...@t-...>
Date: Thu Feb 28 21:27:47 2013 +0100
fontrenderer.cpp: add forgotten fix from coolstream port
Signed-off-by: Thilo Graf <db...@no...>
diff --git a/tuxbox/neutrino/src/driver/fontrenderer.cpp b/tuxbox/neutrino/src/driver/fontrenderer.cpp
index 050b495..aefeb31 100644
--- a/tuxbox/neutrino/src/driver/fontrenderer.cpp
+++ b/tuxbox/neutrino/src/driver/fontrenderer.cpp
@@ -452,17 +452,25 @@ void Font::RenderString(int x, int y, const int width, const char *text, const u
for (; *text; text++)
{
FTC_SBit glyph;
- if (*text=='\n')
- {
- x = left;
- y += step_y;
- }
int unicode_value = UTF8ToUnicode(text, utf8_encoded);
if (unicode_value == -1)
break;
+ if (*text=='\n')
+ {
+ /* a '\n' in the text is basically an error, it should not have come
+ until here. To find the offenders, we replace it with a paragraph
+ marker */
+ unicode_value = 0x00b6; /* ¶ PILCROW SIGN */
+ /* this did not work anyway - pen1 overrides x value down below :-)
+ and there are no checks that we don't leave our assigned box
+ x = left;
+ y += step_y;
+ */
+ }
+
int index = FT_Get_Char_Index(face, unicode_value);
if (!index)
commit 21e23bf1da812e6f1aa08d8c222414f17d3038e7
Author: Christian Schuett <Gau...@ho...>
Date: Thu Feb 28 19:54:50 2013 +0100
follow-up to commit 07fcbdc
Signed-off-by: Christian Schuett <Gau...@ho...>
diff --git a/tuxbox/neutrino/src/gui/osd_setup.cpp b/tuxbox/neutrino/src/gui/osd_setup.cpp
index f915f5b..2d0d2a4 100644
--- a/tuxbox/neutrino/src/gui/osd_setup.cpp
+++ b/tuxbox/neutrino/src/gui/osd_setup.cpp
@@ -603,7 +603,7 @@ int COsdSetup::showOsdFontSizeSetup()
CMenuWidget * fontSettings = new CMenuWidget(menue_title, menue_icon, width);
fontSettings->addIntroItems(LOCALE_FONTMENU_HEAD);
- CMenuWidget * fontscale = new CMenuWidget(LOCALE_FONTMENU_HEAD, NEUTRINO_ICON_COLORS, width/*, MN_WIDGET_ID_OSDSETUP_FONTSCALE*/);
+ CMenuWidget * fontscale = new CMenuWidget(LOCALE_FONTMENU_HEAD, menue_icon, width);
fontscale->addIntroItems(LOCALE_FONTMENU_SCALING);
CStringInput xres_count(LOCALE_FONTMENU_SCALING_X, val_x,/*50,200,*/ 3, LOCALE_FONTMENU_SCALING, LOCALE_FONTMENU_SCALING_X_HINT2, "0123456789 ", fontsizenotifier);
@@ -627,7 +627,7 @@ int COsdSetup::showOsdFontSizeSetup()
for (int i = 0; i < 5; i++)
{
- CMenuWidget * fontSettingsSubMenu = new CMenuWidget(font_sizes_groups[i].groupname, NEUTRINO_ICON_COLORS, width);
+ CMenuWidget * fontSettingsSubMenu = new CMenuWidget(font_sizes_groups[i].groupname, menue_icon, width);
toDelete.push_back(fontSettingsSubMenu);
fontSettingsSubMenu->addIntroItems();
for (unsigned int j = 0; j < font_sizes_groups[i].count; j++)
@@ -680,7 +680,7 @@ bool CFontSizeNotifier::changeNotify(const neutrino_locale_t OptionName, void *
snprintf((char *)data,sizeof(data), "%03d",g_settings.screen_xres);
}
}
- if (ARE_LOCALES_EQUAL(OptionName, LOCALE_FONTMENU_SCALING_Y))
+ else if (ARE_LOCALES_EQUAL(OptionName, LOCALE_FONTMENU_SCALING_Y))
{
yre = atoi(val);
if( yre < 50 || yre > 200 ) {
@@ -688,6 +688,7 @@ bool CFontSizeNotifier::changeNotify(const neutrino_locale_t OptionName, void *
snprintf((char *)data,sizeof(data), "%03d",g_settings.screen_yres);
}
}
+
if (xre != g_settings.screen_xres || yre != g_settings.screen_yres) {
printf("[neutrino] new font scale settings x: %d%% y: %d%%\n", xre, yre);
g_settings.screen_xres = xre;
diff --git a/tuxbox/neutrino/src/gui/widget/stringinput.cpp b/tuxbox/neutrino/src/gui/widget/stringinput.cpp
index 8eb9b36..6d7ace3 100644
--- a/tuxbox/neutrino/src/gui/widget/stringinput.cpp
+++ b/tuxbox/neutrino/src/gui/widget/stringinput.cpp
@@ -87,7 +87,6 @@ CStringInput::CStringInput(const neutrino_locale_t Name, std::string* Value, int
iconfile = Icon ? Icon : "";
observ = Observ;
- init();
}
CStringInput::~CStringInput()
-----------------------------------------------------------------------
Summary of changes:
tuxbox/neutrino/daemons/sectionsd/sectionsd.cpp | 11 +++---
tuxbox/neutrino/data/locale/deutsch.locale | 5 ++-
tuxbox/neutrino/data/locale/english.locale | 5 ++-
tuxbox/neutrino/src/driver/fontrenderer.cpp | 18 +++++++---
tuxbox/neutrino/src/gui/audioplayer.cpp | 23 +++++++------
.../src/gui/bedit/bouqueteditor_bouquets.cpp | 2 +-
.../src/gui/bedit/bouqueteditor_channels.cpp | 2 +-
.../src/gui/bedit/bouqueteditor_chanselect.cpp | 2 +-
tuxbox/neutrino/src/gui/bouquetlist.cpp | 4 +-
tuxbox/neutrino/src/gui/channellist.cpp | 4 +-
tuxbox/neutrino/src/gui/epgplus.cpp | 2 +-
tuxbox/neutrino/src/gui/epgview.cpp | 6 ++--
tuxbox/neutrino/src/gui/eventlist.cpp | 35 ++++++++++---------
tuxbox/neutrino/src/gui/eventlist.h | 1 +
tuxbox/neutrino/src/gui/filebrowser.cpp | 6 ++--
tuxbox/neutrino/src/gui/imageinfo.cpp | 5 +--
tuxbox/neutrino/src/gui/infoviewer.cpp | 20 ++++++-----
tuxbox/neutrino/src/gui/motorcontrol.cpp | 13 ++++---
tuxbox/neutrino/src/gui/osd_setup.cpp | 10 ++++--
tuxbox/neutrino/src/gui/screensetup.cpp | 3 ++
tuxbox/neutrino/src/gui/streaminfo2.cpp | 4 +-
tuxbox/neutrino/src/gui/timerlist.cpp | 18 +++-------
tuxbox/neutrino/src/gui/widget/buttons.cpp | 14 ++++++--
tuxbox/neutrino/src/gui/widget/buttons.h | 2 +-
tuxbox/neutrino/src/gui/widget/menue.cpp | 23 +++++++++++--
tuxbox/neutrino/src/gui/widget/menue.h | 14 ++------
tuxbox/neutrino/src/gui/widget/stringinput.cpp | 19 ++++++-----
tuxbox/neutrino/src/system/locals.h | 3 ++
tuxbox/neutrino/src/system/locals_intern.h | 3 ++
29 files changed, 159 insertions(+), 118 deletions(-)
--
Tuxbox-GIT: apps
|
|
From: Thilo G. <tux...@ne...> - 2013-03-08 07:48:11
|
Project "Tuxbox-GIT: apps":
The branch, master has been updated
via a0de98af3b9ad40ee7d015e5fce203feb84d5f10 (commit)
from 4a7428140c57a6f14ba059019f5983c6eb7c8d28 (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
commit a0de98af3b9ad40ee7d015e5fce203feb84d5f10
Author: Stefan Seyfried <se...@tu...>
Date: Thu Mar 7 22:12:03 2013 +0100
zapit: fix compile with gcc4
diff --git a/dvb/zapit/src/zapit.cpp b/dvb/zapit/src/zapit.cpp
index 1be2bea..c5f8228 100644
--- a/dvb/zapit/src/zapit.cpp
+++ b/dvb/zapit/src/zapit.cpp
@@ -3065,9 +3065,7 @@ void leaveStandby(void)
frontend->setDiseqcRepeats(config.getInt32("diseqcRepeats", 0));
//motorRotationSpeed = scanconfig.getInt32("motorRotationSpeed", 8); // default: 0.8 degrees per second
diseqcType = (diseqc_t)config.getInt32("diseqcType", NO_DISEQC);
- int uni_scr = config.getInt32("uni_scr", 0);
- int uni_qrg = config.getInt32("uni_qrg", 0);
- frontend->setUnicable(uni_scr, uni_qrg);
+ frontend->setUnicable(config.getInt32("uni_scr", 0), config.getInt32("uni_qrg", 0));
frontend->setDiseqcType(diseqcType);
for (unsigned int i = 0; i < MAX_LNBS; i++) {
-----------------------------------------------------------------------
Summary of changes:
dvb/zapit/src/zapit.cpp | 4 +---
1 files changed, 1 insertions(+), 3 deletions(-)
--
Tuxbox-GIT: apps
|
|
From: Thilo G. <tux...@ne...> - 2013-03-07 10:46:22
|
Project "Tuxbox-GIT: apps":
The branch, master has been updated
via 4a7428140c57a6f14ba059019f5983c6eb7c8d28 (commit)
via a547e4575600baa79f0f14cf4b3505e33f3eafba (commit)
via bbeb938f65eaf7fa8112d352663055cab0fe701e (commit)
from 07fcbdcaf0b55d4e4b13fbb71fad37be6598b068 (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
commit 4a7428140c57a6f14ba059019f5983c6eb7c8d28
Author: Stefan Seyfried <se...@tu...>
Date: Thu Mar 7 11:32:20 2013 +0100
neutrino: add GUI setup support for unicable
diff --git a/tuxbox/neutrino/data/locale/deutsch.locale b/tuxbox/neutrino/data/locale/deutsch.locale
index 6039a13..74c06dc 100644
--- a/tuxbox/neutrino/data/locale/deutsch.locale
+++ b/tuxbox/neutrino/data/locale/deutsch.locale
@@ -1254,6 +1254,10 @@ satsetup.satellite Satellit
satsetup.savesettingsnow Einstellungen jetzt speichern
satsetup.smatvremote SMATV Remote Tuning
satsetup.south Süd
+satsetup.unicable Unicable
+satsetup.unicable_qrg Unicable Frequenz
+satsetup.unicable_scr Unicable SCR#
+satsetup.unicable_settings Unicable Einstellungen
satsetup.usegotoxx Benutze GotoXX
satsetup.west West
scantp.fec FEC
diff --git a/tuxbox/neutrino/data/locale/english.locale b/tuxbox/neutrino/data/locale/english.locale
index 7627c6f..3e09a55 100644
--- a/tuxbox/neutrino/data/locale/english.locale
+++ b/tuxbox/neutrino/data/locale/english.locale
@@ -1254,6 +1254,10 @@ satsetup.satellite Satellite
satsetup.savesettingsnow save settings now
satsetup.smatvremote SMATV Remote Tuning
satsetup.south South
+satsetup.unicable Unicable
+satsetup.unicable_qrg Unicable Frequency
+satsetup.unicable_scr Unicable SCR#
+satsetup.unicable_settings Unicable Settings
satsetup.usegotoxx Use GotoXX
satsetup.west West
scantp.fec FEC
diff --git a/tuxbox/neutrino/src/gui/scan.cpp b/tuxbox/neutrino/src/gui/scan.cpp
index 0bc6cad..b1d7bc1 100644
--- a/tuxbox/neutrino/src/gui/scan.cpp
+++ b/tuxbox/neutrino/src/gui/scan.cpp
@@ -4,6 +4,8 @@
Copyright (C) 2001 Steffen Hehn 'McClean'
Homepage: http://dbox.cyberphoria.org/
+ Copyright (C) 2007-2009, 2013 Stefan Seyfried
+
Kommentar:
Diese GUI wurde von Grund auf neu programmiert und sollte nun vom
@@ -151,6 +153,9 @@ printf("[neutrino] TP_scan %d TP_freq %s TP_rate %s TP_fec %d TP_pol %d TP_mod %
/* send diseqc type to zapit */
diseqcType = CNeutrinoApp::getInstance()->getScanSettings().diseqcMode;
+ if (diseqcType == DISEQC_UNICABLE)
+ g_Zapit->setUnicableParam(CNeutrinoApp::getInstance()->getScanSettings().uni_scr,
+ CNeutrinoApp::getInstance()->getScanSettings().uni_qrg);
g_Zapit->setDiseqcType(diseqcType);
/* send diseqc repeat to zapit */
diff --git a/tuxbox/neutrino/src/gui/scan_setup.cpp b/tuxbox/neutrino/src/gui/scan_setup.cpp
index b45cd63..aeefd1d 100644
--- a/tuxbox/neutrino/src/gui/scan_setup.cpp
+++ b/tuxbox/neutrino/src/gui/scan_setup.cpp
@@ -12,6 +12,8 @@
Copyright (C) 2009 T. Graf 'dbt'
Homepage: http://www.dbox2-tuning.net/
+ Copyright (C) 2013 Stefan Seyfried
+
License: GPL
This program is free software; you can redistribute it and/or modify
@@ -44,6 +46,7 @@
#include <gui/widget/icons.h>
#include <gui/widget/stringinput.h>
+#include <gui/widget/stringinput_ext.h>
#include <gui/widget/hintbox.h>
#include <driver/screen_max.h>
@@ -140,7 +143,7 @@ const CMenuOptionChooser::keyval SATSETUP_SCANTP_POL[SATSETUP_SCANTP_POL_COUNT]
{ 1, LOCALE_SCANTP_POL_V }
};
-#define SATSETUP_DISEQC_OPTION_COUNT 6
+#define SATSETUP_DISEQC_OPTION_COUNT 7
const CMenuOptionChooser::keyval SATSETUP_DISEQC_OPTIONS[SATSETUP_DISEQC_OPTION_COUNT] =
{
{ NO_DISEQC , LOCALE_SATSETUP_NODISEQC },
@@ -148,6 +151,7 @@ const CMenuOptionChooser::keyval SATSETUP_DISEQC_OPTIONS[SATSETUP_DISEQC_OPTION_
{ DISEQC_1_0 , LOCALE_SATSETUP_DISEQC10 },
{ DISEQC_1_1 , LOCALE_SATSETUP_DISEQC11 },
{ DISEQC_1_2 , LOCALE_SATSETUP_DISEQC12 },
+ { DISEQC_UNICABLE , LOCALE_SATSETUP_UNICABLE },
{ SMATV_REMOTE_TUNING, LOCALE_SATSETUP_SMATVREMOTE }
};
@@ -233,10 +237,12 @@ int CScanSetup::showScanService()
//prepare sat-lnb-settings
CMenuWidget* extSatSettings = NULL;
CMenuWidget* extMotorSettings = NULL;
+ CMenuWidget* extUnicableSettings = NULL;
CStringInput* toff_lat = NULL;
CStringInput* toff_long = NULL;
CMotorControl* motorControl = NULL;
CSatDiseqcNotifier* satDiseqcNotifier = NULL;
+ CIntInput* uniqrg = NULL;
//sat-lnb-settings
if(g_info.delivery_system == DVB_S)
@@ -244,7 +250,7 @@ int CScanSetup::showScanService()
g_Zapit->getScanSatelliteList(satList);
//prepare diseqc
- CMenuOptionStringChooser* ojSat = new CMenuOptionStringChooser(LOCALE_SATSETUP_SATELLITE, scanSettings.satNameNoDiseqc, ((scanSettings.diseqcMode == DISEQC_1_2) || (scanSettings.diseqcMode == NO_DISEQC)));
+ CMenuOptionStringChooser* ojSat = new CMenuOptionStringChooser(LOCALE_SATSETUP_SATELLITE, scanSettings.satNameNoDiseqc, ((scanSettings.diseqcMode == DISEQC_1_2) || (scanSettings.diseqcMode == NO_DISEQC)|| scanSettings.diseqcMode == DISEQC_UNICABLE));
for (uint i=0; i < sat_list_size; i++)
{
@@ -253,7 +259,7 @@ int CScanSetup::showScanService()
}
//prepare diseqc repeats
- CMenuOptionNumberChooser * ojDiseqcRepeats = new CMenuOptionNumberChooser(LOCALE_SATSETUP_DISEQCREPEAT, (int *)&scanSettings.diseqcRepeat, (scanSettings.diseqcMode != NO_DISEQC) && (scanSettings.diseqcMode != DISEQC_1_0), 0, 2);
+ CMenuOptionNumberChooser * ojDiseqcRepeats = new CMenuOptionNumberChooser(LOCALE_SATSETUP_DISEQCREPEAT, (int *)&scanSettings.diseqcRepeat, (scanSettings.diseqcMode != NO_DISEQC) && (scanSettings.diseqcMode != DISEQC_1_0) && scanSettings.diseqcMode != DISEQC_UNICABLE, 0, 2);
//extended sat settings
extSatSettings = new CMenuWidget(LOCALE_SATSETUP_EXTENDED, NEUTRINO_ICON_SETTINGS);
@@ -262,7 +268,7 @@ int CScanSetup::showScanService()
extSatSettings->addIntroItems();
//prepare diseqc mode
- CMenuForwarder* ojExtSatSettings = new CMenuForwarder(LOCALE_SATSETUP_EXTENDED, (scanSettings.diseqcMode != NO_DISEQC), NULL, extSatSettings, NULL, CRCInput::RC_1);
+ CMenuForwarder* ojExtSatSettings = new CMenuForwarder(LOCALE_SATSETUP_EXTENDED, (scanSettings.diseqcMode != NO_DISEQC && scanSettings.diseqcMode != DISEQC_UNICABLE), NULL, extSatSettings, NULL, CRCInput::RC_1);
//make sat list
for( uint i=0; i < sat_list_size; i++)
@@ -318,10 +324,19 @@ int CScanSetup::showScanService()
extMotorSettings->addItem(oj);
}
+ extUnicableSettings = new CMenuWidget(LOCALE_SATSETUP_UNICABLE_SETTINGS, NEUTRINO_ICON_SETTINGS);
+ extUnicableSettings->addIntroItems();
+ CMenuOptionNumberChooser *uniscr = new CMenuOptionNumberChooser(LOCALE_SATSETUP_UNICABLE_SCR, (int *)&scanSettings.uni_scr, true, 0, 7);
+ uniqrg = new CIntInput(LOCALE_SATSETUP_UNICABLE_QRG, (long &)scanSettings.uni_qrg, 4, LOCALE_GENERIC_EMPTY, LOCALE_GENERIC_EMPTY, NULL);
+ extUnicableSettings->addItem(uniscr);
+ extUnicableSettings->addItem(new CMenuForwarder(LOCALE_SATSETUP_UNICABLE_QRG, true, uniqrg->getValue(), uniqrg));
+ CMenuForwarder* ojExtUnicableSettings = new CMenuForwarder(LOCALE_SATSETUP_UNICABLE, (scanSettings.diseqcMode == DISEQC_UNICABLE), NULL, extUnicableSettings, NULL, CRCInput::RC_3);
+
//prepare sat list with diseqc options
- satDiseqcNotifier = new CSatDiseqcNotifier(ojSat, ojExtSatSettings, ojExtMotorSettings, ojDiseqcRepeats);
+ satDiseqcNotifier = new CSatDiseqcNotifier(ojSat, ojExtSatSettings, ojExtMotorSettings, ojDiseqcRepeats, ojExtUnicableSettings);
CMenuOptionChooser* ojDiseqc = new CMenuOptionChooser(LOCALE_SATSETUP_DISEQC, (int *)&scanSettings.diseqcMode, SATSETUP_DISEQC_OPTIONS, SATSETUP_DISEQC_OPTION_COUNT, true, satDiseqcNotifier);
+
//show entries
scansetup->addItem( ojScantype );
scansetup->addItem( ojBouquets );
@@ -332,6 +347,7 @@ int CScanSetup::showScanService()
scansetup->addItem( ojExtSatSettings );
scansetup->addItem( ojExtMotorSettings );
+ scansetup->addItem( ojExtUnicableSettings );
}
else
{//cable
@@ -388,11 +404,13 @@ int CScanSetup::showScanService()
delete extSatSettings;
delete extMotorSettings;
+ delete extUnicableSettings;
delete toff_lat;
delete toff_long;
delete motorControl;
delete satDiseqcNotifier;
delete scanTs;
+ delete uniqrg;
return res;
}
@@ -580,6 +598,15 @@ bool CSatDiseqcNotifier::changeNotify(const neutrino_locale_t, void * Data)
repeatMenu->setActive(true);
}
else
+ if (*((int*) Data) == DISEQC_UNICABLE)
+ {
+ satMenu->setActive(true);
+ extMenu->setActive(false);
+ extMotorMenu->setActive(false);
+ repeatMenu->setActive(false);
+ extUnicableMenu->setActive(true);
+ }
+ else
{
satMenu->setActive(false);
extMenu->setActive(true);
diff --git a/tuxbox/neutrino/src/gui/scan_setup.h b/tuxbox/neutrino/src/gui/scan_setup.h
index 4edfe98..769a08c 100644
--- a/tuxbox/neutrino/src/gui/scan_setup.h
+++ b/tuxbox/neutrino/src/gui/scan_setup.h
@@ -63,11 +63,12 @@ class CSatDiseqcNotifier : public CChangeObserver
CMenuItem* extMenu;
CMenuItem* extMotorMenu;
CMenuItem* repeatMenu;
+ CMenuItem* extUnicableMenu;
protected:
CSatDiseqcNotifier( ) : CChangeObserver(){}; // prevent calling constructor without data we need
public:
- CSatDiseqcNotifier( CMenuItem* SatMenu, CMenuItem* ExtMenu, CMenuItem* ExtMotorMenu, CMenuItem* RepeatMenu) : CChangeObserver()
- { satMenu = SatMenu; extMenu = ExtMenu; extMotorMenu = ExtMotorMenu; repeatMenu = RepeatMenu;};
+ CSatDiseqcNotifier( CMenuItem* SatMenu, CMenuItem* ExtMenu, CMenuItem* ExtMotorMenu, CMenuItem* RepeatMenu, CMenuItem* ExtUnicableMenu) : CChangeObserver()
+ { satMenu = SatMenu; extMenu = ExtMenu; extMotorMenu = ExtMotorMenu; repeatMenu = RepeatMenu; extUnicableMenu = ExtUnicableMenu; };
bool changeNotify(const neutrino_locale_t, void * Data);
};
diff --git a/tuxbox/neutrino/src/neutrino.cpp b/tuxbox/neutrino/src/neutrino.cpp
index 4834f39..0d18ed5 100644
--- a/tuxbox/neutrino/src/neutrino.cpp
+++ b/tuxbox/neutrino/src/neutrino.cpp
@@ -8,7 +8,7 @@
Homepage: http://dbox.cyberphoria.org/
Copyright (C) 2008 Novell, Inc. Author: Stefan Seyfried
- Copyright (C) 2007, 2008, 2009 Stefan Seyfried
+ Copyright (C) 2007-2010, 2013 Stefan Seyfried
Kommentar:
@@ -4056,6 +4056,8 @@ int CNeutrinoApp::exec(CMenuTarget* /*parent*/, const std::string & actionKey)
CNeutrinoApp::getInstance()->getScanSettings().toMotorPosList(motorPosList);
g_Zapit->setScanMotorPosList(motorPosList);
}
+ /* set unicable, is only used if diseqcMode == DISEQC_UNICABLE */
+ g_Zapit->setUnicableParam(scanSettings.uni_scr, scanSettings.uni_qrg);
// Houdini set DiseqcType/Repeat so you don't have to reboot for changes to take effect
/* send diseqc type to zapit */
g_Zapit->setDiseqcType(CNeutrinoApp::getInstance()->getScanSettings().diseqcMode);
diff --git a/tuxbox/neutrino/src/system/locals.h b/tuxbox/neutrino/src/system/locals.h
index 54886d8..41c2ece 100644
--- a/tuxbox/neutrino/src/system/locals.h
+++ b/tuxbox/neutrino/src/system/locals.h
@@ -2,7 +2,7 @@
#define __locals__
/*
- * $Id: locals.h,v 1.205 2012/11/03 07:04:00 rhabarber1848 Exp $
+ * $Id$
*
* (C) 2004 by thegoodguy <the...@be...>
*
@@ -1281,6 +1281,10 @@ typedef enum
LOCALE_SATSETUP_SAVESETTINGSNOW,
LOCALE_SATSETUP_SMATVREMOTE,
LOCALE_SATSETUP_SOUTH,
+ LOCALE_SATSETUP_UNICABLE,
+ LOCALE_SATSETUP_UNICABLE_QRG,
+ LOCALE_SATSETUP_UNICABLE_SCR,
+ LOCALE_SATSETUP_UNICABLE_SETTINGS,
LOCALE_SATSETUP_USEGOTOXX,
LOCALE_SATSETUP_WEST,
LOCALE_SCANTP_FEC,
diff --git a/tuxbox/neutrino/src/system/locals_intern.h b/tuxbox/neutrino/src/system/locals_intern.h
index 13c7be6..52bbdb4 100644
--- a/tuxbox/neutrino/src/system/locals_intern.h
+++ b/tuxbox/neutrino/src/system/locals_intern.h
@@ -2,7 +2,7 @@
#define __locals_intern__
/*
- * $Id: locals_intern.h,v 1.205 2012/11/03 07:04:00 rhabarber1848 Exp $
+ * $Id$
*
* (C) 2004 by thegoodguy <the...@be...>
*
@@ -1281,6 +1281,10 @@ const char * locale_real_names[] =
"satsetup.savesettingsnow",
"satsetup.smatvremote",
"satsetup.south",
+ "satsetup.unicable",
+ "satsetup.unicable_qrg",
+ "satsetup.unicable_scr",
+ "satsetup.unicable_settings",
"satsetup.usegotoxx",
"satsetup.west",
"scantp.fec",
diff --git a/tuxbox/neutrino/src/system/settings.cpp b/tuxbox/neutrino/src/system/settings.cpp
index 0599bb6..3bca8c6 100644
--- a/tuxbox/neutrino/src/system/settings.cpp
+++ b/tuxbox/neutrino/src/system/settings.cpp
@@ -4,6 +4,9 @@
Neutrino-GUI - DBoxII-Project
+ (C) 2002-2012 tuxbox developers
+ (C) 2008-2009, 2013 Stefan Seyfried
+
License: GPL
This program is free software; you can redistribute it and/or modify
@@ -129,7 +132,7 @@ void CScanSettings::toSatList( CZapitClient::ScanSatelliteList& satList) const
satList.push_back(sat);
}
}
- else if (diseqcMode == NO_DISEQC)
+ else if (diseqcMode == NO_DISEQC || diseqcMode == DISEQC_UNICABLE)
{
strncpy(sat.satName, satNameNoDiseqc, 30);
sat.diseqc = 0;
@@ -187,6 +190,8 @@ void CScanSettings::useDefaults(const delivery_system_t _delivery_system)
scanType = CZapitClient::ST_ALL;
diseqcMode = NO_DISEQC;
diseqcRepeat = 0;
+ uni_qrg = 1210;
+ uni_scr = 0;
motorRotationSpeed = 8;
useGotoXX = 0;
@@ -234,6 +239,8 @@ bool CScanSettings::loadSettings(const char * const fileName, const delivery_sys
diseqcMode = (diseqc_t) configfile.getInt32("diseqcMode" , diseqcMode);
diseqcRepeat = configfile.getInt32("diseqcRepeat", diseqcRepeat);
+ uni_qrg = configfile.getInt32("uni_qrg", uni_qrg);
+ uni_scr = configfile.getInt32("uni_scr", uni_scr);
bouquetMode = (CZapitClient::bouquetMode) configfile.getInt32("bouquetMode" , bouquetMode);
scanType=(CZapitClient::scanType) configfile.getInt32("scanType", scanType);
strcpy(satNameNoDiseqc, configfile.getString("satNameNoDiseqc", satNameNoDiseqc).c_str());
@@ -294,6 +301,8 @@ bool CScanSettings::saveSettings(const char * const fileName)
configfile.setInt32( "delivery_system", delivery_system);
configfile.setInt32( "diseqcMode", diseqcMode );
+ configfile.setInt32( "uni_scr", uni_scr );
+ configfile.setInt32( "uni_qrg", uni_qrg );
configfile.setInt32( "diseqcRepeat", diseqcRepeat );
configfile.setInt32( "bouquetMode", bouquetMode );
configfile.setInt32( "scanType", scanType );
diff --git a/tuxbox/neutrino/src/system/settings.h b/tuxbox/neutrino/src/system/settings.h
index ede6d26..b504adc 100644
--- a/tuxbox/neutrino/src/system/settings.h
+++ b/tuxbox/neutrino/src/system/settings.h
@@ -598,6 +598,8 @@ class CScanSettings
t_satellite_position satPosition[MAX_SATELLITES];
char satName[MAX_SATELLITES][30];
delivery_system_t delivery_system;
+ int uni_qrg;
+ int uni_scr;
int scanSectionsd;
commit a547e4575600baa79f0f14cf4b3505e33f3eafba
Author: Stefan Seyfried <se...@tu...>
Date: Thu Mar 7 11:32:20 2013 +0100
pzapit: add option to set unicable parameters
diff --git a/dvb/zapit/src/pzapit.cpp b/dvb/zapit/src/pzapit.cpp
index 52b8522..84a0a47 100644
--- a/dvb/zapit/src/pzapit.cpp
+++ b/dvb/zapit/src/pzapit.cpp
@@ -4,6 +4,7 @@
* simple commandline client for zapit
*
* Copyright (C) 2002 by Andreas Oberritter <ob...@tu...>
+ * Copyright (C) 2007-2010,2013 Stefan Seyfried
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
@@ -68,6 +69,7 @@ int usage (const char * basename)
<< "\t--pal\t\t\tswitch to PAL mode" << std::endl
<< "\t-m <cmdtype> <addr> <cmd> <number or params> <param1> <param2>" << std::endl
<< "\t\t\t\tsend DiSEqC 1.2 motor command" << std::endl
+ << "\t-u <scr> <freq>\t\tset unicable parameters" << std::endl
#ifdef HAVE_DBOX_HARDWARE
<< " those require the aviaEXT driver:" << std::endl
<< "\t--iecon\t\t\tactivate IEC" << std::endl
@@ -154,6 +156,8 @@ int main (int argc, char** argv)
uint8_t motorParam2 = 0;
uint8_t motorAddr = 0;
uint32_t diseqc[5];
+ int uni_scr = -1;
+ int uni_qrg = -1;
unsigned int tmp;
/* command line */
@@ -340,6 +344,12 @@ int main (int argc, char** argv)
mute = 0;
continue;
}
+ else if (!strcmp(argv[i], "-u") && i < argc - 2)
+ {
+ uni_scr = atoi(argv[++i]);
+ uni_qrg = atoi(argv[++i]);
+ continue;
+ }
#ifdef HAVE_DBOX_HARDWARE
else if (!strncmp(argv[i], "--iecon", 7))
{
@@ -466,6 +476,13 @@ int main (int argc, char** argv)
return 0;
}
+ if (uni_scr != -1)
+ {
+ zapit.setUnicableParam(uni_scr, uni_qrg);
+ if (diseqcType == -1)
+ return 0;
+ }
+
if (enterStandby)
{
zapit.setStandby(true);
commit bbeb938f65eaf7fa8112d352663055cab0fe701e
Author: Stefan Seyfried <se...@tu...>
Date: Thu Mar 7 11:32:20 2013 +0100
zapit: add unicable support
diff --git a/dvb/zapit/include/zapit/client/msgtypes.h b/dvb/zapit/include/zapit/client/msgtypes.h
index 9d55318..755b321 100644
--- a/dvb/zapit/include/zapit/client/msgtypes.h
+++ b/dvb/zapit/include/zapit/client/msgtypes.h
@@ -158,6 +158,8 @@ class CZapitMessages
CMD_SET_UNCOMMITTED_SWITCH_MODE = 96,
CMD_GET_UNCOMMITTED_SWITCH_MODE = 97,
CMD_LOADSCANSETTINGS = 98,
+ CMD_SET_UNICABLE_OPTS = 99,
+ CMD_GET_UNICABLE_OPTS = 100,
#ifdef HAVE_TRIPLEDRAGON
CMD_SET_ZOOMLEVEL = 120,
@@ -381,6 +383,12 @@ class CZapitMessages
unsigned int channel;
};
+ struct unicableParam
+ {
+ int scr;
+ int qrg;
+ };
+
#ifdef HAVE_TRIPLEDRAGON
struct commandPig
{
diff --git a/dvb/zapit/include/zapit/client/zapitclient.h b/dvb/zapit/include/zapit/client/zapitclient.h
index 22c5acd..733e604 100644
--- a/dvb/zapit/include/zapit/client/zapitclient.h
+++ b/dvb/zapit/include/zapit/client/zapitclient.h
@@ -414,6 +414,10 @@ class CZapitClient:public CBasicClient
/* set diseqcRepeat*/
void setDiseqcRepeat(const uint32_t repeat);
+ /* set the unicable tuning parameters */
+ void setUnicableParam(const int scr, const int qrg);
+ void getUnicableParam(int &scr, int &qrg);
+
/* set diseqcRepeat*/
void setScanBouquetMode(const bouquetMode mode);
diff --git a/dvb/zapit/include/zapit/client/zapittypes.h b/dvb/zapit/include/zapit/client/zapittypes.h
index bc054a0..5edc0e2 100644
--- a/dvb/zapit/include/zapit/client/zapittypes.h
+++ b/dvb/zapit/include/zapit/client/zapittypes.h
@@ -110,13 +110,11 @@ typedef enum {
SMATV_REMOTE_TUNING,
DISEQC_1_0,
DISEQC_1_1,
- DISEQC_1_2
-#if HAVE_DVB_API_VERSION >= 3 && ! defined(HAVE_TRIPLEDRAGON)
- ,
+ DISEQC_1_2,
DISEQC_2_0,
DISEQC_2_1,
- DISEQC_2_2
-#endif
+ DISEQC_2_2,
+ DISEQC_UNICABLE
} diseqc_t;
/* dvb transmission types */
diff --git a/dvb/zapit/include/zapit/frontend.h b/dvb/zapit/include/zapit/frontend.h
index 4b47b5a..aea1a06 100644
--- a/dvb/zapit/include/zapit/frontend.h
+++ b/dvb/zapit/include/zapit/frontend.h
@@ -49,6 +49,9 @@ class CFrontend
int32_t lnbOffsetsLow[MAX_LNBS];
/* high lnb offsets */
int32_t lnbOffsetsHigh[MAX_LNBS];
+ /* unicable frequency and SCR# */
+ int uni_qrg;
+ int uni_scr;
/* current Transponderdata */
TP_params currentTransponder;
#ifndef HAVE_TRIPLEDRAGON
@@ -79,6 +82,7 @@ class CFrontend
void sendDiseqcPowerOn(void);
void sendDiseqcReset(void);
void sendDiseqcSmatvRemoteTuningCommand(const uint32_t frequency);
+ uint32_t TuneUnicable(const uint32_t frequency, const int high_band, const int horizontal, const int bank);
void sendDiseqcStandby(void);
void sendDiseqcZeroByteCommand(const uint8_t frm, const uint8_t addr, const uint8_t cmd);
void sendToneBurst(const fe_sec_mini_cmd_t burst, const uint32_t ms);
@@ -96,6 +100,8 @@ class CFrontend
uint8_t getDiseqcPosition(void) const { return currentTransponder.diseqc; }
uint8_t getDiseqcRepeats(void) const { return diseqcRepeats; }
diseqc_t getDiseqcType(void) const { return diseqcType; }
+ int getUnicableSCR(void) const { return uni_scr; }
+ int getUnicableQRG(void) const { return uni_qrg; }
uint32_t getFrequency(void) const;
void setUncommittedSwitchMode(const int mode);
int getUncommittedSwitchMode(void) const;
@@ -123,6 +129,7 @@ class CFrontend
void setDiseqcRepeats(const uint8_t repeats) { diseqcRepeats = repeats; }
void setDiseqcType(const diseqc_t type);
+ void setUnicable(const int scr, const int qrg) { uni_scr = scr; uni_qrg = qrg; };
void setLnbOffset(const bool high, const uint8_t index, const int offset);
int setParameters(TP_params *TP);
int setParameters(dvb_frontend_parameters *feparams, const uint8_t polarization = VERTICAL, const uint8_t diseqc = 0);
diff --git a/dvb/zapit/lib/zapitclient.cpp b/dvb/zapit/lib/zapitclient.cpp
index 8609e04..8591887 100644
--- a/dvb/zapit/lib/zapitclient.cpp
+++ b/dvb/zapit/lib/zapitclient.cpp
@@ -5,7 +5,7 @@
*
* (C) 2002 by thegoodguy <the...@be...> & the DBoxII-Project
*
- * (C) 2007, 2008, 2009 Stefan Seyfried
+ * (C) 2007-2010, 2013 Stefan Seyfried
*
* License: GPL
*
@@ -763,6 +763,25 @@ void CZapitClient::setDiseqcRepeat(const uint32_t repeat)
close_connection();
}
+void CZapitClient::setUnicableParam(const int scr, const int qrg)
+{
+ CZapitMessages::unicableParam p;
+ p.scr = scr;
+ p.qrg = qrg;
+ send(CZapitMessages::CMD_SET_UNICABLE_OPTS, (const char *) &p, sizeof(p));
+ close_connection();
+}
+
+void CZapitClient::getUnicableParam(int &scr, int &qrg)
+{
+ CZapitMessages::unicableParam p;
+ send(CZapitMessages::CMD_GET_UNICABLE_OPTS);
+ CBasicClient::receive_data((char *) &p, sizeof(p));
+ scr = p.scr;
+ qrg = p.qrg;
+ close_connection();
+}
+
/* set diseqcRepeat*/
void CZapitClient::setScanBouquetMode(const bouquetMode mode)
{
diff --git a/dvb/zapit/src/zapit.cpp b/dvb/zapit/src/zapit.cpp
index f4bc2a1..1be2bea 100644
--- a/dvb/zapit/src/zapit.cpp
+++ b/dvb/zapit/src/zapit.cpp
@@ -5,6 +5,7 @@
*
* (C) 2001, 2002 by Philipp Leusmann <fa...@be...>
* (C) 2002, 2003 by Andreas Oberritter <ob...@tu...>
+ * (C) 2007-2010, 2013 Stefan Seyfried
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
@@ -729,6 +730,8 @@ void saveSettings(bool write)
config.setInt32("diseqcRepeats", frontend->getDiseqcRepeats());
config.setInt32("diseqcType", frontend->getDiseqcType());
config.setInt32("uncommitted_switch_mode", frontend->getUncommittedSwitchMode());
+ config.setInt32("uni_qrg", frontend->getUnicableQRG());
+ config.setInt32("uni_scr", frontend->getUnicableSCR());
break;
default:
@@ -2450,6 +2453,23 @@ bool parse_command(CBasicMessage::Header &rmsg, int connfd)
break;
}
+ case CZapitMessages::CMD_SET_UNICABLE_OPTS:
+ {
+ CZapitMessages::unicableParam p;
+ CBasicServer::receive_data(connfd, &p, sizeof(p));
+ frontend->setUnicable(p.scr, p.qrg);
+ break;
+ }
+
+ case CZapitMessages::CMD_GET_UNICABLE_OPTS:
+ {
+ CZapitMessages::unicableParam p;
+ p.scr = frontend->getUnicableSCR();
+ p.qrg = frontend->getUnicableQRG();
+ CBasicServer::send_data(connfd, &p, sizeof(p));
+ break;
+ }
+
#ifdef HAVE_DBOX_HARDWARE
case CZapitMessages::CMD_SET_AE_IEC_ON:
{
@@ -3045,6 +3065,9 @@ void leaveStandby(void)
frontend->setDiseqcRepeats(config.getInt32("diseqcRepeats", 0));
//motorRotationSpeed = scanconfig.getInt32("motorRotationSpeed", 8); // default: 0.8 degrees per second
diseqcType = (diseqc_t)config.getInt32("diseqcType", NO_DISEQC);
+ int uni_scr = config.getInt32("uni_scr", 0);
+ int uni_qrg = config.getInt32("uni_qrg", 0);
+ frontend->setUnicable(uni_scr, uni_qrg);
frontend->setDiseqcType(diseqcType);
for (unsigned int i = 0; i < MAX_LNBS; i++) {
diff --git a/dvb/zapit/src/zapost/frontend.cpp b/dvb/zapit/src/zapost/frontend.cpp
index 05665e1..3433b13 100644
--- a/dvb/zapit/src/zapost/frontend.cpp
+++ b/dvb/zapit/src/zapost/frontend.cpp
@@ -2,6 +2,7 @@
* $Id: frontend.cpp,v 1.72 2012/03/04 08:24:09 rhabarber1848 Exp $
*
* (C) 2002-2003 Andreas Oberritter <ob...@tu...>
+ * (C) 2007-2009, 2013 Stefan Seyfried
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
@@ -323,13 +324,16 @@ void CFrontend::setFrontend(const dvb_frontend_parameters *feparams)
if (fd == -1)
return;
- errno = 0;
-
- while ((errno == 0) || (errno == EOVERFLOW))
- quiet_fop(ioctl, FE_GET_EVENT, &event);
-#if HAVE_DVB_API_VERSION < 3
+ /* 'const *' is passed in, but we might need to modify it... */
dvb_frontend_parameters feparams2;
memcpy(&feparams2, feparams, sizeof(dvb_frontend_parameters));
+
+ if (diseqcType == DISEQC_UNICABLE)
+ feparams2.frequency = TuneUnicable(feparams->frequency,
+ currentToneMode == SEC_TONE_ON,
+ currentTransponder.polarization == SEC_VOLTAGE_18,
+ /*!!currentTransponder.diseqc*/ 0); // TODO: mini-a/b switch
+#if HAVE_DVB_API_VERSION < 3
/* the dreambox cable driver likes to get the frequency in kHz */
if (info.type == FE_QAM) {
feparams2.Frequency /= 1000;
@@ -342,10 +346,12 @@ void CFrontend::setFrontend(const dvb_frontend_parameters *feparams)
if (info.type == FE_QAM)
feparams2.u.qam.FEC_inner = FEC_AUTO;
}
- fop(ioctl, FE_SET_FRONTEND, &feparams2);
-#else
- fop(ioctl, FE_SET_FRONTEND, feparams);
#endif
+ errno = 0;
+ while ((errno == 0) || (errno == EOVERFLOW))
+ quiet_fop(ioctl, FE_GET_EVENT, &event);
+
+ fop(ioctl, FE_SET_FRONTEND, &feparams2);
}
#define TIME_STEP 200
@@ -503,7 +509,10 @@ void CFrontend::secSetTone(const fe_sec_tone_mode_t toneMode, const uint32_t ms)
{
TIMER_START();
- if (fop_sec(ioctl, FE_SET_TONE, toneMode) == 0) {
+ if (diseqcType == DISEQC_UNICABLE) {
+ currentToneMode = toneMode;
+ fop_sec(ioctl, FE_SET_TONE, SEC_TONE_OFF); /* just to make sure... */
+ } else if (fop_sec(ioctl, FE_SET_TONE, toneMode) == 0) {
currentToneMode = toneMode;
usleep(1000 * ms);
}
@@ -515,7 +524,10 @@ void CFrontend::secSetVoltage(const fe_sec_voltage_t voltage, const uint32_t ms)
{
TIMER_START();
- if (fop_sec(ioctl, FE_SET_VOLTAGE, voltage) == 0) {
+ if (diseqcType == DISEQC_UNICABLE) {
+ currentTransponder.polarization = voltage;
+ fop_sec(ioctl, FE_SET_VOLTAGE, SEC_VOLTAGE_13); /* voltage must not be 18V */
+ } else if (fop_sec(ioctl, FE_SET_VOLTAGE, voltage) == 0) {
currentTransponder.polarization = voltage;
usleep(1000 * ms);
}
@@ -546,8 +558,13 @@ void CFrontend::sendDiseqcCommand(const struct dvb_diseqc_master_cmd *cmd, const
secCommand command;
sequence.miniCommand = SEC_MINI_NONE;
- sequence.continuousTone = currentToneMode;
- sequence.voltage = currentTransponder.polarization;
+ if (diseqcType == DISEQC_UNICABLE) {
+ sequence.continuousTone = SEC_TONE_OFF;
+ sequence.voltage = SEC_VOLTAGE_18;
+ } else {
+ sequence.continuousTone = currentToneMode;
+ sequence.voltage = currentTransponder.polarization;
+ }
command.type = SEC_CMDTYPE_DISEQC_RAW;
command.u.diseqc.cmdtype = cmd->msg[0];
command.u.diseqc.addr = cmd->msg[1];
@@ -641,7 +658,6 @@ void CFrontend::setDiseqcType(const diseqc_t newDiseqcType)
case DISEQC_1_2:
INFO("DISEQC_1_2");
break;
-#if HAVE_DVB_API_VERSION >= 3
case DISEQC_2_0:
INFO("DISEQC_2_0");
break;
@@ -651,7 +667,9 @@ void CFrontend::setDiseqcType(const diseqc_t newDiseqcType)
case DISEQC_2_2:
INFO("DISEQC_2_2");
break;
-#endif
+ case DISEQC_UNICABLE:
+ INFO("DISEQC_UNICABLE");
+ break;
default:
WARN("Invalid DiSEqC type");
return;
@@ -921,6 +939,9 @@ void CFrontend::setSec(const uint8_t sat_no, const uint8_t pol, const bool high_
secSetTone(SEC_TONE_OFF, 1); // this resets currentToneMode!
secSetVoltage(v, 30);
+ if (diseqcType == DISEQC_UNICABLE)
+ goto out; /* shortcut */
+
if ((diseqcType == DISEQC_1_1) && (uncommitted_switch_mode > 0))
{
static uint8_t prevSatNo = 255; // initialised with greater than max Satellites (64)
@@ -989,6 +1010,7 @@ void CFrontend::setSec(const uint8_t sat_no, const uint8_t pol, const bool high_
if (diseqcType == SMATV_REMOTE_TUNING)
sendDiseqcSmatvRemoteTuningCommand(frequency);
+ out:
currentToneMode = t;
if (diseqcType == MINI_DISEQC)
sendToneBurst(b, 15);
@@ -1046,6 +1068,33 @@ void CFrontend::sendDiseqcSmatvRemoteTuningCommand(const uint32_t frequency)
sendDiseqcCommand(&cmd, 15);
}
+uint32_t CFrontend::TuneUnicable(const uint32_t frequency, const int high_band,
+ const int horizontal, const int bank)
+{
+ struct dvb_diseqc_master_cmd cmd = { { 0xe0, 0x10, 0x5a, 0x00, 0x00, 0x00 }, 5 };
+ unsigned int t = (frequency / 1000 + uni_qrg + 2) / 4 - 350;
+ if (t >= 1024 || uni_scr < 0 || uni_scr > 7 || info.type != FE_QPSK)
+ {
+ WARN("ooops. t > 1024? (%d) or uni_scr out of range? (%d)", t, uni_scr);
+ return 0;
+ }
+
+ uint32_t ret = (t + 350) * 4000 - frequency;
+ INFO("[unicable] 18V=%d TONE=%d, freq=%d qrg=%d scr=%d bank=%d ret=%d",
+ horizontal, high_band, frequency, uni_qrg, uni_scr, bank, ret);
+ cmd.msg[3] = (t >> 8) | /* highest 3 bits of t */
+ (uni_scr << 5) | /* adress */
+ (bank << 4) | /* input 0/1 */
+ (horizontal << 3) | /* horizontal == 0x08 */
+ (high_band) << 2; /* high_band == 0x04 */
+ cmd.msg[4] = t & 0xFF;
+ fop_sec(ioctl, FE_SET_VOLTAGE, SEC_VOLTAGE_18);
+ usleep(15 * 1000); /* en50494 says: >4ms and < 22 ms */
+ sendDiseqcCommand(&cmd, 50); /* en50494 says: >2ms and < 60 ms */
+ fop_sec(ioctl, FE_SET_VOLTAGE, SEC_VOLTAGE_13);
+ return ret;
+}
+
void CFrontend::sendUncommittedSwitchesCommand(uint8_t usCommand)
{
struct dvb_diseqc_master_cmd cmd = {{ 0xe0, 0x10, 0x39, 0x00, 0x00, 0x00 }, 4};
-----------------------------------------------------------------------
Summary of changes:
dvb/zapit/include/zapit/client/msgtypes.h | 8 +++
dvb/zapit/include/zapit/client/zapitclient.h | 4 +
dvb/zapit/include/zapit/client/zapittypes.h | 8 +--
dvb/zapit/include/zapit/frontend.h | 7 ++
dvb/zapit/lib/zapitclient.cpp | 21 +++++++-
dvb/zapit/src/pzapit.cpp | 17 ++++++
dvb/zapit/src/zapit.cpp | 23 ++++++++
dvb/zapit/src/zapost/frontend.cpp | 77 +++++++++++++++++++++-----
tuxbox/neutrino/data/locale/deutsch.locale | 4 +
tuxbox/neutrino/data/locale/english.locale | 4 +
tuxbox/neutrino/src/gui/scan.cpp | 5 ++
tuxbox/neutrino/src/gui/scan_setup.cpp | 37 +++++++++++--
tuxbox/neutrino/src/gui/scan_setup.h | 5 +-
tuxbox/neutrino/src/neutrino.cpp | 4 +-
tuxbox/neutrino/src/system/locals.h | 6 ++-
tuxbox/neutrino/src/system/locals_intern.h | 6 ++-
tuxbox/neutrino/src/system/settings.cpp | 11 +++-
tuxbox/neutrino/src/system/settings.h | 2 +
18 files changed, 218 insertions(+), 31 deletions(-)
--
Tuxbox-GIT: apps
|
|
From: Thilo G. <tux...@ne...> - 2013-02-27 19:27:25
|
Project "Tuxbox-GIT: apps":
The branch, master has been updated
via 07fcbdcaf0b55d4e4b13fbb71fad37be6598b068 (commit)
via f61962a0e9bfd1101853168254babf7f26c5f3f4 (commit)
via e130233820b23fa83b813ce189180eff259e6c96 (commit)
via d007ba5cf20c9d8412d13087b913ad8b04a7c78a (commit)
via c53f21a6a02da2005c91a7280a9572ee1d5d2ac0 (commit)
from 4456795a825fc66ee9189ac4a6e655ce1f20aec9 (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
commit 07fcbdcaf0b55d4e4b13fbb71fad37be6598b068
Author: GetAway <get...@t-...>
Date: Wed Feb 27 00:34:44 2013 +0100
Neutrino: enhance Fontrenderer, ported from coolstream GIT by GetAway
add global zoom factor for fonts
rename some menus of OSD-Menu
CStringinput: fix initializing of variables
Signed-off-by: Thilo Graf <db...@no...>
diff --git a/tuxbox/neutrino/data/locale/deutsch.locale b/tuxbox/neutrino/data/locale/deutsch.locale
index e6e7f9e..6039a13 100644
--- a/tuxbox/neutrino/data/locale/deutsch.locale
+++ b/tuxbox/neutrino/data/locale/deutsch.locale
@@ -513,11 +513,16 @@ flashupdate.writeflash ganzes Flashimage einspielen
flashupdate.writeflashmtd einzelne Partition einspielen
flashupdate.wrongbase Die Releasezyklus Version weicht ab, bitte\nzuerst neues Komplett-Image installieren!
fontmenu.channellist Kanalliste
-fontmenu.epg EPG
-fontmenu.eventlist Eventlist
-fontmenu.gamelist Gameliste
-fontmenu.head SchriftgröÃen
+fontmenu.epg EPG (Programmführer)
+fontmenu.eventlist Event-Liste
+fontmenu.gamelist Spiele-Liste
+fontmenu.head Schrift
fontmenu.infobar Infobar
+fontmenu.scaling Schriftgrössenfaktor
+fontmenu.scaling_x Horizontal (in %)
+fontmenu.scaling_x_hint2 Horizontal (in %) min 50 / max 200
+fontmenu.scaling_y Vertikal (in %)
+fontmenu.scaling_y_hint2 Vertikal (in %) min 50 / max 200
fontsize.channel_num_zap Direktauswahl
fontsize.channellist Kanalliste
fontsize.channellist_descr Beschreibung
@@ -1473,7 +1478,7 @@ timersettings.zapto_safety_time_before.hint_2 des jeweiligen Timers abgezogen we
timing.chanlist Kanalliste
timing.epg EPG
timing.filebrowser Filebrowser
-timing.head Timeouts
+timing.head OSD Timeouts
timing.hint_1 Einblendzeit in Sek., die das OSD auf dem TV
timing.hint_2 angezeigt wird (permanentes Einblenden mit 0.)
timing.infobar Infobar
@@ -1507,7 +1512,7 @@ videomenu.csync Sync.-Korrektur
videomenu.head Video
videomenu.osd OSD
videomenu.rgb_centering RGB-Zentrierung
-videomenu.screensetup OSD-Bereich
+videomenu.screensetup Bildbereich
videomenu.tv-scart TV Scart
videomenu.vcr-scart VCR Scart
videomenu.vcrsignal VCR-Ausgang Signalart
diff --git a/tuxbox/neutrino/data/locale/english.locale b/tuxbox/neutrino/data/locale/english.locale
index f634001..7627c6f 100644
--- a/tuxbox/neutrino/data/locale/english.locale
+++ b/tuxbox/neutrino/data/locale/english.locale
@@ -518,6 +518,11 @@ fontmenu.eventlist Eventlist
fontmenu.gamelist Gamelist
fontmenu.head Fontsize settings
fontmenu.infobar Infobar
+fontmenu.scaling Global Font Zoom Factor
+fontmenu.scaling_x Horizontal (in %)
+fontmenu.scaling_x_hint2 Horizontal (in %) min 50 / max 200
+fontmenu.scaling_y Vertical (in %)
+fontmenu.scaling_y_hint2 Vertical (in %) min 50 / max 200
fontsize.channel_num_zap direct selection
fontsize.channellist Channellist
fontsize.channellist_descr Description
diff --git a/tuxbox/neutrino/src/driver/fontrenderer.cpp b/tuxbox/neutrino/src/driver/fontrenderer.cpp
index 04698a0..050b495 100644
--- a/tuxbox/neutrino/src/driver/fontrenderer.cpp
+++ b/tuxbox/neutrino/src/driver/fontrenderer.cpp
@@ -42,7 +42,7 @@ FT_Error FBFontRenderClass::myFTC_Face_Requester(FTC_FaceID face_id,
}
-FBFontRenderClass::FBFontRenderClass()
+FBFontRenderClass::FBFontRenderClass(const int xr, const int yr)
{
dprintf(DEBUG_DEBUG, "[FONT] initializing core...\n");
if (FT_Init_FreeType(&library))
@@ -53,6 +53,9 @@ FBFontRenderClass::FBFontRenderClass()
font = NULL;
+ xres = xr;
+ yres = yr;
+
int maxbytes= 4 *1024*1024;
dprintf(DEBUG_INFO, "[FONT] Intializing font cache, using max. %dMB...\n", maxbytes/1024/1024);
fflush(stdout);
@@ -148,11 +151,16 @@ FTC_FaceID FBFontRenderClass::getFaceID(const char * const family, const char *
return 0;
}
-FT_Error FBFontRenderClass::getGlyphBitmap(FTC_ImageType fnt, FT_ULong glyph_index, FTC_SBit *sbit)
+FT_Error FBFontRenderClass::getGlyphBitmap(FTC_ImageTypeRec *fnt, FT_ULong glyph_index, FTC_SBit *sbit)
{
return FTC_SBitCache_Lookup(sbitsCache, fnt, glyph_index, sbit, NULL);
}
+FT_Error FBFontRenderClass::getGlyphBitmap(FTC_ScalerRec *sc, FT_ULong glyph_index, FTC_SBit *sbit)
+{
+ return FTC_SBitCache_LookupScaler(sbitsCache, sc, FT_LOAD_DEFAULT, glyph_index, sbit, NULL);
+}
+
const char *FBFontRenderClass::AddFont(const char * const filename, const bool make_italics)
{
fflush(stdout);
@@ -204,50 +212,54 @@ std::string FBFontRenderClass::getFamily(const char * const filename) const
Font::Font(FBFontRenderClass *render, FTC_FaceID faceid, const int isize, const fontmodifier _stylemodifier)
{
- stylemodifier = _stylemodifier;
-
- frameBuffer = CFrameBuffer::getInstance();
- renderer = render;
- font.face_id = faceid;
- font.width = isize;
- font.height = isize;
- font.flags = FT_LOAD_FORCE_AUTOHINT;
+ stylemodifier = _stylemodifier;
+
+ frameBuffer = CFrameBuffer::getInstance();
+ renderer = render;
+ font.face_id = faceid;
+ font.width = isize;
+ font.height = isize;
+ font.flags = FT_LOAD_RENDER | FT_LOAD_FORCE_AUTOHINT;
+
+ scaler.face_id = font.face_id;
+ scaler.width = isize * 64;
+ scaler.height = isize * 64;
+ scaler.pixel = false;
+ scaler.x_res = render->xres;
+ scaler.y_res = render->yres;
+
setSize(isize);
}
FT_Error Font::getGlyphBitmap(FT_ULong glyph_index, FTC_SBit *sbit)
{
- return renderer->getGlyphBitmap(&font, glyph_index, sbit);
+ return renderer->getGlyphBitmap(&scaler, glyph_index, sbit);
}
int Font::setSize(int isize)
{
- FT_Error err;
- FTC_ScalerRec scaler;
-
int temp = font.width;
font.width = font.height = isize;
- scaler.face_id = font.face_id;
- scaler.width = font.width;
- scaler.height = font.height;
- scaler.pixel = true;
+ scaler.width = isize * 64;
+ scaler.height = isize * 64;
- err = FTC_Manager_LookupSize(renderer->cacheManager, &scaler, &size);
+ FT_Error err = FTC_Manager_LookupSize(renderer->cacheManager, &scaler, &size);
if (err != 0)
{
- dprintf(DEBUG_NORMAL, "FTC_Manager_Lookup_Size failed! (0x%x)\n", err);
+ dprintf(DEBUG_NORMAL, "%s:FTC_Manager_LookupSize failed (0x%x)\n", __FUNCTION__, err);
return 0;
}
// hack begin (this is a hack to get correct font metrics, didn't find any other way which gave correct values)
+ face = size->face;
FTC_SBit glyph;
int index;
- index = FT_Get_Char_Index(size->face, 'M');
+ index = FT_Get_Char_Index(face, 'M');
getGlyphBitmap(index, &glyph);
int tM=glyph->top;
fontwidth = glyph->width;
- index = FT_Get_Char_Index(size->face, 'g');
+ index = FT_Get_Char_Index(face, 'g');
getGlyphBitmap(index, &glyph);
int hg=glyph->height;
int tg=glyph->top;
@@ -321,24 +333,18 @@ void Font::RenderString(int x, int y, const int width, const char *text, const u
if (!frameBuffer->getActive())
return;
- FT_Error err;
-
pthread_mutex_lock( &renderer->render_mutex );
- FTC_ScalerRec scaler;
-
- scaler.face_id = font.face_id;
- scaler.width = font.width;
- scaler.height = font.height;
- scaler.pixel = true;
- err = FTC_Manager_LookupSize(renderer->cacheManager, &scaler, &size);
+ FT_Error err = FTC_Manager_LookupSize(renderer->cacheManager, &scaler, &size);
if (err != 0)
{
- dprintf(DEBUG_NORMAL, "FTC_Manager_Lookup_Size failed! (0x%x)\n", err);
+ dprintf(DEBUG_NORMAL, "FTC_Manager_LookupSize failed! (0x%x)\n", err);
pthread_mutex_unlock(&renderer->render_mutex);
return;
}
- int use_kerning = FT_HAS_KERNING(size->face);
+ face = size->face;
+
+ int use_kerning = FT_HAS_KERNING(face);
int left=x;
int step_y=height;
@@ -457,7 +463,7 @@ void Font::RenderString(int x, int y, const int width, const char *text, const u
if (unicode_value == -1)
break;
- int index = FT_Get_Char_Index(size->face, unicode_value);
+ int index = FT_Get_Char_Index(face, unicode_value);
if (!index)
continue;
@@ -470,8 +476,9 @@ void Font::RenderString(int x, int y, const int width, const char *text, const u
//kerning
if(use_kerning)
{
- FT_Get_Kerning(size->face, lastindex, index, 0, &kerning);
- x+=(kerning.x+32)>>6; // kerning!
+ FT_Get_Kerning(face, lastindex, index, 0, &kerning);
+ //x+=(kerning.x+32)>>6; // kerning!
+ x += (kerning.x) >> 6; // kerning!
}
// width clip
@@ -555,20 +562,17 @@ void Font::RenderString(int x, int y, const int width, const std::string & text,
int Font::getRenderWidth(const char *text, const bool utf8_encoded)
{
pthread_mutex_lock( &renderer->render_mutex );
- FT_Error err;
- FTC_ScalerRec scaler;
- scaler.face_id = font.face_id;
- scaler.width = font.width;
- scaler.height = font.height;
- scaler.pixel = true;
- err = FTC_Manager_LookupSize(renderer->cacheManager, &scaler, &size);
+
+ FT_Error err = FTC_Manager_LookupSize(renderer->cacheManager, &scaler, &size);
if (err != 0)
{
- dprintf(DEBUG_NORMAL, "FTC_Manager_Lookup_Size failed! (0x%x)\n", err);
+ dprintf(DEBUG_NORMAL, "%s:FTC_Manager_LookupSize failed (0x%x)\n", __FUNCTION__, err);
pthread_mutex_unlock(&renderer->render_mutex);
return -1;
}
- int use_kerning = FT_HAS_KERNING(size->face);
+ face = size->face;
+
+ int use_kerning = FT_HAS_KERNING(face);
int x=0;
int lastindex=0; // 0==missing glyph (never has kerning)
FT_Vector kerning;
@@ -582,7 +586,7 @@ int Font::getRenderWidth(const char *text, const bool utf8_encoded)
if (unicode_value == -1)
break;
- int index = FT_Get_Char_Index(size->face, unicode_value);
+ int index = FT_Get_Char_Index(face, unicode_value);
if (!index)
continue;
@@ -594,8 +598,9 @@ int Font::getRenderWidth(const char *text, const bool utf8_encoded)
//kerning
if(use_kerning)
{
- FT_Get_Kerning(size->face, lastindex, index, 0, &kerning);
- x+=(kerning.x+32)>>6; // kerning!
+ FT_Get_Kerning(face, lastindex, index, 0, &kerning);
+// x+=(kerning.x+32)>>6; // kerning!
+ x+=(kerning.x)>>6; // kerning!
}
x+=glyph->xadvance+1;
diff --git a/tuxbox/neutrino/src/driver/fontrenderer.h b/tuxbox/neutrino/src/driver/fontrenderer.h
index 3ba269e..5239a50 100644
--- a/tuxbox/neutrino/src/driver/fontrenderer.h
+++ b/tuxbox/neutrino/src/driver/fontrenderer.h
@@ -43,7 +43,9 @@ class Font
CFrameBuffer *frameBuffer;
FTC_ImageTypeRec font;
FBFontRenderClass *renderer;
+ FT_Face face;
FT_Size size;
+ FTC_ScalerRec scaler;
FT_Error getGlyphBitmap(FT_ULong glyph_index, FTC_SBit *sbit);
@@ -88,7 +90,11 @@ class FBFontRenderClass
FTC_SBitCache sbitsCache; /* the glyph small bitmaps cache */
FTC_FaceID getFaceID(const char * const family, const char * const style);
- FT_Error getGlyphBitmap(FTC_ImageType font, FT_ULong glyph_index, FTC_SBit *sbit);
+ FT_Error getGlyphBitmap(FTC_ImageTypeRec *font, FT_ULong glyph_index, FTC_SBit *sbit);
+ FT_Error getGlyphBitmap(FTC_ScalerRec *sc, FT_ULong glyph_index, FTC_SBit *sbit);
+
+ int xres; /* the screen resolution in dpi */
+ int yres; /* defaults to 72 dpi */
public:
pthread_mutex_t render_mutex;
@@ -108,7 +114,7 @@ class FBFontRenderClass
const char * AddFont(const char * const filename, const bool make_italics = false);
- FBFontRenderClass();
+ FBFontRenderClass(const int xres = 72, const int yres = 72);
~FBFontRenderClass();
friend class Font;
diff --git a/tuxbox/neutrino/src/gui/osd_setup.cpp b/tuxbox/neutrino/src/gui/osd_setup.cpp
index 7a36061..f915f5b 100644
--- a/tuxbox/neutrino/src/gui/osd_setup.cpp
+++ b/tuxbox/neutrino/src/gui/osd_setup.cpp
@@ -184,6 +184,7 @@ int COsdSetup::exec(CMenuTarget* parent, const std::string &actionKey)
}
fontsizenotifier->changeNotify(NONEXISTANT_LOCALE, NULL);
+
return menu_return::RETURN_REPAINT;
}
else if(actionKey == "channel_logodir")
@@ -263,17 +264,17 @@ int COsdSetup::showOsdSetup()
//osd progressbar color
CMenuOptionChooser *osd_pbcolor_ch = new CMenuOptionChooser(LOCALE_OSDSETTINGS_COLORMENU_PROGRESSBAR, &g_settings.progressbar_color, OPTIONS_OFF0_ON1_OPTIONS, OPTIONS_OFF0_ON1_OPTION_COUNT, true);
+ //osd fontsize setup
+ CMenuForwarder *osd_fontsize_fw = new CMenuForwarder(LOCALE_FONTMENU_HEAD, true, NULL, this, "show_fontsize_setup", CRCInput::RC_yellow, NEUTRINO_ICON_BUTTON_YELLOW);
//osd timeout setup forwarder
- CMenuForwarder *osd_timeout_fw = new CMenuForwarder(LOCALE_TIMING_HEAD, true, NULL, this, "show_timeout_setup", CRCInput::RC_yellow, NEUTRINO_ICON_BUTTON_YELLOW);
+ CMenuForwarder *osd_timeout_fw = new CMenuForwarder(LOCALE_TIMING_HEAD, true, NULL, this, "show_timeout_setup", CRCInput::RC_blue, NEUTRINO_ICON_BUTTON_BLUE);
//osd screen setup
CScreenSetup *osd_screen = new CScreenSetup();
- CMenuForwarder *osd_screen_fw = new CMenuForwarder(LOCALE_VIDEOMENU_SCREENSETUP, true, NULL, osd_screen, NULL, CRCInput::RC_blue, NEUTRINO_ICON_BUTTON_BLUE);
+ CMenuForwarder *osd_screen_fw = new CMenuForwarder(LOCALE_VIDEOMENU_SCREENSETUP, true, NULL, osd_screen, NULL, CRCInput::RC_1, NEUTRINO_ICON_BUTTON_1);
//osd infobar setup
- CMenuForwarder *osd_infobar_fw = new CMenuForwarder(LOCALE_OSDSETTINGS_INFOBAR, true, NULL, this, "show_infobar_setup", CRCInput::RC_1, NEUTRINO_ICON_BUTTON_1);
+ CMenuForwarder *osd_infobar_fw = new CMenuForwarder(LOCALE_OSDSETTINGS_INFOBAR, true, NULL, this, "show_infobar_setup", CRCInput::RC_2, NEUTRINO_ICON_BUTTON_2);
//osd channellist setup
- CMenuForwarder *osd_chanlist_fw = new CMenuForwarder(LOCALE_MISCSETTINGS_CHANNELLIST, true, NULL, this, "show_channellist_setup", CRCInput::RC_2, NEUTRINO_ICON_BUTTON_2);
- //osd fontzize setup
- CMenuForwarder *osd_fontsize_fw = new CMenuForwarder(LOCALE_FONTMENU_HEAD, true, NULL, this, "show_fontsize_setup", CRCInput::RC_3, NEUTRINO_ICON_BUTTON_3);
+ CMenuForwarder *osd_chanlist_fw = new CMenuForwarder(LOCALE_MISCSETTINGS_CHANNELLIST, true, NULL, this, "show_channellist_setup", CRCInput::RC_3, NEUTRINO_ICON_BUTTON_3);
//osd volumbar position
CMenuOptionChooser* osd_volumbarpos_ch = new CMenuOptionChooser(LOCALE_OSDSETTINGS_VOLUMEBAR_DISP_POS, &g_settings.volumebar_disp_pos, VOLUMEBAR_DISP_POS_OPTIONS, VOLUMEBAR_DISP_POS_OPTIONS_COUNT, true);
@@ -294,14 +295,13 @@ int COsdSetup::showOsdSetup()
//--------------------------------------------
osd_setup_colors->addItem(GenericMenuSeparatorLine);
osd_setup_colors->addItem(osd_themes_fw); //themes setup
-
+ osd_setup->addItem(osd_fontsize_fw); //fontsize setup
osd_setup->addItem(osd_timeout_fw); //timeout
osd_setup->addItem(osd_screen_fw); //screen setup
osd_setup->addItem(GenericMenuSeparatorLine);
//-------------------------------------------
osd_setup->addItem(osd_infobar_fw); //infobar setup
osd_setup->addItem(osd_chanlist_fw); //channellist setup
- osd_setup->addItem(osd_fontsize_fw); //fontsize setup
#ifdef HAVE_DBOX_HARDWARE
CAlphaSetup* osd_alpha = NULL;
if ((g_info.box_Type == CControld::TUXBOX_MAKER_PHILIPS) || (g_info.box_Type == CControld::TUXBOX_MAKER_SAGEM))
@@ -595,19 +595,36 @@ void COsdSetup::AddFontSettingItem(CMenuWidget *fontSettings, const SNeutrinoSet
/* font settings */
int COsdSetup::showOsdFontSizeSetup()
{
- // dynamic created objects
- std::vector<CMenuTarget*> toDelete;
+ char val_x[4] = {0};
+ char val_y[4] = {0};
+ snprintf(val_x,sizeof(val_x), "%03d",g_settings.screen_xres);
+ snprintf(val_y,sizeof(val_y), "%03d",g_settings.screen_yres);
CMenuWidget * fontSettings = new CMenuWidget(menue_title, menue_icon, width);
-
fontSettings->addIntroItems(LOCALE_FONTMENU_HEAD);
+ CMenuWidget * fontscale = new CMenuWidget(LOCALE_FONTMENU_HEAD, NEUTRINO_ICON_COLORS, width/*, MN_WIDGET_ID_OSDSETUP_FONTSCALE*/);
+ fontscale->addIntroItems(LOCALE_FONTMENU_SCALING);
+
+ CStringInput xres_count(LOCALE_FONTMENU_SCALING_X, val_x,/*50,200,*/ 3, LOCALE_FONTMENU_SCALING, LOCALE_FONTMENU_SCALING_X_HINT2, "0123456789 ", fontsizenotifier);
+ CMenuForwarder *m_x = new CMenuForwarder(LOCALE_FONTMENU_SCALING_X, true, val_x, &xres_count);
+
+ CStringInput yres_count(LOCALE_FONTMENU_SCALING_Y, val_y,/*50,200,*/ 3, LOCALE_FONTMENU_SCALING, LOCALE_FONTMENU_SCALING_Y_HINT2, "0123456789 ", fontsizenotifier);
+ CMenuForwarder *m_y = new CMenuForwarder(LOCALE_FONTMENU_SCALING_Y, true, val_y, &yres_count);
+
+ fontscale->addItem(m_x);
+ fontscale->addItem(m_y);
+ fontSettings->addItem(new CMenuForwarder(LOCALE_FONTMENU_SCALING, true, NULL, fontscale)); //OK
+
AddFontSettingItem(fontSettings, SNeutrinoSettings::FONT_TYPE_MENU_TITLE);
AddFontSettingItem(fontSettings, SNeutrinoSettings::FONT_TYPE_MENU);
AddFontSettingItem(fontSettings, SNeutrinoSettings::FONT_TYPE_MENU_INFO);
fontSettings->addItem(GenericMenuSeparatorLine);
+ // dynamic created objects
+ std::vector<CMenuTarget*> toDelete;
+
for (int i = 0; i < 5; i++)
{
CMenuWidget * fontSettingsSubMenu = new CMenuWidget(font_sizes_groups[i].groupname, NEUTRINO_ICON_COLORS, width);
@@ -633,6 +650,7 @@ int COsdSetup::showOsdFontSizeSetup()
int res = fontSettings->exec(NULL, "");
delete fontSettings;
+ delete fontscale;
// delete dynamic created objects
unsigned int toDeleteSize = toDelete.size();
@@ -643,8 +661,40 @@ int COsdSetup::showOsdFontSizeSetup()
return res;
}
-bool CFontSizeNotifier::changeNotify(const neutrino_locale_t, void *)
+bool CFontSizeNotifier::changeNotify(const neutrino_locale_t OptionName, void * data)
{
+ if (data != NULL) {
+ int xre = g_settings.screen_xres;
+ int yre = g_settings.screen_yres;
+ char dat[4];
+ char val[4];
+ sscanf((char*) data, "%hhu", &dat[0]);
+ sprintf(val, "%hhu", dat[0]);
+
+ if (ARE_LOCALES_EQUAL(OptionName, LOCALE_FONTMENU_SCALING_X))
+ {
+ xre = atoi(val);
+ //fallback for min/max bugs ;)
+ if( xre < 50 || xre > 200 ) {
+ xre = g_settings.screen_xres;
+ snprintf((char *)data,sizeof(data), "%03d",g_settings.screen_xres);
+ }
+ }
+ if (ARE_LOCALES_EQUAL(OptionName, LOCALE_FONTMENU_SCALING_Y))
+ {
+ yre = atoi(val);
+ if( yre < 50 || yre > 200 ) {
+ yre = g_settings.screen_yres;
+ snprintf((char *)data,sizeof(data), "%03d",g_settings.screen_yres);
+ }
+ }
+ if (xre != g_settings.screen_xres || yre != g_settings.screen_yres) {
+ printf("[neutrino] new font scale settings x: %d%% y: %d%%\n", xre, yre);
+ g_settings.screen_xres = xre;
+ g_settings.screen_yres = yre;
+ }
+ }
+
CHintBox hintBox(LOCALE_MESSAGEBOX_INFO, g_Locale->getText(LOCALE_FONTSIZE_HINT)); // UTF-8
hintBox.paint();
diff --git a/tuxbox/neutrino/src/gui/osd_setup.h b/tuxbox/neutrino/src/gui/osd_setup.h
index 516676e..2e49dcd 100644
--- a/tuxbox/neutrino/src/gui/osd_setup.h
+++ b/tuxbox/neutrino/src/gui/osd_setup.h
@@ -42,7 +42,7 @@
class CFontSizeNotifier : public CChangeObserver
{
public:
- bool changeNotify(const neutrino_locale_t, void *);
+ bool changeNotify(const neutrino_locale_t OptionName, void * data);
};
class COsdSetup : public CMenuTarget, CChangeObserver
diff --git a/tuxbox/neutrino/src/gui/widget/stringinput.cpp b/tuxbox/neutrino/src/gui/widget/stringinput.cpp
index b6a28dc..8eb9b36 100644
--- a/tuxbox/neutrino/src/gui/widget/stringinput.cpp
+++ b/tuxbox/neutrino/src/gui/widget/stringinput.cpp
@@ -65,7 +65,6 @@ CStringInput::CStringInput(const neutrino_locale_t Name, char* Value, int Size,
iconfile = Icon ? Icon : "";
observ = Observ;
- init();
}
CStringInput::CStringInput(const neutrino_locale_t Name, std::string* Value, int Size, bool ValueIsUtf8, const neutrino_locale_t Hint_1, const neutrino_locale_t Hint_2, const char * const Valid_Chars, CChangeObserver* Observ, const char * const Icon)
@@ -457,6 +456,7 @@ const char * CStringInput::getHint1(void)
void CStringInput::paint()
{
+ init();
int iconoffset, c_rad_mid = RADIUS_MID;
frameBuffer->paintBoxRel(x, y, width, hheight, COL_MENUHEAD_PLUS_0, c_rad_mid, CORNER_TOP);
diff --git a/tuxbox/neutrino/src/neutrino.cpp b/tuxbox/neutrino/src/neutrino.cpp
index 3c43a0d..4834f39 100644
--- a/tuxbox/neutrino/src/neutrino.cpp
+++ b/tuxbox/neutrino/src/neutrino.cpp
@@ -709,6 +709,8 @@ int CNeutrinoApp::loadSetup()
g_settings.audio_left_right_selectable = configfile.getBool("audio_left_right_selectable", false);
//screen configuration
+ g_settings.screen_xres = configfile.getInt32("screen_xres", 100);
+ g_settings.screen_yres = configfile.getInt32("screen_yres", 100);
g_settings.screen_StartX = configfile.getInt32( "screen_StartX", 37 );
g_settings.screen_StartY = configfile.getInt32( "screen_StartY", 23 );
g_settings.screen_EndX = configfile.getInt32( "screen_EndX", 668 );
@@ -1248,6 +1250,8 @@ void CNeutrinoApp::saveSetup()
configfile.setBool ( "audio_left_right_selectable", g_settings.audio_left_right_selectable );
//screen configuration
+ configfile.setInt32( "screen_xres", g_settings.screen_xres);
+ configfile.setInt32( "screen_yres", g_settings.screen_yres);
configfile.setInt32( "screen_StartX", g_settings.screen_StartX );
configfile.setInt32( "screen_StartY", g_settings.screen_StartY );
configfile.setInt32( "screen_EndX", g_settings.screen_EndX );
@@ -1728,7 +1732,7 @@ void CNeutrinoApp::SetupFonts()
if (g_fontRenderer != NULL)
delete g_fontRenderer;
- g_fontRenderer = new FBFontRenderClass();
+ g_fontRenderer = new FBFontRenderClass(72 * g_settings.screen_xres / 100, 72 * g_settings.screen_yres / 100);
style[0] = g_fontRenderer->AddFont(font.filename[0]);
diff --git a/tuxbox/neutrino/src/system/locals.h b/tuxbox/neutrino/src/system/locals.h
index 82672b9..54886d8 100644
--- a/tuxbox/neutrino/src/system/locals.h
+++ b/tuxbox/neutrino/src/system/locals.h
@@ -545,6 +545,11 @@ typedef enum
LOCALE_FONTMENU_GAMELIST,
LOCALE_FONTMENU_HEAD,
LOCALE_FONTMENU_INFOBAR,
+ LOCALE_FONTMENU_SCALING,
+ LOCALE_FONTMENU_SCALING_X,
+ LOCALE_FONTMENU_SCALING_X_HINT2,
+ LOCALE_FONTMENU_SCALING_Y,
+ LOCALE_FONTMENU_SCALING_Y_HINT2,
LOCALE_FONTSIZE_CHANNEL_NUM_ZAP,
LOCALE_FONTSIZE_CHANNELLIST,
LOCALE_FONTSIZE_CHANNELLIST_DESCR,
diff --git a/tuxbox/neutrino/src/system/locals_intern.h b/tuxbox/neutrino/src/system/locals_intern.h
index c982b1f..13c7be6 100644
--- a/tuxbox/neutrino/src/system/locals_intern.h
+++ b/tuxbox/neutrino/src/system/locals_intern.h
@@ -545,6 +545,11 @@ const char * locale_real_names[] =
"fontmenu.gamelist",
"fontmenu.head",
"fontmenu.infobar",
+ "fontmenu.scaling",
+ "fontmenu.scaling_x",
+ "fontmenu.scaling_x_hint2",
+ "fontmenu.scaling_y",
+ "fontmenu.scaling_y_hint2",
"fontsize.channel_num_zap",
"fontsize.channellist",
"fontsize.channellist_descr",
diff --git a/tuxbox/neutrino/src/system/settings.h b/tuxbox/neutrino/src/system/settings.h
index ebfc109..ede6d26 100644
--- a/tuxbox/neutrino/src/system/settings.h
+++ b/tuxbox/neutrino/src/system/settings.h
@@ -340,6 +340,8 @@ struct SNeutrinoSettings
int audio_left_right_selectable;
//screen configuration
+ int screen_xres;
+ int screen_yres;
int screen_StartX;
int screen_StartY;
int screen_EndX;
commit f61962a0e9bfd1101853168254babf7f26c5f3f4
Author: Christian Schuett <Gau...@ho...>
Date: Mon Feb 25 19:13:38 2013 +0100
Neutrino moviebrowser: only save settings if modified
Signed-off-by: Christian Schuett <Gau...@ho...>
diff --git a/tuxbox/neutrino/src/gui/moviebrowser.cpp b/tuxbox/neutrino/src/gui/moviebrowser.cpp
index 42a8510..e3b411d 100644
--- a/tuxbox/neutrino/src/gui/moviebrowser.cpp
+++ b/tuxbox/neutrino/src/gui/moviebrowser.cpp
@@ -845,7 +845,8 @@ bool CMovieBrowser::saveSettings(MB_SETTINGS* settings)
configfile.setInt32(cfg_key, settings->browserRowWidth[i]);
}
- configfile.saveConfig(MOVIEBROWSER_SETTINGS_FILE);
+ if (configfile.getModifiedFlag())
+ configfile.saveConfig(MOVIEBROWSER_SETTINGS_FILE);
return (result);
}
/************************************************************************
commit e130233820b23fa83b813ce189180eff259e6c96
Author: Stefan Seyfried <se...@tu...>
Date: Mon Feb 25 19:06:54 2013 +0100
configfile: reset modified flag after saving
Signed-off-by: Christian Schuett <Gau...@ho...>
diff --git a/misc/libs/libconfigfile/configfile.cpp b/misc/libs/libconfigfile/configfile.cpp
index 77c75ec..9f96ac0 100644
--- a/misc/libs/libconfigfile/configfile.cpp
+++ b/misc/libs/libconfigfile/configfile.cpp
@@ -103,6 +103,7 @@ bool CConfigFile::saveConfig(const char * const filename)
chmod(filename, S_IRUSR | S_IWUSR | S_IRGRP | S_IROTH);
+ modifiedFlag = false;
return true;
}
else
commit d007ba5cf20c9d8412d13087b913ad8b04a7c78a
Author: Stefan Seyfried <se...@tu...>
Date: Mon Feb 25 19:04:40 2013 +0100
configfile: set the modified flag correctly on set*Vector methods
Signed-off-by: Christian Schuett <Gau...@ho...>
diff --git a/misc/libs/libconfigfile/configfile.cpp b/misc/libs/libconfigfile/configfile.cpp
index e4f3c7c..77c75ec 100644
--- a/misc/libs/libconfigfile/configfile.cpp
+++ b/misc/libs/libconfigfile/configfile.cpp
@@ -387,6 +387,9 @@ void CConfigFile::setString(const std::string & key, const std::string & val)
void CConfigFile::setInt32Vector(const std::string & key, const std::vector<int32_t> vec)
{
+ bool tmpUnknownKeyQueryedFlag = unknownKeyQueryedFlag;
+ unknownKeyQueryedFlag = false;
+ std::string oldVal = getString(key);
std::stringstream s;
for (std::vector<int32_t>::const_iterator it = vec.begin(); ; )
@@ -399,21 +402,35 @@ void CConfigFile::setInt32Vector(const std::string & key, const std::vector<int3
break;
s << delimiter;
}
- s >> configData[key];
+ if (oldVal != s.str() || unknownKeyQueryedFlag)
+ {
+ modifiedFlag = true;
+ configData[key] = s.str();
+ }
+ unknownKeyQueryedFlag = tmpUnknownKeyQueryedFlag;
}
void CConfigFile::setStringVector(const std::string & key, const std::vector<std::string> vec)
{
- configData[key] = "";
+ bool tmpUnknownKeyQueryedFlag = unknownKeyQueryedFlag;
+ unknownKeyQueryedFlag = false;
+ std::string oldVal = getString(key);
+ std::string newVal = "";
for (std::vector<std::string>::const_iterator it = vec.begin(); ; )
{
if (it == vec.end())
break;
- configData[key] += *it;
+ newVal += *it;
it++;
if (it == vec.end())
break;
- configData[key] += delimiter;
+ newVal += delimiter;
}
+ if (oldVal != newVal || unknownKeyQueryedFlag)
+ {
+ modifiedFlag = true;
+ configData[key] = newVal;
+ }
+ unknownKeyQueryedFlag = tmpUnknownKeyQueryedFlag;
}
commit c53f21a6a02da2005c91a7280a9572ee1d5d2ac0
Author: [CST] Focus <foc...@gm...>
Date: Mon Feb 25 18:59:33 2013 +0100
libconfigfile: check iterator for end before using it
Signed-off-by: Christian Schuett <Gau...@ho...>
diff --git a/misc/libs/libconfigfile/configfile.cpp b/misc/libs/libconfigfile/configfile.cpp
index 6f1a25d..e4f3c7c 100644
--- a/misc/libs/libconfigfile/configfile.cpp
+++ b/misc/libs/libconfigfile/configfile.cpp
@@ -391,6 +391,8 @@ void CConfigFile::setInt32Vector(const std::string & key, const std::vector<int3
for (std::vector<int32_t>::const_iterator it = vec.begin(); ; )
{
+ if (it == vec.end())
+ break;
s << (*it);
it++;
if (it == vec.end())
@@ -406,6 +408,8 @@ void CConfigFile::setStringVector(const std::string & key, const std::vector<std
for (std::vector<std::string>::const_iterator it = vec.begin(); ; )
{
+ if (it == vec.end())
+ break;
configData[key] += *it;
it++;
if (it == vec.end())
-----------------------------------------------------------------------
Summary of changes:
misc/libs/libconfigfile/configfile.cpp | 30 ++++++-
tuxbox/neutrino/data/locale/deutsch.locale | 17 +++--
tuxbox/neutrino/data/locale/english.locale | 5 +
tuxbox/neutrino/src/driver/fontrenderer.cpp | 101 ++++++++++++-----------
tuxbox/neutrino/src/driver/fontrenderer.h | 10 ++-
tuxbox/neutrino/src/gui/moviebrowser.cpp | 3 +-
tuxbox/neutrino/src/gui/osd_setup.cpp | 74 +++++++++++++++---
tuxbox/neutrino/src/gui/osd_setup.h | 2 +-
tuxbox/neutrino/src/gui/widget/stringinput.cpp | 2 +-
tuxbox/neutrino/src/neutrino.cpp | 6 +-
tuxbox/neutrino/src/system/locals.h | 5 +
tuxbox/neutrino/src/system/locals_intern.h | 5 +
tuxbox/neutrino/src/system/settings.h | 2 +
13 files changed, 186 insertions(+), 76 deletions(-)
--
Tuxbox-GIT: apps
|
|
From: Thilo G. <tux...@ne...> - 2013-02-22 20:00:02
|
Project "Tuxbox-GIT: apps":
The branch, master has been updated
via 4456795a825fc66ee9189ac4a6e655ce1f20aec9 (commit)
from 2fcf2277e39144a5bf1683f736b085ed7347af37 (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
commit 4456795a825fc66ee9189ac4a6e655ce1f20aec9
Author: [CST] Focus <foc...@gm...>
Date: Thu Feb 21 21:27:05 2013 +0100
sectionsd: add operators, simplify event compare code
Signed-off-by: Christian Schuett <Gau...@ho...>
diff --git a/tuxbox/neutrino/daemons/sectionsd/SIevents.hpp b/tuxbox/neutrino/daemons/sectionsd/SIevents.hpp
index 00654d5..f1d16d1 100644
--- a/tuxbox/neutrino/daemons/sectionsd/SIevents.hpp
+++ b/tuxbox/neutrino/daemons/sectionsd/SIevents.hpp
@@ -133,6 +133,22 @@ public:
return name < l.name;
}
+ bool operator==(const SIlinkage& l) const {
+ return (linkageType == l.linkageType) &&
+ (transportStreamId == l.transportStreamId) &&
+ (originalNetworkId == l.originalNetworkId) &&
+ (serviceId == l.serviceId) &&
+ (name == l.name);
+ }
+
+ bool operator!=(const SIlinkage& l) const {
+ return (linkageType != l.linkageType) ||
+ (transportStreamId != l.transportStreamId) ||
+ (originalNetworkId != l.originalNetworkId) ||
+ (serviceId != l.serviceId) ||
+ (name != l.name);
+ }
+
void dump(void) const {
printf("Linakge Type: 0x%02hhx\n", linkageType);
if (name.length())
@@ -205,6 +221,18 @@ class SIcomponent {
return streamContent < c.streamContent;
// return component < c.component;
}
+ bool operator==(const SIcomponent& c) const {
+ return (componentType == c.componentType) &&
+ (componentTag == c.componentTag) &&
+ (streamContent == c.streamContent) &&
+ (component == c.component);
+ }
+ bool operator!=(const SIcomponent& c) const {
+ return (componentType != c.componentType) ||
+ (componentTag != c.componentTag) ||
+ (streamContent != c.streamContent) ||
+ (component != c.component);
+ }
void dump(void) const {
if(component.length())
printf("Component: %s\n", component.c_str());
@@ -257,8 +285,16 @@ class SIparentalRating {
countryCode=r.countryCode;
}
// Der Operator zum sortieren
- bool operator < (const SIparentalRating& c) const {
- return countryCode < c.countryCode;
+ bool operator < (const SIparentalRating& r) const {
+ return countryCode < r.countryCode;
+ }
+ bool operator==(const SIparentalRating& r) const {
+ return (rating == r.rating) &&
+ (countryCode == r.countryCode);
+ }
+ bool operator!=(const SIparentalRating& r) const {
+ return (rating != r.rating) ||
+ (countryCode != r.countryCode);
}
void dump(void) const {
printf("Rating: %s %hhu (+3)\n", countryCode.c_str(), rating);
@@ -304,6 +340,14 @@ class SItime {
bool operator < (const SItime& t) const {
return startzeit < t.startzeit;
}
+ bool operator==(const SItime& t) const {
+ return (dauer == t.dauer) &&
+ (startzeit == t.startzeit);
+ }
+ bool operator!=(const SItime& t) const {
+ return (dauer != t.dauer) ||
+ (startzeit != t.startzeit);
+ }
void dump(void) const {
printf("Startzeit: %s", ctime(&startzeit));
printf("Dauer: %02u:%02u:%02u (%umin, %us)\n", dauer/3600, (dauer%3600)/60, dauer%60, dauer/60, dauer);
diff --git a/tuxbox/neutrino/daemons/sectionsd/sectionsd.cpp b/tuxbox/neutrino/daemons/sectionsd/sectionsd.cpp
index 327bf83..bfb7124 100644
--- a/tuxbox/neutrino/daemons/sectionsd/sectionsd.cpp
+++ b/tuxbox/neutrino/daemons/sectionsd/sectionsd.cpp
@@ -780,82 +780,14 @@ static void addEvent(const SIevent &evt, const time_t zeit, bool cn = false)
them with the old ones, because the same event can be complete
on one German Sky channel and incomplete on another one. So we
make sure to keep the complete event, if applicable. */
-
- if ((already_exists) && !evt.components.empty()) {
- if (si->second->components.size() != evt.components.size())
- already_exists = false;
- else {
- SIcomponents::const_iterator c1 = si->second->components.begin();
- SIcomponents::const_iterator c2 = evt.components.begin();
- while ((c1 != si->second->components.end()) && (c2 != evt.components.end())) {
- if ((c1->componentType != c2->componentType) ||
- (c1->componentTag != c2->componentTag) ||
- (c1->streamContent != c2->streamContent) ||
- (strcmp(c1->component.c_str(),c2->component.c_str()) != 0)) {
- already_exists = false;
- break;
- }
- c1++;
- c2++;
- }
- }
- }
-
- if ((already_exists) && !evt.linkage_descs.empty()) {
- if (si->second->linkage_descs.size() != evt.linkage_descs.size())
- already_exists = false;
- else {
- for (unsigned int i = 0; i < si->second->linkage_descs.size(); i++) {
- if ((si->second->linkage_descs[i].linkageType !=
- evt.linkage_descs[i].linkageType) ||
- (si->second->linkage_descs[i].originalNetworkId !=
- evt.linkage_descs[i].originalNetworkId) ||
- (si->second->linkage_descs[i].transportStreamId !=
- evt.linkage_descs[i].transportStreamId) ||
- (strcmp(si->second->linkage_descs[i].name.c_str(),
- evt.linkage_descs[i].name.c_str()) != 0)) {
- already_exists = false;
- break;
- }
- }
- }
- }
-
- if ((already_exists) && !evt.ratings.empty()) {
- if (si->second->ratings.size() != evt.ratings.size())
- already_exists = false;
- else {
- SIparentalRatings::const_iterator p1 = si->second->ratings.begin();
- SIparentalRatings::const_iterator p2 = evt.ratings.begin();
- while ((p1 != si->second->ratings.end()) && (p2 != evt.ratings.end())) {
- if ((p1->rating != p2->rating) ||
- (strcmp(p1->countryCode.c_str(),p2->countryCode.c_str()) != 0)) {
- already_exists = false;
- break;
- }
- p1++;
- p2++;
- }
- }
- }
-
- if (already_exists) {
- if (si->second->times.size() != evt.times.size())
- already_exists = false;
- else {
- SItimes::iterator t1 = si->second->times.begin();
- SItimes::iterator t2 = evt.times.begin();
- while ((t1 != si->second->times.end()) && (t2 != evt.times.end())) {
- if ((t1->startzeit != t2->startzeit) ||
- (t1->dauer != t2->dauer)) {
- already_exists = false;
- break;
- }
- t1++;
- t2++;
- }
- }
- }
+ if (already_exists && !evt.components.empty() && (evt.components != si->second->components))
+ already_exists = false;
+ if (already_exists && !evt.linkage_descs.empty() && (evt.linkage_descs != si->second->linkage_descs))
+ already_exists = false;
+ if (already_exists && !evt.ratings.empty() && (evt.ratings != si->second->ratings))
+ already_exists = false;
+ if (already_exists && (evt.times != si->second->times))
+ already_exists = false;
if ((already_exists) && (SIlanguage::getMode() == CSectionsdClient::LANGUAGE_MODE_OFF)) {
si->second->contentClassification = evt.contentClassification;
-----------------------------------------------------------------------
Summary of changes:
tuxbox/neutrino/daemons/sectionsd/SIevents.hpp | 48 ++++++++++++-
tuxbox/neutrino/daemons/sectionsd/sectionsd.cpp | 84 ++--------------------
2 files changed, 54 insertions(+), 78 deletions(-)
--
Tuxbox-GIT: apps
|
|
From: Thilo G. <tux...@ne...> - 2013-02-16 20:56:55
|
Project "Tuxbox-GIT: apps":
The branch, master has been updated
via 2fcf2277e39144a5bf1683f736b085ed7347af37 (commit)
via 373af6f35a9f09f753e5ac8349735528b13a1c5e (commit)
via 46a03c73e782815f050825e9d5df104795ea1e4d (commit)
via a6a89a9a9ff4f55df61a7d8ba703f0a6ce3d2b78 (commit)
from 528bc8294ab60342a76363c364cbd47d5d7baeaa (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
commit 2fcf2277e39144a5bf1683f736b085ed7347af37
Author: micha-bbg <tux...@gm...>
Date: Sat Feb 16 14:58:40 2013 +0100
sectionsd.cpp: Remove invalid events (duration <= 1 sec.) from event list
Signed-off-by: Christian Schuett <Gau...@ho...>
diff --git a/tuxbox/neutrino/daemons/sectionsd/sectionsd.cpp b/tuxbox/neutrino/daemons/sectionsd/sectionsd.cpp
index ae3e311..327bf83 100644
--- a/tuxbox/neutrino/daemons/sectionsd/sectionsd.cpp
+++ b/tuxbox/neutrino/daemons/sectionsd/sectionsd.cpp
@@ -7252,7 +7252,8 @@ static void *fseitThread(void *)
if (!(e->times.empty()))
{
if ( ( e->times.begin()->startzeit < zeit + secondsToCache ) &&
- ( ( e->times.begin()->startzeit + (long)e->times.begin()->dauer ) > zeit - oldEventsAre ) )
+ ( ( e->times.begin()->startzeit + (long)e->times.begin()->dauer ) > zeit - oldEventsAre ) &&
+ ( e->times.begin()->dauer > 1 ) )
{
//fprintf(stderr, "%02x ", header.table_id);
addEvent(*e, zeit);
@@ -7594,7 +7595,8 @@ static void *eitThread(void *)
if (!(e->times.empty()))
{
if ( ( e->times.begin()->startzeit < zeit + secondsToCache ) &&
- ( ( e->times.begin()->startzeit + (long)e->times.begin()->dauer ) > zeit - oldEventsAre ) )
+ ( ( e->times.begin()->startzeit + (long)e->times.begin()->dauer ) > zeit - oldEventsAre ) &&
+ ( e->times.begin()->dauer > 1 ) )
{
//fprintf(stderr, "%02x ", header.table_id);
addEvent(*e, zeit);
commit 373af6f35a9f09f753e5ac8349735528b13a1c5e
Author: Stefan Seyfried <se...@tu...>
Date: Fri Feb 15 19:23:26 2013 +0100
sectionsd: add workaround for holes in SRF EPG
Signed-off-by: Christian Schuett <Gau...@ho...>
diff --git a/tuxbox/neutrino/daemons/sectionsd/sectionsd.cpp b/tuxbox/neutrino/daemons/sectionsd/sectionsd.cpp
index bb1c1fc..ae3e311 100644
--- a/tuxbox/neutrino/daemons/sectionsd/sectionsd.cpp
+++ b/tuxbox/neutrino/daemons/sectionsd/sectionsd.cpp
@@ -937,6 +937,13 @@ static void addEvent(const SIevent &evt, const time_t zeit, bool cn = false)
unlockEvents();
return;
}
+ /* SRF special case: advertising is inserted with start time of
+ * an existing event. Duration may differ. To avoid holes in EPG caused
+ * by the (not useful) advertising event, don't delete the (useful)
+ * original event */
+ if ((*x)->table_id == e->table_id && (e->table_id & 0xFE) == 0x4e &&
+ (*x)->times.begin()->startzeit == start_time)
+ continue;
/* here we have an overlapping event */
dprintf("%s: delete 0x%016llx.%02x time = 0x%016llx.%02x\n", __func__,
x_key, (*x)->table_id, e_key, e->table_id);
commit 46a03c73e782815f050825e9d5df104795ea1e4d
Author: Stefan Seyfried <se...@tu...>
Date: Fri Feb 15 19:18:15 2013 +0100
sectionsd: consider the table_id when inserting events
Signed-off-by: Christian Schuett <Gau...@ho...>
diff --git a/tuxbox/neutrino/daemons/sectionsd/sectionsd.cpp b/tuxbox/neutrino/daemons/sectionsd/sectionsd.cpp
index 3ef2def..bb1c1fc 100644
--- a/tuxbox/neutrino/daemons/sectionsd/sectionsd.cpp
+++ b/tuxbox/neutrino/daemons/sectionsd/sectionsd.cpp
@@ -8,7 +8,7 @@
//
// Homepage: http://dbox2.elxsi.de
//
-// Copyright (C) 2008, 2009 Stefan Seyfried
+// Copyright (C) 2008-2013 Stefan Seyfried
//
// This program is free software; you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
@@ -912,9 +912,16 @@ static void addEvent(const SIevent &evt, const time_t zeit, bool cn = false)
else
{
event_id_t x_key = (*x)->uniqueKey();
- /* do we need this check? */
if (x_key == e_key)
- continue;
+ {
+ /* the present event has a higher table_id than the new one
+ * => delete and insert the new one */
+ if ((*x)->table_id >= e->table_id)
+ continue;
+ /* else: keep the old event with the lower table_id */
+ unlockEvents();
+ return;
+ }
if ((*x)->times.begin()->startzeit >= end_time)
continue;
/* iterating backwards: if the endtime of the stored events
@@ -922,6 +929,14 @@ static void addEvent(const SIevent &evt, const time_t zeit, bool cn = false)
* find an identical one => bail out */
if ((*x)->times.begin()->startzeit + (long)(*x)->times.begin()->dauer <= start_time)
break;
+ if ((*x)->table_id < e->table_id)
+ {
+ /* don't add the higher table_id */
+ dprintf("%s: don't replace 0x%016llx.%02x with 0x%016llx.%02x\n",
+ __func__, x_key, (*x)->table_id, e_key, e->table_id);
+ unlockEvents();
+ return;
+ }
/* here we have an overlapping event */
dprintf("%s: delete 0x%016llx.%02x time = 0x%016llx.%02x\n", __func__,
x_key, (*x)->table_id, e_key, e->table_id);
commit a6a89a9a9ff4f55df61a7d8ba703f0a6ce3d2b78
Author: Stefan Seyfried <se...@tu...>
Date: Fri Feb 15 19:37:32 2013 +0100
infoviewer: don't suppress valid 'next' events
Signed-off-by: Christian Schuett <Gau...@ho...>
diff --git a/tuxbox/neutrino/src/gui/infoviewer.cpp b/tuxbox/neutrino/src/gui/infoviewer.cpp
index fa752f1..e1cc0d7 100644
--- a/tuxbox/neutrino/src/gui/infoviewer.cpp
+++ b/tuxbox/neutrino/src/gui/infoviewer.cpp
@@ -6,7 +6,7 @@
Copyright (C) 2001 Steffen Hehn 'McClean'
Homepage: http://dbox.cyberphoria.org/
- Bugfixes/cleanups/dreambox port (C) 2007-2009 Stefan Seyfried
+ Bugfixes/cleanups/dreambox port (C) 2007-2013 Stefan Seyfried
(C) 2008 Novell, Inc. Author: Stefan Seyfried
Kommentar:
@@ -1710,7 +1710,9 @@ void CInfoViewer::show_Data(bool calledFromEvent)
info_CurrentNext.current_zeit.startzeit = g_RemoteControl->subChannels[g_RemoteControl->selected_subchannel].startzeit;
info_CurrentNext.current_zeit.dauer = g_RemoteControl->subChannels[g_RemoteControl->selected_subchannel].dauer;
}
- /* what is this for? is it for preventing overlapping events to be displayed? */
+#if 0
+/* this triggers false positives on some channels.
+ * TODO: test on real NVOD channels, if this was even necessary at all */
else
{
if ((info_CurrentNext.flags & CSectionsdClient::epgflags::has_current) &&
@@ -1723,6 +1725,7 @@ void CInfoViewer::show_Data(bool calledFromEvent)
}
}
}
+#endif
time_t jetzt=time(NULL);
if (info_CurrentNext.flags & CSectionsdClient::epgflags::has_current)
-----------------------------------------------------------------------
Summary of changes:
tuxbox/neutrino/daemons/sectionsd/sectionsd.cpp | 34 +++++++++++++++++++---
tuxbox/neutrino/src/gui/infoviewer.cpp | 7 +++-
2 files changed, 34 insertions(+), 7 deletions(-)
--
Tuxbox-GIT: apps
|
|
From: Thilo G. <tux...@ne...> - 2013-02-10 20:08:27
|
Project "Tuxbox-GIT: cdk":
The branch, master has been updated
via e3bdd7530669d4c2dc182a8a41d6c2a190e2c410 (commit)
from 956158ac5c9eae9f086f39611679d9b3b2a48772 (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
commit e3bdd7530669d4c2dc182a8a41d6c2a190e2c410
Author: Christian Schuett <Gau...@ho...>
Date: Mon Feb 4 18:29:41 2013 +0100
fix migrate errors
The CVS commit "Remove unused netkit package" from 29 Sep 2011 16:59 GMT
cannot be found in Git commit history. One change of that commit is
missing. So let's add it.
Signed-off-by: Christian Schuett <Gau...@ho...>
diff --git a/Patches/netkit-telnet.diff b/Patches/netkit-telnet.diff
deleted file mode 100644
index 77a84a7..0000000
--- a/Patches/netkit-telnet.diff
+++ /dev/null
@@ -1,85 +0,0 @@
-diff -Naur netkit-telnet-0.17/telnet/main.cc netkit-telnet-0.17new/telnet/main.cc
---- netkit-telnet-0.17/telnet/main.cc 2002-11-18 02:12:38.000000000 +0100
-+++ netkit-telnet-0.17new/telnet/main.cc 2002-11-18 02:05:04.000000000 +0100
-@@ -46,6 +46,7 @@
- #include <sys/types.h>
- #include <getopt.h>
- #include <string.h>
-+#include <stdlib.h>
-
- #include "ring.h"
- #include "externs.h"
-diff -Naur netkit-telnet-0.17/telnet/netlink.cc netkit-telnet-0.17new/telnet/netlink.cc
---- netkit-telnet-0.17/telnet/netlink.cc 2002-11-18 02:12:38.000000000 +0100
-+++ netkit-telnet-0.17new/telnet/netlink.cc 2002-11-18 02:05:04.000000000 +0100
-@@ -8,6 +8,7 @@
- #include <sys/ioctl.h>
- #include <sys/time.h>
- #include <netdb.h>
-+#include <string.h>
- #include "netlink.h"
- #include "proto.h"
- #include "ring.h"
-diff -Naur netkit-telnet-0.17/telnet/network.cc netkit-telnet-0.17new/telnet/network.cc
---- netkit-telnet-0.17/telnet/network.cc 2002-11-18 02:12:38.000000000 +0100
-+++ netkit-telnet-0.17new/telnet/network.cc 2002-11-18 02:05:04.000000000 +0100
-@@ -42,6 +42,7 @@
- #include <sys/time.h>
- #include <errno.h>
- #include <arpa/telnet.h>
-+#include <stdlib.h>
-
- #include "ring.h"
- #include "defines.h"
-diff -Naur netkit-telnet-0.17/telnet/telnet.cc netkit-telnet-0.17new/telnet/telnet.cc
---- netkit-telnet-0.17/telnet/telnet.cc 2002-11-18 02:12:38.000000000 +0100
-+++ netkit-telnet-0.17new/telnet/telnet.cc 2002-11-18 02:08:01.000000000 +0100
-@@ -61,10 +61,10 @@
- * Due to lossage in some linux distributions/kernel releases/libc versions
- * this must come *after* termios.h (which is included in externs.h)
- */
--#include <termcap.h>
-
-+#define USE_NCURSES
- #ifdef USE_NCURSES
--#include <term.h>
-+#include <ncurses/term.h>
- #endif
-
-
-diff -Naur netkit-telnet-0.17/telnet/terminal.cc netkit-telnet-0.17new/telnet/terminal.cc
---- netkit-telnet-0.17/telnet/terminal.cc 2002-11-18 02:12:41.000000000 +0100
-+++ netkit-telnet-0.17new/telnet/terminal.cc 2002-11-18 02:05:04.000000000 +0100
-@@ -45,6 +45,8 @@
- #include <signal.h>
- #include <errno.h>
- #include <stdio.h>
-+#include <stdlib.h>
-+#include <string.h>
-
- #include "ring.h"
- #include "defines.h"
-diff -Naur netkit-telnet-0.17/telnet/utilities.cc netkit-telnet-0.17new/telnet/utilities.cc
---- netkit-telnet-0.17/telnet/utilities.cc 2002-11-18 02:12:41.000000000 +0100
-+++ netkit-telnet-0.17new/telnet/utilities.cc 2002-11-18 02:05:04.000000000 +0100
-@@ -47,6 +47,8 @@
- #include <sys/socket.h>
- #include <unistd.h>
- #include <ctype.h>
-+#include <string.h>
-+#include <stdlib.h>
-
- #include "ring.h"
- #include "defines.h"
-diff -Naur netkit-telnet-0.17/telnetd/telnetd.c netkit-telnet-0.17new/telnetd/telnetd.c
---- netkit-telnet-0.17/telnetd/telnetd.c 2000-04-12 23:36:12.000000000 +0200
-+++ netkit-telnet-0.17new/telnetd/telnetd.c 2002-11-18 02:12:13.000000000 +0100
-@@ -44,7 +44,7 @@
- #include "../version.h"
-
- #include <netdb.h>
--#include <termcap.h>
-+#include <ncurses/termcap.h>
- #include <netinet/in.h>
- /* #include <netinet/ip.h> */ /* Don't think this is used at all here */
- #include <arpa/inet.h>
-----------------------------------------------------------------------
Summary of changes:
Patches/netkit-telnet.diff | 85 --------------------------------------------
1 files changed, 0 insertions(+), 85 deletions(-)
delete mode 100644 Patches/netkit-telnet.diff
--
Tuxbox-GIT: cdk
|
|
From: Thilo G. <tux...@ne...> - 2013-02-10 20:07:41
|
Project "Tuxbox-GIT: apps":
The branch, master has been updated
via 528bc8294ab60342a76363c364cbd47d5d7baeaa (commit)
via b61dad0924b53bce8a7e397cfc22aee23e128ea6 (commit)
via 3785fcf2b1b5a92b8482a693e362f0097bb0dff1 (commit)
from 80c346b0c142ecbcc11f5399b00db3d2311f5d14 (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
commit 528bc8294ab60342a76363c364cbd47d5d7baeaa
Author: Christian Schuett <Gau...@ho...>
Date: Mon Feb 4 18:25:44 2013 +0100
fix migrate errors
The CVS commit "Remove unused Neutrino icons, use defines instead of
strings for icon filenames" from 9 Nov 2009 21:38 GMT cannot be found
in Git commit history. Some changes of that commit are missing. So
let's add them.
Signed-off-by: Christian Schuett <Gau...@ho...>
diff --git a/tuxbox/neutrino/data/icons/movie.raw b/tuxbox/neutrino/data/icons/movie.raw
deleted file mode 100644
index ea1085a..0000000
Binary files a/tuxbox/neutrino/data/icons/movie.raw and /dev/null differ
diff --git a/tuxbox/neutrino/data/icons/network.raw b/tuxbox/neutrino/data/icons/network.raw
deleted file mode 100644
index f551a53..0000000
Binary files a/tuxbox/neutrino/data/icons/network.raw and /dev/null differ
diff --git a/tuxbox/neutrino/src/gui/favorites.cpp b/tuxbox/neutrino/src/gui/favorites.cpp
index 984882f..f0983fb 100644
--- a/tuxbox/neutrino/src/gui/favorites.cpp
+++ b/tuxbox/neutrino/src/gui/favorites.cpp
@@ -115,7 +115,7 @@ int CFavorites::exec(CMenuTarget* parent, const std::string &)
parent->hide();
if (!bouquetList) {
- ShowLocalizedMessage(LOCALE_FAVORITES_BOUQUETNAME, LOCALE_FAVORITES_NOBOUQUETS, CMessageBox::mbrBack, CMessageBox::mbBack, "info.raw");
+ ShowLocalizedMessage(LOCALE_FAVORITES_BOUQUETNAME, LOCALE_FAVORITES_NOBOUQUETS, CMessageBox::mbrBack, CMessageBox::mbBack, NEUTRINO_ICON_INFO);
return res;
}
@@ -137,7 +137,7 @@ int CFavorites::exec(CMenuTarget* parent, const std::string &)
if (status) str += g_Locale->getText(LOCALE_FAVORITES_FINALHINT);
- ShowMsgUTF(LOCALE_FAVORITES_BOUQUETNAME, str, CMessageBox::mbrBack, CMessageBox::mbBack, "info.raw"); // UTF-8
+ ShowMsgUTF(LOCALE_FAVORITES_BOUQUETNAME, str, CMessageBox::mbrBack, CMessageBox::mbBack, NEUTRINO_ICON_INFO); // UTF-8
// if (status) {
// g_RCInput->postMsg( NeutrinoMessages::EVT_BOUQUETSCHANGED, 0 );
diff --git a/tuxbox/neutrino/src/gui/widget/hintbox.h b/tuxbox/neutrino/src/gui/widget/hintbox.h
index c291aa6..e647b5e 100644
--- a/tuxbox/neutrino/src/gui/widget/hintbox.h
+++ b/tuxbox/neutrino/src/gui/widget/hintbox.h
@@ -63,7 +63,7 @@ class CHintBox
public:
// Text is UTF-8 encoded
- CHintBox(const neutrino_locale_t Caption, const char * const Text, const int Width = 450, const char * const Icon = "info.raw");
+ CHintBox(const neutrino_locale_t Caption, const char * const Text, const int Width = 450, const char * const Icon = NEUTRINO_ICON_INFO);
~CHintBox(void);
bool has_scrollbar(void);
diff --git a/tuxbox/neutrino/src/gui/widget/hintboxext.h b/tuxbox/neutrino/src/gui/widget/hintboxext.h
index 24124d5..05f9c3a 100644
--- a/tuxbox/neutrino/src/gui/widget/hintboxext.h
+++ b/tuxbox/neutrino/src/gui/widget/hintboxext.h
@@ -37,6 +37,7 @@
#include <system/localize.h>
#include <gui/widget/drawable.h>
+#include <gui/widget/icons.h>
#include <string>
#include <vector>
@@ -67,7 +68,7 @@ class CHintBoxExt
public:
CHintBoxExt(const neutrino_locale_t Caption, const char * const Text, const int Width, const char * const Icon);
- CHintBoxExt(const neutrino_locale_t Caption, ContentLines& lines, const int Width = 450, const char * const Icon = "info.raw");
+ CHintBoxExt(const neutrino_locale_t Caption, ContentLines& lines, const int Width = 450, const char * const Icon = NEUTRINO_ICON_INFO);
~CHintBoxExt(void);
commit b61dad0924b53bce8a7e397cfc22aee23e128ea6
Author: Christian Schuett <Gau...@ho...>
Date: Mon Feb 4 19:07:44 2013 +0100
Neutrino bookmark manager: use bookmarkmanager icon
Signed-off-by: Christian Schuett <Gau...@ho...>
diff --git a/tuxbox/neutrino/data/icons/Makefile.am b/tuxbox/neutrino/data/icons/Makefile.am
index d674db0..ae071a8 100644
--- a/tuxbox/neutrino/data/icons/Makefile.am
+++ b/tuxbox/neutrino/data/icons/Makefile.am
@@ -4,7 +4,7 @@ install_DATA = \
0.raw 1.raw 2.raw 3.raw 4.raw 5.raw 6.raw 7.raw 8.raw 9.raw \
16_9_gray.raw 16_9.raw \
audio.raw \
- blau.raw border_lr.raw border_ul.raw \
+ blau.raw bookmarkmanager.raw border_lr.raw border_ul.raw \
ca.raw colors.raw conflict.raw \
dd_avail.raw dd_gray.raw dd.raw down.raw \
epginfo.raw error.raw \
diff --git a/tuxbox/neutrino/src/gui/bookmarkmanager.cpp b/tuxbox/neutrino/src/gui/bookmarkmanager.cpp
index 07a221a..bed2988 100644
--- a/tuxbox/neutrino/src/gui/bookmarkmanager.cpp
+++ b/tuxbox/neutrino/src/gui/bookmarkmanager.cpp
@@ -234,7 +234,7 @@ const CBookmark * CBookmarkManager::getBookmark(CMenuTarget* parent)
width=g_settings.screen_EndX-g_settings.screen_StartX-10;
int iconw = 0, iconh = 0;
- frameBuffer->getIconSize(NEUTRINO_ICON_TIMER, &iconw, &iconh);
+ frameBuffer->getIconSize(NEUTRINO_ICON_BOOKMARKMANAGER, &iconw, &iconh);
theight = std::max(iconh, g_Font[SNeutrinoSettings::FONT_TYPE_MENU_TITLE]->getHeight());
fheight = g_Font[SNeutrinoSettings::FONT_TYPE_MENU]->getHeight();
x = getScreenStartX (width);
@@ -435,10 +435,10 @@ void CBookmarkManager::paintHead()
int theight_mid = theight / 2;
int iconw = 0, iconh = 0;
- frameBuffer->getIconSize(NEUTRINO_ICON_TIMER, &iconw, &iconh);
+ frameBuffer->getIconSize(NEUTRINO_ICON_BOOKMARKMANAGER, &iconw, &iconh);
int ypos = y + theight_mid - (iconh / 2);
- frameBuffer->paintIcon(NEUTRINO_ICON_TIMER, x + 5, ypos);
+ frameBuffer->paintIcon(NEUTRINO_ICON_BOOKMARKMANAGER, x + 5, ypos);
g_Font[SNeutrinoSettings::FONT_TYPE_MENU_TITLE]->RenderString(x + 5 + iconw + 10, y + theight + 2, width - 5 - iconw - 10, g_Locale->getText(LOCALE_BOOKMARKMANAGER_NAME), COL_MENUHEAD, 0, true); // UTF-8
#if 0
diff --git a/tuxbox/neutrino/src/gui/widget/icons.h b/tuxbox/neutrino/src/gui/widget/icons.h
index afbe877..2abb283 100644
--- a/tuxbox/neutrino/src/gui/widget/icons.h
+++ b/tuxbox/neutrino/src/gui/widget/icons.h
@@ -60,6 +60,7 @@
#define NEUTRINO_ICON_16_9 "16_9.raw"
#define NEUTRINO_ICON_16_9_GREY "16_9_gray.raw"
#define NEUTRINO_ICON_AUDIO "audio.raw"
+#define NEUTRINO_ICON_BOOKMARKMANAGER "bookmarkmanager.raw"
#define NEUTRINO_ICON_BORDER_LR "border_lr.raw"
#define NEUTRINO_ICON_BORDER_UL "border_ul.raw"
#define NEUTRINO_ICON_CA "ca.raw"
commit 3785fcf2b1b5a92b8482a693e362f0097bb0dff1
Author: GetAway <get...@t-...>
Date: Sun Dec 30 22:18:40 2012 +0100
nhttpd: add command 'reloadplugins' to controlapi
Signed-off-by: Christian Schuett <Gau...@ho...>
diff --git a/tuxbox/neutrino/daemons/nhttpd/tuxboxapi/controlapi.cpp b/tuxbox/neutrino/daemons/nhttpd/tuxboxapi/controlapi.cpp
index 7fbc3cf..3376076 100644
--- a/tuxbox/neutrino/daemons/nhttpd/tuxboxapi/controlapi.cpp
+++ b/tuxbox/neutrino/daemons/nhttpd/tuxboxapi/controlapi.cpp
@@ -159,6 +159,7 @@ const CControlAPI::TyCgiCall CControlAPI::yCgiCallList[]=
{"rcem", &CControlAPI::RCEmCGI, "text/plain"},
// Start skripts, plugins
{"startplugin", &CControlAPI::StartPluginCGI, "text/plain"},
+ {"reloadplugins", &CControlAPI::ReloadPluginsCGI, "text/plain"},
{"exec", &CControlAPI::ExecCGI, "+xml"},
{"yweb", &CControlAPI::YWebCGI, "text/plain"},
// video handling
@@ -1385,6 +1386,18 @@ void CControlAPI::StartPluginCGI(CyhookHandler *hh)
}
//-----------------------------------------------------------------------------
+void CControlAPI::ReloadPluginsCGI(CyhookHandler *hh)
+{
+ if (hh->ParamList.empty())
+ {
+ NeutrinoAPI->EventServer->sendEvent(NeutrinoMessages::RELOAD_PLUGINS, CEventServer::INITID_HTTPD);
+ hh->SendOk();
+ }
+ else
+ hh->SendError();
+}
+
+//-----------------------------------------------------------------------------
void CControlAPI::LCDAction(CyhookHandler *hh)
{
int tval;
diff --git a/tuxbox/neutrino/daemons/nhttpd/tuxboxapi/controlapi.h b/tuxbox/neutrino/daemons/nhttpd/tuxboxapi/controlapi.h
index c6c9b54..7657a73 100644
--- a/tuxbox/neutrino/daemons/nhttpd/tuxboxapi/controlapi.h
+++ b/tuxbox/neutrino/daemons/nhttpd/tuxboxapi/controlapi.h
@@ -76,6 +76,7 @@ private:
void VersionCGI(CyhookHandler *hh);
void ZaptoCGI(CyhookHandler *hh);
void StartPluginCGI(CyhookHandler *hh);
+ void ReloadPluginsCGI(CyhookHandler *hh);
void LCDAction(CyhookHandler *hh);
void YWebCGI(CyhookHandler *hh);
void RebootCGI(CyhookHandler *hh);
@@ -109,7 +110,7 @@ public:
// virtual functions for HookHandler/Hook
virtual std::string getHookName(void) {return std::string("mod_ControlAPI");}
- virtual std::string getHookVersion(void) {return std::string("$Revision: 1.7 $");}
+ virtual std::string getHookVersion(void) {return std::string("$Revision: 1.8 $");}
virtual THandleStatus Hook_SendResponse(CyhookHandler *hh);
virtual THandleStatus Hook_PrepareResponse(CyhookHandler *hh);
};
diff --git a/tuxbox/neutrino/daemons/nhttpd/tuxboxapi/neutrinoapi.cpp b/tuxbox/neutrino/daemons/nhttpd/tuxboxapi/neutrinoapi.cpp
index 67d3f36..172e67d 100644
--- a/tuxbox/neutrino/daemons/nhttpd/tuxboxapi/neutrinoapi.cpp
+++ b/tuxbox/neutrino/daemons/nhttpd/tuxboxapi/neutrinoapi.cpp
@@ -97,6 +97,7 @@ CNeutrinoAPI::CNeutrinoAPI()
EventServer->registerEvent2( NeutrinoMessages::EVT_POPUP, CEventServer::INITID_HTTPD, "/tmp/neutrino.sock");
EventServer->registerEvent2( NeutrinoMessages::EVT_EXTMSG, CEventServer::INITID_HTTPD, "/tmp/neutrino.sock");
EventServer->registerEvent2( NeutrinoMessages::CHANGEMODE, CEventServer::INITID_HTTPD, "/tmp/neutrino.sock");
+ EventServer->registerEvent2( NeutrinoMessages::RELOAD_PLUGINS, CEventServer::INITID_HTTPD, "/tmp/neutrino.sock");
EventServer->registerEvent2( NeutrinoMessages::EVT_START_PLUGIN, CEventServer::INITID_HTTPD, "/tmp/neutrino.sock");
EventServer->registerEvent2( NeutrinoMessages::LOCK_RC, CEventServer::INITID_HTTPD, "/tmp/neutrino.sock");
EventServer->registerEvent2( NeutrinoMessages::UNLOCK_RC, CEventServer::INITID_HTTPD, "/tmp/neutrino.sock");
diff --git a/tuxbox/neutrino/src/driver/rcinput.cpp b/tuxbox/neutrino/src/driver/rcinput.cpp
index 434174f..fd11cda 100644
--- a/tuxbox/neutrino/src/driver/rcinput.cpp
+++ b/tuxbox/neutrino/src/driver/rcinput.cpp
@@ -1278,6 +1278,10 @@ void CRCInput::getMsg_us(neutrino_msg_t *msg, neutrino_msg_data_t *data, unsigne
*msg = NeutrinoMessages::ESOUND_OFF;
*data = 0;
break;
+ case NeutrinoMessages::RELOAD_PLUGINS :
+ *msg = NeutrinoMessages::RELOAD_PLUGINS;
+ *data = 0;
+ break;
case NeutrinoMessages::EVT_START_PLUGIN :
*msg = NeutrinoMessages::EVT_START_PLUGIN;
*data = (neutrino_msg_data_t)p;
diff --git a/tuxbox/neutrino/src/neutrino.cpp b/tuxbox/neutrino/src/neutrino.cpp
index cd50364..3c43a0d 100644
--- a/tuxbox/neutrino/src/neutrino.cpp
+++ b/tuxbox/neutrino/src/neutrino.cpp
@@ -3292,6 +3292,11 @@ int CNeutrinoApp::handleMsg(const neutrino_msg_t m, neutrino_msg_data_t data)
scartMode( false );
}
}
+ else if (msg == NeutrinoMessages::RELOAD_PLUGINS)
+ {
+ g_PluginList->loadPlugins();
+ return messages_return::handled;
+ }
else if (msg == NeutrinoMessages::EVT_START_PLUGIN)
{
g_PluginList->startPlugin((const char *)data);
diff --git a/tuxbox/neutrino/src/neutrinoMessages.h b/tuxbox/neutrino/src/neutrinoMessages.h
index 8cba123..591f868 100644
--- a/tuxbox/neutrino/src/neutrinoMessages.h
+++ b/tuxbox/neutrino/src/neutrinoMessages.h
@@ -73,6 +73,7 @@ struct NeutrinoMessages {
UNLOCK_RC = CRCInput::RC_Messages + 20,
ESOUND_ON = CRCInput::RC_Messages + 21,
ESOUND_OFF = CRCInput::RC_Messages + 22,
+ RELOAD_PLUGINS = CRCInput::RC_Messages + 23,
EVT_VOLCHANGED = CRCInput::RC_Events + 1,
EVT_MUTECHANGED = CRCInput::RC_Events + 2,
-----------------------------------------------------------------------
Summary of changes:
.../daemons/nhttpd/tuxboxapi/controlapi.cpp | 13 +++++++++++++
.../neutrino/daemons/nhttpd/tuxboxapi/controlapi.h | 3 ++-
.../daemons/nhttpd/tuxboxapi/neutrinoapi.cpp | 1 +
tuxbox/neutrino/data/icons/Makefile.am | 2 +-
tuxbox/neutrino/data/icons/movie.raw | Bin 133 -> 0 bytes
tuxbox/neutrino/data/icons/network.raw | Bin 293 -> 0 bytes
tuxbox/neutrino/src/driver/rcinput.cpp | 4 ++++
tuxbox/neutrino/src/gui/bookmarkmanager.cpp | 6 +++---
tuxbox/neutrino/src/gui/favorites.cpp | 4 ++--
tuxbox/neutrino/src/gui/widget/hintbox.h | 2 +-
tuxbox/neutrino/src/gui/widget/hintboxext.h | 3 ++-
tuxbox/neutrino/src/gui/widget/icons.h | 1 +
tuxbox/neutrino/src/neutrino.cpp | 5 +++++
tuxbox/neutrino/src/neutrinoMessages.h | 1 +
14 files changed, 36 insertions(+), 9 deletions(-)
delete mode 100644 tuxbox/neutrino/data/icons/movie.raw
delete mode 100644 tuxbox/neutrino/data/icons/network.raw
--
Tuxbox-GIT: apps
|
|
From: Thilo G. <tux...@ne...> - 2013-02-10 19:56:56
|
Project "Tuxbox-GIT: cdk":
The branch, master has been updated
via 956158ac5c9eae9f086f39611679d9b3b2a48772 (commit)
from 8ef7a7f5f5df5f77197ad279e24b0dc454b8210b (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
commit 956158ac5c9eae9f086f39611679d9b3b2a48772
Author: Stefan Seyfried <se...@tu...>
Date: Sat Jan 26 14:30:23 2013 +0100
fix procps build with current make
diff --git a/make/rootutils.mk b/make/rootutils.mk
index 8ff3595..cb476bb 100644
--- a/make/rootutils.mk
+++ b/make/rootutils.mk
@@ -58,9 +58,11 @@ $(flashprefix)/root/sbin/portmap: bootstrap @DEPENDS_portmap@ | $(flashprefix)/r
$(DEPDIR)/procps: bootstrap libncurses @DEPENDS_procps@
@PREPARE_procps@
- cd @DIR_procps@ && \
+ set -e; cd @DIR_procps@; \
$(BUILDENV) \
- $(MAKE) CPPFLAGS="$(CXXFLAGS) -I$(targetprefix)/include/ncurses -D__GNU_LIBRARY__" top ps/ps && \
+ $(MAKE) CPPFLAGS="$(CXXFLAGS) -I$(targetprefix)/include/ncurses -D__GNU_LIBRARY__" proc/libproc-3.2.8.so; \
+ $(BUILDENV) \
+ $(MAKE) CPPFLAGS="$(CXXFLAGS) -I$(targetprefix)/include/ncurses -D__GNU_LIBRARY__" LDFLAGS="proc/libproc-3.2.8.so" top ps/ps; \
@INSTALL_procps@
@CLEANUP_procps@
touch $@
-----------------------------------------------------------------------
Summary of changes:
make/rootutils.mk | 6 ++++--
1 files changed, 4 insertions(+), 2 deletions(-)
--
Tuxbox-GIT: cdk
|
|
From: Carsten S. <tux...@ne...> - 2013-01-21 17:50:04
|
Project "Tuxbox-GIT: apps":
The branch, master has been updated
via 80c346b0c142ecbcc11f5399b00db3d2311f5d14 (commit)
from 25d5d5cbfc8a6a07fd453739f9296cc892f8de8a (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
commit 80c346b0c142ecbcc11f5399b00db3d2311f5d14
Author: Carsten Schoenert <c.s...@t-...>
Date: Mon Jan 21 18:36:44 2013 +0100
Neutrino: adding one more forgotten change of CNetworkSetup
In addition for commit 5fcb3f one more change in the CNetworkSetup
class.
diff --git a/tuxbox/neutrino/src/gui/network_setup.cpp b/tuxbox/neutrino/src/gui/network_setup.cpp
index 2e5dde3..1707cf9 100644
--- a/tuxbox/neutrino/src/gui/network_setup.cpp
+++ b/tuxbox/neutrino/src/gui/network_setup.cpp
@@ -320,12 +320,12 @@ bool CNetworkSetup::checkForIP()
if (!network_dhcp && network_address.empty()) //no ip definied
{
- ShowMsgUTF(LOCALE_MAINSETTINGS_NETWORK,
- g_Locale->getText(LOCALE_NETWORKMENU_ERROR_NO_ADDRESS),
- CMessageBox::mbrBack,
- CMessageBox::mbBack,
- NEUTRINO_ICON_ERROR,
- width);
+ ShowLocalizedMessage(LOCALE_MAINSETTINGS_NETWORK,
+ LOCALE_NETWORKMENU_ERROR_NO_ADDRESS,
+ CMessageBox::mbrBack,
+ CMessageBox::mbBack,
+ NEUTRINO_ICON_ERROR,
+ width);
ret = false;
}
-----------------------------------------------------------------------
Summary of changes:
tuxbox/neutrino/src/gui/network_setup.cpp | 12 ++++++------
1 files changed, 6 insertions(+), 6 deletions(-)
--
Tuxbox-GIT: apps
|
|
From: Carsten S. <tux...@ne...> - 2013-01-20 08:33:01
|
Project "Tuxbox-GIT: hostapps":
The branch, master has been updated
via 1059430873b53d0fa2fd86423d051f894ee39b4e (commit)
from 290a8cc5f41a28378f93e2278b63a2f2aad6751e (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
commit 1059430873b53d0fa2fd86423d051f894ee39b4e
Author: Carsten Schoenert <c.s...@t-...>
Date: Sun Jan 20 09:32:16 2013 +0100
Git: renaming all .cvsignore files
After switching to Git as VCS moving all .cvsignore files to the
equivalent .gitignore file
Signed-off-by: Carsten Schoenert <c.s...@t-...>
diff --git a/.cvsignore b/.gitignore
similarity index 100%
rename from .cvsignore
rename to .gitignore
diff --git a/bmp2raw/.cvsignore b/bmp2raw/.gitignore
similarity index 100%
rename from bmp2raw/.cvsignore
rename to bmp2raw/.gitignore
diff --git a/checkImage/.cvsignore b/checkImage/.gitignore
similarity index 100%
rename from checkImage/.cvsignore
rename to checkImage/.gitignore
diff --git a/flash/.cvsignore b/flash/.gitignore
similarity index 100%
rename from flash/.cvsignore
rename to flash/.gitignore
diff --git a/ggrab/.cvsignore b/ggrab/.gitignore
similarity index 100%
rename from ggrab/.cvsignore
rename to ggrab/.gitignore
diff --git a/grab/.cvsignore b/grab/.gitignore
similarity index 100%
rename from grab/.cvsignore
rename to grab/.gitignore
diff --git a/libcrypto++/.cvsignore b/libcrypto++/.gitignore
similarity index 100%
rename from libcrypto++/.cvsignore
rename to libcrypto++/.gitignore
diff --git a/libflashimage/.cvsignore b/libflashimage/.gitignore
similarity index 100%
rename from libflashimage/.cvsignore
rename to libflashimage/.gitignore
diff --git a/mcrec/src/.cvsignore b/mcrec/src/.gitignore
similarity index 100%
rename from mcrec/src/.cvsignore
rename to mcrec/src/.gitignore
diff --git a/mkdvd/.cvsignore b/mkdvd/.gitignore
similarity index 100%
rename from mkdvd/.cvsignore
rename to mkdvd/.gitignore
diff --git a/mkflfs/.cvsignore b/mkflfs/.gitignore
similarity index 100%
rename from mkflfs/.cvsignore
rename to mkflfs/.gitignore
diff --git a/mkfs.jffs2/.cvsignore b/mkfs.jffs2/.gitignore
similarity index 100%
rename from mkfs.jffs2/.cvsignore
rename to mkfs.jffs2/.gitignore
diff --git a/neutrino_picserver/.cvsignore b/neutrino_picserver/.gitignore
similarity index 100%
rename from neutrino_picserver/.cvsignore
rename to neutrino_picserver/.gitignore
diff --git a/stream/.cvsignore b/stream/.gitignore
similarity index 100%
rename from stream/.cvsignore
rename to stream/.gitignore
diff --git a/ucodex/.cvsignore b/ucodex/.gitignore
similarity index 100%
rename from ucodex/.cvsignore
rename to ucodex/.gitignore
-----------------------------------------------------------------------
Summary of changes:
.cvsignore => .gitignore | 0
bmp2raw/{.cvsignore => .gitignore} | 0
checkImage/{.cvsignore => .gitignore} | 0
flash/{.cvsignore => .gitignore} | 0
ggrab/{.cvsignore => .gitignore} | 0
grab/{.cvsignore => .gitignore} | 0
libcrypto++/{.cvsignore => .gitignore} | 0
libflashimage/{.cvsignore => .gitignore} | 0
mcrec/src/{.cvsignore => .gitignore} | 0
mkdvd/{.cvsignore => .gitignore} | 0
mkflfs/{.cvsignore => .gitignore} | 0
mkfs.jffs2/{.cvsignore => .gitignore} | 0
neutrino_picserver/{.cvsignore => .gitignore} | 0
stream/{.cvsignore => .gitignore} | 0
ucodex/{.cvsignore => .gitignore} | 0
15 files changed, 0 insertions(+), 0 deletions(-)
rename .cvsignore => .gitignore (100%)
rename bmp2raw/{.cvsignore => .gitignore} (100%)
rename checkImage/{.cvsignore => .gitignore} (100%)
rename flash/{.cvsignore => .gitignore} (100%)
rename ggrab/{.cvsignore => .gitignore} (100%)
rename grab/{.cvsignore => .gitignore} (100%)
rename libcrypto++/{.cvsignore => .gitignore} (100%)
rename libflashimage/{.cvsignore => .gitignore} (100%)
rename mcrec/src/{.cvsignore => .gitignore} (100%)
rename mkdvd/{.cvsignore => .gitignore} (100%)
rename mkflfs/{.cvsignore => .gitignore} (100%)
rename mkfs.jffs2/{.cvsignore => .gitignore} (100%)
rename neutrino_picserver/{.cvsignore => .gitignore} (100%)
rename stream/{.cvsignore => .gitignore} (100%)
rename ucodex/{.cvsignore => .gitignore} (100%)
--
Tuxbox-GIT: hostapps
|
|
From: Carsten S. <tux...@ne...> - 2013-01-20 08:31:41
|
Project "Tuxbox-GIT: driver":
The branch, master has been updated
via 3ba5f016c4e5e90e2a0af37a61ceee23ffb5f16d (commit)
from 32740c856e30a278182705b67d14f32665cb29dd (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
commit 3ba5f016c4e5e90e2a0af37a61ceee23ffb5f16d
Author: Carsten Schoenert <c.s...@t-...>
Date: Sun Jan 20 09:30:46 2013 +0100
Git: renaming all .cvsignore files
After switching to Git as VCS moving all .cvsignore files to the
equivalent .gitignore file
Signed-off-by: Carsten Schoenert <c.s...@t-...>
diff --git a/.cvsignore b/.gitignore
similarity index 100%
rename from .cvsignore
rename to .gitignore
diff --git a/avs/.cvsignore b/avs/.gitignore
similarity index 100%
rename from avs/.cvsignore
rename to avs/.gitignore
diff --git a/cam/.cvsignore b/cam/.gitignore
similarity index 100%
rename from cam/.cvsignore
rename to cam/.gitignore
diff --git a/directfb/.cvsignore b/directfb/.gitignore
similarity index 100%
rename from directfb/.cvsignore
rename to directfb/.gitignore
diff --git a/directfb/gfxdrivers/.cvsignore b/directfb/gfxdrivers/.gitignore
similarity index 100%
rename from directfb/gfxdrivers/.cvsignore
rename to directfb/gfxdrivers/.gitignore
diff --git a/directfb/gfxdrivers/gtx/.cvsignore b/directfb/gfxdrivers/gtx/.gitignore
similarity index 100%
rename from directfb/gfxdrivers/gtx/.cvsignore
rename to directfb/gfxdrivers/gtx/.gitignore
diff --git a/ds1307/.cvsignore b/ds1307/.gitignore
similarity index 100%
rename from ds1307/.cvsignore
rename to ds1307/.gitignore
diff --git a/dvb/.cvsignore b/dvb/.gitignore
similarity index 100%
rename from dvb/.cvsignore
rename to dvb/.gitignore
diff --git a/dvb/drivers/.cvsignore b/dvb/drivers/.gitignore
similarity index 100%
rename from dvb/drivers/.cvsignore
rename to dvb/drivers/.gitignore
diff --git a/dvb/drivers/media/.cvsignore b/dvb/drivers/media/.gitignore
similarity index 100%
rename from dvb/drivers/media/.cvsignore
rename to dvb/drivers/media/.gitignore
diff --git a/dvb/drivers/media/dvb/.cvsignore b/dvb/drivers/media/dvb/.gitignore
similarity index 100%
rename from dvb/drivers/media/dvb/.cvsignore
rename to dvb/drivers/media/dvb/.gitignore
diff --git a/dvb/drivers/media/dvb/avia/.cvsignore b/dvb/drivers/media/dvb/avia/.gitignore
similarity index 100%
rename from dvb/drivers/media/dvb/avia/.cvsignore
rename to dvb/drivers/media/dvb/avia/.gitignore
diff --git a/dvb/drivers/media/dvb/dvb-core/.cvsignore b/dvb/drivers/media/dvb/dvb-core/.gitignore
similarity index 100%
rename from dvb/drivers/media/dvb/dvb-core/.cvsignore
rename to dvb/drivers/media/dvb/dvb-core/.gitignore
diff --git a/dvb/drivers/media/dvb/frontends/.cvsignore b/dvb/drivers/media/dvb/frontends/.gitignore
similarity index 100%
rename from dvb/drivers/media/dvb/frontends/.cvsignore
rename to dvb/drivers/media/dvb/frontends/.gitignore
diff --git a/dvb2eth/.cvsignore b/dvb2eth/.gitignore
similarity index 100%
rename from dvb2eth/.cvsignore
rename to dvb2eth/.gitignore
diff --git a/event/.cvsignore b/event/.gitignore
similarity index 100%
rename from event/.cvsignore
rename to event/.gitignore
diff --git a/ext/.cvsignore b/ext/.gitignore
similarity index 100%
rename from ext/.cvsignore
rename to ext/.gitignore
diff --git a/fp/.cvsignore b/fp/.gitignore
similarity index 100%
rename from fp/.cvsignore
rename to fp/.gitignore
diff --git a/i2c/.cvsignore b/i2c/.gitignore
similarity index 100%
rename from i2c/.cvsignore
rename to i2c/.gitignore
diff --git a/ide/.cvsignore b/ide/.gitignore
similarity index 100%
rename from ide/.cvsignore
rename to ide/.gitignore
diff --git a/info/.cvsignore b/info/.gitignore
similarity index 100%
rename from info/.cvsignore
rename to info/.gitignore
diff --git a/lcd/.cvsignore b/lcd/.gitignore
similarity index 100%
rename from lcd/.cvsignore
rename to lcd/.gitignore
diff --git a/mmc/.cvsignore b/mmc/.gitignore
similarity index 100%
rename from mmc/.cvsignore
rename to mmc/.gitignore
diff --git a/saa7126/.cvsignore b/saa7126/.gitignore
similarity index 100%
rename from saa7126/.cvsignore
rename to saa7126/.gitignore
-----------------------------------------------------------------------
Summary of changes:
.cvsignore => .gitignore | 0
avs/{.cvsignore => .gitignore} | 0
cam/{.cvsignore => .gitignore} | 0
directfb/{.cvsignore => .gitignore} | 0
directfb/gfxdrivers/{.cvsignore => .gitignore} | 0
directfb/gfxdrivers/gtx/{.cvsignore => .gitignore} | 0
ds1307/{.cvsignore => .gitignore} | 0
dvb/{.cvsignore => .gitignore} | 0
dvb/drivers/{.cvsignore => .gitignore} | 0
dvb/drivers/media/{.cvsignore => .gitignore} | 0
dvb/drivers/media/dvb/{.cvsignore => .gitignore} | 0
.../media/dvb/avia/{.cvsignore => .gitignore} | 0
.../media/dvb/dvb-core/{.cvsignore => .gitignore} | 0
.../media/dvb/frontends/{.cvsignore => .gitignore} | 0
dvb2eth/{.cvsignore => .gitignore} | 0
event/{.cvsignore => .gitignore} | 0
ext/{.cvsignore => .gitignore} | 0
fp/{.cvsignore => .gitignore} | 0
i2c/{.cvsignore => .gitignore} | 0
ide/{.cvsignore => .gitignore} | 0
info/{.cvsignore => .gitignore} | 0
lcd/{.cvsignore => .gitignore} | 0
mmc/{.cvsignore => .gitignore} | 0
saa7126/{.cvsignore => .gitignore} | 0
24 files changed, 0 insertions(+), 0 deletions(-)
rename .cvsignore => .gitignore (100%)
rename avs/{.cvsignore => .gitignore} (100%)
rename cam/{.cvsignore => .gitignore} (100%)
rename directfb/{.cvsignore => .gitignore} (100%)
rename directfb/gfxdrivers/{.cvsignore => .gitignore} (100%)
rename directfb/gfxdrivers/gtx/{.cvsignore => .gitignore} (100%)
rename ds1307/{.cvsignore => .gitignore} (100%)
rename dvb/{.cvsignore => .gitignore} (100%)
rename dvb/drivers/{.cvsignore => .gitignore} (100%)
rename dvb/drivers/media/{.cvsignore => .gitignore} (100%)
rename dvb/drivers/media/dvb/{.cvsignore => .gitignore} (100%)
rename dvb/drivers/media/dvb/avia/{.cvsignore => .gitignore} (100%)
rename dvb/drivers/media/dvb/dvb-core/{.cvsignore => .gitignore} (100%)
rename dvb/drivers/media/dvb/frontends/{.cvsignore => .gitignore} (100%)
rename dvb2eth/{.cvsignore => .gitignore} (100%)
rename event/{.cvsignore => .gitignore} (100%)
rename ext/{.cvsignore => .gitignore} (100%)
rename fp/{.cvsignore => .gitignore} (100%)
rename i2c/{.cvsignore => .gitignore} (100%)
rename ide/{.cvsignore => .gitignore} (100%)
rename info/{.cvsignore => .gitignore} (100%)
rename lcd/{.cvsignore => .gitignore} (100%)
rename mmc/{.cvsignore => .gitignore} (100%)
rename saa7126/{.cvsignore => .gitignore} (100%)
--
Tuxbox-GIT: driver
|
|
From: Carsten S. <tux...@ne...> - 2013-01-20 08:30:17
|
Project "Tuxbox-GIT: cdk":
The branch, master has been updated
via 8ef7a7f5f5df5f77197ad279e24b0dc454b8210b (commit)
from 418ce0bbfd1e483a5b68f39fa7b1b6e60496974d (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
commit 8ef7a7f5f5df5f77197ad279e24b0dc454b8210b
Author: Carsten Schoenert <c.s...@t-...>
Date: Sun Jan 20 09:28:36 2013 +0100
Git: renaming all .cvsignore files
After switching to Git as VCS moving all .cvsignore files to the
equivalent .gitignore file
Signed-off-by: Carsten Schoenert <c.s...@t-...>
diff --git a/root/.cvsignore b/root/.gitignore
similarity index 100%
rename from root/.cvsignore
rename to root/.gitignore
diff --git a/root/etc/.cvsignore b/root/etc/.gitignore
similarity index 100%
rename from root/etc/.cvsignore
rename to root/etc/.gitignore
diff --git a/root/etc/init.d/.cvsignore b/root/etc/init.d/.gitignore
similarity index 100%
rename from root/etc/init.d/.cvsignore
rename to root/etc/init.d/.gitignore
diff --git a/root/etc/network/.cvsignore b/root/etc/network/.gitignore
similarity index 100%
rename from root/etc/network/.cvsignore
rename to root/etc/network/.gitignore
diff --git a/root/share/.cvsignore b/root/share/.gitignore
similarity index 100%
rename from root/share/.cvsignore
rename to root/share/.gitignore
diff --git a/root/share/udhcpc/.cvsignore b/root/share/udhcpc/.gitignore
similarity index 100%
rename from root/share/udhcpc/.cvsignore
rename to root/share/udhcpc/.gitignore
diff --git a/root_dream/etc/.cvsignore b/root_dream/etc/.gitignore
similarity index 100%
rename from root_dream/etc/.cvsignore
rename to root_dream/etc/.gitignore
diff --git a/root_dream/etc/init.d/.cvsignore b/root_dream/etc/init.d/.gitignore
similarity index 100%
rename from root_dream/etc/init.d/.cvsignore
rename to root_dream/etc/init.d/.gitignore
diff --git a/root_dream/share/.cvsignore b/root_dream/share/.gitignore
similarity index 100%
rename from root_dream/share/.cvsignore
rename to root_dream/share/.gitignore
diff --git a/root_dream/share/tuxbox/.cvsignore b/root_dream/share/tuxbox/.gitignore
similarity index 100%
rename from root_dream/share/tuxbox/.cvsignore
rename to root_dream/share/tuxbox/.gitignore
diff --git a/root_dream/share/udhcpc/.cvsignore b/root_dream/share/udhcpc/.gitignore
similarity index 100%
rename from root_dream/share/udhcpc/.cvsignore
rename to root_dream/share/udhcpc/.gitignore
diff --git a/root_dream/var_init/.cvsignore b/root_dream/var_init/.gitignore
similarity index 100%
rename from root_dream/var_init/.cvsignore
rename to root_dream/var_init/.gitignore
diff --git a/root_dream/var_init/etc/.cvsignore b/root_dream/var_init/etc/.gitignore
similarity index 100%
rename from root_dream/var_init/etc/.cvsignore
rename to root_dream/var_init/etc/.gitignore
diff --git a/root_dream/var_init/etc/init.d/.cvsignore b/root_dream/var_init/etc/init.d/.gitignore
similarity index 100%
rename from root_dream/var_init/etc/init.d/.cvsignore
rename to root_dream/var_init/etc/init.d/.gitignore
diff --git a/root_dream/var_init/etc/network/.cvsignore b/root_dream/var_init/etc/network/.gitignore
similarity index 100%
rename from root_dream/var_init/etc/network/.cvsignore
rename to root_dream/var_init/etc/network/.gitignore
diff --git a/root_dream/var_init/tuxbox/.cvsignore b/root_dream/var_init/tuxbox/.gitignore
similarity index 100%
rename from root_dream/var_init/tuxbox/.cvsignore
rename to root_dream/var_init/tuxbox/.gitignore
diff --git a/root_dream/var_init/tuxbox/config/.cvsignore b/root_dream/var_init/tuxbox/config/.gitignore
similarity index 100%
rename from root_dream/var_init/tuxbox/config/.cvsignore
rename to root_dream/var_init/tuxbox/config/.gitignore
diff --git a/root_dream/var_init/tuxbox/config/enigma/.cvsignore b/root_dream/var_init/tuxbox/config/enigma/.gitignore
similarity index 100%
rename from root_dream/var_init/tuxbox/config/enigma/.cvsignore
rename to root_dream/var_init/tuxbox/config/enigma/.gitignore
-----------------------------------------------------------------------
Summary of changes:
root/{.cvsignore => .gitignore} | 0
root/etc/{.cvsignore => .gitignore} | 0
root/etc/init.d/{.cvsignore => .gitignore} | 0
root/etc/network/{.cvsignore => .gitignore} | 0
root/share/{.cvsignore => .gitignore} | 0
root/share/udhcpc/{.cvsignore => .gitignore} | 0
root_dream/etc/{.cvsignore => .gitignore} | 0
root_dream/etc/init.d/{.cvsignore => .gitignore} | 0
root_dream/share/{.cvsignore => .gitignore} | 0
root_dream/share/tuxbox/{.cvsignore => .gitignore} | 0
root_dream/share/udhcpc/{.cvsignore => .gitignore} | 0
root_dream/var_init/{.cvsignore => .gitignore} | 0
root_dream/var_init/etc/{.cvsignore => .gitignore} | 0
.../var_init/etc/init.d/{.cvsignore => .gitignore} | 0
.../etc/network/{.cvsignore => .gitignore} | 0
.../var_init/tuxbox/{.cvsignore => .gitignore} | 0
.../tuxbox/config/{.cvsignore => .gitignore} | 0
.../config/enigma/{.cvsignore => .gitignore} | 0
18 files changed, 0 insertions(+), 0 deletions(-)
rename root/{.cvsignore => .gitignore} (100%)
rename root/etc/{.cvsignore => .gitignore} (100%)
rename root/etc/init.d/{.cvsignore => .gitignore} (100%)
rename root/etc/network/{.cvsignore => .gitignore} (100%)
rename root/share/{.cvsignore => .gitignore} (100%)
rename root/share/udhcpc/{.cvsignore => .gitignore} (100%)
rename root_dream/etc/{.cvsignore => .gitignore} (100%)
rename root_dream/etc/init.d/{.cvsignore => .gitignore} (100%)
rename root_dream/share/{.cvsignore => .gitignore} (100%)
rename root_dream/share/tuxbox/{.cvsignore => .gitignore} (100%)
rename root_dream/share/udhcpc/{.cvsignore => .gitignore} (100%)
rename root_dream/var_init/{.cvsignore => .gitignore} (100%)
rename root_dream/var_init/etc/{.cvsignore => .gitignore} (100%)
rename root_dream/var_init/etc/init.d/{.cvsignore => .gitignore} (100%)
rename root_dream/var_init/etc/network/{.cvsignore => .gitignore} (100%)
rename root_dream/var_init/tuxbox/{.cvsignore => .gitignore} (100%)
rename root_dream/var_init/tuxbox/config/{.cvsignore => .gitignore} (100%)
rename root_dream/var_init/tuxbox/config/enigma/{.cvsignore => .gitignore} (100%)
--
Tuxbox-GIT: cdk
|
|
From: Carsten S. <tux...@ne...> - 2013-01-20 08:26:01
|
Project "Tuxbox-GIT: apps":
The branch, master has been updated
via 25d5d5cbfc8a6a07fd453739f9296cc892f8de8a (commit)
from 5fcb3f4083cf817993fab269bbcabcdb30237b99 (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
commit 25d5d5cbfc8a6a07fd453739f9296cc892f8de8a
Author: Carsten Schoenert <c.s...@t-...>
Date: Sun Jan 20 09:22:45 2013 +0100
Git: renaming all .cvsignore files
After switching to Git as VCS moving all .cvsignore files to the
äquivalent .gitignore file.
Signed-off-by: Carsten Schoenert <c.s...@t-...>
diff --git a/dvb/config/.cvsignore b/dvb/config/.gitignore
similarity index 100%
copy from dvb/config/.cvsignore
copy to dvb/config/.gitignore
diff --git a/dvb/dvbsnoop/.cvsignore b/dvb/dvbsnoop/.gitignore
similarity index 100%
rename from dvb/dvbsnoop/.cvsignore
rename to dvb/dvbsnoop/.gitignore
diff --git a/dvb/dvbsnoop/src/.cvsignore b/dvb/dvbsnoop/src/.gitignore
similarity index 100%
rename from dvb/dvbsnoop/src/.cvsignore
rename to dvb/dvbsnoop/src/.gitignore
diff --git a/dvb/dvbsnoop/src/datacarousel/.cvsignore b/dvb/dvbsnoop/src/datacarousel/.gitignore
similarity index 100%
rename from dvb/dvbsnoop/src/datacarousel/.cvsignore
rename to dvb/dvbsnoop/src/datacarousel/.gitignore
diff --git a/dvb/dvbsnoop/src/descriptors/.cvsignore b/dvb/dvbsnoop/src/descriptors/.gitignore
similarity index 100%
rename from dvb/dvbsnoop/src/descriptors/.cvsignore
rename to dvb/dvbsnoop/src/descriptors/.gitignore
diff --git a/dvb/dvbsnoop/src/dvb_api/.cvsignore b/dvb/dvbsnoop/src/dvb_api/.gitignore
similarity index 100%
rename from dvb/dvbsnoop/src/dvb_api/.cvsignore
rename to dvb/dvbsnoop/src/dvb_api/.gitignore
diff --git a/dvb/dvbsnoop/src/ebu/.cvsignore b/dvb/dvbsnoop/src/ebu/.gitignore
similarity index 100%
rename from dvb/dvbsnoop/src/ebu/.cvsignore
rename to dvb/dvbsnoop/src/ebu/.gitignore
diff --git a/dvb/dvbsnoop/src/misc/.cvsignore b/dvb/dvbsnoop/src/misc/.gitignore
similarity index 100%
rename from dvb/dvbsnoop/src/misc/.cvsignore
rename to dvb/dvbsnoop/src/misc/.gitignore
diff --git a/dvb/dvbsnoop/src/net_ip/.cvsignore b/dvb/dvbsnoop/src/net_ip/.gitignore
similarity index 100%
rename from dvb/dvbsnoop/src/net_ip/.cvsignore
rename to dvb/dvbsnoop/src/net_ip/.gitignore
diff --git a/dvb/dvbsnoop/src/pes/.cvsignore b/dvb/dvbsnoop/src/pes/.gitignore
similarity index 100%
rename from dvb/dvbsnoop/src/pes/.cvsignore
rename to dvb/dvbsnoop/src/pes/.gitignore
diff --git a/dvb/dvbsnoop/src/private/.cvsignore b/dvb/dvbsnoop/src/private/.gitignore
similarity index 100%
rename from dvb/dvbsnoop/src/private/.cvsignore
rename to dvb/dvbsnoop/src/private/.gitignore
diff --git a/dvb/dvbsnoop/src/private/default/.cvsignore b/dvb/dvbsnoop/src/private/default/.gitignore
similarity index 100%
rename from dvb/dvbsnoop/src/private/default/.cvsignore
rename to dvb/dvbsnoop/src/private/default/.gitignore
diff --git a/dvb/dvbsnoop/src/private/eicta.org/.cvsignore b/dvb/dvbsnoop/src/private/eicta.org/.gitignore
similarity index 100%
rename from dvb/dvbsnoop/src/private/eicta.org/.cvsignore
rename to dvb/dvbsnoop/src/private/eicta.org/.gitignore
diff --git a/dvb/dvbsnoop/src/private/nordig.org/.cvsignore b/dvb/dvbsnoop/src/private/nordig.org/.gitignore
similarity index 100%
rename from dvb/dvbsnoop/src/private/nordig.org/.cvsignore
rename to dvb/dvbsnoop/src/private/nordig.org/.gitignore
diff --git a/dvb/dvbsnoop/src/private/premiere.de/.cvsignore b/dvb/dvbsnoop/src/private/premiere.de/.gitignore
similarity index 100%
rename from dvb/dvbsnoop/src/private/premiere.de/.cvsignore
rename to dvb/dvbsnoop/src/private/premiere.de/.gitignore
diff --git a/dvb/dvbsnoop/src/sections/.cvsignore b/dvb/dvbsnoop/src/sections/.gitignore
similarity index 100%
rename from dvb/dvbsnoop/src/sections/.cvsignore
rename to dvb/dvbsnoop/src/sections/.gitignore
diff --git a/dvb/dvbsnoop/src/strings/.cvsignore b/dvb/dvbsnoop/src/strings/.gitignore
similarity index 100%
rename from dvb/dvbsnoop/src/strings/.cvsignore
rename to dvb/dvbsnoop/src/strings/.gitignore
diff --git a/dvb/dvbsnoop/src/strings/identifiers/.cvsignore b/dvb/dvbsnoop/src/strings/identifiers/.gitignore
similarity index 100%
rename from dvb/dvbsnoop/src/strings/identifiers/.cvsignore
rename to dvb/dvbsnoop/src/strings/identifiers/.gitignore
diff --git a/dvb/dvbsnoop/src/testdata/.cvsignore b/dvb/dvbsnoop/src/testdata/.gitignore
similarity index 100%
rename from dvb/dvbsnoop/src/testdata/.cvsignore
rename to dvb/dvbsnoop/src/testdata/.gitignore
diff --git a/dvb/dvbsnoop/src/ts/.cvsignore b/dvb/dvbsnoop/src/ts/.gitignore
similarity index 100%
rename from dvb/dvbsnoop/src/ts/.cvsignore
rename to dvb/dvbsnoop/src/ts/.gitignore
diff --git a/dvb/dvbsnoop/src/tvanytime/.cvsignore b/dvb/dvbsnoop/src/tvanytime/.gitignore
similarity index 100%
rename from dvb/dvbsnoop/src/tvanytime/.cvsignore
rename to dvb/dvbsnoop/src/tvanytime/.gitignore
diff --git a/dvb/libdvb++/.cvsignore b/dvb/libdvb++/.gitignore
similarity index 100%
rename from dvb/libdvb++/.cvsignore
rename to dvb/libdvb++/.gitignore
diff --git a/dvb/libdvb++/include/.cvsignore b/dvb/libdvb++/include/.gitignore
similarity index 100%
rename from dvb/libdvb++/include/.cvsignore
rename to dvb/libdvb++/include/.gitignore
diff --git a/dvb/libdvb++/include/dvb/.cvsignore b/dvb/libdvb++/include/dvb/.gitignore
similarity index 100%
rename from dvb/libdvb++/include/dvb/.cvsignore
rename to dvb/libdvb++/include/dvb/.gitignore
diff --git a/dvb/libdvb++/include/dvb/channel/.cvsignore b/dvb/libdvb++/include/dvb/channel/.gitignore
similarity index 100%
rename from dvb/libdvb++/include/dvb/channel/.cvsignore
rename to dvb/libdvb++/include/dvb/channel/.gitignore
diff --git a/dvb/libdvb++/include/dvb/debug/.cvsignore b/dvb/libdvb++/include/dvb/debug/.gitignore
similarity index 100%
rename from dvb/libdvb++/include/dvb/debug/.cvsignore
rename to dvb/libdvb++/include/dvb/debug/.gitignore
diff --git a/dvb/libdvb++/include/dvb/hardware/.cvsignore b/dvb/libdvb++/include/dvb/hardware/.gitignore
similarity index 100%
rename from dvb/libdvb++/include/dvb/hardware/.cvsignore
rename to dvb/libdvb++/include/dvb/hardware/.gitignore
diff --git a/dvb/libdvb++/include/dvb/pool/.cvsignore b/dvb/libdvb++/include/dvb/pool/.gitignore
similarity index 100%
rename from dvb/libdvb++/include/dvb/pool/.cvsignore
rename to dvb/libdvb++/include/dvb/pool/.gitignore
diff --git a/dvb/libdvb++/qa/.cvsignore b/dvb/libdvb++/qa/.gitignore
similarity index 100%
rename from dvb/libdvb++/qa/.cvsignore
rename to dvb/libdvb++/qa/.gitignore
diff --git a/dvb/libdvb++/qa/capmt/.cvsignore b/dvb/libdvb++/qa/capmt/.gitignore
similarity index 100%
rename from dvb/libdvb++/qa/capmt/.cvsignore
rename to dvb/libdvb++/qa/capmt/.gitignore
diff --git a/dvb/libdvb++/src/.cvsignore b/dvb/libdvb++/src/.gitignore
similarity index 100%
rename from dvb/libdvb++/src/.cvsignore
rename to dvb/libdvb++/src/.gitignore
diff --git a/dvb/libdvb++/src/channel/.cvsignore b/dvb/libdvb++/src/channel/.gitignore
similarity index 100%
rename from dvb/libdvb++/src/channel/.cvsignore
rename to dvb/libdvb++/src/channel/.gitignore
diff --git a/dvb/libdvb++/src/hardware/.cvsignore b/dvb/libdvb++/src/hardware/.gitignore
similarity index 100%
rename from dvb/libdvb++/src/hardware/.cvsignore
rename to dvb/libdvb++/src/hardware/.gitignore
diff --git a/dvb/libdvb++/src/pool/.cvsignore b/dvb/libdvb++/src/pool/.gitignore
similarity index 100%
rename from dvb/libdvb++/src/pool/.cvsignore
rename to dvb/libdvb++/src/pool/.gitignore
diff --git a/dvb/libdvbsi++/.cvsignore b/dvb/libdvbsi++/.gitignore
similarity index 100%
rename from dvb/libdvbsi++/.cvsignore
rename to dvb/libdvbsi++/.gitignore
diff --git a/dvb/libdvbsi++/debian/.cvsignore b/dvb/libdvbsi++/debian/.gitignore
similarity index 100%
rename from dvb/libdvbsi++/debian/.cvsignore
rename to dvb/libdvbsi++/debian/.gitignore
diff --git a/dvb/libdvbsi++/include/.cvsignore b/dvb/libdvbsi++/include/.gitignore
similarity index 100%
rename from dvb/libdvbsi++/include/.cvsignore
rename to dvb/libdvbsi++/include/.gitignore
diff --git a/dvb/libdvbsi++/include/dvbsi++/.cvsignore b/dvb/libdvbsi++/include/dvbsi++/.gitignore
similarity index 100%
rename from dvb/libdvbsi++/include/dvbsi++/.cvsignore
rename to dvb/libdvbsi++/include/dvbsi++/.gitignore
diff --git a/dvb/libdvbsi++/qa/.cvsignore b/dvb/libdvbsi++/qa/.gitignore
similarity index 100%
rename from dvb/libdvbsi++/qa/.cvsignore
rename to dvb/libdvbsi++/qa/.gitignore
diff --git a/dvb/libdvbsi++/src/.cvsignore b/dvb/libdvbsi++/src/.gitignore
similarity index 100%
rename from dvb/libdvbsi++/src/.cvsignore
rename to dvb/libdvbsi++/src/.gitignore
diff --git a/dvb/tools/.cvsignore b/dvb/tools/.gitignore
similarity index 100%
rename from dvb/tools/.cvsignore
rename to dvb/tools/.gitignore
diff --git a/dvb/tools/dvb_test/.cvsignore b/dvb/tools/dvb_test/.gitignore
similarity index 100%
rename from dvb/tools/dvb_test/.cvsignore
rename to dvb/tools/dvb_test/.gitignore
diff --git a/dvb/tools/dvbnetctrl/.cvsignore b/dvb/tools/dvbnetctrl/.gitignore
similarity index 100%
rename from dvb/tools/dvbnetctrl/.cvsignore
rename to dvb/tools/dvbnetctrl/.gitignore
diff --git a/dvb/tools/skyscan/.cvsignore b/dvb/tools/skyscan/.gitignore
similarity index 100%
rename from dvb/tools/skyscan/.cvsignore
rename to dvb/tools/skyscan/.gitignore
diff --git a/dvb/tools/stream/.cvsignore b/dvb/tools/stream/.gitignore
similarity index 100%
rename from dvb/tools/stream/.cvsignore
rename to dvb/tools/stream/.gitignore
diff --git a/dvb/zapit/.cvsignore b/dvb/zapit/.gitignore
similarity index 100%
rename from dvb/zapit/.cvsignore
rename to dvb/zapit/.gitignore
diff --git a/dvb/zapit/include/.cvsignore b/dvb/zapit/include/.gitignore
similarity index 100%
rename from dvb/zapit/include/.cvsignore
rename to dvb/zapit/include/.gitignore
diff --git a/dvb/zapit/include/controldclient/.cvsignore b/dvb/zapit/include/controldclient/.gitignore
similarity index 100%
rename from dvb/zapit/include/controldclient/.cvsignore
rename to dvb/zapit/include/controldclient/.gitignore
diff --git a/dvb/zapit/include/zapit/.cvsignore b/dvb/zapit/include/zapit/.gitignore
similarity index 100%
rename from dvb/zapit/include/zapit/.cvsignore
rename to dvb/zapit/include/zapit/.gitignore
diff --git a/dvb/zapit/include/zapit/client/.cvsignore b/dvb/zapit/include/zapit/client/.gitignore
similarity index 100%
rename from dvb/zapit/include/zapit/client/.cvsignore
rename to dvb/zapit/include/zapit/client/.gitignore
diff --git a/dvb/zapit/lib/.cvsignore b/dvb/zapit/lib/.gitignore
similarity index 100%
rename from dvb/zapit/lib/.cvsignore
rename to dvb/zapit/lib/.gitignore
diff --git a/dvb/zapit/src/.cvsignore b/dvb/zapit/src/.gitignore
similarity index 100%
rename from dvb/zapit/src/.cvsignore
rename to dvb/zapit/src/.gitignore
diff --git a/dvb/zapit/src/irsend/.cvsignore b/dvb/zapit/src/irsend/.gitignore
similarity index 100%
rename from dvb/zapit/src/irsend/.cvsignore
rename to dvb/zapit/src/irsend/.gitignore
diff --git a/dvb/zapit/src/zapci/.cvsignore b/dvb/zapit/src/zapci/.gitignore
similarity index 100%
rename from dvb/zapit/src/zapci/.cvsignore
rename to dvb/zapit/src/zapci/.gitignore
diff --git a/dvb/zapit/src/zapost/.cvsignore b/dvb/zapit/src/zapost/.gitignore
similarity index 100%
rename from dvb/zapit/src/zapost/.cvsignore
rename to dvb/zapit/src/zapost/.gitignore
diff --git a/dvb/zapit/src/zapsi/.cvsignore b/dvb/zapit/src/zapsi/.gitignore
similarity index 100%
rename from dvb/zapit/src/zapsi/.cvsignore
rename to dvb/zapit/src/zapsi/.gitignore
diff --git a/misc/libs/.cvsignore b/misc/libs/.gitignore
similarity index 100%
rename from misc/libs/.cvsignore
rename to misc/libs/.gitignore
diff --git a/misc/libs/libconfigfile/.cvsignore b/misc/libs/libconfigfile/.gitignore
similarity index 100%
rename from misc/libs/libconfigfile/.cvsignore
rename to misc/libs/libconfigfile/.gitignore
diff --git a/misc/libs/libconnection/.cvsignore b/misc/libs/libconnection/.gitignore
similarity index 100%
rename from misc/libs/libconnection/.cvsignore
rename to misc/libs/libconnection/.gitignore
diff --git a/misc/libs/libcramfs/.cvsignore b/misc/libs/libcramfs/.gitignore
similarity index 100%
rename from misc/libs/libcramfs/.cvsignore
rename to misc/libs/libcramfs/.gitignore
diff --git a/misc/libs/libeventserver/.cvsignore b/misc/libs/libeventserver/.gitignore
similarity index 100%
rename from misc/libs/libeventserver/.cvsignore
rename to misc/libs/libeventserver/.gitignore
diff --git a/misc/libs/libmd5sum/.cvsignore b/misc/libs/libmd5sum/.gitignore
similarity index 100%
rename from misc/libs/libmd5sum/.cvsignore
rename to misc/libs/libmd5sum/.gitignore
diff --git a/misc/libs/libmpegtools/.cvsignore b/misc/libs/libmpegtools/.gitignore
similarity index 100%
rename from misc/libs/libmpegtools/.cvsignore
rename to misc/libs/libmpegtools/.gitignore
diff --git a/misc/libs/libnet/.cvsignore b/misc/libs/libnet/.gitignore
similarity index 100%
rename from misc/libs/libnet/.cvsignore
rename to misc/libs/libnet/.gitignore
diff --git a/misc/libs/libucodes/.cvsignore b/misc/libs/libucodes/.gitignore
similarity index 100%
rename from misc/libs/libucodes/.cvsignore
rename to misc/libs/libucodes/.gitignore
diff --git a/misc/libs/libupnpclient/.cvsignore b/misc/libs/libupnpclient/.gitignore
similarity index 100%
rename from misc/libs/libupnpclient/.cvsignore
rename to misc/libs/libupnpclient/.gitignore
diff --git a/misc/libs/libxmltree/.cvsignore b/misc/libs/libxmltree/.gitignore
similarity index 100%
rename from misc/libs/libxmltree/.cvsignore
rename to misc/libs/libxmltree/.gitignore
diff --git a/misc/tools/.cvsignore b/misc/tools/.gitignore
similarity index 100%
rename from misc/tools/.cvsignore
rename to misc/tools/.gitignore
diff --git a/misc/tools/dboxshot/.cvsignore b/misc/tools/dboxshot/.gitignore
similarity index 100%
rename from misc/tools/dboxshot/.cvsignore
rename to misc/tools/dboxshot/.gitignore
diff --git a/misc/tools/devinit/.cvsignore b/misc/tools/devinit/.gitignore
similarity index 100%
rename from misc/tools/devinit/.cvsignore
rename to misc/tools/devinit/.gitignore
diff --git a/misc/tools/etherwake/.cvsignore b/misc/tools/etherwake/.gitignore
similarity index 100%
rename from misc/tools/etherwake/.cvsignore
rename to misc/tools/etherwake/.gitignore
diff --git a/misc/tools/fbshot/.cvsignore b/misc/tools/fbshot/.gitignore
similarity index 100%
rename from misc/tools/fbshot/.cvsignore
rename to misc/tools/fbshot/.gitignore
diff --git a/misc/tools/makedevices/.cvsignore b/misc/tools/makedevices/.gitignore
similarity index 100%
rename from misc/tools/makedevices/.cvsignore
rename to misc/tools/makedevices/.gitignore
diff --git a/misc/tools/mtd/.cvsignore b/misc/tools/mtd/.gitignore
similarity index 100%
rename from misc/tools/mtd/.cvsignore
rename to misc/tools/mtd/.gitignore
diff --git a/misc/tools/rtc/.cvsignore b/misc/tools/rtc/.gitignore
similarity index 100%
rename from misc/tools/rtc/.cvsignore
rename to misc/tools/rtc/.gitignore
diff --git a/tuxbox/enigma/.cvsignore b/tuxbox/enigma/.gitignore
similarity index 100%
rename from tuxbox/enigma/.cvsignore
rename to tuxbox/enigma/.gitignore
diff --git a/tuxbox/enigma/boot/.cvsignore b/tuxbox/enigma/boot/.gitignore
similarity index 100%
rename from tuxbox/enigma/boot/.cvsignore
rename to tuxbox/enigma/boot/.gitignore
diff --git a/tuxbox/enigma/boot/bootmenue/.cvsignore b/tuxbox/enigma/boot/bootmenue/.gitignore
similarity index 100%
rename from tuxbox/enigma/boot/bootmenue/.cvsignore
rename to tuxbox/enigma/boot/bootmenue/.gitignore
diff --git a/tuxbox/enigma/boot/bootmenue/skins/.cvsignore b/tuxbox/enigma/boot/bootmenue/skins/.gitignore
similarity index 100%
rename from tuxbox/enigma/boot/bootmenue/skins/.cvsignore
rename to tuxbox/enigma/boot/bootmenue/skins/.gitignore
diff --git a/tuxbox/enigma/boot/bootmenue/skins/blank/.cvsignore b/tuxbox/enigma/boot/bootmenue/skins/blank/.gitignore
similarity index 100%
rename from tuxbox/enigma/boot/bootmenue/skins/blank/.cvsignore
rename to tuxbox/enigma/boot/bootmenue/skins/blank/.gitignore
diff --git a/tuxbox/enigma/boot/chttpd/.cvsignore b/tuxbox/enigma/boot/chttpd/.gitignore
similarity index 100%
rename from tuxbox/enigma/boot/chttpd/.cvsignore
rename to tuxbox/enigma/boot/chttpd/.gitignore
diff --git a/tuxbox/enigma/boot/showlogo/.cvsignore b/tuxbox/enigma/boot/showlogo/.gitignore
similarity index 100%
rename from tuxbox/enigma/boot/showlogo/.cvsignore
rename to tuxbox/enigma/boot/showlogo/.gitignore
diff --git a/tuxbox/enigma/data/.cvsignore b/tuxbox/enigma/data/.gitignore
similarity index 100%
rename from tuxbox/enigma/data/.cvsignore
rename to tuxbox/enigma/data/.gitignore
diff --git a/tuxbox/enigma/data/fonts/.cvsignore b/tuxbox/enigma/data/fonts/.gitignore
similarity index 100%
rename from tuxbox/enigma/data/fonts/.cvsignore
rename to tuxbox/enigma/data/fonts/.gitignore
diff --git a/tuxbox/enigma/data/htdocs/.cvsignore b/tuxbox/enigma/data/htdocs/.gitignore
similarity index 100%
rename from tuxbox/enigma/data/htdocs/.cvsignore
rename to tuxbox/enigma/data/htdocs/.gitignore
diff --git a/tuxbox/enigma/data/htdocs/stylesheets/.cvsignore b/tuxbox/enigma/data/htdocs/stylesheets/.gitignore
similarity index 100%
rename from tuxbox/enigma/data/htdocs/stylesheets/.cvsignore
rename to tuxbox/enigma/data/htdocs/stylesheets/.gitignore
diff --git a/tuxbox/enigma/data/lirc/.cvsignore b/tuxbox/enigma/data/lirc/.gitignore
similarity index 100%
rename from tuxbox/enigma/data/lirc/.cvsignore
rename to tuxbox/enigma/data/lirc/.gitignore
diff --git a/tuxbox/enigma/data/pictures/.cvsignore b/tuxbox/enigma/data/pictures/.gitignore
similarity index 100%
rename from tuxbox/enigma/data/pictures/.cvsignore
rename to tuxbox/enigma/data/pictures/.gitignore
diff --git a/tuxbox/enigma/data/pictures/blueqt/.cvsignore b/tuxbox/enigma/data/pictures/blueqt/.gitignore
similarity index 100%
rename from tuxbox/enigma/data/pictures/blueqt/.cvsignore
rename to tuxbox/enigma/data/pictures/blueqt/.gitignore
diff --git a/tuxbox/enigma/data/pictures/carbon/.cvsignore b/tuxbox/enigma/data/pictures/carbon/.gitignore
similarity index 100%
rename from tuxbox/enigma/data/pictures/carbon/.cvsignore
rename to tuxbox/enigma/data/pictures/carbon/.gitignore
diff --git a/tuxbox/enigma/data/pictures/chk_silver/.cvsignore b/tuxbox/enigma/data/pictures/chk_silver/.gitignore
similarity index 100%
rename from tuxbox/enigma/data/pictures/chk_silver/.cvsignore
rename to tuxbox/enigma/data/pictures/chk_silver/.gitignore
diff --git a/tuxbox/enigma/data/pictures/chk_silver/mainmenu/.cvsignore b/tuxbox/enigma/data/pictures/chk_silver/mainmenu/.gitignore
similarity index 100%
rename from tuxbox/enigma/data/pictures/chk_silver/mainmenu/.cvsignore
rename to tuxbox/enigma/data/pictures/chk_silver/mainmenu/.gitignore
diff --git a/tuxbox/enigma/data/pictures/chk_stone/.cvsignore b/tuxbox/enigma/data/pictures/chk_stone/.gitignore
similarity index 100%
rename from tuxbox/enigma/data/pictures/chk_stone/.cvsignore
rename to tuxbox/enigma/data/pictures/chk_stone/.gitignore
diff --git a/tuxbox/enigma/data/pictures/chk_stone/mainmenu/.cvsignore b/tuxbox/enigma/data/pictures/chk_stone/mainmenu/.gitignore
similarity index 100%
rename from tuxbox/enigma/data/pictures/chk_stone/mainmenu/.cvsignore
rename to tuxbox/enigma/data/pictures/chk_stone/mainmenu/.gitignore
diff --git a/tuxbox/enigma/data/pictures/chk_v2/.cvsignore b/tuxbox/enigma/data/pictures/chk_v2/.gitignore
similarity index 100%
rename from tuxbox/enigma/data/pictures/chk_v2/.cvsignore
rename to tuxbox/enigma/data/pictures/chk_v2/.gitignore
diff --git a/tuxbox/enigma/data/pictures/countries/.cvsignore b/tuxbox/enigma/data/pictures/countries/.gitignore
similarity index 100%
rename from tuxbox/enigma/data/pictures/countries/.cvsignore
rename to tuxbox/enigma/data/pictures/countries/.gitignore
diff --git a/tuxbox/enigma/data/pictures/keypics/.cvsignore b/tuxbox/enigma/data/pictures/keypics/.gitignore
similarity index 100%
rename from tuxbox/enigma/data/pictures/keypics/.cvsignore
rename to tuxbox/enigma/data/pictures/keypics/.gitignore
diff --git a/tuxbox/enigma/data/pictures/mainmenu/.cvsignore b/tuxbox/enigma/data/pictures/mainmenu/.gitignore
similarity index 100%
rename from tuxbox/enigma/data/pictures/mainmenu/.cvsignore
rename to tuxbox/enigma/data/pictures/mainmenu/.gitignore
diff --git a/tuxbox/enigma/data/pictures/neutrino/.cvsignore b/tuxbox/enigma/data/pictures/neutrino/.gitignore
similarity index 100%
rename from tuxbox/enigma/data/pictures/neutrino/.cvsignore
rename to tuxbox/enigma/data/pictures/neutrino/.gitignore
diff --git a/tuxbox/enigma/data/pictures/shortcut/.cvsignore b/tuxbox/enigma/data/pictures/shortcut/.gitignore
similarity index 100%
rename from tuxbox/enigma/data/pictures/shortcut/.cvsignore
rename to tuxbox/enigma/data/pictures/shortcut/.gitignore
diff --git a/tuxbox/enigma/data/pictures/small/.cvsignore b/tuxbox/enigma/data/pictures/small/.gitignore
similarity index 100%
rename from tuxbox/enigma/data/pictures/small/.cvsignore
rename to tuxbox/enigma/data/pictures/small/.gitignore
diff --git a/tuxbox/enigma/data/resources/.cvsignore b/tuxbox/enigma/data/resources/.gitignore
similarity index 100%
rename from tuxbox/enigma/data/resources/.cvsignore
rename to tuxbox/enigma/data/resources/.gitignore
diff --git a/tuxbox/enigma/data/skins/.cvsignore b/tuxbox/enigma/data/skins/.gitignore
similarity index 100%
rename from tuxbox/enigma/data/skins/.cvsignore
rename to tuxbox/enigma/data/skins/.gitignore
diff --git a/tuxbox/enigma/data/sysconfig/.cvsignore b/tuxbox/enigma/data/sysconfig/.gitignore
similarity index 100%
rename from tuxbox/enigma/data/sysconfig/.cvsignore
rename to tuxbox/enigma/data/sysconfig/.gitignore
diff --git a/tuxbox/enigma/data/templates/.cvsignore b/tuxbox/enigma/data/templates/.gitignore
similarity index 100%
rename from tuxbox/enigma/data/templates/.cvsignore
rename to tuxbox/enigma/data/templates/.gitignore
diff --git a/tuxbox/enigma/doc/.cvsignore b/tuxbox/enigma/doc/.gitignore
similarity index 100%
rename from tuxbox/enigma/doc/.cvsignore
rename to tuxbox/enigma/doc/.gitignore
diff --git a/tuxbox/enigma/hotplug/.cvsignore b/tuxbox/enigma/hotplug/.gitignore
similarity index 100%
rename from tuxbox/enigma/hotplug/.cvsignore
rename to tuxbox/enigma/hotplug/.gitignore
diff --git a/tuxbox/enigma/include/.cvsignore b/tuxbox/enigma/include/.gitignore
similarity index 100%
rename from tuxbox/enigma/include/.cvsignore
rename to tuxbox/enigma/include/.gitignore
diff --git a/tuxbox/enigma/include/lib/.cvsignore b/tuxbox/enigma/include/lib/.gitignore
similarity index 100%
rename from tuxbox/enigma/include/lib/.cvsignore
rename to tuxbox/enigma/include/lib/.gitignore
diff --git a/tuxbox/enigma/include/lib/base/.cvsignore b/tuxbox/enigma/include/lib/base/.gitignore
similarity index 100%
rename from tuxbox/enigma/include/lib/base/.cvsignore
rename to tuxbox/enigma/include/lib/base/.gitignore
diff --git a/tuxbox/enigma/include/lib/codecs/.cvsignore b/tuxbox/enigma/include/lib/codecs/.gitignore
similarity index 100%
rename from tuxbox/enigma/include/lib/codecs/.cvsignore
rename to tuxbox/enigma/include/lib/codecs/.gitignore
diff --git a/tuxbox/enigma/include/lib/driver/.cvsignore b/tuxbox/enigma/include/lib/driver/.gitignore
similarity index 100%
rename from tuxbox/enigma/include/lib/driver/.cvsignore
rename to tuxbox/enigma/include/lib/driver/.gitignore
diff --git a/tuxbox/enigma/include/lib/dvb/.cvsignore b/tuxbox/enigma/include/lib/dvb/.gitignore
similarity index 100%
rename from tuxbox/enigma/include/lib/dvb/.cvsignore
rename to tuxbox/enigma/include/lib/dvb/.gitignore
diff --git a/tuxbox/enigma/include/lib/gdi/.cvsignore b/tuxbox/enigma/include/lib/gdi/.gitignore
similarity index 100%
rename from tuxbox/enigma/include/lib/gdi/.cvsignore
rename to tuxbox/enigma/include/lib/gdi/.gitignore
diff --git a/tuxbox/enigma/include/lib/gui/.cvsignore b/tuxbox/enigma/include/lib/gui/.gitignore
similarity index 100%
rename from tuxbox/enigma/include/lib/gui/.cvsignore
rename to tuxbox/enigma/include/lib/gui/.gitignore
diff --git a/tuxbox/enigma/include/lib/socket/.cvsignore b/tuxbox/enigma/include/lib/socket/.gitignore
similarity index 100%
rename from tuxbox/enigma/include/lib/socket/.cvsignore
rename to tuxbox/enigma/include/lib/socket/.gitignore
diff --git a/tuxbox/enigma/include/lib/system/.cvsignore b/tuxbox/enigma/include/lib/system/.gitignore
similarity index 100%
rename from tuxbox/enigma/include/lib/system/.cvsignore
rename to tuxbox/enigma/include/lib/system/.gitignore
diff --git a/tuxbox/enigma/lib/.cvsignore b/tuxbox/enigma/lib/.gitignore
similarity index 100%
rename from tuxbox/enigma/lib/.cvsignore
rename to tuxbox/enigma/lib/.gitignore
diff --git a/tuxbox/enigma/lib/base/.cvsignore b/tuxbox/enigma/lib/base/.gitignore
similarity index 100%
rename from tuxbox/enigma/lib/base/.cvsignore
rename to tuxbox/enigma/lib/base/.gitignore
diff --git a/tuxbox/enigma/lib/codecs/.cvsignore b/tuxbox/enigma/lib/codecs/.gitignore
similarity index 100%
rename from tuxbox/enigma/lib/codecs/.cvsignore
rename to tuxbox/enigma/lib/codecs/.gitignore
diff --git a/tuxbox/enigma/lib/driver/.cvsignore b/tuxbox/enigma/lib/driver/.gitignore
similarity index 100%
rename from tuxbox/enigma/lib/driver/.cvsignore
rename to tuxbox/enigma/lib/driver/.gitignore
diff --git a/tuxbox/enigma/lib/dvb/.cvsignore b/tuxbox/enigma/lib/dvb/.gitignore
similarity index 100%
rename from tuxbox/enigma/lib/dvb/.cvsignore
rename to tuxbox/enigma/lib/dvb/.gitignore
diff --git a/tuxbox/enigma/lib/dvb/lowlevel/.cvsignore b/tuxbox/enigma/lib/dvb/lowlevel/.gitignore
similarity index 100%
rename from tuxbox/enigma/lib/dvb/lowlevel/.cvsignore
rename to tuxbox/enigma/lib/dvb/lowlevel/.gitignore
diff --git a/tuxbox/enigma/lib/gdi/.cvsignore b/tuxbox/enigma/lib/gdi/.gitignore
similarity index 100%
rename from tuxbox/enigma/lib/gdi/.cvsignore
rename to tuxbox/enigma/lib/gdi/.gitignore
diff --git a/tuxbox/enigma/lib/gui/.cvsignore b/tuxbox/enigma/lib/gui/.gitignore
similarity index 100%
rename from tuxbox/enigma/lib/gui/.cvsignore
rename to tuxbox/enigma/lib/gui/.gitignore
diff --git a/tuxbox/enigma/lib/movieplayer/.cvsignore b/tuxbox/enigma/lib/movieplayer/.gitignore
similarity index 100%
rename from tuxbox/enigma/lib/movieplayer/.cvsignore
rename to tuxbox/enigma/lib/movieplayer/.gitignore
diff --git a/tuxbox/enigma/lib/picviewer/.cvsignore b/tuxbox/enigma/lib/picviewer/.gitignore
similarity index 100%
rename from tuxbox/enigma/lib/picviewer/.cvsignore
rename to tuxbox/enigma/lib/picviewer/.gitignore
diff --git a/tuxbox/enigma/lib/socket/.cvsignore b/tuxbox/enigma/lib/socket/.gitignore
similarity index 100%
rename from tuxbox/enigma/lib/socket/.cvsignore
rename to tuxbox/enigma/lib/socket/.gitignore
diff --git a/tuxbox/enigma/lib/system/.cvsignore b/tuxbox/enigma/lib/system/.gitignore
similarity index 100%
rename from tuxbox/enigma/lib/system/.cvsignore
rename to tuxbox/enigma/lib/system/.gitignore
diff --git a/tuxbox/enigma/po/.cvsignore b/tuxbox/enigma/po/.gitignore
similarity index 100%
rename from tuxbox/enigma/po/.cvsignore
rename to tuxbox/enigma/po/.gitignore
diff --git a/tuxbox/enigma/src/.cvsignore b/tuxbox/enigma/src/.gitignore
similarity index 100%
rename from tuxbox/enigma/src/.cvsignore
rename to tuxbox/enigma/src/.gitignore
diff --git a/tuxbox/funstuff/.cvsignore b/tuxbox/funstuff/.gitignore
similarity index 100%
rename from tuxbox/funstuff/.cvsignore
rename to tuxbox/funstuff/.gitignore
diff --git a/tuxbox/funstuff/gnuboy/.cvsignore b/tuxbox/funstuff/gnuboy/.gitignore
similarity index 100%
rename from tuxbox/funstuff/gnuboy/.cvsignore
rename to tuxbox/funstuff/gnuboy/.gitignore
diff --git a/tuxbox/funstuff/lcd-savers/.cvsignore b/tuxbox/funstuff/lcd-savers/.gitignore
similarity index 100%
rename from tuxbox/funstuff/lcd-savers/.cvsignore
rename to tuxbox/funstuff/lcd-savers/.gitignore
diff --git a/tuxbox/funstuff/sw/.cvsignore b/tuxbox/funstuff/sw/.gitignore
similarity index 100%
rename from tuxbox/funstuff/sw/.cvsignore
rename to tuxbox/funstuff/sw/.gitignore
diff --git a/tuxbox/lcars/.cvsignore b/tuxbox/lcars/.gitignore
similarity index 100%
rename from tuxbox/lcars/.cvsignore
rename to tuxbox/lcars/.gitignore
diff --git a/tuxbox/lcars/src/.cvsignore b/tuxbox/lcars/src/.gitignore
similarity index 100%
rename from tuxbox/lcars/src/.cvsignore
rename to tuxbox/lcars/src/.gitignore
diff --git a/tuxbox/lcd/.cvsignore b/tuxbox/lcd/.gitignore
similarity index 100%
rename from tuxbox/lcd/.cvsignore
rename to tuxbox/lcd/.gitignore
diff --git a/tuxbox/lcd/lcdcmd/.cvsignore b/tuxbox/lcd/lcdcmd/.gitignore
similarity index 100%
rename from tuxbox/lcd/lcdcmd/.cvsignore
rename to tuxbox/lcd/lcdcmd/.gitignore
diff --git a/tuxbox/lcd/lcdip/.cvsignore b/tuxbox/lcd/lcdip/.gitignore
similarity index 100%
rename from tuxbox/lcd/lcdip/.cvsignore
rename to tuxbox/lcd/lcdip/.gitignore
diff --git a/tuxbox/lcd/lcdmenu/.cvsignore b/tuxbox/lcd/lcdmenu/.gitignore
similarity index 100%
rename from tuxbox/lcd/lcdmenu/.cvsignore
rename to tuxbox/lcd/lcdmenu/.gitignore
diff --git a/tuxbox/lcd/lcshot/.cvsignore b/tuxbox/lcd/lcshot/.gitignore
similarity index 100%
rename from tuxbox/lcd/lcshot/.cvsignore
rename to tuxbox/lcd/lcshot/.gitignore
diff --git a/tuxbox/libs/.cvsignore b/tuxbox/libs/.gitignore
similarity index 100%
rename from tuxbox/libs/.cvsignore
rename to tuxbox/libs/.gitignore
diff --git a/tuxbox/libs/libavs/.cvsignore b/tuxbox/libs/libavs/.gitignore
similarity index 100%
rename from tuxbox/libs/libavs/.cvsignore
rename to tuxbox/libs/libavs/.gitignore
diff --git a/tuxbox/libs/liblcddisplay/.cvsignore b/tuxbox/libs/liblcddisplay/.gitignore
similarity index 100%
rename from tuxbox/libs/liblcddisplay/.cvsignore
rename to tuxbox/libs/liblcddisplay/.gitignore
diff --git a/tuxbox/libs/liblircdclient/.cvsignore b/tuxbox/libs/liblircdclient/.gitignore
similarity index 100%
rename from tuxbox/libs/liblircdclient/.cvsignore
rename to tuxbox/libs/liblircdclient/.gitignore
diff --git a/tuxbox/libs/libtuxbox/.cvsignore b/tuxbox/libs/libtuxbox/.gitignore
similarity index 100%
rename from tuxbox/libs/libtuxbox/.cvsignore
rename to tuxbox/libs/libtuxbox/.gitignore
diff --git a/tuxbox/libs/libtuxtxt/.cvsignore b/tuxbox/libs/libtuxtxt/.gitignore
similarity index 100%
rename from tuxbox/libs/libtuxtxt/.cvsignore
rename to tuxbox/libs/libtuxtxt/.gitignore
diff --git a/tuxbox/libtuxbox/.cvsignore b/tuxbox/libtuxbox/.gitignore
similarity index 100%
rename from tuxbox/libtuxbox/.cvsignore
rename to tuxbox/libtuxbox/.gitignore
diff --git a/tuxbox/neutrino/.cvsignore b/tuxbox/neutrino/.gitignore
similarity index 100%
rename from tuxbox/neutrino/.cvsignore
rename to tuxbox/neutrino/.gitignore
diff --git a/tuxbox/neutrino/daemons/.cvsignore b/tuxbox/neutrino/daemons/.gitignore
similarity index 100%
rename from tuxbox/neutrino/daemons/.cvsignore
rename to tuxbox/neutrino/daemons/.gitignore
diff --git a/tuxbox/neutrino/daemons/nhttpd/.cvsignore b/tuxbox/neutrino/daemons/nhttpd/.gitignore
similarity index 100%
rename from tuxbox/neutrino/daemons/nhttpd/.cvsignore
rename to tuxbox/neutrino/daemons/nhttpd/.gitignore
diff --git a/tuxbox/neutrino/daemons/nhttpd/tuxboxapi/.cvsignore b/tuxbox/neutrino/daemons/nhttpd/tuxboxapi/.gitignore
similarity index 100%
rename from tuxbox/neutrino/daemons/nhttpd/tuxboxapi/.cvsignore
rename to tuxbox/neutrino/daemons/nhttpd/tuxboxapi/.gitignore
diff --git a/tuxbox/neutrino/daemons/nhttpd/web/.cvsignore b/tuxbox/neutrino/daemons/nhttpd/web/.gitignore
similarity index 100%
rename from tuxbox/neutrino/daemons/nhttpd/web/.cvsignore
rename to tuxbox/neutrino/daemons/nhttpd/web/.gitignore
diff --git a/tuxbox/neutrino/daemons/nhttpd/web/images/.cvsignore b/tuxbox/neutrino/daemons/nhttpd/web/images/.gitignore
similarity index 100%
rename from tuxbox/neutrino/daemons/nhttpd/web/images/.cvsignore
rename to tuxbox/neutrino/daemons/nhttpd/web/images/.gitignore
diff --git a/tuxbox/neutrino/daemons/nhttpd/web/scripts/.cvsignore b/tuxbox/neutrino/daemons/nhttpd/web/scripts/.gitignore
similarity index 100%
rename from tuxbox/neutrino/daemons/nhttpd/web/scripts/.cvsignore
rename to tuxbox/neutrino/daemons/nhttpd/web/scripts/.gitignore
diff --git a/tuxbox/neutrino/daemons/nhttpd/yhttpd_core/.cvsignore b/tuxbox/neutrino/daemons/nhttpd/yhttpd_core/.gitignore
similarity index 100%
rename from tuxbox/neutrino/daemons/nhttpd/yhttpd_core/.cvsignore
rename to tuxbox/neutrino/daemons/nhttpd/yhttpd_core/.gitignore
diff --git a/tuxbox/neutrino/daemons/nhttpd/yhttpd_mods/.cvsignore b/tuxbox/neutrino/daemons/nhttpd/yhttpd_mods/.gitignore
similarity index 100%
rename from tuxbox/neutrino/daemons/nhttpd/yhttpd_mods/.cvsignore
rename to tuxbox/neutrino/daemons/nhttpd/yhttpd_mods/.gitignore
diff --git a/tuxbox/neutrino/daemons/sectionsd/.cvsignore b/tuxbox/neutrino/daemons/sectionsd/.gitignore
similarity index 100%
rename from tuxbox/neutrino/daemons/sectionsd/.cvsignore
rename to tuxbox/neutrino/daemons/sectionsd/.gitignore
diff --git a/tuxbox/neutrino/daemons/timerd/.cvsignore b/tuxbox/neutrino/daemons/timerd/.gitignore
similarity index 100%
rename from tuxbox/neutrino/daemons/timerd/.cvsignore
rename to tuxbox/neutrino/daemons/timerd/.gitignore
diff --git a/tuxbox/neutrino/data/.cvsignore b/tuxbox/neutrino/data/.gitignore
similarity index 100%
rename from tuxbox/neutrino/data/.cvsignore
rename to tuxbox/neutrino/data/.gitignore
diff --git a/tuxbox/neutrino/data/fonts/.cvsignore b/tuxbox/neutrino/data/fonts/.gitignore
similarity index 100%
rename from tuxbox/neutrino/data/fonts/.cvsignore
rename to tuxbox/neutrino/data/fonts/.gitignore
diff --git a/tuxbox/neutrino/data/icons/.cvsignore b/tuxbox/neutrino/data/icons/.gitignore
similarity index 100%
rename from tuxbox/neutrino/data/icons/.cvsignore
rename to tuxbox/neutrino/data/icons/.gitignore
diff --git a/tuxbox/neutrino/data/inetradio/.cvsignore b/tuxbox/neutrino/data/inetradio/.gitignore
similarity index 100%
rename from tuxbox/neutrino/data/inetradio/.cvsignore
rename to tuxbox/neutrino/data/inetradio/.gitignore
diff --git a/tuxbox/neutrino/data/iso-codes/.cvsignore b/tuxbox/neutrino/data/iso-codes/.gitignore
similarity index 100%
rename from tuxbox/neutrino/data/iso-codes/.cvsignore
rename to tuxbox/neutrino/data/iso-codes/.gitignore
diff --git a/tuxbox/neutrino/data/lcd/.cvsignore b/tuxbox/neutrino/data/lcd/.gitignore
similarity index 100%
rename from tuxbox/neutrino/data/lcd/.cvsignore
rename to tuxbox/neutrino/data/lcd/.gitignore
diff --git a/tuxbox/neutrino/data/lcd/clock/.cvsignore b/tuxbox/neutrino/data/lcd/clock/.gitignore
similarity index 100%
rename from tuxbox/neutrino/data/lcd/clock/.cvsignore
rename to tuxbox/neutrino/data/lcd/clock/.gitignore
diff --git a/tuxbox/neutrino/data/lcd/icons/.cvsignore b/tuxbox/neutrino/data/lcd/icons/.gitignore
similarity index 100%
rename from tuxbox/neutrino/data/lcd/icons/.cvsignore
rename to tuxbox/neutrino/data/lcd/icons/.gitignore
diff --git a/tuxbox/neutrino/data/locale/.cvsignore b/tuxbox/neutrino/data/locale/.gitignore
similarity index 100%
rename from tuxbox/neutrino/data/locale/.cvsignore
rename to tuxbox/neutrino/data/locale/.gitignore
diff --git a/tuxbox/neutrino/data/themes/.cvsignore b/tuxbox/neutrino/data/themes/.gitignore
similarity index 100%
rename from tuxbox/neutrino/data/themes/.cvsignore
rename to tuxbox/neutrino/data/themes/.gitignore
diff --git a/tuxbox/neutrino/lib/.cvsignore b/tuxbox/neutrino/lib/.gitignore
similarity index 100%
rename from tuxbox/neutrino/lib/.cvsignore
rename to tuxbox/neutrino/lib/.gitignore
diff --git a/tuxbox/neutrino/lib/irsend/.cvsignore b/tuxbox/neutrino/lib/irsend/.gitignore
similarity index 100%
rename from tuxbox/neutrino/lib/irsend/.cvsignore
rename to tuxbox/neutrino/lib/irsend/.gitignore
diff --git a/tuxbox/neutrino/lib/sectionsdclient/.cvsignore b/tuxbox/neutrino/lib/sectionsdclient/.gitignore
similarity index 100%
rename from tuxbox/neutrino/lib/sectionsdclient/.cvsignore
rename to tuxbox/neutrino/lib/sectionsdclient/.gitignore
diff --git a/tuxbox/neutrino/lib/timerdclient/.cvsignore b/tuxbox/neutrino/lib/timerdclient/.gitignore
similarity index 100%
rename from tuxbox/neutrino/lib/timerdclient/.cvsignore
rename to tuxbox/neutrino/lib/timerdclient/.gitignore
diff --git a/tuxbox/neutrino/src/.cvsignore b/tuxbox/neutrino/src/.gitignore
similarity index 100%
rename from tuxbox/neutrino/src/.cvsignore
rename to tuxbox/neutrino/src/.gitignore
diff --git a/tuxbox/neutrino/src/daemonc/.cvsignore b/tuxbox/neutrino/src/daemonc/.gitignore
similarity index 100%
rename from tuxbox/neutrino/src/daemonc/.cvsignore
rename to tuxbox/neutrino/src/daemonc/.gitignore
diff --git a/tuxbox/neutrino/src/driver/.cvsignore b/tuxbox/neutrino/src/driver/.gitignore
similarity index 100%
rename from tuxbox/neutrino/src/driver/.cvsignore
rename to tuxbox/neutrino/src/driver/.gitignore
diff --git a/tuxbox/neutrino/src/driver/audiodec/.cvsignore b/tuxbox/neutrino/src/driver/audiodec/.gitignore
similarity index 100%
rename from tuxbox/neutrino/src/driver/audiodec/.cvsignore
rename to tuxbox/neutrino/src/driver/audiodec/.gitignore
diff --git a/tuxbox/neutrino/src/driver/pictureviewer/.cvsignore b/tuxbox/neutrino/src/driver/pictureviewer/.gitignore
similarity index 100%
rename from tuxbox/neutrino/src/driver/pictureviewer/.cvsignore
rename to tuxbox/neutrino/src/driver/pictureviewer/.gitignore
diff --git a/tuxbox/neutrino/src/gui/.cvsignore b/tuxbox/neutrino/src/gui/.cvsignore
deleted file mode 100644
index f3c7a7c..0000000
--- a/tuxbox/neutrino/src/gui/.cvsignore
+++ /dev/null
@@ -1 +0,0 @@
-Makefile
diff --git a/dvb/config/.cvsignore b/tuxbox/neutrino/src/gui/.gitignore
similarity index 100%
copy from dvb/config/.cvsignore
copy to tuxbox/neutrino/src/gui/.gitignore
diff --git a/tuxbox/neutrino/src/gui/bedit/.cvsignore b/tuxbox/neutrino/src/gui/bedit/.cvsignore
deleted file mode 100644
index f3c7a7c..0000000
--- a/tuxbox/neutrino/src/gui/bedit/.cvsignore
+++ /dev/null
@@ -1 +0,0 @@
-Makefile
diff --git a/dvb/config/.cvsignore b/tuxbox/neutrino/src/gui/bedit/.gitignore
similarity index 100%
copy from dvb/config/.cvsignore
copy to tuxbox/neutrino/src/gui/bedit/.gitignore
diff --git a/tuxbox/neutrino/src/gui/widget/.cvsignore b/tuxbox/neutrino/src/gui/widget/.cvsignore
deleted file mode 100644
index f3c7a7c..0000000
--- a/tuxbox/neutrino/src/gui/widget/.cvsignore
+++ /dev/null
@@ -1 +0,0 @@
-Makefile
diff --git a/dvb/config/.cvsignore b/tuxbox/neutrino/src/gui/widget/.gitignore
similarity index 100%
copy from dvb/config/.cvsignore
copy to tuxbox/neutrino/src/gui/widget/.gitignore
diff --git a/tuxbox/neutrino/src/system/.cvsignore b/tuxbox/neutrino/src/system/.cvsignore
deleted file mode 100644
index f3c7a7c..0000000
--- a/tuxbox/neutrino/src/system/.cvsignore
+++ /dev/null
@@ -1 +0,0 @@
-Makefile
diff --git a/dvb/config/.cvsignore b/tuxbox/neutrino/src/system/.gitignore
similarity index 100%
copy from dvb/config/.cvsignore
copy to tuxbox/neutrino/src/system/.gitignore
diff --git a/tuxbox/plugins/.cvsignore b/tuxbox/plugins/.gitignore
similarity index 100%
rename from tuxbox/plugins/.cvsignore
rename to tuxbox/plugins/.gitignore
diff --git a/tuxbox/plugins/blockads/.cvsignore b/tuxbox/plugins/blockads/.gitignore
similarity index 100%
rename from tuxbox/plugins/blockads/.cvsignore
rename to tuxbox/plugins/blockads/.gitignore
diff --git a/tuxbox/plugins/blockads/shellexec/.cvsignore b/tuxbox/plugins/blockads/shellexec/.cvsignore
deleted file mode 100644
index f3c7a7c..0000000
--- a/tuxbox/plugins/blockads/shellexec/.cvsignore
+++ /dev/null
@@ -1 +0,0 @@
-Makefile
diff --git a/dvb/config/.cvsignore b/tuxbox/plugins/blockads/shellexec/.gitignore
similarity index 100%
copy from dvb/config/.cvsignore
copy to tuxbox/plugins/blockads/shellexec/.gitignore
diff --git a/tuxbox/plugins/clock/.cvsignore b/tuxbox/plugins/clock/.gitignore
similarity index 100%
rename from tuxbox/plugins/clock/.cvsignore
rename to tuxbox/plugins/clock/.gitignore
diff --git a/tuxbox/plugins/clock/shellexec/.cvsignore b/tuxbox/plugins/clock/shellexec/.cvsignore
deleted file mode 100644
index f3c7a7c..0000000
--- a/tuxbox/plugins/clock/shellexec/.cvsignore
+++ /dev/null
@@ -1 +0,0 @@
-Makefile
diff --git a/dvb/config/.cvsignore b/tuxbox/plugins/clock/shellexec/.gitignore
similarity index 100%
copy from dvb/config/.cvsignore
copy to tuxbox/plugins/clock/shellexec/.gitignore
diff --git a/tuxbox/plugins/dvbsub/.cvsignore b/tuxbox/plugins/dvbsub/.cvsignore
deleted file mode 100644
index f3c7a7c..0000000
--- a/tuxbox/plugins/dvbsub/.cvsignore
+++ /dev/null
@@ -1 +0,0 @@
-Makefile
diff --git a/dvb/config/.cvsignore b/tuxbox/plugins/dvbsub/.gitignore
similarity index 100%
copy from dvb/config/.cvsignore
copy to tuxbox/plugins/dvbsub/.gitignore
diff --git a/tuxbox/plugins/enigma/.cvsignore b/tuxbox/plugins/enigma/.cvsignore
deleted file mode 100644
index f3c7a7c..0000000
--- a/tuxbox/plugins/enigma/.cvsignore
+++ /dev/null
@@ -1 +0,0 @@
-Makefile
diff --git a/dvb/config/.cvsignore b/tuxbox/plugins/enigma/.gitignore
similarity index 100%
copy from dvb/config/.cvsignore
copy to tuxbox/plugins/enigma/.gitignore
diff --git a/tuxbox/plugins/enigma/bitrate/.cvsignore b/tuxbox/plugins/enigma/bitrate/.cvsignore
deleted file mode 100644
index f3c7a7c..0000000
--- a/tuxbox/plugins/enigma/bitrate/.cvsignore
+++ /dev/null
@@ -1 +0,0 @@
-Makefile
diff --git a/dvb/config/.cvsignore b/tuxbox/plugins/enigma/bitrate/.gitignore
similarity index 100%
copy from dvb/config/.cvsignore
copy to tuxbox/plugins/enigma/bitrate/.gitignore
diff --git a/tuxbox/plugins/enigma/dbswitch/.cvsignore b/tuxbox/plugins/enigma/dbswitch/.cvsignore
deleted file mode 100644
index f3c7a7c..0000000
--- a/tuxbox/plugins/enigma/dbswitch/.cvsignore
+++ /dev/null
@@ -1 +0,0 @@
-Makefile
diff --git a/dvb/config/.cvsignore b/tuxbox/plugins/enigma/dbswitch/.gitignore
similarity index 100%
copy from dvb/config/.cvsignore
copy to tuxbox/plugins/enigma/dbswitch/.gitignore
diff --git a/tuxbox/plugins/enigma/demo/.cvsignore b/tuxbox/plugins/enigma/demo/.cvsignore
deleted file mode 100644
index f3c7a7c..0000000
--- a/tuxbox/plugins/enigma/demo/.cvsignore
+++ /dev/null
@@ -1 +0,0 @@
-Makefile
diff --git a/dvb/config/.cvsignore b/tuxbox/plugins/enigma/demo/.gitignore
similarity index 100%
copy from dvb/config/.cvsignore
copy to tuxbox/plugins/enigma/demo/.gitignore
diff --git a/tuxbox/plugins/enigma/dreamdata/.cvsignore b/tuxbox/plugins/enigma/dreamdata/.cvsignore
deleted file mode 100644
index f3c7a7c..0000000
--- a/tuxbox/plugins/enigma/dreamdata/.cvsignore
+++ /dev/null
@@ -1 +0,0 @@
-Makefile
diff --git a/dvb/config/.cvsignore b/tuxbox/plugins/enigma/dreamdata/.gitignore
similarity index 100%
copy from dvb/config/.cvsignore
copy to tuxbox/plugins/enigma/dreamdata/.gitignore
diff --git a/tuxbox/plugins/enigma/dreamflash/.cvsignore b/tuxbox/plugins/enigma/dreamflash/.cvsignore
deleted file mode 100644
index f3c7a7c..0000000
--- a/tuxbox/plugins/enigma/dreamflash/.cvsignore
+++ /dev/null
@@ -1 +0,0 @@
-Makefile
diff --git a/dvb/config/.cvsignore b/tuxbox/plugins/enigma/dreamflash/.gitignore
similarity index 100%
copy from dvb/config/.cvsignore
copy to tuxbox/plugins/enigma/dreamflash/.gitignore
diff --git a/tuxbox/plugins/enigma/dslconnect/.cvsignore b/tuxbox/plugins/enigma/dslconnect/.cvsignore
deleted file mode 100644
index f3c7a7c..0000000
--- a/tuxbox/plugins/enigma/dslconnect/.cvsignore
+++ /dev/null
@@ -1 +0,0 @@
-Makefile
diff --git a/dvb/config/.cvsignore b/tuxbox/plugins/enigma/dslconnect/.gitignore
similarity index 100%
copy from dvb/config/.cvsignore
copy to tuxbox/plugins/enigma/dslconnect/.gitignore
diff --git a/tuxbox/plugins/enigma/dsldisconnect/.cvsignore b/tuxbox/plugins/enigma/dsldisconnect/.cvsignore
deleted file mode 100644
index f3c7a7c..0000000
--- a/tuxbox/plugins/enigma/dsldisconnect/.cvsignore
+++ /dev/null
@@ -1 +0,0 @@
-Makefile
diff --git a/dvb/config/.cvsignore b/tuxbox/plugins/enigma/dsldisconnect/.gitignore
similarity index 100%
copy from dvb/config/.cvsignore
copy to tuxbox/plugins/enigma/dsldisconnect/.gitignore
diff --git a/tuxbox/plugins/enigma/getset/.cvsignore b/tuxbox/plugins/enigma/getset/.cvsignore
deleted file mode 100644
index f3c7a7c..0000000
--- a/tuxbox/plugins/enigma/getset/.cvsignore
+++ /dev/null
@@ -1 +0,0 @@
-Makefile
diff --git a/dvb/config/.cvsignore b/tuxbox/plugins/enigma/getset/.gitignore
similarity index 100%
copy from dvb/config/.cvsignore
copy to tuxbox/plugins/enigma/getset/.gitignore
diff --git a/tuxbox/plugins/enigma/movieplayer/.cvsignore b/tuxbox/plugins/enigma/movieplayer/.cvsignore
deleted file mode 100644
index f3c7a7c..0000000
--- a/tuxbox/plugins/enigma/movieplayer/.cvsignore
+++ /dev/null
@@ -1 +0,0 @@
-Makefile
diff --git a/dvb/config/.cvsignore b/tuxbox/plugins/enigma/movieplayer/.gitignore
similarity index 100%
copy from dvb/config/.cvsignore
copy to tuxbox/plugins/enigma/movieplayer/.gitignore
diff --git a/tuxbox/plugins/enigma/ngrabstart/.cvsignore b/tuxbox/plugins/enigma/ngrabstart/.cvsignore
deleted file mode 100644
index f3c7a7c..0000000
--- a/tuxbox/plugins/enigma/ngrabstart/.cvsignore
+++ /dev/null
@@ -1 +0,0 @@
-Makefile
diff --git a/dvb/config/.cvsignore b/tuxbox/plugins/enigma/ngrabstart/.gitignore
similarity index 100%
copy from dvb/config/.cvsignore
copy to tuxbox/plugins/enigma/ngrabstart/.gitignore
diff --git a/tuxbox/plugins/enigma/ngrabstop/.cvsignore b/tuxbox/plugins/enigma/ngrabstop/.cvsignore
deleted file mode 100644
index f3c7a7c..0000000
--- a/tuxbox/plugins/enigma/ngrabstop/.cvsignore
+++ /dev/null
@@ -1 +0,0 @@
-Makefile
diff --git a/dvb/config/.cvsignore b/tuxbox/plugins/enigma/ngrabstop/.gitignore
similarity index 100%
copy from dvb/config/.cvsignore
copy to tuxbox/plugins/enigma/ngrabstop/.gitignore
diff --git a/tuxbox/plugins/enigma/rss/.cvsignore b/tuxbox/plugins/enigma/rss/.cvsignore
deleted file mode 100644
index f3c7a7c..0000000
--- a/tuxbox/plugins/enigma/rss/.cvsignore
+++ /dev/null
@@ -1 +0,0 @@
-Makefile
diff --git a/dvb/config/.cvsignore b/tuxbox/plugins/enigma/rss/.gitignore
similarity index 100%
copy from dvb/config/.cvsignore
copy to tuxbox/plugins/enigma/rss/.gitignore
diff --git a/tuxbox/plugins/enigma/script/.cvsignore b/tuxbox/plugins/enigma/script/.cvsignore
deleted file mode 100644
index f3c7a7c..0000000
--- a/tuxbox/plugins/enigma/script/.cvsignore
+++ /dev/null
@@ -1 +0,0 @@
-Makefile
diff --git a/dvb/config/.cvsignore b/tuxbox/plugins/enigma/script/.gitignore
similarity index 100%
copy from dvb/config/.cvsignore
copy to tuxbox/plugins/enigma/script/.gitignore
diff --git a/tuxbox/plugins/enigma/scummvm/.cvsignore b/tuxbox/plugins/enigma/scummvm/.cvsignore
deleted file mode 100644
index f3c7a7c..0000000
--- a/tuxbox/plugins/enigma/scummvm/.cvsignore
+++ /dev/null
@@ -1 +0,0 @@
-Makefile
diff --git a/dvb/config/.cvsignore b/tuxbox/plugins/enigma/scummvm/.gitignore
similarity index 100%
copy from dvb/config/.cvsignore
copy to tuxbox/plugins/enigma/scummvm/.gitignore
diff --git a/tuxbox/plugins/enigma/weather/.cvsignore b/tuxbox/plugins/enigma/weather/.cvsignore
deleted file mode 100644
index f3c7a7c..0000000
--- a/tuxbox/plugins/enigma/weather/.cvsignore
+++ /dev/null
@@ -1 +0,0 @@
-Makefile
diff --git a/dvb/config/.cvsignore b/tuxbox/plugins/enigma/weather/.gitignore
similarity index 100%
copy from dvb/config/.cvsignore
copy to tuxbox/plugins/enigma/weather/.gitignore
diff --git a/tuxbox/plugins/enigma/weather/icons/.cvsignore b/tuxbox/plugins/enigma/weather/icons/.cvsignore
deleted file mode 100644
index f3c7a7c..0000000
--- a/tuxbox/plugins/enigma/weather/icons/.cvsignore
+++ /dev/null
@@ -1 +0,0 @@
-Makefile
diff --git a/dvb/config/.cvsignore b/tuxbox/plugins/enigma/weather/icons/.gitignore
similarity index 100%
copy from dvb/config/.cvsignore
copy to tuxbox/plugins/enigma/weather/icons/.gitignore
diff --git a/tuxbox/plugins/fx2/.cvsignore b/tuxbox/plugins/fx2/.cvsignore
deleted file mode 100644
index f3c7a7c..0000000
--- a/tuxbox/plugins/fx2/.cvsignore
+++ /dev/null
@@ -1 +0,0 @@
-Makefile
diff --git a/dvb/config/.cvsignore b/tuxbox/plugins/fx2/.gitignore
similarity index 100%
copy from dvb/config/.cvsignore
copy to tuxbox/plugins/fx2/.gitignore
diff --git a/tuxbox/plugins/fx2/bouquet/.cvsignore b/tuxbox/plugins/fx2/bouquet/.cvsignore
deleted file mode 100644
index f3c7a7c..0000000
--- a/tuxbox/plugins/fx2/bouquet/.cvsignore
+++ /dev/null
@@ -1 +0,0 @@
-Makefile
diff --git a/dvb/config/.cvsignore b/tuxbox/plugins/fx2/bouquet/.gitignore
similarity index 100%
copy from dvb/config/.cvsignore
copy to tuxbox/plugins/fx2/bouquet/.gitignore
diff --git a/tuxbox/plugins/fx2/c64emu/.cvsignore b/tuxbox/plugins/fx2/c64emu/.gitignore
similarity index 100%
rename from tuxbox/plugins/fx2/c64emu/.cvsignore
rename to tuxbox/plugins/fx2/c64emu/.gitignore
diff --git a/tuxbox/plugins/fx2/lcdcirc/.cvsignore b/tuxbox/plugins/fx2/lcdcirc/.cvsignore
deleted file mode 100644
index f3c7a7c..0000000
--- a/tuxbox/plugins/fx2/lcdcirc/.cvsignore
+++ /dev/null
@@ -1 +0,0 @@
-Makefile
diff --git a/dvb/config/.cvsignore b/tuxbox/plugins/fx2/lcdcirc/.gitignore
similarity index 100%
copy from dvb/config/.cvsignore
copy to tuxbox/plugins/fx2/lcdcirc/.gitignore
diff --git a/tuxbox/plugins/fx2/lemm/.cvsignore b/tuxbox/plugins/fx2/lemm/.cvsignore
deleted file mode 100644
index f3c7a7c..0000000
--- a/tuxbox/plugins/fx2/lemm/.cvsignore
+++ /dev/null
@@ -1 +0,0 @@
-Makefile
diff --git a/dvb/config/.cvsignore b/tuxbox/plugins/fx2/lemm/.gitignore
similarity index 100%
copy from dvb/config/.cvsignore
copy to tuxbox/plugins/fx2/lemm/.gitignore
diff --git a/tuxbox/plugins/fx2/lib/.cvsignore b/tuxbox/plugins/fx2/lib/.cvsignore
deleted file mode 100644
index f3c7a7c..0000000
--- a/tuxbox/plugins/fx2/lib/.cvsignore
+++ /dev/null
@@ -1 +0,0 @@
-Makefile
diff --git a/dvb/config/.cvsignore b/tuxbox/plugins/fx2/lib/.gitignore
similarity index 100%
copy from dvb/config/.cvsignore
copy to tuxbox/plugins/fx2/lib/.gitignore
diff --git a/tuxbox/plugins/fx2/master/.cvsignore b/tuxbox/plugins/fx2/master/.cvsignore
deleted file mode 100644
index f3c7a7c..0000000
--- a/tuxbox/plugins/fx2/master/.cvsignore
+++ /dev/null
@@ -1 +0,0 @@
-Makefile
diff --git a/dvb/config/.cvsignore b/tuxbox/plugins/fx2/master/.gitignore
similarity index 100%
copy from dvb/config/.cvsignore
copy to tuxbox/plugins/fx2/master/.gitignore
diff --git a/tuxbox/plugins/fx2/mines/.cvsignore b/tuxbox/plugins/fx2/mines/.cvsignore
deleted file mode 100644
index f3c7a7c..0000000
--- a/tuxbox/plugins/fx2/mines/.cvsignore
+++ /dev/null
@@ -1 +0,0 @@
-Makefile
diff --git a/dvb/config/.cvsignore b/tuxbox/plugins/fx2/mines/.gitignore
similarity index 100%
copy from dvb/config/.cvsignore
copy to tuxbox/plugins/fx2/mines/.gitignore
diff --git a/tuxbox/plugins/fx2/outdoor/.cvsignore b/tuxbox/plugins/fx2/outdoor/.cvsignore
deleted file mode 100644
index f3c7a7c..0000000
--- a/tuxbox/plugins/fx2/outdoor/.cvsignore
+++ /dev/null
@@ -1 +0,0 @@
-Makefile
diff --git a/dvb/config/.cvsignore b/tuxbox/plugins/fx2/outdoor/.gitignore
similarity index 100%
copy from dvb/config/.cvsignore
copy to tuxbox/plugins/fx2/outdoor/.gitignore
diff --git a/tuxbox/plugins/fx2/pac/.cvsignore b/tuxbox/plugins/fx2/pac/.cvsignore
deleted file mode 100644
index f3c7a7c..0000000
--- a/tuxbox/plugins/fx2/pac/.cvsignore
+++ /dev/null
@@ -1 +0,0 @@
-Makefile
diff --git a/dvb/config/.cvsignore b/tuxbox/plugins/fx2/pac/.gitignore
similarity index 100%
copy from dvb/config/.cvsignore
copy to tuxbox/plugins/fx2/pac/.gitignore
diff --git a/tuxbox/plugins/fx2/satfind/.cvsignore b/tuxbox/plugins/fx2/satfind/.cvsignore
deleted file mode 100644
index f3c7a7c..0000000
--- a/tuxbox/plugins/fx2/satfind/.cvsignore
+++ /dev/null
@@ -1 +0,0 @@
-Makefile
diff --git a/dvb/config/.cvsignore b/tuxbox/plugins/fx2/satfind/.gitignore
similarity index 100%
copy from dvb/config/.cvsignore
copy to tuxbox/plugins/fx2/satfind/.gitignore
diff --git a/tuxbox/plugins/fx2/snake/.cvsignore b/tuxbox/plugins/fx2/snake/.cvsignore
deleted file mode 100644
index f3c7a7c..0000000
--- a/tuxbox/plugins/fx2/snake/.cvsignore
+++ /dev/null
@@ -1 +0,0 @@
-Makefile
diff --git a/dvb/config/.cvsignore b/tuxbox/plugins/fx2/snake/.gitignore
similarity index 100%
copy from dvb/config/.cvsignore
copy to tuxbox/plugins/fx2/snake/.gitignore
diff --git a/tuxbox/plugins/fx2/sokoban/.cvsignore b/tuxbox/plugins/fx2/sokoban/.cvsignore
deleted file mode 100644
index f3c7a7c..0000000
--- a/tuxbox/plugins/fx2/sokoban/.cvsignore
+++ /dev/null
@@ -1 +0,0 @@
-Makefile
diff --git a/dvb/config/.cvsignore b/tuxbox/plugins/fx2/sokoban/.gitignore
similarity index 100%
copy from dvb/config/.cvsignore
copy to tuxbox/plugins/fx2/sokoban/.gitignore
diff --git a/tuxbox/plugins/fx2/sol/.cvsignore b/tuxbox/plugins/fx2/sol/.cvsignore
deleted file mode 100644
index f3c7a7c..0000000
--- a/tuxbox/plugins/fx2/sol/.cvsignore
+++ /dev/null
@@ -1 +0,0 @@
-Makefile
diff --git a/dvb/config/.cvsignore b/tuxbox/plugins/fx2/sol/.gitignore
similarity index 100%
copy from dvb/config/.cvsignore
copy to tuxbox/plugins/fx2/sol/.gitignore
diff --git a/tuxbox/plugins/fx2/solitair/.cvsignore b/tuxbox/plugins/fx2/solitair/.cvsignore
deleted file mode 100644
index f3c7a7c..0000000
--- a/tuxbox/plugins/fx2/solitair/.cvsignore
+++ /dev/null
@@ -1 +0,0 @@
-Makefile
diff --git a/dvb/config/.cvsignore b/tuxbox/plugins/fx2/solitair/.gitignore
similarity index 100%
copy from dvb/config/.cvsignore
copy to tuxbox/plugins/fx2/solitair/.gitignore
diff --git a/tuxbox/plugins/fx2/sudoku/.cvsignore b/tuxbox/plugins/fx2/sudoku/.cvsignore
deleted file mode 100644
index f3c7a7c..0000000
--- a/tuxbox/plugins/fx2/sudoku/.cvsignore
+++ /dev/null
@@ -1 +0,0 @@
-Makefile
diff --git a/dvb/config/.cvsignore b/tuxbox/plugins/fx2/sudoku/.gitignore
similarity index 100%
copy from dvb/config/.cvsignore
copy to tuxbox/plugins/fx2/sudoku/.gitignore
diff --git a/tuxbox/plugins/fx2/tank/.cvsignore b/tuxbox/plugins/fx2/tank/.cvsignore
deleted file mode 100644
index f3c7a7c..0000000
--- a/tuxbox/plugins/fx2/tank/.cvsignore
+++ /dev/null
@@ -1 +0,0 @@
-Makefile
diff --git a/dvb/config/.cvsignore b/tuxbox/plugins/fx2/tank/.gitignore
similarity index 100%
copy from dvb/config/.cvsignore
copy to tuxbox/plugins/fx2/tank/.gitignore
diff --git a/tuxbox/plugins/fx2/tetris/.cvsignore b/tuxbox/plugins/fx2/tetris/.cvsignore
deleted file mode 100644
index f3c7a7c..0000000
--- a/tuxbox/plugins/fx2/tetris/.cvsignore
+++ /dev/null
@@ -1 +0,0 @@
-Makefile
diff --git a/dvb/config/.cvsignore b/tuxbox/plugins/fx2/tetris/.gitignore
similarity index 100%
copy from dvb/config/.cvsignore
copy to tuxbox/plugins/fx2/tetris/.gitignore
diff --git a/tuxbox/plugins/fx2/vierg/.cvsignore b/tuxbox/plugins/fx2/vierg/.cvsignore
deleted file mode 100644
index f3c7a7c..0000000
--- a/tuxbox/plugins/fx2/vierg/.cvsignore
+++ /dev/null
@@ -1 +0,0 @@
-Makefile
diff --git a/dvb/config/.cvsignore b/tuxbox/plugins/fx2/vierg/.gitignore
similarity index 100%
copy from dvb/config/.cvsignore
copy to tuxbox/plugins/fx2/vierg/.gitignore
diff --git a/tuxbox/plugins/fx2/yahtzee/.cvsignore b/tuxbox/plugins/fx2/yahtzee/.cvsignore
deleted file mode 100644
index f3c7a7c..0000000
--- a/tuxbox/plugins/fx2/yahtzee/.cvsignore
+++ /dev/null
@@ -1 +0,0 @@
-Makefile
diff --git a/dvb/config/.cvsignore b/tuxbox/plugins/fx2/yahtzee/.gitignore
similarity index 100%
copy from dvb/config/.cvsignore
copy to tuxbox/plugins/fx2/yahtzee/.gitignore
diff --git a/tuxbox/plugins/include/.cvsignore b/tuxbox/plugins/include/.cvsignore
deleted file mode 100644
index f3c7a7c..0000000
--- a/tuxbox/plugins/include/.cvsignore
+++ /dev/null
@@ -1 +0,0 @@
-Makefile
diff --git a/dvb/config/.cvsignore b/tuxbox/plugins/include/.gitignore
similarity index 100%
copy from dvb/config/.cvsignore
copy to tuxbox/plugins/include/.gitignore
diff --git a/tuxbox/plugins/links/.cvsignore b/tuxbox/plugins/links/.cvsignore
deleted file mode 100644
index f3c7a7c..0000000
--- a/tuxbox/plugins/links/.cvsignore
+++ /dev/null
@@ -1 +0,0 @@
-Makefile
diff --git a/dvb/config/.cvsignore b/tuxbox/plugins/links/.gitignore
similarity index 100%
copy from dvb/config/.cvsignore
copy to tuxbox/plugins/links/.gitignore
diff --git a/tuxbox/plugins/logomask/.cvsignore b/tuxbox/plugins/logomask/.gitignore
similarity index 100%
rename from tuxbox/plugins/logomask/.cvsignore
rename to tuxbox/plugins/logomask/.gitignore
diff --git a/tuxbox/plugins/logomask/shellexec/.cvsignore b/tuxbox/plugins/logomask/shellexec/.cvsignore
deleted file mode 100644
index f3c7a7c..0000000
--- a/tuxbox/plugins/logomask/shellexec/.cvsignore
+++ /dev/null
@@ -1 +0,0 @@
-Makefile
diff --git a/dvb/config/.cvsignore b/tuxbox/plugins/logomask/shellexec/.gitignore
similarity index 100%
copy from dvb/config/.cvsignore
copy to tuxbox/plugins/logomask/shellexec/.gitignore
diff --git a/tuxbox/plugins/mosaic/.cvsignore b/tuxbox/plugins/mosaic/.cvsignore
deleted file mode 100644
index f3c7a7c..0000000
--- a/tuxbox/plugins/mosaic/.cvsignore
+++ /dev/null
@@ -1 +0,0 @@
-Makefile
diff --git a/dvb/config/.cvsignore b/tuxbox/plugins/mosaic/.gitignore
similarity index 100%
copy from dvb/config/.cvsignore
copy to tuxbox/plugins/mosaic/.gitignore
diff --git a/tuxbox/plugins/pip/.cvsignore b/tuxbox/plugins/pip/.cvsignore
deleted file mode 100644
index f3c7a7c..0000000
--- a/tuxbox/plugins/pip/.cvsignore
+++ /dev/null
@@ -1 +0,0 @@
-Makefile
diff --git a/dvb/config/.cvsignore b/tuxbox/plugins/pip/.gitignore
similarity index 100%
copy from dvb/config/.cvsignore
copy to tuxbox/plugins/pip/.gitignore
diff --git a/tuxbox/plugins/pluginx/.cvsignore b/tuxbox/plugins/pluginx/.gitignore
similarity index 100%
rename from tuxbox/plugins/pluginx/.cvsignore
rename to tuxbox/plugins/pluginx/.gitignore
diff --git a/tuxbox/plugins/shellexec/.cvsignore b/tuxbox/plugins/shellexec/.gitignore
similarity index 100%
rename from tuxbox/plugins/shellexec/.cvsignore
rename to tuxbox/plugins/shellexec/.gitignore
diff --git a/tuxbox/plugins/sysinfo/.cvsignore b/tuxbox/plugins/sysinfo/.gitignore
similarity index 100%
rename from tuxbox/plugins/sysinfo/.cvsignore
rename to tuxbox/plugins/sysinfo/.gitignore
diff --git a/tuxbox/plugins/tuxcal/.cvsignore b/tuxbox/plugins/tuxcal/.cvsignore
deleted file mode 100644
index f3c7a7c..0000000
--- a/tuxbox/plugins/tuxcal/.cvsignore
+++ /dev/null
@@ -1 +0,0 @@
-Makefile
diff --git a/dvb/config/.cvsignore b/tuxbox/plugins/tuxcal/.gitignore
similarity index 100%
copy from dvb/config/.cvsignore
copy to tuxbox/plugins/tuxcal/.gitignore
diff --git a/tuxbox/plugins/tuxcal/daemon/.cvsignore b/tuxbox/plugins/tuxcal/daemon/.gitignore
similarity index 100%
rename from tuxbox/plugins/tuxcal/daemon/.cvsignore
rename to tuxbox/plugins/tuxcal/daemon/.gitignore
diff --git a/tuxbox/plugins/tuxclock/.cvsignore b/tuxbox/plugins/tuxclock/.cvsignore
deleted file mode 100644
index f3c7a7c..0000000
--- a/tuxbox/plugins/tuxclock/.cvsignore
+++ /dev/null
@@ -1 +0,0 @@
-Makefile
diff --git a/dvb/config/.cvsignore b/tuxbox/plugins/tuxclock/.gitignore
similarity index 100%
copy from dvb/config/.cvsignore
copy to tuxbox/plugins/tuxclock/.gitignore
diff --git a/tuxbox/plugins/tuxclock/daemon/.cvsignore b/tuxbox/plugins/tuxclock/daemon/.cvsignore
deleted file mode 100644
index f3c7a7c..0000000
--- a/tuxbox/plugins/tuxclock/daemon/.cvsignore
+++ /dev/null
@@ -1 +0,0 @@
-Makefile
diff --git a/dvb/config/.cvsignore b/tuxbox/plugins/tuxclock/daemon/.gitignore
similarity index 100%
copy from dvb/config/.cvsignore
copy to tuxbox/plugins/tuxclock/daemon/.gitignore
diff --git a/tuxbox/plugins/tuxcom/.cvsignore b/tuxbox/plugins/tuxcom/.cvsignore
deleted file mode 100644
index f3c7a7c..0000000
--- a/tuxbox/plugins/tuxcom/.cvsignore
+++ /dev/null
@@ -1 +0,0 @@
-Makefile
diff --git a/dvb/config/.cvsignore b/tuxbox/plugins/tuxcom/.gitignore
similarity index 100%
copy from dvb/config/.cvsignore
copy to tuxbox/plugins/tuxcom/.gitignore
diff --git a/tuxbox/plugins/tuxmail/.cvsignore b/tuxbox/plugins/tuxmail/.cvsignore
deleted file mode 100644
index f3c7a7c..0000000
--- a/tuxbox/plugins/tuxmail/.cvsignore
+++ /dev/null
@@ -1 +0,0 @@
-Makefile
diff --git a/dvb/config/.cvsignore b/tuxbox/plugins/tuxmail/.gitignore
similarity index 100%
copy from dvb/config/.cvsignore
copy to tuxbox/plugins/tuxmail/.gitignore
diff --git a/tuxbox/plugins/tuxmail/daemon/.cvsignore b/tuxbox/plugins/tuxmail/daemon/.gitignore
similarity index 100%
rename from tuxbox/plugins/tuxmail/daemon/.cvsignore
rename to tuxbox/plugins/tuxmail/daemon/.gitignore
diff --git a/tuxbox/plugins/tuxtxt/.cvsignore b/tuxbox/plugins/tuxtxt/.cvsignore
deleted file mode 100644
index f3c7a7c..0000000
--- a/tuxbox/plugins/tuxtxt/.cvsignore
+++ /dev/null
@@ -1 +0,0 @@
-Make...
[truncated message content] |
|
From: Carsten S. <tux...@ne...> - 2013-01-19 22:06:45
|
Project "Tuxbox-GIT: apps":
The branch, master has been updated
via 5fcb3f4083cf817993fab269bbcabcdb30237b99 (commit)
via 9cb312af26ce2cf6b5490a08f5782ef19ef8a8bf (commit)
from f120ec1ab0469b0dc3944adf7c5950c0bbef0832 (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
commit 5fcb3f4083cf817993fab269bbcabcdb30237b99
Author: Christian Schuett <Gau...@ho...>
Date: Sat Jan 19 20:25:50 2013 +0100
Neutrino: use ShowLocalizedMessage() if possible
use ShowLocalizedMessage() instead of ShowMsgUTF(), if possible,
to reduce size of neutrino binary
Signed-off-by: Christian Schuett <Gau...@ho...>
diff --git a/tuxbox/neutrino/src/gui/network_setup.cpp b/tuxbox/neutrino/src/gui/network_setup.cpp
index a8605a6..2e5dde3 100644
--- a/tuxbox/neutrino/src/gui/network_setup.cpp
+++ b/tuxbox/neutrino/src/gui/network_setup.cpp
@@ -390,12 +390,12 @@ int CNetworkSetup::saveChangesDialog()
return 1;
// Save the settings after changes, if user wants to!
- int result = ShowMsgUTF(LOCALE_MAINSETTINGS_NETWORK, g_Locale->getText(LOCALE_NETWORKMENU_APPLY_SETTINGS_NOW), CMessageBox::mbrYes,
- CMessageBox::mbYes |
- CMessageBox::mbNo |
- CMessageBox::mbBack,
- NEUTRINO_ICON_QUESTION,
- width);
+ int result = ShowLocalizedMessage(LOCALE_MAINSETTINGS_NETWORK,
+ LOCALE_NETWORKMENU_APPLY_SETTINGS_NOW,
+ CMessageBox::mbrYes,
+ CMessageBox::mbYes | CMessageBox::mbNo | CMessageBox::mbBack,
+ NEUTRINO_ICON_QUESTION,
+ width);
switch(result)
{
@@ -423,11 +423,12 @@ void CNetworkSetup::restoreNetworkSettings(bool show_message)
if (show_message)
{
- result = ShowMsgUTF(LOCALE_MAINSETTINGS_NETWORK, g_Locale->getText(LOCALE_NETWORKMENU_RESET_SETTINGS_NOW), CMessageBox::mbrNo,
- CMessageBox::mbYes |
- CMessageBox::mbNo ,
- NEUTRINO_ICON_QUESTION,
- width);
+ result = ShowLocalizedMessage(LOCALE_MAINSETTINGS_NETWORK,
+ LOCALE_NETWORKMENU_RESET_SETTINGS_NOW,
+ CMessageBox::mbrNo,
+ CMessageBox::mbYes | CMessageBox::mbNo,
+ NEUTRINO_ICON_QUESTION,
+ width);
}
if (result == CMessageBox::mbrYes)
diff --git a/tuxbox/neutrino/src/gui/personalize.cpp b/tuxbox/neutrino/src/gui/personalize.cpp
index f4de8dc..24a98d2 100644
--- a/tuxbox/neutrino/src/gui/personalize.cpp
+++ b/tuxbox/neutrino/src/gui/personalize.cpp
@@ -390,7 +390,11 @@ void CPersonalizeGui::SaveAndExit()
// Save the settings and left menu, if user wants to!
if (haveChangedSettings())
{
- if (ShowMsgUTF(LOCALE_PERSONALIZE_HEAD, g_Locale->getText(LOCALE_PERSONALIZE_APPLY_SETTINGS), CMessageBox::mbrYes, CMessageBox::mbYes | CMessageBox::mbNo, NEUTRINO_ICON_PROTECTING) == CMessageBox::mbrYes)
+ if (ShowLocalizedMessage(LOCALE_PERSONALIZE_HEAD,
+ LOCALE_PERSONALIZE_APPLY_SETTINGS,
+ CMessageBox::mbrYes,
+ CMessageBox::mbYes | CMessageBox::mbNo,
+ NEUTRINO_ICON_PROTECTING) == CMessageBox::mbrYes)
{
CHintBox hintBox(LOCALE_MESSAGEBOX_INFO, g_Locale->getText(LOCALE_MAINSETTINGS_SAVESETTINGSNOW_HINT)); // UTF-8
hintBox.paint();
@@ -407,7 +411,11 @@ void CPersonalizeGui::SaveAndExit()
}
else
{
- if (ShowMsgUTF(LOCALE_PERSONALIZE_HEAD, g_Locale->getText(LOCALE_MESSAGEBOX_DISCARD), CMessageBox::mbrNo, CMessageBox::mbYes | CMessageBox::mbNo, NEUTRINO_ICON_PROTECTING) == CMessageBox::mbrYes)
+ if (ShowLocalizedMessage(LOCALE_PERSONALIZE_HEAD,
+ LOCALE_MESSAGEBOX_DISCARD,
+ CMessageBox::mbrNo,
+ CMessageBox::mbYes | CMessageBox::mbNo,
+ NEUTRINO_ICON_PROTECTING) == CMessageBox::mbrYes)
restoreSettings();
}
}
commit 9cb312af26ce2cf6b5490a08f5782ef19ef8a8bf
Author: Christian Schuett <Gau...@ho...>
Date: Sat Jan 19 20:20:19 2013 +0100
Neutrino: use ShowLocalizedHint() if possible
use ShowLocalizedHint() instead of ShowHintUTF(), if possible,
to reduce size of neutrino binary
Signed-off-by: Christian Schuett <Gau...@ho...>
diff --git a/tuxbox/neutrino/src/gui/epgview.cpp b/tuxbox/neutrino/src/gui/epgview.cpp
index 2ce0600..9c1e4a0 100644
--- a/tuxbox/neutrino/src/gui/epgview.cpp
+++ b/tuxbox/neutrino/src/gui/epgview.cpp
@@ -440,7 +440,7 @@ int CEpgData::show(const t_channel_id channel_id, unsigned long long a_id, time_
if (epgData.title.empty()) /* no epg info found */
{
- ShowHintUTF(LOCALE_MESSAGEBOX_INFO, g_Locale->getText(LOCALE_EPGVIEWER_NOTFOUND)); // UTF-8
+ ShowLocalizedHint(LOCALE_MESSAGEBOX_INFO, LOCALE_EPGVIEWER_NOTFOUND);
return res;
}
diff --git a/tuxbox/neutrino/src/gui/esound.cpp b/tuxbox/neutrino/src/gui/esound.cpp
index bcb77cf..7932e1c 100644
--- a/tuxbox/neutrino/src/gui/esound.cpp
+++ b/tuxbox/neutrino/src/gui/esound.cpp
@@ -285,7 +285,7 @@ int CEsoundGui::show()
bool loop = true;
- ShowHintUTF( LOCALE_MESSAGEBOX_INFO, g_Locale->getText(LOCALE_ESOUND_INFO) );
+ ShowLocalizedHint(LOCALE_MESSAGEBOX_INFO, LOCALE_ESOUND_INFO);
while(loop)
{
if(CNeutrinoApp::getInstance()->getMode() != NeutrinoMessages::mode_audio)
diff --git a/tuxbox/neutrino/src/gui/infoviewer.cpp b/tuxbox/neutrino/src/gui/infoviewer.cpp
index 97a7972..fa752f1 100644
--- a/tuxbox/neutrino/src/gui/infoviewer.cpp
+++ b/tuxbox/neutrino/src/gui/infoviewer.cpp
@@ -1252,7 +1252,7 @@ void CInfoViewer::showInfoIcons()
void CInfoViewer::showFailure()
{
- ShowHintUTF(LOCALE_MESSAGEBOX_ERROR, g_Locale->getText(LOCALE_INFOVIEWER_NOTAVAILABLE), 430); // UTF-8
+ ShowLocalizedHint(LOCALE_MESSAGEBOX_ERROR, LOCALE_INFOVIEWER_NOTAVAILABLE, 430);
}
void CInfoViewer::showMotorMoving(int duration)
diff --git a/tuxbox/neutrino/src/gui/network_setup.cpp b/tuxbox/neutrino/src/gui/network_setup.cpp
index 39228bb..a8605a6 100644
--- a/tuxbox/neutrino/src/gui/network_setup.cpp
+++ b/tuxbox/neutrino/src/gui/network_setup.cpp
@@ -320,10 +320,12 @@ bool CNetworkSetup::checkForIP()
if (!network_dhcp && network_address.empty()) //no ip definied
{
- ShowMsgUTF(LOCALE_MAINSETTINGS_NETWORK, g_Locale->getText(LOCALE_NETWORKMENU_ERROR_NO_ADDRESS), CMessageBox::mbrBack,
- CMessageBox::mbBack,
- NEUTRINO_ICON_ERROR,
- width);
+ ShowMsgUTF(LOCALE_MAINSETTINGS_NETWORK,
+ g_Locale->getText(LOCALE_NETWORKMENU_ERROR_NO_ADDRESS),
+ CMessageBox::mbrBack,
+ CMessageBox::mbBack,
+ NEUTRINO_ICON_ERROR,
+ width);
ret = false;
}
@@ -353,8 +355,11 @@ void CNetworkSetup::saveNetworkSettings(bool show_message)
networkConfig->commitConfig();
if (show_message)
- ShowHintUTF(LOCALE_MESSAGEBOX_INFO, g_Locale->getText(LOCALE_NETWORKMENU_SETUPSAVED), width , g_settings.timing[SNeutrinoSettings::TIMING_INFOBAR], NEUTRINO_ICON_INFO); // UTF-8
-
+ ShowLocalizedHint(LOCALE_MESSAGEBOX_INFO,
+ LOCALE_NETWORKMENU_SETUPSAVED,
+ width,
+ g_settings.timing[SNeutrinoSettings::TIMING_INFOBAR],
+ NEUTRINO_ICON_INFO);
}
//saves settings and apply, reboot not required
diff --git a/tuxbox/neutrino/src/gui/timerlist.cpp b/tuxbox/neutrino/src/gui/timerlist.cpp
index 15fdcbc..3d24384 100644
--- a/tuxbox/neutrino/src/gui/timerlist.cpp
+++ b/tuxbox/neutrino/src/gui/timerlist.cpp
@@ -462,7 +462,7 @@ int CTimerList::show()
// if (timerlist.empty())
// {
//evtl. anzeige dass keine kanalliste....
- /* ShowHintUTF(LOCALE_MESSAGEBOX_INFO, g_Locale->getText(LOCALE_TIMERLIST_EMPTY));
+ /* ShowLocalizedHint(LOCALE_MESSAGEBOX_INFO, LOCALE_TIMERLIST_EMPTY);
return -1;*/
// }
paint();
diff --git a/tuxbox/neutrino/src/gui/update.cpp b/tuxbox/neutrino/src/gui/update.cpp
index e17764a..e76755e 100644
--- a/tuxbox/neutrino/src/gui/update.cpp
+++ b/tuxbox/neutrino/src/gui/update.cpp
@@ -227,7 +227,7 @@ bool CFlashUpdate::selectHttpImage(void)
if (urls.empty())
{
- ShowHintUTF(LOCALE_MESSAGEBOX_ERROR, g_Locale->getText(LOCALE_FLASHUPDATE_GETINFOFILEERROR)); // UTF-8
+ ShowLocalizedHint(LOCALE_MESSAGEBOX_ERROR, LOCALE_FLASHUPDATE_GETINFOFILEERROR);
return false;
}
@@ -357,7 +357,7 @@ bool CFlashUpdate::checkVersion4Update()
{
hide();
printf("[update] flash-file not found: %s\n", filename.c_str());
- ShowHintUTF(LOCALE_MESSAGEBOX_ERROR, g_Locale->getText(LOCALE_FLASHUPDATE_CANTOPENFILE)); // UTF-8
+ ShowLocalizedHint(LOCALE_MESSAGEBOX_ERROR, LOCALE_FLASHUPDATE_CANTOPENFILE);
return false;
}
hide();
@@ -367,7 +367,7 @@ bool CFlashUpdate::checkVersion4Update()
if (!ft.GetVersionInfo(*versionInfo, filename))
{
delete versionInfo;
- ShowHintUTF(LOCALE_MESSAGEBOX_ERROR, g_Locale->getText(LOCALE_FLASHUPDATE_CANTOPENFILE)); // UTF-8
+ ShowLocalizedHint(LOCALE_MESSAGEBOX_ERROR, LOCALE_FLASHUPDATE_CANTOPENFILE);
return false;
}
@@ -379,12 +379,16 @@ bool CFlashUpdate::checkVersion4Update()
if (strcmp(RELEASE_CYCLE, versionInfo->getReleaseCycle()))
{
delete versionInfo;
- ShowHintUTF(LOCALE_MESSAGEBOX_ERROR, g_Locale->getText(LOCALE_FLASHUPDATE_WRONGBASE)); // UTF-8
+ ShowLocalizedHint(LOCALE_MESSAGEBOX_ERROR, LOCALE_FLASHUPDATE_WRONGBASE);
return false;
}
if ((strcmp("Release", versionInfo->getType()) != 0) &&
- (ShowLocalizedMessage(LOCALE_MESSAGEBOX_INFO, LOCALE_FLASHUPDATE_EXPERIMENTALIMAGE, CMessageBox::mbrYes, CMessageBox::mbYes | CMessageBox::mbNo, NEUTRINO_ICON_UPDATE) != CMessageBox::mbrYes))
+ (ShowLocalizedMessage(LOCALE_MESSAGEBOX_INFO,
+ LOCALE_FLASHUPDATE_EXPERIMENTALIMAGE,
+ CMessageBox::mbrYes,
+ CMessageBox::mbYes | CMessageBox::mbNo,
+ NEUTRINO_ICON_UPDATE) != CMessageBox::mbrYes))
{
delete versionInfo;
return false;
@@ -392,7 +396,11 @@ bool CFlashUpdate::checkVersion4Update()
delete versionInfo;
- return (ShowMsgUTF(LOCALE_MESSAGEBOX_INFO, msg, CMessageBox::mbrYes, CMessageBox::mbYes | CMessageBox::mbNo, NEUTRINO_ICON_UPDATE) == CMessageBox::mbrYes); // UTF-8
+ return (ShowMsgUTF(LOCALE_MESSAGEBOX_INFO,
+ msg,
+ CMessageBox::mbrYes,
+ CMessageBox::mbYes | CMessageBox::mbNo,
+ NEUTRINO_ICON_UPDATE) == CMessageBox::mbrYes); // UTF-8
}
int CFlashUpdate::exec(CMenuTarget* parent, const std::string &)
@@ -424,7 +432,7 @@ int CFlashUpdate::exec(CMenuTarget* parent, const std::string &)
if(!getUpdateImage(newVersion))
{
hide();
- ShowHintUTF(LOCALE_MESSAGEBOX_ERROR, g_Locale->getText(LOCALE_FLASHUPDATE_GETUPDATEFILEERROR)); // UTF-8
+ ShowLocalizedHint(LOCALE_MESSAGEBOX_ERROR, LOCALE_FLASHUPDATE_GETUPDATEFILEERROR);
return menu_return::RETURN_REPAINT;
}
filename = std::string(gTmpPath UPDATE_LOCAL_FILENAME);
@@ -446,7 +454,7 @@ int CFlashUpdate::exec(CMenuTarget* parent, const std::string &)
if(!ft.MD5Check(filename, filemd5))
{
hide();
- ShowHintUTF(LOCALE_MESSAGEBOX_ERROR, g_Locale->getText(LOCALE_FLASHUPDATE_MD5SUMERROR)); // UTF-8
+ ShowLocalizedHint(LOCALE_MESSAGEBOX_ERROR, LOCALE_FLASHUPDATE_MD5SUMERROR);
return menu_return::RETURN_REPAINT;
}
}
@@ -487,7 +495,7 @@ int CFlashUpdate::exec(CMenuTarget* parent, const std::string &)
// Otherwise reject
printf("NO update due to erroneous file size %d %d\n", filesize, CMTDInfo::getInstance()->getMTDSize(mtd_of_update_image));
hide();
- ShowHintUTF(LOCALE_MESSAGEBOX_ERROR, g_Locale->getText(LOCALE_FLASHUPDATE_MD5SUMERROR)); // UTF-8
+ ShowLocalizedHint(LOCALE_MESSAGEBOX_ERROR, LOCALE_FLASHUPDATE_MD5SUMERROR);
return menu_return::RETURN_REPAINT;
}
@@ -535,7 +543,7 @@ int CFlashUpdate::exec(CMenuTarget* parent, const std::string &)
CFSMounter::umount();
#endif
- ShowHintUTF(LOCALE_MESSAGEBOX_INFO, g_Locale->getText(LOCALE_FLASHUPDATE_FLASHREADYREBOOT)); // UTF-8
+ ShowLocalizedHint(LOCALE_MESSAGEBOX_INFO, LOCALE_FLASHUPDATE_FLASHREADYREBOOT);
ft.reboot();
sleep(20000);
@@ -615,7 +623,11 @@ void CFlashExpert::writemtd(const std::string & filename, int mtdNumber)
imagefile, mtdtarget);
}
- if (ShowMsgUTF(LOCALE_MESSAGEBOX_INFO, message, CMessageBox::mbrNo, CMessageBox::mbYes | CMessageBox::mbNo, NEUTRINO_ICON_UPDATE) != CMessageBox::mbrYes) // UTF-8
+ if (ShowMsgUTF(LOCALE_MESSAGEBOX_INFO,
+ message,
+ CMessageBox::mbrNo,
+ CMessageBox::mbYes | CMessageBox::mbNo,
+ NEUTRINO_ICON_UPDATE) != CMessageBox::mbrYes) // UTF-8
return;
#ifdef LCD_UPDATE
@@ -670,7 +682,9 @@ void CFlashExpert::writemtd(const std::string & filename, int mtdNumber)
showStatusMessageUTF(g_Locale->getText(LOCALE_FLASHUPDATE_READY)); // UTF-8
sleep(1);
hide();
- ShowHintUTF(LOCALE_MESSAGEBOX_INFO, g_Locale->getText(LOCALE_FLASHUPDATE_FLASHREADYREBOOT), 450, -1, NULL); // UTF-8
+ ShowLocalizedHint(LOCALE_MESSAGEBOX_INFO,
+ LOCALE_FLASHUPDATE_FLASHREADYREBOOT,
+ 450, -1, NULL);
ft.reboot();
}
}
diff --git a/tuxbox/neutrino/src/neutrino.cpp b/tuxbox/neutrino/src/neutrino.cpp
index 218702f..cd50364 100644
--- a/tuxbox/neutrino/src/neutrino.cpp
+++ b/tuxbox/neutrino/src/neutrino.cpp
@@ -2261,14 +2261,14 @@ int CNeutrinoApp::run(int argc, char **argv)
if(loadSettingsErg==1)
{
dprintf(DEBUG_INFO, "config file missing\n");
- ShowHintUTF(LOCALE_MESSAGEBOX_INFO, g_Locale->getText(LOCALE_SETTINGS_NOCONFFILE));
+ ShowLocalizedHint(LOCALE_MESSAGEBOX_INFO, LOCALE_SETTINGS_NOCONFFILE);
configfile.setModifiedFlag(true);
saveSetup();
}
else if(loadSettingsErg==2)
{
dprintf(DEBUG_INFO, "parts of configfile missing\n");
- ShowHintUTF(LOCALE_MESSAGEBOX_INFO, g_Locale->getText(LOCALE_SETTINGS_MISSINGOPTIONSCONFFILE));
+ ShowLocalizedHint(LOCALE_MESSAGEBOX_INFO, LOCALE_SETTINGS_MISSINGOPTIONSCONFFILE);
configfile.setModifiedFlag(true);
saveSetup();
}
@@ -2469,7 +2469,7 @@ void CNeutrinoApp::RealRun(CMenuWidget &menu)
if (g_settings.personalize_redbutton == 0)
{
// EventList Menu - Personalization Check
- ShowHintUTF(LOCALE_MESSAGEBOX_INFO, g_Locale->getText(LOCALE_PERSONALIZE_MENUDISABLEDHINT));
+ ShowLocalizedHint(LOCALE_MESSAGEBOX_INFO, LOCALE_PERSONALIZE_MENUDISABLEDHINT);
} else {
showUserMenu(SNeutrinoSettings::BUTTON_RED); //USERMENU
}
@@ -2484,7 +2484,7 @@ void CNeutrinoApp::RealRun(CMenuWidget &menu)
else if (g_settings.personalize_bluebutton == 0)
{
// Features Menu - Personalization Check
- ShowHintUTF(LOCALE_MESSAGEBOX_INFO, g_Locale->getText(LOCALE_PERSONALIZE_MENUDISABLEDHINT));
+ ShowLocalizedHint(LOCALE_MESSAGEBOX_INFO, LOCALE_PERSONALIZE_MENUDISABLEDHINT);
}
else
showUserMenu(SNeutrinoSettings::BUTTON_BLUE);
-----------------------------------------------------------------------
Summary of changes:
tuxbox/neutrino/src/gui/epgview.cpp | 2 +-
tuxbox/neutrino/src/gui/esound.cpp | 2 +-
tuxbox/neutrino/src/gui/infoviewer.cpp | 2 +-
tuxbox/neutrino/src/gui/network_setup.cpp | 40 ++++++++++++++++------------
tuxbox/neutrino/src/gui/personalize.cpp | 12 +++++++-
tuxbox/neutrino/src/gui/timerlist.cpp | 2 +-
tuxbox/neutrino/src/gui/update.cpp | 38 ++++++++++++++++++--------
tuxbox/neutrino/src/neutrino.cpp | 8 +++---
8 files changed, 67 insertions(+), 39 deletions(-)
--
Tuxbox-GIT: apps
|
|
From: Carsten S. <tux...@ne...> - 2013-01-17 21:23:26
|
Project "Tuxbox-GIT: apps":
The branch, master has been updated
via f120ec1ab0469b0dc3944adf7c5950c0bbef0832 (commit)
from 01b8bea02569e8109cb8ea147c1ac1bf32680f11 (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
commit f120ec1ab0469b0dc3944adf7c5950c0bbef0832
Author: Christian Schuett <Gau...@ho...>
Date: Wed Jan 16 21:29:31 2013 +0100
Neutrino: fix calculating hintbox width
Without the caculating of the max width some hinboxes overflow the
screen size.
Signed-off-by: Christian Schuett <Gau...@ho...>
diff --git a/tuxbox/neutrino/src/gui/widget/hintbox.cpp b/tuxbox/neutrino/src/gui/widget/hintbox.cpp
index 3ce2bf7..810de05 100644
--- a/tuxbox/neutrino/src/gui/widget/hintbox.cpp
+++ b/tuxbox/neutrino/src/gui/widget/hintbox.cpp
@@ -38,6 +38,7 @@
#include <global.h>
#include <neutrino.h>
+#include <driver/screen_max.h>
#define HINTBOX_MAX_HEIGHT 420
@@ -105,6 +106,9 @@ CHintBox::CHintBox(const neutrino_locale_t Caption, const char * const Text, con
if (nw > width)
width = nw;
}
+
+ width = w_max(width, SHADOW_OFFSET);
+
window = NULL;
}
-----------------------------------------------------------------------
Summary of changes:
tuxbox/neutrino/src/gui/widget/hintbox.cpp | 4 ++++
1 files changed, 4 insertions(+), 0 deletions(-)
--
Tuxbox-GIT: apps
|