Forráskód Böngészése

LibGUI: Make view widgets fill background by default

Most clients will want background autofill, so let's make it the
default mode.
Andreas Kling 5 éve
szülő
commit
d17b42b28d

+ 1 - 0
Libraries/LibGUI/ItemView.cpp

@@ -39,6 +39,7 @@ namespace GUI {
 
 ItemView::ItemView()
 {
+    set_fill_with_background_color(true);
     set_background_role(ColorRole::Base);
     set_foreground_role(ColorRole::BaseText);
     horizontal_scrollbar().set_visible(false);

+ 3 - 1
Libraries/LibGUI/ListView.cpp

@@ -35,6 +35,7 @@ namespace GUI {
 
 ListView::ListView()
 {
+    set_fill_with_background_color(true);
     set_background_role(ColorRole::Base);
     set_foreground_role(ColorRole::BaseText);
 }
@@ -170,7 +171,8 @@ void ListView::paint_event(PaintEvent& event)
     };
 
     Gfx::Rect unpainted_rect(0, painted_item_index * item_height(), exposed_width, height());
-    painter.fill_rect(unpainted_rect, palette().color(background_role()));
+    if (fill_with_background_color())
+        painter.fill_rect(unpainted_rect, palette().color(background_role()));
 }
 
 int ListView::item_count() const

+ 5 - 2
Libraries/LibGUI/TableView.cpp

@@ -40,6 +40,7 @@ namespace GUI {
 
 TableView::TableView()
 {
+    set_fill_with_background_color(true);
     set_background_role(ColorRole::Base);
     set_foreground_role(ColorRole::BaseText);
 }
@@ -56,7 +57,8 @@ void TableView::paint_event(PaintEvent& event)
     Painter painter(*this);
     painter.add_clip_rect(frame_inner_rect());
     painter.add_clip_rect(event.rect());
-    painter.fill_rect(event.rect(), widget_background_color);
+    if (fill_with_background_color())
+        painter.fill_rect(event.rect(), widget_background_color);
     painter.translate(frame_thickness(), frame_thickness());
     painter.translate(-horizontal_scrollbar().value(), -vertical_scrollbar().value());
 
@@ -144,7 +146,8 @@ void TableView::paint_event(PaintEvent& event)
     };
 
     Gfx::Rect unpainted_rect(0, header_height() + painted_item_index * item_height(), exposed_width, height());
-    painter.fill_rect(unpainted_rect, widget_background_color);
+    if (fill_with_background_color())
+        painter.fill_rect(unpainted_rect, widget_background_color);
 
     // Untranslate the painter vertically and do the column headers.
     painter.translate(0, vertical_scrollbar().value());

+ 3 - 1
Libraries/LibGUI/TreeView.cpp

@@ -53,6 +53,7 @@ TreeView::MetadataForIndex& TreeView::ensure_metadata_for_index(const ModelIndex
 
 TreeView::TreeView()
 {
+    set_fill_with_background_color(true);
     set_background_role(ColorRole::Base);
     set_foreground_role(ColorRole::BaseText);
     set_size_columns_to_fit_content(true);
@@ -173,7 +174,8 @@ void TreeView::paint_event(PaintEvent& event)
     Painter painter(*this);
     painter.add_clip_rect(frame_inner_rect());
     painter.add_clip_rect(event.rect());
-    painter.fill_rect(event.rect(), palette().color(background_role()));
+    if (fill_with_background_color())
+        painter.fill_rect(event.rect(), palette().color(background_role()));
 
     if (!model())
         return;