aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorCarsten Haitzler <raster@rasterman.com>2004-11-25 03:26:33 +0000
committerCarsten Haitzler <raster@rasterman.com>2004-11-25 03:26:33 +0000
commitf2b45ed47126d12986591cb02a6fcfc5908255fe (patch)
tree804d8188540af5d13facb6610f7562899ff91f03
parentMore raster-speak (diff)
downloadenlightenment-f2b45ed47126d12986591cb02a6fcfc5908255fe.tar.gz
bye bye!
SVN revision: 12246
-rw-r--r--.cvsignore21
-rw-r--r--AUTHORS6
-rw-r--r--COPYING20
-rw-r--r--ChangeLog24
-rw-r--r--INSTALL14
-rw-r--r--Makefile.am31
-rw-r--r--NEWS0
-rw-r--r--README145
-rw-r--r--acconfig.h16
-rw-r--r--acinclude.m4136
-rwxr-xr-xautogen.sh134
-rwxr-xr-xchecker.sh167
-rw-r--r--client/.cvsignore5
-rw-r--r--client/Makefile.am11
-rw-r--r--client/client.c5
-rw-r--r--configure.ac246
-rw-r--r--configure.in242
-rw-r--r--data/backgrounds/default.bg.dbbin950272 -> 0 bytes
-rw-r--r--data/backgrounds/grassy_irish_cliff.bg.dbbin3780608 -> 0 bytes
-rw-r--r--data/backgrounds/ivy_wall_shadowed.bg.dbbin1126400 -> 0 bytes
-rw-r--r--data/backgrounds/ladybug_rock_grass.bg.dbbin700416 -> 0 bytes
-rw-r--r--data/backgrounds/view.bg.dbbin57344 -> 0 bytes
-rw-r--r--data/borders/borderless/selected-0.sticky-0.shaded-0.bits.dbbin12288 -> 0 bytes
-rw-r--r--data/borders/default/selected-0.sticky-0.shaded-0.bits.dbbin364544 -> 0 bytes
-rw-r--r--data/borders/default/selected-1.sticky-0.shaded-0.bits.dbbin425984 -> 0 bytes
-rw-r--r--data/config/behavior/default/actions.dbbin122880 -> 0 bytes
-rw-r--r--data/config/behavior/default/apps_menu.dbbin20480 -> 0 bytes
-rw-r--r--data/config/behavior/default/behavior.dbbin155646 -> 0 bytes
-rw-r--r--data/config/behavior/default/grabs.dbbin12288 -> 0 bytes
-rw-r--r--data/config/behavior/default/settings.dbbin12288 -> 0 bytes
-rw-r--r--data/cursors/Close.dbbin16384 -> 0 bytes
-rw-r--r--data/cursors/Default.dbbin16384 -> 0 bytes
-rw-r--r--data/cursors/Iconify.dbbin16384 -> 0 bytes
-rw-r--r--data/cursors/Max_Size.dbbin16384 -> 0 bytes
-rw-r--r--data/cursors/Menu.dbbin16384 -> 0 bytes
-rw-r--r--data/cursors/Resize.dbbin16384 -> 0 bytes
-rw-r--r--data/cursors/Resize_Horizontal.dbbin16384 -> 0 bytes
-rw-r--r--data/cursors/Resize_Vertical.dbbin16384 -> 0 bytes
-rw-r--r--data/cursors/Title_Bar.dbbin16384 -> 0 bytes
-rw-r--r--data/cursors/View_Icon.dbbin16384 -> 0 bytes
-rw-r--r--data/entries/base.bits.dbbin430080 -> 0 bytes
-rw-r--r--data/entries/cursor.bits.dbbin184320 -> 0 bytes
-rw-r--r--data/entries/selection.bits.dbbin184320 -> 0 bytes
-rw-r--r--data/epplets/changer.bits.dbbin155644 -> 0 bytes
-rw-r--r--data/epplets/clock/README12
-rw-r--r--data/epplets/clock/clock.fe123
-rw-r--r--data/epplets/clock/clock.pngbin6391 -> 0 bytes
-rw-r--r--data/epplets/clock/clock2.fe122
-rw-r--r--data/epplets/clock/plank.ttfbin48165 -> 0 bytes
-rw-r--r--data/epplets/deskswitcher.fe73
-rw-r--r--data/epplets/deskswitcher/deskswitcher.fe122
-rw-r--r--data/epplets/deskswitcher/desktop.pngbin237 -> 0 bytes
-rw-r--r--data/epplets/epplets.bits.dbbin32767 -> 0 bytes
-rw-r--r--data/epplets/uptime/uptime.fe107
-rw-r--r--data/epplets/uptime/uptime.pngbin1740 -> 0 bytes
-rw-r--r--data/fonts/borzoib.ttfbin26056 -> 0 bytes
-rw-r--r--data/fonts/nationff.ttfbin59140 -> 0 bytes
-rw-r--r--data/guides/display.bits.dbbin253952 -> 0 bytes
-rw-r--r--data/iconbar/iconbar_bottom.bits.dbbin94208 -> 0 bytes
-rw-r--r--data/iconbar/iconbar_left.bits.dbbin172027 -> 0 bytes
-rw-r--r--data/icons/application/default.dbbin49152 -> 0 bytes
-rw-r--r--data/icons/archive/default.dbbin49152 -> 0 bytes
-rw-r--r--data/icons/archive/gnu-zip-unix.dbbin49152 -> 0 bytes
-rw-r--r--data/icons/dir/default.dbbin49152 -> 0 bytes
-rw-r--r--data/icons/dir/ext2.dbbin49152 -> 0 bytes
-rw-r--r--data/icons/dir/trash.dbbin49152 -> 0 bytes
-rw-r--r--data/icons/document/default.dbbin49152 -> 0 bytes
-rw-r--r--data/icons/document/pdf.dbbin49152 -> 0 bytes
-rw-r--r--data/icons/document/postscript.dbbin49152 -> 0 bytes
-rw-r--r--data/icons/document/unknown.dbbin49152 -> 0 bytes
-rw-r--r--data/icons/image/default.dbbin49152 -> 0 bytes
-rw-r--r--data/icons/image/gif.dbbin49152 -> 0 bytes
-rw-r--r--data/icons/image/jpeg.dbbin49152 -> 0 bytes
-rw-r--r--data/icons/image/png.dbbin49152 -> 0 bytes
-rw-r--r--data/icons/image/tiff.dbbin49152 -> 0 bytes
-rw-r--r--data/icons/image/xpm.dbbin49152 -> 0 bytes
-rw-r--r--data/icons/text/default.dbbin49152 -> 0 bytes
-rw-r--r--data/icons/text/plain.dbbin49152 -> 0 bytes
-rw-r--r--data/icons/unknown/default.dbbin49152 -> 0 bytes
-rw-r--r--data/icons/unknown/unknown.dbbin49152 -> 0 bytes
-rw-r--r--data/images/bg.jpgbin179312 -> 0 bytes
-rw-r--r--data/images/e_logo.pngbin16187 -> 0 bytes
-rw-r--r--data/images/hline.pngbin156 -> 0 bytes
-rw-r--r--data/images/ib_title.pngbin348 -> 0 bytes
-rw-r--r--data/images/vline.pngbin159 -> 0 bytes
-rw-r--r--data/images/win_shadow_icon.pngbin557 -> 0 bytes
-rw-r--r--data/layout/desktop.bits.dbbin90112 -> 0 bytes
-rw-r--r--data/layout/view.bits.dbbin40960 -> 0 bytes
-rw-r--r--data/menus/base.bits.dbbin425984 -> 0 bytes
-rw-r--r--data/menus/check-0.bits.dbbin20480 -> 0 bytes
-rw-r--r--data/menus/check-1.bits.dbbin28672 -> 0 bytes
-rw-r--r--data/menus/radio-0.bits.dbbin20480 -> 0 bytes
-rw-r--r--data/menus/radio-1.bits.dbbin28672 -> 0 bytes
-rw-r--r--data/menus/selected-0.submenu-0.bits.dbbin12288 -> 0 bytes
-rw-r--r--data/menus/selected-0.submenu-1.bits.dbbin20480 -> 0 bytes
-rw-r--r--data/menus/selected-1.submenu-0.bits.dbbin155648 -> 0 bytes
-rw-r--r--data/menus/selected-1.submenu-1.bits.dbbin155648 -> 0 bytes
-rw-r--r--data/menus/separator.bits.dbbin20480 -> 0 bytes
-rw-r--r--data/orig/arrow.pngbin252 -> 0 bytes
-rw-r--r--data/orig/b1.pngbin1372 -> 0 bytes
-rw-r--r--data/orig/b2.pngbin123 -> 0 bytes
-rw-r--r--data/orig/b3.pngbin758 -> 0 bytes
-rw-r--r--data/orig/b4.pngbin118 -> 0 bytes
-rw-r--r--data/orig/b5.pngbin1133 -> 0 bytes
-rw-r--r--data/orig/b_t1.pngbin1731 -> 0 bytes
-rw-r--r--data/orig/b_t2.pngbin6387 -> 0 bytes
-rw-r--r--data/orig/b_t3.pngbin2656 -> 0 bytes
-rw-r--r--data/orig/border.xcfbin352645 -> 0 bytes
-rw-r--r--data/orig/bt1.pngbin540 -> 0 bytes
-rw-r--r--data/orig/bt2.pngbin548 -> 0 bytes
-rw-r--r--data/orig/bt3.pngbin517 -> 0 bytes
-rw-r--r--data/orig/bt4.pngbin473 -> 0 bytes
-rw-r--r--data/orig/bt5.pngbin517 -> 0 bytes
-rw-r--r--data/orig/bt6.pngbin481 -> 0 bytes
-rw-r--r--data/orig/bt7.pngbin572 -> 0 bytes
-rw-r--r--data/orig/bt8.pngbin528 -> 0 bytes
-rw-r--r--data/orig/check_fg.pngbin281 -> 0 bytes
-rw-r--r--data/orig/cursor.pngbin234 -> 0 bytes
-rw-r--r--data/orig/cursor_close.pngbin302 -> 0 bytes
-rw-r--r--data/orig/cursor_icon.pngbin287 -> 0 bytes
-rw-r--r--data/orig/cursor_iconify.pngbin319 -> 0 bytes
-rw-r--r--data/orig/cursor_max_size.pngbin293 -> 0 bytes
-rw-r--r--data/orig/cursor_menu.pngbin282 -> 0 bytes
-rw-r--r--data/orig/cursor_move.pngbin333 -> 0 bytes
-rw-r--r--data/orig/cursor_resize.pngbin326 -> 0 bytes
-rw-r--r--data/orig/cursor_resize_h.pngbin279 -> 0 bytes
-rw-r--r--data/orig/cursor_resize_v.pngbin295 -> 0 bytes
-rw-r--r--data/orig/hi.pngbin195 -> 0 bytes
-rw-r--r--data/orig/icon_file.pngbin3407 -> 0 bytes
-rw-r--r--data/orig/icon_file.xcfbin7481 -> 0 bytes
-rw-r--r--data/orig/m.xcfbin340854 -> 0 bytes
-rw-r--r--data/orig/mb1.pngbin77 -> 0 bytes
-rw-r--r--data/orig/mb2.pngbin103 -> 0 bytes
-rw-r--r--data/orig/mb3.pngbin81 -> 0 bytes
-rw-r--r--data/orig/mb4.pngbin106 -> 0 bytes
-rw-r--r--data/orig/mb5.pngbin104 -> 0 bytes
-rw-r--r--data/orig/mb6.pngbin78 -> 0 bytes
-rw-r--r--data/orig/mb7.pngbin106 -> 0 bytes
-rw-r--r--data/orig/mb8.pngbin78 -> 0 bytes
-rw-r--r--data/orig/mbb.pngbin1294 -> 0 bytes
-rw-r--r--data/orig/radio.xcfbin1302 -> 0 bytes
-rw-r--r--data/orig/radio_bg.pngbin329 -> 0 bytes
-rw-r--r--data/orig/radio_fg.pngbin305 -> 0 bytes
-rw-r--r--data/orig/s.pngbin301 -> 0 bytes
-rw-r--r--data/orig/sel_border.pngbin2551 -> 0 bytes
-rw-r--r--data/orig/sel_dark.pngbin1290 -> 0 bytes
-rw-r--r--data/orig/sel_hi.pngbin1784 -> 0 bytes
-rw-r--r--data/orig/sel_stripes.pngbin274 -> 0 bytes
-rw-r--r--data/orig/selection.xcfbin10731 -> 0 bytes
-rw-r--r--data/orig/sep.pngbin113 -> 0 bytes
-rw-r--r--data/orig/t1.pngbin1446 -> 0 bytes
-rw-r--r--data/orig/t2.pngbin947 -> 0 bytes
-rw-r--r--data/orig/t3.pngbin1245 -> 0 bytes
-rw-r--r--data/orig/tile.pngbin80989 -> 0 bytes
-rw-r--r--data/orig/tile_half.pngbin94060 -> 0 bytes
-rw-r--r--data/orig/tile_hi.pngbin70463 -> 0 bytes
-rwxr-xr-xdata/scripts/build_app_menu_db.sh123
-rwxr-xr-xdata/scripts/build_db.sh401
-rwxr-xr-xdata/scripts/build_iconbar_db.sh41
-rw-r--r--data/scripts/build_iconbar_db.sh.in41
-rw-r--r--data/scrollbars/scroll_bar_h.bits.dbbin20480 -> 0 bytes
-rw-r--r--data/scrollbars/scroll_bar_v.bits.dbbin20480 -> 0 bytes
-rw-r--r--data/scrollbars/scroll_base_h.bits.dbbin86016 -> 0 bytes
-rw-r--r--data/scrollbars/scroll_base_v.bits.dbbin86016 -> 0 bytes
-rw-r--r--data/selections/file.bits.dbbin53248 -> 0 bytes
-rw-r--r--data/selections/text.bits.dbbin53248 -> 0 bytes
-rw-r--r--data/setup/anim/e001.pngbin12052 -> 0 bytes
-rw-r--r--data/setup/anim/e002.pngbin12125 -> 0 bytes
-rw-r--r--data/setup/anim/e003.pngbin12283 -> 0 bytes
-rw-r--r--data/setup/anim/e004.pngbin12290 -> 0 bytes
-rw-r--r--data/setup/anim/e005.pngbin12376 -> 0 bytes
-rw-r--r--data/setup/anim/e006.pngbin12296 -> 0 bytes
-rw-r--r--data/setup/anim/e007.pngbin12216 -> 0 bytes
-rw-r--r--data/setup/anim/e008.pngbin12285 -> 0 bytes
-rw-r--r--data/setup/anim/e009.pngbin12378 -> 0 bytes
-rw-r--r--data/setup/anim/e010.pngbin12324 -> 0 bytes
-rw-r--r--data/setup/anim/e011.pngbin12499 -> 0 bytes
-rw-r--r--data/setup/anim/e012.pngbin12475 -> 0 bytes
-rw-r--r--data/setup/anim/e013.pngbin12472 -> 0 bytes
-rw-r--r--data/setup/anim/e014.pngbin12428 -> 0 bytes
-rw-r--r--data/setup/anim/e015.pngbin12294 -> 0 bytes
-rw-r--r--data/setup/anim/e016.pngbin12239 -> 0 bytes
-rw-r--r--data/setup/anim/e017.pngbin12010 -> 0 bytes
-rw-r--r--data/setup/anim/e018.pngbin11914 -> 0 bytes
-rw-r--r--data/setup/anim/e019.pngbin11638 -> 0 bytes
-rw-r--r--data/setup/anim/e020.pngbin11454 -> 0 bytes
-rw-r--r--data/setup/anim/e021.pngbin11208 -> 0 bytes
-rw-r--r--data/setup/anim/e022.pngbin10873 -> 0 bytes
-rw-r--r--data/setup/anim/e023.pngbin10585 -> 0 bytes
-rw-r--r--data/setup/anim/e024.pngbin10243 -> 0 bytes
-rw-r--r--data/setup/anim/e025.pngbin9950 -> 0 bytes
-rw-r--r--data/setup/anim/e026.pngbin9597 -> 0 bytes
-rw-r--r--data/setup/anim/e027.pngbin9358 -> 0 bytes
-rw-r--r--data/setup/anim/e028.pngbin9030 -> 0 bytes
-rw-r--r--data/setup/anim/e029.pngbin8714 -> 0 bytes
-rw-r--r--data/setup/anim/e030.pngbin8392 -> 0 bytes
-rw-r--r--data/setup/anim/e031.pngbin8032 -> 0 bytes
-rw-r--r--data/setup/anim/e032.pngbin7642 -> 0 bytes
-rw-r--r--data/setup/anim/e033.pngbin7305 -> 0 bytes
-rw-r--r--data/setup/anim/e034.pngbin6941 -> 0 bytes
-rw-r--r--data/setup/anim/e035.pngbin6682 -> 0 bytes
-rw-r--r--data/setup/anim/e036.pngbin6346 -> 0 bytes
-rw-r--r--data/setup/anim/e037.pngbin6095 -> 0 bytes
-rw-r--r--data/setup/anim/e038.pngbin5987 -> 0 bytes
-rw-r--r--data/setup/anim/e039.pngbin5952 -> 0 bytes
-rw-r--r--data/setup/anim/e040.pngbin6113 -> 0 bytes
-rw-r--r--data/setup/anim/e041.pngbin6393 -> 0 bytes
-rw-r--r--data/setup/anim/e042.pngbin6718 -> 0 bytes
-rw-r--r--data/setup/anim/e043.pngbin7006 -> 0 bytes
-rw-r--r--data/setup/anim/e044.pngbin7339 -> 0 bytes
-rw-r--r--data/setup/anim/e045.pngbin7688 -> 0 bytes
-rw-r--r--data/setup/anim/e046.pngbin8105 -> 0 bytes
-rw-r--r--data/setup/anim/e047.pngbin8471 -> 0 bytes
-rw-r--r--data/setup/anim/e048.pngbin8798 -> 0 bytes
-rw-r--r--data/setup/anim/e049.pngbin9127 -> 0 bytes
-rw-r--r--data/setup/anim/e050.pngbin9389 -> 0 bytes
-rw-r--r--data/setup/anim/e051.pngbin9762 -> 0 bytes
-rw-r--r--data/setup/anim/e052.pngbin10030 -> 0 bytes
-rw-r--r--data/setup/anim/e053.pngbin10195 -> 0 bytes
-rw-r--r--data/setup/anim/e054.pngbin10470 -> 0 bytes
-rw-r--r--data/setup/anim/e055.pngbin10672 -> 0 bytes
-rw-r--r--data/setup/anim/e056.pngbin10934 -> 0 bytes
-rw-r--r--data/setup/anim/e057.pngbin11118 -> 0 bytes
-rw-r--r--data/setup/anim/e058.pngbin11296 -> 0 bytes
-rw-r--r--data/setup/anim/e059.pngbin11507 -> 0 bytes
-rw-r--r--data/setup/anim/e060.pngbin11571 -> 0 bytes
-rw-r--r--data/setup/anim/e061.pngbin11719 -> 0 bytes
-rw-r--r--data/setup/anim/e062.pngbin11706 -> 0 bytes
-rw-r--r--data/setup/anim/e063.pngbin11696 -> 0 bytes
-rw-r--r--data/setup/anim/e064.pngbin11613 -> 0 bytes
-rw-r--r--data/setup/anim/e065.pngbin11671 -> 0 bytes
-rw-r--r--data/setup/anim/e066.pngbin11704 -> 0 bytes
-rw-r--r--data/setup/anim/e067.pngbin11705 -> 0 bytes
-rw-r--r--data/setup/anim/e068.pngbin11635 -> 0 bytes
-rw-r--r--data/setup/anim/e069.pngbin11641 -> 0 bytes
-rw-r--r--data/setup/anim/e070.pngbin11579 -> 0 bytes
-rw-r--r--data/setup/anim/e071.pngbin11613 -> 0 bytes
-rw-r--r--data/setup/anim/e072.pngbin11609 -> 0 bytes
-rw-r--r--data/setup/anim/e073.pngbin11485 -> 0 bytes
-rw-r--r--data/setup/anim/e074.pngbin11559 -> 0 bytes
-rw-r--r--data/setup/anim/e075.pngbin11605 -> 0 bytes
-rw-r--r--data/setup/anim/e076.pngbin11542 -> 0 bytes
-rw-r--r--data/setup/anim/e077.pngbin11417 -> 0 bytes
-rw-r--r--data/setup/anim/e078.pngbin11255 -> 0 bytes
-rw-r--r--data/setup/anim/e079.pngbin11090 -> 0 bytes
-rw-r--r--data/setup/anim/e080.pngbin10878 -> 0 bytes
-rw-r--r--data/setup/anim/e081.pngbin10597 -> 0 bytes
-rw-r--r--data/setup/anim/e082.pngbin10311 -> 0 bytes
-rw-r--r--data/setup/anim/e083.pngbin10058 -> 0 bytes
-rw-r--r--data/setup/anim/e084.pngbin9840 -> 0 bytes
-rw-r--r--data/setup/anim/e085.pngbin9533 -> 0 bytes
-rw-r--r--data/setup/anim/e086.pngbin9270 -> 0 bytes
-rw-r--r--data/setup/anim/e087.pngbin8978 -> 0 bytes
-rw-r--r--data/setup/anim/e088.pngbin8668 -> 0 bytes
-rw-r--r--data/setup/anim/e089.pngbin8344 -> 0 bytes
-rw-r--r--data/setup/anim/e090.pngbin8012 -> 0 bytes
-rw-r--r--data/setup/anim/e091.pngbin7623 -> 0 bytes
-rw-r--r--data/setup/anim/e092.pngbin7308 -> 0 bytes
-rw-r--r--data/setup/anim/e093.pngbin6917 -> 0 bytes
-rw-r--r--data/setup/anim/e094.pngbin6669 -> 0 bytes
-rw-r--r--data/setup/anim/e095.pngbin6411 -> 0 bytes
-rw-r--r--data/setup/anim/e096.pngbin6233 -> 0 bytes
-rw-r--r--data/setup/anim/e097.pngbin6074 -> 0 bytes
-rw-r--r--data/setup/anim/e098.pngbin6010 -> 0 bytes
-rw-r--r--data/setup/anim/e099.pngbin6114 -> 0 bytes
-rw-r--r--data/setup/anim/e100.pngbin6271 -> 0 bytes
-rw-r--r--data/setup/anim/e101.pngbin6448 -> 0 bytes
-rw-r--r--data/setup/anim/e102.pngbin6744 -> 0 bytes
-rw-r--r--data/setup/anim/e103.pngbin6965 -> 0 bytes
-rw-r--r--data/setup/anim/e104.pngbin7319 -> 0 bytes
-rw-r--r--data/setup/anim/e105.pngbin7771 -> 0 bytes
-rw-r--r--data/setup/anim/e106.pngbin8095 -> 0 bytes
-rw-r--r--data/setup/anim/e107.pngbin8543 -> 0 bytes
-rw-r--r--data/setup/anim/e108.pngbin8843 -> 0 bytes
-rw-r--r--data/setup/anim/e109.pngbin9181 -> 0 bytes
-rw-r--r--data/setup/anim/e110.pngbin9496 -> 0 bytes
-rw-r--r--data/setup/anim/e111.pngbin9933 -> 0 bytes
-rw-r--r--data/setup/anim/e112.pngbin10170 -> 0 bytes
-rw-r--r--data/setup/anim/e113.pngbin10491 -> 0 bytes
-rw-r--r--data/setup/anim/e114.pngbin10830 -> 0 bytes
-rw-r--r--data/setup/anim/e115.pngbin11188 -> 0 bytes
-rw-r--r--data/setup/anim/e116.pngbin11497 -> 0 bytes
-rw-r--r--data/setup/anim/e117.pngbin11779 -> 0 bytes
-rw-r--r--data/setup/anim/e118.pngbin11878 -> 0 bytes
-rw-r--r--data/setup/anim/e119.pngbin12019 -> 0 bytes
-rw-r--r--data/setup/anim/e120.pngbin12036 -> 0 bytes
-rw-r--r--data/setup/logo.pngbin40551 -> 0 bytes
-rw-r--r--data/setup/pointer.pngbin1473 -> 0 bytes
-rw-r--r--data/setup/setup.bg.dbbin241664 -> 0 bytes
-rw-r--r--data/setup/textzone.bits.dbbin827392 -> 0 bytes
-rw-r--r--data/setup/textzone_button.bits.dbbin77824 -> 0 bytes
-rw-r--r--data/setup/textzonebg.xcfbin942856 -> 0 bytes
-rw-r--r--data/test/test.dbbin12288 -> 0 bytes
-rw-r--r--data/themes/icons/BlueMilk/application/default.dbbin61440 -> 0 bytes
-rw-r--r--data/themes/icons/BlueMilk/archive/default.dbbin49152 -> 0 bytes
-rw-r--r--data/themes/icons/BlueMilk/archive/gnu-zip-unix.dbbin49152 -> 0 bytes
-rw-r--r--data/themes/icons/BlueMilk/audio/default.dbbin24576 -> 0 bytes
-rw-r--r--data/themes/icons/BlueMilk/custom/floppy.dbbin24576 -> 0 bytes
-rw-r--r--data/themes/icons/BlueMilk/dir/default.dbbin49151 -> 0 bytes
-rw-r--r--data/themes/icons/BlueMilk/dir/ext2.dbbin49151 -> 0 bytes
-rw-r--r--data/themes/icons/BlueMilk/dir/isofs.dbbin24576 -> 0 bytes
-rw-r--r--data/themes/icons/BlueMilk/dir/trash.dbbin49152 -> 0 bytes
-rw-r--r--data/themes/icons/BlueMilk/document/default.dbbin49152 -> 0 bytes
-rw-r--r--data/themes/icons/BlueMilk/document/pdf.dbbin49152 -> 0 bytes
-rw-r--r--data/themes/icons/BlueMilk/document/postscript.dbbin49152 -> 0 bytes
-rw-r--r--data/themes/icons/BlueMilk/document/unknown.dbbin49152 -> 0 bytes
-rw-r--r--data/themes/icons/BlueMilk/image/default.dbbin49152 -> 0 bytes
-rw-r--r--data/themes/icons/BlueMilk/image/gif.dbbin49152 -> 0 bytes
-rw-r--r--data/themes/icons/BlueMilk/image/jpeg.dbbin49152 -> 0 bytes
-rw-r--r--data/themes/icons/BlueMilk/image/png.dbbin49152 -> 0 bytes
-rw-r--r--data/themes/icons/BlueMilk/image/tiff.dbbin49152 -> 0 bytes
-rw-r--r--data/themes/icons/BlueMilk/image/xpm.dbbin49149 -> 0 bytes
-rw-r--r--data/themes/icons/BlueMilk/text/c.dbbin36864 -> 0 bytes
-rw-r--r--data/themes/icons/BlueMilk/text/cpp.dbbin36864 -> 0 bytes
-rw-r--r--data/themes/icons/BlueMilk/text/default.dbbin49152 -> 0 bytes
-rw-r--r--data/themes/icons/BlueMilk/text/header.dbbin36864 -> 0 bytes
-rw-r--r--data/themes/icons/BlueMilk/text/html.dbbin36864 -> 0 bytes
-rw-r--r--data/themes/icons/BlueMilk/text/plain.dbbin49152 -> 0 bytes
-rw-r--r--data/themes/icons/BlueMilk/unknown/default.dbbin49152 -> 0 bytes
-rw-r--r--data/themes/icons/BlueMilk/unknown/unknown.dbbin49152 -> 0 bytes
-rw-r--r--debian/changelog5
-rw-r--r--debian/control12
-rw-r--r--debian/copyright32
-rw-r--r--debian/e17.postinst7
-rw-r--r--debian/rules55
-rw-r--r--doc/Makefile.am41
-rw-r--r--doc/figures/architecture.eps408
-rw-r--r--doc/figures/architecture.fig130
-rw-r--r--doc/figures/architecture.gifbin11286 -> 0 bytes
-rw-r--r--doc/figures/background.gifbin6432 -> 0 bytes
-rw-r--r--doc/figures/caution.gifbin1039 -> 0 bytes
-rw-r--r--doc/figures/note.gifbin1070 -> 0 bytes
-rw-r--r--doc/figures/warning.gifbin1052 -> 0 bytes
-rw-r--r--doc/html-customizations.dsl.in61
-rw-r--r--doc/kernel-doc.in1001
-rw-r--r--doc/manual.raw472
-rw-r--r--doc/stylesheet.css20
-rw-r--r--e.spec67
-rw-r--r--lib/.cvsignore7
-rw-r--r--lib/Makefile.am20
-rw-r--r--lib/e_hack.c206
-rw-r--r--lib/e_hack.h12
-rw-r--r--po/.cvsignore3
-rw-r--r--po/ChangeLog202
-rw-r--r--po/Makefile.in.in196
-rw-r--r--po/POTFILES.in3
-rw-r--r--po/enlightenment.pot15
-rwxr-xr-xsetup-gettext.sh202
-rw-r--r--src/.cvsignore10
-rw-r--r--src/.indent.pro14
-rw-r--r--src/Makefile.am58
-rw-r--r--src/actions.c1871
-rw-r--r--src/actions.h107
-rw-r--r--src/background.c328
-rw-r--r--src/background.h83
-rw-r--r--src/block.c90
-rw-r--r--src/block.h10
-rw-r--r--src/border.c2905
-rw-r--r--src/border.h263
-rw-r--r--src/bordermenu.c531
-rw-r--r--src/bordermenu.h9
-rw-r--r--src/config.c396
-rw-r--r--src/config.h78
-rw-r--r--src/cursors.c357
-rw-r--r--src/cursors.h10
-rw-r--r--src/data.c223
-rw-r--r--src/data.h97
-rw-r--r--src/debug.c88
-rw-r--r--src/debug.h68
-rw-r--r--src/delayed.c65
-rw-r--r--src/delayed.h28
-rw-r--r--src/desktops.c1048
-rw-r--r--src/desktops.h110
-rw-r--r--src/e.h104
-rw-r--r--src/e_dir.c545
-rw-r--r--src/e_dir.h67
-rw-r--r--src/e_file.c161
-rw-r--r--src/e_file.h34
-rw-r--r--src/e_view_look.c180
-rw-r--r--src/e_view_look.h50
-rw-r--r--src/e_view_machine.c182
-rw-r--r--src/e_view_machine.h28
-rw-r--r--src/embed.c445
-rw-r--r--src/embed.h15
-rw-r--r--src/entry.c1143
-rw-r--r--src/entry.h98
-rw-r--r--src/exec.c198
-rw-r--r--src/exec.h18
-rw-r--r--src/file.c235
-rw-r--r--src/file.h40
-rw-r--r--src/focus.c57
-rw-r--r--src/focus.h12
-rw-r--r--src/fs.c247
-rw-r--r--src/fs.h37
-rw-r--r--src/globals.c8
-rw-r--r--src/globals.h6
-rw-r--r--src/guides.c725
-rw-r--r--src/guides.h39
-rw-r--r--src/icccm.c761
-rw-r--r--src/icccm.h40
-rw-r--r--src/iconbar.c1742
-rw-r--r--src/iconbar.h111
-rw-r--r--src/icons.c958
-rw-r--r--src/icons.h110
-rw-r--r--src/ipc.c1
-rw-r--r--src/ipc.h8
-rw-r--r--src/keys.c78
-rw-r--r--src/keys.h12
-rw-r--r--src/main.c174
-rw-r--r--src/match.c232
-rw-r--r--src/match.h11
-rw-r--r--src/menu.c2132
-rw-r--r--src/menu.h165
-rw-r--r--src/menubuild.c645
-rw-r--r--src/menubuild.h31
-rw-r--r--src/object.c77
-rw-r--r--src/object.h79
-rw-r--r--src/observer.c170
-rw-r--r--src/observer.h176
-rw-r--r--src/pack.c1
-rw-r--r--src/place.c580
-rw-r--r--src/place.h41
-rw-r--r--src/resist.c159
-rw-r--r--src/resist.h17
-rw-r--r--src/scrollbar.c857
-rw-r--r--src/scrollbar.h88
-rw-r--r--src/shelf.c1
-rw-r--r--src/text.c351
-rw-r--r--src/text.h60
-rw-r--r--src/util.c202
-rw-r--r--src/util.h47
-rw-r--r--src/view.c2571
-rw-r--r--src/view.h342
-rw-r--r--src/view_layout.c247
-rw-r--r--src/view_layout.h55
-rw-r--r--tools/.cvsignore5
-rw-r--r--tools/Makefile.am21
-rw-r--r--tools/e_img_export.c77
-rw-r--r--tools/e_img_import.c22
-rw-r--r--tools/e_setup.c1119
440 files changed, 0 insertions, 33662 deletions
diff --git a/.cvsignore b/.cvsignore
deleted file mode 100644
index 20ee530ab..000000000
--- a/.cvsignore
+++ /dev/null
@@ -1,21 +0,0 @@
-ABOUT-NLS
-mkinstalldirs
-missing
-install-sh
-aclocal.m4
-Makefile.in
-configure
-config.log
-intl
-config.status
-config.cache
-Makefile
-stamp-h
-config.h
-po
-stamp-h.in
-ltmain.sh
-ltconfig
-libtool
-config.sub
-config.guess
diff --git a/AUTHORS b/AUTHORS
deleted file mode 100644
index 1f5301dda..000000000
--- a/AUTHORS
+++ /dev/null
@@ -1,6 +0,0 @@
-The Rasterman <raster@rasterman.com>
-Christian Kreibich <cK@whoop.org>
-Burra <burra@colorado.edu>
-Graham MacDonald <macdonag@lineone.net>
-Alan Schmitt <alan.schmitt@inria.fr>
-Kevin Brosius <cobra@compuserve.com>
diff --git a/COPYING b/COPYING
deleted file mode 100644
index dee3047c3..000000000
--- a/COPYING
+++ /dev/null
@@ -1,20 +0,0 @@
-Copyright (C) 2000 Carsten Haitzler and various contributors (see AUTHORS)
-
-Permission is hereby granted, free of charge, to any person obtaining a copy
-of this software and associated documentation files (the "Software"), to
-deal in the Software without restriction, including without limitation the
-rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
-sell copies of the Software, and to permit persons to whom the Software is
-furnished to do so, subject to the following conditions:
-
-The above copyright notice and this permission notice shall be included in
-all copies of the Software, its documentation and marketing & publicity
-materials, and acknowledgment shall be given in the documentation, materials
-and software packages that this Software was used.
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
-THE AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
-IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
-CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
diff --git a/ChangeLog b/ChangeLog
deleted file mode 100644
index 51e20a37a..000000000
--- a/ChangeLog
+++ /dev/null
@@ -1,24 +0,0 @@
-Sun Mar 10 18:13:04 2002 Till Adam <till@adam-lilienthal.de>
- * add E_View_Look class
- * move view <-> dir and view <-> look <-> layout_dir to observer/observee
- * re-enable iconbar throbber
- * fix various small issues
-
-Wed Mar 06 21:41:07 2002 Till Adam <till@adam-lilienthal.de>
- * change name of E_View_Model to E_Dir
-
-Fri Mar 01 17:27:18 2002 Till Adam <till@adam-lilienthal.de>
- * dnd operations now only affect the currently focused view
-
-Thu Feb 28 18:45:12 CST 2002 Corey Donohoe <atmos@atmos.org>
- * Free bgs in e_view_cleanup, it might still be leaking elsewhere though
-
-Mon Feb 25 18:56:35 2002 Till Adam <till@adam-lilienthal.de>
- * start of ChangeLog ;)
- * several views of the same dir are now possible
- * added class E_File representing a file with stat and icon info
- * added class E_View_Model representing a dir with list of E_Files
- * added singleton E_View_Machine holding global lists of Views and
- View_Models
- * seperation of icon and file concepts
- * various small fixes and cleanups
diff --git a/INSTALL b/INSTALL
deleted file mode 100644
index e55f642b7..000000000
--- a/INSTALL
+++ /dev/null
@@ -1,14 +0,0 @@
-COMPILING and INSTALLING:
-
-If you got a official release tar archive do:
- ./configure
-
-( otherwise if you got this from enlightenment cvs do: ./autogen.sh )
-
-Then to compile:
- make
-
-To install (run this as root, or the user who handles installs):
- make install
-
-NOTE: You MUST make install Enlightenment for it to run properly.
diff --git a/Makefile.am b/Makefile.am
deleted file mode 100644
index b146b27d6..000000000
--- a/Makefile.am
+++ /dev/null
@@ -1,31 +0,0 @@
-## Process this file with automake to produce Makefile.in
-
-SUBDIRS = src lib client tools doc
-
-MAINTAINERCLEANFILES = Makefile.in aclocal.m4 config.guess \
- config.h.in config.sub configure install-sh \
- ltconfig ltmain.sh missing mkinstalldirs \
- stamp-h.in
-
-install-data-local:
- @$(NORMAL_INSTALL)
- if test -d $(srcdir)/data; then \
- $(mkinstalldirs) $(DESTDIR)$(pkgdatadir); \
- (cd $(srcdir); tar -cf - data) | (cd $(DESTDIR)$(pkgdatadir); tar -xf -) \
- fi
-
-dist-hook:
- if test -d data; then \
- (cd $(srcdir); tar -cf - data) | (cd $(distdir); tar -xf -) \
- fi
-
-EXTRA_DIST = README AUTHORS COPYING e.spec
-
-docs:
- $(MAKE) -C $(top_srcdir)/doc docs
-
-if HAVE_JADE
-html-docs:
- $(MAKE) -C $(top_srcdir)/doc html-docs
-endif
-
diff --git a/NEWS b/NEWS
deleted file mode 100644
index e69de29bb..000000000
--- a/NEWS
+++ /dev/null
diff --git a/README b/README
deleted file mode 100644
index 70576f048..000000000
--- a/README
+++ /dev/null
@@ -1,145 +0,0 @@
-###############################################################################
-
-NOTE: THIS WILL NOT COMPILE. DO NOT EVEN TRY.
-
-This is only here for historical reasons while we are busy putting together a
-new codebase (outside of CVS for now). It will come into CVS just as soon as
-it is sufficiently functional enough to manage windows at the most basic
-level. It already has a lot of functionality, but this is not considered
-"good enough" to hit CVS yet.
-
-###############################################################################
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-Additional notes
-
-todo
- entry.c - check 'todo' entries (although nobody uses entries except for
- me in med, do they?)
- guides.c - imlib parts that aren't converted yet.
- text.c
- menu.c
- menubuild.c - e_observer_init() call.
- border.c - use e_evas_new_all in place of the inlined code. cleanup.
-
-
-+-----------------------------------------------------------------------------+
-| Enlightenment 0.17.pre CVS Code.... |
-+-----------------------------------------------------------------------------+
- The Rasterman - raster@rasterman.com
-
-*******************************************************************************
-**************** READ THIS! It is of the UTMOST IMPORTANCE! *******************
-*******************************************************************************
-
-This is the source code for Enlightenment 0.17 - If you got this you got it
-from Enlightenment's CVS repository - or from someone who took it out of the
-CVS repository.
-
-The CVS repository is full of code *IN DEVELOPMENT* - that often means it's
-in the middle of being worked on and may install strange things in strange
-places, make a mess, and may not even be compatible with a final release. If
-you at all use this code, you are HEAVILY URGED, when it is finally released,
-to remove all traces of anything this CVS code base has installed on your
-system (it is COMPLETELY up to you to keep track of that - do NOT expect any
-help), and then install the full release on a cleaned system. Don't come
-asking "can I just keep using CVS" once things are released - that is the
-reason I put this paragraph here - so you don't ask. The answer is the same
-as above - if there is a proper final release use that. CVS is really only
-for those heavily hacking on the code, or whose curiosity is too much to resist
-not giving it a look and try.
-
-Now we have that warning over and done with. How to build and install from
-CVS?
-
-$ ./autogen.sh && make
-$ su
-Password:
-<- as root ->
-# make install
-
-You should be able to use the binary of enlightenment as a window manager.
-
-you might be advised for cleanliness to do
-$ ./autogen.sh --prefix=/usr/local/e-17
-
-so it installs relative to the /usr/local/e-17 directory and keeps all the
-e-17 development code and data in that tree so it is easily removed when the
-time comes.
-
--------------------------------------------------------------------------------
-
-NOTES: Read these carefully!
-
-Enlightenment only handles a small subset of ICCCM and thus will have bugs -
-some applications will not behave correctly and may appear in odd spots or
-not resize or place themselves properly etc. Expect this - it's code being
-worked on. Just be happy it does as much as it already does.
-
-Enlightenment RELIES on lots of libraires that have been written. Ecore,
-Ebits, Evas, Edb, Imlib2, Efsd just to mention a few. Especially Ebits,
-Ecore, Efsd, Ferite, and Evas change in CVS often - you will need the absolute
-latest of these if you wish Enlightenment 0.17 code to run properly or compile.
-If you update Enlightenment from CVS update these too to get any changes they
-have in their trees.
-
-If you want to compile & install E 0.17 you probably install the packages
-Enlightenment needs in this order:
-
- (*) imlib2
- (*) edb
- (*) imlib2_loaders
- (*) evas
- (*) ebits
- (*) ecore
- (*) efsd
- (*) ferite (optional for now, but recommended)
- (*) e17
-
-since you got Enlightenment from CVS (if you didn't you should have) you must
-get all of the above from CVS - because the libraries Enlightenment depends on
-keep being updated as bugs are found and new features needed - and often they
-are not released for a while until things settle down, so make sure you get
-the latest of these from CVS.
-
-before you start installing the some of the above, some of the packages you
-will need - if you don't already have them, are:
-
- (*) freetype (1.1, 1.2 or 1.3 ... NOT 2.0)
- (*) libxml2
- (*) libpcre
- (*) fam
-
-and possibly ...
-
- (*) libjpeg
- (*) libpng
- (*) zlib
- (*) libtiff
- (*) libungif
diff --git a/acconfig.h b/acconfig.h
deleted file mode 100644
index cb720b894..000000000
--- a/acconfig.h
+++ /dev/null
@@ -1,16 +0,0 @@
-#undef ENLIGHTENMENT_VERSION
-#undef ENLIGHTENMENT_MAJOR
-#undef ENLIGHTENMENT_MINOR
-#undef ENLIGHTENMENT_MICRO
-#undef ENABLE_NLS
-#undef HAVE_CATGETS
-#undef HAVE_GETTEXT
-#undef HAVE_LC_MESSAGES
-#undef HAVE_STPCPY
-#undef HAVE_LIBSM
-#undef PACKAGE_LOCALE_DIR
-#undef PACKAGE_DATA_DIR
-#undef PACKAGE_SOURCE_DIR
-#undef PACKAGE_BIN_DIR
-#undef PACKAGE_LIB_DIR
-#undef USE_FERITE
diff --git a/acinclude.m4 b/acinclude.m4
deleted file mode 100644
index 7472b4638..000000000
--- a/acinclude.m4
+++ /dev/null
@@ -1,136 +0,0 @@
-dnl @synopsis AC_PATH_GENERIC(LIBRARY [, MINIMUM-VERSION [, ACTION-IF-FOUND [, ACTION-IF-NOT-FOUND]]])
-dnl
-dnl Runs a LIBRARY-config script and defines LIBRARY_CFLAGS and LIBRARY_LIBS
-dnl
-dnl The script must support `--cflags' and `--libs' args.
-dnl If MINIMUM-VERSION is specified, the script must also support the
-dnl `--version' arg.
-dnl If the `--with-library-[exec-]prefix' arguments to ./configure are given,
-dnl it must also support `--prefix' and `--exec-prefix'.
-dnl (In other words, it must be like gtk-config.)
-dnl
-dnl For example:
-dnl
-dnl AC_PATH_GENERIC(Foo, 1.0.0)
-dnl
-dnl would run `foo-config --version' and check that it is at least 1.0.0
-dnl
-dnl If so, the following would then be defined:
-dnl
-dnl FOO_CFLAGS to `foo-config --cflags`
-dnl FOO_LIBS to `foo-config --libs`
-dnl
-dnl At present there is no support for additional "MODULES" (see AM_PATH_GTK)
-dnl (shamelessly stolen from gtk.m4 and then hacked around a fair amount)
-dnl
-dnl @author Angus Lees <gusl@cse.unsw.edu.au>
-dnl @version $Id$
-
-AC_DEFUN(AC_PATH_GENERIC,
-[dnl
-dnl we're going to need uppercase, lowercase and user-friendly versions of the
-dnl string `LIBRARY'
-pushdef([UP], translit([$1], [a-z], [A-Z]))dnl
-pushdef([DOWN], translit([$1], [A-Z], [a-z]))dnl
-
-dnl
-dnl Get the cflags and libraries from the LIBRARY-config script
-dnl
-AC_ARG_WITH(DOWN-prefix,[ --with-]DOWN[-prefix=PFX Prefix where $1 is installed (optional)],
- DOWN[]_config_prefix="$withval", DOWN[]_config_prefix="")
-AC_ARG_WITH(DOWN-exec-prefix,[ --with-]DOWN[-exec-prefix=PFX Exec prefix where $1 is installed (optional)],
- DOWN[]_config_exec_prefix="$withval", DOWN[]_config_exec_prefix="")
-
- if test x$DOWN[]_config_exec_prefix != x ; then
- DOWN[]_config_args="$DOWN[]_config_args --exec-prefix=$DOWN[]_config_exec_prefix"
- if test x${UP[]_CONFIG+set} != xset ; then
- UP[]_CONFIG=$DOWN[]_config_exec_prefix/bin/DOWN-config
- fi
- fi
- if test x$DOWN[]_config_prefix != x ; then
- DOWN[]_config_args="$DOWN[]_config_args --prefix=$DOWN[]_config_prefix"
- if test x${UP[]_CONFIG+set} != xset ; then
- UP[]_CONFIG=$DOWN[]_config_prefix/bin/DOWN-config
- fi
- fi
-
- AC_PATH_PROG(UP[]_CONFIG, DOWN-config, no)
- ifelse([$2], ,
- AC_MSG_CHECKING(for $1),
- AC_MSG_CHECKING(for $1 - version >= $2)
- )
- no_[]DOWN=""
- if test "$UP[]_CONFIG" = "no" ; then
- no_[]DOWN=yes
- else
- UP[]_CFLAGS="`$UP[]_CONFIG $DOWN[]_config_args --cflags`"
- UP[]_LIBS="`$UP[]_CONFIG $DOWN[]_config_args --libs`"
- ifelse([$2], , ,[
- DOWN[]_config_major_version=`$UP[]_CONFIG $DOWN[]_config_args \
- --version | sed 's/[[^0-9]]*\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/\1/'`
- DOWN[]_config_minor_version=`$UP[]_CONFIG $DOWN[]_config_args \
- --version | sed 's/[[^0-9]]*\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/\2/'`
- DOWN[]_config_micro_version=`$UP[]_CONFIG $DOWN[]_config_args \
- --version | sed 's/[[^0-9]]*\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/\3/'`
- DOWN[]_wanted_major_version="regexp($2, [\<\([0-9]*\)], [\1])"
- DOWN[]_wanted_minor_version="regexp($2, [\<\([0-9]*\)\.\([0-9]*\)], [\2])"
- DOWN[]_wanted_micro_version="regexp($2, [\<\([0-9]*\).\([0-9]*\).\([0-9]*\)], [\3])"
-
- # Compare wanted version to what config script returned.
- # If I knew what library was being run, i'd probably also compile
- # a test program at this point (which also extracted and tested
- # the version in some library-specific way)
- if test "$DOWN[]_config_major_version" -lt \
- "$DOWN[]_wanted_major_version" \
- -o \( "$DOWN[]_config_major_version" -eq \
- "$DOWN[]_wanted_major_version" \
- -a "$DOWN[]_config_minor_version" -lt \
- "$DOWN[]_wanted_minor_version" \) \
- -o \( "$DOWN[]_config_major_version" -eq \
- "$DOWN[]_wanted_major_version" \
- -a "$DOWN[]_config_minor_version" -eq \
- "$DOWN[]_wanted_minor_version" \
- -a "$DOWN[]_config_micro_version" -lt \
- "$DOWN[]_wanted_micro_version" \) ; then
- # older version found
- no_[]DOWN=yes
- echo -n "*** An old version of $1 "
- echo -n "($DOWN[]_config_major_version"
- echo -n ".$DOWN[]_config_minor_version"
- echo ".$DOWN[]_config_micro_version) was found."
- echo -n "*** You need a version of $1 newer than "
- echo -n "$DOWN[]_wanted_major_version"
- echo -n ".$DOWN[]_wanted_minor_version"
- echo ".$DOWN[]_wanted_micro_version."
- echo "***"
- echo "*** If you have already installed a sufficiently new version, this error"
- echo "*** probably means that the wrong copy of the DOWN-config shell script is"
- echo "*** being found. The easiest way to fix this is to remove the old version"
- echo "*** of $1, but you can also set the UP[]_CONFIG environment to point to the"
- echo "*** correct copy of DOWN-config. (In this case, you will have to"
- echo "*** modify your LD_LIBRARY_PATH environment variable, or edit /etc/ld.so.conf"
- echo "*** so that the correct libraries are found at run-time)"
- fi
- ])
- fi
- if test "x$no_[]DOWN" = x ; then
- AC_MSG_RESULT(yes)
- ifelse([$3], , :, [$3])
- else
- AC_MSG_RESULT(no)
- if test "$UP[]_CONFIG" = "no" ; then
- echo "*** The DOWN-config script installed by $1 could not be found"
- echo "*** If $1 was installed in PREFIX, make sure PREFIX/bin is in"
- echo "*** your path, or set the UP[]_CONFIG environment variable to the"
- echo "*** full path to DOWN-config."
- fi
- UP[]_CFLAGS=""
- UP[]_LIBS=""
- ifelse([$4], , :, [$4])
- fi
- AC_SUBST(UP[]_CFLAGS)
- AC_SUBST(UP[]_LIBS)
-
- popdef([UP])
- popdef([DOWN])
-])
diff --git a/autogen.sh b/autogen.sh
deleted file mode 100755
index a5f1d17bb..000000000
--- a/autogen.sh
+++ /dev/null
@@ -1,134 +0,0 @@
-#!/bin/sh
-# Run this to generate all the initial makefiles, etc.
-
-abort () {
- echo "$1 not found or command failed. Aborting!"
- exit 1
-}
-
-srcdir=`dirname $0`
-PKG_NAME="the package."
-
-DIE=0
-
-(autoconf --version) < /dev/null > /dev/null 2>&1 || {
- echo
- echo "**Error**: You must have \`autoconf' installed to."
- echo "Download the appropriate package for your distribution,"
- echo "or get the source tarball at ftp://ftp.gnu.org/pub/gnu/"
- DIE=1
-}
-
-(grep "^AM_PROG_LIBTOOL" $srcdir/configure.in >/dev/null) && {
- (libtool --version) < /dev/null > /dev/null 2>&1 || {
- echo
- echo "**Error**: You must have \`libtool' installed."
- echo "Get ftp://ftp.gnu.org/pub/gnu/libtool-1.2d.tar.gz"
- echo "(or a newer version if it is available)"
- DIE=1
- }
-}
-
-(automake --version) < /dev/null > /dev/null 2>&1 || {
- echo
- echo "**Error**: You must have \`automake' installed."
- echo "Get ftp://ftp.gnu.org/pub/gnu/automake-1.3.tar.gz"
- echo "(or a newer version if it is available)"
- DIE=1
- NO_AUTOMAKE=yes
-}
-
-
-# if no automake, don't bother testing for aclocal
-test -n "$NO_AUTOMAKE" || (aclocal --version) < /dev/null > /dev/null 2>&1 || {
- echo
- echo "**Error**: Missing \`aclocal'. The version of \`automake'"
- echo "installed doesn't appear recent enough."
- echo "Get ftp://ftp.gnu.org/pub/gnu/automake-1.3.tar.gz"
- echo "(or a newer version if it is available)"
- DIE=1
-}
-
-if test "$DIE" -eq 1; then
- exit 1
-fi
-
-if test -z "$*"; then
- echo "**Warning**: I am going to run \`configure' with no arguments."
- echo "If you wish to pass any to it, please specify them on the"
- echo \`$0\'" command line."
- echo
-fi
-
-case $CC in
-xlc )
- am_opt=--include-deps;;
-esac
-
-for coin in `find $srcdir -name configure.in -print`
-do
- dr=`dirname $coin`
- if test -f $dr/NO-AUTO-GEN; then
- echo skipping $dr -- flagged as no auto-gen
- else
- echo processing $dr
- macrodirs=`sed -n -e 's,AM_ACLOCAL_INCLUDE(\(.*\)),\1,gp' < $coin`
- ( cd $dr
- aclocalinclude="$ACLOCAL_FLAGS"
- for k in $macrodirs; do
- if test -d $k; then
- aclocalinclude="$aclocalinclude -I $k"
- ##else
- ## echo "**Warning**: No such directory \`$k'. Ignored."
- fi
- done
- if grep "^AM_PROG_LIBTOOL" configure.in >/dev/null; then
- echo "Running libtoolize..."
- libtoolize --force --copy || abort "libtoolize"
- fi
- echo "Running aclocal $aclocalinclude ..."
- aclocal $aclocalinclude || abort "aclocal"
- if grep "^AM_CONFIG_HEADER" configure.in >/dev/null; then
- echo "Running autoheader..."
- autoheader || abort "autoheader"
- fi
- echo "Running automake --gnu $am_opt ..."
- automake --add-missing --gnu $am_opt || abort "automake"
- echo "Running autoconf ..."
- autoconf || abort "autoconf"
- )
- fi
-done
-
-#conf_flags="--enable-maintainer-mode --enable-compile-warnings" #--enable-iso-c
-
-if test x$NOCONFIGURE = x; then
- echo Running $srcdir/configure $conf_flags "$@" ...
- $srcdir/configure $conf_flags "$@" \
- && echo Now type \`make\' to compile $PKG_NAME || abort "configure"
-else
- echo Skipping configure process.
-fi
-
-
-cd data/borders/
-cd borderless
-ln -sf selected-0.sticky-0.shaded-0.bits.db selected-1.sticky-0.shaded-0.bits.db
-ln -sf selected-0.sticky-0.shaded-0.bits.db selected-0.sticky-1.shaded-0.bits.db
-ln -sf selected-0.sticky-0.shaded-0.bits.db selected-0.sticky-0.shaded-1.bits.db
-ln -sf selected-0.sticky-0.shaded-0.bits.db selected-1.sticky-1.shaded-0.bits.db
-ln -sf selected-0.sticky-0.shaded-0.bits.db selected-1.sticky-0.shaded-1.bits.db
-ln -sf selected-0.sticky-0.shaded-0.bits.db selected-1.sticky-1.shaded-1.bits.db
-ln -sf selected-0.sticky-0.shaded-0.bits.db selected-0.sticky-1.shaded-1.bits.db
-cd ..
-cd default
-#ln -sf selected-0.sticky-0.shaded-0.bits.db selected-1.sticky-0.shaded-0.bits.db
-ln -sf selected-0.sticky-0.shaded-0.bits.db selected-0.sticky-1.shaded-0.bits.db
-ln -sf selected-0.sticky-0.shaded-0.bits.db selected-0.sticky-0.shaded-1.bits.db
-ln -sf selected-0.sticky-0.shaded-0.bits.db selected-1.sticky-1.shaded-0.bits.db
-ln -sf selected-0.sticky-0.shaded-0.bits.db selected-1.sticky-0.shaded-1.bits.db
-ln -sf selected-0.sticky-0.shaded-0.bits.db selected-1.sticky-1.shaded-1.bits.db
-ln -sf selected-0.sticky-0.shaded-0.bits.db selected-0.sticky-1.shaded-1.bits.db
-cd ../../fonts
-ln -sf borzoib.ttf menu.ttf
-ln -sf borzoib.ttf text.ttf
diff --git a/checker.sh b/checker.sh
deleted file mode 100755
index a5d54d167..000000000
--- a/checker.sh
+++ /dev/null
@@ -1,167 +0,0 @@
-#!/bin/bash
-# E17 checker script. Makes sure the user has the required programs, and
-# abort if not.
-# By Lyle (term) Kempler; same license applies to this as does the source
-# code it accompanies.
-
-# TODO:
-# - Make it check the actual version, and abort if too old.
-# - Make autogen.sh call it.
-
-# Base programs.
-M4=`which m4`
-AUTOMAKE=`which automake`
-AUTOCONF=`which autoconf`
-LIBTOOL=`which libtool`
-GETTEXT=`which gettext`
-
-# Our libraries.
-IMLIB2_CONFIG=`which imlib2-config`
-EDB_CONFIG=`which edb-config`
-EVAS_CONFIG=`which evas-config`
-EFSD_CONFIG=`which efsd-config`
-ECORE_CONFIG=`which ecore-config`
-EBITS_CONFIG=`which ebits-config`
-EWL_CONFIG=`which ewl-config`
-
-if [ -n "$M4" ]
-then
- echo -n "m4 : "
- $M4 --version
-else
- echo "No m4 found! This is a requirement for building Enlightenment 0.17."
- # Information on where to get it goes here.
- echo
- exit 1
-fi
-
-if [ -n "$AUTOMAKE" ]
-then
- echo -n "automake: "
- $AUTOMAKE --version | grep automake
-else
- echo "No automake found! This is a requirement for building Enlightenment 0.17."
- # Information on where to get it goes here.
- echo
- exit 1
-fi
-
-if [ -n "$AUTOCONF" ]
-then
- echo -n "autoconf: "
- $AUTOCONF --version | grep utoconf
-else
- echo "No autoconf found! This is a requirement for building Enlightenment 0.17."
- # Information on where to get it goes here.
- echo
- exit 1
-fi
-
-if [ -n "$LIBTOOL" ]
-then
- echo -n "libtool : "
- $LIBTOOL --version
-else
- echo "No libtool found! This is a requirement for building Enlightenment 0.17."
- # Information on where to get it goes here.
- echo
- exit 1
-fi
-
-if [ -n "$GETTEXT" ]
-then
- echo -n "gettext : "
- $GETTEXT --version | grep gettext
-else
- echo "No gettext found! This is a requirement for building Enlightenment 0.17."
- # Information on where to get it goes here.
- echo
- exit 1
-fi
-
-echo
-
-if [ -n "$IMLIB2_CONFIG" ]
-then
- echo -n "imlib2-config: "
- $IMLIB2_CONFIG --version
-else
- echo "No imlib2-config found! This is a requirement for building Enlightenment 0.17."
- # Information on where to get it goes here.
- echo
- exit 1
-fi
-
-if [ -n "$EDB_CONFIG" ]
-then
- echo -n "edb-config : "
- $EDB_CONFIG --version
-else
- echo "No edb-config found! This is a requirement for building Enlightenment 0.17."
- # Information on where to get it goes here.
- echo
- exit 1
-fi
-
-if [ -n "$EVAS_CONFIG" ]
-then
- echo -n "evas-config : "
- $EVAS_CONFIG --version
-else
- echo "No evas-config found! This is a requirement for building Enlightenment 0.17."
- # Information on where to get it goes here.
- echo
- exit 1
-fi
-
-if [ -n "$EFSD_CONFIG" ]
-then
- echo -n "efsd-config : "
- $EFSD_CONFIG --version
-else
- echo "No efsd-config found! This is a requirement for building Enlightenment 0.17."
- # Information on where to get it goes here.
- echo
- exit 1
-fi
-
-if [ -n "$ECORE_CONFIG" ]
-then
- echo -n "ecore-config : "
- $ECORE_CONFIG --version
-else
- echo "No ecore-config found! This is a requirement for building Enlightenment 0.17."
- # Information on where to get it goes here.
- echo
- exit 1
-fi
-
-if [ -n "$EBITS_CONFIG" ]
-then
- echo -n "ebits-config : "
- $EBITS_CONFIG --version
-else
- echo "No ebits-config found! This is a requirement for building Enlightenment 0.17."
- # Information on where to get it goes here.
- echo
- exit 1
-fi
-
-#if [ -n "$EWL_CONFIG" ]
-#then
-# echo -n "ewl-config : "
-# $EWL_CONFIG --version
-#else
-# echo "No ewl-config found! This is a requirement for building Enlightenment 0.17."
-# # Information on where to get it goes here.
-# echo
-# exit 1
-#fi
-
-if [ "$1" != "autogen" ]
-then
- echo
- echo "All requirements have been met! Happy building."
- echo
- exit 0
-fi
diff --git a/client/.cvsignore b/client/.cvsignore
deleted file mode 100644
index 03206ec26..000000000
--- a/client/.cvsignore
+++ /dev/null
@@ -1,5 +0,0 @@
-e_ipc_client
-Makefile.in
-Makefile
-.libs
-.deps
diff --git a/client/Makefile.am b/client/Makefile.am
deleted file mode 100644
index 0129f4b01..000000000
--- a/client/Makefile.am
+++ /dev/null
@@ -1,11 +0,0 @@
-## Process this file with automake to produce Makefile.in
-
-INCLUDES =
-
-bin_PROGRAMS = e_ipc_client
-
-e_ipc_client_SOURCES = \
-client.c
-
-e_ipc_client_LDADD =
-
diff --git a/client/client.c b/client/client.c
deleted file mode 100644
index 3d5870007..000000000
--- a/client/client.c
+++ /dev/null
@@ -1,5 +0,0 @@
-#include <stdio.h>
-int main(void)
-{
- return(0);
-}
diff --git a/configure.ac b/configure.ac
deleted file mode 100644
index 810c3a759..000000000
--- a/configure.ac
+++ /dev/null
@@ -1,246 +0,0 @@
-dnl Process this file with autoconf to produce a configure script.
-
-AC_INIT
-AC_CONFIG_SRCDIR([configure.in])
-
-ENLIGHTENMENT_MAJOR=0
-ENLIGHTENMENT_MINOR=17
-ENLIGHTENMENT_MICRO=pre_0
-ENLIGHTENMENT_VERSION=$ENLIGHTENMENT_MAJOR.$ENLIGHTENMENT_MINOR.$ENLIGHTENMENT_MICRO
-
-VERSION=$ENLIGHTENMENT_VERSION
-
-AM_INIT_AUTOMAKE(enlightenment, $VERSION)
-AM_CONFIG_HEADER(config.h)
-
-AC_DEFINE_UNQUOTED(ENLIGHTENMENT_VERSION, "$ENLIGHTENMENT_VERSION")
-AC_SUBST(ENLIGHTENMENT_VERSION)
-AC_DEFINE_UNQUOTED(ENLIGHTENMENT_MAJOR, "$ENLIGHTENMENT_MAJOR")
-AC_SUBST(ENLIGHTENMENT_MAJOR)
-AC_DEFINE_UNQUOTED(ENLIGHTENMENT_MINOR, "$ENLIGHTENMENT_MINOR")
-AC_SUBST(ENLIGHTENMENT_MINOR)
-AC_DEFINE_UNQUOTED(ENLIGHTENMENT_MICRO, "$ENLIGHTENMENT_MICRO")
-AC_SUBST(ENLIGHTENMENT_MICRO)
-
-AC_ISC_POSIX
-AC_PROG_CC
-AM_PROG_CC_STDC
-AC_HEADER_STDC
-AC_C_CONST
-AM_ENABLE_SHARED
-AM_PROG_LIBTOOL
-
-AM_WITH_DMALLOC
-
-dnl Add the languages which your application supports here.
-ALL_LINGUAS=""
-
-dnl Set PACKAGE_LOCALE_DIR in config.h.
-if test "x${prefix}" = "xNONE"; then
- AC_DEFINE_UNQUOTED(PACKAGE_LOCALE_DIR, "${ac_default_prefix}/${DATADIRNAME}/locale")
-else
- AC_DEFINE_UNQUOTED(PACKAGE_LOCALE_DIR, "${prefix}/${DATADIRNAME}/locale")
-fi
-
-dnl Set PACKAGE_DATA_DIR in config.h.
-if test "x${datadir}" = 'x${prefix}/share'; then
- if test "x${prefix}" = "xNONE"; then
- AC_DEFINE_UNQUOTED(PACKAGE_DATA_DIR, "${ac_default_prefix}/share/${PACKAGE}")
- else
- AC_DEFINE_UNQUOTED(PACKAGE_DATA_DIR, "${prefix}/share/${PACKAGE}")
- fi
-else
- AC_DEFINE_UNQUOTED(PACKAGE_DATA_DIR, "${datadir}/${PACKAGE}")
-fi
-
-dnl Set PACKAGE_BIN_DIR in config.h.
-if test "x${datadir}" = 'x${prefix}/bin'; then
- if test "x${prefix}" = "xNONE"; then
- AC_DEFINE_UNQUOTED(PACKAGE_BIN_DIR, "${ac_default_prefix}/bin")
- else
- AC_DEFINE_UNQUOTED(PACKAGE_BIN_DIR, "${prefix}/bin")
- fi
-else
- AC_DEFINE_UNQUOTED(PACKAGE_BIN_DIR, "${bindir}")
-fi
-
-dnl Set PACKAGE_LIB_DIR in config.h.
-if test "x${datadir}" = 'x${prefix}/lib'; then
- if test "x${prefix}" = "xNONE"; then
- AC_DEFINE_UNQUOTED(PACKAGE_LIB_DIR, "${ac_default_prefix}/lib")
- else
- AC_DEFINE_UNQUOTED(PACKAGE_LIB_DIR, "${prefix}/lib")
- fi
-else
- AC_DEFINE_UNQUOTED(PACKAGE_LIB_DIR, "${libdir}")
-fi
-
-dnl Set PACKAGE_SOURCE_DIR in config.h.
-packagesrcdir=`cd $srcdir && pwd`
-AC_DEFINE_UNQUOTED(PACKAGE_SOURCE_DIR, "${packagesrcdir}")
-
-dnl Use -Wall if we have gcc.
-changequote(,)dnl
-if test "x$GCC" = "xyes"; then
- case " $CFLAGS " in
- *[\ \ ]-Wall[\ \ ]*) ;;
- *) CFLAGS="$CFLAGS -Wall" ;;
- esac
-fi
-changequote([,])dnl
-
-dnl Check for Imlib2.
-AC_ARG_WITH(imlib2,
- [ --with-imlib2=DIR use imlib2 in <DIR>],
- [CFLAGS="$CFLAGS -I$withval/include"
- LIBS="-L$withval/lib $LIBS"])
-
-AC_PATH_GENERIC(imlib2,, [
- AC_SUBST(imlib2_libs)
- AC_SUBST(imlib2_cflags)],
- AC_MSG_ERROR(Cannot find imlib2: Is imlib2-config in path?))
-imlib2_libs=`imlib2-config --libs`
-imlib2_cflags=`imlib2-config --cflags`
-
-dnl Check for Evas.
-AC_ARG_WITH(evas,
- [ --with-evas=DIR use evas in <DIR>],
- [CFLAGS="$CFLAGS -I$withval/include"
- LIBS="-L$withval/lib $LIBS"])
-
-AC_PATH_GENERIC(evas,, [
- AC_SUBST(evas_libs)
- AC_SUBST(evas_cflags)],
- AC_MSG_ERROR(Cannot find evas: Is evas-config in path?))
-evas_libs=`evas-config --libs`
-evas_cflags=`evas-config --cflags`
-
-dnl Check for Edb.
-AC_ARG_WITH(edb,
- [ --with-edb=DIR use edb in <DIR>],
- [CFLAGS="$CFLAGS -I$withval/include"
- LIBS="-L$withval/lib $LIBS"])
-
-AC_PATH_GENERIC(edb,, [
- AC_SUBST(edb_libs)
- AC_SUBST(edb_cflags)],
- AC_MSG_ERROR(Cannot find edb: Is edb-config in path?))
-edb_libs=`edb-config --libs`
-edb_cflags=`edb-config --cflags`
-
-dnl Check for Ebits.
-AC_ARG_WITH(ebits,
- [ --with-ebits=DIR use ebits in <DIR>],
- [CFLAGS="$CFLAGS -I$withval/include"
- LIBS="-L$withval/lib $LIBS"])
-
-AC_PATH_GENERIC(ebits,, [
- AC_SUBST(ebits_libs)
- AC_SUBST(ebits_cflags)],
- AC_MSG_ERROR(Cannot find ebits: Is ebits-config in path?))
-ebits_libs=`ebits-config --libs`
-ebits_cflags=`ebits-config --cflags`
-
-dnl Check for Ecore.
-AC_ARG_WITH(ecore,
- [ --with-ecore=DIR use ecore in <DIR>],
- [CFLAGS="$CFLAGS -I$withval/include"
- LIBS="-L$withval/lib $LIBS"])
-
-AC_PATH_GENERIC(ecore,, [
- AC_SUBST(ecore_libs)
- AC_SUBST(ecore_cflags)],
- AC_MSG_ERROR(Cannot find ecore: Is ecore-config in path?))
-ecore_libs=`ecore-config --libs`
-ecore_cflags=`ecore-config --cflags`
-
-dnl Check for Efsd.
-AC_ARG_WITH(efsd,
- [ --with-efsd=DIR use efsd in <DIR>],
- [CFLAGS="$CFLAGS -I$withval/include"
- LIBS="-L$withval/lib $LIBS"])
-
-AC_PATH_GENERIC(efsd,, [
- AC_SUBST(efsd_libs)
- AC_SUBST(efsd_cflags)],
- AC_MSG_ERROR(Cannot find efsd: Is efsd-config in path?))
-efsd_libs=`efsd-config --libs`
-efsd_cflags=`efsd-config --cflags`
-
-dnl Check for Edb.
-AC_ARG_WITH(ebg,
- [ --with-ebg=DIR use ebg in <DIR>],
- [CFLAGS="$CFLAGS -I$withval/include"
- LIBS="-L$withval/lib $LIBS"])
-
-AC_PATH_GENERIC(ebg,, [
- AC_SUBST(ebg_libs)
- AC_SUBST(ebg_cflags)],
- AC_MSG_ERROR(Cannot find ebg: Is ebg-config in path?))
-ebg_libs=`ebg-config --libs`
-ebg_cflags=`ebg-config --cflags`
-
-CFLAGS=$imlib2_cflags
-LIBS=$imlib2_libs
-dnl Check for db loader.
-AC_TRY_RUN([
-#include <stdio.h>
-#include <unistd.h>
-#include <stdlib.h>
-#include <X11/Xlib.h>
-#include <Imlib2.h>
-
-int main(int argc, char **argv) {
-Imlib_Image im;
-int width;
-
-im = imlib_load_image("$packagesrcdir/data/test/test.db:/test/image");
-if (!im) exit(-1);
-imlib_context_set_image(im);
-width = imlib_image_get_width();
-if (width != 7) exit(-1);
-exit(0);
-return 0;
-argv=NULL;
-argc=0;
-}
-],
-[echo "checking for imlib2 db loader... yes"],
-[
-echo "checking for imlib2 db loader... no"
-AC_MSG_ERROR(Cannot detect db loader: Have you installed imlib2_loaders?)
-],
-AC_MSG_ERROR(Sorry. Enlightenment cannot be cross-compiled.))
-
-
-dnl Checking for Perl:
-AC_PATH_PROG(PERL,perl,0)
-AC_SUBST(PERL)
-
-
-dnl Look for jade for sgml translations.
-AC_ARG_WITH(dbsheets,
- [ --with-dbsheets=DIR use DIR to specify your DocBook stylesheets installation path.],
- DB_STYLESHEETS="$withval", DB_STYLESHEETS="/usr/lib/sgml/stylesheet/dsssl/docbook/nwalsh")
-AC_SUBST(DB_STYLESHEETS)
-AC_PATH_PROG(JADE, jade)
-AM_CONDITIONAL(HAVE_JADE, test "x$JADE" != "x" && test -d "$DB_STYLESHEETS")
-AC_CHECK_LIB(c, dlopen, LIBDL="", [AC_CHECK_LIB(dl, dlopen, LIBDL="-ldl")])
-AC_SUBST(LIBDL)
-
-AC_CONFIG_FILES([
-Makefile
-src/Makefile
-lib/Makefile
-client/Makefile
-tools/Makefile
-doc/Makefile
-doc/kernel-doc
-doc/html-customizations.dsl
-data/scripts/build_iconbar_db.sh
-])
-AC_CONFIG_COMMANDS([default],[[
-chmod +x doc/kernel-doc
-]],[[]])
-AC_OUTPUT
-
diff --git a/configure.in b/configure.in
deleted file mode 100644
index 3f143350d..000000000
--- a/configure.in
+++ /dev/null
@@ -1,242 +0,0 @@
-dnl Process this file with autoconf to produce a configure script.
-
-AC_INIT
-
-ENLIGHTENMENT_MAJOR=0
-ENLIGHTENMENT_MINOR=17
-ENLIGHTENMENT_MICRO=pre_0
-ENLIGHTENMENT_VERSION=$ENLIGHTENMENT_MAJOR.$ENLIGHTENMENT_MINOR.$ENLIGHTENMENT_MICRO
-
-VERSION=$ENLIGHTENMENT_VERSION
-
-AM_INIT_AUTOMAKE(enlightenment, $VERSION)
-AM_CONFIG_HEADER(config.h)
-
-AC_DEFINE_UNQUOTED(ENLIGHTENMENT_VERSION, "$ENLIGHTENMENT_VERSION")
-AC_SUBST(ENLIGHTENMENT_VERSION)
-AC_DEFINE_UNQUOTED(ENLIGHTENMENT_MAJOR, "$ENLIGHTENMENT_MAJOR")
-AC_SUBST(ENLIGHTENMENT_MAJOR)
-AC_DEFINE_UNQUOTED(ENLIGHTENMENT_MINOR, "$ENLIGHTENMENT_MINOR")
-AC_SUBST(ENLIGHTENMENT_MINOR)
-AC_DEFINE_UNQUOTED(ENLIGHTENMENT_MICRO, "$ENLIGHTENMENT_MICRO")
-AC_SUBST(ENLIGHTENMENT_MICRO)
-
-AC_ISC_POSIX
-AC_PROG_CC
-AM_PROG_CC_STDC
-AC_HEADER_STDC
-AC_C_CONST
-AM_ENABLE_SHARED
-AM_PROG_LIBTOOL
-
-AM_WITH_DMALLOC
-
-dnl Add the languages which your application supports here.
-ALL_LINGUAS=""
-
-dnl Set PACKAGE_LOCALE_DIR in config.h.
-if test "x${prefix}" = "xNONE"; then
- AC_DEFINE_UNQUOTED(PACKAGE_LOCALE_DIR, "${ac_default_prefix}/${DATADIRNAME}/locale")
-else
- AC_DEFINE_UNQUOTED(PACKAGE_LOCALE_DIR, "${prefix}/${DATADIRNAME}/locale")
-fi
-
-dnl Set PACKAGE_DATA_DIR in config.h.
-if test "x${datadir}" = 'x${prefix}/share'; then
- if test "x${prefix}" = "xNONE"; then
- AC_DEFINE_UNQUOTED(PACKAGE_DATA_DIR, "${ac_default_prefix}/share/${PACKAGE}")
- else
- AC_DEFINE_UNQUOTED(PACKAGE_DATA_DIR, "${prefix}/share/${PACKAGE}")
- fi
-else
- AC_DEFINE_UNQUOTED(PACKAGE_DATA_DIR, "${datadir}/${PACKAGE}")
-fi
-
-dnl Set PACKAGE_BIN_DIR in config.h.
-if test "x${datadir}" = 'x${prefix}/bin'; then
- if test "x${prefix}" = "xNONE"; then
- AC_DEFINE_UNQUOTED(PACKAGE_BIN_DIR, "${ac_default_prefix}/bin")
- else
- AC_DEFINE_UNQUOTED(PACKAGE_BIN_DIR, "${prefix}/bin")
- fi
-else
- AC_DEFINE_UNQUOTED(PACKAGE_BIN_DIR, "${bindir}")
-fi
-
-dnl Set PACKAGE_LIB_DIR in config.h.
-if test "x${datadir}" = 'x${prefix}/lib'; then
- if test "x${prefix}" = "xNONE"; then
- AC_DEFINE_UNQUOTED(PACKAGE_LIB_DIR, "${ac_default_prefix}/lib")
- else
- AC_DEFINE_UNQUOTED(PACKAGE_LIB_DIR, "${prefix}/lib")
- fi
-else
- AC_DEFINE_UNQUOTED(PACKAGE_LIB_DIR, "${libdir}")
-fi
-
-dnl Set PACKAGE_SOURCE_DIR in config.h.
-packagesrcdir=`cd $srcdir && pwd`
-AC_DEFINE_UNQUOTED(PACKAGE_SOURCE_DIR, "${packagesrcdir}")
-
-dnl Use -Wall if we have gcc.
-changequote(,)dnl
-if test "x$GCC" = "xyes"; then
- case " $CFLAGS " in
- *[\ \ ]-Wall[\ \ ]*) ;;
- *) CFLAGS="$CFLAGS -Wall" ;;
- esac
-fi
-changequote([,])dnl
-
-dnl Check for Imlib2.
-AC_ARG_WITH(imlib2,
- [ --with-imlib2=DIR use imlib2 in <DIR>],
- [CFLAGS="$CFLAGS -I$withval/include"
- LIBS="-L$withval/lib $LIBS"])
-
-AC_PATH_GENERIC(imlib2,, [
- AC_SUBST(imlib2_libs)
- AC_SUBST(imlib2_cflags)],
- AC_MSG_ERROR(Cannot find imlib2: Is imlib2-config in path?))
-imlib2_libs=`imlib2-config --libs`
-imlib2_cflags=`imlib2-config --cflags`
-
-dnl Check for Evas.
-AC_ARG_WITH(evas,
- [ --with-evas=DIR use evas in <DIR>],
- [CFLAGS="$CFLAGS -I$withval/include"
- LIBS="-L$withval/lib $LIBS"])
-
-AC_PATH_GENERIC(evas,, [
- AC_SUBST(evas_libs)
- AC_SUBST(evas_cflags)],
- AC_MSG_ERROR(Cannot find evas: Is evas-config in path?))
-evas_libs=`evas-config --libs`
-evas_cflags=`evas-config --cflags`
-
-dnl Check for Edb.
-AC_ARG_WITH(edb,
- [ --with-edb=DIR use edb in <DIR>],
- [CFLAGS="$CFLAGS -I$withval/include"
- LIBS="-L$withval/lib $LIBS"])
-
-AC_PATH_GENERIC(edb,, [
- AC_SUBST(edb_libs)
- AC_SUBST(edb_cflags)],
- AC_MSG_ERROR(Cannot find edb: Is edb-config in path?))
-edb_libs=`edb-config --libs`
-edb_cflags=`edb-config --cflags`
-
-dnl Check for Ebits.
-AC_ARG_WITH(ebits,
- [ --with-ebits=DIR use ebits in <DIR>],
- [CFLAGS="$CFLAGS -I$withval/include"
- LIBS="-L$withval/lib $LIBS"])
-
-AC_PATH_GENERIC(ebits,, [
- AC_SUBST(ebits_libs)
- AC_SUBST(ebits_cflags)],
- AC_MSG_ERROR(Cannot find ebits: Is ebits-config in path?))
-ebits_libs=`ebits-config --libs`
-ebits_cflags=`ebits-config --cflags`
-
-dnl Check for Ecore.
-AC_ARG_WITH(ecore,
- [ --with-ecore=DIR use ecore in <DIR>],
- [CFLAGS="$CFLAGS -I$withval/include"
- LIBS="-L$withval/lib $LIBS"])
-
-AC_PATH_GENERIC(ecore,, [
- AC_SUBST(ecore_libs)
- AC_SUBST(ecore_cflags)],
- AC_MSG_ERROR(Cannot find ecore: Is ecore-config in path?))
-ecore_libs=`ecore-config --libs`
-ecore_cflags=`ecore-config --cflags`
-
-dnl Check for Efsd.
-AC_ARG_WITH(efsd,
- [ --with-efsd=DIR use efsd in <DIR>],
- [CFLAGS="$CFLAGS -I$withval/include"
- LIBS="-L$withval/lib $LIBS"])
-
-AC_PATH_GENERIC(efsd,, [
- AC_SUBST(efsd_libs)
- AC_SUBST(efsd_cflags)],
- AC_MSG_ERROR(Cannot find efsd: Is efsd-config in path?))
-efsd_libs=`efsd-config --libs`
-efsd_cflags=`efsd-config --cflags`
-
-dnl Check for Edb.
-AC_ARG_WITH(ebg,
- [ --with-ebg=DIR use ebg in <DIR>],
- [CFLAGS="$CFLAGS -I$withval/include"
- LIBS="-L$withval/lib $LIBS"])
-
-AC_PATH_GENERIC(ebg,, [
- AC_SUBST(ebg_libs)
- AC_SUBST(ebg_cflags)],
- AC_MSG_ERROR(Cannot find ebg: Is ebg-config in path?))
-ebg_libs=`ebg-config --libs`
-ebg_cflags=`ebg-config --cflags`
-
-CFLAGS=$imlib2_cflags
-LIBS=$imlib2_libs
-dnl Check for db loader.
-AC_TRY_RUN([
-#include <stdio.h>
-#include <unistd.h>
-#include <stdlib.h>
-#include <X11/Xlib.h>
-#include <Imlib2.h>
-
-int main(int argc, char **argv) {
-Imlib_Image im;
-int width;
-
-im = imlib_load_image("$packagesrcdir/data/test/test.db:/test/image");
-if (!im) exit(-1);
-imlib_context_set_image(im);
-width = imlib_image_get_width();
-if (width != 7) exit(-1);
-exit(0);
-return 0;
-argv=NULL;
-argc=0;
-}
-],
-[echo "checking for imlib2 db loader... yes"],
-[
-echo "checking for imlib2 db loader... no"
-AC_MSG_ERROR(Cannot detect db loader: Have you installed imlib2_loaders?)
-],
-AC_MSG_ERROR(Sorry. Enlightenment cannot be cross-compiled.))
-
-
-dnl Checking for Perl:
-AC_PATH_PROG(PERL,perl,0)
-AC_SUBST(PERL)
-
-
-dnl Look for jade for sgml translations.
-AC_ARG_WITH(dbsheets,
- [ --with-dbsheets=DIR use DIR to specify your DocBook stylesheets installation path.],
- DB_STYLESHEETS="$withval", DB_STYLESHEETS="/usr/lib/sgml/stylesheet/dsssl/docbook/nwalsh")
-AC_SUBST(DB_STYLESHEETS)
-AC_PATH_PROG(JADE, jade)
-AM_CONDITIONAL(HAVE_JADE, test "x$JADE" != "x" && test -d "$DB_STYLESHEETS")
-AC_CHECK_LIB(c, dlopen, LIBDL="",[AC_CHECK_LIB(dl, dlopen, LIBDL="-ldl")])
-AC_SUBST(LIBDL)
-
-AC_OUTPUT([
-Makefile
-src/Makefile
-lib/Makefile
-client/Makefile
-tools/Makefile
-doc/Makefile
-doc/kernel-doc
-doc/html-customizations.dsl
-data/scripts/build_iconbar_db.sh
-], [
-chmod +x doc/kernel-doc
-])
diff --git a/data/backgrounds/default.bg.db b/data/backgrounds/default.bg.db
deleted file mode 100644
index 62ea49ee0..000000000
--- a/data/backgrounds/default.bg.db
+++ /dev/null
Binary files differ
diff --git a/data/backgrounds/grassy_irish_cliff.bg.db b/data/backgrounds/grassy_irish_cliff.bg.db
deleted file mode 100644
index d4acdc958..000000000
--- a/data/backgrounds/grassy_irish_cliff.bg.db
+++ /dev/null
Binary files differ
diff --git a/data/backgrounds/ivy_wall_shadowed.bg.db b/data/backgrounds/ivy_wall_shadowed.bg.db
deleted file mode 100644
index 1a9337852..000000000
--- a/data/backgrounds/ivy_wall_shadowed.bg.db
+++ /dev/null
Binary files differ
diff --git a/data/backgrounds/ladybug_rock_grass.bg.db b/data/backgrounds/ladybug_rock_grass.bg.db
deleted file mode 100644
index 6c5f7d5e0..000000000
--- a/data/backgrounds/ladybug_rock_grass.bg.db
+++ /dev/null
Binary files differ
diff --git a/data/backgrounds/view.bg.db b/data/backgrounds/view.bg.db
deleted file mode 100644
index d6ffa9efb..000000000
--- a/data/backgrounds/view.bg.db
+++ /dev/null
Binary files differ
diff --git a/data/borders/borderless/selected-0.sticky-0.shaded-0.bits.db b/data/borders/borderless/selected-0.sticky-0.shaded-0.bits.db
deleted file mode 100644
index 610fd9a17..000000000
--- a/data/borders/borderless/selected-0.sticky-0.shaded-0.bits.db
+++ /dev/null
Binary files differ
diff --git a/data/borders/default/selected-0.sticky-0.shaded-0.bits.db b/data/borders/default/selected-0.sticky-0.shaded-0.bits.db
deleted file mode 100644
index 05cc81536..000000000
--- a/data/borders/default/selected-0.sticky-0.shaded-0.bits.db
+++ /dev/null
Binary files differ
diff --git a/data/borders/default/selected-1.sticky-0.shaded-0.bits.db b/data/borders/default/selected-1.sticky-0.shaded-0.bits.db
deleted file mode 100644
index 489476bb9..000000000
--- a/data/borders/default/selected-1.sticky-0.shaded-0.bits.db
+++ /dev/null
Binary files differ
diff --git a/data/config/behavior/default/actions.db b/data/config/behavior/default/actions.db
deleted file mode 100644
index 934df41f1..000000000
--- a/data/config/behavior/default/actions.db
+++ /dev/null
Binary files differ
diff --git a/data/config/behavior/default/apps_menu.db b/data/config/behavior/default/apps_menu.db
deleted file mode 100644
index cab6d4ecf..000000000
--- a/data/config/behavior/default/apps_menu.db
+++ /dev/null
Binary files differ
diff --git a/data/config/behavior/default/behavior.db b/data/config/behavior/default/behavior.db
deleted file mode 100644
index 6775c1424..000000000
--- a/data/config/behavior/default/behavior.db
+++ /dev/null
Binary files differ
diff --git a/data/config/behavior/default/grabs.db b/data/config/behavior/default/grabs.db
deleted file mode 100644
index b2e4a54fc..000000000
--- a/data/config/behavior/default/grabs.db
+++ /dev/null
Binary files differ
diff --git a/data/config/behavior/default/settings.db b/data/config/behavior/default/settings.db
deleted file mode 100644
index e76772606..000000000
--- a/data/config/behavior/default/settings.db
+++ /dev/null
Binary files differ
diff --git a/data/cursors/Close.db b/data/cursors/Close.db
deleted file mode 100644
index 74d03f81c..000000000
--- a/data/cursors/Close.db
+++ /dev/null
Binary files differ
diff --git a/data/cursors/Default.db b/data/cursors/Default.db
deleted file mode 100644
index 57ff1a4c0..000000000
--- a/data/cursors/Default.db
+++ /dev/null
Binary files differ
diff --git a/data/cursors/Iconify.db b/data/cursors/Iconify.db
deleted file mode 100644
index 71d80d221..000000000
--- a/data/cursors/Iconify.db
+++ /dev/null
Binary files differ
diff --git a/data/cursors/Max_Size.db b/data/cursors/Max_Size.db
deleted file mode 100644
index 9d1c2142f..000000000
--- a/data/cursors/Max_Size.db
+++ /dev/null
Binary files differ
diff --git a/data/cursors/Menu.db b/data/cursors/Menu.db
deleted file mode 100644
index b84f74217..000000000
--- a/data/cursors/Menu.db
+++ /dev/null
Binary files differ
diff --git a/data/cursors/Resize.db b/data/cursors/Resize.db
deleted file mode 100644
index 20a6fcc29..000000000
--- a/data/cursors/Resize.db
+++ /dev/null
Binary files differ
diff --git a/data/cursors/Resize_Horizontal.db b/data/cursors/Resize_Horizontal.db
deleted file mode 100644
index 573ac1732..000000000
--- a/data/cursors/Resize_Horizontal.db
+++ /dev/null
Binary files differ
diff --git a/data/cursors/Resize_Vertical.db b/data/cursors/Resize_Vertical.db
deleted file mode 100644
index b13faa3ce..000000000
--- a/data/cursors/Resize_Vertical.db
+++ /dev/null
Binary files differ
diff --git a/data/cursors/Title_Bar.db b/data/cursors/Title_Bar.db
deleted file mode 100644
index 9bde4d4a7..000000000
--- a/data/cursors/Title_Bar.db
+++ /dev/null
Binary files differ
diff --git a/data/cursors/View_Icon.db b/data/cursors/View_Icon.db
deleted file mode 100644
index 26f88e60a..000000000
--- a/data/cursors/View_Icon.db
+++ /dev/null
Binary files differ
diff --git a/data/entries/base.bits.db b/data/entries/base.bits.db
deleted file mode 100644
index f5490c47e..000000000
--- a/data/entries/base.bits.db
+++ /dev/null
Binary files differ
diff --git a/data/entries/cursor.bits.db b/data/entries/cursor.bits.db
deleted file mode 100644
index 54b00e215..000000000
--- a/data/entries/cursor.bits.db
+++ /dev/null
Binary files differ
diff --git a/data/entries/selection.bits.db b/data/entries/selection.bits.db
deleted file mode 100644
index 54b00e215..000000000
--- a/data/entries/selection.bits.db
+++ /dev/null
Binary files differ
diff --git a/data/epplets/changer.bits.db b/data/epplets/changer.bits.db
deleted file mode 100644
index 546f0edf6..000000000
--- a/data/epplets/changer.bits.db
+++ /dev/null
Binary files differ
diff --git a/data/epplets/clock/README b/data/epplets/clock/README
deleted file mode 100644
index 3981a3437..000000000
--- a/data/epplets/clock/README
+++ /dev/null
@@ -1,12 +0,0 @@
-This directory contains the following epplets:
- - clock.fe
- - large time-only display
- - clock2.fe
- - more graphical clock display with date as well as time
-
-To use these epplets, simply copy this directory to ~/.e/desktop/default/.e_epplets. This will show clock.fe by default. In order to use clock2.fe, simply rename clock2.fe to clock.fe.
-
-Thanks to:
- - Brian Mattern for helping me get started
- - Thibaud for the clock2 background graphic
- - The graphic is from his Saona theme (http://www.deviantart.com/deviation.php?id=73252) for HoverDesk
diff --git a/data/epplets/clock/clock.fe b/data/epplets/clock/clock.fe
deleted file mode 100644
index 733bd345f..000000000
--- a/data/epplets/clock/clock.fe
+++ /dev/null
@@ -1,123 +0,0 @@
-/*-------------------------------------------------------*
- * Simple clock epplet *
- * by Brendon Davidson *
- * Thanks to Brian Mattern for helping me understand *
- * how epplets work. *
- *-------------------------------------------------------*/
-
-uses String, Time;
-
-/* global vars */
-global {
- object epp;
- object dateObj;
- string theDay = "";
-}
-
-/* function to update time display */
-function time_update(object data, number val){
- string date = Time.ctime(Time.time());
- string month = String.copySection(date,4,7);
- string day = String.copySection(date,8,10);
- string year = String.copySection(date,20,24);
- string time = String.copySection(date,11,20);
- number hour = String.toLong(String.copySection(time,0,2));
- string min = String.copySection(time,3,5);
- string seconds = String.copySection(time,6,8);
- string timeofday = "AM";
-
- if(hour>12||hour==12){
- timeofday = "PM";
- hour = hour - 12;
- }
- if(hour==0) hour = 12;
-
-
- /* Is it time to update the date? */
- if(day!=theDay){
- theDay = day;
- switch(month){
- case "Jan":
- month = "January";
- break;
- case "Feb":
- month = "February";
- break;
- case "Mar":
- month = "March";
- break;
- case "Apr":
- month = "April";
- break;
- case "Jun":
- month = "June";
- break;
- case "Jul":
- month = "July";
- break;
- case "Aug":
- month = "August";
- break;
- case "Sep":
- month = "September";
- break;
- case "Oct":
- month = "October";
- break;
- case "Nov":
- month = "November";
- break;
- case "Dec":
- month = "December";
- break;
- }
- dateObj.setText("$month $day, $year");
- }
-
-
- data.setText("$hour:$min:$seconds $timeofday");
- epp.addTimer("clockTimer",0.5,"time_update",0,data);
-}
-
-/* main function */
-
-/* declare vars */
-object timeObj;
-object backgroundObj;
-
-/* create a new epplet */
-epp = new Epplet();
-
-/* move the epplet to desired position*/
-epp.resize(100, 30);
-
-/* create background image object for clock */
-backgroundObj = new EvasObject(epp);
-backgroundObj.addImage(epp.getEppletDir()+"clock.png");
-backgroundObj.move(epp.getX(),epp.getY());
-backgroundObj.setLayer(9998);
-backgroundObj.show();
-
-/* create text object for clock display */
-timeObj = new EvasObject(epp);
-timeObj.addText("borzoib",6,"Hi");
-timeObj.move(epp.getX()+epp.getW()-40, epp.getY()+4);
-timeObj.setLayer(9999);
-timeObj.setColor(0,0,0,140);
-timeObj.show();
-
-/* create text object for date display */
-dateObj = new EvasObject(epp);
-dateObj.addText("borzoib",6,"Hello");
-dateObj.move(epp.getX()+epp.getW()-60,epp.getY()+12);
-dateObj.setLayer(9999);
-dateObj.setColor(0,0,0,140);
-dateObj.show();
-
-/* update clock display */
-time_update(timeObj,0);
-
-
-
-
-
diff --git a/data/epplets/clock/clock.png b/data/epplets/clock/clock.png
deleted file mode 100644
index 198664c40..000000000
--- a/data/epplets/clock/clock.png
+++ /dev/null
Binary files differ
diff --git a/data/epplets/clock/clock2.fe b/data/epplets/clock/clock2.fe
deleted file mode 100644
index cd10f6c2a..000000000
--- a/data/epplets/clock/clock2.fe
+++ /dev/null
@@ -1,122 +0,0 @@
-/*-------------------------------------------------------*
- * Simple clock epplet *
- * by Brendon Davidson *
- * Thanks to Brian Mattern for helping me understand *
- * how epplets work. *
- *-------------------------------------------------------*/
-
-uses String, Time;
-
-/* global vars */
-global {
- object epp;
- object dateObj;
- string theDay = "";
-}
-
-/* function to update time display */
-function time_update(object data, number val){
- string date = Time.ctime(Time.time());
- string month = String.copySection(date,4,7);
- string day = String.copySection(date,8,10);
- string year = String.copySection(date,20,24);
- string time = String.copySection(date,11,20);
- number hour = String.toLong(String.copySection(time,0,2));
- string min = String.copySection(time,3,5);
- string seconds = String.copySection(time,6,8);
- string timeofday = "AM";
-
- if(hour>12||hour==12){
- timeofday = "PM";
- hour = hour - 12;
- }
- if(hour==0) hour = 12;
-
-
- /* Is it time to update the date? */
- if(day!=theDay){
- theDay = day;
- switch(month){
- case "Jan":
- month = "January";
- break;
- case "Feb":
- month = "February";
- break;
- case "Mar":
- month = "March";
- break;
- case "Apr":
- month = "April";
- break;
- case "Jun":
- month = "June";
- break;
- case "Jul":
- month = "July";
- break;
- case "Aug":
- month = "August";
- break;
- case "Sep":
- month = "September";
- break;
- case "Oct":
- month = "October";
- break;
- case "Nov":
- month = "November";
- break;
- case "Dec":
- month = "December";
- break;
- }
- dateObj.setText("$month $day, $year");
- }
-
-
- data.setText("$hour:$min:$seconds $timeofday");
- epp.addTimer("clockTimer",0.5,"time_update",0,data);
-}
-
-/* main function */
-
-/* declare vars */
-object timeObj;
-object backgroundObj;
-
-/* create a new epplet */
-epp = new Epplet();
-
-epp.resize(100, 30);
-
-/* create background image object for clock */
-backgroundObj = new EvasObject(epp);
-backgroundObj.addImage(epp.getEppletDir()+"clock.png");
-backgroundObj.move(epp.getX(),epp.getY());
-backgroundObj.setLayer(9998);
-backgroundObj.show();
-
-/* create text object for clock display */
-timeObj = new EvasObject(epp);
-timeObj.addText("borzoib",8,"");
-timeObj.move(epp.getX()+epp.getW()-33, epp.getY()+6);
-timeObj.setLayer(9999);
-timeObj.setColor(0,0,0,140);
-timeObj.show();
-
-/* create text object for date display */
-dateObj = new EvasObject(epp);
-dateObj.addText("borzoib",8,"");
-dateObj.move(epp.getX()+epp.getW()-60,epp.getY()+35);
-dateObj.setLayer(9999);
-dateObj.setColor(0,0,0,140);
-dateObj.show();
-
-/* update clock display */
-time_update(timeObj,0);
-
-
-
-
-
diff --git a/data/epplets/clock/plank.ttf b/data/epplets/clock/plank.ttf
deleted file mode 100644
index a249a78f8..000000000
--- a/data/epplets/clock/plank.ttf
+++ /dev/null
Binary files differ
diff --git a/data/epplets/deskswitcher.fe b/data/epplets/deskswitcher.fe
deleted file mode 100644
index 95c557b8b..000000000
--- a/data/epplets/deskswitcher.fe
+++ /dev/null
@@ -1,73 +0,0 @@
-/*
- An ebits version of the desktop switcher.
- Written by James Carscadden and Brian Mattern
-
- Use bits named Changer_# where # is 0 - 7 for the buttons. The disabled state
- is used for the current desktop.
-*/
-
-uses Console, String;
-
-/* define observer function */
-function changerObserver(object data, number desk)
-{
- number i, n;
- /* get the desktop number as an int. n is passed as a float (0.000000, 1.00000000, ...) and i just want (0, 1, ...) */
- n = String.toLong(String.copySection("" + desk, 0, 1));
- Console.println("in changerObserver: " + desk + ", " + n);
-
- for (i = 0; i < 8; i++)
- data.setState("Changer_" + i, "normal");
- data.setState("Changer_" + n, "disabled");
-}
-
-/* define callback function */
-function changer_button_cb(object ev, string c, number b, number x, number y, number ox, number oy, number ow, number oh)
-{
- number n, i;
-
- Console.println("in changer_button_cb: " + c);
- /* the '+ " "' is included to make it work with broken ferite .99.4 String.copySection() func */
- n = String.toLong(String.copySection(c + " ", 8, 9));
- e.flip_to_desktop(n);
-}
-
-/* ---------------------main func-------------------------- */
-
-/* declare vars */
-object epp;
-object ebits;
-number i;
-
-/* create a new epplet, required */
-epp = new Epplet();
-
-/* add an ebits object to the epplet */
-ebits = new Ebits("changer.bits.db", epp);
-
-/* move the epplet to the top right corner */
-epp.move(epp.getViewW() - 100, 0);
-
-/* set the ebits object as the main epplet bits */
-epp.setBits(ebits);
-
-/* display the epplet. this resizes / moves the main epplet bits to the geometry of the epplet */
-epp.display();
-
-/* set up callbacks for when button is pressed */
-ebits.setCallback("Changer_0", "changer_button_cb", ebits);
-ebits.setCallback("Changer_1", "changer_button_cb", ebits);
-ebits.setCallback("Changer_2", "changer_button_cb", ebits);
-ebits.setCallback("Changer_3", "changer_button_cb", ebits);
-ebits.setCallback("Changer_4", "changer_button_cb", ebits);
-ebits.setCallback("Changer_5", "changer_button_cb", ebits);
-ebits.setCallback("Changer_6", "changer_button_cb", ebits);
-ebits.setCallback("Changer_7", "changer_button_cb", ebits);
-
-/* e starts on desktop 0, so set it disabled */
-ebits.setState("Changer_0", "disabled");
-
-/* add observer, when the desktop is switched, the function "deskSwitchObserver is called, and ebits is passed
- along with it (although it isn't used);*/
-epp.addDesktopObserver("changerObserver", ebits);
-
diff --git a/data/epplets/deskswitcher/deskswitcher.fe b/data/epplets/deskswitcher/deskswitcher.fe
deleted file mode 100644
index 2bc25e9a7..000000000
--- a/data/epplets/deskswitcher/deskswitcher.fe
+++ /dev/null
@@ -1,122 +0,0 @@
-/*
- An simple example epplet that uses evas objects.
- Shows 8 buttons in the top right corner. Click on one to go to that deskop.
- Currently it won't notice if you change desktops by other methods, so it
- won't update.
-*/
-
-uses Console, Array;
-
-global {
- array desks;
-}
-
-/* set up observer functions */
-function deskSwitchObserver(object data, number desk)
-{
- number i;
- Console.println("in deskSwitchObserver: " + desk);
-
- for(i = 0; i < Array.size(desks); i++)
- {
- if (i != desk)
- {
- desks[i].obj.setColor(255,255,255,128);
- }
- }
- desks[desk].obj.setColor(255,255,255,255);
-}
-
-
-
-/* set up callback function */
-function downCB(object d, object ev, number b, number x, number y)
-{
- d.obj.setColor(255,255,255,255);
-}
-
-function upCB(object d, object ev, number b, number x, number y)
-{
- number i;
-
- e.flip_to_desktop(d.num);
-
- /* dim all buttons that aren't this one */
- for(i = 0; i < Array.size(desks); i++)
- {
- if (i != d.num)
- {
- desks[i].obj.setColor(255,255,255,128);
- }
- }
-}
-
-class DesktopButton
-{
- object epp, obj;
- number num;
-
- function DesktopButton(object e, number n)
- {
- self.epp = e;
- self.num = n;
- }
-
- function setup()
- {
-
- self.obj = new EvasObject(self.epp);
- self.obj.addImage(self.epp.getEppletDir() + "desktop.png");
-
- self.obj.move(self.epp.getX() + (self.num % 4) * (self.obj.getW() + 5),
- self.epp.getY() + (self.num / 4) * (self.obj.getH() + 5));
- self.obj.setLayer(10000);
- self.obj.setColor(255, 255, 255, 128);
- self.obj.show();
-
- self.obj.setCallback("CALLBACK_MOUSE_DOWN", "downCB", self);
- self.obj.setCallback("CALLBACK_MOUSE_UP", "upCB", self);
-
- }
-}
-
-
-/* main func */
-
-/* declare vars */
-object epp;
-object bg;
-number i;
-
-/* create a new epplet, required */
-epp = new Epplet();
-
-/* move the epplet to the top right corner */
-epp.move(epp.getViewW() - 100, 0);
-epp.resize(200, 45);
-
-
-/* set up a transparent background to prevent menu popup */
-bg = new EvasObject(epp);
-bg.addRectangle();
-bg.move(epp.getX(), epp.getY());
-bg.resize(epp.getW(), epp.getH());
-bg.setLayer(9999);
-bg.setColor(255, 255, 255, 0);
-bg.show();
-
-/* build DesktopButton's */
-for (i = 0; i < 8; i++)
-{
- Console.println("in loop");
- desks[] = new DesktopButton(epp, i);
- desks[i].setup();
-}
-
-/* add observer, when the desktop is switched, the function "deskSwitchObserver is called, and passed epp along with it (although it isn't used);*/
-
-epp.addDesktopObserver("deskSwitchObserver", epp);
-
-/* start out by highlighting the current desktop */
-desks[e.get_current_desktop()].obj.setColor(255, 255, 255, 255);
-
diff --git a/data/epplets/deskswitcher/desktop.png b/data/epplets/deskswitcher/desktop.png
deleted file mode 100644
index 861d01612..000000000
--- a/data/epplets/deskswitcher/desktop.png
+++ /dev/null
Binary files differ
diff --git a/data/epplets/epplets.bits.db b/data/epplets/epplets.bits.db
deleted file mode 100644
index 4b8e44709..000000000
--- a/data/epplets/epplets.bits.db
+++ /dev/null
Binary files differ
diff --git a/data/epplets/uptime/uptime.fe b/data/epplets/uptime/uptime.fe
deleted file mode 100644
index 01458585b..000000000
--- a/data/epplets/uptime/uptime.fe
+++ /dev/null
@@ -1,107 +0,0 @@
-
-uses String, File, Console;
-
-global
-{
- object epplet;
- object eppletBackground;
- object uptimeLabel;
- object loadLabel;
-}
-
-function create_epplet()
-{
- epplet = new Epplet();
- epplet.resize(127, 24);
- eppletBackground = new EvasObject(epplet);
- eppletBackground.addImage(epplet.getEppletDir() + "uptime.png");
- eppletBackground.move(epplet.getX(), epplet.getY());
- eppletBackground.setLayer(9998);
- eppletBackground.show();
-
- uptimeLabel = new EvasObject(epplet);
- uptimeLabel.addText("borzoib", 6, "");
- uptimeLabel.move(epplet.getX() + epplet.getW() - 12 - uptimeLabel.getW(), epplet.getY()+4);
- uptimeLabel.setLayer(9999);
- uptimeLabel.setColor(0, 0, 0, 140);
- uptimeLabel.show();
-
- loadLabel = new EvasObject(epplet);
- loadLabel.addText("borzoib", 6,"");
- loadLabel.move(epplet.getX() + epplet.getW() - 12 - loadLabel.getW(), epplet.getY()+12);
- loadLabel.setLayer(9999);
- loadLabel.setColor(0, 0, 0, 140);
- loadLabel.show();
-}
-
-function update_uptime(object data, number val)
-{
- object file;
- number uptime_num, udays, uhours, uminutes;
- string uptime_str;
-
- file = new File();
-
- file->open("/proc/uptime", "r", "");
-
- uptime_str = file->readln(1024);
- uptime_str =~ s/ .+//;
-
- uptime_num = String.toLong(uptime_str);
-
- file->close();
-
- udays = uptime_num / 86400;
- uhours = (uptime_num % 86400) / 3600;
- uminutes = ((uptime_num % 86400) % 3600) / 60;
-
- uptime_str = "" + udays + "day";
-
- if (udays != 1)
- uptime_str += "s";
-
- uptime_str += " " + uhours + "hour";
-
- if (uhours != 1)
- uptime_str += "s";
-
- uptime_str += " " + uminutes + "min";
-
- if (uminutes != 1)
- uptime_str += "s";
-
-/* Console.println(uptime_str);*/
- uptimeLabel.setText(uptime_str);
- uptimeLabel.move(epplet.getX() + epplet.getW() - 12 - uptimeLabel.getW(), epplet.getY()+4);
-
- epplet.addTimer("update_uptimeTimer",0.5,"update_uptime",0,data);
-}
-
-function update_sysload(object data, number val)
-{
- object file;
- number uptime_num, load_1, load_5, load_15;
- string load_avg, tmp;
-
- file = new File();
-
- file->open("/proc/loadavg", "r", "");
-
- load_avg = file->readln(1024);
-
- load_avg = String.copySection(load_avg, 0, 14);
-
- load_avg =~ s/^([^ ]*) ([^ ]*)/\1, \2,/;
-
- load_avg = "Load: " + load_avg;
-
- loadLabel.setText(load_avg);
-
- loadLabel.move(epplet.getX() + epplet.getW() - 12 - loadLabel.getW(), epplet.getY()+12);
- epplet.addTimer("update_sysloadTimer",0.5,"update_sysload",0,data);
-}
-
-create_epplet();
-
-update_uptime(epplet, 0);
-update_sysload(epplet, 0);
diff --git a/data/epplets/uptime/uptime.png b/data/epplets/uptime/uptime.png
deleted file mode 100644
index 51925597d..000000000
--- a/data/epplets/uptime/uptime.png
+++ /dev/null
Binary files differ
diff --git a/data/fonts/borzoib.ttf b/data/fonts/borzoib.ttf
deleted file mode 100644
index 8cc809fc4..000000000
--- a/data/fonts/borzoib.ttf
+++ /dev/null
Binary files differ
diff --git a/data/fonts/nationff.ttf b/data/fonts/nationff.ttf
deleted file mode 100644
index e0883345e..000000000
--- a/data/fonts/nationff.ttf
+++ /dev/null
Binary files differ
diff --git a/data/guides/display.bits.db b/data/guides/display.bits.db
deleted file mode 100644
index c83076a79..000000000
--- a/data/guides/display.bits.db
+++ /dev/null
Binary files differ
diff --git a/data/iconbar/iconbar_bottom.bits.db b/data/iconbar/iconbar_bottom.bits.db
deleted file mode 100644
index 90a978aec..000000000
--- a/data/iconbar/iconbar_bottom.bits.db
+++ /dev/null
Binary files differ
diff --git a/data/iconbar/iconbar_left.bits.db b/data/iconbar/iconbar_left.bits.db
deleted file mode 100644
index 803b01fa0..000000000
--- a/data/iconbar/iconbar_left.bits.db
+++ /dev/null
Binary files differ
diff --git a/data/icons/application/default.db b/data/icons/application/default.db
deleted file mode 100644
index 255fc4dc6..000000000
--- a/data/icons/application/default.db
+++ /dev/null
Binary files differ
diff --git a/data/icons/archive/default.db b/data/icons/archive/default.db
deleted file mode 100644
index 255fc4dc6..000000000
--- a/data/icons/archive/default.db
+++ /dev/null
Binary files differ
diff --git a/data/icons/archive/gnu-zip-unix.db b/data/icons/archive/gnu-zip-unix.db
deleted file mode 100644
index 636960488..000000000
--- a/data/icons/archive/gnu-zip-unix.db
+++ /dev/null
Binary files differ
diff --git a/data/icons/dir/default.db b/data/icons/dir/default.db
deleted file mode 100644
index 50ee2cef9..000000000
--- a/data/icons/dir/default.db
+++ /dev/null
Binary files differ
diff --git a/data/icons/dir/ext2.db b/data/icons/dir/ext2.db
deleted file mode 100644
index 50ee2cef9..000000000
--- a/data/icons/dir/ext2.db
+++ /dev/null
Binary files differ
diff --git a/data/icons/dir/trash.db b/data/icons/dir/trash.db
deleted file mode 100644
index b937402f5..000000000
--- a/data/icons/dir/trash.db
+++ /dev/null
Binary files differ
diff --git a/data/icons/document/default.db b/data/icons/document/default.db
deleted file mode 100644
index 255fc4dc6..000000000
--- a/data/icons/document/default.db
+++ /dev/null
Binary files differ
diff --git a/data/icons/document/pdf.db b/data/icons/document/pdf.db
deleted file mode 100644
index 1335960bb..000000000
--- a/data/icons/document/pdf.db
+++ /dev/null
Binary files differ
diff --git a/data/icons/document/postscript.db b/data/icons/document/postscript.db
deleted file mode 100644
index b33890874..000000000
--- a/data/icons/document/postscript.db
+++ /dev/null
Binary files differ
diff --git a/data/icons/document/unknown.db b/data/icons/document/unknown.db
deleted file mode 100644
index ea0310962..000000000
--- a/data/icons/document/unknown.db
+++ /dev/null
Binary files differ
diff --git a/data/icons/image/default.db b/data/icons/image/default.db
deleted file mode 100644
index 255fc4dc6..000000000
--- a/data/icons/image/default.db
+++ /dev/null
Binary files differ
diff --git a/data/icons/image/gif.db b/data/icons/image/gif.db
deleted file mode 100644
index 759e525ef..000000000
--- a/data/icons/image/gif.db
+++ /dev/null
Binary files differ
diff --git a/data/icons/image/jpeg.db b/data/icons/image/jpeg.db
deleted file mode 100644
index 399e8d99f..000000000
--- a/data/icons/image/jpeg.db
+++ /dev/null
Binary files differ
diff --git a/data/icons/image/png.db b/data/icons/image/png.db
deleted file mode 100644
index a855598d2..000000000
--- a/data/icons/image/png.db
+++ /dev/null
Binary files differ
diff --git a/data/icons/image/tiff.db b/data/icons/image/tiff.db
deleted file mode 100644
index d0d6eafee..000000000
--- a/data/icons/image/tiff.db
+++ /dev/null
Binary files differ
diff --git a/data/icons/image/xpm.db b/data/icons/image/xpm.db
deleted file mode 100644
index 5e1496fee..000000000
--- a/data/icons/image/xpm.db
+++ /dev/null
Binary files differ
diff --git a/data/icons/text/default.db b/data/icons/text/default.db
deleted file mode 100644
index 255fc4dc6..000000000
--- a/data/icons/text/default.db
+++ /dev/null
Binary files differ
diff --git a/data/icons/text/plain.db b/data/icons/text/plain.db
deleted file mode 100644
index e1f560cc8..000000000
--- a/data/icons/text/plain.db
+++ /dev/null
Binary files differ
diff --git a/data/icons/unknown/default.db b/data/icons/unknown/default.db
deleted file mode 100644
index 255fc4dc6..000000000
--- a/data/icons/unknown/default.db
+++ /dev/null
Binary files differ
diff --git a/data/icons/unknown/unknown.db b/data/icons/unknown/unknown.db
deleted file mode 100644
index 255fc4dc6..000000000
--- a/data/icons/unknown/unknown.db
+++ /dev/null
Binary files differ
diff --git a/data/images/bg.jpg b/data/images/bg.jpg
deleted file mode 100644
index bc9a2d634..000000000
--- a/data/images/bg.jpg
+++ /dev/null
Binary files differ
diff --git a/data/images/e_logo.png b/data/images/e_logo.png
deleted file mode 100644
index f305b4500..000000000
--- a/data/images/e_logo.png
+++ /dev/null
Binary files differ
diff --git a/data/images/hline.png b/data/images/hline.png
deleted file mode 100644
index 844cfacb0..000000000
--- a/data/images/hline.png
+++ /dev/null
Binary files differ
diff --git a/data/images/ib_title.png b/data/images/ib_title.png
deleted file mode 100644
index 8bba4a6cf..000000000
--- a/data/images/ib_title.png
+++ /dev/null
Binary files differ
diff --git a/data/images/vline.png b/data/images/vline.png
deleted file mode 100644
index 498e32efb..000000000
--- a/data/images/vline.png
+++ /dev/null
Binary files differ
diff --git a/data/images/win_shadow_icon.png b/data/images/win_shadow_icon.png
deleted file mode 100644
index a26fbcebf..000000000
--- a/data/images/win_shadow_icon.png
+++ /dev/null
Binary files differ
diff --git a/data/layout/desktop.bits.db b/data/layout/desktop.bits.db
deleted file mode 100644
index fd5cbb1ea..000000000
--- a/data/layout/desktop.bits.db
+++ /dev/null
Binary files differ
diff --git a/data/layout/view.bits.db b/data/layout/view.bits.db
deleted file mode 100644
index af1fe15de..000000000
--- a/data/layout/view.bits.db
+++ /dev/null
Binary files differ
diff --git a/data/menus/base.bits.db b/data/menus/base.bits.db
deleted file mode 100644
index 19eb51006..000000000
--- a/data/menus/base.bits.db
+++ /dev/null
Binary files differ
diff --git a/data/menus/check-0.bits.db b/data/menus/check-0.bits.db
deleted file mode 100644
index 656e849e0..000000000
--- a/data/menus/check-0.bits.db
+++ /dev/null
Binary files differ
diff --git a/data/menus/check-1.bits.db b/data/menus/check-1.bits.db
deleted file mode 100644
index 78285b00a..000000000
--- a/data/menus/check-1.bits.db
+++ /dev/null
Binary files differ
diff --git a/data/menus/radio-0.bits.db b/data/menus/radio-0.bits.db
deleted file mode 100644
index fd72a9b38..000000000
--- a/data/menus/radio-0.bits.db
+++ /dev/null
Binary files differ
diff --git a/data/menus/radio-1.bits.db b/data/menus/radio-1.bits.db
deleted file mode 100644
index b6cc9138f..000000000
--- a/data/menus/radio-1.bits.db
+++ /dev/null
Binary files differ
diff --git a/data/menus/selected-0.submenu-0.bits.db b/data/menus/selected-0.submenu-0.bits.db
deleted file mode 100644
index f34f4d2be..000000000
--- a/data/menus/selected-0.submenu-0.bits.db
+++ /dev/null
Binary files differ
diff --git a/data/menus/selected-0.submenu-1.bits.db b/data/menus/selected-0.submenu-1.bits.db
deleted file mode 100644
index 75d3ab578..000000000
--- a/data/menus/selected-0.submenu-1.bits.db
+++ /dev/null
Binary files differ
diff --git a/data/menus/selected-1.submenu-0.bits.db b/data/menus/selected-1.submenu-0.bits.db
deleted file mode 100644
index 99975d7bb..000000000
--- a/data/menus/selected-1.submenu-0.bits.db
+++ /dev/null
Binary files differ
diff --git a/data/menus/selected-1.submenu-1.bits.db b/data/menus/selected-1.submenu-1.bits.db
deleted file mode 100644
index 3562c2f75..000000000
--- a/data/menus/selected-1.submenu-1.bits.db
+++ /dev/null
Binary files differ
diff --git a/data/menus/separator.bits.db b/data/menus/separator.bits.db
deleted file mode 100644
index d3c1fcec3..000000000
--- a/data/menus/separator.bits.db
+++ /dev/null
Binary files differ
diff --git a/data/orig/arrow.png b/data/orig/arrow.png
deleted file mode 100644
index 46849a9d6..000000000
--- a/data/orig/arrow.png
+++ /dev/null
Binary files differ
diff --git a/data/orig/b1.png b/data/orig/b1.png
deleted file mode 100644
index 7fc0fc651..000000000
--- a/data/orig/b1.png
+++ /dev/null
Binary files differ
diff --git a/data/orig/b2.png b/data/orig/b2.png
deleted file mode 100644
index 3a60e0df5..000000000
--- a/data/orig/b2.png
+++ /dev/null
Binary files differ
diff --git a/data/orig/b3.png b/data/orig/b3.png
deleted file mode 100644
index aa5508198..000000000
--- a/data/orig/b3.png
+++ /dev/null
Binary files differ
diff --git a/data/orig/b4.png b/data/orig/b4.png
deleted file mode 100644
index e7c4d723c..000000000
--- a/data/orig/b4.png
+++ /dev/null
Binary files differ
diff --git a/data/orig/b5.png b/data/orig/b5.png
deleted file mode 100644
index f77e22498..000000000
--- a/data/orig/b5.png
+++ /dev/null
Binary files differ
diff --git a/data/orig/b_t1.png b/data/orig/b_t1.png
deleted file mode 100644
index 64802a9c5..000000000
--- a/data/orig/b_t1.png
+++ /dev/null
Binary files differ
diff --git a/data/orig/b_t2.png b/data/orig/b_t2.png
deleted file mode 100644
index bdaf80b19..000000000
--- a/data/orig/b_t2.png
+++ /dev/null
Binary files differ
diff --git a/data/orig/b_t3.png b/data/orig/b_t3.png
deleted file mode 100644
index 75e111f50..000000000
--- a/data/orig/b_t3.png
+++ /dev/null
Binary files differ
diff --git a/data/orig/border.xcf b/data/orig/border.xcf
deleted file mode 100644
index 4ad87b3c9..000000000
--- a/data/orig/border.xcf
+++ /dev/null
Binary files differ
diff --git a/data/orig/bt1.png b/data/orig/bt1.png
deleted file mode 100644
index 8d0435e49..000000000
--- a/data/orig/bt1.png
+++ /dev/null
Binary files differ
diff --git a/data/orig/bt2.png b/data/orig/bt2.png
deleted file mode 100644
index 6c65bcd56..000000000
--- a/data/orig/bt2.png
+++ /dev/null
Binary files differ
diff --git a/data/orig/bt3.png b/data/orig/bt3.png
deleted file mode 100644
index 53e08f02d..000000000
--- a/data/orig/bt3.png
+++ /dev/null
Binary files differ
diff --git a/data/orig/bt4.png b/data/orig/bt4.png
deleted file mode 100644
index 476323c0e..000000000
--- a/data/orig/bt4.png
+++ /dev/null
Binary files differ
diff --git a/data/orig/bt5.png b/data/orig/bt5.png
deleted file mode 100644
index c0868c7d4..000000000
--- a/data/orig/bt5.png
+++ /dev/null
Binary files differ
diff --git a/data/orig/bt6.png b/data/orig/bt6.png
deleted file mode 100644
index 19d077cbc..000000000
--- a/data/orig/bt6.png
+++ /dev/null
Binary files differ
diff --git a/data/orig/bt7.png b/data/orig/bt7.png
deleted file mode 100644
index d9de03c37..000000000
--- a/data/orig/bt7.png
+++ /dev/null
Binary files differ
diff --git a/data/orig/bt8.png b/data/orig/bt8.png
deleted file mode 100644
index a865b2a73..000000000
--- a/data/orig/bt8.png
+++ /dev/null
Binary files differ
diff --git a/data/orig/check_fg.png b/data/orig/check_fg.png
deleted file mode 100644
index cc86ed30c..000000000
--- a/data/orig/check_fg.png
+++ /dev/null
Binary files differ
diff --git a/data/orig/cursor.png b/data/orig/cursor.png
deleted file mode 100644
index 00d4cfcb2..000000000
--- a/data/orig/cursor.png
+++ /dev/null
Binary files differ
diff --git a/data/orig/cursor_close.png b/data/orig/cursor_close.png
deleted file mode 100644
index 9b84ec0b8..000000000
--- a/data/orig/cursor_close.png
+++ /dev/null
Binary files differ
diff --git a/data/orig/cursor_icon.png b/data/orig/cursor_icon.png
deleted file mode 100644
index 5155bdc92..000000000
--- a/data/orig/cursor_icon.png
+++ /dev/null
Binary files differ
diff --git a/data/orig/cursor_iconify.png b/data/orig/cursor_iconify.png
deleted file mode 100644
index 35c7f5f2d..000000000
--- a/data/orig/cursor_iconify.png
+++ /dev/null
Binary files differ
diff --git a/data/orig/cursor_max_size.png b/data/orig/cursor_max_size.png
deleted file mode 100644
index 042de9a11..000000000
--- a/data/orig/cursor_max_size.png
+++ /dev/null
Binary files differ
diff --git a/data/orig/cursor_menu.png b/data/orig/cursor_menu.png
deleted file mode 100644
index 3837cb0e9..000000000
--- a/data/orig/cursor_menu.png
+++ /dev/null
Binary files differ
diff --git a/data/orig/cursor_move.png b/data/orig/cursor_move.png
deleted file mode 100644
index 60f660c68..000000000
--- a/data/orig/cursor_move.png
+++ /dev/null
Binary files differ
diff --git a/data/orig/cursor_resize.png b/data/orig/cursor_resize.png
deleted file mode 100644
index 200e151f1..000000000
--- a/data/orig/cursor_resize.png
+++ /dev/null
Binary files differ
diff --git a/data/orig/cursor_resize_h.png b/data/orig/cursor_resize_h.png
deleted file mode 100644
index 73d589761..000000000
--- a/data/orig/cursor_resize_h.png
+++ /dev/null
Binary files differ
diff --git a/data/orig/cursor_resize_v.png b/data/orig/cursor_resize_v.png
deleted file mode 100644
index f35750c46..000000000
--- a/data/orig/cursor_resize_v.png
+++ /dev/null
Binary files differ
diff --git a/data/orig/hi.png b/data/orig/hi.png
deleted file mode 100644
index 2b201b520..000000000
--- a/data/orig/hi.png
+++ /dev/null
Binary files differ
diff --git a/data/orig/icon_file.png b/data/orig/icon_file.png
deleted file mode 100644
index d17f59669..000000000
--- a/data/orig/icon_file.png
+++ /dev/null
Binary files differ
diff --git a/data/orig/icon_file.xcf b/data/orig/icon_file.xcf
deleted file mode 100644
index 4c89b719d..000000000
--- a/data/orig/icon_file.xcf
+++ /dev/null
Binary files differ
diff --git a/data/orig/m.xcf b/data/orig/m.xcf
deleted file mode 100644
index afd90bb48..000000000
--- a/data/orig/m.xcf
+++ /dev/null
Binary files differ
diff --git a/data/orig/mb1.png b/data/orig/mb1.png
deleted file mode 100644
index 9ce2a6c0e..000000000
--- a/data/orig/mb1.png
+++ /dev/null
Binary files differ
diff --git a/data/orig/mb2.png b/data/orig/mb2.png
deleted file mode 100644
index bf39dd7d6..000000000
--- a/data/orig/mb2.png
+++ /dev/null
Binary files differ
diff --git a/data/orig/mb3.png b/data/orig/mb3.png
deleted file mode 100644
index 3c0ebf88b..000000000
--- a/data/orig/mb3.png
+++ /dev/null
Binary files differ
diff --git a/data/orig/mb4.png b/data/orig/mb4.png
deleted file mode 100644
index 1448a522b..000000000
--- a/data/orig/mb4.png
+++ /dev/null
Binary files differ
diff --git a/data/orig/mb5.png b/data/orig/mb5.png
deleted file mode 100644
index 4fc4da32d..000000000
--- a/data/orig/mb5.png
+++ /dev/null
Binary files differ
diff --git a/data/orig/mb6.png b/data/orig/mb6.png
deleted file mode 100644
index 53ab9bb3c..000000000
--- a/data/orig/mb6.png
+++ /dev/null
Binary files differ
diff --git a/data/orig/mb7.png b/data/orig/mb7.png
deleted file mode 100644
index 590dbabac..000000000
--- a/data/orig/mb7.png
+++ /dev/null
Binary files differ
diff --git a/data/orig/mb8.png b/data/orig/mb8.png
deleted file mode 100644
index 2af9ad3fb..000000000
--- a/data/orig/mb8.png
+++ /dev/null
Binary files differ
diff --git a/data/orig/mbb.png b/data/orig/mbb.png
deleted file mode 100644
index 1314dde87..000000000
--- a/data/orig/mbb.png
+++ /dev/null
Binary files differ
diff --git a/data/orig/radio.xcf b/data/orig/radio.xcf
deleted file mode 100644
index 169d70f52..000000000
--- a/data/orig/radio.xcf
+++ /dev/null
Binary files differ
diff --git a/data/orig/radio_bg.png b/data/orig/radio_bg.png
deleted file mode 100644
index bb098105d..000000000
--- a/data/orig/radio_bg.png
+++ /dev/null
Binary files differ
diff --git a/data/orig/radio_fg.png b/data/orig/radio_fg.png
deleted file mode 100644
index 8c6785c38..000000000
--- a/data/orig/radio_fg.png
+++ /dev/null
Binary files differ
diff --git a/data/orig/s.png b/data/orig/s.png
deleted file mode 100644
index 239cc4488..000000000
--- a/data/orig/s.png
+++ /dev/null
Binary files differ
diff --git a/data/orig/sel_border.png b/data/orig/sel_border.png
deleted file mode 100644
index 164b2b612..000000000
--- a/data/orig/sel_border.png
+++ /dev/null
Binary files differ
diff --git a/data/orig/sel_dark.png b/data/orig/sel_dark.png
deleted file mode 100644
index b60658024..000000000
--- a/data/orig/sel_dark.png
+++ /dev/null
Binary files differ
diff --git a/data/orig/sel_hi.png b/data/orig/sel_hi.png
deleted file mode 100644
index 5b4529d8b..000000000
--- a/data/orig/sel_hi.png
+++ /dev/null
Binary files differ
diff --git a/data/orig/sel_stripes.png b/data/orig/sel_stripes.png
deleted file mode 100644
index 0f6f1bc8c..000000000
--- a/data/orig/sel_stripes.png
+++ /dev/null
Binary files differ
diff --git a/data/orig/selection.xcf b/data/orig/selection.xcf
deleted file mode 100644
index 4912158fe..000000000
--- a/data/orig/selection.xcf
+++ /dev/null
Binary files differ
diff --git a/data/orig/sep.png b/data/orig/sep.png
deleted file mode 100644
index 3d47962b4..000000000
--- a/data/orig/sep.png
+++ /dev/null
Binary files differ
diff --git a/data/orig/t1.png b/data/orig/t1.png
deleted file mode 100644
index 2b405da7e..000000000
--- a/data/orig/t1.png
+++ /dev/null
Binary files differ
diff --git a/data/orig/t2.png b/data/orig/t2.png
deleted file mode 100644
index dc42beec3..000000000
--- a/data/orig/t2.png
+++ /dev/null
Binary files differ
diff --git a/data/orig/t3.png b/data/orig/t3.png
deleted file mode 100644
index d1baa3f49..000000000
--- a/data/orig/t3.png
+++ /dev/null
Binary files differ
diff --git a/data/orig/tile.png b/data/orig/tile.png
deleted file mode 100644
index 02f0187e7..000000000
--- a/data/orig/tile.png
+++ /dev/null
Binary files differ
diff --git a/data/orig/tile_half.png b/data/orig/tile_half.png
deleted file mode 100644
index 65cc0f653..000000000
--- a/data/orig/tile_half.png
+++ /dev/null
Binary files differ
diff --git a/data/orig/tile_hi.png b/data/orig/tile_hi.png
deleted file mode 100644
index 7a3c14968..000000000
--- a/data/orig/tile_hi.png
+++ /dev/null
Binary files differ
diff --git a/data/scripts/build_app_menu_db.sh b/data/scripts/build_app_menu_db.sh
deleted file mode 100755
index 1df57f96a..000000000
--- a/data/scripts/build_app_menu_db.sh
+++ /dev/null
@@ -1,123 +0,0 @@
-#!/bin/sh
-
-# this is the databse to create
-DB="./apps_menu.db"
-
-# shell function calls that setup, cleanup and build menus in a menus database
-setup ()
-{
- NUM=0
- ENTRYNUM=0
- MENUNUM=0
- rm -f $DB
-}
-
-finish ()
-{
- N=$[ $MENUNUM + 1 ];
- edb_ed $DB add "/menu/count" int $N
-}
-
-menu ()
-{
- ENTRYNUM=0
- MENUNUM=$1;
- M1=$[ $MENUNUM + 1 ];
- if [ $M1 -gt $NUM ]; then
- NUM=$M1;
- fi
-}
-
-end_menu ()
-{
- edb_ed $DB add "/menu/"$MENUNUM"/count" int $ENTRYNUM
-}
-
-entry ()
-{
- if [ $1 = "text" ]; then
- edb_ed $DB add "/menu/"$MENUNUM"/"$ENTRYNUM"/text" str "$2"
- if [ "$3" = "sub" ]; then
- edb_ed $DB add "/menu/"$MENUNUM"/"$ENTRYNUM"/submenu" int $4
- else
- edb_ed $DB add "/menu/"$MENUNUM"/"$ENTRYNUM"/command" str "$3"
- fi
-
-
- else if [ $1 = "icon" ]; then
- edb_ed $DB add "/menu/"$MENUNUM"/"$ENTRYNUM"/icon" str "$2"
- if [ "$3" = "sub" ]; then
- edb_ed $DB add "/menu/"$MENUNUM"/"$ENTRYNUM"/submenu" int $4
- else
- edb_ed $DB add "/menu/"$MENUNUM"/"$ENTRYNUM"/command" str "$3"
- fi
-
-
- else if [ $1 = "both" ]; then
- edb_ed $DB add "/menu/"$MENUNUM"/"$ENTRYNUM"/text" str "$2"
- edb_ed $DB add "/menu/"$MENUNUM"/"$ENTRYNUM"/icon" str "$3"
- if [ "$4" = "sub" ]; then
- edb_ed $DB add "/menu/"$MENUNUM"/"$ENTRYNUM"/submenu" int $5
- else
- edb_ed $DB add "/menu/"$MENUNUM"/"$ENTRYNUM"/command" str "$4"
- fi
-
-
- else if [ $1 = "separator" ]; then
- edb_ed $DB add "/menu/"$MENUNUM"/"$ENTRYNUM"/separator" int 1
-
-
- else if [ $1 = "script" ]; then
- edb_ed $DB add "/menu/"$MENUNUM"/"$ENTRYNUM"/text" str "$2"
- edb_ed $DB add "/menu/"$MENUNUM"/"$ENTRYNUM"/script" str "$3"
-
- fi; fi; fi; fi; fi
- ENTRYNUM=$[ $ENTRYNUM + 1 ];
-}
-
-
-
-
-###############################################################################
-##
-## Menus are defined here
-##
-## IF you want to edit anything - edit this - it's REALLY simple.
-
-setup
-
-menu 0
-entry both 'Eterm' '/usr/share/pixmaps/gnome-eterm.png' 'Eterm'
-entry both 'Netscape' '/usr/share/pixmaps/netscape.png' 'netscape'
-entry both 'TkRat' '/usr/share/pixmaps/gnome-ccdesktop.png' 'tkrat'
-entry both 'X Chat' '/usr/share/pixmaps/gnome-irc.png' 'xchat'
-entry both 'XMMS' '/usr/share/pixmaps/mc/gnome-audio.png' 'xmms'
-entry both 'The GIMP' '/usr/share/pixmaps/gimp.png' 'gimp'
-entry separator
-entry both 'XTerm' '/usr/share/pixmaps/gnome-term.png' 'xterm'
-entry both 'XMag' '/usr/share/pixmaps/gnome-applets.png' 'xmag'
-entry separator
-entry text 'Network' 'sub' 1
-entry text 'System' 'sub' 2
-entry text 'Desktop' 'sub' 3
-entry script 'Exit' 'e.shutdown();'
-end_menu
-
-menu 1
-entry text 'Ethernet On' '/sbin/ifup eth0'
-entry text 'Ethernet Off' '/sbin/ifdown eth0'
-end_menu
-
-menu 2
-entry text 'Shut Down' 'sudo -S /sbin/shutdown -h now'
-entry text 'Reboot' 'sudo -S /sbin/shutdown -r now'
-end_menu
-
-menu 3
-entry script 'Goto Desktop 0' 'e.flip_to_desktop(0);'
-entry script 'Goto Desktop 1' 'e.flip_to_desktop(1);'
-entry script 'Goto Desktop 2' 'e.flip_to_desktop(2);'
-entry script 'Goto Desktop 3' 'e.flip_to_desktop(3);'
-end_menu
-
-finish
diff --git a/data/scripts/build_db.sh b/data/scripts/build_db.sh
deleted file mode 100755
index 2005dbd2f..000000000
--- a/data/scripts/build_db.sh
+++ /dev/null
@@ -1,401 +0,0 @@
-# enumerated variables - don't touch these
-ACT_MOUSE_IN=0
-ACT_MOUSE_OUT=1
-ACT_MOUSE_CLICK=2
-ACT_MOUSE_DOUBLE=3
-ACT_MOUSE_TRIPLE=4
-ACT_MOUSE_UP=5
-ACT_MOUSE_CLICKED=6
-ACT_MOUSE_MOVE=7
-ACT_KEY_DOWN=8
-ACT_KEY_UP=9
-
-MOD_ANY=-1
-MOD_NONE=0
-MOD_SHIFT=1
-MOD_CTRL=2
-MOD_ALT=4
-MOD_WIN=8
-MOD_CTRL_ALT=$[ $MOD_CTRL + $MOD_ALT ];
-
-FOCUS_POINTER=0
-FOCUS_SLOPPY=1
-FOCUS_CLICK=2
-
-WINDOW_MODE_OPAQUE=0
-WINDOW_MODE_BORDER=1
-WINDOW_MODE_BOX=2
-WINDOW_MODE_TECHNICAL=3
-
-WINDOW_PLACE_MANUAL=0
-WINDOW_PLACE_SMART=1
-WINDOW_PLACE_MIDDLE=2
-WINDOW_PLACE_CASCADE=3
-WINDOW_PLACE_RANDOM=4
-
-DESKTOP_COUNT=8
-DESKTOP_SCROLL=0
-DESKTOP_SCROLL_STICKY=0
-DESKTOP_RESIST=3
-DESKTOP_SPEED=30
-DESKTOP_WIDTH=2
-DESKTOP_HEIGHT=2
-
-GUIDES_LOC_WIN=0
-GUIDES_LOC_SCR=1
-
-DB="./behavior.db"
-
-# actions defining how to react to things
-NUM=0
-edb_ed $DB add "/actions/"$NUM"/name" str "Title_Bar"
-edb_ed $DB add "/actions/"$NUM"/action" str "Window_Raise"
-edb_ed $DB add "/actions/"$NUM"/params" str ""
-edb_ed $DB add "/actions/"$NUM"/event" int $ACT_MOUSE_CLICK
-edb_ed $DB add "/actions/"$NUM"/button" int 1
-edb_ed $DB add "/actions/"$NUM"/key" str ""
-edb_ed $DB add "/actions/"$NUM"/modifiers" int $MOD_NONE
-NUM=$[ $NUM + 1 ];
-edb_ed $DB add "/actions/"$NUM"/name" str "Title_Bar"
-edb_ed $DB add "/actions/"$NUM"/action" str "Window_Move"
-edb_ed $DB add "/actions/"$NUM"/params" str ""
-edb_ed $DB add "/actions/"$NUM"/event" int $ACT_MOUSE_CLICK
-edb_ed $DB add "/actions/"$NUM"/button" int 1
-edb_ed $DB add "/actions/"$NUM"/key" str ""
-edb_ed $DB add "/actions/"$NUM"/modifiers" int $MOD_NONE
-NUM=$[ $NUM + 1 ];
-edb_ed $DB add "/actions/"$NUM"/name" str "Title_Bar"
-edb_ed $DB add "/actions/"$NUM"/action" str "Window_Shade"
-edb_ed $DB add "/actions/"$NUM"/params" str ""
-edb_ed $DB add "/actions/"$NUM"/event" int $ACT_MOUSE_DOUBLE
-edb_ed $DB add "/actions/"$NUM"/button" int 1
-edb_ed $DB add "/actions/"$NUM"/key" str ""
-edb_ed $DB add "/actions/"$NUM"/modifiers" int $MOD_NONE
-NUM=$[ $NUM + 1 ];
-edb_ed $DB add "/actions/"$NUM"/name" str "Resize"
-edb_ed $DB add "/actions/"$NUM"/action" str "Window_Resize"
-edb_ed $DB add "/actions/"$NUM"/params" str ""
-edb_ed $DB add "/actions/"$NUM"/event" int $ACT_MOUSE_CLICK
-edb_ed $DB add "/actions/"$NUM"/button" int 1
-edb_ed $DB add "/actions/"$NUM"/key" str ""
-edb_ed $DB add "/actions/"$NUM"/modifiers" int $MOD_NONE
-NUM=$[ $NUM + 1 ];
-edb_ed $DB add "/actions/"$NUM"/name" str "Resize_Horizontal"
-edb_ed $DB add "/actions/"$NUM"/action" str "Window_Resize_Horizontal"
-edb_ed $DB add "/actions/"$NUM"/params" str ""
-edb_ed $DB add "/actions/"$NUM"/event" int $ACT_MOUSE_CLICK
-edb_ed $DB add "/actions/"$NUM"/button" int 1
-edb_ed $DB add "/actions/"$NUM"/key" str ""
-edb_ed $DB add "/actions/"$NUM"/modifiers" int $MOD_NONE
-NUM=$[ $NUM + 1 ];
-edb_ed $DB add "/actions/"$NUM"/name" str "Resize_Vertical"
-edb_ed $DB add "/actions/"$NUM"/action" str "Window_Resize_Vertical"
-edb_ed $DB add "/actions/"$NUM"/params" str ""
-edb_ed $DB add "/actions/"$NUM"/event" int $ACT_MOUSE_CLICK
-edb_ed $DB add "/actions/"$NUM"/button" int 1
-edb_ed $DB add "/actions/"$NUM"/key" str ""
-edb_ed $DB add "/actions/"$NUM"/modifiers" int $MOD_NONE
-NUM=$[ $NUM + 1 ];
-edb_ed $DB add "/actions/"$NUM"/name" str "Window_Grab"
-edb_ed $DB add "/actions/"$NUM"/action" str "Window_Raise"
-edb_ed $DB add "/actions/"$NUM"/params" str ""
-edb_ed $DB add "/actions/"$NUM"/event" int $ACT_MOUSE_CLICK
-edb_ed $DB add "/actions/"$NUM"/button" int 1
-edb_ed $DB add "/actions/"$NUM"/key" str ""
-edb_ed $DB add "/actions/"$NUM"/modifiers" int $MOD_ALT
-NUM=$[ $NUM + 1 ];
-edb_ed $DB add "/actions/"$NUM"/name" str "Window_Grab"
-edb_ed $DB add "/actions/"$NUM"/action" str "Window_Move"
-edb_ed $DB add "/actions/"$NUM"/params" str ""
-edb_ed $DB add "/actions/"$NUM"/event" int $ACT_MOUSE_CLICK
-edb_ed $DB add "/actions/"$NUM"/button" int 1
-edb_ed $DB add "/actions/"$NUM"/key" str ""
-edb_ed $DB add "/actions/"$NUM"/modifiers" int $MOD_ALT
-NUM=$[ $NUM + 1 ];
-edb_ed $DB add "/actions/"$NUM"/name" str "Window_Grab"
-edb_ed $DB add "/actions/"$NUM"/action" str "Window_Resize"
-edb_ed $DB add "/actions/"$NUM"/params" str ""
-edb_ed $DB add "/actions/"$NUM"/event" int $ACT_MOUSE_CLICK
-edb_ed $DB add "/actions/"$NUM"/button" int 2
-edb_ed $DB add "/actions/"$NUM"/key" str ""
-edb_ed $DB add "/actions/"$NUM"/modifiers" int $MOD_ALT
-NUM=$[ $NUM + 1 ];
-edb_ed $DB add "/actions/"$NUM"/name" str "Window_Grab"
-edb_ed $DB add "/actions/"$NUM"/action" str "Menu"
-edb_ed $DB add "/actions/"$NUM"/params" str ""
-edb_ed $DB add "/actions/"$NUM"/event" int $ACT_MOUSE_CLICK
-edb_ed $DB add "/actions/"$NUM"/button" int 3
-edb_ed $DB add "/actions/"$NUM"/key" str ""
-edb_ed $DB add "/actions/"$NUM"/modifiers" int $MOD_ALT
-NUM=$[ $NUM + 1 ];
-edb_ed $DB add "/actions/"$NUM"/name" str "Resize"
-edb_ed $DB add "/actions/"$NUM"/action" str "Window_Move"
-edb_ed $DB add "/actions/"$NUM"/params" str ""
-edb_ed $DB add "/actions/"$NUM"/event" int $ACT_MOUSE_CLICK
-edb_ed $DB add "/actions/"$NUM"/button" int 3
-edb_ed $DB add "/actions/"$NUM"/key" str ""
-edb_ed $DB add "/actions/"$NUM"/modifiers" int $MOD_NONE
-NUM=$[ $NUM + 1 ];
-edb_ed $DB add "/actions/"$NUM"/name" str "Resize_Horizontal"
-edb_ed $DB add "/actions/"$NUM"/action" str "Window_Move"
-edb_ed $DB add "/actions/"$NUM"/params" str ""
-edb_ed $DB add "/actions/"$NUM"/event" int $ACT_MOUSE_CLICK
-edb_ed $DB add "/actions/"$NUM"/button" int 3
-edb_ed $DB add "/actions/"$NUM"/key" str ""
-edb_ed $DB add "/actions/"$NUM"/modifiers" int $MOD_NONE
-NUM=$[ $NUM + 1 ];
-edb_ed $DB add "/actions/"$NUM"/name" str "Resize_Vertical"
-edb_ed $DB add "/actions/"$NUM"/action" str "Window_Move"
-edb_ed $DB add "/actions/"$NUM"/params" str ""
-edb_ed $DB add "/actions/"$NUM"/event" int $ACT_MOUSE_CLICK
-edb_ed $DB add "/actions/"$NUM"/button" int 3
-edb_ed $DB add "/actions/"$NUM"/key" str ""
-edb_ed $DB add "/actions/"$NUM"/modifiers" int $MOD_NONE
-NUM=$[ $NUM + 1 ];
-edb_ed $DB add "/actions/"$NUM"/name" str "Close"
-edb_ed $DB add "/actions/"$NUM"/action" str "Window_Close"
-edb_ed $DB add "/actions/"$NUM"/params" str ""
-edb_ed $DB add "/actions/"$NUM"/event" int $ACT_MOUSE_CLICKED
-edb_ed $DB add "/actions/"$NUM"/button" int 1
-edb_ed $DB add "/actions/"$NUM"/key" str ""
-edb_ed $DB add "/actions/"$NUM"/modifiers" int $MOD_NONE
-NUM=$[ $NUM + 1 ];
-edb_ed $DB add "/actions/"$NUM"/name" str "Close"
-edb_ed $DB add "/actions/"$NUM"/action" str "Window_Kill"
-edb_ed $DB add "/actions/"$NUM"/params" str ""
-edb_ed $DB add "/actions/"$NUM"/event" int $ACT_MOUSE_CLICKED
-edb_ed $DB add "/actions/"$NUM"/button" int 3
-edb_ed $DB add "/actions/"$NUM"/key" str ""
-edb_ed $DB add "/actions/"$NUM"/modifiers" int $MOD_NONE
-NUM=$[ $NUM + 1 ];
-edb_ed $DB add "/actions/"$NUM"/name" str "Max_Size"
-edb_ed $DB add "/actions/"$NUM"/action" str "Window_Max_Size"
-edb_ed $DB add "/actions/"$NUM"/params" str ""
-edb_ed $DB add "/actions/"$NUM"/event" int $ACT_MOUSE_CLICKED
-edb_ed $DB add "/actions/"$NUM"/button" int 1
-edb_ed $DB add "/actions/"$NUM"/key" str ""
-edb_ed $DB add "/actions/"$NUM"/modifiers" int $MOD_NONE
-NUM=$[ $NUM + 1 ];
-edb_ed $DB add "/actions/"$NUM"/name" str "Iconify"
-edb_ed $DB add "/actions/"$NUM"/action" str "Window_Iconify"
-edb_ed $DB add "/actions/"$NUM"/params" str ""
-edb_ed $DB add "/actions/"$NUM"/event" int $ACT_MOUSE_CLICKED
-edb_ed $DB add "/actions/"$NUM"/button" int 1
-edb_ed $DB add "/actions/"$NUM"/key" str ""
-edb_ed $DB add "/actions/"$NUM"/modifiers" int $MOD_NONE
-NUM=$[ $NUM + 1 ];
-edb_ed $DB add "/actions/"$NUM"/name" str "Menu"
-edb_ed $DB add "/actions/"$NUM"/action" str "Menu"
-edb_ed $DB add "/actions/"$NUM"/params" str ""
-edb_ed $DB add "/actions/"$NUM"/event" int $ACT_MOUSE_CLICKED
-edb_ed $DB add "/actions/"$NUM"/button" int 1
-edb_ed $DB add "/actions/"$NUM"/key" str ""
-edb_ed $DB add "/actions/"$NUM"/modifiers" int $MOD_NONE
-NUM=$[ $NUM + 1 ];
-edb_ed $DB add "/actions/"$NUM"/name" str "Window_Place"
-edb_ed $DB add "/actions/"$NUM"/action" str "Window_Move"
-edb_ed $DB add "/actions/"$NUM"/params" str ""
-edb_ed $DB add "/actions/"$NUM"/event" int $ACT_MOUSE_CLICK
-edb_ed $DB add "/actions/"$NUM"/button" int 1
-edb_ed $DB add "/actions/"$NUM"/key" str ""
-edb_ed $DB add "/actions/"$NUM"/modifiers" int $MOD_NONE
-NUM=$[ $NUM + 1 ];
-edb_ed $DB add "/actions/"$NUM"/name" str "Key_Binding"
-edb_ed $DB add "/actions/"$NUM"/action" str "Restart"
-edb_ed $DB add "/actions/"$NUM"/params" str ""
-edb_ed $DB add "/actions/"$NUM"/event" int $ACT_KEY_DOWN
-edb_ed $DB add "/actions/"$NUM"/button" int 0
-edb_ed $DB add "/actions/"$NUM"/key" str "End"
-edb_ed $DB add "/actions/"$NUM"/modifiers" int $MOD_CTRL_ALT
-NUM=$[ $NUM + 1 ];
-edb_ed $DB add "/actions/"$NUM"/name" str "Key_Binding"
-edb_ed $DB add "/actions/"$NUM"/action" str "Exit"
-edb_ed $DB add "/actions/"$NUM"/params" str ""
-edb_ed $DB add "/actions/"$NUM"/event" int $ACT_KEY_DOWN
-edb_ed $DB add "/actions/"$NUM"/button" int 0
-edb_ed $DB add "/actions/"$NUM"/key" str "Delete"
-edb_ed $DB add "/actions/"$NUM"/modifiers" int $MOD_CTRL_ALT
-NUM=$[ $NUM + 1 ];
-edb_ed $DB add "/actions/"$NUM"/name" str "Key_Binding"
-edb_ed $DB add "/actions/"$NUM"/action" str "Window_Max_Size"
-edb_ed $DB add "/actions/"$NUM"/params" str ""
-edb_ed $DB add "/actions/"$NUM"/event" int $ACT_KEY_DOWN
-edb_ed $DB add "/actions/"$NUM"/button" int 0
-edb_ed $DB add "/actions/"$NUM"/key" str "m"
-edb_ed $DB add "/actions/"$NUM"/modifiers" int $MOD_CTRL_ALT
-NUM=$[ $NUM + 1 ];
-edb_ed $DB add "/actions/"$NUM"/name" str "Key_Binding"
-edb_ed $DB add "/actions/"$NUM"/action" str "Window_Close"
-edb_ed $DB add "/actions/"$NUM"/params" str ""
-edb_ed $DB add "/actions/"$NUM"/event" int $ACT_KEY_DOWN
-edb_ed $DB add "/actions/"$NUM"/button" int 0
-edb_ed $DB add "/actions/"$NUM"/key" str "x"
-edb_ed $DB add "/actions/"$NUM"/modifiers" int $MOD_CTRL_ALT
-NUM=$[ $NUM + 1 ];
-edb_ed $DB add "/actions/"$NUM"/name" str "Key_Binding"
-edb_ed $DB add "/actions/"$NUM"/action" str "Window_Shade"
-edb_ed $DB add "/actions/"$NUM"/params" str ""
-edb_ed $DB add "/actions/"$NUM"/event" int $ACT_KEY_DOWN
-edb_ed $DB add "/actions/"$NUM"/button" int 0
-edb_ed $DB add "/actions/"$NUM"/key" str "r"
-edb_ed $DB add "/actions/"$NUM"/modifiers" int $MOD_CTRL_ALT
-NUM=$[ $NUM + 1 ];
-edb_ed $DB add "/actions/"$NUM"/name" str "Key_Binding"
-edb_ed $DB add "/actions/"$NUM"/action" str "Window_Raise"
-edb_ed $DB add "/actions/"$NUM"/params" str ""
-edb_ed $DB add "/actions/"$NUM"/event" int $ACT_KEY_DOWN
-edb_ed $DB add "/actions/"$NUM"/button" int 0
-edb_ed $DB add "/actions/"$NUM"/key" str "Up"
-edb_ed $DB add "/actions/"$NUM"/modifiers" int $MOD_CTRL_ALT
-NUM=$[ $NUM + 1 ];
-edb_ed $DB add "/actions/"$NUM"/name" str "Key_Binding"
-edb_ed $DB add "/actions/"$NUM"/action" str "Window_Lower"
-edb_ed $DB add "/actions/"$NUM"/params" str ""
-edb_ed $DB add "/actions/"$NUM"/event" int $ACT_KEY_DOWN
-edb_ed $DB add "/actions/"$NUM"/button" int 0
-edb_ed $DB add "/actions/"$NUM"/key" str "Down"
-edb_ed $DB add "/actions/"$NUM"/modifiers" int $MOD_CTRL_ALT
-NUM=$[ $NUM + 1 ];
-edb_ed $DB add "/actions/"$NUM"/name" str "Key_Binding"
-edb_ed $DB add "/actions/"$NUM"/action" str "Window_Stick"
-edb_ed $DB add "/actions/"$NUM"/params" str ""
-edb_ed $DB add "/actions/"$NUM"/event" int $ACT_KEY_DOWN
-edb_ed $DB add "/actions/"$NUM"/button" int 0
-edb_ed $DB add "/actions/"$NUM"/key" str "a"
-edb_ed $DB add "/actions/"$NUM"/modifiers" int $MOD_CTRL_ALT
-NUM=$[ $NUM + 1 ];
-edb_ed $DB add "/actions/"$NUM"/name" str "Key_Binding"
-edb_ed $DB add "/actions/"$NUM"/action" str "Desktop"
-edb_ed $DB add "/actions/"$NUM"/params" str "0"
-edb_ed $DB add "/actions/"$NUM"/event" int $ACT_KEY_DOWN
-edb_ed $DB add "/actions/"$NUM"/button" int 0
-edb_ed $DB add "/actions/"$NUM"/key" str "F1"
-edb_ed $DB add "/actions/"$NUM"/modifiers" int $MOD_ALT
-NUM=$[ $NUM + 1 ];
-edb_ed $DB add "/actions/"$NUM"/name" str "Key_Binding"
-edb_ed $DB add "/actions/"$NUM"/action" str "Desktop"
-edb_ed $DB add "/actions/"$NUM"/params" str "1"
-edb_ed $DB add "/actions/"$NUM"/event" int $ACT_KEY_DOWN
-edb_ed $DB add "/actions/"$NUM"/button" int 0
-edb_ed $DB add "/actions/"$NUM"/key" str "F2"
-edb_ed $DB add "/actions/"$NUM"/modifiers" int $MOD_ALT
-NUM=$[ $NUM + 1 ];
-edb_ed $DB add "/actions/"$NUM"/name" str "Key_Binding"
-edb_ed $DB add "/actions/"$NUM"/action" str "Desktop"
-edb_ed $DB add "/actions/"$NUM"/params" str "2"
-edb_ed $DB add "/actions/"$NUM"/event" int $ACT_KEY_DOWN
-edb_ed $DB add "/actions/"$NUM"/button" int 0
-edb_ed $DB add "/actions/"$NUM"/key" str "F3"
-edb_ed $DB add "/actions/"$NUM"/modifiers" int $MOD_ALT
-NUM=$[ $NUM + 1 ];
-edb_ed $DB add "/actions/"$NUM"/name" str "Key_Binding"
-edb_ed $DB add "/actions/"$NUM"/action" str "Desktop"
-edb_ed $DB add "/actions/"$NUM"/params" str "3"
-edb_ed $DB add "/actions/"$NUM"/event" int $ACT_KEY_DOWN
-edb_ed $DB add "/actions/"$NUM"/button" int 0
-edb_ed $DB add "/actions/"$NUM"/key" str "F4"
-edb_ed $DB add "/actions/"$NUM"/modifiers" int $MOD_ALT
-NUM=$[ $NUM + 1 ];
-edb_ed $DB add "/actions/"$NUM"/name" str "Key_Binding"
-edb_ed $DB add "/actions/"$NUM"/action" str "Desktop"
-edb_ed $DB add "/actions/"$NUM"/params" str "4"
-edb_ed $DB add "/actions/"$NUM"/event" int $ACT_KEY_DOWN
-edb_ed $DB add "/actions/"$NUM"/button" int 0
-edb_ed $DB add "/actions/"$NUM"/key" str "F5"
-edb_ed $DB add "/actions/"$NUM"/modifiers" int $MOD_ALT
-NUM=$[ $NUM + 1 ];
-edb_ed $DB add "/actions/"$NUM"/name" str "Key_Binding"
-edb_ed $DB add "/actions/"$NUM"/action" str "Desktop"
-edb_ed $DB add "/actions/"$NUM"/params" str "5"
-edb_ed $DB add "/actions/"$NUM"/event" int $ACT_KEY_DOWN
-edb_ed $DB add "/actions/"$NUM"/button" int 0
-edb_ed $DB add "/actions/"$NUM"/key" str "F6"
-edb_ed $DB add "/actions/"$NUM"/modifiers" int $MOD_ALT
-NUM=$[ $NUM + 1 ];
-edb_ed $DB add "/actions/"$NUM"/name" str "Key_Binding"
-edb_ed $DB add "/actions/"$NUM"/action" str "Desktop"
-edb_ed $DB add "/actions/"$NUM"/params" str "6"
-edb_ed $DB add "/actions/"$NUM"/event" int $ACT_KEY_DOWN
-edb_ed $DB add "/actions/"$NUM"/button" int 0
-edb_ed $DB add "/actions/"$NUM"/key" str "F7"
-edb_ed $DB add "/actions/"$NUM"/modifiers" int $MOD_ALT
-NUM=$[ $NUM + 1 ];
-edb_ed $DB add "/actions/"$NUM"/name" str "Key_Binding"
-edb_ed $DB add "/actions/"$NUM"/action" str "Desktop"
-edb_ed $DB add "/actions/"$NUM"/params" str "7"
-edb_ed $DB add "/actions/"$NUM"/event" int $ACT_KEY_DOWN
-edb_ed $DB add "/actions/"$NUM"/button" int 0
-edb_ed $DB add "/actions/"$NUM"/key" str "F8"
-edb_ed $DB add "/actions/"$NUM"/modifiers" int $MOD_ALT
-NUM=$[ $NUM + 1 ];
-edb_ed $DB add "/actions/"$NUM"/name" str "Key_Binding"
-edb_ed $DB add "/actions/"$NUM"/action" str "Desktop_Relative"
-edb_ed $DB add "/actions/"$NUM"/params" str "1"
-edb_ed $DB add "/actions/"$NUM"/event" int $ACT_KEY_DOWN
-edb_ed $DB add "/actions/"$NUM"/button" int 0
-edb_ed $DB add "/actions/"$NUM"/key" str "Right"
-edb_ed $DB add "/actions/"$NUM"/modifiers" int $MOD_CTRL_ALT
-NUM=$[ $NUM + 1 ];
-edb_ed $DB add "/actions/"$NUM"/name" str "Key_Binding"
-edb_ed $DB add "/actions/"$NUM"/action" str "Desktop_Relative"
-edb_ed $DB add "/actions/"$NUM"/params" str "-1"
-edb_ed $DB add "/actions/"$NUM"/event" int $ACT_KEY_DOWN
-edb_ed $DB add "/actions/"$NUM"/button" int 0
-edb_ed $DB add "/actions/"$NUM"/key" str "Left"
-edb_ed $DB add "/actions/"$NUM"/modifiers" int $MOD_CTRL_ALT
-NUM=$[ $NUM + 1 ];
-edb_ed $DB add "/actions/"$NUM"/name" str "Key_Binding"
-edb_ed $DB add "/actions/"$NUM"/action" str "Execute"
-edb_ed $DB add "/actions/"$NUM"/params" str "Eterm"
-edb_ed $DB add "/actions/"$NUM"/event" int $ACT_KEY_DOWN
-edb_ed $DB add "/actions/"$NUM"/button" int 0
-edb_ed $DB add "/actions/"$NUM"/key" str "Insert"
-edb_ed $DB add "/actions/"$NUM"/modifiers" int $MOD_CTRL_ALT
-NUM=$[ $NUM + 1 ];
-edb_ed $DB add "/actions/"$NUM"/name" str "Key_Binding"
-edb_ed $DB add "/actions/"$NUM"/action" str "Window_Next"
-edb_ed $DB add "/actions/"$NUM"/params" str ""
-edb_ed $DB add "/actions/"$NUM"/event" int $ACT_KEY_DOWN
-edb_ed $DB add "/actions/"$NUM"/button" int 0
-edb_ed $DB add "/actions/"$NUM"/key" str "Tab"
-edb_ed $DB add "/actions/"$NUM"/modifiers" int $MOD_ALT
-NUM=$[ $NUM + 1 ];
-edb_ed $DB add "/actions/count" int $NUM
-
-edb_ed $DB add "/desktops/count" int $DESKTOP_COUNT
-edb_ed $DB add "/desktops/scroll" int $DESKTOP_SCROLL
-edb_ed $DB add "/desktops/scroll_sticky" int $DESKTOP_SCROLL_STICKY
-edb_ed $DB add "/desktops/resist" int $DESKTOP_RESIST
-edb_ed $DB add "/desktops/speed" int $DESKTOP_SPEED
-edb_ed $DB add "/desktops/width" int $DESKTOP_WIDTH
-edb_ed $DB add "/desktops/height" int $DESKTOP_HEIGHT
-
-# basic settings
-edb_ed $DB add "/move/resist" int 1
-edb_ed $DB add "/move/resist/desk" int 24
-edb_ed $DB add "/move/resist/win" int 12
-edb_ed $DB add "/menu/scroll/resist" int 5
-edb_ed $DB add "/menu/scroll/speed" int 12
-edb_ed $DB add "/window/focus/mode" int $FOCUS_POINTER
-edb_ed $DB add "/window/raise/auto" int 0
-edb_ed $DB add "/window/raise/delay" float 0.5
-edb_ed $DB add "/window/move/mode" int $WINDOW_MODE_OPAQUE
-edb_ed $DB add "/window/resize/mode" int $WINDOW_MODE_BOX
-edb_ed $DB add "/window/place/mode" int $WINDOW_PLACE_SMART
-edb_ed $DB add "/guides/display/x" float 0.5
-edb_ed $DB add "/guides/display/y" float 0.5
-edb_ed $DB add "/guides/display/location" int $GUIDES_LOC_SCR
-
-# what events on windows are "grabbed" by the window manager
-NUM=0
-edb_ed $DB add "/grabs/"$NUM"/button" int 1
-edb_ed $DB add "/grabs/"$NUM"/modifiers" int $MOD_ALT
-NUM=$[ $NUM + 1 ];
-edb_ed $DB add "/grabs/"$NUM"/button" int 2
-edb_ed $DB add "/grabs/"$NUM"/modifiers" int $MOD_ALT
-NUM=$[ $NUM + 1 ];
-edb_ed $DB add "/grabs/"$NUM"/button" int 3
-edb_ed $DB add "/grabs/"$NUM"/modifiers" int $MOD_ALT
-NUM=$[ $NUM + 1 ];
-edb_ed $DB add "/grabs/count" int $NUM
-
diff --git a/data/scripts/build_iconbar_db.sh b/data/scripts/build_iconbar_db.sh
deleted file mode 100755
index 3504dc416..000000000
--- a/data/scripts/build_iconbar_db.sh
+++ /dev/null
@@ -1,41 +0,0 @@
-#!/bin/sh
-
-DB=$1"/iconbar.db"
-BIT=$1"/iconbar.bits.db"
-
-setup ()
-{
- PREFIX="/usr/local"
- SYSIC="/usr/share/pixmaps"
- USRIC=$HOME"/stuff/icons"
- NUM=0
- rm -f $DB
-}
-
-finish ()
-{
- edb_ed $DB add "/icons/count" int $NUM
-}
-
-icon ()
-{
- e_img_import "$1" $DB":""/icons/"$NUM"/image"
- edb_ed $DB add "/icons/"$NUM"/exec" str "$2"
- NUM=$[ $NUM + 1 ];
-}
-
-setup
-
-icon $SYSIC"/gnome-term.png" "Eterm"
-icon $SYSIC"/gnome-ccdesktop.png" "sylpheed"
-icon $SYSIC"/netscape.png" "netscape"
-icon $USRIC"/mozilla.png" "mozilla"
-icon $SYSIC"/gnome-irc.png" "xchat"
-icon $SYSIC"/gnome-gimp.png" "gimp"
-icon $SYSIC"/gnome-mixer.png" "/home/raster/.desktop/FixMix"
-icon $SYSIC"/mc/gnome-audio.png" "xmms"
-icon $USRIC"star_office.png" "/home/raster/.desktop/Office"
-
-finish
-
-cp -f $PREFIX"/share/enlightenment/data/iconbar/iconbar_left.bits.db" $BIT
diff --git a/data/scripts/build_iconbar_db.sh.in b/data/scripts/build_iconbar_db.sh.in
deleted file mode 100644
index 0641c5c4c..000000000
--- a/data/scripts/build_iconbar_db.sh.in
+++ /dev/null
@@ -1,41 +0,0 @@
-#!/bin/sh
-
-DB=$1"/iconbar.db"
-BIT=$1"/iconbar.bits.db"
-
-setup ()
-{
- PREFIX="@prefix@"
- SYSIC="/usr/share/pixmaps"
- USRIC=$HOME"/stuff/icons"
- NUM=0
- rm -f $DB
-}
-
-finish ()
-{
- edb_ed $DB add "/icons/count" int $NUM
-}
-
-icon ()
-{
- e_img_import "$1" $DB":""/icons/"$NUM"/image"
- edb_ed $DB add "/icons/"$NUM"/exec" str "$2"
- NUM=$[ $NUM + 1 ];
-}
-
-setup
-
-icon $SYSIC"/gnome-term.png" "Eterm"
-icon $SYSIC"/gnome-ccdesktop.png" "sylpheed"
-icon $SYSIC"/netscape.png" "netscape"
-icon $USRIC"/mozilla.png" "mozilla"
-icon $SYSIC"/gnome-irc.png" "xchat"
-icon $SYSIC"/gnome-gimp.png" "gimp"
-icon $SYSIC"/gnome-mixer.png" "/home/raster/.desktop/FixMix"
-icon $SYSIC"/mc/gnome-audio.png" "xmms"
-icon $USRIC"star_office.png" "/home/raster/.desktop/Office"
-
-finish
-
-cp -f $PREFIX"/share/enlightenment/data/iconbar/iconbar_left.bits.db" $BIT
diff --git a/data/scrollbars/scroll_bar_h.bits.db b/data/scrollbars/scroll_bar_h.bits.db
deleted file mode 100644
index 08170b83a..000000000
--- a/data/scrollbars/scroll_bar_h.bits.db
+++ /dev/null
Binary files differ
diff --git a/data/scrollbars/scroll_bar_v.bits.db b/data/scrollbars/scroll_bar_v.bits.db
deleted file mode 100644
index 515b0548d..000000000
--- a/data/scrollbars/scroll_bar_v.bits.db
+++ /dev/null
Binary files differ
diff --git a/data/scrollbars/scroll_base_h.bits.db b/data/scrollbars/scroll_base_h.bits.db
deleted file mode 100644
index c2c1ace21..000000000
--- a/data/scrollbars/scroll_base_h.bits.db
+++ /dev/null
Binary files differ
diff --git a/data/scrollbars/scroll_base_v.bits.db b/data/scrollbars/scroll_base_v.bits.db
deleted file mode 100644
index 76b2eb336..000000000
--- a/data/scrollbars/scroll_base_v.bits.db
+++ /dev/null
Binary files differ
diff --git a/data/selections/file.bits.db b/data/selections/file.bits.db
deleted file mode 100644
index d09d23ec1..000000000
--- a/data/selections/file.bits.db
+++ /dev/null
Binary files differ
diff --git a/data/selections/text.bits.db b/data/selections/text.bits.db
deleted file mode 100644
index 4ea02b92f..000000000
--- a/data/selections/text.bits.db
+++ /dev/null
Binary files differ
diff --git a/data/setup/anim/e001.png b/data/setup/anim/e001.png
deleted file mode 100644
index 82d4b2b8f..000000000
--- a/data/setup/anim/e001.png
+++ /dev/null
Binary files differ
diff --git a/data/setup/anim/e002.png b/data/setup/anim/e002.png
deleted file mode 100644
index 578a82f8a..000000000
--- a/data/setup/anim/e002.png
+++ /dev/null
Binary files differ
diff --git a/data/setup/anim/e003.png b/data/setup/anim/e003.png
deleted file mode 100644
index 1416e03cc..000000000
--- a/data/setup/anim/e003.png
+++ /dev/null
Binary files differ
diff --git a/data/setup/anim/e004.png b/data/setup/anim/e004.png
deleted file mode 100644
index 8b63241cf..000000000
--- a/data/setup/anim/e004.png
+++ /dev/null
Binary files differ
diff --git a/data/setup/anim/e005.png b/data/setup/anim/e005.png
deleted file mode 100644
index 31ea7c2ea..000000000
--- a/data/setup/anim/e005.png
+++ /dev/null
Binary files differ
diff --git a/data/setup/anim/e006.png b/data/setup/anim/e006.png
deleted file mode 100644
index d16dd5b67..000000000
--- a/data/setup/anim/e006.png
+++ /dev/null
Binary files differ
diff --git a/data/setup/anim/e007.png b/data/setup/anim/e007.png
deleted file mode 100644
index e2efb0502..000000000
--- a/data/setup/anim/e007.png
+++ /dev/null
Binary files differ
diff --git a/data/setup/anim/e008.png b/data/setup/anim/e008.png
deleted file mode 100644
index 35d1e7a9d..000000000
--- a/data/setup/anim/e008.png
+++ /dev/null
Binary files differ
diff --git a/data/setup/anim/e009.png b/data/setup/anim/e009.png
deleted file mode 100644
index 9a1410113..000000000
--- a/data/setup/anim/e009.png
+++ /dev/null
Binary files differ
diff --git a/data/setup/anim/e010.png b/data/setup/anim/e010.png
deleted file mode 100644
index da001e9ab..000000000
--- a/data/setup/anim/e010.png
+++ /dev/null
Binary files differ
diff --git a/data/setup/anim/e011.png b/data/setup/anim/e011.png
deleted file mode 100644
index 10a1cad67..000000000
--- a/data/setup/anim/e011.png
+++ /dev/null
Binary files differ
diff --git a/data/setup/anim/e012.png b/data/setup/anim/e012.png
deleted file mode 100644
index da6401d78..000000000
--- a/data/setup/anim/e012.png
+++ /dev/null
Binary files differ
diff --git a/data/setup/anim/e013.png b/data/setup/anim/e013.png
deleted file mode 100644
index 124aa9794..000000000
--- a/data/setup/anim/e013.png
+++ /dev/null
Binary files differ
diff --git a/data/setup/anim/e014.png b/data/setup/anim/e014.png
deleted file mode 100644
index c73be597c..000000000
--- a/data/setup/anim/e014.png
+++ /dev/null
Binary files differ
diff --git a/data/setup/anim/e015.png b/data/setup/anim/e015.png
deleted file mode 100644
index f03a4785c..000000000
--- a/data/setup/anim/e015.png
+++ /dev/null
Binary files differ
diff --git a/data/setup/anim/e016.png b/data/setup/anim/e016.png
deleted file mode 100644
index 07c0ff78b..000000000
--- a/data/setup/anim/e016.png
+++ /dev/null
Binary files differ
diff --git a/data/setup/anim/e017.png b/data/setup/anim/e017.png
deleted file mode 100644
index 154dabb17..000000000
--- a/data/setup/anim/e017.png
+++ /dev/null
Binary files differ
diff --git a/data/setup/anim/e018.png b/data/setup/anim/e018.png
deleted file mode 100644
index d40724e87..000000000
--- a/data/setup/anim/e018.png
+++ /dev/null
Binary files differ
diff --git a/data/setup/anim/e019.png b/data/setup/anim/e019.png
deleted file mode 100644
index 2ef6fd70f..000000000
--- a/data/setup/anim/e019.png
+++ /dev/null
Binary files differ
diff --git a/data/setup/anim/e020.png b/data/setup/anim/e020.png
deleted file mode 100644
index 3c9653ed7..000000000
--- a/data/setup/anim/e020.png
+++ /dev/null
Binary files differ
diff --git a/data/setup/anim/e021.png b/data/setup/anim/e021.png
deleted file mode 100644
index 831efac97..000000000
--- a/data/setup/anim/e021.png
+++ /dev/null
Binary files differ
diff --git a/data/setup/anim/e022.png b/data/setup/anim/e022.png
deleted file mode 100644
index 7bc3a8f1a..000000000
--- a/data/setup/anim/e022.png
+++ /dev/null
Binary files differ
diff --git a/data/setup/anim/e023.png b/data/setup/anim/e023.png
deleted file mode 100644
index a050caa8a..000000000
--- a/data/setup/anim/e023.png
+++ /dev/null
Binary files differ
diff --git a/data/setup/anim/e024.png b/data/setup/anim/e024.png
deleted file mode 100644
index db1b648cc..000000000
--- a/data/setup/anim/e024.png
+++ /dev/null
Binary files differ
diff --git a/data/setup/anim/e025.png b/data/setup/anim/e025.png
deleted file mode 100644
index 796023eea..000000000
--- a/data/setup/anim/e025.png
+++ /dev/null
Binary files differ
diff --git a/data/setup/anim/e026.png b/data/setup/anim/e026.png
deleted file mode 100644
index ca4db6304..000000000
--- a/data/setup/anim/e026.png
+++ /dev/null
Binary files differ
diff --git a/data/setup/anim/e027.png b/data/setup/anim/e027.png
deleted file mode 100644
index 195588378..000000000
--- a/data/setup/anim/e027.png
+++ /dev/null
Binary files differ
diff --git a/data/setup/anim/e028.png b/data/setup/anim/e028.png
deleted file mode 100644
index 649f2e069..000000000
--- a/data/setup/anim/e028.png
+++ /dev/null
Binary files differ
diff --git a/data/setup/anim/e029.png b/data/setup/anim/e029.png
deleted file mode 100644
index 896c6b210..000000000
--- a/data/setup/anim/e029.png
+++ /dev/null
Binary files differ
diff --git a/data/setup/anim/e030.png b/data/setup/anim/e030.png
deleted file mode 100644
index 08da5afb8..000000000
--- a/data/setup/anim/e030.png
+++ /dev/null
Binary files differ
diff --git a/data/setup/anim/e031.png b/data/setup/anim/e031.png
deleted file mode 100644
index ae4046964..000000000
--- a/data/setup/anim/e031.png
+++ /dev/null
Binary files differ
diff --git a/data/setup/anim/e032.png b/data/setup/anim/e032.png
deleted file mode 100644
index 0c3bc712c..000000000
--- a/data/setup/anim/e032.png
+++ /dev/null
Binary files differ
diff --git a/data/setup/anim/e033.png b/data/setup/anim/e033.png
deleted file mode 100644
index 19ac48900..000000000
--- a/data/setup/anim/e033.png
+++ /dev/null
Binary files differ
diff --git a/data/setup/anim/e034.png b/data/setup/anim/e034.png
deleted file mode 100644
index db393af98..000000000
--- a/data/setup/anim/e034.png
+++ /dev/null
Binary files differ
diff --git a/data/setup/anim/e035.png b/data/setup/anim/e035.png
deleted file mode 100644
index ca68c8825..000000000
--- a/data/setup/anim/e035.png
+++ /dev/null
Binary files differ
diff --git a/data/setup/anim/e036.png b/data/setup/anim/e036.png
deleted file mode 100644
index 2953811dc..000000000
--- a/data/setup/anim/e036.png
+++ /dev/null
Binary files differ
diff --git a/data/setup/anim/e037.png b/data/setup/anim/e037.png
deleted file mode 100644
index b411fde2b..000000000
--- a/data/setup/anim/e037.png
+++ /dev/null
Binary files differ
diff --git a/data/setup/anim/e038.png b/data/setup/anim/e038.png
deleted file mode 100644
index ed168e6a7..000000000
--- a/data/setup/anim/e038.png
+++ /dev/null
Binary files differ
diff --git a/data/setup/anim/e039.png b/data/setup/anim/e039.png
deleted file mode 100644
index dd1207ca5..000000000
--- a/data/setup/anim/e039.png
+++ /dev/null
Binary files differ
diff --git a/data/setup/anim/e040.png b/data/setup/anim/e040.png
deleted file mode 100644
index 28a257b53..000000000
--- a/data/setup/anim/e040.png
+++ /dev/null
Binary files differ
diff --git a/data/setup/anim/e041.png b/data/setup/anim/e041.png
deleted file mode 100644
index bd23007a6..000000000
--- a/data/setup/anim/e041.png
+++ /dev/null
Binary files differ
diff --git a/data/setup/anim/e042.png b/data/setup/anim/e042.png
deleted file mode 100644
index f72ea4d8a..000000000
--- a/data/setup/anim/e042.png
+++ /dev/null
Binary files differ
diff --git a/data/setup/anim/e043.png b/data/setup/anim/e043.png
deleted file mode 100644
index 0a38efdc1..000000000
--- a/data/setup/anim/e043.png
+++ /dev/null
Binary files differ
diff --git a/data/setup/anim/e044.png b/data/setup/anim/e044.png
deleted file mode 100644
index a905e8e26..000000000
--- a/data/setup/anim/e044.png
+++ /dev/null
Binary files differ
diff --git a/data/setup/anim/e045.png b/data/setup/anim/e045.png
deleted file mode 100644
index 3a9ff8b5b..000000000
--- a/data/setup/anim/e045.png
+++ /dev/null
Binary files differ
diff --git a/data/setup/anim/e046.png b/data/setup/anim/e046.png
deleted file mode 100644
index 24bf66959..000000000
--- a/data/setup/anim/e046.png
+++ /dev/null
Binary files differ
diff --git a/data/setup/anim/e047.png b/data/setup/anim/e047.png
deleted file mode 100644
index 8aa146985..000000000
--- a/data/setup/anim/e047.png
+++ /dev/null
Binary files differ
diff --git a/data/setup/anim/e048.png b/data/setup/anim/e048.png
deleted file mode 100644
index 6b8bc9452..000000000
--- a/data/setup/anim/e048.png
+++ /dev/null
Binary files differ
diff --git a/data/setup/anim/e049.png b/data/setup/anim/e049.png
deleted file mode 100644
index b93b8c0fb..000000000
--- a/data/setup/anim/e049.png
+++ /dev/null
Binary files differ
diff --git a/data/setup/anim/e050.png b/data/setup/anim/e050.png
deleted file mode 100644
index 67885b6eb..000000000
--- a/data/setup/anim/e050.png
+++ /dev/null
Binary files differ
diff --git a/data/setup/anim/e051.png b/data/setup/anim/e051.png
deleted file mode 100644
index 922165059..000000000
--- a/data/setup/anim/e051.png
+++ /dev/null
Binary files differ
diff --git a/data/setup/anim/e052.png b/data/setup/anim/e052.png
deleted file mode 100644
index 266d7f3aa..000000000
--- a/data/setup/anim/e052.png
+++ /dev/null
Binary files differ
diff --git a/data/setup/anim/e053.png b/data/setup/anim/e053.png
deleted file mode 100644
index f6fceab52..000000000
--- a/data/setup/anim/e053.png
+++ /dev/null
Binary files differ
diff --git a/data/setup/anim/e054.png b/data/setup/anim/e054.png
deleted file mode 100644
index 6eb3e96f6..000000000
--- a/data/setup/anim/e054.png
+++ /dev/null
Binary files differ
diff --git a/data/setup/anim/e055.png b/data/setup/anim/e055.png
deleted file mode 100644
index 6178666ac..000000000
--- a/data/setup/anim/e055.png
+++ /dev/null
Binary files differ
diff --git a/data/setup/anim/e056.png b/data/setup/anim/e056.png
deleted file mode 100644
index b4024ba92..000000000
--- a/data/setup/anim/e056.png
+++ /dev/null
Binary files differ
diff --git a/data/setup/anim/e057.png b/data/setup/anim/e057.png
deleted file mode 100644
index f2be932df..000000000
--- a/data/setup/anim/e057.png
+++ /dev/null
Binary files differ
diff --git a/data/setup/anim/e058.png b/data/setup/anim/e058.png
deleted file mode 100644
index 0d81d2b22..000000000
--- a/data/setup/anim/e058.png
+++ /dev/null
Binary files differ
diff --git a/data/setup/anim/e059.png b/data/setup/anim/e059.png
deleted file mode 100644
index 224676302..000000000
--- a/data/setup/anim/e059.png
+++ /dev/null
Binary files differ
diff --git a/data/setup/anim/e060.png b/data/setup/anim/e060.png
deleted file mode 100644
index e56dcdbe2..000000000
--- a/data/setup/anim/e060.png
+++ /dev/null
Binary files differ
diff --git a/data/setup/anim/e061.png b/data/setup/anim/e061.png
deleted file mode 100644
index bc40e9aab..000000000
--- a/data/setup/anim/e061.png
+++ /dev/null
Binary files differ
diff --git a/data/setup/anim/e062.png b/data/setup/anim/e062.png
deleted file mode 100644
index cdffc0329..000000000
--- a/data/setup/anim/e062.png
+++ /dev/null
Binary files differ
diff --git a/data/setup/anim/e063.png b/data/setup/anim/e063.png
deleted file mode 100644
index b799427da..000000000
--- a/data/setup/anim/e063.png
+++ /dev/null
Binary files differ
diff --git a/data/setup/anim/e064.png b/data/setup/anim/e064.png
deleted file mode 100644
index d0b3f292f..000000000
--- a/data/setup/anim/e064.png
+++ /dev/null
Binary files differ
diff --git a/data/setup/anim/e065.png b/data/setup/anim/e065.png
deleted file mode 100644
index 7d0fb356b..000000000
--- a/data/setup/anim/e065.png
+++ /dev/null
Binary files differ
diff --git a/data/setup/anim/e066.png b/data/setup/anim/e066.png
deleted file mode 100644
index 44a1917d6..000000000
--- a/data/setup/anim/e066.png
+++ /dev/null
Binary files differ
diff --git a/data/setup/anim/e067.png b/data/setup/anim/e067.png
deleted file mode 100644
index 1efee7666..000000000
--- a/data/setup/anim/e067.png
+++ /dev/null
Binary files differ
diff --git a/data/setup/anim/e068.png b/data/setup/anim/e068.png
deleted file mode 100644
index ec07d3e54..000000000
--- a/data/setup/anim/e068.png
+++ /dev/null
Binary files differ
diff --git a/data/setup/anim/e069.png b/data/setup/anim/e069.png
deleted file mode 100644
index b7fdb5bb0..000000000
--- a/data/setup/anim/e069.png
+++ /dev/null
Binary files differ
diff --git a/data/setup/anim/e070.png b/data/setup/anim/e070.png
deleted file mode 100644
index 98584308a..000000000
--- a/data/setup/anim/e070.png
+++ /dev/null
Binary files differ
diff --git a/data/setup/anim/e071.png b/data/setup/anim/e071.png
deleted file mode 100644
index 7b695a426..000000000
--- a/data/setup/anim/e071.png
+++ /dev/null
Binary files differ
diff --git a/data/setup/anim/e072.png b/data/setup/anim/e072.png
deleted file mode 100644
index 678680f26..000000000
--- a/data/setup/anim/e072.png
+++ /dev/null
Binary files differ
diff --git a/data/setup/anim/e073.png b/data/setup/anim/e073.png
deleted file mode 100644
index eb547ec91..000000000
--- a/data/setup/anim/e073.png
+++ /dev/null
Binary files differ
diff --git a/data/setup/anim/e074.png b/data/setup/anim/e074.png
deleted file mode 100644
index 7bea3578b..000000000
--- a/data/setup/anim/e074.png
+++ /dev/null
Binary files differ
diff --git a/data/setup/anim/e075.png b/data/setup/anim/e075.png
deleted file mode 100644
index 908dce760..000000000
--- a/data/setup/anim/e075.png
+++ /dev/null
Binary files differ
diff --git a/data/setup/anim/e076.png b/data/setup/anim/e076.png
deleted file mode 100644
index 30402f78e..000000000
--- a/data/setup/anim/e076.png
+++ /dev/null
Binary files differ
diff --git a/data/setup/anim/e077.png b/data/setup/anim/e077.png
deleted file mode 100644
index 7e87e7664..000000000
--- a/data/setup/anim/e077.png
+++ /dev/null
Binary files differ
diff --git a/data/setup/anim/e078.png b/data/setup/anim/e078.png
deleted file mode 100644
index 0dee079bc..000000000
--- a/data/setup/anim/e078.png
+++ /dev/null
Binary files differ
diff --git a/data/setup/anim/e079.png b/data/setup/anim/e079.png
deleted file mode 100644
index 6387afb79..000000000
--- a/data/setup/anim/e079.png
+++ /dev/null
Binary files differ
diff --git a/data/setup/anim/e080.png b/data/setup/anim/e080.png
deleted file mode 100644
index 679230ff0..000000000
--- a/data/setup/anim/e080.png
+++ /dev/null
Binary files differ
diff --git a/data/setup/anim/e081.png b/data/setup/anim/e081.png
deleted file mode 100644
index a732aecd4..000000000
--- a/data/setup/anim/e081.png
+++ /dev/null
Binary files differ
diff --git a/data/setup/anim/e082.png b/data/setup/anim/e082.png
deleted file mode 100644
index 2ec6548af..000000000
--- a/data/setup/anim/e082.png
+++ /dev/null
Binary files differ
diff --git a/data/setup/anim/e083.png b/data/setup/anim/e083.png
deleted file mode 100644
index 42d958002..000000000
--- a/data/setup/anim/e083.png
+++ /dev/null
Binary files differ
diff --git a/data/setup/anim/e084.png b/data/setup/anim/e084.png
deleted file mode 100644
index 52ff28e7d..000000000
--- a/data/setup/anim/e084.png
+++ /dev/null
Binary files differ
diff --git a/data/setup/anim/e085.png b/data/setup/anim/e085.png
deleted file mode 100644
index 2cd6e7ebe..000000000
--- a/data/setup/anim/e085.png
+++ /dev/null
Binary files differ
diff --git a/data/setup/anim/e086.png b/data/setup/anim/e086.png
deleted file mode 100644
index 6cb35fcd7..000000000
--- a/data/setup/anim/e086.png
+++ /dev/null
Binary files differ
diff --git a/data/setup/anim/e087.png b/data/setup/anim/e087.png
deleted file mode 100644
index 327127134..000000000
--- a/data/setup/anim/e087.png
+++ /dev/null
Binary files differ
diff --git a/data/setup/anim/e088.png b/data/setup/anim/e088.png
deleted file mode 100644
index b3f82199a..000000000
--- a/data/setup/anim/e088.png
+++ /dev/null
Binary files differ
diff --git a/data/setup/anim/e089.png b/data/setup/anim/e089.png
deleted file mode 100644
index de08f4403..000000000
--- a/data/setup/anim/e089.png
+++ /dev/null
Binary files differ
diff --git a/data/setup/anim/e090.png b/data/setup/anim/e090.png
deleted file mode 100644
index 4b9c00cbc..000000000
--- a/data/setup/anim/e090.png
+++ /dev/null
Binary files differ
diff --git a/data/setup/anim/e091.png b/data/setup/anim/e091.png
deleted file mode 100644
index 8b7ce309d..000000000
--- a/data/setup/anim/e091.png
+++ /dev/null
Binary files differ
diff --git a/data/setup/anim/e092.png b/data/setup/anim/e092.png
deleted file mode 100644
index 365b51dea..000000000
--- a/data/setup/anim/e092.png
+++ /dev/null
Binary files differ
diff --git a/data/setup/anim/e093.png b/data/setup/anim/e093.png
deleted file mode 100644
index 25589bb0a..000000000
--- a/data/setup/anim/e093.png
+++ /dev/null
Binary files differ
diff --git a/data/setup/anim/e094.png b/data/setup/anim/e094.png
deleted file mode 100644
index 1e8ada680..000000000
--- a/data/setup/anim/e094.png
+++ /dev/null
Binary files differ
diff --git a/data/setup/anim/e095.png b/data/setup/anim/e095.png
deleted file mode 100644
index a6cc1f1b1..000000000
--- a/data/setup/anim/e095.png
+++ /dev/null
Binary files differ
diff --git a/data/setup/anim/e096.png b/data/setup/anim/e096.png
deleted file mode 100644
index 46f0ea2b2..000000000
--- a/data/setup/anim/e096.png
+++ /dev/null
Binary files differ
diff --git a/data/setup/anim/e097.png b/data/setup/anim/e097.png
deleted file mode 100644
index 3be92b283..000000000
--- a/data/setup/anim/e097.png
+++ /dev/null
Binary files differ
diff --git a/data/setup/anim/e098.png b/data/setup/anim/e098.png
deleted file mode 100644
index 185dfb6cb..000000000
--- a/data/setup/anim/e098.png
+++ /dev/null
Binary files differ
diff --git a/data/setup/anim/e099.png b/data/setup/anim/e099.png
deleted file mode 100644
index bba664a5d..000000000
--- a/data/setup/anim/e099.png
+++ /dev/null
Binary files differ
diff --git a/data/setup/anim/e100.png b/data/setup/anim/e100.png
deleted file mode 100644
index b5d54dc26..000000000
--- a/data/setup/anim/e100.png
+++ /dev/null
Binary files differ
diff --git a/data/setup/anim/e101.png b/data/setup/anim/e101.png
deleted file mode 100644
index 9df7a5371..000000000
--- a/data/setup/anim/e101.png
+++ /dev/null
Binary files differ
diff --git a/data/setup/anim/e102.png b/data/setup/anim/e102.png
deleted file mode 100644
index f5c641c75..000000000
--- a/data/setup/anim/e102.png
+++ /dev/null
Binary files differ
diff --git a/data/setup/anim/e103.png b/data/setup/anim/e103.png
deleted file mode 100644
index c31ae31f2..000000000
--- a/data/setup/anim/e103.png
+++ /dev/null
Binary files differ
diff --git a/data/setup/anim/e104.png b/data/setup/anim/e104.png
deleted file mode 100644
index 4659c705c..000000000
--- a/data/setup/anim/e104.png
+++ /dev/null
Binary files differ
diff --git a/data/setup/anim/e105.png b/data/setup/anim/e105.png
deleted file mode 100644
index 6a48c8768..000000000
--- a/data/setup/anim/e105.png
+++ /dev/null
Binary files differ
diff --git a/data/setup/anim/e106.png b/data/setup/anim/e106.png
deleted file mode 100644
index cf759b137..000000000
--- a/data/setup/anim/e106.png
+++ /dev/null
Binary files differ
diff --git a/data/setup/anim/e107.png b/data/setup/anim/e107.png
deleted file mode 100644
index 35d66702d..000000000
--- a/data/setup/anim/e107.png
+++ /dev/null
Binary files differ
diff --git a/data/setup/anim/e108.png b/data/setup/anim/e108.png
deleted file mode 100644
index 85dd9f2a6..000000000
--- a/data/setup/anim/e108.png
+++ /dev/null
Binary files differ
diff --git a/data/setup/anim/e109.png b/data/setup/anim/e109.png
deleted file mode 100644
index 8b2fe441e..000000000
--- a/data/setup/anim/e109.png
+++ /dev/null
Binary files differ
diff --git a/data/setup/anim/e110.png b/data/setup/anim/e110.png
deleted file mode 100644
index 40138c733..000000000
--- a/data/setup/anim/e110.png
+++ /dev/null
Binary files differ
diff --git a/data/setup/anim/e111.png b/data/setup/anim/e111.png
deleted file mode 100644
index 5393b9f2d..000000000
--- a/data/setup/anim/e111.png
+++ /dev/null
Binary files differ
diff --git a/data/setup/anim/e112.png b/data/setup/anim/e112.png
deleted file mode 100644
index 0d3441a33..000000000
--- a/data/setup/anim/e112.png
+++ /dev/null
Binary files differ
diff --git a/data/setup/anim/e113.png b/data/setup/anim/e113.png
deleted file mode 100644
index 14de9c50a..000000000
--- a/data/setup/anim/e113.png
+++ /dev/null
Binary files differ
diff --git a/data/setup/anim/e114.png b/data/setup/anim/e114.png
deleted file mode 100644
index a5b2dd61e..000000000
--- a/data/setup/anim/e114.png
+++ /dev/null
Binary files differ
diff --git a/data/setup/anim/e115.png b/data/setup/anim/e115.png
deleted file mode 100644
index ac9dadde3..000000000
--- a/data/setup/anim/e115.png
+++ /dev/null
Binary files differ
diff --git a/data/setup/anim/e116.png b/data/setup/anim/e116.png
deleted file mode 100644
index 56e79ba1b..000000000
--- a/data/setup/anim/e116.png
+++ /dev/null
Binary files differ
diff --git a/data/setup/anim/e117.png b/data/setup/anim/e117.png
deleted file mode 100644
index 11f5783cf..000000000
--- a/data/setup/anim/e117.png
+++ /dev/null
Binary files differ
diff --git a/data/setup/anim/e118.png b/data/setup/anim/e118.png
deleted file mode 100644
index 4ba5e0a2f..000000000
--- a/data/setup/anim/e118.png
+++ /dev/null
Binary files differ
diff --git a/data/setup/anim/e119.png b/data/setup/anim/e119.png
deleted file mode 100644
index 27659304e..000000000
--- a/data/setup/anim/e119.png
+++ /dev/null
Binary files differ
diff --git a/data/setup/anim/e120.png b/data/setup/anim/e120.png
deleted file mode 100644
index 115eae9c9..000000000
--- a/data/setup/anim/e120.png
+++ /dev/null
Binary files differ
diff --git a/data/setup/logo.png b/data/setup/logo.png
deleted file mode 100644
index 9e8d6c344..000000000
--- a/data/setup/logo.png
+++ /dev/null
Binary files differ
diff --git a/data/setup/pointer.png b/data/setup/pointer.png
deleted file mode 100644
index 50bfdc727..000000000
--- a/data/setup/pointer.png
+++ /dev/null
Binary files differ
diff --git a/data/setup/setup.bg.db b/data/setup/setup.bg.db
deleted file mode 100644
index e2937a113..000000000
--- a/data/setup/setup.bg.db
+++ /dev/null
Binary files differ
diff --git a/data/setup/textzone.bits.db b/data/setup/textzone.bits.db
deleted file mode 100644
index 72c35d0bc..000000000
--- a/data/setup/textzone.bits.db
+++ /dev/null
Binary files differ
diff --git a/data/setup/textzone_button.bits.db b/data/setup/textzone_button.bits.db
deleted file mode 100644
index 8b600c054..000000000
--- a/data/setup/textzone_button.bits.db
+++ /dev/null
Binary files differ
diff --git a/data/setup/textzonebg.xcf b/data/setup/textzonebg.xcf
deleted file mode 100644
index e1d1a3167..000000000
--- a/data/setup/textzonebg.xcf
+++ /dev/null
Binary files differ
diff --git a/data/test/test.db b/data/test/test.db
deleted file mode 100644
index 54fe34d15..000000000
--- a/data/test/test.db
+++ /dev/null
Binary files differ
diff --git a/data/themes/icons/BlueMilk/application/default.db b/data/themes/icons/BlueMilk/application/default.db
deleted file mode 100644
index 0ce9f2e38..000000000
--- a/data/themes/icons/BlueMilk/application/default.db
+++ /dev/null
Binary files differ
diff --git a/data/themes/icons/BlueMilk/archive/default.db b/data/themes/icons/BlueMilk/archive/default.db
deleted file mode 100644
index c125ec22b..000000000
--- a/data/themes/icons/BlueMilk/archive/default.db
+++ /dev/null
Binary files differ
diff --git a/data/themes/icons/BlueMilk/archive/gnu-zip-unix.db b/data/themes/icons/BlueMilk/archive/gnu-zip-unix.db
deleted file mode 100644
index c125ec22b..000000000
--- a/data/themes/icons/BlueMilk/archive/gnu-zip-unix.db
+++ /dev/null
Binary files differ
diff --git a/data/themes/icons/BlueMilk/audio/default.db b/data/themes/icons/BlueMilk/audio/default.db
deleted file mode 100644
index 2cb03f8a0..000000000
--- a/data/themes/icons/BlueMilk/audio/default.db
+++ /dev/null
Binary files differ
diff --git a/data/themes/icons/BlueMilk/custom/floppy.db b/data/themes/icons/BlueMilk/custom/floppy.db
deleted file mode 100644
index 05f36e62f..000000000
--- a/data/themes/icons/BlueMilk/custom/floppy.db
+++ /dev/null
Binary files differ
diff --git a/data/themes/icons/BlueMilk/dir/default.db b/data/themes/icons/BlueMilk/dir/default.db
deleted file mode 100644
index 03ce24e27..000000000
--- a/data/themes/icons/BlueMilk/dir/default.db
+++ /dev/null
Binary files differ
diff --git a/data/themes/icons/BlueMilk/dir/ext2.db b/data/themes/icons/BlueMilk/dir/ext2.db
deleted file mode 100644
index 469b44d3b..000000000
--- a/data/themes/icons/BlueMilk/dir/ext2.db
+++ /dev/null
Binary files differ
diff --git a/data/themes/icons/BlueMilk/dir/isofs.db b/data/themes/icons/BlueMilk/dir/isofs.db
deleted file mode 100644
index e3f5020c8..000000000
--- a/data/themes/icons/BlueMilk/dir/isofs.db
+++ /dev/null
Binary files differ
diff --git a/data/themes/icons/BlueMilk/dir/trash.db b/data/themes/icons/BlueMilk/dir/trash.db
deleted file mode 100644
index a5a831a98..000000000
--- a/data/themes/icons/BlueMilk/dir/trash.db
+++ /dev/null
Binary files differ
diff --git a/data/themes/icons/BlueMilk/document/default.db b/data/themes/icons/BlueMilk/document/default.db
deleted file mode 100644
index 4a22dff19..000000000
--- a/data/themes/icons/BlueMilk/document/default.db
+++ /dev/null
Binary files differ
diff --git a/data/themes/icons/BlueMilk/document/pdf.db b/data/themes/icons/BlueMilk/document/pdf.db
deleted file mode 100644
index 6fde97557..000000000
--- a/data/themes/icons/BlueMilk/document/pdf.db
+++ /dev/null
Binary files differ
diff --git a/data/themes/icons/BlueMilk/document/postscript.db b/data/themes/icons/BlueMilk/document/postscript.db
deleted file mode 100644
index 7a188fa63..000000000
--- a/data/themes/icons/BlueMilk/document/postscript.db
+++ /dev/null
Binary files differ
diff --git a/data/themes/icons/BlueMilk/document/unknown.db b/data/themes/icons/BlueMilk/document/unknown.db
deleted file mode 100644
index 7454755a2..000000000
--- a/data/themes/icons/BlueMilk/document/unknown.db
+++ /dev/null
Binary files differ
diff --git a/data/themes/icons/BlueMilk/image/default.db b/data/themes/icons/BlueMilk/image/default.db
deleted file mode 100644
index fa611ed3d..000000000
--- a/data/themes/icons/BlueMilk/image/default.db
+++ /dev/null
Binary files differ
diff --git a/data/themes/icons/BlueMilk/image/gif.db b/data/themes/icons/BlueMilk/image/gif.db
deleted file mode 100644
index 383ae5187..000000000
--- a/data/themes/icons/BlueMilk/image/gif.db
+++ /dev/null
Binary files differ
diff --git a/data/themes/icons/BlueMilk/image/jpeg.db b/data/themes/icons/BlueMilk/image/jpeg.db
deleted file mode 100644
index 86947dc9e..000000000
--- a/data/themes/icons/BlueMilk/image/jpeg.db
+++ /dev/null
Binary files differ
diff --git a/data/themes/icons/BlueMilk/image/png.db b/data/themes/icons/BlueMilk/image/png.db
deleted file mode 100644
index eada221a8..000000000
--- a/data/themes/icons/BlueMilk/image/png.db
+++ /dev/null
Binary files differ
diff --git a/data/themes/icons/BlueMilk/image/tiff.db b/data/themes/icons/BlueMilk/image/tiff.db
deleted file mode 100644
index 21ea6ee80..000000000
--- a/data/themes/icons/BlueMilk/image/tiff.db
+++ /dev/null
Binary files differ
diff --git a/data/themes/icons/BlueMilk/image/xpm.db b/data/themes/icons/BlueMilk/image/xpm.db
deleted file mode 100644
index 828eaf292..000000000
--- a/data/themes/icons/BlueMilk/image/xpm.db
+++ /dev/null
Binary files differ
diff --git a/data/themes/icons/BlueMilk/text/c.db b/data/themes/icons/BlueMilk/text/c.db
deleted file mode 100644
index ccd22f674..000000000
--- a/data/themes/icons/BlueMilk/text/c.db
+++ /dev/null
Binary files differ
diff --git a/data/themes/icons/BlueMilk/text/cpp.db b/data/themes/icons/BlueMilk/text/cpp.db
deleted file mode 100644
index a85414c1b..000000000
--- a/data/themes/icons/BlueMilk/text/cpp.db
+++ /dev/null
Binary files differ
diff --git a/data/themes/icons/BlueMilk/text/default.db b/data/themes/icons/BlueMilk/text/default.db
deleted file mode 100644
index 82c4d285c..000000000
--- a/data/themes/icons/BlueMilk/text/default.db
+++ /dev/null
Binary files differ
diff --git a/data/themes/icons/BlueMilk/text/header.db b/data/themes/icons/BlueMilk/text/header.db
deleted file mode 100644
index 7f5aeee0d..000000000
--- a/data/themes/icons/BlueMilk/text/header.db
+++ /dev/null
Binary files differ
diff --git a/data/themes/icons/BlueMilk/text/html.db b/data/themes/icons/BlueMilk/text/html.db
deleted file mode 100644
index 0a6561910..000000000
--- a/data/themes/icons/BlueMilk/text/html.db
+++ /dev/null
Binary files differ
diff --git a/data/themes/icons/BlueMilk/text/plain.db b/data/themes/icons/BlueMilk/text/plain.db
deleted file mode 100644
index 5d19be807..000000000
--- a/data/themes/icons/BlueMilk/text/plain.db
+++ /dev/null
Binary files differ
diff --git a/data/themes/icons/BlueMilk/unknown/default.db b/data/themes/icons/BlueMilk/unknown/default.db
deleted file mode 100644
index acfa520d8..000000000
--- a/data/themes/icons/BlueMilk/unknown/default.db
+++ /dev/null
Binary files differ
diff --git a/data/themes/icons/BlueMilk/unknown/unknown.db b/data/themes/icons/BlueMilk/unknown/unknown.db
deleted file mode 100644
index 17b27fa50..000000000
--- a/data/themes/icons/BlueMilk/unknown/unknown.db
+++ /dev/null
Binary files differ
diff --git a/debian/changelog b/debian/changelog
deleted file mode 100644
index 5862e5625..000000000
--- a/debian/changelog
+++ /dev/null
@@ -1,5 +0,0 @@
-e17 (0.17.pre_0-0cvs2001103101) unstable; urgency=low
-
- * a CVS release
-
- -- Laurence J. Lane <ljlane@debian.org> Mon, 29 Oct 2001 04:24:58 +0000
diff --git a/debian/control b/debian/control
deleted file mode 100644
index 6cf55adfc..000000000
--- a/debian/control
+++ /dev/null
@@ -1,12 +0,0 @@
-Source: e17
-Section: x11
-Priority: optional
-Maintainer: Laurence J. Lane <ljlane@debian.org>
-Standards-Version: 3.2.1.0
-
-Package: e17
-Section: x11
-Architecture: any
-Depends: ${shlibs:Depends}, imlib2-loaders
-Description: e17 description
- e17 extended description
diff --git a/debian/copyright b/debian/copyright
deleted file mode 100644
index 374f4a9dd..000000000
--- a/debian/copyright
+++ /dev/null
@@ -1,32 +0,0 @@
-This package was debianized by Laurence J. Lane <ljlane@debian.org> on
-Sat, 28 Oct 2000 17:56:46 -0400.
-
-The source is downloaded from the e17/apps/e module of the enlightenment CVS
-tree. For more information, see:
-
- http://www.enlightenment.org/cvs.html
-
-Upstream Author: Carsten Haitzler <raster@rasterman.com>
-
-Copyright:
-
-Copyright (C) 2000 Carsten Haitzler and various contributors (see AUTHORS)
-
-Permission is hereby granted, free of charge, to any person obtaining a copy
-of this software and associated documentation files (the "Software"), to
-deal in the Software without restriction, including without limitation the
-rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
-sell copies of the Software, and to permit persons to whom the Software is
-furnished to do so, subject to the following conditions:
-
-The above copyright notice and this permission notice shall be included in
-all copies of the Software, its documentation and marketing & publicity
-materials, and acknowledgment shall be given in the documentation, materials
-and software packages that this Software was used.
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
-THE AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
-IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
-CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
diff --git a/debian/e17.postinst b/debian/e17.postinst
deleted file mode 100644
index bab464e2d..000000000
--- a/debian/e17.postinst
+++ /dev/null
@@ -1,7 +0,0 @@
-#!/bin/sh -e
-
-if test "$1" = "configure"; then
- ldconfig
-fi
-
-#DEBHELPER#
diff --git a/debian/rules b/debian/rules
deleted file mode 100644
index b7ba176c6..000000000
--- a/debian/rules
+++ /dev/null
@@ -1,55 +0,0 @@
-#!/usr/bin/make -f
-# Sample debian/rules that uses debhelper.
-# GNU copyright 1997 to 1999 by Joey Hess.
-
-export DH_COMPAT=3
-
-INSTALL = /usr/bin/install
-package = e17
-pwd:=$(CURDIR)
-cfg:=--prefix=/usr --datadir=/usr/share/e17
-INSTALL=/usr/bin/install
-
-build: build-stamp
-build-stamp:
- dh_testdir
- test -x autogen.sh && ./autogen.sh $(cfg) || ./configure $(cfg)
- $(MAKE)
- touch $@
-
-clean:
- dh_testdir
- rm -f build-stamp
- -$(MAKE) distclean
- dh_clean
-
-install: build
- dh_testdir
- dh_testroot
- dh_clean -k
- dh_installdirs
-
- # change enlightenment to e17 to co-exist with e16
- $(MAKE) install DESTDIR=$(CURDIR)/debian/e17
- mv debian/e17/usr/bin/enlightenment debian/e17/usr/bin/e17
-
-binary-indep: build install
-
-binary-arch: build install
- dh_testversion 3
- dh_testdir
- dh_testroot
- dh_installdocs AUTHORS README
- dh_installchangelogs
- dh_strip
- dh_compress
- dh_fixperms
- dh_makeshlibs
- dh_installdeb
- dh_shlibdeps
- dh_gencontrol
- dh_md5sums
- dh_builddeb
-
-binary: binary-indep binary-arch
-.PHONY: build clean binary-indep binary-arch binary install
diff --git a/doc/Makefile.am b/doc/Makefile.am
deleted file mode 100644
index 7d4c237e6..000000000
--- a/doc/Makefile.am
+++ /dev/null
@@ -1,41 +0,0 @@
-## Process this file with automake to produce Makefile.in
-
-MAINTAINERCLEANFILES = Makefile.in
-
-EXTRA_DIST = \
-manual.raw \
-kernel-doc.in \
-stylesheet.css \
-figures/*.gif # Add any images you create here
-
-
-## Fill in all source files that you documented
-## with extractable comments here:
-##
-SOURCEDOC = $(top_srcdir)/src/e.h
-
-## For details on what can be specified in the
-## comments, see the beginning of kernel-doc
-## in this directory! -- cK.
-
-
-SGMLFILE = $(PACKAGE)-manual.sgml
-
-docs: manual.raw $(SOURCEDOC)
- ./kernel-doc -docbook <manual.raw >$(SGMLFILE)
-
-if HAVE_JADE
-
-FULLNAME = $(PACKAGE)-manual-$(VERSION)
-
-html-docs: docs html-customizations.dsl
- $(mkinstalldirs) ./$(FULLNAME)/figures
- cd $(FULLNAME) && @JADE@ -t sgml -d ../html-customizations.dsl ../$(SGMLFILE)
- - cd figures && cp -f *.gif ../$(FULLNAME)/figures
- - cd figures && cp -f *.png ../$(FULLNAME)/figures
- - cd figures && cp -f *.jpg ../$(FULLNAME)/figures
- cp -f stylesheet.css $(FULLNAME)/stylesheet.css
- tar cfvz $(FULLNAME).tar.gz $(FULLNAME)
-
-endif
-
diff --git a/doc/figures/architecture.eps b/doc/figures/architecture.eps
deleted file mode 100644
index dddb47aff..000000000
--- a/doc/figures/architecture.eps
+++ /dev/null
@@ -1,408 +0,0 @@
-%!PS-Adobe-2.0 EPSF-2.0
-%%Title: architecture.eps
-%%Creator: fig2dev Version 3.2 Patchlevel 3d
-%%CreationDate: Thu Nov 8 01:31:58 2001
-%%For: elwood@Gonzo (Elwood Blues,,,)
-%%BoundingBox: 0 0 689 403
-%%Magnification: 1.0000
-%%EndComments
-/$F2psDict 200 dict def
-$F2psDict begin
-$F2psDict /mtrx matrix put
-/col-1 {0 setgray} bind def
-/col0 {0.000 0.000 0.000 srgb} bind def
-/col1 {0.000 0.000 1.000 srgb} bind def
-/col2 {0.000 1.000 0.000 srgb} bind def
-/col3 {0.000 1.000 1.000 srgb} bind def
-/col4 {1.000 0.000 0.000 srgb} bind def
-/col5 {1.000 0.000 1.000 srgb} bind def
-/col6 {1.000 1.000 0.000 srgb} bind def
-/col7 {1.000 1.000 1.000 srgb} bind def
-/col8 {0.000 0.000 0.560 srgb} bind def
-/col9 {0.000 0.000 0.690 srgb} bind def
-/col10 {0.000 0.000 0.820 srgb} bind def
-/col11 {0.530 0.810 1.000 srgb} bind def
-/col12 {0.000 0.560 0.000 srgb} bind def
-/col13 {0.000 0.690 0.000 srgb} bind def
-/col14 {0.000 0.820 0.000 srgb} bind def
-/col15 {0.000 0.560 0.560 srgb} bind def
-/col16 {0.000 0.690 0.690 srgb} bind def
-/col17 {0.000 0.820 0.820 srgb} bind def
-/col18 {0.560 0.000 0.000 srgb} bind def
-/col19 {0.690 0.000 0.000 srgb} bind def
-/col20 {0.820 0.000 0.000 srgb} bind def
-/col21 {0.560 0.000 0.560 srgb} bind def
-/col22 {0.690 0.000 0.690 srgb} bind def
-/col23 {0.820 0.000 0.820 srgb} bind def
-/col24 {0.500 0.190 0.000 srgb} bind def
-/col25 {0.630 0.250 0.000 srgb} bind def
-/col26 {0.750 0.380 0.000 srgb} bind def
-/col27 {1.000 0.500 0.500 srgb} bind def
-/col28 {1.000 0.630 0.630 srgb} bind def
-/col29 {1.000 0.750 0.750 srgb} bind def
-/col30 {1.000 0.880 0.880 srgb} bind def
-/col31 {1.000 0.840 0.000 srgb} bind def
-/col32 {0.816 0.816 0.816 srgb} bind def
-/col33 {0.878 0.878 0.878 srgb} bind def
-
-end
-save
-newpath 0 403 moveto 0 0 lineto 689 0 lineto 689 403 lineto closepath clip newpath
--32.6 542.8 translate
-1 -1 scale
-
-/cp {closepath} bind def
-/ef {eofill} bind def
-/gr {grestore} bind def
-/gs {gsave} bind def
-/sa {save} bind def
-/rs {restore} bind def
-/l {lineto} bind def
-/m {moveto} bind def
-/rm {rmoveto} bind def
-/n {newpath} bind def
-/s {stroke} bind def
-/sh {show} bind def
-/slc {setlinecap} bind def
-/slj {setlinejoin} bind def
-/slw {setlinewidth} bind def
-/srgb {setrgbcolor} bind def
-/rot {rotate} bind def
-/sc {scale} bind def
-/sd {setdash} bind def
-/ff {findfont} bind def
-/sf {setfont} bind def
-/scf {scalefont} bind def
-/sw {stringwidth} bind def
-/tr {translate} bind def
-/tnt {dup dup currentrgbcolor
- 4 -2 roll dup 1 exch sub 3 -1 roll mul add
- 4 -2 roll dup 1 exch sub 3 -1 roll mul add
- 4 -2 roll dup 1 exch sub 3 -1 roll mul add srgb}
- bind def
-/shd {dup dup currentrgbcolor 4 -2 roll mul 4 -2 roll mul
- 4 -2 roll mul srgb} bind def
-/$F2psBegin {$F2psDict begin /$F2psEnteredState save def} def
-/$F2psEnd {$F2psEnteredState restore end} def
-
-$F2psBegin
-10 setmiterlimit
- 0.06299 0.06299 sc
-%
-% Fig objects follow
-%
-% Polyline
-15.000 slw
-n 3300 7020 m 3195 7020 3195 7455 105 arcto 4 {pop} repeat
- 3195 7560 4170 7560 105 arcto 4 {pop} repeat
- 4275 7560 4275 7125 105 arcto 4 {pop} repeat
- 4275 7020 3300 7020 105 arcto 4 {pop} repeat
- cp gs col32 1.00 shd ef gr gs col32 s gr
-% Polyline
-n 4515 7020 m 4410 7020 4410 7455 105 arcto 4 {pop} repeat
- 4410 7560 9615 7560 105 arcto 4 {pop} repeat
- 9720 7560 9720 7125 105 arcto 4 {pop} repeat
- 9720 7020 4515 7020 105 arcto 4 {pop} repeat
- cp gs col32 1.00 shd ef gr gs col32 s gr
-% Polyline
-n 4515 5985 m 4410 5985 4410 6420 105 arcto 4 {pop} repeat
- 4410 6525 7545 6525 105 arcto 4 {pop} repeat
- 7650 6525 7650 6090 105 arcto 4 {pop} repeat
- 7650 5985 4515 5985 105 arcto 4 {pop} repeat
- cp gs col32 1.00 shd ef gr gs col32 s gr
-% Polyline
-n 7890 5985 m 7785 5985 7785 6420 105 arcto 4 {pop} repeat
- 7785 6525 9615 6525 105 arcto 4 {pop} repeat
- 9720 6525 9720 6090 105 arcto 4 {pop} repeat
- 9720 5985 7890 5985 105 arcto 4 {pop} repeat
- cp gs col32 1.00 shd ef gr gs col32 s gr
-% Polyline
-n 4515 4950 m 4410 4950 4410 5385 105 arcto 4 {pop} repeat
- 4410 5490 6915 5490 105 arcto 4 {pop} repeat
- 7020 5490 7020 5055 105 arcto 4 {pop} repeat
- 7020 4950 4515 4950 105 arcto 4 {pop} repeat
- cp gs col32 1.00 shd ef gr gs col32 s gr
-% Polyline
-n 1365 2295 m 1260 2295 1260 3225 105 arcto 4 {pop} repeat
- 1260 3330 9660 3330 105 arcto 4 {pop} repeat
- 9765 3330 9765 2400 105 arcto 4 {pop} repeat
- 9765 2295 1365 2295 105 arcto 4 {pop} repeat
- cp gs col32 1.00 shd ef gr gs col32 s gr
-% Polyline
-n 1365 7020 m 1260 7020 1260 7455 105 arcto 4 {pop} repeat
- 1260 7560 2235 7560 105 arcto 4 {pop} repeat
- 2340 7560 2340 7125 105 arcto 4 {pop} repeat
- 2340 7020 1365 7020 105 arcto 4 {pop} repeat
- cp gs col32 1.00 shd ef gr gs col32 s gr
-% Polyline
-n 1365 8055 m 1260 8055 1260 8490 105 arcto 4 {pop} repeat
- 1260 8595 9615 8595 105 arcto 4 {pop} repeat
- 9720 8595 9720 8160 105 arcto 4 {pop} repeat
- 9720 8055 1365 8055 105 arcto 4 {pop} repeat
- cp gs col32 1.00 shd ef gr gs col32 s gr
-% Polyline
-n 3930 3870 m 3825 3870 3825 4305 105 arcto 4 {pop} repeat
- 3825 4410 6240 4410 105 arcto 4 {pop} repeat
- 6345 4410 6345 3975 105 arcto 4 {pop} repeat
- 6345 3870 3930 3870 105 arcto 4 {pop} repeat
- cp gs col32 1.00 shd ef gr gs col32 s gr
-% Polyline
-n 3255 6975 m 3150 6975 3150 7410 105 arcto 4 {pop} repeat
- 3150 7515 4125 7515 105 arcto 4 {pop} repeat
- 4230 7515 4230 7080 105 arcto 4 {pop} repeat
- 4230 6975 3255 6975 105 arcto 4 {pop} repeat
- cp gs col33 1.00 shd ef gr gs col0 s gr
-/Helvetica ff 240.00 scf sf
-3465 7335 m
-gs 1 -1 sc (Edb) col0 sh gr
-% Polyline
-n 4470 6975 m 4365 6975 4365 7410 105 arcto 4 {pop} repeat
- 4365 7515 9570 7515 105 arcto 4 {pop} repeat
- 9675 7515 9675 7080 105 arcto 4 {pop} repeat
- 9675 6975 4470 6975 105 arcto 4 {pop} repeat
- cp gs col33 1.00 shd ef gr gs col0 s gr
-/Helvetica ff 240.00 scf sf
-5985 7335 m
-gs 1 -1 sc (X Window System) col0 sh gr
-% Polyline
-n 4470 5940 m 4365 5940 4365 6375 105 arcto 4 {pop} repeat
- 4365 6480 7500 6480 105 arcto 4 {pop} repeat
- 7605 6480 7605 6045 105 arcto 4 {pop} repeat
- 7605 5940 4470 5940 105 arcto 4 {pop} repeat
- cp gs col33 1.00 shd ef gr gs col0 s gr
-/Helvetica ff 240.00 scf sf
-5670 6300 m
-gs 1 -1 sc (Imlib2) col0 sh gr
-% Polyline
-n 7845 5940 m 7740 5940 7740 6375 105 arcto 4 {pop} repeat
- 7740 6480 9570 6480 105 arcto 4 {pop} repeat
- 9675 6480 9675 6045 105 arcto 4 {pop} repeat
- 9675 5940 7845 5940 105 arcto 4 {pop} repeat
- cp gs col33 1.00 shd ef gr gs col0 s gr
-/Helvetica ff 240.00 scf sf
-8325 6300 m
-gs 1 -1 sc (Ecore) col0 sh gr
-% Polyline
-n 4470 4905 m 4365 4905 4365 5340 105 arcto 4 {pop} repeat
- 4365 5445 6870 5445 105 arcto 4 {pop} repeat
- 6975 5445 6975 5010 105 arcto 4 {pop} repeat
- 6975 4905 4470 4905 105 arcto 4 {pop} repeat
- cp gs col33 1.00 shd ef gr gs col0 s gr
-/Helvetica ff 240.00 scf sf
-5355 5265 m
-gs 1 -1 sc (Evas) col0 sh gr
-% Polyline
-n 1320 2250 m 1215 2250 1215 3180 105 arcto 4 {pop} repeat
- 1215 3285 9615 3285 105 arcto 4 {pop} repeat
- 9720 3285 9720 2355 105 arcto 4 {pop} repeat
- 9720 2250 1320 2250 105 arcto 4 {pop} repeat
- cp gs col7 1.00 shd ef gr gs col0 s gr
-/Helvetica ff 300.00 scf sf
-5130 2610 m
-gs 1 -1 sc (E 17) col0 sh gr
-% Polyline
-n 1320 6975 m 1215 6975 1215 7410 105 arcto 4 {pop} repeat
- 1215 7515 2190 7515 105 arcto 4 {pop} repeat
- 2295 7515 2295 7080 105 arcto 4 {pop} repeat
- 2295 6975 1320 6975 105 arcto 4 {pop} repeat
- cp gs col33 1.00 shd ef gr gs col0 s gr
-/Helvetica ff 240.00 scf sf
-1485 7335 m
-gs 1 -1 sc (Efsd) col0 sh gr
-% Polyline
-n 540 7740 m
- 11430 7740 l gs col33 1.00 shd ef gr gs col32 s gr
-% Polyline
-gs clippath
-1710 7035 m 1800 7035 l 1800 6878 l 1755 6998 l 1710 6878 l cp
-1800 3270 m 1710 3270 l 1710 3427 l 1755 3307 l 1800 3427 l cp
-eoclip
-n 1755 3285 m
- 1755 7020 l gs col33 1.00 shd ef gr gs col0 s gr gr
-
-% arrowhead
-n 1800 3427 m 1755 3307 l 1710 3427 l 1800 3427 l cp gs 0.00 setgray ef gr col0 s
-% arrowhead
-n 1710 6878 m 1755 6998 l 1800 6878 l 1710 6878 l cp gs 0.00 setgray ef gr col0 s
-% Polyline
-gs clippath
-2655 7980 m 2745 7980 l 2745 7823 l 2700 7943 l 2655 7823 l cp
-2745 3270 m 2655 3270 l 2655 3427 l 2700 3307 l 2745 3427 l cp
-eoclip
-n 2700 3285 m
- 2700 7965 l gs col33 1.00 shd ef gr gs col0 s gr gr
-
-% arrowhead
-n 2745 3427 m 2700 3307 l 2655 3427 l 2745 3427 l cp gs 0.00 setgray ef gr col0 s
-% arrowhead
-n 2655 7823 m 2700 7943 l 2745 7823 l 2655 7823 l cp gs 0.00 setgray ef gr col0 s
-% Polyline
-gs clippath
-3645 8070 m 3735 8070 l 3735 7913 l 3690 8033 l 3645 7913 l cp
-3735 7500 m 3645 7500 l 3645 7657 l 3690 7537 l 3735 7657 l cp
-eoclip
-n 3690 7515 m
- 3690 8055 l gs col33 1.00 shd ef gr gs col0 s gr gr
-
-% arrowhead
-n 3735 7657 m 3690 7537 l 3645 7657 l 3735 7657 l cp gs 0.00 setgray ef gr col0 s
-% arrowhead
-n 3645 7913 m 3690 8033 l 3735 7913 l 3645 7913 l cp gs 0.00 setgray ef gr col0 s
-% Polyline
-gs clippath
-5805 7035 m 5895 7035 l 5895 6878 l 5850 6998 l 5805 6878 l cp
-5895 6465 m 5805 6465 l 5805 6622 l 5850 6502 l 5895 6622 l cp
-eoclip
-n 5850 6480 m
- 5850 7020 l gs col33 1.00 shd ef gr gs col0 s gr gr
-
-% arrowhead
-n 5895 6622 m 5850 6502 l 5805 6622 l 5895 6622 l cp gs 0.00 setgray ef gr col0 s
-% arrowhead
-n 5805 6878 m 5850 6998 l 5895 6878 l 5805 6878 l cp gs 0.00 setgray ef gr col0 s
-% Polyline
-gs clippath
-8595 7035 m 8685 7035 l 8685 6878 l 8640 6998 l 8595 6878 l cp
-8685 6465 m 8595 6465 l 8595 6622 l 8640 6502 l 8685 6622 l cp
-eoclip
-n 8640 6480 m
- 8640 7020 l gs col33 1.00 shd ef gr gs col0 s gr gr
-
-% arrowhead
-n 8685 6622 m 8640 6502 l 8595 6622 l 8685 6622 l cp gs 0.00 setgray ef gr col0 s
-% arrowhead
-n 8595 6878 m 8640 6998 l 8685 6878 l 8595 6878 l cp gs 0.00 setgray ef gr col0 s
-% Polyline
-gs clippath
-8595 5955 m 8685 5955 l 8685 5798 l 8640 5918 l 8595 5798 l cp
-8685 3270 m 8595 3270 l 8595 3427 l 8640 3307 l 8685 3427 l cp
-eoclip
-n 8640 3285 m
- 8640 5940 l gs col33 1.00 shd ef gr gs col0 s gr gr
-
-% arrowhead
-n 8685 3427 m 8640 3307 l 8595 3427 l 8685 3427 l cp gs 0.00 setgray ef gr col0 s
-% arrowhead
-n 8595 5798 m 8640 5918 l 8685 5798 l 8595 5798 l cp gs 0.00 setgray ef gr col0 s
-% Polyline
-gs clippath
-5805 6000 m 5895 6000 l 5895 5843 l 5850 5963 l 5805 5843 l cp
-5895 5430 m 5805 5430 l 5805 5587 l 5850 5467 l 5895 5587 l cp
-eoclip
-n 5850 5445 m
- 5850 5985 l gs col33 1.00 shd ef gr gs col0 s gr gr
-
-% arrowhead
-n 5895 5587 m 5850 5467 l 5805 5587 l 5895 5587 l cp gs 0.00 setgray ef gr col0 s
-% arrowhead
-n 5805 5843 m 5850 5963 l 5895 5843 l 5805 5843 l cp gs 0.00 setgray ef gr col0 s
-% Polyline
-gs clippath
-7200 5955 m 7290 5955 l 7290 5798 l 7245 5918 l 7200 5798 l cp
-7290 3270 m 7200 3270 l 7200 3427 l 7245 3307 l 7290 3427 l cp
-eoclip
-n 7245 3285 m
- 7245 5940 l gs col33 1.00 shd ef gr gs col0 s gr gr
-
-% arrowhead
-n 7290 3427 m 7245 3307 l 7200 3427 l 7290 3427 l cp gs 0.00 setgray ef gr col0 s
-% arrowhead
-n 7200 5798 m 7245 5918 l 7290 5798 l 7200 5798 l cp gs 0.00 setgray ef gr col0 s
-% Polyline
-gs clippath
-4455 3840 m 4545 3840 l 4545 3683 l 4500 3803 l 4455 3683 l cp
-4545 3270 m 4455 3270 l 4455 3427 l 4500 3307 l 4545 3427 l cp
-eoclip
-n 4500 3285 m
- 4500 3825 l gs col33 1.00 shd ef gr gs col0 s gr gr
-
-% arrowhead
-n 4545 3427 m 4500 3307 l 4455 3427 l 4545 3427 l cp gs 0.00 setgray ef gr col0 s
-% arrowhead
-n 4455 3683 m 4500 3803 l 4545 3683 l 4455 3683 l cp gs 0.00 setgray ef gr col0 s
-% Polyline
-gs clippath
-6570 4920 m 6660 4920 l 6660 4763 l 6615 4883 l 6570 4763 l cp
-6660 3270 m 6570 3270 l 6570 3427 l 6615 3307 l 6660 3427 l cp
-eoclip
-n 6615 3285 m
- 6615 4905 l gs col33 1.00 shd ef gr gs col0 s gr gr
-
-% arrowhead
-n 6660 3427 m 6615 3307 l 6570 3427 l 6660 3427 l cp gs 0.00 setgray ef gr col0 s
-% arrowhead
-n 6570 4763 m 6615 4883 l 6660 4763 l 6570 4763 l cp gs 0.00 setgray ef gr col0 s
-% Polyline
-gs clippath
-5535 4920 m 5625 4920 l 5625 4763 l 5580 4883 l 5535 4763 l cp
-5625 4350 m 5535 4350 l 5535 4507 l 5580 4387 l 5625 4507 l cp
-eoclip
-n 5580 4365 m
- 5580 4905 l gs col33 1.00 shd ef gr gs col0 s gr gr
-
-% arrowhead
-n 5625 4507 m 5580 4387 l 5535 4507 l 5625 4507 l cp gs 0.00 setgray ef gr col0 s
-% arrowhead
-n 5535 4763 m 5580 4883 l 5625 4763 l 5535 4763 l cp gs 0.00 setgray ef gr col0 s
-% Polyline
-gs clippath
-1710 8025 m 1800 8025 l 1800 7868 l 1755 7988 l 1710 7868 l cp
-1800 7455 m 1710 7455 l 1710 7612 l 1755 7492 l 1800 7612 l cp
-eoclip
-n 1755 7470 m
- 1755 8010 l gs col33 1.00 shd ef gr gs col0 s gr gr
-
-% arrowhead
-n 1800 7612 m 1755 7492 l 1710 7612 l 1800 7612 l cp gs 0.00 setgray ef gr col0 s
-% arrowhead
-n 1710 7868 m 1755 7988 l 1800 7868 l 1710 7868 l cp gs 0.00 setgray ef gr col0 s
-% Polyline
-n 1320 8010 m 1215 8010 1215 8445 105 arcto 4 {pop} repeat
- 1215 8550 9570 8550 105 arcto 4 {pop} repeat
- 9675 8550 9675 8115 105 arcto 4 {pop} repeat
- 9675 8010 1320 8010 105 arcto 4 {pop} repeat
- cp gs col33 1.00 shd ef gr gs col0 s gr
-% Polyline
-n 3885 3825 m 3780 3825 3780 4260 105 arcto 4 {pop} repeat
- 3780 4365 6195 4365 105 arcto 4 {pop} repeat
- 6300 4365 6300 3930 105 arcto 4 {pop} repeat
- 6300 3825 3885 3825 105 arcto 4 {pop} repeat
- cp gs col33 1.00 shd ef gr gs col0 s gr
-% Polyline
-gs clippath
-3420 7035 m 3510 7035 l 3510 6878 l 3465 6998 l 3420 6878 l cp
-3510 3270 m 3420 3270 l 3420 3427 l 3465 3307 l 3510 3427 l cp
-eoclip
-n 3465 3285 m
- 3465 7020 l gs col33 1.00 shd ef gr gs col0 s gr gr
-
-% arrowhead
-n 3510 3427 m 3465 3307 l 3420 3427 l 3510 3427 l cp gs 0.00 setgray ef gr col0 s
-% arrowhead
-n 3420 6878 m 3465 6998 l 3510 6878 l 3420 6878 l cp gs 0.00 setgray ef gr col0 s
-% Polyline
-gs clippath
-3960 7035 m 4050 7035 l 4050 6878 l 4005 6998 l 3960 6878 l cp
-4050 4350 m 3960 4350 l 3960 4507 l 4005 4387 l 4050 4507 l cp
-eoclip
-n 4005 4365 m
- 4005 7020 l gs col33 1.00 shd ef gr gs col0 s gr gr
-
-% arrowhead
-n 4050 4507 m 4005 4387 l 3960 4507 l 4050 4507 l cp gs 0.00 setgray ef gr col0 s
-% arrowhead
-n 3960 6878 m 4005 6998 l 4050 6878 l 3960 6878 l cp gs 0.00 setgray ef gr col0 s
-/Helvetica ff 240.00 scf sf
-4950 8370 m
-gs 1 -1 sc (Filesystem) col0 sh gr
-/Helvetica ff 240.00 scf sf
-10080 7560 m
-gs 1 -1 sc (User Space) col0 sh gr
-/Helvetica ff 240.00 scf sf
-10305 8100 m
-gs 1 -1 sc (Kernel) col0 sh gr
-/Helvetica ff 240.00 scf sf
-4725 4185 m
-gs 1 -1 sc (Ebits) col0 sh gr
-$F2psEnd
-rs
diff --git a/doc/figures/architecture.fig b/doc/figures/architecture.fig
deleted file mode 100644
index 6166cf9f5..000000000
--- a/doc/figures/architecture.fig
+++ /dev/null
@@ -1,130 +0,0 @@
-#FIG 3.2
-Landscape
-Center
-Metric
-A4
-100.00
-Single
--2
-1200 2
-0 32 #d0d0d0
-0 33 #e0e0e0
-6 3105 6930 4320 7605
-2 4 0 2 0 33 50 0 20 0.000 0 0 7 0 0 5
- 4230 7515 3150 7515 3150 6975 4230 6975 4230 7515
-2 4 0 2 32 32 100 0 20 0.000 0 0 7 0 0 5
- 4275 7560 3195 7560 3195 7020 4275 7020 4275 7560
-4 0 0 50 0 16 16 0.0000 4 180 435 3465 7335 Edb\001
--6
-6 4320 6930 9765 7605
-2 4 0 2 32 32 100 0 20 0.000 0 0 7 0 0 5
- 9720 7560 4410 7560 4410 7020 9720 7020 9720 7560
-2 4 0 2 0 33 50 0 20 0.000 0 0 7 0 0 5
- 9675 7515 4365 7515 4365 6975 9675 6975 9675 7515
-4 0 0 50 0 16 16 0.0000 4 225 1950 5985 7335 X Window System\001
--6
-6 4320 5895 7695 6570
-2 4 0 2 0 33 50 0 20 0.000 0 0 7 0 0 5
- 7605 6480 4365 6480 4365 5940 7605 5940 7605 6480
-2 4 0 2 32 32 100 0 20 0.000 0 0 7 0 0 5
- 7650 6525 4410 6525 4410 5985 7650 5985 7650 6525
-4 0 0 50 0 16 16 0.0000 4 180 645 5670 6300 Imlib2\001
--6
-6 7695 5895 9765 6570
-2 4 0 2 0 33 50 0 20 0.000 0 0 7 0 0 5
- 9675 6480 7740 6480 7740 5940 9675 5940 9675 6480
-2 4 0 2 32 32 100 0 20 0.000 0 0 7 0 0 5
- 9720 6525 7785 6525 7785 5985 9720 5985 9720 6525
-4 0 0 50 0 16 16 0.0000 4 180 630 8325 6300 Ecore\001
--6
-6 4320 4860 7065 5535
-2 4 0 2 0 33 50 0 20 0.000 0 0 7 0 0 5
- 6975 5445 4365 5445 4365 4905 6975 4905 6975 5445
-2 4 0 2 32 32 100 0 20 0.000 0 0 7 0 0 5
- 7020 5490 4410 5490 4410 4950 7020 4950 7020 5490
-4 0 0 50 0 16 16 0.0000 4 180 540 5355 5265 Evas\001
--6
-6 1170 2205 9810 3375
-2 4 0 2 0 7 50 0 20 0.000 0 0 7 0 0 5
- 9720 3285 9720 2250 1215 2250 1215 3285 9720 3285
-2 4 0 2 32 32 100 0 20 0.000 0 0 7 0 0 5
- 9765 3330 1260 3330 1260 2295 9765 2295 9765 3330
-4 0 0 50 0 16 20 0.0000 4 210 570 5130 2610 E 17\001
--6
-6 1170 6930 2385 7605
-2 4 0 2 0 33 50 0 20 0.000 0 0 7 0 0 5
- 2295 7515 1215 7515 1215 6975 2295 6975 2295 7515
-2 4 0 2 32 32 100 0 20 0.000 0 0 7 0 0 5
- 2340 7560 1260 7560 1260 7020 2340 7020 2340 7560
-4 0 0 50 0 16 16 0.0000 4 180 480 1485 7335 Efsd\001
--6
-2 1 0 2 32 33 50 0 20 0.000 0 0 -1 0 0 2
- 540 7740 11430 7740
-2 1 0 2 0 33 50 0 20 0.000 0 0 -1 1 1 2
- 1 1 2.00 90.00 120.00
- 1 1 2.00 90.00 120.00
- 1755 3285 1755 7020
-2 1 0 2 0 33 50 0 20 0.000 0 0 -1 1 1 2
- 1 1 2.00 90.00 120.00
- 1 1 2.00 90.00 120.00
- 2700 3285 2700 7965
-2 1 0 2 0 33 50 0 20 0.000 0 0 -1 1 1 2
- 1 1 2.00 90.00 120.00
- 1 1 2.00 90.00 120.00
- 3690 7515 3690 8055
-2 1 0 2 0 33 50 0 20 0.000 0 0 -1 1 1 2
- 1 1 2.00 90.00 120.00
- 1 1 2.00 90.00 120.00
- 5850 6480 5850 7020
-2 1 0 2 0 33 50 0 20 0.000 0 0 -1 1 1 2
- 1 1 2.00 90.00 120.00
- 1 1 2.00 90.00 120.00
- 8640 6480 8640 7020
-2 1 0 2 0 33 50 0 20 0.000 0 0 -1 1 1 2
- 1 1 2.00 90.00 120.00
- 1 1 2.00 90.00 120.00
- 8640 3285 8640 5940
-2 1 0 2 0 33 50 0 20 0.000 0 0 -1 1 1 2
- 1 1 2.00 90.00 120.00
- 1 1 2.00 90.00 120.00
- 5850 5445 5850 5985
-2 1 0 2 0 33 50 0 20 0.000 0 0 -1 1 1 2
- 1 1 2.00 90.00 120.00
- 1 1 2.00 90.00 120.00
- 7245 3285 7245 5940
-2 1 0 2 0 33 50 0 20 0.000 0 0 -1 1 1 2
- 1 1 2.00 90.00 120.00
- 1 1 2.00 90.00 120.00
- 4500 3285 4500 3825
-2 1 0 2 0 33 50 0 20 0.000 0 0 -1 1 1 2
- 1 1 2.00 90.00 120.00
- 1 1 2.00 90.00 120.00
- 6615 3285 6615 4905
-2 1 0 2 0 33 50 0 20 0.000 0 0 -1 1 1 2
- 1 1 2.00 90.00 120.00
- 1 1 2.00 90.00 120.00
- 5580 4365 5580 4905
-2 1 0 2 0 33 50 0 20 0.000 0 0 -1 1 1 2
- 1 1 2.00 90.00 120.00
- 1 1 2.00 90.00 120.00
- 1755 7470 1755 8010
-2 4 0 2 0 33 50 0 20 0.000 0 0 7 0 0 5
- 9675 8550 1215 8550 1215 8010 9675 8010 9675 8550
-2 4 0 2 32 32 100 0 20 0.000 0 0 7 0 0 5
- 9720 8595 1260 8595 1260 8055 9720 8055 9720 8595
-2 4 0 2 32 32 100 0 20 0.000 0 0 7 0 0 5
- 6345 4410 3825 4410 3825 3870 6345 3870 6345 4410
-2 4 0 2 0 33 50 0 20 0.000 0 0 7 0 0 5
- 6300 4365 3780 4365 3780 3825 6300 3825 6300 4365
-2 1 0 2 0 33 50 0 20 0.000 0 0 -1 1 1 2
- 1 1 2.00 90.00 120.00
- 1 1 2.00 90.00 120.00
- 3465 3285 3465 7020
-2 1 0 2 0 33 50 0 20 0.000 0 0 -1 1 1 2
- 1 1 2.00 90.00 120.00
- 1 1 2.00 90.00 120.00
- 4005 4365 4005 7020
-4 0 0 50 0 16 16 0.0000 4 225 1155 4950 8370 Filesystem\001
-4 0 0 50 0 16 16 0.0000 4 240 1260 10080 7560 User Space\001
-4 0 0 50 0 16 16 0.0000 4 180 705 10305 8100 Kernel\001
-4 0 0 50 0 16 16 0.0000 4 180 540 4725 4185 Ebits\001
diff --git a/doc/figures/architecture.gif b/doc/figures/architecture.gif
deleted file mode 100644
index ba1f2b69f..000000000
--- a/doc/figures/architecture.gif
+++ /dev/null
Binary files differ
diff --git a/doc/figures/background.gif b/doc/figures/background.gif
deleted file mode 100644
index 1dc11ce83..000000000
--- a/doc/figures/background.gif
+++ /dev/null
Binary files differ
diff --git a/doc/figures/caution.gif b/doc/figures/caution.gif
deleted file mode 100644
index 542232911..000000000
--- a/doc/figures/caution.gif
+++ /dev/null
Binary files differ
diff --git a/doc/figures/note.gif b/doc/figures/note.gif
deleted file mode 100644
index 45fe08649..000000000
--- a/doc/figures/note.gif
+++ /dev/null
Binary files differ
diff --git a/doc/figures/warning.gif b/doc/figures/warning.gif
deleted file mode 100644
index 9c1104c2b..000000000
--- a/doc/figures/warning.gif
+++ /dev/null
Binary files differ
diff --git a/doc/html-customizations.dsl.in b/doc/html-customizations.dsl.in
deleted file mode 100644
index 4bf0404d0..000000000
--- a/doc/html-customizations.dsl.in
+++ /dev/null
@@ -1,61 +0,0 @@
-<!DOCTYPE style-sheet PUBLIC "-//James Clark//DTD DSSSL Style Sheet//EN" [
-<!ENTITY dbstyle SYSTEM "@DB_STYLESHEETS@/html/docbook.dsl" CDATA DSSSL>
-]>
-
-<style-sheet>
-<style-specification use="docbook">
-<style-specification-body>
-
-;; my own customizations for HTML output:
-
-(define %admon-graphics-path%
- ;; Path to admonition graphics
- "figures/")
-
-(define %admon-graphics%
- ;; Use graphics in admonitions?
- #t)
-
-(define %indent-programlisting-lines%
- ;; Indent lines in a 'ProgramListing'?
- " ")
-
-(define %shade-verbatim%
- ;; Should verbatim environments be shaded?
- #t)
-
-(define ($shade-verbatim-attr$)
- ;; Attributes used to create a shaded verbatim environment.
- (list
- (list "BORDER" "0")
- (list "BGCOLOR" "#f0f0f0")))
-
-(define %root-filename%
- ;; Name for the root HTML document
- "index")
-
-(define %body-attr%
- ;; What attributes should be hung off of BODY?
- (list
- (list "BGCOLOR" "#FFFFFF")
- (list "TEXT" "#0000A0")
- (list "LINK" "#2020D0")
- (list "VLINK" "#000060")
- (list "ALINK" "#5050F0")))
-
-(define %css-decoration%
- ;; Enable CSS decoration of elements
- #t)
-
-(define %stylesheet%
- ;; Name of the stylesheet to use
- "stylesheet.css")
-
-(define biblio-number
- ;; Enumerate bibliography entries
- #t)
-
-</style-specification-body>
-</style-specification>
-<external-specification id="docbook" document="dbstyle">
-</style-sheet>
diff --git a/doc/kernel-doc.in b/doc/kernel-doc.in
deleted file mode 100644
index 512752348..000000000
--- a/doc/kernel-doc.in
+++ /dev/null
@@ -1,1001 +0,0 @@
-#!@PERL@
-
-## This script is based on the script shipped with ##
-## 2.4 Linux kernel sources. All copyright notices etc ##
-## remain unchanged. --cK. ##
-
-## Copyright (c) 1998 Michael Zucchi, All Rights Reserved ##
-## Copyright (C) 2000 Tim Waugh <twaugh@redhat.com> ##
-## ##
-## #define enhancements by Armin Kuster <akuster@mvista.com> ##
-## Copyright (c) 2000 MontaVista Software, Inc. ##
-## ##
-## This software falls under the GNU General Public License. ##
-## Please read the COPYING file for more information ##
-
-# w.o. 03-11-2000: added the '-filelist' option.
-
-#
-# This will read a 'c' file and scan for embedded comments in the
-# style of gnome comments (+minor extensions - see below).
-#
-
-# Note: This only supports 'c'.
-
-# usage:
-# kerneldoc [ -docbook | -html | -text | -man ]
-# [ -function funcname [ -function funcname ...] ] c file(s)s > outputfile
-# or
-# [ -nofunction funcname [ -function funcname ...] ] c file(s)s > outputfile
-#
-# Set output format using one of -docbook -html -text or -man. Default is man.
-#
-# -function funcname
-# If set, then only generate documentation for the given function(s). All
-# other functions are ignored.
-#
-# -nofunction funcname
-# If set, then only generate documentation for the other function(s). All
-# other functions are ignored. Cannot be used with -function together
-# (yes thats a bug - perl hackers can fix it 8))
-#
-# c files - list of 'c' files to process
-#
-# All output goes to stdout, with errors to stderr.
-
-#
-# format of comments.
-# In the following table, (...)? signifies optional structure.
-# (...)* signifies 0 or more structure elements
-# /**
-# * function_name(:)? (- short description)?
-# (* @parameterx: (description of parameter x)?)*
-# (* a blank line)?
-# * (Description:)? (Description of function)?
-# * (section header: (section description)? )*
-# (*)?*/
-#
-# So .. the trivial example would be:
-#
-# /**
-# * my_function
-# **/
-#
-# If the Description: header tag is ommitted, then there must be a blank line
-# after the last parameter specification.
-# e.g.
-# /**
-# * my_function - does my stuff
-# * @my_arg: its mine damnit
-# *
-# * Does my stuff explained.
-# */
-#
-# or, could also use:
-# /**
-# * my_function - does my stuff
-# * @my_arg: its mine damnit
-# * Description: Does my stuff explained.
-# */
-# etc.
-#
-# All descriptions can be multiline, apart from the short function description.
-#
-# All descriptive text is further processed, scanning for the following special
-# patterns, which are highlighted appropriately.
-#
-# 'funcname()' - function
-# '$ENVVAR' - environmental variable
-# '&struct_name' - name of a structure (up to two words including 'struct')
-# '@parameter' - name of a parameter
-# '%CONST' - name of a constant.
-
-# match expressions used to find embedded type information
-$type_constant = "\\\%([-_\\w]+)";
-$type_func = "(\\w+)\\(\\)";
-$type_param = "\\\@(\\w+)";
-$type_struct = "\\\&((struct\\s*)?[_\\w]+)";
-$type_env = "(\\\$\\w+)";
-
-
-# Output conversion substitutions.
-# One for each output format
-
-# these work fairly well
-%highlights_html = ( $type_constant, "<i>\$1</i>",
- $type_func, "<b>\$1</b>",
- $type_struct, "<i>\$1</i>",
- $type_param, "<tt><b>\$1</b></tt>" );
-$blankline_html = "<p>";
-
-# sgml, docbook format
-%highlights_sgml = ( "([^=])\\\"([^\\\"<]+)\\\"", "\$1<quote>\$2</quote>",
- $type_constant, "<constant>\$1</constant>",
- $type_func, "<function>\$1</function>",
- $type_struct, "<structname>\$1</structname>",
- $type_env, "<envar>\$1</envar>",
- $type_param, "<parameter>\$1</parameter>" );
-$blankline_sgml = "</para><para>\n";
-
-# gnome, docbook format
-%highlights_gnome = ( $type_constant, "<replaceable class=\"option\">\$1</replaceable>",
- $type_func, "<function>\$1</function>",
- $type_struct, "<structname>\$1</structname>",
- $type_env, "<envar>\$1</envar>",
- $type_param, "<parameter>\$1</parameter>" );
-$blankline_gnome = "</para><para>\n";
-
-# these are pretty rough
-%highlights_man = ( $type_constant, "\$1",
- $type_func, "\\\\fB\$1\\\\fP",
- $type_struct, "\\\\fI\$1\\\\fP",
- $type_param, "\\\\fI\$1\\\\fP" );
-$blankline_man = "";
-
-# text-mode
-%highlights_text = ( $type_constant, "\$1",
- $type_func, "\$1",
- $type_struct, "\$1",
- $type_param, "\$1" );
-$blankline_text = "";
-
-
-sub usage {
- print "Usage: $0 [ -v ] [ -docbook | -html | -text | -man ]\n";
- print " [ -function funcname [ -function funcname ...] ]\n";
- print " [ -nofunction funcname [ -nofunction funcname ...] ]\n";
- print " < inputfile > outputfile\n";
- exit 1;
-}
-
-# read arguments
-if ($#ARGV==-1) {
- usage();
-}
-
-$verbose = 0;
-$output_mode = "man";
-%highlights = %highlights_man;
-$blankline = $blankline_man;
-$modulename = "API Documentation";
-$function_only = 0;
-$filelist = '';
-
-while ($ARGV[0] =~ m/^-(.*)/) {
- $cmd = shift @ARGV;
- if ($cmd eq "-html") {
- $output_mode = "html";
- %highlights = %highlights_html;
- $blankline = $blankline_html;
- } elsif ($cmd eq "-man") {
- $output_mode = "man";
- %highlights = %highlights_man;
- $blankline = $blankline_man;
- } elsif ($cmd eq "-text") {
- $output_mode = "text";
- %highlights = %highlights_text;
- $blankline = $blankline_text;
- } elsif ($cmd eq "-docbook") {
- $output_mode = "sgml";
- %highlights = %highlights_sgml;
- $blankline = $blankline_sgml;
- } elsif ($cmd eq "-gnome") {
- $output_mode = "gnome";
- %highlights = %highlights_gnome;
- $blankline = $blankline_gnome;
- } elsif ($cmd eq "-module") { # not needed for sgml, inherits from calling document
- $modulename = shift @ARGV;
- } elsif ($cmd eq "-function") { # to only output specific functions
- $function_only = 1;
- $function = shift @ARGV;
- $function_table{$function} = 1;
- } elsif ($cmd eq "-nofunction") { # to only output specific functions
- $function_only = 2;
- $function = shift @ARGV;
- $function_table{$function} = 1;
- } elsif ($cmd eq "-v") {
- $verbose = 1;
- } elsif (($cmd eq "-h") || ($cmd eq "--help")) {
- usage();
- }
-}
-
-
-# generate a sequence of code that will splice in highlighting information
-# using the s// operator.
-$dohighlight = "";
-foreach $pattern (keys %highlights) {
-# print "scanning pattern $pattern ($highlights{$pattern})\n";
- $dohighlight .= "\$contents =~ s:$pattern:$highlights{$pattern}:gs;\n";
-}
-
-##
-# dumps section contents to arrays/hashes intended for that purpose.
-#
-sub dump_section {
- my $name = shift @_;
- my $contents = join "\n", @_;
-
- if ($name =~ m/$type_constant/) {
- $name = $1;
-# print STDERR "constant section '$1' = '$contents'\n";
- $constants{$name} = $contents;
- } elsif ($name =~ m/$type_param/) {
-# print STDERR "parameter def '$1' = '$contents'\n";
- $name = $1;
- $parameters{$name} = $contents;
- } else {
-# print STDERR "other section '$name' = '$contents'\n";
- $sections{$name} = $contents;
- push @sectionlist, $name;
- }
-}
-
-##
-# output function
-#
-# parameters, a hash.
-# function => "function name"
-# parameterlist => @list of parameters
-# parameters => %parameter descriptions
-# sectionlist => @list of sections
-# sections => %descriont descriptions
-#
-
-sub output_highlight {
- my $contents = join "\n", @_;
- my $line;
-
- eval $dohighlight;
- foreach $line (split "\n", $contents) {
- if ($line eq ""){
- print $lineprefix, $blankline;
- } else {
- $line =~ s/\\\\\\/\&/g;
- print $lineprefix, $line;
- }
- print "\n";
- }
-}
-
-
-# output in html
-sub output_html {
- my %args = %{$_[0]};
- my ($parameter, $section);
- my $count;
- print "<h2>Function</h2>\n";
-
- print "<i>".$args{'functiontype'}."</i>\n";
- print "<b>".$args{'function'}."</b>\n";
- print "(";
- $count = 0;
- foreach $parameter (@{$args{'parameterlist'}}) {
- $type = $args{'parametertypes'}{$parameter};
- if ($type =~ m/([^\(]*\(\*)\s*\)\s*\(([^\)]*)\)/) {
- # pointer-to-function
- print "<i>$1</i><b>$parameter</b>) <i>($2)</i>";
- } else {
- print "<i>".$type."</i> <b>".$parameter."</b>";
- }
- if ($count != $#{$args{'parameterlist'}}) {
- $count++;
- print ",\n";
- }
- }
- print ")\n";
-
- print "<h3>Arguments</h3>\n";
- print "<dl>\n";
- foreach $parameter (@{$args{'parameterlist'}}) {
- print "<dt><b>".$parameter."</b>\n";
- print "<dd>";
- output_highlight($args{'parameters'}{$parameter});
- }
- print "</dl>\n";
- foreach $section (@{$args{'sectionlist'}}) {
- print "<h3>$section</h3>\n";
- print "<blockquote>\n";
- output_highlight($args{'sections'}{$section});
- print "</blockquote>\n";
- }
- print "<hr>\n";
-}
-
-
-# output in html
-sub output_intro_html {
- my %args = %{$_[0]};
- my ($parameter, $section);
- my $count;
-
- foreach $section (@{$args{'sectionlist'}}) {
- print "<h3>$section</h3>\n";
- print "<ul>\n";
- output_highlight($args{'sections'}{$section});
- print "</ul>\n";
- }
- print "<hr>\n";
-}
-
-
-
-# output in sgml DocBook
-sub output_sgml {
- my %args = %{$_[0]};
- my ($parameter, $section);
- my $count;
- my $id;
-
- $id = "API-".$args{'function'};
- $id =~ s/[^A-Za-z0-9]/-/g;
-
- print "<refentry>\n";
- print "<refmeta>\n";
- print "<refentrytitle><phrase id=\"$id\">".$args{'function'}."</phrase></refentrytitle>\n";
- print "</refmeta>\n";
- print "<refnamediv>\n";
- print " <refname>".$args{'function'}."</refname>\n";
- print " <refpurpose>\n";
- print " ";
- output_highlight ($args{'purpose'});
- print " </refpurpose>\n";
- print "</refnamediv>\n";
-
- print "<refsynopsisdiv>\n";
- print " <title>Synopsis</title>\n";
- print " <funcsynopsis>\n";
- print " <funcdef>".$args{'functiontype'}." ";
- print "<function>".$args{'function'}." ";
- print "</function></funcdef>\n";
-
-# print "<refsect1>\n";
-# print " <title>Synopsis</title>\n";
-# print " <funcsynopsis>\n";
-# print " <funcdef>".$args{'functiontype'}." ";
-# print "<function>".$args{'function'}." ";
-# print "</function></funcdef>\n";
-
- $count = 0;
- if ($#{$args{'parameterlist'}} >= 0) {
- foreach $parameter (@{$args{'parameterlist'}}) {
- $type = $args{'parametertypes'}{$parameter};
- if ($type =~ m/([^\(]*\(\*)\s*\)\s*\(([^\)]*)\)/) {
- # pointer-to-function
- print " <paramdef>$1<parameter>$parameter</parameter>)\n";
- print " <funcparams>$2</funcparams></paramdef>\n";
- } else {
- print " <paramdef>".$type;
- print " <parameter>$parameter</parameter></paramdef>\n";
- }
- }
- } else {
- print " <void>\n";
- }
- print " </funcsynopsis>\n";
- print "</refsynopsisdiv>\n";
-# print "</refsect1>\n";
-
- # print parameters
- print "<refsect1>\n <title>Arguments</title>\n";
-# print "<para>\nArguments\n";
- if ($#{$args{'parameterlist'}} >= 0) {
- print " <variablelist>\n";
- foreach $parameter (@{$args{'parameterlist'}}) {
- print " <varlistentry>\n <term><parameter>$parameter</parameter></term>\n";
- print " <listitem>\n <para>\n";
- $lineprefix=" ";
- output_highlight($args{'parameters'}{$parameter});
- print " </para>\n </listitem>\n </varlistentry>\n";
- }
- print " </variablelist>\n";
- } else {
- print " <para>\n None\n </para>\n";
- }
- print "</refsect1>\n";
-
- # print out each section
- $lineprefix=" ";
- foreach $section (@{$args{'sectionlist'}}) {
- print "<refsect1>\n <title>$section</title>\n <para>\n";
-# print "<para>\n$section\n";
- if ($section =~ m/EXAMPLE/i) {
- print "<example><para>\n";
- }
- output_highlight($args{'sections'}{$section});
-# print "</para>";
- if ($section =~ m/EXAMPLE/i) {
- print "</para></example>\n";
- }
- print " </para>\n</refsect1>\n";
- }
-
- print "</refentry>\n\n";
-}
-
-# output in sgml DocBook
-sub output_intro_sgml {
- my %args = %{$_[0]};
- my ($parameter, $section);
- my $count;
- my $id;
-
- $id = $args{'module'};
- $id =~ s/[^A-Za-z0-9]/-/g;
-
- # print out each section
- $lineprefix=" ";
- foreach $section (@{$args{'sectionlist'}}) {
- print "<refsect1>\n <title>$section</title>\n <para>\n";
-# print "<para>\n$section\n";
- if ($section =~ m/EXAMPLE/i) {
- print "<example><para>\n";
- }
- output_highlight($args{'sections'}{$section});
-# print "</para>";
- if ($section =~ m/EXAMPLE/i) {
- print "</para></example>\n";
- }
- print " </para>\n</refsect1>\n";
- }
-
- print "\n\n";
-}
-
-# output in sgml DocBook
-sub output_gnome {
- my %args = %{$_[0]};
- my ($parameter, $section);
- my $count;
- my $id;
-
- $id = $args{'module'}."-".$args{'function'};
- $id =~ s/[^A-Za-z0-9]/-/g;
-
- print "<sect2>\n";
- print " <title id=\"$id\">".$args{'function'}."</title>\n";
-
-# print "<simplesect>\n";
-# print " <title>Synopsis</title>\n";
- print " <funcsynopsis>\n";
- print " <funcdef>".$args{'functiontype'}." ";
- print "<function>".$args{'function'}." ";
- print "</function></funcdef>\n";
-
- $count = 0;
- if ($#{$args{'parameterlist'}} >= 0) {
- foreach $parameter (@{$args{'parameterlist'}}) {
- $type = $args{'parametertypes'}{$parameter};
- if ($type =~ m/([^\(]*\(\*)\s*\)\s*\(([^\)]*)\)/) {
- # pointer-to-function
- print " <paramdef>$1 <parameter>$parameter</parameter>)\n";
- print " <funcparams>$2</funcparams></paramdef>\n";
- } else {
- print " <paramdef>".$type;
- print " <parameter>$parameter</parameter></paramdef>\n";
- }
- }
- } else {
- print " <void>\n";
- }
- print " </funcsynopsis>\n";
-# print "</simplesect>\n";
-# print "</refsect1>\n";
-
- # print parameters
-# print "<simplesect>\n <title>Arguments</title>\n";
-# if ($#{$args{'parameterlist'}} >= 0) {
-# print " <variablelist>\n";
-# foreach $parameter (@{$args{'parameterlist'}}) {
-# print " <varlistentry>\n <term><parameter>$parameter</parameter></term>\n";
-# print " <listitem>\n <para>\n";
-# $lineprefix=" ";
-# output_highlight($args{'parameters'}{$parameter});
-# print " </para>\n </listitem>\n </varlistentry>\n";
-# }
-# print " </variablelist>\n";
-# } else {
-# print " <para>\n None\n </para>\n";
-# }
-# print "</simplesect>\n";
-
-# print "<simplesect>\n <title>Arguments</title>\n";
- if ($#{$args{'parameterlist'}} >= 0) {
- print " <informaltable pgwide=\"1\" frame=\"none\" role=\"params\">\n";
- print "<tgroup cols=\"2\">\n";
- print "<colspec colwidth=\"2*\">\n";
- print "<colspec colwidth=\"8*\">\n";
- print "<tbody>\n";
- foreach $parameter (@{$args{'parameterlist'}}) {
- print " <row><entry align=\"right\"><parameter>$parameter</parameter></entry>\n";
- print " <entry>\n";
- $lineprefix=" ";
- output_highlight($args{'parameters'}{$parameter});
- print " </entry></row>\n";
- }
- print " </tbody></tgroup></informaltable>\n";
- } else {
- print " <para>\n None\n </para>\n";
- }
-# print "</simplesect>\n";
-
- # print out each section
- $lineprefix=" ";
- foreach $section (@{$args{'sectionlist'}}) {
- print "<simplesect>\n <title>$section</title>\n";
-# print "<para>\n$section\n";
- if ($section =~ m/EXAMPLE/i) {
- print "<example><programlisting>\n";
- } else {
- }
- print "<para>\n";
- output_highlight($args{'sections'}{$section});
-# print "</para>";
- print "</para>\n";
- if ($section =~ m/EXAMPLE/i) {
- print "</programlisting></example>\n";
- } else {
- }
- print " </simplesect>\n";
- }
-
- print "</sect2>\n\n";
-}
-
-##
-# output in man
-sub output_man {
- my %args = %{$_[0]};
- my ($parameter, $section);
- my $count;
-
- print ".TH \"$args{'module'}\" 4 \"$args{'function'}\" \"25 May 1998\" \"API Manual\" LINUX\n";
-
- print ".SH NAME\n";
- print $args{'function'}." \\- ".$args{'purpose'}."\n";
-
- print ".SH SYNOPSIS\n";
- print ".B \"".$args{'functiontype'}."\" ".$args{'function'}."\n";
- $count = 0;
- $parenth = "(";
- $post = ",";
- foreach $parameter (@{$args{'parameterlist'}}) {
- if ($count == $#{$args{'parameterlist'}}) {
- $post = ");";
- }
- $type = $args{'parametertypes'}{$parameter};
- if ($type =~ m/([^\(]*\(\*)\s*\)\s*\(([^\)]*)\)/) {
- # pointer-to-function
- print ".BI \"".$parenth.$1."\" ".$parameter." \") (".$2.")".$post."\"\n";
- } else {
- $type =~ s/([^\*])$/\1 /;
- print ".BI \"".$parenth.$type."\" ".$parameter." \"".$post."\"\n";
- }
- $count++;
- $parenth = "";
- }
-
- print ".SH Arguments\n";
- foreach $parameter (@{$args{'parameterlist'}}) {
- print ".IP \"".$parameter."\" 12\n";
- output_highlight($args{'parameters'}{$parameter});
- }
- foreach $section (@{$args{'sectionlist'}}) {
- print ".SH \"$section\"\n";
- output_highlight($args{'sections'}{$section});
- }
-}
-
-sub output_intro_man {
- my %args = %{$_[0]};
- my ($parameter, $section);
- my $count;
-
- print ".TH \"$args{'module'}\" 4 \"$args{'module'}\" \"25 May 1998\" \"API Manual\" LINUX\n";
-
- foreach $section (@{$args{'sectionlist'}}) {
- print ".SH \"$section\"\n";
- output_highlight($args{'sections'}{$section});
- }
-}
-
-##
-# output in text
-sub output_text {
- my %args = %{$_[0]};
- my ($parameter, $section);
-
- print "Function:\n\n";
- $start=$args{'functiontype'}." ".$args{'function'}." (";
- print $start;
- $count = 0;
- foreach $parameter (@{$args{'parameterlist'}}) {
- if ($type =~ m/([^\(]*\(\*)\s*\)\s*\(([^\)]*)\)/) {
- # pointer-to-function
- print $1.$parameter.") (".$2;
- } else {
- print $type." ".$parameter;
- }
- if ($count != $#{$args{'parameterlist'}}) {
- $count++;
- print ",\n";
- print " " x length($start);
- } else {
- print ");\n\n";
- }
- }
-
- print "Arguments:\n\n";
- foreach $parameter (@{$args{'parameterlist'}}) {
- print $parameter."\n\t".$args{'parameters'}{$parameter}."\n";
- }
- foreach $section (@{$args{'sectionlist'}}) {
- print "$section:\n\n";
- output_highlight($args{'sections'}{$section});
- }
- print "\n\n";
-}
-
-sub output_intro_text {
- my %args = %{$_[0]};
- my ($parameter, $section);
-
- foreach $section (@{$args{'sectionlist'}}) {
- print " $section:\n";
- print " -> ";
- output_highlight($args{'sections'}{$section});
- }
-}
-
-##
-# generic output function - calls the right one based
-# on current output mode.
-sub output_function {
-# output_html(@_);
- eval "output_".$output_mode."(\@_);";
-}
-
-##
-# generic output function - calls the right one based
-# on current output mode.
-sub output_intro {
-# output_html(@_);
- eval "output_intro_".$output_mode."(\@_);";
-}
-
-
-##
-# takes a function prototype and spits out all the details
-# stored in the global arrays/hashes.
-sub dump_function {
- my $prototype = shift @_;
-
- $prototype =~ s/^static +//;
- $prototype =~ s/^extern +//;
- $prototype =~ s/^inline +//;
- $prototype =~ s/^__inline__ +//;
- $prototype =~ s/^#define +//; #ak added
-
- # Yes, this truly is vile. We are looking for:
- # 1. Return type (may be nothing if we're looking at a macro)
- # 2. Function name
- # 3. Function parameters.
- #
- # All the while we have to watch out for function pointer parameters
- # (which IIRC is what the two sections are for), C types (these
- # regexps don't even start to express all the possibilities), and
- # so on.
- #
- # If you mess with these regexps, it's a good idea to check that
- # the following functions' documentation still comes out right:
- # - parport_register_device (function pointer parameters)
- # - atomic_set (macro)
- # - pci_match_device (long return type)
-
- if ($prototype =~ m/^()([a-zA-Z0-9_~:]+)\s*\(([^\(]*)\)/ ||
- $prototype =~ m/^(\w+)\s+([a-zA-Z0-9_~:]+)\s*\(([^\(]*)\)/ ||
- $prototype =~ m/^(\w+\s*\*+)\s*([a-zA-Z0-9_~:]+)\s*\(([^\(]*)\)/ ||
- $prototype =~ m/^(\w+\s+\w+)\s+([a-zA-Z0-9_~:]+)\s*\(([^\(]*)\)/ ||
- $prototype =~ m/^(\w+\s+\w+\s*\*+)\s*([a-zA-Z0-9_~:]+)\s*\(([^\(]*)\)/ ||
- $prototype =~ m/^(\w+\s+\w+\s+\w+)\s+([a-zA-Z0-9_~:]+)\s*\(([^\(]*)\)/ ||
- $prototype =~ m/^(\w+\s+\w+\s+\w+\s*\*+)\s*([a-zA-Z0-9_~:]+)\s*\(([^\(]*)\)/ ||
- $prototype =~ m/^()([a-zA-Z0-9_~:]+)\s*\(([^\{]*)\)/ ||
- $prototype =~ m/^(\w+)\s+([a-zA-Z0-9_~:]+)\s*\(([^\{]*)\)/ ||
- $prototype =~ m/^(\w+\s*\*+)\s*([a-zA-Z0-9_~:]+)\s*\(([^\{]*)\)/ ||
- $prototype =~ m/^(\w+\s+\w+)\s+([a-zA-Z0-9_~:]+)\s*\(([^\{]*)\)/ ||
- $prototype =~ m/^(\w+\s+\w+\s*\*+)\s*([a-zA-Z0-9_~:]+)\s*\(([^\{]*)\)/ ||
- $prototype =~ m/^(\w+\s+\w+\s+\w+)\s+([a-zA-Z0-9_~:]+)\s*\(([^\{]*)\)/ ||
- $prototype =~ m/^(\w+\s+\w+\s+\w+\s*\*+)\s*([a-zA-Z0-9_~:]+)\s*\(([^\{]*)\)/) {
- $return_type = $1;
- $function_name = $2;
- $args = $3;
-
- # allow for up to fours args to function pointers
- $args =~ s/(\([^\),]+),/\1#/g;
- $args =~ s/(\([^\),]+),/\1#/g;
- $args =~ s/(\([^\),]+),/\1#/g;
-# print STDERR "ARGS = '$args'\n";
-
- foreach $arg (split ',', $args) {
- # strip leading/trailing spaces
- $arg =~ s/^\s*//;
- $arg =~ s/\s*$//;
-
- if ($arg =~ m/\(/) {
- # pointer-to-function
- $arg =~ tr/#/,/;
- $arg =~ m/[^\(]+\(\*([^\)]+)\)/;
- $param = $1;
- $type = $arg;
- $type =~ s/([^\(]+\(\*)$param/\1/;
- } else {
- # evil magic to get fixed array parameters to work
- $arg =~ s/(.+\s+)(.+)\[.*/\1* \2/;
-# print STDERR "SCAN ARG: '$arg'\n";
- @args = split('\s', $arg);
-
-# print STDERR " -> @args\n";
- $param = pop @args;
-# print STDERR " -> @args\n";
- if ($param =~ m/^(\*+)(.*)/) {
- $param = $2;
- push @args, $1;
- }
- $type = join " ", @args;
- }
-
- if ($type eq "" && $param eq "...")
- {
- $type="...";
- $param="...";
- $parameters{"..."} = "variable arguments";
- }
- elsif ($type eq "" && $param eq "")
- {
- $type="";
- $param="void";
- $parameters{void} = "no arguments";
- }
- if ($type ne "" && $parameters{$param} eq "") {
- $parameters{$param} = "-- undescribed --";
- print STDERR "Warning($file:$lineno): Function parameter '$param' not described in '$function_name'\n";
- }
-
- push @parameterlist, $param;
- $parametertypes{$param} = $type;
-# print STDERR "param = '$param', type = '$type'\n";
- }
- } else {
- print STDERR "Error($lineno): cannot understand prototype: '$prototype'\n";
- return;
- }
-
- if ($function_only==0 ||
- ( $function_only == 1 && defined($function_table{$function_name})) ||
- ( $function_only == 2 && !defined($function_table{$function_name})))
- {
- output_function({'function' => $function_name,
- 'module' => $modulename,
- 'functiontype' => $return_type,
- 'parameterlist' => \@parameterlist,
- 'parameters' => \%parameters,
- 'parametertypes' => \%parametertypes,
- 'sectionlist' => \@sectionlist,
- 'sections' => \%sections,
- 'purpose' => $function_purpose
- });
- }
-}
-
-######################################################################
-# main
-# states
-# 0 - normal code
-# 1 - looking for function name
-# 2 - scanning field start.
-# 3 - scanning prototype.
-$state = 0;
-$section = "";
-
-$doc_special = "\@\%\$\&";
-
-$doc_start = "^/\\*\\*\\s*\$";
-$doc_end = "\\*/";
-$doc_com = "\\s*\\*\\s*";
-$doc_func = $doc_com."(\\w+):?";
-$doc_sect = $doc_com."([".$doc_special."]?[\\w ]+):(.*)";
-$doc_content = $doc_com."(.*)";
-$doc_block = $doc_com."DOC:\\s*(.*)?";
-
-%constants = ();
-%parameters = ();
-@parameterlist = ();
-%sections = ();
-@sectionlist = ();
-
-$contents = "";
-$section_default = "Description"; # default section
-$section_intro = "Introduction";
-$section = $section_default;
-
-while (<STDIN>)
- {
- if (/^!I(.*)/)
- {
- process_file("@top_srcdir@" . "/" . $1);
- }
- else
- {
- print;
- }
- }
-
-exit;
-
-sub process_file($) {
- my ($file) = @_;
-
- if (!open(IN,"<$file")) {
- print STDERR "Error: Cannot open file $file\n";
- return;
- }
-
- $lineno = 0;
- while (<IN>) {
- $lineno++;
-
- if ($state == 0) {
- if (/$doc_start/o) {
- $state = 1; # next line is always the function name
- }
- } elsif ($state == 1) { # this line is the function name (always)
- if (/$doc_block/o) {
- $state = 4;
- $contents = "";
- if ( $1 eq "" ) {
- $section = $section_intro;
- } else {
- $section = $1;
- }
- }
- elsif (/$doc_func/o) {
- $function = $1;
- $state = 2;
- if (/-(.*)/) {
- $function_purpose = $1;
- } else {
- $function_purpose = "";
- }
- if ($verbose) {
- print STDERR "Info($lineno): Scanning doc for $function\n";
- }
- } else {
- print STDERR "WARN($lineno): Cannot understand $_ on line $lineno",
- " - I thought it was a doc line\n";
- $state = 0;
- }
- } elsif ($state == 2) { # look for head: lines, and include content
- if (/$doc_sect/o) {
- $newsection = $1;
- $newcontents = $2;
-
- if ($contents ne "") {
- $contents =~ s/\&/\\\\\\amp;/g;
- $contents =~ s/\</\\\\\\lt;/g;
- $contents =~ s/\>/\\\\\\gt;/g;
- dump_section($section, $contents);
- $section = $section_default;
- }
-
- $contents = $newcontents;
- if ($contents ne "") {
- $contents .= "\n";
- }
- $section = $newsection;
- } elsif (/$doc_end/) {
-
- if ($contents ne "") {
- $contents =~ s/\&/\\\\\\amp;/g;
- $contents =~ s/\</\\\\\\lt;/g;
- $contents =~ s/\>/\\\\\\gt;/g;
- dump_section($section, $contents);
- $section = $section_default;
- $contents = "";
- }
-
-# print STDERR "end of doc comment, looking for prototype\n";
- $prototype = "";
- $state = 3;
- } elsif (/$doc_content/) {
- # miguel-style comment kludge, look for blank lines after
- # @parameter line to signify start of description
- if ($1 eq "" && $section =~ m/^@/) {
- $contents =~ s/\&/\\\\\\amp;/g;
- $contents =~ s/\</\\\\\\lt;/g;
- $contents =~ s/\>/\\\\\\gt;/g;
- dump_section($section, $contents);
- $section = $section_default;
- $contents = "";
- } else {
- $contents .= $1."\n";
- }
- } else {
- # i dont know - bad line? ignore.
- print STDERR "WARNING($lineno): bad line: $_";
- }
- } elsif ($state == 3) { # scanning for function { (end of prototype)
- if (m#\s*/\*\s+MACDOC\s*#io) {
- # do nothing
- }
- elsif (/([^\{]*)/) {
- $prototype .= $1;
- }
- if (/\{/ || /\#/ || /;/) { # added for #define AK
- $prototype =~ s@/\*.*?\*/@@gos; # strip comments.
- $prototype =~ s@[\r\n]+@ @gos; # strip newlines/cr's.
- $prototype =~ s@^ +@@gos; # strip leading spaces
- dump_function($prototype);
-
- $function = "";
- %constants = ();
- %parameters = ();
- %parametertypes = ();
- @parameterlist = ();
- %sections = ();
- @sectionlist = ();
- $prototype = "";
-
- $state = 0;
- }
- } elsif ($state == 4) {
- # Documentation block
- if (/$doc_block/) {
- dump_section($section, $contents);
- output_intro({'sectionlist' => \@sectionlist,
- 'sections' => \%sections });
- $contents = "";
- $function = "";
- %constants = ();
- %parameters = ();
- %parametertypes = ();
- @parameterlist = ();
- %sections = ();
- @sectionlist = ();
- $prototype = "";
- if ( $1 eq "" ) {
- $section = $section_intro;
- } else {
- $section = $1;
- }
- }
- elsif (/$doc_end/)
- {
- dump_section($section, $contents);
- output_intro({'sectionlist' => \@sectionlist,
- 'sections' => \%sections });
- $contents = "";
- $function = "";
- %constants = ();
- %parameters = ();
- %parametertypes = ();
- @parameterlist = ();
- %sections = ();
- @sectionlist = ();
- $prototype = "";
- $state = 0;
- }
- elsif (/$doc_content/)
- {
- if ( $1 eq "" )
- {
- $contents .= $blankline;
- }
- else
- {
- $contents .= $1 . "\n";
- }
- }
- }
- }
-}
-
diff --git a/doc/manual.raw b/doc/manual.raw
deleted file mode 100644
index c90254886..000000000
--- a/doc/manual.raw
+++ /dev/null
@@ -1,472 +0,0 @@
-<!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook V3.1//EN" [
-<!ENTITY e17 "<productname>Enlightenment 0.17</productname>">
-]>
-
-
-<book id="e17-manual">
- <bookinfo>
- <title>The Enlightenment 0.17 Manual</title>
-
- <authorgroup>
- <author>
- <firstname>Christian</firstname>
- <surname>Kreibich</surname>
- <affiliation>
- <address>
- <email>cK@whoop.org</email>
- </address>
- </affiliation>
- </author>
- </authorgroup>
-
- <copyright>
- <year>2001</year>
- <holder>Christian Kreibich</holder>
- </copyright>
-
- <legalnotice>
- <para>
- Permission is hereby granted, free of charge, to any person obtaining a copy
- of this software and associated documentation files (the "Software"), to
- deal in the Software without restriction, including without limitation the
- rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
- sell copies of the Software, and to permit persons to whom the Software is
- furnished to do so, subject to the following conditions:
- </para>
- <para>
- The above copyright notice and this permission notice shall be included in
- all copies of the Software and its documentation and acknowledgment shall be
- given in the documentation and software packages that this Software was
- used.
- </para>
- <para>
- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
- THE AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
- IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
- CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
- </para>
- </legalnotice>
-
- <releaseinfo>
- This is document is nowhere near being finished. Be patient.
- </releaseinfo>
-
- </bookinfo>
-
- <toc></toc>
-
- <chapter id="introduction">
- <title>Introduction</title>
- <para>
- This document explains the &e17; release, for both users and
- developers.
- </para>
- </chapter>
-
- <chapter id="using">
- <title>Using &e17;</title>
- <para>
- Here's how you use &e17;.
- </para>
-
- <section id="features">
- <title id="features.title">Feature List</title>
- <para>
- At the moment, &e17; has not been released. The current feature list includes:
-
- <orderedlist>
- <listitem>
- <para>A fully functional and mostly ICCCM-compliant windowmanager.</para>
- </listitem>
- <listitem>
- <para>Multiple desktops (in the version 0.16 sense, so no large,
- virtual desktop area yet).</para>
- </listitem>
- <listitem>
- <para>Shading/unshading of windows.</para>
- </listitem>
- <listitem>
- <para>Ability to browse files in your filesystem through view windows,
- with recognition of the file types and appropriate icons.</para>
- </listitem>
- <listitem>
- <para>Support for icon bars in each view window. These are
- collections of icons for commonly needed applications or documents
- in a directory. For example, in a directory with lots of images
- you will want to have image viewers ready, in a directory with
- MP3 files you'll want music players etc. The icon bars keep
- those applications where you need them.</para>
- </listitem>
- </orderedlist>
-
- This feature list should not imply that &e17; is ready for public use
- yet. Many more features are in development, but their configuration
- is currently hard-coded. If you want a fancy windowmanager with
- full configurability, you best stick to the currently stable 0.16.5
- release.
- </para>
- <para>
- Please do not come to the mailing lists and ask for release dates etc.
- &e17; will be released when it has matured to a stable system that is
- usable also for novices. &e17; will <emphasis>not</emphasis> be as
- rich in features as the 0.16 series -- we intend to produce a simple,
- stable desktop shell for that release. Funky features will be considered
- for the 0.18 release.
- </para>
- </section>
-
- <section id="wm">
- <title id="wm.title">The Window Manager</title>
- <para>
- </para>
- </section>
-
- <section id="fm">
- <title id="fm.title">The File Manager</title>
- <para>
- </para>
- </section>
-
- <section id="concepts">
- <title id="concepts.title">Themeing</title>
- <section id="overview">
- <title id="overview.title">Overview</title>
- <para>
- </para>
- </section>
- <section id="system">
- <title id="system.title">System Settings</title>
- <para>
- </para>
- </section>
- <section id="user">
- <title id="user.title">User Settings</title>
- <para>
- </para>
- </section>
- </section>
-
- </chapter>
-
- <chapter id="inside">
- <title>Inside &e17;</title>
- <para>
- This chapter explains the inner workings of &e17;.
- </para>
-
- <section id="build">
- <title id="build.title">Building &e17;</title>
- <para>
- This chapter explains how to build &e17; manually. The Enlightenment
- Project is hosted by <ulink url="http://www.sourceforge.net">Sourceforge</ulink>,
- the project website is therefore
- <ulink url="http://www.sourceforge.net/projects/enlightenment">http://www.sf.net/projects/enlightenment</ulink>.
- Since you're reading this document, your probably know this already.
- CVS is used for version control, refer to the Sourceforge documentation
- for details about using CVS.
- </para>
- <para>
- <caution>
- <title>Make sure you know what you're doing!</title>
- <para>
- Building e17 from CVS code is not trivial. Expect problems.
- You're using development code, so do not expect the software
- to work. Things can and with all likelihood will break.
- Be sure you know how to handle the tools you need for the
- build.
- </para>
- <para>
- Experience from the mailing lists shows that way too many
- people try using CVS without the proper skills. We will try
- to give help, but by explaining how to build &e17; we lose
- time we'd otherwise spend coding, so try to solve issues
- yourselves first.
- </para>
- </caution>
- </para>
- <para>
- An incomplete tree of the current CVS contents is shown below.
- For details about the modules, please refer to the
- <link linkend="modules" endterm="modules.title">Modules</link>
- section below or the
- <ulink url="http://www.enlightenment.org/pages/components.html">webpage</ulink>.
-
- <programlisting>
-e17
- | \
- | apps
- | |___ e * Enlightenment 0.17, the main program.
- | |
- | |___ ebindings A keybingings and menu contents editor.
- | |
- | |___ ebony A background editor.
- | |
- | |___ efsd * The Enlightenment File System Daemon.
- | |
- | |___ entice An image viewer.
- | |
- | |___ etcher A GUI editor for window borders and more.
- | |
- | ...
- |
- \
- libs
- |___ ebits * A library for "bits", graphical layout structures.
- |
- |___ ecore * An X Windows wrapper and event loop library.
- |
- |___ edb * A database library based on Berkeley DB.
- |
- |___ etox A text layout engine.
- |
- |___ evas * A graphical canvas engine.
- |
- |___ ewl A widget library using evas.
- |
- |___ ewd A container library for hashes, lists etc.
- |
- |___ imlib2 * An image loading and manipulation library.
- |
- |___ imlib2_loaders * A set of loaders for imlib2, separated due to licensing issues.
- </programlisting>
-
- The modules you absolutely need to get &e17; running are marked
- with an asterisk. The next thing you need to know is the build
- sequence. A working sequence is the following:
-
- <orderedlist>
- <listitem>
- <para>Edb</para>
- </listitem>
- <listitem>
- <para>Imlib2</para>
- </listitem>
- <listitem>
- <para>Imlib2 Loaders</para>
- </listitem>
- <listitem>
- <para>Evas</para>
- </listitem>
- <listitem>
- <para>Ebits</para>
- </listitem>
- <listitem>
- <para>Ecore</para>
- </listitem>
- <listitem>
- <para>Efsd</para>
- </listitem>
- <listitem>
- <para>E 17</para>
- </listitem>
- </orderedlist>
-
- Some of the modules have other dependencies, you need:
-
- <itemizedlist mark="opencircle">
- <listitem>
- <para>For Imlib2, you need a few graphics libraries. [FIXME]</para>
- </listitem>
- <listitem>
- <para>For Efsd, you need libxml2 from
- (<ulink url="http://xmlsoft.org/">XMLSoft</ulink>) and fam from
- (<ulink url="http://prdownloads.sourceforge.net/enlightenment/fam-oss-2.6.4-NULL-fix.tar.gz">Version 2.6.4</ulink> or a later version)
- </para>
- </listitem>
- </itemizedlist>
-
- <note>
- <title>There's no real reason to build those packages from source.</title>
- <para>
- It's a lot easier
- to just install the packages of your distribution. Do not forget to
- install the development packages as well, or necessary C header files
- won't be available during the build.
- </para>
- </note>
- </para>
- <para>
- To build, you need recent versions of the following GNU tools:
-
- <itemizedlist mark="opencircle">
- <listitem>
- <para><command>autoconf</command> 2.13 and <command>automake</command> 1.4 <emphasis>OR</emphasis></para>
- </listitem>
- <listitem>
- <para><command>autoconf</command> 2.50+ and <command>automake</command> 1.5</para>
- </listitem>
- <listitem>
- <para><command>gettext</command> 0.10.39 or newer</para>
- </listitem>
- <listitem>
- <para><command>libtool</command> 1.4 or newer</para>
- </listitem>
- </itemizedlist>
-
- Other combinations of <command>automake</command> and
- <command>autoconf</command> may work, but are more
- prone to errors.
- </para>
- </section>
-
- <section id="architecture">
- <title id="architecture.title">&e17; Architecture</title>
- <section id="overall">
- <title id="overall.title">Overview</title>
- <para>
-
- <mediaobject>
- <imageobject>
- <imagedata fileref="figures/architecture.eps" format="eps">
- </imageobject>
- <imageobject>
- <imagedata fileref="figures/architecture.gif" format="gif">
- </imageobject>
- <textobject>
- <phrase>Image of &e17; Architecture</phrase>
- </textobject>
- <caption>
- <para>&e17; Architecture.</para>
- </caption>
- </mediaobject>
-
- </para>
- </section>
- <section id="modules">
- <title id="modules.title">Modules</title>
- <para>
-
- <itemizedlist mark="opencircle">
- <listitem>
- <para><command>e</command></para>
- <para>This is the main &e17; applicaton. It handles managing
- of windows, launching applications, managing icons and files
- on your desktop and in directories, drag and drop etc.
- </para>
- </listitem>
- <listitem>
- <para><command>ecore</command></para>
- <para>Ecore is a convenience library. It handles
- abstracting X calls so you don't have to pass as many parameters to them. It
- wraps lots of other sequences of X calls you want to do often, handles
- caching local geometry of windows to save extra X traffic, abstracts X's
- events and adds a timer system to be able to do timeouts, handles the core
- event loops, abstracts signals into being events in the event queue, and lets
- you arbitrarily add other file descriptors to the loop to listen on and have
- handlers be called when they become active, and much much more. Ecore also
- handles filtering events and calling idle handlers when appropriate. Ecore is
- just what it says - a very complex CORE subsystem. It is all callback based,
- and keeps everything abstracted - but does not move away from normal X11
- primitives like other abstractions (GDK for example), thus keeping 100%
- compatibility with normal Xlib stuff. The core innards of E17 rely heavily on
- Ecore and its ability to not just work, but work well and optimize silently for
- E17.
- </para>
- </listitem>
- <listitem>
- <para><command>evas</command></para>
- <para>Evas is a canvas abstraction that uses Imlib2, as well
- as OpenGL, and X11. It serves as a canvas accelerator and abstraction and
- does the job really well. It has made building the rendering parts of
- &e17; a lot easier.
- </para>
- </listitem>
- <listitem>
- <para><command>ebits</command></para>
- <para>Ebits is a higher-level abstraction of image groups
- built on top of Evas. Basically it's what the old E16 window border logic
- was - but on steroids. It can do a lot more and is being used as the
- basic building block for all widgets in E17. Etcher is a GUI editor that
- can edit Ebits files - thus letting you have a nice GUI to
- design your widgets, window borders etc. in.
- </para>
- </listitem>
- <listitem>
- <para><command>edb</command></para>
- <para>Edb is a database abstraction layer to Berkeley
- DB. Edb contains the source for DB 2.7.7, thus freezing the database
- format on disk, making sure it will never become incompatible (as is a habit
- of the DB interface in libc). Edb wraps this with a convenience and
- optimization API layer, making database access easy, fast and consistent. It
- handles typing of information in the database and much more. Edb is *VERY*
- fast and all of E17 configuration management is built on top of it -
- every configuration file is a database - including Ebits files. Also,
- Efsd stores its metadata information in Edb databases.
- </para>
- </listitem>
- <listitem>
- <para><command>efsd</command></para>
- <para>Efsd is the file system abstraction layer. It is a
- library and a daemon process that the library communicates with for the
- calling process (in this case E17). It handles all filing system interaction
- in an asynchronous manner, so E17 isn't ever left blocking on basic IO
- requests. It handles copying, renaming and deleting of files. Also listing of
- directories, monitoring for changes in directories, retrieving stat
- information on files, as well as metadata retrieval and modification for
- files. All of this is done in an asynchronous request/event system thus
- keeping E17 free to handle user interaction as much as possible while Efsd
- does the nasty IO work.
- </para>
- </listitem>
- <listitem>
- <para><command>imlib2</command></para>
- <para>Imlib2 is the abstraction layer that handles the
- raw nasty work of loading images, saving them, rendering them to a drawable
- or blending and scaling them onto other images, software anti-aliased
- truetype fonts and other goodies. This one is pretty much done and finished
- with. It gets minor updates and fixes as needed, but otherwise is left alone.
- </para>
- </listitem>
- <listitem>
- <para><command>imlib2_loaders</command></para>
- <para>This is a collection of loaders that are not packaged with Imlib2
- due to licensing issues or because the loaders are not commonly needed enough.
- It currently contains a loader for Edb files (where images can be accessed
- through character string keys) and a loader for Gimp's native XCF image
- format.</para>
- </listitem>
- </itemizedlist>
- </para>
- </section>
- </section>
-
- <section id="scripting">
- <title id="scripting.title">Scripting &e17;</title>
- <para>
- &e17; provides hooks to allow script interaction with the core systems,
- using the <ulink url="http://www.ferite.org">Ferite</ulink> scripting
- language. There basic scripting support is in the code now, but it's
- too early to think about writing larger scripts.
- </para>
- </section>
-
- <section id="code">
- <title>Code Documentation</title>
-!Isrc/actions.h
-!Isrc/border.h
-!Isrc/desktops.h
-!Isrc/entry.h
-!Isrc/fs.h
-!Isrc/guides.h
-!Isrc/iconbar.c
-!Isrc/icons.h
-!Isrc/menu.h
-!Isrc/menu.c
-!Isrc/object.h
-!Isrc/observer.h
-!Isrc/place.h
-!Isrc/view.h
- </section>
-
- <section id="roadmap">
- <title id="roadmap.title">Roadmap</title>
- <para>
- </para>
- </section>
-
- </chapter>
-
-</book>
-
diff --git a/doc/stylesheet.css b/doc/stylesheet.css
deleted file mode 100644
index 660965075..000000000
--- a/doc/stylesheet.css
+++ /dev/null
@@ -1,20 +0,0 @@
-body { margin-left:10px;
- margin-right:10px;
- margin-top:10px;
- margin-bottom:10px;
- color:#0000a0;
- font-size:12pt;
- background-image:url(figures/background.gif);
- background-repeat:no-repeat;
- }
-
-th {
- font-size:14pt;
- }
-
-td {
- font-size:12pt;
- }
-
-div.mediaobject { align:center; }
-div.caption { align:center; }
diff --git a/e.spec b/e.spec
deleted file mode 100644
index f0323d6c7..000000000
--- a/e.spec
+++ /dev/null
@@ -1,67 +0,0 @@
-# Note that this is NOT a relocatable package
-%define ver 0.17.pre_0
-%define rel 1
-%define prefix /usr/local
-
-Summary: Enlightenment DR0.17 CVS
-Name: enlightenment
-Version: %ver
-Release: %rel
-Copyright: BSD
-Group: X11/Libraries
-Source: ftp://ftp.enlightenment.org/pub/enlightenment/enlightenment-%{ver}.tar.gz
-BuildRoot: /var/tmp/enlightenment-root
-Packager: The Rasterman <raster@rasterman.com>
-URL: http://www.enlightenment.org/
-Requires: evas >= 0.0.2
-Requires: edb >= 1.0.0
-Requires: imlib2 >= 1.0.0
-Requires: ebits >= 0.0.0
-Requires: ecore >= 0.0.0
-
-Docdir: %{prefix}/doc
-
-%description
-Errrrrrr - E17. You go figure.
-
-%prep
-%setup
-
-%build
-./configure --prefix=%prefix
-
-if [ "$SMP" != "" ]; then
- (make "MAKE=make -k -j $SMP"; exit 0)
- make
-else
- make
-fi
-###########################################################################
-
-%install
-rm -rf $RPM_BUILD_ROOT
-make prefix=$RPM_BUILD_ROOT%{prefix} install
-
-%clean
-rm -rf $RPM_BUILD_ROOT
-
-%post
-
-%postun
-
-%files
-%defattr(-,root,root)
-%doc README COPYING ChangeLog
-%attr(755,root,root) %{prefix}/bin/enlightenment
-%{prefix}/share/enlightenment/*
-
-%doc AUTHORS
-%doc COPYING
-%doc README
-
-%changelog
-* Sat Jan 6 2001 Lyle Kempler <term@twistedpath.org>
-- Fixed spec file. :)
-* Sat Dec 11 2000 The Rasterman <raster@rasterman.com>
-- Created spec file
-
diff --git a/lib/.cvsignore b/lib/.cvsignore
deleted file mode 100644
index ba1f2cb3d..000000000
--- a/lib/.cvsignore
+++ /dev/null
@@ -1,7 +0,0 @@
-libehack.la
-e_hack.lo
-Makefile.in
-Makefile
-.libs
-.deps
-
diff --git a/lib/Makefile.am b/lib/Makefile.am
deleted file mode 100644
index f17b907e0..000000000
--- a/lib/Makefile.am
+++ /dev/null
@@ -1,20 +0,0 @@
-## Process this file with automake to produce Makefile.in
-
-AUTOMAKE_OPTIONS = 1.4 foreign
-
-# A list of all the files in the current directory which can be regenerated
-MAINTAINERCLEANFILES = Makefile.in
-
-LDFLAGS = -L/usr/X11R6/lib -L/usr/local/lib
-INCLUDES = -I/usr/X11R6/include -I/usr/local/include \
- $(X_CFLAGS) -I$(includedir)
-
-lib_LTLIBRARIES = libehack.la
-include_HEADERS =
-libehack_la_SOURCES = \
-e_hack.c \
-e_hack.h
-
-libehack_la_LIBADD = -lX11 @LIBDL@ $(LDFLAGS)
-libehack_la_DEPENDENCIES = $(top_builddir)/config.h
-libehack_la_LDFLAGS = -version-info 0:1:0
diff --git a/lib/e_hack.c b/lib/e_hack.c
deleted file mode 100644
index 341fb9ee9..000000000
--- a/lib/e_hack.c
+++ /dev/null
@@ -1,206 +0,0 @@
-#include "config.h"
-#include "e_hack.h"
-
-/* prototypes */
-static void __e_hack_set_properties(Display *display, Window window);
-
-/* dlopened xlib so we can find the symbols in the real xlib to call them */
-static void *lib_xlib = NULL;
-
-/* the function that actually sets the properties on toplevel window */
-static void
-__e_hack_set_properties(Display *display, Window window)
-{
- static Atom a_launch_id = 0;
- static Atom a_launch_path = 0;
- static Atom a_user_id = 0;
- static Atom a_process_id = 0;
- static Atom a_p_process_id = 0;
- static Atom a_machine_name = 0;
- static Atom a_user_name = 0;
- char *env = NULL;
-
- if (!a_launch_id) a_launch_id = XInternAtom(display, "_E_HACK_LAUNCH_ID", False);
- if (!a_launch_path) a_launch_path = XInternAtom(display, "_E_HACK_LAUNCH_PATH", False);
- if (!a_user_id) a_user_id = XInternAtom(display, "_E_HACK_USER_ID", False);
- if (!a_process_id) a_process_id = XInternAtom(display, "_E_HACK_PROCESS_ID", False);
- if (!a_p_process_id) a_p_process_id = XInternAtom(display, "_E_HACK_PARENT_PROCESS_ID", False);
- if (!a_machine_name) a_machine_name = XInternAtom(display, "_E_HACK_MACHINE_NAME", False);
- if (!a_user_name) a_user_name = XInternAtom(display, "_E_HACK_USER_NAME", False);
-
- if ((env = getenv("E_HACK_LAUNCH_ID")))
- XChangeProperty(display, window, a_launch_id, XA_STRING, 8, PropModeReplace, env, strlen(env));
- if ((env = getenv("E_HACK_LAUNCH_PATH")))
- XChangeProperty(display, window, a_launch_path, XA_STRING, 8, PropModeReplace, env, strlen(env));
- {
- uid_t uid;
- pid_t pid, ppid;
- struct utsname ubuf;
- char buf[4096];
-
- uid = getuid();
- pid = getpid();
- ppid = getppid();
-
- snprintf(buf, sizeof(buf), "%i", uid);
- XChangeProperty(display, window, a_user_id, XA_STRING, 8, PropModeReplace, buf, strlen(buf));
- snprintf(buf, sizeof(buf), "%i", pid);
- XChangeProperty(display, window, a_process_id, XA_STRING, 8, PropModeReplace, buf, strlen(buf));
- snprintf(buf, sizeof(buf), "%i", ppid);
- XChangeProperty(display, window, a_p_process_id, XA_STRING, 8, PropModeReplace, buf, strlen(buf));
- if (!uname(&ubuf))
- {
- snprintf(buf, sizeof(buf), "%s", ubuf.nodename);
- XChangeProperty(display, window, a_machine_name, XA_STRING, 8, PropModeReplace, buf, strlen(buf));
- }
- else
- XChangeProperty(display, window, a_machine_name, XA_STRING, 8, PropModeReplace, " ", 1);
- }
- if ((env = getenv("USER")))
- XChangeProperty(display, window, a_user_name, XA_STRING, 8, PropModeReplace, env, strlen(env));
-}
-
-/* XCreateWindow intercept hack */
-Window
-XCreateWindow(
- Display *display,
- Window parent,
- int x, int y,
- unsigned int width, unsigned int height,
- unsigned int border_width,
- int depth,
- unsigned int class,
- Visual *visual,
- unsigned long valuemask,
- XSetWindowAttributes *attributes
- )
-{
- static Window (*func)
- (
- Display *display,
- Window parent,
- int x, int y,
- unsigned int width, unsigned int height,
- unsigned int border_width,
- int depth,
- unsigned int class,
- Visual *visual,
- unsigned long valuemask,
- XSetWindowAttributes *attributes
- ) = NULL;
- int i;
-
- /* find the real Xlib and the real X function */
- if (!lib_xlib) lib_xlib = dlopen("libX11.so", RTLD_GLOBAL | RTLD_LAZY);
- if (!func) func = dlsym (lib_xlib, "XCreateWindow");
-
- /* multihead screen handling loop */
- for (i = 0; i < ScreenCount(display); i++)
- {
- /* if the window is created as a toplevel window */
- if (parent == RootWindow(display, i))
- {
- Window window;
-
- /* create it */
- window = (*func) (display, parent, x, y, width, height,
- border_width, depth, class, visual, valuemask,
- attributes);
- /* set properties */
- __e_hack_set_properties(display, window);
- /* return it */
- return window;
- }
- }
- /* normal child window - create as usual */
- return (*func) (display, parent, x, y, width, height, border_width, depth,
- class, visual, valuemask, attributes);
-}
-
-/* XCreateSimpleWindow intercept hack */
-Window
-XCreateSimpleWindow(
- Display *display,
- Window parent,
- int x, int y,
- unsigned int width, unsigned int height,
- unsigned int border_width,
- unsigned long border,
- unsigned long background
- )
-{
- static Window (*func)
- (
- Display *display,
- Window parent,
- int x, int y,
- unsigned int width, unsigned int height,
- unsigned int border_width,
- unsigned long border,
- unsigned long background
- ) = NULL;
- int i;
-
- /* find the real Xlib and the real X function */
- if (!lib_xlib) lib_xlib = dlopen("libX11.so", RTLD_GLOBAL | RTLD_LAZY);
- if (!func) func = dlsym (lib_xlib, "XCreateSimpleWindow");
-
- /* multihead screen handling loop */
- for (i = 0; i < ScreenCount(display); i++)
- {
- /* if the window is created as a toplevel window */
- if (parent == RootWindow(display, i))
- {
- Window window;
-
- /* create it */
- window = (*func) (display, parent, x, y, width, height,
- border_width, border, background);
- /* set properties */
- __e_hack_set_properties(display, window);
- /* return it */
- return window;
- }
- }
- /* normal child window - create as usual */
- return (*func) (display, parent, x, y, width, height,
- border_width, border, background);
-}
-
-/* XReparentWindow intercept hack */
-int
-XReparentWindow(
- Display *display,
- Window window,
- Window parent,
- int x, int y
- )
-{
- static int (*func)
- (
- Display *display,
- Window window,
- Window parent,
- int x, int y
- ) = NULL;
- int i;
-
- /* find the real Xlib and the real X function */
- if (!lib_xlib) lib_xlib = dlopen("libX11.so", RTLD_GLOBAL | RTLD_LAZY);
- if (!func) func = dlsym (lib_xlib, "XReparentWindow");
-
- /* multihead screen handling loop */
- for (i = 0; i < ScreenCount(display); i++)
- {
- /* if the window is created as a toplevel window */
- if (parent == RootWindow(display, i))
- {
- /* set properties */
- __e_hack_set_properties(display, window);
- /* reparent it */
- return (*func) (display, window, parent, x, y);
- }
- }
- /* normal child window reparenting - reparent as usual */
- return (*func) (display, window, parent, x, y);
-}
diff --git a/lib/e_hack.h b/lib/e_hack.h
deleted file mode 100644
index a2948c95d..000000000
--- a/lib/e_hack.h
+++ /dev/null
@@ -1,12 +0,0 @@
-#include <stdio.h>
-#include <stdlib.h>
-#include <stdarg.h>
-#include <string.h>
-#include <dlfcn.h>
-#include <unistd.h>
-#include <sys/types.h>
-#include <sys/stat.h>
-#include <sys/utsname.h>
-#include <X11/Xlib.h>
-#include <X11/X.h>
-#include <X11/Xatom.h>
diff --git a/po/.cvsignore b/po/.cvsignore
deleted file mode 100644
index c52251bf7..000000000
--- a/po/.cvsignore
+++ /dev/null
@@ -1,3 +0,0 @@
-Makefile
-Makefile.in
-POTFILES
diff --git a/po/ChangeLog b/po/ChangeLog
deleted file mode 100644
index f63f9e044..000000000
--- a/po/ChangeLog
+++ /dev/null
@@ -1,202 +0,0 @@
-2002-04-21 gettextize <bug-gnu-utils@gnu.org>
-
- * Makefile.in.in: Upgrade to gettext-0.10.40.
-
-2002-04-21 gettextize <bug-gnu-utils@gnu.org>
-
- * Makefile.in.in: Upgrade to gettext-0.10.40.
-
-2002-03-21 gettextize <bug-gnu-utils@gnu.org>
-
- * Makefile.in.in: Upgrade to gettext-0.10.40.
-
-2002-03-21 gettextize <bug-gnu-utils@gnu.org>
-
- * Makefile.in.in: Upgrade to gettext-0.10.40.
-
-2002-03-21 gettextize <bug-gnu-utils@gnu.org>
-
- * Makefile.in.in: Upgrade to gettext-0.10.40.
-
-2002-03-21 gettextize <bug-gnu-utils@gnu.org>
-
- * Makefile.in.in: Upgrade to gettext-0.10.40.
-
-2002-03-10 gettextize <bug-gnu-utils@gnu.org>
-
- * Makefile.in.in: Upgrade to gettext-0.10.40.
-
-2002-03-10 gettextize <bug-gnu-utils@gnu.org>
-
- * Makefile.in.in: Upgrade to gettext-0.10.40.
-
-2002-03-10 gettextize <bug-gnu-utils@gnu.org>
-
- * Makefile.in.in: Upgrade to gettext-0.10.40.
-
-2002-03-10 gettextize <bug-gnu-utils@gnu.org>
-
- * Makefile.in.in: Upgrade to gettext-0.10.40.
-
-2002-03-08 gettextize <bug-gnu-utils@gnu.org>
-
- * Makefile.in.in: Upgrade to gettext-0.10.40.
-
-2002-03-06 gettextize <bug-gnu-utils@gnu.org>
-
- * Makefile.in.in: Upgrade to gettext-0.10.40.
-
-2002-03-06 gettextize <bug-gnu-utils@gnu.org>
-
- * Makefile.in.in: Upgrade to gettext-0.10.40.
-
-2002-02-26 gettextize <bug-gnu-utils@gnu.org>
-
- * Makefile.in.in: Upgrade to gettext-0.10.40.
-
-2002-02-24 gettextize <bug-gnu-utils@gnu.org>
-
- * Makefile.in.in: Upgrade to gettext-0.10.40.
-
-2002-02-22 gettextize <bug-gnu-utils@gnu.org>
-
- * Makefile.in.in: Upgrade to gettext-0.10.40.
-
-2002-02-16 gettextize <bug-gnu-utils@gnu.org>
-
- * Makefile.in.in: Upgrade to gettext-0.10.40.
-
-2002-02-15 gettextize <bug-gnu-utils@gnu.org>
-
- * Makefile.in.in: Upgrade to gettext-0.10.40.
-
-2002-02-15 gettextize <bug-gnu-utils@gnu.org>
-
- * Makefile.in.in: Upgrade to gettext-0.10.40.
-
-2001-10-22 gettextize <bug-gnu-utils@gnu.org>
-
- * Makefile.in.in: Upgrade to gettext-0.10.39.
-
-2001-10-21 gettextize <bug-gnu-utils@gnu.org>
-
- * Makefile.in.in: Upgrade to gettext-0.10.39.
-
-2001-10-21 gettextize <bug-gnu-utils@gnu.org>
-
- * Makefile.in.in: Upgrade to gettext-0.10.39.
-
-2001-10-13 gettextize <bug-gnu-utils@gnu.org>
-
- * Makefile.in.in: Upgrade to gettext-0.10.39.
-
-2001-10-13 gettextize <bug-gnu-utils@gnu.org>
-
- * Makefile.in.in: Upgrade to gettext-0.10.39.
-
-2001-10-13 gettextize <bug-gnu-utils@gnu.org>
-
- * Makefile.in.in: Upgrade to gettext-0.10.39.
-
-2001-10-09 gettextize <bug-gnu-utils@gnu.org>
-
- * Makefile.in.in: Upgrade to gettext-0.10.40.
-
-2001-10-09 gettextize <bug-gnu-utils@gnu.org>
-
- * Makefile.in.in: Upgrade to gettext-0.10.40.
-
-2001-08-31 gettextize <bug-gnu-utils@gnu.org>
-
- * Makefile.in.in: Upgrade to gettext-0.10.39.
-
-2001-08-31 gettextize <bug-gnu-utils@gnu.org>
-
- * Makefile.in.in: Upgrade to gettext-0.10.39.
-
-2001-08-31 gettextize <bug-gnu-utils@gnu.org>
-
- * Makefile.in.in: Upgrade to gettext-0.10.39.
-
-2001-08-25 gettextize <bug-gnu-utils@gnu.org>
-
- * Makefile.in.in: Upgrade to gettext-0.10.39.
-
-2001-08-25 gettextize <bug-gnu-utils@gnu.org>
-
- * Makefile.in.in: Upgrade to gettext-0.10.39.
-
-2001-08-25 gettextize <bug-gnu-utils@gnu.org>
-
- * Makefile.in.in: Upgrade to gettext-0.10.39.
-
-2001-08-25 gettextize <bug-gnu-utils@gnu.org>
-
- * Makefile.in.in: Upgrade to gettext-0.10.39.
-
-2001-08-23 gettextize <bug-gnu-utils@gnu.org>
-
- * Makefile.in.in: Upgrade to gettext-0.10.39.
-
-2001-08-23 gettextize <bug-gnu-utils@gnu.org>
-
- * Makefile.in.in: Upgrade to gettext-0.10.39.
-
-2001-08-15 gettextize <bug-gnu-utils@gnu.org>
-
- * Makefile.in.in: Upgrade to gettext-0.10.38.
-
-2001-08-07 gettextize <bug-gnu-utils@gnu.org>
-
- * Makefile.in.in: Upgrade to gettext-0.10.38.
-
-2001-08-03 gettextize <bug-gnu-utils@gnu.org>
-
- * Makefile.in.in: Upgrade to gettext-0.10.38.
-
-2001-08-03 gettextize <bug-gnu-utils@gnu.org>
-
- * Makefile.in.in: Upgrade to gettext-0.10.38.
-
-2001-08-02 gettextize <bug-gnu-utils@gnu.org>
-
- * Makefile.in.in: Upgrade to gettext-0.10.38.
-
-2001-08-02 gettextize <bug-gnu-utils@gnu.org>
-
- * Makefile.in.in: Upgrade to gettext-0.10.38.
-
-2001-07-31 gettextize <bug-gnu-utils@gnu.org>
-
- * Makefile.in.in: Upgrade to gettext-0.10.38.
-
-2001-07-30 gettextize <bug-gnu-utils@gnu.org>
-
- * Makefile.in.in: Upgrade to gettext-0.10.38.
-
-2001-07-30 gettextize <bug-gnu-utils@gnu.org>
-
- * Makefile.in.in: Upgrade to gettext-0.10.38.
-
-2001-07-30 gettextize <bug-gnu-utils@gnu.org>
-
- * Makefile.in.in: Upgrade to gettext-0.10.38.
-
-2001-07-30 gettextize <bug-gnu-utils@gnu.org>
-
- * Makefile.in.in: Upgrade to gettext-0.10.38.
-
-2001-07-29 gettextize <bug-gnu-utils@gnu.org>
-
- * Makefile.in.in: Upgrade to gettext-0.10.38.
-
-2001-07-13 gettextize <bug-gnu-utils@gnu.org>
-
- * Makefile.in.in: Upgrade to gettext-0.10.38.
-
-2001-07-13 gettextize <bug-gnu-utils@gnu.org>
-
- * Makefile.in.in: Upgrade to gettext-0.10.38.
- * cat-id-tbl.c: Remove file.
- * stamp-cat-id: Remove file.
-
diff --git a/po/Makefile.in.in b/po/Makefile.in.in
deleted file mode 100644
index 28726a21f..000000000
--- a/po/Makefile.in.in
+++ /dev/null
@@ -1,196 +0,0 @@
-# Makefile for program source directory in GNU NLS utilities package.
-# Copyright (C) 1995-1997, 2000, 2001 by Ulrich Drepper <drepper@gnu.ai.mit.edu>
-#
-# This file file be copied and used freely without restrictions. It can
-# be used in projects which are not available under the GNU General Public License
-# but which still want to provide support for the GNU gettext functionality.
-# Please note that the actual code is *not* freely available.
-
-PACKAGE = @PACKAGE@
-VERSION = @VERSION@
-
-# These two variables depend on the location of this directory.
-subdir = po
-top_builddir = ..
-
-SHELL = /bin/sh
-@SET_MAKE@
-
-srcdir = @srcdir@
-top_srcdir = @top_srcdir@
-VPATH = @srcdir@
-
-prefix = @prefix@
-exec_prefix = @exec_prefix@
-datadir = @datadir@
-localedir = $(datadir)/locale
-gettextsrcdir = $(datadir)/gettext/po
-
-INSTALL = @INSTALL@
-INSTALL_DATA = @INSTALL_DATA@
-MKINSTALLDIRS = @MKINSTALLDIRS@
-mkinstalldirs = $(SHELL) `case "$(MKINSTALLDIRS)" in /*) echo "$(MKINSTALLDIRS)" ;; *) echo "$(top_builddir)/$(MKINSTALLDIRS)" ;; esac`
-
-CC = @CC@
-GMSGFMT = @GMSGFMT@
-MSGFMT = @MSGFMT@
-XGETTEXT = @XGETTEXT@
-MSGMERGE = msgmerge
-
-DEFS = @DEFS@
-CFLAGS = @CFLAGS@
-CPPFLAGS = @CPPFLAGS@
-
-INCLUDES = -I.. -I$(top_srcdir)/intl
-
-COMPILE = $(CC) -c $(DEFS) $(INCLUDES) $(CPPFLAGS) $(CFLAGS) $(XCFLAGS)
-
-POFILES = @POFILES@
-GMOFILES = @GMOFILES@
-DISTFILES = ChangeLog Makefile.in.in POTFILES.in $(PACKAGE).pot \
-$(POFILES) $(GMOFILES)
-
-POTFILES = \
-
-CATALOGS = @CATALOGS@
-
-.SUFFIXES:
-.SUFFIXES: .c .o .po .pox .gmo .mo
-
-.c.o:
- $(COMPILE) $<
-
-.po.pox:
- $(MAKE) $(PACKAGE).pot
- $(MSGMERGE) $< $(srcdir)/$(PACKAGE).pot -o $*.pox
-
-.po.mo:
- $(MSGFMT) -o $@ $<
-
-.po.gmo:
- file=$(srcdir)/`echo $* | sed 's,.*/,,'`.gmo \
- && rm -f $$file && $(GMSGFMT) --statistics -o $$file $<
-
-
-all: all-@USE_NLS@
-
-all-yes: $(CATALOGS)
-all-no:
-
-# Note: Target 'all' must not depend on target '$(srcdir)/$(PACKAGE).pot',
-# otherwise packages like GCC can not be built if only parts of the source
-# have been downloaded.
-
-$(srcdir)/$(PACKAGE).pot: $(POTFILES) $(srcdir)/POTFILES.in
- $(XGETTEXT) --default-domain=$(PACKAGE) --directory=$(top_srcdir) \
- --add-comments --keyword=_ --keyword=N_ \
- --files-from=$(srcdir)/POTFILES.in \
- && test ! -f $(PACKAGE).po \
- || ( rm -f $(srcdir)/$(PACKAGE).pot \
- && mv $(PACKAGE).po $(srcdir)/$(PACKAGE).pot )
-
-
-install: install-exec install-data
-install-exec:
-install-data: install-data-@USE_NLS@
- if test "$(PACKAGE)" = "gettext"; then \
- $(mkinstalldirs) $(DESTDIR)$(gettextsrcdir); \
- $(INSTALL_DATA) $(srcdir)/Makefile.in.in \
- $(DESTDIR)$(gettextsrcdir)/Makefile.in.in; \
- else \
- : ; \
- fi
-install-data-no: all
-install-data-yes: all
- $(mkinstalldirs) $(DESTDIR)$(datadir)
- @catalogs='$(CATALOGS)'; \
- for cat in $$catalogs; do \
- cat=`basename $$cat`; \
- lang=`echo $$cat | sed 's/\.gmo$$//'`; \
- dir=$(localedir)/$$lang/LC_MESSAGES; \
- $(mkinstalldirs) $(DESTDIR)$$dir; \
- if test -r $$cat; then \
- $(INSTALL_DATA) $$cat $(DESTDIR)$$dir/$(PACKAGE).mo; \
- echo "installing $$cat as $(DESTDIR)$$dir/$(PACKAGE).mo"; \
- else \
- $(INSTALL_DATA) $(srcdir)/$$cat $(DESTDIR)$$dir/$(PACKAGE).mo; \
- echo "installing $(srcdir)/$$cat as" \
- "$(DESTDIR)$$dir/$(PACKAGE).mo"; \
- fi; \
- done
-
-# Define this as empty until I found a useful application.
-installcheck:
-
-uninstall:
- catalogs='$(CATALOGS)'; \
- for cat in $$catalogs; do \
- cat=`basename $$cat`; \
- lang=`echo $$cat | sed 's/\.gmo$$//'`; \
- rm -f $(DESTDIR)$(localedir)/$$lang/LC_MESSAGES/$(PACKAGE).mo; \
- done
- if test "$(PACKAGE)" = "gettext"; then \
- rm -f $(DESTDIR)$(gettextsrcdir)/Makefile.in.in; \
- else \
- : ; \
- fi
-
-check: all
-
-dvi info tags TAGS ID:
-
-mostlyclean:
- rm -f core core.* *.pox $(PACKAGE).po *.new.po
- rm -fr *.o
-
-clean: mostlyclean
-
-distclean: clean
- rm -f Makefile Makefile.in POTFILES *.mo
-
-maintainer-clean: distclean
- @echo "This command is intended for maintainers to use;"
- @echo "it deletes files that may require special tools to rebuild."
- rm -f $(GMOFILES)
-
-distdir = $(top_builddir)/$(PACKAGE)-$(VERSION)/$(subdir)
-dist distdir:
- $(MAKE) update-po
- @$(MAKE) dist2
-# This is a separate target because 'update-po' must be executed before.
-dist2: $(DISTFILES)
- dists="$(DISTFILES)"; \
- for file in $$dists; do \
- if test -f $$file; then dir=.; else dir=$(srcdir); fi; \
- cp -p $$dir/$$file $(distdir); \
- done
-
-update-po: Makefile
- $(MAKE) $(PACKAGE).pot
- if test "$(PACKAGE)" = "gettext"; then PATH=`pwd`/../src:$$PATH; fi; \
- cd $(srcdir); \
- catalogs='$(GMOFILES)'; \
- for cat in $$catalogs; do \
- cat=`basename $$cat`; \
- lang=`echo $$cat | sed 's/\.gmo$$//'`; \
- echo "$$lang:"; \
- if $(MSGMERGE) $$lang.po $(PACKAGE).pot -o $$lang.new.po; then \
- mv -f $$lang.new.po $$lang.po; \
- else \
- echo "msgmerge for $$cat failed!"; \
- rm -f $$lang.new.po; \
- fi; \
- done
- $(MAKE) update-gmo
-
-update-gmo: Makefile $(GMOFILES)
- @:
-
-Makefile: Makefile.in.in $(top_builddir)/config.status POTFILES.in
- cd $(top_builddir) \
- && CONFIG_FILES=$(subdir)/$@.in CONFIG_HEADERS= \
- $(SHELL) ./config.status
-
-# Tell versions [3.59,3.63) of GNU make not to export all variables.
-# Otherwise a system limit (for SysV at least) may be exceeded.
-.NOEXPORT:
diff --git a/po/POTFILES.in b/po/POTFILES.in
deleted file mode 100644
index a0b3c552e..000000000
--- a/po/POTFILES.in
+++ /dev/null
@@ -1,3 +0,0 @@
-# List of source files containing translatable strings.
-
-src/main.c
diff --git a/po/enlightenment.pot b/po/enlightenment.pot
deleted file mode 100644
index a3edd9568..000000000
--- a/po/enlightenment.pot
+++ /dev/null
@@ -1,15 +0,0 @@
-# SOME DESCRIPTIVE TITLE.
-# Copyright (C) YEAR Free Software Foundation, Inc.
-# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
-#
-#, fuzzy
-msgid ""
-msgstr ""
-"Project-Id-Version: PACKAGE VERSION\n"
-"POT-Creation-Date: 2000-11-02 16:32-0800\n"
-"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
-"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
-"Language-Team: LANGUAGE <LL@li.org>\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=CHARSET\n"
-"Content-Transfer-Encoding: ENCODING\n"
diff --git a/setup-gettext.sh b/setup-gettext.sh
deleted file mode 100755
index fd45c037f..000000000
--- a/setup-gettext.sh
+++ /dev/null
@@ -1,202 +0,0 @@
-#!/bin/sh
-#
-# setup-gettext - Provides compatibility with versions of gettext
-# from the 0.10.x series and 0.11.x.
-#
-# Copyright (C) 2002 Christian Hammond.
-#
-# This program is free software; you can redistribute it and/or
-# modify it under the terms of the GNU General Public License as
-# published by the Free Software Foundation; either version 2 of
-# the License, or (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public
-# License along with this program; if not, write to the Free
-# Software Foundation, Inc., 59 Temple Place, Suite 330, Boston,
-# MA 02111-1307 USA
-#
-
-VERSION=0.1.3
-
-VERBOSE=0
-
-parse_gettext_version() {
- GETTEXT_VERSION=`$GETTEXT_TOOL --version | sed -n 's/^.*\([0-9]\+\)\.\([0-9]\+\)\.\([0-9]\+\).*$/\1.\2.\3/p'`
- GETTEXT_MAJOR_VERSION=`echo $GETTEXT_VERSION | sed -n 's/^\([0-9]\+\).*/\1/p'`
- GETTEXT_MINOR_VERSION=`echo $GETTEXT_VERSION | sed -n 's/^[0-9]\+\.\([0-9]\+\).*/\1/p'`
- GETTEXT_MICRO_VERSION=`echo $GETTEXT_VERSION | sed -n 's/^[0-9]\+\.[0-9]\+\.\([0-9]\+\).*/\1/p'`
-}
-
-find_gettext() {
- GETTEXT_TOOL=autopoint
-
- (autopoint --version) < /dev/null > /dev/null 2>&1 || {
- GETTEXT_TOOL=gettextize
-
- (gettextize --version) < /dev/null > /dev/null 2>&1 || {
- GETTEXT_TOOL=
- }
- }
-}
-
-install() {
- [ -f configure.in ] && {
- cp configure.in .tmp-configure.in
- sed -e 's/^AM_GNU_GETTEXT\(.*\)$/AM_GNU_GETTEXT\1\
-AM_GNU_GETTEXT_VERSION(0.10.40)/' < .tmp-configure.in > configure.in
- rm .tmp-configure.in
- }
-
- [ -f configure.ac ] && {
- cp configure.ac .tmp-configure.ac
- sed -e 's/^AM_GNU_GETTEXT\(.*\)$/AM_GNU_GETTEXT\1\
-AM_GNU_GETTEXT_VERSION(0.10.40)/' < .tmp-configure.ac > configure.ac
- rm .tmp-configure.ac
- }
-
- [ -f autogen.sh ] && {
- cp autogen.sh .tmp-autogen.sh
- sed -e 's/\(gettextize\|autopoint\) --version/.\/setup-gettext --gettext-tool/1' -e 's/^\(echo.*|[\t ]*\)\?\(gettextize\|autopoint\) -.*$/.\/setup-gettext/1' < .tmp-autogen.sh > autogen.sh
- rm .tmp-autogen.sh
- }
-
- echo 'AC_DEFUN([AM_GNU_GETTEXT_VERSION], [])' >> acinclude.m4
-}
-
-backup_m4() {
- [ -d m4 ] && mv m4 m4~
-}
-
-restore_m4() {
- [ -d m4~ ] && {
- rm -rf m4
- mv m4~ m4
- }
-}
-
-restore_files() {
- [ -f configure.in~ ] && mv -f configure.in~ configure.in
- [ -f configure.ac~ ] && mv -f configure.ac~ configure.ac
- [ -f Makefile.am~ ] && mv -f Makefile.am~ Makefile.am
-}
-
-abort() {
- restore_files
- restore_m4
-
- exit 1
-}
-
-# Main code
-
-find_gettext
-
-# See if a version of gettext and its tools are installed.
-if [ x$GETTEXT_TOOL = x ]; then
- echo
- echo "You do not have a version of gettext installed."
- echo "Please download one from your local package repository or"
- echo "from ftp://ftp.gnu.org/pub/gnu/gettext/"
- echo
- exit 1
-fi
-
-parse_gettext_version
-
-NUMVAR=$#
-
-if [ $NUMVAR -gt 0 ]; then
- if [ $NUMVAR -gt 1 ]; then
- echo "Only one option at a time!"
- exit 1
-
- elif [ $1 = "--gettext-tool" ]; then
- echo $GETTEXT_TOOL
- exit 0
-
- elif [ $1 = "--help" ]; then
- echo "setup-gettext v$VERSION"
- echo "Usage:"
- echo " --gettext-tool Returns gettextize or autopoint, depending"
- echo " on the version of gettext installed."
- echo " --gettext-version Returns the version of gettext installed."
- echo " --gettext-major-version Returns the major version of gettext installed."
- echo " --gettext-minor-version Returns the minor version of gettext installed."
- echo " --gettext-micro-version Returns the micro version of gettext installed."
- echo " --help Displays this help screen."
- echo
- exit 0
-
- elif [ $1 = "--version" ]; then
- echo $VERSION
- exit 0
-
- elif [ $1 = "--gettext-version" ]; then
- echo $GETTEXT_VERSION
- exit 0
-
- elif [ $1 = "--gettext-major-version" ]; then
- echo $GETTEXT_MAJOR_VERSION
- exit 0
-
- elif [ $1 = "--gettext-minor-version" ]; then
- echo $GETTEXT_MINOR_VERSION
- exit 0
-
- elif [ $1 = "--gettext-micro-version" ]; then
- echo $GETTEXT_MICRO_VERSION
- exit 0
-
- elif [ $1 = "--install" ]; then
- install
- echo "setup-gettext installed."
- exit 0
-
- elif [ $1 = "--happy-url" ]; then
- echo http://gaim.sf.net/forkgettext.jpg
- exit 0
-
- elif [ $1 = "--verbose" ]; then
- VERBOSE=1
-
- else
- echo "Invalid option '$1'"
- exit 1
- fi
-fi
-
-# Okay, run the main stuff
-if [ "$GETTEXT_TOOL" = "autopoint" ]; then
- backup_m4
- [ $VERBOSE -eq 1 ] && echo " autopoint --force"
- echo n | autopoint --force || abort
- restore_m4
-else
- if [ $GETTEXT_MINOR_VERSION -eq 11 ]; then
- backup_m4
-
- # Gettext is pure evil. It DEMANDS that we press Return no matter
- # what. This gets rid of their happy "feature" of doom.
- [ $VERBOSE -eq 1 ] && \
- echo " gettextize --copy --force --intl --no-changelog"
-
- sed 's:read .*< /dev/tty::' `which gettextize` > .temp-gettextize
- chmod +x .temp-gettextize
- echo n | ./.temp-gettextize --copy --force --intl --no-changelog || abort
- rm .temp-gettextize
-
- restore_files
- restore_m4
-
- [ -f po/Makevars.template ] && mv po/Makevars.template po/Makevars
- else
- [ $VERBOSE -eq 1 ] && echo " gettextize --copy --force"
- echo n | gettextize --copy --force || exit;
- fi
-fi
-
diff --git a/src/.cvsignore b/src/.cvsignore
deleted file mode 100644
index ed69a9f1b..000000000
--- a/src/.cvsignore
+++ /dev/null
@@ -1,10 +0,0 @@
-e
-*.o
-*.lo
-core
-Makefile.in
-Makefile
-enlightenment
-.libs
-.deps
-e_ferite_gen_*
diff --git a/src/.indent.pro b/src/.indent.pro
deleted file mode 100644
index f3a18c4e9..000000000
--- a/src/.indent.pro
+++ /dev/null
@@ -1,14 +0,0 @@
--i3
--bl
--bad
--nbap
--sob
--ncdb
--di20
--nbc
--lp
--nce
--npcs
--sc
--ncs
--l80
diff --git a/src/Makefile.am b/src/Makefile.am
deleted file mode 100644
index a4f92ed00..000000000
--- a/src/Makefile.am
+++ /dev/null
@@ -1,58 +0,0 @@
-## Process this file with automake to produce Makefile.in
-
-## Enable -DDEBUG for debugging messages, -DDEBUG_NEST
-## for call tracing. Caution -- this will produce a *lot*
-## of output!
-DEBUGFLAGS = -W -Wall -g -DDEBUG #-DDEBUG_NEST
-
-INCLUDES = \
- @evas_cflags@ @edb_cflags@ @ebits_cflags@ @ecore_cflags@ @efsd_cflags@ @ebg_cflags@ $(DEBUGFLAGS)
-
-bin_PROGRAMS = enlightenment
-
-enlightenment_SOURCES = \
- actions.h actions.c \
- block.c block.h \
- border.h border.c \
- bordermenu.h bordermenu.c \
- menu.h menu.c \
- menubuild.h menubuild.c \
- config.h config.c \
- cursors.c cursors.h \
- data.c data.h \
- debug.c debug.h \
- delayed.h delayed.c \
- desktops.h desktops.c \
- embed.c embed.h \
- entry.h entry.c \
- exec.h exec.c \
- focus.h focus.c \
- file.h file.c \
- fs.h fs.c \
- guides.h guides.c \
- globals.h globals.c \
- icccm.h icccm.c \
- iconbar.h iconbar.c \
- icons.h icons.c \
- ipc.h ipc.c \
- keys.h keys.c \
- main.c \
- match.c match.h \
- object.h object.c \
- observer.h observer.c\
- pack.c \
- place.c place.h \
- resist.h resist.c \
- scrollbar.h scrollbar.c \
- shelf.c \
- text.h text.c \
- util.h util.c \
- view.h view.c \
- e_file.h e_file.c \
- e_dir.h e_dir.c \
- e_view_machine.h e_view_machine.c \
- view_layout.h view_layout.c \
- e_view_look.h e_view_look.c \
- e.h
-
-enlightenment_LDADD = @evas_libs@ @edb_libs@ @ebits_libs@ @ecore_libs@ @efsd_libs@ @ebg_libs@ -lm
diff --git a/src/actions.c b/src/actions.c
deleted file mode 100644
index de7525fd3..000000000
--- a/src/actions.c
+++ /dev/null
@@ -1,1871 +0,0 @@
-#include "actions.h"
-#include "config.h"
-#include "debug.h"
-#include "border.h"
-#include "desktops.h"
-#include "exec.h"
-#include "icccm.h"
-#include "keys.h"
-#include "e_view_machine.h"
-#include "util.h"
-#include "guides.h"
-#include "bordermenu.h"
-#include "block.h"
-
-static Evas_List * action_impls = NULL;
-static Evas_List * current_actions = NULL;
-static Evas_List * current_timers = NULL;
-
-static void e_action_find(char *action, E_Action_Type act, int button,
- char *key, Ecore_Event_Key_Modifiers mods,
- E_Object * object);
-
-static void e_act_move_start(E_Object * object, E_Action * a,
- void *data, int x, int y, int rx, int ry);
-
-static void e_act_move_stop(E_Object * object, E_Action * a, void *data,
- int x, int y, int rx, int ry);
-
-static void e_act_move_cont(E_Object * object, E_Action * a, void *data,
- int x, int y, int rx, int ry, int dx,
- int dy);
-
-static void e_act_resize_start(E_Object * object, E_Action * a,
- void *data, int x, int y, int rx,
- int ry);
-
-static void e_act_resize_stop(E_Object * object, E_Action * a,
- void *data, int x, int y, int rx, int ry);
-
-static void e_act_resize_cont(E_Object * object, E_Action * a,
- void *data, int x, int y, int rx, int ry,
- int dx, int dy);
-
-static void e_act_resize_h_start(E_Object * object, E_Action * a,
- void *data, int x, int y, int rx,
- int ry);
-
-static void e_act_resize_h_stop(E_Object * object, E_Action * a,
- void *data, int x, int y, int rx,
- int ry);
-
-static void e_act_resize_h_cont(E_Object * object, E_Action * a,
- void *data, int x, int y, int rx,
- int ry, int dx, int dy);
-
-static void e_act_resize_v_start(E_Object * object, E_Action * a,
- void *data, int x, int y, int rx,
- int ry);
-
-static void e_act_resize_v_stop(E_Object * object, E_Action * a,
- void *data, int x, int y, int rx,
- int ry);
-
-static void e_act_resize_v_cont(E_Object * object, E_Action * a,
- void *data, int x, int y, int rx,
- int ry, int dx, int dy);
-
-static void e_act_close_start(E_Object * object, E_Action * a,
- void *data, int x, int y, int rx, int ry);
-
-static void e_act_kill_start(E_Object * object, E_Action * a,
- void *data, int x, int y, int rx, int ry);
-
-static void e_act_shade_start(E_Object * object, E_Action * a,
- void *data, int x, int y, int rx, int ry);
-
-static void e_act_raise_start(E_Object * object, E_Action * a,
- void *data, int x, int y, int rx, int ry);
-
-static void e_act_lower_start(E_Object * object, E_Action * a,
- void *data, int x, int y, int rx, int ry);
-
-static void e_act_raise_lower_start(E_Object * object, E_Action * a,
- void *data, int x, int y, int rx,
- int ry);
-
-static void e_act_exec_start(E_Object * object, E_Action * a,
- void *data, int x, int y, int rx, int ry);
-
-static void e_act_menu_start(E_Object * object, E_Action * a,
- void *data, int x, int y, int rx, int ry);
-#if 0
-static void e_act_exit_start(E_Object * object, E_Action * a,
- void *data, int x, int y, int rx, int ry);
-
-static void e_act_restart_start(E_Object * object, E_Action * a,
- void *data, int x, int y, int rx,
- int ry);
-#endif
-static void e_act_stick_start(E_Object * object, E_Action * a,
- void *data, int x, int y, int rx, int ry);
-
-static void e_act_sound_start(E_Object * object, E_Action * a,
- void *data, int x, int y, int rx, int ry);
-
-static void e_act_iconify_start(E_Object * object, E_Action * a,
- void *data, int x, int y, int rx,
- int ry);
-
-static void e_act_max_start(E_Object * object, E_Action * a, void *data,
- int x, int y, int rx, int ry);
-
-static void e_act_snap_start(E_Object * object, E_Action * a,
- void *data, int x, int y, int rx, int ry);
-
-static void e_act_zoom_start(E_Object * object, E_Action * a,
- void *data, int x, int y, int rx, int ry);
-
-static void e_act_desk_start(E_Object * object, E_Action * a,
- void *data, int x, int y, int rx, int ry);
-
-static void e_act_raise_next_start(E_Object * object, E_Action * a,
- void *data, int x, int y, int rx,
- int ry);
-
-static void e_act_desk_rel_start(E_Object * object, E_Action * a,
- void *data, int x, int y, int rx,
- int ry);
-
-static void
-e_action_find(char *action, E_Action_Type act, int button,
- char *key, Ecore_Event_Key_Modifiers mods, E_Object * object)
-{
- Evas_List *l;
- E_Action *a;
-
- D_ENTER;
-
- /* run thru our actions list and match event, state and stuff with an */
- /* and action for it */
- for (l = config_data->actions; l; l = l->next)
- {
- Evas_List * ll;
-
- a = l->data;
- if (act != a->event)
- goto next;
- if (!((a->name) && (action) && (!strcmp(a->name, action))))
- goto next;
- if ((act >= ACT_MOUSE_CLICK) &&
- (act <= ACT_MOUSE_CLICKED) &&
- (!((a->button == -1) || (a->button == button))))
- goto next;
- if ((act >= ACT_KEY_DOWN) &&
- (act <= ACT_KEY_UP) &&
- (!((a->key) && (key) && (!strcmp(a->key, key)))))
- goto next;
- if ((act >= ACT_MOUSE_CLICK) &&
- (act <= ACT_KEY_UP) &&
- (!((a->modifiers == -1) || (a->modifiers == (int)mods))))
- goto next;
- for (ll = action_impls; ll; ll = ll->next)
- {
- E_Action_Impl *ap;
-
- ap = ll->data;
- if (!strcmp(ap->action, a->action))
- {
- E_Action *aa;
-
- aa = NEW(E_Action, 1);
- ZERO(aa, E_Action, 1);
-
- e_object_init(E_OBJECT(aa),
- (E_Cleanup_Func) e_action_cleanup);
-
- e_strdup(aa->name, a->name);
- e_strdup(aa->action, a->action);
- e_strdup(aa->params, a->params);
- aa->event = a->event;
- aa->button = a->button;
- e_strdup(aa->key, a->key);
- aa->modifiers = a->modifiers;
-
- aa->action_impl = ap;
- e_object_ref(E_OBJECT(ap));
-
- aa->object = object;
- e_object_ref(object);
-
- aa->started = 0;
- current_actions = evas_list_append(current_actions, aa);
- }
- }
- next:
- }
-
- D_RETURN;
-}
-
-void
-e_action_cleanup(E_Action * a)
-{
- D_ENTER;
-
- /* it's a key? lets ungrab it! */
- if ((a->key) && (strlen(a->key) > 0) && (a->grabbed))
- {
- if (a->modifiers == -1)
- e_keys_ungrab(a->key, ECORE_EVENT_KEY_MODIFIER_NONE, 1);
- else
- e_keys_ungrab(a->key, (Ecore_Event_Key_Modifiers) a->modifiers, 0);
- }
-
- /* Clean up the strings by simply freeing them ... */
- IF_FREE(a->name);
- IF_FREE(a->action);
- IF_FREE(a->params);
- IF_FREE(a->key);
-
- /* Cleanup action implementations and objects. These
- * we don't free directly, but just decrement their use counts.
- */
-
- if (a->action_impl)
- {
- e_object_unref(E_OBJECT(a->action_impl));
- a->action_impl = NULL;
- }
-
- if (a->object)
- {
- e_object_unref(a->object);
- a->object = NULL;
- }
-
- /* Cleanup superclass. */
- e_object_cleanup(E_OBJECT(a));
-
- D_RETURN;
-}
-
-int
-e_action_start(char *action, E_Action_Type act, int button,
- char *key, Ecore_Event_Key_Modifiers mods,
- E_Object * object, void *data, int x, int y, int rx, int ry)
-{
- Evas_List * l;
- int started_long_action = 0;
-
- D_ENTER;
-
- e_action_find(action, act, button, key, mods, object);
- again:
- for (l = current_actions; l; l = l->next)
- {
- E_Action *a;
-
- a = l->data;
- if (!a->started)
- {
- if (a->action_impl->func_stop)
- {
- a->started = 1;
- started_long_action = 1;
- }
- if (a->action_impl->func_start)
- {
- a->action_impl->func_start(a->object, a, data, x, y, rx, ry);
- }
- }
- if (!a->started)
- {
- current_actions = evas_list_remove(current_actions, a);
- e_object_unref(E_OBJECT(a));
- goto again;
- }
- }
-
- D_RETURN_(started_long_action);
-}
-
-void
-e_action_stop(char *action, E_Action_Type act, int button,
- char *key, Ecore_Event_Key_Modifiers mods, E_Object * object,
- void *data, int x, int y, int rx, int ry)
-{
- Evas_List * l;
-
- D_ENTER;
-
- again:
- for (l = current_actions; l; l = l->next)
- {
- E_Action *a;
-
- a = l->data;
- if ((a->started) && (a->action_impl->func_stop))
- {
- int ok = 0;
-
- if ((a->event == ACT_MOUSE_IN) && (act == ACT_MOUSE_OUT))
- ok = 1;
- if ((a->event == ACT_MOUSE_OUT) && (act == ACT_MOUSE_IN))
- ok = 1;
- if ((a->event >= ACT_MOUSE_CLICK) &&
- (a->event <= ACT_MOUSE_TRIPLE) &&
- (act >= ACT_MOUSE_UP) &&
- (act <= ACT_MOUSE_CLICKED) && (a->button == button))
- ok = 1;
- if ((a->event == ACT_MOUSE_MOVE) &&
- ((act == ACT_MOUSE_OUT) ||
- (act == ACT_MOUSE_IN) ||
- ((act >= ACT_MOUSE_CLICK) &&
- (act <= ACT_MOUSE_TRIPLE)) || (act >= ACT_MOUSE_UP)))
- ok = 1;
- if ((a->event == ACT_KEY_DOWN) &&
- (act == ACT_KEY_UP) &&
- (key) && (a->key) && (!strcmp(key, a->key)))
- ok = 1;
- if ((a->event == ACT_KEY_UP) && (act == ACT_KEY_DOWN))
- ok = 1;
- if (ok)
- {
- a->action_impl->func_stop(a->object, a, data, x, y, rx, ry);
- a->started = 0;
- }
- }
- if (!a->started)
- {
- current_actions = evas_list_remove(current_actions, a);
- e_object_unref(E_OBJECT(a));
- goto again;
- }
- }
-
- D_RETURN;
- UN(action);
- UN(mods);
- UN(object);
-}
-
-void
-e_action_cont(char *action, E_Action_Type act, int button, char *key,
- Ecore_Event_Key_Modifiers mods, E_Object * object, void *data,
- int x, int y, int rx, int ry, int dx, int dy)
-{
- Evas_List * l;
-
- D_ENTER;
-
- for (l = current_actions; l; l = l->next)
- {
- E_Action *a;
-
- a = l->data;
- if ((a->started) && (a->action_impl->func_cont))
- a->action_impl->func_cont(a->object, a, data, x, y, rx, ry, dx, dy);
- }
-
- D_RETURN;
- UN(action);
- UN(act);
- UN(button);
- UN(key);
- UN(mods);
- UN(object);
-}
-
-void
-e_action_stop_by_object(E_Object * object, void *data, int x, int y, int rx,
- int ry)
-{
- Evas_List * l;
-
- D_ENTER;
-
- e_action_del_timer_object(object);
-
- again:
- for (l = current_actions; l; l = l->next)
- {
- E_Action *a;
-
- a = l->data;
- if ((a->started) && (object == a->object))
- {
- if (a->action_impl->func_stop)
- a->action_impl->func_stop(a->object, a, data, x, y, rx, ry);
-
- a->started = 0;
-
- current_actions = evas_list_remove(current_actions, a);
- e_object_unref(E_OBJECT(a));
-
- goto again;
- }
- }
-
- D_RETURN;
-}
-
-void
-e_action_stop_by_type(char *action)
-{
- Evas_List * l;
-
- D_ENTER;
-
- for (l = current_actions; l; l = l->next)
- {
- E_Action *a;
-
- a = l->data;
- if ((a->started) && (a->action_impl->func_stop) &&
- (action) && (!strcmp(action, a->name)))
- {
- a->action_impl->func_stop(a->object, a, NULL, 0, 0, 0, 0);
- a->started = 0;
- }
- }
-
- D_RETURN;
-}
-
-static void
-e_action_impl_cleanup(E_Action_Impl * eai)
-{
- D_ENTER;
-
- IF_FREE(eai->action);
- e_object_cleanup(E_OBJECT(eai));
-
- D_RETURN;
-}
-
-void
-e_action_add_impl(char *action, E_Action_Start_Func func_start,
- E_Action_Cont_Func func_cont, E_Action_Stop_Func func_stop)
-{
- E_Action_Impl *ap;
-
- D_ENTER;
-
- ap = NEW(E_Action_Impl, 1);
- ZERO(ap, E_Action_Impl, 1);
-
- e_object_init(E_OBJECT(ap), (E_Cleanup_Func) e_action_impl_cleanup);
-
- e_strdup(ap->action, action);
- ap->func_start = func_start;
- ap->func_cont = func_cont;
- ap->func_stop = func_stop;
- action_impls = evas_list_append(action_impls, ap);
-
- D_RETURN;
-}
-
-void
-e_action_del_timer(E_Object * object, char *name)
-{
- Evas_List * l;
-
- D_ENTER;
-
- again:
- for (l = current_timers; l; l = l->next)
- {
- E_Active_Action_Timer *at;
-
- at = l->data;
- if ((at->object == object) &&
- (name) && (at->name) && (!strcmp(at->name, name)))
- {
- e_object_unref(at->object);
- ecore_del_event_timer(at->name);
- current_timers = evas_list_remove(current_timers, at);
- IF_FREE(at->name);
- FREE(at);
- goto again;
- }
- }
-
- D_RETURN;
-}
-
-void
-e_action_add_timer(E_Object * object, char *name)
-{
- E_Active_Action_Timer *at;
-
- D_ENTER;
-
- at = NEW(E_Active_Action_Timer, 1);
- at->object = object;
- e_object_ref(object);
- e_strdup(at->name, name);
- current_timers = evas_list_append(current_timers, at);
-
- D_RETURN;
-}
-
-void
-e_action_del_timer_object(E_Object * object)
-{
- Evas_List * l;
-
- D_ENTER;
-
- again:
- for (l = current_timers; l; l = l->next)
- {
- E_Active_Action_Timer *at;
-
- at = l->data;
- if (at->object == object)
- {
- e_object_unref(at->object);
- ecore_del_event_timer(at->name);
- current_timers = evas_list_remove(current_timers, at);
- IF_FREE(at->name);
- FREE(at);
- goto again;
- }
- }
-
- D_RETURN;
-}
-
-void
-e_action_init(void)
-{
- D_ENTER;
-
- e_action_add_impl("Window_Move", e_act_move_start, e_act_move_cont,
- e_act_move_stop);
- e_action_add_impl("Window_Resize", e_act_resize_start, e_act_resize_cont,
- e_act_resize_stop);
- e_action_add_impl("Window_Resize_Horizontal", e_act_resize_h_start,
- e_act_resize_h_cont, e_act_resize_h_stop);
- e_action_add_impl("Window_Resize_Vertical", e_act_resize_v_start,
- e_act_resize_v_cont, e_act_resize_v_stop);
- e_action_add_impl("Window_Close", e_act_close_start, NULL, NULL);
- e_action_add_impl("Window_Kill", e_act_kill_start, NULL, NULL);
- e_action_add_impl("Window_Shade", e_act_shade_start, NULL, NULL);
- e_action_add_impl("Window_Raise", e_act_raise_start, NULL, NULL);
- e_action_add_impl("Window_Lower", e_act_lower_start, NULL, NULL);
- e_action_add_impl("Window_Raise_Lower", e_act_raise_lower_start, NULL, NULL);
- e_action_add_impl("Execute", e_act_exec_start, NULL, NULL);
- e_action_add_impl("Menu", e_act_menu_start, NULL, NULL);
- e_action_add_impl("Exit", e_act_exit_start, NULL, NULL);
- e_action_add_impl("Restart", e_act_restart_start, NULL, NULL);
- e_action_add_impl("Window_Stick", e_act_stick_start, NULL, NULL);
- e_action_add_impl("Sound", e_act_sound_start, NULL, NULL);
- e_action_add_impl("Window_Iconify", e_act_iconify_start, NULL, NULL);
- e_action_add_impl("Window_Max_Size", e_act_max_start, NULL, NULL);
- e_action_add_impl("Winodw_Snap", e_act_snap_start, NULL, NULL);
- e_action_add_impl("Window_Zoom", e_act_zoom_start, NULL, NULL);
- e_action_add_impl("Desktop", e_act_desk_start, NULL, NULL);
- e_action_add_impl("Desktop_Relative", e_act_desk_rel_start, NULL, NULL);
- e_action_add_impl("Window_Next", e_act_raise_next_start, NULL, NULL);
-
- D_RETURN;
-}
-
-/* FIXME: these REALLY need to go into other file(s) but it's not worht it */
-/* yet at this point. it can be done later */
-
-/* Erm is that really true? They're all static, all called through the */
-/* above functions -- so it's good to have them encapsulated here? --cK */
-
-/* well i was thinking changing this to be a bunch of: */
-/* #include "action_windows.c" */
-/* #include "action_files.c" */
-/* #include "action_general.c" */
-/* etc. - group actions in files for their logical uses */
-/* kind of evil to inlucde c files.. but it means breaking it up better */
-/* probably moving these includes above the init and having hooks into the */
-/* init func */
-
-static void
-e_act_move_start(E_Object * object, E_Action * a, void *data, int x, int y,
- int rx, int ry)
-{
- E_Border *b;
- E_Guides_Mode move_mode = E_GUIDES_BOX;
- double align_x = 0.5;
- double align_y = 0.5;
- E_Guides_Location display_loc = E_GUIDES_DISPLAY_LOCATION_WINDOW_MIDDLE;
-
- D_ENTER;
-
- e_block_start("menus");
-
- b = (E_Border *) object;
-
- if (!b)
- b = e_border_current_focused();
-
- if (!b)
- D_RETURN;
-
- if (b->client.fixed)
- D_RETURN;
-
- move_mode = config_data->window->move_mode;
- display_loc = config_data->guides->location;
- align_x = config_data->guides->x;
- align_y = config_data->guides->y;
-
- if (move_mode >= E_GUIDES_BOX)
- b->hold_changes = 1; /* if non opaque */
- b->mode.move = 1;
- b->current.requested.dx = 0;
- b->current.requested.dy = 0;
- b->previous.requested.dx = 0;
- b->previous.requested.dy = 0;
-
- {
- char buf[PATH_MAX];
-
- e_border_print_pos(buf, b);
- e_guides_set_display_alignment(align_x, align_y);
- e_guides_set_mode(move_mode);
- e_guides_set_display_location(display_loc);
- e_guides_display_text(buf);
- snprintf(buf, PATH_MAX, "%s/%s", e_config_get("images"),
- "win_shadow_icon.png");
- e_guides_display_icon(buf);
- e_guides_move(b->current.x, b->current.y);
- e_guides_resize(b->current.w, b->current.h);
- e_guides_show();
- }
-
- D_RETURN;
- UN(a);
- UN(data);
- UN(x);
- UN(y);
- UN(rx);
- UN(ry);
-}
-
-static void
-e_act_move_stop(E_Object * object, E_Action * a, void *data, int x, int y,
- int rx, int ry)
-{
- E_Border *b;
-
- D_ENTER;
-
- b = (E_Border *) object;
-
- e_block_stop("menus");
-
- if (!b)
- b = e_border_current_focused();
-
- if (!b)
- D_RETURN;
-
- if (b->client.fixed)
- D_RETURN;
-
- b->hold_changes = 0; /* if non opaque */
- b->current.requested.x = b->current.x;
- b->current.requested.y = b->current.y;
- b->changed = 1;
- b->mode.move = 0;
- b->current.requested.dx = 0;
- b->current.requested.dy = 0;
- b->previous.requested.dx = 0;
- b->previous.requested.dy = 0;
- b->changed = 1;
- b->current.requested.visible = 1;
- b->current.visible = 1;
- e_border_adjust_limits(b);
- e_guides_hide();
- e_desktops_add_border(b->desk, b);
-
- D_RETURN;
- UN(a);
- UN(data);
- UN(x);
- UN(y);
- UN(rx);
- UN(ry);
-}
-
-static void
-e_act_move_cont(E_Object * object, E_Action * a, void *data, int x, int y,
- int rx, int ry, int dx, int dy)
-{
- E_Border *b;
-
- D_ENTER;
-
- b = (E_Border *) object;
-
- if (!b)
- b = e_border_current_focused();
-
- if (!b)
- D_RETURN;
-
- if (b->client.fixed)
- D_RETURN;
-
- b->current.requested.x += dx;
- b->current.requested.y += dy;
- if (dx != 0)
- b->current.requested.dx = dx;
- if (dy != 0)
- b->current.requested.dy = dy;
- b->changed = 1;
- e_border_adjust_limits(b);
- {
- char buf[1024];
-
- e_border_print_pos(buf, b);
- e_guides_move(b->current.x, b->current.y);
- e_guides_resize(b->current.w, b->current.h);
- e_guides_display_text(buf);
- }
-
- D_RETURN;
- UN(a);
- UN(data);
- UN(x);
- UN(y);
- UN(rx);
- UN(ry);
-}
-
-static void
-e_act_resize_start(E_Object * object, E_Action * a, void *data, int x, int y,
- int rx, int ry)
-{
- E_Border *b;
- E_Guides_Mode resize_mode = E_GUIDES_BOX;
- double align_x = 0.5;
- double align_y = 0.5;
- E_Guides_Location display_loc = E_GUIDES_DISPLAY_LOCATION_WINDOW_MIDDLE;
-
- D_ENTER;
-
- e_block_start("menus");
-
- b = (E_Border *) object;
- if (!b)
- b = e_border_current_focused();
- if (!b)
- D_RETURN;
- if (b->client.min.w == b->client.max.w)
- D_RETURN;
- if (b->client.min.h == b->client.max.h)
- D_RETURN;
- if (b->current.shaded != 0)
- D_RETURN;
-
- resize_mode = config_data->window->resize_mode;
- display_loc = config_data->guides->location;
- align_x = config_data->guides->x;
- align_y = config_data->guides->y;
-
- if (resize_mode >= E_GUIDES_BOX)
- b->hold_changes = 1; /* if non opaque */
- ecore_window_gravity_set(b->win.client, StaticGravity);
- ecore_window_gravity_set(b->win.b, SouthEastGravity);
- ecore_window_gravity_set(b->win.input, NorthWestGravity);
- ecore_window_gravity_set(b->win.container, NorthWestGravity);
- /* 1 | 2 */
- /* --+-- */
- /* 3 | 4 */
- if (x > (b->current.w / 2))
- {
- if (y > (b->current.h / 2))
- {
- b->mode.resize = 4;
- /* e_border_set_gravity(b, NorthWestGravity); */
- /* ecore_window_gravity_set(b->win.container, SouthEastGravity); */
- }
- else
- {
- b->mode.resize = 2;
- /* e_border_set_gravity(b, SouthWestGravity); */
- /* ecore_window_gravity_set(b->win.container, NorthEastGravity); */
- }
- }
- else
- {
- if (y > (b->current.h / 2))
- {
- b->mode.resize = 3;
-/* e_border_set_gravity(b, NorthEastGravity);*/
-/* ecore_window_gravity_set(b->win.container, SouthWestGravity);*/
- }
- else
- {
- b->mode.resize = 1;
-/* e_border_set_gravity(b, SouthEastGravity);*/
-/* ecore_window_gravity_set(b->win.container, NorthWestGravity); */
- }
- }
- {
- char buf[PATH_MAX];
-
- e_border_print_size(buf, b);
- e_guides_set_display_alignment(align_x, align_y);
- e_guides_set_mode(resize_mode);
- e_guides_set_display_location(display_loc);
- e_guides_display_text(buf);
- snprintf(buf, PATH_MAX, "%s/%s", e_config_get("images"),
- "win_shadow_icon.png");
- e_guides_display_icon(buf);
- e_guides_move(b->current.x, b->current.y);
- e_guides_resize(b->current.w, b->current.h);
- e_guides_show();
- }
-
- D_RETURN;
- UN(a);
- UN(data);
- UN(rx);
- UN(ry);
-}
-
-static void
-e_act_resize_stop(E_Object * object, E_Action * a, void *data, int x, int y,
- int rx, int ry)
-{
- E_Border *b;
-
- D_ENTER;
-
- e_block_stop("menus");
-
- b = (E_Border *) object;
- if (!b)
- b = e_border_current_focused();
- if (!b)
- D_RETURN;
- if (b->client.min.w == b->client.max.w)
- D_RETURN;
- if (b->client.min.h == b->client.max.h)
- D_RETURN;
- if (b->current.shaded != 0)
- D_RETURN;
- b->hold_changes = 0; /* if non opaque */
- b->current.requested.x = b->current.x;
- b->current.requested.y = b->current.y;
- b->current.requested.w = b->current.w;
- b->current.requested.h = b->current.h;
- b->mode.resize = 0;
- b->changed = 1;
- e_border_adjust_limits(b);
- ecore_window_gravity_set(b->win.client, NorthWestGravity);
- e_border_set_gravity(b, NorthWestGravity);
- e_guides_hide();
-
- D_RETURN;
- UN(a);
- UN(data);
- UN(x);
- UN(y);
- UN(rx);
- UN(ry);
-}
-
-static void
-e_act_resize_cont(E_Object * object, E_Action * a, void *data, int x, int y,
- int rx, int ry, int dx, int dy)
-{
- E_Border *b;
-
- D_ENTER;
-
- b = (E_Border *) object;
- if (!b)
- b = e_border_current_focused();
- if (!b)
- D_RETURN;
- if (b->client.min.w == b->client.max.w)
- D_RETURN;
- if (b->client.min.h == b->client.max.h)
- D_RETURN;
- if (b->current.shaded != 0)
- D_RETURN;
- if (b->mode.resize == 1)
- {
- b->current.requested.w -= dx;
- b->current.requested.h -= dy;
- b->current.requested.x += dx;
- b->current.requested.y += dy;
- }
- else if (b->mode.resize == 2)
- {
- b->current.requested.w += dx;
- b->current.requested.h -= dy;
- b->current.requested.y += dy;
- }
- else if (b->mode.resize == 3)
- {
- b->current.requested.w -= dx;
- b->current.requested.h += dy;
- b->current.requested.x += dx;
- }
- else if (b->mode.resize == 4)
- {
- b->current.requested.w += dx;
- b->current.requested.h += dy;
- }
- b->changed = 1;
- e_border_adjust_limits(b);
- {
- char buf[1024];
-
- e_border_print_size(buf, b);
- e_guides_move(b->current.x, b->current.y);
- e_guides_resize(b->current.w, b->current.h);
- e_guides_display_text(buf);
- }
-
- D_RETURN;
- UN(a);
- UN(data);
- UN(x);
- UN(y);
- UN(rx);
- UN(ry);
-}
-
-static void
-e_act_resize_h_start(E_Object * object, E_Action * a, void *data, int x, int y,
- int rx, int ry)
-{
- E_Border *b;
- E_Guides_Mode resize_mode = E_GUIDES_BOX;
- double align_x = 0.5;
- double align_y = 0.5;
- E_Guides_Location display_loc = E_GUIDES_DISPLAY_LOCATION_WINDOW_MIDDLE;
-
- D_ENTER;
-
- e_block_start("menus");
-
- b = (E_Border *) object;
- if (!b)
- b = e_border_current_focused();
- if (!b)
- D_RETURN;
- if (b->client.min.w == b->client.max.w)
- D_RETURN;
- if (b->current.shaded != 0)
- D_RETURN;
-
- resize_mode = config_data->window->resize_mode;
- display_loc = config_data->guides->location;
- align_x = config_data->guides->x;
- align_y = config_data->guides->y;
-
- if (resize_mode >= E_GUIDES_BOX)
- b->hold_changes = 1; /* if non opaque */
- ecore_window_gravity_set(b->win.client, StaticGravity);
- ecore_window_gravity_set(b->win.b, SouthEastGravity);
- ecore_window_gravity_set(b->win.input, NorthWestGravity);
- ecore_window_gravity_set(b->win.container, NorthWestGravity);
- /* 5 | 6 */
- if (x > (b->current.w / 2))
- {
- b->mode.resize = 6;
-/* e_border_set_gravity(b, NorthWestGravity);*/
- }
- else
- {
- b->mode.resize = 5;
-/* e_border_set_gravity(b, NorthEastGravity);*/
- }
- {
- char buf[PATH_MAX];
-
- e_border_print_size(buf, b);
- e_guides_set_display_alignment(align_x, align_y);
- e_guides_set_mode(resize_mode);
- e_guides_set_display_location(display_loc);
- e_guides_display_text(buf);
- snprintf(buf, PATH_MAX, "%s/%s", e_config_get("images"),
- "win_shadow_icon.png");
- e_guides_display_icon(buf);
- e_guides_move(b->current.x, b->current.y);
- e_guides_resize(b->current.w, b->current.h);
- e_guides_show();
- }
-
- D_RETURN;
- UN(a);
- UN(data);
- UN(y);
- UN(rx);
- UN(ry);
-}
-
-static void
-e_act_resize_h_stop(E_Object * object, E_Action * a, void *data, int x, int y,
- int rx, int ry)
-{
- E_Border *b;
-
- D_ENTER;
-
- e_block_stop("menus");
-
- b = (E_Border *) object;
- if (!b)
- b = e_border_current_focused();
- if (!b)
- D_RETURN;
- if (b->client.min.w == b->client.max.w)
- D_RETURN;
- if (b->current.shaded != 0)
- D_RETURN;
- b->hold_changes = 0; /* if non opaque */
- b->current.requested.x = b->current.x;
- b->current.requested.y = b->current.y;
- b->current.requested.w = b->current.w;
- b->current.requested.h = b->current.h;
- b->mode.resize = 0;
- b->changed = 1;
- e_border_adjust_limits(b);
- ecore_window_gravity_set(b->win.client, NorthWestGravity);
- e_border_set_gravity(b, NorthWestGravity);
- e_guides_hide();
-
- D_RETURN;
- UN(a);
- UN(data);
- UN(x);
- UN(y);
- UN(rx);
- UN(ry);
-}
-
-static void
-e_act_resize_h_cont(E_Object * object, E_Action * a, void *data, int x, int y,
- int rx, int ry, int dx, int dy)
-{
- E_Border *b;
-
- D_ENTER;
-
- b = (E_Border *) object;
- if (!b)
- b = e_border_current_focused();
- if (!b)
- D_RETURN;
- if (b->client.min.w == b->client.max.w)
- D_RETURN;
- if (b->current.shaded != 0)
- D_RETURN;
- if (b->mode.resize == 5)
- {
- b->current.requested.w -= dx;
- b->current.requested.x += dx;
- }
- else if (b->mode.resize == 6)
- {
- b->current.requested.w += dx;
- }
- b->changed = 1;
- e_border_adjust_limits(b);
- {
- char buf[1024];
-
- e_border_print_size(buf, b);
- e_guides_move(b->current.x, b->current.y);
- e_guides_resize(b->current.w, b->current.h);
- e_guides_display_text(buf);
- }
- D_RETURN;
- UN(a);
- UN(data);
- UN(x);
- UN(y);
- UN(rx);
- UN(ry);
- UN(dy);
-}
-
-static void
-e_act_resize_v_start(E_Object * object, E_Action * a, void *data, int x, int y,
- int rx, int ry)
-{
- E_Border *b;
- E_Guides_Mode resize_mode = E_GUIDES_BOX;
- double align_x = 0.5;
- double align_y = 0.5;
- E_Guides_Location display_loc = E_GUIDES_DISPLAY_LOCATION_WINDOW_MIDDLE;
-
- D_ENTER;
-
- e_block_start("menus");
-
- b = (E_Border *) object;
- if (!b)
- b = e_border_current_focused();
- if (!b)
- D_RETURN;
- if (b->client.min.h == b->client.max.h)
- D_RETURN;
- if (b->current.shaded != 0)
- D_RETURN;
-
- resize_mode = config_data->window->resize_mode;
- display_loc = config_data->guides->location;
- align_x = config_data->guides->x;
- align_y = config_data->guides->y;
-
- if (resize_mode >= E_GUIDES_BOX)
- b->hold_changes = 1; /* if non opaque */
- ecore_window_gravity_set(b->win.client, StaticGravity);
- ecore_window_gravity_set(b->win.b, SouthEastGravity);
- ecore_window_gravity_set(b->win.input, NorthWestGravity);
- ecore_window_gravity_set(b->win.container, NorthWestGravity);
- /* 7 */
- /* - */
- /* 8 */
- if (y > (b->current.h / 2))
- {
- b->mode.resize = 8;
-/* e_border_set_gravity(b, NorthWestGravity);*/
- }
- else
- {
- b->mode.resize = 7;
-/* e_border_set_gravity(b, SouthWestGravity);*/
- }
- {
- char buf[PATH_MAX];
-
- e_border_print_size(buf, b);
- e_guides_set_display_alignment(align_x, align_y);
- e_guides_set_mode(resize_mode);
- e_guides_set_display_location(display_loc);
- e_guides_display_text(buf);
- snprintf(buf, PATH_MAX, "%s/%s", e_config_get("images"),
- "win_shadow_icon.png");
- e_guides_display_icon(buf);
- e_guides_move(b->current.x, b->current.y);
- e_guides_resize(b->current.w, b->current.h);
- e_guides_show();
- }
- D_RETURN;
- UN(a);
- UN(data);
- UN(x);
- UN(rx);
- UN(ry);
-}
-
-static void
-e_act_resize_v_stop(E_Object * object, E_Action * a, void *data, int x, int y,
- int rx, int ry)
-{
- E_Border *b;
-
- D_ENTER;
-
- e_block_stop("menus");
-
- b = (E_Border *) object;
- if (!b)
- b = e_border_current_focused();
- if (!b)
- D_RETURN;
- if (b->client.min.h == b->client.max.h)
- D_RETURN;
- if (b->current.shaded != 0)
- D_RETURN;
- b->hold_changes = 0; /* if non opaque */
- b->current.requested.x = b->current.x;
- b->current.requested.y = b->current.y;
- b->current.requested.w = b->current.w;
- b->current.requested.h = b->current.h;
- b->mode.resize = 0;
- e_border_adjust_limits(b);
- ecore_window_gravity_set(b->win.client, NorthWestGravity);
- e_border_set_gravity(b, NorthWestGravity);
- b->changed = 1;
- e_guides_hide();
- D_RETURN;
- UN(a);
- UN(data);
- UN(x);
- UN(y);
- UN(rx);
- UN(ry);
-}
-
-static void
-e_act_resize_v_cont(E_Object * object, E_Action * a, void *data, int x, int y,
- int rx, int ry, int dx, int dy)
-{
- E_Border *b;
-
- D_ENTER;
-
- b = (E_Border *) object;
- if (!b)
- b = e_border_current_focused();
- if (!b)
- D_RETURN;
- if (b->client.min.h == b->client.max.h)
- D_RETURN;
- if (b->current.shaded != 0)
- D_RETURN;
- if (b->mode.resize == 7)
- {
- b->current.requested.h -= dy;
- b->current.requested.y += dy;
- }
- else if (b->mode.resize == 8)
- {
- b->current.requested.h += dy;
- }
- e_border_adjust_limits(b);
- b->changed = 1;
- {
- char buf[1024];
-
- e_border_print_size(buf, b);
- e_guides_move(b->current.x, b->current.y);
- e_guides_resize(b->current.w, b->current.h);
- e_guides_display_text(buf);
- }
- D_RETURN;
- UN(a);
- UN(data);
- UN(x);
- UN(y);
- UN(rx);
- UN(ry);
- UN(dx);
-}
-
-static void
-e_act_close_start(E_Object * object, E_Action * a, void *data, int x, int y,
- int rx, int ry)
-{
- E_Border *b;
-
- D_ENTER;
-
- b = (E_Border *) object;
- if (!b)
- b = e_border_current_focused();
- if (!b)
- D_RETURN;
- if (b->client.is_desktop)
- D_RETURN;
- if (b->win.client)
- e_icccm_delete(b->win.client);
-
- D_RETURN;
- UN(a);
- UN(data);
- UN(x);
- UN(y);
- UN(rx);
- UN(ry);
-}
-
-static void
-e_act_kill_start(E_Object * object, E_Action * a, void *data, int x, int y,
- int rx, int ry)
-{
- E_Border *b;
-
- D_ENTER;
-
- b = (E_Border *) object;
- if (!b)
- b = e_border_current_focused();
- if (!b)
- D_RETURN;
- if (b->client.is_desktop)
- D_RETURN;
- if (b->win.client)
- ecore_window_kill_client(b->win.client);
-
- D_RETURN;
- UN(a);
- UN(data);
- UN(x);
- UN(y);
- UN(rx);
- UN(ry);
-}
-
-static void e_act_cb_shade(int val, void *data);
-static void
-e_act_cb_shade(int val, void *data)
-{
- E_Border *b;
- static double t = 0.0;
- double dif;
- int si;
- int pix_per_sec = 3200;
-
- D_ENTER;
-
- b = data;
- if (!b)
- b = e_border_current_focused();
- if (!b)
- D_RETURN;
- if (b->client.is_desktop)
- D_RETURN;
-
- if (val == 0)
- {
- t = ecore_get_time();
- ecore_window_gravity_set(b->win.client, SouthWestGravity);
- e_action_del_timer(E_OBJECT(b), "shader");
- e_action_add_timer(E_OBJECT(b), "shader");
- }
-
- dif = ecore_get_time() - t;
-
- si = (int)(dif * (double)pix_per_sec);
- if (si > b->client.h)
- si = b->client.h;
- b->current.shaded = si;
- b->changed = 1;
- e_border_adjust_limits(b);
- e_border_apply_border(b);
- if (si < b->client.h)
- ecore_add_event_timer("shader", 0.01, e_act_cb_shade, 1, data);
- else
- {
- e_action_del_timer(E_OBJECT(b), "shader");
- ecore_window_gravity_reset(b->win.client);
- }
-
- D_RETURN;
-}
-
-static void e_act_cb_unshade(int val, void *data);
-static void
-e_act_cb_unshade(int val, void *data)
-{
- E_Border *b;
- static double t = 0.0;
- double dif;
- int si;
- int pix_per_sec = 3200;
-
- D_ENTER;
-
- b = data;
- if (!b)
- b = e_border_current_focused();
- if (!b)
- D_RETURN;
- if (b->client.is_desktop)
- D_RETURN;
- if (val == 0)
- {
- t = ecore_get_time();
- ecore_window_gravity_set(b->win.client, SouthWestGravity);
- e_action_del_timer(E_OBJECT(b), "shader");
- e_action_add_timer(E_OBJECT(b), "shader");
- }
-
- dif = ecore_get_time() - t;
-
- si = b->client.h - (int)(dif * (double)pix_per_sec);
- if (si < 0)
- si = 0;
-
- b->current.shaded = si;
- b->changed = 1;
- e_border_adjust_limits(b);
- e_border_apply_border(b);
- if (si > 0)
- ecore_add_event_timer("shader", 0.01, e_act_cb_unshade, 1, data);
- else
- {
- e_action_del_timer(E_OBJECT(b), "shader");
- ecore_window_gravity_reset(b->win.client);
- }
-
- D_RETURN;
-}
-
-static void
-e_act_shade_start(E_Object * object, E_Action * a, void *data, int x, int y,
- int rx, int ry)
-{
- E_Border *b;
-
- D_ENTER;
-
- b = (E_Border *) object;
- if (!b)
- b = e_border_current_focused();
- if (!b)
- D_RETURN;
-
- if (b->client.is_desktop)
- D_RETURN;
-
- if (b->current.shaded == 0)
- e_act_cb_shade(0, b);
- else
- e_act_cb_unshade(0, b);
-
- D_RETURN;
- UN(a);
- UN(data);
- UN(x);
- UN(y);
- UN(rx);
- UN(ry);
-}
-
-static void
-e_act_raise_start(E_Object * object, E_Action * a, void *data, int x, int y,
- int rx, int ry)
-{
- E_Border *b;
-
- D_ENTER;
-
- b = (E_Border *) object;
- if (!b)
- b = e_border_current_focused();
- if (!b)
- D_RETURN;
- if (b->client.is_desktop)
- D_RETURN;
- e_border_raise(b);
-
- D_RETURN;
- UN(a);
- UN(data);
- UN(x);
- UN(y);
- UN(rx);
- UN(ry);
-}
-
-static void
-e_act_lower_start(E_Object * object, E_Action * a, void *data, int x, int y,
- int rx, int ry)
-{
- E_Border *b;
-
- D_ENTER;
-
- b = (E_Border *) object;
- if (!b)
- b = e_border_current_focused();
- if (!b)
- D_RETURN;
- if (b->client.is_desktop)
- D_RETURN;
- e_border_lower(b);
-
- D_RETURN;
- UN(a);
- UN(data);
- UN(x);
- UN(y);
- UN(rx);
- UN(ry);
-}
-
-static void
-e_act_raise_lower_start(E_Object * object, E_Action * a, void *data, int x,
- int y, int rx, int ry)
-{
- E_Border *b;
-
- D_ENTER;
-
- b = (E_Border *) object;
- if (!b)
- b = e_border_current_focused();
- if (!b)
- D_RETURN;
- if (b->client.is_desktop)
- D_RETURN;
-
- D_RETURN;
- UN(a);
- UN(data);
- UN(x);
- UN(y);
- UN(rx);
- UN(ry);
-}
-
-static void
-e_act_exec_start(E_Object * object, E_Action * a, void *data, int x, int y,
- int rx, int ry)
-{
- char *exe;
-
- D_ENTER;
-
- exe = (char *)a->params;
- if (!exe)
- D_RETURN;
- e_exec_run(exe);
-
- D_RETURN;
- UN(a);
- UN(data);
- UN(x);
- UN(y);
- UN(rx);
- UN(ry);
- UN(object);
-}
-
-static void
-e_act_menu_start(E_Object * object, E_Action * a, void *data, int x, int y,
- int rx, int ry)
-{
- E_Border *b;
-
- D_ENTER;
-
- if (e_block_is_active("menus"))
- D_RETURN;
- b = (E_Border *) object;
- if (!b)
- b = e_border_current_focused();
- if (!b)
- D_RETURN;
- if (b->client.is_desktop)
- D_RETURN;
-
- e_bordermenu_do(b);
-
- D_RETURN;
- UN(a);
- UN(data);
- UN(x);
- UN(y);
- UN(rx);
- UN(ry);
-}
-
-void
-e_act_exit_start(E_Object * object, E_Action * a, void *data, int x, int y,
- int rx, int ry)
-{
- D_ENTER;
-
- e_view_machine_close_all_views();
-
- ecore_focus_mode_reset();
- ecore_sync();
-
- e_db_runtime_flush();
-
- exit(0);
-
- D_RETURN;
- UN(object);
- UN(a);
- UN(data);
- UN(x);
- UN(y);
- UN(rx);
- UN(ry);
-}
-
-void
-e_act_restart_start(E_Object * object, E_Action * a, void *data, int x, int y,
- int rx, int ry)
-{
- D_ENTER;
-
- e_view_machine_close_all_views();
-
- ecore_focus_mode_reset();
- ecore_sync();
-
- e_db_runtime_flush();
-
- e_exec_restart();
-
- D_RETURN;
- UN(object);
- UN(a);
- UN(data);
- UN(x);
- UN(y);
- UN(rx);
- UN(ry);
-}
-
-static void
-e_act_stick_start(E_Object * object, E_Action * a, void *data, int x, int y,
- int rx, int ry)
-{
- E_Border *b;
-
- D_ENTER;
-
- b = (E_Border *) object;
- if (!b)
- b = e_border_current_focused();
- if (!b)
- D_RETURN;
- if (b->client.is_desktop)
- D_RETURN;
- if (b->client.sticky)
- b->client.sticky = 0;
- else
- b->client.sticky = 1;
- b->changed = 1;
-
- D_RETURN;
- UN(a);
- UN(data);
- UN(x);
- UN(y);
- UN(rx);
- UN(ry);
-}
-
-static void
-e_act_sound_start(E_Object * object, E_Action * a, void *data, int x, int y,
- int rx, int ry)
-{
- D_ENTER;
-
- D_RETURN;
- UN(object);
- UN(a);
- UN(data);
- UN(x);
- UN(y);
- UN(rx);
- UN(ry);
-}
-
-static void
-e_act_iconify_start(E_Object * object, E_Action * a, void *data, int x, int y,
- int rx, int ry)
-{
- E_Border *b;
-
- D_ENTER;
-#if 1
- b = (E_Border *) object;
- if (!b)
- b = e_border_current_focused();
- if (!b)
- D_RETURN;
- if (b->client.is_desktop)
- D_RETURN;
-
- D("iconify action start\n");
- e_border_iconify(b);
-#endif
-
- D_RETURN;
- UN(object);
- UN(a);
- UN(data);
- UN(x);
- UN(y);
- UN(rx);
- UN(ry);
-}
-
-static void
-e_act_max_start(E_Object * object, E_Action * a, void *data, int x, int y,
- int rx, int ry)
-{
- E_Border *b;
-
- D_ENTER;
-
- b = (E_Border *) object;
- if (!b)
- b = e_border_current_focused();
- if (!b)
- D_RETURN;
- if (b->client.is_desktop)
- D_RETURN;
- if (b->current.shaded > 0)
- D_RETURN;
- if ((b->mode.move) || (b->mode.resize))
- D_RETURN;
- b->mode.move = 0;
- b->mode.resize = 0;
- if (b->max.is)
- {
- b->current.requested.x = b->max.x;
- b->current.requested.y = b->max.y;
- b->current.requested.w = b->max.w;
- b->current.requested.h = b->max.h;
- b->changed = 1;
- b->max.is = 0;
- e_border_adjust_limits(b);
- b->current.requested.x = b->current.x;
- b->current.requested.y = b->current.y;
- b->current.requested.w = b->current.w;
- b->current.requested.h = b->current.h;
-
- e_observee_notify_observers(E_OBSERVEE(b), E_EVENT_BORDER_UNMAXIMIZE,
- NULL);
- }
- else
- {
- b->max.x = b->current.x;
- b->max.y = b->current.y;
- b->max.w = b->current.w;
- b->max.h = b->current.h;
- b->current.requested.x = 0;
- b->current.requested.y = 0;
- b->current.requested.w = b->desk->real.w;
- b->current.requested.h = b->desk->real.h;
- b->changed = 1;
- b->max.is = 1;
- e_border_adjust_limits(b);
- b->current.requested.x = b->current.x;
- b->current.requested.y = b->current.y;
- b->current.requested.w = b->current.w;
- b->current.requested.h = b->current.h;
-
- e_observee_notify_observers(E_OBSERVEE(b), E_EVENT_BORDER_MAXIMIZE,
- NULL);
- }
-
- D_RETURN;
- UN(a);
- UN(data);
- UN(x);
- UN(y);
- UN(rx);
- UN(ry);
-}
-
-static void
-e_act_snap_start(E_Object * object, E_Action * a, void *data, int x, int y,
- int rx, int ry)
-{
- E_Border *b;
-
- D_ENTER;
-
- b = (E_Border *) object;
-
- if (!b)
- b = e_border_current_focused();
- if (!b)
- D_RETURN;
-
- D_RETURN;
- UN(a);
- UN(data);
- UN(x);
- UN(y);
- UN(rx);
- UN(ry);
-}
-
-static void
-e_act_zoom_start(E_Object * object, E_Action * a, void *data, int x, int y,
- int rx, int ry)
-{
- E_Border *b;
-
- D_ENTER;
-
- b = (E_Border *) object;
-
- if (!b)
- b = e_border_current_focused();
-
- if (!b)
- D_RETURN;
-
- D_RETURN;
- UN(a);
- UN(data);
- UN(x);
- UN(y);
- UN(rx);
- UN(ry);
-}
-
-static void
-e_act_desk_start(E_Object * object, E_Action * a, void *data, int x, int y,
- int rx, int ry)
-{
- int desk = 0;
-
- D_ENTER;
-
- if (a->params)
- desk = atoi(a->params);
-
- e_desktops_goto_desk(desk);
-
- D_RETURN;
- UN(object);
- UN(a);
- UN(data);
- UN(x);
- UN(y);
- UN(rx);
- UN(ry);
-}
-
-static void
-e_act_desk_rel_start(E_Object * object, E_Action * a, void *data, int x, int y,
- int rx, int ry)
-{
- int desk = 0;
- int desk_max = e_desktops_get_num() - 1;
-
- D_ENTER;
-
- if (a->params)
- desk = atoi(a->params) + e_desktops_get_current();
-
- if (desk < 0)
- desk = desk_max;
- else if (desk > desk_max)
- desk = 0;
-
- e_desktops_goto_desk(desk);
-
- D_RETURN;
- UN(object);
- UN(a);
- UN(data);
- UN(x);
- UN(y);
- UN(rx);
- UN(ry);
-}
-
-static void
-e_act_raise_next_start(E_Object * object, E_Action * a, void *data, int x,
- int y, int rx, int ry)
-{
- E_Border *current = NULL;
-
- D_ENTER;
-
- current = e_desktop_raise_next_border();
- if (current)
- e_border_send_pointer(current);
-
- D_RETURN;
- UN(object);
- UN(a);
- UN(data);
- UN(x);
- UN(y);
- UN(rx);
- UN(ry);
-}
diff --git a/src/actions.h b/src/actions.h
deleted file mode 100644
index 9f565f017..000000000
--- a/src/actions.h
+++ /dev/null
@@ -1,107 +0,0 @@
-#ifndef E_ACTIONS_H
-#define E_ACTIONS_H
-
-#include "object.h"
-
-typedef struct _E_Action E_Action;
-typedef struct _E_Action_Impl E_Action_Impl;
-typedef struct _E_Active_Action_Timer E_Active_Action_Timer;
-
-typedef enum e_action_type
-{
- ACT_MOUSE_IN,
- ACT_MOUSE_OUT,
- ACT_MOUSE_CLICK,
- ACT_MOUSE_DOUBLE,
- ACT_MOUSE_TRIPLE,
- ACT_MOUSE_UP,
- ACT_MOUSE_CLICKED,
- ACT_MOUSE_MOVE,
- ACT_KEY_DOWN,
- ACT_KEY_UP
-}
-E_Action_Type;
-
-struct _E_Active_Action_Timer
-{
- void *object;
- char *name;
-};
-
-struct _E_Action
-{
- E_Object o;
-
- char *name;
- char *action;
- char *params;
- E_Action_Type event;
- int button;
- char *key;
- int modifiers;
- E_Action_Impl *action_impl;
- E_Object *object;
- int started;
- int grabbed;
-};
-
-typedef void (*E_Action_Start_Func) (E_Object * o, E_Action * a,
- void *data, int x, int y, int rx,
- int ry);
-typedef void (*E_Action_Cont_Func) (E_Object * o, E_Action * a,
- void *data, int x, int y, int rx,
- int ry, int dx, int dy);
-typedef void (*E_Action_Stop_Func) (E_Object * o, E_Action * a,
- void *data, int x, int y, int rx,
- int ry);
-
-struct _E_Action_Impl
-{
- E_Object o;
-
- char *action;
-
- E_Action_Start_Func func_start;
- E_Action_Cont_Func func_cont;
- E_Action_Stop_Func func_stop;
-};
-
-/**
- * e_action_init - Actions implementation initializer
- *
- * This function registers the various action implementations,
- * i.e. the way E performs actions.
- */
-void e_action_init(void);
-void e_action_cleanup(E_Action *a);
-
-int e_action_start(char *action, E_Action_Type act, int button,
- char *key, Ecore_Event_Key_Modifiers mods,
- E_Object * o, void *data, int x, int y,
- int rx, int ry);
-void e_action_stop(char *action, E_Action_Type act, int button,
- char *key, Ecore_Event_Key_Modifiers mods,
- E_Object * o, void *data, int x, int y,
- int rx, int ry);
-void e_action_cont(char *action, E_Action_Type act, int button,
- char *key, Ecore_Event_Key_Modifiers mods,
- E_Object * o, void *data, int x, int y,
- int rx, int ry, int dx, int dy);
-void e_action_stop_by_object(E_Object * o, void *data, int x,
- int y, int rx, int ry);
-void e_action_stop_by_type(char *action);
-void e_action_add_impl(char *action,
- E_Action_Start_Func func_start,
- E_Action_Cont_Func func_cont,
- E_Action_Stop_Func func_stop);
-void e_action_del_timer(E_Object * object, char *name);
-void e_action_add_timer(E_Object * object, char *name);
-void e_action_del_timer_object(E_Object * object);
-
-
-void e_act_exit_start(E_Object * object, E_Action * a, void *data, int x, int y,
- int rx, int ry);
-void e_act_restart_start(E_Object * object, E_Action * a, void *data, int x, int y,
- int rx, int ry);
-
-#endif
diff --git a/src/background.c b/src/background.c
deleted file mode 100644
index 21ced9b7b..000000000
--- a/src/background.c
+++ /dev/null
@@ -1,328 +0,0 @@
-#include "e.h"
-#include "debug.h"
-#include "background.h"
-#include "util.h"
-
-static void
-e_background_cleanup(E_Background * bg)
-{
- Evas_List * l;
-
- D_ENTER;
-
- if (bg->layers)
- {
- for (l = bg->layers; l; l = l->next)
- {
- E_Background_Layer *bl;
-
- bl = l->data;
- if (bl->color_class)
- FREE(bl->color_class);
- if (bl->file)
- FREE(bl->file);
- if (bl->obj)
- evas_object_del(bl->obj);
- FREE(bl);
- }
- evas_list_free(bg->layers);
- }
- if (bg->file)
- FREE(bg->file);
- if (bg->base_obj)
- evas_object_del(bg->base_obj);
-
- e_object_cleanup(E_OBJECT(bg));
-
- D_RETURN;
-}
-
-E_Background *
-e_background_new(void)
-{
- E_Background *bg;
-
- D_ENTER;
-
- bg = NEW(E_Background, 1);
- ZERO(bg, E_Background, 1);
-
- e_object_init(E_OBJECT(bg), (E_Cleanup_Func) e_background_cleanup);
-
- D_RETURN_(bg);
-}
-
-E_Background *
-e_background_load(char *file)
-{
- E_Background *bg;
- E_DB_File *db;
- int i, num;
-
- D_ENTER;
-
- db = e_db_open_read(file);
- if (!db)
- D_RETURN_(NULL);
- num = 0;
- e_db_int_get(db, "/type/bg", &num);
- if (num != 1)
- {
- e_db_close(db);
- e_db_flush();
- D_RETURN_(NULL);
- }
- e_db_int_get(db, "/layers/count", &num);
-
- bg = e_background_new();
- e_strdup(bg->file, file);
- for (i = 0; i < num; i++)
- {
- E_Background_Layer *bl;
- char buf[PATH_MAX];
-
- bl = NEW(E_Background_Layer, 1);
- ZERO(bl, E_Background_Layer, 1);
- bg->layers = evas_list_append(bg->layers, bl);
-
- snprintf(buf, PATH_MAX, "/layers/%i/type", i);
- e_db_int_get(db, buf, (int *)&(bl->type));
- snprintf(buf, PATH_MAX, "/layers/%i/inlined", i);
- e_db_int_get(db, buf, &(bl->inlined));
- snprintf(buf, PATH_MAX, "/layers/%i/color_class", i);
- bl->color_class = e_db_str_get(db, buf);
- if (bl->inlined)
- {
- snprintf(buf, PATH_MAX, "%s:/layers/%i/image", file, i);
- e_strdup(bl->file, buf);
- }
- else
- {
- snprintf(buf, PATH_MAX, "/layers/%i/file", i);
- bl->file = e_db_str_get(db, buf);
- }
- snprintf(buf, PATH_MAX, "/layers/%i/scroll.x", i);
- e_db_float_get(db, buf, &(bl->scroll.x));
- snprintf(buf, PATH_MAX, "/layers/%i/scroll.y", i);
- e_db_float_get(db, buf, &(bl->scroll.y));
- snprintf(buf, PATH_MAX, "/layers/%i/pos.x", i);
- e_db_float_get(db, buf, &(bl->pos.x));
- snprintf(buf, PATH_MAX, "/layers/%i/pos.y", i);
- e_db_float_get(db, buf, &(bl->pos.y));
- snprintf(buf, PATH_MAX, "/layers/%i/size.w", i);
- e_db_float_get(db, buf, &(bl->size.w));
- snprintf(buf, PATH_MAX, "/layers/%i/size.h", i);
- e_db_float_get(db, buf, &(bl->size.h));
- snprintf(buf, PATH_MAX, "/layers/%i/size.orig.w", i);
- e_db_int_get(db, buf, &(bl->size.orig.w));
- snprintf(buf, PATH_MAX, "/layers/%i/size.orig.h", i);
- e_db_int_get(db, buf, &(bl->size.orig.h));
- snprintf(buf, PATH_MAX, "/layers/%i/fill.w", i);
- e_db_float_get(db, buf, &(bl->fill.w));
- snprintf(buf, PATH_MAX, "/layers/%i/fill.h", i);
- e_db_float_get(db, buf, &(bl->fill.h));
- snprintf(buf, PATH_MAX, "/layers/%i/fill.orig.w", i);
- e_db_int_get(db, buf, &(bl->fill.orig.w));
- snprintf(buf, PATH_MAX, "/layers/%i/fill.orig.h", i);
- e_db_int_get(db, buf, &(bl->fill.orig.h));
- snprintf(buf, PATH_MAX, "/layers/%i/angle", i);
- e_db_float_get(db, buf, (float *)&(bl->angle));
- snprintf(buf, PATH_MAX, "/layers/%i/fg.r", i);
- e_db_int_get(db, buf, &(bl->fg.r));
- snprintf(buf, PATH_MAX, "/layers/%i/fg.g", i);
- e_db_int_get(db, buf, &(bl->fg.g));
- snprintf(buf, PATH_MAX, "/layers/%i/fg.b", i);
- e_db_int_get(db, buf, &(bl->fg.b));
- snprintf(buf, PATH_MAX, "/layers/%i/fg.a", i);
- e_db_int_get(db, buf, &(bl->fg.a));
- snprintf(buf, PATH_MAX, "/layers/%i/bg.r", i);
- e_db_int_get(db, buf, &(bl->bg.r));
- snprintf(buf, PATH_MAX, "/layers/%i/bg.g", i);
- e_db_int_get(db, buf, &(bl->bg.g));
- snprintf(buf, PATH_MAX, "/layers/%i/bg.b", i);
- e_db_int_get(db, buf, &(bl->bg.b));
- snprintf(buf, PATH_MAX, "/layers/%i/bg.a", i);
- e_db_int_get(db, buf, &(bl->bg.a));
- }
- e_db_close(db);
- D_RETURN_(bg);
-}
-
-void
-e_background_realize(E_Background * bg, Evas * evas)
-{
- Evas_List * l;
- int ww, hh, count;
-
- D_ENTER;
-
- if (bg->evas)
- D_RETURN;
- bg->evas = evas;
- if (!bg->evas)
- D_RETURN;
- for (count = 0, l = bg->layers; l; l = l->next, count++)
- {
- E_Background_Layer *bl;
-
- bl = l->data;
- if (bl->type == E_BACKGROUND_TYPE_IMAGE)
- {
- bl->obj = evas_object_image_add(bg->evas);
- evas_object_image_file_set(bl->obj, bl->file, NULL);
- evas_object_layer_set(bl->obj, 0);
- evas_object_show(bl->obj);
-#if 0 /* dont need this... do we? */
- if (evas_get_image_alpha(bg->evas, bl->obj))
- {
- D("Adding rectangle to bg!\n");
- bg->base_obj = evas_add_rectangle(bg->evas);
- evas_lower(bg->evas, bg->base_obj);
- evas_move(bg->evas, bg->base_obj, 0, 0);
- evas_resize(bg->evas, bg->base_obj, 999999999, 999999999);
- evas_set_color(bg->evas, bg->base_obj, 255, 255, 255, 255);
- evas_show(bg->evas, bg->base_obj);
- }
-#endif
- }
- else if (bl->type == E_BACKGROUND_TYPE_GRADIENT)
- {
- }
- else if (bl->type == E_BACKGROUND_TYPE_SOLID)
- {
- }
- }
- ww = bg->geom.w;
- hh = bg->geom.h;
- bg->geom.w = 0;
- bg->geom.h = 0;
- e_background_set_size(bg, ww, hh);
-
- D_RETURN;
-}
-
-void
-e_background_set_scroll(E_Background * bg, int sx, int sy)
-{
- Evas_List * l;
-
- D_ENTER;
-
- if ((bg->geom.sx == sx) && (bg->geom.sy == sy))
- D_RETURN;
- bg->geom.sx = sx;
- bg->geom.sy = sy;
- if (!bg->evas)
- D_RETURN;
- for (l = bg->layers; l; l = l->next)
- {
- E_Background_Layer *bl;
-
- bl = l->data;
- if (bl->type == E_BACKGROUND_TYPE_IMAGE)
- {
- evas_object_image_fill_set(bl->obj,
- (double)bg->geom.sx * bl->scroll.x,
- (double)bg->geom.sy * bl->scroll.y,
- bl->fw, bl->fh);
- }
- }
- D_RETURN;
-}
-
-void
-e_background_set_size(E_Background * bg, int w, int h)
-{
- Evas_List * l;
-
- D_ENTER;
-
- if ((bg->geom.w == w) && (bg->geom.h == h))
- D_RETURN;
- bg->geom.w = w;
- bg->geom.h = h;
- for (l = bg->layers; l; l = l->next)
- {
- E_Background_Layer *bl;
- double x, y, w, h, fw, fh;
- int iw, ih;
-
- bl = l->data;
- iw = 0;
- ih = 0;
- if (bg->evas)
- evas_object_image_size_get(bl->obj, &iw, &ih);
- w = bl->size.w * (double)bg->geom.w;
- h = bl->size.h * (double)bg->geom.h;
- if (bl->size.orig.w)
- w = (double)iw *bl->size.w;
-
- if (bl->size.orig.h)
- h = (double)ih *bl->size.h;
-
- fw = bl->fill.w * w;
- fh = bl->fill.h * h;
- if (bl->fill.orig.w)
- fw = (double)iw *bl->fill.w;
-
- if (bl->fill.orig.h)
- fh = (double)ih *bl->fill.h;
-
- x = ((double)bg->geom.w - w + 1) * bl->pos.x;
- y = ((double)bg->geom.h - h + 1) * bl->pos.y;
- bl->x = x;
- bl->y = y;
- bl->w = w;
- bl->h = h;
- bl->fw = fw;
- bl->fh = fh;
- if (bg->evas)
- {
- evas_object_move(bl->obj, bl->x, bl->y);
- evas_object_resize(bl->obj, bl->w, bl->h);
- if (bl->type == E_BACKGROUND_TYPE_IMAGE)
- {
- evas_object_image_fill_set(bl->obj,
- (double)bg->geom.sx * bl->scroll.x,
- (double)bg->geom.sy * bl->scroll.y,
- bl->fw, bl->fh);
- }
- else if (bl->type == E_BACKGROUND_TYPE_GRADIENT)
- {
- evas_object_angle_set(bl->obj, bl->angle);
- }
- else if (bl->type == E_BACKGROUND_TYPE_SOLID)
- {
- }
- }
- }
- D_RETURN;
-}
-
-void
-e_background_set_color_class(E_Background * bg, char *cc, int r, int g, int b,
- int a)
-{
- Evas_List * l;
-
- D_ENTER;
-
- for (l = bg->layers; l; l = l->next)
- {
- E_Background_Layer *bl;
-
- bl = l->data;
- if ((bl->color_class) && (cc) && (!strcmp(bl->color_class, cc)))
- {
- if (bg->evas)
- {
- if ((l == bg->layers) && (bg->base_obj))
- evas_object_color_set(bl->obj, r, g, b, 255);
- else
- evas_object_color_set(bl->obj, r, g, b, a);
- }
- }
- }
-
- D_RETURN;
-}
diff --git a/src/background.h b/src/background.h
deleted file mode 100644
index 00ac89040..000000000
--- a/src/background.h
+++ /dev/null
@@ -1,83 +0,0 @@
-#ifndef E_BACKGROUND_H
-#define E_BACKGROUND_H
-
-#include "object.h"
-
-typedef struct _E_Background E_Background;
-typedef struct _E_Background_Layer E_Background_Layer;
-
-typedef enum
-{
- E_BACKGROUND_TYPE_IMAGE = 0,
- E_BACKGROUND_TYPE_GRADIENT = 1,
- E_BACKGROUND_TYPE_SOLID = 2
-}
-E_Background_Type;
-
-struct _E_Background
-{
- E_Object o;
-
- Evas * evas;
- char *file;
-
- struct
- {
- int sx, sy;
- int w, h;
- }
- geom;
-
- Evas_List * layers;
-
- Evas_Object * base_obj;
-};
-
-struct _E_Background_Layer
-{
- E_Background_Type type;
- int inlined;
- struct
- {
- float x, y;
- }
- scroll;
- struct
- {
- float x, y;
- }
- pos;
- struct
- {
- float w, h;
- struct
- {
- int w, h;
- }
- orig;
- }
- size , fill;
- char *color_class;
- char *file;
- double angle;
- struct
- {
- int r, g, b, a;
- }
- fg , bg;
-
- double x, y, w, h, fw, fh;
-
- Evas_Object * obj;
-};
-
-E_Background *e_background_new(void);
-E_Background *e_background_load(char *file);
-
-void e_background_realize(E_Background * bg, Evas * evas);
-void e_background_set_scroll(E_Background * bg, int sx, int sy);
-void e_background_set_size(E_Background * bg, int w, int h);
-void e_background_set_color_class(E_Background * bg, char *cc,
- int r, int g, int b, int a);
-
-#endif
diff --git a/src/block.c b/src/block.c
deleted file mode 100644
index 3730c005b..000000000
--- a/src/block.c
+++ /dev/null
@@ -1,90 +0,0 @@
-#include "block.h"
-#include "debug.h"
-#include "util.h"
-
-typedef struct _e_block E_Block;
-
-struct _e_block
-{
- char *name;
- int refs;
-};
-
-static Evas_List * blocks = NULL;
-
-static E_Block *e_block_find(char *name);
-
-static E_Block *
-e_block_find(char *name)
-{
- Evas_List * l;
-
- D_ENTER;
- for (l = blocks; l; l = l->next)
- {
- E_Block *b;
-
- b = l->data;
- if (!strcmp(b->name, name))
- {
- blocks = evas_list_remove(blocks, b);
- blocks = evas_list_prepend(blocks, b);
- D_RETURN_(b);
- }
- }
- D_RETURN_(NULL);
-}
-
-void
-e_block_start(char *name)
-{
- E_Block *b;
-
- D_ENTER;
- b = e_block_find(name);
- if (b)
- {
- b->refs++;
- D_RETURN;
- }
- b = NEW(E_Block, 1);
- ZERO(b, E_Block, 1);
- e_strdup(b->name, name);
- b->refs = 1;
- blocks = evas_list_prepend(blocks, b);
- D_RETURN;
-}
-
-void
-e_block_stop(char *name)
-{
- E_Block *b;
-
- D_ENTER;
- b = e_block_find(name);
- if (b)
- {
- b->refs--;
- if (b->refs < 1)
- {
- blocks = evas_list_remove(blocks, b);
- IF_FREE(b->name);
- FREE(b);
- }
- }
- D_RETURN;
-}
-
-int
-e_block_is_active(char *name)
-{
- E_Block *b;
-
- D_ENTER;
- b = e_block_find(name);
- if (b)
- {
- D_RETURN_(b->refs);
- }
- D_RETURN_(0);
-}
diff --git a/src/block.h b/src/block.h
deleted file mode 100644
index f34aadd3d..000000000
--- a/src/block.h
+++ /dev/null
@@ -1,10 +0,0 @@
-#ifndef E_BLOCK_H
-#define E_BLOCK_H
-
-#include "e.h"
-
-void e_block_start(char *name);
-void e_block_stop(char *name);
-int e_block_is_active(char *name);
-
-#endif
diff --git a/src/border.c b/src/border.c
deleted file mode 100644
index 0431c06f0..000000000
--- a/src/border.c
+++ /dev/null
@@ -1,2905 +0,0 @@
-#include "cursors.h"
-#include "border.h"
-#include "bordermenu.h"
-#include "config.h"
-#include "debug.h"
-#include "actions.h"
-#include "delayed.h"
-#include "desktops.h"
-#include "resist.h"
-#include "icccm.h"
-#include "file.h"
-#include "util.h"
-#include "place.h"
-#include "match.h"
-#include "focus.h"
-#include "exec.h"
-#include "menu.h"
-
-/* Window border rendering, querying, setting & modification code */
-
-/* globals local to window borders */
-static Evas_List * evases = NULL;
-static Evas_List * borders = NULL;
-
-static int mouse_x, mouse_y, mouse_win_x, mouse_win_y;
-static int mouse_buttons = 0;
-
-static int border_mouse_x = 0;
-static int border_mouse_y = 0;
-static int border_mouse_buttons = 0;
-
-static Ecore_Event *current_ev = NULL;
-
-/* Global delayed window raise action */
-E_Delayed_Action *delayed_window_raise = NULL;
-
-static void e_idle(void *data);
-static void e_map_request(Ecore_Event * ev);
-static void e_configure_request(Ecore_Event * ev);
-static void e_property(Ecore_Event * ev);
-static void e_unmap(Ecore_Event * ev);
-static void e_destroy(Ecore_Event * ev);
-static void e_circulate_request(Ecore_Event * ev);
-static void e_reparent(Ecore_Event * ev);
-static void e_shape(Ecore_Event * ev);
-static void e_focus_in(Ecore_Event * ev);
-static void e_focus_out(Ecore_Event * ev);
-static void e_colormap(Ecore_Event * ev);
-static void e_mouse_down(Ecore_Event * ev);
-static void e_mouse_up(Ecore_Event * ev);
-static void e_mouse_in(Ecore_Event * ev);
-static void e_mouse_out(Ecore_Event * ev);
-static void e_window_expose(Ecore_Event * ev);
-float e_border_delayed_val();
-
-static void e_cb_mouse_in(void *data, Ebits_Object o, char *class,
- int bt, int x, int y, int ox, int oy, int ow,
- int oh);
-static void e_cb_mouse_out(void *data, Ebits_Object o, char *class,
- int bt, int x, int y, int ox, int oy, int ow,
- int oh);
-static void e_cb_mouse_down(void *data, Ebits_Object o, char *class,
- int bt, int x, int y, int ox, int oy,
- int ow, int oh);
-static void e_cb_mouse_up(void *data, Ebits_Object o, char *class,
- int bt, int x, int y, int ox, int oy, int ow,
- int oh);
-static void e_cb_mouse_move(void *data, Ebits_Object o, char *class,
- int bt, int x, int y, int ox, int oy,
- int ow, int oh);
-
-static void e_cb_border_mouse_in(E_Border * b, Ecore_Event * e);
-static void e_cb_border_mouse_out(E_Border * b, Ecore_Event * e);
-static void e_cb_border_mouse_down(E_Border * b, Ecore_Event * e);
-static void e_cb_border_mouse_up(E_Border * b, Ecore_Event * e);
-static void e_cb_border_mouse_move(E_Border * b, Ecore_Event * e);
-static void e_cb_border_move_resize(E_Border * b);
-static void e_cb_border_visibility(E_Border * b);
-
-static void e_border_poll(int val, void *data);
-static void e_border_cleanup(E_Border * b);
-E_Border *e_border_shuffle_last(E_Border *b);
-E_Border *e_border_current_select(void);
-
-static int
-e_border_replay_query(Ecore_Event_Mouse_Down * ev)
-{
- E_Border *b;
-
- D_ENTER;
-
- b = e_border_find_by_window(ev->win);
- if (b)
- {
- int focus_mode;
-
- focus_mode = config_data->window->focus_mode;
- if ((focus_mode == 2) && (ev->mods == ECORE_EVENT_KEY_MODIFIER_NONE))
- /* FIXME: also if pass click always set */
- D_RETURN_(1);
- }
-
- D_RETURN_(0);
-}
-
-/* what to dowhen we're idle */
-
-void
-e_border_update_borders(void)
-{
- Evas_List * l;
-
- D_ENTER;
-
- for (l = borders; l; l = l->next)
- {
- E_Border *b;
-
- b = l->data;
- e_border_update(b);
- }
- for (l = borders; l; l = l->next)
- {
- E_Border *b;
-
- b = l->data;
-
- if (b->shape_changed)
- {
- e_border_reshape(b);
- }
- }
-
- e_db_runtime_flush();
-
- D_RETURN;
-}
-
-void
-e_border_check_select( void )
-{
- E_Border *b;
- E_Desktop *current_desk;
-
- current_desk = e_desktops_get(e_desktops_get_current());
-
- /* If no borders exist on present desktop */
- if (!current_desk || !current_desk->windows)
- {
- e_icccm_send_focus_to( e_desktop_window(), 1);
- D_RETURN_(NULL);
- }
-
- if((b = e_border_current_focused()))
- e_icccm_send_focus_to( b->win.client, 1);
- else
- e_border_shuffle_last(b);
-}
-
-static void
-e_idle(void *data)
-{
- D_ENTER;
-
- e_border_update_borders();
-
- D_RETURN;
- UN(data);
-}
-
-/* */
-static void
-e_map_request(Ecore_Event * ev)
-{
- Ecore_Event_Window_Map_Request *e;
-
- D_ENTER;
-
- current_ev = ev;
- e = ev->event;
- {
- E_Border *b;
-
- b = e_border_find_by_window(e->win);
- if (!b)
- {
- if (ecore_window_exists(e->win))
- b = e_border_adopt(e->win, 0);
- }
- }
- current_ev = NULL;
-
- D_RETURN;
-}
-
-/* */
-static void
-e_configure_request(Ecore_Event * ev)
-{
- Ecore_Event_Window_Configure_Request *e;
-
- D_ENTER;
-
- current_ev = ev;
- e = ev->event;
- {
- E_Border *b;
-
- b = e_border_find_by_window(e->win);
- if (b)
- {
- int pl, pr, pt, pb;
-
- pl = pr = pt = pb = 0;
- if (b->bits.b)
- ebits_get_insets(b->bits.b, &pl, &pr, &pt, &pb);
- if (e->mask & ECORE_EVENT_VALUE_X)
- b->current.requested.x = e->x;
- if (e->mask & ECORE_EVENT_VALUE_Y)
- b->current.requested.y = e->y;
- if ((e->mask & ECORE_EVENT_VALUE_W)
- || (e->mask & ECORE_EVENT_VALUE_H))
- {
- if (b->current.shaded == b->client.h)
- {
- b->current.shaded = e->h;
- }
- else if (b->current.shaded != 0)
- {
- b->current.shaded += b->client.h - e->h;
- if (b->current.shaded > b->client.h)
- b->current.shaded = b->client.h;
- if (b->current.shaded < 1)
- b->current.shaded = 1;
- }
- b->current.requested.w = e->w + pl + pr;
- b->current.requested.h = e->h + pt + pb;
- }
- if ((e->mask & ECORE_EVENT_VALUE_SIBLING)
- && (e->mask & ECORE_EVENT_VALUE_STACKING))
- {
- E_Border *b_rel;
-
- b_rel = e_border_find_by_window(e->stack_win);
- if (b_rel)
- {
- if (e->detail == ECORE_EVENT_STACK_ABOVE)
- e_border_raise_above(b, b_rel);
- else if (e->detail == ECORE_EVENT_STACK_BELOW)
- e_border_lower_below(b, b_rel);
- /* FIXME: need to handle & fix
- * ECORE_EVENT_STACK_TOP_IF
- * ECORE_EVENT_STACK_BOTTOM_IF
- * ECORE_EVENT_STACK_OPPOSITE
- */
- else if (e->detail == ECORE_EVENT_STACK_TOP_IF)
- e_border_raise(b);
- else if (e->detail == ECORE_EVENT_STACK_BOTTOM_IF)
- e_border_lower(b);
- }
- }
- else if (e->mask & ECORE_EVENT_VALUE_STACKING)
- {
- if (e->detail == ECORE_EVENT_STACK_ABOVE)
- e_border_raise(b);
- else if (e->detail == ECORE_EVENT_STACK_BELOW)
- e_border_lower(b);
- /* FIXME: need to handle & fix
- * ECORE_EVENT_STACK_TOP_IF
- * ECORE_EVENT_STACK_BOTTOM_IF
- * ECORE_EVENT_STACK_OPPOSITE
- */
- else if (e->detail == ECORE_EVENT_STACK_TOP_IF)
- e_border_raise(b);
- else if (e->detail == ECORE_EVENT_STACK_BOTTOM_IF)
- e_border_lower(b);
- }
- b->changed = 1;
- e_border_adjust_limits(b);
- }
- else
- {
- if ((e->mask & ECORE_EVENT_VALUE_X)
- && (e->mask & ECORE_EVENT_VALUE_W))
- ecore_window_move_resize(e->win, e->x, e->y, e->w, e->h);
- else if ((e->mask & ECORE_EVENT_VALUE_W)
- || (e->mask & ECORE_EVENT_VALUE_H))
- ecore_window_resize(e->win, e->w, e->h);
- else if ((e->mask & ECORE_EVENT_VALUE_X))
- ecore_window_move(e->win, e->x, e->y);
- }
- }
- current_ev = NULL;
-
- D_RETURN;
-}
-
-/* */
-static void
-e_property(Ecore_Event * ev)
-{
- Ecore_Event_Window_Property *e;
-
- D_ENTER;
-
- current_ev = ev;
- e = ev->event;
- {
- E_Border *b;
-
- b = e_border_find_by_window(e->win);
- if (b)
- {
- e_icccm_handle_property_change(e->atom, b);
- e_border_apply_border(b);
- }
- }
- current_ev = NULL;
-
- D_RETURN;
-}
-
-/* */
-static void
-e_client_message(Ecore_Event * ev)
-{
- Ecore_Event_Message *e;
-
- D_ENTER;
-
- current_ev = ev;
- e = ev->event;
-
- e_icccm_handle_client_message(e);
-
- current_ev = NULL;
-
- D_RETURN;
-}
-
-/* */
-static void
-e_unmap(Ecore_Event * ev)
-{
- Ecore_Event_Window_Unmap *e;
-
- D_ENTER;
-
- current_ev = ev;
- e = ev->event;
- {
- E_Border *b;
-
- b = e_border_find_by_window(e->win);
- if (b)
- {
- if (b->win.client == e->win)
- {
- if (b->ignore_unmap > 0)
- b->ignore_unmap--;
- else
- {
- e_action_stop_by_object(E_OBJECT(b), NULL,
- mouse_win_x, mouse_win_y,
- border_mouse_x, border_mouse_y);
-
- if (e_object_get_usecount(E_OBJECT(b)) == 1)
- {
- e_border_release(b);
- e_border_shuffle_last(b);
- }
- e_object_unref(E_OBJECT(b));
- }
- }
- }
- }
- current_ev = NULL;
-
- D_RETURN;
-}
-
-/* */
-static void
-e_destroy(Ecore_Event * ev)
-{
- Ecore_Event_Window_Destroy *e;
-
- D_ENTER;
-
- current_ev = ev;
- e = ev->event;
- {
- E_Border *b;
-
- b = e_border_find_by_window(e->win);
- if (b)
- {
- if (b->win.client == e->win)
- {
- e_action_stop_by_object(E_OBJECT(b), NULL,
- mouse_win_x, mouse_win_y,
- border_mouse_x, border_mouse_y);
-
- if (e_object_get_usecount(E_OBJECT(b)) == 1)
- {
- e_border_release(b);
- e_border_shuffle_last(b);
- }
- e_object_unref(E_OBJECT(b));
- }
- }
- }
- current_ev = NULL;
-
- D_RETURN;
-}
-
-/* */
-static void
-e_circulate_request(Ecore_Event * ev)
-{
- Ecore_Event_Window_Circulate_Request *e;
-
- D_ENTER;
-
- current_ev = ev;
- e = ev->event;
- {
- E_Border *b;
-
- b = e_border_find_by_window(e->win);
- if (b)
- {
- if (e->lower)
- e_border_lower(b);
- else
- e_border_raise(b);
- }
- }
- current_ev = NULL;
-
- D_RETURN;
-}
-
-/* */
-static void
-e_reparent(Ecore_Event * ev)
-{
- Ecore_Event_Window_Reparent *e;
-
- D_ENTER;
-
- current_ev = ev;
- e = ev->event;
- current_ev = NULL;
-
- D_RETURN;
-}
-
-/* */
-static void
-e_shape(Ecore_Event * ev)
-{
- Ecore_Event_Window_Shape *e;
-
- D_ENTER;
-
- current_ev = ev;
- e = ev->event;
- {
- E_Border *b;
-
- b = e_border_find_by_window(e->win);
- if ((b) && (e->win == b->win.client))
- {
- b->current.shaped_client = e_icccm_is_shaped(e->win);
- b->changed = 1;
- b->shape_changed = 1;
- }
- }
- current_ev = NULL;
-
- D_RETURN;
-}
-
-/* */
-static void
-e_focus_in(Ecore_Event * ev)
-{
- Ecore_Event_Window_Focus_In *e;
-
- D_ENTER;
-
- current_ev = ev;
- e = ev->event;
- {
- E_Border *b;
-
- b = e_border_find_by_window(e->win);
- if ((b) && (b->win.client == e->win))
- {
- E_Grab *g;
-
- e_border_focus_grab_ended();
- b->current.selected = 1;
- b->changed = 1;
- e_observee_notify_observers(E_OBSERVEE(b), E_EVENT_BORDER_FOCUS_IN,
- NULL);
- g = b->click_grab;
- if (g)
- {
- ecore_button_ungrab(b->win.container, g->button, g->mods,
- g->any_mod);
- FREE(g);
- b->click_grab = NULL;
- }
- }
- }
- current_ev = NULL;
-
- D_RETURN;
-}
-
-/* */
-static void
-e_focus_out(Ecore_Event * ev)
-{
- Ecore_Event_Window_Focus_Out *e;
-
- D_ENTER;
-
- current_ev = ev;
- e = ev->event;
- {
- E_Border *b;
-
- b = e_border_find_by_window(e->win);
- if ((b) && (b->win.client == e->win))
- {
- int focus_mode;
-
- focus_mode = config_data->window->focus_mode;
- b->current.selected = 0;
- if (e->key_grab)
- b->current.select_lost_from_grab = 1;
- /* settings - click to focus would affect grabs */
- if ((!b->client.internal) && (focus_mode == 2))
- {
- E_Grab *g;
-
- g = NEW(E_Grab, 1);
- ZERO(g, E_Grab, 1);
- g->button = 1;
- g->mods = ECORE_EVENT_KEY_MODIFIER_NONE;
- g->any_mod = 0;
- g->remove_after = 0;
- ecore_button_grab(b->win.container, g->button, XEV_BUTTON_PRESS,
- g->mods, g->any_mod);
- ecore_window_button_grab_auto_replay_set(b->win.container,
- e_border_replay_query);
- b->click_grab = g;
- }
- b->changed = 1;
- }
- e_delayed_action_cancel(delayed_window_raise);
- }
- current_ev = NULL;
-
- D_RETURN;
-}
-
-/* */
-static void
-e_colormap(Ecore_Event * ev)
-{
- Ecore_Event_Colormap *e;
-
- D_ENTER;
-
- current_ev = ev;
- e = ev->event;
- {
- E_Border *b;
-
- b = e_border_find_by_window(e->win);
- if (b)
- {
- }
- }
- current_ev = NULL;
-
- D_RETURN;
-}
-
-/* handling mouse down events */
-static void
-e_mouse_down(Ecore_Event * ev)
-{
- Ecore_Event_Mouse_Down *e;
-
- D_ENTER;
- current_ev = ev;
- e = ev->event;
- {
- E_Border *b;
-
- mouse_win_x = e->x;
- mouse_win_y = e->y;
- mouse_x = e->rx;
- mouse_y = e->ry;
- mouse_buttons |= (1 << e->button);
- b = e_border_find_by_window(e->win);
- if (b)
- {
- int focus_mode;
-
- focus_mode = config_data->window->focus_mode;
- if (focus_mode == 2)
- {
- e_focus_set_focus(b);
- /* FIXME: if (raise on click to focus) ... */
- e_border_raise(b);
- }
- if (e->win == b->win.main)
- e_cb_border_mouse_down(b, ev);
- else
- {
- Evas *evas;
- int x, y;
-
- evas = b->evas;
- ecore_window_get_root_relative_location(b->win.b, &x, &y);
- x = e->rx - x;
- y = e->ry - y;
- evas_event_feed_mouse_down(evas, e->button);
- }
- }
- }
- current_ev = NULL;
-
- D_RETURN;
-}
-
-/* handling mouse up events */
-static void
-e_mouse_up(Ecore_Event * ev)
-{
- Ecore_Event_Mouse_Up *e;
-
- D_ENTER;
-
- current_ev = ev;
- e = ev->event;
- {
- E_Border *b;
-
- mouse_win_x = e->x;
- mouse_win_y = e->y;
- mouse_x = e->rx;
- mouse_y = e->ry;
- mouse_buttons &= ~(1 << e->button);
- b = e_border_find_by_window(e->win);
- if (b)
- {
- if (e->win == b->win.main)
- e_cb_border_mouse_up(b, ev);
- else
- {
- Evas *evas;
- int x, y;
-
- evas = b->evas;
- ecore_window_get_root_relative_location(b->win.b, &x, &y);
- x = e->rx - x;
- y = e->ry - y;
- evas_event_feed_mouse_up(evas, e->button);
- }
- }
- }
- current_ev = NULL;
-
- D_RETURN;
-}
-
-/* handling mouse move events */
-static void
-e_mouse_move(Ecore_Event * ev)
-{
- Ecore_Event_Mouse_Move *e;
-
- D_ENTER;
-
- current_ev = ev;
- e = ev->event;
- {
- E_Border *b;
-
- mouse_win_x = e->x;
- mouse_win_y = e->y;
- mouse_x = e->rx;
- mouse_y = e->ry;
- b = e_border_find_by_window(e->win);
-/* D("motion... %3.8f\n", ecore_get_time());*/
- if (b)
- {
- if (e->win == b->win.main)
- e_cb_border_mouse_move(b, ev);
- else
- {
- Evas *evas;
- int x, y;
-
- evas = b->evas;
- ecore_window_get_root_relative_location(b->win.b, &x, &y);
- x = e->rx - x;
- y = e->ry - y;
- evas_event_feed_mouse_move(evas, x, y);
- }
- }
- }
- current_ev = NULL;
-
- D_RETURN;
-}
-
-/* handling mouse enter events */
-static void
-e_mouse_in(Ecore_Event * ev)
-{
- Ecore_Event_Window_Enter *e;
- E_Border *b;
-
- D_ENTER;
- current_ev = ev;
- e = ev->event;
- if ((b = e_border_find_by_window(e->win)))
- {
- if (e->win == b->win.main)
- e_cb_border_mouse_in(b, ev);
- else if (e->win == b->win.input)
- {
- int x, y;
- Evas *evas;
-
- evas = b->evas;
- ecore_window_get_root_relative_location(b->win.b, &x, &y);
- x = e->rx - x;
- y = e->ry - y;
- evas_event_feed_mouse_in(evas);
- evas_event_feed_mouse_move(evas, x, y);
- }
- }
- current_ev = NULL;
- D_RETURN;
-}
-
-/* handling mouse leave events */
-static void
-e_mouse_out(Ecore_Event * ev)
-{
- Ecore_Event_Window_Leave *e;
-
- D_ENTER;
-
- current_ev = ev;
- e = ev->event;
- {
- E_Border *b;
-
- b = e_border_find_by_window(e->win);
- if (b)
- {
- if (e->win == b->win.main)
- e_cb_border_mouse_out(b, ev);
- if (e->win == b->win.input)
- {
- evas_event_feed_mouse_out(b->evas);
- }
- }
- }
- current_ev = NULL;
-
- D_RETURN;
-}
-
-/* handling expose events */
-static void
-e_window_expose(Ecore_Event * ev)
-{
- Ecore_Event_Window_Expose *e;
-
- D_ENTER;
-
- current_ev = ev;
- e = ev->event;
- {
- E_Border *b;
-
- b = e_border_find_by_window(e->win);
- if (b)
- {
- e_border_redraw_region(b, e->x, e->y, e->w, e->h);
- }
- }
- current_ev = NULL;
-
- D_RETURN;
-}
-
-/* what to do with border events */
-
-static void
-e_cb_mouse_in(void *data, Ebits_Object o, char *class,
- int bt, int x, int y, int ox, int oy, int ow, int oh)
-{
- E_Border *b;
-
- D_ENTER;
-
- b = data;
- if (border_mouse_buttons)
- D_RETURN;
- border_mouse_x = mouse_x;
- border_mouse_y = mouse_y;
- if (class)
- e_cursors_display_in_window(b->win.main, class);
- else
- e_cursors_display_in_window(b->win.main, "Default");
- if (!current_ev)
- D_RETURN;
-
- e_action_stop(class, ACT_MOUSE_IN, 0, NULL, ECORE_EVENT_KEY_MODIFIER_NONE,
- E_OBJECT(b), NULL, x, y, border_mouse_x, border_mouse_y);
- e_action_start(class, ACT_MOUSE_IN, 0, NULL, ECORE_EVENT_KEY_MODIFIER_NONE,
- E_OBJECT(b), NULL, x, y, border_mouse_x, border_mouse_y);
-
- D_RETURN;
- UN(o);
- UN(bt);
- UN(ox);
- UN(oy);
- UN(ow);
- UN(oh);
-}
-
-static void
-e_cb_mouse_out(void *data, Ebits_Object o, char *class,
- int bt, int x, int y, int ox, int oy, int ow, int oh)
-{
- E_Border *b;
-
- D_ENTER;
-
- b = data;
- if (border_mouse_buttons)
- D_RETURN;
- border_mouse_x = mouse_x;
- border_mouse_y = mouse_y;
- if (!current_ev)
- D_RETURN;
- e_cursors_display_in_window(b->win.main, "Default");
- e_action_stop(class, ACT_MOUSE_OUT, 0, NULL, ECORE_EVENT_KEY_MODIFIER_NONE,
- E_OBJECT(b), NULL, x, y, border_mouse_x, border_mouse_y);
- e_action_start(class, ACT_MOUSE_OUT, 0, NULL, ECORE_EVENT_KEY_MODIFIER_NONE,
- E_OBJECT(b), NULL, x, y, border_mouse_x, border_mouse_y);
- D_RETURN;
- UN(o);
- UN(bt);
- UN(ox);
- UN(oy);
- UN(ow);
- UN(oh);
-}
-
-static void
-e_cb_mouse_down(void *data, Ebits_Object o, char *class,
- int bt, int x, int y, int ox, int oy, int ow, int oh)
-{
- E_Border *b;
-
- D_ENTER;
-
- b = data;
- border_mouse_x = mouse_x;
- border_mouse_y = mouse_y;
- border_mouse_buttons = mouse_buttons;
- if (!current_ev)
- D_RETURN;
- {
- E_Action_Type act;
- Ecore_Event_Key_Modifiers mods;
-
- mods = ((Ecore_Event_Mouse_Down *) (current_ev->event))->mods;
- act = ACT_MOUSE_CLICK;
-
- if (((Ecore_Event_Mouse_Down *) (current_ev->event))->double_click)
- act = ACT_MOUSE_DOUBLE;
- else if (((Ecore_Event_Mouse_Down *) (current_ev->event))->triple_click)
- act = ACT_MOUSE_TRIPLE;
-
- e_action_stop(class, act, bt, NULL, mods, E_OBJECT(b),
- NULL, x, y, border_mouse_x, border_mouse_y);
- e_action_start(class, act, bt, NULL, mods, E_OBJECT(b),
- NULL, x, y, border_mouse_x, border_mouse_y);
- }
- D_RETURN;
- UN(o);
- UN(ox);
- UN(oy);
- UN(ow);
- UN(oh);
-}
-
-static void
-e_cb_mouse_up(void *data, Ebits_Object o, char *class,
- int bt, int x, int y, int ox, int oy, int ow, int oh)
-{
- E_Border *b;
-
- D_ENTER;
-
- b = data;
- border_mouse_x = mouse_x;
- border_mouse_y = mouse_y;
- border_mouse_buttons = mouse_buttons;
- if (!current_ev)
- D_RETURN;
- {
- E_Action_Type act;
- Ecore_Event_Key_Modifiers mods;
-
- mods = ((Ecore_Event_Mouse_Up *) (current_ev->event))->mods;
- act = ACT_MOUSE_UP;
-
- if ((x >= ox) && (x < (ox + ow)) && (y >= oy) && (y < (oy + oh)))
- act = ACT_MOUSE_CLICKED;
-
- e_action_stop(class, act, bt, NULL, mods, E_OBJECT(b),
- NULL, x, y, border_mouse_x, border_mouse_y);
- e_action_start(class, act, bt, NULL, mods, E_OBJECT(b),
- NULL, x, y, border_mouse_x, border_mouse_y);
- }
- D_RETURN;
- UN(o);
-}
-
-static void
-e_cb_mouse_move(void *data, Ebits_Object o, char *class,
- int bt, int x, int y, int ox, int oy, int ow, int oh)
-{
- E_Border *b;
- int dx, dy;
-
- D_ENTER;
-
- b = data;
- dx = mouse_x - border_mouse_x;
- dy = mouse_y - border_mouse_y;
- border_mouse_x = mouse_x;
- border_mouse_y = mouse_y;
-
- if (!current_ev)
- D_RETURN;
-
- e_action_cont(class, ACT_MOUSE_MOVE, 0, NULL, ECORE_EVENT_KEY_MODIFIER_NONE,
- E_OBJECT(b), NULL, x, y, border_mouse_x, border_mouse_y, dx,
- dy);
-
- D_RETURN;
- UN(o);
- UN(bt);
- UN(ox);
- UN(oy);
- UN(ow);
- UN(oh);
-}
-
-/* callbacks for certain things */
-static void
-e_cb_border_mouse_in(E_Border * b, Ecore_Event * e)
-{
- int x, y;
- char *class = "Window_Grab";
- int focus_mode;
-
- D_ENTER;
- focus_mode = config_data->window->focus_mode;
- /* pointer focus stuff */
- if (focus_mode == 0)
- e_focus_set_focus(b);
-
- border_mouse_x = mouse_x;
- border_mouse_y = mouse_y;
- if (!current_ev)
- D_RETURN;
-
- x = ((Ecore_Event_Window_Enter *) (e->event))->x;
- y = ((Ecore_Event_Window_Enter *) (e->event))->y;
-
- e_action_stop(class, ACT_MOUSE_IN, 0, NULL, ECORE_EVENT_KEY_MODIFIER_NONE,
- E_OBJECT(b), NULL, x, y, border_mouse_x, border_mouse_y);
- e_action_start(class, ACT_MOUSE_IN, 0, NULL, ECORE_EVENT_KEY_MODIFIER_NONE,
- E_OBJECT(b), NULL, x, y, border_mouse_x, border_mouse_y);
-
- D_RETURN;
-}
-
-static void
-e_cb_border_mouse_out(E_Border * b, Ecore_Event * e)
-{
- int x, y;
- char *class = "Window_Grab";
-
- D_ENTER;
-
- x = mouse_x;
- y = mouse_y;
- border_mouse_x = mouse_x;
- border_mouse_y = mouse_y;
- if (!current_ev)
- D_RETURN;
-
- e_action_stop(class, ACT_MOUSE_OUT, 0, NULL, ECORE_EVENT_KEY_MODIFIER_NONE,
- E_OBJECT(b), NULL, x, y, border_mouse_x, border_mouse_y);
- e_action_start(class, ACT_MOUSE_OUT, 0, NULL, ECORE_EVENT_KEY_MODIFIER_NONE,
- E_OBJECT(b), NULL, x, y, border_mouse_x, border_mouse_y);
- D_RETURN;
- UN(e);
-}
-
-static void
-e_cb_border_mouse_down(E_Border * b, Ecore_Event * e)
-{
- int x, y, bt;
- char *class = "Window_Grab";
- int focus_mode;
-
- D_ENTER;
-
- focus_mode = config_data->window->focus_mode;
- ecore_pointer_grab(((Ecore_Event_Mouse_Down *) (e->event))->win,
- CurrentTime);
- border_mouse_x = mouse_x;
- border_mouse_y = mouse_y;
- if (!current_ev)
- D_RETURN;
-
- x = ((Ecore_Event_Mouse_Down *) (e->event))->x;
- y = ((Ecore_Event_Mouse_Down *) (e->event))->y;
- bt = ((Ecore_Event_Mouse_Down *) (e->event))->button;
- {
- E_Action_Type act;
- Ecore_Event_Key_Modifiers mods;
-
- mods = ((Ecore_Event_Mouse_Down *) (current_ev->event))->mods;
- act = ACT_MOUSE_CLICK;
-
- if (((Ecore_Event_Mouse_Down *) (current_ev->event))->double_click)
- act = ACT_MOUSE_DOUBLE;
- else if (((Ecore_Event_Mouse_Down *) (current_ev->event))->triple_click)
- act = ACT_MOUSE_TRIPLE;
-
- e_action_stop(class, act, bt, NULL, mods, E_OBJECT(b), NULL,
- x, y, border_mouse_x, border_mouse_y);
- if (!e_action_start(class, act, bt, NULL, mods, E_OBJECT(b), NULL,
- x, y, border_mouse_x, border_mouse_y))
- {
- ecore_pointer_ungrab(((Ecore_Event_Mouse_Down *) (e->event))->time);
- }
- else
- {
- ecore_pointer_grab(((Ecore_Event_Mouse_Down *) (e->event))->win,
- ((Ecore_Event_Mouse_Down *) (e->event))->time);
- }
- }
-
- D_RETURN;
-}
-
-static void
-e_cb_border_mouse_up(E_Border * b, Ecore_Event * e)
-{
- int x, y, bt;
- char *class = "Window_Grab";
-
- D_ENTER;
-
- border_mouse_x = mouse_x;
- border_mouse_y = mouse_y;
-
- if (!current_ev)
- D_RETURN;
- ecore_pointer_ungrab(((Ecore_Event_Mouse_Up *) (e->event))->time);
-
- x = ((Ecore_Event_Mouse_Up *) (e->event))->x;
- y = ((Ecore_Event_Mouse_Up *) (e->event))->y;
- bt = ((Ecore_Event_Mouse_Up *) (e->event))->button;
- {
- E_Action_Type act;
- Ecore_Event_Key_Modifiers mods;
-
- mods = ((Ecore_Event_Mouse_Up *) (current_ev->event))->mods;
- act = ACT_MOUSE_UP;
- e_action_stop(class, act, bt, NULL, mods, E_OBJECT(b),
- NULL, x, y, border_mouse_x, border_mouse_y);
- e_action_start(class, act, bt, NULL, mods, E_OBJECT(b),
- NULL, x, y, border_mouse_x, border_mouse_y);
- }
-
- D_RETURN;
-}
-
-static void
-e_cb_border_mouse_move(E_Border * b, Ecore_Event * e)
-{
- int dx, dy;
- int x, y;
- char *class = "Window_Grab";
-
- D_ENTER;
-
- dx = mouse_x - border_mouse_x;
- dy = mouse_y - border_mouse_y;
- border_mouse_x = mouse_x;
- border_mouse_y = mouse_y;
- if (!current_ev)
- D_RETURN;
- x = ((Ecore_Event_Mouse_Move *) (e->event))->x;
- y = ((Ecore_Event_Mouse_Move *) (e->event))->y;
- e_action_cont(class, ACT_MOUSE_MOVE, 0, NULL, ECORE_EVENT_KEY_MODIFIER_NONE,
- E_OBJECT(b), NULL, x, y, border_mouse_x, border_mouse_y, dx,
- dy);
-
- D_RETURN;
-}
-
-static void
-e_cb_border_move_resize(E_Border * b)
-{
- D_ENTER;
-
- D_RETURN;
- UN(b);
-}
-
-static void
-e_cb_border_visibility(E_Border * b)
-{
- D_ENTER;
-
- D_RETURN;
- UN(b);
-}
-
-static void
-e_border_poll(int val, void *data)
-{
- D_ENTER;
-
- ecore_add_event_timer("e_border_poll()", 1.00, e_border_poll, val + 1, NULL);
- D_RETURN;
- UN(data);
-}
-
-static void
-e_border_cleanup_window_list(Evas_List *windows)
-{
- Window temp;
-
- /* Free the old set of pixmaps */
- while (windows)
- {
- temp = (Window) windows->data;
- windows = evas_list_remove(windows, (void *)temp);
- ecore_window_destroy(temp);
- }
-}
-
-static void
-e_border_cleanup(E_Border * b)
-{
- D_ENTER;
-
- e_match_save_props(b);
- D("before notify\n");
- e_observee_notify_observers(E_OBSERVEE(b), E_EVENT_BORDER_DELETE, NULL);
- D("after notify\n");
- e_bordermenu_hide();
- e_desktops_del_border(b->desk, b);
- if (b->bits.b)
- ebits_free(b->bits.b);
-
- if (b->obj.title)
- e_text_free(b->obj.title);
-
- if (b->obj.title_clip)
- evas_object_del(b->obj.title_clip);
-
- e_border_cleanup_window_list(b->windows);
- evases = evas_list_remove(evases, b->evas);
- evas_free(b->evas);
-
- ecore_window_destroy(b->win.b);
- ecore_window_destroy(b->win.container);
- ecore_window_destroy(b->win.input);
- ecore_window_destroy(b->win.main);
- borders = evas_list_remove(borders, b);
-
- IF_FREE(b->client.title);
- IF_FREE(b->client.name);
- IF_FREE(b->client.class);
- IF_FREE(b->client.command);
- IF_FREE(b->client.machine);
- IF_FREE(b->client.icon_name);
- IF_FREE(b->border_style);
- IF_FREE(b->border_file);
-
- /* Cleanup superclass. */
- e_observee_cleanup(E_OBSERVEE(b));
-
- D_RETURN;
-}
-
-/* border creation, deletion, modification and general queries */
-
-void
-e_border_apply_border(E_Border * b)
-{
- int pl, pr, pt, pb;
- char *borders, buf[PATH_MAX], border[PATH_MAX], *style = NULL;
- int prop_selected = 0, prop_sticky = 0, prop_shaded = 0;
-
- D_ENTER;
-
- style = "default";
- if ((!b->client.titlebar) && (!b->client.border))
- {
- style = "borderless";
- b->current.has_shape = 0;
- }
- if (b->border_style)
- style = b->border_style;
-
- if (b->current.selected)
- prop_selected = 1;
- if ((b->current.shaded > 0) && (b->current.shaded == b->client.h))
- prop_shaded = 1;
- if (b->client.sticky)
- {
- prop_sticky = 1;
- e_desktops_add_sticky(b);
- }
- else
- {
- e_desktops_rm_sticky(b);
- }
-
- snprintf(border, PATH_MAX, "selected-%i.sticky-%i.shaded-%i.bits.db",
- prop_selected, prop_sticky, prop_shaded);
-
- borders = e_config_get("borders");
- snprintf(buf, PATH_MAX, "%s%s/%s", borders, style, border);
-
- /* if it's not changed - abort and dont do anything */
- if ((b->border_file) && (!strcmp(buf, b->border_file)))
- D_RETURN;
-
- IF_FREE(b->border_file);
- e_strdup(b->border_file, buf);
-
- e_border_set_bits(b, buf);
-
- pl = pr = pt = pb = 0;
- if (b->bits.b)
- ebits_get_insets(b->bits.b, &pl, &pr, &pt, &pb);
- e_icccm_set_frame_size(b->win.client, pl, pr, pt, pb);
-
- D_RETURN;
-}
-
-void
-e_border_reshape(E_Border * b)
-{
- static Window shape_win = 0;
- int pl, pr, pt, pb;
-
- D_ENTER;
-
- if ((b->current.shaped_client == b->previous.shaped_client) &&
- (b->current.shape_changes == b->previous.shape_changes) &&
- (b->current.has_shape == b->previous.has_shape) && (!b->shape_changed))
- D_RETURN;
-
- if (!shape_win)
- shape_win = ecore_window_override_new(0, 0, 0, 1, 1);
- pl = pr = pt = pb = 0;
- if (b->bits.b)
- ebits_get_insets(b->bits.b, &pl, &pr, &pt, &pb);
- b->shape_changed = 0;
-
- if ((!b->current.shaped_client) && (!b->current.has_shape))
- {
- ecore_window_set_shape_mask(b->win.main, 0);
- D_RETURN;
- }
-
- ecore_window_resize(shape_win, b->current.w, b->current.h);
-
- if ((b->current.shaped_client) && (!b->current.has_shape))
- {
- XRectangle rects[4];
-
- rects[0].x = 0;
- rects[0].y = 0;
- rects[0].width = b->current.w;
- rects[0].height = pt;
-
- rects[1].x = 0;
- rects[1].y = pt;
- rects[1].width = pl;
- rects[1].height = b->current.h - pt - pb;
-
- rects[2].x = b->current.w - pr;
- rects[2].y = pt;
- rects[2].width = pr;
- rects[2].height = b->current.h - pt - pb;
-
- rects[3].x = 0;
- rects[3].y = b->current.h - pb;
- rects[3].width = b->current.w;
- rects[3].height = pb;
-
- ecore_window_set_shape_window(shape_win, b->win.client, pl,
- pt - b->current.shaded);
- ecore_window_clip_shape_by_rectangle(shape_win, pl, pt,
- b->current.w - pl - pr,
- b->current.h - pt - pb);
-
- ecore_window_add_shape_rectangles(shape_win, rects, 4);
-
- }
- else
- {
- Display *disp;
- Evas_List *windows;
-
- if ((!b->current.shaped_client) && (b->current.has_shape))
- {
- ecore_window_set_shape_rectangle(shape_win, pl,
- pt - b->current.shaded,
- b->current.w - pl - pr,
- b->current.h - pt - pb);
- }
- else
- {
- ecore_window_set_shape_window(shape_win, b->win.client, pl,
- pt - b->current.shaded);
- ecore_window_clip_shape_by_rectangle(shape_win, pl, pt,
- b->current.w - pl - pr,
- b->current.h - pt - pb);
- }
-
- D("SHAPE update for border %p bit %s\n", b, b->border_file);
-
- e_border_update_render(b);
-
- windows = b->windows;
- disp = ecore_display_get();
-
- while (windows)
- {
- int x, y, w, h;
- Window window;
-
- window = (Window) windows->data;
- ecore_window_get_geometry(window, &x, &y, &w, &h);
- ecore_window_add_shape_window(shape_win, window, x, y);
-
- windows = windows->next;
- }
-
- ecore_window_clear(shape_win);
- }
-
- ecore_window_set_shape_window(b->win.main, shape_win, 0, 0);
-
- D_RETURN;
-}
-
-void
-e_border_release(E_Border * b)
-{
- int pl, pr, pt, pb;
-
- D_ENTER;
-
- pl = pr = pt = pb = 0;
- if (b->bits.b)
- ebits_get_insets(b->bits.b, &pl, &pr, &pt, &pb);
- ecore_window_reparent(b->win.client, 0, b->current.x + pl,
- b->current.y + pt);
- e_icccm_release(b->win.client);
- e_icccm_send_focus_to( e_desktop_window(), 1);
-
- D_RETURN;
-}
-
-E_Border *
-e_border_adopt(Window win, int use_client_pos)
-{
- E_Border *b;
- int bw;
- int show = 1;
- E_Desktop *initial_desktop;
-
- D_ENTER;
-
- /* create the struct */
- b = e_border_new();
- initial_desktop = b->desk;
-
- /* set the right event on the client */
- ecore_window_set_events(win,
- XEV_VISIBILITY |
- ResizeRedirectMask |
- XEV_CONFIGURE | XEV_MOUSE_MOVE |
- XEV_FOCUS | XEV_PROPERTY | XEV_COLORMAP);
- ecore_window_select_shape_events(win);
- /* parent of the client window listens for these */
- ecore_window_set_events(b->win.container,
- XEV_CHILD_CHANGE | XEV_CHILD_REDIRECT);
- /* add to save set & border of 0 */
- e_icccm_adopt(win);
- bw = ecore_window_get_border_width(win);
- ecore_window_set_border_width(win, 0);
- b->win.client = win;
- b->current.requested.visible = 1;
- /* get hints */
- e_icccm_get_size_info(win, b);
- e_icccm_get_pos_info(win, b);
- {
- int x, y, w, h;
-
- ecore_window_get_geometry(win, &x, &y, &w, &h);
- b->current.requested.x = x;
- b->current.requested.y = y;
- b->current.requested.w = w;
- b->current.requested.h = h;
- }
-
- e_icccm_get_mwm_hints(win, b);
- e_icccm_get_layer(win, b);
- e_icccm_get_title(win, b);
- e_icccm_get_class(win, b);
- e_icccm_get_hints(win, b);
- e_icccm_get_machine(win, b);
- e_icccm_get_command(win, b);
- e_icccm_get_icon_name(win, b);
- e_icccm_get_e_hack_launch_id(win, b);
- b->current.shaped_client = e_icccm_is_shaped(win);
- /* we have now placed the bugger */
- b->placed = 1;
- /* desk area */
- if (use_client_pos)
- {
- int x, y;
-
- ecore_window_get_geometry(win, &x, &y, NULL, NULL);
- b->current.requested.x = x;
- b->current.requested.y = y;
- b->changed = 1;
- }
- /* reparent the window finally */
- ecore_window_reparent(win, b->win.container, 0, 0);
- e_match_set_props(b);
- e_icccm_set_desk_area(win, b->client.area.x, b->client.area.y);
- e_icccm_set_desk(win, b->client.desk);
- /* figure what border to use */
- e_border_apply_border(b);
- {
- int pl, pr, pt, pb;
-
- pl = pr = pt = pb = 0;
- if (b->bits.b)
- ebits_get_insets(b->bits.b, &pl, &pr, &pt, &pb);
- b->current.requested.x += pl;
- b->current.requested.y += pt;
- b->changed = 1;
- }
- if (!use_client_pos)
- {
- int x, y;
- int pl, pr, pt, pb;
-
- pl = pr = pt = pb = 0;
- x = y = 0;
- if (b->bits.b)
- ebits_get_insets(b->bits.b, &pl, &pr, &pt, &pb);
- bw *= 2;
- if (b->client.pos.requested)
- {
- switch (b->client.pos.gravity)
- {
- case NorthWestGravity:
- x = b->client.pos.x + pl;
- y = b->client.pos.y + pt;
- break;
- case NorthGravity:
- x = b->client.pos.x + (bw / 2);
- y = b->client.pos.y + pt;
- break;
- case NorthEastGravity:
- x = b->client.pos.x - pr + bw;
- y = b->client.pos.y + pt;
- break;
- case EastGravity:
- x = b->client.pos.x - pr + bw;
- y = b->client.pos.y + (bw / 2);
- break;
- case SouthEastGravity:
- x = b->client.pos.x - pr + bw;
- y = b->client.pos.y - pb + bw;
- break;
- case SouthGravity:
- x = b->client.pos.x + (bw / 2);
- y = b->client.pos.y - pb;
- break;
- case SouthWestGravity:
- x = b->client.pos.x + pl;
- y = b->client.pos.y - pb + bw;
- break;
- case WestGravity:
- x = b->client.pos.x + pl;
- y = b->client.pos.y + (bw / 2);
- break;
- case CenterGravity:
- x = b->client.pos.x;
- y = b->client.pos.y;
- break;
- case StaticGravity:
- x = b->client.pos.x;
- y = b->client.pos.y;
- break;
- case ForgetGravity:
- x = b->client.pos.x;
- y = b->client.pos.y;
- break;
- default:
- x = b->client.pos.x + pl;
- y = b->client.pos.y + pt;
- break;
- }
- }
- else
- {
- show = e_place_border(b, initial_desktop, &x, &y,
- config_data->window->place_mode);
- x += pl;
- y += pt;
- }
- b->current.requested.x = x - pl;
- b->current.requested.y = y - pt;
- b->changed = 1;
- }
- /* show the client */
- e_icccm_state_mapped(win);
- /* fix size so it matches the hints a client asks for */
- b->changed = 1;
- e_border_adjust_limits(b);
- b->current.requested.h = b->current.h;
- b->current.requested.w = b->current.w;
- e_border_raise(b);
- e_border_update(b);
- e_border_reshape(b);
- ecore_window_show(win);
-
- if (b->client.e.launch_id)
- e_exec_broadcast_e_hack_found(b->win.client);
-
- D_RETURN_(b);
-}
-
-E_Border *
-e_border_new(void)
-{
- /* FIXME: need to set an upper limit on the frame size */
- E_Border *b;
- char *font_dir;
- E_Desktop *desk;
-
- D_ENTER;
-
- font_dir = e_config_get("fonts");
- b = NEW(E_Border, 1);
- ZERO(b, E_Border, 1);
-
- e_observee_init(E_OBSERVEE(b), (E_Cleanup_Func) e_border_cleanup);
- e_observer_register_observee(E_OBSERVER(delayed_window_raise),
- E_OBSERVEE(b));
-
- D("BORDER CREATED AT %p\n", b);
-
- b->current.has_shape = 1;
-
- b->current.requested.w = 1;
- b->current.requested.h = 1;
- b->client.min.w = 1;
- b->client.min.h = 1;
- b->client.max.w = 1000000;
- b->client.max.h = 1000000;
- b->client.min.aspect = -1000000;
- b->client.max.aspect = 1000000;
- b->client.step.w = 1;
- b->client.step.h = 1;
- b->client.layer = 4;
- b->client.border = 1;
- b->client.handles = 1;
- b->client.titlebar = 1;
- b->client.takes_focus = 1;
-
- desk = e_desktops_get(e_desktops_get_current());
- e_desktops_add_border(desk, b);
- /* b->win.main = ecore_window_override_new(desk->win.main, 0, 0, 1, 1); */
- b->win.main = ecore_window_override_new(0, 0, 0, 1, 1);
- b->win.input = ecore_window_input_new(b->win.main, 0, 0, 1, 1);
- b->win.container = ecore_window_override_new(b->win.main, 0, 0, 1, 1);
- e_cursors_display_in_window(b->win.container, "Application");
- ecore_window_set_events_propagate(b->win.input, 1);
- ecore_window_set_events(b->win.input, XEV_MOUSE_MOVE | XEV_BUTTON);
- ecore_window_set_events(b->win.main, XEV_IN_OUT);
- ecore_window_set_events(b->win.container, XEV_IN_OUT);
- ecore_window_show(b->win.input);
- ecore_window_show(b->win.container);
-
- b->evas = e_evas_new_all(ecore_display_get(),
- b->win.main,
- 0, 0, 1, 1, font_dir);
- b->win.b = e_evas_get_window(b->evas);
- e_cursors_display_in_window(b->win.b, "Default");
-
- b->obj.title = e_text_new(b->evas, "", "title");
- b->obj.title_clip = evas_object_rectangle_add(b->evas);
- evas_object_color_set(b->obj.title_clip, 255, 255, 255, 255);
- e_text_show(b->obj.title);
- evas_object_show(b->obj.title_clip);
- e_text_set_clip(b->obj.title, b->obj.title_clip);
-
- ecore_window_raise(b->win.input);
- ecore_window_raise(b->win.container);
-
- evases = evas_list_append(evases, b->evas);
-
- ecore_window_set_events(b->win.b, XEV_EXPOSE);
-
- ecore_window_show(b->win.b);
-
- e_border_attach_mouse_grabs(b);
-
- /* e_icccm_send_focus_to(b->win.client, 1);*/
-
- borders = evas_list_prepend(borders, b);
-
- e_observee_notify_all_observers(E_OBSERVEE(b), E_EVENT_BORDER_NEW, NULL);
-
- D_RETURN_(b);
-}
-
-void
-e_border_iconify(E_Border * b)
-{
- D_ENTER;
- b->client.iconified = 1;
- b->current.requested.visible = 0;
- e_icccm_state_iconified(b->win.client);
- b->changed = 1;
- e_border_update(b);
- e_observee_notify_observers(E_OBSERVEE(b), E_EVENT_BORDER_ICONIFY, NULL);
-
- D_RETURN;
-}
-
-void
-e_border_uniconify(E_Border * b)
-{
- b->client.iconified = 0;
- b->current.requested.visible = 1;
- b->client.desk = e_desktops_get_current();
- e_icccm_state_mapped(b->win.client);
- b->changed = 1;
- e_border_update(b);
- e_border_raise(b);
-
- e_observee_notify_observers(E_OBSERVEE(b), E_EVENT_BORDER_UNICONIFY, NULL);
-}
-
-void
-e_border_remove_mouse_grabs(E_Border * b)
-{
- Evas_List * l;
-
- D_ENTER;
-
- if (config_data->grabs)
- {
- for (l = config_data->grabs; l; l = l->next)
- {
- E_Grab *g;
-
- g = l->data;
- ecore_button_ungrab(b->win.main, g->button, g->mods, g->any_mod);
- }
- }
- if (b->click_grab)
- {
- ecore_button_ungrab(b->win.main, b->click_grab->button,
- b->click_grab->mods, b->click_grab->any_mod);
- FREE(b->click_grab);
- }
- b->click_grab = NULL;
-
- D_RETURN;
-}
-
-void
-e_border_remove_click_grab(E_Border * b)
-{
- D_ENTER;
-
- if (b->click_grab)
- {
- E_Grab *g;
-
- g = b->click_grab;
- ecore_button_ungrab(b->win.container, g->button, g->mods, g->any_mod);
- ecore_window_button_grab_auto_replay_set(b->win.container, NULL);
- b->click_grab = NULL;
- FREE(g);
- }
-
- D_RETURN;
-}
-
-void
-e_border_attach_mouse_grabs(E_Border * b)
-{
- int focus_mode;
- Evas_List *l;
-
- D_ENTER;
-
- focus_mode = config_data->window->focus_mode;
-
- /* settings - click to focus would affect grabs */
- if ((!b->current.selected) && (focus_mode == 2))
- {
- E_Grab *g;
-
- g = NEW(E_Grab, 1);
- ZERO(g, E_Grab, 1);
- g->button = 1;
- g->mods = ECORE_EVENT_KEY_MODIFIER_NONE;
- g->any_mod = 0;
- g->remove_after = 0;
- ecore_button_grab(b->win.container, g->button, XEV_BUTTON_PRESS,
- g->mods, g->any_mod);
- ecore_window_button_grab_auto_replay_set(b->win.container,
- e_border_replay_query);
- b->click_grab = g;
- }
-
- for (l = config_data->grabs; l; l = l->next)
- {
- E_Grab *g;
-
- g = l->data;
- ecore_button_grab(b->win.main, g->button, XEV_BUTTON_PRESS, g->mods, 0);
- }
-
- D_RETURN;
-}
-
-void
-e_border_remove_all_mouse_grabs(void)
-{
- Evas_List * l;
-
- D_ENTER;
-
- for (l = borders; l; l = l->next)
- e_border_remove_mouse_grabs((E_Border *) l->data);
-
- D_RETURN;
-}
-
-void
-e_border_attach_all_mouse_grabs(void)
-{
- Evas_List * l;
-
- D_ENTER;
-
- for (l = borders; l; l = l->next)
- e_border_attach_mouse_grabs((E_Border *) l->data);
-
- D_RETURN;
-}
-
-void
-e_border_redo_grabs(void)
-{
- char *grabs_db;
- char *settings_db;
- static time_t mod_date_grabs = 0;
- static time_t mod_date_settings = 0;
- time_t mod;
- int changed = 0;
- Evas_List * l;
-
- D_ENTER;
-
- grabs_db = e_config_get("grabs");
- settings_db = e_config_get("settings");
- mod = e_file_mod_time(grabs_db);
- if (mod != mod_date_grabs)
- changed = 1;
- mod_date_grabs = mod;
- if (!changed)
- {
- mod = e_file_mod_time(settings_db);
- if (mod != mod_date_settings)
- changed = 1;
- mod_date_settings = mod;
- }
- if (!changed)
- D_RETURN;
- for (l = borders; l; l = l->next)
- {
- E_Border *b;
-
- b = l->data;
- e_border_remove_mouse_grabs(b);
- e_border_attach_mouse_grabs(b);
- }
-
- D_RETURN;
-}
-
-E_Border *
-e_border_find_by_window(Window win)
-{
- Window pwin;
- Evas_List * l;
-
- D_ENTER;
-
- pwin = ecore_window_get_parent(win);
- for (l = borders; l; l = l->next)
- {
- E_Border *b;
-
- b = l->data;
-
- if ((win == b->win.main) ||
- (win == b->win.client) ||
- (win == b->win.container) ||
- (win == b->win.input) ||
- (win == b->win.b) ||
- (pwin == b->win.main))
- D_RETURN_(b);
- }
-
- D_RETURN_(NULL);
-}
-
-void
-e_border_set_bits(E_Border * b, char *file)
-{
- int pl, pr, pt, pb, ppl, ppr, ppt, ppb;
-
- D_ENTER;
-
- pl = pr = pt = pb = 0;
- ppl = ppr = ppt = ppb = 0;
-
- if (b->bits.b)
- ebits_get_insets(b->bits.b, &pl, &pr, &pt, &pb);
-
- if (b->bits.b)
- ebits_free(b->bits.b);
-
- b->bits.b = ebits_load(file);
- b->bits.new = 1;
- b->changed = 1;
-
- if (b->bits.b)
- ebits_get_insets(b->bits.b, &ppl, &ppr, &ppt, &ppb);
- b->current.requested.w -= (pl + pr) - (ppl + ppr);
- b->current.requested.h -= (pt + pb) - (ppt + ppb);
- b->current.requested.x += (pl - ppl);
- b->current.requested.y += (pt - ppt);
-
- if (b->bits.b)
- {
-
- ebits_add_to_evas(b->bits.b, b->evas);
- ebits_move(b->bits.b, 0, 0);
- ebits_show(b->bits.b);
-
- e_border_set_color_class(b, "Title BG", 100, 200, 255, 255);
-
-#define HOOK_CB(_class) \
-ebits_set_classed_bit_callback(b->bits.b, _class, EVAS_CALLBACK_MOUSE_IN, e_cb_mouse_in, b); \
-ebits_set_classed_bit_callback(b->bits.b, _class, EVAS_CALLBACK_MOUSE_OUT, e_cb_mouse_out, b); \
-ebits_set_classed_bit_callback(b->bits.b, _class, EVAS_CALLBACK_MOUSE_DOWN, e_cb_mouse_down, b); \
-ebits_set_classed_bit_callback(b->bits.b, _class, EVAS_CALLBACK_MOUSE_UP, e_cb_mouse_up, b); \
-ebits_set_classed_bit_callback(b->bits.b, _class, EVAS_CALLBACK_MOUSE_MOVE, e_cb_mouse_move, b);
- HOOK_CB("Title_Bar");
- HOOK_CB("Resize");
- HOOK_CB("Resize_Horizontal");
- HOOK_CB("Resize_Vertical");
- HOOK_CB("Close");
- HOOK_CB("Iconify");
- HOOK_CB("Max_Size");
- HOOK_CB("Menu");
-
- e_border_adjust_limits(b);
- }
-
- D_RETURN;
-}
-
-void
-e_border_set_color_class(E_Border * b, char *class, int rr, int gg, int bb,
- int aa)
-{
- D_ENTER;
-
- ebits_set_color_class(b->bits.b, class, rr, gg, bb, aa);
-
- D_RETURN;
-}
-
-void
-e_border_adjust_limits(E_Border * b)
-{
- int w, h, pl, pr, pt, pb, mx, my;
-
- D_ENTER;
-
- if (b->mode.move)
- {
- e_resist_border(b);
- }
- else
- {
- b->current.x = b->current.requested.x;
- b->current.y = b->current.requested.y;
- }
-
- b->current.w = b->current.requested.w;
- b->current.h = b->current.requested.h - b->current.shaded;
-
- if ((!b->current.shaded) && (!b->mode.move))
- {
- if (b->current.w < 1)
- b->current.w = 1;
- if (b->current.h < 1)
- b->current.h = 1;
-
- pl = pr = pt = pb = 0;
- if (b->bits.b)
- ebits_get_insets(b->bits.b, &pl, &pr, &pt, &pb);
-
- if (b->current.w < (pl + pr + 1))
- b->current.w = pl + pr + 1;
- if (b->current.h < (pt + pb + 1))
- b->current.h = pt + pb + 1;
-
- w = b->current.w - pl - pr;
- h = b->current.h - pt - pb + b->current.shaded;
-
- mx = my = 1;
- if (b->bits.b)
- ebits_get_min_size(b->bits.b, &mx, &my);
- if (b->current.w < mx)
- b->current.w = mx;
- if (b->current.h < my)
- b->current.h = my;
- mx = my = 999999;
- if (b->bits.b)
- ebits_get_max_size(b->bits.b, &mx, &my);
- if (b->current.w > mx)
- b->current.w = mx;
- if (b->current.h > my)
- b->current.h = my;
-
- if (w < b->client.min.w)
- w = b->client.min.w;
- if (h < b->client.min.h)
- h = b->client.min.h;
- if (w > b->client.max.w)
- w = b->client.max.w;
- if (h > b->client.max.h)
- h = b->client.max.h;
- if ((w > 0) && (h > 0))
- {
- w -= b->client.base.w;
- h -= b->client.base.h;
- if ((w > 0) && (h > 0))
- {
- int i, j;
- double aspect;
-
- aspect = ((double)w) / ((double)h);
- if ((b->mode.resize == 4) || (b->mode.resize == 5))
- {
- if (aspect < b->client.min.aspect)
- h = (int)((double)w / b->client.min.aspect);
- if (aspect > b->client.max.aspect)
- h = (int)((double)w / b->client.max.aspect);
- }
- else if ((b->mode.resize == 6) || (b->mode.resize == 7))
- {
- if (aspect < b->client.min.aspect)
- w = (int)((double)h * b->client.min.aspect);
- if (aspect > b->client.max.aspect)
- w = (int)((double)h * b->client.max.aspect);
- }
- else
- {
- if (aspect < b->client.min.aspect)
- w = (int)((double)h * b->client.min.aspect);
- if (aspect > b->client.max.aspect)
- h = (int)((double)w / b->client.max.aspect);
- }
- i = w / b->client.step.w;
- j = h / b->client.step.h;
- w = i * b->client.step.w;
- h = j * b->client.step.h;
- }
- w += b->client.base.w;
- h += b->client.base.h;
- }
- b->client.w = w;
- b->client.h = h;
- b->current.w = w + pl + pr;
- b->current.h = h + pt + pb;
- }
-
- if (b->current.shaded == 0)
- {
- if ((b->mode.resize == 4) || (b->mode.resize == 6)
- || (b->mode.resize == 8))
- {
- }
- else if ((b->mode.resize == 1) || (b->mode.resize == 5))
- {
- b->current.x += (b->current.requested.w - b->current.w);
- b->current.y += (b->current.requested.h - b->current.h);
- }
- else if ((b->mode.resize == 2) || (b->mode.resize == 7))
- {
- b->current.y += (b->current.requested.h - b->current.h);
- }
- else if ((b->mode.resize == 3))
- {
- b->current.x += (b->current.requested.w - b->current.w);
- }
- }
-
- D_RETURN;
-}
-
-void
-e_border_redraw_region(E_Border * b, int x, int y, int w, int h)
-{
- GC gc;
- Evas_List *windows;
-
- gc = ecore_gc_new(b->win.b);
-
- windows = b->windows;
-
- while (windows)
- {
- int xx, yy, ww, hh;
- Window window;
-
- window = (Window) windows->data;
- ecore_window_get_geometry(window, &xx, &yy, &ww, &hh);
-
- if (INTERSECTS(x, y, w, h, xx, yy, ww, hh))
- {
- int rw, rh;
-
- rw = MIN(w, ww);
- rh = MIN(h, hh);
- ecore_window_clear_area(window, x, y, rw, rh);
- }
-
- windows = windows->next;
- }
-
- ecore_gc_free(gc);
-}
-
-void
-e_border_update_render(E_Border * b)
-{
- GC gc1, gc2;
- Evas_List *up, *hp, *owin, *nwin = NULL;
- Window window;
- Pixmap pmap, mask, temp;
- int pl, pr, pt, pb;
- Evas_Engine_Info_Software_X11 *info;
-
- pmap = ecore_pixmap_new(b->win.b, b->current.w, b->current.h, 0);
- mask = ecore_pixmap_new(b->win.b, b->current.w, b->current.h, 1);
-
- gc1 = ecore_gc_new(pmap);
- gc2 = ecore_gc_new(mask);
-
- info = (Evas_Engine_Info_Software_X11 *) evas_engine_info_get(b->evas);
- info->info.drawable = pmap;
- info->info.mask = mask;
- evas_engine_info_set(b->evas, (Evas_Engine_Info *) info);
-
- /*
- * Hide the bits and render to clear the old appearance from generating
- * damage rectangles.
- */
- if (b->bits.b)
- {
- ebits_hide(b->bits.b);
- }
-
- if (b->obj.title)
- {
- evas_object_hide(b->obj.title_clip);
- }
-
- evas_render(b->evas);
-
- /*
- * Position and then show the bits so we only get damage rectangles for the
- * area we want shown.
- */
- if (b->bits.b)
- {
- ebits_move(b->bits.b, 0, 0);
- ebits_resize(b->bits.b, b->current.w, b->current.h);
- ebits_get_insets(b->bits.b, &pl, &pr, &pt, &pb);
- ebits_show(b->bits.b);
- }
-
- if (b->obj.title)
- {
- double tx, ty, tw, th;
-
- ebits_get_named_bit_geometry(b->bits.b, "Title_Area", &tx, &ty, &tw,
- &th);
- e_text_move(b->obj.title, tx, ty);
- e_text_set_layer(b->obj.title, 1);
-
- evas_object_move(b->obj.title_clip, tx, ty);
- evas_object_resize(b->obj.title_clip, tw, th);
- evas_object_show(b->obj.title_clip);
- }
-
- hp = up = evas_render_updates(b->evas);
-
- owin = b->windows;
- b->windows = NULL;
-
- D("Rendering %d rectangles for border %p { w = %d, h = %d }\n",
- (up ? up->count : 0), b, b->current.w, b->current.h);
- while (up)
- {
- Evas_Rectangle *u;
-
- u = up->data;
-
- D("\tRectangle { x = %d, y = %d, w = %d, h = %d }\n",
- u->x, u->y, u->w, u->h);
-
- /* Copy the large pixmap to a series of small pixmaps. */
- temp = ecore_pixmap_new(b->win.b, u->w, u->h, 0);
- ecore_gc_set_fg(gc1, 0);
- ecore_fill_rectangle(temp, gc1, 0, 0, u->w, u->h);
- ecore_gc_set_fg(gc1, 1);
- ecore_area_copy(pmap, temp, gc1, u->x, u->y, u->w, u->h, 0, 0);
-
- /* Setup small windows for borders, with the pixmaps as backgrounds */
- window = ecore_window_override_new(b->win.main, u->x, u->y, u->w, u->h);
- ecore_window_set_events_propagate(window, 1);
- ecore_window_set_events(window, XEV_IN_OUT | XEV_MOUSE_MOVE |
- XEV_BUTTON);
- ecore_window_set_background_pixmap(window, temp);
- ecore_pixmap_free(temp);
-
- /* Copy the large mask to a series of small masks. */
- temp = ecore_pixmap_new(b->win.b, u->w, u->h, 1);
- ecore_gc_set_fg(gc2, 0);
- ecore_fill_rectangle(temp, gc2, 0, 0, u->w, u->h);
- ecore_gc_set_fg(gc2, 1);
- ecore_area_copy(mask, temp, gc2, u->x, u->y, u->w, u->h, 0, 0);
-
- ecore_window_set_shape_mask(window, temp);
- ecore_pixmap_free(temp);
-
- nwin = evas_list_append(nwin, (void *)window);
- up = up->next;
- }
-
- evas_render_updates_free(hp);
-
- ecore_gc_free(gc1);
- ecore_gc_free(gc2);
-
- ecore_pixmap_free(pmap);
- ecore_pixmap_free(mask);
-
- /* Update the display all at once. */
- b->windows = nwin;
- while (nwin)
- {
- window = (Window)nwin->data;
- ecore_window_raise(window);
- ecore_window_show(window);
- nwin = nwin->next;
- }
-
- /* Order is important here to have a smooth update */
- e_border_redraw_region(b, 0, 0, b->current.w, b->current.h);
- e_border_cleanup_window_list(owin);
-
- D("Finished rendering update\n");
-}
-
-void
-e_border_update(E_Border * b)
-{
- int location_changed = 0;
- int size_changed = 0;
- int border_changed = 0;
- int visibility_changed = 0;
- int state_changed = 0;
-
- D_ENTER;
-
- if (b->hold_changes)
- D_RETURN;
- if (!b->changed)
- D_RETURN;
-
- b->current.visible = b->current.requested.visible;
-
- if ((b->current.x != b->previous.x) || (b->current.y != b->previous.y))
- location_changed = 1;
- if ((b->current.w != b->previous.w) || (b->current.h != b->previous.h))
- size_changed = 1;
- if ((size_changed) && (b->current.has_shape))
- b->shape_changed = 1;
- if (b->current.selected != b->previous.selected)
- state_changed = 1;
- if (state_changed)
- {
- e_border_apply_border(b);
- if (!border_changed)
- {
- ecore_window_gravity_set(b->win.container, StaticGravity);
- border_changed = 1;
- size_changed = 1;
- }
- }
- if (b->bits.new)
- {
- ecore_window_gravity_set(b->win.container, StaticGravity);
- border_changed = 1;
- }
- if ((border_changed) && (b->current.has_shape))
- b->shape_changed = 1;
- if (b->current.visible != b->previous.visible)
- visibility_changed = 1;
-
- if ((location_changed) && (!size_changed))
- {
- int pl, pr, pt, pb;
-
- ecore_window_move(b->win.main, b->current.x, b->current.y);
- pl = pr = pt = pb = 0;
- if (b->bits.b)
- ebits_get_insets(b->bits.b, &pl, &pr, &pt, &pb);
- e_icccm_move_resize(b->win.client,
- b->current.x + pl,
- b->current.y + pt, b->client.w, b->client.h);
- e_cb_border_move_resize(b);
- }
- else if (size_changed)
- {
- int pl, pr, pt, pb, w, h;
- int smaller;
-
- if ((b->current.shaped_client) || (b->previous.shaped_client) ||
- (b->current.shape_changes) || (b->previous.shape_changes) ||
- (b->current.has_shape) || (b->previous.has_shape))
- b->shape_changed = 1;
- smaller = 0;
- if ((b->current.w < b->previous.w) || (b->current.h < b->previous.h))
- smaller = 1;
- pl = pr = pt = pb = 0;
- if (b->bits.b)
- ebits_get_insets(b->bits.b, &pl, &pr, &pt, &pb);
- ecore_window_move_resize(b->win.input,
- 0, 0, b->current.w, b->current.h);
- ecore_window_move_resize(b->win.main,
- b->current.x, b->current.y,
- b->current.w, b->current.h);
- w = b->current.w, h = b->current.h;
- if ((w < 1) || (h < 1))
- ecore_window_hide(b->win.b);
- else
- {
- ecore_window_show(b->win.b);
- ecore_window_move_resize(b->win.b, 0, 0, w, h);
- evas_output_size_set(b->evas, w, h);
- evas_output_viewport_set(b->evas, 0, 0, w, h);
- }
-
- if (b->current.shaded == b->client.h)
- {
- ecore_window_move_resize(b->win.container,
- b->current.w + 1,
- b->current.h + 1, 320, 320);
- }
- else
- {
- ecore_window_move_resize(b->win.container,
- pl,
- pt,
- b->current.w - pl - pr,
- b->current.h - pt - pb);
- }
-
- ecore_window_move_resize(b->win.client,
- 0, -b->current.shaded,
- b->client.w, b->client.h);
-
- e_icccm_move_resize(b->win.client,
- b->current.x + pl,
- b->current.y + pt - b->current.shaded, b->client.w,
- b->client.h);
- e_cb_border_move_resize(b);
- }
- if ((b->client.title) && (b->bits.b))
- {
- if (b->obj.title)
- {
- if (strcmp(b->client.title, b->obj.title->text))
- {
- e_text_set_text(b->obj.title, b->client.title);
- b->shape_changed = 1;
- }
- if (b->current.selected)
- e_text_set_state(b->obj.title, "selected");
- else
- e_text_set_state(b->obj.title, "normal");
- }
- }
- if (visibility_changed)
- {
- if (b->current.visible)
- ecore_window_show(b->win.main);
- else
- ecore_window_hide(b->win.main);
- e_cb_border_visibility(b);
- }
-
- if (border_changed)
- ecore_window_gravity_set(b->win.container, NorthWestGravity);
- b->bits.new = 0;
- b->previous = b->current;
- b->changed = 0;
-
- D_RETURN;
-}
-
-void
-e_border_set_layer(E_Border * b, int layer)
-{
- int dl;
-
- D_ENTER;
-
- if (b->client.layer == layer)
- D_RETURN;
- dl = layer - b->client.layer;
- b->client.layer = layer;
- if (dl > 0)
- e_border_lower(b);
- else
- e_border_raise(b);
-
- D_RETURN;
-}
-
-static void
-e_border_raise_delayed(int val, void *b)
-{
- int auto_raise = 0;
-
- D_ENTER;
-
- auto_raise = config_data->window->auto_raise;
- if (auto_raise)
- e_border_raise((E_Border *) b);
-
- D_RETURN;
- UN(val);
-}
-
-float
-e_border_delayed_val()
-{
- return config_data->window->raise_delay;
-}
-
-void
-e_border_raise(E_Border * b)
-{
- Evas_List *l;
- Evas_List **windows;
- E_Border *rel;
-
- D_ENTER;
-
- /* Sticky windows are not on a particular desktop, but we need the current
- * desktop window list to raise the window correctly. */
- if (b->client.sticky)
- {
- E_Desktop *desk;
-
- desk = e_desktops_get(e_desktops_get_current());
- windows = &desk->windows;
- }
- else
- windows = &b->desk->windows;
-
- if (!(*windows))
- {
- *windows = evas_list_append(*windows, b);
- ecore_window_raise(b->win.main);
- D_RETURN;
- }
- for (l = *windows; l; l = l->next)
- {
- rel = l->data;
- if (rel->client.layer > b->client.layer)
- {
- if (!b->client.sticky)
- {
- *windows = evas_list_remove(*windows, b);
- *windows = evas_list_prepend_relative(*windows, b, rel);
- }
-
- ecore_window_stack_below(b->win.main, rel->win.main);
- D_RETURN;
- }
- if ((!l->next) && (l->data != b))
- {
- if (!b->client.sticky)
- {
- *windows = evas_list_remove(*windows, b);
- *windows = evas_list_append(*windows, b);
- }
- ecore_window_raise(b->win.main);
- D_RETURN;
- }
- }
-
- D_RETURN;
-}
-
-void
-e_border_lower(E_Border * b)
-{
- Evas_List *l;
- Evas_List **windows;
- E_Border *rel;
-
- D_ENTER;
-
- /* Sticky windows are not on a particular desktop, but we need the current
- * desktop window list to raise the window correctly. */
- if (b->client.sticky)
- {
- E_Desktop *desk;
-
- desk = e_desktops_get(e_desktops_get_current());
- windows = &desk->windows;
- }
- else
- windows = &b->desk->windows;
-
- if (!(*windows))
- {
- *windows = evas_list_append(*windows, b);
- ecore_window_raise(b->win.main);
- D_RETURN;
- }
- for (l = *windows; l; l = l->next)
- {
- rel = l->data;
- if (rel->client.layer == b->client.layer)
- {
- if (b == rel)
- D_RETURN;
- *windows = evas_list_remove(*windows, b);
- *windows = evas_list_prepend_relative(*windows, b, rel);
- ecore_window_stack_below(b->win.main, rel->win.main);
- D_RETURN;
- }
- }
-
- D_RETURN;
-}
-
-void
-e_border_raise_above(E_Border * b, E_Border * above)
-{
- Evas_List **windows;
-
- D_ENTER;
-
- /* Sticky windows are not on a particular desktop, but we need the current
- * desktop window list to raise the window correctly. */
- if (b->client.sticky)
- {
- E_Desktop *desk;
-
- desk = e_desktops_get(e_desktops_get_current());
- windows = &desk->windows;
- }
- else
- windows = &b->desk->windows;
-
- if (!(*windows))
- {
- *windows = evas_list_append(*windows, b);
- ecore_window_raise(b->win.main);
- D_RETURN;
- }
- if (!evas_list_find(*windows, above))
- D_RETURN;
- if (b->client.layer < above->client.layer)
- b->client.layer = above->client.layer;
- *windows = evas_list_remove(*windows, b);
- *windows = evas_list_append_relative(*windows, b, above);
- ecore_window_stack_above(b->win.main, above->win.main);
-
- D_RETURN;
-}
-
-void
-e_border_lower_below(E_Border * b, E_Border * below)
-{
- Evas_List **windows;
-
- D_ENTER;
-
- /* Sticky windows are not on a particular desktop, but we need the current
- * desktop window list to raise the window correctly. */
- if (b->client.sticky)
- {
- E_Desktop *desk;
-
- desk = e_desktops_get(e_desktops_get_current());
- windows = &desk->windows;
- }
- else
- windows = &b->desk->windows;
-
- if (!(*windows))
- {
- *windows = evas_list_append(*windows, b);
- D_RETURN;
- }
- if (!evas_list_find(*windows, below))
- D_RETURN;
- if (b->client.layer > below->client.layer)
- b->client.layer = below->client.layer;
- *windows = evas_list_remove(*windows, b);
- *windows = evas_list_prepend_relative(*windows, b, below);
- ecore_window_stack_below(b->win.main, below->win.main);
-
- D_RETURN;
-}
-
-void
-e_border_init(void)
-{
- D_ENTER;
-
- ecore_event_filter_handler_add(ECORE_EVENT_MOUSE_DOWN, e_mouse_down);
- ecore_event_filter_handler_add(ECORE_EVENT_MOUSE_UP, e_mouse_up);
- ecore_event_filter_handler_add(ECORE_EVENT_MOUSE_MOVE, e_mouse_move);
- ecore_event_filter_handler_add(ECORE_EVENT_MOUSE_IN, e_mouse_in);
- ecore_event_filter_handler_add(ECORE_EVENT_MOUSE_OUT, e_mouse_out);
- ecore_event_filter_handler_add(ECORE_EVENT_WINDOW_EXPOSE, e_window_expose);
- ecore_event_filter_handler_add(ECORE_EVENT_WINDOW_MAP_REQUEST,
- e_map_request);
- ecore_event_filter_handler_add(ECORE_EVENT_WINDOW_CONFIGURE_REQUEST,
- e_configure_request);
- ecore_event_filter_handler_add(ECORE_EVENT_WINDOW_PROPERTY, e_property);
- ecore_event_filter_handler_add(ECORE_EVENT_WINDOW_UNMAP, e_unmap);
- ecore_event_filter_handler_add(ECORE_EVENT_WINDOW_DESTROY, e_destroy);
- ecore_event_filter_handler_add(ECORE_EVENT_WINDOW_CIRCULATE_REQUEST,
- e_circulate_request);
- ecore_event_filter_handler_add(ECORE_EVENT_WINDOW_REPARENT, e_reparent);
- ecore_event_filter_handler_add(ECORE_EVENT_WINDOW_SHAPE, e_shape);
- ecore_event_filter_handler_add(ECORE_EVENT_WINDOW_FOCUS_IN, e_focus_in);
- ecore_event_filter_handler_add(ECORE_EVENT_WINDOW_FOCUS_OUT, e_focus_out);
- ecore_event_filter_handler_add(ECORE_EVENT_MESSAGE, e_client_message);
- ecore_event_filter_handler_add(ECORE_EVENT_COLORMAP, e_colormap);
- ecore_event_filter_idle_handler_add(e_idle, NULL);
-
- delayed_window_raise =
- e_delayed_action_new(E_EVENT_BORDER_FOCUS_IN,
- e_border_delayed_val, e_border_raise_delayed);
-
- ecore_add_event_timer("e_border_poll()", 1.00, e_border_poll, 0, NULL);
-
- D_RETURN;
-}
-
-void
-e_border_adopt_children(Window win)
-{
- Window *wins;
- int i, num;
-
- D_ENTER;
-
- wins = ecore_window_get_children(win, &num);
- if (wins)
- {
- for (i = 0; i < num; i++)
- {
- if (ecore_window_is_manageable(wins[i]))
- {
- E_Border *b;
-
- b = e_border_adopt(wins[i], 1);
- {
- int pl, pr, pt, pb;
-
- pl = pr = pt = pb = 0;
- if (b->bits.b)
- ebits_get_insets(b->bits.b, &pl, &pr, &pt, &pb);
- b->current.requested.x -= pl;
- b->current.requested.y -= pt;
- b->changed = 1;
- e_border_adjust_limits(b);
- }
- b->ignore_unmap = 2;
- }
- }
- FREE(wins);
- }
-
- D_RETURN;
-}
-
-
-E_Border *
-e_border_current_select(void)
-{
- Evas_List * l;
- E_Desktop * desk;
-
- /* Only check for borders on the current desktop */
- desk = e_desktops_get(e_desktops_get_current());
-
- D_ENTER;
- for (l = borders; l; l = l->next)
- {
- E_Border *b;
-
- b = l->data;
- if (b->current.selected && b->desk == desk)
- D_RETURN_(b);
- }
-
- D_RETURN_(NULL);
-}
-
-
-E_Border *
-e_border_current_focused(void)
-{
- Evas_List * l;
- E_Desktop * desk;
-
- /* Only check for borders on the current desktop */
- desk = e_desktops_get(e_desktops_get_current());
-
- D_ENTER;
- for (l = borders; l; l = l->next)
- {
- E_Border *b;
-
- b = l->data;
- if (b->current.selected && b->desk == desk)
- D_RETURN_(b);
- }
- for (l = borders; l; l = l->next)
- {
- E_Border *b;
-
- b = l->data;
- if (b->current.select_lost_from_grab && b->desk == desk)
- D_RETURN_(b);
- }
-
- D_RETURN_(NULL);
-}
-
-void
-e_border_focus_grab_ended(void)
-{
- Evas_List * l;
- E_Desktop *desk;
-
- D_ENTER;
-
- desk = e_desktops_get(e_desktops_get_current());
-
- for (l = borders; l; l = l->next)
- {
- E_Border *b;
-
- b = l->data;
- /* Only change selection of items on present desktop */
- if(b->desk == desk)
- {
- b->current.select_lost_from_grab = 0;
- b->current.selected = 0;
- b->changed = 1;
- }
- }
-
- D_RETURN;
-}
-
-int
-e_border_viewable(E_Border * b)
-{
- D_ENTER;
-
- if (b->desk != e_desktops_get(e_desktops_get_current()))
- D_RETURN_(0);
-
- if (b->current.x + b->current.w <= 0)
- D_RETURN_(0);
-
- if (b->current.x >= b->desk->real.w)
- D_RETURN_(0);
-
- if (b->current.y + b->current.h <= 0)
- D_RETURN_(0);
-
- if (b->current.y >= b->desk->real.h)
- D_RETURN_(0);
-
- if (!b->current.visible)
- D_RETURN_(0);
-
- D_RETURN_(1);
-}
-
-void
-e_border_send_pointer(E_Border * b)
-{
- D_ENTER;
-
- ecore_pointer_warp_to(b->current.x + b->current.w / 2,
- b->current.y + b->current.h / 2);
-
- D_RETURN;
-}
-
-void
-e_border_print_pos(char *buf, E_Border * b)
-{
- D_ENTER;
-
- snprintf(buf, PATH_MAX, "%i, %i", b->current.x, b->current.y);
-
- D_RETURN;
-}
-
-void
-e_border_print_size(char *buf, E_Border * b)
-{
- D_ENTER;
-
- if ((b->client.step.w > 1) || (b->client.step.h > 1))
- {
- snprintf(buf, PATH_MAX, "%i x %i",
- (b->client.w - b->client.base.w) / b->client.step.w,
- (b->client.h - b->client.base.h) / b->client.step.h);
- }
- else
- {
- snprintf(buf, PATH_MAX, "%i x %i", b->client.w, b->client.h);
- }
-
- D_RETURN;
-}
-
-void
-e_border_set_gravity(E_Border * b, int gravity)
-{
- D_ENTER;
-
- if (!b)
- D_RETURN;
-
- ecore_window_gravity_set(b->win.container, gravity);
- ecore_window_gravity_set(b->win.input, gravity);
- ecore_window_gravity_set(b->win.b, gravity);
-
- D_RETURN;
-}
-
-Evas_List *
-e_border_get_borders_list()
-{
- D_ENTER;
- D_RETURN_(borders);
-}
-
-void
-e_borders_scroll_list(Evas_List *borders, int dx, int dy)
-{
- Evas_List *l;
-
- for (l = borders; l; l = l->next)
- {
- E_Border *b;
-
- b = l->data;
- ecore_window_gravity_reset(b->win.main);
- if ((!b->client.is_desktop) && (!b->mode.move))
- {
- b->previous.requested.x = b->current.requested.x;
- b->previous.requested.y = b->current.requested.y;
- b->previous.x = b->current.x;
- b->previous.y = b->current.y;
- b->current.requested.x += dx;
- b->current.requested.y += dy;
- b->current.x = b->current.requested.x;
- b->current.y = b->current.requested.y;
- b->changed = 1;
- }
- }
-}
-
-
-E_Border *
-e_border_shuffle_last(E_Border *b)
-{
- Evas_List * next;
- E_Border *start;
- E_Border *current = NULL;
- E_Desktop *current_desk;
-
- D_ENTER;
-
- current_desk = e_desktops_get(e_desktops_get_current());
-
- if (!current_desk || !current_desk->windows)
- {
- e_icccm_send_focus_to( e_desktop_window(), 1);
- D_RETURN_(NULL);
- }
-
- if(b && !b->client.sticky && (b->desk == current_desk))
- current = b;
- else
- current = evas_list_last(current_desk->windows)->data;
-
- /* Find the current border on the list of borders */
- for (next = current_desk->windows; next && next->data != current; next = next->next);
-
- /* Step to the next border, wrap around the queue if the end is reached */
- if (next && next->prev)
- current = next->prev->data;
- else
- current = evas_list_last(next)->data;
-
- e_icccm_send_focus_to(current->win.client, current->client.takes_focus);
-
- D_RETURN_(current);
-}
diff --git a/src/border.h b/src/border.h
deleted file mode 100644
index 68e283609..000000000
--- a/src/border.h
+++ /dev/null
@@ -1,263 +0,0 @@
-#ifndef E_BORDER_H
-#define E_BORDER_H
-
-#include "e.h"
-#include "observer.h"
-#include "debug.h"
-#include "text.h"
-
-#ifndef E_DESKTOPS_TYPEDEF
-#define E_DESKTOPS_TYPEDEF
-typedef struct _E_Desktop E_Desktop;
-#endif
-
-typedef struct _E_Grab E_Grab;
-typedef struct _E_Border E_Border;
-
-struct _E_Grab
-{
- int button;
- Ecore_Event_Key_Modifiers mods;
- int any_mod;
- int remove_after;
- int allow;
-};
-
-struct _E_Border
-{
- E_Observee obs;
-
- struct
- {
- Window main;
- Window b;
- Window input;
- Window container;
- Window client;
- }
- win;
- Evas *evas;
- struct
- {
- E_Text *title;
- Evas_Object *title_clip;
- }
- obj;
- Evas_List *windows;
- struct
- {
- int new;
- Ebits_Object b;
- }
- bits;
-
- struct
- {
- struct
- {
- int x, y, w, h;
- int visible;
- int dx, dy;
- }
- requested;
- int x, y, w, h;
- int visible;
- int selected;
- int select_lost_from_grab;
- int shaded;
- int has_shape;
- int shape_changes;
- int shaped_client;
- }
- current , previous;
-
- struct
- {
- struct
- {
- int w, h;
- double aspect;
- }
- base , min, max, step;
- int layer;
- char *title;
- char *name;
- char *class;
- char *command;
- char *machine;
- char *icon_name;
- int pid;
- Window group;
- int takes_focus;
- int sticky;
- Colormap colormap;
- int fixed;
- int arrange_ignore;
- int hidden;
- int iconified;
- int titlebar;
- int border;
- int handles;
- int initial_state;
- int is_desktop;
- int w, h;
- int no_place;
- struct
- {
- int launch_id;
- pid_t pid;
- pid_t ppid;
- uid_t user;
- }
- e;
- struct
- {
- int requested;
- int x, y;
- int gravity;
- }
- pos;
- int desk;
- struct
- {
- int x, y;
- }
- area;
- int internal;
- struct
- {
- int matched;
- struct
- {
- int matched;
- int ignore;
- }
- prog_location;
- struct
- {
- int matched;
- char *style;
- }
- border;
- struct
- {
- int matched;
- int x, y;
- }
- location;
- struct
- {
- int matched;
- int x, y;
- }
- desk_area;
- struct
- {
- int matched;
- int w, h;
- }
- size;
- struct
- {
- int matched;
- int desk;
- }
- desktop;
- struct
- {
- int matched;
- int sticky;
- }
- sticky;
- struct
- {
- int matched;
- int layer;
- }
- layer;
- }
- matched;
- }
- client;
-
- struct
- {
- int move, resize;
- }
- mode;
-
- struct
- {
- int x, y, w, h;
- int is;
- }
- max;
-
- int ignore_unmap;
- int shape_changed;
- int placed;
-
- E_Grab *click_grab;
- E_Desktop *desk;
-
- char *border_style;
- char *border_file;
-
- int first_expose;
-
- int hold_changes;
-
- int changed;
-};
-
-/**
- * e_border_init - Border handling initialization.
- *
- * This function registers the border event handlers
- * against ecore.
- */
-void e_border_init(void);
-
-E_Border *e_border_new(void);
-
-void e_border_update_borders(void);
-void e_border_redraw_region(E_Border *b, int x, int y,
- int w, int h);
-void e_border_update_render(E_Border * b);
-void e_border_apply_border(E_Border * b);
-void e_border_reshape(E_Border * b);
-void e_border_release(E_Border * b);
-E_Border *e_border_adopt(Window win, int use_client_pos);
-void e_border_adopt_children(Window win);
-void e_border_remove_mouse_grabs(E_Border * b);
-void e_border_remove_click_grab(E_Border * b);
-void e_border_attach_mouse_grabs(E_Border * b);
-void e_border_remove_all_mouse_grabs(void);
-void e_border_attach_all_mouse_grabs(void);
-void e_border_redo_grabs(void);
-E_Border *e_border_find_by_window(Window win);
-void e_border_set_bits(E_Border * b, char *file);
-void e_border_set_color_class(E_Border * b, char *class, int rr,
- int gg, int bb, int aa);
-void e_border_adjust_limits(E_Border * b);
-void e_border_update(E_Border * b);
-void e_border_set_layer(E_Border * b, int layer);
-void e_border_raise(E_Border * b);
-void e_border_lower(E_Border * b);
-void e_border_iconify(E_Border * b);
-void e_border_uniconify(E_Border * b);
-void e_border_raise_above(E_Border * b, E_Border * above);
-void e_border_lower_below(E_Border * b, E_Border * below);
-E_Border *e_border_current_focused(void);
-void e_border_focus_grab_ended(void);
-void e_border_send_pointer(E_Border * b);
-int e_border_viewable(E_Border * b);
-void e_border_print_pos(char *buf, E_Border * b);
-void e_border_print_size(char *buf, E_Border * b);
-void e_border_set_gravity(E_Border * b, int gravity);
-Evas_List *e_border_get_borders_list();
-void e_borders_scroll_list(Evas_List *borders,
- int dx, int dy);
-void e_border_check_select( void );
-
-#endif
diff --git a/src/bordermenu.c b/src/bordermenu.c
deleted file mode 100644
index ac96c45c3..000000000
--- a/src/bordermenu.c
+++ /dev/null
@@ -1,531 +0,0 @@
-#include "menu.h"
-#include "border.h"
-#include "desktops.h"
-#include "debug.h"
-#include "util.h"
-#include "icccm.h"
-#include "bordermenu.h"
-
-static E_Menu *bordermenu = NULL;
-static E_Border *borderformenu = NULL;
-
-static void e_bordermenu_cb_close(E_Menu * m, E_Menu_Item * mi,
- void *data);
-static void e_bordermenu_cb_kill(E_Menu * m, E_Menu_Item * mi,
- void *data);
-static void e_bordermenu_cb_raise(E_Menu * m, E_Menu_Item * mi,
- void *data);
-static void e_bordermenu_cb_lower(E_Menu * m, E_Menu_Item * mi,
- void *data);
-static void e_bordermenu_cb_sticky(E_Menu * m, E_Menu_Item * mi,
- void *data);
-static void e_bordermenu_cb_iconify(E_Menu * m, E_Menu_Item * mi,
- void *data);
-static void e_bordermenu_cb_max(E_Menu * m, E_Menu_Item * mi,
- void *data);
-static void e_bordermenu_cb_zoom(E_Menu * m, E_Menu_Item * mi,
- void *data);
-static void e_bordermenu_cb_remember_location(E_Menu * m,
- E_Menu_Item * mi,
- void *data);
-static void e_bordermenu_cb_remember_size(E_Menu * m, E_Menu_Item * mi,
- void *data);
-static void e_bordermenu_cb_remember_desktop(E_Menu * m,
- E_Menu_Item * mi,
- void *data);
-static void e_bordermenu_cb_remember_sticky(E_Menu * m,
- E_Menu_Item * mi,
- void *data);
-static void e_bordermenu_cb_remember_prog_location_ignore(E_Menu * m,
- E_Menu_Item *
- mi,
- void *data);
-static void e_bordermenu_cb_to_desktop(E_Menu * m, E_Menu_Item * mi,
- void *data);
-
-static void
-e_bordermenu_cb_close(E_Menu * m, E_Menu_Item * mi, void *data)
-{
- E_Border *b;
-
- D_ENTER;
-
- b = data;
-
- if (b->win.client)
- e_icccm_delete(b->win.client);
-
- D_RETURN;
- UN(m);
- UN(mi);
-}
-
-static void
-e_bordermenu_cb_kill(E_Menu * m, E_Menu_Item * mi, void *data)
-{
- E_Border *b;
-
- D_ENTER;
-
- b = data;
-
- if (b->win.client)
- ecore_window_kill_client(b->win.client);
-
- D_RETURN;
- UN(m);
- UN(mi);
-}
-
-static void
-e_bordermenu_cb_raise(E_Menu * m, E_Menu_Item * mi, void *data)
-{
- E_Border *b;
-
- D_ENTER;
-
- b = data;
-
- e_border_raise(b);
-
- D_RETURN;
- UN(m);
- UN(mi);
-}
-
-static void
-e_bordermenu_cb_lower(E_Menu * m, E_Menu_Item * mi, void *data)
-{
- E_Border *b;
-
- D_ENTER;
-
- b = data;
-
- e_border_lower(b);
-
- D_RETURN;
- UN(m);
- UN(mi);
-}
-
-static void
-e_bordermenu_cb_sticky(E_Menu * m, E_Menu_Item * mi, void *data)
-{
- E_Border *b;
-
- D_ENTER;
-
- b = data;
-
- if (mi->on)
- e_menu_item_set_state(mi, 0);
- else
- e_menu_item_set_state(mi, 1);
- e_menu_set_state(m, mi);
-
- b->client.sticky = mi->on;
- b->changed = 1;
-
- D_RETURN;
- UN(m);
- UN(mi);
-}
-
-static void
-e_bordermenu_cb_iconify(E_Menu * m, E_Menu_Item * mi, void *data)
-{
- E_Border *b;
-
- D_ENTER;
-
- b = data;
-
- D_RETURN;
- UN(m);
- UN(mi);
-}
-
-static void
-e_bordermenu_cb_max(E_Menu * m, E_Menu_Item * mi, void *data)
-{
- E_Border *b;
-
- D_ENTER;
-
- b = data;
-
- if (b->client.is_desktop)
- D_RETURN;
- if (b->current.shaded > 0)
- D_RETURN;
- if ((b->mode.move) || (b->mode.resize))
- D_RETURN;
- b->mode.move = 0;
- b->mode.resize = 0;
-
- if (mi->on)
- e_menu_item_set_state(mi, 0);
- else
- e_menu_item_set_state(mi, 1);
- e_menu_set_state(m, mi);
-
- if (mi->on)
- {
- b->max.x = b->current.x;
- b->max.y = b->current.y;
- b->max.w = b->current.w;
- b->max.h = b->current.h;
- b->current.requested.x = 0;
- b->current.requested.y = 0;
- b->current.requested.w = b->desk->real.w;
- b->current.requested.h = b->desk->real.h;
- b->changed = 1;
- b->max.is = mi->on;
- e_border_adjust_limits(b);
- b->current.requested.x = b->current.x;
- b->current.requested.y = b->current.y;
- b->current.requested.w = b->current.w;
- b->current.requested.h = b->current.h;
- }
- else
- {
- b->current.requested.x = b->max.x;
- b->current.requested.y = b->max.y;
- b->current.requested.w = b->max.w;
- b->current.requested.h = b->max.h;
- b->changed = 1;
- b->max.is = mi->on;
- e_border_adjust_limits(b);
- b->current.requested.x = b->current.x;
- b->current.requested.y = b->current.y;
- b->current.requested.w = b->current.w;
- b->current.requested.h = b->current.h;
- }
-
- D_RETURN;
- UN(m);
- UN(mi);
-}
-
-static void
-e_bordermenu_cb_zoom(E_Menu * m, E_Menu_Item * mi, void *data)
-{
- E_Border *b;
-
- D_ENTER;
-
- b = data;
-
- D_RETURN;
- UN(m);
- UN(mi);
-}
-
-static void
-e_bordermenu_cb_remember_location(E_Menu * m, E_Menu_Item * mi, void *data)
-{
- E_Border *b;
-
- D_ENTER;
-
- b = data;
-
- if (mi->on)
- e_menu_item_set_state(mi, 0);
- else
- e_menu_item_set_state(mi, 1);
- e_menu_set_state(m, mi);
-
- b->client.matched.matched = 1;
- b->client.matched.location.matched = mi->on;
-
- D_RETURN;
- UN(m);
-}
-
-static void
-e_bordermenu_cb_remember_size(E_Menu * m, E_Menu_Item * mi, void *data)
-{
- E_Border *b;
-
- D_ENTER;
-
- b = data;
-
- if (mi->on)
- e_menu_item_set_state(mi, 0);
- else
- e_menu_item_set_state(mi, 1);
- e_menu_set_state(m, mi);
-
- b->client.matched.matched = 1;
- b->client.matched.size.matched = mi->on;
-
- D_RETURN;
- UN(m);
-}
-
-static void
-e_bordermenu_cb_remember_desktop(E_Menu * m, E_Menu_Item * mi, void *data)
-{
- E_Border *b;
-
- D_ENTER;
-
- b = data;
-
- if (mi->on)
- e_menu_item_set_state(mi, 0);
- else
- e_menu_item_set_state(mi, 1);
- e_menu_set_state(m, mi);
-
- b->client.matched.matched = 1;
- b->client.matched.desktop.matched = mi->on;
-
- D_RETURN;
- UN(m);
-}
-
-static void
-e_bordermenu_cb_remember_sticky(E_Menu * m, E_Menu_Item * mi, void *data)
-{
- E_Border *b;
-
- D_ENTER;
-
- b = data;
-
- if (mi->on)
- e_menu_item_set_state(mi, 0);
- else
- e_menu_item_set_state(mi, 1);
- e_menu_set_state(m, mi);
-
- b->client.matched.matched = 1;
- b->client.matched.sticky.matched = mi->on;
-
- D_RETURN;
- UN(m);
-}
-
-static void
-e_bordermenu_cb_remember_prog_location_ignore(E_Menu * m, E_Menu_Item * mi,
- void *data)
-{
- E_Border *b;
-
- D_ENTER;
-
- b = data;
-
- if (mi->on)
- e_menu_item_set_state(mi, 0);
- else
- e_menu_item_set_state(mi, 1);
- e_menu_set_state(m, mi);
-
- b->client.matched.matched = 1;
- b->client.matched.prog_location.matched = mi->on;
- b->client.matched.prog_location.ignore = 1;
-
- D_RETURN;
- UN(m);
-}
-
-static void
-e_bordermenu_cb_to_desktop(E_Menu * m, E_Menu_Item * mi, void *data)
-{
- int d = 0;
- E_Border *b;
- E_Desktop *desk;
-
- D_ENTER;
-
- b = data;
- if (b->client.sticky)
- D_RETURN;
-
- sscanf(mi->str, "Desktop %d", &d);
- desk = e_desktops_get(d);
- if (!desk)
- desk = e_desktops_get(e_desktops_get_current());
-
- if (e_desktops_get(b->desk) == desk )
- D_RETURN;
-
- D("Sending border %p to desk %d from %d\n", b, d, b->desk);
- e_desktops_del_border(b->desk, b);
-
- e_desktops_add_border(desk, b);
- b->client.desk = d;
-
- b->current.requested.visible = 0;
- b->changed = 1;
- e_border_update_borders();
-
- e_border_shuffle_last(b);
-
- D_RETURN;
- UN(m);
-}
-
-void
-e_bordermenu_do(E_Border * b)
-{
- int i;
- char label[PATH_MAX];
- E_Menu *menu;
- E_Menu *menu2;
- E_Menu_Item *menuitem;
-
- D_ENTER;
-
- if (borderformenu != b)
- {
- menu = e_menu_new();
- e_menu_set_padding_icon(menu, 2);
- e_menu_set_padding_state(menu, 2);
-
- menuitem = e_menu_item_new("Close");
- /* e_menu_item_set_icon(menuitem, icon); */
- /* e_menu_item_set_scale_icon(menuitem, 1); */
- /* e_menu_item_set_separator(menuitem, 1); */
- e_menu_item_set_callback(menuitem, e_bordermenu_cb_close, b);
- e_menu_add_item(menu, menuitem);
-
- menuitem = e_menu_item_new("Raise");
- e_menu_item_set_callback(menuitem, e_bordermenu_cb_raise, b);
- e_menu_add_item(menu, menuitem);
-
- menuitem = e_menu_item_new("Lower");
- e_menu_item_set_callback(menuitem, e_bordermenu_cb_lower, b);
- e_menu_add_item(menu, menuitem);
-
- menuitem = e_menu_item_new("Iconify");
- e_menu_item_set_callback(menuitem, e_bordermenu_cb_iconify, b);
- e_menu_add_item(menu, menuitem);
-
- menuitem = e_menu_item_new("Zoom");
- e_menu_item_set_callback(menuitem, e_bordermenu_cb_zoom, b);
- e_menu_add_item(menu, menuitem);
-
- menuitem = e_menu_item_new("Maximise");
- e_menu_item_set_check(menuitem, 1);
- e_menu_item_set_state(menuitem, b->max.is);
- e_menu_item_set_callback(menuitem, e_bordermenu_cb_max, b);
- e_menu_add_item(menu, menuitem);
-
- menuitem = e_menu_item_new("Sticky");
- e_menu_item_set_check(menuitem, 1);
- e_menu_item_set_state(menuitem, b->client.sticky);
- e_menu_item_set_callback(menuitem, e_bordermenu_cb_sticky, b);
- e_menu_add_item(menu, menuitem);
-
- menuitem = e_menu_item_new("");
- e_menu_item_set_separator(menuitem, 1);
- e_menu_add_item(menu, menuitem);
-
- menuitem = e_menu_item_new("Kill");
- e_menu_item_set_callback(menuitem, e_bordermenu_cb_kill, b);
- e_menu_add_item(menu, menuitem);
-
- menuitem = e_menu_item_new("");
- e_menu_item_set_separator(menuitem, 1);
- e_menu_add_item(menu, menuitem);
-
- menuitem = e_menu_item_new("Remember Location");
- e_menu_item_set_check(menuitem, 1);
- e_menu_item_set_state(menuitem, b->client.matched.location.matched);
- e_menu_item_set_callback(menuitem, e_bordermenu_cb_remember_location,
- b);
- e_menu_add_item(menu, menuitem);
- e_menu_set_state(menu, menuitem);
-
- menuitem = e_menu_item_new("Remember Size");
- e_menu_item_set_check(menuitem, 1);
- e_menu_item_set_state(menuitem, b->client.matched.size.matched);
- e_menu_item_set_callback(menuitem, e_bordermenu_cb_remember_size, b);
- e_menu_add_item(menu, menuitem);
- e_menu_set_state(menu, menuitem);
-
- menuitem = e_menu_item_new("Remember Desktop");
- e_menu_item_set_check(menuitem, 1);
- e_menu_item_set_state(menuitem, b->client.matched.desktop.matched);
- e_menu_item_set_callback(menuitem, e_bordermenu_cb_remember_desktop, b);
- e_menu_add_item(menu, menuitem);
- e_menu_set_state(menu, menuitem);
-
- menuitem = e_menu_item_new("Remember Stickiness");
- e_menu_item_set_check(menuitem, 1);
- e_menu_item_set_state(menuitem, b->client.matched.sticky.matched);
- e_menu_item_set_callback(menuitem, e_bordermenu_cb_remember_sticky, b);
- e_menu_add_item(menu, menuitem);
- e_menu_set_state(menu, menuitem);
-
- menuitem = e_menu_item_new("Ignore Program Specified Position");
- e_menu_item_set_check(menuitem, 1);
- e_menu_item_set_state(menuitem,
- b->client.matched.prog_location.matched);
- e_menu_item_set_callback(menuitem,
- e_bordermenu_cb_remember_prog_location_ignore,
- b);
- e_menu_add_item(menu, menuitem);
- e_menu_set_state(menu, menuitem);
-
- menu2 = e_menu_new();
- e_menu_set_padding_icon(menu2, 2);
- e_menu_set_padding_state(menu2, 2);
-
- for (i = 0; i < e_desktops_get_num(); i++)
- {
- snprintf(label, PATH_MAX, "Desktop %d", i);
- menuitem = e_menu_item_new(label);
- e_menu_item_set_callback(menuitem, e_bordermenu_cb_to_desktop, b);
- e_menu_add_item(menu2, menuitem);
- }
-
- menuitem = e_menu_item_new("Goto Desktop...");
- e_menu_item_set_submenu(menuitem, menu2);
- e_menu_add_item(menu, menuitem);
-
- bordermenu = menu;
- borderformenu = b;
- }
-
- {
- int pl, pr, pt, pb;
- int crx, cry, crw, crh;
- int mx, my;
-
- menu = bordermenu;
- pl = pr = pt = pb = 0;
- if (b->bits.b)
- ebits_get_insets(b->bits.b, &pl, &pr, &pt, &pb);
- crx = b->current.x + pl;
- cry = b->current.y + pt;
- crw = b->client.w;
- crh = b->client.h;
- ecore_pointer_xy_get(&mx, &my);
- if (mx + menu->current.w > crx + crw)
- mx = crx + crw - menu->current.w;
- if (my + menu->current.h > cry + crh)
- my = cry + crh - menu->current.h;
- if (mx < crx)
- mx = crx;
- if (my < cry)
- my = cry;
- e_menu_show_at_mouse(menu, mx, my, CurrentTime);
- }
-
- D_RETURN;
-}
-
-void
-e_bordermenu_hide(void)
-{
- if (bordermenu)
- e_menu_hide(bordermenu);
- borderformenu = 0;
-}
diff --git a/src/bordermenu.h b/src/bordermenu.h
deleted file mode 100644
index 738bcb1f8..000000000
--- a/src/bordermenu.h
+++ /dev/null
@@ -1,9 +0,0 @@
-#ifndef E_BORDERMENU_H
-#define E_BORDERMENU_H
-
-#include "e.h"
-
-void e_bordermenu_do(E_Border * b);
-void e_bordermenu_hide(void);
-
-#endif
diff --git a/src/config.c b/src/config.c
deleted file mode 100644
index 17cc9c167..000000000
--- a/src/config.c
+++ /dev/null
@@ -1,396 +0,0 @@
-#include "debug.h"
-#include "actions.h"
-#include "border.h"
-#include "config.h"
-#include "data.h"
-#include "e_dir.h"
-#include "file.h"
-#include "keys.h"
-#include "observer.h"
-#include "util.h"
-
-static char cfg_root[] = "";
-
-static char cfg_grabs_db[PATH_MAX] = "";
-static char cfg_settings_db[PATH_MAX] = "";
-static char cfg_actions_db[PATH_MAX] = "";
-static char cfg_borders_db[PATH_MAX] = "";
-static char cfg_apps_menu_db[PATH_MAX] = "";
-static char cfg_match_db[PATH_MAX] = "";
-static char cfg_menus_dir[PATH_MAX] = "";
-static char cfg_entries_dir[PATH_MAX] = "";
-static char cfg_selections_dir[PATH_MAX] = "";
-static char cfg_scrollbars_dir[PATH_MAX] = "";
-static char cfg_guides_dir[PATH_MAX] = "";
-static char cfg_user_dir[PATH_MAX] = "";
-static char cfg_images_dir[PATH_MAX] = "";
-static char cfg_cursors_dir[PATH_MAX] = "";
-static char cfg_backgrounds_dir[PATH_MAX] = "";
-static char cfg_fonts_dir[PATH_MAX] = "";
-static char cfg_epplets_dir[PATH_MAX] = "";
-static char cfg_layout_dir[PATH_MAX] = "";
-
-static E_Observer *behavior_dir = NULL;
-E_Config *config_data;
-
-E_Data_Base_Type *cfg_actions = NULL;
-E_Data_Base_Type *cfg_config = NULL;
-E_Data_Base_Type *cfg_desktops = NULL;
-E_Data_Base_Type *cfg_grabs = NULL;
-E_Data_Base_Type *cfg_guides = NULL;
-E_Data_Base_Type *cfg_match = NULL;
-E_Data_Base_Type *cfg_menu = NULL;
-E_Data_Base_Type *cfg_move = NULL;
-E_Data_Base_Type *cfg_window = NULL;
-
-void e_config_behavior_changed(E_Observer * observer,
- E_Observee * observee,
- E_Event_Type event, void *data);
-void e_config_settings_reload(char *buf);
-
-char *
-e_config_get(char *type)
-{
- D_ENTER;
-
- /* for now use the system defaults and not the user copied settings */
- /* so if i chnage stuff i dont have to rm my personaly settings and */
- /* have e re-install them. yes this is different from e16 - the */
- /* complexity of merging system and user settings is just a bit */
- /* much for my liking and have decided, for usability, and */
- /* user-freindliness to keep all settings in the user's home dir, */
- /* as well as all data - so the only place to look is there. If you */
- /* have no data it is all copied over for you the first time E is */
- /* run. It's a design decision. */
- /* Later when things are a bit mroe stabilised these will look */
- /* something like: */
- /* E_CONF("grabs", cfg_grabs_db, */
- /* "%sbehavior/default/grabs.db", e_config_user_dir()); */
- /* notice it would use the user config location instead */
- /* but for now i'm keeping it as is for development "ease" */
-
-#define E_CONF(_key, _var, _args...) \
-{ \
- if (!strcmp(type, _key)) \
- { \
- if ((_var)[0]) D_RETURN_(_var); \
- snprintf((_var), PATH_MAX, ## _args); \
- D_RETURN_(_var); \
- } \
-}
-
- E_CONF("grabs", cfg_grabs_db, "%s/behavior/grabs.db", e_config_user_dir());
- E_CONF("settings", cfg_settings_db,
- "%s/behavior/settings.db", e_config_user_dir());
- E_CONF("actions", cfg_actions_db,
- "%s/behavior/actions.db", e_config_user_dir());
- E_CONF("apps_menu", cfg_apps_menu_db,
- "%s/behavior/apps_menu.db", e_config_user_dir());
- E_CONF("match", cfg_match_db, "%s/behavior/match.db", e_config_user_dir());
- E_CONF("borders", cfg_borders_db, PACKAGE_DATA_DIR "/data/borders/");
- E_CONF("menus", cfg_menus_dir, PACKAGE_DATA_DIR "/data/menus/");
- E_CONF("entries", cfg_entries_dir, PACKAGE_DATA_DIR "/data/entries/");
- E_CONF("selections", cfg_selections_dir,
- PACKAGE_DATA_DIR "/data/selections/");
- E_CONF("scrollbars", cfg_scrollbars_dir,
- PACKAGE_DATA_DIR "/data/scrollbars/");
- E_CONF("guides", cfg_guides_dir, PACKAGE_DATA_DIR "/data/guides/");
- E_CONF("images", cfg_images_dir, PACKAGE_DATA_DIR "/data/images/");
- E_CONF("cursors", cfg_cursors_dir, PACKAGE_DATA_DIR "/data/cursors/");
- E_CONF("backgrounds", cfg_backgrounds_dir,
- PACKAGE_DATA_DIR "/data/backgrounds/");
- E_CONF("fonts", cfg_fonts_dir, PACKAGE_DATA_DIR "/data/fonts/");
- E_CONF("epplets", cfg_epplets_dir, PACKAGE_DATA_DIR "/data/epplets/");
- E_CONF("layout", cfg_layout_dir, PACKAGE_DATA_DIR "/data/layout/");
-
- D_RETURN_("");
-}
-
-void
-e_config_actions_init()
-{
- D_ENTER;
-
- /*
- * Define the data type for the E_Actions struct.
- */
- cfg_actions = e_data_type_new();
- E_DATA_NODE(cfg_actions, "name", E_DATA_TYPE_STR, NULL, E_Action, name,
- (E_Data_Value) "");
- E_DATA_NODE(cfg_actions, "action", E_DATA_TYPE_STR, NULL, E_Action, action,
- (E_Data_Value) "");
- E_DATA_NODE(cfg_actions, "params", E_DATA_TYPE_STR, NULL, E_Action,
- params, (E_Data_Value) "");
- E_DATA_NODE(cfg_actions, "event", E_DATA_TYPE_INT, NULL, E_Action, event,
- (E_Data_Value) 0);
- E_DATA_NODE(cfg_actions, "button", E_DATA_TYPE_INT, NULL, E_Action, button,
- (E_Data_Value) 0);
- E_DATA_NODE(cfg_actions, "key", E_DATA_TYPE_STR, NULL, E_Action, key,
- (E_Data_Value) 0);
- E_DATA_NODE(cfg_actions, "modifiers", E_DATA_TYPE_INT, NULL, E_Action,
- modifiers, (E_Data_Value) 0);
-
- D_RETURN;
-}
-
-void
-e_config_desktops_init()
-{
- cfg_desktops = e_data_type_new();
- E_DATA_NODE(cfg_desktops, "count", E_DATA_TYPE_INT, NULL, E_Config_Desktops,
- count, (E_Data_Value) 8);
- E_DATA_NODE(cfg_desktops, "scroll", E_DATA_TYPE_INT, NULL, E_Config_Desktops,
- scroll, (E_Data_Value) 1);
- E_DATA_NODE(cfg_desktops, "scroll_sticky", E_DATA_TYPE_INT, NULL, E_Config_Desktops,
- scroll_sticky, (E_Data_Value) 1);
- E_DATA_NODE(cfg_desktops, "resist", E_DATA_TYPE_INT, NULL, E_Config_Desktops,
- resist, (E_Data_Value) 5);
- E_DATA_NODE(cfg_desktops, "speed", E_DATA_TYPE_INT, NULL, E_Config_Desktops,
- speed, (E_Data_Value) 30);
- E_DATA_NODE(cfg_desktops, "width", E_DATA_TYPE_INT, NULL, E_Config_Desktops,
- width, (E_Data_Value) 1);
- E_DATA_NODE(cfg_desktops, "height", E_DATA_TYPE_INT, NULL, E_Config_Desktops,
- height, (E_Data_Value) 1);
- E_DATA_NODE(cfg_desktops, "cursors/e_native", E_DATA_TYPE_INT,
- NULL, E_Config_Desktops, e_native_cursors, (E_Data_Value) 1);
-}
-
-void
-e_config_grabs_init()
-{
- cfg_grabs = e_data_type_new();
- E_DATA_NODE(cfg_grabs, "button", E_DATA_TYPE_INT, NULL, E_Grab, button,
- (E_Data_Value) 0);
- E_DATA_NODE(cfg_grabs, "modifiers", E_DATA_TYPE_INT, NULL, E_Grab, mods,
- (E_Data_Value) 0);
-}
-
-void
-e_config_guides_init()
-{
- cfg_guides = e_data_type_new();
- E_DATA_NODE(cfg_guides, "display/location", E_DATA_TYPE_INT, NULL,
- E_Config_Guides, location, (E_Data_Value) 0);
- E_DATA_NODE(cfg_guides, "display/x", E_DATA_TYPE_FLOAT, NULL,
- E_Config_Guides, x, (E_Data_Value) 0);
- E_DATA_NODE(cfg_guides, "display/y", E_DATA_TYPE_FLOAT, NULL,
- E_Config_Guides, y, (E_Data_Value) 0);
-}
-
-void
-e_config_menu_init()
-{
- cfg_menu = e_data_type_new();
- E_DATA_NODE(cfg_menu, "scroll/resist", E_DATA_TYPE_INT, NULL,
- E_Config_Menu, resist, (E_Data_Value) 5);
- E_DATA_NODE(cfg_menu, "scroll/speed", E_DATA_TYPE_INT, NULL,
- E_Config_Menu, speed, (E_Data_Value) 12);
-}
-
-void
-e_config_move_init()
-{
- cfg_move = e_data_type_new();
- E_DATA_NODE(cfg_move, "resist", E_DATA_TYPE_INT, NULL,
- E_Config_Move, resist, (E_Data_Value) 0);
- E_DATA_NODE(cfg_move, "resist/win", E_DATA_TYPE_INT, NULL,
- E_Config_Move, win_resist, (E_Data_Value) 0);
- E_DATA_NODE(cfg_move, "resist/desk", E_DATA_TYPE_INT, NULL,
- E_Config_Move, desk_resist, (E_Data_Value) 0);
-}
-
-void
-e_config_window_init()
-{
- cfg_window = e_data_type_new();
- E_DATA_NODE(cfg_window, "resize/mode", E_DATA_TYPE_INT, NULL,
- E_Config_Window, resize_mode, (E_Data_Value) 0);
- E_DATA_NODE(cfg_window, "move/mode", E_DATA_TYPE_INT, NULL,
- E_Config_Window, move_mode, (E_Data_Value) 0);
- E_DATA_NODE(cfg_window, "focus/mode", E_DATA_TYPE_INT, NULL, E_Config_Window,
- focus_mode, (E_Data_Value) 0);
- E_DATA_NODE(cfg_window, "raise/auto", E_DATA_TYPE_INT, NULL,
- E_Config_Window, auto_raise, (E_Data_Value) 0);
- E_DATA_NODE(cfg_window, "raise/delay", E_DATA_TYPE_FLOAT, NULL,
- E_Config_Window, raise_delay, (E_Data_Value) (float)0.6);
- E_DATA_NODE(cfg_window, "place/mode", E_DATA_TYPE_INT, NULL,
- E_Config_Window, place_mode, (E_Data_Value) 0);
-}
-
-void
-e_config_init(void)
-{
- char buf[PATH_MAX];
- E_Dir *dir;
-
- D_ENTER;
-
- /* Start by initializing the data loading structures */
- e_config_actions_init();
- e_config_desktops_init();
- e_config_grabs_init();
- e_config_guides_init();
- e_config_menu_init();
- e_config_move_init();
- e_config_window_init();
-
- /* Then place the data structures within the config description */
- cfg_config = e_data_type_new();
- E_DATA_NODE(cfg_config, "actions", E_DATA_TYPE_LIST, cfg_actions,
- E_Config, actions, (E_Data_Value) 0);
- E_DATA_NODE(cfg_config, "grabs", E_DATA_TYPE_LIST, cfg_grabs,
- E_Config, grabs, (E_Data_Value) 0);
-
- E_DATA_NODE(cfg_config, "desktops", E_DATA_TYPE_PTR, cfg_desktops,
- E_Config, desktops, (E_Data_Value) 0);
- E_DATA_NODE(cfg_config, "guides", E_DATA_TYPE_PTR, cfg_guides,
- E_Config, guides, (E_Data_Value) 0);
- E_DATA_NODE(cfg_config, "menu", E_DATA_TYPE_PTR, cfg_menu,
- E_Config, menu, (E_Data_Value) 0);
- E_DATA_NODE(cfg_config, "move", E_DATA_TYPE_PTR, cfg_move,
- E_Config, move, (E_Data_Value) 0);
- E_DATA_NODE(cfg_config, "window", E_DATA_TYPE_PTR, cfg_window,
- E_Config, window, (E_Data_Value) 0);
-
- /* Create directories as needed */
- if (!e_file_is_dir(e_config_user_dir()))
- e_file_mkdir(e_config_user_dir());
- snprintf(buf, PATH_MAX, "%sappearance", e_config_user_dir());
- if (!e_file_is_dir(buf))
- e_file_mkdir(buf);
- snprintf(buf, PATH_MAX, "%sappearance/borders", e_config_user_dir());
- if (!e_file_is_dir(buf))
- e_file_mkdir(buf);
- snprintf(buf, PATH_MAX, "%sbehavior", e_config_user_dir());
- if (!e_file_is_dir(buf))
- e_file_mkdir(buf);
-
- /* With the directories created, create files if needed and load config */
- snprintf(buf, PATH_MAX, "%sbehavior/grabs.db", e_config_user_dir());
- if (!e_file_exists(buf))
- e_file_cp(PACKAGE_DATA_DIR "/data/config/behavior/default/grabs.db", buf);
- snprintf(buf, PATH_MAX, "%sbehavior/settings.db", e_config_user_dir());
- if (!e_file_exists(buf))
- e_file_cp(PACKAGE_DATA_DIR "/data/config/behavior/default/settings.db",
- buf);
- snprintf(buf, PATH_MAX, "%sbehavior/actions.db", e_config_user_dir());
- if (!e_file_exists(buf))
- e_file_cp(PACKAGE_DATA_DIR "/data/config/behavior/default/actions.db",
- buf);
- snprintf(buf, PATH_MAX, "%sbehavior/apps_menu.db", e_config_user_dir());
- if (!e_file_exists(buf))
- e_file_cp(PACKAGE_DATA_DIR "/data/config/behavior/default/apps_menu.db",
- buf);
- snprintf(buf, PATH_MAX, "%sbehavior/behavior.db", e_config_user_dir());
- if (!e_file_exists(buf))
- e_file_cp(PACKAGE_DATA_DIR "/data/config/behavior/default/behavior.db",
- buf);
-
- /* Load config data and begin monitoring it with efsd */
- e_config_behavior_changed(NULL, NULL, 0, NULL);
-
- snprintf(buf, PATH_MAX, "%sbehavior", e_config_user_dir());
- dir = e_dir_new();
- e_dir_set_dir(dir, buf);
-
- behavior_dir = NEW(E_Observer, 1);
- ZERO(behavior_dir, sizeof(E_Observer), 1);
- e_observer_init(behavior_dir, E_EVENT_FILE_CHANGE,
- e_config_behavior_changed, free);
- e_observer_register_observee(behavior_dir, E_OBSERVEE(dir));
-
- D_RETURN;
-}
-
-void
-e_config_behavior_changed(E_Observer * observer, E_Observee * observee,
- E_Event_Type event, void *data)
-{
- char buf[PATH_MAX];
- Evas_List *l;
-
- if (config_data)
- {
- for (l = config_data->actions; l; l = l->next)
- {
- E_Action *a;
-
- a = l->data;
- e_object_unref((E_Object *)a);
- l->data = NULL;
- }
-
- e_data_free(cfg_config, (char *)config_data);
- FREE(config_data);
- }
-
- snprintf(buf, PATH_MAX, "%sbehavior/behavior.db", e_config_user_dir());
- config_data = e_data_load(buf, "", cfg_config);
-
- /* FIXME: this should probably be a function in actions.c */
- for (l = config_data->actions; l; l = l->next)
- {
- E_Action *a;
-
- a = l->data;
- e_object_init(E_OBJECT(a), (E_Cleanup_Func) e_action_cleanup);
- if ((a->key) && (strlen(a->key) > 0))
- {
- if (a->modifiers == -1)
- e_keys_grab(a->key, ECORE_EVENT_KEY_MODIFIER_NONE, 1);
- else
- e_keys_grab(a->key, (Ecore_Event_Key_Modifiers) a->modifiers,
- 0);
- a->grabbed = 1;
- }
- }
-
- return;
- UN(observer);
- UN(observee);
- UN(event);
- UN(data);
-}
-
-void
-e_config_set_user_dir(char *dir)
-{
- D_ENTER;
-
- STRNCPY(cfg_root, dir, PATH_MAX);
- /* reset the cached dir paths */
- cfg_grabs_db[0] = 0;
- cfg_settings_db[0] = 0;
- cfg_actions_db[0] = 0;
- cfg_borders_db[0] = 0;
- cfg_apps_menu_db[0] = 0;
- cfg_match_db[0] = 0;
- cfg_menus_dir[0] = 0;
- cfg_entries_dir[0] = 0;
- cfg_selections_dir[0] = 0;
- cfg_scrollbars_dir[0] = 0;
- cfg_guides_dir[0] = 0;
- cfg_user_dir[0] = 0;
- cfg_images_dir[0] = 0;
- cfg_cursors_dir[0] = 0;
- cfg_backgrounds_dir[0] = 0;
- cfg_fonts_dir[0] = 0;
- /* init again - if the user hasnt got all the data */
- e_config_init();
-
- D_RETURN;
-}
-
-char *
-e_config_user_dir(void)
-{
- D_ENTER;
-
- /* We copy the config files to the user's home dir, no need to fall back */
- if (cfg_user_dir[0])
- D_RETURN_(cfg_user_dir);
-
- snprintf(cfg_user_dir, PATH_MAX, "%s/.e/", e_util_get_user_home());
-
- D_RETURN_(cfg_user_dir);
-}
diff --git a/src/config.h b/src/config.h
deleted file mode 100644
index f5d5bda08..000000000
--- a/src/config.h
+++ /dev/null
@@ -1,78 +0,0 @@
-#ifndef E_CONFIG_H
-#define E_CONFIG_H
-
-#include "e.h"
-
-/*
- * Define small subsets of the whole config for defining data types for
- * loading from the databases.
- */
-typedef struct _E_Config_Desktops E_Config_Desktops;
-struct _E_Config_Desktops
-{
- int count;
- int scroll;
- int scroll_sticky;
- int resist;
- int speed;
- int width;
- int height;
- int e_native_cursors;
-};
-
-typedef struct _E_Config_Guides E_Config_Guides;
-struct _E_Config_Guides
-{
- float x;
- float y;
- int location;
-};
-
-typedef struct _E_Config_Menu E_Config_Menu;
-struct _E_Config_Menu
-{
- int resist;
- int speed;
-};
-
-typedef struct _E_Config_Move E_Config_Move;
-struct _E_Config_Move
-{
- int resist;
- int win_resist;
- int desk_resist;
-};
-
-typedef struct _E_Config_Window E_Config_Window;
-struct _E_Config_Window
-{
- int move_mode;
- int focus_mode;
- int auto_raise;
- float raise_delay;
- int resize_mode;
- int place_mode;
-};
-
-typedef struct _E_Config E_Config;
-struct _E_Config
-{
- Evas_List *actions;
- Evas_List *grabs;
- Evas_List *match;
-
- E_Config_Desktops *desktops;
- E_Config_Guides *guides;
- E_Config_Menu *menu;
- E_Config_Move *move;
- E_Config_Window *window;
-};
-
-extern E_Config *config_data;
-
-char *e_config_get(char *type);
-void e_config_init(void);
-void e_config_set_user_dir(char *dir);
-char *e_config_user_dir(void);
-
-#endif
diff --git a/src/cursors.c b/src/cursors.c
deleted file mode 100644
index 963db122c..000000000
--- a/src/cursors.c
+++ /dev/null
@@ -1,357 +0,0 @@
-#include "debug.h"
-#include "cursors.h"
-#include "config.h"
-#include "util.h"
-#include "file.h"
-#include <X11/cursorfont.h>
-#if 0
-/* XCursor */
-#include <X11/Xcursor/Xcursor.h>
-#endif
-
-typedef struct _e_cursor E_Cursor;
-
-struct _e_cursor
-{
- char *type;
- Cursor cursor;
- time_t mod;
- int x_cursor_id;
-};
-
-static int cursor_change = 0;
-static char *cur_cursor = NULL;
-static char *prev_cursor = NULL;
-static Evas_List * cursors = NULL;
-
-static void e_cursors_idle(void *data);
-static void e_cursors_set(char *type);
-static E_Cursor *e_cursors_find(char *type);
-
-static void
-e_cursors_idle(void *data)
-{
- int change = 0;
-
- D_ENTER;
-
- if (!cursor_change)
- D_RETURN;
- if ((prev_cursor) && (cur_cursor) && (strcmp(prev_cursor, cur_cursor)))
- change = 1;
- if ((prev_cursor) && (!cur_cursor))
- change = 1;
- if ((!prev_cursor) && (cur_cursor))
- change = 1;
- if (change)
- e_cursors_set(cur_cursor);
- IF_FREE(prev_cursor);
- e_strdup(prev_cursor, cur_cursor);
- IF_FREE(cur_cursor);
- cur_cursor = NULL;
- cursor_change = 0;
-
- D_RETURN;
- UN(data);
-}
-
-static void
-e_cursors_set(char *type)
-{
- D_ENTER;
-
- e_cursors_display_in_window(0, type);
-
- D_RETURN;
-}
-
-static E_Cursor *
-e_cursors_find(char *type)
-{
- Evas_List * l;
-
- D_ENTER;
-
- for (l = cursors; l; l = l->next)
- {
- E_Cursor *c;
-
- c = l->data;
- if (!strcmp(c->type, type))
- {
- char buf[PATH_MAX];
-
- snprintf(buf, PATH_MAX, "%s/%s.db", e_config_get("cursors"), type);
- if (e_file_mod_time(buf) > c->mod)
- {
- cursors = evas_list_remove(cursors, c);
- IF_FREE(c->type);
- ecore_cursor_free(c->cursor);
- FREE(c);
- D_RETURN_(NULL);
- }
- D_RETURN_(c);
- }
- }
- D_RETURN_(NULL);
-}
-
-void
-e_cursors_display_in_window(Window win, char *type)
-{
- E_Cursor *c;
-
- D_ENTER;
-
- if (!type)
- type = "Default";
- c = e_cursors_find(type);
- if (!c)
- {
- Pixmap pmap, mask;
- int hx = 0, hy = 0;
- int fr = 255, fg = 255, fb = 255;
- int br = 0, bg = 0, bb = 0;
- int w = 32, h = 32;
- int ok;
- char buf[PATH_MAX];
- Imlib_Image im;
-
- c = NEW(E_Cursor, 1);
- ZERO(c, E_Cursor, 1);
-
- e_strdup(c->type, type);
-
- snprintf(buf, PATH_MAX, "%s/%s.db", e_config_get("cursors"), type);
- c->mod = e_file_mod_time(buf);
- E_DB_INT_GET(buf, "/cursor/x", hx, ok);
- E_DB_INT_GET(buf, "/cursor/y", hy, ok);
- /* Handle x_cursor if available */
- E_DB_INT_GET(buf, "/cursor/x_id", c->x_cursor_id, ok);
- if(!ok)
- c->x_cursor_id = XC_arrow;
-
- /* Some sample code to load XCursor data directly. */
- /* This works, but shading and colorization is different */
- /* than native XFree86 XCursors. It appears the xcursorgen */
- /* program does some preprocessing. We could do the same. */
-#if 0
- /* XCursor */
- if(0)
- {
- Evas *ic_e;
- Evas_Object *e_im;
- int *idata;
- int wid, hei;
- XcursorImage * xcur;
-
- snprintf(buf, PATH_MAX, "%s/%s.db",
- e_config_get("cursors"), type);
-
- ic_e = e_evas_new_all(ecore_display_get(), 0,
- 0, 0, 200, 200, "");
- e_im = evas_object_image_add(ic_e);
- evas_object_image_file_set(e_im, buf, "/cursor/image");
- idata = evas_object_image_data_get(e_im, 1);
- evas_object_image_size_get(e_im, &wid, &hei);
-
- /* Make sure width and height are sane, protect ourselves.*/
- if(wid > 128) wid=128;
- if(hei > 128) hei=128;
-
- xcur = XcursorImageCreate( wid, hei);
- xcur->pixels = /*Xmalloc ? */(int *) malloc(wid * hei * 4);
- if(!xcur->pixels)
- D("Failed alloc!!!!!!!!!!\n");
- memcpy(xcur->pixels, idata, wid*hei*4);
- xcur->xhot = hx;
- xcur->yhot = hy;
-
- c->cursor = XcursorImageLoadCursor(ecore_display_get(), xcur);
-
- evas_object_del(e_im);
- }
- else
- {
-#endif
-
- /* Only load images for native cursors */
- if(config_data->desktops->e_native_cursors)
- {
-
- snprintf(buf, PATH_MAX, "%s/%s.db:/cursor/image",
- e_config_get("cursors"), type);
-
- im = imlib_load_image(buf);
- if (im)
- {
- DATA32 *data;
- int x, y;
- GC gcf, gcb;
- int have_bg = 0, have_fg = 0;
-
- imlib_context_set_image(im);
- w = imlib_image_get_width();
- h = imlib_image_get_height();
- pmap = ecore_pixmap_new(0, w, h, 1);
- mask = ecore_pixmap_new(0, w, h, 1);
- data = imlib_image_get_data_for_reading_only();
-
- /* figure out fg & bg */
- if (!data)
- goto done;
- for (y = 0; y < h; y++)
- {
- for (x = 0; x < w; x++)
- {
- int r, g, b, a;
- DATA32 pix;
-
- pix = data[(y * w) + x];
- r = (pix >> 16) & 0xff;
- g = (pix >> 8) & 0xff;
- b = (pix) & 0xff;
- a = (pix >> 24) & 0xff;
-
- if (a > 127)
- {
- if (!have_bg)
- {
- br = r;
- bg = g;
- bb = b;
- have_bg = 1;
- }
- if (!have_fg)
- {
- if ((have_bg) &&
- ((br != r) || (bg != g) || (bb != b)))
- {
- fr = r;
- fg = g;
- fb = b;
- have_fg = 1;
- goto done;
- }
- }
- }
- }
- }
- done:
-
- /* FIXME: inefficient - using pixmaps and draw point... should */
- /* use XImages & XShm */
-
- /* get some gc's set up */
- gcb = ecore_gc_new(pmap);
- gcf = ecore_gc_new(pmap);
- ecore_gc_set_fg(gcb, 0);
- ecore_gc_set_fg(gcf, 1);
-
- /* fill out cursor pixmap with 0's (bg) */
- ecore_fill_rectangle(pmap, gcb, 0, 0, w, h);
- ecore_fill_rectangle(mask, gcb, 0, 0, w, h);
- if (!data)
- goto done2;
- for (y = 0; y < h; y++)
- {
- for (x = 0; x < w; x++)
- {
- int r, g, b, a;
- DATA32 pix;
-
- pix = data[(y * w) + x];
- r = (pix >> 16) & 0xff;
- g = (pix >> 8) & 0xff;
- b = (pix) & 0xff;
- a = (pix >> 24) & 0xff;
-
- if (a > 127)
- {
- ecore_draw_point(mask, gcf, x, y);
- if ((r == fr) && (g == fg) && (b == fb))
- ecore_draw_point(pmap, gcf, x, y);
- }
- }
- }
- done2:
- /* clean up */
- ecore_gc_free(gcb);
- ecore_gc_free(gcf);
-
- imlib_image_put_back_data(data);
- imlib_free_image();
- }
- else
- {
- IF_FREE(c->type);
- FREE(c);
- c = NULL;
- }
-
-
- }
- /* end native cursors */
-
-
- if (c)
- {
- /* If behavior.db has /desktops/cursors/native == 1, then use */
- /* images installed */
- /* by E, else use X cursors by cursorfont id. */
- /* Use E's pixmap? */
- if(config_data->desktops->e_native_cursors)
- {
- c->cursor =
- ecore_cursor_new(pmap, mask, hx, hy, fr, fg, fb, br, bg, bb);
- ecore_pixmap_free(pmap);
- ecore_pixmap_free(mask);
- }
- else
- {
- /* No, use X cursors */
- c->cursor =
- XCreateFontCursor(ecore_display_get(), c->x_cursor_id);
- }
- cursors = evas_list_append(cursors, c);
- }
-#if 0
- } /* XCursor */
-#endif
- }
- if (c)
- {
- ecore_cursor_set(win, c->cursor);
- }
- else
- {
- if (!strcmp(type, "Default"))
- D_RETURN;
- e_cursors_display_in_window(win, "Default");
- }
-
- D_RETURN;
-}
-
-void
-e_cursors_display(char *type)
-{
- D_ENTER;
-
- IF_FREE(cur_cursor);
- e_strdup(cur_cursor, type);
- cursor_change = 1;
-
- D_RETURN;
-}
-
-void
-e_cursors_init(void)
-{
- D_ENTER;
-
- ecore_event_filter_idle_handler_add(e_cursors_idle, NULL);
- e_cursors_set("Default");
-
- D_RETURN;
-}
diff --git a/src/cursors.h b/src/cursors.h
deleted file mode 100644
index bcb61ec04..000000000
--- a/src/cursors.h
+++ /dev/null
@@ -1,10 +0,0 @@
-#ifndef E_CURSORS_H
-#define E_CURSORS_H
-
-#include "e.h"
-
-void e_cursors_display(char *type);
-void e_cursors_display_in_window(Window win, char *type);
-void e_cursors_init(void);
-
-#endif
diff --git a/src/data.c b/src/data.c
deleted file mode 100644
index 4e9fc7604..000000000
--- a/src/data.c
+++ /dev/null
@@ -1,223 +0,0 @@
-#include "debug.h"
-#include "e.h"
-#include "data.h"
-#include "file.h"
-#include "util.h"
-
-void
-e_data_type_add_node(E_Data_Base_Type * base, char *prefix,
- E_Data_Datatype type,
- E_Data_Base_Type * list_type,
- int offset, E_Data_Value def_val)
-{
- E_Data_Node *data_node;
-
- D_ENTER;
-
- data_node = NEW(E_Data_Node, 1);
- ZERO(data_node, E_Data_Node, 1);
-
- data_node->prefix = strdup(prefix);
- data_node->type = type;
- data_node->sub_type = list_type;
- data_node->offset = offset;
- switch (type)
- {
- case E_DATA_TYPE_INT:
- data_node->def_val.int_val = def_val.int_val;
- break;
- case E_DATA_TYPE_FLOAT:
- data_node->def_val.float_val = def_val.float_val;
- break;
- case E_DATA_TYPE_STR:
- if (data_node->def_val.str_val)
- {
- e_strdup(data_node->def_val.str_val, def_val.str_val);
- }
- break;
- default:
- break;
- }
- base->nodes = evas_list_append(base->nodes, data_node);
-
- D_RETURN;
-}
-
-E_Data_Base_Type *
-e_data_type_new(void)
-{
- E_Data_Base_Type *t;
-
- D_ENTER;
-
- t = NEW(E_Data_Base_Type, 1);
- ZERO(t, E_Data_Base_Type, 1);
-
- D_RETURN_(t);
-}
-
-void *
-e_data_load(char *file, char *prefix, E_Data_Base_Type * type)
-{
- E_DB_File *db;
- char buf[PATH_MAX];
- Evas_List *l;
- char *data;
-
- D_ENTER;
-
- if (!e_file_exists(file))
- D_RETURN_(NULL);
- db = e_db_open_read(file);
-
- if (!db)
- D_RETURN_(NULL);
-
- data = NEW(char, type->size);
- ZERO(data, char, type->size);
-
- for (l = type->nodes; l; l = l->next)
- {
- E_Data_Node *node;
-
- node = l->data;
- switch (node->type)
- {
- case E_DATA_TYPE_INT:
- {
- int val;
-
- val = 0;
- snprintf(buf, PATH_MAX, "%s/%s", prefix, node->prefix);
- if (e_db_int_get(db, buf, &val))
- (*((int *)(&(data[node->offset])))) = val;
- else
- (*((int *)(&(data[node->offset])))) = node->def_val.int_val;
- }
- break;
- case E_DATA_TYPE_STR:
- {
- char *val;
-
- snprintf(buf, PATH_MAX, "%s/%s", prefix, node->prefix);
- if ((val = e_db_str_get(db, buf)))
- (*((char **)(&(data[node->offset])))) = val;
- else
- e_strdup((*((char **)(&(data[node->offset])))),
- node->def_val.str_val);
- }
- break;
- case E_DATA_TYPE_PTR:
- {
- snprintf(buf, PATH_MAX, "%s/%s", prefix, node->prefix);
- (*((void **)(&(data[node->offset])))) = e_data_load(file, buf,
- node->
- sub_type);
- }
- break;
- case E_DATA_TYPE_FLOAT:
- {
- float val;
-
- val = 0;
- snprintf(buf, PATH_MAX, "%s/%s", prefix, node->prefix);
- if (e_db_float_get(db, buf, &val))
- (*((float *)(&(data[node->offset])))) = val;
- else
- (*((float *)(&(data[node->offset])))) =
- node->def_val.float_val;
- }
- break;
- case E_DATA_TYPE_LIST:
- {
- Evas_List *l2;
- int i, count;
-
- l2 = NULL;
- snprintf(buf, PATH_MAX, "%s/%s/count", prefix, node->prefix);
- count = 0;
- e_db_int_get(db, buf, &count);
- for (i = 0; i < count; i++)
- {
- void *data2;
-
- snprintf(buf, PATH_MAX, "%s/%s/%i", prefix, node->prefix,
- i);
- data2 = e_data_load(file, buf, node->sub_type);
- l2 = evas_list_append(l2, data2);
- }
- (*((Evas_List **) (&(data[node->offset])))) = l2;
- }
- break;
- case E_DATA_TYPE_KEY:
- {
- snprintf(buf, PATH_MAX, "%s/%s", prefix, node->prefix);
- (*((char **)(&(data[node->offset])))) = strdup(buf);
- }
- break;
- default:
- break;
- }
- }
-
- e_db_close(db);
- D_RETURN_(data);
-}
-
-void
-e_data_free(E_Data_Base_Type * type, char *data)
-{
- Evas_List *l;
-
- D_ENTER;
-
- for (l = type->nodes; l; l = l->next)
- {
- E_Data_Node *node;
-
- node = l->data;
- switch (node->type)
- {
- case E_DATA_TYPE_LIST:
- {
- Evas_List *l2;
-
- l2 = (*((Evas_List **) (&(data[node->offset]))));
- while (l2)
- {
- char *data2;
-
- data2 = l2->data;
- l2 = evas_list_remove(l2, data2);
- if(data2)
- {
- e_data_free(node->sub_type, (char *)data2);
- FREE(data2);
- }
- }
- }
- break;
- case E_DATA_TYPE_STR:
- case E_DATA_TYPE_KEY:
- {
- IF_FREE((*((char **)(&(data[node->offset])))));
- }
- break;
- case E_DATA_TYPE_PTR:
- {
- e_data_free(node->sub_type,
- (*((void **)(&(data[node->offset])))));
- FREE((*((void **)(&(data[node->offset])))));
- }
- break;
- case E_DATA_TYPE_INT:
- case E_DATA_TYPE_FLOAT:
- break;
- default:
- D("DATA WARNING: Data node %p corrupted!!!\n", node);
- break;
- }
- }
-
- D_RETURN;
-}
diff --git a/src/data.h b/src/data.h
deleted file mode 100644
index 9af9e98df..000000000
--- a/src/data.h
+++ /dev/null
@@ -1,97 +0,0 @@
-#ifndef _DB_H
-#define _DB_H
-
-/*
- * The API described in this file is used to map data from a database into a
- * struct. TODO: Arbitrary cleanup function for handling fields not described
- * by the base type, ie. not read in from the database.
- */
-
-typedef struct _e_data_base_type E_Data_Base_Type;
-typedef union _e_data_value E_Data_Value;
-typedef struct _e_data_node E_Data_Node;
-typedef enum _e_data_datatype E_Data_Datatype;
-
-enum _e_data_datatype
-{
- E_DATA_TYPE_INT,
- E_DATA_TYPE_STR,
- E_DATA_TYPE_PTR,
- E_DATA_TYPE_FLOAT,
- E_DATA_TYPE_LIST,
- E_DATA_TYPE_KEY
-};
-
-struct _e_data_base_type
-{
- int size;
- Evas_List *nodes;
-};
-
-union _e_data_value
-{
- int int_val;
- float float_val;
- char *str_val;
-};
-
-struct _e_data_node
-{
- char *prefix;
- E_Data_Datatype type;
- int offset;
- E_Data_Base_Type *sub_type;
- E_Data_Value def_val;
-};
-
-#define E_DATA_NODE(var, prefix, type, sub, struct_type, struct_member, def_val) \
-{ \
- struct_type _cfg_dummy; \
- char *_cfg_p1, *_cfg_p2; \
- int _cfg_offset; \
- \
- _cfg_p1 = (char *)(&(_cfg_dummy)); \
- _cfg_p2 = (char *)(&(_cfg_dummy.struct_member)); \
- _cfg_offset = (int)(_cfg_p2 - _cfg_p1); \
- \
- e_data_type_add_node(var, prefix, type, sub, _cfg_offset, def_val); \
- var->size = sizeof(struct_type); \
-}
-
-/**
- * e_data_type_new - create the basis for a new datatype description
- *
- * Returns a pointer to base type for tracking the elements of a data type.
- */
-E_Data_Base_Type *e_data_type_new(void);
-
-/**
- * e_data_type_add_node - add a type node to the base data type
- *
- * Add the necessary information for setting a data field in the base struct.
- */
-void e_data_type_add_node(E_Data_Base_Type * base,
- char *prefix,
- E_Data_Datatype type,
- E_Data_Base_Type * list_type,
- int offset, E_Data_Value def_val);
-
-/**
- * e_data_load - allocate and assign the data of the base type
- *
- * Returns a newly allocated struct of the base type, with data filled from
- * the database file with keys prefixed by prefix.
- */
-void *e_data_load(char *file, char *prefix,
- E_Data_Base_Type * type);
-
-/**
- * e_data_free - free the data allocated by e_data_load
- *
- * The data assigned by e_data_load is freed, but the struct itself is not,
- * since the programmer may have other fields in the struct that were not
- * allocated by e_data_load.
- */
-void e_data_free(E_Data_Base_Type * type, char *data);
-
-#endif
diff --git a/src/debug.c b/src/debug.c
deleted file mode 100644
index b1c81acd6..000000000
--- a/src/debug.c
+++ /dev/null
@@ -1,88 +0,0 @@
-/*
-
-Copyright (C) 2000, 2001 Christian Kreibich <cK@whoop.org>.
-
-Permission is hereby granted, free of charge, to any person obtaining a copy
-of this software and associated documentation files (the "Software"), to
-deal in the Software without restriction, including without limitation the
-rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
-sell copies of the Software, and to permit persons to whom the Software is
-furnished to do so, subject to the following conditions:
-
-The above copyright notice and this permission notice shall be included in
-all copies of the Software and its documentation and acknowledgment shall be
-given in the documentation and software packages that this Software was
-used.
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
-THE AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
-IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
-CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-
-*/
-#if HAVE_CONFIG_H
-# include <config.h>
-#endif
-
-#include <stdarg.h>
-#include <stdio.h>
-#include <sys/time.h>
-#include <unistd.h>
-
-#include "debug.h"
-
-static int do_print = 1;
-static int calldepth = 0;
-
-static void debug_whitespace(int calldepth);
-static void debug_print_info(void);
-
-static void
-debug_whitespace(int calldepth)
-{
- int i;
-
- for (i = 0; i < 2 * calldepth; i++)
- printf("-");
-}
-
-static void
-debug_print_info(void)
-{
- printf("e17 dbg: ");
-}
-
-void
-e_debug_enter(const char *file, const char *func)
-{
- if (do_print)
- {
- calldepth++;
-
- printf("ENTER ");
- debug_print_info();
- debug_whitespace(calldepth);
- printf("%s, %s()\n", file, func);
- fflush(stdout);
- }
-}
-
-void
-e_debug_return(const char *file, const char *func)
-{
- if (do_print)
- {
- printf("RETURN ");
- debug_print_info();
- debug_whitespace(calldepth);
- printf("%s, %s()\n", file, func);
- fflush(stdout);
-
- calldepth--;
-
- if (calldepth < 0)
- printf("NEGATIVE!!!\n");
- }
-}
diff --git a/src/debug.h b/src/debug.h
deleted file mode 100644
index 67d851028..000000000
--- a/src/debug.h
+++ /dev/null
@@ -1,68 +0,0 @@
-/*
-
-Copyright (C) 2000, 2001 Christian Kreibich <cK@whoop.org>.
-
-Permission is hereby granted, free of charge, to any person obtaining a copy
-of this software and associated documentation files (the "Software"), to
-deal in the Software without restriction, including without limitation the
-rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
-sell copies of the Software, and to permit persons to whom the Software is
-furnished to do so, subject to the following conditions:
-
-The above copyright notice and this permission notice shall be included in
-all copies of the Software and its documentation and acknowledgment shall be
-given in the documentation and software packages that this Software was
-used.
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
-THE AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
-IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
-CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-
-*/
-#ifndef E_DEBUG_H
-#define E_DEBUG_H
-
-#include <unistd.h>
-#include <stdio.h>
-
-
-/*
- * #undef DEBUG
- */
-
-#ifdef DEBUG
-
-#define D(fmt, args...) printf(fmt, ## args); fflush(stdout);
-#else
-#define D(msg, args...)
-#endif
-
-#ifdef DEBUG_NEST
-
-void e_debug_enter(const char *file, const char *func);
-void e_debug_return(const char *file, const char *func);
-
-#define D_ENTER e_debug_enter(__FILE__, __FUNCTION__)
-
-#define D_RETURN \
-{ \
- e_debug_return(__FILE__, __FUNCTION__); \
- return; \
-}
-
-#define D_RETURN_(x) \
-{ \
- e_debug_return(__FILE__, __FUNCTION__); \
-\
- return x; \
-}
-#else
-#define D_ENTER
-#define D_RETURN return
-#define D_RETURN_(x) return (x)
-#endif
-
-#endif
diff --git a/src/delayed.c b/src/delayed.c
deleted file mode 100644
index e68a224ae..000000000
--- a/src/delayed.c
+++ /dev/null
@@ -1,65 +0,0 @@
-#include <string.h>
-#include "debug.h"
-#include "delayed.h"
-#include "util.h"
-
-static void
-e_delayed_action_cleanup(E_Delayed_Action * eda)
-{
- D_ENTER;
-
- e_delayed_action_cancel(eda);
- e_observer_cleanup(E_OBSERVER(eda));
-
- D_RETURN;
-}
-
-E_Delayed_Action *
-e_delayed_action_new(E_Event_Type event, E_Delay_Val delay,
- E_Delay_Func delay_func)
-{
- E_Delayed_Action *eda = NULL;
-
- D_ENTER;
-
- eda = NEW(E_Delayed_Action, 1);
- memset(eda, 0, sizeof(E_Delayed_Action));
-
- e_observer_init(E_OBSERVER(eda), event, e_delayed_action_start,
- (E_Cleanup_Func) e_delayed_action_cleanup);
-
- eda->delay = delay;
- eda->delay_func = delay_func;
-
- D_RETURN_(eda);
-}
-
-void
-e_delayed_action_start(E_Observer * obs, E_Observee * obj, E_Event_Type event, void *data)
-{
- char event_name[PATH_MAX];
- E_Delayed_Action *eda = (E_Delayed_Action *) obs;
-
- D_ENTER;
-
- snprintf(event_name, PATH_MAX, "_e_delayed_action_notify(%d)", obs->event);
- ecore_add_event_timer(event_name, eda->delay(), eda->delay_func, 0, obj);
-
- D_RETURN;
- UN(event);
- UN(data);
-}
-
-void
-e_delayed_action_cancel(E_Delayed_Action * eda)
-{
- char event_name[PATH_MAX];
-
- D_ENTER;
-
- snprintf(event_name, PATH_MAX, "_e_delayed_action_notify(%d)",
- E_OBSERVER(eda)->event);
- ecore_del_event_timer(event_name);
-
- D_RETURN;
-}
diff --git a/src/delayed.h b/src/delayed.h
deleted file mode 100644
index 809696789..000000000
--- a/src/delayed.h
+++ /dev/null
@@ -1,28 +0,0 @@
-#ifndef E_DELAYED_H
-#define E_DELAYED_H
-
-#include "e.h"
-#include "observer.h"
-
-typedef void (*E_Delay_Func) (int val, void *obj);
-typedef float (*E_Delay_Val) ();
-
-typedef struct _e_delayed_action
-{
- E_Observer obs;
-
- E_Delay_Val delay;
- E_Delay_Func delay_func;
-
-}
-E_Delayed_Action;
-
-E_Delayed_Action *e_delayed_action_new(E_Event_Type event,
- E_Delay_Val delay,
- E_Delay_Func delay_func);
-
-void e_delayed_action_start(E_Observer * obs, E_Observee * obj,
- E_Event_Type event, void *data);
-void e_delayed_action_cancel(E_Delayed_Action * eda);
-
-#endif
diff --git a/src/desktops.c b/src/desktops.c
deleted file mode 100644
index e9bf76f57..000000000
--- a/src/desktops.c
+++ /dev/null
@@ -1,1048 +0,0 @@
-#include "debug.h"
-#include "config.h"
-#include "actions.h"
-#include "border.h"
-#include "view.h"
-#include "icccm.h"
-#include "util.h"
-#include "object.h"
-#include "e_view_look.h"
-#include "e_view_machine.h"
-#include "menubuild.h"
-#include "globals.h"
-#include "desktops.h"
-
-static E_Desktop *current_desk = NULL;
-static Evas_List *sticky_list = NULL;
-static Evas_List *desktops = NULL;
-static Window e_base_win = 0;
-static int screen_w, screen_h;
-static int mouse_x, mouse_y;
-
-static void e_idle(void *data);
-static void e_mouse_move(Ecore_Event * ev);
-static void e_mouse_down(Ecore_Event * ev);
-static void e_mouse_up(Ecore_Event * ev);
-static void e_bg_up_cb(void *_data, Evas * _e, Evas_Object * _o,
- void *event_info);
-static void e_window_expose(Ecore_Event * ev);
-void e_desktop_layout_reload(E_Desktop * d);
-
-static void
-e_scroller_timer(int val, void *data)
-{
- int ok = 0;
- int resist;
- int scroll_speed;
- static double last_time = 0.0;
- double t;
- E_Desktop *desk;
-
- D_ENTER;
-
- resist = config_data->desktops->resist;
- scroll_speed = config_data->desktops->speed;
-
- t = ecore_get_time();
- if (val != 0)
- scroll_speed = (int)(((t - last_time) / 0.02) * (double)scroll_speed);
- last_time = t;
-
- ok = 0;
- desk = current_desk;
- if (!desk)
- D_RETURN;
- if (mouse_x >= (screen_w - resist))
- {
- int scroll = 0;
-
- if ((desk->desk.area.x + desk->virt.w) > screen_w)
- scroll = desk->desk.area.x + desk->virt.w - screen_w;
- if (scroll)
- {
- if (scroll > scroll_speed)
- scroll = scroll_speed;
- e_desktops_scroll(desk, -scroll, 0);
- ok = 1;
- }
- }
- else if (mouse_x < resist)
- {
- int scroll = 0;
-
- if (desk->desk.area.x < 0)
- scroll = -desk->desk.area.x;
- if (scroll)
- {
- if (scroll > scroll_speed)
- scroll = scroll_speed;
- e_desktops_scroll(desk, scroll, 0);
- ok = 1;
- }
- }
- if (mouse_y >= (screen_h - resist))
- {
- int scroll = 0;
-
- if ((desk->desk.area.y + desk->virt.h) > screen_h)
- scroll = desk->desk.area.y + desk->virt.h - screen_h;
- if (scroll)
- {
- if (scroll > scroll_speed)
- scroll = scroll_speed;
- e_desktops_scroll(desk, 0, -scroll);
- ok = 1;
- }
- }
- else if (mouse_y < resist)
- {
- int scroll = 0;
-
- if (desk->desk.area.y < 0)
- scroll = -desk->desk.area.y;
- if (scroll)
- {
- if (scroll > scroll_speed)
- scroll = scroll_speed;
- e_desktops_scroll(desk, 0, scroll);
- ok = 1;
- }
- }
- if ((ok))
- ecore_add_event_timer("desktop_scroller", 0.02, e_scroller_timer, val + 1,
- NULL);
-
- D_RETURN;
- UN(data);
-}
-
-Window
-e_desktop_window()
-{
- return e_base_win;
-}
-
-void
-e_desktops_init(void)
-{
- int i;
- E_Desktop *desk;
-
- D_ENTER;
-
- ecore_window_get_geometry(0, NULL, NULL, &screen_w, &screen_h);
- e_base_win = ecore_window_input_new(0, 0, 0, screen_w, screen_h);
- ecore_window_set_events(e_base_win, XEV_CHILD_REDIRECT | XEV_PROPERTY |
- XEV_COLORMAP | XEV_FOCUS | XEV_KEY |
- XEV_MOUSE_MOVE | XEV_BUTTON | XEV_IN_OUT);
- ecore_window_set_events_propagate(e_base_win, True);
- ecore_window_show(e_base_win);
-
- D("Creating %d desktops\n", config_data->desktops->count);
- for (i = 0; i < config_data->desktops->count; i++)
- desk = e_desktops_new(i);
-
- current_desk = desktops->data;
-
- e_icccm_advertise_e_compat();
- /* todo
- e_icccm_advertise_mwm_compat();
- e_icccm_advertise_gnome_compat();
- e_icccm_advertise_kde_compat();
- e_icccm_advertise_net_compat();
- */
-
- e_icccm_set_desk_area_size(0, 1, 1);
- e_icccm_set_desk_area(0, 0, 0);
- e_icccm_set_desk(0, 0);
-
- ecore_event_filter_handler_add(ECORE_EVENT_MOUSE_MOVE, e_mouse_move);
- ecore_event_filter_handler_add(ECORE_EVENT_MOUSE_UP, e_mouse_up);
- ecore_event_filter_handler_add(ECORE_EVENT_MOUSE_DOWN, e_mouse_down);
- ecore_event_filter_handler_add(ECORE_EVENT_WINDOW_EXPOSE, e_window_expose);
-
- ecore_event_filter_idle_handler_add(e_idle, NULL);
-
- D_RETURN;
-}
-
-void
-e_desktops_scroll(E_Desktop * desk, int dx, int dy)
-{
- /* Evas_List * l;
- int xd, yd, wd, hd;
- int grav, grav_stick; */
- int scroll_sticky;
-
- D_ENTER;
-
- scroll_sticky = config_data->desktops->scroll_sticky;
-
- if ((dx == 0) && (dy == 0))
- D_RETURN;
- desk->x -= dx;
- desk->y -= dy;
-
- e_borders_scroll_list(desk->windows, dx, dy);
- if (scroll_sticky)
- e_borders_scroll_list(sticky_list, dx, dy);
-
- desk->desk.area.x += dx;
- desk->desk.area.y += dy;
-
- e_bg_set_scroll(desk->bg, desk->desk.area.x, desk->desk.area.y);
-
- D_RETURN;
-}
-
-void
-e_desktops_cleanup(E_Desktop * desk)
-{
- D_ENTER;
-
- while (desk->windows)
- {
- E_Border *b;
-
- b = desk->windows->data;
- e_action_stop_by_object(E_OBJECT(b), NULL, 0, 0, 0, 0);
-
- if (e_object_get_usecount(E_OBJECT(b)) == 1)
- e_border_release(b);
- e_object_unref(E_OBJECT(b));
- }
-
- if (desk->iconbar)
- {
- /* e_iconbar_save_out_final(desk->iconbar); */
- e_object_unref(E_OBJECT(desk->iconbar));
- }
-
- if (desk->look)
- e_object_unref(E_OBJECT(desk->look));
-
- if (desk->bg)
- e_bg_free(desk->bg);
-
- if (desk->evas)
- evas_free(desk->evas);
-
- IF_FREE(desk->name);
- IF_FREE(desk->dir);
-
- e_object_cleanup(E_OBJECT(desk));
-
- D_RETURN;
-}
-
-void
-e_desktop_adaptor_cleanup(void *adaptor)
-{
- e_object_cleanup(E_OBJECT(adaptor));
-}
-
-void
-e_desktop_file_event_handler(E_Observer *obs, E_Observee *o, E_Event_Type event, void *data)
-{
- E_Desktop_Adaptor *a = (E_Desktop_Adaptor *) obs;
-
- D_ENTER;
-
- if(a&&a->desktop) {
- char *mn=a->desktop->name?a->desktop->name:"";
- if (event & E_EVENT_BG_CHANGED) {
- D("background_reload: %s\n",mn);
- e_desktop_bg_reload(a->desktop); }
- else if (event & E_EVENT_ICB_CHANGED) {
- D("iconbar_reload: %s\n",mn);
- e_desktop_ib_reload(a->desktop); }
- else if (event & E_EVENT_LAYOUT_CHANGED) {
- D("layout_reload: %s\n",mn);
- e_desktop_layout_reload(a->desktop); }}
-#ifdef DEBUG
- else { /* add'l debug foo. technically, a, a->desktop should always be
- set, it's only a->desktop->name that we really worry about.
- Azundris 2003/01/11 */
- if(a) {
- D("e_desktop_file_event_handler: E_Desktop_Adaptor->desktop not set, "); }
- else {
- D("e_desktop_file_event_handler: E_Desktop_Adaptor not set, "); }
-
- if (event & E_EVENT_BG_CHANGED) {
- D("BG_CHANGED\n"); }
- else if (event & E_EVENT_ICB_CHANGED) {
- D("ICB_CHANGED\n"); }
- else if (event & E_EVENT_LAYOUT_CHANGED) {
- D("LAYOUT_CHANGED\n"); }
- else { D(" (unknown event-type)\n"); }}
-#endif
-
- D_RETURN;
- UN(o);
- UN(data);
-}
-
-/* 2002/04/23 Azundris <hacks@azundris.com> Transparency for legacy apps
- *
- * Since we have new fancy ways of drawing stuff, we technically don't
- * use the root window any more, in the X meaning of the word. This
- * results in legacy apps (xchat, xemacs, konsole, ...) failing to find
- * a root pixmap, thereby breaking pseudo-transparency. Since we're
- * using a pixmap below anyway, we may as well export it to unbreak
- * the legacy thingies. This code reuses parts of Esetroot (written
- * by Nat Friedman <ndf@mit.edu> with modifications by Gerald Britton
- * <gbritton@mit.edu> and Michael Jennings <mej@eterm.org>). raster
- * intensely dislikes the pseudo-transparency hacks, so don't go to him
- * if you need to discuss them. : )
- * */
-
-static void
-e_desktops_set_fake_root(Pixmap p)
-{
- Display *Xdisplay;
- Screen *scr;
- Window Xroot;
- int screen;
- Atom prop_root, prop_esetroot, type;
- int format;
- unsigned long length, after;
- unsigned char *data_root, *data_esetroot;
-
- D_ENTER;
-
- Xdisplay = ecore_display_get();
-
- screen = DefaultScreen(Xdisplay);
- Xroot = RootWindow(Xdisplay, screen);
- scr = ScreenOfDisplay(Xdisplay, screen);
-
- ecore_grab();
-
- prop_root = XInternAtom(Xdisplay, "_XROOTPMAP_ID", True);
- prop_esetroot = XInternAtom(Xdisplay, "ESETROOT_PMAP_ID", True);
-
- if (prop_root != None && prop_esetroot != None)
- {
- XGetWindowProperty(Xdisplay, Xroot, prop_root, 0L, 1L, False,
- AnyPropertyType, &type, &format, &length, &after,
- &data_root);
- if (type == XA_PIXMAP)
- {
- XGetWindowProperty(Xdisplay, Xroot, prop_esetroot, 0L, 1L, False,
- AnyPropertyType, &type, &format, &length,
- &after, &data_esetroot);
- if (data_root && data_esetroot)
- {
- if (type == XA_PIXMAP
- && *((Pixmap *) data_root) == *((Pixmap *) data_esetroot))
- {
- XKillClient(Xdisplay, *((Pixmap *) data_root));
- }
- }
- }
- }
-
- /* This will locate the property, creating it if it doesn't exist */
- prop_root = XInternAtom(Xdisplay, "_XROOTPMAP_ID", False);
- prop_esetroot = XInternAtom(Xdisplay, "ESETROOT_PMAP_ID", False);
-
- /* The call above should have created it. If that failed, we can't
- * continue. */
- if (prop_root == None || prop_esetroot == None)
- {
- fprintf(stderr,
- "E17: Creation of pixmap property failed in internal Esetroot.\n");
- D_RETURN;
- }
-
- XChangeProperty(Xdisplay, Xroot, prop_root, XA_PIXMAP, 32, PropModeReplace,
- (unsigned char *)&p, 1);
- XChangeProperty(Xdisplay, Xroot, prop_esetroot, XA_PIXMAP, 32,
- PropModeReplace, (unsigned char *)&p, 1);
- XSetCloseDownMode(Xdisplay, RetainPermanent);
- ecore_flush();
-
- ecore_window_set_background_pixmap(0, p);
- ecore_window_clear(0);
- ecore_ungrab();
- ecore_flush();
-
- D_RETURN;
-}
-
-void
-e_desktop_bg_reload(E_Desktop * d)
-{
- E_Background bg = NULL;
-
- /* This should only be called if the background did really
- * change in the underlying dir. We dont check again
- * here. */
- D_ENTER;
-
- if (!d || !d->look)
- D_RETURN;
-
- /* nuke the old one */
- if (d->bg)
- {
- int size;
-
- e_bg_free(d->bg);
- d->bg = NULL;
- /*
- * FIXME: Do we need to do all this flushing? Doesn't evas do some
- * time stamp comparisons?
- */
- if (d->evas)
- {
- size = evas_image_cache_get(d->evas);
- evas_image_cache_flush(d->evas);
- evas_image_cache_set(d->evas, size);
- }
- e_db_flush();
- }
-
- if (d->look->obj->bg)
- {
- bg = e_bg_load(d->look->obj->bg);
- }
- else
- {
- /* Our look doesnt provide a bg, falls back */
- char buf[PATH_MAX];
- snprintf(buf, PATH_MAX, "%s/default.bg.db", e_config_get("backgrounds"));
- bg = e_bg_load(buf);
- }
-
- if (bg)
- {
- d->bg = bg;
- if (d->evas)
- {
- e_bg_add_to_evas(d->bg, d->evas);
- e_bg_set_scroll(d->bg, d->desk.area.x, d->desk.area.y);
- e_bg_set_layer(d->bg, 100);
- e_bg_resize(d->bg, d->real.w, d->real.h);
-
- e_bg_callback_add(d->bg, EVAS_CALLBACK_MOUSE_UP, e_bg_up_cb, d);
-
- e_bg_show(d->bg);
- }
- }
-
- evas_damage_rectangle_add(d->evas, 0, 0, d->real.w, d->real.h);
- e_desktop_update(d);
-
- D_RETURN;
-}
-
-void
-e_desktop_layout_reload(E_Desktop * d)
-{
- D_ENTER;
- if (!d || !d->look)
- D_RETURN;
-
- if (e_object_unref(E_OBJECT(d->layout)) == 0)
- d->layout = NULL;
-
- /* try load a new layout */
- d->layout = e_view_layout_new(d);
-
- /* if the layout loaded and theres an evas - we're realized */
- /* so realize the layout */
- if ((d->layout) && (d->evas))
- e_view_layout_realize(d->layout);
-
- e_view_layout_update(d->layout);
-
- D_RETURN;
-}
-
-void
-e_desktop_ib_reload(E_Desktop * d)
-{
- D_ENTER;
-
- /* if we have an iconbar.. well nuke it */
- if (e_object_unref(E_OBJECT(d->iconbar)) == 0)
- d->iconbar = NULL;
-
- /* no iconbar in our look */
- if(!d->look->obj->icb || !d->look->obj->icb_bits)
- D_RETURN;
-
- /* try load a new iconbar */
- if (!d->iconbar)
- d->iconbar = e_iconbar_new(d);
-
- /* if the iconbar loaded and theres an evas - we're realized */
- /* so realize the iconbar */
- if ((d->iconbar) && (d->evas))
- e_iconbar_realize(d->iconbar);
-
- D_RETURN;
-}
-
-E_Desktop *
-e_desktops_new(int i)
-{
- char buf[PATH_MAX];
- /* E_Border *b; */
- E_Desktop *desk;
- E_View_Look *l;
- static Pixmap background = 0;
- Evas_Engine_Info_Software_X11 *einfo;
-
- D_ENTER;
-
- desk = NEW(E_Desktop, 1);
- ZERO(desk, E_Desktop, 1);
-
- e_observee_init(E_OBSERVEE(desk), (E_Cleanup_Func) e_desktops_cleanup);
-
- desk->x = 0;
- desk->y = 0;
- desk->real.w = screen_w;
- desk->real.h = screen_h;
- desk->virt.w = config_data->desktops->width * screen_w;
- desk->virt.h = config_data->desktops->height * screen_h;
- desk->desk.desk = i;
-
- if (!background)
- {
- background = ecore_pixmap_new(0, screen_w, screen_h, 0);
- e_desktops_set_fake_root(background);
- }
-
- desk->evas = evas_new();
- evas_output_method_set(desk->evas, evas_render_method_lookup("software_x11"));
- evas_output_size_set(desk->evas, screen_w, screen_h);
- evas_output_viewport_set(desk->evas, 0, 0, screen_w, screen_h);
-
- einfo = (Evas_Engine_Info_Software_X11 *) evas_engine_info_get(desk->evas);
- einfo->info.display = ecore_display_get();
- einfo->info.visual = DefaultVisual(einfo->info.display,
- DefaultScreen(einfo->info.display));
- einfo->info.colormap = DefaultColormap(einfo->info.display,
- DefaultScreen(einfo->info.display));
-
- einfo->info.drawable = background;
- einfo->info.depth = DefaultDepth(einfo->info.display,
- DefaultScreen(einfo->info.display));
- einfo->info.rotation = 0;
- einfo->info.debug = 0;
- evas_engine_info_set(desk->evas, (Evas_Engine_Info *) einfo);
-
- snprintf(buf, PATH_MAX, "%sdesktop/%d/.e_layout", e_config_user_dir(), i);
- if (!(l = e_view_machine_look_lookup(buf)))
- desk->look = e_view_look_new();
- else
- {
- desk->look = l;
- e_object_ref(E_OBJECT(desk->look));
- }
-
- e_view_look_set_dir(desk->look, buf);
-
- /* experimental, Azundris 2003/01/11 */
- if(!desk->name) {
- size_t l=0;
- int j=10,k=1;
- while(i>=j) {
- j*=10;
- k++; }
-#define DESK_DFLT_NAME "Desk "
- if((desk->name=malloc(l=sizeof(DESK_DFLT_NAME)+k)))
- snprintf(desk->name,l,"%s%d",DESK_DFLT_NAME,i); }
-
- /* The adaptor allows us to watch the look for events, while keeping the
- * desktop an observable object */
- desk->adaptor = NEW(E_Desktop_Adaptor, 1);
- e_observer_init(E_OBSERVER(desk->adaptor),
- E_EVENT_BG_CHANGED | E_EVENT_ICB_CHANGED | E_EVENT_LAYOUT_CHANGED,
- e_desktop_file_event_handler, e_desktop_adaptor_cleanup);
- desk->adaptor->desktop = desk;
- e_observer_register_observee(E_OBSERVER(desk->adaptor), E_OBSERVEE(desk->look->obj));
-
- e_desktop_bg_reload(desk);
-
- ecore_window_set_background_pixmap(0, background);
- ecore_window_clear(0);
- desktops = evas_list_append(desktops, desk);
-
- D_RETURN_(desk);
-}
-
-void
-e_desktops_add_border(E_Desktop * d, E_Border * b)
-{
- D_ENTER;
-
- if ((!d) || (!b))
- D_RETURN;
-
- if (!evas_list_find(d->windows, b))
- {
- b->desk = d;
- b->client.desk = d->desk.desk;
- b->client.area.x = d->desk.area.x;
- b->client.area.y = d->desk.area.y;
- }
- e_border_raise(b);
-
- D_RETURN;
-}
-
-void
-e_desktops_add_sticky(E_Border *b)
-{
- D_ENTER;
-
- if (b->desk)
- e_desktops_del_border(b->desk, b);
- if (!evas_list_find(sticky_list, b))
- sticky_list = evas_list_append(sticky_list, b);
-
- D_RETURN;
-}
-
-
-void
-e_desktops_rm_sticky(E_Border *b)
-{
- D_ENTER;
-
- if (evas_list_find(sticky_list, b))
- {
- sticky_list = evas_list_remove(sticky_list, b);
- e_desktops_add_border(current_desk, b);
- }
-
- D_RETURN;
-}
-
-
-void
-e_desktops_del_border(E_Desktop * d, E_Border * b)
-{
- D_ENTER;
-
- if ((!d) || (!b))
- D_RETURN;
- d->windows = evas_list_remove(d->windows, b);
- b->desk = NULL;
-
- D_RETURN;
-}
-
-E_Border *
-e_desktop_raise_next_border(void)
-{
- Evas_List * next;
- E_Border *start;
- E_Border *current;
-
- D_ENTER;
-
- if (!current_desk || !current_desk->windows)
- D_RETURN_(NULL);
-
- start = current = e_border_current_focused();
- if (!start)
- start = current = current_desk->windows->data;
-
- /* Find the current border on the list of borders */
- for (next = current_desk->windows; next && next->data != current; next = next->next);
-
- /* Step to the next border, wrap around the queue if the end is reached */
- if (next && next->next)
- next = next->next;
- else
- next = current_desk->windows;
-
- /* Now find the next viewable border on the same desktop */
- current = (E_Border *) next->data;
- while ((current != start) && (!e_border_viewable(current)))
- {
- next = next->next;
- if (!next)
- next = current_desk->windows;
-
- current = (E_Border *) next->data;
- }
-
- e_border_raise(current);
- e_icccm_send_focus_to(current->win.client, current->client.takes_focus);
-
- D_RETURN_(current);
-}
-
-void
-e_desktops_delete(E_Desktop * d)
-{
- D_ENTER;
-
- e_object_unref(E_OBJECT(d));
-
- D_RETURN;
-}
-
-void
-e_desktops_show(E_Desktop * d)
-{
- D_ENTER;
-
- e_bg_show(d->bg);
- evas_damage_rectangle_add(d->evas, 0, 0, d->real.w, d->real.h);
- e_desktop_update(d);
-
- D_RETURN;
-}
-
-void
-e_desktops_hide(E_Desktop * d)
-{
- D_ENTER;
-
- e_bg_hide(d->bg);
-
- D_RETURN;
- UN(d);
-}
-
-int
-e_desktops_get_num(void)
-{
- D_ENTER;
- D_RETURN_(config_data->desktops->count);
-}
-
-E_Desktop *
-e_desktops_get(int d)
-{
- Evas_List * l;
- int i;
-
- D_ENTER;
-
- for (i = 0, l = desktops; l; l = l->next, i++)
- {
- if (i == d)
- D_RETURN_((E_Desktop *) l->data);
- }
-
- D_RETURN_(NULL);
-}
-
-int
-e_desktops_get_current(void)
-{
- D_ENTER;
-
- if (current_desk)
- D_RETURN_(current_desk->desk.desk);
-
- D_RETURN_(0);
-}
-
-void
-e_desktops_goto_desk(int d)
-{
- D_ENTER;
-
- e_desktops_goto(d, 0, 0);
-
- D_RETURN;
-}
-
-void
-e_desktops_goto(int d, int ax, int ay)
-{
- E_Desktop *desk;
-
- D_ENTER;
-
- D("Switching to desktop %d at %d, %d\n", d, ax, ay);
- desk = e_desktops_get(d);
- if (desk)
- {
- int dx, dy;
- Evas_List *l;
- E_Border *b;
-
- if ((d == current_desk->desk.desk))
- D_RETURN;
-
- dx = ax - desk->desk.area.x;
- dy = ay - desk->desk.area.y;
-
- for (l = current_desk->windows; l; l = l->next)
- {
- b = l->data;
- if ((!b->client.iconified) && (!b->mode.move))
- {
- if (b->current.requested.visible)
- {
- b->current.requested.visible = 0;
- b->changed = 1;
- }
- }
- else if ((!b->client.iconified) && (b->mode.move))
- {
- e_desktops_del_border(current_desk, b);
- b->client.desk = desk;
- e_desktops_add_border(desk, b);
- b->current.requested.visible = 1;
- b->changed = 1;
- }
- }
-
- for (l = desk->windows; l; l = l->next)
- {
- b = l->data;
- if ((!b->mode.move) && (!b->client.iconified))
- {
- if (!b->current.requested.visible)
- {
- b->current.requested.visible = 1;
- b->changed = 1;
- }
- }
- }
-
- e_border_update_borders();
-
- e_desktops_scroll(desk, dx, dy);
- dx = current_desk->desk.area.x - desk->desk.area.x;
- dy = current_desk->desk.area.y - desk->desk.area.y;
- e_borders_scroll_list(sticky_list, dx, dy);
-
- e_desktops_hide(current_desk);
- e_desktops_show(desk);
- current_desk = desk;
-
- e_border_check_select();
-
- e_icccm_set_desk_area(0, desk->desk.area.x, desk->desk.area.y);
- e_icccm_set_desk(0, desk->desk.desk);
- e_observee_notify_observers(E_OBSERVEE(desk), E_EVENT_DESKTOP_SWITCH, NULL);
- }
-
- D_RETURN;
-}
-
-Evas_List *
-e_desktops_get_desktops_list()
-{
- D_ENTER;
- D_RETURN_(desktops);
-}
-
-void
-e_desktop_update(E_Desktop *d)
-{
- Evas_Rectangle *u;
- Evas_List *up, *fp;
-
- D_ENTER;
-
- fp = up = evas_render_updates(d->evas);
- /* special code to handle if we are double buffering to a pixmap */
- /* and clear sections of the window if they got updated */
- while (up)
- {
- u = up->data;
- ecore_window_clear_area(0, u->x, u->y, u->w, u->h);
- up = evas_list_next(up);
- }
-
- if (fp)
- evas_render_updates_free(fp);
-
- D_RETURN;
-}
-
-/* handling expose events */
-static void
-e_window_expose(Ecore_Event * ev)
-{
- Ecore_Event_Window_Expose *e;
-
- D_ENTER;
-
- e = ev->event;
-/* if (e->win == DefaultRootWindow(ecore_display_get())) */
- if (e->win == e_base_win)
- e_desktop_update(current_desk);
-
- D_RETURN;
-}
-
-/**
- * e_mouse_down - Handle mouse down events
- *
- * @ev: Pointer to event.
- */
-static void
-e_mouse_down(Ecore_Event * ev)
-{
- Ecore_Event_Mouse_Up *e;
-
- D_ENTER;
-
- e = ev->event;
-/* if (e->win == DefaultRootWindow(ecore_display_get())) */
- if (e->win == e_base_win)
- {
- evas_event_feed_mouse_down(current_desk->evas, e->button);
- }
-
- D_RETURN;
-}
-
-/**
- * e_mouse_up - Handle mouse up events
- *
- * @ev: Pointer to event.
- */
-static void
-e_mouse_up(Ecore_Event * ev)
-{
- Ecore_Event_Mouse_Up *e;
-
- D_ENTER;
-
- e = ev->event;
-/* if (e->win == DefaultRootWindow(ecore_display_get())) */
- if (e->win == e_base_win)
- {
- evas_event_feed_mouse_up(current_desk->evas, e->button);
- }
-
- D_RETURN;
-}
-
-/**
- * e_mouse_move - Handle mouse move events
- *
- * @ev: Pointer to event.
- */
-static void
-e_mouse_move(Ecore_Event * ev)
-{
- Ecore_Event_Mouse_Move *e;
-
- D_ENTER;
-
- e = ev->event;
- mouse_x = e->rx;
- mouse_y = e->ry;
- if (config_data->desktops->scroll)
- e_scroller_timer(0, NULL);
-/* if (e->win == DefaultRootWindow(ecore_display_get())) */
- if (e->win == e_base_win)
- {
- evas_event_feed_mouse_move(current_desk->evas, e->x, e->y);
- }
-
- D_RETURN;
-}
-
-static void
-e_idle(void *data)
-{
- D_ENTER;
-
- e_desktop_update(current_desk);
-
- D_RETURN;
- UN(data);
-}
-
-static void
-e_bg_up_cb(void *_data, Evas * _e, Evas_Object * _o, void *event_info)
-{
- E_Desktop *d;
- int dx, dy;
- Evas_Event_Mouse_Up *ev_info = event_info;
-
- D_ENTER;
-
- d = _data;
- dx = 0;
- dy = 0;
- ecore_pointer_xy_get(&dx, &dy);
- if (ev_info->button == 1)
- {
- static E_Build_Menu *buildmenu = NULL;
-
- if (!buildmenu)
- {
- char *apps_menu_db;
-
- apps_menu_db = e_config_get("apps_menu");
- if (apps_menu_db)
- buildmenu = e_build_menu_new_from_db(apps_menu_db);
- }
- if (buildmenu)
- {
- static E_Menu *menu = NULL;
-
- menu = buildmenu->menu;
- if (menu)
- {
- e_menu_show_at_mouse(menu, dx, dy, CurrentTime);
- }
- }
- }
- else if (ev_info->button == 2)
- {
- static E_Build_Menu *buildmenu = NULL;
-
- if (!buildmenu)
- {
- D("building iconified windows menu\n");
- buildmenu = e_build_menu_new_from_iconified_borders();
- }
- if (buildmenu && buildmenu->changed)
- {
- D("buildmenu changed! rebuild!\n");
- e_build_menu_iconified_borders_rebuild(buildmenu);
- }
- if (buildmenu)
- {
- static E_Menu *menu = NULL;
-
- menu = buildmenu->menu;
- if (menu)
- {
- D("showing iconified window menu\n");
- e_menu_show_at_mouse(menu, dx, dy, CurrentTime);
- }
- }
- }
- else if (ev_info->button == 3)
- {
- static E_Build_Menu *buildmenu = NULL;
-
- if (!buildmenu)
- {
- buildmenu =
- e_build_menu_new_from_gnome_apps("/usr/share/gnome/apps");
- }
- if (buildmenu)
- {
- static E_Menu *menu = NULL;
-
- menu = buildmenu->menu;
- if (menu)
- e_menu_show_at_mouse(menu, dx, dy, CurrentTime);
- }
- }
-
- D_RETURN;
- UN(_e);
- UN(_o);
-}
diff --git a/src/desktops.h b/src/desktops.h
deleted file mode 100644
index 327440e1d..000000000
--- a/src/desktops.h
+++ /dev/null
@@ -1,110 +0,0 @@
-#ifndef E_DESKTOPS_H
-#define E_DESKTOPS_H
-
-#include "e.h"
-#include "border.h"
-#include "object.h"
-
-#ifndef E_DESKTOPS_TYPEDEF
-#define E_DESKTOPS_TYPEDEF
-typedef struct _E_Desktop E_Desktop;
-#endif
-
-#include "view_layout.h"
-
-#ifndef E_DESKTOPS_ADAPTOR_TYPEDEF
-#define E_DESKTOPS_ADAPTOR_TYPEDEF
-typedef struct _E_Desktop_Adaptor E_Desktop_Adaptor;
-#endif
-
-struct _E_Desktop
-{
- E_Observee obs;
-
- char *name;
- char *dir;
-/* struct
- {
- Window main;
- }
- win; */
- int x, y;
- struct
- {
- int w, h;
- }
- real , virt;
- Evas_List * windows;
- struct
- {
- int desk;
- struct
- {
- int x, y;
- }
- area;
- }
- desk;
- E_Desktop_Adaptor *adaptor;
- Evas *evas;
- E_View_Layout *layout;
- E_View_Look *look;
- E_Background bg;
- E_Iconbar *iconbar;
-/* int changed; */
-};
-
-struct _E_Desktop_Adaptor
-{
- E_Observer obsvr;
- E_Desktop *desktop;
-};
-
-/**
- * e_desktops_init - Initializes desktop handling.
- *
- * This function creates the necessary windows for desktop handling,
- * and makes sure they're visible and lowered. It does not handle
- * the loading of background graphics information. It also makes
- * sure E rregisters itself as being compatible to GNOME, KDE etc.
- */
-void e_desktops_init(void);
-
-void e_desktops_scroll(E_Desktop * desk, int dx, int dy);
-void e_desktops_free(E_Desktop * desk);
-
-E_Desktop *e_desktops_new(int i);
-void e_desktops_add_border(E_Desktop * d, E_Border * b);
-void e_desktops_add_sticky(E_Border *b);
-void e_desktops_rm_sticky(E_Border *b);
-void e_desktops_del_border(E_Desktop * d, E_Border * b);
-void e_desktops_delete(E_Desktop * d);
-void e_desktops_show(E_Desktop * d);
-void e_desktops_hide(E_Desktop * d);
-
-/**
- * e_desktops_get_num - Returns number of desktops.
- */
-int e_desktops_get_num(void);
-
-/**
- * e_desktops_get - Returns nth desktop
- * @d: The number of the desktop to get
- *
- * The desktops are stored in a linked list. This function
- * returns the nth of those desktops, NULL if no desktop
- * was found at that index.
- */
-E_Desktop *e_desktops_get(int d);
-
-int e_desktops_get_current(void);
-void e_desktops_goto_desk(int d);
-void e_desktops_goto(int d, int ax, int ay);
-Evas_List *e_desktops_get_desktops_list();
-void e_desktop_bg_reload(E_Desktop * d);
-void e_desktop_ib_reload(E_Desktop * d);
-void e_desktop_update(E_Desktop *d);
-E_Border *e_desktop_raise_next_border(void);
-Window e_desktop_window();
-
-#endif
diff --git a/src/e.h b/src/e.h
deleted file mode 100644
index b04a4f51e..000000000
--- a/src/e.h
+++ /dev/null
@@ -1,104 +0,0 @@
-#ifndef ENLIGHTENMENT_H
-#define ENLIGHTENMENT_H
-
-#include "../config.h"
-#include <X11/Xlib.h>
-#include <stdio.h>
-#include <stdlib.h>
-#include <unistd.h>
-#include <string.h>
-#include <math.h>
-#include <limits.h>
-#include <sys/stat.h>
-#include <sys/types.h>
-#include <sys/ipc.h>
-#include <sys/msg.h>
-#include <dirent.h>
-#include <errno.h>
-#include <signal.h>
-#include <fnmatch.h>
-#ifdef WITH_DMALLOC
-#include <dmalloc.h>
-#endif
-#include <Imlib2.h>
-#include <Evas.h>
-#include <Evas_Engine_Software_X11.h>
-#include <Ebits.h>
-#include <Ecore.h>
-#include <Edb.h>
-#include <Ebg.h>
-
-#ifndef PATH_MAX
-#define PATH_MAX 4096
-#endif
-
-#if 0
-#include <execinfo.h>
-#define BT \
-{ \
-void *__BT_array[250]; \
-int __BT_n = backtrace(__BT_array,250); \
-backtrace_symbols_fd(__BT_array, __BT_n, fileno(stdout)); \
-}
-#endif
-
-/* macros for allowing sections of code to be runtime profiled */
-#define E_PROF 1
-#ifdef E_PROF
-extern Evas_List * __e_profiles;
-
-typedef struct _e_prof
-{
- char *func;
- double total;
- double t1, t2;
-}
-E_Prof;
-
-#define E_PROF_START(_prof_func) \
-{ \
-E_Prof __p, *__pp; \
-Evas_List * __pl; \
-__p.func = _prof_func; \
-__p.total = 0.0; \
-__p.t1 = ecore_get_time(); \
-__p.t2 = 0.0;
-
-#define E_PROF_STOP \
-__p.t2 = ecore_get_time(); \
-for (__pl = __e_profiles; __pl; __pl = __pl->next) \
-{ \
-__pp = __pl->data; \
-if (!strcmp(__p.func, __pp->func)) \
-{ \
-__pp->total += (__p.t2 - __p.t1); \
-break; \
-} \
-} \
-if (!__pl) \
-{ \
-__pp = NEW(E_Prof, 1); \
-__pp->func = __p.func; \
-__pp->total = __p.t2 - __p.t1; \
-__pp->t1 = 0.0; \
-__pp->t2 = 0.0; \
-__e_profiles = evas_list_append(__e_profiles, __pp); \
-} \
-}
-#define E_PROF_DUMP \
-{ \
-Evas_List * __pl; \
-for (__pl = __e_profiles; __pl; __pl = __pl->next) \
-{ \
-E_Prof *__p; \
-__p = __pl->data; \
-printf("%3.3f : %s()\n", __p->total, __p->func); \
-} \
-}
-#else
-#define E_PROF_START(_prof_func)
-#define E_PROF_STOP
-#define E_PROF_DUMP
-#endif
-
-#endif
diff --git a/src/e_dir.c b/src/e_dir.c
deleted file mode 100644
index fad3c5c9a..000000000
--- a/src/e_dir.c
+++ /dev/null
@@ -1,545 +0,0 @@
-#include "file.h"
-#include "desktops.h"
-#include "e_dir.h"
-#include "e_view_machine.h"
-#include "view.h"
-#include "icons.h"
-#include "util.h"
-#include "libefsd.h"
-#include "e_file.h"
-#include "globals.h"
-
-static void e_dir_handle_fs_restart(void *data);
-static void e_dir_handle_fs(EfsdEvent * ev);
-static void e_dir_handle_efsd_event_reply(EfsdEvent * ev);
-static void e_dir_handle_efsd_event_reply_stat(EfsdEvent * ev);
-static void e_dir_handle_efsd_event_reply_readlink(EfsdEvent * ev);
-static void e_dir_handle_efsd_event_reply_getfiletype(EfsdEvent * ev);
-static void e_dir_handle_efsd_event_reply_getmeta(EfsdEvent * ev);
-
-static void e_dir_cleanup(E_Dir * d);
-
-void
-e_dir_init(void)
-{
- D_ENTER;
- e_fs_add_event_handler(e_dir_handle_fs);
- D_RETURN;
-}
-
-static void
-e_dir_cleanup(E_Dir * d)
-{
- D_ENTER;
-
- if (!d)
- D_RETURN;
-
- efsd_stop_monitor(e_fs_get_connection(), d->dir, TRUE);
- if (d->restarter)
- e_fs_del_restart_handler(d->restarter);
-
- d->restarter = NULL;
- e_view_machine_unregister_dir(d);
-
- e_object_cleanup(E_OBJECT(d));
-
- D_RETURN;
-}
-
-E_Dir *
-e_dir_new(void)
-{
- E_Dir *d;
-
- D_ENTER;
-
- d = NEW(E_Dir, 1);
- ZERO(d, E_Dir, 1);
- d->dir = NULL;
-
- e_observee_init(E_OBSERVEE(d),
- (E_Cleanup_Func) e_dir_cleanup);
-
- e_view_machine_register_dir(d);
- D_RETURN_(d);
-}
-
-static void
-e_dir_handle_fs_restart(void *data) {
- E_Dir *d;
-
- D_ENTER;
-
- D("e_dir_handle_fs_restart\n");
-
- if((d = data)) {
- if(d->dir&&*(d->dir)) {
- if (e_fs_get_connection()) {
- EfsdOptions *ops;
-
- /* FIXME restart with metadata pending for views */
-
- ops = efsd_ops(3,
- efsd_op_get_stat(),
- efsd_op_get_filetype(), efsd_op_list_all());
- if((d->monitor_id=efsd_start_monitor(e_fs_get_connection(), d->dir,
- ops, TRUE))<0) {
- D("could not restart monitor (connx %p) for \"%s\" => %i\n",
- e_fs_get_connection(), d->dir, d->monitor_id); }
- else {
- D("restarted monitor (connx %p) for \"%s\" => ID %i...\n",
- e_fs_get_connection(), d->dir, d->monitor_id); }}
- else {
- D("could not restart, connection refused\n"); }}
- else {
- D("could not restart, no dir given!?\n"); }}
- else {
- D("could not restart, no data\n"); }
-
- D_RETURN; }
-
-void
-e_dir_set_dir(E_Dir * d, char *dir)
-{
- D_ENTER;
-
- if (!d) {
- D("e_dir_set_dir -- no E_Dir!\n");
- D_RETURN; }
-
- /* stop monitoring old dir */
- if ((d->dir) && (d->monitor_id))
- {
- efsd_stop_monitor(e_fs_get_connection(), d->dir, TRUE);
- d->monitor_id = 0;
- }
- IF_FREE(d->dir);
-
- if(!dir||!*dir) {
- D("e_dir_set_dir -- no dir!\n");
- D_RETURN; }
-
- d->dir = e_file_realpath(dir);
-
- if(!d->dir||!*(d->dir)) {
- /* realpath failed. this would mean that we tried to set a monitor
- on a non-existent (or inacessible) file. this may mean that the
- programmer really meant "...and if it doesn't exist YET, tell me
- if and when it is created", so rather than failing right here and
- now, we'll forget about the realpath, stick in the path they
- requested in the first place, and hope the backend actually supports
- watching something it cannot determine an inode for... we'll still
- throw a warning though, just for good measure. Azundris 2003/01/11 */
- D("e_dir_set_dir -- e_file_realpath(\"%s\") failed...\n",dir);
- if(d->dir)
- free(d->dir);
- if(!(d->dir=strdup(dir))) {
- D("e_dir_set_dir: OOM\n");
- D_RETURN; }}
-
- /* start monitoring new dir */
- d->restarter = e_fs_add_restart_handler(e_dir_handle_fs_restart, d);
- if (e_fs_get_connection())
- {
- EfsdOptions *ops;
-
- ops = efsd_ops(3,
- efsd_op_get_stat(),
- efsd_op_get_filetype(), efsd_op_list_all());
- d->monitor_id = efsd_start_monitor(e_fs_get_connection(), d->dir,
- ops, TRUE);
- D("monitor id for \"%s\" = %i\n", d->dir, d->monitor_id);
- }
- D_RETURN;
-}
-
-static void
-e_dir_handle_fs(EfsdEvent * ev)
-{
- D_ENTER;
-
- if (!ev)
- D_RETURN;
-
- switch (ev->type)
- {
- case EFSD_EVENT_FILECHANGE:
- switch (ev->efsd_filechange_event.changetype)
- {
- case EFSD_FILE_CREATED:
- e_dir_file_added(ev->efsd_filechange_event.id,
- ev->efsd_filechange_event.file);
- break;
- case EFSD_FILE_EXISTS:
- e_dir_file_added(ev->efsd_filechange_event.id,
- ev->efsd_filechange_event.file);
- break;
- case EFSD_FILE_DELETED:
- e_dir_file_deleted(ev->efsd_filechange_event.id,
- ev->efsd_filechange_event.file);
- break;
- case EFSD_FILE_CHANGED:
- e_dir_file_changed(ev->efsd_filechange_event.id,
- ev->efsd_filechange_event.file);
- break;
- case EFSD_FILE_MOVED:
- e_dir_file_moved(ev->efsd_filechange_event.id,
- ev->efsd_filechange_event.file);
- break;
- case EFSD_FILE_END_EXISTS:
- break;
- default:
- break;
- }
- break;
- case EFSD_EVENT_REPLY:
- e_dir_handle_efsd_event_reply(ev);
- break;
- default:
- break;
- }
- D_RETURN;
-}
-
-static void
-e_dir_handle_efsd_event_reply_getfiletype(EfsdEvent * ev)
-{
- E_File *f;
- char *file = NULL;
- E_Dir *dir;
-
- char *m, *p;
- char mime[PATH_MAX], base[PATH_MAX];
-
- D_ENTER;
-
- if (!ev)
- D_RETURN;
-
- if (!ev->efsd_reply_event.errorcode == 0)
- D_RETURN;
-
- if ((file = efsd_event_filename(ev)))
- {
- file = e_file_get_file(file);
- }
- dir = e_dir_find_by_monitor_id(efsd_event_id(ev));
- f = e_file_get_by_name(dir->files, file);
-
- /* if its not in the list we care about, its filetype is meaningless */
- if (!f)
- D_RETURN;
-
- m = ev->efsd_reply_event.data;
- p = strchr(m, '/');
- if (p)
- {
- STRNCPY(base, m, PATH_MAX);
- STRNCPY(mime, p + 1, PATH_MAX);
- p = strchr(base, '/');
- *p = 0;
- }
- else
- {
- STRNCPY(base, m, PATH_MAX);
- strcpy(mime, "unknown");
- }
- e_file_set_mime(f, base, mime);
- /* Try to update the GUI.
- * It's just a try because we need to have the file's stat
- * info as well. --cK.
- */
- e_observee_notify_observers(E_OBSERVEE(dir), E_EVENT_FILE_INFO, f);
- D_RETURN;
-}
-
-static void
-e_dir_handle_efsd_event_reply_stat(EfsdEvent * ev)
-{
- E_Dir *d;
- E_File *f;
-
- D_ENTER;
-
- if (!ev)
- D_RETURN;
-
- if (!ev->efsd_reply_event.errorcode == 0)
- D_RETURN;
-
- d = e_dir_find_by_monitor_id(efsd_event_id(ev));
- f = e_file_get_by_name(d->files, e_file_get_file(efsd_event_filename(ev)));
- /* if its not in the list we care about, return */
- if (!f)
- D_RETURN;
-
- /* When everything went okay and we can find a dir,
- * set the file stat data for the file and try to update the gui.
- * It's just a try because we need to have received the filetype
- * info too. --cK. */
- f->stat = *((struct stat *)efsd_event_data(ev));
- e_observee_notify_observers(E_OBSERVEE(d), E_EVENT_FILE_INFO, f);
-
- D_RETURN;
-}
-
-static void
-e_dir_handle_efsd_event_reply_readlink(EfsdEvent * ev)
-{
- E_Dir *d;
- E_File *f;
-
- D_ENTER;
-
- if (!ev)
- D_RETURN;
-
- if (!ev->efsd_reply_event.errorcode == 0)
- D_RETURN;
-
- d = e_dir_find_by_monitor_id(efsd_event_id(ev));
- f = e_file_get_by_name(d->files, e_file_get_file(efsd_event_filename(ev)));
- if (f)
- {
- e_file_set_link(f, (char *)efsd_event_data(ev));
- }
- e_observee_notify_observers(E_OBSERVEE(d), E_EVENT_FILE_INFO, f);
-
- D_RETURN;
-}
-
-static void
-e_dir_handle_efsd_event_reply_getmeta(EfsdEvent * ev)
-{
- Evas_List * l;
- EfsdCmdId cmd;
-
- D_ENTER;
-
- if (!ev)
- D_RETURN;
-
- cmd = efsd_event_id(ev);
- for (l = VM->views; l; l = l->next)
- {
- E_View *v;
-
- v = l->data;
- /* ignore metadata for desktops */
- if (v->is_desktop)
- continue;
- if (v->geom_get.x == cmd)
- {
- v->geom_get.x = 0;
- if (efsd_metadata_get_type(ev) == EFSD_INT)
- {
- if (ev->efsd_reply_event.errorcode == 0)
- efsd_metadata_get_int(ev, &(v->location.x));
- else
- v->location.x = 0;
- }
- }
- else if (v->geom_get.y == cmd)
- {
- v->geom_get.y = 0;
- if (efsd_metadata_get_type(ev) == EFSD_INT)
- {
- if (ev->efsd_reply_event.errorcode == 0)
- efsd_metadata_get_int(ev, &(v->location.y));
- else
- v->location.y = 0;
-
- }
- }
- else if (v->geom_get.w == cmd)
- {
- v->geom_get.w = 0;
- if (efsd_metadata_get_type(ev) == EFSD_INT)
- {
- if (ev->efsd_reply_event.errorcode == 0)
- efsd_metadata_get_int(ev, &(v->size.w));
- else
- v->size.w = 400;
- }
- }
- else if (v->geom_get.h == cmd)
- {
- v->geom_get.h = 0;
- if (ev->efsd_reply_event.errorcode == 0)
- {
- if (ev->efsd_reply_event.errorcode == 0)
- efsd_metadata_get_int(ev, &(v->size.h));
- else
- v->size.h = 401;
- }
- }
- /* We have received all metadata we need, display the view */
- if ((!v->geom_get.x) &&
- (!v->geom_get.y) &&
- (!v->geom_get.w) && (!v->geom_get.h) && (v->geom_get.busy))
- {
- E_Border *b;
-
- ecore_window_move_resize(v->win.base, v->location.x, v->location.y,
- v->size.w, v->size.h);
- ecore_window_set_xy_hints(v->win.base, v->location.x,
- v->location.y);
- v->size.force = 1;
- v->geom_get.busy = 0;
- if (v->bg)
- e_bg_resize(v->bg, v->size.w, v->size.h);
- if (v->options.back_pixmap)
- e_view_update(v);
- b = e_border_adopt(v->win.base, 1);
- b->client.internal = 1;
- e_border_remove_click_grab(b);
- }
- }
- D_RETURN;
-}
-
-static void
-e_dir_handle_efsd_event_reply(EfsdEvent * ev)
-{
- D_ENTER;
-
- if (!ev)
- D_RETURN;
-
- switch (ev->efsd_reply_event.command.type)
- {
- case EFSD_CMD_REMOVE:
- break;
- case EFSD_CMD_MOVE:
- break;
- case EFSD_CMD_SYMLINK:
- break;
- case EFSD_CMD_LISTDIR:
- break;
- case EFSD_CMD_MAKEDIR:
- break;
- case EFSD_CMD_CHMOD:
- break;
- case EFSD_CMD_GETFILETYPE:
- e_dir_handle_efsd_event_reply_getfiletype(ev);
- break;
- case EFSD_CMD_STAT:
- e_dir_handle_efsd_event_reply_stat(ev);
- break;
- case EFSD_CMD_READLINK:
- e_dir_handle_efsd_event_reply_readlink(ev);
- break;
- case EFSD_CMD_CLOSE:
- break;
- case EFSD_CMD_SETMETA:
- break;
- case EFSD_CMD_GETMETA:
- e_dir_handle_efsd_event_reply_getmeta(ev);
- break;
- case EFSD_CMD_STARTMON_DIR:
- break;
- case EFSD_CMD_STARTMON_FILE:
- break;
- case EFSD_CMD_STOPMON_DIR:
- break;
- case EFSD_CMD_STOPMON_FILE:
- break;
- default:
- break;
- }
- D_RETURN;
-}
-
-void
-e_dir_file_added(int id, char *file)
-{
- E_Dir *d;
- E_File *f;
-
- D_ENTER;
-
- /* if we get a path - ignore it - its not a file in the dir */
- if (!file || file[0] == '/')
- D_RETURN;
- d = e_dir_find_by_monitor_id(id);
- if (file[0] != '.')
- {
- f = e_file_new(file);
- d->files = evas_list_append(d->files, f);
- /* tell all views for this dir about the new file */
- e_observee_notify_observers(E_OBSERVEE(d), E_EVENT_FILE_ADD, f);
- }
- D_RETURN;
-}
-
-void
-e_dir_file_deleted(int id, char *file)
-{
- E_File *f;
- E_Dir *d;
-
- D_ENTER;
-
- if (!file || file[0] == '/')
- D_RETURN;
-
- d = e_dir_find_by_monitor_id(id);
- f = e_file_get_by_name(d->files, file);
- d->files = evas_list_remove(d->files, f);
-
- if (file[0] != '.')
- {
- e_observee_notify_observers(E_OBSERVEE(d), E_EVENT_FILE_DELETE, f);
- }
- D_RETURN;
-}
-
-void
-e_dir_file_changed(int id, char *file)
-{
- E_Dir *d;
- E_File *f;
-
- D_ENTER;
-
- if (!file || file[0] == '/')
- D_RETURN;
- d = e_dir_find_by_monitor_id(id);
- f = e_file_get_by_name(d->files, file);
- if (file[0] != '.')
- {
- e_observee_notify_observers(E_OBSERVEE(d), E_EVENT_FILE_CHANGE, f);
- }
- D_RETURN;
-}
-
-void
-e_dir_file_moved(int id, char *file)
-{
- E_Dir *d;
-
- D_ENTER;
-
- if (!file || file[0] == '/')
- D_RETURN;
- d = e_dir_find_by_monitor_id(id);
- D_RETURN;
-}
-
-E_Dir *
-e_dir_find_by_monitor_id(int id)
-{
- E_Dir *d;
- Evas_List * l;
-
- D_ENTER;
-
- for (l = VM->dirs; l; l = l->next)
- {
- d = l->data;
- if (d->monitor_id == id)
- D_RETURN_(d);
- }
- D_RETURN_(NULL);
-}
diff --git a/src/e_dir.h b/src/e_dir.h
deleted file mode 100644
index d2c34053f..000000000
--- a/src/e_dir.h
+++ /dev/null
@@ -1,67 +0,0 @@
-#ifndef E_DIR_H
-#define E_DIR_H
-
-#include "fs.h"
-#include "iconbar.h"
-#include "observer.h"
-#include <Evas.h>
-
-#ifndef E_VIEW_TYPEDEF
-#define E_VIEW_TYPEDEF
-typedef struct _E_View E_View;
-#endif
-
-#ifndef E_ICON_TYPEDEF
-#define E_ICON_TYPEDEF
-typedef struct _E_Icon E_Icon;
-#endif
-
-#ifndef E_DIR_TYPEDEF
-#define E_DIR_TYPEDEF
-typedef struct _E_Dir E_Dir;
-#endif
-
-struct _E_Dir
-{
- E_Observee o;
-
- /* The realpath of the view's directory */
- char *dir;
-
- Evas_List * files;
-
-/*
- * Evas_Object obj_bg;
- *
- * char *bg_file;
- */
-
- E_FS_Restarter *restarter;
-
- int monitor_id;
-
- // int is_desktop;
-};
-
-/**
- * e_dir_set_dir - Assigns a directory to a view E_Dir
- * @ed: The view E_Dir to set the dir for
- * @dir: The directory
- *
- * Set the directory for a dir and starts monitoring it via efsd.
- */
-void e_dir_set_dir(E_Dir * ed, char *dir);
-
-E_Dir *e_dir_new(void);
-void e_dir_init(void);
-void e_dir_register_view(E_Dir * d, E_View * v);
-void e_dir_unregister_view(E_View * v);
-
-E_Dir *e_dir_find_by_monitor_id(int id);
-
-/* Deal with incoming file events */
-void e_dir_file_added(int id, char *file);
-void e_dir_file_deleted(int id, char *file);
-void e_dir_file_changed(int id, char *file);
-void e_dir_file_moved(int id, char *file);
-#endif
diff --git a/src/e_file.c b/src/e_file.c
deleted file mode 100644
index e2154099e..000000000
--- a/src/e_file.c
+++ /dev/null
@@ -1,161 +0,0 @@
-#include "debug.h"
-#include "e_file.h"
-#include "file.h"
-#include "util.h"
-
-static void e_file_cleanup(E_File * f);
-
-static void
-e_file_cleanup(E_File * f)
-{
- D_ENTER;
-
- IF_FREE(f->info.icon);
- IF_FREE(f->info.link);
- IF_FREE(f->info.custom_icon);
- IF_FREE(f->info.mime.base);
- IF_FREE(f->info.mime.type);
- IF_FREE(f->file);
- e_object_cleanup(E_OBJECT(f));
-
- D_RETURN;
-}
-
-E_File *
-e_file_new(char *file)
-{
- E_File *f;
-
- D_ENTER;
-
- if (!file || *file == 0)
- D_RETURN_(NULL);
-
- f = NEW(E_File, 1);
-
- e_object_init(E_OBJECT(f), (E_Cleanup_Func) e_file_cleanup);
-
- f->info.icon = NULL;
- f->info.link = NULL;
- f->info.custom_icon = NULL;
- f->info.mime.base = NULL;
- f->info.mime.type = NULL;
- f->file = strdup(file);
-
- D_RETURN_(f);
-}
-
-E_File *
-e_file_get_by_name(Evas_List * l, char *file)
-{
- Evas_List * ll;
- E_File *f;
-
- D_ENTER;
-
- if (!l || !file || *file == 0)
- D_RETURN_(NULL);
-
- for (ll = l; ll; ll = ll->next)
- {
- f = (E_File *) ll->data;
-
- if (!strcmp(file, f->file))
- {
- D_RETURN_(f);
- }
- }
-
- D_RETURN_(NULL);
-}
-
-void
-e_file_set_mime(E_File * f, char *base, char *mime)
-{
- char icon[PATH_MAX];
- char type[PATH_MAX];
- char *p;
-
- D_ENTER;
-
- if (!f || !base || !mime)
- D_RETURN;
-
- D("Setting mime: %40s: %s/%s\n", f->file, base, mime);
-
- if (((f->info.mime.base) && !(strcmp(f->info.mime.base, base)))
- && ((f->info.mime.type) && !(strcmp(f->info.mime.type, mime))))
- D_RETURN;
-
- IF_FREE(f->info.mime.base);
- IF_FREE(f->info.mime.type);
-
- f->info.mime.base = strdup(base);
- f->info.mime.type = strdup(mime);
-
- /* effect changes here */
-/*
- * if (f->info.custom_icon)
- * {
- * if (f->info.icon)
- * FREE(f->info.icon);
- * f->info.icon = strdup(f->info.custom_icon);
- * evas_set_image_file(f->view->evas, f->obj.icon, f->info.custom_icon);
- * e_view_queue_resort(f->view);
- * D_RETURN;
- * }
- */
-
- /* find an icon */
- STRNCPY(type, f->info.mime.type, PATH_MAX);
- p = type;
- do
- {
- snprintf(icon, PATH_MAX, "%s/data/icons/%s/%s.db",
- PACKAGE_DATA_DIR, f->info.mime.base, type);
- p = strrchr(type, '/');
- if (p)
- *p = 0;
- }
- while (p && !e_file_exists(icon));
-
- /* fallback to base type icon */
- if (!e_file_exists(icon))
- snprintf(icon, PATH_MAX, "%s/data/icons/%s/default.db",
- PACKAGE_DATA_DIR, f->info.mime.base);
- /* still no luck fall back to default */
- if (!e_file_exists(icon))
- snprintf(icon, PATH_MAX, "%s/data/icons/unknown/default.db",
- PACKAGE_DATA_DIR);
-
- f->info.icon = strdup(icon);
-
- D_RETURN;
-}
-
-void
-e_file_set_link(E_File * f, char *link)
-{
- D_ENTER;
-
- if (!f)
- D_RETURN;
-
- if ((!link) && (f->info.link))
- {
- free(f->info.link);
- f->info.link = NULL;
- /* effect changes here */
- }
- else if (link)
- {
- if ((f->info.link) && (!strcmp(f->info.link, link)))
- {
- FREE(f->info.link);
- f->info.link = strdup(link);
- /* effect changes here */
- }
- }
-
- D_RETURN;
-}
diff --git a/src/e_file.h b/src/e_file.h
deleted file mode 100644
index 2c0af2463..000000000
--- a/src/e_file.h
+++ /dev/null
@@ -1,34 +0,0 @@
-#ifndef E_EFILE_H
-#define E_EFILE_H
-#include "object.h"
-#include <sys/stat.h>
-
-typedef struct _E_File E_File;
-struct _E_File
-{
- E_Object o;
-
- char *file;
- struct stat stat;
-
- struct
- {
- char *icon;
- char *custom_icon;
- char *link;
- struct
- {
- char *base;
- char *type;
- }
- mime;
- }
- info;
-};
-
-E_File *e_file_new(char *file);
-E_File *e_file_get_by_name(Evas_List * l, char *file);
-void e_file_set_mime(E_File * f, char *base, char *mime);
-void e_file_set_link(E_File * f, char *link);
-
-#endif
diff --git a/src/e_view_look.c b/src/e_view_look.c
deleted file mode 100644
index 56ea6ab75..000000000
--- a/src/e_view_look.c
+++ /dev/null
@@ -1,180 +0,0 @@
-#include "util.h"
-#include "desktops.h"
-#include "e_view_look.h"
-#include "view.h"
-#include "observer.h"
-#include "e_file.h"
-#include "e_dir.h"
-#include "view_layout.h"
-#include "e_view_machine.h"
-
-static void e_view_look_file_delete(E_View_Look *l, E_File *f);
-static void e_view_look_file_change(E_View_Look *l, E_File *f);
-static void e_view_look_cleanup(E_View_Look *l);
-static void e_view_look_objects_cleanup(E_View_Look_Objects *o);
-static void e_view_look_event_handler(E_Observer *obs, E_Observee *o, E_Event_Type event, void *data);
-
-
-E_View_Look *
-e_view_look_new(void)
-{
- E_View_Look *l;
- D_ENTER;
-
- l = NEW(E_View_Look, 1);
- ZERO(l, E_View_Look, 1);
- e_observer_init(E_OBSERVER(l),
- E_EVENT_FILE_ADD | E_EVENT_FILE_DELETE |
- E_EVENT_FILE_CHANGE,
- (E_Notify_Func) e_view_look_event_handler,
- (E_Cleanup_Func) e_view_look_cleanup);
-
- l->obj = NEW(E_View_Look_Objects, 1);
- ZERO(l->obj, E_View_Look_Objects, 1);
-
- l->obj->bg = NULL;
- l->obj->icb = NULL;
- l->obj->icb_bits = NULL;
- l->obj->layout = NULL;
- e_observee_init(E_OBSERVEE(l->obj), (E_Cleanup_Func) e_view_look_objects_cleanup);
-
- e_view_machine_register_look(l);
-
- D_RETURN_(l);
-}
-
-static void
-e_view_look_cleanup(E_View_Look *l)
-{
- D_ENTER;
- e_view_machine_unregister_look(l);
- e_object_unref(E_OBJECT(l->obj));
- e_observer_cleanup(E_OBSERVER(l));
- D_RETURN;
-}
-
-static void
-e_view_look_objects_cleanup(E_View_Look_Objects *l)
-{
- D_ENTER;
- IF_FREE(l->bg);
- IF_FREE(l->icb);
- IF_FREE(l->icb_bits);
- IF_FREE(l->layout);
- e_observee_cleanup(E_OBSERVEE(l));
- D_RETURN;
-}
-
-static void
-e_view_look_event_handler(E_Observer *obs, E_Observee *o, E_Event_Type event, void *data)
-{
- E_View_Look *l = (E_View_Look *) obs;
- E_File *f = (E_File *) data;
- D_ENTER;
-
- if (event & E_EVENT_FILE_CHANGE || event & E_EVENT_FILE_ADD)
- e_view_look_file_change(l, f);
- else if (event & E_EVENT_FILE_DELETE)
- e_view_look_file_delete(l, f);
-
- D_RETURN;
- UN(o);
-}
-
-
-void
-e_view_look_set_dir(E_View_Look *l, char *dir)
-{
- E_Dir *d = NULL;
- D_ENTER;
-
- if (!(d = e_view_machine_dir_lookup(dir)))
- {
- D("Model for this dir doesn't exist, make a new one\n");
- d = e_dir_new();
- e_dir_set_dir(d, dir);
- }
- else
- e_object_ref(E_OBJECT(d));
-
- if (d)
- {
- l->dir = d;
- e_observer_register_observee(E_OBSERVER(l), E_OBSERVEE(l->dir));
- }
- else
- {
- D("Couldnt set dir for E_View_Look! Bad!\n");
- }
- D_RETURN;
-}
-
-
-/* React to file event */
-
-static void
-e_view_look_file_change(E_View_Look *l, E_File *f)
-{
- char buf[PATH_MAX];
- D_ENTER;
- snprintf(buf, PATH_MAX, "%s/%s", l->dir->dir, f->file);
- if (!strncmp(f->file, "background.db", PATH_MAX))
- {
- IF_FREE(l->obj->bg);
- l->obj->bg = strdup(buf);
- e_observee_notify_observers(E_OBSERVEE(l->obj), E_EVENT_BG_CHANGED, f);
- }
- else if (!strncmp(f->file, "iconbar.db", PATH_MAX))
- {
- IF_FREE(l->obj->icb);
- l->obj->icb = strdup(buf);
- e_observee_notify_observers(E_OBSERVEE(l->obj), E_EVENT_ICB_CHANGED, f);
- }
- else if (!strncmp(f->file, "iconbar.bits.db", PATH_MAX))
- {
- IF_FREE(l->obj->icb_bits);
- l->obj->icb_bits = strdup(buf);
- e_observee_notify_observers(E_OBSERVEE(l->obj), E_EVENT_ICB_CHANGED, f);
- }
- else if (!strncmp(f->file, "layout.db", PATH_MAX))
- {
- IF_FREE(l->obj->layout);
- l->obj->layout = strdup(buf);
- e_observee_notify_observers(E_OBSERVEE(l->obj), E_EVENT_LAYOUT_CHANGED, f);
- }
- D_RETURN;
-}
-
-static void
-e_view_look_file_delete(E_View_Look *l, E_File *f)
-{
- D_ENTER;
-
- if (!strcmp(f->file, "background.db"))
- {
- IF_FREE(l->obj->bg);
- l->obj->bg = NULL;
- e_observee_notify_observers(E_OBSERVEE(l->obj), E_EVENT_BG_CHANGED, f);
- }
- else if ( !strcmp(f->file, "iconbar.db"))
- {
- IF_FREE(l->obj->icb);
- l->obj->icb = NULL;
- e_observee_notify_observers(E_OBSERVEE(l->obj), E_EVENT_ICB_CHANGED, f);
- }
-
- else if (!strcmp(f->file, "iconbar.bits.db"))
- {
- IF_FREE(l->obj->icb_bits);
- l->obj->icb_bits = NULL;
- e_observee_notify_observers(E_OBSERVEE(l->obj), E_EVENT_ICB_CHANGED, f);
- }
- else if (!strcmp(f->file, "layout.db"))
- {
- IF_FREE(l->obj->layout);
- l->obj->layout = NULL;
- e_observee_notify_observers(E_OBSERVEE(l->obj), E_EVENT_LAYOUT_CHANGED, f);
- }
-
- D_RETURN;
-}
diff --git a/src/e_view_look.h b/src/e_view_look.h
deleted file mode 100644
index aa4cf2da8..000000000
--- a/src/e_view_look.h
+++ /dev/null
@@ -1,50 +0,0 @@
-#ifndef E_VIEW_LOOK_H
-#define E_VIEW_LOOK_H
-#include "observer.h"
-#include "view_layout.h"
-#include "e_dir.h"
-#include <Evas.h>
-
-#ifndef E_VIEW_LOOK_TYPEDEF
-#define E_VIEW_LOOK_TYPEDEF
-typedef struct _E_View_Look E_View_Look;
-typedef struct _E_View_Look_Objects E_View_Look_Objects;
-#endif
-
-
-#ifndef E_DIR_TYPEDEF
-#define E_DIR_TYPEDEF
-typedef struct _E_Dir E_Dir;
-#endif
-#ifndef E_VIEW_LAYOUT_TYPEDEF
-#define E_VIEW_LAYOUT_TYPEDEF
-typedef struct _E_View_Layout E_View_Layout;
-typedef struct _E_View_Layout_Element E_View_Layout_Element;
-#endif
-
-struct _E_View_Look
-{
- E_Observer o;
-
- E_View_Look_Objects *obj;
-
- /* The .e_layout dir to monitor */
- E_Dir *dir;
-};
-
-struct _E_View_Look_Objects
-{
- E_Observee o;
-
- /* FIXME keep the bits/objects themselves here */
-
- char *bg;
- char *icb;
- char *icb_bits;
- char *layout;
-};
-
-E_View_Look *e_view_look_new(void);
-void e_view_look_set_dir(E_View_Look *l, char *dir);
-
-#endif
diff --git a/src/e_view_machine.c b/src/e_view_machine.c
deleted file mode 100644
index 16af98743..000000000
--- a/src/e_view_machine.c
+++ /dev/null
@@ -1,182 +0,0 @@
-#include <Ecore.h>
-#include "e_view_machine.h"
-#include "e_dir.h"
-#include "e_view_look.h"
-#include "util.h"
-#include "globals.h"
-#include "file.h"
-
-void
-e_view_machine_init()
-{
- D_ENTER;
-
- if (VM == NULL)
- {
- VM = NEW(E_Dir, 1);
- VM->views = NULL;
- VM->dirs = NULL;
- VM->looks = NULL;
- e_view_init();
- e_dir_init();
- }
-
- D_RETURN;
-}
-
-void
-e_view_machine_register_dir(E_Dir * d)
-{
- D_ENTER;
- VM->dirs = evas_list_append(VM->dirs, d);
- D_RETURN;
-}
-
-void
-e_view_machine_unregister_dir(E_Dir * d)
-{
- D_ENTER;
- VM->dirs = evas_list_remove(VM->dirs, d);
- D_RETURN;
-}
-
-void
-e_view_machine_register_view(E_View * v)
-{
- D_ENTER;
- VM->views = evas_list_append(VM->views, v);
- D_RETURN;
-}
-
-void
-e_view_machine_unregister_view(E_View * v)
-{
- D_ENTER;
- VM->views = evas_list_remove(VM->views, v);
- D_RETURN;
-}
-
-void
-e_view_machine_register_look(E_View_Look * l)
-{
- D_ENTER;
- VM->looks = evas_list_append(VM->looks, l);
- D_RETURN;
-}
-
-void
-e_view_machine_unregister_look(E_View_Look * l)
-{
- D_ENTER;
- VM->looks = evas_list_remove(VM->looks, l);
- D_RETURN;
-}
-
-void
-e_view_machine_close_all_views(void)
-{
- Evas_List * l;
-
- D_ENTER;
- /* Copy the list of views and unregister them */
- for (l = VM->views; l; l = l->next)
- {
- E_View *v = l->data;
-
- e_object_unref(E_OBJECT(v->dir));
- }
- D_RETURN;
-}
-
-E_Dir *
-e_view_machine_dir_lookup(char *path)
-{
- E_Dir *d;
- Evas_List * l;
- char *realpath = NULL;
-
- D_ENTER;
-
- if (!path)
- D_RETURN_(NULL);
-
- realpath = e_file_realpath(path);
-
- for (l = VM->dirs; l; l = l->next)
- {
- d = l->data;
- if (!strcmp(d->dir, realpath))
- {
- D("E_Dir for this dir already exists\n");
-
- IF_FREE(realpath);
- D_RETURN_(d);
- }
- }
-
- IF_FREE(realpath);
- D_RETURN_(NULL);
-}
-
-E_View_Look *
-e_view_machine_look_lookup(char *path)
-{
- E_View_Look *vl;
- Evas_List * l;
- char *realpath = NULL;
-
- D_ENTER;
-
- if (!path)
- D_RETURN_(NULL);
-
- realpath = e_file_realpath(path);
-
- for (l = VM->looks; l; l = l->next)
- {
- vl = l->data;
- if (!strcmp(vl->dir->dir, realpath))
- {
- D("E_Dir for this dir already exists\n");
-
- IF_FREE(realpath);
- D_RETURN_(vl);
- }
- }
-
- IF_FREE(realpath);
- D_RETURN_(NULL);
-}
-
-
-E_View *
-e_view_machine_get_view_by_main_window(Window win)
-{
- Evas_List * l;
-
- D_ENTER;
- for (l = VM->views; l; l = l->next)
- {
- E_View *v = l->data;
-
- if (v && win == v->win.main)
- D_RETURN_(v);