Skip to content

Commit 23c1438

Browse files
committed
Introduction to GMD Theme Config.
1 parent 29e09e2 commit 23c1438

File tree

3 files changed

+28
-1
lines changed

3 files changed

+28
-1
lines changed

gwt-material/src/main/java/gwt/material/design/client/base/MaterialWidget.java

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -39,6 +39,7 @@
3939
import gwt.material.design.client.events.DropEvent;
4040
import gwt.material.design.client.events.*;
4141
import gwt.material.design.client.events.OrientationChangeEvent.OrientationChangeHandler;
42+
import gwt.material.design.client.theme.GlobalThemeConfig;
4243
import gwt.material.design.client.theme.ThemeManager;
4344
import gwt.material.design.jquery.client.api.JQuery;
4445
import gwt.material.design.jquery.client.api.JQueryElement;
@@ -58,6 +59,7 @@ public class MaterialWidget extends ComplexPanel implements HasId, HasEnabled, H
5859

5960
private static JQueryElement window = null;
6061
private static JQueryElement body = null;
62+
private static GlobalThemeConfig themeConfig;
6163

6264
public static JQueryElement window() {
6365
if (window == null) {
@@ -1960,4 +1962,11 @@ public void setTranslationKey(String key) {
19601962
public String getTranslationKey() {
19611963
return translationKey;
19621964
}
1965+
1966+
public static GlobalThemeConfig getGlobalTheme() {
1967+
if (themeConfig == null) {
1968+
themeConfig = new GlobalThemeConfig();
1969+
}
1970+
return themeConfig;
1971+
}
19631972
}
Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
package gwt.material.design.client.theme;
2+
3+
import gwt.material.design.client.constants.IconDisplay;
4+
5+
public class GlobalThemeConfig {
6+
7+
protected IconDisplay iconDisplay = IconDisplay.FILLED;
8+
9+
public IconDisplay getIconDisplay() {
10+
return iconDisplay;
11+
}
12+
13+
public void setIconDisplay(IconDisplay iconDisplay) {
14+
this.iconDisplay = iconDisplay;
15+
}
16+
}

gwt-material/src/main/java/gwt/material/design/client/ui/MaterialIcon.java

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -28,11 +28,13 @@
2828
import gwt.material.design.client.base.AbstractButton;
2929
import gwt.material.design.client.base.HasIcon;
3030
import gwt.material.design.client.base.HasSeparator;
31+
import gwt.material.design.client.base.MaterialWidget;
3132
import gwt.material.design.client.base.mixin.ColorsMixin;
3233
import gwt.material.design.client.base.mixin.CssNameMixin;
3334
import gwt.material.design.client.base.mixin.StyleMixin;
3435
import gwt.material.design.client.base.mixin.ToggleStyleMixin;
3536
import gwt.material.design.client.constants.*;
37+
import gwt.material.design.client.theme.GlobalThemeConfig;
3638

3739
//@formatter:off
3840

@@ -57,7 +59,7 @@
5759
public class MaterialIcon extends AbstractButton
5860
implements HasSeparator, HasIcon, IsAsyncWidget<MaterialIcon, IconType> {
5961

60-
private IconDisplay iconDisplay = IconDisplay.FILLED;
62+
private IconDisplay iconDisplay = MaterialWidget.getGlobalTheme().getIconDisplay();
6163
private CssNameMixin<MaterialIcon, IconPosition> positionMixin;
6264
private CssNameMixin<MaterialIcon, IconSize> sizeMixin;
6365
private ToggleStyleMixin<MaterialIcon> prefixMixin;

0 commit comments

Comments
 (0)