1 /*******************************************************************/
2 /* This is Enlightenment's definition macro file */
3 /* This file determines keyword values and conveience macros for E */
4 /* This file is sourced for every file E has to parse */
5 /*******************************************************************/
6 #ifndef __E16_DEFINITIONS__
7 #define __E16_DEFINITIONS__
9 /* section begin/end stuff */
13 #define __E_CFG_VERSION 1001
21 /* focus mode options */
24 #define __CLICK_TO_FOCUS 2
26 /* move and resize mode */
32 /* for move mode only */
33 #define __TRANSLUCENT 5
34 /* move and resize geometry display modes */
35 #define __NO_GEOMINFO 0
36 #define __CENTER_GEOMINFO 1
37 #define __CORNER_GEOMINFO 2
40 /* positioning and direction */
49 #define __FLAG_TITLE 1
50 #define __FLAG_MINI_ICON 2
51 #define __FLAG_FIXED_HORIZONTAL 4
52 #define __FLAG_FIXED_VERTICAL 8
53 #define __FLAG_FIXED 12
55 /* fill rules for imageclasses */
60 #define __INTEGER_TILE_H 4
61 #define __INTEGER_TILE_V 8
62 #define __INTEGER_TILE 12
64 /* major sections in the config */
74 #define __MATCH_WINDOW 14
75 #define __COLOR_MODIFIER 15
82 #define __MENU_STYLE 699
83 #define __BORDER_PART 505
85 #define __TOOLTIP_TEXT 17
91 #define __ORIENTATION 200
92 #define __JUSTIFICATION 201
93 #define __DRAWING_EFFECT 204
94 #define __FORGROUND_COLOR 205
95 #define __BACKGROUND_COLOR 206
96 #define __FONT_TO_RIGHT 0
97 #define __FONT_TO_DOWN 1
98 #define __FONT_TO_UP 2
99 #define __FONT_TO_LEFT 3
101 #define __EFFECT_NORMAL 0
102 #define __EFFECT_SHADOW 1
103 #define __EFFECT_OUTLINE 2
105 #define __FOCUS_MODE 307
106 #define __MOVE_MODE 311
107 #define __RESIZE_MODE 312
108 #define __GEOMINFO_MODE 1371
109 #define __SLIDE_MODE 313
110 #define __SLIDE_ON_CLEANUP 314
111 #define __SLIDE_ON_MAP 315
112 #define __SPEED_OF_MAPPING_SLIDING 316
113 #define __SPEED_OF_CLEANUP_SLIDING 317
114 #define __TIMEOUT_FOR_DESKTOP_BACKGROUNDS 320
115 #define __RESISTANCE_TO_MOVE_A_BUTTON 321
116 #define __AUTOMATICALLY_SAVE_CONFIG 324
117 #define __DOCK_DIRECTION 325
118 #define __SHADING_SPEED 326
119 #define __TOOLTIPS 327
120 #define __TOOLTIP_TIMEOUT 328
121 #define __START_POSITION_OF_DOCK 330
122 #define __USE_SAVEUNDERS 331
123 #define __MENUS_SLIDE_OUT 332
124 #define __NUMBER_OF_DESKTOPS 333
125 #define __BE_PARANOID_ABOUT_SAVING_MEMORY 334
126 #define __TRANSIENTS_FOLLOW_GROUP_LEADER 335
127 #define __SWITCH_TO_DESKTOP_WHERE_TRANSIENT_MAPS 336
128 #define __SHOW_ICONIFIED_ICONS 337
129 #define __AUTORAISE 338
130 #define __AUTORAISE_TIMEOUT 339
131 #define __ALL_NEW_WINDOWS_GET_FOCUS 340
132 #define __NEW_TRANSIENTS_GET_FOCUS 341
133 #define __NEW_TRANSIENTS_GET_FOCUS_IF_GROUP_IS_FOCUSED 342
134 #define __MANUAL_WINDOW_PLACEMENT 343
135 #define __WARP_POINTER_ON_NEXT_FOCUS 345
136 #define __EDGE_FLIP_RESISTANCE 346
137 #define __SHOW_PAGERS 347
138 #define __PAGER_DISPLAY_HIQ 348
139 #define __PAGER_DISPLAY_SNAPSHOTS 349
140 #define __ANIMATE_WINDOW_SHADING 350
141 #define __MENUS_ONSCREEN 351
142 #define __PREFER_USER_BACKGROUNDS 1350
143 #define __ZOOM_PAGER_WINDOWS 1351
144 #define __SHOW_PAGER_WINDOW_TITLE 1352
145 #define __RAISE_WINDOW_ON_NEXT_FOCUS 1353
146 #define __DISPLAY_WARP 1354
147 #define __WARP_POINTER_AFTER_FOCUS 1355
148 #define __PAGER_SCANSPEED 1356
149 #define __GROUP_BORDER 1358
150 #define __GROUP_KILL 1359
151 #define __GROUP_MOVE 1360
152 #define __GROUP_RAISE 1361
153 #define __GROUP_ICONIFY 1362
154 #define __GROUP_STICK 1363
155 #define __GROUP_SHADE 1364
156 #define __GROUP_MIRROR 1365
157 #define __KDE_SUPPORT 1366
158 #define __CLICKS_ALWAYS_RAISE_WINDOWS 1367
159 #define __ROOT_WINDOW_TOOLTIP 1368
160 #define __PAGER_BUTTONS 1369
162 #define __DIRECTION_OF_DESKTOP_DRAG 400
163 #define __WIDTH_OF_DRAGBAR 401
164 #define __ORDER_OF_BUTTONS_ON_DRAGBAR 402
165 #define __LENGTH_OF_DRAGBAR 403
166 #define __DESKTOPS_SLIDE_IN 404
167 #define __SPEED_OF_DESKTOP_SLIDE 405
168 #define __HIGH_QUALITY_BACKGROUNDS 406
169 #define __DESKTOP_AREA_SIZE 407
172 #define __CLICKED 352
173 #define __HILITED 353
174 #define __NORMAL_ACTIVE 354
175 #define __CLICKED_ACTIVE 355
176 #define __HILITED_ACTIVE 356
177 #define __EDGE_SCALING 357
178 #define __PADDING 358
179 #define __NORMAL_STICKY 359
180 #define __CLICKED_STICKY 360
181 #define __HILITED_STICKY 361
182 #define __NORMAL_ACTIVE_STICKY 362
183 #define __NORMAL_ACTIVE_CLICKED 363
184 #define __NORMAL_ACTIVE_HILITED 364
185 #define __CLICKED_ACTIVE_STICKY 363
186 #define __HILITED_ACTIVE_STICKY 364
187 #define __MODIFIER 370
188 #define __FILLRULE 371
189 #define __TRANSPARENT 372
192 #define __ROTATE_90 1
193 #define __ROTATE_180 2
194 #define __ROTATE_270 3
196 #define __FLIP_HORIZONTAL 4
198 #define __FLIP_VERTICAL 6
202 #define __BEVEL_AMIGA 1
203 #define __BEVEL_MOTIF 2
204 #define __BEVEL_NEXT 3
205 #define __BEVEL_DOUBLE 4
206 #define __BEVEL_WIDEDOUBLE 5
207 #define __BEVEL_THINPOINT 6
208 #define __BEVEL_THICKPOINT 7
210 #define __KEEP_ON_TOP 453
212 #define __IS_A_REGION 455
213 #define __MIN_WIDTH 456
214 #define __MAX_WIDTH 457
215 #define __TOPLEFT_ORIGIN 467
216 #define __TOPLEFT_X_PERCENTAGE 458
217 #define __TOPLEFT_X_ABSOLUTE 459
218 #define __TOPLEFT_Y_PERCENTAGE 460
219 #define __TOPLEFT_Y_ABSOLUTE 461
220 #define __BOTTOMRIGHT_ORIGIN 462
221 #define __BOTTOMRIGHT_X_PERCENTAGE 463
222 #define __BOTTOMRIGHT_X_ABSOLUTE 464
223 #define __BOTTOMRIGHT_Y_PERCENTAGE 465
224 #define __BOTTOMRIGHT_Y_ABSOLUTE 466
225 #define __MIN_HEIGHT 468
226 #define __MAX_HEIGHT 469
227 #define __KEEP_WHEN_SHADED 470
228 #define __BORDER_SIZE_LEFT 501
229 #define __BORDER_SIZE_RIGHT 502
230 #define __BORDER_SIZE_TOP 503
231 #define __BORDER_SIZE_BOTTOM 504
232 #define __SHADE_DIRECTION 506
233 #define __CHANGES_SHAPE 507
234 #define __BORDER_GROUP_NAME 508
236 #define __X_ORIGIN 528
237 #define __Y_ORIGIN 529
238 #define __X_ABSOLUTE 530
239 #define __X_PERCENTAGE 531
240 #define __Y_ABSOLUTE 532
241 #define __Y_PERCENTAGE 533
242 #define __X_SIZE_PERCENTAGE 534
243 #define __Y_SIZE_PERCENTAGE 535
244 #define __X_SIZE_ABSOLUTE 536
245 #define __Y_SIZE_ABSOLUTE 537
246 #define __USE_SIZE_OF_IMAGE 538
247 #define __PUT_ON_DESKTOP 539
248 #define __MAKE_STICKY 540
249 #define __IS_INTERNAL 541
250 #define __SHOW_BY_DEFAULT 542
253 #define __SOLID_COLOR 560
254 #define __BACKGROUND_LAYER 561
255 #define __FORGROUND_LAYER 562
256 #define __USE_ON_DESKTOP 564
257 #define __DESKTOP_ALL -1
259 #define __TYPE_NORMAL 5
260 #define __TYPE_GLOBAL 7
262 /* possible actions that can be performed */
263 #define __A_EXEC exec
267 #define __A_EXIT exit
268 #define __A_ALERT alert
269 #define __A_SHOW_MENU menus show
270 #define __A_HIDE_MENU menus hide
271 #define __A_CLEANUP misc arrange
272 #define __A_ABOUT about
274 #define __A_MOVE wop * mo ptr
275 #define __A_RESIZE wop * sz ptr
276 #define __A_RAISE wop * ra
277 #define __A_LOWER wop * lo
278 #define __A_RESIZE_H wop * sz ptr-h
279 #define __A_RESIZE_V wop * sz ptr-v
280 #define __A_KILL wop * close
281 #define __A_KILL_NASTY wop * kill
282 #define __A_STICK wop * st
283 #define __A_ICONIFY wop * ic
284 #define __A_SHADE wop * sh
285 #define __A_MAX_HEIGHT wop * th
286 #define __A_MAX_WIDTH wop * tw
287 #define __A_MAX_SIZE wop * ts
288 #define __A_SET_LAYER wop * la
289 #define __A_SNAPSHOT remember * all
290 #define __A_ZOOM wop * zoom
291 #define __A_FULLSCREEN wop * fs
292 #define __A_RAISE_LOWER wop * raiselower
293 #define __A_SET_BORDER wop * bo
294 #define __A_MOVE_CONSTRAINED 79
296 #define __A_ICONIFY_NG wop % ic
297 #define __A_KILL_NG wop % close
298 #define __A_MOVE_NG wop % mo ptr
299 #define __A_RAISE_NG wop % ra
300 #define __A_LOWER_NG wop % lo
301 #define __A_STICK_NG wop % st
302 #define __A_SHADE_NG wop % sh
303 #define __A_RAISE_LOWER_NG wop % raiselower
304 #define __A_SET_BORDER_NG wop % bo
306 #define __A_SKIPFOCUS wop * skipfocus
307 #define __A_SKIPTASK wop * skiptask
308 #define __A_SKIPWINLIST wop * skipwinlist
309 #define __A_NEVERFOCUS wop * no_wm_focus
310 #define __A_SKIPLISTS wop * skiplists
311 #define __A_SWAPMOVE wop * swapmove
313 #define __A_SEND_TO_NEXT_DESK wop * desk next
314 #define __A_SEND_TO_PREV_DESK wop * desk prev
315 #define __A_MOVE_WIN_TO_AREA wop * area
316 #define __A_MOVE_WIN_BY_AREA wop * arel
317 #define __A_MOVE_WIN_TO_LINEAR_AREA 74
318 #define __A_MOVE_WIN_BY_LINEAR_AREA 75
320 #define __A_DESKTOP_NEXT desk next
321 #define __A_DESKTOP_PREV desk prev
322 #define __A_DESKTOP_RAISE desk raise
323 #define __A_DESKTOP_LOWER desk lower
324 #define __A_DESKTOP_DRAG desk drag
325 #define __A_DESKTOP_INPLACE desk this
326 #define __A_GOTO_DESK desk goto
328 #define __A_AREA_SET area set
329 #define __A_AREA_MOVE_BY area move
331 #define __A_DRAG_BUTTON button mo ptr
333 #define __A_FOCUSMODE_SET 23
334 #define __A_MOVEMODE_SET 24
335 #define __A_RESIZEMODE_SET 25
336 #define __A_SLIDEMODE_SET 26
337 #define __A_CLEANUPSLIDE_SET 27
338 #define __A_MAPSLIDE_SET 28
339 #define __A_SOUND_SET 29
340 #define __A_BUTTONMOVE_RESIST_SET 30
341 #define __A_DESKTOPBG_TIMEOUT_SET 31
342 #define __A_MAPSLIDE_SPEED_SET 32
343 #define __A_CLEANUPSLIDE_SPEED_SET 33
344 #define __A_DRAGDIR_SET 34
345 #define __A_DRAGBAR_ORDER_SET 35
346 #define __A_DRAGBAR_WIDTH_SET 36
347 #define __A_DRAGBAR_LENGTH_SET 37
348 #define __A_DESKSLIDE_SET 38
349 #define __A_DESKSLIDE_SPEED_SET 39
350 #define __A_HIQUALITYBG_SET 40
352 #define __A_PLAYSOUNDCLASS 41
353 #define __A_DESKRAY 43
354 #define __A_AUTOSAVE_SET 44
355 #define __A_HIDESHOW_BUTTON button_show
356 #define __A_SLIDEOUT slideout
357 #define __A_SCROLL_WINDOWS 48
358 #define __A_TOOLTIP_SET 57
359 #define __A_FOCUS_NEXT focus next
360 #define __A_FOCUS_PREV focus prev
361 #define __A_FOCUS_SET 60
362 #define __A_BACKGROUND_SET bg use
364 #define __A_WARP_POINTER 66
365 #define __A_AREA_LINEAR_SET 70
366 #define __A_AREA_LINEAR_MOVE_BY 71
368 #define __A_SET_PAGER_HIQ 76
369 #define __A_SET_PAGER_SNAP 77
370 #define __A_TYPE_TEXT 80
372 #define __A_START_GROUP gop * start
373 #define __A_ADD_TO_GROUP gop * add
374 #define __A_REMOVE_FROM_GROUP gop * del
375 #define __A_BREAK_GROUP gop * break
376 #define __A_SHOWHIDE_GROUP gop * showhide
378 #define __A_CREATE_ICONBOX ibox new
380 #define __MODIFIER_KEY 101
382 #define __ALLOW_ANY_MODIFIER_KEYS 103
386 #define __ALLOW_ANY_BUTTON 930
387 #define __ALLOW_ANY_KEY 931
388 #define __NEXT_ACTION 105
389 #define __TOOLTIP_ACTION_TEXT 107
398 #define __WINDOWS_KEY 906
400 #define __CTRL_ALT 910
401 #define __CTRL_SHIFT 911
402 #define __ALT_SHIFT 912
403 #define __CTRL_ALT_SHIFT 913
404 #define __CTRL_META4 914
405 #define __SHIFT_META4 915
406 #define __CTRL_META4_SHIFT 916
407 #define __CTRL_META5 917
408 #define __SHIFT_META5 918
409 #define __CTRL_META5_SHIFT 919
410 #define __WINDOWS_SHIFT 920
411 #define __WINDOWS_CTRL 921
412 #define __WINDOWS_ALT 922
415 #define __MOUSE_PRESS 0
416 #define __MOUSE_RELEASE 1
417 #define __MOUSE_ENTER 2
418 #define __MOUSE_LEAVE 3
419 #define __KEY_PRESS 4
420 #define __KEY_RELEASE 5
421 #define __DOUBLE_CLICK 6
423 #define __FOCUS_OUT 8
425 #define __USE_BORDER 480
426 #define __HAS_NAME 481
427 #define __HAS_CLASS 482
428 #define __HAS_TITLE 483
429 #define __IS_IN_WIDTH_RANGE 484
430 #define __IS_IN_HEIGHT_RANGE 485
431 #define __IS_TRANSIENT 486
432 #define __CANNOT_RESIZE_HORIZONTALLY 487
433 #define __CANNOT_RESIZE_VERTICALLY 488
434 #define __IS_SHAPED 489
435 #define __USE_ICON 490
436 #define __MAKE_WINDOW_STICKY 492
442 #define __SLIDE_DIRECTION 620
444 #define __TOOLTIP_ICON 640
445 #define __BUBBLE1_ICLASS 641
446 #define __BUBBLE2_ICLASS 642
447 #define __BUBBLE3_ICLASS 643
448 #define __BUBBLE4_ICLASS 644
449 #define __DISTANCE 645
450 #define __TOOLTIP_HELP_ICON 646
452 #define __BG_ICLASS 700
453 #define __ITEM_ICLASS 701
454 #define __SUBMENU_ICLASS 702
455 #define __USE_ITEM_BACKGROUNDS 703
456 #define __MAXIMUM_NUMBER_OF_COLUMNS 704
457 #define __MAXIMUM_NUMBER_OF_ROWS 705
459 #define __MENU_ITEM 707
461 #define __MENU_ACTION 709
462 #define __MENU_PREBUILT 710
463 #define __MENU_TITLE 711
466 #define __BG_COLOR 801
467 #define __FG_COLOR 802
468 #define __XBM_FILE 803
469 #define __NATIVE_ID 804
471 #define __TRANSPARENCY 2001
472 #define __SHOW_NAMES 2002
473 #define __ICON_SIZE 2003
474 #define __ICON_MODE 2004
475 #define __SCROLLBAR_SIDE 2005
476 #define __SCROLLBAR_ARROWS 2006
477 #define __AUTOMATIC_RESIZE 2007
478 #define __SHOW_ICON_BASE 2008
479 #define __SCROLLBAR_AUTOHIDE 2009
480 #define __COVER_HIDE 2010
481 #define __RESIZE_ANCHOR 2011
482 #define __ICONBOX_ANIMATE 2012
483 #define __EXTRA_HEAD 2013
485 #define __HORIZONTAL 0
489 #define __BAR_BOTTOM 1
490 #define __BAR_RIGHT 1
496 /* Native cursor definitions */
498 #define XC_x_CURSOR 0
500 #define XC_BASED_ARROW_DOWN 4
501 #define XC_BASED_ARROW_UP 6
503 #define XC_BOGOSITY 10
504 #define XC_BOTTOM_LEFT_CORNER 12
505 #define XC_BOTTOM_RIGHT_CORNER 14
506 #define XC_BOTTOM_SIDE 16
507 #define XC_BOTTOM_TEE 18
508 #define XC_BOX_SPIRAL 20
509 #define XC_CENTER_PTR 22
512 #define XC_COFFEE_MUG 28
514 #define XC_CROSS_REVERSE 32
515 #define XC_CROSSHAIR 34
516 #define XC_DIAMOND_CROSS 36
519 #define XC_DOUBLE_ARROW 42
520 #define XC_DRAFT_LARGE 44
521 #define XC_DRAFT_SMALL 46
522 #define XC_DRAPED_BOX 48
523 #define XC_EXCHANGE 50
525 #define XC_GOBBLER 54
531 #define XC_IRON_CROSS 66
532 #define XC_LEFT_PTR 68
533 #define XC_LEFT_SIDE 70
534 #define XC_LEFT_TEE 72
535 #define XC_LEFTBUTTON 74
536 #define XC_LL_ANGLE 76
537 #define XC_LR_ANGLE 78
539 #define XC_MIDDLEBUTTON 82
544 #define XC_QUESTION_ARROW 92
545 #define XC_RIGHT_PTR 94
546 #define XC_RIGHT_SIDE 96
547 #define XC_RIGHT_TEE 98
548 #define XC_RIGHTBUTTON 100
549 #define XC_RTL_LOGO 102
550 #define XC_SAILBOAT 104
551 #define XC_SB_DOWN_ARROW 106
552 #define XC_SB_H_DOUBLE_ARROW 108
553 #define XC_SB_LEFT_ARROW 110
554 #define XC_SB_RIGHT_ARROW 112
555 #define XC_SB_UP_ARROW 114
556 #define XC_SB_V_DOUBLE_ARROW 116
557 #define XC_SHUTTLE 118
558 #define XC_SIZING 120
559 #define XC_SPIDER 122
560 #define XC_SPRAYCAN 124
562 #define XC_TARGET 128
563 #define XC_TCROSS 130
564 #define XC_TOP_LEFT_ARROW 132
565 #define XC_TOP_LEFT_CORNER 134
566 #define XC_TOP_RIGHT_CORNER 136
567 #define XC_TOP_SIDE 138
568 #define XC_TOP_TEE 140
570 #define XC_UL_ANGLE 144
571 #define XC_UMBRELLA 146
572 #define XC_UR_ANGLE 148
576 /*******************************************************************/
577 /* Convenience macros to make configuring E SO much simpler */
578 /*******************************************************************/
580 /*********** Window match convenience macros ***********************/
581 #define USE_BORDER_FOR_CLIENT_WITH_TITLE(title, border) \
582 __MATCH_WINDOW __BGN;\
583 __NAME border"_MATCH";\
584 __USE_BORDER border;\
588 #define USE_BORDER_FOR_CLIENT_WITH_NAME(name, border) \
589 __MATCH_WINDOW __BGN;\
590 __NAME border"_MATCH";\
591 __USE_BORDER border;\
595 #define USE_BORDER_FOR_CLIENT_WITH_CLASS(class, border) \
596 __MATCH_WINDOW __BGN;\
597 __NAME border"_MATCH";\
598 __USE_BORDER border;\
602 #define USE_BORDER_FOR_TRANSIENT_CLIENT(border) \
603 __MATCH_WINDOW __BGN;\
604 __NAME border"_MATCH";\
605 __USE_BORDER border;\
606 __IS_TRANSIENT __ON;\
609 #define USE_BORDER_FOR_UNRESIZABLE_CLIENT(border) \
610 __MATCH_WINDOW __BGN;\
611 __NAME border"_MATCH";\
612 __USE_BORDER border;\
613 __CANNOT_RESIZE_HORIZONTALLY __ON;\
614 __CANNOT_RESIZE_VERTICALLY __ON;\
617 #define USE_BORDER_FOR_SHAPED_CLIENT(border) \
618 __MATCH_WINDOW __BGN;\
619 __NAME border"_MATCH";\
620 __USE_BORDER border;\
624 #define USE_ICON_IMAGECLASS_FOR_CLIENT_TITLE(title, iclass) \
625 __MATCH_WINDOW __BGN;\
626 __NAME iclass"_MATCH";\
631 #define USE_ICON_IMAGECLASS_FOR_CLIENT_NAME(name, iclass) \
632 __MATCH_WINDOW __BGN;\
633 __NAME iclass"_MATCH";\
638 #define USE_ICON_IMAGECLASS_FOR_CLIENT_CLASS(class, iclass) \
639 __MATCH_WINDOW __BGN;\
640 __NAME iclass"_MATCH";\
645 #define USE_ICON_IMAGE_FOR_CLIENT_TITLE(title, image) \
647 __NAME image"_ICLASS";\
650 __MATCH_WINDOW __BGN;\
651 __NAME image"_MATCH";\
652 __USE_ICON image"_ICLASS";\
656 #define USE_ICON_IMAGE_FOR_CLIENT_NAME(name, image) \
658 __NAME image"_ICLASS";\
661 __MATCH_WINDOW __BGN;\
662 __NAME image"_MATCH";\
663 __USE_ICON image"_ICLASS";\
667 #define USE_ICON_IMAGE_FOR_CLIENT_CLASS(class, image) \
669 __NAME image"_ICLASS";\
672 __MATCH_WINDOW __BGN;\
673 __NAME image"_MATCH";\
674 __USE_ICON image"_ICLASS";\
678 #define USE_ICON_IMAGES_FOR_CLIENT_TITLE(title, image, image2, image3) \
680 __NAME image"_ICLASS";\
685 __MATCH_WINDOW __BGN;\
686 __NAME image"_MATCH";\
687 __USE_ICON image"_ICLASS";\
691 #define USE_ICON_IMAGES_FOR_CLIENT_NAME(name, image, image2, image3) \
693 __NAME image"_ICLASS";\
698 __MATCH_WINDOW __BGN;\
699 __NAME image"_MATCH";\
700 __USE_ICON image"_ICLASS";\
704 #define MAKE_WINDOW_STICKY_BY_TITLE(title) \
705 __MATCH_WINDOW __BGN;\
706 __NAME title_"STICKYTITLE";\
707 __MAKE_WINDOW_STICKY 1;\
711 #define MAKE_WINDOW_STICKY_BY_CLASS(class) \
712 __MATCH_WINDOW __BGN;\
713 __NAME class"_STICKYCLASS";\
714 __MAKE_WINDOW_STICKY 1;\
718 #define MAKE_WINDOW_STICKY_BY_NAME(name) \
719 __MATCH_WINDOW __BGN;\
720 __NAME name"_STICKYNAME";\
721 __MAKE_WINDOW_STICKY 1;\
725 #define WINDOW_ON_DESK_BY_NAME(name,desk) \
726 __MATCH_WINDOW __BGN;\
727 __NAME name"_DESKNAME";\
732 #define WINDOW_ON_DESK_BY_TITLE(title,desk) \
733 __MATCH_WINDOW __BGN;\
734 __NAME title"_DESKTITLE";\
739 #define WINDOW_ON_DESK_BY_CLASS(class,desk) \
740 __MATCH_WINDOW __BGN;\
741 __NAME class"_DESKCLASS";\
746 /*********** Menu creation macros **********************************/
747 #define BEGIN_NEW_DIRSCAN_MENU(name, style, directory) \
749 __MENU_PREBUILT name style "dirscan" directory
751 #define BEGIN_NEW_GNOME_MENU(name, style, directory) \
753 __MENU_PREBUILT name style "gnome" directory
755 #define BEGIN_NEW_BORDERS_MENU(name, style) \
757 __MENU_PREBUILT name style "borders"
759 #define BEGIN_NEW_THEMES_MENU(name, style) \
761 __MENU_PREBUILT name style "themes"
763 #define BEGIN_NEW_WINDOWLIST_MENU(name, style) \
765 __MENU_PREBUILT name style "windowlist"
767 #define BEGIN_NEW_DESKTOPWINDOWLIST_MENU(name, style) \
769 __MENU_PREBUILT name style "desktopwindowlist"
771 #define ADD_MENU_TITLE(name) \
774 #define BEGIN_NEW_FILE_MENU(name, style, thefile) \
776 __MENU_PREBUILT name style "file" thefile
778 #define NORMAL_MENU_STYLE_VERTICAL(name, border, tclass, bg_iclass, item_iclass, submenu_iclass, max_items) \
783 __BG_ICLASS bg_iclass;\
784 __ITEM_ICLASS item_iclass;\
785 __SUBMENU_ICLASS submenu_iclass;\
786 __USE_ITEM_BACKGROUNDS __OFF;\
787 __MAXIMUM_NUMBER_OF_ROWS max_items;\
790 #define NORMAL_MENU_STYLE_HORIZONTAL(name, border, tclass, bg_iclass, item_iclass, submenu_iclass, max_items) \
795 __BG_ICLASS bg_iclass;\
796 __ITEM_ICLASS item_iclass;\
797 __SUBMENU_ICLASS submenu_iclass;\
798 __USE_ITEM_BACKGROUNDS __OFF;\
799 __MAXIMUM_NUMBER_OF_COLUMNS max_items;\
802 #define NEXTSTEP_MENU_STYLE_VERTICAL(name, border, tclass, item_iclass, submenu_iclass, max_items) \
807 __ITEM_ICLASS item_iclass;\
808 __SUBMENU_ICLASS submenu_iclass;\
809 __USE_ITEM_BACKGROUNDS __ON;\
810 __MAXIMUM_NUMBER_OF_ROWS max_items;\
813 #define NEXTSTEP_MENU_STYLE_HORIZONTAL(name, border, tclass, item_iclass, submenu_iclass, max_items) \
818 __ITEM_ICLASS item_iclass;\
819 __SUBMENU_ICLASS submenu_iclass;\
820 __USE_ITEM_BACKGROUNDS __ON;\
821 __MAXIMUM_NUMBER_OF_COLUMNS max_items;\
824 #define BEGIN_NEW_MENU(name, style) \
832 #define ADD_MENU_ITEM(text, icon_iclass, action, parameters) \
833 __MENU_ITEM icon_iclass text;\
834 __MENU_ACTION action parameters
836 #define ADD_MENU_TEXT_ITEM(text, action, parameters) \
837 __MENU_ITEM "NULL" text;\
838 __MENU_ACTION action parameters
840 #define ADD_MENU_ICON_ITEM(icon_iclass, action, parameters) \
841 __MENU_ITEM icon_iclass;\
842 __MENU_ACTION action parameters
844 #define ADD_MENU_SUBMENU_ITEM(text, icon_iclass, submenu_name) \
845 __SUMENU submenu_name icon_iclass text
847 #define ADD_MENU_SUBMENU_TEXT_ITEM(text, submenu_name) \
848 __SUMENU submenu_name "NULL" text
850 #define ADD_MENU_SUBMENU_ICON_ITEM(icon_iclass, submenu_name) \
851 __SUMENU submenu_name icon_iclass
853 /*********** Tooltip creation macros *******************************/
854 #define DEFINE_TOOLTIP(name, main_iclass, cloud1_iclass, cloud2_iclass, cloud3_iclass, cloud4_iclass, tclass, distance) \
857 __ICLASS main_iclass;\
858 __BUBBLE1_ICLASS cloud1_iclass;\
859 __BUBBLE2_ICLASS cloud2_iclass;\
860 __BUBBLE3_ICLASS cloud3_iclass;\
861 __BUBBLE4_ICLASS cloud4_iclass;\
862 __TOOLTIP_HELP_ICON "DO_HELP_BUTTON";\
864 __DISTANCE distance;\
867 #define DEFINE_TOOLTIP_WITH_LOGO(name, main_iclass, cloud1_iclass, cloud2_iclass, cloud3_iclass, cloud4_iclass, tclass, distance, logo) \
870 __ICLASS main_iclass;\
871 __BUBBLE1_ICLASS cloud1_iclass;\
872 __BUBBLE2_ICLASS cloud2_iclass;\
873 __BUBBLE3_ICLASS cloud3_iclass;\
874 __BUBBLE4_ICLASS cloud4_iclass;\
875 __TOOLTIP_HELP_ICON logo;\
877 __DISTANCE distance;\
880 #define DEFINE_TOOLTIP_SIMPLE(name, iclass, tclass, distance) \
885 __DISTANCE distance;\
888 /*********** Sound creation macros *******************************/
889 #define BEGIN_SOUND \
895 /*********** Sound creation macros *******************************/
896 #define BEGIN_SLIDEOUT(name, direction) \
899 __SLIDE_DIRECTION direction
901 #define ADD_BUTTON_TO_SLIDEOUT(name) \
904 #define END_SLIDEOUT \
907 /*********** Desktop BG creation macros ***************************/
908 #define BEGIN_BACKGROUND(name) \
912 #define END_BACKGROUND \
915 #define SET_SOLID(color) \
918 #define ON_DESKTOP(num) \
921 #define DEFAULT_BACKGROUND \
922 __USE_ON_DESKTOP __DESKTOP_ALL
924 #define ADD_BACKGROUND_TILED(file)\
925 __BACKGROUND_LAYER file 1 1 0 0 0 0
927 #define ADD_BACKGROUND_SCALED(file)\
928 __BACKGROUND_LAYER file 0 0 0 0 1024 1024
930 #define ADD_BACKGROUND_TILED_SCALED_VERTICALLY(file)\
931 __BACKGROUND_LAYER file 1 0 0 0 0 1024
933 #define ADD_BACKGROUND_TILED_SCALED_HORIZONTALLY(file)\
934 __BACKGROUND_LAYER file 1 0 0 0 1024 0
936 #define ADD_BACKGROUND_CENTERED(file)\
937 __BACKGROUND_LAYER file 0 1 512 512 0 0
939 #define ADD_BACKGROUND_TILED_CENTER(file)\
940 __BACKGROUND_LAYER file 1 1 512 512 0 0
942 #define ADD_BACKGROUND_SCALED_RETAIN_ASPECT(file)\
943 __BACKGROUND_LAYER file 0 1 512 512 1024 1024
945 #define ADD_BACKGROUND_TILED_SCALED_RETAIN_ASPECT(file)\
946 __BACKGROUND_LAYER file 1 1 512 512 1024 1024
948 #define ADD_OVERLAY_IMAGE_CENTERED(file) \
949 __FORGROUND_LAYER file 1 512 512 0 0
951 #define ADD_OVERLAY_IMAGE_TOP_LEFT(file) \
952 __FORGROUND_LAYER file 1 0 0 0 0
954 #define ADD_OVERLAY_IMAGE_TOP_RIGHT(file) \
955 __FORGROUND_LAYER file 1 1024 0 0 0
957 #define ADD_OVERLAY_IMAGE_BOTTOM_LEFT(file) \
958 __FORGROUND_LAYER file 1 0 1024 0 0
960 #define ADD_OVERLAY_IMAGE_BOTTOM_RIGHT(file) \
961 __FORGROUND_LAYER file 1 1024 1024 0 0
963 #define ADD_OVERLAY_IMAGE_BOTTOM_MIDDLE(file) \
964 __FORGROUND_LAYER file 1 512 1024 0 0
966 #define ADD_OVERLAY_IMAGE_TOP_MIDDLE(file) \
967 __FORGROUND_LAYER file 1 512 0 0 0
969 #define ADD_OVERLAY_IMAGE_LEFT_MIDDLE(file) \
970 __FORGROUND_LAYER file 1 0 512 0 0
972 #define ADD_OVERLAY_IMAGE_RIGHT_MIDDLE(file) \
973 __FORGROUND_LAYER file 1 1024 512 0 0
975 #define ADD_OVERLAY_IMAGE_SCALED(file) \
976 __FORGROUND_LAYER file 0 0 0 1024 1024
978 #define ADD_OVERLAY_IMAGE_ASPECT(file) \
979 __FORGROUND_LAYER file 1 512 512 1024 1024
981 #define ADD_BACKGROUND_SCALED_RETAIN_ASPECT_ALIGN_RIGHT(file)\
982 __BACKGROUND_LAYER file 0 1 1024 512 0 1024
984 #define ADD_BACKGROUND_SCALED_RETAIN_ASPECT_ALIGN_LEFT(file)\
985 __BACKGROUND_LAYER file 0 1 0 512 0 1024
987 #define ADD_BACKGROUND_SCALED_RETAIN_ASPECT_ALIGN_TOP(file)\
988 __BACKGROUND_LAYER file 0 1 512 0 1024 0
990 #define ADD_BACKGROUND_SCALED_RETAIN_ASPECT_ALIGN_BOTTOM(file)\
991 __BACKGROUND_LAYER file 0 1 512 1024 1024 0
993 /*********** Directory definition macros **************************/
994 #define E_SCRIPTS_DIR ENLIGHTENMENT_ROOT/scripts/
996 #endif /* __E16_DEFINITIONS__ */