PDA

View Full Version : [OPEN] ThemeBuilder fails generating skeleton.theme



gishmo
13 Dec 2015, 4:08 AM
Trying to generate theme.jar with the skeleton.theme fails.



El-Hoss-Mac-Pro:skeleton-config hoss$ ./../../bin/themer.sh skeleton-config.theme
template generation started
unable to generate ThemeDetails methods
Can't resolve [headerLineHeight]
error with template generation
java.lang.RuntimeException: com.sencha.gxt.themebuilder.config.shared.KeyNotFoundException: Can't resolve [headerLineHeight]
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:244)
at com.sencha.gxt.themebuilder.TemplateGenerator.generateThemeDetailsImpl(TemplateGenerator.groovy:197)
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 groovy.lang.MetaMethod.doMethodInvoke(MetaMethod.java:324)
at org.codehaus.groovy.runtime.metaclass.ClosureMetaClass.invokeMethod(ClosureMetaClass.java:382)
at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:1016)
at org.codehaus.groovy.runtime.callsite.PogoMetaClassSite.callCurrent(PogoMetaClassSite.java:66)
at org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCallCurrent(CallSiteArray.java:49)
at org.codehaus.groovy.runtime.callsite.AbstractCallSite.callCurrent(AbstractCallSite.java:151)
at org.codehaus.groovy.runtime.callsite.AbstractCallSite.callCurrent(AbstractCallSite.java:171)
at com.sencha.gxt.themebuilder.TemplateGenerator$_generateThemeDetailsImpl_closure3.doCall(TemplateGenerator.groovy:135)
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 groovy.lang.MetaMethod.doMethodInvoke(MetaMethod.java:324)
at org.codehaus.groovy.runtime.metaclass.ClosureMetaClass.invokeMethod(ClosureMetaClass.java:292)
at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:1016)
at groovy.lang.Closure.call(Closure.java:423)
at groovy.lang.Closure.call(Closure.java:439)
at org.codehaus.groovy.runtime.IOGroovyMethods.withWriter(IOGroovyMethods.java:1152)
at org.codehaus.groovy.runtime.ResourceGroovyMethods.withWriter(ResourceGroovyMethods.java:1790)
at org.codehaus.groovy.runtime.dgm$1030.invoke(Unknown Source)
at org.codehaus.groovy.runtime.callsite.PojoMetaMethodSite$PojoMetaMethodSiteNoUnwrapNoCoerce.invoke(PojoMetaMethodSite.java:271)
at org.codehaus.groovy.runtime.callsite.PojoMetaMethodSite.call(PojoMetaMethodSite.java:53)
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.TemplateGenerator.generateThemeDetailsImpl(TemplateGenerator.groovy:134)
at com.sencha.gxt.themebuilder.TemplateGenerator.generate(TemplateGenerator.groovy:51)
at com.sencha.gxt.themebuilder.TemplateGenerator$generate.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:114)
at com.sencha.gxt.themebuilder.ThemeBuilder$_main_closure2.doCall(ThemeBuilder.groovy:92)
at com.sencha.gxt.themebuilder.ThemeBuilder$_main_closure2.doCall(ThemeBuilder.groovy)
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 groovy.lang.MetaMethod.doMethodInvoke(MetaMethod.java:324)
at org.codehaus.groovy.runtime.metaclass.ClosureMetaClass.invokeMethod(ClosureMetaClass.java:292)
at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:1016)
at org.codehaus.groovy.runtime.callsite.PogoMetaClassSite.call(PogoMetaClassSite.java:39)
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:114)
at com.sencha.gxt.themebuilder.ThemeBuilder$__clinit__closure9.doCall(ThemeBuilder.groovy:22)
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 groovy.lang.MetaMethod.doMethodInvoke(MetaMethod.java:324)
at org.codehaus.groovy.runtime.metaclass.ClosureMetaClass.invokeMethod(ClosureMetaClass.java:292)
at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:1016)
at org.codehaus.groovy.runtime.InvokerHelper.invokePogoMethod(InvokerHelper.java:914)
at org.codehaus.groovy.runtime.InvokerHelper.invokeMethod(InvokerHelper.java:897)
at org.codehaus.groovy.runtime.ScriptBytecodeAdapter.invokeMethodN(ScriptBytecodeAdapter.java:166)
at org.codehaus.groovy.runtime.ScriptBytecodeAdapter.invokeClosure(ScriptBytecodeAdapter.java:572)
at com.sencha.gxt.themebuilder.ThemeBuilder.main(ThemeBuilder.groovy:90)
Caused by: com.sencha.gxt.themebuilder.config.shared.KeyNotFoundException: Can't resolve [headerLineHeight]
at com.sencha.gxt.themebuilder.config.shared.CfgObject.get(CfgObject.java:137)
at com.sencha.gxt.themebuilder.config.shared.CfgObject.get(CfgObject.java:98)
at com.sencha.gxt.themebuilder.config.shared.CfgObject$get$0.call(Unknown Source)
at com.sencha.gxt.themebuilder.TemplateGenerator$_generateDetailMethods_closure18.doCall(TemplateGenerator.groovy:246)
at sun.reflect.GeneratedMethodAccessor44.invoke(Unknown Source)
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 groovy.lang.MetaMethod.doMethodInvoke(MetaMethod.java:324)
at org.codehaus.groovy.runtime.metaclass.ClosureMetaClass.invokeMethod(ClosureMetaClass.java:292)
at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:1016)
at groovy.lang.Closure.call(Closure.java:423)
at groovy.lang.Closure.call(Closure.java:439)
at org.codehaus.groovy.runtime.DefaultGroovyMethods.each(DefaultGroovyMethods.java:2027)
at org.codehaus.groovy.runtime.DefaultGroovyMethods.each(DefaultGroovyMethods.java:2012)
at org.codehaus.groovy.runtime.DefaultGroovyMethods.each(DefaultGroovyMethods.java:2053)
at org.codehaus.groovy.runtime.dgm$162.invoke(Unknown Source)
at org.codehaus.groovy.runtime.callsite.PojoMetaMethodSite$PojoMetaMethodSiteNoUnwrapNoCoerce.invoke(PojoMetaMethodSite.java:271)
at org.codehaus.groovy.runtime.callsite.PojoMetaMethodSite.call(PojoMetaMethodSite.java:53)
at org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:122)
at com.sencha.gxt.themebuilder.TemplateGenerator.generateDetailMethods(TemplateGenerator.groovy:241)
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 groovy.lang.MetaMethod.doMethodInvoke(MetaMethod.java:324)
at org.codehaus.groovy.runtime.metaclass.ClosureMetaClass.invokeMethod(ClosureMetaClass.java:382)
at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:1016)
at org.codehaus.groovy.runtime.callsite.PogoMetaClassSite.callCurrent(PogoMetaClassSite.java:66)
at org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCallCurrent(CallSiteArray.java:49)
at org.codehaus.groovy.runtime.callsite.AbstractCallSite.callCurrent(AbstractCallSite.java:151)
at org.codehaus.groovy.runtime.callsite.AbstractCallSite.callCurrent(AbstractCallSite.java:179)
at com.sencha.gxt.themebuilder.TemplateGenerator$_generateDetailMethods_closure18.doCall(TemplateGenerator.groovy:258)
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 groovy.lang.MetaMethod.doMethodInvoke(MetaMethod.java:324)
at org.codehaus.groovy.runtime.metaclass.ClosureMetaClass.invokeMethod(ClosureMetaClass.java:292)
at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:1016)
at groovy.lang.Closure.call(Closure.java:423)
at groovy.lang.Closure.call(Closure.java:439)
at org.codehaus.groovy.runtime.DefaultGroovyMethods.each(DefaultGroovyMethods.java:2027)
at org.codehaus.groovy.runtime.DefaultGroovyMethods.each(DefaultGroovyMethods.java:2012)
at org.codehaus.groovy.runtime.DefaultGroovyMethods.each(DefaultGroovyMethods.java:2053)
at org.codehaus.groovy.runtime.dgm$162.invoke(Unknown Source)
at org.codehaus.groovy.runtime.callsite.PojoMetaMethodSite$PojoMetaMethodSiteNoUnwrapNoCoerce.invoke(PojoMetaMethodSite.java:271)
at org.codehaus.groovy.runtime.callsite.PojoMetaMethodSite.call(PojoMetaMethodSite.java:53)
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.TemplateGenerator.generateDetailMethods(TemplateGenerator.groovy:241)
at com.sencha.gxt.themebuilder.TemplateGenerator$generateDetailMethods$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.TemplateGenerator.generateThemeDetailsImpl(TemplateGenerator.groovy:191)
... 65 more
Caused by: com.sencha.gxt.themebuilder.config.shared.KeyNotFoundException: Can't resolve [headerLineHeight]
at com.sencha.gxt.themebuilder.config.shared.CfgObject.get(CfgObject.java:137)
at com.sencha.gxt.themebuilder.config.shared.CfgObject.get(CfgObject.java:133)
... 123 more
Caused by: com.sencha.gxt.themebuilder.config.shared.KeyNotFoundException: Can't resolve [headerLineHeight]
at com.sencha.gxt.themebuilder.config.shared.CfgObject.get(CfgObject.java:137)
at com.sencha.gxt.themebuilder.config.shared.CfgObject.get(CfgObject.java:133)
... 124 more
Caused by: com.sencha.gxt.themebuilder.config.shared.KeyNotFoundException: Can't resolve [headerLineHeight]
at com.sencha.gxt.themebuilder.config.shared.CfgObject.get(CfgObject.java:137)
at com.sencha.gxt.themebuilder.config.shared.CfgObject.get(CfgObject.java:133)
... 125 more
Caused by: com.sencha.gxt.themebuilder.config.shared.KeyNotFoundException: Can't resolve [headerLineHeight]
at com.sencha.gxt.themebuilder.config.shared.CfgObject.get(CfgObject.java:130)
at com.sencha.gxt.themebuilder.config.shared.CfgObject.get(CfgObject.java:133)
... 126 more

redCar
15 Dec 2015, 2:10 AM
First we used the themebuilder 3.1.1 with maven, whicht worked fine.

Now I wanted to generate a new theme for GXT 4.0.0:
I have copied an example theme file in my project and started the command
mvn -Pgenerate install
then I get this error:

java.lang.RuntimeException: com.sencha.gxt.themebuilder.config.shared.KeyNotFoundException: Can't resolve [headerLineHeight]
inside the .theme file I can find entries with
// header line height
headerLineHeight = "15px"

If I remove the headerLineHeight lines, I do get other errors.

It is also not working with themer.bat. Same error.


Do I anything wrong?

branflake2267
16 Dec 2015, 8:36 AM
Sorry one of our build scripts forgot to update the theme sample file with that that property.

This is the neptune theme. Use it as the guide to replace the missing property.


theme {
name = "neptune"
basePackage = "com.sencha.gxt.theme.neptune"


headerText {
color = "#ffffff"
family = "helvetica, arial, verdana, sans-serif"
size = "13px"
weight = "bold"
}


panelBackgroundColor = "#ffffff"


borderColor = "#157FCC"


details {
borderColor = theme.borderColor
backgroundColor = theme.panelBackgroundColor
disabledOpacity = 0.5
disabledTextColor = ""


button {
borderRadius = 4
border = util.border('solid', '#126DAF', 1)
overBorder = util.border('solid', '#126DAF', 1)
pressedBorder = util.border('solid', '#126DAF', 1)
// focusBoxShadow = "none"
radiusMinusBorderWidth = util.radiusMinusBorderWidth(border, borderRadius)
padding = util.padding(1);
arrowColor = "#ffffff"


backgroundColor = "#4B9CD7"
overBackgroundColor = "#4792C8"
pressedBackgroundColor = "#2A6D9E"
gradient = '#4B9CD7 0%, #3892D3 50%, #358AC8 51%, #3892D3'
overGradient = '#4792C8, #3386C2 50%, #307FB8 51%, #3386C2'
pressedGradient = '#2A6D9E, #276796 50%, #2A6D9E 51%, #3F7BA7'


font = util.fontStyle("helvetica,arial,verdana,sans-serif", '12px', '#FFFFFF', 'bold');
smallFontSize = 12
smallLineHeight = 18
mediumFontSize = 14
mediumLineHeight = 24
largeFontSize = 16
largeLineHeight = 32
}


buttonGroup {
borderRadius = 3
border = util.border('solid', '#dfeaf2', 3)
headerGradient = util.solidGradientString('#dfeaf2')


font = util.fontStyle("helvetica, arial, verdana, sans-serif", '13px', '#666666');
headerPadding = util.padding(2);


bodyPadding = util.padding(4);
bodyBackgroundColor = '#FFFFFF'
}


field {
backgroundColor = "#ffffff"
borderColor = "#c0c0c0"
borderWidth = 1
borderStyle = "solid"
emptyTextColor = "#808080"
focusBorderColor = "#3892d3"
height = 24
invalidBackgroundColor = "#ffffff"
invalidBorderColor = '#D94E37'
invalidBorderWidth = 1
lineHeight = "18px"
padding = util.padding(2, 6, 1, 6)
text = util.fontStyle("helvetica,arial,verdana,sans-serif", '13px', '#000000');
checkBox {
boxLabel = text;
padding {
bottom = 0
left = 19
right = 10
top = 0
}
}
radio {
boxLabel = text
padding {
bottom = 0
left = 19
right = 10
top = 0
}
}
slider {
trackHeight = 8
trackBorder = util.border('solid', "#d4d4d4", 1)
trackBackgroundColor = "#f5f5f5"
trackRadius = 4


thumbWidth = 15
thumbHeight = thumbWidth
thumbRadius = 8
thumbBorder = util.border("solid", "#777777", 1)
thumbBackgroundColor = "#f5f5f5"
}


sideLabel {
text = field.text
textAlign = 'left'
padding = util.padding(0, 0, 3)
labelPadding = util.padding(5, 5, 0, 0)
fieldPadding = util.padding(0)
}
topLabel {
text = field.text
textAlign = 'left'
padding = util.padding(0, 0, 5)
labelPadding = util.padding(6, 0, 0)
fieldPadding = util.padding(0)
}
}


datePicker {
border = util.border("solid", "#e1e1e1", 1)
backgroundColor = '#ffffff'


headerPadding = util.padding(8, 6)
headerBackgroundColor = "#f5f5f5"
headerText = util.fontStyle("helvetica,arial,verdana,sans-serif", '12px', '#3892d3', 'bold')
headerTextPadding = util.padding(0, 5)


dayOfWeekBackgroundColor = '#ffffff'
dayOfWeekText = util.fontStyle('helvetica,arial,verdana,sans-serif', '13px', '#000000', 'bold')
dayOfWeekLineHeight = '24px'
dayOfWeekPadding = util.padding(0, 9, 0, 0)


dayBorder = util.border('solid', '#ffffff', 1)
dayText = util.fontStyle('helvetica,arial,verdana,sans-serif', '13px', '#000000')
dayLineHeight = '23px'
dayPadding = util.padding(0, 3, 0, 0)


dayDisabledBackgroundColor = '#eeeeee'
dayDisabledText = util.extend(dayText, {
color = '#808080'
})


dayNextBackgroundColor = '#ffffff'
dayNextText = util.extend(dayText, {
color = '#bfbfbf'
})


dayPreviousBackgroundColor = '#ffffff'
dayPreviousText = dayNextText


itemOverBorder = util.border('solid', '#ffffff', 1)
itemOverColor = "#000000"
itemOverBackgroundColor = "#eaf3fa"


itemSelectedBorder = util.border('solid', '#3892d3', 1)
itemSelectedBackgroundColor = '#d6e8f6'
itemSelectedText = util.extend(dayText, {
weight = 'bold'
})


monthLeftButtonColor = "#ffffff"
monthLeftButtonOpacity = 1
monthLeftButtonMargin = util.margin(0, 0)
monthRightButtonColor = "#ffffff"
monthRightButtonMargin = util.margin(0, 0)
monthRightButtonOpacity = 1


todayBorder = util.border('solid', '#8b0000', 1)


footerPadding = util.padding(3, 0)
footerBackgroundColor = '#f5f5f5'


buttonMargin = util.margin(0, 3, 0, 2)


width = "212px"
}


panel {


font = util.extend(headerText, {
family = 'arial,helvetica,verdana,sans-serif'
})


border = util.border('none')


frameWidth = 0
frameHeight = 0




headerLineHeight = "15px"
headerPadding = util.padding(10);
padding = util.padding(0)


backgroundColor = panelBackgroundColor
headerBackgroundColor = "#157FCC"


headerGradient = util.solidGradientString('#157FCC')
}


framedPanel = util.extend(panel, {
borderRadius = 4
border = util.border('solid', theme.borderColor, 5)


headerLineHeight = "15px"
headerPadding = util.padding(util.abs(panel.headerPadding.top - borderRadius), panel.headerPadding.right, panel.headerPadding.bottom)
radiusMinusBorderWidth = util.radiusMinusBorderWidth(border, borderRadius)
})


window = util.extend(framedPanel, {
border = util.border('solid', '#3291d6', 5)
backgroundColor = "#ffffff"
headerGradient = util.solidGradientString("#3291d6")
headerLineHeight = "15px"
})


messagebox {
text = util.fontStyle('helvetica,arial,verdana,sans-serif', '13px')
messagePadding = util.padding(10, 10, 5)
bodyPadding = util.padding(5, 10, 10)
iconPadding = util.padding(10)
}


borderLayout {
panelBackgroundColor = "#3892D3"
collapsePanelBackgroundColor = "#157FCC"
collapsePanelBorder = util.border('solid', theme.borderColor, 1)
}
splitbar {
dragColor = "#B4B4B4"
handleOpacity = 0.5
handleWidth = 8
handleHeight = 48
}

accordionLayout = util.extend(panel, {
headerGradient = util.solidGradientString("#DFEAF2")
headerBackgroundColor = "#DFEAF2"
headerBarMargin = util.margin(0)
headerPadding = util.padding(8, 10)
font = util.extend(headerText, {
color = '#666666'
})
panelPadding {
bottom = 1
left = 0
right = 0
top = 0
}
firstPanelPadding = panelPadding
border = util.border('solid', '#ffffff', 0, 0, 1)
})


fieldset {
backgroundColor = "#f6f6f6"
text = util.fontStyle('helvetica,arial,verdana,sans-serif', '13px')
border = util.border('solid', '#b5b8c8', 1)


legendPadding = util.padding(5)
padding = util.padding(5)
collapseIconColor = tools.primaryColor
collapseOverIconColor = tools.primaryOverColor
expandIconColor = collapseIconColor
expandOverIconColor = collapseOverIconColor


}


toolbar {
backgroundColor = "#ffffff"
gradient = util.solidGradientString("#ffffff")
border = util.border('none')
padding = util.padding(3)


buttonOverride = util.extend(theme.details.button, {
border = util.border('solid', '#cecece', 1)
overBorder = util.border('solid', '#cecece', 1)
pressedBorder = util.border('solid', '#cecece', 1)


arrowColor = "#666666"
// focusBoxShadow = "none"


backgroundColor = "#F6F6F6"
overBackgroundColor = "#EDEDED"
pressedBackgroundColor = "#E1E1E1"
gradient = '#F6F6F6 0%, #F5F5F5 50%, #E8E8E8 51%, #F5F5F5 100%'
overGradient = '#EDEDED 0%, #EBEBEB 50%, #DFDFDF 51%, #EBEBEB 100%'
pressedGradient = '#E1E1E1 0%, #D5D5D5 50%, #E1E1E1 51%, #E4E4E4 100%'


font = util.fontStyle("helvetica,arial,verdana,sans-serif", '12px', '#666666', 'bold');
})
htmlEditorIconColor = "#666666"


labelItem {
text = field.text
lineHeight = '17px'
padding = util.padding(2, 2, 0)
}
separatorBorder {
bottom = 0
color = "#d0d0d0"
left = 0
right = 0
style = "solid"
top = 0
}
separatorHeight = 16
}
status {
text = util.fontStyle('helvetica,arial,verdana,sans-serif', '12px', '#000000')
lineHeight = '16px'
padding = util.padding(0, 5)
border = util.border('solid', '#cccccc #d9d9d9 #d9d9d9', 1)
}


tools {
primaryColor = util.mixColors("#ffffff", "#157FCC", 0.5)
primaryOpacity = 1
primaryOverColor = util.mixColors("#ffffff", "#157FCC", 0.3)
primaryOverOpacity = 1
primaryClickColor = util.mixColors("#ffffff", "#157FCC", 0.25)
primaryClickOpacity = 1
warningColor = "#D94E37"
allowColor = "#C6E38A"


tabs {
tabCloseOver = "#ffffff"
}
}


tabs {
activeHeadingText = util.extend(headingText, {
color = "#027dce"
})
activeTabItemBackgroundColor = "#add2ed"
activeTabItemBorderBottom = "1px"
activeTabItemBorderTop = "1px"
activeTabItemMarginBottom = "-1px"


activeTabCloseIconOpacity = 0.8
activeTabCloseOverIconOpacity = 1
tabCloseIconOpacity = 0.6
tabCloseOverIconOpacity = 1


borderRadius = 3
borderColor = "#037ecf"
bodyBackgroundColor = "#ffffff"
closeIconWidth = 11
gradient = util.solidGradientString("#add2ed")
headingColor = "#1C94C4"
headingText = util.extend(theme.headerText, {
color = "#ffffff"
})
hoverGradient = util.solidGradientString("#5fa7db")
hoverHeadingText = headingText
hoverTabItemBackgroundColor = "#5fa7db"
iconLeftOffset = 6
iconTopOffset = 5
iconWidth = 16
inactiveGradient = util.solidGradientString("#4b9cd7")
inactiveLastStopColor = "#4b9cd7"
inactiveTabItemBackgroundColor = "#4b9cd7"
lastStopColor = "#add2ed"
overTabItemBorderBottom = "1px"
overTabItemBorderTop = "1px"
overTabItemOpacity = 1
padding = util.padding(10)
paddingWithClosable = util.padding(padding.right + closeIconWidth - 2)
paddingWithIcon = util.padding(padding.left + iconWidth/2)
plainActiveHeadingText = activeHeadingText
plainHeadingText = headingText
plainHoverHeadingText = hoverHeadingText
plainTabBarBorderBottom = 1
plainTabBarBorderTop = 1
plainTabStripSpacerBorder = 1
plainTabStripSpacerHeight = 2
scrollerBackgroundColor = "#007cd1"
scrollerLeftDisabledOpacity = 0.7
scrollerLeftOverOpacity = 0.7
scrollerRightDisabledOpacity = 0.7
scrollerRightOverOpacity = 0.7
scrollerWidth = 18
tabHeight = 31
tabBarBorder = "none"
tabBarBottomHeight = 4
tabBodyBorder = "none"
tabItemBorderBottom = "none"
tabItemBorderLeft = "none"
tabItemBorderTop = "none"
tabItemBorderRight = "none"
tabSpacing = 1
tabStripBottomBorder = "none"
tabStripBackgroundColor = "#037ecf"
tabStripGradient = util.solidGradientString('#037ecf')
tabStripPadding = util.padding(0)
tabStripTopBorder = "none"
tabTextPadding = util.padding(10, 0)
}


tree {
checkboxMargin = util.margin(4, 3, 0, 2)


dragOverBackgroundColor = '#e2eff8'


dropBackgroundColor = '#e2eff8'


iconMargin = util.margin(0, 3, 0, 2)


itemHeight = '25px'


nodePadding = util.padding(0, 6, 0, 3)


overBackgroundColor = '#e2eff8'


selectedBackgroundColor = '#c1ddf1'


text = util.fontStyle('helvetica,arial,verdana,sans-serif', '13px', '#000000')
}


info {
backgroundColor = "#ffffff"
borderRadius = 8
opacity = 1.0
border = util.border('solid', '#cccccc', 2)
radiusMinusBorderWidth = util.radiusMinusBorderWidth(border, borderRadius)
headerPadding = util.padding(0,0,8,0)
headerText = util.fontStyle("Tahoma, Arial, Verdana, sans-serif", '15px', '#555555', 'bold');
messagePadding = util.padding(0)
messageText = util.fontStyle("Tahoma, Arial, Verdana, sans-serif", '14px', '#555555');
margin = util.margin(2,0,0,0)
padding = util.padding(2,7)
}
tip {
backgroundColor = "#eaf3fa"
borderRadius = 3
opacity = 1
border = util.border('solid', '#e1e1e1', 1)
radiusMinusBorderWidth = util.radiusMinusBorderWidth(border, borderRadius)
headerPadding = util.padding(0)
headerText = util.fontStyle("Tahoma, Arial, Verdana, sans-serif", '12px', '#000000', 'bold');
messagePadding = util.padding(0,0,0)
messageText = util.fontStyle("Tahoma, Arial, Verdana, sans-serif", '12px');
margin = util.margin(0)
padding = util.padding(3)
}
errortip = tip


grid {
bodyBorder {
bottom = 0
color = "#d0d0d0"
left = 0
right = 0
style = "solid"
top = 0
}
columnHeader {
backgroundColor = '#f5f5f5'
borderWidth = 1
borderColor = '#c0c0c0'
borderStyle = 'solid'
gradient = '#f5f5f5 0%, #f5f5f5 100%'
overBackgroundColor = '#eef6fb'
overGradient = '#eef6fb 0%, #eef6fb 100%'


text = util.fontStyle('helvetica,arial,verdana,sans-serif', '13px', '#666666', 'bold')
padding = util.padding(7, 10)
lineHeight = "15px"


menuButtonWidth = 18


menuBackgroundColor = '#f5f5f5'
menuGradient = gradient
menuBorder = util.border('solid', '#c0c0c0', 0,0,0,1)
menuHoverBackgroundColor = '#eef6fb'
menuHoverGradient = overGradient
menuHoverBorder = menuBorder
menuActiveBackgroundColor = '#DFEAF2'
menuActiveGradient = "#DFEAF2 0%, #DFEAF2 100%"
menuActiveBorder = menuBorder
}


cellPadding = util.padding(5,10,4)
cellText = util.fontStyle('helvetica,arial,verdana,sans-serif', '13px', '#000000')
cellLineHeight = "15px"
cellVBorderColor = '#ededed'
cellHBorderColor = '#ededed'
cellBorderWidth = 1
cellBackgroundColor = '#ffffff'
cellAltBackgroundColor = '#fafafa'


cellOverVBorderColor = '#ededed'
cellOverVBorderStyle = 'solid'
cellOverHBorderColor = '#e2eff8'
cellOverHBorderStyle = 'solid'


cellOverBackgroundColor = '#e2eff8'


cellSelectedVBorderColor = '#ededed'
cellSelectedVBorderStyle = 'solid'
cellSelectedHBorderColor = '#e2eff8'
cellSelectedHBorderStyle = 'solid'


cellSelectedBackgroundColor = '#c1ddf1'


specialColumnGradient = ""
specialColumnGradientSelected = ""


group {
backgroundColor = '#f5f5f5'
border = util.border('solid', '#c0c0c0', 0, 0, 1)
text = columnHeader.text
padding = util.padding(8, 4)
iconSpacing = 11 + 6 // icon is 11px wide, plus 6px padding
summary {
text = util.extend(columnHeader.text, {
color = '#000000'
})
backgroundColor = '#ffffff'
}
}


rowNumberer {
text = util.fontStyle('helvetica,arial,verdana,sans-serif', '13px', '#000000')
padding = util.padding(5,3,4)
}


rowEditor {
backgroundColor = '#DFEAF2'
border = util.border('solid', '#e1e1e1', 1, 0);
}


footer {
text = util.fontStyle('helvetica,arial,verdana,sans-serif', '13px', '#000000', 'bold')
backgroundColor = '#ffffff'
cellBorder = util.border('solid', '#ededed', 1, 0, 0)
}
}
listview {
text = util.fontStyle('helvetica, arial, verdana, sans-serif','13px');
lineHeight = '22px'
backgroundColor = '#ffffff'
border = util.border('solid', '#e1e1e1', 1)


item {
backgroundColor = "#ffffff"
padding = util.padding(0,6)
border = util.border('none')
gradient = util.solidGradientString('#ffffff')
}


overItem {
backgroundColor = "#d6e8f6"
padding = util.padding(0,6)
border = util.border('none')
gradient = util.solidGradientString('#d6e8f6')
}


selectedItem {
backgroundColor = "#c1ddf1"
padding = util.padding(0,6)
border = util.border('none')
gradient = util.solidGradientString('#c1ddf1')
}
}
menu {
backgroundColor = "#ffffff"
border = util.border('solid', '#e1e1e1', 1)
padding = util.padding(0)
gradient = util.solidGradientString('#ffffff')
lastGradientColor = '#ffffff'


itemText = util.fontStyle('helvetica,arial,verdana,sans-serif', '13px')
itemLineHeight = '24px'
itemPadding = util.padding(0)


activeItemText = itemText
activeItemBackgroundColor = '#d6e8f6'
activeItemGradient = util.solidGradientString('#d6e8f6')
activeItemBorder = util.border('none')


bar {
backgroundColor = menu.backgroundColor
border = util.border('none')
padding = util.padding(0)
gradient = menu.gradient




itemText = menu.itemText
itemLineHeight = menu.itemLineHeight
itemPadding = util.padding(1, 8)


hoverItemText = itemText
hoverItemBackgroundColor = menu.activeItemBackgroundColor
hoverItemGradient = menu.activeItemGradient
hoverItemBorder = util.border('none')


activeItemText = itemText
activeItemBackgroundColor = menu.activeItemBackgroundColor
activeItemGradient = menu.activeItemGradient
activeItemBorder = util.border('none')
}


scrollerHeight = 8
separator {
height = 1
margin = util.margin(2, 3)
color = '#e1e1e1'
}


header {
border = util.border('solid', '#99bbe8', 0, 0, 1)
backgroundColor = '#D6E3F2'


itemText = util.fontStyle('tahoma,arial,verdana,sans-serif', '10px', '#15428b', 'bold')
itemLineHeight = '13px'


itemPadding = util.padding(3)
}
}
mask {
opacity = 0.7
backgroundColor = '#ffffff'
box {
padding = util.padding(5)
borderColor = ''
borderStyle = 'none'
borderWidth = 0
borderRadius = 3
radiusMinusBorderWidth = util.max(0, borderRadius - borderWidth)
backgroundColor = '#e5e5e5'
text = util.fontStyle('helvetica, arial, verdana, sans-serif', '13px', '#666666')
textPadding = util.padding(21, 0, 0)
loadingImagePosition = 'center 0'
}
}
progressbar {
border = util.border('none')
text = util.fontStyle('helvetica, arial, verdana, sans-serif', '13px', '#666666', 'bold')
backgroundGradient = ''//transparent
textPadding = util.padding(3, 0)
textAlign = 'center'
barTextColor = text.color
barGradient = util.solidGradientString('#c1ddf1')
barBorder = util.border('none')
}


statusproxy {
text = util.fontStyle('helvetica,arial,verdana,sans-serif', '13px')
border = util.border('solid', '#dddddd #bbbbbb #bbbbbb #dddddd', 1)
backgroundColor = '#ffffff'
opacity = 0.85
}
colorpalette {
itemSize = 16
itemPadding = util.padding(2)
backgroundColor = '#ffffff'
itemBorder = util.border('solid', '#e1e1e1', 1)
selectedBackgroundColor = '#e6e6e6'
selectedBorder = util.border('solid', '#8bb8f3', 1)
}
}
}




Would that help?

gishmo
22 Dec 2015, 2:41 AM
Thnaks Brandon, that one works.

margozzi
2 Mar 2016, 12:01 PM
I have the same issue. I have headerLineHeight in the same three places that the Neptune theme above does. What exactly is the problem? Or what was your resolution?

branflake2267
3 Mar 2016, 10:25 AM
The properties are missing in the skeleton config. The build server didn't perform a step and update the example configurations during the release build. There may be as many as 30 missing properties in the seketon-config file. This has been fixed in 4.0.1. To fix it, each property would have to be added to the config file.

I suggest copying the neptune or triton theme configuration files.