Author: rpmcruz Date: Mon Dec 3 21:13:26 2007 New Revision: 42639 URL: http://svn.opensuse.org/viewcvs/yast?rev=42639&view=rev Log: * src/ygtkwizard.c: set label title centered (visible on our Package Selector as the icon is bigger than the text). * src/YGProgressBar.cc (YGMultiProgressBar): made it flow from left to right on horizontal multi progress bars. * tests/MultiProgressBar.ycp: replaced MultiProgressBarVer.ycp by this with both orientations. Added: trunk/gtk/unstable/tests/MultiProgressMeter.ycp Removed: trunk/gtk/unstable/tests/MultiProgressMeterVer.ycp Modified: trunk/gtk/unstable/ChangeLog trunk/gtk/unstable/src/YGProgressBar.cc trunk/gtk/unstable/src/YGWizard.cc trunk/gtk/unstable/src/ygtkwizard.c Modified: trunk/gtk/unstable/ChangeLog URL: http://svn.opensuse.org/viewcvs/yast/trunk/gtk/unstable/ChangeLog?rev=42639&... ============================================================================== --- trunk/gtk/unstable/ChangeLog (original) +++ trunk/gtk/unstable/ChangeLog Mon Dec 3 21:13:26 2007 @@ -1,3 +1,13 @@ +2007-12-03 Ricardo Cruz <rpmcruz@alunos.dcc.fc.up.pt> + + * src/ygtkwizard.c: set label title centered (visible on our Package Selector + as the icon is bigger than the text). + + * src/YGProgressBar.cc (YGMultiProgressBar): made it flow from left to right + on horizontal multi progress bars. + * tests/MultiProgressBar.ycp: replaced MultiProgressBarVer.ycp by this with + both orientations. + 2007-11-30 Ricardo Cruz <rpmcruz@alunos.dcc.fc.up.pt> * src/YGUI.cc: added Refresh button for the YWidget tree dialog. Modified: trunk/gtk/unstable/src/YGProgressBar.cc URL: http://svn.opensuse.org/viewcvs/yast/trunk/gtk/unstable/src/YGProgressBar.cc... ============================================================================== --- trunk/gtk/unstable/src/YGProgressBar.cc (original) +++ trunk/gtk/unstable/src/YGProgressBar.cc Mon Dec 3 21:13:26 2007 @@ -120,8 +120,7 @@ { // ygtk_ratio_box_set_homogeneous (YGTK_RATIO_BOX (getWidget()), TRUE); ygtk_ratio_box_set_spacing (YGTK_RATIO_BOX (getWidget()), 2); - - for (int i = segments()-1; i >= 0; i--) { + for (int s = 0; s < segments(); s++) { GtkWidget* bar = gtk_progress_bar_new(); gtk_progress_bar_set_orientation (GTK_PROGRESS_BAR (bar), horizontal ? GTK_PROGRESS_LEFT_TO_RIGHT : GTK_PROGRESS_BOTTOM_TO_TOP); @@ -132,7 +131,7 @@ else gtk_widget_set_size_request (bar, -1, min_size); ygtk_ratio_box_pack (YGTK_RATIO_BOX (getWidget()), bar, - maxValue (i), TRUE, TRUE, 0); + getSegmentWeight (s), TRUE, TRUE, 0); } ygtk_adj_size_set_max (YGTK_ADJ_SIZE (m_adj_size), horizontal ? 200 : 0, @@ -143,17 +142,29 @@ virtual void doUpdate() { GList* children = gtk_container_get_children (GTK_CONTAINER (getWidget())); - int n = segments()-1; - for (GList *i = children; i && n >= 0; i = i->next, n--) { + int s = 0; + for (GList *i = children; i && s < segments(); i = i->next, s++) { GtkProgressBar *bar = GTK_PROGRESS_BAR (i->data); - gfloat fraction = 0; - if (currentValue (n) != -1) - fraction = 1.0 - ((gfloat) currentValue(n) / maxValue(n)); - gtk_progress_bar_set_fraction (bar, fraction); + gtk_progress_bar_set_fraction (bar, getSegmentValue (s)); } g_list_free (children); } + int getSegmentWeight (int n) + { + if (vertical()) + n = (segments() - n) - 1; + return maxValue (n); + } + float getSegmentValue (int n) + { + if (vertical()) + n = (segments() - n) - 1; + if (currentValue (n) == -1) + return 0; + return 1.0 - (((float) currentValue (n)) / maxValue (n)); + } + YGWIDGET_IMPL_COMMON }; Modified: trunk/gtk/unstable/src/YGWizard.cc URL: http://svn.opensuse.org/viewcvs/yast/trunk/gtk/unstable/src/YGWizard.cc?rev=... ============================================================================== --- trunk/gtk/unstable/src/YGWizard.cc (original) +++ trunk/gtk/unstable/src/YGWizard.cc Mon Dec 3 21:13:26 2007 @@ -130,7 +130,7 @@ virtual ~YGWizard() { - // m_back/abort/next_button were added as children and will be freed by ~YContainerWidget + // m_back/abort/next_button are added as children and will be freed by ~YContainerWidget } /* The purpose of this function is to do some sanity checks, besides Modified: trunk/gtk/unstable/src/ygtkwizard.c URL: http://svn.opensuse.org/viewcvs/yast/trunk/gtk/unstable/src/ygtkwizard.c?rev... ============================================================================== --- trunk/gtk/unstable/src/ygtkwizard.c (original) +++ trunk/gtk/unstable/src/ygtkwizard.c Mon Dec 3 21:13:26 2007 @@ -312,7 +312,7 @@ wizard->m_title_image = gtk_image_new(); wizard->m_title_label = gtk_label_new(""); gtk_label_set_ellipsize (GTK_LABEL (wizard->m_title_label), PANGO_ELLIPSIZE_END); - gtk_misc_set_alignment (GTK_MISC (wizard->m_title_label), 0, 0); + gtk_misc_set_alignment (GTK_MISC (wizard->m_title_label), 0, 0.5); // setup label look gtk_widget_modify_fg (wizard->m_title_label, GTK_STATE_NORMAL, Added: trunk/gtk/unstable/tests/MultiProgressMeter.ycp URL: http://svn.opensuse.org/viewcvs/yast/trunk/gtk/unstable/tests/MultiProgressM... ============================================================================== --- trunk/gtk/unstable/tests/MultiProgressMeter.ycp (added) +++ trunk/gtk/unstable/tests/MultiProgressMeter.ycp Mon Dec 3 21:13:26 2007 @@ -0,0 +1,30 @@ +// Simple example for MultiProgressMeter +{ + UI::OpenDialog( + `VBox( + `VMultiProgressMeter(`id(`vprog), [ 100, 200, 500, 20, 100 ] ), + `HMultiProgressMeter(`id(`hprog), [ 100, 200, 500, 20, 100 ] ), + `PushButton(`opt(`default), "&Ok" ) + ) + ); + + UI::ChangeWidget(`vprog, `Values, [ 200, 200, 500, 20, 100 ] ); + UI::ChangeWidget(`hprog, `Values, [ 200, 200, 500, 20, 100 ] ); UI::UserInput(); + UI::ChangeWidget(`vprog, `Values, [ 0, 200, 500, 20, 100 ] ); + UI::ChangeWidget(`hprog, `Values, [ 0, 200, 500, 20, 100 ] ); UI::UserInput(); + UI::ChangeWidget(`vprog, `Values, [ 0, 100, 500, 20, 100 ] ); + UI::ChangeWidget(`hprog, `Values, [ 0, 100, 500, 20, 100 ] ); UI::UserInput(); + UI::ChangeWidget(`vprog, `Values, [ 0, 20, 500, 20, 100 ] ); + UI::ChangeWidget(`hprog, `Values, [ 0, 20, 500, 20, 100 ] ); UI::UserInput(); + UI::ChangeWidget(`vprog, `Values, [ 0, 0, 500, 20, 100 ] ); + UI::ChangeWidget(`hprog, `Values, [ 0, 0, 500, 20, 100 ] ); UI::UserInput(); + UI::ChangeWidget(`vprog, `Values, [ 0, 0, 400, 20, 100 ] ); + UI::ChangeWidget(`hprog, `Values, [ 0, 0, 400, 20, 100 ] ); UI::UserInput(); + UI::ChangeWidget(`vprog, `Values, [ 0, 0, 300, 20, 100 ] ); + UI::ChangeWidget(`hprog, `Values, [ 0, 0, 300, 20, 100 ] ); UI::UserInput(); + UI::ChangeWidget(`vprog, `Values, [ 0, 0, 200, 20, 100 ] ); + UI::ChangeWidget(`hprog, `Values, [ 0, 0, 200, 20, 100 ] ); UI::UserInput(); + UI::ChangeWidget(`vprog, `Values, [ 0, 0, 100, 20, 100 ] ); + UI::ChangeWidget(`hprog, `Values, [ 0, 0, 100, 20, 100 ] ); UI::UserInput(); +} + -- To unsubscribe, e-mail: yast-commit+unsubscribe@opensuse.org For additional commands, e-mail: yast-commit+help@opensuse.org