Enlightenment CVS committal Author : kwo Project : e16 Module : e
Dir : e16/e/src Modified Files: E.h conf.h config.c iclass.c settings.c setup.c Log Message: Selective Transparency - configuration (Jaron Omega <[EMAIL PROTECTED]>). =================================================================== RCS file: /cvsroot/enlightenment/e16/e/src/E.h,v retrieving revision 1.282 retrieving revision 1.283 diff -u -3 -r1.282 -r1.283 --- E.h 7 Jun 2004 16:46:07 -0000 1.282 +++ E.h 14 Jun 2004 17:02:28 -0000 1.283 @@ -78,6 +78,10 @@ #define ST_PAGER 9 #define ST_WARPLIST 10 +#define ICLASS_ATTR_OPAQUE 0 /* No transparency */ +#define ICLASS_ATTR_BG 1 /* Background transparency */ +#define ICLASS_ATTR_GLASS 2 /* Glass transparency */ + #else #include <Imlib.h> @@ -1229,6 +1233,21 @@ char warpiconified; char warpfocused; } warplist; +#if USE_IMLIB2 + struct + { + int border; + int widget; + int iconbox; + int menu; + int menu_item; + int tooltip; + int dialog; + int hilight; + int pager; + int warplist; + } st_trans; +#endif int deskmode; int movemode; int resizemode; @@ -2538,6 +2557,7 @@ void SettingsAudio(void); void SettingsSpecialFX(void); void SettingsBackground(Background * bg); +void SettingsSelectiveTransparency(void); void SettingsIconbox(char *name); void SettingsGroups(EWin * ewin); void SettingsDefaultGroupControl(void); =================================================================== RCS file: /cvsroot/enlightenment/e16/e/src/conf.h,v retrieving revision 1.32 retrieving revision 1.33 diff -u -3 -r1.32 -r1.33 --- conf.h 11 Feb 2004 15:39:12 -0000 1.32 +++ conf.h 14 Jun 2004 17:02:29 -0000 1.33 @@ -143,6 +143,17 @@ #define CONTROL_GROUP_SWAPMOVE 1372 #define CONTROL_THEME_TRANSPARENCY 1373 +#define CONTROL_ST_BORDER 1375 +#define CONTROL_ST_WIDGET 1376 +#define CONTROL_ST_ICONBOX 1377 +#define CONTROL_ST_MENU 1378 +#define CONTROL_ST_MENU_ITEM 1379 +#define CONTROL_ST_TOOLTIP 1380 +#define CONTROL_ST_DIALOG 1381 +#define CONTROL_ST_HILIGHT 1382 +#define CONTROL_ST_PAGER 1383 +#define CONTROL_ST_WARPLIST 1384 + #define ICLASS_NAME 350 #define ICLASS_NORMAL 351 #define ICLASS_CLICKED 352 =================================================================== RCS file: /cvsroot/enlightenment/e16/e/src/config.c,v retrieving revision 1.103 retrieving revision 1.104 diff -u -3 -r1.103 -r1.104 --- config.c 7 May 2004 22:29:30 -0000 1.103 +++ config.c 14 Jun 2004 17:02:29 -0000 1.104 @@ -902,9 +902,41 @@ case CONTROL_USER_BG: Conf.backgrounds.user = i2; break; +#ifdef USE_IMLIB2 case CONTROL_THEME_TRANSPARENCY: Conf.theme.transparency = i2; break; + case CONTROL_ST_BORDER: + Conf.st_trans.border = i2; + break; + case CONTROL_ST_WIDGET: + Conf.st_trans.widget = i2; + break; + case CONTROL_ST_ICONBOX: + Conf.st_trans.iconbox = i2; + break; + case CONTROL_ST_MENU: + Conf.st_trans.menu = i2; + break; + case CONTROL_ST_MENU_ITEM: + Conf.st_trans.menu_item = i2; + break; + case CONTROL_ST_TOOLTIP: + Conf.st_trans.tooltip = i2; + break; + case CONTROL_ST_DIALOG: + Conf.st_trans.dialog = i2; + break; + case CONTROL_ST_HILIGHT: + Conf.st_trans.hilight = i2; + break; + case CONTROL_ST_PAGER: + Conf.st_trans.pager = i2; + break; + case CONTROL_ST_WARPLIST: + Conf.st_trans.warplist = i2; + break; +#endif case CONTROL_DOCKSTARTPOS: sscanf(s, "%*s %d %d ", &Conf.dock.startx, &Conf.dock.starty); break; @@ -3898,7 +3930,19 @@ fprintf(autosavefile, "1368 %i\n", (int)Conf.tooltips.showroottooltip); fprintf(autosavefile, "1369 %i %i %i\n", (int)Conf.pagers.sel_button, (int)Conf.pagers.win_button, (int)Conf.pagers.menu_button); +#ifdef USE_IMLIB2 fprintf(autosavefile, "1373 %i\n", (int)Conf.theme.transparency); + fprintf(autosavefile, "1375 %i\n", (int)Conf.st_trans.border); + fprintf(autosavefile, "1376 %i\n", (int)Conf.st_trans.widget); + fprintf(autosavefile, "1377 %i\n", (int)Conf.st_trans.iconbox); + fprintf(autosavefile, "1378 %i\n", (int)Conf.st_trans.menu); + fprintf(autosavefile, "1379 %i\n", (int)Conf.st_trans.menu_item); + fprintf(autosavefile, "1380 %i\n", (int)Conf.st_trans.tooltip); + fprintf(autosavefile, "1381 %i\n", (int)Conf.st_trans.dialog); + fprintf(autosavefile, "1382 %i\n", (int)Conf.st_trans.hilight); + fprintf(autosavefile, "1383 %i\n", (int)Conf.st_trans.pager); + fprintf(autosavefile, "1384 %i\n", (int)Conf.st_trans.warplist); +#endif #ifdef HAS_XINERAMA fprintf(autosavefile, "2013 %i\n", (int)Conf.extra_head); #endif =================================================================== RCS file: /cvsroot/enlightenment/e16/e/src/iclass.c,v retrieving revision 1.38 retrieving revision 1.39 diff -u -3 -r1.38 -r1.39 --- iclass.c 3 Jun 2004 18:04:44 -0000 1.38 +++ iclass.c 14 Jun 2004 17:02:30 -0000 1.39 @@ -394,11 +394,52 @@ { int apply, trans; int ww, hh; + int flags; PmapMask pmml; #ifdef ENABLE_TRANSPARENCY Imlib_Image *ii = NULL; + switch (image_type) + { + case ST_UNKNWN: + flags = ICLASS_ATTR_OPAQUE; + break; + case ST_BORDER: + flags = Conf.st_trans.border; + break; + case ST_WIDGET: + flags = Conf.st_trans.widget; + break; + case ST_ICONBOX: + flags = Conf.st_trans.iconbox; + break; + case ST_MENU: + flags = Conf.st_trans.menu; + break; + case ST_MENU_ITEM: + flags = Conf.st_trans.menu_item; + break; + case ST_TOOLTIP: + flags = Conf.st_trans.tooltip; + break; + case ST_DIALOG: + flags = Conf.st_trans.dialog; + break; + case ST_HILIGHT: + flags = Conf.st_trans.hilight; + break; + case ST_PAGER: + flags = Conf.st_trans.pager; + break; + case ST_WARPLIST: + flags = Conf.st_trans.warplist; + break; + default: + flags = ICLASS_ATTR_OPAQUE; + break; + } + /* * is->transparent flags: * 0x01: Use desktop background pixmap as base @@ -428,7 +469,7 @@ imlib_image_has_alpha())); #ifdef ENABLE_TRANSPARENCY - if (trans) + if (flags != ICLASS_ATTR_OPAQUE) { Window cr; Pixmap bg; @@ -440,7 +481,7 @@ { /* Create the background base image */ bg = BackgroundGetPixmap(desks.desk[desks.current].bg); - if ((is->transparent & 0x02) != 0 || bg == None) + if (flags == ICLASS_ATTR_GLASS || bg == None) bg = VRoot.win; imlib_context_set_drawable(bg); ii = imlib_create_image_from_drawable(0, xx, yy, w, h, 1); @@ -461,13 +502,19 @@ { imlib_context_set_blend(1); #ifdef ENABLE_THEME_TRANSPARENCY - imlib_context_set_color_modifier(icm); + if (flags != ICLASS_ATTR_OPAQUE) + { + imlib_context_set_color_modifier(icm); + } #endif imlib_context_set_operation(IMLIB_OP_COPY); imlib_blend_image_onto_image(is->im, 0, 0, 0, ww, hh, 0, 0, w, h); imlib_context_set_blend(0); #ifdef ENABLE_THEME_TRANSPARENCY - imlib_context_set_color_modifier(NULL); + if (flags != ICLASS_ATTR_OPAQUE) + { + imlib_context_set_color_modifier(NULL); + } #if 0 /* Do we ever need to free it? */ imlib_free_color_modifier(); #endif =================================================================== RCS file: /cvsroot/enlightenment/e16/e/src/settings.c,v retrieving revision 1.110 retrieving revision 1.111 diff -u -3 -r1.110 -r1.111 --- settings.c 6 Jun 2004 16:38:17 -0000 1.110 +++ settings.c 14 Jun 2004 17:02:30 -0000 1.111 @@ -2443,6 +2443,16 @@ static char tmp_userbg; static int tmp_bg_timeout; static int tmp_theme_transparency; +static int tmp_st_border; +static int tmp_st_widget; +static int tmp_st_menu; +static int tmp_st_menu_item; +static int tmp_st_tooltip; +static int tmp_st_dialog; +static int tmp_st_hilight; +static int tmp_st_pager; +static int tmp_st_iconbox; +static int tmp_st_warplist; static void BG_RedrawView(char nuke_old); @@ -2456,9 +2466,22 @@ Conf.backgrounds.timeout = tmp_bg_timeout; Conf.backgrounds.hiquality = tmp_hiq; Conf.backgrounds.user = tmp_userbg; + #ifdef ENABLE_THEME_TRANSPARENCY + Conf.st_trans.border = tmp_st_border; + Conf.st_trans.widget = tmp_st_widget; + Conf.st_trans.menu = tmp_st_menu; + Conf.st_trans.menu_item = tmp_st_menu_item; + Conf.st_trans.tooltip = tmp_st_tooltip; + Conf.st_trans.dialog = tmp_st_dialog; + Conf.st_trans.hilight = tmp_st_hilight; + Conf.st_trans.pager = tmp_st_pager; + Conf.st_trans.iconbox = tmp_st_iconbox; + Conf.st_trans.warplist = tmp_st_warplist; + TransparencySet(tmp_theme_transparency); #endif + ESetColor(&(tmp_bg->bg_solid), tmp_bg_r, tmp_bg_g, tmp_bg_b); tmp_bg->bg_tile = tmp_bg_tile; tmp_bg->bg.keep_aspect = tmp_bg_keep_aspect; @@ -3148,6 +3171,395 @@ return; val = 0; } +static void +CB_AdvancedSettings(int val, void *data) +{ + if (data == NULL && val == 0) + { + SettingsSelectiveTransparency(); + } + return; +} + +void +SettingsSelectiveTransparency(void) +{ + Dialog *d; + + /* Dialog *dexp; */ + DItem *table, *di; + DItem *radio_border, *radio_widget, *radio_iconbox, + *radio_menu, *radio_menu_item, *radio_tooltip, + *radio_dialog, *radio_hilight, *radio_pager, *radio_warplist; + + if ((d = + FindItem("CONFIGURE_SELECTIVETRANSPARENCY", 0, LIST_FINDBY_NAME, + LIST_TYPE_DIALOG))) + { + SoundPlay("SOUND_SETTINGS_ACTIVE"); + ShowDialog(d); + return; + } + SoundPlay("SOUND_SETTINGS_SELECTIVETRANSPARENCY"); + + tmp_st_border = Conf.st_trans.border; + tmp_st_widget = Conf.st_trans.widget; + tmp_st_iconbox = Conf.st_trans.iconbox; + tmp_st_menu = Conf.st_trans.menu; + tmp_st_menu_item = Conf.st_trans.menu_item; + tmp_st_tooltip = Conf.st_trans.tooltip; + tmp_st_dialog = Conf.st_trans.dialog; + tmp_st_hilight = Conf.st_trans.hilight; + tmp_st_pager = Conf.st_trans.pager; + tmp_st_warplist = Conf.st_trans.warplist; + + d = DialogCreate("CONFIGURE_SELECTIVETRANSPARENCY"); + DialogSetTitle(d, _("Selective Transparency Settings")); + + table = DialogInitItem(d); + DialogItemTableSetOptions(table, 11, 0, 0, 0); + + if (Conf.dialogs.headers) + { + di = DialogAddItem(table, DITEM_TEXT); + DialogItemSetColSpan(di, 12); + DialogItemSetPadding(di, 2, 2, 2, 2); + DialogItemSetFill(di, 1, 0); + DialogItemTextSetText(di, + _("Enlightenment Selective Transparency\n" + "Settings Dialog\n")); + + di = DialogAddItem(table, DITEM_SEPARATOR); + DialogItemSetColSpan(di, 12); + DialogItemSetPadding(di, 2, 2, 2, 2); + DialogItemSetFill(di, 1, 0); + DialogItemSeparatorSetOrientation(di, 0); + } + di = DialogAddItem(table, DITEM_TEXT); + DialogItemSetColSpan(di, 12); + DialogItemSetPadding(di, 2, 20, 2, 2); + DialogItemSetFill(di, 1, 0); + DialogItemSetAlign(di, 0, 512); + DialogItemTextSetText(di, _("Changes Might Require Restart:")); + + di = DialogAddItem(table, DITEM_SEPARATOR); + DialogItemSetColSpan(di, 12); + DialogItemSetPadding(di, 2, 2, 2, 10); + DialogItemSetFill(di, 1, 0); + DialogItemSeparatorSetOrientation(di, 0); + + di = DialogAddItem(table, DITEM_NONE); + DialogItemSetColSpan(di, 1); + DialogItemSetPadding(di, 2, 20, 2, 2); + DialogItemSetFill(di, 1, 0); + + di = DialogAddItem(table, DITEM_TEXT); + DialogItemSetColSpan(di, 1); + DialogItemSetPadding(di, 2, 20, 2, 2); + DialogItemSetFill(di, 1, 0); + DialogItemSetAlign(di, 0, 512); + DialogItemTextSetText(di, _("Borders:")); + + di = DialogAddItem(table, DITEM_TEXT); + DialogItemSetColSpan(di, 1); + DialogItemSetPadding(di, 2, 20, 2, 2); + DialogItemSetFill(di, 1, 0); + DialogItemSetAlign(di, 0, 512); + DialogItemTextSetText(di, _("Menus:")); + + di = DialogAddItem(table, DITEM_TEXT); + DialogItemSetColSpan(di, 1); + DialogItemSetPadding(di, 2, 20, 2, 2); + DialogItemSetFill(di, 1, 0); + DialogItemSetAlign(di, 0, 512); + DialogItemTextSetText(di, _("Menu Items:")); + + di = DialogAddItem(table, DITEM_TEXT); + DialogItemSetColSpan(di, 1); + DialogItemSetPadding(di, 2, 20, 2, 2); + DialogItemSetFill(di, 1, 0); + DialogItemSetAlign(di, 0, 512); + DialogItemTextSetText(di, _("Hilights:")); + + di = DialogAddItem(table, DITEM_TEXT); + DialogItemSetColSpan(di, 1); + DialogItemSetPadding(di, 2, 20, 2, 2); + DialogItemSetFill(di, 1, 0); + DialogItemSetAlign(di, 0, 512); + DialogItemTextSetText(di, _("Dialog:")); + + di = DialogAddItem(table, DITEM_TEXT); + DialogItemSetColSpan(di, 1); + DialogItemSetPadding(di, 2, 20, 2, 2); + DialogItemSetFill(di, 1, 0); + DialogItemSetAlign(di, 0, 512); + DialogItemTextSetText(di, _("E Widgets:")); + + di = DialogAddItem(table, DITEM_TEXT); + DialogItemSetColSpan(di, 1); + DialogItemSetPadding(di, 2, 20, 2, 2); + DialogItemSetFill(di, 1, 0); + DialogItemSetAlign(di, 0, 512); + DialogItemTextSetText(di, _("Tooltips:")); + + di = DialogAddItem(table, DITEM_TEXT); + DialogItemSetColSpan(di, 1); + DialogItemSetPadding(di, 2, 20, 2, 2); + DialogItemSetFill(di, 1, 0); + DialogItemSetAlign(di, 0, 512); + DialogItemTextSetText(di, _("Pager:")); + + di = DialogAddItem(table, DITEM_TEXT); + DialogItemSetColSpan(di, 1); + DialogItemSetPadding(di, 2, 20, 2, 2); + DialogItemSetFill(di, 1, 0); + DialogItemSetAlign(di, 0, 512); + DialogItemTextSetText(di, _("Warplist:")); + + di = DialogAddItem(table, DITEM_TEXT); + DialogItemSetColSpan(di, 1); + DialogItemSetPadding(di, 2, 20, 2, 2); + DialogItemSetFill(di, 1, 0); + DialogItemSetAlign(di, 0, 512); + DialogItemTextSetText(di, _("Iconbox:")); + + di = DialogAddItem(table, DITEM_TEXT); + DialogItemSetColSpan(di, 1); + DialogItemSetPadding(di, 2, 20, 2, 2); + DialogItemSetFill(di, 1, 0); + DialogItemSetAlign(di, 0, 512); + DialogItemTextSetText(di, _("Opaque")); + + radio_border = di = DialogAddItem(table, DITEM_RADIOBUTTON); + DialogItemSetPadding(di, 2, 20, 2, 2); + DialogItemSetFill(di, 1, 0); + DialogItemRadioButtonSetFirst(di, radio_border); + DialogItemRadioButtonGroupSetVal(di, 0); + + radio_menu = di = DialogAddItem(table, DITEM_RADIOBUTTON); + DialogItemSetPadding(di, 2, 20, 2, 2); + DialogItemSetFill(di, 1, 0); + DialogItemRadioButtonSetFirst(di, radio_menu); + DialogItemRadioButtonGroupSetVal(di, 0); + + radio_menu_item = di = DialogAddItem(table, DITEM_RADIOBUTTON); + DialogItemSetPadding(di, 2, 20, 2, 2); + DialogItemSetFill(di, 1, 0); + DialogItemRadioButtonSetFirst(di, radio_menu_item); + DialogItemRadioButtonGroupSetVal(di, 0); + + radio_hilight = di = DialogAddItem(table, DITEM_RADIOBUTTON); + DialogItemSetPadding(di, 2, 20, 2, 2); + DialogItemSetFill(di, 1, 0); + DialogItemRadioButtonSetFirst(di, radio_hilight); + DialogItemRadioButtonGroupSetVal(di, 0); + + radio_dialog = di = DialogAddItem(table, DITEM_RADIOBUTTON); + DialogItemSetPadding(di, 2, 20, 2, 2); + DialogItemSetFill(di, 1, 0); + DialogItemRadioButtonSetFirst(di, radio_dialog); + DialogItemRadioButtonGroupSetVal(di, 0); + + radio_widget = di = DialogAddItem(table, DITEM_RADIOBUTTON); + DialogItemSetPadding(di, 2, 20, 2, 2); + DialogItemSetFill(di, 1, 0); + DialogItemRadioButtonSetFirst(di, radio_widget); + DialogItemRadioButtonGroupSetVal(di, 0); + + radio_tooltip = di = DialogAddItem(table, DITEM_RADIOBUTTON); + DialogItemSetPadding(di, 2, 20, 2, 2); + DialogItemSetFill(di, 1, 0); + DialogItemRadioButtonSetFirst(di, radio_tooltip); + DialogItemRadioButtonGroupSetVal(di, 0); + + radio_pager = di = DialogAddItem(table, DITEM_RADIOBUTTON); + DialogItemSetPadding(di, 2, 20, 2, 2); + DialogItemSetFill(di, 1, 0); + DialogItemRadioButtonSetFirst(di, radio_pager); + DialogItemRadioButtonGroupSetVal(di, 0); + + radio_warplist = di = DialogAddItem(table, DITEM_RADIOBUTTON); + DialogItemSetPadding(di, 2, 20, 2, 2); + DialogItemSetFill(di, 1, 0); + DialogItemRadioButtonSetFirst(di, radio_warplist); + DialogItemRadioButtonGroupSetVal(di, 0); + + radio_iconbox = di = DialogAddItem(table, DITEM_RADIOBUTTON); + DialogItemSetPadding(di, 2, 20, 2, 2); + DialogItemSetFill(di, 1, 0); + DialogItemRadioButtonSetFirst(di, radio_iconbox); + DialogItemRadioButtonGroupSetVal(di, 0); + + di = DialogAddItem(table, DITEM_SEPARATOR); + DialogItemSetColSpan(di, 12); + DialogItemSetPadding(di, 2, 2, 4, 2); + DialogItemSetFill(di, 1, 0); + DialogItemSeparatorSetOrientation(di, 0); + + di = DialogAddItem(table, DITEM_TEXT); + DialogItemSetColSpan(di, 12); + DialogItemSetPadding(di, 2, 2, 8, 8); + DialogItemSetFill(di, 1, 0); + DialogItemSetAlign(di, 0, 512); + DialogItemTextSetText(di, _("Transparency Style:")); + + di = DialogAddItem(table, DITEM_SEPARATOR); + DialogItemSetColSpan(di, 12); + DialogItemSetPadding(di, 2, 2, 2, 4); + DialogItemSetFill(di, 1, 0); + DialogItemSeparatorSetOrientation(di, 0); + + di = DialogAddItem(table, DITEM_TEXT); + DialogItemSetColSpan(di, 1); + DialogItemSetPadding(di, 2, 20, 2, 2); + DialogItemSetFill(di, 1, 0); + DialogItemSetAlign(di, 0, 512); + DialogItemTextSetText(di, _("Background")); + + di = DialogAddItem(table, DITEM_RADIOBUTTON); + DialogItemSetPadding(di, 2, 20, 2, 2); + DialogItemSetFill(di, 1, 0); + DialogItemRadioButtonSetFirst(di, radio_border); + DialogItemRadioButtonGroupSetVal(di, 1); + DialogItemRadioButtonGroupSetValPtr(radio_border, &tmp_st_border); + + di = DialogAddItem(table, DITEM_RADIOBUTTON); + DialogItemSetPadding(di, 2, 20, 2, 2); + DialogItemSetFill(di, 1, 0); + DialogItemRadioButtonSetFirst(di, radio_menu); + DialogItemRadioButtonGroupSetVal(di, 1); + + di = DialogAddItem(table, DITEM_RADIOBUTTON); + DialogItemSetPadding(di, 2, 20, 2, 2); + DialogItemSetFill(di, 1, 0); + DialogItemRadioButtonSetFirst(di, radio_menu_item); + DialogItemRadioButtonGroupSetVal(di, 1); + + di = DialogAddItem(table, DITEM_RADIOBUTTON); + DialogItemSetPadding(di, 2, 20, 2, 2); + DialogItemSetFill(di, 1, 0); + DialogItemRadioButtonSetFirst(di, radio_hilight); + DialogItemRadioButtonGroupSetVal(di, 1); + + di = DialogAddItem(table, DITEM_RADIOBUTTON); + DialogItemSetPadding(di, 2, 20, 2, 2); + DialogItemSetFill(di, 1, 0); + DialogItemRadioButtonSetFirst(di, radio_dialog); + DialogItemRadioButtonGroupSetVal(di, 1); + DialogItemRadioButtonGroupSetValPtr(radio_dialog, &tmp_st_dialog); + + di = DialogAddItem(table, DITEM_RADIOBUTTON); + DialogItemSetPadding(di, 2, 20, 2, 2); + DialogItemSetFill(di, 1, 0); + DialogItemRadioButtonSetFirst(di, radio_widget); + DialogItemRadioButtonGroupSetVal(di, 1); + DialogItemRadioButtonGroupSetValPtr(radio_widget, &tmp_st_widget); + + di = DialogAddItem(table, DITEM_RADIOBUTTON); + DialogItemSetPadding(di, 2, 20, 2, 2); + DialogItemSetFill(di, 1, 0); + DialogItemRadioButtonSetFirst(di, radio_tooltip); + DialogItemRadioButtonGroupSetVal(di, 1); + + di = DialogAddItem(table, DITEM_RADIOBUTTON); + DialogItemSetPadding(di, 2, 20, 2, 2); + DialogItemSetFill(di, 1, 0); + DialogItemRadioButtonSetFirst(di, radio_pager); + DialogItemRadioButtonGroupSetVal(di, 1); + + di = DialogAddItem(table, DITEM_RADIOBUTTON); + DialogItemSetPadding(di, 2, 20, 2, 2); + DialogItemSetFill(di, 1, 0); + DialogItemRadioButtonSetFirst(di, radio_warplist); + DialogItemRadioButtonGroupSetVal(di, 1); + + di = DialogAddItem(table, DITEM_RADIOBUTTON); + DialogItemSetPadding(di, 2, 20, 2, 2); + DialogItemSetFill(di, 1, 0); + DialogItemRadioButtonSetFirst(di, radio_iconbox); + DialogItemRadioButtonGroupSetVal(di, 1); + DialogItemRadioButtonGroupSetValPtr(radio_iconbox, &tmp_st_iconbox); + + di = DialogAddItem(table, DITEM_TEXT); + DialogItemSetColSpan(di, 1); + DialogItemSetPadding(di, 2, 20, 2, 2); + DialogItemSetFill(di, 1, 0); + DialogItemSetAlign(di, 0, 512); + DialogItemTextSetText(di, _("Glass")); + + di = DialogAddItem(table, DITEM_NONE); + DialogItemSetPadding(di, 2, 20, 2, 2); + DialogItemSetFill(di, 1, 0); + + di = DialogAddItem(table, DITEM_RADIOBUTTON); + DialogItemSetPadding(di, 2, 20, 2, 2); + DialogItemSetFill(di, 1, 0); + DialogItemRadioButtonSetFirst(di, radio_menu); + DialogItemRadioButtonGroupSetVal(di, 2); + DialogItemRadioButtonGroupSetValPtr(radio_menu, &tmp_st_menu); + + di = DialogAddItem(table, DITEM_RADIOBUTTON); + DialogItemSetPadding(di, 2, 20, 2, 2); + DialogItemSetFill(di, 1, 0); + DialogItemRadioButtonSetFirst(di, radio_menu_item); + DialogItemRadioButtonGroupSetVal(di, 2); + DialogItemRadioButtonGroupSetValPtr(radio_menu_item, &tmp_st_menu_item); + + di = DialogAddItem(table, DITEM_RADIOBUTTON); + DialogItemSetPadding(di, 2, 20, 2, 2); + DialogItemSetFill(di, 1, 0); + DialogItemRadioButtonSetFirst(di, radio_hilight); + DialogItemRadioButtonGroupSetVal(di, 2); + DialogItemRadioButtonGroupSetValPtr(radio_hilight, &tmp_st_hilight); + + di = DialogAddItem(table, DITEM_NONE); + DialogItemSetPadding(di, 2, 20, 2, 2); + DialogItemSetFill(di, 1, 0); + + di = DialogAddItem(table, DITEM_NONE); + DialogItemSetPadding(di, 2, 20, 2, 2); + DialogItemSetFill(di, 1, 0); + + di = DialogAddItem(table, DITEM_RADIOBUTTON); + DialogItemSetPadding(di, 2, 20, 2, 2); + DialogItemSetFill(di, 1, 0); + DialogItemRadioButtonSetFirst(di, radio_tooltip); + DialogItemRadioButtonGroupSetVal(di, 2); + DialogItemRadioButtonGroupSetValPtr(radio_tooltip, &tmp_st_tooltip); + + di = DialogAddItem(table, DITEM_RADIOBUTTON); + DialogItemSetPadding(di, 2, 20, 2, 2); + DialogItemSetFill(di, 1, 0); + DialogItemRadioButtonSetFirst(di, radio_pager); + DialogItemRadioButtonGroupSetVal(di, 2); + DialogItemRadioButtonGroupSetValPtr(radio_pager, &tmp_st_pager); + + di = DialogAddItem(table, DITEM_RADIOBUTTON); + DialogItemSetPadding(di, 2, 20, 2, 2); + DialogItemSetFill(di, 1, 0); + DialogItemRadioButtonSetFirst(di, radio_warplist); + DialogItemRadioButtonGroupSetVal(di, 2); + DialogItemRadioButtonGroupSetValPtr(radio_warplist, &tmp_st_warplist); + + di = DialogAddItem(table, DITEM_NONE); + DialogItemSetPadding(di, 2, 20, 2, 2); + DialogItemSetFill(di, 1, 0); + + di = DialogAddItem(table, DITEM_SEPARATOR); + DialogItemSetColSpan(di, 12); + DialogItemSetPadding(di, 2, 2, 4, 2); + DialogItemSetFill(di, 1, 0); + DialogItemSeparatorSetOrientation(di, 0); + + DialogAddButton(d, _("OK"), CB_ConfigureBG, 1); + DialogAddButton(d, _("Apply"), CB_ConfigureBG, 0); + DialogAddButton(d, _("Close"), CB_ConfigureBG, 1); + DialogSetExitFunction(d, CB_ConfigureBG, 2, d); + DialogBindKey(d, "Escape", CB_SettingsEscape, 0, d); + DialogBindKey(d, "Return", CB_ConfigureBG, 0, d); + + ShowDialog(d); +} #endif void @@ -3182,6 +3594,19 @@ tmp_bg_timeout = Conf.backgrounds.timeout; tmp_theme_transparency = Conf.theme.transparency; +#ifdef USE_IMLIB2 + tmp_st_border = Conf.st_trans.border; + tmp_st_widget = Conf.st_trans.widget; + tmp_st_iconbox = Conf.st_trans.iconbox; + tmp_st_menu = Conf.st_trans.menu; + tmp_st_menu_item = Conf.st_trans.menu_item; + tmp_st_tooltip = Conf.st_trans.tooltip; + tmp_st_dialog = Conf.st_trans.dialog; + tmp_st_hilight = Conf.st_trans.hilight; + tmp_st_pager = Conf.st_trans.pager; + tmp_st_warplist = Conf.st_trans.warplist; +#endif + d = bg_sel_dialog = DialogCreate("CONFIGURE_BG"); DialogSetTitle(d, _("Desktop Background Settings")); @@ -3547,7 +3972,7 @@ #ifdef ENABLE_THEME_TRANSPARENCY di = label = DialogAddItem(table, DITEM_TEXT); - DialogItemSetColSpan(di, 3); + DialogItemSetColSpan(di, 2); DialogItemSetPadding(di, 2, 2, 2, 2); DialogItemSetFill(di, 1, 0); DialogItemSetAlign(di, 512, 512); @@ -3555,6 +3980,14 @@ tmp_theme_transparency); DialogItemTextSetText(di, s); + di = DialogAddItem(table, DITEM_BUTTON); + DialogItemSetColSpan(di, 1); + DialogItemSetPadding(di, 2, 2, 2, 2); + DialogItemSetFill(di, 0, 0); + DialogItemSetAlign(di, 1024, 512); + DialogItemButtonSetText(di, _("Advanced Settings\n")); + DialogItemSetCallback(di, CB_AdvancedSettings, 0, NULL); + di = DialogAddItem(table, DITEM_SLIDER); DialogItemSetColSpan(di, 3); DialogItemSliderSetMinLength(di, 10); =================================================================== RCS file: /cvsroot/enlightenment/e16/e/src/setup.c,v retrieving revision 1.128 retrieving revision 1.129 diff -u -3 -r1.128 -r1.129 --- setup.c 31 May 2004 19:47:35 -0000 1.128 +++ setup.c 14 Jun 2004 17:02:32 -0000 1.129 @@ -437,6 +437,16 @@ Conf.manual_placement = 0; Conf.edge_flip_resistance = 15; +#ifdef USE_IMLIB2 + Conf.st_trans.menu = ICLASS_ATTR_GLASS; + Conf.st_trans.menu_item = ICLASS_ATTR_OPAQUE; + Conf.st_trans.tooltip = ICLASS_ATTR_GLASS; + Conf.st_trans.widget = ICLASS_ATTR_OPAQUE; + Conf.st_trans.border = ICLASS_ATTR_OPAQUE; + Conf.st_trans.iconbox = ICLASS_ATTR_OPAQUE; + Conf.st_trans.dialog = ICLASS_ATTR_BG; +#endif + ScreenInit(); MenusInit(); ------------------------------------------------------- This SF.Net email is sponsored by the new InstallShield X. >From Windows to Linux, servers to mobile, InstallShield X is the one installation-authoring solution that does it all. Learn more and evaluate today! http://www.installshield.com/Dev2Dev/0504 _______________________________________________ enlightenment-cvs mailing list [EMAIL PROTECTED] https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs