Progressbars

Das Original Benutzerinterface Neutrino-SD incl. zapit, sectionsd, yWeb etc...
dbt
Administrator
Beiträge: 2675
Registriert: Donnerstag 28. September 2006, 19:18

Progressbars

Beitrag von dbt »

Muss grad mal etwas Kleinkram ausmisten, habe deshalb einen Patch für Änderungen an den Fortschrittsbalken, die hier und da in der GUI auftauchen. Die sind quasi auf einen Nenner gebracht und sollten einheitlich aussehen und templatemäßig einzubauen gehen.
Bild

Bild
neutrino-diff-2008-10-06-11-43-32.patch, Probierts bitte mal aus und schaut, ob man damit leben kann :wink:.
Jürgen_B
Interessierter
Interessierter
Beiträge: 30
Registriert: Montag 9. Juli 2007, 11:42

Re: Progressbars

Beitrag von Jürgen_B »

Ich hatte gestern ein neues JtG-Komplett-Image aufgespielt. Dabei hatte ich das Gefühl das die Progressbars sich in der Reihenfolge unterscheiden zwischen TV-Anzeige und LCD-Anzeige.

Stimmt das oder habe ich das falsch in Erinnerung.
GetAway
Contributor
Beiträge: 1509
Registriert: Donnerstag 27. Dezember 2007, 12:59

Re: Progressbars

Beitrag von GetAway »

stimmt
dbt
Administrator
Beiträge: 2675
Registriert: Donnerstag 28. September 2006, 19:18

Re: Progressbars

Beitrag von dbt »

Jip, sieht so aus.
bellum
bbs-Maintainer
Beiträge: 282
Registriert: Montag 23. Oktober 2006, 22:13

Re: Progressbars

Beitrag von bellum »

dbt hat geschrieben:Muss grad mal etwas Kleinkram ausmisten, habe deshalb einen Patch für Änderungen an den Fortschrittsbalken, die hier und da in der GUI auftauchen. Die sind quasi auf einen Nenner gebracht und sollten einheitlich aussehen und templatemäßig einzubauen gehen. Probierts bitte mal aus und schaut, ob man damit leben kann :wink:.
Deine Änderungen sind ja jetzt im cvs und gefallen mir auch recht gut. Ich habe auch die "runden" Ecken aktiviert. Diese sehen/sahen meiner Meinung für die Progressbar im Info- und Movieviewer echt "bescheiden" aus. Ich habe diese mir im Quelltext dann immer eckig gepatcht. :D

Das ging früher immer so:

Code: Alles auswählen

	if (showButtonBar)
	{
		int posy = BoxStartY+12;
		int height2= 20;
		//percent
		if (info_CurrentNext.flags & CSectionsdClient::epgflags::has_current)
		{
//			frameBuffer->paintBoxRel(BoxEndX - 112, posy + 2, 112, height2 - 4, COL_INFOBAR_PLUS_3, c_rad_small);	// fill passive
//			frameBuffer->paintBoxRel(BoxEndX - 112, posy + 2, runningPercent + 2, height2 - 4, COL_INFOBAR_PLUS_7, c_rad_small, CORNER_LEFT);	// fill(active)
			frameBuffer->paintBoxRel(BoxEndX - 112, posy + 2, 112, height2 - 4, COL_INFOBAR_PLUS_3, 0);	// fill passive
			frameBuffer->paintBoxRel(BoxEndX - 112, posy + 2, runningPercent + 2, height2 - 4, COL_INFOBAR_PLUS_7, 0, CORNER_LEFT);	// fill(active)
		}
Jetzt hat sich aber anscheinend der Code komplett geändert. Kannst Du mir einen Tipp geben wo ich ansetzen muss, damit meine Fortschritsbalken wieder eckig werden?

Danke und Gruß
bellum
dbt
Administrator
Beiträge: 2675
Registriert: Donnerstag 28. September 2006, 19:18

Re: Progressbars

Beitrag von dbt »

Ok man könnte dafür einen Parameter anbringen, wäre wohl am einfachsten, ist aber keine große Sache, dass mal schnell selbst zu ändern.
Hiermit kannst du das so aussehen lassen wie vorher, ohne Rahmen und Schatten, also einfach die Farbparamter auf 0 setzen, damit die ignoriert werden. Die Prozentanzeige (active, passive) ist immer ohne Rundungen. Den Parameter für die Höhe (progressbar_h) musst du evtl. etwas hochsetzen auf 16, weil ja dann der Rahmen fehlt, also 4 Zeilen dazurechnen. Das ist in dem Fall über die Schrift berechnet.

Code: Alles auswählen

Index: infoviewer.cpp
===================================================================
RCS file: /cvs/tuxbox/apps/tuxbox/neutrino/src/gui/infoviewer.cpp,v
retrieving revision 1.230
diff -u -r1.230 infoviewer.cpp
--- infoviewer.cpp	10 Oct 2008 22:35:27 -0000	1.230
+++ infoviewer.cpp	11 Oct 2008 11:29:32 -0000
@@ -1024,11 +1024,11 @@
 		if (info_CurrentNext.flags & CSectionsdClient::epgflags::has_current)
 		{
 			int progressbar_w = 112;
-			int progressbar_h = g_Font[SNeutrinoSettings::FONT_TYPE_INFOBAR_SMALL]->getHeight()-4;
+			int progressbar_h = g_Font[SNeutrinoSettings::FONT_TYPE_INFOBAR_SMALL]->getHeight();
 	
 			CProgressBar pb;
 			pb.paintProgressBar (BoxEndX - progressbar_w - SHADOW_OFFSET,	BoxStartY + 12, progressbar_w, progressbar_h, runningPercent, progressbar_w, 
-						      0, 0, COL_SILVER, COL_INFOBAR_SHADOW, "", COL_INFOBAR);
+						      0, 0, 0, 0, "", COL_INFOBAR);
 		}
 
 		// show red button
Um generell alle Rundungen für die Fortschrittsbalken wegzulassen geht auch das hier. Musst nur den Wert auf 0 setzen:

Code: Alles auswählen

Index: progressbar.cpp
===================================================================
RCS file: /cvs/tuxbox/apps/tuxbox/neutrino/src/gui/widget/progressbar.cpp,v
retrieving revision 1.1
diff -u -r1.1 progressbar.cpp
--- progressbar.cpp	10 Oct 2008 22:34:57 -0000	1.1
+++ progressbar.cpp	11 Oct 2008 11:34:12 -0000
@@ -63,7 +63,8 @@
 	int active_col = activebar_col != 0 ? activebar_col : COL_INFOBAR_PLUS_7;
 	int passive_col = passivebar_col != 0 ? passivebar_col : COL_INFOBAR_PLUS_3;
 	
-	int c_rad = g_settings.rounded_corners ? CORNER_RADIUS_SMALL : 0;								
+	//~ int c_rad = g_settings.rounded_corners ? CORNER_RADIUS_SMALL : 0;
+	int c_rad = 0;	
 	
 	// get icon size
 	int icon_w = 0, icon_h = 0;
bellum
bbs-Maintainer
Beiträge: 282
Registriert: Montag 23. Oktober 2006, 22:13

Re: Progressbars

Beitrag von bellum »

dbt hat geschrieben:Um generell alle Rundungen für die Fortschrittsbalken wegzulassen geht auch das hier. Musst nur den Wert auf 0 setzen:
Prima! Der zweite Ansatz gefällt mir sehr gut und hat auch prima funktioniert... Vielen Dank!

Beim flashen ist mir aufgefallen, dass jetzt zwar die Balken auf dem Fernseher und LCD stimmen, im LCD unten jedoch immer "schreibe Flash" steht was meines Erachtens aber Gesamtstatus (wie auf dem Fernseher) heißen muss.

Gruß bellum
dbt
Administrator
Beiträge: 2675
Registriert: Donnerstag 28. September 2006, 19:18

Re: Progressbars

Beitrag von dbt »

Mal schauen, sollte kein Problem sein.
mb405
Tuxboxer
Tuxboxer
Beiträge: 2331
Registriert: Donnerstag 24. März 2005, 21:52

Re: Progressbars

Beitrag von mb405 »

also hier kompilierts nicht durch

Code: Alles auswählen

powerpc-tuxbox-linux-gnu-g++ -Wall -mcpu=823 -mmultiple -mstring -meabi -pipe -Os -s -o .libs/neutrino neutrino.o -s  daemonc/libneutrino_daemonc.a gui/mb405/libneutrino_gui_mb405.a gui/libtimerlist.a gui/libneutrino_gui.a gui/bedit/libneutrino_gui_bedit.a gui/widget/libneutrino_gui_widget.a gui/widget/libneutrino_gui_widget2.a driver/pictureviewer/libneutrino_pictureviewer.a driver/libneutrino_driver.a driver/audiodec/libneutrino_driver_audiodec.a driver/libneutrino_driver_netfile.a system/libneutrino_system.a gui/libneutrino_gui2.a ../lib/controldclient/.libs/libcontroldclient.so -L/home/mb405/image/tuxbox-cvs/cdk/build_gcc/powerpc-tuxbox-linux-gnu/nof/libstdc++-v3/src -L/home/mb405/image/tuxbox-cvs/cdk/build_gcc/powerpc-tuxbox-linux-gnu/nof/libstdc++-v3/src/.libs -L/home/mb405/image/tuxbox-cvs/cdk/build_gcc/gcc/nof -L/home/mb405/image/tuxbox-cvs/cdk/build_gcc/gcc -L/home/mb405/image/dbox2/cdk/powerpc-tuxbox-linux-gnu/bin -L/home/mb405/image/dbox2/cdk/powerpc-tuxbox-linux-gnu/lib ../lib/sectionsdclient/.libs/libsectionsdclient.so ../lib/timerdclient/.libs/libtimerdclient.so ../lib/irsend/.libs/libirsend.so -L/home/mb405/image/dbox2/cdkroot/lib /home/mb405/image/dbox2/cdkroot/lib/libtuxbox-configfile.so /home/mb405/image/dbox2/cdkroot/lib/libtuxbox-connection.so /home/mb405/image/dbox2/cdkroot/lib/libtuxbox-cramfs.so /home/mb405/image/dbox2/cdkroot/lib/libcurl.so -ldl /home/mb405/image/dbox2/cdkroot/lib/liblircdclient.so /home/mb405/image/dbox2/cdkroot/lib/libtuxbox-net.so /home/mb405/image/dbox2/cdkroot/lib/libtuxbox-ucodes.so /home/mb405/image/dbox2/cdkroot/lib/libtuxbox-md5sum.so /home/mb405/image/dbox2/cdkroot/lib/libzapitclient.so /home/mb405/image/dbox2/cdkroot/lib/libtuxbox-eventserver.so /home/mb405/image/dbox2/cdkroot/lib/liblcddisplay.so /home/mb405/image/dbox2/cdkroot/lib/libpng12.so /home/mb405/image/dbox2/cdkroot/lib/libmad.so -lm /home/mb405/image/dbox2/cdkroot/lib/libid3tag.so -lz /home/mb405/image/dbox2/cdkroot/lib/libtuxbox-mpegtools.so /home/mb405/image/dbox2/cdkroot/lib/libvorbisidec.so /home/mb405/image/dbox2/cdkroot/lib/libtuxtxt.so /home/mb405/image/dbox2/cdkroot/lib/libtuxbox.so /home/mb405/image/dbox2/cdkroot/lib/libfreetype.so /home/mb405/image/dbox2/cdkroot/lib/libtuxbox-upnpclient.so -lresolv /home/mb405/image/dbox2/cdkroot/lib/libjpeg.so -lpthread /home/mb405/image/dbox2/cdkroot/lib/libtuxbox-xmltree.so /home/mb405/image/dbox2/cdk/powerpc-tuxbox-linux-gnu/lib/nof/libstdc++.so  -Wl,--rpath -Wl,/home/mb405/image/dbox2/cdkroot/lib -Wl,--rpath -Wl,/home/mb405/image/dbox2/cdk/powerpc-tuxbox-linux-gnu/lib/nof
gui/widget/libneutrino_gui_widget2.a(progresswindow.o)(.text+0xdc): In function `CProgressWindow::showGlobalStatus(unsigned int)':
: undefined reference to `CProgressBar::CProgressBar()'
gui/widget/libneutrino_gui_widget2.a(progresswindow.o)(.text+0xfc): In function `CProgressWindow::showGlobalStatus(unsigned int)':
: undefined reference to `CProgressBar::paintProgressBarDefault(int, int, int, int, int, int)'
gui/widget/libneutrino_gui_widget2.a(progresswindow.o)(.text+0x10c): In function `CProgressWindow::showGlobalStatus(unsigned int)':
: undefined reference to `CProgressBar::~CProgressBar()'
gui/widget/libneutrino_gui_widget2.a(progresswindow.o)(.text+0x11c): In function `CProgressWindow::showGlobalStatus(unsigned int)':
: undefined reference to `CProgressBar::~CProgressBar()'
gui/widget/libneutrino_gui_widget2.a(progresswindow.o)(.text+0x194): In function `CProgressWindow::showLocalStatus(unsigned int)':
: undefined reference to `CProgressBar::CProgressBar()'
gui/widget/libneutrino_gui_widget2.a(progresswindow.o)(.text+0x1b4): In function `CProgressWindow::showLocalStatus(unsigned int)':
: undefined reference to `CProgressBar::paintProgressBarDefault(int, int, int, int, int, int)'
gui/widget/libneutrino_gui_widget2.a(progresswindow.o)(.text+0x1c4): In function `CProgressWindow::showLocalStatus(unsigned int)':
: undefined reference to `CProgressBar::~CProgressBar()'
gui/widget/libneutrino_gui_widget2.a(progresswindow.o)(.text+0x1d4): In function `CProgressWindow::showLocalStatus(unsigned int)':
: undefined reference to `CProgressBar::~CProgressBar()'
collect2: ld returned 1 exit status
make[4]: *** [neutrino] Fehler 1
make[4]: Leaving directory `/home/mb405/image/tuxbox-cvs/apps/tuxbox/neutrino/src'
make[3]: *** [all-recursive] Fehler 1
make[3]: Leaving directory `/home/mb405/image/tuxbox-cvs/apps/tuxbox/neutrino/src'
make[2]: *** [all-recursive] Fehler 1
make[2]: Leaving directory `/home/mb405/image/tuxbox-cvs/apps/tuxbox/neutrino'
make[1]: *** [all] Fehler 2
make[1]: Leaving directory `/home/mb405/image/tuxbox-cvs/apps/tuxbox/neutrino'
make: *** [.deps/neutrino] Fehler 2
dbt
Administrator
Beiträge: 2675
Registriert: Donnerstag 28. September 2006, 19:18

Re: Progressbars

Beitrag von dbt »

Hast du mal in .../neutrino die config.status gelöscht?
mb405
Tuxboxer
Tuxboxer
Beiträge: 2331
Registriert: Donnerstag 24. März 2005, 21:52

Re: Progressbars

Beitrag von mb405 »

nein. sollte ich das tun ?
dbt
Administrator
Beiträge: 2675
Registriert: Donnerstag 28. September 2006, 19:18

Re: Progressbars

Beitrag von dbt »

progressbar.cpp sollte erst mal von make eingebunden werden, sonst fehlt ja die Referrenz dazu. Ich vermute, dass die geänderte makefile.am bei dir noch nicht greift.

Code: Alles auswählen

: undefined reference to ...
mb405
Tuxboxer
Tuxboxer
Beiträge: 2331
Registriert: Donnerstag 24. März 2005, 21:52

Re: Progressbars

Beitrag von mb405 »

also schon weiter oben meckert der rum

Code: Alles auswählen

progresswindow.cpp: In member function `virtual void CProgressWindow::showGlobalStatus(unsigned int)':
progresswindow.cpp:81: warning: comparison between signed and unsigned integer expressions
progresswindow.cpp: In member function `virtual void CProgressWindow::showLocalStatus(unsigned int)':
progresswindow.cpp:100: warning: comparison between signed and unsigned integer expressions
dbt
Administrator
Beiträge: 2675
Registriert: Donnerstag 28. September 2006, 19:18

Re: Progressbars

Beitrag von dbt »

Ist zwar nicht sauber, deswegen sollte aber nichts aussteigen. :gruebel: Hast du eine ordentliches Checkout gemacht?
mb405
Tuxboxer
Tuxboxer
Beiträge: 2331
Registriert: Donnerstag 24. März 2005, 21:52

Re: Progressbars

Beitrag von mb405 »

ich hab die 2 neuen dateien reinkopiert und die makefile.am und die beiden anderen editiert.
dann neutrino neu gebaut. dabei kamen die fehler.
GetAway
Contributor
Beiträge: 1509
Registriert: Donnerstag 27. Dezember 2007, 12:59

Re: Progressbars

Beitrag von GetAway »

Hi,

die einblendbare Uhr im Movieplayer ist noch eckig trotz Einstellung auf abgerundet.
dbt
Administrator
Beiträge: 2675
Registriert: Donnerstag 28. September 2006, 19:18

Re: Progressbars

Beitrag von dbt »

@mb405
klappts inzwischen? Scheint so, als wäre was beim "Handanlegen" falsch gelaufen.
@GetAway
hat zwar damit nichts zu tun, aber danke für den Hinweis :wink: Da ist sicher noch die eine oder andere Stelle wo das noch fehlt. Mit der Zeit kommt das schon raus...
mb405
Tuxboxer
Tuxboxer
Beiträge: 2331
Registriert: Donnerstag 24. März 2005, 21:52

Re: Progressbars

Beitrag von mb405 »

nein klappt nichts
habe alle dateien aus dem cvs genommen.
fehlanzeige.
dbt
Administrator
Beiträge: 2675
Registriert: Donnerstag 28. September 2006, 19:18

Re: Progressbars

Beitrag von dbt »

bellum hat geschrieben:
dbt hat geschrieben:@bellum
Meinst du die Sache mit dem Update-Status? Mir war als wäre das schon erledigt, oder hab' ich das vergessen? :gruebel: Oder was meinst du genau?
Das ist noch immer so und ich habe vorgestern frisch ausgecheckt...
Spielt man ein neues Image über neutrino ein so stimmt das LCD nicht mit dem Fernseher überein.
In der unteren Zeile auf dem LCD sollte "schreibe Flash" gegen "Gesamtstatus" ausgetauscht werden.
Ist ja nur ne Kleinigkeit und deswegen hast Du bestimmt vergessen den Fix einzuchecken... :wink:

Gruß bellum
Meinst du's so:
update.cpp-diff-2008-11-25-15-58-38.patch
Zuletzt geändert von dbt am Dienstag 25. November 2008, 16:05, insgesamt 1-mal geändert.
bellum
bbs-Maintainer
Beiträge: 282
Registriert: Montag 23. Oktober 2006, 22:13

Re: Progressbars

Beitrag von bellum »

dbt hat geschrieben:
bellum hat geschrieben:
dbt hat geschrieben:@bellum
Meinst du die Sache mit dem Update-Status? Mir war als wäre das schon erledigt, oder hab' ich das vergessen? :gruebel: Oder was meinst du genau?
Das ist noch immer so und ich habe vorgestern frisch ausgecheckt...
Spielt man ein neues Image über neutrino ein so stimmt das LCD nicht mit dem Fernseher überein.
In der unteren Zeile auf dem LCD sollte "schreibe Flash" gegen "Gesamtstatus" ausgetauscht werden.
Ist ja nur ne Kleinigkeit und deswegen hast Du bestimmt vergessen den Fix einzuchecken... :wink:

Gruß bellum
Meinst du's so:
update.cpp-diff-2008-11-24-19-01-57.patch
hat sich leider nichts geändert...

Spiele mal über dbox - 6 - blau - rot - grün ein neues Image ein und vergleiche die Anzeige auf dem Fernseher und dem LCD. Hier stimmen die jeweils untere Zeile nicht überein...

Gruß bellum
dbt
Administrator
Beiträge: 2675
Registriert: Donnerstag 28. September 2006, 19:18

Re: Progressbars

Beitrag von dbt »

bellum
bbs-Maintainer
Beiträge: 282
Registriert: Montag 23. Oktober 2006, 22:13

Re: Progressbars

Beitrag von bellum »

dbt hat geschrieben:Schau mal, ob das zusagt:
update.cpp-diff-2008-11-25-15-58-38.patch
jetzt ist es korrekt... :D
Danke und Gruß
bellum
mb405
Tuxboxer
Tuxboxer
Beiträge: 2331
Registriert: Donnerstag 24. März 2005, 21:52

Re: Progressbars

Beitrag von mb405 »

Irgendwie hat sich bei der progressbar und channelliste ein fehler eingeschlichen.
Ich hab mal extra den rahmen nicht mit malen lassen. Das sieht dan komisch aus.
progressbar

edit
in der progressbar.cpp die - raus und die + rein behebt das

Code: Alles auswählen

- frameBuffer->paintLine(pos_x+2 , pos_y+2, pos_x+pb_width-2, pos_y+pb_height-2, active_col); // zero line
+ frameBuffer->paintLine(pos_x+2 , pos_y+2, pos_x+pb_width-3, pos_y+pb_height-3, active_col); // zero line
behebt das
dbt
Administrator
Beiträge: 2675
Registriert: Donnerstag 28. September 2006, 19:18

Re: Progressbars

Beitrag von dbt »

bellum hat geschrieben: jetzt ist es korrekt... :D
Danke und Gruß
bellum
Wars nicht ganz. Die Beschriftung des Fensters wurde mit der Beschriftung vom Gesamtstausbalken gleichgesetzt. Ist so irgendwie nicht ganz sinnvoll. Das hab ich mal rausgenommen.
Nebenbei ist das Handling mit der Beschriftung irgendwie... ,könnte man auch mal irgendwann etwas überarbeiten... :wink: