Index: src/makedepend
===================================================================
--- src/makedepend	(revision 8818)
+++ src/makedepend	(working copy)
@@ -814,6 +814,9 @@
 fl_font.o: ../FL/Fl_Preferences.H ../FL/Fl_Image.H ../FL/Fl_Bitmap.H
 fl_font.o: ../FL/Fl_Image.H ../FL/Fl_Pixmap.H ../FL/Fl_RGB_Image.H Fl_Font.H
 fl_font.o: fl_font_xft.cxx
+fl_gleam.o: fl_gleam.cxx ../FL/Fl.H ../FL/Enumerations.H \
+  ../FL/Fl_Export.H ../FL/fl_draw.H flstring.h ../FL/Fl_Export.H \
+  ../config.h    
 fl_gtk.o: ../FL/Fl.H ../FL/fl_utf8.h ../FL/Fl_Export.H ../FL/fl_types.h
 fl_gtk.o: ../FL/Xutf8.h ../FL/Enumerations.H ../FL/fl_draw.H ../FL/x.H
 fl_gtk.o: ../FL/Fl_Window.H ../FL/Enumerations.H ../FL/Fl_Window.H
Index: src/fl_boxtype.cxx
===================================================================
--- src/fl_boxtype.cxx	(revision 8818)
+++ src/fl_boxtype.cxx	(working copy)
@@ -302,6 +302,14 @@
   {fl_down_box,		1,1,2,2,0}, // _FL_GTK_THIN_ROUND_DOWN_BOX,
   {fl_up_box,		2,2,4,4,0}, // _FL_GTK_ROUND_UP_BOX,
   {fl_down_box,		2,2,4,4,0}, // _FL_GTK_ROUND_DOWN_BOX,
+  {fl_up_box,		2,2,3,3,0}, // _FL_GLEAM_UP_BOX,
+  {fl_down_box,		2,2,3,3,0}, // _FL_GLEAM_DOWN_BOX,
+  {fl_up_frame,		2,2,3,3,0}, // _FL_GLEAM_UP_FRAME,
+  {fl_down_frame,	2,2,3,3,0}, // _FL_GLEAM_DOWN_FRAME,
+  {fl_up_box,		1,1,1,1,0}, // _FL_GLEAM_THIN_UP_BOX,
+  {fl_down_box,		1,1,1,1,0}, // _FL_GLEAM_THIN_DOWN_BOX,
+  {fl_up_box,		2,2,3,3,0}, // _FL_GLEAM_ROUND_UP_BOX,
+  {fl_down_box,		2,2,3,3,0}, // _FL_GLEAM_ROUND_DOWN_BOX,
   {fl_up_box,		3,3,6,6,0}, // FL_FREE_BOX+0
   {fl_down_box,		3,3,6,6,0}, // FL_FREE_BOX+1
   {fl_up_box,		3,3,6,6,0}, // FL_FREE_BOX+2
Index: src/Fl_get_system_colors.cxx
===================================================================
--- src/Fl_get_system_colors.cxx	(revision 8818)
+++ src/Fl_get_system_colors.cxx	(working copy)
@@ -235,9 +235,8 @@
   if (Fl::first_window()) key1 = Fl::first_window()->xclass();
   if (!key1) key1 = "fltk";
   if (!fl_bg2_set) getsyscolor("Text","background",	fl_bg2,	"#ffffff", Fl::background2);
-  if (!fl_fg_set) getsyscolor(key1,  "foreground",	fl_fg,	"#000000", Fl::foreground);
-  if (!fl_bg_set) getsyscolor(key1,  "background",	fl_bg,	"#c0c0c0", Fl::background);
-  getsyscolor("Text", "selectBackground", 0, "#000080", set_selection_color);
+  if (!fl_bg_set) getsyscolor(key1,  "background",    fl_bg,  "#e4e4e4", Fl::background);
+  getsyscolor("Text", "selectBackground", 0, "#3465a4", set_selection_color);
 }
 
 #endif
@@ -386,6 +385,28 @@
 
     // Use slightly thinner scrollbars...
     Fl::scrollbar_size(15);
+  } else if (scheme_ && !strcasecmp(scheme_, "gleam")) {
+    // Use a Gleam look-and-feel, similar to Clearlooks Glossy, made by Colin Jones
+    if (scheme_bg_) {
+      delete scheme_bg_;
+      scheme_bg_ = (Fl_Image *)0;
+    }
+
+    set_boxtype(FL_UP_FRAME,        FL_GLEAM_UP_FRAME);
+    set_boxtype(FL_DOWN_FRAME,      FL_GLEAM_DOWN_FRAME);
+    set_boxtype(FL_THIN_UP_FRAME,   FL_GLEAM_UP_FRAME);
+    set_boxtype(FL_THIN_DOWN_FRAME, FL_GLEAM_DOWN_FRAME);
+
+    set_boxtype(FL_UP_BOX,          FL_GLEAM_UP_BOX);
+    set_boxtype(FL_DOWN_BOX,        FL_GLEAM_DOWN_BOX);
+    set_boxtype(FL_THIN_UP_BOX,     FL_GLEAM_THIN_UP_BOX);
+    set_boxtype(FL_THIN_DOWN_BOX,   FL_GLEAM_THIN_DOWN_BOX);
+    set_boxtype(_FL_ROUND_UP_BOX,   FL_GLEAM_ROUND_UP_BOX);
+    set_boxtype(_FL_ROUND_DOWN_BOX, FL_GLEAM_ROUND_DOWN_BOX);
+
+    // Use slightly thinner scrollbars...
+    Fl::scrollbar_size(10);
+
   } else {
     // Use the standard FLTK look-n-feel...
     if (scheme_bg_) {
Index: src/Makefile
===================================================================
--- src/Makefile	(revision 8818)
+++ src/Makefile	(working copy)
@@ -143,6 +143,7 @@
 	fl_engraved_label.cxx \
 	fl_file_dir.cxx \
 	fl_font.cxx \
+	fl_gleam.cxx \
 	fl_gtk.cxx \
 	fl_labeltype.cxx \
 	fl_line_style.cxx \
Index: FL/Enumerations.H
===================================================================
--- FL/Enumerations.H	(revision 8818)
+++ FL/Enumerations.H	(working copy)
@@ -511,6 +511,14 @@
   _FL_GTK_THIN_DOWN_FRAME,	///< gtk+ version of FL_THIN_DOWN_FRAME
   _FL_GTK_ROUND_UP_BOX,		///< gtk+ version of FL_ROUND_UP_BOX
   _FL_GTK_ROUND_DOWN_BOX,	///< gtk+ version of FL_ROUND_DOWN_BOX
+  _FL_GLEAM_UP_BOX,
+  _FL_GLEAM_DOWN_BOX,
+  _FL_GLEAM_UP_FRAME, 
+  _FL_GLEAM_DOWN_FRAME,
+  _FL_GLEAM_THIN_UP_BOX,    
+  _FL_GLEAM_THIN_DOWN_BOX,
+  _FL_GLEAM_ROUND_UP_BOX,   
+  _FL_GLEAM_ROUND_DOWN_BOX,
   FL_FREE_BOXTYPE		///< the first free box type for creation of new box types
 };
 extern FL_EXPORT Fl_Boxtype fl_define_FL_ROUND_UP_BOX();
@@ -557,6 +565,16 @@
 #define FL_GTK_ROUND_UP_BOX (Fl_Boxtype)(fl_define_FL_GTK_UP_BOX()+8)
 #define FL_GTK_ROUND_DOWN_BOX (Fl_Boxtype)(fl_define_FL_GTK_UP_BOX()+9)
 
+extern FL_EXPORT Fl_Boxtype fl_define_FL_GLEAM_UP_BOX();
+#define FL_GLEAM_UP_BOX fl_define_FL_GLEAM_UP_BOX()
+#define FL_GLEAM_DOWN_BOX (Fl_Boxtype)(fl_define_FL_GLEAM_UP_BOX()+1)
+#define FL_GLEAM_UP_FRAME (Fl_Boxtype)(fl_define_FL_GLEAM_UP_BOX()+2)
+#define FL_GLEAM_DOWN_FRAME (Fl_Boxtype)(fl_define_FL_GLEAM_UP_BOX()+3)
+#define FL_GLEAM_THIN_UP_BOX (Fl_Boxtype)(fl_define_FL_GLEAM_UP_BOX()+4)
+#define FL_GLEAM_THIN_DOWN_BOX (Fl_Boxtype)(fl_define_FL_GLEAM_UP_BOX()+5)
+#define FL_GLEAM_ROUND_UP_BOX (Fl_Boxtype)(fl_define_FL_GLEAM_UP_BOX()+6)
+#define FL_GLEAM_ROUND_DOWN_BOX (Fl_Boxtype)(fl_define_FL_GLEAM_UP_BOX()+7)
+
 // conversions of box types to other boxtypes:
 /**
   Get the filled version of a frame.
Index: fluid/alignment_panel.fl
===================================================================
--- fluid/alignment_panel.fl	(revision 8818)
+++ fluid/alignment_panel.fl	(working copy)
@@ -196,6 +196,10 @@
         label {GTK+}
         xywh {10 10 35 25}
       }
+      MenuItem {} {
+        label {Gleam}
+        xywh {20 20 35 25}
+      }
     }
     Fl_Group {} {open
       xywh {116 43 220 126} labelfont 1 align 0
Index: fluid/alignment_panel.cxx
===================================================================
--- fluid/alignment_panel.cxx	(revision 8818)
+++ fluid/alignment_panel.cxx	(working copy)
@@ -162,6 +162,7 @@
  {"None", 0,  0, 0, 0, FL_NORMAL_LABEL, 0, 14, 0},
  {"Plastic", 0,  0, 0, 0, FL_NORMAL_LABEL, 0, 14, 0},
  {"GTK+", 0,  0, 0, 0, FL_NORMAL_LABEL, 0, 14, 0},
+ {"Gleam", 0,  0, 0, 0, FL_NORMAL_LABEL, 0, 14, 0},
  {0,0,0,0,0,0,0,0,0}
 };
 
Index: fluid/Fl_Widget_Type.cxx
===================================================================
--- fluid/Fl_Widget_Type.cxx	(revision 8818)
+++ fluid/Fl_Widget_Type.cxx	(working copy)
@@ -687,6 +687,12 @@
 {"GTK_THIN_DOWN_BOX",0,0,(void *)FL_GTK_THIN_DOWN_BOX},
 {"GTK_ROUND_UP_BOX",0,0,(void *)FL_GTK_ROUND_UP_BOX},
 {"GTK_ROUND_DOWN_BOX",0,0,(void *)FL_GTK_ROUND_DOWN_BOX},
+{"GLEAM_UP_BOX",0,0,(void *)FL_GLEAM_UP_BOX},
+{"GLEAM_DOWN_BOX",0,0,(void *)FL_GLEAM_DOWN_BOX},
+{"GLEAM_THIN_UP_BOX",0,0,(void *)FL_GLEAM_THIN_UP_BOX},
+{"GLEAM_THIN_DOWN_BOX",0,0,(void *)FL_GLEAM_THIN_DOWN_BOX},
+{"GLEAM_ROUND_UP_BOX",0,0,(void *)FL_GLEAM_ROUND_UP_BOX},
+{"GLEAM_ROUND_DOWN_BOX",0,0,(void *)FL_GLEAM_ROUND_DOWN_BOX},
 {0},
 {"frames",0,0,0,FL_SUBMENU},
 {"UP_FRAME",0,0,(void *)FL_UP_FRAME},
@@ -705,6 +711,8 @@
 {"GTK_DOWN_FRAME",0,0,(void *)FL_GTK_DOWN_FRAME},
 {"GTK_THIN_UP_FRAME",0,0,(void *)FL_GTK_THIN_UP_FRAME},
 {"GTK_THIN_DOWN_FRAME",0,0,(void *)FL_GTK_THIN_DOWN_FRAME},
+{"GLEAM_UP_FRAME",0,0,(void *)FL_GLEAM_UP_FRAME},
+{"GLEAM_DOWN_FRAME",0,0,(void *)FL_GLEAM_DOWN_FRAME},
 {0},
 {0}};
 
Index: fluid/fluid.cxx
===================================================================
--- fluid/fluid.cxx	(revision 8818)
+++ fluid/fluid.cxx	(working copy)
@@ -1753,6 +1753,9 @@
     case 3 : // GTK+
       Fl::scheme("gtk+");
       break;
+    case 4 : // Gleam
+      Fl::scheme("gleam");
+      break;
   }
 
   fluid_prefs.set("scheme", scheme_choice->value());
