diff options
Diffstat (limited to 'data')
83 files changed, 13340 insertions, 721 deletions
diff --git a/data/etc/Makefile.am b/data/etc/Makefile.am index 2c50f01..2c50f01 100755..100644 --- a/data/etc/Makefile.am +++ b/data/etc/Makefile.am diff --git a/data/images/test.svg b/data/images/test.svg index 268b739..268b739 100755..100644 --- a/data/images/test.svg +++ b/data/images/test.svg diff --git a/data/themes/Makefile.am b/data/themes/Makefile.am index 8fc87c2..8fc87c2 100755..100644 --- a/data/themes/Makefile.am +++ b/data/themes/Makefile.am diff --git a/data/themes/images/added_images/DM_Internet_Address_bg.png b/data/themes/images/added_images/DM_Internet_Address_bg.png Binary files differnew file mode 100644 index 0000000..bd40659 --- /dev/null +++ b/data/themes/images/added_images/DM_Internet_Address_bg.png diff --git a/data/themes/images/added_images/DM_Internet_Scroll_01.png b/data/themes/images/added_images/DM_Internet_Scroll_01.png Binary files differnew file mode 100644 index 0000000..2a7aa96 --- /dev/null +++ b/data/themes/images/added_images/DM_Internet_Scroll_01.png diff --git a/data/themes/images/added_images/DM_Internet_Scroll_Down.png b/data/themes/images/added_images/DM_Internet_Scroll_Down.png Binary files differnew file mode 100644 index 0000000..9213af9 --- /dev/null +++ b/data/themes/images/added_images/DM_Internet_Scroll_Down.png diff --git a/data/themes/images/added_images/DM_Internet_Scroll_Increase.png b/data/themes/images/added_images/DM_Internet_Scroll_Increase.png Binary files differnew file mode 100644 index 0000000..0cd2072 --- /dev/null +++ b/data/themes/images/added_images/DM_Internet_Scroll_Increase.png diff --git a/data/themes/images/added_images/DM_Internet_Scroll_Left_h.png b/data/themes/images/added_images/DM_Internet_Scroll_Left_h.png Binary files differnew file mode 100644 index 0000000..25ec7d3 --- /dev/null +++ b/data/themes/images/added_images/DM_Internet_Scroll_Left_h.png diff --git a/data/themes/images/added_images/DM_Internet_Scroll_Middle.png b/data/themes/images/added_images/DM_Internet_Scroll_Middle.png Binary files differnew file mode 100644 index 0000000..ae364c0 --- /dev/null +++ b/data/themes/images/added_images/DM_Internet_Scroll_Middle.png diff --git a/data/themes/images/added_images/DM_Internet_Scroll_Middle_h.png b/data/themes/images/added_images/DM_Internet_Scroll_Middle_h.png Binary files differnew file mode 100644 index 0000000..09e8d22 --- /dev/null +++ b/data/themes/images/added_images/DM_Internet_Scroll_Middle_h.png diff --git a/data/themes/images/added_images/DM_Internet_Scroll_Right_h.png b/data/themes/images/added_images/DM_Internet_Scroll_Right_h.png Binary files differnew file mode 100644 index 0000000..a2642b5 --- /dev/null +++ b/data/themes/images/added_images/DM_Internet_Scroll_Right_h.png diff --git a/data/themes/images/added_images/DM_Internet_Scroll_Up.png b/data/themes/images/added_images/DM_Internet_Scroll_Up.png Binary files differnew file mode 100644 index 0000000..e41c03b --- /dev/null +++ b/data/themes/images/added_images/DM_Internet_Scroll_Up.png diff --git a/data/themes/images/added_images/DM_Internet_Scroll_h_01.png b/data/themes/images/added_images/DM_Internet_Scroll_h_01.png Binary files differnew file mode 100644 index 0000000..923fad7 --- /dev/null +++ b/data/themes/images/added_images/DM_Internet_Scroll_h_01.png diff --git a/data/themes/images/added_images/DM_Internet_Title_bg.png b/data/themes/images/added_images/DM_Internet_Title_bg.png Binary files differnew file mode 100644 index 0000000..96b0f74 --- /dev/null +++ b/data/themes/images/added_images/DM_Internet_Title_bg.png diff --git a/data/themes/images/added_images/DM_Internet_bg.png b/data/themes/images/added_images/DM_Internet_bg.png Binary files differnew file mode 100644 index 0000000..73a9334 --- /dev/null +++ b/data/themes/images/added_images/DM_Internet_bg.png diff --git a/data/themes/images/added_images/DM_Internet_icon_Reduction.png b/data/themes/images/added_images/DM_Internet_icon_Reduction.png Binary files differnew file mode 100644 index 0000000..3295ff1 --- /dev/null +++ b/data/themes/images/added_images/DM_Internet_icon_Reduction.png diff --git a/data/themes/images/added_images/DM_Internet_icon_Zoom.png b/data/themes/images/added_images/DM_Internet_icon_Zoom.png Binary files differnew file mode 100644 index 0000000..f0606e5 --- /dev/null +++ b/data/themes/images/added_images/DM_Internet_icon_Zoom.png diff --git a/data/themes/images/added_images/DM_Internet_icon_close.png b/data/themes/images/added_images/DM_Internet_icon_close.png Binary files differnew file mode 100644 index 0000000..80f0a03 --- /dev/null +++ b/data/themes/images/added_images/DM_Internet_icon_close.png diff --git a/data/themes/images/added_images/DM_Internet_icon_next.png b/data/themes/images/added_images/DM_Internet_icon_next.png Binary files differnew file mode 100644 index 0000000..dfba257 --- /dev/null +++ b/data/themes/images/added_images/DM_Internet_icon_next.png diff --git a/data/themes/images/added_images/DM_Internet_icon_previous.png b/data/themes/images/added_images/DM_Internet_icon_previous.png Binary files differnew file mode 100644 index 0000000..223ef6b --- /dev/null +++ b/data/themes/images/added_images/DM_Internet_icon_previous.png diff --git a/data/themes/images/added_images/DM_mouse_cursor.png b/data/themes/images/added_images/DM_mouse_cursor.png Binary files differnew file mode 100644 index 0000000..3f64fbc --- /dev/null +++ b/data/themes/images/added_images/DM_mouse_cursor.png diff --git a/data/themes/images/added_images/DM_tab_normal.png b/data/themes/images/added_images/DM_tab_normal.png Binary files differnew file mode 100644 index 0000000..d3daba9 --- /dev/null +++ b/data/themes/images/added_images/DM_tab_normal.png diff --git a/data/themes/images/added_images/DM_tab_over.png b/data/themes/images/added_images/DM_tab_over.png Binary files differnew file mode 100644 index 0000000..0822018 --- /dev/null +++ b/data/themes/images/added_images/DM_tab_over.png diff --git a/data/themes/images/added_images/DM_tab_press.png b/data/themes/images/added_images/DM_tab_press.png Binary files differnew file mode 100644 index 0000000..0c26875 --- /dev/null +++ b/data/themes/images/added_images/DM_tab_press.png diff --git a/data/themes/images/added_images/e17_ibar_bg_v.png b/data/themes/images/added_images/e17_ibar_bg_v.png Binary files differnew file mode 100644 index 0000000..c1288d6 --- /dev/null +++ b/data/themes/images/added_images/e17_ibar_bg_v.png diff --git a/data/themes/images/added_images/e17_ibar_over_v.png b/data/themes/images/added_images/e17_ibar_over_v.png Binary files differnew file mode 100644 index 0000000..37007f9 --- /dev/null +++ b/data/themes/images/added_images/e17_ibar_over_v.png diff --git a/data/themes/images/added_images/e17_pointer_mono.png b/data/themes/images/added_images/e17_pointer_mono.png Binary files differnew file mode 100644 index 0000000..51f2f45 --- /dev/null +++ b/data/themes/images/added_images/e17_pointer_mono.png diff --git a/data/themes/images/added_images/e17_scrollbar_hdrag_thumb.png b/data/themes/images/added_images/e17_scrollbar_hdrag_thumb.png Binary files differnew file mode 100644 index 0000000..4792e25 --- /dev/null +++ b/data/themes/images/added_images/e17_scrollbar_hdrag_thumb.png diff --git a/data/themes/images/added_images/e17_scrollbar_vdrag_thumb.png b/data/themes/images/added_images/e17_scrollbar_vdrag_thumb.png Binary files differnew file mode 100644 index 0000000..298dddb --- /dev/null +++ b/data/themes/images/added_images/e17_scrollbar_vdrag_thumb.png diff --git a/data/themes/images/added_images/focus.png b/data/themes/images/added_images/focus.png Binary files differnew file mode 100644 index 0000000..e57f00f --- /dev/null +++ b/data/themes/images/added_images/focus.png diff --git a/data/themes/images/clock/DM_Clock_time.png b/data/themes/images/clock/DM_Clock_time.png Binary files differnew file mode 100644 index 0000000..26987da --- /dev/null +++ b/data/themes/images/clock/DM_Clock_time.png diff --git a/data/themes/images/clock/DM_Clock_time_0.png b/data/themes/images/clock/DM_Clock_time_0.png Binary files differnew file mode 100644 index 0000000..7c76721 --- /dev/null +++ b/data/themes/images/clock/DM_Clock_time_0.png diff --git a/data/themes/images/clock/DM_Clock_time_1.png b/data/themes/images/clock/DM_Clock_time_1.png Binary files differnew file mode 100644 index 0000000..a584b57 --- /dev/null +++ b/data/themes/images/clock/DM_Clock_time_1.png diff --git a/data/themes/images/clock/DM_Clock_time_2.png b/data/themes/images/clock/DM_Clock_time_2.png Binary files differnew file mode 100644 index 0000000..b55a61e --- /dev/null +++ b/data/themes/images/clock/DM_Clock_time_2.png diff --git a/data/themes/images/clock/DM_Clock_time_3.png b/data/themes/images/clock/DM_Clock_time_3.png Binary files differnew file mode 100644 index 0000000..ff72bd4 --- /dev/null +++ b/data/themes/images/clock/DM_Clock_time_3.png diff --git a/data/themes/images/clock/DM_Clock_time_4.png b/data/themes/images/clock/DM_Clock_time_4.png Binary files differnew file mode 100644 index 0000000..992580f --- /dev/null +++ b/data/themes/images/clock/DM_Clock_time_4.png diff --git a/data/themes/images/clock/DM_Clock_time_5.png b/data/themes/images/clock/DM_Clock_time_5.png Binary files differnew file mode 100644 index 0000000..4e842e5 --- /dev/null +++ b/data/themes/images/clock/DM_Clock_time_5.png diff --git a/data/themes/images/clock/DM_Clock_time_6.png b/data/themes/images/clock/DM_Clock_time_6.png Binary files differnew file mode 100644 index 0000000..9b63e74 --- /dev/null +++ b/data/themes/images/clock/DM_Clock_time_6.png diff --git a/data/themes/images/clock/DM_Clock_time_7.png b/data/themes/images/clock/DM_Clock_time_7.png Binary files differnew file mode 100644 index 0000000..2c56288 --- /dev/null +++ b/data/themes/images/clock/DM_Clock_time_7.png diff --git a/data/themes/images/clock/DM_Clock_time_8.png b/data/themes/images/clock/DM_Clock_time_8.png Binary files differnew file mode 100644 index 0000000..17cfdb2 --- /dev/null +++ b/data/themes/images/clock/DM_Clock_time_8.png diff --git a/data/themes/images/clock/DM_Clock_time_9.png b/data/themes/images/clock/DM_Clock_time_9.png Binary files differnew file mode 100644 index 0000000..e0decf5 --- /dev/null +++ b/data/themes/images/clock/DM_Clock_time_9.png diff --git a/data/themes/images/clock/DM_Clock_time_AM.png b/data/themes/images/clock/DM_Clock_time_AM.png Binary files differnew file mode 100644 index 0000000..fd77f60 --- /dev/null +++ b/data/themes/images/clock/DM_Clock_time_AM.png diff --git a/data/themes/images/clock/DM_Clock_time_PM.png b/data/themes/images/clock/DM_Clock_time_PM.png Binary files differnew file mode 100644 index 0000000..fbde98f --- /dev/null +++ b/data/themes/images/clock/DM_Clock_time_PM.png diff --git a/data/themes/images/clock/DM_Clock_time_center.png b/data/themes/images/clock/DM_Clock_time_center.png Binary files differnew file mode 100644 index 0000000..568779c --- /dev/null +++ b/data/themes/images/clock/DM_Clock_time_center.png diff --git a/data/themes/images/flip_0b.png b/data/themes/images/flip_0b.png Binary files differindex 8a6ae9e..8a6ae9e 100755..100644 --- a/data/themes/images/flip_0b.png +++ b/data/themes/images/flip_0b.png diff --git a/data/themes/images/flip_0t.png b/data/themes/images/flip_0t.png Binary files differindex 72506aa..72506aa 100755..100644 --- a/data/themes/images/flip_0t.png +++ b/data/themes/images/flip_0t.png diff --git a/data/themes/images/flip_1b.png b/data/themes/images/flip_1b.png Binary files differindex ed80e8b..ed80e8b 100755..100644 --- a/data/themes/images/flip_1b.png +++ b/data/themes/images/flip_1b.png diff --git a/data/themes/images/flip_1t.png b/data/themes/images/flip_1t.png Binary files differindex 6c1fba8..6c1fba8 100755..100644 --- a/data/themes/images/flip_1t.png +++ b/data/themes/images/flip_1t.png diff --git a/data/themes/images/flip_2b.png b/data/themes/images/flip_2b.png Binary files differindex 3183b59..3183b59 100755..100644 --- a/data/themes/images/flip_2b.png +++ b/data/themes/images/flip_2b.png diff --git a/data/themes/images/flip_2t.png b/data/themes/images/flip_2t.png Binary files differindex 3453e3d..3453e3d 100755..100644 --- a/data/themes/images/flip_2t.png +++ b/data/themes/images/flip_2t.png diff --git a/data/themes/images/flip_3b.png b/data/themes/images/flip_3b.png Binary files differindex 2eca7d4..2eca7d4 100755..100644 --- a/data/themes/images/flip_3b.png +++ b/data/themes/images/flip_3b.png diff --git a/data/themes/images/flip_3t.png b/data/themes/images/flip_3t.png Binary files differindex 4de9804..4de9804 100755..100644 --- a/data/themes/images/flip_3t.png +++ b/data/themes/images/flip_3t.png diff --git a/data/themes/images/flip_4b.png b/data/themes/images/flip_4b.png Binary files differindex 23484c9..23484c9 100755..100644 --- a/data/themes/images/flip_4b.png +++ b/data/themes/images/flip_4b.png diff --git a/data/themes/images/flip_4t.png b/data/themes/images/flip_4t.png Binary files differindex 2029161..2029161 100755..100644 --- a/data/themes/images/flip_4t.png +++ b/data/themes/images/flip_4t.png diff --git a/data/themes/images/flip_5b.png b/data/themes/images/flip_5b.png Binary files differindex 8d9312a..8d9312a 100755..100644 --- a/data/themes/images/flip_5b.png +++ b/data/themes/images/flip_5b.png diff --git a/data/themes/images/flip_5t.png b/data/themes/images/flip_5t.png Binary files differindex df43929..df43929 100755..100644 --- a/data/themes/images/flip_5t.png +++ b/data/themes/images/flip_5t.png diff --git a/data/themes/images/flip_6b.png b/data/themes/images/flip_6b.png Binary files differindex 09393e6..09393e6 100755..100644 --- a/data/themes/images/flip_6b.png +++ b/data/themes/images/flip_6b.png diff --git a/data/themes/images/flip_6t.png b/data/themes/images/flip_6t.png Binary files differindex 3cc4061..3cc4061 100755..100644 --- a/data/themes/images/flip_6t.png +++ b/data/themes/images/flip_6t.png diff --git a/data/themes/images/flip_7b.png b/data/themes/images/flip_7b.png Binary files differindex 9afc419..9afc419 100755..100644 --- a/data/themes/images/flip_7b.png +++ b/data/themes/images/flip_7b.png diff --git a/data/themes/images/flip_7t.png b/data/themes/images/flip_7t.png Binary files differindex abe1bc9..abe1bc9 100755..100644 --- a/data/themes/images/flip_7t.png +++ b/data/themes/images/flip_7t.png diff --git a/data/themes/images/flip_8b.png b/data/themes/images/flip_8b.png Binary files differindex 2185ee9..2185ee9 100755..100644 --- a/data/themes/images/flip_8b.png +++ b/data/themes/images/flip_8b.png diff --git a/data/themes/images/flip_8t.png b/data/themes/images/flip_8t.png Binary files differindex 718e484..718e484 100755..100644 --- a/data/themes/images/flip_8t.png +++ b/data/themes/images/flip_8t.png diff --git a/data/themes/images/flip_9b.png b/data/themes/images/flip_9b.png Binary files differindex f867aea..f867aea 100755..100644 --- a/data/themes/images/flip_9b.png +++ b/data/themes/images/flip_9b.png diff --git a/data/themes/images/flip_9t.png b/data/themes/images/flip_9t.png Binary files differindex 5800a4c..5800a4c 100755..100644 --- a/data/themes/images/flip_9t.png +++ b/data/themes/images/flip_9t.png diff --git a/data/themes/images/flip_amb.png b/data/themes/images/flip_amb.png Binary files differindex e7b3b17..e7b3b17 100755..100644 --- a/data/themes/images/flip_amb.png +++ b/data/themes/images/flip_amb.png diff --git a/data/themes/images/flip_amt.png b/data/themes/images/flip_amt.png Binary files differindex bc6a715..bc6a715 100755..100644 --- a/data/themes/images/flip_amt.png +++ b/data/themes/images/flip_amt.png diff --git a/data/themes/images/flip_b.png b/data/themes/images/flip_b.png Binary files differindex bb7c7e7..bb7c7e7 100755..100644 --- a/data/themes/images/flip_b.png +++ b/data/themes/images/flip_b.png diff --git a/data/themes/images/flip_base.png b/data/themes/images/flip_base.png Binary files differindex 607fba9..607fba9 100755..100644 --- a/data/themes/images/flip_base.png +++ b/data/themes/images/flip_base.png diff --git a/data/themes/images/flip_base_shad.png b/data/themes/images/flip_base_shad.png Binary files differindex 0569977..0569977 100755..100644 --- a/data/themes/images/flip_base_shad.png +++ b/data/themes/images/flip_base_shad.png diff --git a/data/themes/images/flip_colon.png b/data/themes/images/flip_colon.png Binary files differindex 3a674de..3a674de 100755..100644 --- a/data/themes/images/flip_colon.png +++ b/data/themes/images/flip_colon.png diff --git a/data/themes/images/flip_pmb.png b/data/themes/images/flip_pmb.png Binary files differindex de14fa5..de14fa5 100755..100644 --- a/data/themes/images/flip_pmb.png +++ b/data/themes/images/flip_pmb.png diff --git a/data/themes/images/flip_pmt.png b/data/themes/images/flip_pmt.png Binary files differindex 8a72655..8a72655 100755..100644 --- a/data/themes/images/flip_pmt.png +++ b/data/themes/images/flip_pmt.png diff --git a/data/themes/images/flip_shad.png b/data/themes/images/flip_shad.png Binary files differindex 3d74cea..3d74cea 100755..100644 --- a/data/themes/images/flip_shad.png +++ b/data/themes/images/flip_shad.png diff --git a/data/themes/images/flip_t.png b/data/themes/images/flip_t.png Binary files differindex 74ed50d..74ed50d 100755..100644 --- a/data/themes/images/flip_t.png +++ b/data/themes/images/flip_t.png diff --git a/data/themes/images/icon_gadget.png b/data/themes/images/icon_gadget.png Binary files differindex 0f84136..0f84136 100755..100644 --- a/data/themes/images/icon_gadget.png +++ b/data/themes/images/icon_gadget.png diff --git a/data/themes/images/icon_look.png b/data/themes/images/icon_look.png Binary files differindex bb8a366..bb8a366 100755..100644 --- a/data/themes/images/icon_look.png +++ b/data/themes/images/icon_look.png diff --git a/data/themes/images/icon_screenshot.png b/data/themes/images/icon_screenshot.png Binary files differindex bcd2a69..bcd2a69 100755..100644 --- a/data/themes/images/icon_screenshot.png +++ b/data/themes/images/icon_screenshot.png diff --git a/data/themes/images/t0-sh.png b/data/themes/images/t0-sh.png Binary files differindex 0ed5722..0ed5722 100755..100644 --- a/data/themes/images/t0-sh.png +++ b/data/themes/images/t0-sh.png diff --git a/data/themes/images/t0.png b/data/themes/images/t0.png Binary files differindex ed6ccf0..ed6ccf0 100755..100644 --- a/data/themes/images/t0.png +++ b/data/themes/images/t0.png diff --git a/data/themes/images/t1-sh.png b/data/themes/images/t1-sh.png Binary files differindex cf64749..cf64749 100755..100644 --- a/data/themes/images/t1-sh.png +++ b/data/themes/images/t1-sh.png diff --git a/data/themes/images/t1.png b/data/themes/images/t1.png Binary files differindex a41aa73..a41aa73 100755..100644 --- a/data/themes/images/t1.png +++ b/data/themes/images/t1.png diff --git a/data/themes/images/t2.png b/data/themes/images/t2.png Binary files differindex 4c018a4..4c018a4 100755..100644 --- a/data/themes/images/t2.png +++ b/data/themes/images/t2.png diff --git a/data/themes/samsung.edc b/data/themes/samsung.edc index a831ae6..f7af85c 100755..100644 --- a/data/themes/samsung.edc +++ b/data/themes/samsung.edc @@ -1,12 +1,17 @@ // TODO: -// Add group{} locations to all sections. eg. "widget/preview" is found in Wallpaper selector" -// Icons: -// EFM - All popup icons ... eg, paste copy delete properties -// Icons for Menus modules -// Icon for Edge Bindings -// Icon for Modes? +// Formatting review. +// Formatting Process: 1. http://tools.arantius.com/tabifier in C mode +// 2. sed 's/\t/ /g' default.edc > formatted.edc +// 3. Fix up defines, script{}, comments and other nicknacks. +// 4. Replace ": " with ": " and "// " with "// " and so on. +// +// Icons: +// EFM - All popup icons ... eg, paste copy delete properties +// Icons for Menus modules +// Icon for Edge Bindings +// Icon for Modes? +// Replace all (well, most) instances of icon_dummy.png // - /* * So how do themes work? * @@ -36,58 +41,304 @@ * and make sure you have replaced/provided everything here. */ -/* Specturm used in all the gradient icons +/* Spectrum used in all the gradient icons * This needs to be defined outside of the collections * * FIXME: this is bad. namespacing! FIXME! */ -/* +#if 0 spectra { - spectrum { name: "black_to_trans"; + spectrum { + name: "black_to_trans"; color: 0 0 0 255 1; color: 0 0 0 0 1; } } -*/ +#endif +/* color classes are used to control the colors of text and also apply + * tints to images. These can be controlled with the colors dialog. Below + * are the standard color_class names that the module looks for in a + * theme. Consider color classes as a style that can be applied to many + * different items without tinkering with the theme. + * + * color: Font color (Defaults to black) + * color2: Outline color (Defaults to transparent) + * color3: Shadow color (Defaults to transparent) + * + */ + +color_classes { + color_class { + name: "border_top"; + color: 255 255 255 255; + } + color_class { + name: "border_top_hilight"; + color: 255 255 255 255; + } + color_class { + name: "border_bottom"; + color: 255 255 255 255; + } + color_class { + name: "border_title"; + color: 0 0 0 255; + } + color_class { + name: "border_title_active"; + color: 224 224 224 255; + color3: 0 0 0 64; + } + color_class { + name: "menu_base"; + color: 255 255 255 255; + } + color_class { + name: "menu_title"; + color: 224 224 224 255; + color3: 0 0 0 64; + } + color_class { + name: "menu_title_active"; + color: 224 224 224 255; + color3: 0 0 0 64; + } + color_class { + name: "menu_item"; + color: 0 0 0 255; + color3: 0 0 0 0; + } + color_class { + name: "menu_item_active"; + color: 255 255 255 255; + color3: 0 0 0 64; + } + color_class { + name: "menu_item_disabled"; + color: 110 110 110 255; + color3: 0 0 0 0; + } + color_class { + name: "shelf_base"; + color: 255 255 255 255; + } + color_class { + name: "scrollframe_base"; + color: 255 255 255 255; + } + color_class { + name: "winlist_label"; + color: 0 0 0 255; + } + color_class { + name: "winlist_item"; + color: 0 0 0 255; + color3: 0 0 0 0; + } + color_class { + name: "winlist_item_active"; + color: 224 224 224 255; + color3: 0 0 0 64; + } + color_class { + name: "button_text"; + color: 224 224 224 255; + color3: 0 0 0 64; + } + color_class { + name: "button_text_disabled"; + color: 0 0 0 128; + color3: 0 0 0 0; + } + color_class { + name: "fileman_base"; + color: 255 255 255 255; + } + color_class { + name: "ilist_item_base"; + color: 255 255 255 255; + } + color_class { + name: "ilist_item_odd_base"; + color: 255 255 255 255; + } + color_class { + name: "ilist_item_header_base"; + color: 255 255 255 255; + } + color_class { + name: "ilist_item_header_odd_base"; + color: 255 255 255 255; + } + color_class { + name: "ilist_item"; + color: 0 0 0 255; + color3: 0 0 0 0; + } + color_class { + name: "ilist_item_odd"; + color: 0 0 0 255; + color3: 0 0 0 0; + } + color_class { + name: "ilist_item_selected"; + color: 255 255 255 255; + color3: 0 0 0 64; + } + color_class { + name: "ilist_item_header"; + color: 224 224 224 255; + color3: 0 0 0 32; + } + color_class { + name: "ilist_item_header_odd"; + color: 224 224 224 255; + color3: 0 0 0 32; + } + color_class { + name: "dialog_base"; + color: 255 255 255 255; + } + color_class { + name: "move_text"; + color: 0 0 0 255; + } + color_class { + name: "resize_text"; + color: 0 0 0 255; + } + color_class { + name: "check_text"; + color: 0 0 0 255; + } + color_class { + name: "check_text_disabled"; + color: 0 0 0 128; + } + color_class { + name: "radio_text"; + color: 0 0 0 255; + } + color_class { + name: "radio_text_disabled"; + color: 0 0 0 128; + } + color_class { + name: "entry_text"; + color: 0 0 0 255; + } + color_class { + name: "entry_text_disabled"; + color: 128 128 128 255; + } + color_class { + name: "slider_text"; + color: 0 0 0 255; + } + color_class { + name: "slider_text_disabled"; + color: 0 0 0 128; + } + color_class { + name: "frame_base"; + color: 255 255 255 255; + } + color_class { + name: "label_text"; + color: 0 0 0 255; + } + color_class { + name: "label_text_disabled"; + color: 0 0 0 128; + } + color_class { + name: "comp_focus-out_color"; + color: 255 255 255 220; + } + color_class { + name: "tasks_text"; + color: 0 0 0 255; + color3: 0 0 0 0; + } + color_class { + name: "tasks_text_focused"; + color: 224 224 224 255; + color3: 0 0 0 64; + } +} + /* - * this section defined all the theme elements (a collection of groupings of + * this section defines all the theme elements (a collection of groupings of * parts (images, text, rects etc.)) */ -collections { /* begin the collection of edje groups that are in this file */ + +collections { +/* begin the collection of edje groups that are in this file */ ///////////////////////////////////////////////////////////////////////////// - /*** DEFAULT WALLPAPER ***/ - group { name: "e/desktop/background"; /* the name of the group */ - /* this section defines that images are to be included and how to - * encode them */ - /* this section actually contains the list of parts from bottom to top - * (defining the layering/stacking order) */ +/*** DEFAULT WALLPAPER ***/ + group { + name: "e/desktop/background"; parts { - part { name: "background_image"; /* this is the base background */ + part { + name: "background_image"; type: RECT; - description { state: "default" 0.0; /* its default state */ + /* this is the base background */ + description { + state: "default" 0.0; + /* its default state */ color: 0 0 0 255; - } - } + } + } } } - - group { name: "e/desktop/background/scrollframe"; + group { + name: "e/desktop/background/scrollframe"; parts { - part { name: "clipper"; + part { + name: "clipper"; type: RECT; mouse_events: 0; - description { state: "default" 0.0; + description { + state: "default" 0.0; } } - part { name: "e.swallow.content"; + part { + name: "e.swallow.content"; clip_to: "clipper"; type: SWALLOW; - description { state: "default" 0.0; + description { + state: "default" 0.0; rel1.offset: 0 0; rel2 { relative: 0.0 0.0; - offset: -1 -1; + offset: -1 -1; + } + } + } + } + } + group { + name: "e/desktop/background/scrollframe"; + parts { + part { + name: "clipper"; + type: RECT; + mouse_events: 0; + description { + state: "default" 0.0; + } + } + part { + name: "e.swallow.content"; + clip_to: "clipper"; + type: SWALLOW; + description { + state: "default" 0.0; + rel1.offset: 0 0; + rel2 { + relative: 0.0 0.0; + offset: -1 -1; } } } @@ -95,671 +346,8289 @@ collections { /* begin the collection of edje groups that are in this file */ } ///////////////////////////////////////////////////////////////////////////// - /*** DEFAULT WINDOW BORDER ***/ - group { name: "e/widgets/border/default/border"; - alias: "e/widgets/border/shaped/border"; - alias: "e/widgets/border/noresize/border"; - alias: "e/widgets/border/dialog/border"; - alias: "e/widgets/border/noresize_dialog/border"; - alias: "e/widgets/border/pixel/border"; +/*** DEFAULT WINDOW BORDER ***/ + group { + name: "e/widgets/border/default/border"; + /* more images - for the border specifically. remember each images {} + * section fills a global images namespace, so if you re-use an image + * between sections, only 1 copy is kept, so names here are unique. if + * different image {} sections specify the same image but use different + * compression specifications, the compression scheme is undefined and + * may use any one of the schemes requested, so make sure you use the + * same compression scheme */ + images { + image: "added_images/DM_Internet_Title_bg.png" COMP; + image: "added_images/DM_Internet_icon_close.png" COMP; + image: "added_images/DM_Internet_icon_Reduction.png" COMP; + image: "added_images/DM_Internet_icon_Zoom.png" COMP; + image: "added_images/DM_Internet_bg.png" COMP; + image: "added_images/DM_Internet_Address_bg.png" COMP; + image: "added_images/DM_Internet_Title_bg.png" COMP; + image: "bd_top.png" COMP; + image: "bd_top_hilight.png" COMP; + image: "bd_bottom.png" COMP; + image: "bd_title_bg.png" COMP; + image: "bd_title_over.png" COMP; + image: "bd_resize_b.png" COMP; + image: "busy-1.png" COMP; + image: "busy-2.png" COMP; + image: "busy-3.png" COMP; + image: "busy-4.png" COMP; + image: "busy-5.png" COMP; + image: "busy-6.png" COMP; + image: "busy-7.png" COMP; + image: "busy-8.png" COMP; + image: "busy-9.png" COMP; + image: "exclam.png" COMP; + image: "bd_button_close_shadow.png" COMP; + image: "bd_button_close_focused.png" COMP; + image: "bd_button_close_unfocused.png" COMP; + image: "bd_button_max_shadow.png" COMP; + image: "bd_button_max_focused.png" COMP; + image: "bd_button_max_unfocused.png" COMP; + image: "bd_button_min_shadow.png" COMP; + image: "bd_button_min_focused.png" COMP; + image: "bd_button_min_unfocused.png" COMP; + } + /* this would tell E that the border is not a solid rectanle, but is + * shaped (has transparent sections) and so would follow a different + * code path for such borders. the default is not shaped, so this is + * not enabled here, but left commented out for illustration purposes */ + // data.item: "shaped" "1"; parts { - part { name: "top"; - mouse_events: 0; /* accept no mouse events here */ + part { + name: "top"; + mouse_events: 0; + /* accept no mouse events here */ + description { + state: "default" 0.0; + rel1 { + /* this defines the top-left (rel1) point of the part + * and where it is placed. the below values are + * actually the default values, so there is no need + * to actually declare them. */ + relative: 0.0 0.0; + /* make this point relative to the top + * left of the whole eje object (there + * is no to: section so it's the whole + * object). note that the point is + * calculated as: + * p.x = obj.width * relative.x + * p.y = obj.height * relative.y + * (as the to item is the whole object) + */ + offset: 0 0; + /* and from the relative point, have an offset + * of 0 pixels - i.e. - none */ + } + rel2 { + relative: 1.0 1.0; + /* the bottom-right is relative to the + * base of the title - this way the + * title region will scale based on font + * size */ + to_y: "title_base"; + /* only y is relative to title_base. the + * rest is relative to the whole object + * (because its not specified) */ + } + color_class: "border_top"; + image { + /* define the image to use */ + normal: "added_images/DM_Internet_Title_bg.png"; + /* the image */ + } + } + } + part { + name: "bottom"; + /* this is the bottom of the window */ + mouse_events: 0; + description { + state: "default" 0.0; + rel1 { + relative: 0.0 1.0; + } + rel2 { + relative: 1.0 1.0; + } + color_class: "border_bottom"; + } + description { + state: "shaded" 0.0; + /* when in a shaded state then + * don't display this part */ + inherit: "default" 0.0; + visible: 0; + } + description { + state: "max" 0.0; + /* whem maximised too */ + inherit: "default" 0.0; + visible: 0; + } + } + part { + name: "icon_area"; + /* this is an invisible rectangle that we + * use to place icons within. we use this + * to keep it fixed as the "icone area" so + * the actual swallow part that swallows + * the icon can be moved/resized for + * animations */ type: RECT; - description { state: "default" 0.0; + description { + state: "default" 0.0; + visible: 0; + align: 0.0 0.0; + /* alignt to the left, but center vertically */ + aspect: 1.0 1.0; + /* prefer ans aspect of 1.0 (ie width / height + * is 1.0 - i.e. - square. aspect here is + * min and max aspect that will be "allowed" + * (since both min and max are 1.0 respectively + * in order). */ + aspect_preference: VERTICAL; + /* this means that the vertical + * axis controls aspect and the + * icon_area part size will be + * governed by the height of the + * part (the width simply following + * along behind) */ + rel1 { + /* rel1 - top-left corner of this part */ + relative: 0.0 0.0; + } + rel2 { + relative: 0.0 0.0; + } + } + } + part { + name: "icon_area2"; + /* this area is another invisible rect + * that is used for shuffling around parts + * that are relative to it. the states + * below are just a few "random" offsets + * to make it look like whatever is + * relative to icon_area2 is "jiggling" + * around */ + type: RECT; + description { + state: "default" 0.0; + visible: 0; + rel1.to: "icon_area"; + rel2.to: "icon_area"; + } + description { + state: "uw0" 0.0; + /* jiggle */ + inherit: "default" 0.0; + rel1.offset: -3 -2; + rel2.offset: -4 -3; + } + description { + state: "uw1" 0.0; + /* jiggle some more */ + inherit: "default" 0.0; + rel1.offset: 5 -2; + rel2.offset: 4 -3; + } + description { + state: "uw2" 0.0; + /* look at me - jiggling! */ + inherit: "default" 0.0; + rel1.offset: -1 4; + rel2.offset: -2 3; + } + description { + state: "uw3" 0.0; + /* jiggling about */ + inherit: "default" 0.0; + rel1.offset: -2 -1; + rel2.offset: -3 -2; + } + description { + state: "uw4" 0.0; + /* one more jiggle for the dummies */ + inherit: "default" 0.0; + rel1.offset: -4 1; + rel2.offset: -5 0; + } + } + part { + name: "busy"; + /* this is an animation to spin a wheel when the app + * seems too busy to respond to pings */ + mouse_events: 0; + description { + state: "default" 0.0; + visible: 0; + /* nomrally the busy part is not visible */ + color: 255 255 255 0; + /* and its alpha is 0 - se will fade it + * inm later so alpha to 0 (but 255 255 + * 255 for white so we dont also go from + * dark to white while fading) */ + max: 32 32; + /* no bigger than 32x32 - but allow it to be + * smaller if needed */ + aspect: 1.0 1.0; + /* square aspect */ + aspect_preference: BOTH; + /* both axes determine aspect. that + * means that the icon area may + * be 100x50, but the aspect is 1.0 + * so therefore it will be 50x50 as the + * max size. if the area is 50x100 it + * will still be 50x50 as it must fit + * WITHIN the bounds of BOTH axes */ + rel1.to: "icon_area"; + rel2.to: "icon_area"; + image { + tween: "busy-1.png"; + tween: "busy-2.png"; + tween: "busy-3.png"; + tween: "busy-4.png"; + tween: "busy-5.png"; + tween: "busy-6.png"; + tween: "busy-7.png"; + tween: "busy-8.png"; + normal: "busy-9.png"; + /* and we use image tweening. that + * means that we flip through a series + * of images when moving TO this state + * over the transition time. it's like + * specifying multiple frames of an + * animatin sequence. the "final" + * state is "normal". the images + * between are the "tween" images + * listed in order working towards + * the "normal" image */ + } + } + description { + state: "visible" 0.0; + /* the visible state - inherit the + * default one as its all the same, but + * its visible and faded in */ + inherit: "default" 0.0; + visible: 1; + color: 255 255 255 255; + } + } + part { + name: "e.swallow.icon"; + /* finally a swallow part - this is + * just a placeholder to SWALLOW + * other external evas objects into + * this region and edje will control + * any object swallowed as if it were + * this part itself (move, resize, + * etc.) */ + type: SWALLOW; + description { + state: "default" 0.0; + aspect: 1.0 1.0; + aspect_preference: BOTH; + rel1.to: "icon_area2"; + rel2.to: "icon_area2"; + } + description { + state: "shrunk" 0.0; + inherit: "default" 0.0; + rel1.relative: 0.3 0.3; + rel2.relative: 0.7 0.7; + } + } + part { + name: "urgent"; + /* this is the urgnt part it is normally not + * visible, but when the window is in an + * urgent state (the app has set the urgency + * hint) then we go to the visible state */ + mouse_events: 0; + description { + state: "default" 0.0; + visible: 0; + color: 255 255 255 0; + aspect: 1.0 1.0; + aspect_preference: BOTH; + rel1.to: "icon_area"; + rel2.to: "icon_area"; + image.normal: "exclam.png"; + } + description { + state: "visible" 0.0; + /* and in the visible state put the + * exlamation image on top of the icon */ + inherit: "default" 0.0; + visible: 1; + color: 255 255 255 255; + } + } + part { + name: "urgent2"; + /* this is another urgent element. it is actually + * zoomed out to be larger and faded out at the + * same time to give a "pulsating" look to the + * exclamation mark to bring attention to it */ + mouse_events: 0; + description { + state: "default" 0.0; + visible: 0; + color: 255 255 255 0; + aspect: 1.0 1.0; + aspect_preference: BOTH; + rel1.to: "icon_area"; + rel2.to: "icon_area"; + image.normal: "exclam.png"; + } + description { + state: "visible" 0.0; + inherit: "default" 0.0; + visible: 1; + color: 255 255 255 255; + } + description { + state: "faded" 0.0; + inherit: "default" 0.0; + rel1.relative: -1.0 -1.0; + rel2.relative: 2.0 2.0; + visible: 1; + color: 255 255 255 0; + } + } + part { + name: "e.text.title"; + /* this is a text part - the black + * text on the white title top image */ + type: TEXT; + mouse_events: 0; + /* allow this part to scale by a scale factor (dpi) */ + description { + state: "default" 0.0; + visible: 1; + align: 0.5 0.0; + /* align top and left */ + rel1 { + relative: 1.0 0.0; + offset: 9 2; + to_x: "icon_area"; + /* relative to the right side of the icon + * area but 9 pixels away */ + } + rel2 { + relative: 1.0 0.0; + /* and the bottom right is inset by 8 + * pixels from the right of "title_base" + * but as its aligned to the top we can + * keep this at 2 pixels from the top of + * the whole edje object and let alignment + * make it extend downward from that point + * with the text size defining the min size + * vertically below */ + offset: -8 2; + to_x: "title_base"; + } + color: 255 255 255 255; + /* give it a color class so people + * can re-color it if they want */ + text { + font: "Sans"; + /* Use the Bold style + * of the Sans font from + * fontconfig */ + size: 14; + /* size in pixels - 10 */ + min: 0 1; + /* the text will not determine minimum horizontal + * size but WILL determine minimal vertical size + * (thus 0 1 - horiz then vert flags) */ + align: 0.5 0.0; + /* align text to top-left of the region + * given */ + text_class: "title_bar"; + /* text class - so font and size + * can be changed by users */ + } + } + description { + state: "focused" 0.0; + /* when the border is focused + * then make the text fade out + * and vanish */ + inherit: "default" 0.0; + visible: 0; + align: 0.5 0.0; + color: 0 0 0 0; + } + } + part { + name: "bt_close"; + /* the close button shadow */ + mouse_events: 0; + description { + state: "default" 0.0; + min: 14 14; + /* min and max size are the same, so never + * resize this */ + max: 14 14; + aspect: 1.0 1.0; + /* square - always */ + aspect_preference: VERTICAL; + /* the vetical axis controls size + * when applying the aspect ratio + * hint above */ + rel1 { + relative: 1.0 0.0; + offset: -28 1; + to_x: "top"; + to_y: "top"; + } + rel2 { + relative: 1.0 1.0; + offset: -14 -2; + to_x: "top"; + to_y: "top"; + } + image.normal: "added_images/DM_Internet_icon_close.png"; + } + } + part { + name: "bt_max"; + /* maximize button shadow */ + mouse_events: 0; + description { + state: "default" 0.0; + align: 1.0 0.5; + min: 14 14; + max: 14 14; + aspect: 1.0 1.0; + aspect_preference: VERTICAL; + rel1 { + relative: 0.0 0.0; + offset: -2 1; + to_x: "bt_close"; + /* left of the close button */ + to_y: "top"; + } + rel2 { + relative: 0.0 1.0; + offset: -2 -2; + to_x: "bt_close"; + /* left of the close button */ + to_y: "top"; + } + image.normal: "added_images/DM_Internet_icon_Zoom.png"; + } + } + part { + name: "bt_min"; + /* minimize button shadow */ + mouse_events: 0; + description { + state: "default" 0.0; + align: 1.0 0.5; + min: 14 14; + max: 14 14; + aspect: 1.0 1.0; + aspect_preference: VERTICAL; + rel1 { + relative: 0.0 0.0; + offset: -2 1; + to_x: "bt_max"; + /* left of the maximize button */ + to_y: "top"; + } + rel2 { + relative: 0.0 1.0; + offset: -2 -2; + to_x: "bt_max"; + /* left of the maximize button */ + to_y: "top"; + } + image.normal: "added_images/DM_Internet_icon_Reduction.png"; + } + } + part { + name: "top_hilight"; + /* an overlayed image to give the top of + * a border a shiny look - very subtle */ + mouse_events: 0; + description { + state: "default" 0.0; + rel1 { + relative: 0.0 0.0; + offset: 0 0; + to: "top"; + } + rel2 { + relative: 1.0 0.5; + offset: -1 0; + to: "top"; + } + color_class: "border_top_hilight"; + fill.smooth: 0; + } + } + part { + name: "buttons_unfoc"; + /* this is a rect part used to clip & + * thus control the visibility of a group + * of other parts (the images for the + * buttons themselves) with just 1 part + * doing the control as it acts as a + * master switch for all things clipped + * to this part */ + type: RECT; + description { + state: "default" 0.0; + visible: 1; + color: 255 255 255 255; + /* visible and solid */ + } + description { + state: "focused" 0.0; + inherit: "default" 0.0; + visible: 0; + color: 255 255 255 0; + /* invisible and transparent */ + } + } + part { + name: "bt_close_unfoc"; + mouse_events: 0; + clip_to: "buttons_unfoc"; + /* clipping (thus visible region and + * color + alpah is controlled by the + * clip object */ + description { + state: "default" 0.0; + rel1.to: "bt_close"; + rel2.to: "bt_close"; + image.normal: "added_images/DM_Internet_icon_close.png"; + } + description { + state: "active" 0.0; + inherit: "default" 0.0; + rel1.offset: 0 1; + rel2.offset: -1 0; + } + } + part { + name: "bt_max_unfoc"; + mouse_events: 0; + clip_to: "buttons_unfoc"; + description { + state: "default" 0.0; + rel1.to: "bt_max"; + rel2.to: "bt_max"; + image.normal: "added_images/DM_Internet_icon_Zoom.png"; + } + description { + state: "active" 0.0; + inherit: "default" 0.0; + rel1.offset: 0 1; + rel2.offset: -1 0; + } + } + part { + name: "bt_min_unfoc"; + mouse_events: 0; + clip_to: "buttons_unfoc"; + description { + state: "default" 0.0; + rel1.to: "bt_min"; + rel2.to: "bt_min"; + image.normal: "added_images/DM_Internet_icon_Reduction.png"; + } + description { + state: "active" 0.0; + inherit: "default" 0.0; + rel1.offset: 0 1; + rel2.offset: -1 0; + } + } + part { + name: "buttons_foc"; + /* another rect object for clipping */ + type: RECT; + description { + state: "default" 0.0; + visible: 0; + color: 255 255 255 0; + } + description { + state: "focused" 0.0; + inherit: "default" 0.0; + visible: 1; + color: 255 255 255 255; + } + } + part { + name: "bt_close_foc"; + mouse_events: 0; + clip_to: "buttons_foc"; + /* controlled by the other clip object */ + description { + state: "default" 0.0; + rel1.to: "bt_close"; + rel2.to: "bt_close"; + image.normal: "added_images/DM_Internet_icon_close.png"; + } + description { + state: "active" 0.0; + inherit: "default" 0.0; + rel1.offset: 0 1; + rel2.offset: -1 0; + } + } + part { + name: "bt_max_foc"; + mouse_events: 0; + clip_to: "buttons_foc"; + description { + state: "default" 0.0; + rel1.to: "bt_max"; + rel2.to: "bt_max"; + image.normal: "added_images/DM_Internet_icon_Zoom.png"; + } + description { + state: "active" 0.0; + inherit: "default" 0.0; + rel1.offset: 0 1; + rel2.offset: -1 0; + } + } + part { + name: "bt_min_foc"; + mouse_events: 0; + clip_to: "buttons_foc"; + description { + state: "default" 0.0; + rel1.to: "bt_min"; + rel2.to: "bt_min"; + image.normal: "added_images/DM_Internet_icon_Reduction.png"; + } + description { + state: "active" 0.0; + inherit: "default" 0.0; + rel1.offset: 0 1; + rel2.offset: -1 0; + } + } + part { + name: "title_base"; + /* an invisible rect part/object used for + * layout purposes */ + type: RECT; + mouse_events: 0; + description { + state: "default" 0.0; + visible: 0; + rel1 { + relative: 1.0 0.0; + offset: 0 0; + to_x: "icon_area"; + } + rel2 { + relative: 0.0 1.0; + offset: -3 4; + to_y: "e.text.title"; + to_x: "bt_min"; + } + } + } + part { + name: "title_back"; + mouse_events: 0; + description { + state: "default" 0.0; + visible: 0; + rel1 { + to: "title_base"; + } + rel2 { + to: "title_base"; + relative: 1.0 0.0; + } + fill.smooth: 0; + } + description { + state: "focused" 0.0; + inherit: "default" 0.0; + visible: 1; + rel2 { + to: "title_base"; + relative: 1.0 1.0; + } + } + } + part { + name: "title2"; + /* this is interesting. it's another text part + * that also displays the title text, but + * normally is not visible. it is only made + * visibile when the window becomes focused. + * what is interesting is we tell it to source + * the text content from another part - i.e. + * the master "title" part which E sets the + * text of. when that changes this part also + * changes its text. this is a good way to + * use multiple text objects for effects and + * other things that can copy/mimic the content + * of another part */ + type: TEXT; + mouse_events: 0; + effect: SOFT_SHADOW; + /* different style to before - because its + * focused */ + description { + state: "default" 0.0; + visible: 0; + align: 0.0 1.0; + rel1 { + to_x: "e.text.title"; + to_y: "title_back"; + relative: 0.0 1.0; + offset: -1 0; + } + rel2 { + to_x: "e.text.title"; + to_y: "title_back"; + relative: 1.0 1.0; + offset: 0 0; + } + color_class: "border_title_active"; + text { + text_source: "e.text.title"; + /* and here is the magic. tell + * the text to be sourced from + * another part */ + font: "Sans:style=Bold"; + size: 10; + align: 0.5 0.0; + min: 0 1; + text_class: "title_bar"; + } + } + description { + state: "focused" 0.0; + inherit: "default" 0.0; + visible: 1; + } + } + part { + name: "title_over"; + mouse_events: 0; + description { + state: "default" 0.0; + visible: 0; + rel1.to: "title_back"; + rel2.to: "title_back"; + fill.smooth: 0; + } + description { + state: "focused" 0.0; + inherit: "default" 0.0; + visible: 1; + } + } + part { + name: "bottom_clip"; + type: RECT; + description { + state: "default" 0.0; + rel1.to: "bottom"; + rel2.to: "bottom"; + color: 255 255 255 255; + } + } + part { + name: "resize_b"; + mouse_events: 0; + clip_to: "bottom_clip"; + description { + state: "default" 0.0; + min: 20 10; + max: 20 10; + rel1 { + to: "bottom"; + relative: 0.5 0.0; + offset: 0 -10; + } + rel2 { + to: "bottom"; + relative: 0.5 0.0; + offset: 0 -1; + } + } + description { + state: "past" 0.0; + inherit: "default" 0.0; + rel1 { + relative: 0.5 1.0; + offset: 0 0; + } + rel2 { + relative: 0.5 1.0; + offset: 0 9; + } + } + } + part { + name: "e.swallow.client"; + /* this determines where the actual + * client window will be placed in + * the border design */ + type: SWALLOW; + description { + state: "default" 0.0; + rel1 { + relative: 0.0 1.0; + offset: 0 0; + to_y: "top"; + } + rel2 { + relative: 1.0 0.0; + offset: -1 -1; + to_y: "bottom"; + } + } + description { + state: "shaded" 0.0; + inherit: "default" 0.0; + rel2 { + relative: 1.0 1.0; + offset: -1 -1; + to_y: "bottom"; + } + } + description { + state: "max" 0.0; + inherit: "default" 0.0; + rel1 { + relative: 0.0 1.0; + offset: 0 0; + to_y: "top"; + } + rel2 { + relative: 1.0 1.0; + offset: -1 -1; + to_y: "bottom"; + } + } + } + /* these transparent rect parts are used for catching events in a way + * here objects for design don't affect the events. these parts + * are named speciifcally because E has config listening for specific + * signals (events) coming from these named parts and based on those + * will perform certain actions. these are actually all configurable + * by the user, so if they want, clicking the logical "titlebar" could + * close the window, not move it, and so on. the user decides this. + * the theme designer simply indicates the "logcal" use of the theme + * elements they have created */ + part { + name: "e.event.titlebar"; + type: RECT; + description { + state: "default" 0.0; + rel1.to: "title_base"; + rel2.to: "title_base"; + color: 0 0 0 0; + } + } + part { + name: "e.event.resize.t"; + type: RECT; + description { + state: "default" 0.0; + rel1 { + relative: 0.0 0.0; + offset: 0 0; + } + rel2 { + relative: 1.0 0.0; + offset: -1 3; + } + color: 0 0 0 0; + } + description { + state: "shaded" 0.0; + inherit: "default" 0.0; + visible: 0; + } + } + part { + name: "e.event.resize.b"; + type: RECT; + description { + state: "default" 0.0; + rel1 { + relative: 0.0 1.0; + offset: 0 -4; + } + rel2 { + relative: 1.0 1.0; + offset: -1 -1; + } + color: 0 0 0 0; + } + description { + state: "shaded" 0.0; + inherit: "default" 0.0; + visible: 0; + } + } + part { + name: "e.event.resize.tl"; + type: RECT; + description { + state: "default" 0.0; + rel1 { + relative: 0.0 0.0; + offset: 0 0; + } + rel2 { + relative: 0.0 0.0; + offset: 15 15; + } + color: 0 0 0 0; + } + description { + state: "shaded" 0.0; + inherit: "default" 0.0; + visible: 0; + } + } + part { + name: "e.event.resize.tr"; + type: RECT; + description { + state: "default" 0.0; + rel1 { + relative: 1.0 0.0; + offset: -16 0; + } + rel2 { + relative: 1.0 0.0; + offset: -1 15; + } + color: 0 0 0 0; + } + description { + state: "shaded" 0.0; + inherit: "default" 0.0; + visible: 0; + } + } + part { + name: "e.event.resize.bl"; + type: RECT; + description { + state: "default" 0.0; + rel1 { + relative: 0.0 1.0; + offset: 0 -16; + } + rel2 { + relative: 0.0 1.0; + offset: 15 -1; + } + color: 0 0 0 0; + } + description { + state: "shaded" 0.0; + inherit: "default" 0.0; + visible: 0; + } + } + part { + name: "e.event.resize.br"; + type: RECT; + description { + state: "default" 0.0; + rel1 { + relative: 1.0 1.0; + offset: -16 -16; + } + rel2 { + relative: 1.0 1.0; + offset: -1 -1; + } + color: 0 0 0 0; + } + description { + state: "shaded" 0.0; + inherit: "default" 0.0; + visible: 0; + } + } + part { + name: "e.event.icon"; + type: RECT; + description { + state: "default" 0.0; + rel1.to: "icon_area"; + rel2.to: "icon_area"; + color: 0 0 0 0; + } + } + part { + name: "e.event.close"; + type: RECT; + description { + state: "default" 0.0; + rel1.to: "bt_close"; + rel2.to: "bt_close"; + color: 0 0 0 0; + } + } + part { + name: "e.event.minimize"; + type: RECT; + description { + state: "default" 0.0; + rel1.to: "bt_min"; + rel2.to: "bt_min"; + color: 0 0 0 0; + } + } + part { + name: "e.event.maximize"; + type: RECT; + description { + state: "default" 0.0; + rel1.to: "bt_max"; + rel2.to: "bt_max"; + color: 0 0 0 0; + } + } + } + /* programs - these are basically snippets of simple logic to respond to + * incoming signals (generated by signal emisions by code or events) */ + programs { + program { + name: "focus_in"; + /* name of the program. must be unique + * within the list of programs attached + * to a group of parts */ + signal: "e,state,focused"; + /* what signal triggers this program, + * if any. this can also be a glob like + * "mouse,down,*" for example. note + * that globs are slower to match + * and empty strings are literal matches + * too */ + source: "e"; + /* the source of the signal - this must also match for + * the program to be run */ + action: STATE_SET "default" 0.0; + /* the action the program will + * perform. in this case + * it will set the state to + * "focused" @ value 0.0 */ + target: "title_back"; + /* these are the targets for the action. + * i.e. which parts will have their state + * set to "focused" over 0.2 seconds */ + target: "title2"; + target: "title_over"; + target: "buttons_foc"; + target: "buttons_unfoc"; + target: "e.text.title"; + } + program { + name: "focus_out"; + /* this program is run when focus is + * removed from a window border */ + signal: "e,state,unfocused"; + source: "e"; + action: STATE_SET "default" 0.0; + target: "title_back"; + target: "title2"; + target: "title_over"; + target: "buttons_foc"; + target: "buttons_unfoc"; + target: "e.text.title"; + } + program { + name: "urgent"; + /* this program is run when the border is + * meant to display an "urgent" state + * (the application has something + * important to show the user) */ + signal: "e,state,urgent"; + source: "e"; + action: STATE_SET "visible" 0.0; + transition: DECELERATE 0.5; + /* instead of a linear transition + * this will vary from state A to B + * but slow down towards the end */ + target: "urgent"; + target: "urgent2"; + after: "urgent2"; + /* when this program and its transition are + * finished then chain (run) the "urgent2" + * program below. this way a series of actions + * and trnasitions can be chained together one + * after the other */ + } + program { + name: "urgent2"; + action: STATE_SET "faded" 0.0; + transition: LINEAR 0.5; + target: "urgent2"; + after: "urgent3"; + } + program { + name: "urgent3"; + action: STATE_SET "visible" 0.0; + target: "urgent2"; + /* notice - no transition. when not specified + * it is assumed that the action should happen + * immediately with no transition over time */ + after: "urgent2"; + } + program { + name: "urgentw0"; + /* these ae a list of icon "wobble" + * programs to indicate urgency */ + signal: "e,state,urgent"; + source: "e"; + action: STATE_SET "default" 0.0; + transition: DECELERATE 0.1; + target: "icon_area2"; + after: "urgentw1"; + } + program { + name: "urgentw1"; + action: STATE_SET "uw1" 0.0; + transition: DECELERATE 0.1; + target: "icon_area2"; + after: "urgentw2"; + } + program { + name: "urgentw2"; + action: STATE_SET "uw2" 0.0; + target: "icon_area2"; + transition: DECELERATE 0.1; + after: "urgentw3"; + } + program { + name: "urgentw3"; + action: STATE_SET "uw3" 0.0; + transition: DECELERATE 0.1; + target: "icon_area2"; + after: "urgentw4"; + } + program { + name: "urgentw4"; + action: STATE_SET "uw4" 0.0; + transition: DECELERATE 0.1; + target: "icon_area2"; + after: "urgentw0"; + } + program { + name: "not_urgent"; + /* run when the window stops being + * urgent */ + signal: "e,state,not_urgent"; + source: "e"; + action: ACTION_STOP; + /* this action will stop other running programs + * that are currently active. the programs to + * stop are named in the targets below */ + target: "urgentw0"; + target: "urgentw1"; + target: "urgentw2"; + target: "urgentw3"; + target: "urgentw4"; + target: "urgent"; + target: "urgent2"; + target: "urgent3"; + after: "not_urgent2"; + } + program { + name: "not_urgent2"; + action: STATE_SET "default" 0.0; + target: "urgent"; + target: "urgent2"; + target: "icon_area2"; + } + program { + name: "hung"; + /* run when an app is known to be hung/not + * responding to ping requests */ + signal: "e,state,hung"; + source: "e"; + action: STATE_SET "shrunk" 0.0; + target: "e.swallow.icon"; + transition: DECELERATE 0.5; + } + program { + name: "unhung"; + /* when an app was hung but has started to + * respond again, this is run */ + signal: "e,state,unhung"; + source: "e"; + action: ACTION_STOP; + target: "busy_anim"; + } + program { + name: "unhung2"; + signal: "e,state,unhung"; + source: "e"; + action: STATE_SET "default" 0.0; + target: "e.swallow.icon"; + target: "busy"; + transition: ACCELERATE 0.5; + } + program { + name: "busy_anim"; + /* multiple programs can be triggered + * from the same signals so this is + * also run when an app becomes "hung" */ + signal: "e,state,hung"; + source: "e"; + action: STATE_SET "visible" 0.0; + transition: LINEAR 0.3333; + target: "busy"; + after: "busy_anim"; + } + // don't have states/anim for a generic iconify action + // program { name: "xx"; + // signal: "e,action,iconify"; + // source: "e"; + // } + // don't have states/anim for a generic uniconify action + // program { name: "xx"; + // signal: "e,action,uniconify"; + // source: "e"; + // } + // don't have states/anim for a generic maximize action + // program { name: "xx"; + // signal: "e,action,maximize"; + // source: "e"; + // } + // don't have states/anim for a generic unmaximize action + // program { name: "xx"; + // signal: "e,action,unmaximize"; + // source: "e"; + // } + program { + name: "max_full"; + /* run on fullscreen maximize */ + signal: "e,action,maximize,fullscreen"; + source: "e"; + action: STATE_SET "max" 0.0; + target: "bottom"; + target: "e.swallow.client"; + } + program { + name: "unmax_full"; + /* run on unmaximize from fullscreen */ + signal: "e,action,unmaximize,fullscreen"; + source: "e"; + action: STATE_SET "default" 0.0; + target: "bottom"; + target: "e.swallow.client"; + } + // don't have any animation or stat change to do at the start of shading + // program { name: "xx"; + // signal: "e,state,shading"; + // source: "e"; + // } + program { + name: "shade_end"; + /* run when the window finishes its + * shading animation */ + signal: "e,state,shaded"; + source: "e"; + action: STATE_SET "shaded" 0.0; + target: "bottom"; + target: "e.swallow.client"; + target: "e.event.resize.tl"; + target: "e.event.resize.tr"; + target: "e.event.resize.bl"; + target: "e.event.resize.br"; + target: "e.event.resize.t"; + target: "e.event.resize.b"; + } + program { + name: "unshade_start"; + /* run when the window starts + * unshading itself */ + signal: "e,state,unshading"; + source: "e"; + action: STATE_SET "default" 0.0; + target: "bottom"; + target: "e.swallow.client"; + target: "e.event.resize.tl"; + target: "e.event.resize.tr"; + target: "e.event.resize.bl"; + target: "e.event.resize.br"; + target: "e.event.resize.t"; + target: "e.event.resize.b"; + } + // don't have any animation or stat change to do at the end of unshading + // program { name: "xx"; + // signal: "e,state,unshaded"; + // source: "e"; + // } + program { + name: "resize_b_on"; + signal: "mouse,in"; + /* on mouse enter... */ + source: "e.event.resize.b"; + /* in this named part */ + action: ACTION_STOP; + /* stop the following programs */ + target: "resize_b_on2"; + target: "resize_b_on3"; + after: "resize_b_on2"; + /* then run... */ + } + program { + name: "resize_b_on2"; + action: STATE_SET "default" 0.0; + target: "resize_b"; + after: "resize_b_on3"; + } + program { + name: "resize_b_on3"; + action: STATE_SET "past" 0.0; + transition: LINEAR 0.5; + target: "resize_b"; + after: "resize_b_on2"; + } + program { + name: "resize_b_off"; + signal: "mouse,out"; + /* on mouse leave... */ + source: "e.event.resize.b"; + action: ACTION_STOP; + target: "resize_b_on"; + target: "resize_b_on2"; + target: "resize_b_on3"; + } + program { + name: "icon_down"; + signal: "mouse,down,*"; + /* if any mouse button is pressed... */ + source: "e.event.icon"; + action: STATE_SET "active" 0.0; + target: "icon_area"; + } + program { + name: "icon_up"; + signal: "mouse,up,*"; + /* if any mouse button is released... */ + source: "e.event.icon"; + action: STATE_SET "default" 0.0; + target: "icon_area"; + } + program { + name: "bt_close_down"; + signal: "mouse,down,*"; + source: "e.event.close"; + action: STATE_SET "active" 0.0; + target: "bt_close_unfoc"; + target: "bt_close_foc"; + } + program { + name: "bt_close_up"; + signal: "mouse,up,*"; + source: "e.event.close"; + action: STATE_SET "default" 0.0; + target: "bt_close_unfoc"; + target: "bt_close_foc"; + } + program { + name: "bt_max_down"; + signal: "mouse,down,*"; + source: "e.event.maximize"; + action: STATE_SET "active" 0.0; + target: "bt_max_unfoc"; + target: "bt_max_foc"; + } + program { + name: "bt_max_up"; + signal: "mouse,up,*"; + source: "e.event.maximize"; + action: STATE_SET "default" 0.0; + target: "bt_max_unfoc"; + target: "bt_max_foc"; + } + program { + name: "bt_min_down"; + signal: "mouse,down,*"; + source: "e.event.minimize"; + action: STATE_SET "active" 0.0; + target: "bt_min_unfoc"; + target: "bt_min_foc"; + } + program { + name: "bt_min_up"; + signal: "mouse,up,*"; + source: "e.event.minimize"; + action: STATE_SET "default" 0.0; + target: "bt_min_unfoc"; + target: "bt_min_foc"; + } + } + } + /* more border types - see comments in the default border for information */ + /*** SHAPED WINDOW BORDER ***/ + group { + name: "e/widgets/border/shaped/border"; + images { + image: "bd_top.png" COMP; + image: "bd_top_hilight.png" COMP; + image: "bd_bottom.png" COMP; + image: "bd_title_bg.png" COMP; + image: "bd_title_over.png" COMP; + image: "bd_resize_b.png" COMP; + image: "busy-1.png" COMP; + image: "busy-2.png" COMP; + image: "busy-3.png" COMP; + image: "busy-4.png" COMP; + image: "busy-5.png" COMP; + image: "busy-6.png" COMP; + image: "busy-7.png" COMP; + image: "busy-8.png" COMP; + image: "busy-9.png" COMP; + image: "exclam.png" COMP; + image: "bd_button_close_shadow.png" COMP; + image: "bd_button_close_focused.png" COMP; + image: "bd_button_close_unfocused.png" COMP; + image: "bd_button_max_shadow.png" COMP; + image: "bd_button_max_focused.png" COMP; + image: "bd_button_max_unfocused.png" COMP; + image: "bd_button_min_shadow.png" COMP; + image: "bd_button_min_focused.png" COMP; + image: "bd_button_min_unfocused.png" COMP; + } + data.item: "shaped" "1"; + parts { + part { + name: "top"; + mouse_events: 0; + description { + state: "default" 0.0; + rel1 { + relative: 0.0 0.0; + offset: 0 0; + } + rel2 { + relative: 1.0 1.0; + offset: -1 -1; + to_y: "title_base"; + } + color_class: "border_top"; + image { + normal: "bd_top.png"; + border: 2 2 2 2; + } + } + } + part { + name: "bottom"; + mouse_events: 0; + description { + state: "default" 0.0; + rel1 { + relative: 0.0 1.0; + offset: 0 -4; + } + rel2 { + relative: 1.0 1.0; + offset: -1 -1; + } + color_class: "border_bottom"; + image { + normal: "bd_bottom.png"; + border: 2 2 0 0; + } + } + description { + state: "shaded" 0.0; + inherit: "default" 0.0; + visible: 0; + } + description { + state: "max" 0.0; + inherit: "default" 0.0; + visible: 0; + } + } + part { + name: "icon_area"; + type: RECT; + description { + state: "default" 0.0; + visible: 0; + align: 0.0 0.5; + aspect: 1.0 1.0; + aspect_preference: VERTICAL; + rel1 { + relative: 0.0 0.0; + offset: 2 2; + } + rel2 { + relative: 0.0 1.0; + offset: 2 -3; + to_y: "title_base"; + } + } + description { + state: "active" 0.0; + inherit: "default" 0.0; + rel1 { + offset: 2 3; + } + rel2 { + offset: 2 -2; + } + } + } + part { + name: "icon_area2"; + type: RECT; + description { + state: "default" 0.0; + visible: 0; + rel1.to: "icon_area"; + rel2.to: "icon_area"; + } + description { + state: "uw0" 0.0; + inherit: "default" 0.0; + rel1.offset: -3 -2; + rel2.offset: -4 -3; + } + description { + state: "uw1" 0.0; + inherit: "default" 0.0; + rel1.offset: 5 -2; + rel2.offset: 4 -3; + } + description { + state: "uw2" 0.0; + inherit: "default" 0.0; + rel1.offset: -1 4; + rel2.offset: -2 3; + } + description { + state: "uw3" 0.0; + inherit: "default" 0.0; + rel1.offset: -2 -1; + rel2.offset: -3 -2; + } + description { + state: "uw4" 0.0; + inherit: "default" 0.0; + rel1.offset: -4 1; + rel2.offset: -5 0; + } + } + part { + name: "busy"; + mouse_events: 0; + description { + state: "default" 0.0; + visible: 0; + color: 255 255 255 0; + max: 32 32; + aspect: 1.0 1.0; + aspect_preference: BOTH; + rel1.to: "icon_area"; + rel2.to: "icon_area"; + image { + tween: "busy-1.png"; + tween: "busy-2.png"; + tween: "busy-3.png"; + tween: "busy-4.png"; + tween: "busy-5.png"; + tween: "busy-6.png"; + tween: "busy-7.png"; + tween: "busy-8.png"; + normal: "busy-9.png"; + } + } + description { + state: "visible" 0.0; + inherit: "default" 0.0; + visible: 1; + color: 255 255 255 255; + } + } + part { + name: "e.swallow.icon"; + type: SWALLOW; + description { + state: "default" 0.0; + aspect: 1.0 1.0; + aspect_preference: BOTH; + rel1.to: "icon_area2"; + rel2.to: "icon_area2"; + } + description { + state: "shrunk" 0.0; + inherit: "default" 0.0; + rel1.relative: 0.3 0.3; + rel2.relative: 0.7 0.7; + } + } + part { + name: "urgent"; + mouse_events: 0; + description { + state: "default" 0.0; + visible: 0; + color: 255 255 255 0; + aspect: 1.0 1.0; + aspect_preference: BOTH; + rel1.to: "icon_area"; + rel2.to: "icon_area"; + image.normal: "exclam.png"; + } + description { + state: "visible" 0.0; + inherit: "default" 0.0; + visible: 1; + color: 255 255 255 255; + } + } + part { + name: "urgent2"; + mouse_events: 0; + description { + state: "default" 0.0; + visible: 0; + color: 255 255 255 0; + aspect: 1.0 1.0; + aspect_preference: BOTH; + rel1.to: "icon_area"; + rel2.to: "icon_area"; + image.normal: "exclam.png"; + } + description { + state: "visible" 0.0; + inherit: "default" 0.0; + visible: 1; + color: 255 255 255 255; + } + description { + state: "faded" 0.0; + inherit: "default" 0.0; + rel1.relative: -1.0 -1.0; + rel2.relative: 2.0 2.0; + visible: 1; + color: 255 255 255 0; + } + } + part { + name: "e.text.title"; + type: TEXT; + mouse_events: 0; + description { + state: "default" 0.0; + visible: 1; + align: 0.0 0.0; + rel1 { + relative: 1.0 0.0; + offset: 9 2; + to_x: "icon_area"; + } + rel2 { + relative: 1.0 0.0; + offset: -8 2; + to_x: "title_base"; + } + color_class: "border_title"; + text { + font: "Sans:style=Bold"; + size: 10; + min: 0 1; + align: 0.0 0.0; + text_class: "title_bar"; + } + } + description { + state: "focused" 0.0; + inherit: "default" 0.0; + visible: 0; + color: 0 0 0 0; + } + } + part { + name: "bt_close"; + mouse_events: 0; + description { + state: "default" 0.0; + min: 14 14; + max: 14 14; + aspect: 1.0 1.0; + aspect_preference: VERTICAL; + rel1 { + relative: 1.0 0.0; + offset: -28 1; + to_x: "top"; + to_y: "top"; + } + rel2 { + relative: 1.0 1.0; + to_x: "top"; + to_y: "top"; + } + image.normal: "bd_button_close_shadow.png"; + } + } + part { + name: "bt_max"; + mouse_events: 0; + description { + state: "default" 0.0; + align: 1.0 0.5; + min: 22 22; + max: 22 22; + aspect: 1.0 1.0; + aspect_preference: VERTICAL; + rel1 { + relative: 0.0 0.0; + offset: -2 1; + to_x: "bt_close"; + to_y: "top"; + } + rel2 { + relative: 0.0 1.0; + offset: -2 -2; + to_x: "bt_close"; + to_y: "top"; + } + image.normal: "bd_button_max_shadow.png"; + } + } + part { + name: "bt_min"; + mouse_events: 0; + description { + state: "default" 0.0; + align: 1.0 0.5; + min: 22 22; + max: 22 22; + aspect: 1.0 1.0; + aspect_preference: VERTICAL; + rel1 { + relative: 0.0 0.0; + offset: -2 1; + to_x: "bt_max"; + to_y: "top"; + } + rel2 { + relative: 0.0 1.0; + offset: -2 -2; + to_x: "bt_max"; + to_y: "top"; + } + image.normal: "bd_button_min_shadow.png"; + } + } + part { + name: "top_hilight"; + mouse_events: 0; + description { + state: "default" 0.0; + rel1 { + relative: 0.0 0.0; + offset: 0 0; + to: "top"; + } + rel2 { + relative: 1.0 0.5; + offset: -1 0; + to: "top"; + } + color_class: "border_top_hilight"; + image { + normal: "bd_top_hilight.png"; + } + fill.smooth: 0; + } + } + part { + name: "buttons_unfoc"; + type: RECT; + description { + state: "default" 0.0; + visible: 1; + color: 255 255 255 255; + } + description { + state: "focused" 0.0; + inherit: "default" 0.0; + visible: 0; + color: 255 255 255 0; + } + } + part { + name: "bt_close_unfoc"; + mouse_events: 0; + clip_to: "buttons_unfoc"; + description { + state: "default" 0.0; + rel1.to: "bt_close"; + rel2.to: "bt_close"; + image.normal: "bd_button_close_unfocused.png"; + } + description { + state: "active" 0.0; + inherit: "default" 0.0; + rel1.offset: 0 1; + rel2.offset: -1 0; + } + } + part { + name: "bt_max_unfoc"; + mouse_events: 0; + clip_to: "buttons_unfoc"; + description { + state: "default" 0.0; + rel1.to: "bt_max"; + rel2.to: "bt_max"; + image.normal: "bd_button_max_unfocused.png"; + } + description { + state: "active" 0.0; + inherit: "default" 0.0; + rel1.offset: 0 1; + rel2.offset: -1 0; + } + } + part { + name: "bt_min_unfoc"; + mouse_events: 0; + clip_to: "buttons_unfoc"; + description { + state: "default" 0.0; + rel1.to: "bt_min"; + rel2.to: "bt_min"; + image.normal: "bd_button_min_unfocused.png"; + } + description { + state: "active" 0.0; + inherit: "default" 0.0; + rel1.offset: 0 1; + rel2.offset: -1 0; + } + } + part { + name: "buttons_foc"; + type: RECT; + description { + state: "default" 0.0; + visible: 0; + color: 255 255 255 0; + } + description { + state: "focused" 0.0; + inherit: "default" 0.0; + visible: 1; + color: 255 255 255 255; + } + } + part { + name: "bt_close_foc"; + mouse_events: 0; + clip_to: "buttons_foc"; + description { + state: "default" 0.0; + rel1.to: "bt_close"; + rel2.to: "bt_close"; + image.normal: "bd_button_close_focused.png"; + } + description { + state: "active" 0.0; + inherit: "default" 0.0; + rel1.offset: 0 1; + rel2.offset: -1 0; + } + } + part { + name: "bt_max_foc"; + mouse_events: 0; + clip_to: "buttons_foc"; + description { + state: "default" 0.0; + rel1.to: "bt_max"; + rel2.to: "bt_max"; + image.normal: "bd_button_max_focused.png"; + } + description { + state: "active" 0.0; + inherit: "default" 0.0; + rel1.offset: 0 1; + rel2.offset: -1 0; + } + } + part { + name: "bt_min_foc"; + mouse_events: 0; + clip_to: "buttons_foc"; + description { + state: "default" 0.0; + rel1.to: "bt_min"; + rel2.to: "bt_min"; + image.normal: "bd_button_min_focused.png"; + } + description { + state: "active" 0.0; + inherit: "default" 0.0; + rel1.offset: 0 1; + rel2.offset: -1 0; + } + } + part { + name: "title_base"; + type: RECT; + mouse_events: 0; + description { + state: "default" 0.0; + visible: 0; + rel1 { + relative: 1.0 0.0; + offset: 0 0; + to_x: "icon_area"; + } + rel2 { + relative: 0.0 1.0; + offset: -3 4; + to_y: "e.text.title"; + to_x: "bt_min"; + } + } + } + part { + name: "title_back"; + mouse_events: 0; + description { + state: "default" 0.0; + visible: 0; + rel1 { + to: "title_base"; + } + rel2 { + to: "title_base"; + relative: 1.0 0.0; + } + image { + normal: "bd_title_bg.png"; + border: 7 7 2 7; + } + fill.smooth: 0; + } + description { + state: "focused" 0.0; + inherit: "default" 0.0; + visible: 1; + rel2 { + to: "title_base"; + relative: 1.0 1.0; + } + } + } + part { + name: "title2"; + type: TEXT; + mouse_events: 0; + effect: SOFT_SHADOW; + description { + state: "default" 0.0; + visible: 0; + align: 0.0 1.0; + rel1 { + to_x: "e.text.title"; + to_y: "title_back"; + relative: 0.0 1.0; + offset: -1 0; + } + rel2 { + to_x: "e.text.title"; + to_y: "title_back"; + relative: 1.0 1.0; + offset: 0 1; + } + color_class: "border_title_active"; + text { + text_source: "e.text.title"; + font: "Sans:style=Bold"; + size: 10; + align: 0.0 0.0; + min: 0 1; + text_class: "title_bar"; + } + } + description { + state: "focused" 0.0; + inherit: "default" 0.0; + visible: 1; + } + } + part { + name: "title_over"; + mouse_events: 0; + description { + state: "default" 0.0; + visible: 0; + rel1.to: "title_back"; + rel2.to: "title_back"; + image { + normal: "bd_title_over.png"; + border: 7 7 2 7; + } + fill.smooth: 0; + } + description { + state: "focused" 0.0; + inherit: "default" 0.0; + visible: 1; + } + } + part { + name: "bottom_clip"; + type: RECT; + description { + state: "default" 0.0; + rel1.to: "bottom"; + rel2.to: "bottom"; + color: 255 255 255 255; + } + } + part { + name: "resize_b"; + mouse_events: 0; + clip_to: "bottom_clip"; + description { + state: "default" 0.0; + min: 20 10; + max: 20 10; + rel1 { + to: "bottom"; + relative: 0.5 0.0; + offset: 0 -10; + } + rel2 { + to: "bottom"; + relative: 0.5 0.0; + offset: 0 -1; + } + image { + normal: "bd_resize_b.png"; + } + } + description { + state: "past" 0.0; + inherit: "default" 0.0; + rel1 { + relative: 0.5 1.0; + offset: 0 0; + } + rel2 { + relative: 0.5 1.0; + offset: 0 9; + } + } + } + part { + name: "e.swallow.client"; + type: SWALLOW; + description { + state: "default" 0.0; + rel1 { + relative: 0.0 1.0; + offset: 0 0; + to_y: "top"; + } + rel2 { + relative: 1.0 0.0; + offset: -1 -1; + to_y: "bottom"; + } + } + description { + state: "shaded" 0.0; + inherit: "default" 0.0; + rel2 { + relative: 1.0 1.0; + offset: -1 -1; + to_y: "bottom"; + } + } + description { + state: "max" 0.0; + inherit: "default" 0.0; + rel1 { + relative: 0.0 1.0; + offset: 0 0; + to_y: "top"; + } + rel2 { + relative: 1.0 1.0; + offset: -1 -1; + to_y: "bottom"; + } + } + } + part { + name: "e.event.titlebar"; + type: RECT; + description { + state: "default" 0.0; + rel1.to: "title_base"; + rel2.to: "title_base"; + color: 0 0 0 0; + } + } + part { + name: "e.event.resize.t"; + type: RECT; + description { + state: "default" 0.0; + rel1 { + relative: 0.0 0.0; + offset: 0 0; + } + rel2 { + relative: 1.0 0.0; + offset: -1 3; + } + color: 0 0 0 0; + } + description { + state: "shaded" 0.0; + inherit: "default" 0.0; + visible: 0; + } + } + part { + name: "e.event.resize.b"; + type: RECT; + description { + state: "default" 0.0; + rel1 { + relative: 0.0 1.0; + offset: 0 -4; + } + rel2 { + relative: 1.0 1.0; + offset: -1 -1; + } + color: 0 0 0 0; + } + description { + state: "shaded" 0.0; + inherit: "default" 0.0; + visible: 0; + } + } + part { + name: "e.event.resize.tl"; + type: RECT; + description { + state: "default" 0.0; + rel1 { + relative: 0.0 0.0; + offset: 0 0; + } + rel2 { + relative: 0.0 0.0; + offset: 15 15; + } + color: 0 0 0 0; + } + description { + state: "shaded" 0.0; + inherit: "default" 0.0; + visible: 0; + } + } + part { + name: "e.event.resize.tr"; + type: RECT; + description { + state: "default" 0.0; + rel1 { + relative: 1.0 0.0; + offset: -16 0; + } + rel2 { + relative: 1.0 0.0; + offset: -1 15; + } + color: 0 0 0 0; + } + description { + state: "shaded" 0.0; + inherit: "default" 0.0; + visible: 0; + } + } + part { + name: "e.event.resize.bl"; + type: RECT; + description { + state: "default" 0.0; + rel1 { + relative: 0.0 1.0; + offset: 0 -16; + } + rel2 { + relative: 0.0 1.0; + offset: 15 -1; + } + color: 0 0 0 0; + } + description { + state: "shaded" 0.0; + inherit: "default" 0.0; + visible: 0; + } + } + part { + name: "e.event.resize.br"; + type: RECT; + description { + state: "default" 0.0; + rel1 { + relative: 1.0 1.0; + offset: -16 -16; + } + rel2 { + relative: 1.0 1.0; + offset: -1 -1; + } + color: 0 0 0 0; + } + description { + state: "shaded" 0.0; + inherit: "default" 0.0; + visible: 0; + } + } + part { + name: "e.event.icon"; + type: RECT; + description { + state: "default" 0.0; + rel1.to: "icon_area"; + rel2.to: "icon_area"; + color: 0 0 0 0; + } + } + part { + name: "e.event.close"; + type: RECT; + description { + state: "default" 0.0; + rel1.to: "bt_close"; + rel2.to: "bt_close"; + color: 0 0 0 0; + } + } + part { + name: "e.event.minimize"; + type: RECT; + description { + state: "default" 0.0; + rel1.to: "bt_min"; + rel2.to: "bt_min"; + color: 0 0 0 0; + } + } + part { + name: "e.event.maximize"; + type: RECT; + description { + state: "default" 0.0; + rel1.to: "bt_max"; + rel2.to: "bt_max"; + color: 0 0 0 0; + } + } + } + programs { + program { + name: "focus_in"; + signal: "e,state,focused"; + source: "e"; + action: STATE_SET "focused" 0.0; + transition: LINEAR 0.2; + target: "title_back"; + target: "title2"; + target: "title_over"; + target: "buttons_foc"; + target: "buttons_unfoc"; + target: "e.text.title"; + } + program { + name: "focus_out"; + signal: "e,state,unfocused"; + source: "e"; + action: STATE_SET "default" 0.0; + transition: LINEAR 0.2; + target: "title_back"; + target: "title2"; + target: "title_over"; + target: "buttons_foc"; + target: "buttons_unfoc"; + target: "e.text.title"; + } + program { + name: "urgent"; + signal: "e,state,urgent"; + source: "e"; + action: STATE_SET "visible" 0.0; + target: "urgent"; + target: "urgent2"; + transition: DECELERATE 0.5; + after: "urgent2"; + } + program { + name: "urgent2"; + action: STATE_SET "faded" 0.0; + target: "urgent2"; + transition: LINEAR 0.5; + after: "urgent3"; + } + program { + name: "urgent3"; + action: STATE_SET "visible" 0.0; + target: "urgent2"; + after: "urgent2"; + } + program { + name: "urgentw0"; + signal: "e,state,urgent"; + source: "e"; + action: STATE_SET "default" 0.0; + target: "icon_area2"; + transition: DECELERATE 0.1; + after: "urgentw1"; + } + program { + name: "urgentw1"; + action: STATE_SET "uw1" 0.0; + target: "icon_area2"; + transition: DECELERATE 0.1; + after: "urgentw2"; + } + program { + name: "urgentw2"; + action: STATE_SET "uw2" 0.0; + target: "icon_area2"; + transition: DECELERATE 0.1; + after: "urgentw3"; + } + program { + name: "urgentw3"; + action: STATE_SET "uw3" 0.0; + target: "icon_area2"; + transition: DECELERATE 0.1; + after: "urgentw4"; + } + program { + name: "urgentw4"; + action: STATE_SET "uw4" 0.0; + target: "icon_area2"; + transition: DECELERATE 0.1; + after: "urgentw0"; + } + program { + name: "not_urgent"; + signal: "e,state,not_urgent"; + source: "e"; + action: ACTION_STOP; + target: "urgentw0"; + target: "urgentw1"; + target: "urgentw2"; + target: "urgentw3"; + target: "urgentw4"; + target: "urgent"; + target: "urgent2"; + target: "urgent3"; + after: "not_urgent2"; + } + program { + name: "not_urgent2"; + action: STATE_SET "default" 0.0; + target: "urgent"; + target: "urgent2"; + target: "icon_area2"; + } + program { + name: "hung"; + signal: "e,state,hung"; + source: "e"; + /* FIXME: */ + action: STATE_SET "shrunk" 0.0; + target: "e.swallow.icon"; + transition: DECELERATE 0.5; + } + program { + name: "unhung"; + signal: "e,state,unhung"; + source: "e"; + /* FIXME: */ + action: ACTION_STOP; + target: "busy_anim"; + } + program { + name: "unhung2"; + signal: "e,state,unhung"; + source: "e"; + /* FIXME: */ + action: STATE_SET "default" 0.0; + target: "e.swallow.icon"; + target: "busy"; + transition: ACCELERATE 0.5; + } + program { + name: "busy_anim"; + signal: "e,state,hung"; + source: "e"; + action: STATE_SET "visible" 0.0; + transition: LINEAR 0.3333; + target: "busy"; + after: "busy_anim"; + } + program { + name: "max_full"; + signal: "e,action,maximize,fullscreen"; + source: "e"; + action: STATE_SET "max" 0.0; + target: "bottom"; + target: "e.swallow.client"; + } + program { + name: "unmax_full"; + signal: "e,action,unmaximize,fullscreen"; + source: "e"; + action: STATE_SET "default" 0.0; + target: "bottom"; + target: "e.swallow.client"; + } + program { + name: "shade_end"; + signal: "e,state,shaded"; + source: "e"; + action: STATE_SET "shaded" 0.0; + target: "bottom"; + target: "e.swallow.client"; + target: "e.event.resize.tl"; + target: "e.event.resize.tr"; + target: "e.event.resize.bl"; + target: "e.event.resize.br"; + target: "e.event.resize.t"; + target: "e.event.resize.b"; + } + program { + name: "unshade_start"; + signal: "e,state,unshading"; + source: "e"; + action: STATE_SET "default" 0.0; + target: "bottom"; + target: "e.swallow.client"; + target: "e.event.resize.tl"; + target: "e.event.resize.tr"; + target: "e.event.resize.bl"; + target: "e.event.resize.br"; + target: "e.event.resize.t"; + target: "e.event.resize.b"; + } + program { + name: "resize_b_on"; + signal: "mouse,in"; + source: "e.event.resize.b"; + action: ACTION_STOP; + target: "resize_b_on2"; + target: "resize_b_on3"; + after: "resize_b_on2"; + } + program { + name: "resize_b_on2"; + action: STATE_SET "default" 0.0; + target: "resize_b"; + after: "resize_b_on3"; + } + program { + name: "resize_b_on3"; + action: STATE_SET "past" 0.0; + transition: LINEAR 0.5; + target: "resize_b"; + after: "resize_b_on2"; + } + program { + name: "resize_b_off"; + signal: "mouse,out"; + source: "e.event.resize.b"; + action: ACTION_STOP; + target: "resize_b_on"; + target: "resize_b_on2"; + target: "resize_b_on3"; + } + program { + name: "icon_down"; + signal: "mouse,down,*"; + source: "e.event.icon"; + action: STATE_SET "active" 0.0; + target: "icon_area"; + } + program { + name: "icon_up"; + signal: "mouse,up,*"; + source: "e.event.icon"; + action: STATE_SET "default" 0.0; + target: "icon_area"; + } + program { + name: "bt_close_down"; + signal: "mouse,down,*"; + source: "e.event.close"; + action: STATE_SET "active" 0.0; + target: "bt_close_unfoc"; + target: "bt_close_foc"; + } + program { + name: "bt_close_up"; + signal: "mouse,up,*"; + source: "e.event.close"; + action: STATE_SET "default" 0.0; + target: "bt_close_unfoc"; + target: "bt_close_foc"; + } + program { + name: "bt_max_down"; + signal: "mouse,down,*"; + source: "e.event.maximize"; + action: STATE_SET "active" 0.0; + target: "bt_max_unfoc"; + target: "bt_max_foc"; + } + program { + name: "bt_max_up"; + signal: "mouse,up,*"; + source: "e.event.maximize"; + action: STATE_SET "default" 0.0; + target: "bt_max_unfoc"; + target: "bt_max_foc"; + } + program { + name: "bt_min_down"; + signal: "mouse,down,*"; + source: "e.event.minimize"; + action: STATE_SET "active" 0.0; + target: "bt_min_unfoc"; + target: "bt_min_foc"; + } + program { + name: "bt_min_up"; + signal: "mouse,up,*"; + source: "e.event.minimize"; + action: STATE_SET "default" 0.0; + target: "bt_min_unfoc"; + target: "bt_min_foc"; + } + } + } + /*** NORESIZE WINDOW BORDER ***/ + group { + name: "e/widgets/border/noresize/border"; + images { + image: "bd_top.png" COMP; + image: "bd_top_hilight.png" COMP; + image: "bd_title_bg.png" COMP; + image: "bd_title_over.png" COMP; + image: "busy-1.png" COMP; + image: "busy-2.png" COMP; + image: "busy-3.png" COMP; + image: "busy-4.png" COMP; + image: "busy-5.png" COMP; + image: "busy-6.png" COMP; + image: "busy-7.png" COMP; + image: "busy-8.png" COMP; + image: "busy-9.png" COMP; + image: "exclam.png" COMP; + image: "bd_button_close_shadow.png" COMP; + image: "bd_button_close_focused.png" COMP; + image: "bd_button_close_unfocused.png" COMP; + image: "bd_button_max_shadow.png" COMP; + image: "bd_button_max_unfocused.png" COMP; + image: "bd_button_min_shadow.png" COMP; + image: "bd_button_min_focused.png" COMP; + image: "bd_button_min_unfocused.png" COMP; + } + parts { + part { + name: "top"; + mouse_events: 0; + description { + state: "default" 0.0; + rel1 { + relative: 0.0 0.0; + offset: 0 0; + } + rel2 { + relative: 1.0 1.0; + offset: -1 -1; + to_y: "title_base"; + } + color_class: "border_top"; + image { + normal: "bd_top.png"; + border: 2 2 2 2; + } + } + } + part { + name: "icon_area"; + type: RECT; + description { + state: "default" 0.0; + visible: 0; + align: 0.0 0.5; + aspect: 1.0 1.0; + aspect_preference: VERTICAL; + rel1 { + relative: 0.0 0.0; + offset: 2 2; + } + rel2 { + relative: 0.0 1.0; + offset: 2 -3; + to_y: "title_base"; + } + } + description { + state: "active" 0.0; + inherit: "default" 0.0; + rel1 { + offset: 2 3; + } + rel2 { + offset: 2 -2; + } + } + } + part { + name: "icon_area2"; + type: RECT; + description { + state: "default" 0.0; + visible: 0; + rel1.to: "icon_area"; + rel2.to: "icon_area"; + } + description { + state: "uw0" 0.0; + inherit: "default" 0.0; + rel1.offset: -3 -2; + rel2.offset: -4 -3; + } + description { + state: "uw1" 0.0; + inherit: "default" 0.0; + rel1.offset: 5 -2; + rel2.offset: 4 -3; + } + description { + state: "uw2" 0.0; + inherit: "default" 0.0; + rel1.offset: -1 4; + rel2.offset: -2 3; + } + description { + state: "uw3" 0.0; + inherit: "default" 0.0; + rel1.offset: -2 -1; + rel2.offset: -3 -2; + } + description { + state: "uw4" 0.0; + inherit: "default" 0.0; + rel1.offset: -4 1; + rel2.offset: -5 0; + } + } + part { + name: "busy"; + mouse_events: 0; + description { + state: "default" 0.0; + visible: 0; + color: 255 255 255 0; + max: 32 32; + aspect: 1.0 1.0; + aspect_preference: BOTH; + rel1.to: "icon_area"; + rel2.to: "icon_area"; + image { + tween: "busy-1.png"; + tween: "busy-2.png"; + tween: "busy-3.png"; + tween: "busy-4.png"; + tween: "busy-5.png"; + tween: "busy-6.png"; + tween: "busy-7.png"; + tween: "busy-8.png"; + normal: "busy-9.png"; + } + } + description { + state: "visible" 0.0; + inherit: "default" 0.0; + visible: 1; + color: 255 255 255 255; + } + } + part { + name: "e.swallow.icon"; + type: SWALLOW; + description { + state: "default" 0.0; + aspect: 1.0 1.0; + aspect_preference: BOTH; + rel1.to: "icon_area2"; + rel2.to: "icon_area2"; + } + description { + state: "shrunk" 0.0; + inherit: "default" 0.0; + rel1.relative: 0.3 0.3; + rel2.relative: 0.7 0.7; + } + } + part { + name: "urgent"; + mouse_events: 0; + description { + state: "default" 0.0; + visible: 0; + color: 255 255 255 0; + aspect: 1.0 1.0; + aspect_preference: BOTH; + rel1.to: "icon_area"; + rel2.to: "icon_area"; + image.normal: "exclam.png"; + } + description { + state: "visible" 0.0; + inherit: "default" 0.0; + visible: 1; + color: 255 255 255 255; + } + } + part { + name: "urgent2"; + mouse_events: 0; + description { + state: "default" 0.0; + visible: 0; + color: 255 255 255 0; + aspect: 1.0 1.0; + aspect_preference: BOTH; + rel1.to: "icon_area"; + rel2.to: "icon_area"; + image.normal: "exclam.png"; + } + description { + state: "visible" 0.0; + inherit: "default" 0.0; + visible: 1; + color: 255 255 255 255; + } + description { + state: "faded" 0.0; + inherit: "default" 0.0; + rel1.relative: -1.0 -1.0; + rel2.relative: 2.0 2.0; + visible: 1; + color: 255 255 255 0; + } + } + part { + name: "e.text.title"; + type: TEXT; + mouse_events: 0; + description { + state: "default" 0.0; + visible: 1; + align: 0.0 0.0; + rel1 { + relative: 1.0 0.0; + offset: 9 2; + to_x: "icon_area"; + } + rel2 { + relative: 1.0 0.0; + offset: -8 2; + to_x: "title_base"; + } + color_class: "border_title"; + text { + font: "Sans:style=Bold"; + size: 10; + min: 0 1; + align: 0.0 0.0; + text_class: "title_bar"; + } + } + description { + state: "focused" 0.0; + inherit: "default" 0.0; + visible: 0; + color: 0 0 0 0; + } + } + part { + name: "bt_close"; + mouse_events: 0; + description { + state: "default" 0.0; + min: 14 14; + max: 14 14; + aspect: 1.0 1.0; + aspect_preference: VERTICAL; + rel1 { + relative: 1.0 0.0; + offset: -28 1; + to_x: "top"; + to_y: "top"; + } + rel2 { + relative: 1.0 1.0; + to_x: "top"; + to_y: "top"; + } + image.normal: "bd_button_close_shadow.png"; + } + } + part { + name: "bt_max"; + description { + state: "default" 0.0; + align: 1.0 0.5; + min: 22 22; + max: 22 22; + aspect: 1.0 1.0; + aspect_preference: VERTICAL; + rel1 { + relative: 0.0 0.0; + offset: -2 1; + to_x: "bt_close"; + to_y: "top"; + } + rel2 { + relative: 0.0 1.0; + offset: -2 -2; + to_x: "bt_close"; + to_y: "top"; + } + image.normal: "bd_button_max_shadow.png"; + } + } + part { + name: "bt_min"; + mouse_events: 0; + description { + state: "default" 0.0; + align: 1.0 0.5; + min: 22 22; + max: 22 22; + aspect: 1.0 1.0; + aspect_preference: VERTICAL; + rel1 { + relative: 0.0 0.0; + offset: -2 1; + to_x: "bt_max"; + to_y: "top"; + } + rel2 { + relative: 0.0 1.0; + offset: -2 -2; + to_x: "bt_max"; + to_y: "top"; + } + image.normal: "bd_button_min_shadow.png"; + } + } + part { + name: "top_hilight"; + mouse_events: 0; + description { + state: "default" 0.0; + rel1 { + relative: 0.0 0.0; + offset: 0 0; + to: "top"; + } + rel2 { + relative: 1.0 0.5; + offset: -1 0; + to: "top"; + } + color_class: "border_top_hilight"; + image { + normal: "bd_top_hilight.png"; + } + fill.smooth: 0; + } + } + part { + name: "buttons_unfoc"; + type: RECT; + description { + state: "default" 0.0; + visible: 1; + color: 255 255 255 255; + } + description { + state: "focused" 0.0; + inherit: "default" 0.0; + visible: 0; + color: 255 255 255 0; + } + } + part { + name: "bt_close_unfoc"; + mouse_events: 0; + clip_to: "buttons_unfoc"; + description { + state: "default" 0.0; + rel1.to: "bt_close"; + rel2.to: "bt_close"; + image.normal: "bd_button_close_unfocused.png"; + } + description { + state: "active" 0.0; + inherit: "default" 0.0; + rel1.offset: 0 1; + rel2.offset: -1 0; + } + } + part { + name: "bt_max_unfoc"; + clip_to: "buttons_unfoc"; + description { + state: "default" 0.0; + rel1.to: "bt_max"; + rel2.to: "bt_max"; + image.normal: "bd_button_max_unfocused.png"; + } + description { + state: "active" 0.0; + inherit: "default" 0.0; + rel1.offset: 0 1; + rel2.offset: -1 0; + } + } + part { + name: "bt_min_unfoc"; + mouse_events: 0; + clip_to: "buttons_unfoc"; + description { + state: "default" 0.0; + rel1.to: "bt_min"; + rel2.to: "bt_min"; + image.normal: "bd_button_min_unfocused.png"; + } + description { + state: "active" 0.0; + inherit: "default" 0.0; + rel1.offset: 0 1; + rel2.offset: -1 0; + } + } + part { + name: "buttons_foc"; + type: RECT; + description { + state: "default" 0.0; + visible: 0; + color: 255 255 255 0; + } + description { + state: "focused" 0.0; + inherit: "default" 0.0; + visible: 1; + color: 255 255 255 255; + } + } + part { + name: "bt_close_foc"; + mouse_events: 0; + clip_to: "buttons_foc"; + description { + state: "default" 0.0; + rel1.to: "bt_close"; + rel2.to: "bt_close"; + image.normal: "bd_button_close_focused.png"; + } + description { + state: "active" 0.0; + inherit: "default" 0.0; + rel1.offset: 0 1; + rel2.offset: -1 0; + } + } + part { + name: "bt_max_foc"; + clip_to: "buttons_foc"; + description { + state: "default" 0.0; + rel1.to: "bt_max"; + rel2.to: "bt_max"; + image.normal: "bd_button_max_unfocused.png"; + } + description { + state: "active" 0.0; + inherit: "default" 0.0; + rel1.offset: 0 1; + rel2.offset: -1 0; + } + } + part { + name: "bt_min_foc"; + mouse_events: 0; + clip_to: "buttons_foc"; + description { + state: "default" 0.0; + rel1.to: "bt_min"; + rel2.to: "bt_min"; + image.normal: "bd_button_min_focused.png"; + } + description { + state: "active" 0.0; + inherit: "default" 0.0; + rel1.offset: 0 1; + rel2.offset: -1 0; + } + } + part { + name: "title_base"; + type: RECT; + mouse_events: 0; + description { + state: "default" 0.0; + visible: 0; + rel1 { + relative: 1.0 0.0; + offset: 0 0; + to_x: "icon_area"; + } + rel2 { + relative: 0.0 1.0; + offset: -3 4; + to_y: "e.text.title"; + to_x: "bt_min"; + } + } + } + part { + name: "title_back"; + mouse_events: 0; + description { + state: "default" 0.0; + visible: 0; + rel1 { + to: "title_base"; + } + rel2 { + to: "title_base"; + relative: 1.0 0.0; + } + image { + normal: "bd_title_bg.png"; + border: 7 7 2 7; + } + fill.smooth: 0; + } + description { + state: "focused" 0.0; + inherit: "default" 0.0; + visible: 1; + rel2 { + to: "title_base"; + relative: 1.0 1.0; + } + } + } + part { + name: "title2"; + type: TEXT; + mouse_events: 0; + effect: SOFT_SHADOW; + description { + state: "default" 0.0; + visible: 0; + align: 0.0 1.0; + rel1 { + to_x: "e.text.title"; + to_y: "title_back"; + relative: 0.0 1.0; + offset: -1 0; + } + rel2 { + to_x: "e.text.title"; + to_y: "title_back"; + relative: 1.0 1.0; + offset: 0 1; + } + color_class: "border_title_active"; + text { + text_source: "e.text.title"; + font: "Sans:style=Bold"; + size: 10; + align: 0.0 0.0; + min: 0 1; + text_class: "title_bar"; + } + } + description { + state: "focused" 0.0; + inherit: "default" 0.0; + visible: 1; + } + } + part { + name: "title_over"; + mouse_events: 0; + description { + state: "default" 0.0; + visible: 0; + rel1.to: "title_back"; + rel2.to: "title_back"; + image { + normal: "bd_title_over.png"; + border: 7 7 2 7; + } + fill.smooth: 0; + } + description { + state: "focused" 0.0; + inherit: "default" 0.0; + visible: 1; + } + } + part { + name: "e.swallow.client"; + type: SWALLOW; + description { + state: "default" 0.0; + rel1 { + relative: 0.0 1.0; + offset: 0 0; + to_y: "top"; + } + rel2 { + relative: 1.0 1.0; + offset: -1 -1; + } + } + description { + state: "shaded" 0.0; + inherit: "default" 0.0; + rel2 { + relative: 1.0 1.0; + offset: -1 -1; + } + } + description { + state: "max" 0.0; + inherit: "default" 0.0; + rel1 { + relative: 0.0 1.0; + offset: 0 0; + to_y: "top"; + } + rel2 { + relative: 1.0 1.0; + offset: -1 -1; + } + } + } + part { + name: "e.event.titlebar"; + type: RECT; + description { + state: "default" 0.0; + rel1.to: "title_base"; + rel2.to: "title_base"; + color: 0 0 0 0; + } + } + part { + name: "e.event.icon"; + type: RECT; + description { + state: "default" 0.0; + rel1.to: "icon_area"; + rel2.to: "icon_area"; + color: 0 0 0 0; + } + } + part { + name: "e.event.close"; + type: RECT; + description { + state: "default" 0.0; + rel1.to: "bt_close"; + rel2.to: "bt_close"; + color: 0 0 0 0; + } + } + part { + name: "e.event.minimize"; + type: RECT; + description { + state: "default" 0.0; + rel1.to: "bt_min"; + rel2.to: "bt_min"; + color: 0 0 0 0; + } + } + } + programs { + program { + name: "focus_in"; + signal: "e,state,focused"; + source: "e"; + action: STATE_SET "focused" 0.0; + transition: LINEAR 0.2; + target: "title_back"; + target: "title2"; + target: "title_over"; + target: "buttons_foc"; + target: "buttons_unfoc"; + target: "e.text.title"; + } + program { + name: "focus_out"; + signal: "e,state,unfocused"; + source: "e"; + action: STATE_SET "default" 0.0; + transition: LINEAR 0.2; + target: "title_back"; + target: "title2"; + target: "title_over"; + target: "buttons_foc"; + target: "buttons_unfoc"; + target: "e.text.title"; + } + program { + name: "urgent"; + signal: "e,state,urgent"; + source: "e"; + action: STATE_SET "visible" 0.0; + target: "urgent"; + target: "urgent2"; + transition: DECELERATE 0.5; + after: "urgent2"; + } + program { + name: "urgent2"; + action: STATE_SET "faded" 0.0; + target: "urgent2"; + transition: LINEAR 0.5; + after: "urgent3"; + } + program { + name: "urgent3"; + action: STATE_SET "visible" 0.0; + target: "urgent2"; + after: "urgent2"; + } + program { + name: "urgentw0"; + signal: "e,state,urgent"; + source: "e"; + action: STATE_SET "default" 0.0; + target: "icon_area2"; + transition: DECELERATE 0.1; + after: "urgentw1"; + } + program { + name: "urgentw1"; + action: STATE_SET "uw1" 0.0; + target: "icon_area2"; + transition: DECELERATE 0.1; + after: "urgentw2"; + } + program { + name: "urgentw2"; + action: STATE_SET "uw2" 0.0; + target: "icon_area2"; + transition: DECELERATE 0.1; + after: "urgentw3"; + } + program { + name: "urgentw3"; + action: STATE_SET "uw3" 0.0; + target: "icon_area2"; + transition: DECELERATE 0.1; + after: "urgentw4"; + } + program { + name: "urgentw4"; + action: STATE_SET "uw4" 0.0; + target: "icon_area2"; + transition: DECELERATE 0.1; + after: "urgentw0"; + } + program { + name: "not_urgent"; + signal: "e,state,not_urgent"; + source: "e"; + action: ACTION_STOP; + target: "urgentw0"; + target: "urgentw1"; + target: "urgentw2"; + target: "urgentw3"; + target: "urgentw4"; + target: "urgent"; + target: "urgent2"; + target: "urgent3"; + after: "not_urgent2"; + } + program { + name: "not_urgent2"; + action: STATE_SET "default" 0.0; + target: "urgent"; + target: "urgent2"; + target: "icon_area2"; + } + program { + name: "hung"; + signal: "e,state,hung"; + source: "e"; + /* FIXME: */ + action: STATE_SET "shrunk" 0.0; + target: "e.swallow.icon"; + transition: DECELERATE 0.5; + } + program { + name: "unhung"; + signal: "e,state,unhung"; + source: "e"; + /* FIXME: */ + action: ACTION_STOP; + target: "busy_anim"; + } + program { + name: "unhung2"; + signal: "e,state,unhung"; + source: "e"; + /* FIXME: */ + action: STATE_SET "default" 0.0; + target: "e.swallow.icon"; + target: "busy"; + transition: ACCELERATE 0.5; + } + program { + name: "busy_anim"; + signal: "e,state,hung"; + source: "e"; + action: STATE_SET "visible" 0.0; + transition: LINEAR 0.3333; + target: "busy"; + after: "busy_anim"; + } + program { + name: "shade_end"; + signal: "e,state,shaded"; + source: "e"; + action: STATE_SET "shaded" 0.0; + target: "e.swallow.client"; + } + program { + name: "unshade_start"; + signal: "e,state,unshading"; + source: "e"; + action: STATE_SET "default" 0.0; + target: "e.swallow.client"; + } + program { + name: "icon_down"; + signal: "mouse,down,*"; + source: "e.event.icon"; + action: STATE_SET "active" 0.0; + target: "icon_area"; + } + program { + name: "icon_up"; + signal: "mouse,up,*"; + source: "e.event.icon"; + action: STATE_SET "default" 0.0; + target: "icon_area"; + } + program { + name: "bt_close_down"; + signal: "mouse,down,*"; + source: "e.event.close"; + action: STATE_SET "active" 0.0; + target: "bt_close_unfoc"; + target: "bt_close_foc"; + } + program { + name: "bt_close_up"; + signal: "mouse,up,*"; + source: "e.event.close"; + action: STATE_SET "default" 0.0; + target: "bt_close_unfoc"; + target: "bt_close_foc"; + } + program { + name: "bt_min_down"; + signal: "mouse,down,*"; + source: "e.event.minimize"; + action: STATE_SET "active" 0.0; + target: "bt_min_unfoc"; + target: "bt_min_foc"; + } + program { + name: "bt_min_up"; + signal: "mouse,up,*"; + source: "e.event.minimize"; + action: STATE_SET "default" 0.0; + target: "bt_min_unfoc"; + target: "bt_min_foc"; + } + } + } + /*** DIALOG WINDOW BORDER ***/ + group { + name: "e/widgets/border/dialog/border"; + images { + image: "added_images/DM_Internet_Title_bg.png" COMP; + image: "added_images/DM_Internet_icon_close.png" COMP; + image: "bd_top.png" COMP; + image: "bd_top_hilight.png" COMP; + image: "bd_bottom.png" COMP; + image: "bd_title_bg.png" COMP; + image: "bd_title_over.png" COMP; + image: "bd_resize_b.png" COMP; + image: "busy-1.png" COMP; + image: "busy-2.png" COMP; + image: "busy-3.png" COMP; + image: "busy-4.png" COMP; + image: "busy-5.png" COMP; + image: "busy-6.png" COMP; + image: "busy-7.png" COMP; + image: "busy-8.png" COMP; + image: "busy-9.png" COMP; + image: "exclam.png" COMP; + image: "bd_button_close_shadow.png" COMP; + image: "bd_button_close_focused.png" COMP; + image: "bd_button_close_unfocused.png" COMP; + } + parts { + part { + name: "top"; + mouse_events: 0; + description { + state: "default" 0.0; + rel1 { + relative: 0.0 0.0; + offset: 0 0; + } + rel2 { + relative: 1.0 1.0; + to_y: "title_base"; + } + color_class: "border_top"; + image { + normal: "added_images/DM_Internet_Title_bg.png"; + } + } + } + part { + name: "bottom"; + mouse_events: 0; + description { + state: "default" 0.0; + rel1 { + relative: 0.0 1.0; + } + rel2 { + relative: 1.0 1.0; + } + color_class: "border_bottom"; + } + description { + state: "shaded" 0.0; + inherit: "default" 0.0; + visible: 0; + } + description { + state: "max" 0.0; + inherit: "default" 0.0; + visible: 0; + } + } + part { + name: "e.text.title"; + type: TEXT; + mouse_events: 0; + description { + state: "default" 0.0; + visible: 1; + align: 0.5 0.0; + rel1 { + relative: 0.0 0.0; + offset: 9 2; + } + rel2 { + relative: 1.0 0.0; + offset: -8 2; + to_x: "title_base"; + } + color: 255 255 255 255; + text { + font: "Sans:style=Bold"; + size: 10; + min: 0 1; + align: 0.5 0.0; + text_class: "title_bar"; + } + } + description { + state: "focused" 0.0; + inherit: "default" 0.0; + visible: 1; + } + } + part { + name: "bt_close"; + mouse_events: 0; + description { + state: "default" 0.0; + min: 14 14; + max: 14 14; + aspect: 1.0 1.0; + aspect_preference: VERTICAL; + rel1 { + relative: 1.0 0.0; + offset: -28 1; + to_x: "top"; + to_y: "top"; + } + rel2 { + relative: 1.0 1.0; + to_x: "top"; + to_y: "top"; + } + image.normal: "added_images/DM_Internet_icon_close.png"; + } + } + part { + name: "top_hilight"; + mouse_events: 0; + description { + state: "default" 0.0; + rel1 { + relative: 0.0 0.0; + offset: 0 0; + to: "top"; + } + rel2 { + relative: 1.0 0.5; + offset: -1 0; + to: "top"; + } + color_class: "border_top_hilight"; + fill.smooth: 0; + } + } + part { + name: "buttons_unfoc"; + type: RECT; + description { + state: "default" 0.0; + visible: 1; + color: 255 255 255 255; + } + description { + state: "focused" 0.0; + inherit: "default" 0.0; + visible: 0; + color: 255 255 255 0; + } + } + part { + name: "bt_close_unfoc"; + mouse_events: 0; + clip_to: "buttons_unfoc"; + description { + state: "default" 0.0; + rel1.to: "bt_close"; + rel2.to: "bt_close"; + image.normal: "added_images/DM_Internet_icon_close.png"; + } + description { + state: "active" 0.0; + inherit: "default" 0.0; + rel1.offset: 0 1; + rel2.offset: -1 0; + } + } + part { + name: "buttons_foc"; + type: RECT; + description { + state: "default" 0.0; + visible: 0; + color: 255 255 255 0; + } + description { + state: "focused" 0.0; + inherit: "default" 0.0; + visible: 1; + color: 255 255 255 255; + } + } + part { + name: "bt_close_foc"; + mouse_events: 0; + clip_to: "buttons_foc"; + description { + state: "default" 0.0; + rel1.to: "bt_close"; + rel2.to: "bt_close"; + image.normal: "added_images/DM_Internet_icon_close.png"; + } + description { + state: "active" 0.0; + inherit: "default" 0.0; + rel1.offset: 0 1; + rel2.offset: -1 0; + } + } + part { + name: "title_base"; + type: RECT; + mouse_events: 0; + description { + state: "default" 0.0; + visible: 0; + rel1 { + relative: 0.0 0.0; + offset: 0 0; + //to_x: "icon_area"; + } + rel2 { + relative: 0.0 1.0; + offset: -3 4; + to_y: "e.text.title"; + to_x: "bt_close"; + } + } + } + part { + name: "title_back"; + mouse_events: 0; + description { + state: "default" 0.0; + visible: 0; + rel1 { + to: "title_base"; + } + rel2 { + to: "title_base"; + relative: 1.0 0.0; + } + fill.smooth: 0; + } + description { + state: "focused" 0.0; + inherit: "default" 0.0; + visible: 1; + rel2 { + to: "title_base"; + relative: 1.0 1.0; + } + } + } + part { + name: "title2"; + type: TEXT; + mouse_events: 0; + effect: SOFT_SHADOW; + description { + state: "default" 0.0; + visible: 0; + align: 0.0 1.0; + rel1 { + to_x: "e.text.title"; + to_y: "title_back"; + relative: 0.0 1.0; + offset: -1 0; + } + rel2 { + to_x: "e.text.title"; + to_y: "title_back"; + relative: 1.0 1.0; + offset: 0 0; + } + color_class: "border_title_active"; + text { + text_source: "e.text.title"; + font: "Sans:style=Bold"; + size: 10; + align: 0.5 0.0; + min: 0 1; + text_class: "title_bar"; + } + } + description { + state: "focused" 0.0; + inherit: "default" 0.0; + visible: 1; + } + } + part { + name: "title_over"; + mouse_events: 0; + description { + state: "default" 0.0; + visible: 0; + rel1.to: "title_back"; + rel2.to: "title_back"; + fill.smooth: 0; + } + description { + state: "focused" 0.0; + inherit: "default" 0.0; + visible: 1; + } + } + part { + name: "bottom_clip"; + type: RECT; + description { + state: "default" 0.0; + rel1.to: "bottom"; + rel2.to: "bottom"; + color: 255 255 255 255; + } + } + part { + name: "resize_b"; + mouse_events: 0; + clip_to: "bottom_clip"; + description { + state: "default" 0.0; + min: 20 10; + max: 20 10; + rel1 { + to: "bottom"; + relative: 0.5 0.0; + offset: 0 -10; + } + rel2 { + to: "bottom"; + relative: 0.5 0.0; + offset: 0 -1; + } + image { + normal: "bd_resize_b.png"; + } + } + description { + state: "past" 0.0; + inherit: "default" 0.0; + rel1 { + relative: 0.5 1.0; + offset: 0 0; + } + rel2 { + relative: 0.5 1.0; + offset: 0 9; + } + } + } + part { + name: "e.swallow.client"; + type: SWALLOW; + description { + state: "default" 0.0; + rel1 { + relative: 0.0 1.0; + offset: 0 0; + to_y: "top"; + } + rel2 { + relative: 1.0 0.0; + offset: -1 -1; + to_y: "bottom"; + } + } + description { + state: "shaded" 0.0; + inherit: "default" 0.0; + rel2 { + relative: 1.0 1.0; + offset: -1 -1; + to_y: "bottom"; + } + } + description { + state: "max" 0.0; + inherit: "default" 0.0; + rel1 { + relative: 0.0 1.0; + offset: 0 0; + to_y: "top"; + } + rel2 { + relative: 1.0 1.0; + offset: -1 -1; + to_y: "bottom"; + } + } + } + part { + name: "e.event.titlebar"; + type: RECT; + description { + state: "default" 0.0; + rel1.to: "title_base"; + rel2.to: "title_base"; + color: 0 0 0 0; + } + } + part { + name: "e.event.resize.t"; + type: RECT; + description { + state: "default" 0.0; + rel1 { + relative: 0.0 0.0; + offset: 0 0; + } + rel2 { + relative: 1.0 0.0; + offset: -1 3; + } + color: 0 0 0 0; + } + description { + state: "shaded" 0.0; + inherit: "default" 0.0; + visible: 0; + } + } + part { + name: "e.event.resize.b"; + type: RECT; + description { + state: "default" 0.0; + rel1 { + relative: 0.0 1.0; + offset: 0 -4; + } + rel2 { + relative: 1.0 1.0; + offset: -1 -1; + } + color: 0 0 0 0; + } + description { + state: "shaded" 0.0; + inherit: "default" 0.0; + visible: 0; + } + } + part { + name: "e.event.resize.tl"; + type: RECT; + description { + state: "default" 0.0; + rel1 { + relative: 0.0 0.0; + offset: 0 0; + } + rel2 { + relative: 0.0 0.0; + offset: 15 15; + } + color: 0 0 0 0; + } + description { + state: "shaded" 0.0; + inherit: "default" 0.0; + visible: 0; + } + } + part { + name: "e.event.resize.tr"; + type: RECT; + description { + state: "default" 0.0; + rel1 { + relative: 1.0 0.0; + offset: -16 0; + } + rel2 { + relative: 1.0 0.0; + offset: -1 15; + } + color: 0 0 0 0; + } + description { + state: "shaded" 0.0; + inherit: "default" 0.0; + visible: 0; + } + } + part { + name: "e.event.resize.bl"; + type: RECT; + description { + state: "default" 0.0; + rel1 { + relative: 0.0 1.0; + offset: 0 -16; + } + rel2 { + relative: 0.0 1.0; + offset: 15 -1; + } + color: 0 0 0 0; + } + description { + state: "shaded" 0.0; + inherit: "default" 0.0; + visible: 0; + } + } + part { + name: "e.event.resize.br"; + type: RECT; + description { + state: "default" 0.0; + rel1 { + relative: 1.0 1.0; + offset: -16 -16; + } + rel2 { + relative: 1.0 1.0; + offset: -1 -1; + } + color: 0 0 0 0; + } + description { + state: "shaded" 0.0; + inherit: "default" 0.0; + visible: 0; + } + } + part { + name: "e.event.close"; + type: RECT; + description { + state: "default" 0.0; + rel1.to: "bt_close"; + rel2.to: "bt_close"; + color: 0 0 0 0; + } + } + } + programs { + program { + name: "focus_in"; + signal: "e,state,focused"; + source: "e"; + action: STATE_SET "focused" 0.0; + target: "buttons_foc"; + target: "buttons_unfoc"; + } + program { + name: "focus_out"; + signal: "e,state,unfocused"; + source: "e"; + action: STATE_SET "default" 0.0; + target: "buttons_foc"; + target: "buttons_unfoc"; + } + program { + name: "max_full"; + signal: "e,action,maximize,fullscreen"; + source: "e"; + action: STATE_SET "max" 0.0; + target: "bottom"; + target: "e.swallow.client"; + } + program { + name: "unmax_full"; + signal: "e,action,unmaximize,fullscreen"; + source: "e"; + action: STATE_SET "default" 0.0; + target: "bottom"; + target: "e.swallow.client"; + } + program { + name: "shade_end"; + signal: "e,state,shaded"; + source: "e"; + action: STATE_SET "shaded" 0.0; + target: "bottom"; + target: "e.swallow.client"; + target: "e.event.resize.tl"; + target: "e.event.resize.tr"; + target: "e.event.resize.bl"; + target: "e.event.resize.br"; + target: "e.event.resize.t"; + target: "e.event.resize.b"; + } + program { + name: "unshade_start"; + signal: "e,state,unshading"; + source: "e"; + action: STATE_SET "default" 0.0; + target: "bottom"; + target: "e.swallow.client"; + target: "e.event.resize.tl"; + target: "e.event.resize.tr"; + target: "e.event.resize.bl"; + target: "e.event.resize.br"; + target: "e.event.resize.t"; + target: "e.event.resize.b"; + } + program { + name: "resize_b_on"; + signal: "mouse,in"; + source: "e.event.resize.b"; + action: ACTION_STOP; + target: "resize_b_on2"; + target: "resize_b_on3"; + after: "resize_b_on2"; + } + program { + name: "resize_b_on2"; + action: STATE_SET "default" 0.0; + target: "resize_b"; + after: "resize_b_on3"; + } + program { + name: "resize_b_on3"; + action: STATE_SET "past" 0.0; + transition: LINEAR 0.5; + target: "resize_b"; + after: "resize_b_on2"; + } + program { + name: "resize_b_off"; + signal: "mouse,out"; + source: "e.event.resize.b"; + action: ACTION_STOP; + target: "resize_b_on"; + target: "resize_b_on2"; + target: "resize_b_on3"; + } + program { + name: "bt_close_down"; + signal: "mouse,down,*"; + source: "e.event.close"; + action: STATE_SET "active" 0.0; + target: "bt_close_unfoc"; + target: "bt_close_foc"; + } + program { + name: "bt_close_up"; + signal: "mouse,up,*"; + source: "e.event.close"; + action: STATE_SET "default" 0.0; + target: "bt_close_unfoc"; + target: "bt_close_foc"; + } + } + } + /*** NORESIZE DIALOG WINDOW BORDER ***/ + group { + name: "e/widgets/border/noresize_dialog/border"; + images { + image: "added_images/DM_Internet_Title_bg.png" COMP; + image: "added_images/DM_Internet_icon_close.png" COMP; + image: "bd_top.png" COMP; + image: "bd_top_hilight.png" COMP; + image: "bd_bottom.png" COMP; + image: "bd_title_bg.png" COMP; + image: "bd_title_over.png" COMP; + image: "bd_resize_b.png" COMP; + image: "busy-1.png" COMP; + image: "busy-2.png" COMP; + image: "busy-3.png" COMP; + image: "busy-4.png" COMP; + image: "busy-5.png" COMP; + image: "busy-6.png" COMP; + image: "busy-7.png" COMP; + image: "busy-8.png" COMP; + image: "busy-9.png" COMP; + image: "exclam.png" COMP; + image: "bd_button_close_shadow.png" COMP; + image: "bd_button_close_focused.png" COMP; + image: "bd_button_close_unfocused.png" COMP; + } + parts { + part { + name: "top"; + mouse_events: 0; + description { + state: "default" 0.0; + rel1 { + relative: 0.0 0.0; + offset: 0 0; + } + rel2 { + relative: 1.0 1.0; + to_y: "title_base"; + } + color_class: "border_top"; + image { + normal: "added_images/DM_Internet_Title_bg.png"; + } + } + } + part { + name: "bottom"; + mouse_events: 0; + description { + state: "default" 0.0; + rel1 { + relative: 0.0 1.0; + } + rel2 { + relative: 1.0 1.0; + } + color_class: "border_bottom"; + } + description { + state: "shaded" 0.0; + inherit: "default" 0.0; + visible: 0; + } + description { + state: "max" 0.0; + inherit: "default" 0.0; + visible: 0; + } + } + part { + name: "e.text.title"; + type: TEXT; + mouse_events: 0; + description { + state: "default" 0.0; + visible: 1; + align: 0.5 0.0; + rel1 { + relative: 0.0 0.0; + offset: 9 2; + //to_x: "title_base"; + } + rel2 { + relative: 1.0 0.0; + offset: -8 2; + to_x: "title_base"; + } + color: 255 255 255 255; + text { + font: "Sans:style=Bold"; + size: 10; + min: 0 1; + align: 0.5 0.0; + text_class: "title_bar"; + } + } + description { + state: "focused" 0.0; + inherit: "default" 0.0; + visible: 1; + } + } + part { + name: "bt_close"; + mouse_events: 0; + description { + state: "default" 0.0; + min: 14 14; + max: 14 14; + aspect: 1.0 1.0; + aspect_preference: VERTICAL; + rel1 { + relative: 1.0 0.0; + offset: -28 2; + to_x: "top"; + to_y: "top"; + } + rel2 { + relative: 1.0 1.0; + to_x: "top"; + to_y: "top"; + } + image.normal: "added_images/DM_Internet_icon_close.png"; + } + } + part { + name: "top_hilight"; + mouse_events: 0; + description { + state: "default" 0.0; + rel1 { + relative: 0.0 0.0; + offset: 0 0; + to: "top"; + } + rel2 { + relative: 1.0 0.5; + offset: -1 0; + to: "top"; + } + color_class: "border_top_hilight"; + fill.smooth: 0; + } + } + part { + name: "buttons_unfoc"; + type: RECT; + description { + state: "default" 0.0; + visible: 1; + color: 255 255 255 255; + } + description { + state: "focused" 0.0; + inherit: "default" 0.0; + visible: 0; + color: 255 255 255 0; + } + } + part { + name: "bt_close_unfoc"; + mouse_events: 0; + clip_to: "buttons_unfoc"; + description { + state: "default" 0.0; + rel1.to: "bt_close"; + rel2.to: "bt_close"; + image.normal: "added_images/DM_Internet_icon_close.png"; + } + description { + state: "active" 0.0; + inherit: "default" 0.0; + rel1.offset: 0 1; + rel2.offset: -1 0; + } + } + part { + name: "buttons_foc"; + type: RECT; + description { + state: "default" 0.0; + visible: 0; + color: 255 255 255 0; + } + description { + state: "focused" 0.0; + inherit: "default" 0.0; + visible: 1; + color: 255 255 255 255; + } + } + part { + name: "bt_close_foc"; + mouse_events: 0; + clip_to: "buttons_foc"; + description { + state: "default" 0.0; + rel1.to: "bt_close"; + rel2.to: "bt_close"; + image.normal: "added_images/DM_Internet_icon_close.png"; + } + description { + state: "active" 0.0; + inherit: "default" 0.0; + rel1.offset: 0 1; + rel2.offset: -1 0; + } + } + part { + name: "title_base"; + type: RECT; + mouse_events: 0; + description { + state: "default" 0.0; + visible: 0; + rel1 { + relative: 0.0 0.0; + offset: 0 0; + } + rel2 { + relative: 0.0 1.0; + offset: -3 4; + to_y: "e.text.title"; + to_x: "bt_close"; + } + } + } + part { + name: "title_back"; + mouse_events: 0; + description { + state: "default" 0.0; + visible: 0; + rel1 { + to: "title_base"; + } + rel2 { + to: "title_base"; + relative: 1.0 0.0; + } + fill.smooth: 0; + } + description { + state: "focused" 0.0; + inherit: "default" 0.0; + visible: 1; + rel2 { + to: "title_base"; + relative: 1.0 1.0; + } + } + } + part { + name: "title2"; + type: TEXT; + mouse_events: 0; + effect: SOFT_SHADOW; + description { + state: "default" 0.0; + visible: 0; + align: 0.0 1.0; + rel1 { + to_x: "e.text.title"; + to_y: "title_back"; + relative: 0.0 1.0; + offset: -1 0; + } + rel2 { + to_x: "e.text.title"; + to_y: "title_back"; + relative: 1.0 1.0; + offset: 0 0; + } + color_class: "border_title_active"; + text { + text_source: "e.text.title"; + font: "Sans:style=Bold"; + size: 10; + align: 0.5 0.0; + min: 0 1; + text_class: "title_bar"; + } + } + description { + state: "focused" 0.0; + inherit: "default" 0.0; + visible: 1; + } + } + part { + name: "title_over"; + mouse_events: 0; + description { + state: "default" 0.0; + visible: 0; + rel1.to: "title_back"; + rel2.to: "title_back"; + fill.smooth: 0; + } + description { + state: "focused" 0.0; + inherit: "default" 0.0; + visible: 1; + } + } + part { + name: "bottom_clip"; + type: RECT; + description { + state: "default" 0.0; + rel1.to: "bottom"; + rel2.to: "bottom"; + color: 255 255 255 255; + } + } + part { + name: "resize_b"; + mouse_events: 0; + clip_to: "bottom_clip"; + description { + state: "default" 0.0; + min: 20 10; + max: 20 10; + rel1 { + to: "bottom"; + relative: 0.5 0.0; + offset: 0 -10; + } + rel2 { + to: "bottom"; + relative: 0.5 0.0; + offset: 0 -1; + } + image { + normal: "bd_resize_b.png"; + } + } + description { + state: "past" 0.0; + inherit: "default" 0.0; + rel1 { + relative: 0.5 1.0; + offset: 0 0; + } + rel2 { + relative: 0.5 1.0; + offset: 0 9; + } + } + } + part { + name: "e.swallow.client"; + type: SWALLOW; + description { + state: "default" 0.0; + rel1 { + relative: 0.0 1.0; + offset: 0 0; + to_y: "top"; + } + rel2 { + relative: 1.0 0.0; + offset: -1 -1; + to_y: "bottom"; + } + } + description { + state: "shaded" 0.0; + inherit: "default" 0.0; + rel2 { + relative: 1.0 1.0; + offset: -1 -1; + to_y: "bottom"; + } + } + description { + state: "max" 0.0; + inherit: "default" 0.0; + rel1 { + relative: 0.0 1.0; + offset: 0 0; + to_y: "top"; + } + rel2 { + relative: 1.0 1.0; + offset: -1 -1; + to_y: "bottom"; + } + } + } + part { + name: "e.event.titlebar"; + type: RECT; + description { + state: "default" 0.0; + rel1.to: "title_base"; + rel2.to: "title_base"; + color: 0 0 0 0; + } + } + part { + name: "e.event.close"; + type: RECT; + description { + state: "default" 0.0; + rel1.to: "bt_close"; + rel2.to: "bt_close"; + color: 0 0 0 0; + } + } + } + programs { + program { + name: "focus_in"; + signal: "e,state,focused"; + source: "e"; + action: STATE_SET "focused" 0.0; + target: "buttons_foc"; + target: "buttons_unfoc"; + } + program { + name: "focus_out"; + signal: "e,state,unfocused"; + source: "e"; + action: STATE_SET "default" 0.0; + target: "buttons_foc"; + target: "buttons_unfoc"; + } + program { + name: "max_full"; + signal: "e,action,maximize,fullscreen"; + source: "e"; + action: STATE_SET "max" 0.0; + target: "bottom"; + target: "e.swallow.client"; + } + program { + name: "unmax_full"; + signal: "e,action,unmaximize,fullscreen"; + source: "e"; + action: STATE_SET "default" 0.0; + target: "bottom"; + target: "e.swallow.client"; + } + program { + name: "resize_b_on"; + signal: "mouse,in"; + source: "e.event.resize.b"; + action: ACTION_STOP; + target: "resize_b_on2"; + target: "resize_b_on3"; + after: "resize_b_on2"; + } + program { + name: "resize_b_on2"; + action: STATE_SET "default" 0.0; + target: "resize_b"; + after: "resize_b_on3"; + } + program { + name: "resize_b_on3"; + action: STATE_SET "past" 0.0; + transition: LINEAR 0.5; + target: "resize_b"; + after: "resize_b_on2"; + } + program { + name: "resize_b_off"; + signal: "mouse,out"; + source: "e.event.resize.b"; + action: ACTION_STOP; + target: "resize_b_on"; + target: "resize_b_on2"; + target: "resize_b_on3"; + } + program { + name: "bt_close_down"; + signal: "mouse,down,*"; + source: "e.event.close"; + action: STATE_SET "active" 0.0; + target: "bt_close_unfoc"; + target: "bt_close_foc"; + } + program { + name: "bt_close_up"; + signal: "mouse,up,*"; + source: "e.event.close"; + action: STATE_SET "default" 0.0; + target: "bt_close_unfoc"; + target: "bt_close_foc"; + } + } + } + /*** BONUS BORDERS TO CHOOSE FROM ***/ + group { + name: "e/widgets/border/pixel/border"; + parts { + part { + name: "px1"; + type: RECT; + description { + state: "default" 0.0; + rel1 { + relative: 0.0 0.0; + offset: 0 0; + } + rel2 { + relative: 1.0 0.0; + offset: -1 0; + } color: 0 0 0 255; - rel1 { /* this defines the top-left (rel1) point of the part - * and where it is placed. the below values are - * actually the default values, so there is no need - * to actually declare them. */ - relative: 0.0 0.0; /* make this point relative to the top - * left of the whole eje object (there - * is no to: section so it's the whole - * object). note that the point is - * calculated as: - * p.x = obj.width * relative.x - * p.y = obj.height * relative.y - * (as the to item is the whole object) - */ - offset: 0 0; /* and from the relative point, have an offset - * of 0 pixels - i.e. - none */ - } - rel2 { - relative: 1.0 1.0; /* the bottom-right is relative to the - * base of the title - this way the - * title region will scale based on font - * size */ - offset: -1 -1; /* relative to the bottom right */ - to_y: "title_base"; /* only y is relative to title_base. the - * rest is relative to the whole object - * (because its not specified) */ - } - } - } - part { name: "bottom"; /* this is the bottom of the window */ + } + } + part { + name: "px2"; type: RECT; - mouse_events: 0; - description { state: "default" 0.0; + description { + state: "default" 0.0; + rel1 { + relative: 0.0 1.0; + offset: 0 -1; + } + rel2 { + relative: 1.0 1.0; + offset: -1 -1; + } color: 0 0 0 255; - rel1 { - relative: 0.0 1.0; /* relative to the bottom-left of the edje - * but 4 pixels up */ - offset: 0 -8; - } - rel2 { - relative: 1.0 1.0; - offset: -1 -1; - } - } - description { state: "shaded" 0.0; /* when in a shaded state then - * don't display this part */ - inherit: "default" 0.0; - visible: 0; - } - description { state: "max" 0.0; /* whem maximised too */ - inherit: "default" 0.0; - visible: 0; - } - } - part { name: "icon_area"; /* this is an invisible rectangle that we - * use to place icons within. we use this - * to keep it fixed as the "icone area" so - * the actual swallow part that swallows - * the icon can be moved/resized for - * animations */ - type: RECT; - description { state: "default" 0.0; - visible: 0; - align: 0.0 0.5; /* alignt to the left, but center vertically */ - aspect: 1.0 1.0; /* prefer ans aspect of 1.0 (ie width / height - * is 1.0 - i.e. - square. aspect here is - * min and max aspect that will be "allowed" - * (since both min and max are 1.0 respectively - * in order). */ - aspect_preference: VERTICAL; /* this means that the vertical - * axis controls aspect and the - * icon_area part size will be - * governed by the height of the - * part (the width simply following - * along behind) */ - rel1 { /* rel1 - top-left corner of this part */ - relative: 0.0 0.0; - offset: 2 2; /* 2 pixels in from the top-left of the border - * corner */ - } - rel2 { - relative: 0.0 1.0; /* bottom-right of this part is also 2 - * pixels in from the left (but align will - * mean it goes to the right) and be 2 - * pixels in from the bottom edge of - * "title_base" (remember rel2 is the - * pixel immediately OUTSIDE the part. - * i.e. x + width & y + height). */ - offset: 2 -3; - to_y: "title_base"; - } - } - description { state: "active" 0.0; /* and an active state */ - inherit: "default" 0.0; - rel1 { - offset: 2 3; /* 1 pixel down from default so it looks like it - * is pressed down a bit */ - } - rel2 { - offset: 2 -2; /* same here - down 1 pixel from "default" */ - } - } - } - part { name: "icon_area2"; /* this area is another invisible rect - * that is used for shuffling around parts - * that are relative to it. the states - * below are just a few "random" offsets - * to make it look like whatever is - * relative to icon_area2 is "jiggling" - * around */ - type: RECT; - description { state: "default" 0.0; - visible: 0; - rel1.to: "icon_area"; - rel2.to: "icon_area"; - } - description { state: "uw0" 0.0; /* jiggle */ - inherit: "default" 0.0; - rel1.offset: -3 -2; - rel2.offset: -4 -3; - } - description { state: "uw1" 0.0; /* jiggle some more */ - inherit: "default" 0.0; - rel1.offset: 5 -2; - rel2.offset: 4 -3; - } - description { state: "uw2" 0.0; /* look at me - jiggling! */ - inherit: "default" 0.0; - rel1.offset: -1 4; - rel2.offset: -2 3; - } - description { state: "uw3" 0.0; /* jiggling about */ - inherit: "default" 0.0; - rel1.offset: -2 -1; - rel2.offset: -3 -2; - } - description { state: "uw4" 0.0; /* one more jiggle for the dummies */ - inherit: "default" 0.0; - rel1.offset: -4 1; - rel2.offset: -5 0; - } - } - part { name: "e.swallow.icon"; /* finally a swallow part - this is - * just a placeholder to SWALLOW - * other external evas objects into - * this region and edje will control - * any object swallowed as if it were - * this part itself (move, resize, - * etc.) */ - type: SWALLOW; - description { state: "default" 0.0; - aspect: 1.0 1.0; - aspect_preference: BOTH; - rel1.to: "icon_area2"; - rel2.to: "icon_area2"; - } - description { state: "shrunk" 0.0; - inherit: "default" 0.0; - rel1.relative: 0.3 0.3; - rel2.relative: 0.7 0.7; - } - } - part { name: "e.text.title"; /* this is a text part - the black - * text on the white title top image */ - type: TEXT; - mouse_events: 0; - scale: 1; /* allow this part to scale by a scale factor (dpi) */ - description { state: "default" 0.0; - visible: 1; - align: 0.0 0.0; /* align top and left */ - rel1 { - relative: 1.0 0.0; - offset: 9 2; - to_x: "icon_area"; /* relative to the right side of the icon - * area but 9 pixels away */ - } - rel2 { - relative: 1.0 0.0; /* and the bottom right is inset by 8 - * pixels from the right of "title_base" - * but as its aligned to the top we can - * keep this at 2 pixels from the top of - * the whole edje object and let alignment - * make it extend downward from that point - * with the text size defining the min size - * vertically below */ - offset: -8 2; - to_x: "title_base"; - } - color: 200 200 200 255; /* black */ - text { - font: "Sans:style=Bold"; /* Use the Bold style - * of the Sans font from - * fontconfig */ - size: 10; /* size in pixels - 10 */ - min: 0 1; /* the text will not determine minimum horizontal - * size but WILL determine minimal vertical size - * (thus 0 1 - horiz then vert flags) */ - align: 0.0 0.0; /* align text to top-left of the region - * given */ - text_class: "title_bar"; /* text class - so font and size - * can be changed by users */ - } - } - description { state: "focused" 0.0; /* when the border is focused - * then make the text fade out - * and vanish */ - inherit: "default" 0.0; - color: 255 255 255 255; - } - } + } + } + part { + name: "px3"; + type: RECT; + description { + state: "default" 0.0; + rel1 { + relative: 0.0 0.0; + offset: 0 1; + } + rel2 { + relative: 0.0 1.0; + offset: 0 -2; + } + color: 0 0 0 255; + } + } + part { + name: "px4"; + type: RECT; + description { + state: "default" 0.0; + rel1 { + relative: 1.0 0.0; + offset: -1 1; + } + rel2 { + relative: 1.0 1.0; + offset: -1 -2; + } + color: 0 0 0 255; + } + } + part { + name: "e.swallow.client"; + type: SWALLOW; + description { + state: "default" 0.0; + rel1 { + relative: 0.0 0.0; + offset: 1 1; + } + rel2 { + relative: 1.0 1.0; + offset: -2 -2; + } + } + } + } + } +///////////////////////////////////////////////////////////////////////////// +/*** THE DEFAULT MOUSE CURSOR - MONOCHROME. REALLY BORING ***/ + /* This pointer is used if the Xserver does not support full ARGB color + * pointers. This can happen if X is old or the driver or libxcursor did + * not exist when ecore was compiled. since the cursor will be literally + * reduced down to black and white with a single transparency mask, + * colors other than black and whigte will be lost (and be approximated + * with dithering) and any translucency other than completely opaque or + * completely transparent pixels will also be lost. it then makes sense + * to have a special black and white only image with no semi-transparency + * so when this is displayed it will look directly as intended by the + * artist */ - part { name: "bt_close"; /* the close button shadow */ - mouse_events: 0; + group { + name: "e/pointer/enlightenment/default/mono"; + images { + image: "added_images/e17_pointer_mono.png" COMP; + } + parts { + part { + name: "e/pointer"; + mouse_events: 0; + description { + state: "default" 0.0; + image { + normal: "added_images/e17_pointer_mono.png"; + } + } + } + part { + name: "hotspot"; + /* this cursor also has a hotspot */ + type: SWALLOW; + description { + state: "default" 0.0; + visible: 0; + rel1 { + relative: 0.0 0.0; + offset: 1 1; + } + rel2 { + relative: 0.0 0.0; + offset: 1 1; + } + } + } + } + } +///////////////////////////////////////////////////////////////////////////// +/*** TOOLBAR ****/ + + group { + name: "e/widgets/toolbar"; + images { + image: "bt_dis_base.png" COMP; + image: "bt_dis_hilight.png" COMP; + image: "bt_dis_shine.png" COMP; + image: "icon_left_arrow.png" COMP; + image: "icon_right_arrow.png" COMP; + } + parts { + part { + name: "base"; + mouse_events: 1; + description { + state: "default" 0.0; + rel1 { + relative: 0.0 0.0; + offset: 2 2; + } + rel2.offset: -3 -3; + image { + normal: "bt_dis_base.png"; + border: 4 4 4 4; + } + } + } + part { + name: "clipper"; type: RECT; - description { state: "default" 0.0; - color: 255 0 0 255; - align: 1.0 0.5; - min: 20 20; /* min and max size are the same, so never - * resize this */ - aspect: 1.0 1.0; /* square - always */ - aspect_preference: VERTICAL; /* the vetical axis controls size - * when applying the aspect ratio - * hint above */ - rel1 { - relative: 1.0 0.0; - offset: -2 1; - to_x: "top"; - to_y: "top"; - } - rel2 { - relative: 1.0 1.0; - offset: -2 -2; - to_x: "top"; - to_y: "top"; - } - } - } - part { name: "bt_max"; /* maximize button shadow */ - mouse_events: 0; + mouse_events: 0; + description { + state: "default" 0.0; + rel1 { + to: "base"; + offset: 2 2; + } + rel2 { + to: "base"; + offset: -3 -3; + } + } + } + part { + name: "e.swallow.content"; + clip_to: "clipper"; + type: SWALLOW; + description { + state: "default" 0.0; + rel1.to: "clipper"; + rel2.to: "clipper"; + } + } + part { + name: "over2"; + mouse_events: 0; + description { + state: "default" 0.0; + rel1.to: "base"; + rel2.to: "base"; + image { + normal: "bt_dis_shine.png"; + border: 4 4 4 4; + } + } + } + part { + name: "over1"; + mouse_events: 0; + description { + state: "default" 0.0; + rel1.to: "base"; + rel2.to: "base"; + rel2.relative: 1.0 0.5; + image { + normal: "bt_dis_hilight.png"; + border: 4 4 4 0; + } + color: 255 255 255 128; + } + } + part { + name: "left_arrow"; + mouse_events: 1; + scale: 1; + description { + state: "default" 0.0; + image.normal: "icon_left_arrow.png"; + aspect: 1.0 1.0; + aspect_preference: VERTICAL; + align: 0.0 0.5; + min: 32 32; + max: 32 32; + } + description { + state: "hidden" 0.0; + inherit: "default" 0.0; + visible: 0; + color: 255 255 255 0; + } + } + part { + name: "right_arrow"; + mouse_events: 1; + scale: 1; + description { + state: "default" 0.0; + image.normal: "icon_right_arrow.png"; + aspect: 1.0 1.0; + aspect_preference: VERTICAL; + align: 1.0 0.5; + min: 32 32; + max: 32 32; + } + description { + state: "hidden" 0.0; + inherit: "default" 0.0; + visible: 0; + color: 255 255 255 0; + } + } + part { + name: "e.dragable.hbar"; + mouse_events: 0; + dragable { + x: 1 1 0; + y: 0 0 0; + confine: "base"; + } + description { + state: "default" 0.0; + visible: 0; + rel1.to: "base"; + rel2.to: "base"; + } + } + part { + name: "event"; type: RECT; - description { state: "default" 0.0; - color: 255 128 0 255; - align: 1.0 0.5; - min: 20 20; - aspect: 1.0 1.0; - aspect_preference: VERTICAL; - rel1 { - relative: 0.0 0.0; - offset: -2 1; - to_x: "bt_close"; /* left of the close button */ - to_y: "top"; - } - rel2 { - relative: 0.0 1.0; - offset: -2 -2; - to_x: "bt_close"; /* left of the close button */ - to_y: "top"; - } - } - } - part { name: "bt_min"; /* minimize button shadow */ - mouse_events: 0; + mouse_events: 1; + repeat_events: 1; + description { + state: "default" 0.0; + color: 0 0 0 0; + } + } + } + programs { + program { + name: "sb_hbar_show"; + signal: "e,action,show,hbar"; + source: "e"; + action: STATE_SET "default" 0.0; + transition: LINEAR 0.5; + target: "left_arrow"; + target: "right_arrow"; + } + program { + name: "sb_hbar_hide"; + signal: "e,action,hide,hbar"; + source: "e"; + action: STATE_SET "hidden" 0.0; + target: "left_arrow"; + target: "right_arrow"; + transition: LINEAR 0.5; + } + program { + name: "sb_left"; + signal: "mouse,down,1"; + source: "left_arrow"; + action: SIGNAL_EMIT "e,action,prev" "e"; + } + program { + name: "sb_right"; + signal: "mouse,down,1"; + source: "right_arrow"; + action: SIGNAL_EMIT "e,action,next" "e"; + } + } + } + group { + name: "e/widgets/toolbar/item"; + images { + image: "toolbar_sel.png" COMP; + } + parts { + part { + name: "label2"; + type: TEXT; + mouse_events: 0; + scale: 1; + description { + state: "default" 0.0; + align: 0.5 1.0; + fixed: 0 1; + rel1.to: "e.text.label"; + rel2.to: "e.text.label"; + color: 0 0 0 255; + text { + font: "Sans"; + text_source: "e.text.label"; + size: 10; + min: 1 1; + align: 0.5 0.5; + text_class: "fileman_icon"; + } + } + description { + state: "selected" 0.0; + inherit: "default" 0.0; + visible: 0; + } + } + part { + name: "bg"; + mouse_events: 0; + description { + state: "default" 0.0; + visible: 0; + color: 255 255 255 0; + image { + normal: "toolbar_sel.png"; + border: 3 3 0 0; + } + fill.smooth: 0; + } + description { + state: "selected" 0.0; + inherit: "default" 0.0; + visible: 1; + color: 255 255 255 255; + } + } + part { + name: "e.swallow.icon"; + type: SWALLOW; + description { + state: "default" 0.0; + align: 0.5 0.5; + rel1 { + relative: 0.0 0.0; + offset: 2 2; + } + rel2 { + to_y: "e.text.label"; + relative: 1.0 0.0; + offset: -3 -1; + } + color: 0 0 0 0; + } + } + part { + name: "e.text.label"; + type: TEXT; + effect: SOFT_SHADOW; + mouse_events: 0; + scale: 1; + description { + state: "default" 0.0; + align: 0.5 1.0; + fixed: 0 1; + rel1 { + relative: 0.0 1.0; + offset: 0 2; + } + rel2 { + relative: 1.0 1.0; + offset: -1 -1; + } + visible: 0; + color: 224 224 224 255; + color3: 0 0 0 32; + text { + font: "Sans:style=Bold"; + size: 10; + min: 1 1; + align: 0.5 0.5; + text_class: "fileman_icon"; + } + } + description { + state: "selected" 0.0; + inherit: "default" 0.0; + visible: 1; + } + } + part { + name: "event"; type: RECT; - description { state: "default" 0.0; - color: 255 255 0 255; - align: 1.0 0.5; - min: 20 20; - aspect: 1.0 1.0; - aspect_preference: VERTICAL; - rel1 { - relative: 0.0 0.0; - offset: -2 1; - to_x: "bt_max"; /* left of the maximize button */ - to_y: "top"; - } - rel2 { - relative: 0.0 1.0; - offset: -2 -2; - to_x: "bt_max"; /* left of the maximize button */ - to_y: "top"; - } - } - } + mouse_events: 1; + ignore_flags: ON_HOLD; + description { + state: "default" 0.0; + color: 0 0 0 0; + } + } + } + programs { + program { + name: "go_active"; + signal: "e,state,selected"; + source: "e"; + action: STATE_SET "selected" 0.0; + target: "bg"; + target: "e.text.label"; + target: "label2"; + transition: LINEAR 0.2; + } + program { + name: "go_passive"; + signal: "e,state,unselected"; + source: "e"; + action: STATE_SET "default" 0.0; + target: "bg"; + target: "e.text.label"; + target: "label2"; + transition: LINEAR 0.1; + } + program { + name: "go"; + signal: "mouse,up,1"; + source: "event"; + action: SIGNAL_EMIT "e,action,click" "e"; + } + } + } - part { name: "title_base"; /* an invisible rect part/object used for - * layout purposes */ - type: RECT; - mouse_events: 0; - description { state: "default" 0.0; - visible: 0; - rel1 { - relative: 1.0 0.0; - offset: 0 0; - to_x: "icon_area"; - } - rel2 { - relative: 0.0 1.0; - offset: -3 4; - to_y: "e.text.title"; - to_x: "bt_min"; - } - } - } - part { name: "bottom_clip"; - type: RECT; - description { state: "default" 0.0; - rel1.to: "bottom"; - rel2.to: "bottom"; - color: 255 255 255 255; - } - } - part { name: "resize_b"; - mouse_events: 0; - clip_to: "bottom_clip"; + +///////////////////////////////////////////////////////////////////////////// +/*** MENUS ***/ + + /* this is the background for all menus. it also may optionally display a + * title for the menu. this is wrapped around all the menu items that are + * laid out in a vertical list from top to bottom */ + + group { + name: "e/widgets/menu/default/background"; + images { + image: "base_bg.png" COMP; + image: "bd_top_hilight.png" COMP; + image: "bd_title_bg.png" COMP; + image: "bd_title_over.png" COMP; + } + parts { + part { + name: "base"; + mouse_events: 0; + description { + state: "default" 0.0; + align: 0.5 0.0; + color_class: "menu_base"; + image { + normal: "base_bg.png"; + border: 2 2 2 2; + } + fill.smooth: 0; + /* note - a shortcut for avoiding doing + * fill { smooth: 0; } */ + } + } + part { + name: "top_hilight"; + mouse_events: 0; + description { + state: "default" 0.0; + rel1 { + relative: 0.0 0.0; + offset: 0 0; + } + rel2 { + relative: 1.0 0.0; + offset: -1 15; + } + image.normal: "bd_top_hilight.png"; + fill.smooth: 0; + } + } + part { + name: "title_back"; + mouse_events: 0; + description { + state: "default" 0.0; + visible: 0; + rel1 { + relative: 0.0 0.0; + offset: 4 0; + } + rel2 { + relative: 1.0 0.0; + offset: -5 0; + } + image { + normal: "bd_title_bg.png"; + border: 7 7 2 7; + } + fill.smooth: 0; + } + description { + state: "active" 0.0; + inherit: "default" 0.0; + visible: 1; + rel1 { + relative: 0.0 0.0; + offset: 4 0; + } + rel2 { + to_y: "e.text.title"; + relative: 1.0 1.0; + offset: -5 -4; + } + } + } + part { + name: "e.text.title"; + /* e sets the text of this to the title + * if there is any */ + type: TEXT; + mouse_events: 0; + scale: 1; + effect: SOFT_SHADOW; + description { + state: "default" 0.0; + fixed: 1 1; + visible: 0; + align: 0.5 0.0; + rel1 { + relative: 0.0 0.0; + offset: 0 0; + } + rel2 { + relative: 1.0 0.0; + offset: -1 0; + } + color_class: "menu_title"; + text { + text_source: "e.text.title"; + font: "Sans:style=Bold"; + size: 10; + align: 0.5 0.0; + min: 0 0; + text_class: "menu_title"; + } + } + description { + state: "active" 0.0; + inherit: "default" 0.0; + visible: 1; + color_class: "menu_title_active"; + text.min: 1 1; + } + } + part { + name: "title_over"; + mouse_events: 0; + description { + state: "default" 0.0; + visible: 0; + rel1.to: "title_back"; + rel2.to: "title_back"; + image { + normal: "bd_title_over.png"; + border: 7 7 2 7; + } + fill.smooth: 0; + } + description { + state: "active" 0.0; + inherit: "default" 0.0; + visible: 1; + } + } + part { + name: "e.swallow.content"; + /* this swallow part determines + * where in the menu the vertical + * list of menu items is put */ + type: SWALLOW; + description { + state: "default" 0.0; + rel1 { + to_y: "e.text.title"; + relative: 0.0 1.0; + offset: 2 1; + } + rel2 { + relative: 1.0 1.0; + offset: -3 -3; + } + } + } + } + programs { + program { + name: "on"; + /* this program is run when e emits a signal + * to display a title. e will also set the + * title text */ + signal: "e,action,show,title"; + source: "e"; + action: STATE_SET "active" 0.0; + target: "title_back"; + target: "e.text.title"; + target: "title_over"; + } + program { + name: "off"; + /* run when the title is removed */ + signal: "e,action,hide,title"; + source: "e"; + action: STATE_SET "default" 0.0; + target: "title_back"; + target: "e.text.title"; + target: "title_over"; + } + } + } + /* this is placed as a horizontal separator between menu items in the + * vertical menu item list. it has no functionality other than being + * a visual separator */ + group { + name: "e/widgets/menu/default/separator"; + images { + image: "menu_sep.png" COMP; + } + parts { + part { + name: "separator"; + mouse_events: 0; + description { + state: "default" 0.0; + min: 16 2; + rel1.offset: 2 2; + rel2.offset: -3 -3; + image { + normal: "menu_sep.png"; + border: 2 2 0 0; + } + fill.smooth: 0; + } + } + } + } + /* this is used for regular menu items. this is what swallows/holds the + * whole line of the menu item, icon, check/radio mark, label and submenu + * indicator, where applicable */ + group { + name: "e/widgets/menu/default/item_bg"; + /* this is idential to the regular menu item above, but used only for + * items that have a submenu. this is to allow for a possible different + * look for submenu holding items. here this is identical to to the + * normal menu item, thus we are making use of the alias directive that + * gives a group the ability to go by manu names */ + alias: "e/widgets/menu/default/submenu_bg"; + images { + image: "menu_sel_bg.png" COMP; + image: "menu_sel_fg.png" COMP; + } + parts { + part { + name: "bg"; + mouse_events: 0; + description { + state: "default" 0.0; + visible: 0; + color: 255 255 255 0; + rel1 { + relative: 0.0 0.0; + offset: -5 -3; + } + rel2 { + relative: 1.0 1.0; + offset: 4 5; + } + image { + normal: "menu_sel_bg.png"; + border: 8 8 5 9; + } + } + description { + state: "selected" 0.0; + inherit: "default" 0.0; + visible: 1; + color: 255 255 255 255; + rel1 { + relative: 0.0 0.0; + offset: -2 0; + } + rel2 { + relative: 1.0 1.0; + offset: 1 2; + } + } + } + part { + name: "e.swallow.content"; + /* all item content will go here */ + type: SWALLOW; + description { + state: "default" 0.0; + align: 0.0 0.0; + rel1.offset: 2 1; + rel2.offset: -3 -2; + } + } + part { + name: "fg"; + mouse_events: 0; + description { + state: "default" 0.0; + visible: 0; + color: 255 255 255 0; + rel1.to: "bg"; + rel2.to: "bg"; + image { + normal: "menu_sel_fg.png"; + border: 8 8 5 9; + } + } + description { + state: "selected" 0.0; + inherit: "default" 0.0; + visible: 1; + color: 255 255 255 255; + } + } + } + programs { + program { + name: "sel"; + /* when the menu item is selected (hilighted) + * this program is run to give the whole item + * an overall selected look */ + signal: "e,state,selected"; + source: "e"; + action: STATE_SET "selected" 0.0; + transition: LINEAR 0.2; + target: "bg"; + target: "fg"; + } + program { + name: "unsel"; + /* when selection is removed from the menu + * item */ + signal: "e,state,unselected"; + source: "e"; + action: STATE_SET "default" 0.0; + transition: LINEAR 0.1; + target: "bg"; + target: "fg"; + } + } + } + /* this group holds a menu icon. here we just use it to add padding around + * the icon. And to gray-out when disabled */ + group { + name: "e/widgets/menu/default/icon"; + parts { + part { + name: "clip"; type: RECT; - description { state: "default" 0.0; - color: 0 0 0 255; - min: 20 10; - max: 20 10; - rel1 { - to: "bottom"; - relative: 0.5 0.0; - offset: 0 -10; - } - rel2 { - to: "bottom"; - relative: 0.5 0.0; - offset: 0 -1; - } - } - description { state: "past" 0.0; - inherit: "default" 0.0; - rel1 { - relative: 0.5 1.0; - offset: 0 0; - } - rel2 { - relative: 0.5 1.0; - offset: 0 9; - } - } - } + description { + min: 10 10; + state: "default" 0.0; + color: 255 255 255 255; + } + description { + state: "disabled" 0.0; + color: 255 255 255 128; + } + } + part { + name: "e.swallow.content"; + /* icon is swallowed here */ + type: SWALLOW; + clip_to: "clip"; + description { + state: "default" 0.0; + min: 16 16; + max: 24 24; + fixed: 1 1; + rel1 { + relative: 0.0 0.0; + offset: 2 2; + } + rel2 { + relative: 1.0 1.0; + offset: -3 -3; + } + } + } + } + programs { + program { + name: "enable"; + /* enable */ + signal: "e,state,enable"; + source: "e"; + action: STATE_SET "default" 0.0; + target: "clip"; + } + program { + name: "disable"; + /* disable */ + signal: "e,state,disable"; + source: "e"; + action: STATE_SET "disabled" 0.0; + target: "clip"; + } + } + } + /* this is the actual text label for the menu item */ + group { + name: "e/widgets/menu/default/label"; + parts { + part { + name: "e.text.label"; + /* e sets the text of this */ + type: TEXT; + effect: SOFT_SHADOW; + mouse_events: 0; + scale: 1; + description { + state: "default" 0.0; + rel1 { + relative: 0.0 0.0; + offset: 1 -1; + } + rel2 { + relative: 1.0 1.0; + offset: -1 1; + } + color_class: "menu_item"; + text { + font: "Sans"; + size: 10; + min: 1 1; + align: 0.0 0.5; + text_class: "menu_item"; + } + } + description { + state: "selected" 0.0; + inherit: "default" 0.0; + color_class: "menu_item_active"; + } + description { + state: "disabled" 0.0; + inherit: "default" 0.0; + color_class: "menu_item_disabled"; + } + } + } + programs { + program { + name: "sel"; + /* when the menu item is actually selected */ + signal: "e,state,selected"; + source: "e"; + action: STATE_SET "selected" 0.0; + transition: LINEAR 0.2; + target: "e.text.label"; + } + program { + name: "unsel"; + /* on de-select */ + signal: "e,state,unselected"; + source: "e"; + action: STATE_SET "default" 0.0; + transition: LINEAR 0.3; + target: "e.text.label"; + } + program { + name: "enable"; + /* enable */ + signal: "e,state,enable"; + source: "e"; + action: STATE_SET "default" 0.0; + transition: LINEAR 0.3; + target: "e.text.label"; + } + program { + name: "disable"; + /* disable */ + signal: "e,state,disable"; + source: "e"; + action: STATE_SET "disabled" 0.0; + //transition: LINEAR 0.3; + target: "e.text.label"; + } + } + } + /* this is a small arrow on the right of the menu item to indicate that it + * has a submenu after it */ + group { + name: "e/widgets/menu/default/submenu"; + images { + image: "menu_arrow_normal.png" COMP; + image: "menu_arrow_sel.png" COMP; + } + parts { + part { + name: "arrow"; + mouse_events: 0; + description { + state: "default" 0.0; + min: 9 12; + max: 9 12; + rel1 { + relative: 0.0 0.0; + offset: 4 1; + } + rel2 { + relative: 1.0 1.0; + offset: -3 -1; + } + image.normal: "menu_arrow_normal.png"; + } + description { + state: "selected" 0.0; + inherit: "default" 0.0; + image.normal: "menu_arrow_sel.png"; + } + } + } + programs { + program { + name: "sel"; + signal: "e,state,selected"; + source: "e"; + action: STATE_SET "selected" 0.0; + target: "arrow"; + } + program { + name: "unsel"; + signal: "e,state,unselected"; + source: "e"; + action: STATE_SET "default" 0.0; + target: "arrow"; + } + } + } + /* this is placed left of the icon in a menu item (if any icon) or left + * of the label if no icon is present. this is a checkbox to indicate if + * the menu item is enabled or disabled */ + group { + name: "e/widgets/menu/default/check"; + images { + image: "check_base.png" COMP; + image: "check_on.png" COMP; + image: "check_sel.png" COMP; + } + parts { + part { + name: "base"; + mouse_events: 0; + scale: 1; + description { + state: "default" 0.0; + min: 16 16; + max: 16 16; + image.normal: "check_base.png"; + } + } + part { + name: "mark"; + mouse_events: 0; + clip_to: "mark_hold"; + description { + state: "default" 0.0; + rel1.to: "mark_hold"; + rel2.to: "mark_hold"; + image.normal: "check_on.png"; + } + description { + state: "selected" 0.0; + inherit: "default" 0.0; + image.normal: "check_sel.png"; + } + } + part { + name: "mark_hold"; + type: RECT; + mouse_events: 0; + description { + state: "default" 0.0; + visible: 0; + color: 255 255 255 0; + rel1 { + to: "base"; + offset: -5 -5; + } + rel2 { + to: "base"; + offset: 4 4; + } + } + description { + state: "on" 0.0; + inherit: "default" 0.0; + visible: 1; + color: 255 255 255 255; + rel1.offset: 0 0; + rel2.offset: -1 -1; + } + } + } + programs { + program { + name: "sel"; + /* on selection of the menu item */ + signal: "e,state,selected"; + source: "e"; + action: STATE_SET "selected" 0.0; + target: "mark"; + } + program { + name: "unsel"; + /* de-select */ + signal: "e,state,unselected"; + source: "e"; + action: STATE_SET "default" 0.0; + target: "mark"; + } + program { + name: "on"; + /* if the checkmark is to be displayed */ + signal: "e,state,on"; + source: "e"; + action: STATE_SET "on" 0.0; + transition: LINEAR 0.15; + target: "mark_hold"; + } + program { + name: "off"; + /* check mark is not to be displayed */ + signal: "e,state,off"; + source: "e"; + action: STATE_SET "default" 0.0; + transition: LINEAR 0.2; + target: "mark_hold"; + } + } + } + /* for a radio menu item - same as check, but only one of a group of radio + * menu item can be selected at any one time */ + group { + name: "e/widgets/menu/default/radio"; + images { + image: "radio_base.png" COMP; + image: "radio_on.png" COMP; + image: "radio_sel.png" COMP; + } + parts { + part { + name: "base"; + mouse_events: 0; + scale: 1; + description { + state: "default" 0.0; + min: 16 16; + max: 16 16; + image.normal: "radio_base.png"; + } + description { + state: "selected" 0.0; + inherit: "default" 0.0; + image.normal: "menu_arrow_sel.png"; + } + } + part { + name: "mark"; + mouse_events: 0; + clip_to: "mark_hold"; + description { + state: "default" 0.0; + rel1.to: "mark_hold"; + rel2.to: "mark_hold"; + image.normal: "radio_on.png"; + } + description { + state: "selected" 0.0; + inherit: "default" 0.0; + image.normal: "radio_sel.png"; + } + } + part { + name: "mark_hold"; + type: RECT; + mouse_events: 0; + description { + state: "default" 0.0; + visible: 0; + color: 255 255 255 0; + rel1 { + to: "base"; + offset: -5 -5; + } + rel2 { + to: "base"; + offset: 4 4; + } + } + description { + state: "on" 0.0; + inherit: "default" 0.0; + visible: 1; + color: 255 255 255 255; + rel1.offset: 0 0; + rel2.offset: -1 -1; + } + } + } + programs { + program { + name: "sel"; + signal: "e,state,selected"; + source: "e"; + action: STATE_SET "selected" 0.0; + target: "mark"; + } + program { + name: "unsel"; + signal: "e,state,unselected"; + source: "e"; + action: STATE_SET "default" 0.0; + target: "mark"; + } + program { + name: "on"; + signal: "e,state,on"; + source: "e"; + action: STATE_SET "on" 0.0; + transition: LINEAR 0.15; + target: "mark_hold"; + } + program { + name: "off"; + signal: "e,state,off"; + source: "e"; + action: STATE_SET "default" 0.0; + transition: LINEAR 0.2; + target: "mark_hold"; + } + } + } - part { name: "e.swallow.client"; /* this determines where the actual - * client window will be placed in - * the border design */ - type: SWALLOW; - description { state: "default" 0.0; - rel1 { - relative: 0.0 1.0; - offset: 0 0; - to_y: "top"; - } - rel2 { - relative: 1.0 0.0; - offset: -1 -1; - to_y: "bottom"; - } - } - description { state: "shaded" 0.0; - inherit: "default" 0.0; - rel2 { - relative: 1.0 1.0; - offset: -1 -1; - to_y: "bottom"; - } - } - description { state: "max" 0.0; - inherit: "default" 0.0; - rel1 { - relative: 0.0 1.0; - offset: 0 0; - to_y: "top"; - } - rel2 { - relative: 1.0 1.0; - offset: -1 -1; - to_y: "bottom"; - } - } - } +///////////////////////////////////////////////////////////////////////////// +/*** SHELF ***/ - /* these transparent rect parts are used for catching events in a way - * here objects for design don't affect the events. these parts - * are named speciifcally because E has config listening for specific - * signals (events) coming from these named parts and based on those - * will perform certain actions. these are actually all configurable - * by the user, so if they want, clicking the logical "titlebar" could - * close the window, not move it, and so on. the user decides this. - * the theme designer simply indicates the "logcal" use of the theme - * elements they have created */ - part { name: "e.event.titlebar"; - type: RECT; - description { state: "default" 0.0; - rel1.to: "title_base"; - rel2.to: "title_base"; - color: 0 0 0 0; - } - } + /* Shelves are "panels" that are placed around the edges of the screen + * to hold useful gadgets to control things - like switch desktops + * (the pager module and its gadget), launch programs, and anything else + * someone wants to put in there. The way to add gadgets to a shelf is to + * write a module that places a gadget there. This means that it might end + * up containing all sorts of things and the artist needs to be aware of + * that and make sure the shelf border and background etc. won't interfere + * with all manner of things that may get placed there */ - part { name: "e.event.resize.t"; - type: RECT; - description { state: "default" 0.0; - rel1 { - relative: 0.0 0.0; - offset: 0 0; - } - rel2 { - relative: 1.0 0.0; - offset: -1 3; - } - color: 0 0 0 0; - } - description { state: "shaded" 0.0; - inherit: "default" 0.0; - visible: 0; - } - } - part { name: "e.event.resize.b"; - type: RECT; + group { + name: "e/shelf/default/base"; + data { + /* this tells e the shelf is shaped, not rectangular */ + // item: "shaped" "1"; + /* this tells e the number of pixels of the shelf to leave "exposed" + * when auto-hiding the shelf */ + item: "hidden_state_size" "1"; + /* This makes the border hide instantly after the given amount of + * seconds - in this case 3 seconds. This means there will be no + * visible part of the shelf after this time at all as it will be + * totally hidden */ + // item: "instant_delay" "3.0"; + } + images { + image: "base_bg.png" COMP; + } + parts { + part { + name: "base"; + mouse_events: 0; + description { + state: "default" 0.0; + color_class: "shelf_base"; + image.normal: "base_bg.png"; + image.border: 2 2 2 2; + fill.smooth: 0; + } + } + part { + name: "e.swallow.content"; + type: SWALLOW; + description { + state: "default" 0.0; + rel1 { + relative: 0.0 0.0; + offset: 3 3; + } + rel2 { + relative: 1.0 1.0; + offset: -4 -4; + } + } + } + } + programs { + // tell us what oriantation we are in. not used here + // program { name: "xx"; + // signal: "e,state,orientation,top"; + // source: "e"; + // } + // tell us what oriantation we are in. not used here + // program { name: "xx"; + // signal: "e,state,orientation,top_left"; + // source: "e"; + // } + // tell us what oriantation we are in. not used here + // program { name: "xx"; + // signal: "e,state,orientation,top_right"; + // source: "e"; + // } + // tell us what oriantation we are in. not used here + // program { name: "xx"; + // signal: "e,state,orientation,bottom"; + // source: "e"; + // } + // tell us what oriantation we are in. not used here + // program { name: "xx"; + // signal: "e,state,orientation,bottom_left"; + // source: "e"; + // } + // tell us what oriantation we are in. not used here + // program { name: "xx"; + // signal: "e,state,orientation,bottom_right"; + // source: "e"; + // } + // tell us what oriantation we are in. not used here + // program { name: "xx"; + // signal: "e,state,orientation,left"; + // source: "e"; + // } + // tell us what oriantation we are in. not used here + // program { name: "xx"; + // signal: "e,state,orientation,left_top"; + // source: "e"; + // } + // tell us what oriantation we are in. not used here + // program { name: "xx"; + // signal: "e,state,orientation,left_bottom"; + // source: "e"; + // } + // tell us what oriantation we are in. not used here + // program { name: "xx"; + // signal: "e,state,orientation,right"; + // source: "e"; + // } + // tell us what oriantation we are in. not used here + // program { name: "xx"; + // signal: "e,state,orientation,right_top"; + // source: "e"; + // } + // tell us what oriantation we are in. not used here + // program { name: "xx"; + // signal: "e,state,orientation,right_bottom"; + // source: "e"; + // } + // tell us we became a visible shelf. not used here + // program { name: "xx"; + // signal: "e,state,visible"; + // source: "e"; + // } + // tell us we became a hidden shelf. not used here + // program { name: "xx"; + // signal: "e,state,hidden"; + // source: "e"; + // } + } + } + /* This is put around gadgets in the shelf if they ask for an "inset" style + * framing. This puts some sort of bordering around them to make them look + * "inset" into the shelf or screen. this is meant to go with the default + * shelf style as implied in the group name */ + group { + name: "e/shelf/default/inset"; + images { + image: "inset_sunk.png" COMP; + } + parts { + part { + name: "base"; + type: RECT; + description { + state: "default" 0.0; + rel1 { + to: "inset"; + offset: 1 1; + } + rel2 { + to: "inset"; + offset: -2 -2; + } + color: 255 255 255 255; + } + } + part { + name: "clip"; + type: RECT; + description { + state: "default" 0.0; + rel1.to: "base"; + rel2.to: "base"; + color: 255 255 255 255; + } + } + part { + name: "e.swallow.content"; + type: SWALLOW; + clip_to: "clip"; + description { + state: "default" 0.0; + rel1 { + to: "base"; + offset: 1 1; + } + rel2 { + to: "base"; + offset: -2 -2; + } + } + } + part { + name: "inset"; + mouse_events: 0; + description { + state: "default" 0.0; + rel1.offset: 1 1; + rel2.offset: -2 -2; + image.normal: "inset_sunk.png"; + image.middle: 0; + /* here we say the "middle" part of the image + * between the borders is not filled - it's + * empty, so don't draw it - ignore it */ + image.border: 7 7 7 7; + fill.smooth: 0; + } + } + } + programs { + // tell us what oriantation we are in. not used here + // program { name: "xx"; + // signal: "e,state,orientation,top"; + // source: "e"; + // } + // tell us what oriantation we are in. not used here + // program { name: "xx"; + // signal: "e,state,orientation,top_left"; + // source: "e"; + // } + // tell us what oriantation we are in. not used here + // program { name: "xx"; + // signal: "e,state,orientation,top_right"; + // source: "e"; + // } + // tell us what oriantation we are in. not used here + // program { name: "xx"; + // signal: "e,state,orientation,bottom"; + // source: "e"; + // } + // tell us what oriantation we are in. not used here + // program { name: "xx"; + // signal: "e,state,orientation,bottom_left"; + // source: "e"; + // } + // tell us what oriantation we are in. not used here + // program { name: "xx"; + // signal: "e,state,orientation,bottom_right"; + // source: "e"; + // } + // tell us what oriantation we are in. not used here + // program { name: "xx"; + // signal: "e,state,orientation,left"; + // source: "e"; + // } + // tell us what oriantation we are in. not used here + // program { name: "xx"; + // signal: "e,state,orientation,left_top"; + // source: "e"; + // } + // tell us what oriantation we are in. not used here + // program { name: "xx"; + // signal: "e,state,orientation,left_bottom"; + // source: "e"; + // } + // tell us what oriantation we are in. not used here + // program { name: "xx"; + // signal: "e,state,orientation,right"; + // source: "e"; + // } + // tell us what oriantation we are in. not used here + // program { name: "xx"; + // signal: "e,state,orientation,right_top"; + // source: "e"; + // } + // tell us what oriantation we are in. not used here + // program { name: "xx"; + // signal: "e,state,orientation,right_bottom"; + // source: "e"; + // } + } + } + /* Same as inset, but meant to be with no decorations that are visible. here + * we simply make the content swallow inset a bit from the edges to align + * with any plain style inset boxes */ + group { + name: "e/shelf/default/plain"; + parts { + part { + name: "clip"; + type: RECT; + description { + state: "default" 0.0; + color: 255 255 255 255; + } + } + part { + name: "e.swallow.content"; + type: SWALLOW; + clip_to: "clip"; + description { + state: "default" 0.0; + rel1.offset: 1 1; + rel2.offset: -2 -2; + } + } + } + } + /* This is the "invisible" shelf. Yes. Even it has visual config in edje. + * The idea is that it will remain invisible, BUT will allow the designer + * to do some layout and padding. This gets the same signals as the + * default shelf and can provide the same data items */ + group { + name: "e/shelf/invisible/base"; + data.item: "shaped" "1"; + parts { + part { + name: "e.swallow.content"; + type: SWALLOW; + description { + state: "default" 0.0; + rel1 { + relative: 0.0 0.0; + offset: 0 0; + } + rel2 { + relative: 1.0 1.0; + offset: -1 -1; + } + } + } + } + } + group { + name: "e/shelf/invisible/inset"; + images { + image: "inset_sunk_dark.png" COMP; + } + parts { + part { + name: "base"; + type: RECT; + description { + state: "default" 0.0; + rel1 { + to: "inset"; + offset: 1 1; + } + rel2 { + to: "inset"; + offset: -2 -2; + } + color: 0 0 0 32; + } + } + part { + name: "clip"; + type: RECT; + description { + state: "default" 0.0; + rel1.to: "base"; + rel2.to: "base"; + color: 255 255 255 255; + } + } + part { + name: "e.swallow.content"; + type: SWALLOW; + clip_to: "clip"; + description { + state: "default" 0.0; + rel1 { + to: "base"; + offset: 1 1; + } + rel2 { + to: "base"; + offset: -2 -2; + } + } + } + part { + name: "inset"; + mouse_events: 0; + description { + state: "default" 0.0; + rel1.offset: 1 1; + rel2.offset: -2 -2; + image.normal: "inset_sunk_dark.png"; + image.middle: 0; + image.border: 7 7 7 7; + fill.smooth: 0; + } + } + } + } + group { + name: "e/shelf/invisible/plain"; + parts { + part { + name: "clip"; + type: RECT; + description { + state: "default" 0.0; + color: 255 255 255 255; + } + } + part { + name: "e.swallow.content"; + type: SWALLOW; + clip_to: "clip"; + description { + state: "default" 0.0; + rel1.offset: 1 1; + rel2.offset: -2 -2; + } + } + } + } + /* This is the alternate shelf. It provides a stylistic alternative to + * make the shelf more dynamic to your tastes and wallpaper. It is + * selected in the Shelf Configuration. More alternative shelfs can + * be provided by using more group names. eg, "e/shelf/black/base" */ + group { + name: "e/shelf/alternate/base"; + images { + image: "shelf_alt_bg.png" COMP; + // image: "shelf_alt_bg_left.png" COMP; + // image: "shelf_alt_bg_right.png" COMP; + image: "shelf_alt_over.png" COMP; + // image: "shelf_alt_over_left.png" COMP; + // image: "shelf_alt_over_right.png" COMP; + image: "shelf_alt_shine.png" COMP; + } + parts { + part { + name: "base"; + mouse_events: 0; + description { + state: "default" 0.0; + color_class: "shelf_base"; + image.normal: "shelf_alt_bg.png"; + fill.smooth: 0; + } + // description { state: "left" 0.0; + // image.normal: "shelf_alt_bg_left.png"; + // fill.smooth: 0; + // } + // description { state: "right" 0.0; + // image.normal: "shelf_alt_bg_right.png"; + // fill.smooth: 0; + // } + } + part { + name: "e.swallow.content"; + type: SWALLOW; + description { + state: "default" 0.0; + rel1 { + relative: 0.0 0.0; + offset: 3 3; + } + rel2 { + relative: 1.0 1.0; + offset: -4 -4; + } + } + } + part { + name: "shine"; + mouse_events: 0; + description { + state: "default" 0.0; + image.normal: "shelf_alt_shine.png"; + rel2.relative: 1.0 0.5; + fill.smooth: 0; + } + // description { state: "left" 0.0; + // inherit: "default" 0.0; + // color: 255 255 255 0; + // } + // description { state: "right" 0.0; + // inherit: "default" 0.0; + // color: 255 255 255 0; + // } + } + part { + name: "over"; + mouse_events: 0; + description { + state: "default" 0.0; + image.normal: "shelf_alt_over.png"; + image.border: 5 5 5 5; + image.middle: 0; + fill.smooth: 0; + } + // description { state: "left" 0.0; + // image.normal: "shelf_alt_over_left.png"; + // image.border: 5 5 5 5; + // image.middle: 0; + // fill.smooth: 0; + // } + // description { state: "right" 0.0; + // image.normal: "shelf_alt_over_right.png"; + // image.border: 5 5 5 5; + // image.middle: 0; + // fill.smooth: 0; + // } + } + } + /* Because programs can not respond to 2 different types of signals, + * the programs are split into individual programs that point towards + * the base program for its orientation. */ + programs { + /* Left orientation */ + // program { name: "left"; + // signal: "e,state,orientation,left"; + // source: "e"; + // action: STATE_SET "left" 0.0; + // target: "base"; + // target: "over"; + // target: "shine"; + // } + // program { name: "left_top"; + // signal: "e,state,orientation,left_top"; + // source: "e"; + // after: "left"; + // } + // program { name: "left_bottom"; + // signal: "e,state,orientation,left_bottom"; + // source: "e"; + // after: "left"; + // } + // /* Right orientation */ + // program { name: "right"; + // signal: "e,state,orientation,right"; + // source: "e"; + // action: STATE_SET "right" 0.0; + // target: "base"; + // target: "over"; + // target: "shine"; + // } + // program { name: "right_top"; + // signal: "e,state,orientation,right_top"; + // source: "e"; + // after: "right"; + // } + // program { name: "right_bottom"; + // signal: "e,state,orientation,right_bottom"; + // source: "e"; + // after: "right"; + // } + } + } + /* This is the alternate shelf. It provides a stylistic alternative to + * make the shelf more dynamic to your tastes and wallpaper. It is + * selected in the Shelf Configuration. More alternative shelfs can + * be provided by using more group names. eg, "e/shelf/black/base" */ + group { name: "e/shelf/alternate_vertical/base"; + images { + image: "shelf_alt_vert_bg.png" COMP; +// image: "shelf_alt_bg_left.png" COMP; +// image: "shelf_alt_bg_right.png" COMP; + image: "shelf_alt_over.png" COMP; +// image: "shelf_alt_over_left.png" COMP; +// image: "shelf_alt_over_right.png" COMP; + } + parts { + part { name: "base"; + mouse_events: 0; description { state: "default" 0.0; - rel1 { - relative: 0.0 1.0; - offset: 0 -4; - } - rel2 { - relative: 1.0 1.0; - offset: -1 -1; - } - color: 0 0 0 0; - } - description { state: "shaded" 0.0; - inherit: "default" 0.0; - visible: 0; + color_class: "shelf_base"; + image.normal: "shelf_alt_vert_bg.png"; + fill.smooth: 0; } +// description { state: "left" 0.0; +// image.normal: "shelf_alt_bg_left.png"; +// fill.smooth: 0; +// } +// description { state: "right" 0.0; +// image.normal: "shelf_alt_bg_right.png"; +// fill.smooth: 0; +// } } - - part { name: "e.event.resize.tl"; - type: RECT; + part { name: "e.swallow.content"; + type: SWALLOW; description { state: "default" 0.0; rel1 { relative: 0.0 0.0; - offset: 0 0; - } - rel2 { - relative: 0.0 0.0; - offset: 15 15; - } - color: 0 0 0 0; - } - description { state: "shaded" 0.0; - inherit: "default" 0.0; - visible: 0; - } - } - part { name: "e.event.resize.tr"; - type: RECT; - description { state: "default" 0.0; - rel1 { - relative: 1.0 0.0; - offset: -16 0; - } - rel2 { - relative: 1.0 0.0; - offset: -1 15; - } - color: 0 0 0 0; - } - description { state: "shaded" 0.0; - inherit: "default" 0.0; - visible: 0; - } - } - part { name: "e.event.resize.bl"; - type: RECT; - description { state: "default" 0.0; - rel1 { - relative: 0.0 1.0; - offset: 0 -16; + offset: 3 3; } rel2 { - relative: 0.0 1.0; - offset: 15 -1; - } - color: 0 0 0 0; - } - description { state: "shaded" 0.0; - inherit: "default" 0.0; - visible: 0; - } - } - part { name: "e.event.resize.br"; - type: RECT; - description { state: "default" 0.0; - rel1 { relative: 1.0 1.0; - offset: -16 -16; + offset: -4 -4; } - rel2 { - relative: 1.0 1.0; - offset: -1 -1; - } - color: 0 0 0 0; - } - description { state: "shaded" 0.0; - inherit: "default" 0.0; - visible: 0; - } - } - - part { name: "e.event.icon"; - type: RECT; - description { state: "default" 0.0; - rel1.to: "icon_area"; - rel2.to: "icon_area"; - color: 0 0 0 0; } } - - part { name: "e.event.close"; - type: RECT; - description { state: "default" 0.0; - rel1.to: "bt_close"; - rel2.to: "bt_close"; - color: 0 0 0 0; - } - } - part { name: "e.event.minimize"; - type: RECT; - description { state: "default" 0.0; - rel1.to: "bt_min"; - rel2.to: "bt_min"; - color: 0 0 0 0; - } - } - part { name: "e.event.maximize"; - type: RECT; + part { name: "over"; + mouse_events: 0; description { state: "default" 0.0; - rel1.to: "bt_max"; - rel2.to: "bt_max"; - color: 0 0 0 0; + image.normal: "shelf_alt_over.png"; + image.border: 5 5 5 5; + image.middle: 0; + fill.smooth: 0; } +// description { state: "left" 0.0; +// image.normal: "shelf_alt_over_left.png"; +// image.border: 5 5 5 5; +// image.middle: 0; +// fill.smooth: 0; +// } +// description { state: "right" 0.0; +// image.normal: "shelf_alt_over_right.png"; +// image.border: 5 5 5 5; +// image.middle: 0; +// fill.smooth: 0; +// } } } - /* programs - these are basically snippets of simple logic to respond to - * incoming signals (generated by signal emisions by code or events) */ + /* Because programs can not respond to 2 different types of signals, + * the programs are split into individual programs that point towards + * the base program for its orientation. */ programs { - program { name: "focus_in"; /* name of the program. must be unique - * within the list of programs attached - * to a group of parts */ - signal: "e,state,focused"; /* what signal triggers this program, - * if any. this can also be a glob like - * "mouse,down,*" for example. note - * that globs are slower to match - * and empty strings are literal matches - * too */ - source: "e"; /* the source of the signal - this must also match for - * the program to be run */ - action: STATE_SET "focused" 0.0; /* the action the program will - * perform. in this case - * it will set the state to - * "focused" @ value 0.0 */ - target: "e.text.title"; - } - program { name: "focus_out"; /* this program is run when focus is - * removed from a window border */ - signal: "e,state,unfocused"; - source: "e"; - action: STATE_SET "default" 0.0; - target: "e.text.title"; - } + /* Left orientation */ +// program { name: "left"; +// signal: "e,state,orientation,left"; +// source: "e"; +// action: STATE_SET "left" 0.0; +// target: "base"; +// target: "over"; +// target: "shine"; +// } +// program { name: "left_top"; +// signal: "e,state,orientation,left_top"; +// source: "e"; +// after: "left"; +// } +// program { name: "left_bottom"; +// signal: "e,state,orientation,left_bottom"; +// source: "e"; +// after: "left"; +// } +// /* Right orientation */ +// program { name: "right"; +// signal: "e,state,orientation,right"; +// source: "e"; +// action: STATE_SET "right" 0.0; +// target: "base"; +// target: "over"; +// target: "shine"; +// } +// program { name: "right_top"; +// signal: "e,state,orientation,right_top"; +// source: "e"; +// after: "right"; +// } +// program { name: "right_bottom"; +// signal: "e,state,orientation,right_bottom"; +// source: "e"; +// after: "right"; +// } + } + } + group { + name: "e/shelf/alternate/inset"; + images { + image: "inset_raised.png" COMP; + } + parts { + part { + name: "base"; + type: RECT; + description { + state: "default" 0.0; + rel1 { + to: "inset"; + offset: 4 4; + } + rel2 { + to: "inset"; + offset: -5 -5; + } + color: 0 0 0 0; + } + } + part { + name: "clip"; + type: RECT; + description { + state: "default" 0.0; + rel1.to: "base"; + rel2.to: "base"; + color: 255 255 255 255; + } + } + part { + name: "e.swallow.content"; + type: SWALLOW; + clip_to: "clip"; + description { + state: "default" 0.0; + rel1 { + to: "base"; + offset: 0 0; + } + rel2 { + to: "base"; + offset: -1 -1; + } + } + } + part { + name: "inset"; + mouse_events: 0; + description { + state: "default" 0.0; + rel1.offset: -1 -1; + rel2.offset: 0 0; + image.normal: "inset_raised.png"; + image.middle: 0; + image.border: 7 7 7 7; + fill.smooth: 0; + } + } + } + } + group { + name: "e/shelf/alternate/plain"; + parts { + part { + name: "clip"; + type: RECT; + description { + state: "default" 0.0; + color: 255 255 255 255; + } + } + part { + name: "e.swallow.content"; + type: SWALLOW; + clip_to: "clip"; + description { + state: "default" 0.0; + rel1.offset: 1 1; + rel2.offset: -2 -2; + } + } + } + } - program { name: "max_full"; /* run on fullscreen maximize */ - signal: "e,action,maximize,fullscreen"; - source: "e"; - action: STATE_SET "max" 0.0; - target: "bottom"; - target: "e.swallow.client"; - } - program { name: "unmax_full"; /* run on unmaximize from fullscreen */ - signal: "e,action,unmaximize,fullscreen"; - source: "e"; - action: STATE_SET "default" 0.0; - target: "bottom"; - target: "e.swallow.client"; - } +///////////////////////////////////////////////////////////////////////////// +/*** MOD: CLOCK ***/ -// don't have any animation or stat change to do at the start of shading -// program { name: "xx"; -// signal: "e,state,shading"; -// source: "e"; -// } - program { name: "shade_end"; /* run when the window finishes its - * shading animation */ - signal: "e,state,shaded"; - source: "e"; - action: STATE_SET "shaded" 0.0; - target: "bottom"; - target: "e.swallow.client"; - target: "e.event.resize.tl"; - target: "e.event.resize.tr"; - target: "e.event.resize.bl"; - target: "e.event.resize.br"; - target: "e.event.resize.t"; - target: "e.event.resize.b"; - } - program { name: "unshade_start"; /* run when the window starts - * unshading itself */ - signal: "e,state,unshading"; - source: "e"; - action: STATE_SET "default" 0.0; - target: "bottom"; - target: "e.swallow.client"; - target: "e.event.resize.tl"; - target: "e.event.resize.tr"; - target: "e.event.resize.bl"; - target: "e.event.resize.br"; - target: "e.event.resize.t"; - target: "e.event.resize.b"; - } -// don't have any animation or stat change to do at the end of unshading -// program { name: "xx"; -// signal: "e,state,unshaded"; -// source: "e"; -// } - program { name: "resize_b_on"; - signal: "mouse,in"; /* on mouse enter... */ - source: "e.event.resize.b"; /* in this named part */ - action: ACTION_STOP; /* stop the following programs */ - target: "resize_b_on2"; - target: "resize_b_on3"; - after: "resize_b_on2"; /* then run... */ - } - program { name: "resize_b_on2"; - action: STATE_SET "default" 0.0; - target: "resize_b"; - after: "resize_b_on3"; - } - program { name: "resize_b_on3"; - action: STATE_SET "past" 0.0; - transition: LINEAR 0.5; - target: "resize_b"; - after: "resize_b_on2"; - } - program { name: "resize_b_off"; - signal: "mouse,out"; /* on mouse leave... */ - source: "e.event.resize.b"; - action: ACTION_STOP; - target: "resize_b_on"; - target: "resize_b_on2"; - target: "resize_b_on3"; - } +images { + image: "clock/DM_Clock_time.png" COMP; + image: "clock/DM_Clock_time_0.png" COMP; + image: "clock/DM_Clock_time_1.png" COMP; + image: "clock/DM_Clock_time_2.png" COMP; + image: "clock/DM_Clock_time_3.png" COMP; + image: "clock/DM_Clock_time_4.png" COMP; + image: "clock/DM_Clock_time_5.png" COMP; + image: "clock/DM_Clock_time_6.png" COMP; + image: "clock/DM_Clock_time_7.png" COMP; + image: "clock/DM_Clock_time_8.png" COMP; + image: "clock/DM_Clock_time_9.png" COMP; + image: "clock/DM_Clock_time_AM.png" COMP; + image: "clock/DM_Clock_time_PM.png" COMP; + image: "clock/DM_Clock_time_center.png" COMP; +} + +#define DIGIT_WIDTH 0.25 +#define DIGIT_10_WIDTH 0.1 +#define DIGIT_Y 0.2 +#define DIGIT_HEIGHT 0.8 +#define HOUR_10_XOFF 0.0 +#define WEEKDAY_XOFF 0.0 +#define DAY_XOFF 0.15 +#define DAY_HEIGHT 0.2 +#define MONTH_XOFF 0.25 +#define HOUR_1_XOFF 0.1 +#define COLON_XOFF 0.32 +#define COLON_WIDTH 0.05 +#define MIN_10_XOFF 0.34 +#define MIN_1_XOFF 0.54 +#define AM_PM_XOFF 0.78 +#define AM_PM_WIDTH 0.15 + +#define BASE_DESCR(XOFF) \ +description { state: "default" 0.0; \ + image.normal: "clock/DM_Clock_time_0.png"; \ + visible: 1; \ + rel1 { \ + to: "whole"; \ + relative: XOFF DIGIT_Y; \ + offset: 0 0; \ + } \ + rel2 { \ + to: "whole"; \ + relative: (XOFF+DIGIT_WIDTH) (DIGIT_Y+DIGIT_HEIGHT); \ + offset: -1 -1; \ + } \ + color: 255 255 255 0; \ +} \ +description { state: "reset" 0.0; \ + inherit: "default" 0.0; \ + color: 255 255 255 255; \ +} + +#define DIGIT_DESCR_10HOUR(IDX,NUM, X) \ +description { state: "default" 0.0; \ + image.normal: "clock/DM_Clock_time.png"; \ + visible: 0; \ + rel1 { \ + to: "whole"; \ + relative: HOUR_10_XOFF DIGIT_Y; \ + offset: 0 0; \ + } \ + rel2 { \ + to: "whole"; \ + relative: (HOUR_10_XOFF+DIGIT_10_WIDTH) (DIGIT_Y+DIGIT_HEIGHT); \ + offset: -1 -1; \ + } \ + color: 255 255 255 0; \ +} \ +description { state: "digit" 0.0; \ + inherit: "default" 0.0; \ + visible: 0; \ + color: 255 255 255 255; \ +} \ +description { state: "digit" 0.1; \ + inherit: "default" 0.0; \ + visible: 1; \ + color: 255 255 255 255; \ +} + +#define DIGIT_DESCR(IDX,NUM, X) \ +description { state: "digit" IDX; \ + inherit: "default" 0.0; \ + image.normal: "clock/DM_Clock_time_"NUM".png"; \ + rel1 { \ + relative: X DIGIT_Y; \ + offset: 0 0; \ + } \ + rel2 { \ + relative: (X+DIGIT_WIDTH) (DIGIT_Y+DIGIT_HEIGHT); \ + offset: 0 0; \ + } \ + color: 255 255 255 255; \ +} +#define BASE_DESCR_AM_PM(XOFF) \ +description { state: "default" 0.0; \ + image.normal: "clock/DM_Clock_time_0.png"; \ + visible: 1; \ + rel1 { \ + to: "whole"; \ + relative: XOFF 0.0; \ + offset: 0 0; \ + } \ + rel2 { \ + to: "whole"; \ + relative: (XOFF+AM_PM_WIDTH) 1.0; \ + offset: -1 -1; \ + } \ + color: 255 255 255 0; \ +} \ +description { state: "reset" 0.0; \ + inherit: "default" 0.0; \ + color: 255 255 255 255; \ +} + +#define DIGIT_DESCR_AM_PM(IDX,NUM, X) \ +description { state: "digit" IDX; \ + inherit: "default" 0.0; \ + image.normal: "clock/DM_Clock_time_"NUM".png"; \ + rel1 { \ + relative: X 0.6; \ + offset: 0 0; \ + } \ + rel2 { \ + relative: (X+AM_PM_WIDTH) 0.9; \ + offset: 0 0; \ + } \ + color: 255 255 255 255; \ +} + +#define BASE_DESCR_WD_MD(XOFF) \ +description { state: "default" 0.0; \ + visible: 1; \ + rel1 { \ + to: "whole"; \ + relative: XOFF 0.0; \ + offset: 0 0; \ + } \ + rel2 { \ + to: "whole"; \ + relative: (XOFF+0.5) 0.3; \ + offset: -1 -1; \ + } \ + color: 255 255 255 255; \ + text { \ + text: ""; \ + font: "Helvetica"; \ + size: 16; \ + min: 1 1; \ + align: 0.5 0.5; \ + text_class: "configure"; \ + } \ +} \ +description { state: "reset" 0.0; \ + inherit: "default" 0.0; \ + color: 255 255 255 255; \ +} + + +#define DIGIT_DESCR_WD_MD(IDX,DAY, X) \ +description { state: "digit" IDX; \ + inherit: "default" 0.0; \ + rel1 { \ + relative: X 0.0; \ + offset: 0 0; \ + } \ + rel2 { \ + relative: (X+0.5) DAY_HEIGHT; \ + offset: -1 -1; \ + } \ + color: 255 255 255 255; \ + color2: 110 133 140 192; \ + color3: 0 0 0 192; \ + text { \ + text: DAY; \ + font: "Helvetica"; \ + size: 20; \ + min: 1 1; \ + align: 0.0 0.0; \ + text_class: "configure"; \ + } \ +} + +#define BASE_DESCR_DAY(XOFF) \ +description { state: "default" 0.0; \ + visible: 1; \ + rel1 { \ + to: "whole"; \ + relative: XOFF 0.0; \ + offset: 0 0; \ + } \ + rel2 { \ + to: "whole"; \ + relative: (XOFF+0.5) DAY_HEIGHT; \ + offset: -1 -1; \ + } \ + color: 255 255 255 255; \ + color2: 110 133 140 192; \ + color3: 0 0 0 192; \ + text { \ + text: "??"; \ + font: "Helvetica"; \ + size: 20; \ + min: 1 1; \ + align: 0.0 0.0; \ + text_class: "configure"; \ + } \ +} \ +description { state: "reset" 0.0; \ + inherit: "default" 0.0; \ + color: 255 255 255 255; \ +} + +// This sets the digit transition type and length +#define DIGITRANS SINUSOIDAL 0 + +#define CELL_TRANS(NAME,IDX,TARGET) \ + program { name: NAME; \ + action: STATE_SET "digit" IDX; \ + transition: DIGITRANS; \ + target: TARGET; \ +} +#define HOUR_10_TRANS(NAME,IDX) CELL_TRANS(NAME,IDX,"hour_10") +#define HOUR_1_TRANS(NAME,IDX) CELL_TRANS(NAME,IDX,"hour_1") +#define MINUTE_10_TRANS(NAME,IDX) CELL_TRANS(NAME,IDX,"min_10") +#define MINUTE_1_TRANS(NAME,IDX) CELL_TRANS(NAME,IDX,"min_1") +#define WEEKDAY_TRANS(NAME,IDX) CELL_TRANS(NAME,IDX,"weekday") +#define MONTH_TRANS(NAME,IDX) CELL_TRANS(NAME,IDX,"month") + +styles +{ + style { + name: "text_style"; + base: "font=Helvetica font_size=50 align=left color=#000 style=shadow shadow_color=#ffffff80 wrap=word"; + + tag: "br" "\n"; + tag: "hilight" "+ font=Sans:style=Bold style=glow color=#fff glow2_color=#fe87 glow_color=#fa14"; + tag: "title" "+ font_size=12 font=Sans:style=Bold style=soft_shadow color=#fff shadow_color=#00000020"; + tag: "/title" "- \n \n"; + } +} + +group { name: "e/modules/clock/main"; + + script { + public cur_hour_; + public m_10_; + public clock_cb(unused) { + new year, month, day, yearday, weekday, hour, minute; + new Float:second; + new h; + new m_mod, m_tmp; + new pm; + new text[5]; + + date(year, month, day, yearday, weekday, hour, minute, second); + + // It is my preference not to have a second hand so the + // the timer is set to go off at the top of the minute. + timer(61.0 - second, "clock_cb", 1); + snprintf(text, 5, "%d%d", day/10,day%10); + + set_text(PART:"day", text); + h = get_int(cur_hour_) + if (hour != h) { + set_int(cur_hour_, hour); + + if (hour > 12) pm = 1; + else if (hour == 12) pm = 0; + + if(pm == 1) run_program(PROGRAM:"pm"); + else if(pm == 0) run_program(PROGRAM:"am"); + +#ifndef HOURS24 + if (hour > 12) hour = hour - 12; + if (hour == 0) hour = 12; +#endif + new htmp = hour / 10; + if (htmp == 0) run_program(PROGRAM:"hour_10_0"); + else if (htmp == 1) run_program(PROGRAM:"hour_10_1"); + else if (htmp == 2) run_program(PROGRAM:"hour_10_2"); + + // + htmp = hour % 10; + if (htmp == 0) run_program(PROGRAM:"hour_1_0"); + else if (htmp == 1) run_program(PROGRAM:"hour_1_1"); + else if (htmp == 2) run_program(PROGRAM:"hour_1_2"); + else if (htmp == 3) run_program(PROGRAM:"hour_1_3"); + else if (htmp == 4) run_program(PROGRAM:"hour_1_4"); + else if (htmp == 5) run_program(PROGRAM:"hour_1_5"); + else if (htmp == 6) run_program(PROGRAM:"hour_1_6"); + else if (htmp == 7) run_program(PROGRAM:"hour_1_7"); + else if (htmp == 8) run_program(PROGRAM:"hour_1_8"); + else if (htmp == 9) run_program(PROGRAM:"hour_1_9"); + } + + m_mod = minute % 10; + m_tmp = (minute - m_mod) / 10; + if (m_10_ != m_tmp) { + m_10_ = m_tmp; + // value from 0-5 + if (m_10_ == 0) run_program(PROGRAM:"min_10_0"); + else if (m_10_ == 1) run_program(PROGRAM:"min_10_1"); + else if (m_10_ == 2) run_program(PROGRAM:"min_10_2"); + else if (m_10_ == 3) run_program(PROGRAM:"min_10_3"); + else if (m_10_ == 4) run_program(PROGRAM:"min_10_4"); + else if (m_10_ == 5) run_program(PROGRAM:"min_10_5"); + } + // minutes digit is 0 .. 9 + if (m_mod == 0) run_program(PROGRAM:"min_1_0"); + else if (m_mod == 1) run_program(PROGRAM:"min_1_1"); + else if (m_mod == 2) run_program(PROGRAM:"min_1_2"); + else if (m_mod == 3) run_program(PROGRAM:"min_1_3"); + else if (m_mod == 4) run_program(PROGRAM:"min_1_4"); + else if (m_mod == 5) run_program(PROGRAM:"min_1_5"); + else if (m_mod == 6) run_program(PROGRAM:"min_1_6"); + else if (m_mod == 7) run_program(PROGRAM:"min_1_7"); + else if (m_mod == 8) run_program(PROGRAM:"min_1_8"); + else if (m_mod == 9) run_program(PROGRAM:"min_1_9"); + + if(weekday == 0) run_program(PROGRAM:"weekday_0"); + else if(weekday == 1) run_program(PROGRAM:"weekday_1"); + else if(weekday == 2) run_program(PROGRAM:"weekday_2"); + else if(weekday == 3) run_program(PROGRAM:"weekday_3"); + else if(weekday == 4) run_program(PROGRAM:"weekday_4"); + else if(weekday == 5) run_program(PROGRAM:"weekday_5"); + else if(weekday == 6) run_program(PROGRAM:"weekday_6"); + + if(month == 1) run_program(PROGRAM:"month_1"); + else if(month == 2) run_program(PROGRAM:"month_2"); + else if(month == 3) run_program(PROGRAM:"month_3"); + else if(month == 4) run_program(PROGRAM:"month_4"); + else if(month == 5) run_program(PROGRAM:"month_5"); + else if(month == 6) run_program(PROGRAM:"month_6"); + else if(month == 7) run_program(PROGRAM:"month_7"); + else if(month == 8) run_program(PROGRAM:"month_8"); + else if(month == 9) run_program(PROGRAM:"month_9"); + else if(month == 10) run_program(PROGRAM:"month_10"); + else if(month == 11) run_program(PROGRAM:"month_11"); + else if(month == 12) run_program(PROGRAM:"month_12"); + } + } + parts { + part { name: "whole"; + type: RECT; + mouse_events: 1; + description { + state: "default" 0.0; + color: 255 255 255 0; + rel1 { + relative: 0.0 0.1; + offset: 0 0; + } + rel2 { + relative: 1.0 0.9; + offset: -1 -1; + } + } + } + part { name: "clipper"; + type: RECT; + mouse_events: 0; + description { + rel1 { + to: "whole"; + relative: 0.0 0.0; + offset: 0 0; + } + rel2 { + to: "whole"; + relative: 1.0 1.0; + offset: -1 -1; + } + } + } + part { name: "hour_10"; + type: IMAGE; + clip_to: "clipper"; + DIGIT_DESCR_10HOUR(0.0,0, HOUR_10_XOFF); + DIGIT_DESCR_10HOUR(0.1,1, HOUR_10_XOFF); + DIGIT_DESCR_10HOUR(0.2,2, HOUR_10_XOFF); /* only used in 24-hour clock */ + } + part { name: "hour_1"; + type: IMAGE; + clip_to: "clipper"; + BASE_DESCR(HOUR_1_XOFF); + DIGIT_DESCR(0.0,0, HOUR_1_XOFF); + DIGIT_DESCR(0.1,1, HOUR_1_XOFF); + DIGIT_DESCR(0.2,2, HOUR_1_XOFF); + DIGIT_DESCR(0.3,3, HOUR_1_XOFF); + DIGIT_DESCR(0.4,4, HOUR_1_XOFF); + DIGIT_DESCR(0.5,5, HOUR_1_XOFF); + DIGIT_DESCR(0.6,6, HOUR_1_XOFF); + DIGIT_DESCR(0.7,7, HOUR_1_XOFF); + DIGIT_DESCR(0.8,8, HOUR_1_XOFF); + DIGIT_DESCR(0.9,9, HOUR_1_XOFF); + } + part { name: "colon"; + type: IMAGE; + clip_to: "clipper"; + description { + state: "default" 0.0; + image.normal: "clock/DM_Clock_time_center.png"; + visible: 1; + rel1 { + to: "whole"; + relative: COLON_XOFF DIGIT_Y; + offset: 0 0; + } + rel2 { + to: "whole"; + relative: (COLON_XOFF+COLON_WIDTH) (DIGIT_Y+DIGIT_HEIGHT); + offset: 0 0; + } + color: 255 255 255 255; + } + } + part { name: "min_10"; + type: IMAGE; + clip_to: "clipper"; + BASE_DESCR(MIN_10_XOFF); + DIGIT_DESCR(0.0,0, MIN_10_XOFF); + DIGIT_DESCR(0.1,1, MIN_10_XOFF); + DIGIT_DESCR(0.2,2, MIN_10_XOFF); + DIGIT_DESCR(0.3,3, MIN_10_XOFF); + DIGIT_DESCR(0.4,4, MIN_10_XOFF); + DIGIT_DESCR(0.5,5, MIN_10_XOFF); + } + + part { name: "min_1"; + type: IMAGE; + clip_to: "clipper"; + BASE_DESCR(MIN_1_XOFF); + DIGIT_DESCR(0.0,0, MIN_1_XOFF); + DIGIT_DESCR(0.1,1, MIN_1_XOFF); + DIGIT_DESCR(0.2,2, MIN_1_XOFF); + DIGIT_DESCR(0.3,3, MIN_1_XOFF); + DIGIT_DESCR(0.4,4, MIN_1_XOFF); + DIGIT_DESCR(0.5,5, MIN_1_XOFF); + DIGIT_DESCR(0.6,6, MIN_1_XOFF); + DIGIT_DESCR(0.7,7, MIN_1_XOFF); + DIGIT_DESCR(0.8,8, MIN_1_XOFF); + DIGIT_DESCR(0.9,9, MIN_1_XOFF); + } + part { name: "am_pm"; + type: IMAGE; + clip_to: "clipper"; + BASE_DESCR_AM_PM(AM_PM_XOFF); + DIGIT_DESCR_AM_PM(0.0,AM, AM_PM_XOFF); + DIGIT_DESCR_AM_PM(0.1,PM, AM_PM_XOFF); + } + part { name: "weekday"; + type: TEXT; + effect: OUTLINE_SOFT_SHADOW; + BASE_DESCR_WD_MD(WEEKDAY_XOFF); + DIGIT_DESCR_WD_MD(0.0,Mon., WEEKDAY_XOFF); + DIGIT_DESCR_WD_MD(0.1,Tue., WEEKDAY_XOFF); + DIGIT_DESCR_WD_MD(0.2,Wed., WEEKDAY_XOFF); + DIGIT_DESCR_WD_MD(0.3,Tur., WEEKDAY_XOFF); + DIGIT_DESCR_WD_MD(0.4,Fri., WEEKDAY_XOFF); + DIGIT_DESCR_WD_MD(0.5,Sat., WEEKDAY_XOFF); + DIGIT_DESCR_WD_MD(0.6,Sun., WEEKDAY_XOFF); + } + part { name: "day"; + type: TEXT; + effect: OUTLINE_SOFT_SHADOW; + BASE_DESCR_DAY(DAY_XOFF); + } + + part { name: "month"; + type: TEXT; + effect: OUTLINE_SOFT_SHADOW; + BASE_DESCR_WD_MD(MONTH_XOFF); + DIGIT_DESCR_WD_MD(0.01,Jan, MONTH_XOFF); + DIGIT_DESCR_WD_MD(0.02,Feb, MONTH_XOFF); + DIGIT_DESCR_WD_MD(0.03,Mar, MONTH_XOFF); + DIGIT_DESCR_WD_MD(0.04,Apr, MONTH_XOFF); + DIGIT_DESCR_WD_MD(0.05,May, MONTH_XOFF); + DIGIT_DESCR_WD_MD(0.06,Jun, MONTH_XOFF); + DIGIT_DESCR_WD_MD(0.07,Jul, MONTH_XOFF); + DIGIT_DESCR_WD_MD(0.08,Aug, MONTH_XOFF); + DIGIT_DESCR_WD_MD(0.09,Sep, MONTH_XOFF); + DIGIT_DESCR_WD_MD(0.10,Oct, MONTH_XOFF); + DIGIT_DESCR_WD_MD(0.11,Nov, MONTH_XOFF); + DIGIT_DESCR_WD_MD(0.12,Dec, MONTH_XOFF); + } + + part { name: "main"; + type: RECT; + mouse_events: 1; + description { + state: "default" 0.0; + rel1 { + to: "whole"; + relative: 0.0 0.0; + offset: 0 2; + } + rel2 { + to: "whole"; + relative: 1.0 1.0; + offset: -1 -2; + } + color: 255 255 255 0; + } + } + } + + programs { + program { name: "init"; + signal: "load"; + source: ""; + script { + set_int(cur_hour_,-1); + set_int(m_10_,-1); + clock_cb(0); + } + } + + /* Each transition happens in a similar manner. The only quirk + * is that on a transition to 0 a transition to "reset" is made + * before the actual change so that rolling always goes the same + * direction. (It would be simpler and still work if I didn't do + * this, but it looks odd on minute transitions like 19->20 + * where '1' would roll one way to '2' and '9' would roll + * backwards to '0'.) + */ + + /* The tens of hours transitions */ + program { name: "am"; + action: STATE_SET "digit" 0.0; + target: "am_pm"; + } + program { name: "pm"; + action: STATE_SET "digit" 0.1; + target: "am_pm"; + } + program { name: "hour_10_0"; + action: STATE_SET "reset" 0.0; + target: "hour_10"; + after: "hour_10_to_zero"; + } + program { name: "hour_10_to_zero"; + action: STATE_SET "digit" 0.0; + transition: DIGITRANS; + target: "hour_10"; + } + HOUR_10_TRANS("hour_10_1", 0.1); + HOUR_10_TRANS("hour_10_2", 0.2); /* only used in 24-hour clock */ + + /* The hours transitions */ + program { name: "hour_1_0"; + action: STATE_SET "reset" 0.0; + target: "hour_1"; + after: "hour_1_to_zero"; + } + program { name: "hour_1_to_zero"; + action: STATE_SET "digit" 0.0; + transition: DIGITRANS; + target: "hour_1"; + } + HOUR_1_TRANS("hour_1_1", 0.1); + HOUR_1_TRANS("hour_1_2", 0.2); + HOUR_1_TRANS("hour_1_3", 0.3); + HOUR_1_TRANS("hour_1_4", 0.4); + HOUR_1_TRANS("hour_1_5", 0.5); + HOUR_1_TRANS("hour_1_6", 0.6); + HOUR_1_TRANS("hour_1_7", 0.7); + HOUR_1_TRANS("hour_1_8", 0.8); + HOUR_1_TRANS("hour_1_9", 0.9); + + /* The tens of minutes transitions */ + program { name: "min_10_0"; + action: STATE_SET "reset" 0.0; + target: "min_10"; + after: "min_10_to_zero"; + } + program { name: "min_10_to_zero"; + action: STATE_SET "digit" 0.0; + transition: DIGITRANS; + target: "min_10"; + } + MINUTE_10_TRANS("min_10_1", 0.1); + MINUTE_10_TRANS("min_10_2", 0.2); + MINUTE_10_TRANS("min_10_3", 0.3); + MINUTE_10_TRANS("min_10_4", 0.4); + MINUTE_10_TRANS("min_10_5", 0.5); + + /* The minute transitions */ + program { name: "min_1_0"; + action: STATE_SET "reset" 0.0; + target: "min_1"; + after: "min_1_to_zero"; + } + program { name: "min_1_to_zero"; + action: STATE_SET "digit" 0.0; + transition: DIGITRANS; + target: "min_1"; + } + MINUTE_1_TRANS("min_1_1", 0.1); + MINUTE_1_TRANS("min_1_2", 0.2); + MINUTE_1_TRANS("min_1_3", 0.3); + MINUTE_1_TRANS("min_1_4", 0.4); + MINUTE_1_TRANS("min_1_5", 0.5); + MINUTE_1_TRANS("min_1_6", 0.6); + MINUTE_1_TRANS("min_1_7", 0.7); + MINUTE_1_TRANS("min_1_8", 0.8); + MINUTE_1_TRANS("min_1_9", 0.9); + + WEEKDAY_TRANS("weekday_0",0.0); + WEEKDAY_TRANS("weekday_1",0.1); + WEEKDAY_TRANS("weekday_2",0.2); + WEEKDAY_TRANS("weekday_3",0.3); + WEEKDAY_TRANS("weekday_4",0.4); + WEEKDAY_TRANS("weekday_5",0.5); + WEEKDAY_TRANS("weekday_6",0.6); + + MONTH_TRANS("month_1",0.01); + MONTH_TRANS("month_2",0.02); + MONTH_TRANS("month_3",0.03); + MONTH_TRANS("month_4",0.04); + MONTH_TRANS("month_5",0.05); + MONTH_TRANS("month_6",0.06); + MONTH_TRANS("month_7",0.07); + MONTH_TRANS("month_8",0.08); + MONTH_TRANS("month_9",0.09); + MONTH_TRANS("month_10",0.10); + MONTH_TRANS("month_11",0.11); + MONTH_TRANS("month_12",0.12); + + } +} +group { name: "e/modules/clock/digital"; + + script { + public cur_hour_; + public m_10_; + public clock_cb(unused) { + new year, month, day, yearday, weekday, hour, minute; + new Float:second; + new h; + new m_mod, m_tmp; + new pm; + new text[5]; + + date(year, month, day, yearday, weekday, hour, minute, second); + + // It is my preference not to have a second hand so the + // the timer is set to go off at the top of the minute. + timer(61.0 - second, "clock_cb", 1); + snprintf(text, 5, "%d%d", day/10,day%10); + + set_text(PART:"day", text); + h = get_int(cur_hour_) + if (hour != h) { + set_int(cur_hour_, hour); + + if (hour > 12) pm = 1; + else if (hour == 12) pm = 0; + + if(pm == 1) run_program(PROGRAM:"pm"); + else if(pm == 0) run_program(PROGRAM:"am"); + +#ifndef HOURS24 + if (hour > 12) hour = hour - 12; + if (hour == 0) hour = 12; +#endif + new htmp = hour / 10; + if (htmp == 0) run_program(PROGRAM:"hour_10_0"); + else if (htmp == 1) run_program(PROGRAM:"hour_10_1"); + else if (htmp == 2) run_program(PROGRAM:"hour_10_2"); + + // + htmp = hour % 10; + if (htmp == 0) run_program(PROGRAM:"hour_1_0"); + else if (htmp == 1) run_program(PROGRAM:"hour_1_1"); + else if (htmp == 2) run_program(PROGRAM:"hour_1_2"); + else if (htmp == 3) run_program(PROGRAM:"hour_1_3"); + else if (htmp == 4) run_program(PROGRAM:"hour_1_4"); + else if (htmp == 5) run_program(PROGRAM:"hour_1_5"); + else if (htmp == 6) run_program(PROGRAM:"hour_1_6"); + else if (htmp == 7) run_program(PROGRAM:"hour_1_7"); + else if (htmp == 8) run_program(PROGRAM:"hour_1_8"); + else if (htmp == 9) run_program(PROGRAM:"hour_1_9"); + } + + m_mod = minute % 10; + m_tmp = (minute - m_mod) / 10; + if (m_10_ != m_tmp) { + m_10_ = m_tmp; + // value from 0-5 + if (m_10_ == 0) run_program(PROGRAM:"min_10_0"); + else if (m_10_ == 1) run_program(PROGRAM:"min_10_1"); + else if (m_10_ == 2) run_program(PROGRAM:"min_10_2"); + else if (m_10_ == 3) run_program(PROGRAM:"min_10_3"); + else if (m_10_ == 4) run_program(PROGRAM:"min_10_4"); + else if (m_10_ == 5) run_program(PROGRAM:"min_10_5"); + } + // minutes digit is 0 .. 9 + if (m_mod == 0) run_program(PROGRAM:"min_1_0"); + else if (m_mod == 1) run_program(PROGRAM:"min_1_1"); + else if (m_mod == 2) run_program(PROGRAM:"min_1_2"); + else if (m_mod == 3) run_program(PROGRAM:"min_1_3"); + else if (m_mod == 4) run_program(PROGRAM:"min_1_4"); + else if (m_mod == 5) run_program(PROGRAM:"min_1_5"); + else if (m_mod == 6) run_program(PROGRAM:"min_1_6"); + else if (m_mod == 7) run_program(PROGRAM:"min_1_7"); + else if (m_mod == 8) run_program(PROGRAM:"min_1_8"); + else if (m_mod == 9) run_program(PROGRAM:"min_1_9"); + + if(weekday == 0) run_program(PROGRAM:"weekday_0"); + else if(weekday == 1) run_program(PROGRAM:"weekday_1"); + else if(weekday == 2) run_program(PROGRAM:"weekday_2"); + else if(weekday == 3) run_program(PROGRAM:"weekday_3"); + else if(weekday == 4) run_program(PROGRAM:"weekday_4"); + else if(weekday == 5) run_program(PROGRAM:"weekday_5"); + else if(weekday == 6) run_program(PROGRAM:"weekday_6"); + + if(month == 1) run_program(PROGRAM:"month_1"); + else if(month == 2) run_program(PROGRAM:"month_2"); + else if(month == 3) run_program(PROGRAM:"month_3"); + else if(month == 4) run_program(PROGRAM:"month_4"); + else if(month == 5) run_program(PROGRAM:"month_5"); + else if(month == 6) run_program(PROGRAM:"month_6"); + else if(month == 7) run_program(PROGRAM:"month_7"); + else if(month == 8) run_program(PROGRAM:"month_8"); + else if(month == 9) run_program(PROGRAM:"month_9"); + else if(month == 10) run_program(PROGRAM:"month_10"); + else if(month == 11) run_program(PROGRAM:"month_11"); + else if(month == 12) run_program(PROGRAM:"month_12"); + } + } + parts { + part { name: "whole"; + type: RECT; + mouse_events: 1; + description { + state: "default" 0.0; + color: 255 255 255 0; + rel1 { + relative: 0.0 0.1; + offset: 0 0; + } + rel2 { + relative: 1.0 0.9; + offset: -1 -1; + } + } + } + part { name: "clipper"; + type: RECT; + mouse_events: 0; + description { + rel1 { + to: "whole"; + relative: 0.0 0.0; + offset: 0 0; + } + rel2 { + to: "whole"; + relative: 1.0 1.0; + offset: -1 -1; + } + } + } + part { name: "hour_10"; + type: IMAGE; + clip_to: "clipper"; + BASE_DESCR(HOUR_10_XOFF); + DIGIT_DESCR(0.0,0, HOUR_10_XOFF); + DIGIT_DESCR(0.1,1, HOUR_10_XOFF); + DIGIT_DESCR(0.2,2, HOUR_10_XOFF); /* only used in 24-hour clock */ + } + part { name: "hour_1"; + type: IMAGE; + clip_to: "clipper"; + BASE_DESCR(HOUR_1_XOFF); + DIGIT_DESCR(0.0,0, HOUR_1_XOFF); + DIGIT_DESCR(0.1,1, HOUR_1_XOFF); + DIGIT_DESCR(0.2,2, HOUR_1_XOFF); + DIGIT_DESCR(0.3,3, HOUR_1_XOFF); + DIGIT_DESCR(0.4,4, HOUR_1_XOFF); + DIGIT_DESCR(0.5,5, HOUR_1_XOFF); + DIGIT_DESCR(0.6,6, HOUR_1_XOFF); + DIGIT_DESCR(0.7,7, HOUR_1_XOFF); + DIGIT_DESCR(0.8,8, HOUR_1_XOFF); + DIGIT_DESCR(0.9,9, HOUR_1_XOFF); + } + part { name: "colon"; + type: IMAGE; + clip_to: "clipper"; + description { + state: "default" 0.0; + image.normal: "clock/DM_Clock_time_center.png"; + visible: 1; + rel1 { + to: "whole"; + relative: COLON_XOFF DIGIT_Y; + offset: 0 0; + } + rel2 { + to: "whole"; + relative: (COLON_XOFF+.1) 1.0; + offset: 0 0; + } + color: 255 255 255 255; + } + } + part { name: "min_10"; + type: IMAGE; + clip_to: "clipper"; + BASE_DESCR(MIN_10_XOFF); + DIGIT_DESCR(0.0,0, MIN_10_XOFF); + DIGIT_DESCR(0.1,1, MIN_10_XOFF); + DIGIT_DESCR(0.2,2, MIN_10_XOFF); + DIGIT_DESCR(0.3,3, MIN_10_XOFF); + DIGIT_DESCR(0.4,4, MIN_10_XOFF); + DIGIT_DESCR(0.5,5, MIN_10_XOFF); + } + + part { name: "min_1"; + type: IMAGE; + clip_to: "clipper"; + BASE_DESCR(MIN_1_XOFF); + DIGIT_DESCR(0.0,0, MIN_1_XOFF); + DIGIT_DESCR(0.1,1, MIN_1_XOFF); + DIGIT_DESCR(0.2,2, MIN_1_XOFF); + DIGIT_DESCR(0.3,3, MIN_1_XOFF); + DIGIT_DESCR(0.4,4, MIN_1_XOFF); + DIGIT_DESCR(0.5,5, MIN_1_XOFF); + DIGIT_DESCR(0.6,6, MIN_1_XOFF); + DIGIT_DESCR(0.7,7, MIN_1_XOFF); + DIGIT_DESCR(0.8,8, MIN_1_XOFF); + DIGIT_DESCR(0.9,9, MIN_1_XOFF); + } + part { name: "am_pm"; + type: IMAGE; + clip_to: "clipper"; + BASE_DESCR_AM_PM(AM_PM_XOFF); + DIGIT_DESCR_AM_PM(0.0,AM, AM_PM_XOFF); + DIGIT_DESCR_AM_PM(0.1,PM, AM_PM_XOFF); + } + part { name: "weekday"; + type: TEXT; + effect: OUTLINE_SOFT_SHADOW; + BASE_DESCR_WD_MD(WEEKDAY_XOFF); + DIGIT_DESCR_WD_MD(0.0,Mon., WEEKDAY_XOFF); + DIGIT_DESCR_WD_MD(0.1,Tue., WEEKDAY_XOFF); + DIGIT_DESCR_WD_MD(0.2,Wed., WEEKDAY_XOFF); + DIGIT_DESCR_WD_MD(0.3,Tur., WEEKDAY_XOFF); + DIGIT_DESCR_WD_MD(0.4,Fri., WEEKDAY_XOFF); + DIGIT_DESCR_WD_MD(0.5,Sat., WEEKDAY_XOFF); + DIGIT_DESCR_WD_MD(0.6,Sun., WEEKDAY_XOFF); + } + part { name: "day"; + type: TEXT; + effect: OUTLINE_SOFT_SHADOW; + scale: 1; + BASE_DESCR_DAY(DAY_XOFF); + } + + part { name: "month"; + type: TEXT; + effect: OUTLINE_SOFT_SHADOW; + BASE_DESCR_WD_MD(MONTH_XOFF); + DIGIT_DESCR_WD_MD(0.01,Jan, MONTH_XOFF); + DIGIT_DESCR_WD_MD(0.02,Feb, MONTH_XOFF); + DIGIT_DESCR_WD_MD(0.03,Mar, MONTH_XOFF); + DIGIT_DESCR_WD_MD(0.04,Apr, MONTH_XOFF); + DIGIT_DESCR_WD_MD(0.05,May, MONTH_XOFF); + DIGIT_DESCR_WD_MD(0.06,Jun, MONTH_XOFF); + DIGIT_DESCR_WD_MD(0.07,Jul, MONTH_XOFF); + DIGIT_DESCR_WD_MD(0.08,Aug, MONTH_XOFF); + DIGIT_DESCR_WD_MD(0.09,Sep, MONTH_XOFF); + DIGIT_DESCR_WD_MD(0.10,Oct, MONTH_XOFF); + DIGIT_DESCR_WD_MD(0.11,Nov, MONTH_XOFF); + DIGIT_DESCR_WD_MD(0.12,Dec, MONTH_XOFF); + } + + part { name: "main"; + type: RECT; + mouse_events: 1; + description { + state: "default" 0.0; + rel1 { + to: "whole"; + relative: 0.0 0.0; + offset: 0 2; + } + rel2 { + to: "whole"; + relative: 1.0 1.0; + offset: -1 -2; + } + color: 255 255 255 0; + } + } + } + + programs { + program { name: "init"; + signal: "load"; + source: ""; + script { + set_int(cur_hour_,-1); + set_int(m_10_,-1); + clock_cb(0); + } + } + + /* Each transition happens in a similar manner. The only quirk + * is that on a transition to 0 a transition to "reset" is made + * before the actual change so that rolling always goes the same + * direction. (It would be simpler and still work if I didn't do + * this, but it looks odd on minute transitions like 19->20 + * where '1' would roll one way to '2' and '9' would roll + * backwards to '0'.) + */ + + /* The tens of hours transitions */ + program { name: "am"; + action: STATE_SET "digit" 0.0; + target: "am_pm"; + } + program { name: "pm"; + action: STATE_SET "digit" 0.1; + target: "am_pm"; + } + program { name: "hour_10_0"; + action: STATE_SET "reset" 0.0; + target: "hour_10"; + after: "hour_10_to_zero"; + } + program { name: "hour_10_to_zero"; + action: STATE_SET "digit" 0.0; + transition: DIGITRANS; + target: "hour_10"; + } + HOUR_10_TRANS("hour_10_1", 0.1); + HOUR_10_TRANS("hour_10_2", 0.2); /* only used in 24-hour clock */ + + /* The hours transitions */ + + program { name: "hour_1_0"; + action: STATE_SET "reset" 0.0; + target: "hour_1"; + after: "hour_1_to_zero"; + } + program { name: "hour_1_to_zero"; + action: STATE_SET "digit" 0.0; + transition: DIGITRANS; + target: "hour_1"; + } + HOUR_1_TRANS("hour_1_1", 0.1); + HOUR_1_TRANS("hour_1_2", 0.2); + HOUR_1_TRANS("hour_1_3", 0.3); + HOUR_1_TRANS("hour_1_4", 0.4); + HOUR_1_TRANS("hour_1_5", 0.5); + HOUR_1_TRANS("hour_1_6", 0.6); + HOUR_1_TRANS("hour_1_7", 0.7); + HOUR_1_TRANS("hour_1_8", 0.8); + HOUR_1_TRANS("hour_1_9", 0.9); + + /* The tens of minutes transitions */ + + program { name: "min_10_0"; + action: STATE_SET "reset" 0.0; + target: "min_10"; + after: "min_10_to_zero"; + } + program { name: "min_10_to_zero"; + action: STATE_SET "digit" 0.0; + transition: DIGITRANS; + target: "min_10"; + } + MINUTE_10_TRANS("min_10_1", 0.1); + MINUTE_10_TRANS("min_10_2", 0.2); + MINUTE_10_TRANS("min_10_3", 0.3); + MINUTE_10_TRANS("min_10_4", 0.4); + MINUTE_10_TRANS("min_10_5", 0.5); + + /* The minute transitions */ + + program { name: "min_1_0"; + action: STATE_SET "reset" 0.0; + target: "min_1"; + after: "min_1_to_zero"; + } + program { name: "min_1_to_zero"; + action: STATE_SET "digit" 0.0; + transition: DIGITRANS; + target: "min_1"; + } + /* */ + MINUTE_1_TRANS("min_1_1", 0.1); + MINUTE_1_TRANS("min_1_2", 0.2); + MINUTE_1_TRANS("min_1_3", 0.3); + MINUTE_1_TRANS("min_1_4", 0.4); + MINUTE_1_TRANS("min_1_5", 0.5); + MINUTE_1_TRANS("min_1_6", 0.6); + MINUTE_1_TRANS("min_1_7", 0.7); + MINUTE_1_TRANS("min_1_8", 0.8); + MINUTE_1_TRANS("min_1_9", 0.9); + + WEEKDAY_TRANS("weekday_0",0.0); + WEEKDAY_TRANS("weekday_1",0.1); + WEEKDAY_TRANS("weekday_2",0.2); + WEEKDAY_TRANS("weekday_3",0.3); + WEEKDAY_TRANS("weekday_4",0.4); + WEEKDAY_TRANS("weekday_5",0.5); + WEEKDAY_TRANS("weekday_6",0.6); + + MONTH_TRANS("month_1",0.01); + MONTH_TRANS("month_2",0.02); + MONTH_TRANS("month_3",0.03); + MONTH_TRANS("month_4",0.04); + MONTH_TRANS("month_5",0.05); + MONTH_TRANS("month_6",0.06); + MONTH_TRANS("month_7",0.07); + MONTH_TRANS("month_8",0.08); + MONTH_TRANS("month_9",0.09); + MONTH_TRANS("month_10",0.10); + MONTH_TRANS("month_11",0.11); + MONTH_TRANS("month_12",0.12); + + } +} + +///////////////////////////////////////////////////////////////////////////// +/*** MOD: IBOX / IBAR ***/ + + group { + name: "e/modules/ibox/icon"; + alias: "e/modules/ibar/icon"; + data { + // This didn't seem to work ... + item: "raise_on_hilight" "0"; // 1 or 0 if u want an icon holder + // to raise when the mouse (or + // keyboard) hilights it + // item: "item_list" "item item2 item3"; + } + parts { + part { + name: "item_clip"; + type: RECT; + mouse_events: 0; + description { + state: "default" 0.0; + color: 255 255 255 255; + } + } + part { + name: "e.swallow.content"; + type: SWALLOW; + clip_to: "item_clip"; + description { + state: "default" 0.0; + rel1 { + relative: 0.35 0.25; + offset: 2 2; + } + rel2 { + relative: 0.65 0.55; + offset: -2 -2; + } + } + description { + state: "smaller" 0.0; + inherit: "default" 0.0; + rel1 { + offset: 5 5; + } + rel2 { + offset: -5 -5; + } + } + } + part { + name: "over"; + type: RECT; + repeat_events: 0; + description { + state: "default" 0.0; + color: 0 0 0 0; + } + } + } + programs { + program { + name: "hover_down"; + signal: "mouse,down,1"; + source: "over"; + action: STATE_SET "smaller" 0.0; + transition: LINEAR 0.2; + target: "e.swallow.content"; + } + program { + name: "hover_up"; + signal: "mouse,up,1"; + source: "over"; + action: STATE_SET "default" 0.0; + transition: LINEAR 0.2; + target: "e.swallow.content"; + } + program { + name: "exec_start"; + signal: "e,action,start"; + source: "e"; + action: STATE_SET "faded" 0.0; + transition: LINEAR 0.5; + target: "item_clip"; + } + program { + name: "exec_exec"; + signal: "e,action,exec"; + source: "e"; + action: STATE_SET "faded" 0.0; + transition: LINEAR 0.5; + target: "item_clip"; + after: "exec_stop"; + } + program { + name: "exec_stop"; + signal: "e,action,stop"; + source: "e"; + action: STATE_SET "default" 0.0; + target: "item_clip"; + } + } + } + group { + name: "e/modules/ibox/icon_overlay"; + alias: "e/modules/ibar/icon_overlay"; + data { + // item: "item_list", "item item2 item3"; + } + parts { + part { + name: "base"; + type: RECT; + mouse_events: 0; + description { + state: "default" 0.0; + color: 255 255 255 0; + } + } + part { + name: "background"; + type: RECT; + mouse_events: 0; + description { + state: "default" 0.0; + visible: 0; + rel1 { + to: "base"; + } + rel2 { + to: "base"; + } + color: 255 255 255 0; + } + description { + state: "visible" 0.0; + visible: 1; + rel1 { + to: "base"; + offset: 0 -5; + } + rel2 { + to: "base"; + offset: 0 -5; + } + color: 255 255 255 255; + } + description { + state: "hidden" 0.0; + visible: 1; + rel1 { + relative: -0.3 -0.3; + offset: 0 -5; + to: "base"; + } + rel2 { + relative: 1.3 1.3; + offset: 0 -5; + to: "base"; + } + color: 255 255 255 0; + } + description { + state: "huge" 0.0; + visible: 1; + rel1 { + relative: -2.0 -2.0; + to: "base"; + } + rel2 { + relative: 3.0 3.0; + to: "base"; + } + color: 255 255 255 0; + } + } + part { + name: "e.swallow.content"; + type: SWALLOW; + clip_to: "background"; + description { + state: "default" 0.0; + rel1 { + to: "background"; + } + rel2 { + to: "background"; + } + } + } + // Smoke ibar text doesn't "fade away" it rolls up + part { + name: "text_clip"; + type: RECT; + mouse_events: 0; + description { + state: "default" 0.0; + rel1 { + to: "base"; + offset: 0 0; + } + rel2 { + to: "base"; + offset: 0 0; + } + color: 255 255 255 255; + } + } + part { + name: "e.text.label"; + type: TEXT; + effect: SOFT_SHADOW; + mouse_events: 0; + clip_to: "text_clip"; + description { + state: "default" 0.0; + align: 0.5 0.5; + rel1 { + relative: 0.0 0.45; + offset: 0 0; + } + rel2 { + relative: 1.0 0.9; + offset: 0 0; + } + color: 255 255 255 255; + color3: 0 0 0 42; + color_class: "module_label"; + text { + text: ""; + font: "Sans"; + size: 14; + min: 0 0; + align: 0.5 0.5; + elipsis: 0.0; + text_class: "module_normal"; + } + } + } + } + programs { + program { + name: "go_active"; + signal: "e,state,focused"; + source: "e"; + action: STATE_SET "visible" 0.0; + target: "background"; + after: "go_active2"; + } + program { + name: "go_activeB"; + signal: "e,action,show,label"; + source: "e"; + action: STATE_SET "default" 0.0; + target: "e.text.label"; + after: "go_activeB2"; + } + program { + name: "go_activeB2"; + signal: ""; + source: ""; + action: STATE_SET "visible" 0.0; + target: "e.text.label"; + } + program { + name: "go_active2"; + signal: ""; + source: ""; + action: STATE_SET "hidden" 0.0; + target: "background"; + after: "go_active"; + } + program { + name: "go_passive"; + signal: "e,state,unfocused"; + source: "e"; + action: ACTION_STOP; + target: "go_active"; + target: "go_active2"; + after: "go_passive2"; + } + program { + name: "go_passiveB"; + signal: "e,action,hide,label"; + source: "e"; + action: STATE_SET "visible" 0.0; + target: "e.text.label"; + after: "go_passiveB2"; + } + program { + name: "go_passiveB2"; + signal: ""; + source: ""; + action: STATE_SET "default" 0.0; + target: "e.text.label"; + } + program { + name: "go_passive2"; + signal: ""; + source: ""; + action: STATE_SET "default" 0.0; + target: "background"; + } + program { + name: "go_big"; + action: STATE_SET "visible" 0.0; + target: "background"; + after: "go_big2"; + } + program { + name: "go_big2"; + action: STATE_SET "huge" 0.0; + target: "background"; + } + program { + name: "exec_start"; + signal: "e,action,start"; + source: "e"; + action: ACTION_STOP; + target: "go_active"; + target: "go_active2"; + target: "go_passive"; + target: "go_passive2"; + target: "go_big"; + target: "go_big2"; + after: "go_big"; + } + program { + name: "exec_exec"; + signal: "e,action,exec"; + source: "e"; + after: "exec_start"; + } + program { + name: "exec_stop"; + signal: "e,action,stop"; + source: "e"; + } + } + } + group { + name: "e/modules/ibox/drop"; + alias: "e/modules/ibar/drop"; + images.image: "inset_raised.png" COMP; + parts { + part { + name: "bg"; + mouse_events: 0; + description { + state: "default" 0.0; + image { + normal: "inset_raised.png"; + border: 7 7 7 7; + middle: 0; + } + } + } + } + } + group { + name: "e/modules/ibox/drop_overlay"; + alias: "e/modules/ibar/drop_overlay"; + images { + image: "gadman_top.png" COMP; + image: "gadman_bottom.png" COMP; + image: "gadman_left.png" COMP; + image: "gadman_right.png" COMP; + } + parts { + part { + name: "left_arrow1"; + description { + state: "default" 0.0; + aspect: 1.0 1.0; + aspect_preference: VERTICAL; + rel1.relative: -1.0 0.5; + rel2.relative: -1.0 0.5; + image.normal: "gadman_right.png"; + } + description { + state: "1" 0.0; + inherit: "default" 0.0; + rel1.relative: -0.8 0.2; + rel2.relative: -0.7 0.8; + } + description { + state: "2" 0.0; + inherit: "default" 0.0; + rel1.relative: 0.2 0.5; + rel2.relative: 0.2 0.5; + } + } + part { + name: "left_arrow2"; + description { + state: "default" 0.0; + aspect: 1.0 1.0; + aspect_preference: VERTICAL; + rel1.relative: -1.0 0.5; + rel2.relative: -1.0 0.5; + image.normal: "gadman_right.png"; + } + description { + state: "1" 0.0; + inherit: "default" 0.0; + rel1.relative: -0.8 0.2; + rel2.relative: -0.7 0.8; + } + description { + state: "2" 0.0; + inherit: "default" 0.0; + rel1.relative: 0.2 0.5; + rel2.relative: 0.2 0.5; + } + } + part { + name: "right_arrow1"; + description { + state: "default" 0.0; + aspect: 1.0 1.0; + aspect_preference: VERTICAL; + rel1.relative: 2.0 0.5; + rel2.relative: 2.0 0.5; + image.normal: "gadman_left.png"; + } + description { + state: "1" 0.0; + inherit: "default" 0.0; + rel1.relative: 1.8 0.2; + rel2.relative: 1.7 0.8; + } + description { + state: "2" 0.0; + inherit: "default" 0.0; + rel1.relative: 0.8 0.5; + rel2.relative: 0.8 0.5; + } + } + part { + name: "right_arrow2"; + description { + state: "default" 0.0; + aspect: 1.0 1.0; + aspect_preference: VERTICAL; + rel1.relative: 2.0 0.5; + rel2.relative: 2.0 0.5; + image.normal: "gadman_left.png"; + } + description { + state: "1" 0.0; + inherit: "default" 0.0; + rel1.relative: 1.8 0.2; + rel2.relative: 1.7 0.8; + } + description { + state: "2" 0.0; + inherit: "default" 0.0; + rel1.relative: 0.8 0.5; + rel2.relative: 0.8 0.5; + } + } + part { + name: "top_arrow1"; + description { + state: "default" 0.0; + aspect: 1.0 1.0; + aspect_preference: HORIZONTAL; + rel1.relative: 0.5 -1.0; + rel2.relative: 0.5 -1.0; + image.normal: "gadman_bottom.png"; + } + description { + state: "1" 0.0; + inherit: "default" 0.0; + rel1.relative: 0.2 -0.8; + rel2.relative: 0.8 -0.7; + } + description { + state: "2" 0.0; + inherit: "default" 0.0; + rel1.relative: 0.5 0.2; + rel2.relative: 0.5 0.2; + } + } + part { + name: "top_arrow2"; + description { + state: "default" 0.0; + aspect: 1.0 1.0; + aspect_preference: HORIZONTAL; + rel1.relative: 0.5 -1.0; + rel2.relative: 0.5 -1.0; + image.normal: "gadman_bottom.png"; + } + description { + state: "1" 0.0; + inherit: "default" 0.0; + rel1.relative: 0.2 -0.8; + rel2.relative: 0.8 -0.7; + } + description { + state: "2" 0.0; + inherit: "default" 0.0; + rel1.relative: 0.5 0.2; + rel2.relative: 0.5 0.2; + } + } + part { + name: "bottom_arrow1"; + description { + state: "default" 0.0; + aspect: 1.0 1.0; + aspect_preference: HORIZONTAL; + rel1.relative: 0.5 2.0; + rel2.relative: 0.5 2.0; + image.normal: "gadman_top.png"; + } + description { + state: "1" 0.0; + inherit: "default" 0.0; + rel1.relative: 0.2 1.7; + rel2.relative: 0.8 1.8; + } + description { + state: "2" 0.0; + inherit: "default" 0.0; + rel1.relative: 0.5 0.8; + rel2.relative: 0.5 0.8; + } + } + part { + name: "bottom_arrow2"; + description { + state: "default" 0.0; + aspect: 1.0 1.0; + aspect_preference: HORIZONTAL; + rel1.relative: 0.5 2.0; + rel2.relative: 0.5 2.0; + image.normal: "gadman_top.png"; + } + description { + state: "1" 0.0; + inherit: "default" 0.0; + rel1.relative: 0.2 1.7; + rel2.relative: 0.8 1.8; + } + description { + state: "2" 0.0; + inherit: "default" 0.0; + rel1.relative: 0.5 0.8; + rel2.relative: 0.5 0.8; + } + } + } + programs { + program { + name: "start1"; + signal: "show"; + source: ""; + after: "left1_1"; + after: "right1_1"; + after: "top1_1"; + after: "bottom1_1"; + } + program { + name: "start2"; + signal: "show"; + source: ""; + in: 0.4 0.0; + after: "left2_1"; + after: "right2_1"; + after: "top2_1"; + after: "bottom2_1"; + } + // LEFT ARROW + program { + name: "left1_1"; + action: STATE_SET "1" 0.0; + target: "left_arrow1"; + transition: LINEAR 0.4; + after: "left1_2"; + } + program { + name: "left1_2"; + action: STATE_SET "2" 0.0; + target: "left_arrow1"; + transition: LINEAR 0.4; + after: "left1_r"; + } + program { + name: "left1_r"; + action: STATE_SET "default" 0.0; + target: "left_arrow1"; + after: "left1_1"; + } + program { + name: "left2_1"; + action: STATE_SET "1" 0.0; + target: "left_arrow2"; + transition: LINEAR 0.4; + after: "left2_2"; + } + program { + name: "left2_2"; + action: STATE_SET "2" 0.0; + target: "left_arrow2"; + transition: LINEAR 0.4; + after: "left2_r"; + } + program { + name: "left2_r"; + action: STATE_SET "default" 0.0; + target: "left_arrow2"; + after: "left2_1"; + } + // RIGHT ARROW + program { + name: "right1_1"; + action: STATE_SET "1" 0.0; + target: "right_arrow1"; + transition: LINEAR 0.4; + after: "right1_2"; + } + program { + name: "right1_2"; + action: STATE_SET "2" 0.0; + target: "right_arrow1"; + transition: LINEAR 0.4; + after: "right1_r"; + } + program { + name: "right1_r"; + action: STATE_SET "default" 0.0; + target: "right_arrow1"; + after: "right1_1"; + } + program { + name: "right2_1"; + action: STATE_SET "1" 0.0; + target: "right_arrow2"; + transition: LINEAR 0.4; + after: "right2_2"; + } + program { + name: "right2_2"; + action: STATE_SET "2" 0.0; + target: "right_arrow2"; + transition: LINEAR 0.4; + after: "right2_r"; + } + program { + name: "right2_r"; + action: STATE_SET "default" 0.0; + target: "right_arrow2"; + after: "right2_1"; + } + // TOP ARROW + program { + name: "top1_1"; + action: STATE_SET "1" 0.0; + target: "top_arrow1"; + transition: LINEAR 0.4; + after: "top1_2"; + } + program { + name: "top1_2"; + action: STATE_SET "2" 0.0; + target: "top_arrow1"; + transition: LINEAR 0.4; + after: "top1_r"; + } + program { + name: "top1_r"; + action: STATE_SET "default" 0.0; + target: "top_arrow1"; + after: "top1_1"; + } + program { + name: "top2_1"; + action: STATE_SET "1" 0.0; + target: "top_arrow2"; + transition: LINEAR 0.4; + after: "top2_2"; + } + program { + name: "top2_2"; + action: STATE_SET "2" 0.0; + target: "top_arrow2"; + transition: LINEAR 0.4; + after: "top2_r"; + } + program { + name: "top2_r"; + action: STATE_SET "default" 0.0; + target: "top_arrow2"; + after: "top2_1"; + } + // BOTTOM ARROW + program { + name: "bottom1_1"; + action: STATE_SET "1" 0.0; + target: "bottom_arrow1"; + transition: LINEAR 0.4; + after: "bottom1_2"; + } + program { + name: "bottom1_2"; + action: STATE_SET "2" 0.0; + target: "bottom_arrow1"; + transition: LINEAR 0.4; + after: "bottom1_r"; + } + program { + name: "bottom1_r"; + action: STATE_SET "default" 0.0; + target: "bottom_arrow1"; + after: "bottom1_1"; + } + program { + name: "bottom2_1"; + action: STATE_SET "1" 0.0; + target: "bottom_arrow2"; + transition: LINEAR 0.4; + after: "bottom2_2"; + } + program { + name: "bottom2_2"; + action: STATE_SET "2" 0.0; + target: "bottom_arrow2"; + transition: LINEAR 0.4; + after: "bottom2_r"; + } + program { + name: "bottom2_r"; + action: STATE_SET "default" 0.0; + target: "bottom_arrow2"; + after: "bottom2_1"; + } } } @@ -932,6 +8801,1037 @@ collections { /* begin the collection of edje groups that are in this file */ } } + +///////////////////////////////////////////////////////////////////////////// +/*** CONFIGURATION PANEL ***/ + + group { + name: "e/widgets/configure/main"; + images { + image: "dia_grad.png" COMP; + image: "dia_topshad.png" COMP; + image: "dia_botshad.png" COMP; + image: "menu_sep.png" COMP; + } + parts { + part { + name: "base"; + mouse_events: 0; + description { + state: "default" 0.0; + color_class: "dialog_base"; + image.normal: "dia_grad.png"; + fill { + smooth: 0; + size { + relative: 0.0 1.0; + offset: 64 0; + } + } + } + } + part { + name: "shadow"; + mouse_events: 0; + description { + state: "default" 0.0; + rel2.relative: 1.0 0.0; + rel2.offset: -1 31; + image.normal: "dia_topshad.png"; + fill { + smooth: 0; + size { + relative: 0.0 1.0; + offset: 64 0; + } + } + } + } + part { + name: "shadow2"; + mouse_events: 0; + description { + state: "default" 0.0; + rel1.relative: 0.0 1.0; + rel1.offset: 0 -4; + image.normal: "dia_botshad.png"; + fill { + smooth: 0; + size { + relative: 0.0 1.0; + offset: 64 0; + } + } + } + } + part { + name: "separator"; + mouse_events: 0; + description { + state: "default" 0.0; + min: 16 2; + rel1 { + relative: 0.0 1.0; + offset: 4 -1; + to_y: "e.swallow.content"; + } + rel2 { + relative: 1.0 1.0; + offset: -5 0; + to_y: "e.swallow.content"; + } + image { + normal: "menu_sep.png"; + border: 2 2 0 0; + } + fill.smooth: 0; + } + } + part { + name: "e.swallow.content"; + type: SWALLOW; + description { + state: "default" 0.0; + align: 0.5 0.5; + min: 100 200; + rel1.offset: 2 2; + rel2 { + relative: 1.0 0.0; + offset: -3 -5; + to_y: "e.swallow.button"; + } + } + } + part { + name: "e.swallow.button"; + type: SWALLOW; + description { + state: "default" 0.0; + align: 0.5 1.0; + fixed: 1 1; + rel1.relative: 0.5 1.0; + rel2.relative: 0.5 1.0; + } + } + } + } + + +///////////////////////////////////////////////////////////////////////////// +/*** MOVE/RESIZE BOX ***/ + + group { + name: "e/widgets/border/default/move"; + images { + image: "base_bg.png" COMP; + image: "icon_win_move.png" COMP; + } + parts { + part { + name: "base"; + mouse_events: 0; + description { + state: "default" 0.0; + image { + normal: "base_bg.png"; + border: 2 2 2 2; + } + fill.smooth: 0; + } + } + part { + name: "icon"; + mouse_events: 0; + description { + state: "default" 0.0; + align: 0.0 0.5; + min: 21 21; + max: 21 21; + fixed: 1 1; + rel1.offset: 2 2; + rel2.relative: 0.0 1.0; + rel2.offset: 2 -3; + image.normal: "icon_win_move.png"; + } + } + part { + name: "e.text.label"; + type: TEXT; + scale: 1; + description { + state: "default" 0.0; + rel1.to_x: "icon"; + rel1.offset: 2 4; + rel1.relative: 1.0 0.0; + rel2.offset: -5 -5; + color_class: "move_text"; + text { + text: "X Y"; + font: "Sans"; + size: 10; + align: 0.5 0.5; + min: 1 1; + text_class: "move_text"; + } + } + } + } + } + group { + name: "e/widgets/border/default/resize"; + images { + image: "base_bg.png" COMP; + image: "icon_win_resize.png" COMP; + } + parts { + part { + name: "base"; + mouse_events: 0; + description { + state: "default" 0.0; + align: 0.5 0.0; + image { + normal: "base_bg.png"; + border: 2 2 2 2; + } + fill.smooth: 0; + } + } + part { + name: "icon"; + mouse_events: 0; + description { + state: "default" 0.0; + align: 0.0 0.5; + min: 21 21; + max: 21 21; + fixed: 1 1; + rel1.offset: 2 2; + rel2.relative: 0.0 1.0; + rel2.offset: 2 -3; + image.normal: "icon_win_resize.png"; + } + } + part { + name: "e.text.label"; + type: TEXT; + scale: 1; + description { + state: "default" 0.0; + rel1.to_x: "icon"; + rel1.offset: 2 4; + rel1.relative: 1.0 0.0; + rel2.offset: -5 -5; + color_class: "resize_text"; + text { + text: "WxH"; + font: "Sans"; + size: 10; + align: 0.5 0.5; + min: 1 1; + text_class: "resize_text"; + } + } + } + } + } + + +///////////////////////////////////////////////////////////////////////////// +/*** WIDGETS ***/ + + group { + name: "e/widgets/check"; + images { + image: "check_base.png" COMP; + image: "check_on.png" COMP; + image: "check_sel.png" COMP; + } + parts { + part { + name: "base"; + mouse_events: 0; + scale: 1; + description { + state: "default" 0.0; + min: 16 16; + max: 16 16; + align: 0.0 0.5; + fixed: 1 1; + rel1 { + relative: 0.0 0.0; + offset: 2 2; + } + rel2 { + relative: 0.0 1.0; + offset: 2 -3; + } + image.normal: "check_base.png"; + } + } + part { + name: "mark"; + mouse_events: 0; + clip_to: "mark_hold"; + description { + state: "default" 0.0; + rel1.to: "mark_hold"; + rel2.to: "mark_hold"; + image.normal: "check_on.png"; + } + description { + state: "selected" 0.0; + inherit: "default" 0.0; + image.normal: "check_sel.png"; + } + description { + state: "disabled" 0.0; + inherit: "default" 0.0; + color: 255 255 255 128; + } + } + part { + name: "mark_hold"; + type: RECT; + mouse_events: 0; + description { + state: "default" 0.0; + visible: 0; + color: 255 255 255 0; + rel1 { + to: "base"; + offset: -5 -5; + } + rel2 { + to: "base"; + offset: 4 4; + } + } + description { + state: "on" 0.0; + inherit: "default" 0.0; + visible: 1; + color: 255 255 255 255; + rel1.offset: 0 0; + rel2.offset: -1 -1; + } + } + part { + name: "e.text.label"; + type: TEXT; + mouse_events: 0; + scale: 1; + description { + state: "default" 0.0; + min: 16 16; + rel1 { + to_x: "base"; + relative: 1.0 0.0; + offset: 2 2; + } + rel2 { + relative: 1.0 1.0; + offset: -2 -2; + } + color_class: "check_text"; + text { + font: "Sans"; + size: 10; + min: 1 1; + align: 0.0 0.5; + text_class: "check_button"; + } + } + description { + state: "disabled" 0.0; + inherit: "default" 0.0; + color_class: "check_text_disabled"; + } + } + part { + name: "event"; + type: RECT; + ignore_flags: ON_HOLD; + description { + state: "default" 0.0; + color: 0 0 0 0; + } + description { + state: "disabled" 0.0; + inherit: "default" 0.0; + visible: 0; + } + } + } + programs { + program { + name: "on"; + /* if the checkmark is to be displayed */ + signal: "e,state,checked"; + source: "e"; + action: STATE_SET "on" 0.0; + transition: LINEAR 0.15; + target: "mark_hold"; + } + program { + name: "off"; + /* check mark is not to be displayed */ + signal: "e,state,unchecked"; + source: "e"; + action: STATE_SET "default" 0.0; + transition: LINEAR 0.2; + target: "mark_hold"; + } + program { + name: "click"; + signal: "mouse,up,1"; + source: "event"; + action: SIGNAL_EMIT "e,action,toggle" ""; + } + program { + name: "disable"; + signal: "e,state,disabled"; + source: "e"; + action: STATE_SET "disabled" 0.0; + target: "mark"; + target: "event"; + target: "e.text.label"; + } + program { + name: "enable"; + signal: "e,state,enabled"; + source: "e"; + action: STATE_SET "default" 0.0; + target: "mark"; + target: "event"; + target: "e.text.label"; + } + } + } + group { + name: "e/widgets/check_icon"; + images { + image: "check_base.png" COMP; + image: "check_on.png" COMP; + image: "check_sel.png" COMP; + } + parts { + part { + name: "base"; + mouse_events: 0; + scale: 1; + description { + state: "default" 0.0; + min: 16 16; + max: 16 16; + align: 0.0 0.5; + fixed: 1 1; + rel1 { + relative: 0.0 0.0; + offset: 2 2; + } + rel2 { + relative: 0.0 1.0; + offset: 2 -3; + } + image.normal: "check_base.png"; + } + } + part { + name: "mark"; + mouse_events: 0; + clip_to: "mark_hold"; + description { + state: "default" 0.0; + rel1.to: "mark_hold"; + rel2.to: "mark_hold"; + image.normal: "check_on.png"; + } + description { + state: "selected" 0.0; + inherit: "default" 0.0; + image.normal: "check_sel.png"; + } + description { + state: "disabled" 0.0; + inherit: "default" 0.0; + color: 255 255 255 128; + } + } + part { + name: "mark_hold"; + type: RECT; + mouse_events: 0; + description { + state: "default" 0.0; + visible: 0; + color: 255 255 255 0; + rel1 { + to: "base"; + offset: -5 -5; + } + rel2 { + to: "base"; + offset: 4 4; + } + } + description { + state: "on" 0.0; + inherit: "default" 0.0; + visible: 1; + color: 255 255 255 255; + rel1.offset: 0 0; + rel2.offset: -1 -1; + } + } + part { + name: "e.swallow.icon"; + type: SWALLOW; + clip_to: "icon_clip"; + description { + state: "default" 0.0; + min: 16 16; + rel1 { + to_x: "base"; + relative: 1.0 0.0; + offset: 2 2; + } + rel2 { + relative: 1.0 1.0; + offset: -2 -2; + } + } + description { + state: "label_visible" 0.0; + inherit: "default" 0.0; + min: 16 16; + rel2 { + to_y: "base"; + relative: 1.0 0.0; + offset: -2 -2; + } + } + } + part { + name: "icon_clip"; + type: RECT; + mouse_events: 0; + description { + state: "default" 0.0; + color: 255 255 255 255; + } + } + part { + name: "label_clip"; + type: RECT; + mouse_events: 0; + description { + state: "default" 0.0; + visible: 0; + } + description { + state: "label_visible" 0.0; + visible: 1; + } + } + part { + name: "e.text.label"; + type: TEXT; + mouse_events: 0; + scale: 1; + clip_to: "label_clip"; + description { + state: "default" 0.0; + min: 16 16; + rel1 { + to_x: "base"; + relative: 1.0 0.0; + offset: 2 2; + } + rel2 { + relative: 1.0 1.0; + offset: -2 -2; + } + color_class: "check_text"; + text { + font: "Sans"; + size: 10; + min: 1 1; + align: 0.5 0.5; + text_class: "check_button"; + } + } + description { + state: "disabled" 0.0; + inherit: "default" 0.0; + color_class: "check_text_disabled"; + } + } + part { + name: "event"; + type: RECT; + ignore_flags: ON_HOLD; + description { + state: "default" 0.0; + color: 0 0 0 0; + } + description { + state: "disabled" 0.0; + inherit: "default" 0.0; + visible: 0; + } + } + } + programs { + program { + name: "on"; + /* if the checkmark is to be displayed */ + signal: "e,state,checked"; + source: "e"; + action: STATE_SET "on" 0.0; + transition: LINEAR 0.15; + target: "mark_hold"; + } + program { + name: "off"; + /* check mark is not to be displayed */ + signal: "e,state,unchecked"; + source: "e"; + action: STATE_SET "default" 0.0; + transition: LINEAR 0.2; + target: "mark_hold"; + } + program { + name: "click"; + signal: "mouse,up,1"; + source: "event"; + action: SIGNAL_EMIT "e,action,toggle" ""; + } + program { + name: "label_on"; + signal: "e,state,labeled"; + source: "e"; + action: STATE_SET "label_visible" 0.0; + target: "e.swallow.icon"; + target: "label_clip"; + } + program { + name: "disable"; + signal: "e,state,disabled"; + source: "e"; + action: STATE_SET "disabled" 0.0; + target: "mark"; + target: "event"; + target: "e.text.label"; + } + program { + name: "enable"; + signal: "e,state,enabled"; + source: "e"; + action: STATE_SET "default" 0.0; + target: "mark"; + target: "event"; + target: "e.text.label"; + } + } + } + /* for a radio menu item - same as check, but only one of a group of radio + * menu item can be selected at any one time */ + group { + name: "e/widgets/radio"; + images { + image: "radio_base.png" COMP; + image: "radio_on.png" COMP; + image: "radio_sel.png" COMP; + } + parts { + part { + name: "base"; + mouse_events: 0; + scale: 1; + description { + state: "default" 0.0; + min: 16 16; + max: 16 16; + align: 0.0 0.5; + fixed: 1 1; + rel1 { + relative: 0.0 0.0; + offset: 2 2; + } + rel2 { + relative: 0.0 1.0; + offset: 2 -3; + } + image.normal: "radio_base.png"; + } + } + part { + name: "mark"; + mouse_events: 0; + clip_to: "mark_hold"; + description { + state: "default" 0.0; + rel1.to: "mark_hold"; + rel2.to: "mark_hold"; + image.normal: "radio_on.png"; + } + description { + state: "selected" 0.0; + inherit: "default" 0.0; + image.normal: "radio_sel.png"; + } + description { + state: "disabled" 0.0; + inherit: "default" 0.0; + color: 255 255 255 128; + } + } + part { + name: "mark_hold"; + type: RECT; + mouse_events: 0; + description { + state: "default" 0.0; + visible: 0; + color: 255 255 255 0; + rel1 { + to: "base"; + offset: -5 -5; + } + rel2 { + to: "base"; + offset: 4 4; + } + } + description { + state: "on" 0.0; + inherit: "default" 0.0; + visible: 1; + color: 255 255 255 255; + rel1.offset: 0 0; + rel2.offset: -1 -1; + } + } + part { + name: "e.text.label"; + type: TEXT; + mouse_events: 0; + scale: 1; + description { + state: "default" 0.0; + min: 16 16; + rel1 { + to_x: "base"; + relative: 1.0 0.0; + offset: 2 2; + } + rel2 { + relative: 1.0 1.0; + offset: -2 -2; + } + color_class: "radio_text"; + text { + font: "Sans"; + size: 10; + min: 1 1; + align: 0.0 0.5; + text_class: "radio_button"; + } + } + description { + state: "disabled" 0.0; + inherit: "default" 0.0; + color_class: "radio_text_disabled"; + } + } + part { + name: "event"; + type: RECT; + ignore_flags: ON_HOLD; + description { + state: "default" 0.0; + color: 0 0 0 0; + } + description { + state: "disabled" 0.0; + inherit: "default" 0.0; + visible: 0; + } + } + } + programs { + program { + name: "on"; + /* if the checkmark is to be displayed */ + signal: "e,state,on"; + source: "e"; + action: STATE_SET "on" 0.0; + transition: LINEAR 0.15; + target: "mark_hold"; + } + program { + name: "off"; + /* check mark is not to be displayed */ + signal: "e,state,off"; + source: "e"; + action: STATE_SET "default" 0.0; + transition: LINEAR 0.2; + target: "mark_hold"; + } + program { + name: "click"; + signal: "mouse,up,1"; + source: "event"; + action: SIGNAL_EMIT "e,action,toggle" ""; + } + program { + name: "disable"; + signal: "e,state,disabled"; + source: "e"; + action: STATE_SET "disabled" 0.0; + target: "mark"; + target: "event"; + target: "e.text.label"; + } + program { + name: "enable"; + signal: "e,state,enabled"; + source: "e"; + action: STATE_SET "default" 0.0; + target: "mark"; + target: "event"; + target: "e.text.label"; + } + } + } + group { + name: "e/widgets/radio_icon"; + images { + image: "radio_base.png" COMP; + image: "radio_on.png" COMP; + image: "radio_sel.png" COMP; + } + parts { + part { + name: "base"; + mouse_events: 0; + scale: 1; + description { + state: "default" 0.0; + min: 16 16; + max: 16 16; + align: 0.0 0.5; + fixed: 1 1; + rel1 { + relative: 0.0 0.0; + offset: 2 2; + } + rel2 { + relative: 0.0 1.0; + offset: 2 -3; + } + image.normal: "radio_base.png"; + } + } + part { + name: "mark"; + mouse_events: 0; + clip_to: "mark_hold"; + description { + state: "default" 0.0; + rel1.to: "mark_hold"; + rel2.to: "mark_hold"; + image.normal: "radio_on.png"; + } + description { + state: "selected" 0.0; + inherit: "default" 0.0; + image.normal: "radio_sel.png"; + } + description { + state: "disabled" 0.0; + inherit: "default" 0.0; + color: 255 255 255 128; + } + } + part { + name: "mark_hold"; + type: RECT; + mouse_events: 0; + description { + state: "default" 0.0; + visible: 0; + color: 255 255 255 0; + rel1 { + to: "base"; + offset: -5 -5; + } + rel2 { + to: "base"; + offset: 4 4; + } + } + description { + state: "on" 0.0; + inherit: "default" 0.0; + visible: 1; + color: 255 255 255 255; + rel1.offset: 0 0; + rel2.offset: -1 -1; + } + } + part { + name: "e.swallow.icon"; + type: SWALLOW; + clip_to: "icon_clip"; + description { + state: "default" 0.0; + min: 16 16; + rel1 { + to_x: "base"; + relative: 1.0 0.0; + offset: 2 2; + } + rel2 { + relative: 1.0 1.0; + offset: -2 -2; + } + } + description { + state: "label_visible" 0.0; + inherit: "default" 0.0; + min: 16 16; + rel2 { + to_y: "e.text.label"; + relative: 1.0 0.0; + offset: -2 -2; + } + } + } + part { + name: "icon_clip"; + type: RECT; + mouse_events: 0; + description { + state: "default" 0.0; + color: 255 255 255 255; + } + } + part { + name: "label_clip"; + type: RECT; + mouse_events: 0; + description { + state: "default" 0.0; + visible: 0; + } + description { + state: "label_visible" 0.0; + visible: 1; + } + } + part { + name: "e.text.label"; + type: TEXT; + mouse_events: 0; + scale: 1; + clip_to: "label_clip"; + description { + state: "default" 0.0; + min: 16 16; + rel1 { + to_x: "base"; + relative: 1.0 0.5; + offset: 2 1; + } + rel2 { + relative: 1.0 1.0; + offset: -2 -2; + } + color_class: "radio_text"; + text { + font: "Sans"; + size: 10; + min: 1 1; + align: 0.5 0.5; + text_class: "radio_button"; + } + } + description { + state: "disabled" 0.0; + inherit: "default" 0.0; + color_class: "radio_text_disabled"; + } + } + part { + name: "event"; + type: RECT; + ignore_flags: ON_HOLD; + description { + state: "default" 0.0; + color: 0 0 0 0; + } + description { + state: "disabled" 0.0; + inherit: "default" 0.0; + visible: 0; + } + } + } + programs { + program { + name: "on"; + /* if the radiomark is to be displayed */ + signal: "e,state,on"; + source: "e"; + action: STATE_SET "on" 0.0; + transition: LINEAR 0.15; + target: "mark_hold"; + } + program { + name: "off"; + /* radio mark is not to be displayed */ + signal: "e,state,off"; + source: "e"; + action: STATE_SET "default" 0.0; + transition: LINEAR 0.2; + target: "mark_hold"; + } + program { + name: "click"; + signal: "mouse,up,1"; + source: "event"; + action: SIGNAL_EMIT "e,action,toggle" ""; + } + program { + name: "label_on"; + signal: "e,state,labeled"; + source: "e"; + action: STATE_SET "label_visible" 0.0; + target: "e.swallow.icon"; + target: "label_clip"; + } + program { + name: "disable"; + signal: "e,state,disabled"; + source: "e"; + action: STATE_SET "disabled" 0.0; + target: "mark"; + target: "event"; + target: "e.text.label"; + } + program { + name: "enable"; + signal: "e,state,enabled"; + source: "e"; + action: STATE_SET "default" 0.0; + target: "mark"; + target: "event"; + target: "e.text.label"; + } + } + } group { name: "e/widgets/button"; images { @@ -1201,7 +10101,2506 @@ collections { /* begin the collection of edje groups that are in this file */ } } } - + /* e/widgets/scrollframe is used in the Wallpaper selector dialog */ + group { + name: "e/widgets/scrollframe"; + images { + image: "added_images/e17_ibar_bg_v.png" COMP; + image: "added_images/e17_ibar_over_v.png" COMP; + image: "added_images/e17_scrollbar_hdrag_thumb.png" COMP; + image: "added_images/e17_scrollbar_vdrag_thumb.png" COMP; + image: "added_images/focus.png" COMP; + image: "sb_thumb.png" COMP; + image: "added_images/DM_Internet_Scroll_01.png" COMP; + image: "added_images/DM_Internet_Scroll_h_01.png" COMP; + image: "added_images/DM_Internet_Scroll_Up.png" COMP; + image: "added_images/DM_Internet_Scroll_Middle.png" COMP; + image: "added_images/DM_Internet_Scroll_Down.png" COMP; + image: "added_images/DM_Internet_Scroll_Left_h.png" COMP; + image: "added_images/DM_Internet_Scroll_Middle_h.png" COMP; + image: "added_images/DM_Internet_Scroll_Right_h.png" COMP; + image: "added_images/DM_Internet_Scroll_Increase.png" COMP; + } + parts { + part { + name: "bg"; + mouse_events: 0; + description { + state: "default" 0.0; + image { + normal: "added_images/e17_ibar_bg_v.png"; + border: 7 7 7 7; + } + fill { + smooth : 0; + } + } + } + part { + name: "clipper"; + type: RECT; + mouse_events: 0; + description { + state: "default" 0.0; + rel1 { + to: "bg"; + offset: 4 4; + } + rel2 { + to: "bg"; + offset: -5 -5; + } + } + } + part { + name: "e.swallow.content"; + clip_to: "clipper"; + type: SWALLOW; + description { + state: "default" 0.0; + rel1 { + offset: 4 4; + } + rel2 { + relative: 0.0 0.0; + offset: -1 -1; + to_x: "sb_vbar"; + to_y: "sb_hbar"; + } + } + } + part { + name: "conf_over"; + mouse_events: 0; + description { + state: "default" 0.0; + rel1 { + to: "bg"; + } + rel2 { + to: "bg"; + } + image { + normal: "added_images/e17_ibar_over_v.png"; + border: 13 13 13 13; + middle: 0; + } + fill { + smooth : 0; + } + } + } + part { + name: "sb_vbar"; + type: RECT; + mouse_events: 0; + description { + state: "default" 0.0; + min: 16 16; + align: 1.0 0.0; + rel1 { + to: "bg"; + relative: 1.0 0.0; + offset: -5 4; + } + rel2 { + to: "bg"; + relative: 1.0 0.0; + offset: -5 -1; + to_y: "sb_hbar"; + } + } + description { + state: "hidden" 0.0; + visible: 0; + max: 0 99999; + rel1 { + to: "bg"; + relative: 1.0 0.0; + offset: -4 4; + } + rel2 { + to: "bg"; + relative: 1.0 0.0; + offset: -4 -1; + to_y: "sb_hbar"; + } + } + } + part { + name: "sb_vbar_base"; + type: RECT; + clip_to: "sb_vbar"; + mouse_events: 1; + description { + state: "default" 0.0; + color: 0 0 0 0; + rel1 { + relative: 0.0 1.0; + offset: 0 0; + to: "sb_vbar_a1"; + } + rel2 { + relative: 1.0 0.0; + offset: -1 -1; + to: "sb_vbar_a2"; + } + } + } + part { + name: "sb_vbar_runner"; + clip_to: "sb_vbar"; + mouse_events: 0; + description { + state: "default" 0.0; + rel1 { + to: "sb_vbar_base"; + } + rel2 { + to: "sb_vbar_base"; + } + image { + normal: "added_images/DM_Internet_Scroll_Middle.png"; + } + fill { + smooth: 0; + } + } + } + part { + name: "sb_vbar_p1"; + type: RECT; + clip_to: "sb_vbar"; + mouse_events: 1; + description { + state: "default" 0.0; + color: 0 0 0 0; + rel1 { + relative: 0.0 1.0; + offset: 0 0; + to: "sb_vbar_a1"; + } + rel2 { + relative: 1.0 0.0; + offset: -1 -1; + to: "e.dragable.vbar"; + } + } + } + part { + name: "sb_vbar_p2"; + type: RECT; + clip_to: "sb_vbar"; + mouse_events: 1; + description { + state: "default" 0.0; + color: 0 0 0 0; + rel1 { + relative: 0.0 1.0; + offset: 0 0; + to: "e.dragable.vbar"; + } + rel2 { + relative: 1.0 0.0; + offset: -1 -1; + to: "sb_vbar_a2"; + } + } + } + part { + name: "e.dragable.vbar"; + clip_to: "sb_vbar"; + mouse_events: 1; + dragable { + x: 0 0 0; + y: 1 1 0; + confine: "sb_vbar_base"; + } + description { + state: "default" 0.0; + min: 16 16; + rel1 { + relative: 0.5 0.5; + offset: 0 0; + to: "sb_vbar_base"; + } + rel2 { + relative: 0.5 0.5; + offset: 0 0; + to: "sb_vbar_base"; + } + image { + normal: "added_images/DM_Internet_Scroll_01.png"; + border: 5 5 5 5; + } + } + description { + state: "clicked" 0.0; + inherit: "default" 0.0; + image { + normal: "added_images/DM_Internet_Scroll_01.png"; + } + } + } + part { + name: "vbar_bar_thumb"; + clip_to: "sb_vbar"; + mouse_events: 0; + description { + state: "default" 0.0; + max: 8 8; + min: 8 8; + rel1 { + to: "e.dragable.vbar"; + } + rel2 { + to: "e.dragable.vbar"; + } + image { + normal: "added_images/e17_scrollbar_vdrag_thumb.png"; + } + } + } + part { + name: "sb_vbar_a1"; + type: IMAGE; + mouse_events: 1; + clip_to: "sb_vbar"; + description { + state: "default" 0.0; + align: 0.5 0.0; + aspect: 1.0 1.0; + aspect_preference: HORIZONTAL; + rel1 { + to: "sb_vbar"; + relative: 0.0 0.0; + offset: 0 0; + } + rel2 { + to: "sb_vbar"; + relative: 1.0 0.0; + offset: -1 0; + } + image { + normal: "added_images/DM_Internet_Scroll_Up.png"; + } + } + description { + state: "clicked" 0.0; + inherit: "default" 0.0; + image { + normal: "added_images/DM_Internet_Scroll_Up.png"; + } + } + } + part { + name: "sb_vbar_a2"; + type: IMAGE; + mouse_events: 1; + clip_to: "sb_vbar"; + description { + state: "default" 0.0; + align: 0.5 1.0; + aspect: 1.0 1.0; + aspect_preference: HORIZONTAL; + rel1 { + to: "sb_vbar"; + relative: 0.0 1.0; + offset: 0 -1; + } + rel2 { + to: "sb_vbar"; + relative: 1.0 1.0; + offset: -1 -1; + } + image { + normal: "added_images/DM_Internet_Scroll_Down.png"; + } + } + description { + state: "clicked" 0.0; + inherit: "default" 0.0; + image { + normal: "added_images/DM_Internet_Scroll_Down.png"; + } + } + } + part { + name: "sb_increase"; + type: IMAGE; + mouse_events: 1; + description { + state: "default" 0.0; + align: 0.5 1.0; + aspect: 1.0 1.0; + aspect_preference: HORIZONTAL; + rel1 { + to: "sb_hbar_a2"; + relative: 1.0 0.0; + offset: 0 2; + } + rel2 { + to: "sb_vbar_a2"; + relative: 1.0 2.0; + offset: -1 -1; + } + image { + normal: "added_images/DM_Internet_Scroll_Increase.png"; + } + } + description { + state: "clicked" 0.0; + inherit: "default" 0.0; + image { + normal: "added_images/DM_Internet_Scroll_Increase.png"; + } + } + description { + state: "hidden" 0.0; + visible: 0; + rel1 { + to: "sb_hbar_a2"; + relative: 1.0 0.0; + offset: 0 2; + } + rel2 { + to: "sb_vbar_a2"; + relative: 1.0 2.0; + offset: -1 -1; + } + } + } + part { + name: "sb_hbar"; + type: RECT; + mouse_events: 0; + description { + state: "default" 0.0; + min: 16 16; + align: 0.0 1.0; + rel1 { + to: "bg"; + relative: 0.0 1.0; + offset: 4 -5; + } + rel2 { + to: "bg"; + relative: 0.0 1.0; + offset: -1 -5; + to_x: "sb_vbar"; + } + } + description { + state: "hidden" 0.0; + visible: 0; + rel1 { + to: "bg"; + relative: 0.0 1.0; + offset: 0 -4; + } + rel2 { + to: "bg"; + relative: 0.0 1.0; + offset: -1 -4; + to_x: "sb_vbar"; + } + } + } + part { + name: "sb_hbar_base"; + type: RECT; + clip_to: "sb_hbar"; + mouse_events: 1; + description { + state: "default" 0.0; + color: 0 0 0 0; + rel1 { + relative: 1.0 0.0; + offset: 0 0; + to: "sb_hbar_a1"; + } + rel2 { + relative: 0.0 1.0; + offset: -1 -1; + to: "sb_hbar_a2"; + } + } + } + part { + name: "sb_hbar_runner"; + clip_to: "sb_hbar"; + mouse_events: 0; + description { + state: "default" 0.0; + rel1 { + to: "sb_hbar_base"; + } + rel2 { + to: "sb_hbar_base"; + } + image { + normal: "added_images/DM_Internet_Scroll_Middle_h.png"; + } + fill { + smooth: 0; + } + } + } + part { + name: "sb_hbar_p1"; + type: RECT; + clip_to: "sb_hbar"; + mouse_events: 1; + description { + state: "default" 0.0; + color: 0 0 0 0; + rel1 { + relative: 1.0 0.0; + offset: 0 0; + to: "sb_hbar_a1"; + } + rel2 { + relative: 0.0 1.0; + offset: -1 -1; + to: "e.dragable.hbar"; + } + } + } + part { + name: "sb_hbar_p2"; + type: RECT; + clip_to: "sb_hbar"; + mouse_events: 1; + description { + state: "default" 0.0; + color: 0 0 0 0; + rel1 { + relative: 1.0 0.0; + offset: 0 0; + to: "e.dragable.hbar"; + } + rel2 { + relative: 0.0 1.0; + offset: -1 -1; + to: "sb_hbar_a2"; + } + } + } + part { + name: "e.dragable.hbar"; + clip_to: "sb_hbar"; + mouse_events: 1; + dragable { + x: 1 1 0; + y: 0 0 0; + confine: "sb_hbar_base"; + } + description { + state: "default" 0.0; + min: 16 16; + rel1 { + relative: 0.5 0.5; + offset: 0 0; + to: "sb_hbar_base"; + } + rel2 { + relative: 0.5 0.5; + offset: 0 0; + to: "sb_hbar_base"; + } + image { + normal: "added_images/DM_Internet_Scroll_h_01.png"; + border: 5 5 5 5; + } + } + description { + state: "clicked" 0.0; + inherit: "default" 0.0; + image { + normal: "added_images/DM_Internet_Scroll_h_01.png"; + } + } + } + part { + name: "hbar_bar_thumb"; + clip_to: "sb_hbar"; + mouse_events: 0; + description { + state: "default" 0.0; + max: 8 8; + min: 8 8; + rel1 { + to: "e.dragable.hbar"; + } + rel2 { + to: "e.dragable.hbar"; + } + image { + normal: "added_images/e17_scrollbar_hdrag_thumb.png"; + } + } + } + part { + name: "sb_hbar_a1"; + type: IMAGE; + mouse_events: 1; + clip_to: "sb_hbar"; + description { + state: "default" 0.0; + align: 0.0 0.5; + aspect: 1.0 1.0; + aspect_preference: VERTICAL; + rel1 { + to: "sb_hbar"; + relative: 0.0 0.0; + offset: 0 0; + } + rel2 { + to: "sb_hbar"; + relative: 0.0 1.0; + offset: 0 -1; + } + image { + normal: "added_images/DM_Internet_Scroll_Left_h.png"; + } + } + description { + state: "clicked" 0.0; + inherit: "default" 0.0; + image { + normal: "added_images/DM_Internet_Scroll_Left_h.png"; + } + } + } + part { + name: "sb_hbar_a2"; + type: IMAGE; + mouse_events: 1; + clip_to: "sb_hbar"; + description { + state: "default" 0.0; + align: 1.0 0.5; + aspect: 1.0 1.0; + aspect_preference: VERTICAL; + rel1 { + to: "sb_hbar"; + relative: 1.0 0.0; + offset: -1 0; + } + rel2 { + to: "sb_hbar"; + relative: 1.0 1.0; + offset: -1 -1; + } + image { + normal: "added_images/DM_Internet_Scroll_Right_h.png"; + } + } + description { + state: "clicked" 0.0; + inherit: "default" 0.0; + image { + normal: "added_images/DM_Internet_Scroll_Right_h.png"; + } + } + } + part { + name: "focus"; + mouse_events: 0; + description { + state: "default" 0.0; + visible: 0; + color: 255 255 255 0; + image { + normal: "added_images/focus.png"; + border: 7 7 7 7; + middle: 0; + } + fill { + smooth: 0; + } + } + description { + state: "focused" 0.0; + inherit: "default" 0.0; + visible: 0; + color: 255 255 255 255; + } + } + } + programs { + program { + name: "sb_vbar_show"; + signal: "e,action,show,vbar"; + source: "e"; + action: STATE_SET "default" 0.0; + target: "sb_vbar"; + target: "sb_increase"; + } + program { + name: "sb_vbar_hide"; + signal: "e,action,hide,vbar"; + source: "e"; + action: STATE_SET "hidden" 0.0; + target: "sb_vbar"; + target: "sb_increase"; + } + program { + name: "sb_hbar_show"; + signal: "e,action,show,hbar"; + source: "e"; + action: STATE_SET "default" 0.0; + target: "sb_hbar"; + target: "sb_increase"; + } + program { + name: "sb_hbar_hide"; + signal: "e,action,hide,hbar"; + source: "e"; + action: STATE_SET "hidden" 0.0; + target: "sb_hbar"; + target: "sb_increase"; + } + program { + name: "sb_vbar_a1_down"; + signal: "mouse,down,1"; + source: "sb_vbar_a1"; + action: STATE_SET "clicked" 0.0; + target: "sb_vbar_a1"; + } + program { + name: "sb_vbar_a1_down2"; + signal: "mouse,down,1"; + source: "sb_vbar_a1"; + action: DRAG_VAL_STEP 0.0 -1.0; + target: "e.dragable.vbar"; + } + program { + name: "sb_vbar_a1_up"; + signal: "mouse,up,1"; + source: "sb_vbar_a1"; + action: STATE_SET "default" 0.0; + target: "sb_vbar_a1"; + } + program { + name: "sb_vbar_a2_down"; + signal: "mouse,down,1"; + source: "sb_vbar_a2"; + action: STATE_SET "clicked" 0.0; + target: "sb_vbar_a2"; + } + program { + name: "sb_vbar_a2_down2"; + signal: "mouse,down,1"; + source: "sb_vbar_a2"; + action: DRAG_VAL_STEP 0.0 1.0; + target: "e.dragable.vbar"; + } + program { + name: "sb_vbar_a2_up"; + signal: "mouse,up,1"; + source: "sb_vbar_a2"; + action: STATE_SET "default" 0.0; + target: "sb_vbar_a2"; + } + program { + name: "sb_vbar_p1_down"; + signal: "mouse,down,1"; + source: "sb_vbar_p1"; + action: DRAG_VAL_PAGE 0.0 -1.0; + target: "e.dragable.vbar"; + } + program { + name: "sb_vbar_p2_down"; + signal: "mouse,down,1"; + source: "sb_vbar_p2"; + action: DRAG_VAL_PAGE 0.0 1.0; + target: "e.dragable.vbar"; + } + program { + name: "sb_vbar_down"; + signal: "mouse,down,1"; + source: "e.dragable.vbar"; + action: STATE_SET "clicked" 0.0; + target: "e.dragable.vbar"; + } + program { + name: "sb_vbar_up"; + signal: "mouse,up,1"; + source: "e.dragable.vbar"; + action: STATE_SET "default" 0.0; + target: "e.dragable.vbar"; + } + program { + name: "sb_hbar_a1_down"; + signal: "mouse,down,1"; + source: "sb_hbar_a1"; + action: STATE_SET "clicked" 0.0; + target: "sb_hbar_a1"; + } + program { + name: "sb_hbar_a1_down2"; + signal: "mouse,down,1"; + source: "sb_hbar_a1"; + action: DRAG_VAL_STEP -1.0 0.0; + target: "e.dragable.hbar"; + } + program { + name: "sb_hbar_a1_up"; + signal: "mouse,up,1"; + source: "sb_hbar_a1"; + action: STATE_SET "default" 0.0; + target: "sb_hbar_a1"; + } + program { + name: "sb_hbar_a2_down"; + signal: "mouse,down,1"; + source: "sb_hbar_a2"; + action: STATE_SET "clicked" 0.0; + target: "sb_hbar_a2"; + } + program { + name: "sb_hbar_a2_down2"; + signal: "mouse,down,1"; + source: "sb_hbar_a2"; + action: DRAG_VAL_STEP 1.0 0.0; + target: "e.dragable.hbar"; + } + program { + name: "sb_hbar_a2_up"; + signal: "mouse,up,1"; + source: "sb_hbar_a2"; + action: STATE_SET "default" 0.0; + target: "sb_hbar_a2"; + } + program { + name: "sb_hbar_p1_down"; + signal: "mouse,down,1"; + source: "sb_hbar_p1"; + action: DRAG_VAL_PAGE -1.0 0.0; + target: "e.dragable.hbar"; + } + program { + name: "sb_hbar_p2_down"; + signal: "mouse,down,1"; + source: "sb_hbar_p2"; + action: DRAG_VAL_PAGE 1.0 0.0; + target: "e.dragable.hbar"; + } + program { + name: "sb_hbar_down"; + signal: "mouse,down,1"; + source: "e.dragable.hbar"; + action: STATE_SET "clicked" 0.0; + target: "e.dragable.hbar"; + } + program { + name: "sb_hbar_up"; + signal: "mouse,up,1"; + source: "e.dragable.hbar"; + action: STATE_SET "default" 0.0; + target: "e.dragable.hbar"; + } + program { + name: "focus_in"; + signal: "e,state,focused"; + source: "e"; + action: STATE_SET "focused" 0.0; + transition: DECELERATE 0.2; + target: "focus"; + } + program { + name: "focus_out"; + signal: "e,state,unfocused"; + source: "e"; + action: STATE_SET "default" 0.0; + transition: ACCELERATE 0.5; + target: "focus"; + } + } + } + /* e/widgets/ilist is used in the Module Config Dialog for the module list */ + group { + name: "e/widgets/ilist"; + data.item: "stacking" "above"; + data.item: "selectraise" "on"; + images { + image: "bt_sm_base1.png" COMP; + image: "bt_sm_shine.png" COMP; + image: "bt_sm_hilight.png" COMP; + image: "ilist_1.png" COMP; + image: "ilist_item_shadow.png" COMP; + } + parts { + part { + name: "base_sh"; + mouse_events: 0; + description { + state: "default" 0.0; + fixed: 1 1; + align: 0.0 0.0; + min: 0 10; + rel1 { + to: "base"; + relative: 0.0 1.0; + offset: 0 0; + } + rel2 { + to: "base"; + relative: 1.0 1.0; + offset: -1 0; + } + image { + normal: "ilist_item_shadow.png"; + } + fill.smooth: 0; + } + } + part { + name: "base"; + mouse_events: 0; + description { + state: "default" 0.0; + color_class: "ilist_item_base"; + image { + normal: "ilist_1.png"; + border: 2 2 2 2; + } + fill.smooth: 0; + } + } + part { + name: "bg"; + mouse_events: 0; + description { + state: "default" 0.0; + visible: 0; + color: 255 255 255 0; + rel1 { + relative: 0.0 0.0; + offset: -5 -5; + } + rel2 { + relative: 1.0 1.0; + offset: 4 4; + } + image { + normal: "bt_sm_base1.png"; + border: 6 6 6 6; + } + } + description { + state: "selected" 0.0; + inherit: "default" 0.0; + visible: 1; + color: 255 255 255 255; + rel1 { + relative: 0.0 0.0; + offset: -2 -2; + } + rel2 { + relative: 1.0 1.0; + offset: 1 1; + } + } + } + part { + name: "e.swallow.icon"; + type: SWALLOW; + description { + state: "default" 0.0; + align: 0.0 0.5; + aspect: 1.0 1.0; + aspect_preference: VERTICAL; + rel1 { + relative: 0.0 0.0; + offset: 4 4; + } + rel2 { + relative: 0.0 1.0; + offset: 4 -5; + } + } + } + part { + name: "e.text.label"; + type: TEXT; + effect: SOFT_SHADOW; + mouse_events: 0; + scale: 1; + description { + state: "default" 0.0; + min: 16 16; + rel1 { + to_x: "e.swallow.icon"; + relative: 1.0 0.0; + offset: 4 4; + } + rel2 { + relative: 1.0 1.0; + offset: -5 -5; + } + color_class: "ilist_item"; + text { + font: "Sans"; + size: 10; + min: 1 1; + align: 0.0 0.5; + text_class: "ilist_item"; + } + } + description { + state: "selected" 0.0; + inherit: "default" 0.0; + color_class: "ilist_item_selected"; + } + } + part { + name: "e.swallow.end"; + type: SWALLOW; + description { + state: "default" 0.0; + align: 1.0 0.5; + aspect: 1.0 1.0; + aspect_preference: VERTICAL; + rel1 { + relative: 1.0 0.0; + offset: -5 4; + } + rel2 { + relative: 1.0 1.0; + offset: -5 -5; + } + } + } + part { + name: "fg1"; + mouse_events: 0; + description { + state: "default" 0.0; + visible: 0; + color: 255 255 255 0; + rel1.to: "bg"; + rel2.relative: 1.0 0.5; + rel2.to: "bg"; + image { + normal: "bt_sm_hilight.png"; + border: 6 6 6 0; + } + } + description { + state: "selected" 0.0; + inherit: "default" 0.0; + visible: 1; + color: 255 255 255 255; + } + } + part { + name: "fg2"; + mouse_events: 0; + description { + state: "default" 0.0; + visible: 0; + color: 255 255 255 0; + rel1.to: "bg"; + rel2.to: "bg"; + image { + normal: "bt_sm_shine.png"; + border: 6 6 6 0; + } + } + description { + state: "selected" 0.0; + inherit: "default" 0.0; + visible: 1; + color: 255 255 255 255; + } + } + part { + name: "event"; + type: RECT; + description { + state: "default" 0.0; + color: 0 0 0 0; + } + } + } + programs { + program { + name: "go_active"; + signal: "e,state,selected"; + source: "e"; + action: STATE_SET "selected" 0.0; + target: "bg"; + target: "fg1"; + target: "fg2"; + target: "e.text.label"; + } + program { + name: "go_passive"; + signal: "e,state,unselected"; + source: "e"; + action: STATE_SET "default" 0.0; + target: "bg"; + target: "fg1"; + target: "fg2"; + target: "e.text.label"; + transition: LINEAR 0.1; + } + } + } + group { + name: "e/widgets/ilist_odd"; + data.item: "stacking" "below"; + data.item: "selectraise" "on"; + images { + image: "bt_sm_base1.png" COMP; + image: "bt_sm_shine.png" COMP; + image: "bt_sm_hilight.png" COMP; + image: "ilist_2.png" COMP; + } + parts { + part { + name: "base"; + mouse_events: 0; + description { + state: "default" 0.0; + color_class: "ilist_item_odd_base"; + image { + normal: "ilist_2.png"; + border: 2 2 2 2; + } + fill.smooth: 0; + } + } + part { + name: "bg"; + mouse_events: 0; + description { + state: "default" 0.0; + visible: 0; + color: 255 255 255 0; + rel1 { + relative: 0.0 0.0; + offset: -5 -5; + } + rel2 { + relative: 1.0 1.0; + offset: 4 4; + } + image { + normal: "bt_sm_base1.png"; + border: 6 6 6 6; + } + } + description { + state: "selected" 0.0; + inherit: "default" 0.0; + visible: 1; + color: 255 255 255 255; + rel1 { + relative: 0.0 0.0; + offset: -2 -2; + } + rel2 { + relative: 1.0 1.0; + offset: 1 1; + } + } + } + part { + name: "e.swallow.icon"; + type: SWALLOW; + description { + state: "default" 0.0; + align: 0.0 0.5; + aspect: 1.0 1.0; + aspect_preference: VERTICAL; + rel1 { + relative: 0.0 0.0; + offset: 4 4; + } + rel2 { + relative: 0.0 1.0; + offset: 4 -5; + } + } + } + part { + name: "e.text.label"; + type: TEXT; + effect: SOFT_SHADOW; + mouse_events: 0; + scale: 1; + description { + state: "default" 0.0; + min: 16 16; + rel1 { + to_x: "e.swallow.icon"; + relative: 1.0 0.0; + offset: 4 4; + } + rel2 { + relative: 1.0 1.0; + offset: -5 -5; + } + color_class: "ilist_item_odd"; + text { + font: "Sans"; + size: 10; + min: 1 1; + align: 0.0 0.5; + text_class: "ilist_item"; + } + } + description { + state: "selected" 0.0; + inherit: "default" 0.0; + color_class: "ilist_item_selected"; + } + } + part { + name: "e.swallow.end"; + type: SWALLOW; + description { + state: "default" 0.0; + align: 1.0 0.5; + aspect: 1.0 1.0; + aspect_preference: VERTICAL; + rel1 { + relative: 1.0 0.0; + offset: -5 4; + } + rel2 { + relative: 1.0 1.0; + offset: -5 -5; + } + } + } + part { + name: "fg1"; + mouse_events: 0; + description { + state: "default" 0.0; + visible: 0; + color: 255 255 255 0; + rel1.to: "bg"; + rel2.relative: 1.0 0.5; + rel2.to: "bg"; + image { + normal: "bt_sm_hilight.png"; + border: 6 6 6 0; + } + } + description { + state: "selected" 0.0; + inherit: "default" 0.0; + visible: 1; + color: 255 255 255 255; + } + } + part { + name: "fg2"; + mouse_events: 0; + description { + state: "default" 0.0; + visible: 0; + color: 255 255 255 0; + rel1.to: "bg"; + rel2.to: "bg"; + image { + normal: "bt_sm_shine.png"; + border: 6 6 6 0; + } + } + description { + state: "selected" 0.0; + inherit: "default" 0.0; + visible: 1; + color: 255 255 255 255; + } + } + part { + name: "event"; + type: RECT; + description { + state: "default" 0.0; + color: 0 0 0 0; + } + } + } + programs { + program { + name: "go_active"; + signal: "e,state,selected"; + source: "e"; + action: STATE_SET "selected" 0.0; + target: "bg"; + target: "fg1"; + target: "fg2"; + target: "e.text.label"; + } + program { + name: "go_passive"; + signal: "e,state,unselected"; + source: "e"; + action: STATE_SET "default" 0.0; + target: "bg"; + target: "fg1"; + target: "fg2"; + target: "e.text.label"; + transition: LINEAR 0.1; + } + } + } + group { + name: "e/widgets/ilist_header"; + data.item: "stacking" "above"; + data.item: "selectraise" "on"; + images { + image: "bt_sm_base1.png" COMP; + image: "bt_sm_shine.png" COMP; + image: "bt_sm_hilight.png" COMP; + image: "ilist_header_1.png" COMP; + image: "ilist_item_shadow.png" COMP; + } + parts { + part { + name: "base_sh"; + mouse_events: 0; + description { + state: "default" 0.0; + fixed: 1 1; + align: 0.0 0.0; + min: 0 10; + rel1 { + to: "base"; + relative: 0.0 1.0; + offset: 0 0; + } + rel2 { + to: "base"; + relative: 1.0 1.0; + offset: -1 0; + } + image { + normal: "ilist_item_shadow.png"; + } + fill.smooth: 0; + } + } + part { + name: "base"; + mouse_events: 0; + description { + state: "default" 0.0; + color_class: "ilist_item_header_base"; + image { + normal: "ilist_header_1.png"; + border: 2 2 2 2; + } + } + } + part { + name: "bg"; + mouse_events: 0; + description { + state: "default" 0.0; + visible: 0; + color: 255 255 255 0; + rel1 { + relative: 0.0 0.0; + offset: -5 -5; + } + rel2 { + relative: 1.0 1.0; + offset: 4 4; + } + image { + normal: "bt_sm_base1.png"; + border: 6 6 6 6; + } + } + description { + state: "selected" 0.0; + inherit: "default" 0.0; + visible: 1; + color: 255 255 255 255; + rel1 { + relative: 0.0 0.0; + offset: -2 -2; + } + rel2 { + relative: 1.0 1.0; + offset: 1 1; + } + } + } + part { + name: "e.swallow.icon"; + type: SWALLOW; + description { + state: "default" 0.0; + align: 0.0 0.5; + aspect: 1.0 1.0; + aspect_preference: VERTICAL; + rel1 { + relative: 0.0 0.0; + offset: 4 4; + } + rel2 { + relative: 0.0 1.0; + offset: 4 -5; + } + } + } + part { + name: "e.text.label"; + type: TEXT; + effect: SOFT_SHADOW; + mouse_events: 0; + scale: 1; + description { + state: "default" 0.0; + min: 16 16; + rel1 { + to_x: "e.swallow.icon"; + relative: 1.0 0.0; + offset: 4 4; + } + rel2 { + relative: 1.0 1.0; + offset: -5 -5; + } + color_class: "ilist_item_header"; + text { + font: "Sans:style=Bold"; + size: 16; + min: 1 1; + align: 0.0 0.5; + text_class: "ilist_item"; + } + } + } + part { + name: "fg1"; + mouse_events: 0; + description { + state: "default" 0.0; + visible: 0; + color: 255 255 255 0; + rel1.to: "bg"; + rel2.relative: 1.0 0.5; + rel2.to: "bg"; + image { + normal: "bt_sm_hilight.png"; + border: 6 6 6 0; + } + } + description { + state: "selected" 0.0; + inherit: "default" 0.0; + visible: 1; + color: 255 255 255 255; + } + } + part { + name: "fg2"; + mouse_events: 0; + description { + state: "default" 0.0; + visible: 0; + color: 255 255 255 0; + rel1.to: "bg"; + rel2.to: "bg"; + image { + normal: "bt_sm_shine.png"; + border: 6 6 6 0; + } + } + description { + state: "selected" 0.0; + inherit: "default" 0.0; + visible: 1; + color: 255 255 255 255; + } + } + part { + name: "event"; + type: RECT; + description { + state: "default" 0.0; + color: 0 0 0 0; + } + } + } + programs { + program { + name: "go_active"; + signal: "e,state,selected"; + source: "e"; + action: STATE_SET "selected" 0.0; + target: "bg"; + target: "fg1"; + target: "fg2"; + target: "e.text.label"; + } + program { + name: "go_passive"; + signal: "e,state,unselected"; + source: "e"; + action: STATE_SET "default" 0.0; + target: "bg"; + target: "fg1"; + target: "fg2"; + target: "e.text.label"; + transition: LINEAR 0.1; + } + } + } + group { + name: "e/widgets/ilist_header_odd"; + data.item: "stacking" "below"; + data.item: "selectraise" "on"; + images { + image: "bt_sm_base1.png" COMP; + image: "bt_sm_shine.png" COMP; + image: "bt_sm_hilight.png" COMP; + image: "ilist_header_2.png" COMP; + } + parts { + part { + name: "base"; + mouse_events: 0; + description { + state: "default" 0.0; + color_class: "ilist_item_header_odd_base"; + image { + normal: "ilist_header_2.png"; + border: 2 2 2 2; + } + } + } + part { + name: "bg"; + mouse_events: 0; + description { + state: "default" 0.0; + visible: 0; + color: 255 255 255 0; + rel1 { + relative: 0.0 0.0; + offset: -5 -5; + } + rel2 { + relative: 1.0 1.0; + offset: 4 4; + } + image { + normal: "bt_sm_base1.png"; + border: 6 6 6 6; + } + } + description { + state: "selected" 0.0; + inherit: "default" 0.0; + visible: 1; + color: 255 255 255 255; + rel1 { + relative: 0.0 0.0; + offset: -2 -2; + } + rel2 { + relative: 1.0 1.0; + offset: 1 1; + } + } + } + part { + name: "e.swallow.icon"; + type: SWALLOW; + description { + state: "default" 0.0; + align: 0.0 0.5; + aspect: 1.0 1.0; + aspect_preference: VERTICAL; + rel1 { + relative: 0.0 0.0; + offset: 4 4; + } + rel2 { + relative: 0.0 1.0; + offset: 4 -5; + } + } + } + part { + name: "e.text.label"; + type: TEXT; + effect: SOFT_SHADOW; + mouse_events: 0; + scale: 1; + description { + state: "default" 0.0; + min: 16 16; + rel1 { + to_x: "e.swallow.icon"; + relative: 1.0 0.0; + offset: 4 4; + } + rel2 { + relative: 1.0 1.0; + offset: -5 -5; + } + color_class: "ilist_item_header_odd"; + text { + font: "Sans:style=Bold"; + size: 16; + min: 1 1; + align: 0.0 0.5; + text_class: "ilist_item"; + } + } + } + part { + name: "fg1"; + mouse_events: 0; + description { + state: "default" 0.0; + visible: 0; + color: 255 255 255 0; + rel1.to: "bg"; + rel2.relative: 1.0 0.5; + rel2.to: "bg"; + image { + normal: "bt_sm_hilight.png"; + border: 6 6 6 0; + } + } + description { + state: "selected" 0.0; + inherit: "default" 0.0; + visible: 1; + color: 255 255 255 255; + } + } + part { + name: "fg2"; + mouse_events: 0; + description { + state: "default" 0.0; + visible: 0; + color: 255 255 255 0; + rel1.to: "bg"; + rel2.to: "bg"; + image { + normal: "bt_sm_shine.png"; + border: 6 6 6 0; + } + } + description { + state: "selected" 0.0; + inherit: "default" 0.0; + visible: 1; + color: 255 255 255 255; + } + } + part { + name: "event"; + type: RECT; + description { + state: "default" 0.0; + color: 0 0 0 0; + } + } + } + programs { + program { + name: "go_active"; + signal: "e,state,selected"; + source: "e"; + action: STATE_SET "selected" 0.0; + target: "bg"; + target: "fg1"; + target: "fg2"; + target: "e.text.label"; + } + program { + name: "go_passive"; + signal: "e,state,unselected"; + source: "e"; + action: STATE_SET "default" 0.0; + target: "bg"; + target: "fg1"; + target: "fg2"; + target: "e.text.label"; + transition: LINEAR 0.1; + } + } + } + group { + name: "e/widgets/ilist/toggle_end"; + images { + image: "icon_active.png" COMP; + } + parts { + part { + name: "icon"; + type: IMAGE; + description { + state: "default" 0.0; + color: 255 255 255 0; + visible: 0; + align: 1.0 0.5; + aspect: 1.0 1.0; + aspect_preference: VERTICAL; + rel1 { + relative: 0.0 0.0; + offset: 4 4; + } + rel2 { + relative: 0.0 1.0; + offset: 4 -5; + } + image.normal: "icon_active.png"; + } + description { + state: "visible" 0.0; + inherit: "default" 0.0; + color: 255 255 255 255; + visible: 1; + } + } + } + programs { + program { + signal: "e,state,checked"; + source: "e"; + action: STATE_SET "visible" 0.0; + target: "icon"; + transition: LINEAR 0.1; + } + program { + signal: "e,state,unchecked"; + source: "e"; + action: STATE_SET "default" 0.0; + target: "icon"; + transition: LINEAR 0.1; + } + } + } + /* Used to display RGB/HSV values via sliders + in Wallpaper Gradient Dialog */ + group { + name: "e/widgets/cslider"; + images.image: "inset_sunk.png" COMP; + parts { + part { + name: "content_clip"; + type: RECT; + mouse_events: 0; + description { + state: "default" 0.0; + rel1.to: "e.swallow.content"; + rel2.to: "e.swallow.content"; + color: 255 255 255 255; + } + } + part { + name: "e.swallow.content"; + type: SWALLOW; + clip_to: "content_clip"; + description { + state: "default" 0.0; + min: 50 20; + rel1.offset: 4 4; + rel2.offset: -5 -5; + } + description { + state: "vertical" 0.0; + inherit: "default" 0.0; + min: 20 50; + } + } + part { + name: "border"; + mouse_events: 1; + description { + state: "default" 0.0; + rel1 { + to: "e.swallow.content"; + offset: -1 -1; + } + rel2 { + to: "e.swallow.content"; + offset: 0 0; + } + image { + normal: "inset_sunk.png"; + border: 7 7 7 7; + middle: 0; + } + fill.smooth : 0; + } + } + part { + name: "e.dragable.cursor"; + type: RECT; + clip_to: "content_clip"; + dragable { + confine: "e.swallow.content"; + x: 1 1 0; + y: -1 1 0; + } + description { + state: "default" 0.0; + min: 1 24; + max: 1 9999; + fixed: 1 1; + rel1 { + to: "e.swallow.content"; + relative: 0.5 0.0; + offset: 0 0; + } + rel2 { + to: "e.swallow.content"; + relative: 0.5 1.0; + offset: 0 -1; + } + color: 255 255 255 150; + } + description { + state: "vertical" 0.0; + min: 24 1; + max: 9999 1; + fixed: 1 1; + rel1 { + to: "e.swallow.content"; + relative: 0.0 0.5 ; + offset: 0 0; + } + rel2 { + to: "e.swallow.content"; + relative: 1.0 0.5; + offset: -1 0; + } + color: 255 255 255 150; + } + } + } + programs { + program { + name: "go_vertical"; + signal: "e,state,direction,v"; + source: "e"; + action: STATE_SET "vertical" 0.0; + target: "e.dragable.cursor"; + target: "e.swallow.content"; + } + } + } + /* e/widgets/slider* is used in the Virtual Desktops Config dialog */ + group { + name: "e/widgets/slider_vertical"; + images { + image: "slider.png" COMP; + image: "slider_clicked.png" COMP; + image: "sb_runnerv.png" COMP; + image: "inset_sunk.png" COMP; + } + parts { + part { + name: "base"; + type: RECT; + mouse_events: 1; + description { + state: "default" 0.0; + color: 0 0 0 0; + min: 22 0; + rel1.offset: 2 2; + rel2.offset: -3 -3; + } + description { + state: "active" 0.0; + inherit: "default" 0.0; + rel2 { + to_y: "label"; + relative: 1.0 0.0; + offset: -3 -1; + } + } + } + part { + name: "runner"; + mouse_events: 0; + clip_to: "clip"; + description { + state: "default" 0.0; + max: 3 99999; + rel1.to: "base"; + rel2.to: "base"; + image { + normal: "sb_runnerv.png"; + border: 0 0 4 4; + } + fill.smooth: 0; + } + } + part { + name: "label_base"; + clip_to: "clip"; + type: RECT; + description { + state: "default" 0.0; + color: 255 255 255 0; + visible: 0; + rel1.to: "label"; + rel1.offset: 1 1; + rel2.to: "label"; + rel2.offset: -2 -2; + } + description { + state: "active" 0.0; + inherit: "default" 0.0; + visible: 1; + } + } + part { + name: "label"; + mouse_events: 0; + clip_to: "clip"; + description { + state: "default" 0.0; + visible: 0; + } + description { + state: "active" 0.0; + rel1 { + to: "e.text.label"; + offset: -4 -2; + } + rel2 { + to: "e.text.label"; + offset: 3 1; + } + } + } + part { + name: "e.text.label"; + type: TEXT; + mouse_events: 0; + clip_to: "clip"; + scale: 1; + description { + state: "default" 0.0; + visible: 0; + } + description { + state: "active" 0.0; + align: 0.5 1.0; + fixed: 1 1; + rel1 { + relative: 0.0 1.0; + offset: 7 -8; + } + rel2 { + relative: 1.0 1.0; + offset: -8 -8; + } + color_class: "slider_text"; + text { + text: "0.0"; + font: "Sans"; + size: 10; + min: 1 1; + align: 0.5 0.5; + text_class: "slider"; + } + } + } + part { + name: "sld_p1"; + type: RECT; + mouse_events: 1; + description { + state: "default" 0.0; + color: 0 0 0 0; + rel2 { + relative: 1.0 0.0; + to: "e.dragable.slider"; + } + } + } + part { + name: "sld_p2"; + type: RECT; + mouse_events: 1; + description { + state: "default" 0.0; + color: 0 0 0 0; + rel1 { + relative: 0.0 1.0; + to: "e.dragable.slider"; + } + } + } + part { + name: "e.swallow.bar"; + type: SWALLOW; + description { state: "default" 0.0; + rel1 { + to_x: "e.dragable.slider"; + to_y: "base"; + offset: 0 5; + } + rel2 { + to_x: "e.dragable.slider"; + to_y: "base"; + offset: -1 -6; + } + } + } + part { + name: "e.dragable.slider"; + type: RECT; + mouse_events: 1; + scale: 1; + dragable { + x: 0 0 0; + y: -1 1 0; + confine: "base"; + } + description { + state: "default" 0.0; + min: 11 11; + fixed: 1 1; + rel1 { + relative: 0.5 0.5; + offset: -1 0; + to: "base"; + } + rel2 { + relative: 0.5 0.5; + offset: -1 -1; + to: "base"; + } + color: 0 0 0 0; + } + } + part { + name: "button"; + mouse_events: 0; + scale: 1; + description { + state: "default" 0.0; + min: 22 22; + fixed: 1 1; + rel1.to: "e.dragable.slider"; + rel2.to: "e.dragable.slider"; + image.normal: "slider.png"; + } + description { + state: "clicked" 0.0; + inherit: "default" 0.0; + image.normal: "slider_clicked.png"; + } + } + part { + name: "clip"; + type: RECT; + description { + state: "default" 0.0; + color: 255 255 255 255; + } + description { + state: "disabled" 0.0; + inherit: "default" 0.0; + color: 255 255 255 128; + } + } + part { + name: "event"; + type: RECT; + mouse_events: 1; + description { + state: "default" 0.0; + visible: 0; + color: 0 0 0 0; + } + description { + state: "disabled" 0.0; + inherit: "default" 0.0; + visible: 1; + } + } + } + programs { + program { + name: "sld_p1_down"; + signal: "mouse,down,1"; + source: "sld_p1"; + action: DRAG_VAL_PAGE 0.0 -1.0; + target: "e.dragable.slider"; + } + program { + name: "sld_p2_down"; + signal: "mouse,down,1"; + source: "sld_p2"; + action: DRAG_VAL_PAGE 0.0 1.0; + target: "e.dragable.slider"; + } + program { + name: "button_down"; + signal: "mouse,down,1"; + source: "e.dragable.slider"; + action: STATE_SET "clicked" 0.0; + target: "button"; + } + program { + name: "button_up"; + signal: "mouse,up,1"; + source: "e.dragable.slider"; + action: STATE_SET "default" 0.0; + target: "button"; + } + program { + name: "show_label"; + signal: "e,action,show,label"; + source: "e"; + action: STATE_SET "active" 0.0; + target: "base"; + target: "label"; + target: "label_base"; + target: "e.text.label"; + } + program { + name: "hide_label"; + signal: "e,action,hide,label"; + source: "e"; + action: STATE_SET "default" 0.0; + target: "base"; + target: "label"; + target: "label_base"; + target: "e.text.label"; + } + program { + name: "disable"; + signal: "e,state,disabled"; + source: "e"; + action: STATE_SET "disabled" 0.0; + target: "clip"; + target: "event"; + } + program { + name: "enable"; + signal: "e,state,enabled"; + source: "e"; + action: STATE_SET "default" 0.0; + target: "clip"; + target: "event"; + } + } + } + group { + name: "e/widgets/slider_horizontal"; + images { + image: "slider.png" COMP; + image: "slider_clicked.png" COMP; + image: "sb_runnerh.png" COMP; + image: "inset_sunk.png" COMP; + } + parts { + part { + name: "base"; + type: RECT; + mouse_events: 1; + description { + state: "default" 0.0; + color: 0 0 0 0; + min: 0 22; + rel1.offset: 2 2; + rel2.offset: -3 -3; + } + description { + state: "active" 0.0; + inherit: "default" 0.0; + rel2 { + to_x: "label"; + relative: 0.0 1.0; + offset: -1 -3; + } + } + } + part { + name: "runner"; + mouse_events: 0; + clip_to: "clip"; + description { + state: "default" 0.0; + max: 99999 3; + rel1.to: "base"; + rel2.to: "base"; + image { + normal: "sb_runnerh.png"; + border: 4 4 0 0; + } + fill.smooth: 0; + } + } + part { + name: "label_base"; + clip_to: "clip"; + type: RECT; + description { + state: "default" 0.0; + color: 255 255 255 0; + visible: 0; + rel1.to: "label"; + rel1.offset: 1 1; + rel2.to: "label"; + rel2.offset: -2 -2; + } + description { + state: "active" 0.0; + inherit: "default" 0.0; + visible: 1; + } + } + part { + name: "label"; + mouse_events: 0; + clip_to: "clip"; + description { + state: "default" 0.0; + visible: 0; + } + description { + state: "active" 0.0; + min: 20 0; + rel1 { + to: "e.text.label"; + offset: -4 -2; + } + rel2 { + to: "e.text.label"; + offset: 2 1; + } + } + } + part { + name: "e.text.label"; + type: TEXT; + mouse_events: 0; + clip_to: "clip"; + scale: 1; + description { + state: "default" 0.0; + visible: 0; + } + description { + state: "active" 0.0; + align: 1.0 0.5; + fixed: 1 0; + rel1 { + relative: 1.0 0.0; + offset: -8 7; + } + rel2 { + relative: 1.0 1.0; + offset: -8 -8; + } + color_class: "slider_text"; + text { + text: "0.0"; + font: "Sans"; + size: 10; + min: 1 1; + align: 0.5 0.5; + text_class: "slider"; + } + } + } + part { + name: "sld_p1"; + type: RECT; + mouse_events: 1; + description { + state: "default" 0.0; + color: 0 0 0 0; + rel2 { + relative: 0.0 1.0; + to: "e.dragable.slider"; + } + } + } + part { + name: "sld_p2"; + type: RECT; + mouse_events: 1; + description { + state: "default" 0.0; + color: 0 0 0 0; + rel1 { + relative: 1.0 0.0; + to: "e.dragable.slider"; + } + } + } + part { + name: "e.swallow.bar"; + type: SWALLOW; + description { state: "default" 0.0; + rel1 { + to_x: "base"; + to_y: "e.dragable.slider"; + offset: 5 0; + } + rel2 { + to_x: "base"; + to_y: "e.dragable.slider"; + offset: -6 -1; + } + } + } + part { + name: "e.dragable.slider"; + type: RECT; + mouse_events: 1; + scale: 1; + dragable { + x: 1 1 0; + y: 0 0 0; + confine: "base"; + } + description { + state: "default" 0.0; + min: 11 11; + fixed: 1 1; + rel1 { + relative: 0.5 0.5; + to: "base"; + } + rel2 { + relative: 0.5 0.5; + offset: 0 0; + to: "base"; + } + color: 0 0 0 0; + } + } + part { + name: "slider"; + mouse_events: 0; + clip_to: "clip"; + scale: 1; + description { + state: "default" 0.0; + min: 22 22; + fixed: 1 1; + rel1.to: "e.dragable.slider"; + rel2.to: "e.dragable.slider"; + image.normal: "slider.png"; + } + description { + state: "clicked" 0.0; + inherit: "default" 0.0; + image.normal: "slider_clicked.png"; + } + } + part { + name: "clip"; + type: RECT; + description { + state: "default" 0.0; + } + description { + state: "disabled" 0.0; + inherit: "default" 0.0; + color: 255 255 255 128; + } + } + part { + name: "event"; + type: RECT; + mouse_events: 1; + description { + state: "default" 0.0; + visible: 0; + color: 0 0 0 0; + } + description { + state: "disabled" 0.0; + inherit: "default" 0.0; + visible: 1; + } + } + } + programs { + program { + name: "sld_p1_down"; + signal: "mouse,down,1"; + source: "sld_p1"; + action: DRAG_VAL_PAGE -1.0 0.0; + target: "e.dragable.slider"; + } + program { + name: "sld_p2_down"; + signal: "mouse,down,1"; + source: "sld_p2"; + action: DRAG_VAL_PAGE 1.0 0.0; + target: "e.dragable.slider"; + } + program { + name: "sld_down"; + signal: "mouse,down,1"; + source: "e.dragable.slider"; + action: STATE_SET "clicked" 0.0; + target: "slider"; + } + program { + name: "sld_up"; + signal: "mouse,up,1"; + source: "e.dragable.slider"; + action: STATE_SET "default" 0.0; + target: "slider"; + } + program { + name: "show_label"; + signal: "e,action,show,label"; + source: "e"; + action: STATE_SET "active" 0.0; + target: "base"; + target: "label"; + target: "label_base"; + target: "e.text.label"; + } + program { + name: "hide_label"; + signal: "e,action,hide,label"; + source: "e"; + action: STATE_SET "default" 0.0; + target: "base"; + target: "label"; + target: "label_base"; + target: "e.text.label"; + } + program { + name: "disable"; + signal: "e,state,disabled"; + source: "e"; + action: STATE_SET "disabled" 0.0; + target: "clip"; + target: "event"; + } + program { + name: "enable"; + signal: "e,state,enabled"; + source: "e"; + action: STATE_SET "default" 0.0; + target: "clip"; + target: "event"; + } + } + } + /* e/widgets/frame is used in the Config Dialog + to outline the content */ + group { + name: "e/widgets/frame"; + images { + image: "frame_1.png" COMP; + image: "frame_2.png" COMP; + image: "dia_grad.png" COMP; + } + parts { + part { + name: "base0"; + mouse_events: 0; + description { + state: "default" 0.0; + color_class: "frame_base"; + image.normal: "dia_grad.png"; + rel1.to: "over"; + rel2.to: "over"; + fill { + smooth: 0; + size { + relative: 0.0 1.0; + offset: 64 0; + } + } + } + } + part { + name: "base"; + mouse_events: 0; + description { + state: "default" 0.0; + image { + normal: "frame_2.png"; + border: 5 5 32 26; + middle: 0; + } + fill.smooth : 0; + } + } + part { + name: "e.swallow.content"; + type: SWALLOW; + description { + state: "default" 0.0; + rel1 { + to_y: "e.text.label"; + relative: 0.0 1.0; + offset: 8 2; + } + rel2.offset: -9 -9; + } + } + part { + name: "e.text.label"; + type: TEXT; + mouse_events: 0; + scale: 1; + description { + state: "default" 0.0; + align: 0.0 0.0; + fixed: 0 1; + rel1 { + relative: 0.0 0.0; + offset: 6 6; + } + rel2 { + relative: 1.0 0.0; + offset: -7 6; + } + color: 0 0 0 64; + text { + font: "Sans:style=Bold"; + size: 10; + min: 1 1; + max: 1 1; + align: 0.0 0.0; + text_class: "frame"; + } + } + } + part { + name: "over"; + mouse_events: 0; + description { + state: "default" 0.0; + rel1.offset: 4 4; + rel2.offset: -5 -5; + image { + normal: "frame_1.png"; + border: 2 2 28 22; + middle: 0; + } + fill.smooth : 0; + } + } + } + } group { name: "e/widgets/label"; parts { @@ -1214,7 +12613,7 @@ collections { /* begin the collection of edje groups that are in this file */ state: "default" 0.0; rel1.offset: 2 2; rel2.offset: -3 -3; - color: 0 0 0 255; + color_class: "label_text"; text { font: "Sans"; size: 10; @@ -1226,7 +12625,7 @@ collections { /* begin the collection of edje groups that are in this file */ description { state: "disabled" 0.0; inherit: "default" 0.0; - color: 0 0 0 128; + color_class: "label_text_disabled"; } } } @@ -1247,16 +12646,1278 @@ collections { /* begin the collection of edje groups that are in this file */ } } } - - group { name: "e/widgets/slidesel"; + + /* e/widgets/textblock is used in the description + of modules in Module Config dialog */ + group { + name: "e/widgets/textblock"; + styles { + style { + name: "textblock_style"; + base: "font=Sans font_size=10 align=left color=#000 style=shadow shadow_color=#ffffff80 wrap=word"; + tag: "title" "+ font=Sans:style=Bold font_size=12 style=soft_shadow color=#fff shadow_color=#00000021"; + tag: "hilight" "+ font=Sans:style=Bold style=glow color=#fff glow2_color=#333333be glow_color=#0000005a"; + tag: "urgent" "+ font=Sans:style=Bold style=glow color=#fff glow2_color=#333 glow_color=#b01010"; + tag: "b" "+ font=Sans:style=Bold"; + tag: "br" "\n"; + } + } + parts { + part { + name: "e.textblock.text"; + type: TEXTBLOCK; + mouse_events: 0; + scale: 1; + description { + state: "default" 0.0; + rel1.offset: 4 4; + rel2.offset: -5 -5; + text { + style: "textblock_style"; + min: 1 1; + } + } + } + } + } + +///////////////////////////////////////////////////////////////////////////// +/*** GADMAN ***/ + + group { + name: "e/gadman/popup"; + images.image: "base_bg.png" COMP; + parts { + part { + name: "base"; + mouse_events: 0; + description { + state: "default" 0.0; + image { + normal: "base_bg.png"; + border: 2 2 2 2; + } + fill.smooth: 0; + } + } + part { + name: "e.swallow.content"; + type: SWALLOW; + description { + state: "default" 0.0; + rel1.offset: 3 3; + rel2.offset: -4 -4; + } + } + } + } + group { + name: "e/gadman/full_bg"; + parts { + part { + name: "bg"; + type: RECT; + mouse_events: 0; + description { + state: "default" 0.0; + color: 0 0 0 0; + } + description { + state: "visible" 0.0; + color: 0 0 0 128; + } + } + part { + name: "custom_bg"; + type: RECT; + description { + state: "default" 0.0; + color: 255 255 255 0; + } + description { + state: "visible" 0.0; + color: 255 255 255 200; + } + } + part { + name: "e.swallow.bg"; + type: SWALLOW; + clip_to: "custom_bg"; + description { + state: "default" 0.0; + } + } + part { + name: "grabber"; + type: RECT; + mouse_events: 1; + repeat_events: 1; + description { + state: "default" 0.0; + color: 0 0 0 0; + } + } + } + programs { + program { + name: "show"; + signal: "e,state,visibility,show"; + source: "e"; + action: STATE_SET "visible" 0.0; + transition: LINEAR 0.4; + target: "bg"; + } + program { + name: "show_now"; + signal: "e,state,visibility,show,now"; + source: "e"; + action: STATE_SET "visible" 0.0; + transition: LINEAR 0.0; + target: "bg"; + } + program { + name: "hide"; + signal: "e,state,visibility,hide"; + source: "e"; + action: STATE_SET "default" 0.0; + transition: LINEAR 0.4; + target: "bg"; + after: "hide_stop"; + } + program { + name: "hide_now"; + signal: "e,state,visibility,hide,now"; + source: "e"; + action: STATE_SET "default" 0.0; + transition: LINEAR 0.0; + target: "bg"; + after: "hide_stop"; + } + program { + name: "show_custom"; + signal: "e,state,visibility,show,custom"; + source: "e"; + action: STATE_SET "visible" 0.0; + transition: LINEAR 0.4; + target: "custom_bg"; + } + program { + name: "show_custom_now"; + signal: "e,state,visibility,show,custom,now"; + source: "e"; + action: STATE_SET "visible" 0.0; + transition: LINEAR 0.0; + target: "custom_bg"; + } + program { + name: "hide_custom"; + signal: "e,state,visibility,hide,custom"; + source: "e"; + action: STATE_SET "default" 0.0; + transition: LINEAR 0.4; + target: "custom_bg"; + after: "hide_stop"; + } + program { + name: "hide_custom_now"; + signal: "e,state,visibility,hide,custom,now"; + source: "e"; + action: STATE_SET "default" 0.0; + transition: LINEAR 0.0; + target: "custom_bg"; + after: "hide_stop"; + } + program { + name: "hide_stop"; + action: SIGNAL_EMIT "e,action,hide,stop" ""; + } + } + } + group { + name: "e/gadman/frame"; + images.image: "inset_raised.png" COMP; + parts { + part { + name: "bg_clip"; + type: RECT; + mouse_events: 0; + description { + state: "default" 0.0; + rel1.to: "overlay"; + rel2.to: "overlay"; + color: 255 255 255 255; + } + description { + state: "plain" 0.0; + rel1.relative: 0.0 0.0; + rel2.relative: 0.0 0.0; + color: 255 255 255 255; + } + } + part { + name: "items_clip"; + type: RECT; + mouse_events: 0; + description { + state: "default" 0.0; + rel1 { + to: "overlay"; + offset: 4 4; + } + rel2 { + to: "overlay"; + offset: -5 -5; + } + color: 255 255 255 255; + } + description { + state: "hidden" 0.0; + inherit: "default" 0.0; + color: 255 255 255 0; + } + } + part { + name: "e.swallow.content"; + type: SWALLOW; + clip_to: "items_clip"; + description { + state: "default" 0.0; + rel1.offset: 4 4; + rel2.offset: -5 -5; + color: 255 255 255 255; + } + description { + state: "hidden" 0.0; + rel1.relative: 0.5 0.5; + rel2.relative: 0.5 0.5; + color: 255 255 255 0; + } + } + part { + name: "overlay"; + mouse_events: 0; + clip_to: "bg_clip"; + description { + state: "default" 0.0; + image { + normal: "inset_raised.png"; + border: 7 7 7 7; + middle: 0; + } + fill.smooth: 0; + color: 255 255 255 255; + } + description { + state: "hidden" 0.0; + inherit: "default" 0.0; + rel1.relative: 0.5 0.5; + rel2.relative: 0.5 0.5; + color: 255 255 255 0; + } + } + } + programs { + program { + name: "inset"; + signal: "e,state,visibility,inset"; + source: "e"; + action: STATE_SET "default" 0.0; + target: "bg_clip"; + } + program { + name: "plain"; + signal: "e,state,visibility,plain"; + source: "e"; + action: STATE_SET "plain" 0.0; + target: "bg_clip"; + } + program { + name: "hide"; + signal: "e,state,visibility,hide"; + source: "e"; + action: STATE_SET "hidden" 0.0; + transition: ACCELERATE 0.4; + target: "items_clip"; + target: "overlay"; + target: "e.swallow.content"; + } + program { + name: "hide_now"; + signal: "e,state,visibility,hide,now"; + source: "e"; + action: STATE_SET "hidden" 0.0; + transition: LINEAR 0.0; + target: "items_clip"; + target: "overlay"; + target: "e.swallow.content"; + } + program { + name: "show"; + signal: "e,state,visibility,show"; + source: "e"; + action: STATE_SET "default" 0.0; + transition: DECELERATE 0.4; + target: "items_clip"; + target: "overlay"; + target: "e.swallow.content"; + } + program { + name: "show_now"; + signal: "e,state,visibility,show,now"; + source: "e"; + action: STATE_SET "default" 0.0; + transition: LINEAR 0.0; + target: "items_clip"; + target: "overlay"; + target: "e.swallow.content"; + } + } + } + group { + name: "e/gadman/control"; + images { + image: "gadman_frame.png" COMP; + image: "gadman_border.png" COMP; + image: "gadman_top.png" COMP; + image: "gadman_bottom.png" COMP; + image: "gadman_left.png" COMP; + image: "gadman_right.png" COMP; + } + parts { + part { + name: "hclip"; + mouse_events: 0; + type: RECT; + description { + state: "default" 0.0; + visible: 1; + rel1.offset: -85 -85; + rel2.offset: 74 74; + } + description { + state: "disabled" 0.0; + inherit: "default" 0.0; + visible : 0; + } + } + part { + name: "vclip"; + mouse_events: 0; + type: RECT; + description { + state: "default" 0.0; + visible: 1; + rel1.offset: -85 -85; + rel2.offset: 84 84; + } + description { + state: "disabled" 0.0; + inherit: "default" 0.0; + visible : 0; + } + } + part { + name: "overlay"; + mouse_events: 1; + description { + state: "default" 0.0; + rel1 { + to: "border"; + offset: 4 4; + } + rel2 { + to: "border"; + offset: -5 -5; + } + image.normal: "gadman_frame.png"; + fill.size.relative: 0 0; + fill.size.offset: 24 24; + } + } + part { + name: "left_arrow1"; + description { + state: "default" 0.0; + aspect: 1.0 1.0; + max: 12 24; + rel1 { + relative: 0.0 0.5; + offset: 3 0; + } + rel2 { + relative: 0.0 0.5; + offset: 3 -1; + } + image.normal: "gadman_left.png"; + } + description { + state: "1" 0.0; + inherit: "default" 0.0; + rel1 { + relative: 0.0 0.5; + offset: -32 -12; + } + rel2 { + relative: 0.0 0.5; + offset: -18 11; + } + } + description { + state: "2" 0.0; + inherit: "default" 0.0; + rel1 { + relative: 0.0 0.5; + offset: -24 -6; + } + rel2 { + relative: 0.0 0.5; + offset: -10 5; + } + } + } + part { + name: "left_arrow2"; + description { + state: "default" 0.0; + aspect: 1.0 1.0; + max: 12 24; + rel1 { + relative: 0.0 0.5; + offset: 3 0; + } + rel2 { + relative: 0.0 0.5; + offset: 3 -1; + } + image.normal: "gadman_left.png"; + } + description { + state: "1" 0.0; + inherit: "default" 0.0; + rel1 { + relative: 0.0 0.5; + offset: -32 -12; + } + rel2 { + relative: 0.0 0.5; + offset: -18 11; + } + } + description { + state: "2" 0.0; + inherit: "default" 0.0; + rel1 { + relative: 0.0 0.5; + offset: -24 -6; + } + rel2 { + relative: 0.0 0.5; + offset: -10 5; + } + } + } + part { + name: "right_arrow1"; + description { + state: "default" 0.0; + aspect: 1.0 1.0; + max: 12 24; + rel1 { + relative: 1.0 0.5; + offset: -3 0; + } + rel2 { + relative: 1.0 0.5; + offset: -3 -1; + } + image.normal: "gadman_right.png"; + } + description { + state: "1" 0.0; + inherit: "default" 0.0; + rel1 { + relative: 1.0 0.5; + offset: 32 -12; + } + rel2 { + relative: 1.0 0.5; + offset: 18 11; + } + } + description { + state: "2" 0.0; + inherit: "default" 0.0; + rel1 { + relative: 1.0 0.5; + offset: 24 -6; + } + rel2 { + relative: 1.0 0.5; + offset: 10 5; + } + } + } + part { + name: "right_arrow2"; + description { + state: "default" 0.0; + aspect: 1.0 1.0; + max: 12 24; + rel1 { + relative: 1.0 0.5; + offset: -3 0; + } + rel2 { + relative: 1.0 0.5; + offset: -3 -1; + } + image.normal: "gadman_right.png"; + } + description { + state: "1" 0.0; + inherit: "default" 0.0; + rel1 { + relative: 1.0 0.5; + offset: 32 -12; + } + rel2 { + relative: 1.0 0.5; + offset: 18 11; + } + } + description { + state: "2" 0.0; + inherit: "default" 0.0; + rel1 { + relative: 1.0 0.5; + offset: 24 -6; + } + rel2 { + relative: 1.0 0.5; + offset: 10 5; + } + } + } + part { + name: "top_arrow1"; + description { + state: "default" 0.0; + aspect: 1.0 1.0; + max: 24 12; + rel1 { + relative: 0.5 0.0; + offset: 0 3; + } + rel2 { + relative: 0.5 0.0; + offset: -1 3; + } + image.normal: "gadman_top.png"; + } + description { + state: "1" 0.0; + inherit: "default" 0.0; + rel1 { + relative: 0.5 0.0; + offset: -12 -32; + } + rel2 { + relative: 0.5 0.0; + offset: 11 -18; + } + } + description { + state: "2" 0.0; + inherit: "default" 0.0; + rel1 { + relative: 0.5 0.0; + offset: -6 -24; + } + rel2 { + relative: 0.5 0.0; + offset: 5 -9; + } + } + } + part { + name: "top_arrow2"; + description { + state: "default" 0.0; + aspect: 1.0 1.0; + max: 24 12; + rel1 { + relative: 0.5 0.0; + offset: 0 3; + } + rel2 { + relative: 0.5 0.0; + offset: -1 3; + } + image.normal: "gadman_top.png"; + } + description { + state: "1" 0.0; + inherit: "default" 0.0; + rel1 { + relative: 0.5 0.0; + offset: -12 -32; + } + rel2 { + relative: 0.5 0.0; + offset: 11 -18; + } + } + description { + state: "2" 0.0; + inherit: "default" 0.0; + rel1 { + relative: 0.5 0.0; + offset: -6 -24; + } + rel2 { + relative: 0.5 0.0; + offset: 5 -9; + } + } + } + part { + name: "bottom_arrow1"; + description { + state: "default" 0.0; + aspect: 1.0 1.0; + max: 24 12; + rel1 { + relative: 0.5 1.0; + offset: 0 -3; + } + rel2 { + relative: 0.5 1.0; + offset: -1 -3; + } + image.normal: "gadman_bottom.png"; + } + description { + state: "1" 0.0; + inherit: "default" 0.0; + rel1 { + relative: 0.5 1.0; + offset: -12 18; + } + rel2 { + relative: 0.5 1.0; + offset: 11 31; + } + } + description { + state: "2" 0.0; + inherit: "default" 0.0; + rel1 { + relative: 0.5 1.0; + offset: -6 10; + } + rel2 { + relative: 0.5 1.0; + offset: 5 24; + } + } + } + part { + name: "bottom_arrow2"; + description { + state: "default" 0.0; + aspect: 1.0 1.0; + max: 24 12; + rel1 { + relative: 0.5 1.0; + offset: 0 -3; + } + rel2 { + relative: 0.5 1.0; + offset: -1 -3; + } + image.normal: "gadman_bottom.png"; + } + description { + state: "1" 0.0; + inherit: "default" 0.0; + rel1 { + relative: 0.5 1.0; + offset: -12 18; + } + rel2 { + relative: 0.5 1.0; + offset: 11 31; + } + } + description { + state: "2" 0.0; + inherit: "default" 0.0; + rel1 { + relative: 0.5 1.0; + offset: -6 10; + } + rel2 { + relative: 0.5 1.0; + offset: 5 24; + } + } + } + part { + name: "v1"; + mouse_events: 1; + clip_to: "vclip"; + description { + state: "default" 0.0; + rel2.relative: 1.0 0.0; + rel2.offset: -1 9; + } + } + part { + name: "v2"; + mouse_events: 1; + clip_to: "vclip"; + description { + state: "default" 0.0; + rel1.relative: 0.0 1.0; + rel1.offset: 0 -8; + } + } + part { + name: "h1"; + mouse_events: 1; + clip_to: "hclip"; + description { + state: "default" 0.0; + rel2.relative: 0.0 1.0; + rel2.offset: 9 -1; + } + } + part { + name: "h2"; + mouse_events: 1; + clip_to: "hclip"; + description { + state: "default" 0.0; + rel1.relative: 1.0 0.0; + rel1.offset: -8 0; + } + } + part { + name: "border"; + mouse_events: 1; + repeat_events: 1; + description { + state: "default" 0.0; + image { + normal: "gadman_border.png"; + border: 10 10 10 10; + middle: 0; + } + fill.smooth: 0; + } + } + } + programs { + program { + name: "api_hsize_on"; + signal: "e,state,hsize,on"; + source: "e"; + action: STATE_SET "default" 0.0; + target: "hclip"; + } + program { + name: "api_hsize_off"; + signal: "e,state,hsize,off"; + source: "e"; + action: STATE_SET "disabled" 0.0; + target: "hclip"; + } + program { + name: "api_vsize_on"; + signal: "e,state,vsize,on"; + source: "e"; + action: STATE_SET "default" 0.0; + target: "vclip"; + } + program { + name: "api_vsize_off"; + signal: "e,state,vsize,off"; + source: "e"; + action: STATE_SET "disabled" 0.0; + target: "vclip"; + } + /* + program { + name: "api_move_on"; + signal: "e,state,move,on"; + source: "e"; + } + program { + name: "api_move_off"; + signal: "e,state,move,off"; + source: "e"; + } + program { + name: "api_active"; + signal: "e,state,focused"; + source: "e"; + } + program { + name: "api_inactive"; + signal: "e,state,unfocused"; + source: "e"; + } + */ + // MOVE PROGRAMS + program { + name: "mv_down"; + signal: "mouse,down,1"; + source: "overlay"; + action: SIGNAL_EMIT "e,action,move,start" ""; + } + program { + name: "mv_up"; + signal: "mouse,up,1"; + source: "overlay"; + action: SIGNAL_EMIT "e,action,move,stop" ""; + } + program { + name: "mv_move"; + signal: "mouse,move"; + source: "overlay"; + action: SIGNAL_EMIT "e,action,move,go" ""; + } + program { + name: "h1_down1"; + signal: "mouse,down,1"; + source: "h1"; + action: STATE_SET "clicked" 0.0; + target: "h1"; + } + program { + name: "h1_up1"; + signal: "mouse,up,1"; + source: "h1"; + action: STATE_SET "default" 0.0; + target: "h1"; + } + program { + name: "h1_down2"; + signal: "mouse,down,1"; + source: "h1"; + action: SIGNAL_EMIT "e,action,resize,left,start" ""; + } + program { + name: "h1_up2"; + signal: "mouse,up,1"; + source: "h1"; + action: SIGNAL_EMIT "e,action,resize,left,stop" ""; + } + program { + name: "h1_move"; + signal: "mouse,move"; + source: "h1"; + action: SIGNAL_EMIT "e,action,resize,left,go" ""; + } + program { + name: "h2_down1"; + signal: "mouse,down,1"; + source: "h2"; + action: STATE_SET "clicked" 0.0; + target: "h2"; + } + program { + name: "h2_up1"; + signal: "mouse,up,1"; + source: "h2"; + action: STATE_SET "default" 0.0; + target: "h2"; + } + program { + name: "h2_down2"; + signal: "mouse,down,1"; + source: "h2"; + action: SIGNAL_EMIT "e,action,resize,right,start" ""; + } + program { + name: "h2_up2"; + signal: "mouse,up,1"; + source: "h2"; + action: SIGNAL_EMIT "e,action,resize,right,stop" ""; + } + program { + name: "h2_move"; + signal: "mouse,move"; + source: "h2"; + action: SIGNAL_EMIT "e,action,resize,right,go" ""; + } + program { + name: "v1_down1"; + signal: "mouse,down,1"; + source: "v1"; + action: STATE_SET "clicked" 0.0; + target: "v1"; + } + program { + name: "v1_up1"; + signal: "mouse,up,1"; + source: "v1"; + action: STATE_SET "default" 0.0; + target: "v1"; + } + program { + name: "v1_down2"; + signal: "mouse,down,1"; + source: "v1"; + action: SIGNAL_EMIT "e,action,resize,up,start" ""; + } + program { + name: "v1_up2"; + signal: "mouse,up,1"; + source: "v1"; + action: SIGNAL_EMIT "e,action,resize,up,stop" ""; + } + program { + name: "v1_move"; + signal: "mouse,move"; + source: "v1"; + action: SIGNAL_EMIT "e,action,resize,up,go" ""; + } + program { + name: "v2_down1"; + signal: "mouse,down,1"; + source: "v2"; + action: STATE_SET "clicked" 0.0; + target: "v2"; + } + program { + name: "v2_up1"; + signal: "mouse,up,1"; + source: "v2"; + action: STATE_SET "default" 0.0; + target: "v2"; + } + program { + name: "v2_down2"; + signal: "mouse,down,1"; + source: "v2"; + action: SIGNAL_EMIT "e,action,resize,down,start" ""; + } + program { + name: "v2_up2"; + signal: "mouse,up,1"; + source: "v2"; + action: SIGNAL_EMIT "e,action,resize,down,stop" ""; + } + program { + name: "v2_move"; + signal: "mouse,move"; + source: "v2"; + action: SIGNAL_EMIT "e,action,resize,down,go" ""; + } + // LEFT ARROW + program { + name: "start_left1"; + signal: "mouse,in"; + source: "h1"; + after: "left1_1"; + } + program { + name: "start_left2"; + signal: "mouse,in"; + source: "h1"; + in: 0.4 0.0; + after: "left2_1"; + } + program { + name: "left1_1"; + action: STATE_SET "1" 0.0; + target: "left_arrow1"; + transition: LINEAR 0.4; + after: "left1_2"; + } + program { + name: "left1_2"; + action: STATE_SET "2" 0.0; + target: "left_arrow1"; + transition: LINEAR 0.4; + after: "left1_r"; + } + program { + name: "left1_r"; + action: STATE_SET "default" 0.0; + target: "left_arrow1"; + after: "left1_1"; + } + program { + name: "left2_1"; + action: STATE_SET "1" 0.0; + target: "left_arrow2"; + transition: LINEAR 0.4; + after: "left2_2"; + } + program { + name: "left2_2"; + action: STATE_SET "2" 0.0; + target: "left_arrow2"; + transition: LINEAR 0.4; + after: "left2_r"; + } + program { + name: "left2_r"; + action: STATE_SET "default" 0.0; + target: "left_arrow2"; + after: "left2_1"; + } + program { + name: "stop_left1"; + signal: "mouse,out"; + source: "h1"; + action: ACTION_STOP; + target: "left1_1"; + target: "left1_2"; + target: "left1_r"; + target: "left2_1"; + target: "left2_2"; + target: "left2_r"; + target: "start_left2"; + after: "stop_left2"; + } + program { + name: "stop_left2"; + action: STATE_SET "default" 0.0; + target: "left_arrow1"; + target: "left_arrow2"; + } + // RIGHT ARROW + program { + name: "start_right1"; + signal: "mouse,in"; + source: "h2"; + after: "right1_1"; + } + program { + name: "start_right2"; + signal: "mouse,in"; + source: "h2"; + in: 0.4 0.0; + after: "right2_1"; + } + program { + name: "right1_1"; + action: STATE_SET "1" 0.0; + target: "right_arrow1"; + transition: LINEAR 0.4; + after: "right1_2"; + } + program { + name: "right1_2"; + action: STATE_SET "2" 0.0; + target: "right_arrow1"; + transition: LINEAR 0.4; + after: "right1_r"; + } + program { + name: "right1_r"; + action: STATE_SET "default" 0.0; + target: "right_arrow1"; + after: "right1_1"; + } + program { + name: "right2_1"; + action: STATE_SET "1" 0.0; + target: "right_arrow2"; + transition: LINEAR 0.4; + after: "right2_2"; + } + program { + name: "right2_2"; + action: STATE_SET "2" 0.0; + target: "right_arrow2"; + transition: LINEAR 0.4; + after: "right2_r"; + } + program { + name: "right2_r"; + action: STATE_SET "default" 0.0; + target: "right_arrow2"; + after: "right2_1"; + } + program { + name: "stop_right1"; + signal: "mouse,out"; + source: "h2"; + action: ACTION_STOP; + target: "right1_1"; + target: "right1_2"; + target: "right1_r"; + target: "right2_1"; + target: "right2_2"; + target: "right2_r"; + target: "start_right2"; + after: "stop_right2"; + } + program { + name: "stop_right2"; + action: STATE_SET "default" 0.0; + target: "right_arrow1"; + target: "right_arrow2"; + } + // TOP ARROW + program { + name: "start_top1"; + signal: "mouse,in"; + source: "v1"; + after: "top1_1"; + } + program { + name: "start_top2"; + signal: "mouse,in"; + source: "v1"; + in: 0.4 0.0; + after: "top2_1"; + } + program { + name: "top1_1"; + action: STATE_SET "1" 0.0; + target: "top_arrow1"; + transition: LINEAR 0.4; + after: "top1_2"; + } + program { + name: "top1_2"; + action: STATE_SET "2" 0.0; + target: "top_arrow1"; + transition: LINEAR 0.4; + after: "top1_r"; + } + program { + name: "top1_r"; + action: STATE_SET "default" 0.0; + target: "top_arrow1"; + after: "top1_1"; + } + program { + name: "top2_1"; + action: STATE_SET "1" 0.0; + target: "top_arrow2"; + transition: LINEAR 0.4; + after: "top2_2"; + } + program { + name: "top2_2"; + action: STATE_SET "2" 0.0; + target: "top_arrow2"; + transition: LINEAR 0.4; + after: "top2_r"; + } + program { + name: "top2_r"; + action: STATE_SET "default" 0.0; + target: "top_arrow2"; + after: "top2_1"; + } + program { + name: "stop_top1"; + signal: "mouse,out"; + source: "v1"; + action: ACTION_STOP; + target: "top1_1"; + target: "top1_2"; + target: "top1_r"; + target: "top2_1"; + target: "top2_2"; + target: "top2_r"; + target: "start_top2"; + after: "stop_top2"; + } + program { + name: "stop_top2"; + action: STATE_SET "default" 0.0; + target: "top_arrow1"; + target: "top_arrow2"; + } + // BOTTOM ARROW + program { + name: "start_bottom1"; + signal: "mouse,in"; + source: "v2"; + after: "bottom1_1"; + } + program { + name: "start_bottom2"; + signal: "mouse,in"; + source: "v2"; + in: 0.4 0.0; + after: "bottom2_1"; + } + program { + name: "bottom1_1"; + action: STATE_SET "1" 0.0; + target: "bottom_arrow1"; + transition: LINEAR 0.4; + after: "bottom1_2"; + } + program { + name: "bottom1_2"; + action: STATE_SET "2" 0.0; + target: "bottom_arrow1"; + transition: LINEAR 0.4; + after: "bottom1_r"; + } + program { + name: "bottom1_r"; + action: STATE_SET "default" 0.0; + target: "bottom_arrow1"; + after: "bottom1_1"; + } + program { + name: "bottom2_1"; + action: STATE_SET "1" 0.0; + target: "bottom_arrow2"; + transition: LINEAR 0.4; + after: "bottom2_2"; + } + program { + name: "bottom2_2"; + action: STATE_SET "2" 0.0; + target: "bottom_arrow2"; + transition: LINEAR 0.4; + after: "bottom2_r"; + } + program { + name: "bottom2_r"; + action: STATE_SET "default" 0.0; + target: "bottom_arrow2"; + after: "bottom2_1"; + } + program { + name: "stop_bottom1"; + signal: "mouse,out"; + source: "v2"; + action: ACTION_STOP; + target: "bottom1_1"; + target: "bottom1_2"; + target: "bottom1_r"; + target: "bottom2_1"; + target: "bottom2_2"; + target: "bottom2_r"; + target: "start_bottom2"; + after: "stop_bottom2"; + } + program { + name: "stop_bottom2"; + action: STATE_SET "default" 0.0; + target: "bottom_arrow1"; + target: "bottom_arrow2"; + } + } + } + + group { + name: "e/widgets/slidesel"; alias: "e/pointer/enlightenment/default/mono"; - alias: "e/widgets/toolbar"; - alias: "e/widgets/menu/default/submenu_bg"; alias: "e/modules/connman/network"; - alias: "e/modules/ibar/icon"; - alias: "e/modules/ibar/icon_overlay"; - alias: "e/modules/ibar/drop"; - alias: "e/modules/ibar/drop_overlay"; alias: "e/fileman/default/list/drop_between"; alias: "e/fileman/desktop/list/drop_in"; alias: "e/fileman/desktop/list/drop_between"; @@ -1268,24 +13929,6 @@ collections { /* begin the collection of edje groups that are in this file */ alias: "e/sys/suspend"; alias: "e/sys/hibernate"; alias: "e/widgets/gradpreview"; - alias: "e/widgets/toolbar/item"; - alias: "e/widgets/menu/default/background"; - alias: "e/widgets/menu/default/separator"; - alias: "e/widgets/menu/default/item_bg"; - alias: "e/widgets/menu/default/icon"; - alias: "e/widgets/menu/default/label"; - alias: "e/widgets/menu/default/submenu"; - alias: "e/widgets/menu/default/check"; - alias: "e/widgets/menu/default/radio"; - alias: "e/shelf/default/base"; - alias: "e/shelf/default/inset"; - alias: "e/shelf/default/plain"; - alias: "e/shelf/invisible/base"; - alias: "e/shelf/invisible/inset"; - alias: "e/shelf/invisible/plain"; - alias: "e/shelf/alternate/base"; - alias: "e/shelf/alternate/inset"; - alias: "e/shelf/alternate/plain"; alias: "e/modules/connman/main"; alias: "e/modules/conf_edgebindings/selection"; alias: "e/modules/start/main"; @@ -1297,10 +13940,6 @@ collections { /* begin the collection of edje groups that are in this file */ alias: "e/modules/temperature/main"; alias: "e/modules/clock/main"; alias: "e/modules/cpufreq/main"; - alias: "e/modules/ibox/icon"; - alias: "e/modules/ibox/icon_overlay"; - alias: "e/modules/ibox/drop"; - alias: "e/modules/ibox/drop_overlay"; alias: "e/widgets/winlist/main"; alias: "e/widgets/winlist/item"; alias: "e/widgets/exebuf/main"; @@ -1324,23 +13963,10 @@ collections { /* begin the collection of edje groups that are in this file */ alias: "e/fileman/default/list/fixed"; alias: "e/fileman/default/list_odd/fixed"; alias: "e/sys/logout"; - alias: "e/widgets/configure/main"; - alias: "e/widgets/border/default/move"; - alias: "e/widgets/border/default/resize"; - alias: "e/toolbar/default/base"; alias: "e/transpreview/0"; alias: "e/transpreview/1"; alias: "e/transitions/crossfade"; alias: "e/transitions/vswipe"; - alias: "e/widgets/check"; - alias: "e/widgets/check_icon"; - alias: "e/widgets/radio"; - alias: "e/widgets/radio_icon"; - alias: "e/widgets/scrollframe"; - alias: "e/widgets/ilist"; - alias: "e/widgets/ilist_odd"; - alias: "e/widgets/ilist_header"; - alias: "e/widgets/ilist_header_odd"; alias: "e/widgets/entry"; alias: "e/widgets/entry/text"; alias: "e/widgets/entry/cursor"; @@ -1349,18 +13975,9 @@ collections { /* begin the collection of edje groups that are in this file */ alias: "e/widgets/deskpreview/desk"; alias: "e/widgets/color_well"; alias: "e/widgets/spectrum"; - alias: "e/widgets/cslider"; - alias: "e/widgets/slider_vertical"; - alias: "e/widgets/slider_horizontal"; - alias: "e/widgets/frame"; alias: "e/widgets/fontpreview"; - alias: "e/widgets/textblock"; alias: "e/desklock/background"; alias: "e/desklock/login_box"; - alias: "e/gadman/popup"; - alias: "e/gadman/full_bg"; - alias: "e/gadman/frame"; - alias: "e/gadman/control"; alias: "e/wizard/extra"; alias: "e/wizard/main"; alias: "e/widgets/about/main"; @@ -1385,13 +14002,15 @@ collections { /* begin the collection of edje groups that are in this file */ alias: "e/widgets/everything/main"; alias: "e/widgets/everything/item"; parts { - part { name: "base"; - mouse_events: 0; + part { + name: "base"; + mouse_events: 0; type: RECT; - description { state: "default" 0.0; + description { + state: "default" 0.0; color: 0 0 0 0; - } - } + } + } } } } |