提交 2cc1c0a1 编写于 作者: V VKARNAUK

6994562: Swing classes (both JTextArea and JTextField) don't support caret width tuning

Reviewed-by: rupashka, art
上级 121fc455
/*
* Copyright (c) 1997, 2009, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 1997, 2012, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
......@@ -644,6 +644,9 @@ public class WindowsLookAndFeel extends BasicLookAndFeel
"released SPACE", "released"
}),
"Caret.width",
new DesktopProperty("win.caret.width", null),
"CheckBox.font", ControlFont,
"CheckBox.interiorBackground", WindowBackgroundColor,
"CheckBox.background", ControlBackgroundColor,
......
/*
* Copyright (c) 1997, 2011, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 1997, 2012, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
......@@ -1503,9 +1503,14 @@ public class DefaultCaret extends Rectangle implements Caret, FocusListener, Mou
if (caretWidth > -1) {
return caretWidth;
} else {
Object property = UIManager.get("Caret.width");
if (property instanceof Integer) {
return ((Integer) property).intValue();
} else {
return 1;
}
}
return 1;
}
// --- serialization ---------------------------------------------
......
/*
* Copyright (c) 1999, 2010, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 1999, 2012, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
......@@ -70,6 +70,7 @@ void AwtDesktopProperties::GetWindowsParameters() {
GetNonClientParameters();
GetIconParameters();
GetColorParameters();
GetCaretParameters();
GetOtherParameters();
GetSoundEvents();
GetSystemProperties();
......@@ -636,6 +637,10 @@ void AwtDesktopProperties::GetSoundEvents() {
SetSoundProperty(TEXT("win.sound.start"), TEXT("SystemStart"));
}
void AwtDesktopProperties::GetCaretParameters() {
SetIntegerProperty(TEXT("win.caret.width"), GetIntegerParameter(SPI_GETCARETWIDTH));
}
BOOL AwtDesktopProperties::GetBooleanParameter(UINT spi) {
BOOL flag;
SystemParametersInfo(spi, 0, &flag, 0);
......
/*
* Copyright (c) 1999, 2003, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 1999, 2012, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
......@@ -64,6 +64,7 @@ class AwtDesktopProperties {
void GetColorParameters();
void GetOtherParameters();
void GetSoundEvents();
void GetCaretParameters();
static BOOL GetBooleanParameter(UINT spi);
static UINT GetIntegerParameter(UINT spi);
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册