[Aptitude-svn-commit] r3324 - in branches/aptitude-0.3/aptitude: . src/vscreen

Daniel Burrows dburrows@costa.debian.org
Mon, 06 Jun 2005 18:19:13 +0000


Author: dburrows
Date: Mon Jun  6 18:19:11 2005
New Revision: 3324

Modified:
   branches/aptitude-0.3/aptitude/ChangeLog
   branches/aptitude-0.3/aptitude/src/vscreen/vs_util.cc
   branches/aptitude-0.3/aptitude/src/vscreen/vs_util.h
Log:
Update the dialog utility functions to use styles instead of attributes.

Modified: branches/aptitude-0.3/aptitude/ChangeLog
==============================================================================
--- branches/aptitude-0.3/aptitude/ChangeLog	(original)
+++ branches/aptitude-0.3/aptitude/ChangeLog	Mon Jun  6 18:19:11 2005
@@ -1,8 +1,13 @@
 2005-06-06  Daniel Burrows  <dburrows@debian.org>
 
+	* src/vscreen/vs_util.cc, src/vscreen/vs_util.h:
+
+	Update the vscreen dialog utilities to use styles instead of
+	attributes.
+
 	* src/vscreen/vs_scrollbar.cc, src/vscreen/vs_scrollbar.h:
 
-	Update the scrollbar widget to the next display protocol.
+	Update the scrollbar widget to the new display protocol.
 
 	* src/vscreen/vs_text_layout.h:
 

Modified: branches/aptitude-0.3/aptitude/src/vscreen/vs_util.cc
==============================================================================
--- branches/aptitude-0.3/aptitude/src/vscreen/vs_util.cc	(original)
+++ branches/aptitude-0.3/aptitude/src/vscreen/vs_util.cc	Mon Jun  6 18:19:11 2005
@@ -22,15 +22,13 @@
 using namespace std;
 
 vscreen_widget *vs_dialog_ok(vscreen_widget *w, slot0arg okslot, string label,
-			     int attr)
+			     const style &st)
 {
   vs_center *center=new vs_center;
 
   vs_table *table=new vs_table;
-  table->set_bg(attr);
 
   vs_button *okbutton=new vs_button(label);
-  okbutton->set_bg(attr);
 
   okbutton->pressed.connect(sigc::mem_fun(*center, &vscreen_widget::destroy));
   if(okslot)
@@ -40,14 +38,14 @@
   table->add_widget(new vs_center(okbutton), 1, 0, 1, 1, false, false);
 
   vs_frame *frame=new vs_frame(table);
-  frame->set_bg(attr);
 
   center->add_widget(frame);
+  frame->set_bg_style(st);
   return center;
 }
 
 vscreen_widget *vs_dialog_ok(fragment *msg, slot0arg okslot, string label,
-			     int attr, bool scrollbar)
+			     const style &st, bool scrollbar)
 {
   vscreen_widget *w;
 
@@ -59,9 +57,6 @@
       vs_text_layout *l=new vs_text_layout(msg);
       vs_scrollbar *s=new vs_scrollbar(vs_scrollbar::VERTICAL);
 
-      l->set_bg(attr);
-      s->set_bg(attr);
-
       t->add_widget(l, 0, 0, 1, 1, true, true);
       t->add_widget_opts(s, 0, 1, 1, 1,
 			 vs_table::ALIGN_RIGHT,
@@ -73,33 +68,30 @@
   else
     w=new vs_text_layout(msg);
 
-  w->set_bg(attr);
-
-  return vs_dialog_ok(w, okslot, label, attr);
+  return vs_dialog_ok(w, okslot, label, st);
 }
 
-vscreen_widget *vs_dialog_ok(fragment *msg, slot0arg okslot, int attr, bool scrollbar)
+vscreen_widget *vs_dialog_ok(fragment *msg, slot0arg okslot, const style &st, bool scrollbar)
 {
-  return vs_dialog_ok(msg, okslot, _("Ok"), attr, scrollbar);
+  return vs_dialog_ok(msg, okslot, _("Ok"), st, scrollbar);
 }
 
 vscreen_widget *vs_dialog_ok(fragment *msg, slot0arg okslot, bool scrollbar)
 {
-  return vs_dialog_ok(msg, okslot, get_color("DefaultWidgetBackground")|A_REVERSE, scrollbar);
+  return vs_dialog_ok(msg, okslot, style_attrs_flip(A_REVERSE), scrollbar);
 }
 
 vscreen_widget *vs_dialog_ok(string msg, slot0arg okslot,
-			     int attr)
+			     const style &st)
 {
-  vscreen_widget *l=new vs_label(msg, attr);
-  l->set_bg(attr);
+  vscreen_widget *l=new vs_label(msg);
 
-  return vs_dialog_ok(l, okslot, _("Ok"), attr);
+  return vs_dialog_ok(l, okslot, _("Ok"), st);
 }
 
 vscreen_widget *vs_dialog_ok(string msg, slot0arg okslot)
 {
-  return vs_dialog_ok(msg, okslot, get_color("DefaultWidgetBackground")|A_REVERSE);
+  return vs_dialog_ok(msg, okslot, style_attrs_flip(A_REVERSE));
 }
 
 vscreen_widget *vs_dialog_yesno(vscreen_widget *widget,
@@ -107,18 +99,15 @@
 				string yeslabel,
 				slot0arg noslot,
 				string nolabel,
-				int attr,
+				const style &st,
 				bool deflt)
 {
   vs_center *center=new vs_center;
 
   vs_table *table=new vs_table;
-  table->set_bg(attr);
 
   vs_button *yesbutton=new vs_button(yeslabel);
-  yesbutton->set_bg(attr);
   vs_button *nobutton=new vs_button(nolabel);
-  nobutton->set_bg(attr);
 
   yesbutton->pressed.connect(sigc::mem_fun(*center, &vscreen_widget::destroy));
   nobutton->pressed.connect(sigc::mem_fun(*center, &vscreen_widget::destroy));
@@ -146,7 +135,7 @@
     table->focus_widget(nobutton);
 
   vs_frame *frame=new vs_frame(table);
-  frame->set_bg(attr);
+  frame->set_bg_style(st);
 
   center->add_widget(frame);
 
@@ -158,21 +147,21 @@
 				string yeslabel,
 				slot0arg noslot,
 				string nolabel,
-				int attr,
+				const style &st,
 				bool deflt)
 {
-  vscreen_widget *txt=new vs_label(msg, attr);
+  vscreen_widget *txt=new vs_label(msg);
 
-  return vs_dialog_yesno(txt, yesslot, yeslabel, noslot, nolabel, attr, deflt);
+  return vs_dialog_yesno(txt, yesslot, yeslabel, noslot, nolabel, st, deflt);
 }
 
 vscreen_widget *vs_dialog_yesno(string msg,
 				slot0arg yesslot,
 				slot0arg noslot,
-				int attr,
+				const style &st,
 				bool deflt)
 {
-  return vs_dialog_yesno(msg, yesslot, _("Yes"), noslot, _("No"), attr, deflt);
+  return vs_dialog_yesno(msg, yesslot, _("Yes"), noslot, _("No"), st, deflt);
 }
 
 vscreen_widget *vs_dialog_yesno(string msg,
@@ -183,7 +172,7 @@
   return vs_dialog_yesno(msg,
 			 yesslot,
 			 noslot,
-			 get_color("DefaultWidgetBackground")|A_REVERSE,
+			 style_attrs_flip(A_REVERSE),
 			 deflt);
 }
 
@@ -197,7 +186,7 @@
   return vs_dialog_yesno(msg,
 			 yesslot,
 			 noslot,
-			 get_color("DefaultWidgetBackground")|A_REVERSE,
+			 style_attrs_flip(A_REVERSE),
 			 scrollbar,
 			 deflt);
 }
@@ -205,11 +194,11 @@
 vscreen_widget *vs_dialog_yesno(fragment *msg,
 				slot0arg yesslot,
 				slot0arg noslot,
-				int attr,
+				const style &st,
 				bool scrollbar,
 				bool deflt)
 {
-  return vs_dialog_yesno(msg, yesslot, _("Yes"), noslot, _("No"), attr,
+  return vs_dialog_yesno(msg, yesslot, _("Yes"), noslot, _("No"), st,
 			 scrollbar, deflt);
 }
 
@@ -218,7 +207,7 @@
 				std::string yeslabel,
 				slot0arg noslot,
 				std::string nolabel,
-				int attr,
+				const style &st,
 				bool scrollbar,
 				bool deflt)
 {
@@ -232,9 +221,6 @@
       vs_text_layout *l=new vs_text_layout(msg);
       vs_scrollbar *s=new vs_scrollbar(vs_scrollbar::VERTICAL);
 
-      l->set_bg(attr);
-      s->set_bg(attr);
-
       t->add_widget(l, 0, 0, 1, 1, true, true);
       t->add_widget_opts(s, 0, 1, 1, 1,
 			 vs_table::ALIGN_RIGHT,
@@ -246,15 +232,13 @@
   else
     w=new vs_text_layout(msg);
 
-  w->set_bg(attr);
-
-  return vs_dialog_yesno(w, yesslot, yeslabel, noslot, nolabel, attr, deflt);
+  return vs_dialog_yesno(w, yesslot, yeslabel, noslot, nolabel, st, deflt);
 }
 
 vscreen_widget *vs_dialog_fileview(string fn,
 				   slot0arg okslot,
 				   slotarg<sigc::slot1<void, vs_pager *> > searchslot,
-				   int attr)
+				   const style &st)
 {
   vs_file_pager *p=new vs_file_pager(fn);
   vs_scrollbar *scrollbar=new vs_scrollbar(vs_scrollbar::VERTICAL, 0, 0);
@@ -269,9 +253,7 @@
   if(okslot)
     b->pressed.connect(*okslot);
 
-  b->set_bg(attr);
-  f->set_bg(attr);
-  t->set_bg(attr);
+  f->set_bg_style(st);
 
   t->add_widget_opts(p, 0, 0, 1, 1,
 		     vs_table::SHRINK | vs_table::ALIGN_CENTER,
@@ -299,7 +281,7 @@
 				   slotarg<sigc::slot1<void, vs_pager *> > searchslot)
 {
   return vs_dialog_fileview(fn, okslot, searchslot,
-			    get_color("DefaultWidgetBackground")|A_REVERSE);
+			    style_attrs_flip(A_REVERSE));
 }
 
 static void do_dialog_string(string s,
@@ -321,7 +303,7 @@
 				 slotarg<sigc::slot0<void> > cancel_slot,
 				 slotarg<sigc::slot1<void, string> > changed_slot,
 				 vs_editline::history_list *history,
-				 int attr)
+				 const style &st)
 {
   vs_table *t=new vs_table;
   vs_editline *e=new vs_editline(rootwin.getmaxx()-6, "", deflt, history);
@@ -329,11 +311,7 @@
   vs_frame *f=new vs_frame(t);
   vs_center *c=new vs_center(f);
 
-  msg->set_bg(attr);
-  f->set_bg(attr);
-  t->set_bg(attr);
-  bok->set_bg(attr);
-  bcancel->set_bg(attr);
+  f->set_bg_style(st);
 
   t->add_widget(msg, 0, 0, 1, 2);
   t->add_widget(e, 1, 0, 1, 2);
@@ -370,7 +348,7 @@
 				 slotarg<sigc::slot0<void> > cancel_slot,
 				 slotarg<sigc::slot1<void, string> > changed_slot,
 				 vs_editline::history_list *history,
-				 int attr)
+				 const style &st)
 {
   return vs_dialog_string(new vs_label(msg),
 			  deflt,
@@ -378,7 +356,7 @@
 			  cancel_slot,
 			  changed_slot,
 			  history,
-			  attr);
+			  st);
 }
 
 vscreen_widget *vs_dialog_string(string msg,
@@ -387,15 +365,15 @@
 				 slotarg<sigc::slot0<void> > cancel_slot,
 				 slotarg<sigc::slot1<void, string> > changed_slot,
 				 vs_editline::history_list *history,
-				 int attr)
+				 const style &st)
 {
-  return vs_dialog_string(new vs_label(msg, attr),
+  return vs_dialog_string(new vs_label(msg),
 			  deflt,
 			  slot,
 			  cancel_slot,
 			  changed_slot,
 			  history,
-			  attr);
+			  st);
 }
 
 vscreen_widget *vs_dialog_string(string msg,
@@ -411,5 +389,5 @@
 			  cancel_slot,
 			  changed_slot,
 			  history,
-			  get_color("DefaultWidgetBackground")|A_REVERSE);
+			  style_attrs_flip(A_REVERSE));
 }

Modified: branches/aptitude-0.3/aptitude/src/vscreen/vs_util.h
==============================================================================
--- branches/aptitude-0.3/aptitude/src/vscreen/vs_util.h	(original)
+++ branches/aptitude-0.3/aptitude/src/vscreen/vs_util.h	Mon Jun  6 18:19:11 2005
@@ -14,6 +14,7 @@
 #include <string>
 
 class fragment;
+class style;
 class vscreen_widget;
 class vs_pager;
 
@@ -32,18 +33,18 @@
  */
 vscreen_widget *vs_dialog_ok(vscreen_widget *widget,
 			     slot0arg okslot, std::string label,
-			     int attr);
+			     const style &st);
 
 vscreen_widget *vs_dialog_ok(fragment *msg, slot0arg okslot=NULL, bool scrollbar=false);
-vscreen_widget *vs_dialog_ok(fragment *msg, slot0arg okslot, int attr, bool scrollbar=false);
+vscreen_widget *vs_dialog_ok(fragment *msg, slot0arg okslot, const style &st, bool scrollbar=false);
 vscreen_widget *vs_dialog_ok(fragment *msg, slot0arg okslot, std::string label,
-			     int attr, bool scrollbar=false);
+			     const style &st, bool scrollbar=false);
 
 vscreen_widget *vs_dialog_ok(std::string msg, slot0arg okslot=NULL);
 vscreen_widget *vs_dialog_ok(std::string msg, slot0arg okslot,
-			     int attr);
+			     const style &st);
 vscreen_widget *vs_dialog_ok(std::string msg, slot0arg okslot, std::string label,
-			     int attr);
+			     const style &st);
 
 /** Create a dialog box with two buttons, labelled "yes" and "no".
  *
@@ -68,7 +69,7 @@
 				std::string yeslabel,
 				slot0arg noslot,
 				std::string nolabel,
-				int attr,
+				const style &st,
 				bool deflt=true);
 
 vscreen_widget *vs_dialog_yesno(fragment *msg,
@@ -79,7 +80,7 @@
 vscreen_widget *vs_dialog_yesno(fragment *msg,
 				slot0arg yesslot,
 				slot0arg noslot,
-				int attr,
+				const style &st,
 				bool scrollbar=false,
 				bool deflt=true);
 vscreen_widget *vs_dialog_yesno(fragment *msg,
@@ -87,7 +88,7 @@
 				std::string yeslabel,
 				slot0arg noslot,
 				std::string nolabel,
-				int attr,
+				const style &st,
 				bool scrollbar=false,
 				bool deflt=true);
 
@@ -98,14 +99,14 @@
 vscreen_widget *vs_dialog_yesno(std::string msg,
 				slot0arg yesslot,
 				slot0arg noslot,
-				int attr,
+				const style &st,
 				bool deflt=true);
 vscreen_widget *vs_dialog_yesno(std::string msg,
 				slot0arg yesslot,
 				std::string yeslabel,
 				slot0arg noslot,
 				std::string nolabel,
-				int attr,
+				const style &st,
 				bool deflt=true);
 
 // The "searchslot" is called when a search is being conducted.
@@ -115,7 +116,7 @@
 vscreen_widget *vs_dialog_fileview(std::string fn,
 				   slot0arg okslot,
 				   slotarg<sigc::slot1<void, vs_pager *> > searchslot,
-				   int attr);
+				   const style &st);
 
 vscreen_widget *vs_dialog_string(fragment *msg,
 				 std::string deflt,
@@ -123,7 +124,7 @@
 				 slotarg<sigc::slot0<void> > cancel_slot,
 				 slotarg<sigc::slot1<void, std::string> > changed_slot,
 				 vs_editline::history_list *history,
-				 int attr);
+				 const style &st);
 
 vscreen_widget *vs_dialog_string(std::string msg,
 				 std::string deflt,
@@ -131,7 +132,7 @@
 				 slotarg<sigc::slot0<void> > cancel_slot,
 				 slotarg<sigc::slot1<void, std::string> > changed_slot,
 				 vs_editline::history_list *history,
-				 int attr);
+				 const style &st);
 
 vscreen_widget *vs_dialog_string(std::string msg,
 				 std::string deflt,