J. Duke | 319a3b9 | 2007-12-01 00:00:00 +0000 | [diff] [blame^] | 1 | /* |
| 2 | * Copyright 2003-2007 Sun Microsystems, Inc. All Rights Reserved. |
| 3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. |
| 4 | * |
| 5 | * This code is free software; you can redistribute it and/or modify it |
| 6 | * under the terms of the GNU General Public License version 2 only, as |
| 7 | * published by the Free Software Foundation. Sun designates this |
| 8 | * particular file as subject to the "Classpath" exception as provided |
| 9 | * by Sun in the LICENSE file that accompanied this code. |
| 10 | * |
| 11 | * This code is distributed in the hope that it will be useful, but WITHOUT |
| 12 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or |
| 13 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License |
| 14 | * version 2 for more details (a copy is included in the LICENSE file that |
| 15 | * accompanied this code). |
| 16 | * |
| 17 | * You should have received a copy of the GNU General Public License version |
| 18 | * 2 along with this work; if not, write to the Free Software Foundation, |
| 19 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. |
| 20 | * |
| 21 | * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara, |
| 22 | * CA 95054 USA or visit www.sun.com if you need additional information or |
| 23 | * have any questions. |
| 24 | */ |
| 25 | |
| 26 | package sun.awt.X11; |
| 27 | |
| 28 | import java.awt.Color; |
| 29 | import java.awt.Font; |
| 30 | import java.awt.SystemColor; |
| 31 | |
| 32 | import javax.swing.*; |
| 33 | import javax.swing.plaf.*; |
| 34 | import javax.swing.border.*; |
| 35 | import javax.swing.text.DefaultEditorKit; |
| 36 | |
| 37 | import javax.swing.plaf.basic.BasicBorders; |
| 38 | import com.sun.java.swing.plaf.motif.*; |
| 39 | import sun.awt.X11.XComponentPeer; |
| 40 | |
| 41 | class XAWTLookAndFeel extends MotifLookAndFeel { |
| 42 | |
| 43 | /** |
| 44 | * Load the SystemColors into the defaults table. The keys |
| 45 | * for SystemColor defaults are the same as the names of |
| 46 | * the public fields in SystemColor. If the table is being |
| 47 | * created on a native Motif platform we use the SystemColor |
| 48 | * values, otherwise we create color objects whose values match |
| 49 | * the default CDE/Motif colors. |
| 50 | */ |
| 51 | protected void initSystemColorDefaults(UIDefaults table) { |
| 52 | String[] defaultSystemColors = { |
| 53 | "desktop", "#005C5C", /* Color of the desktop background */ |
| 54 | "activeCaption", "#000080", /* Color for captions (title bars) when they are active. */ |
| 55 | "activeCaptionText", "#FFFFFF", /* Text color for text in captions (title bars). */ |
| 56 | "activeCaptionBorder", "#B24D7A", /* Border color for caption (title bar) window borders. */ |
| 57 | "inactiveCaption", "#AEB2C3", /* Color for captions (title bars) when not active. */ |
| 58 | "inactiveCaptionText", "#000000", /* Text color for text in inactive captions (title bars). */ |
| 59 | "inactiveCaptionBorder", "#AEB2C3", /* Border color for inactive caption (title bar) window borders. */ |
| 60 | "window", "#AEB2C3", /* Default color for the interior of windows */ |
| 61 | "windowBorder", "#AEB2C3", /* ??? */ |
| 62 | "windowText", "#000000", /* ??? */ |
| 63 | "menu", "#AEB2C3", /* ??? */ |
| 64 | "menuText", "#000000", /* ??? */ |
| 65 | "text", "#FFF7E9", /* Text background color */ |
| 66 | "textText", "#000000", /* Text foreground color */ |
| 67 | "textHighlight", "#000000", /* Text background color when selected */ |
| 68 | "textHighlightText", "#FFF7E9", /* Text color when selected */ |
| 69 | "textInactiveText", "#808080", /* Text color when disabled */ |
| 70 | "control", "#AEB2C3", /* Default color for controls (buttons, sliders, etc) */ |
| 71 | "controlText", "#000000", /* Default color for text in controls */ |
| 72 | "controlHighlight", "#DCDEE5", /* Highlight color for controls */ |
| 73 | "controlLtHighlight", "#DCDEE5", /* Light highlight color for controls */ |
| 74 | "controlShadow", "#63656F", /* Shadow color for controls */ |
| 75 | "controlLightShadow", "#9397A5", /* Shadow color for controls */ |
| 76 | "controlDkShadow", "#000000", /* Dark shadow color for controls */ |
| 77 | "scrollbar", "#AEB2C3", /* Scrollbar ??? color. PENDING(jeff) foreground? background? ?*/ |
| 78 | "info", "#FFF7E9", /* ??? */ |
| 79 | "infoText", "#000000" /* ??? */ |
| 80 | }; |
| 81 | |
| 82 | loadSystemColors(table, defaultSystemColors, true); |
| 83 | } |
| 84 | |
| 85 | protected void initComponentDefaults(UIDefaults table) { |
| 86 | super.initComponentDefaults(table); |
| 87 | |
| 88 | FontUIResource dialogPlain12 = new FontUIResource(Font.DIALOG, |
| 89 | Font.PLAIN, 12); |
| 90 | FontUIResource sansSerifPlain12 = new FontUIResource(Font.SANS_SERIF, |
| 91 | Font.PLAIN, 12); |
| 92 | FontUIResource monospacedPlain12 = new FontUIResource(Font.MONOSPACED, |
| 93 | Font.PLAIN, 12); |
| 94 | ColorUIResource red = new ColorUIResource(Color.red); |
| 95 | ColorUIResource black = new ColorUIResource(Color.black); |
| 96 | ColorUIResource white = new ColorUIResource(Color.white); |
| 97 | ColorUIResource lightGray = new ColorUIResource(Color.lightGray); |
| 98 | ColorUIResource controlDarker = new ColorUIResource(SystemColor.controlDkShadow); |
| 99 | |
| 100 | Color back = table.getColor("control"); |
| 101 | Color colors [] = XComponentPeer.getSystemColors(); |
| 102 | Color scrollBarBackground = colors[XComponentPeer.BACKGROUND_COLOR]; |
| 103 | Color trackColor = new Color(MotifColorUtilities.calculateSelectFromBackground(scrollBarBackground.getRed(), scrollBarBackground.getGreen(), scrollBarBackground.getBlue())); |
| 104 | Border loweredBevelBorder = new MotifBorders.BevelBorder(false, |
| 105 | table.getColor("controlShadow"), |
| 106 | table.getColor("controlLtHighlight")); |
| 107 | |
| 108 | Border raisedBevelBorder = new MotifBorders.BevelBorder(true, |
| 109 | table.getColor("controlShadow"), |
| 110 | table.getColor("controlLtHighlight")); |
| 111 | |
| 112 | Border marginBorder = new BasicBorders.MarginBorder(); |
| 113 | |
| 114 | Border focusBorder = new MotifBorders.FocusBorder( |
| 115 | table.getColor("control"), |
| 116 | table.getColor("activeCaptionBorder")); |
| 117 | |
| 118 | |
| 119 | Border focusBevelBorder = new BorderUIResource.CompoundBorderUIResource( |
| 120 | focusBorder, |
| 121 | loweredBevelBorder); |
| 122 | |
| 123 | Border textFieldBorder = new BorderUIResource.CompoundBorderUIResource( |
| 124 | focusBevelBorder, |
| 125 | marginBorder); |
| 126 | |
| 127 | // *** Text |
| 128 | |
| 129 | Object fieldInputMap = new UIDefaults.LazyInputMap(new Object[] { |
| 130 | "COPY", DefaultEditorKit.copyAction, |
| 131 | "PASTE", DefaultEditorKit.pasteAction, |
| 132 | "CUT", DefaultEditorKit.cutAction, |
| 133 | "control C", DefaultEditorKit.copyAction, |
| 134 | "control V", DefaultEditorKit.pasteAction, |
| 135 | "control X", DefaultEditorKit.cutAction, |
| 136 | "control INSERT", DefaultEditorKit.copyAction, |
| 137 | "shift INSERT", DefaultEditorKit.pasteAction, |
| 138 | "shift DELETE", DefaultEditorKit.cutAction, |
| 139 | "control F", DefaultEditorKit.forwardAction, |
| 140 | "control B", DefaultEditorKit.backwardAction, |
| 141 | "control D", DefaultEditorKit.deleteNextCharAction, |
| 142 | "typed \010", DefaultEditorKit.deletePrevCharAction, |
| 143 | "DELETE", DefaultEditorKit.deleteNextCharAction, |
| 144 | "RIGHT", DefaultEditorKit.forwardAction, |
| 145 | "LEFT", DefaultEditorKit.backwardAction, |
| 146 | "KP_RIGHT", DefaultEditorKit.forwardAction, |
| 147 | "KP_LEFT", DefaultEditorKit.backwardAction, |
| 148 | "shift LEFT", DefaultEditorKit.selectionBackwardAction, |
| 149 | "shift RIGHT", DefaultEditorKit.selectionForwardAction, |
| 150 | "control LEFT", DefaultEditorKit.previousWordAction, |
| 151 | "control RIGHT", DefaultEditorKit.nextWordAction, |
| 152 | "control shift LEFT", DefaultEditorKit.selectionPreviousWordAction, |
| 153 | "control shift RIGHT", DefaultEditorKit.selectionNextWordAction, |
| 154 | "control SLASH", DefaultEditorKit.selectAllAction, |
| 155 | "HOME", DefaultEditorKit.beginLineAction, |
| 156 | "END", DefaultEditorKit.endLineAction, |
| 157 | "shift HOME", DefaultEditorKit.selectionBeginLineAction, |
| 158 | "shift END", DefaultEditorKit.selectionEndLineAction, |
| 159 | "control BACK_SLASH", "unselect", |
| 160 | "ENTER", JTextField.notifyAction, |
| 161 | "control shift O", "toggle-componentOrientation" |
| 162 | }); |
| 163 | |
| 164 | Object passwordInputMap = new UIDefaults.LazyInputMap(new Object[] { |
| 165 | "COPY", DefaultEditorKit.copyAction, |
| 166 | "PASTE", DefaultEditorKit.pasteAction, |
| 167 | "CUT", DefaultEditorKit.cutAction, |
| 168 | "control C", DefaultEditorKit.copyAction, |
| 169 | "control V", DefaultEditorKit.pasteAction, |
| 170 | "control X", DefaultEditorKit.cutAction, |
| 171 | "control INSERT", DefaultEditorKit.copyAction, |
| 172 | "shift INSERT", DefaultEditorKit.pasteAction, |
| 173 | "shift DELETE", DefaultEditorKit.cutAction, |
| 174 | "control F", DefaultEditorKit.forwardAction, |
| 175 | "control B", DefaultEditorKit.backwardAction, |
| 176 | "control D", DefaultEditorKit.deleteNextCharAction, |
| 177 | "typed \010", DefaultEditorKit.deletePrevCharAction, |
| 178 | "DELETE", DefaultEditorKit.deleteNextCharAction, |
| 179 | "RIGHT", DefaultEditorKit.forwardAction, |
| 180 | "LEFT", DefaultEditorKit.backwardAction, |
| 181 | "KP_RIGHT", DefaultEditorKit.forwardAction, |
| 182 | "KP_LEFT", DefaultEditorKit.backwardAction, |
| 183 | "shift LEFT", DefaultEditorKit.selectionBackwardAction, |
| 184 | "shift RIGHT", DefaultEditorKit.selectionForwardAction, |
| 185 | "control LEFT", DefaultEditorKit.beginLineAction, |
| 186 | "control RIGHT", DefaultEditorKit.endLineAction, |
| 187 | "control shift LEFT", DefaultEditorKit.selectionBeginLineAction, |
| 188 | "control shift RIGHT", DefaultEditorKit.selectionEndLineAction, |
| 189 | "control SLASH", DefaultEditorKit.selectAllAction, |
| 190 | "HOME", DefaultEditorKit.beginLineAction, |
| 191 | "END", DefaultEditorKit.endLineAction, |
| 192 | "shift HOME", DefaultEditorKit.selectionBeginLineAction, |
| 193 | "shift END", DefaultEditorKit.selectionEndLineAction, |
| 194 | "control BACK_SLASH", "unselect", |
| 195 | "ENTER", JTextField.notifyAction, |
| 196 | "control shift O", "toggle-componentOrientation" |
| 197 | }); |
| 198 | |
| 199 | Object multilineInputMap = new UIDefaults.LazyInputMap(new Object[] { |
| 200 | "COPY", DefaultEditorKit.copyAction, |
| 201 | "PASTE", DefaultEditorKit.pasteAction, |
| 202 | "CUT", DefaultEditorKit.cutAction, |
| 203 | "control C", DefaultEditorKit.copyAction, |
| 204 | "control V", DefaultEditorKit.pasteAction, |
| 205 | "control X", DefaultEditorKit.cutAction, |
| 206 | "control INSERT", DefaultEditorKit.copyAction, |
| 207 | "shift INSERT", DefaultEditorKit.pasteAction, |
| 208 | "shift DELETE", DefaultEditorKit.cutAction, |
| 209 | "control F", DefaultEditorKit.forwardAction, |
| 210 | "control B", DefaultEditorKit.backwardAction, |
| 211 | "control D", DefaultEditorKit.deleteNextCharAction, |
| 212 | "typed \010", DefaultEditorKit.deletePrevCharAction, |
| 213 | "DELETE", DefaultEditorKit.deleteNextCharAction, |
| 214 | "RIGHT", DefaultEditorKit.forwardAction, |
| 215 | "LEFT", DefaultEditorKit.backwardAction, |
| 216 | "KP_RIGHT", DefaultEditorKit.forwardAction, |
| 217 | "KP_LEFT", DefaultEditorKit.backwardAction, |
| 218 | "shift LEFT", DefaultEditorKit.selectionBackwardAction, |
| 219 | "shift RIGHT", DefaultEditorKit.selectionForwardAction, |
| 220 | "control LEFT", DefaultEditorKit.previousWordAction, |
| 221 | "control RIGHT", DefaultEditorKit.nextWordAction, |
| 222 | "control shift LEFT", DefaultEditorKit.selectionPreviousWordAction, |
| 223 | "control shift RIGHT", DefaultEditorKit.selectionNextWordAction, |
| 224 | "control SLASH", DefaultEditorKit.selectAllAction, |
| 225 | "HOME", DefaultEditorKit.beginLineAction, |
| 226 | "END", DefaultEditorKit.endLineAction, |
| 227 | "shift HOME", DefaultEditorKit.selectionBeginLineAction, |
| 228 | "shift END", DefaultEditorKit.selectionEndLineAction, |
| 229 | |
| 230 | "control N", DefaultEditorKit.downAction, |
| 231 | "control P", DefaultEditorKit.upAction, |
| 232 | "UP", DefaultEditorKit.upAction, |
| 233 | "DOWN", DefaultEditorKit.downAction, |
| 234 | "KP_UP", DefaultEditorKit.upAction, |
| 235 | "KP_DOWN", DefaultEditorKit.downAction, |
| 236 | "PAGE_UP", DefaultEditorKit.pageUpAction, |
| 237 | "PAGE_DOWN", DefaultEditorKit.pageDownAction, |
| 238 | "shift PAGE_UP", "selection-page-up", |
| 239 | "shift PAGE_DOWN", "selection-page-down", |
| 240 | "ctrl shift PAGE_UP", "selection-page-left", |
| 241 | "ctrl shift PAGE_DOWN", "selection-page-right", |
| 242 | "shift UP", DefaultEditorKit.selectionUpAction, |
| 243 | "shift DOWN", DefaultEditorKit.selectionDownAction, |
| 244 | "shift KP_UP", DefaultEditorKit.selectionUpAction, |
| 245 | "shift KP_DOWN", DefaultEditorKit.selectionDownAction, |
| 246 | "ENTER", DefaultEditorKit.insertBreakAction, |
| 247 | "TAB", DefaultEditorKit.insertTabAction, |
| 248 | "control BACK_SLASH", "unselect", |
| 249 | "control HOME", DefaultEditorKit.beginAction, |
| 250 | "control END", DefaultEditorKit.endAction, |
| 251 | "control shift HOME", DefaultEditorKit.selectionBeginAction, |
| 252 | "control shift END", DefaultEditorKit.selectionEndAction, |
| 253 | "control T", "next-link-action", |
| 254 | "control shift T", "previous-link-action", |
| 255 | "control SPACE", "activate-link-action", |
| 256 | "control shift O", "toggle-componentOrientation" |
| 257 | }); |
| 258 | |
| 259 | Object sliderFocusInsets = new InsetsUIResource( 0, 0, 0, 0 ); |
| 260 | |
| 261 | Object[] defaults = { |
| 262 | |
| 263 | "ScrollBar.background", scrollBarBackground, |
| 264 | "ScrollBar.foreground", table.get("control"), |
| 265 | "ScrollBar.track", trackColor, |
| 266 | "ScrollBar.trackHighlight", trackColor, |
| 267 | "ScrollBar.thumb", scrollBarBackground, |
| 268 | "ScrollBar.thumbHighlight", table.get("controlHighlight") , |
| 269 | "ScrollBar.thumbDarkShadow", table.get("controlDkShadow"), |
| 270 | "ScrollBar.thumbShadow", table.get("controlShadow"), |
| 271 | "ScrollBar.border", loweredBevelBorder, |
| 272 | "ScrollBar.allowsAbsolutePositioning", Boolean.TRUE, |
| 273 | "ScrollBar.defaultWidth", Integer.valueOf(17), |
| 274 | "ScrollBar.focusInputMap", |
| 275 | new UIDefaults.LazyInputMap(new Object[] { |
| 276 | "RIGHT", "positiveUnitIncrement", |
| 277 | "KP_RIGHT", "positiveUnitIncrement", |
| 278 | "DOWN", "positiveUnitIncrement", |
| 279 | "KP_DOWN", "positiveUnitIncrement", |
| 280 | "PAGE_DOWN", "positiveBlockIncrement", |
| 281 | "ctrl PAGE_DOWN", "positiveBlockIncrement", |
| 282 | "LEFT", "negativeUnitIncrement", |
| 283 | "KP_LEFT", "negativeUnitIncrement", |
| 284 | "UP", "negativeUnitIncrement", |
| 285 | "KP_UP", "negativeUnitIncrement", |
| 286 | "PAGE_UP", "negativeBlockIncrement", |
| 287 | "ctrl PAGE_UP", "negativeBlockIncrement", |
| 288 | "HOME", "minScroll", |
| 289 | "END", "maxScroll" |
| 290 | }), |
| 291 | |
| 292 | "ScrollPane.font", dialogPlain12, |
| 293 | "ScrollPane.background", scrollBarBackground, |
| 294 | "ScrollPane.foreground", table.get("controlText"), |
| 295 | "ScrollPane.border", null, |
| 296 | "ScrollPane.viewportBorder", loweredBevelBorder, |
| 297 | "ScrollPane.ancestorInputMap", |
| 298 | new UIDefaults.LazyInputMap(new Object[] { |
| 299 | "RIGHT", "unitScrollRight", |
| 300 | "KP_RIGHT", "unitScrollRight", |
| 301 | "DOWN", "unitScrollDown", |
| 302 | "KP_DOWN", "unitScrollDown", |
| 303 | "LEFT", "unitScrollLeft", |
| 304 | "KP_LEFT", "unitScrollLeft", |
| 305 | "UP", "unitScrollUp", |
| 306 | "KP_UP", "unitScrollUp", |
| 307 | "PAGE_UP", "scrollUp", |
| 308 | "PAGE_DOWN", "scrollDown", |
| 309 | "ctrl PAGE_UP", "scrollLeft", |
| 310 | "ctrl PAGE_DOWN", "scrollRight", |
| 311 | "ctrl HOME", "scrollHome", |
| 312 | "ctrl END", "scrollEnd" |
| 313 | }), |
| 314 | |
| 315 | "FormattedTextField.focusInputMap", |
| 316 | new UIDefaults.LazyInputMap(new Object[] { |
| 317 | "ctrl C", DefaultEditorKit.copyAction, |
| 318 | "ctrl V", DefaultEditorKit.pasteAction, |
| 319 | "ctrl X", DefaultEditorKit.cutAction, |
| 320 | "COPY", DefaultEditorKit.copyAction, |
| 321 | "PASTE", DefaultEditorKit.pasteAction, |
| 322 | "CUT", DefaultEditorKit.cutAction, |
| 323 | "shift LEFT", DefaultEditorKit.selectionBackwardAction, |
| 324 | "shift KP_LEFT", DefaultEditorKit.selectionBackwardAction, |
| 325 | "shift RIGHT", DefaultEditorKit.selectionForwardAction, |
| 326 | "shift KP_RIGHT", DefaultEditorKit.selectionForwardAction, |
| 327 | "ctrl LEFT", DefaultEditorKit.previousWordAction, |
| 328 | "ctrl KP_LEFT", DefaultEditorKit.previousWordAction, |
| 329 | "ctrl RIGHT", DefaultEditorKit.nextWordAction, |
| 330 | "ctrl KP_RIGHT", DefaultEditorKit.nextWordAction, |
| 331 | "ctrl shift LEFT", DefaultEditorKit.selectionPreviousWordAction, |
| 332 | "ctrl shift KP_LEFT", DefaultEditorKit.selectionPreviousWordAction, |
| 333 | "ctrl shift RIGHT", DefaultEditorKit.selectionNextWordAction, |
| 334 | "ctrl shift KP_RIGHT", DefaultEditorKit.selectionNextWordAction, |
| 335 | "ctrl A", DefaultEditorKit.selectAllAction, |
| 336 | "HOME", DefaultEditorKit.beginLineAction, |
| 337 | "END", DefaultEditorKit.endLineAction, |
| 338 | "shift HOME", DefaultEditorKit.selectionBeginLineAction, |
| 339 | "shift END", DefaultEditorKit.selectionEndLineAction, |
| 340 | "typed \010", DefaultEditorKit.deletePrevCharAction, |
| 341 | "DELETE", DefaultEditorKit.deleteNextCharAction, |
| 342 | "RIGHT", DefaultEditorKit.forwardAction, |
| 343 | "LEFT", DefaultEditorKit.backwardAction, |
| 344 | "KP_RIGHT", DefaultEditorKit.forwardAction, |
| 345 | "KP_LEFT", DefaultEditorKit.backwardAction, |
| 346 | "ENTER", JTextField.notifyAction, |
| 347 | "ctrl BACK_SLASH", "unselect", |
| 348 | "control shift O", "toggle-componentOrientation", |
| 349 | "ESCAPE", "reset-field-edit", |
| 350 | "UP", "increment", |
| 351 | "KP_UP", "increment", |
| 352 | "DOWN", "decrement", |
| 353 | "KP_DOWN", "decrement", |
| 354 | }), |
| 355 | |
| 356 | "TextField.caretForeground", black, |
| 357 | "TextField.caretBlinkRate", Integer.valueOf(500), |
| 358 | "TextField.inactiveForeground", table.get("textInactiveText"), |
| 359 | "TextField.selectionBackground", table.get("textHighlight"), |
| 360 | "TextField.selectionForeground", table.get("textHighlightText"), |
| 361 | "TextField.background", table.get("window"), |
| 362 | "TextField.foreground", table.get("textText"), |
| 363 | "TextField.font", sansSerifPlain12, |
| 364 | "TextField.border", textFieldBorder, |
| 365 | "TextField.focusInputMap", fieldInputMap, |
| 366 | |
| 367 | "PasswordField.caretForeground", black, |
| 368 | "PasswordField.caretBlinkRate", Integer.valueOf(500), |
| 369 | "PasswordField.inactiveForeground", table.get("textInactiveText"), |
| 370 | "PasswordField.selectionBackground", table.get("textHighlight"), |
| 371 | "PasswordField.selectionForeground", table.get("textHighlightText"), |
| 372 | "PasswordField.background", table.get("window"), |
| 373 | "PasswordField.foreground", table.get("textText"), |
| 374 | "PasswordField.font", sansSerifPlain12, |
| 375 | "PasswordField.border", textFieldBorder, |
| 376 | "PasswordField.focusInputMap", passwordInputMap, |
| 377 | |
| 378 | "TextArea.caretForeground", black, |
| 379 | "TextArea.caretBlinkRate", Integer.valueOf(500), |
| 380 | "TextArea.inactiveForeground", table.get("textInactiveText"), |
| 381 | "TextArea.selectionBackground", table.get("textHighlight"), |
| 382 | "TextArea.selectionForeground", table.get("textHighlightText"), |
| 383 | "TextArea.background", table.get("window"), |
| 384 | "TextArea.foreground", table.get("textText"), |
| 385 | "TextArea.font", monospacedPlain12, |
| 386 | "TextArea.border", marginBorder, |
| 387 | "TextArea.focusInputMap", multilineInputMap |
| 388 | }; |
| 389 | |
| 390 | table.putDefaults(defaults); |
| 391 | } |
| 392 | } |