Define TITLEBAR_HEIGHT in default configuration file
[wmaker-crm.git] / src / wconfig.h.in
blob62a97fe1a93c8b8a478eb966b37669cff8562932
1 /*
2 * wconfig.h- default configuration and definitions + compile time options
4 * WindowMaker window manager
6 * Copyright (c) 1997-2003 Alfredo K. Kojima
8 * This program is free software; you can redistribute it and/or modify
9 * it under the terms of the GNU General Public License as published by
10 * the Free Software Foundation; either version 2 of the License, or
11 * (at your option) any later version.
13 * This program is distributed in the hope that it will be useful,
14 * but WITHOUT ANY WARRANTY; without even the implied warranty of
15 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
16 * GNU General Public License for more details.
18 * You should have received a copy of the GNU General Public License
19 * along with this program; if not, write to the Free Software
20 * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
23 #ifndef WMCONFIG_H_
24 #define WMCONFIG_H_
26 #include "config.h"
28 /*** Change this file (wconfig.h) *after* you ran configure ***/
31 * Comment out the following #defines if you want to disable a feature.
32 * Also check the features you can enable through configure.
36 * #undefine if you dont want texture plugin support or your system have
37 * some sort of problem with them.
39 #define TEXTURE_PLUGIN
40 #ifdef TEXTURE_PLUGIN
41 #undef DRAWSTRING_PLUGIN
42 #endif
44 /* If you want animations for iconification, shading, icon arrangement etc. */
45 #define ANIMATIONS
47 /* undefine it if you don't want your config files to be preprocessed by cpp */
48 #define USECPP
50 /* #define CPP_PATH @CPP_PATH@ */
52 #define NETWM_HINTS
54 /* support for XDND drop in the Dock. Experimental */
55 /*#define XDND*/
57 /* support for Motif window manager (mwm) window hints */
58 #define MWM_HINTS
61 * Undefine BALLOON_TEXT if you don't want balloons for showing extra
62 * information, like window titles that are not fully visible.
64 #define BALLOON_TEXT
67 * If balloons should be shaped or be simple rectangles.
68 * The X server must support the shape extensions and it's support
69 * must be enabled (default).
71 #define SHAPED_BALLOON
74 * Turn on a hack to make mouse and keyboard actions work even if
75 * the NumLock or ScrollLock modifiers are turned on. They might
76 * inflict a performance/memory penalty.
78 * If you're an X expert (knows the implementation of XGrabKey() in X)
79 * and knows that the penalty is small (or not), please tell me.
81 #define NUMLOCK_HACK
84 * define OPTIMIZE_SHAPE if you want the shape setting code to be optimized
85 * for applications that change their shape frequently (like xdaliclock
86 * -shape), removing flickering. If wmaker and your display are on
87 * different machines and the network connection is slow, it is not
88 * recommended.
90 #undef OPTIMIZE_SHAPE
92 /* define CONFIGURE_WINDOW_WHILE_MOVING if you want WindowMaker to send
93 * the synthetic ConfigureNotify event to windows while moving at every
94 * single movement. Default is to send a synthetic ConfigureNotify event
95 * only at the end of window moving, which improves performance.
97 #undef CONFIGURE_WINDOW_WHILE_MOVING
99 /* disable/enable workspace indicator in the dock */
100 #undef WS_INDICATOR
103 * define HIDDENDOT if you want a dot to be shown in the application icon
104 * of applications that are hidden.
106 #define HIDDENDOT
109 * Ignores the PPosition hint from clients. This is needed for some
110 * programs that have buggy implementations of such hint and place
111 * themselves in strange locations.
113 #undef IGNORE_PPOSITION
115 /* Do not scale application icon and miniwindow icon images */
116 #undef DONT_SCALE_ICONS
118 #define SILLYNESS
121 * The following options WILL NOT BE MADE RUN-TIME. Please do not request.
122 * They will only add unneeded bloat.
126 * define SHADOW_RESIZEBAR if you want a resizebar with shadows like in
127 * AfterStep, instead of the default Openstep look.
128 * NEXTSTEP 3.3 also does not have these shadows.
130 #undef SHADOW_RESIZEBAR
133 * Define DEMATERIALIZE_ICON if you want the undocked icon animation
134 * to be a progressive disaparison animation.
135 * This will cause all application icons to be created with Save Under
136 * enable.
138 #undef DEMATERIALIZE_ICON
141 * Define ICON_KABOOM_EXTRA if you want extra fancy icon undocking
142 * explosion animation.
144 #undef ICON_KABOOM_EXTRA
147 * #define if you want the window creation animation when superfluous
148 * is enabled. Only enable one of them.
150 #undef WINDOW_BIRTH_ZOOM
151 #undef WINDOW_BIRTH_ZOOM2
153 /* whether arrow drawing in clip buttons should be gradiented */
154 #undef GRADIENT_CLIP_ARROWS
157 * Some of the following options can be configured in the preference files,
158 * but if for some reason they can't, these are their defaults.
160 * There are also some options that can only be configured here, at compile time.
163 /* list of paths to look for the config files, searched in order of appearance */
164 #define DEF_CONFIG_PATHS "~/GNUstep/Library/WindowMaker:"PKGDATADIR
165 #define DEF_MENU_FILE "menu"
167 /* name of the script to execute at startup */
168 #define DEF_INIT_SCRIPT "autostart"
169 #define DEF_EXIT_SCRIPT "exitscript"
170 #define DEFAULTS_DIR "Defaults"
172 #ifdef USE_TIFF
173 #define DEF_BUTTON_IMAGES PKGDATADIR"/buttons.tiff"
174 #else
175 #define DEF_BUTTON_IMAGES PKGDATADIR"/buttons.xpm"
176 #endif
178 /* the file of the system wide submenu to be forced into the main menu */
179 #define GLOBAL_PREAMBLE_MENU_FILE "GlobalMenu.pre"
180 #define GLOBAL_EPILOGUE_MENU_FILE "GlobalMenu.post"
182 /* pixmap path */
183 #define DEF_PIXMAP_PATHS \
184 "(\"~/pixmaps\",\"~/GNUstep/Library/WindowMaker/Pixmaps\",\""PIXMAPDIR"\")"
186 #ifdef USER_MENU
187 #define GLOBAL_USER_MENU_PATH PKGDATADIR"/UserMenus"
188 #define DEF_USER_MENU_PATHS \
189 "~/GNUstep/Library/WindowMaker/UserMenus:"GLOBAL_USER_MENU_PATH
190 #endif
192 /* icon path */
193 #define DEF_ICON_PATHS \
194 "(\"~/pixmaps\",\"~/GNUstep/Library/Icons\",\"/usr/include/X11/pixmaps/\",\""PIXMAPDIR"\")"
196 /* window title to use for untitled windows */
197 #define DEF_WINDOW_TITLE "Untitled"
199 /* default style */
200 #define DEF_FRAME_COLOR "white"
202 /* default fonts */
203 #define DEF_TITLE_FONT "\"Trebuchet MS,Luxi Sans:bold:pixelsize=12\""
204 #define DEF_MENU_TITLE_FONT "\"Trebuchet MS,Luxi Sans:bold:pixelsize=12\""
205 #define DEF_MENU_ENTRY_FONT "\"Trebuchet MS,Luxi Sans:pixelsize=12\""
206 #define DEF_ICON_TITLE_FONT "\"Arial,Luxi Sans:pixelsize=9\""
207 #define DEF_CLIP_TITLE_FONT "\"Verdana:bold:pixelsize=10\""
208 #define DEF_INFO_TEXT_FONT "\"Trebuchet MS,Luxi Sans:pixelsize=12\""
209 #define DEF_WORKSPACE_NAME_FONT "\"Trebuchet MS,Luxi Sans:pixelsize=24\""
211 /* line width of the move/resize frame */
212 #define DEF_FRAME_THICKNESS 1
214 #define DEF_WINDOW_TITLE_EXTEND_SPACE "0"
215 #define DEF_MENU_TITLE_EXTEND_SPACE "0"
216 #define DEF_MENU_TEXT_EXTEND_SPACE "0"
217 #define TITLEBAR_EXTEND_SPACE 4
219 #define DEF_XPM_CLOSENESS 40000
221 /* default position of application menus */
222 #define DEF_APPMENU_X 10
223 #define DEF_APPMENU_Y 10
225 /* calculate window edge resistance from edge resistance */
226 #define WIN_RESISTANCE(x) (((x)*20)/30)
228 /* Window level where icons reside */
229 #define NORMAL_ICON_LEVEL WMNormalLevel
231 /* do not divide main menu and submenu in different tiers,
232 * opposed to OpenStep */
233 #define SINGLE_MENULEVEL
235 /* max. time to spend doing animations in seconds. If the animation
236 * time exceeds this value, it is immediately finished. Usefull for
237 * moments of high-load.
239 #define MAX_ANIMATION_TIME 1
240 /* Zoom animation */
241 #define MINIATURIZE_ANIMATION_FRAMES_Z 5
242 #define MINIATURIZE_ANIMATION_STEPS_Z 12
243 #define MINIATURIZE_ANIMATION_DELAY_Z 10000
244 /* Twist animation */
245 #define MINIATURIZE_ANIMATION_FRAMES_T 12
246 #define MINIATURIZE_ANIMATION_STEPS_T 16
247 #define MINIATURIZE_ANIMATION_DELAY_T 20000
248 #define MINIATURIZE_ANIMATION_TWIST_T 0.5
249 /* Flip animation */
250 #define MINIATURIZE_ANIMATION_FRAMES_F 12
251 #define MINIATURIZE_ANIMATION_STEPS_F 16
252 #define MINIATURIZE_ANIMATION_DELAY_F 20000
253 #define MINIATURIZE_ANIMATION_TWIST_F 0.5
255 #define HIDE_ANIMATION_STEPS (MINIATURIZE_ANIMATION_STEPS*2/3)
257 /* delays in ms...*/
258 #define BALLOON_DELAY 1000 /* ...before balloon is shown */
259 #define MENU_SELECT_DELAY 200 /* ...for menu item selection hysteresis */
260 #define MENU_JUMP_BACK_DELAY 400 /* ...for jumpback of scrolled menus */
262 /* animation speed constants */
263 #define ICON_SLIDE_SLOWDOWN_UF 1
264 #define ICON_SLIDE_DELAY_UF 0
265 #define ICON_SLIDE_STEPS_UF 50
267 #define ICON_SLIDE_SLOWDOWN_F 3
268 #define ICON_SLIDE_DELAY_F 0
269 #define ICON_SLIDE_STEPS_F 50
271 #define ICON_SLIDE_SLOWDOWN_M 5
272 #define ICON_SLIDE_DELAY_M 0
273 #define ICON_SLIDE_STEPS_M 30
275 #define ICON_SLIDE_SLOWDOWN_S 10
276 #define ICON_SLIDE_DELAY_S 0
277 #define ICON_SLIDE_STEPS_S 20
279 #define ICON_SLIDE_SLOWDOWN_US 20
280 #define ICON_SLIDE_DELAY_US 1
281 #define ICON_SLIDE_STEPS_US 10
283 /* menu scrolling */
284 #define MENU_SCROLL_STEPS_UF 14
285 #define MENU_SCROLL_DELAY_UF 1
287 #define MENU_SCROLL_STEPS_F 10
288 #define MENU_SCROLL_DELAY_F 5
290 #define MENU_SCROLL_STEPS_M 6
291 #define MENU_SCROLL_DELAY_M 5
293 #define MENU_SCROLL_STEPS_S 4
294 #define MENU_SCROLL_DELAY_S 6
296 #define MENU_SCROLL_STEPS_US 1
297 #define MENU_SCROLL_DELAY_US 8
299 /* shade animation */
300 #define SHADE_STEPS_UF 5
301 #define SHADE_DELAY_UF 0
303 #define SHADE_STEPS_F 10
304 #define SHADE_DELAY_F 0
306 #define SHADE_STEPS_M 15
307 #define SHADE_DELAY_M 0
309 #define SHADE_STEPS_S 30
310 #define SHADE_DELAY_S 0
312 #define SHADE_STEPS_US 40
313 #define SHADE_DELAY_US 10
315 /* workspace name on switch display */
316 #define WORKSPACE_NAME_FADE_DELAY 30
318 #ifdef VIRTUAL_DESKTOP
319 /* workspace virtual edge speed */
320 #define VIRTUALEDGE_SCROLL_VSTEP 30
321 #define VIRTUALEDGE_SCROLL_HSTEP 30
322 #endif
324 #define WORKSPACE_NAME_DELAY 400
326 /* window birth animation steps (DO NOT MAKE IT RUN-TIME) */
327 #define WINDOW_BIRTH_STEPS 20
329 /* number of steps for icon dematerialization. */
330 #define DEMATERIALIZE_STEPS 16
332 /* Delay when cycling colors of selected icons. */
333 #define COLOR_CYCLE_DELAY 200
335 /* size of the pieces in the undocked icon explosion */
336 #define ICON_KABOOM_PIECE_SIZE 4
339 * Position increment for smart placement: >= 1
340 * Raise these values if it's too slow for you
342 #define PLACETEST_HSTEP 8
343 #define PLACETEST_VSTEP 8
345 #define DOCK_EXTRA_SPACE 0
347 /* Vicinity in which an icon can be attached to the clip */
348 #define CLIP_ATTACH_VICINITY 1
349 #define CLIP_BUTTON_SIZE 23
351 /* The amount of space (in multiples of the icon size)
352 * a docked icon must be dragged out to detach it */
353 #define DOCK_DETTACH_THRESHOLD 3
355 /* Delay (in ms) after which the clip will autocollapse when leaved */
356 #define AUTO_COLLAPSE_DELAY 1000
358 /* Delay (in ms) after which the clip will autoexpand when entered.
359 * Set this to zero if you want instant expanding. */
360 #define AUTO_EXPAND_DELAY 600
362 /* Delay (in ms) after which the clip will be lowered when leaved */
363 #define AUTO_LOWER_DELAY 1000
365 /* Delay (in ms) after which the clip will be raised when entered.
366 * Set this to zero if you want instant raise. */
367 #define AUTO_RAISE_DELAY 600
369 /* Max. number of icons the clip can have */
370 #define CLIP_MAX_ICONS 32
372 /* blink interval when invoking a menu item */
373 #define MENU_BLINK_DELAY 60000
374 #define MENU_BLINK_COUNT 2
375 #define CURSOR_BLINK_RATE 300
377 /* how many pixels to move before dragging windows and other objects */
378 #define MOVE_THRESHOLD 5
379 #define HRESIZE_THRESHOLD 3
381 #define MAX_WORKSPACENAME_WIDTH 64
382 /* max width of window title in window list */
383 #define MAX_WINDOWLIST_WIDTH 160
385 #define KEY_CONTROL_WINDOW_WEIGHT 1
387 /* if your keyboard don't have arrow keys */
388 #undef ARROWLESS_KBD
390 /* don't put titles in miniwindows */
391 #undef NO_MINIWINDOW_TITLES
393 #define FRAME_BORDER_COLOR "black"
395 /* for boxes with high mouse sampling rates (SGI) */
396 #define DELAY_BETWEEN_MOUSE_SAMPLING 10
399 * You should not modify the following values, unless you know
400 * what you're doing.
403 /* number of window shortcuts */
404 #define MAX_WINDOW_SHORTCUTS 10
405 #define WM_PI 3.14159265358979323846
406 #define MIN_TITLEFONT_HEIGHT(h) ((h)>14 ? (h) : 14)
407 #define TITLEBAR_HEIGHT 18 /* window's titlebar height */
408 #define RESIZEBAR_HEIGHT 8 /* height of the resizebar */
409 #define FRAME_BORDER_WIDTH 1 /* width of window border for frames */
410 #define RESIZEBAR_MIN_WIDTH 20 /* min width of handles-corner_width */
411 #define RESIZEBAR_CORNER_WIDTH 28 /* width of the corner of resizebars */
412 #define MENU_INDICATOR_SPACE 12
413 #define MIN_WINDOW_SIZE 5 /* minimum size for windows */
414 #define ICON_WIDTH 64 /* size of the icon window */
415 #define ICON_HEIGHT 64
416 #define ICON_BORDER_WIDTH 2
417 #define MAX_ICON_WIDTH 60 /* size of the icon pixmap */
418 #define MAX_ICON_HEIGHT 48
419 #define MAX_WORKSPACES 100
420 #define MAX_MENU_TEXT_LENGTH 512
421 #define MAX_RESTART_ARGS 16
422 #define MAX_DEAD_PROCESSES 128
423 #define MAXLINE 1024
425 #ifdef _MAX_PATH
426 # define DEFAULT_PATH_MAX _MAX_PATH
427 #else
428 # define DEFAULT_PATH_MAX 512
429 #endif
431 #define DEBUG0
433 /* some rules */
434 #ifndef SHAPE
435 #undef SHAPED_BALLOON
436 #endif
438 #ifdef XKB_MODELOCK
439 #define KEEP_XKB_LOCK_STATUS
440 /* This is a hidden feature.
441 * Choose just one of LANGUAGE_* hints.
442 * Icon can be changed in def_pixmaps.h.
443 * More icons are welcome.
445 #define XKB_BUTTON_HINT
446 #undef LANGUAGE_TH
447 #undef LANGUAGE_SK
448 #endif
450 #ifndef DEMATERIALIZE_ICON
451 #define NORMAL_ICON_KABOOM
452 #endif
454 #if defined(HAVE_LIBINTL_H) && defined(I18N)
455 #include <libintl.h>
456 #define _(text) gettext(text)
457 #else
458 #define _(text) (text)
459 #endif
461 #if defined(__GNUC__) && !defined(__STRICT_ANSI__)
462 #define INLINE inline
463 #else
464 #define INLINE
465 #endif
467 #endif /* WMCONFIG_H_ */