PDA

View Full Version : Theme building fails



kyr0
8 Oct 2015, 1:55 AM
I tried to generate a new theme by copying "themeDetails.theme" file and calling:

./bin/themer.sh verticalbase.theme

Result is:

Exception in thread "main" com.sencha.gxt.themebuilder.ConfigHandler$ConfigError: Configuration Errors:
Missing property: theme.details.field.radio
Missing property: theme.details.field.radio.boxLabel
Missing property: theme.details.field.radio.boxLabel.size
Missing property: theme.details.field.radio.boxLabel.weight
Missing property: theme.details.field.radio.boxLabel.color
Missing property: theme.details.field.radio.boxLabel.family
Missing property: theme.details.tree.checkboxMargin
Missing property: theme.details.tree.checkboxMargin.left
Missing property: theme.details.tree.checkboxMargin.right
Missing property: theme.details.tree.checkboxMargin.bottom
Missing property: theme.details.tree.checkboxMargin.top
Missing property: theme.details.accordionLayout.headerBarMargin
Missing property: theme.details.accordionLayout.headerBarMargin.left
Missing property: theme.details.accordionLayout.headerBarMargin.right
Missing property: theme.details.accordionLayout.headerBarMargin.bottom
Missing property: theme.details.accordionLayout.headerBarMargin.top
Missing property: theme.details.accordionLayout.panelPadding
Missing property: theme.details.accordionLayout.panelPadding.left
Missing property: theme.details.accordionLayout.panelPadding.right
Missing property: theme.details.accordionLayout.panelPadding.bottom
Missing property: theme.details.accordionLayout.panelPadding.top
Missing property: theme.details.accordionLayout.firstPanelPadding
Missing property: theme.details.accordionLayout.firstPanelPadding.left
Missing property: theme.details.accordionLayout.firstPanelPadding.right
Missing property: theme.details.accordionLayout.firstPanelPadding.bottom
Missing property: theme.details.accordionLayout.firstPanelPadding.top
Missing property: theme.details.borderLayout.collapsePanelBackgroundColor
Missing property: theme.details.datePicker.monthLeftButtonMargin
Missing property: theme.details.datePicker.monthLeftButtonMargin.left
Missing property: theme.details.datePicker.monthLeftButtonMargin.right
Missing property: theme.details.datePicker.monthLeftButtonMargin.bottom
Missing property: theme.details.datePicker.monthLeftButtonMargin.top
Missing property: theme.details.datePicker.monthRightButtonMargin
Missing property: theme.details.datePicker.monthRightButtonMargin.left
Missing property: theme.details.datePicker.monthRightButtonMargin.right
Missing property: theme.details.datePicker.monthRightButtonMargin.bottom
Missing property: theme.details.datePicker.monthRightButtonMargin.top
Missing property: theme.details.datePicker.monthLeftButtonOpacity
Missing property: theme.details.datePicker.monthRightButtonOpacity
Missing property: theme.details.panel.headerLineHeight
Missing property: theme.details.framedPanel.headerLineHeight
Missing property: theme.details.window.headerLineHeight
Missing property: theme.details.tabs.plainHeadingText
Missing property: theme.details.tabs.plainHeadingText.size
Missing property: theme.details.tabs.plainHeadingText.weight
Missing property: theme.details.tabs.plainHeadingText.color
Missing property: theme.details.tabs.plainHeadingText.family
Missing property: theme.details.tabs.plainActiveHeadingText
Missing property: theme.details.tabs.plainActiveHeadingText.size
Missing property: theme.details.tabs.plainActiveHeadingText.weight
Missing property: theme.details.tabs.plainActiveHeadingText.color
Missing property: theme.details.tabs.plainActiveHeadingText.family
Missing property: theme.details.tabs.plainHoverHeadingText
Missing property: theme.details.tabs.plainHoverHeadingText.size
Missing property: theme.details.tabs.plainHoverHeadingText.weight
Missing property: theme.details.tabs.plainHoverHeadingText.color
Missing property: theme.details.tabs.plainHoverHeadingText.family
Missing property: theme.details.tabs.plainTabBarBorderTop
Missing property: theme.details.tabs.plainTabBarBorderBottom
Missing property: theme.details.tabs.plainTabStripSpacerHeight
Missing property: theme.details.tabs.plainTabStripSpacerBorder
Missing property: theme.details.tabs.tabItemBorderBottom
Missing property: theme.details.tabs.activeTabItemBorderBottom
Missing property: theme.details.tabs.activeTabItemBorderTop
Missing property: theme.details.tabs.overTabItemBorderBottom
Missing property: theme.details.tabs.overTabItemBorderTop
Missing property: theme.details.tabs.scrollerLeftOverOpacity
Missing property: theme.details.tabs.scrollerLeftDisabledOpacity
Missing property: theme.details.tabs.scrollerRightOverOpacity
Missing property: theme.details.tabs.scrollerRightDisabledOpacity
Missing property: theme.details.tabs.tabStripTopBorder
Missing property: theme.details.tabs.activeTabCloseIconOpacity
Missing property: theme.details.tabs.activeTabCloseOverIconOpacity
Missing property: theme.details.tabs.tabCloseIconOpacity
Missing property: theme.details.tabs.tabCloseOverIconOpacity
Missing property: theme.details.toolbar.separatorBorder
Missing property: theme.details.toolbar.separatorBorder.color
Missing property: theme.details.toolbar.separatorBorder.style
Missing property: theme.details.toolbar.separatorHeight
Missing property: theme.details.toolbar.buttonOverride.overBorder
Missing property: theme.details.toolbar.buttonOverride.overBorder.color
Missing property: theme.details.toolbar.buttonOverride.overBorder.style
Missing property: theme.details.toolbar.buttonOverride.pressedBorder
Missing property: theme.details.toolbar.buttonOverride.pressedBorder.color
Missing property: theme.details.toolbar.buttonOverride.pressedBorder.style
Missing property: theme.details.fieldset.padding
Missing property: theme.details.fieldset.padding.left
Missing property: theme.details.fieldset.padding.right
Missing property: theme.details.fieldset.padding.bottom
Missing property: theme.details.fieldset.padding.top
Missing property: theme.details.fieldset.legendPadding
Missing property: theme.details.fieldset.legendPadding.left
Missing property: theme.details.fieldset.legendPadding.right
Missing property: theme.details.fieldset.legendPadding.bottom
Missing property: theme.details.fieldset.legendPadding.top
Missing property: theme.details.fieldset.collapseIconColor
Missing property: theme.details.fieldset.collapseOverIconColor
Missing property: theme.details.fieldset.expandIconColor
Missing property: theme.details.fieldset.expandOverIconColor
Missing property: theme.details.grid.bodyBorder
Missing property: theme.details.grid.bodyBorder.color
Missing property: theme.details.grid.bodyBorder.style
Missing property: theme.details.button.overBorder
Missing property: theme.details.button.overBorder.color
Missing property: theme.details.button.overBorder.style
Missing property: theme.details.button.pressedBorder
Missing property: theme.details.button.pressedBorder.color
Missing property: theme.details.button.pressedBorder.style


at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
at java.lang.reflect.Constructor.newInstance(Constructor.java:422)
at org.codehaus.groovy.reflection.CachedConstructor.invoke(CachedConstructor.java:77)
at org.codehaus.groovy.runtime.callsite.ConstructorSite$ConstructorSiteNoUnwrapNoCoerce.callConstructor(ConstructorSite.java:102)
at org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCallConstructor(CallSiteArray.java:57)
at org.codehaus.groovy.runtime.callsite.AbstractCallSite.callConstructor(AbstractCallSite.java:232)
at org.codehaus.groovy.runtime.callsite.AbstractCallSite.callConstructor(AbstractCallSite.java:236)
at com.sencha.gxt.themebuilder.ConfigHandler.validateConfig(ConfigHandler.groovy:342)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:497)
at org.codehaus.groovy.reflection.CachedMethod.invoke(CachedMethod.java:90)
at org.codehaus.groovy.runtime.callsite.StaticMetaMethodSite$StaticMetaMethodSiteNoUnwrapNoCoerce.invoke(StaticMetaMethodSite.java:148)
at org.codehaus.groovy.runtime.callsite.StaticMetaMethodSite.callStatic(StaticMetaMethodSite.java:99)
at org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCallStatic(CallSiteArray.java:53)
at org.codehaus.groovy.runtime.callsite.AbstractCallSite.callStatic(AbstractCallSite.java:191)
at org.codehaus.groovy.runtime.callsite.AbstractCallSite.callStatic(AbstractCallSite.java:203)
at com.sencha.gxt.themebuilder.ConfigHandler.load(ConfigHandler.groovy:171)
at com.sencha.gxt.themebuilder.ConfigHandler$load$0.callStatic(Unknown Source)
at org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCallStatic(CallSiteArray.java:53)
at org.codehaus.groovy.runtime.callsite.AbstractCallSite.callStatic(AbstractCallSite.java:191)
at org.codehaus.groovy.runtime.callsite.AbstractCallSite.callStatic(AbstractCallSite.java:219)
at com.sencha.gxt.themebuilder.ConfigHandler.load(ConfigHandler.groovy:102)
at com.sencha.gxt.themebuilder.ConfigHandler$load.call(Unknown Source)
at org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCall(CallSiteArray.java:45)
at org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:110)
at org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:122)
at com.sencha.gxt.themebuilder.ThemeBuilder.main(ThemeBuilder.groovy:84)

Am I doing something wrong? :)

Thanks and best,
Aron

drfibonacci
12 Oct 2015, 7:26 AM
Hi Aron,

Nope, you're not doing anything wrong. The Triton theme adds some new configuration properties and we forgot to update themeDetails with them. This fix was merged in on Friday and should now appear in the nightly builds. If you're using nightly, great, otherwise, you can use the themebuilder command line tool to generate a skeleton config and copy the missing keys out of it. I've attached a screenshot of the IntelliJ run config for themebuilder. Phantomjs may not actually be necessary just to generate a skeleton config.

Thanks for the report!

53400