1 // config.h 2 // You can edit these symbols to change the behavior & appearance of flwm. 3 // Turning off features will make flwm smaller too! 4 5 //ML Start--- 6 7 // ML: My hotkeys (comment out to disable): 8 // CTRL+ALT+arrow keys: move window that direction 4 or more pixels 9 #define ML_HOTKEYS 1 10 11 // ML: Use environment variable to set titlebar color: 12 #define ML_TITLEBAR_COLOR 1 13 14 //-- End ML 15 16 // BEHAVIOR: 17 18 // Turn this on for click-to-type (rather than point-to-type). 19 // On: clicking on the window gives it focus 20 // Off: pointing at the window gives it the focus. 21 #define CLICK_TO_TYPE 1 22 23 // Most window managers consider this and click-to-type equivalent. 24 // On: clicking anywhere on window raises it 25 // Off: you have to click on the border to raise window 26 #define CLICK_RAISES CLICK_TO_TYPE 27 28 // For point-to-type, sticky focus means you don't lose the focus 29 // until you move the cursor to another window that wants focus. 30 // If this is off you lose focus as soon as the cursor goes outside 31 // the window (such as to the desktop): 32 // #define STICKY_FOCUS 1 33 34 // For point-to-type, after this many seconds the window is raised, 35 // nothing is done if this is not defined: 36 // #define AUTO_RAISE 0.5 37 38 // Perform "smart" autoplacement. 39 // New windows are put at positions where they cover as few existing windows 40 // as possible. A brute force algorithm is used, so it consumes quite a bit 41 // of CPU time. 42 #define SMART_PLACEMENT 1 43 44 // set this to zero to remove the multiple-desktop code. This will 45 // make flwm about 20K smaller 46 #define DESKTOPS 1 47 48 // set this to zero for "new desktop" to just create one without asking 49 // for a name. This saves 12K or so of fltk input field code: 50 #define ASK_FOR_NEW_DESKTOP_NAME 0 51 52 // wm2 has no close box, for good reasons. Unfortunately too many programs 53 // assume there is one and have no other way to close a window. For a more 54 // "pure" implementation set this to zero: 55 #define CLOSE_BOX 1 56 57 // set this to zero to remove the minimize/window-shade button: 58 #define MINIMIZE_BOX 1 59 60 // If this is false the minimize button only changes the width of the 61 // window, so it acts like a Mac window shade. This was the original 62 // behavior, the new version makes it smaller vertically so it is just 63 // big enough to show the window title: 64 #define MINIMIZE_HEIGHT 1 65 66 // Read links from ~/.wmx to make menu items to run programs: 67 #define WMX_MENU_ITEMS 1 68 69 // Menu item to run a new xterm (if no wmx items found): 70 #define XTERM_MENU_ITEM 1 71 72 // Hotkeys (see Hotkeys.C for exactly what they do): 73 #define STANDARD_HOTKEYS 1 // alt+esc, alt+tab, alt+shift+tab 74 #define KWM_HOTKEYS 1 // ctrl+tab and ctrl+Fn for desktop switching 75 #define CDE_HOTKEYS defined(__sgi) // alt+fn do actions like raise/lower/close 76 #define WMX_HOTKEYS 1 // alt+up/down/enter/delete 77 #define WMX_DESK_HOTKEYS 0 // alt+left/right (conflict with Netscape) 78 #define DESKTOP_HOTKEYS 0 // alt+fn goes to desktop n 79 80 //////////////////////////////////////////////////////////////// 81 // APPEARANCE: 82 83 // Color for active window title bar (also for selected menu items): 84 // If not defined, no active window title highlighting is done. 85 #if CLICK_TO_TYPE 86 #define ACTIVE_COLOR 0xF0F0F0 87 #endif 88 //#define ACTIVE_COLOR 0x000008 89 90 // thickness of the border edge on each side (includes XBORDER): 91 #define LEFT 3 92 #define RIGHT 4 93 #define TOP 3 94 #define BOTTOM 4 95 96 // font for titles (if not set, helvetica bold is used): 97 // If this name is specific enough the font size is ignored. 98 // #define TITLE_FONT "-*-helvetica-medium-r-normal--*" 99 #define TITLE_FONT_SIZE 12 100 101 // thickness of title bar (frame border thickness is added to it): 102 #define TITLE_WIDTH (TITLE_FONT_SIZE+1) 103 #ifdef TOPSIDE 104 #define TITLE_HEIGHT TITLE_WIDTH //ML 105 #endif 106 107 // size & position of buttons (must fit in title bar): 108 #ifdef TOPSIDE 109 #define BUTTON_W TITLE_HEIGHT 110 #define BUTTON_H BUTTON_W 111 #define BUTTON_LEFT LEFT 112 #define BUTTON_TOP TOP 113 #define BUTTON_RIGHT RIGHT 114 #else 115 #define BUTTON_W TITLE_WIDTH 116 #define BUTTON_H BUTTON_W 117 #define BUTTON_LEFT LEFT 118 #define BUTTON_TOP TOP 119 #define BUTTON_BOTTOM BOTTOM 120 #endif 121 122 // how many pixels from edge for resize handle: 123 #define RESIZE_EDGE 5 124 // set this to zero to disable resizing by grabbing left/top edge: 125 //#define RESIZE_LEFT 1 126 #define RESIZE_TITLE_EDGE 1 // ML 127 128 // must drag window this far off screen to snap the border off the screen: 129 #define EDGE_SNAP 50 130 // must drag window this far off screen to actually move it off screen: 131 #define SCREEN_SNAP 100 132 133 // button decorations: 134 #define CLOSE_X 1 // windoze-style X in close button 135 #define CLOSE_HITTITE_LIGHTNING 0 // The ancient Hittite symbol for lightning 136 #define ICONIZE_BOX 1 // small box in iconize button 137 #define MINIMIZE_ARROW 1 // minimize button draws a <- rather than | 138 139 // default colors for cursor: 140 #ifdef __sgi 141 #define CURSOR_FG_COLOR 0xff0000 142 #else 143 #define CURSOR_FG_COLOR 0x000000 144 #endif 145 #define CURSOR_BG_COLOR 0xffffff 146 147 // "Clock in the title bar" code contributed by Kevin Quick 148 // <kquick@iphase.com>: 149 150 // Add a clock to the active window's title bar using specified 151 // strftime fmt Note: in keeping with the minimalistic, fast, and 152 // small philosophy of the flwm, the clock will only be updated 153 // once/minute so any display of seconds is frivolous. 154 //#define SHOW_CLOCK "%I:%M %p %Z" 155 156 // We also support the concept of a clock alarm. The alarm is 157 // triggered by delivering SIGALRM to flwm and cleared by delivering 158 // SIGCONT to flwm. When the alarm is active, the foreground and 159 // background colors of the clock display are determined by the 160 // following settings. (The following are unused if SHOW_CLOCK is not 161 // defined). 162 #define ALARM_FG_COLOR 0x00ffff 163 #define ALARM_BG_COLOR 0xff0000 164 165 //////////////////////////////////////////////////////////////// 166 // MENU APPEARANCE: 167 168 #define MAX_MENU_WIDTH 300 169 170 // size of the little pictures in the menu: 171 #define MENU_ICON_W 18 172 #define MENU_ICON_H 15 173 174 // font to use in menus (if not set helvetica is used): 175 #define MENU_FONT "-*-helvetica-medium-r-normal--*" 176 #define MENU_FONT_SIZE 12 177 178 //////////////////////////////////////////////////////////////// 179 // You probably don't want to change any of these: 180 181 #ifdef TITLE_FONT 182 #define TITLE_FONT_SLOT FL_FREE_FONT 183 #else 184 #define TITLE_FONT_SLOT FL_BOLD 185 #endif 186 187 #ifdef MENU_FONT 188 #define MENU_FONT_SLOT Fl_Font(FL_FREE_FONT+1) 189 #else 190 #define MENU_FONT_SLOT FL_HELVETICA 191 #endif 192 193 #define CURSOR_BG_SLOT Fl_Color(30) 194 #define CURSOR_FG_SLOT Fl_Color(31) 195