Enlightenment CVS committal Author : kwo Project : e16 Module : e
Dir : e16/e/src Modified Files: backgrounds.c Log Message: Fix some background dialog issues + tweak layout. =================================================================== RCS file: /cvs/e/e16/e/src/backgrounds.c,v retrieving revision 1.96 retrieving revision 1.97 diff -u -3 -r1.96 -r1.97 --- backgrounds.c 25 May 2007 22:40:47 -0000 1.96 +++ backgrounds.c 11 Jul 2007 09:35:01 -0000 1.97 @@ -1534,6 +1534,7 @@ static int tmp_bg_timeout; static void BG_RedrawView(void); +static void BGSettingsGoTo(Background * bg); static void CB_ConfigureBG(Dialog * d __UNUSED__, int val, void *data __UNUSED__) @@ -1575,7 +1576,8 @@ /* Draw the background preview image */ static void -CB_DesktopMiniDisplayRedraw(Dialog * d __UNUSED__, int val, void *data) +CB_DesktopMiniDisplayRedraw(Dialog * d __UNUSED__, int val __UNUSED__, + void *data) { Background *bg; Pixmap pmap; @@ -1592,24 +1594,21 @@ win = DialogItemAreaGetWindow(di); DialogItemAreaGetSize(di, &w, &h); - if (val == 1) - { - pmap = EGetWindowBackgroundPixmap(win); - fbg = (tmp_bg_image) ? BackgroundGetBgFile(tmp_bg) : NULL; - ffg = (tmp_bg_image) ? BackgroundGetFgFile(tmp_bg) : NULL; - ESetColor(&xclr, tmp_bg_r, tmp_bg_g, tmp_bg_b); - bg = BackgroundCreate("TEMP", &xclr, fbg, tmp_bg_tile, - tmp_bg_keep_aspect, tmp_bg_xjust, - 1024 - tmp_bg_yjust, tmp_bg_xperc, - 1024 - tmp_bg_yperc, ffg, - tmp_bg->top.keep_aspect, tmp_bg->top.xjust, - tmp_bg->top.yjust, tmp_bg->top.xperc, - tmp_bg->top.yperc); - - BackgroundApplyPmap(bg, win, pmap, w, h); - BackgroundDestroy(bg); - EClearWindow(win); - } + pmap = EGetWindowBackgroundPixmap(win); + fbg = (tmp_bg_image) ? BackgroundGetBgFile(tmp_bg) : NULL; + ffg = (tmp_bg_image) ? BackgroundGetFgFile(tmp_bg) : NULL; + ESetColor(&xclr, tmp_bg_r, tmp_bg_g, tmp_bg_b); + bg = BackgroundCreate("TEMP", &xclr, fbg, tmp_bg_tile, + tmp_bg_keep_aspect, tmp_bg_xjust, + 1024 - tmp_bg_yjust, tmp_bg_xperc, + 1024 - tmp_bg_yperc, ffg, + tmp_bg->top.keep_aspect, tmp_bg->top.xjust, + tmp_bg->top.yjust, tmp_bg->top.xperc, + tmp_bg->top.yperc); + + BackgroundApplyPmap(bg, win, pmap, w, h); + BackgroundDestroy(bg); + EClearWindow(win); } /* Update tmp vars according to the current tmp_bg */ @@ -1638,7 +1637,8 @@ Esnprintf(s, sizeof(s), _("Background definition information:\nName: %s\nFile: %s\n"), BackgroundGetName(tmp_bg), (stmp) ? stmp : _("-NONE-")); - _EFREE(stmp); + if (stmp) + Efree(stmp); DialogItemSetText(di, s); } @@ -1659,17 +1659,20 @@ BG_DialogSetFileName(bg_filename); DialogDrawItems(bg_sel_dialog, bg_filename, 0, 0, 99999, 99999); - DialogItemSliderSetVal(tmp_w[0], tmp_bg_r); - DialogItemCheckButtonSetState(tmp_w[1], tmp_bg_image); - DialogItemSliderSetVal(tmp_w[2], tmp_bg_g); - DialogItemCheckButtonSetState(tmp_w[3], tmp_bg_keep_aspect); - DialogItemSliderSetVal(tmp_w[4], tmp_bg_b); - DialogItemCheckButtonSetState(tmp_w[5], tmp_bg_tile); + DialogItemCheckButtonSetState(tmp_w[0], tmp_bg_image); + DialogItemCheckButtonSetState(tmp_w[1], tmp_bg_keep_aspect); + DialogItemCheckButtonSetState(tmp_w[2], tmp_bg_tile); + DialogItemSliderSetVal(tmp_w[3], tmp_bg_r); + DialogItemSliderSetVal(tmp_w[4], tmp_bg_g); + DialogItemSliderSetVal(tmp_w[5], tmp_bg_b); DialogItemSliderSetVal(tmp_w[6], tmp_bg_xjust); DialogItemSliderSetVal(tmp_w[7], tmp_bg_yjust); DialogItemSliderSetVal(tmp_w[8], tmp_bg_yperc); DialogItemSliderSetVal(tmp_w[9], tmp_bg_xperc); + /* Redraw mini BG display */ + CB_DesktopMiniDisplayRedraw(NULL, 0, bg_mini_disp); + /* Redraw scrolling BG list */ BG_RedrawView(); @@ -1758,6 +1761,7 @@ void *data __UNUSED__) { ecore_list_prepend(bg_list, ecore_list_remove_node(bg_list, tmp_bg)); + BGSettingsGoTo(tmp_bg); BG_RedrawView(); autosave(); } @@ -1873,16 +1877,31 @@ switch (ev->type) { case ButtonPress: - num = ecore_list_nodes(bg_list); - x = (num * (64 + 8) - w) * tmp_bg_sel_sliderval / (4 * num) + - ev->xbutton.x; - bg = (Background *) ecore_list_goto_index(bg_list, x / (64 + 8)); - if (!bg || bg == DeskBackgroundGet(DesksGetCurrent())) - break; - BgDialogSetNewCurrent(bg); - DeskBackgroundSet(DesksGetCurrent(), bg); - autosave(); - break; + switch (ev->xbutton.button) + { + case 1: + num = ecore_list_nodes(bg_list); + x = (num * (64 + 8) - w) * tmp_bg_sel_sliderval / (4 * num) + + ev->xbutton.x; + bg = (Background *) ecore_list_goto_index(bg_list, x / (64 + 8)); + if (!bg || bg == DeskBackgroundGet(DesksGetCurrent())) + break; + BgDialogSetNewCurrent(bg); + DeskBackgroundSet(DesksGetCurrent(), bg); + autosave(); + break; + case 4: + tmp_bg_sel_sliderval += 4; + goto do_slide; + case 5: + tmp_bg_sel_sliderval -= 4; + goto do_slide; + do_slide: + DialogItemSliderSetVal(bg_sel_slider, tmp_bg_sel_sliderval); + CB_BGAreaSlide(NULL, 0, NULL); + DialogDrawItems(bg_sel_dialog, bg_sel_slider, 0, 0, 99999, 99999); + break; + } } } @@ -1945,8 +1964,10 @@ } static int -BG_SortFileCompare(Background * bg1, Background * bg2) +BG_SortFileCompare(void *_bg1, void *_bg2) { + Background *bg1 = (Background *) _bg1; + Background *bg2 = (Background *) _bg2; const char *name1, *name2; /* return < 0 is b1 < b2 */ @@ -1957,13 +1978,11 @@ name2 = BackgroundGetBgFile(bg2); if (name1 && name2) return strcmp(name1, name2); - - name1 = BackgroundGetFgFile(bg1); - name2 = BackgroundGetFgFile(bg2); - if (name1 && name2) - return strcmp(name1, name2); - - return 0; + if (name1) + return 1; + if (name2) + return -1; + return (bg1 < bg2) ? -1 : 1; } static void @@ -1979,10 +1998,9 @@ /* remove them all from the list */ for (i = 0; i < num; i++) ecore_list_remove_node(bg_list, bglist[i]); - Quicksort((void **)bglist, 0, num - 1, - (int (*)(void *d1, void *d2))BG_SortFileCompare); + Quicksort((void **)bglist, 0, num - 2, BG_SortFileCompare); for (i = 0; i < num; i++) - ecore_list_prepend(bg_list, bglist[i]); + ecore_list_append(bg_list, bglist[i]); Efree(bglist); BGSettingsGoTo(tmp_bg); @@ -2033,6 +2051,7 @@ autosave(); } +#if 0 /* Doesn't do anything useful */ static void CB_BGSortContent(Dialog * d __UNUSED__, int val __UNUSED__, void *data __UNUSED__) @@ -2053,13 +2072,16 @@ autosave(); } +#endif +#if 0 /* Remove? */ static void CB_DesktopMiniDisplayAreaInit(DItem * di, int val __UNUSED__, void *data __UNUSED__) { CB_DesktopMiniDisplayRedraw(DialogItemGetDialog(di), 1, di); } +#endif static void CB_InitView(DItem * di __UNUSED__, int val __UNUSED__, void *data __UNUSED__) @@ -2072,9 +2094,8 @@ _DlgFillBackground(Dialog * d, DItem * table, void *data) { Background *bg = (Background *) data; - DItem *di, *table2, *area, *slider, *slider2, *label; - DItem *w1, *w2, *w3, *w4, *w5, *w6; - int num; + DItem *di, *table2, *table3, *area, *label; + int i, num; char s[1024]; ScanBackgroundMenu(); @@ -2094,15 +2115,33 @@ bg_sel_dialog = d; - DialogItemTableSetOptions(table, 3, 0, 0, 0); + DialogItemTableSetOptions(table, 1, 0, 0, 0); - di = DialogAddItem(table, DITEM_TEXT); - DialogItemSetText(di, _("BG Colour\n")); + table2 = DialogAddItem(table, DITEM_TABLE); + DialogItemTableSetOptions(table2, 2, 0, 1, 0); - di = DialogAddItem(table, DITEM_NONE); + di = bg_filename = DialogAddItem(table2, DITEM_TEXT); + DialogItemSetFill(di, 1, 0); + BG_DialogSetFileName(bg_filename); + + table3 = DialogAddItem(table2, DITEM_TABLE); + + di = tmp_w[0] = DialogAddItem(table3, DITEM_CHECKBUTTON); + DialogItemSetText(di, _("Use background image")); + DialogItemCheckButtonSetPtr(di, &tmp_bg_image); + + di = tmp_w[1] = DialogAddItem(table3, DITEM_CHECKBUTTON); + DialogItemSetText(di, _("Keep aspect on scale")); + DialogItemCheckButtonSetPtr(di, &tmp_bg_keep_aspect); + + di = tmp_w[2] = DialogAddItem(table3, DITEM_CHECKBUTTON); + DialogItemSetText(di, _("Tile image across background")); + DialogItemCheckButtonSetPtr(di, &tmp_bg_tile); table2 = DialogAddItem(table, DITEM_TABLE); - DialogItemTableSetOptions(table2, 4, 0, 0, 0); + DialogItemTableSetOptions(table2, 4, 0, 1, 0); + DialogItemSetFill(table2, 0, 0); + DialogItemSetAlign(table2, 512, 0); di = DialogAddItem(table2, DITEM_BUTTON); DialogItemSetText(di, _("Move to Front\n")); @@ -2116,84 +2155,38 @@ di = DialogAddItem(table2, DITEM_BUTTON); DialogItemSetText(di, _("Unlist\n")); DialogItemSetCallback(di, CB_ConfigureDelBG, 0, NULL); + DialogBindKey(d, "D", CB_ConfigureDelBG, 0, NULL); di = DialogAddItem(table2, DITEM_BUTTON); DialogItemSetText(di, _("Delete File\n")); - DialogItemSetCallback(di, CB_ConfigureDelBG, 0, NULL); - DialogBindKey(d, "D", CB_ConfigureDelBG, 0, NULL); + DialogItemSetCallback(di, CB_ConfigureDelBG, 1, NULL); DialogBindKey(d, "Delete", CB_ConfigureDelBG, 1, NULL); - di = DialogAddItem(table, DITEM_TEXT); - DialogItemSetFill(di, 0, 0); - DialogItemSetAlign(di, 1024, 512); - DialogItemSetText(di, _("Red:\n")); - - di = w1 = tmp_w[0] = DialogAddItem(table, DITEM_SLIDER); - DialogItemSliderSetBounds(di, 0, 255); - DialogItemSliderSetUnits(di, 1); - DialogItemSliderSetJump(di, 16); - DialogItemSliderSetValPtr(di, &tmp_bg_r); - - di = w2 = tmp_w[1] = DialogAddItem(table, DITEM_CHECKBUTTON); - DialogItemSetText(di, _("Use background image")); - DialogItemCheckButtonSetPtr(di, &tmp_bg_image); - - di = DialogAddItem(table, DITEM_TEXT); - DialogItemSetFill(di, 0, 0); - DialogItemSetAlign(di, 1024, 512); - DialogItemSetText(di, _("Green:\n")); - - di = w3 = tmp_w[2] = DialogAddItem(table, DITEM_SLIDER); - DialogItemSliderSetBounds(di, 0, 255); - DialogItemSliderSetUnits(di, 1); - DialogItemSliderSetJump(di, 16); - DialogItemSliderSetValPtr(di, &tmp_bg_g); - - di = w4 = tmp_w[3] = DialogAddItem(table, DITEM_CHECKBUTTON); - DialogItemSetText(di, _("Keep aspect on scale")); - DialogItemCheckButtonSetPtr(di, &tmp_bg_keep_aspect); - - di = DialogAddItem(table, DITEM_TEXT); - DialogItemSetFill(di, 0, 0); - DialogItemSetAlign(di, 1024, 512); - DialogItemSetText(di, _("Blue:\n")); - - di = w5 = tmp_w[4] = DialogAddItem(table, DITEM_SLIDER); - DialogItemSliderSetBounds(di, 0, 255); - DialogItemSliderSetUnits(di, 1); - DialogItemSliderSetJump(di, 16); - DialogItemSliderSetValPtr(di, &tmp_bg_b); - - di = w6 = tmp_w[5] = DialogAddItem(table, DITEM_CHECKBUTTON); - DialogItemSetText(di, _("Tile image across background")); - DialogItemCheckButtonSetPtr(di, &tmp_bg_tile); - - di = DialogAddItem(table, DITEM_SEPARATOR); - DialogItemSetColSpan(di, 3); + table2 = DialogAddItem(table, DITEM_TABLE); + DialogItemTableSetOptions(table2, 3, 0, 1, 0); - di = DialogAddItem(table, DITEM_TEXT); + di = DialogAddItem(table2, DITEM_TEXT); DialogItemSetFill(di, 0, 0); DialogItemSetAlign(di, 512, 512); - DialogItemSetColSpan(di, 2); DialogItemSetText(di, _("Background\n" "Image\n" "Scaling\n" "and\n" "Alignment\n")); - table2 = DialogAddItem(table, DITEM_TABLE); - DialogItemTableSetOptions(table2, 3, 0, 0, 0); + table3 = DialogAddItem(table2, DITEM_TABLE); + DialogItemTableSetOptions(table3, 3, 0, 0, 0); - di = DialogAddItem(table2, DITEM_NONE); + di = DialogAddItem(table3, DITEM_NONE); - di = slider = tmp_w[6] = DialogAddItem(table2, DITEM_SLIDER); + di = tmp_w[6] = DialogAddItem(table3, DITEM_SLIDER); DialogItemSliderSetMinLength(di, 10); DialogItemSliderSetBounds(di, 0, 1024); DialogItemSliderSetUnits(di, 1); DialogItemSliderSetJump(di, 64); DialogItemSliderSetValPtr(di, &tmp_bg_xjust); - di = DialogAddItem(table2, DITEM_NONE); + di = DialogAddItem(table3, DITEM_NONE); - di = slider2 = tmp_w[7] = DialogAddItem(table2, DITEM_SLIDER); + di = tmp_w[7] = DialogAddItem(table3, DITEM_SLIDER); DialogItemSliderSetMinLength(di, 10); DialogItemSliderSetOrientation(di, 0); DialogItemSetFill(di, 0, 1); @@ -2202,20 +2195,13 @@ DialogItemSliderSetJump(di, 64); DialogItemSliderSetValPtr(di, &tmp_bg_yjust); - di = bg_mini_disp = area = DialogAddItem(table2, DITEM_AREA); + di = bg_mini_disp = area = DialogAddItem(table3, DITEM_AREA); DialogItemAreaSetSize(di, 64, 48); +#if 0 /* Remove? */ DialogItemAreaSetInitFunc(di, CB_DesktopMiniDisplayAreaInit); +#endif - DialogItemSetCallback(w1, CB_DesktopMiniDisplayRedraw, 0, (void *)area); - DialogItemSetCallback(w2, CB_DesktopMiniDisplayRedraw, 0, (void *)area); - DialogItemSetCallback(w3, CB_DesktopMiniDisplayRedraw, 0, (void *)area); - DialogItemSetCallback(w4, CB_DesktopMiniDisplayRedraw, 0, (void *)area); - DialogItemSetCallback(w5, CB_DesktopMiniDisplayRedraw, 0, (void *)area); - DialogItemSetCallback(w6, CB_DesktopMiniDisplayRedraw, 0, (void *)area); - DialogItemSetCallback(slider, CB_DesktopMiniDisplayRedraw, 0, (void *)area); - DialogItemSetCallback(slider2, CB_DesktopMiniDisplayRedraw, 0, (void *)area); - - di = slider = tmp_w[8] = DialogAddItem(table2, DITEM_SLIDER); + di = tmp_w[8] = DialogAddItem(table3, DITEM_SLIDER); DialogItemSliderSetMinLength(di, 10); DialogItemSliderSetOrientation(di, 0); DialogItemSetFill(di, 0, 1); @@ -2223,119 +2209,151 @@ DialogItemSliderSetUnits(di, 1); DialogItemSliderSetJump(di, 64); DialogItemSliderSetValPtr(di, &tmp_bg_yperc); - DialogItemSetCallback(slider, CB_DesktopMiniDisplayRedraw, 0, (void *)area); - di = DialogAddItem(table2, DITEM_NONE); + di = DialogAddItem(table3, DITEM_NONE); - di = slider = tmp_w[9] = DialogAddItem(table2, DITEM_SLIDER); + di = tmp_w[9] = DialogAddItem(table3, DITEM_SLIDER); DialogItemSliderSetMinLength(di, 10); DialogItemSliderSetBounds(di, 0, 1024); DialogItemSliderSetUnits(di, 1); DialogItemSliderSetJump(di, 64); DialogItemSliderSetValPtr(di, &tmp_bg_xperc); - DialogItemSetCallback(slider, CB_DesktopMiniDisplayRedraw, 0, (void *)area); - di = DialogAddItem(table, DITEM_SEPARATOR); - DialogItemSetColSpan(di, 3); + table3 = DialogAddItem(table2, DITEM_TABLE); + DialogItemTableSetOptions(table3, 2, 0, 0, 0); - di = DialogAddItem(table, DITEM_CHECKBUTTON); + di = DialogAddItem(table3, DITEM_TEXT); DialogItemSetColSpan(di, 2); - DialogItemSetText(di, _("Use dithering in Hi-Colour")); - DialogItemCheckButtonSetPtr(di, &tmp_hiq); + DialogItemSetFill(di, 0, 0); + DialogItemSetAlign(di, 512, 512); + DialogItemSetText(di, _("BG Colour\n")); - di = DialogAddItem(table, DITEM_CHECKBUTTON); - DialogItemSetText(di, _("Background overrides theme")); - DialogItemCheckButtonSetPtr(di, &tmp_userbg); + di = DialogAddItem(table3, DITEM_TEXT); + DialogItemSetFill(di, 0, 0); + DialogItemSetAlign(di, 1024, 512); + DialogItemSetText(di, _("Red:\n")); - di = label = DialogAddItem(table, DITEM_TEXT); - DialogItemSetColSpan(di, 3); - DialogItemSetAlign(di, 512, 512); - Esnprintf(s, sizeof(s), _("Unused backgrounds freed after %2i:%02i:%02i"), - tmp_bg_timeout / 3600, - (tmp_bg_timeout / 60) - (60 * (tmp_bg_timeout / 3600)), - (tmp_bg_timeout) - (60 * (tmp_bg_timeout / 60))); - DialogItemSetText(di, s); + di = tmp_w[3] = DialogAddItem(table3, DITEM_SLIDER); + DialogItemSliderSetBounds(di, 0, 255); + DialogItemSliderSetUnits(di, 1); + DialogItemSliderSetJump(di, 16); + DialogItemSliderSetValPtr(di, &tmp_bg_r); - di = DialogAddItem(table, DITEM_SLIDER); - DialogItemSetColSpan(di, 3); - DialogItemSliderSetMinLength(di, 10); - DialogItemSliderSetBounds(di, 0, 60 * 60 * 4); - DialogItemSliderSetUnits(di, 30); - DialogItemSliderSetJump(di, 60); - DialogItemSliderSetValPtr(di, &tmp_bg_timeout); - DialogItemSetCallback(di, CB_DesktopTimeout, 0, (void *)label); + di = DialogAddItem(table3, DITEM_TEXT); + DialogItemSetFill(di, 0, 0); + DialogItemSetAlign(di, 1024, 512); + DialogItemSetText(di, _("Green:\n")); + + di = tmp_w[4] = DialogAddItem(table3, DITEM_SLIDER); + DialogItemSliderSetBounds(di, 0, 255); + DialogItemSliderSetUnits(di, 1); + DialogItemSliderSetJump(di, 16); + DialogItemSliderSetValPtr(di, &tmp_bg_g); + + di = DialogAddItem(table3, DITEM_TEXT); + DialogItemSetFill(di, 0, 0); + DialogItemSetAlign(di, 1024, 512); + DialogItemSetText(di, _("Blue:\n")); + + di = tmp_w[5] = DialogAddItem(table3, DITEM_SLIDER); + DialogItemSliderSetBounds(di, 0, 255); + DialogItemSliderSetUnits(di, 1); + DialogItemSliderSetJump(di, 16); + DialogItemSliderSetValPtr(di, &tmp_bg_b); + + for (i = 0; i < 10; i++) + DialogItemSetCallback(tmp_w[i], CB_DesktopMiniDisplayRedraw, 0, area); di = DialogAddItem(table, DITEM_SEPARATOR); - DialogItemSetColSpan(di, 3); table2 = DialogAddItem(table, DITEM_TABLE); - DialogItemTableSetOptions(table2, 2, 0, 0, 0); + DialogItemTableSetOptions(table2, 3, 0, 0, 0); - di = DialogAddItem(table2, DITEM_BUTTON); + table3 = DialogAddItem(table2, DITEM_TABLE); + DialogItemTableSetOptions(table3, 2, 0, 0, 0); + + di = DialogAddItem(table3, DITEM_BUTTON); DialogItemSetFill(di, 0, 0); DialogItemSetText(di, "<-"); DialogItemSetCallback(di, CB_BGNext, -1, NULL); DialogBindKey(d, "Left", CB_BGNext, -1, NULL); - DialogBindKey(d, "BackSpace", CB_BGNext, -1, NULL); - di = DialogAddItem(table2, DITEM_BUTTON); + di = DialogAddItem(table3, DITEM_BUTTON); DialogItemSetFill(di, 0, 0); DialogItemSetText(di, "->"); DialogItemSetCallback(di, CB_BGNext, 1, NULL); DialogBindKey(d, "Right", CB_BGNext, 1, NULL); - DialogBindKey(d, "space", CB_BGNext, 1, NULL); - di = DialogAddItem(table, DITEM_BUTTON); + di = DialogAddItem(table2, DITEM_BUTTON); DialogItemSetFill(di, 0, 0); DialogItemSetText(di, _("Pre-scan BG's")); DialogItemSetCallback(di, CB_BGScan, 0, NULL); - table2 = DialogAddItem(table, DITEM_TABLE); - DialogItemTableSetOptions(table2, 3, 0, 0, 0); + table3 = DialogAddItem(table2, DITEM_TABLE); + DialogItemTableSetOptions(table3, 3, 0, 0, 0); - di = DialogAddItem(table2, DITEM_BUTTON); + di = DialogAddItem(table3, DITEM_BUTTON); DialogItemSetFill(di, 0, 0); DialogItemSetText(di, _("Sort by File")); DialogItemSetCallback(di, CB_BGSortFile, 0, NULL); - di = DialogAddItem(table2, DITEM_BUTTON); + di = DialogAddItem(table3, DITEM_BUTTON); DialogItemSetFill(di, 0, 0); DialogItemSetText(di, _("Sort by Attr.")); DialogItemSetCallback(di, CB_BGSortAttrib, 0, NULL); - di = DialogAddItem(table2, DITEM_BUTTON); +#if 0 /* Doesn't do anything useful */ + di = DialogAddItem(table3, DITEM_BUTTON); DialogItemSetFill(di, 0, 0); DialogItemSetText(di, _("Sort by Image")); DialogItemSetCallback(di, CB_BGSortContent, 0, NULL); +#endif di = bg_sel = DialogAddItem(table, DITEM_AREA); - DialogItemSetColSpan(di, 3); DialogItemAreaSetSize(di, 160, 56); DialogItemAreaSetEventFunc(di, CB_BGAreaEvent); DialogItemAreaSetInitFunc(di, CB_InitView); num = ecore_list_nodes(bg_list); di = bg_sel_slider = DialogAddItem(table, DITEM_SLIDER); - DialogItemSetColSpan(di, 3); DialogItemSliderSetBounds(di, 0, num * 4); DialogItemSliderSetUnits(di, 1); DialogItemSliderSetJump(di, 9); DialogItemSliderSetValPtr(di, &tmp_bg_sel_sliderval); DialogItemSetCallback(bg_sel_slider, CB_BGAreaSlide, 0, NULL); - di = bg_filename = DialogAddItem(table, DITEM_TEXT); - DialogItemSetColSpan(di, 3); - DialogItemSetAlign(di, 512, 512); - BG_DialogSetFileName(bg_filename); - di = DialogAddItem(table, DITEM_SEPARATOR); - DialogItemSetColSpan(di, 3); di = DialogAddItem(table, DITEM_CHECKBUTTON); - DialogItemSetColSpan(di, 3); + DialogItemSetText(di, _("Use dithering in Hi-Colour")); + DialogItemCheckButtonSetPtr(di, &tmp_hiq); + + di = DialogAddItem(table, DITEM_CHECKBUTTON); + DialogItemSetText(di, _("Background overrides theme")); + DialogItemCheckButtonSetPtr(di, &tmp_userbg); + + di = DialogAddItem(table, DITEM_CHECKBUTTON); DialogItemSetText(di, _("Enable background transparency compatibility mode")); DialogItemCheckButtonSetPtr(di, &tmp_root_hint); + + di = DialogAddItem(table, DITEM_SEPARATOR); + + di = label = DialogAddItem(table, DITEM_TEXT); + DialogItemSetAlign(di, 512, 512); + Esnprintf(s, sizeof(s), _("Unused backgrounds freed after %2i:%02i:%02i"), + tmp_bg_timeout / 3600, + (tmp_bg_timeout / 60) - (60 * (tmp_bg_timeout / 3600)), + (tmp_bg_timeout) - (60 * (tmp_bg_timeout / 60))); + DialogItemSetText(di, s); + + di = DialogAddItem(table, DITEM_SLIDER); + DialogItemSliderSetMinLength(di, 10); + DialogItemSliderSetBounds(di, 0, 60 * 60 * 4); + DialogItemSliderSetUnits(di, 30); + DialogItemSliderSetJump(di, 60); + DialogItemSliderSetValPtr(di, &tmp_bg_timeout); + DialogItemSetCallback(di, CB_DesktopTimeout, 0, label); } const DialogDef DlgBackground = { ------------------------------------------------------------------------- This SF.net email is sponsored by DB2 Express Download DB2 Express C - the FREE version of DB2 express and take control of your XML. No limits. Just data. Click to get it now. http://sourceforge.net/powerbar/db2/ _______________________________________________ enlightenment-cvs mailing list enlightenment-cvs@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs