diff --git a/src/main/java/net/rptools/maptool/client/ui/theme/ThemeSupport.java b/src/main/java/net/rptools/maptool/client/ui/theme/ThemeSupport.java index e01dd7ac7a..1cf6db45cc 100644 --- a/src/main/java/net/rptools/maptool/client/ui/theme/ThemeSupport.java +++ b/src/main/java/net/rptools/maptool/client/ui/theme/ThemeSupport.java @@ -461,6 +461,7 @@ public record ThemeDetails( new ThemeDetails("Aah(Large Print)", AahLAF_LP.class, "Aah-LP.png", false), new ThemeDetails("Aah(Small Print)", AahLAF_SP.class, "Aah-SP.png", false), new ThemeDetails("Aah(Very Large Print)", AahLAF_VLP.class, "Aah-VLP.png", false), + new ThemeDetails("Aark", AarkLaF.class, "Aark.png", true), }; /** The current theme being used. */ diff --git a/src/main/java/net/rptools/maptool/client/ui/themes/AarkLaF.java b/src/main/java/net/rptools/maptool/client/ui/themes/AarkLaF.java new file mode 100644 index 0000000000..2eb8e4ec55 --- /dev/null +++ b/src/main/java/net/rptools/maptool/client/ui/themes/AarkLaF.java @@ -0,0 +1,34 @@ +/* + * This software Copyright by the RPTools.net development team, and + * licensed under the Affero GPL Version 3 or, at your option, any later + * version. + * + * MapTool Source Code is distributed in the hope that it will be + * useful, but WITHOUT ANY WARRANTY; without even the implied warranty + * of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. + * + * You should have received a copy of the GNU Affero General Public + * License * along with this source Code. If not, please visit + * and specifically the Affero license + * text at . + */ +package net.rptools.maptool.client.ui.themes; + +import com.formdev.flatlaf.FlatDarkLaf; + +public class AarkLaF extends FlatDarkLaf { + public static final String NAME = "Aark"; + + public static boolean setup() { + return setup(new AarkLaF()); + } + + public static void installLafInfo() { + installLafInfo(NAME, AarkLaF.class); + } + + @Override + public String getName() { + return NAME; + } +} diff --git a/src/main/resources/net/rptools/maptool/client/ui/themes/AarkLaF.properties b/src/main/resources/net/rptools/maptool/client/ui/themes/AarkLaF.properties new file mode 100644 index 0000000000..a31cd4404f --- /dev/null +++ b/src/main/resources/net/rptools/maptool/client/ui/themes/AarkLaF.properties @@ -0,0 +1,318 @@ +@baseColour = #edead9 +@col0 = shade(@baseColour,90%) +@col5 = changeLightness(@col50, 11%) +@col10 = changeLightness(@col50, 13%) +@col20 = changeLightness(@col50, 15%) +@col30 = changeLightness(@col50, 17%) +@col40 = changeLightness(@col50, 20%) +@col50 = changeLightness(saturate(mix(@col0, @col100, 90%), 20%, derived), 23%) +@col60 = changeLightness(@col50, 38%) +@col70 = changeLightness(@col50, 46%) +@col80 = changeLightness(@col50, 58%) +@col90 = changeLightness(@col50, 85%) +@col100= tint(@baseColour, 86%) + +@blue = #2675bf +@red = #c42b1c +@yellow= #fcf2a7 +@dkBlue= shade(@blue, 30%) +@dkRed= shade(@red, 30%) +@dkYellow= shade(@yellow, 40%) + +@gradientEnd = mix(@col100,@col0,3%) +@gradientStart = mix(@col100,@col0,25%) + +@gradientBorderEnd = lighten(@gradientStart, 40%) +@gradientBorderStart = lighten(@gradientEnd, 30%) + +defaultFont = +1 + +*.foreground = @col90 +*.background = @col10 +*.disabledBackground = @col40 +@componentBackground = @col10 +*.inactiveBackground = @col50 +Component.arrowType = "triangle" +TabbedPane.arrowType= "triangle" + +Button.default.startBackground = @gradientStart +Button.default.endBackground = @gradientEnd +Button.default.startBorderColor = @gradientBorderStart +Button.default.endBorderColor = @gradientBorderEnd +Button.default.borderWidth = 1 +Button.default.focusedBackground = @col20 +Button.default.focusedForeground = @col90 +Button.default.foreground = @col90 +Button.default.hoverBackground = @col50 +Button.default.hoverBorderColor = @yellow +Button.default.hoverForeground = @col90 +Button.default.pressedBackground = @col10 +Button.default.pressedForeground = @col90 +Button.default.shadowColor = @col50 +Button.default.disabledBackground= @col40 + +Button.background +Button.foreground = if($Button.background, contrast($Button.background, @col90, @col5), $Button.default.foreground) +Button.startBackground = if($Button.background, lighten($Button.background, 10%), $Button.default.startBackground) +Button.endBackground = if($Button.background, darken($Button.background, 5%), $Button.default.endBackground) +Button.borderWidth = $Button.default.borderWidth +Button.startBorderColor = $Button.default.startBorderColor +Button.endBorderColor = $Button.default.endBorderColor +Button.disabledBackground = if($Button.background, changeLightness(desaturate($Button.background,70%,relative),80%,autoInverse), $Button.default.pressedBackground) +Button.disabledForeground = if($Button.background, fadein(contrast($Button.disabledSelectedBackground, @col90, @col5),40%,derived), $Button.default.pressedForeground) +Button.focusedBackground = if($Button.background, lighten($Button.background, 8%), $Button.default.focusedBackground) +Button.focusedForeground = if($Button.background, contrast($Button.focusedBackground, @col90, @col5), $Button.default.focusedForeground) +Button.hoverBorderColor = $Button.default.hoverBorderColor +Button.hoverBackground = if($Button.background, darken($Button.background, 4%), $Button.default.hoverBackground) +Button.hoverForeground = if($Button.background, contrast($Button.hoverBackground, @col90, @col5), $Button.default.hoverForeground) +Button.pressedBackground = if($Button.background, darken($Button.background, 12%), $Button.default.pressedBackground) +Button.pressedForeground = if($Button.background, contrast($Button.pressedBackground, @col90, @col5), $Button.default.pressedForeground) +Button.selectedBackground = if($Button.background, lighten($Button.background, 4%), lighten($Button.default.pressedBackground, 14%)) +Button.selectedForeground = if($Button.background, contrast($Button.selectedBackground, @col90, @col5), $Button.default.pressedForeground) +Button.disabledSelectedBackground = if($Button.background, lighten($Button.background, 4%), $Button.default.pressedBackground) +Button.disabledSelectedForeground = if($Button.background, contrast($Button.disabledSelectedBackground, @col90, @col5), $Button.default.pressedForeground) +Button.shadowColor = $Button.default.shadowColor +Button.minimumWidth = 30 +Button.paintShadow = true +Button.shadowWidth = 2 + +ToggleButton.foreground = $Button.foreground +ToggleButton.startBackground = $Button.startBackground +ToggleButton.endBackground = $Button.endBackground +ToggleButton.borderWidth = $Button.borderWidth +ToggleButton.startBorderColor = $Button.startBorderColor +ToggleButton.endBorderColor = $Button.endBorderColor +ToggleButton.disabledBackground = $Button.disabledBackground +ToggleButton.disabledForeground = $Button.disabledForeground +ToggleButton.focusedBackground = $Button.focusedBackground +ToggleButton.focusedForeground = $Button.focusedForeground +ToggleButton.hoverBorderColor = $Button.hoverBorderColor +ToggleButton.hoverBackground = $Button.hoverBackground +ToggleButton.hoverForeground = $Button.hoverForeground +ToggleButton.pressedBackground = $Button.pressedBackground +ToggleButton.pressedForeground = $Button.pressedForeground +ToggleButton.selectedBackground = $Button.selectedBackground +ToggleButton.selectedForeground = $Button.selectedForeground +ToggleButton.disabledSelectedBackground = $Button.disabledSelectedBackground +ToggleButton.disabledSelectedForeground = $Button.disabledSelectedForeground + + +Button.toolbar.hoverForeground = $Button.hoverForeground +Button.toolbar.hoverBackground = $Button.hoverBackground +Button.toolbar.pressedForeground = $Button.pressedForeground +Button.toolbar.pressedBackground = $Button.pressedBackground +Button.toolbar.selectedForeground = $Button.selectedForeground +Button.toolbar.selectedBackground = $Button.selectedBackground +Button.toolbar.disabledSelectedForeground = $Button.disabledSelectedForeground +Button.toolbar.disabledSelectedBackground = $Button.disabledSelectedBackground +ToggleButton.toolbar.hoverForeground = $Button.hoverForeground +ToggleButton.toolbar.hoverBackground = $Button.hoverBackground +ToggleButton.toolbar.pressedForeground = $Button.pressedForeground +ToggleButton.toolbar.pressedBackground = $Button.pressedBackground +ToggleButton.toolbar.selectedForeground = $Button.selectedForeground +ToggleButton.toolbar.selectedBackground = $Button.selectedBackground +ToggleButton.toolbar.disabledSelectedForeground = $Button.disabledSelectedForeground +ToggleButton.toolbar.disabledSelectedBackground = $Button.disabledSelectedBackground + +Button.toolbar.margin = 3,3,3,3 +Button.toolbar.spacingInsets = 1,2,1,0 + +CheckBox.icon.background = @col20 +CheckBox.icon.checkmarkColor = @col100 +CheckBox.icon.focusedBackground = @col40 +CheckBox.icon.focusedBorderColor = @yellow +CheckBox.icon.focusColor = @yellow +CheckBox.icon.selectedBackground = @col0 +CheckBox.icon.hoverBorderColor = @col90 +CheckBox.icon.pressedBorderColor = @col90 +CheckBox.icon.disabledBackground = @col40 +CheckBox.icon.focusedSelectedBackground = @col20 +CheckBox.icon.focusedSelectedBorderColor = @blue + +CheckBox.icon.borderWidth = 0.6 +CheckBox.icon.borderColor = @col80 +RadioButton.icon.centerDiameter = 8 + +ColorChooser.swatchesSwatchSize = 18,18 + +Component.arc = 9 +Component.borderColor = mix(@gradientBorderStart, @gradientBorderEnd, 70%) +Component.borderWidth = 1 +Component.focusWidth = 1 +Component.focusedBorderColor = mix(@gradientBorderStart, @gradientBorderEnd, 80%) +Component.innerFocusWidth = 0 +Component.titleBarCaption = true +Component.innerOutlineWidth = 4.7 + +HelpButton.innerFocusWidth = 1 +HelpButton.questionMarkColor = @col100 +HelpButton.borderColor = $HelpButton.questionMarkColor +HelpButton.borderWidth = 3.8 +HelpButton.background = @blue +HelpButton.focusedBorderColor = $HelpButton.hoverBackground +HelpButton.focusedBackground = $HelpButton.background +HelpButton.disabledQuestionMarkColor = @col60 +HelpButton.disabledBackground = @col10 +HelpButton.hoverBackground = darken(@blue, 15%) +HelpButton.hoverBorderColor = @col80 +HelpButton.pressedBackground = @col30 + +InternalFrame.activeTitleBackground = @col60 +InternalFrame.activeTitleForeground = @col10 +InternalFrame.inactiveTitleBackground = @col30 +InternalFrame.inactiveTitleForeground = @col80 +InternalFrame.inactiveBorderColor = $InternalFrame.inactiveTitleBackground +InternalFrame.buttonHoverBackground = lighten($InternalFrame.activeTitleBackground,10%,derived) +InternalFrame.buttonPressedBackground = lighten($InternalFrame.activeTitleForeground,40%,derived) +InternalFrame.closeHoverBackground = @red +InternalFrame.closeHoverForeground = @col10 +InternalFrame.activeBorderColor = $InternalFrame.activeTitleBackground + +Menu.acceleratorForeground = @yellow +Menu.acceleratorSelectionForeground = @col100 +Menu.background = @col10 +#Menu.border = 1,2,1,4, @yellow, 0.5, 4 +Menu.borderPainted = false +Menu.disabledForeground = @col80 +Menu.foreground = @col90 +Menu.icon.arrowColor = @yellow +Menu.icon.disabledArrowColor = fadein($Menu.icon.arrowColor,20%,derived) +Menu.selectionBackground = @blue +Menu.selectionForeground = @col90 +Menu.opaque = true +Menu.margin = 2,4,2,2 + +MenuItem.foreground = $Menu.foreground +MenuItem.disabledForeground = $Menu.disabledForeground +MenuItem.background = $Menu.background +MenuItem.selectionForeground = $Menu.selectionForeground +MenuItem.selectionBackground = $Menu.selectionBackground +MenuItem.acceleratorForeground = $Menu.acceleratorForeground +MenuItem.acceleratorSelectionForeground = $Menu.acceleratorSelectionForeground +MenuItem.checkBackground = @red +MenuItem.underlineSelectionColor = @red +MenuItem.underlineSelectionBackground = @dkBlue +MenuItem.underlineSelectionCheckBackground = @yellow +MenuItem.underlineSelectionHeight = 4 +MenuItem.minimumIconSize = 14,14 +MenuItem.checkMargins = 1,2,1,3 +#MenuItem.selectionType = underline +MenuItem.opaque = $Menu.opaque +#MenuItem.border = 1,2,1,2, @col80, 0.4, 2 + +CheckBoxMenuItem.foreground = $Menu.foreground +CheckBoxMenuItem.disabledForeground = $Menu.disabledForeground +CheckBoxMenuItem.background = $Menu.background +CheckBoxMenuItem.selectionForeground = $Menu.selectionForeground +CheckBoxMenuItem.selectionBackground = $Menu.selectionBackground +CheckBoxMenuItem.acceleratorForeground = $Menu.acceleratorForeground +CheckBoxMenuItem.acceleratorSelectionForeground = $Menu.acceleratorSelectionForeground +CheckBoxMenuItem.icon.checkmarkColor = $Menu.icon.arrowColor +CheckBoxMenuItem.icon.disabledCheckmarkColor = $Menu.icon.disabledArrowColor +CheckBoxMenuItem.opaque = $Menu.opaque + +RadioButtonMenuItem.foreground = $Menu.foreground +RadioButtonMenuItem.disabledForeground = $Menu.disabledForeground +RadioButtonMenuItem.background = $Menu.background +RadioButtonMenuItem.selectionForeground = $Menu.selectionForeground +RadioButtonMenuItem.selectionBackground = $Menu.selectionBackground +RadioButtonMenuItem.acceleratorForeground = $Menu.acceleratorForeground +RadioButtonMenuItem.acceleratorSelectionForeground = $Menu.acceleratorSelectionForeground +RadioButtonMenuItem.opaque = $Menu.opaque + +MenuBar.selectionArc = 9 +MenuBar.background = $Menu.background +MenuBar.foreground = $Menu.foreground +#MenuBar.border = $Menu.border +#MenuBar.borderColor = @yellow +MenuBar.underlineSelectionColor = @col0 +MenuBar.underlineSelectionHeight = 1 + +PopupMenuSeparator.height = 7 +PopupMenu.background = $Menu.background +PopupMenuSeparator.stripeWidth = 1 + +Panel.background = @col30 + +ProgressBar.arc = 3 +ProgressBar.background = @dkYellow +ProgressBar.foreground = @dkBlue +ProgressBar.selectionForeground = @yellow +ProgressBar.selectionBackground = @col0 +ProgressBar.border = 1,1,1,1,@col0,1,12 + +ScrollBar.background = @col0 +ScrollBar.showButtons = true +ScrollBar.thumb = @col60 +ScrollBar.thumbArc = 7 +ScrollBar.thumbInsets = 2,2,1,1 +ScrollBar.track = @col40 +ScrollBar.trackArc = 999 +ScrollBar.trackInsets = 2, 6, 2, 6 +ScrollBar.width = 15 +ScrollBar.buttonArrowColor = @col60 +ScrollBar.buttonDisabledArrowColor = fadein(@col90,40%,derived) +ScrollBar.hoverButtonBackground = @col90 +ScrollBar.minimumButtonSize = 10, 10 + +Slider.focusWidth = 1 +Slider.focusedColor = @col40 +Slider.focusedThumbBorderColor = @col0 +Slider.thumbBorderWidth = 2 +Slider.thumbBorderColor = @col80 +Slider.thumbColor = @col60 +Slider.thumbArc = 5 +Slider.thumbInsets = 2, 2, 2, 2 +Slider.thumbSize = 14,14 +Slider.tickColor = @col90 +Slider.trackArc = 99 +Slider.trackColor = @col30 +Slider.trackInsets = 2, 4, 2, 4 +Slider.trackValueColor = $Slider.thumbColor +Slider.trackWidth = 5 + +Spinner.buttonSeparatorWidth = 1.2 + +SplitPane.dividerSize = 5 +SplitPaneDivider.hoverColor = @red +SplitPaneDivider.gripDotCount = 8 +SplitPaneDivider.gripColor = @col80 +SplitPane.shadow = @blue +SplitPane.background = @col40 + +TabbedPane.background = @col20 +TabbedPane.foreground = @col80 +TabbedPane.inactiveUnderlineColor = @col30 +TabbedPane.selectedBackground = @col5 +TabbedPane.selectedForeground = @col90 +TabbedPane.showTabSeparators = true +TabbedPane.tabSeparatorColor = @col50 +TabbedPane.tabSeparatorsFullHeight= true +TabbedPane.underlineColor = @col50 +TabbedPane.hoverColor = @col0 + +TextComponent.arc = 8 + +TitlePane.buttonSize = 16,14 +TitlePane.iconSize = 15,15 +TitlePane.iconMargins = 1,1,1,1 +TitlePane.titleMargins = 1,4,1,2 +TitlePane.menuBarTitleGap = 8 + +ToolBar.background = @col5 +ToolBar.foreground = @col90 +ToolBar.floatable = true +ToolBar.focusableButtons = true +ToolBar.gripColor = @col90 +ToolBar.separatorWidth = 8 +ToolBar.separatorColor = @col90 + +ToolTip.background = @col50 +ToolTip.foreground = @col90 +ToolTip.border = 3,3,5,3, @gradientBorderEnd, 1, 6 + +Tree.background = @col20 +Tree.textBackground = @col10 +Tree.textForeground = @col90 + +Window.style = small \ No newline at end of file