mirror of
https://github.com/processing/processing4.git
synced 2026-02-03 05:39:18 +01:00
make editor scroll bar into a generic class for themes
This commit is contained in:
@@ -28,6 +28,7 @@ import java.util.Map;
|
||||
|
||||
import processing.app.ui.Editor;
|
||||
import processing.app.ui.Theme;
|
||||
import processing.app.ui.ThemeScrollBarUI;
|
||||
|
||||
|
||||
/**
|
||||
@@ -67,6 +68,16 @@ public class PdeTextArea extends JEditTextArea {
|
||||
}
|
||||
|
||||
|
||||
static class PdeScrollBarUI extends ThemeScrollBarUI {
|
||||
PdeScrollBarUI() {
|
||||
super("editor.scrollbar.color",
|
||||
"editor.scrollbar.thumb.pressed.color",
|
||||
"editor.scrollbar.thumb.rollover.color",
|
||||
"editor.scrollbar.thumb.enabled.color");
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@Override
|
||||
protected TextAreaPainter createPainter(final TextAreaDefaults defaults) {
|
||||
return new PdeTextAreaPainter(this, defaults);
|
||||
|
||||
@@ -21,7 +21,7 @@
|
||||
51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
||||
*/
|
||||
|
||||
package processing.app.syntax;
|
||||
package processing.app.ui;
|
||||
|
||||
import processing.app.ui.Theme;
|
||||
|
||||
@@ -34,15 +34,29 @@ import java.awt.*;
|
||||
* Custom scroll bar style for the editor.
|
||||
* Originally based on https://stackoverflow.com/a/53662678
|
||||
*/
|
||||
public class PdeScrollBarUI extends BasicScrollBarUI {
|
||||
public class ThemeScrollBarUI extends BasicScrollBarUI {
|
||||
private final Dimension none = new Dimension();
|
||||
|
||||
private String backgroundAttr;
|
||||
private String pressedAttr;
|
||||
private String rolloverAttr;
|
||||
private String enabledAttr;
|
||||
|
||||
private Color backgroundColor;
|
||||
private Color pressedColor;
|
||||
private Color rolloverColor;
|
||||
private Color enabledColor;
|
||||
|
||||
|
||||
public ThemeScrollBarUI(String backgroundAttr, String pressedAttr,
|
||||
String rolloverAttr, String enabledAttr) {
|
||||
this.backgroundAttr = backgroundAttr;
|
||||
this.pressedAttr = pressedAttr;
|
||||
this.rolloverAttr = rolloverAttr;
|
||||
this.enabledAttr = enabledAttr;
|
||||
}
|
||||
|
||||
|
||||
public void updateTheme() {
|
||||
backgroundColor = Theme.getColor("editor.scrollbar.color");
|
||||
pressedColor = Theme.getColor("editor.scrollbar.thumb.pressed.color");
|
||||
Reference in New Issue
Block a user