rsence-pre 3.0.0.5 → 3.0.0.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/VERSION +1 -1
- data/client/conf/client_pkg.yaml +8 -8
- data/client/js/chat/speech_bubble/themes/default/speech_bubble.css +3 -3
- data/client/js/controls/button/button.coffee +45 -0
- data/client/js/controls/button/themes/default/button.css +39 -72
- data/client/js/controls/button/themes/default/button.html +14 -4
- data/client/js/controls/checkbox/checkbox.js +9 -8
- data/client/js/controls/checkbox/themes/default/checkbox.css +1 -1
- data/client/js/controls/checkbox/themes/default/checkbox.html +1 -0
- data/client/js/controls/clickbutton/clickbutton.coffee +44 -0
- data/client/js/controls/onoffbutton/themes/default/onoffbutton.css +20 -19
- data/client/js/controls/onoffbutton/themes/default/onoffbutton.html +1 -4
- data/client/js/controls/radiobutton/themes/default/radiobutton.css +1 -1
- data/client/js/controls/radiobutton/themes/default/radiobutton.html +1 -0
- data/client/js/controls/searchfield/searchfield.coffee +1 -1
- data/client/js/controls/searchfield/themes/default/searchfield.css +1 -1
- data/client/js/controls/stringview/themes/default/stringview.css +1 -1
- data/client/js/controls/tab/tab.js +17 -17
- data/client/js/controls/tab/themes/default/tab.css +16 -16
- data/client/js/controls/tab/themes/default/tab.html +1 -1
- data/client/js/controls/textarea/textarea.js +1 -1
- data/client/js/controls/textarea/themes/default/textarea.css +1 -1
- data/client/js/controls/textcontrol/themes/default/textcontrol.css +1 -2
- data/client/js/controls/uploader/themes/default/uploader.css +10 -62
- data/client/js/controls/uploader/themes/default/uploader.html +31 -25
- data/client/js/controls/uploader/uploader.coffee +10 -7
- data/client/js/controls/window/themes/default/window.css +2 -4
- data/client/js/core/elem/elem.coffee +4 -4
- data/client/js/core/event/event.js +11 -11
- data/client/js/datetime/calendar/themes/default/calendar.css +3 -3
- data/client/js/foundation/eventmanager/eventmanager.coffee +44 -1
- data/client/js/foundation/thememanager/thememanager.coffee +30 -17
- data/client/js/foundation/view/view.js +194 -192
- data/client/js/menus/menuitem/themes/default/menuitem.css +1 -1
- data/client/js/menus/minimenu/themes/default/minimenu.css +1 -1
- data/client/js/menus/minimenuitem/themes/default/minimenuitem.css +1 -1
- data/client/js/menus/popupmenu/themes/default/popupmenu.css +1 -1
- data/plugins/client_pkg/lib/client_pkg_build.rb +54 -53
- data/plugins/main/tmpl/index.html +1 -1
- metadata +4 -5
- data/client/js/controls/button/button.js +0 -78
- data/client/js/controls/button/themes/default/button_parts1.png +0 -0
- data/client/js/foundation/view/markupview/markupview.js +0 -95
@@ -1,16 +1,16 @@
|
|
1
1
|
HThemeManager = HClass.extend
|
2
|
-
|
2
|
+
|
3
3
|
allInOneCSS: true # temporary solution until new theme is crafted
|
4
4
|
|
5
5
|
currentTheme: 'default'
|
6
6
|
|
7
7
|
constructor: null
|
8
|
-
|
8
|
+
|
9
9
|
# Properties by theme name
|
10
10
|
currentThemePath: null
|
11
11
|
themePaths: {}
|
12
12
|
themes: []
|
13
|
-
|
13
|
+
|
14
14
|
# Set the graphics loading path of the the themeName
|
15
15
|
setThemePath: (_clientPrefix)->
|
16
16
|
@currentThemePath = _clientPrefix
|
@@ -31,20 +31,20 @@ HThemeManager = HClass.extend
|
|
31
31
|
_clientThemePath = [ @currentThemePath, _themeName ].join('/') + '/gfx/'
|
32
32
|
@themePaths[_themeName] = _clientThemePath
|
33
33
|
@setupAllInOneCSS(_themeName) if @allInOneCSS
|
34
|
-
|
34
|
+
|
35
35
|
# CSS Templates and CSS Template methods per theme name
|
36
36
|
themeCSSTemplates: {}
|
37
37
|
|
38
38
|
# Sets the css template data per theme, all at once
|
39
39
|
setThemeCSSTemplates: (_themeName, _themeCSS)->
|
40
|
-
@themeCSSTemplates[_themeName] = _themeCSS
|
40
|
+
@themeCSSTemplates[_themeName] = _themeCSS
|
41
41
|
|
42
42
|
# HTML Templates and HTML Template methods per theme name
|
43
43
|
themeHTMLTemplates: {}
|
44
44
|
|
45
45
|
# Sets the css template data per theme, all at once
|
46
46
|
setThemeHTMLTemplates: (_themeName, _themeHTML)->
|
47
|
-
@themeHTMLTemplates[_themeName] = _themeHTML
|
47
|
+
@themeHTMLTemplates[_themeName] = _themeHTML
|
48
48
|
|
49
49
|
# Set the theme data, this is called by the serverside client_pkg suite
|
50
50
|
installThemeData: (_themeName, _themeCSS, _themeHTML)->
|
@@ -90,8 +90,6 @@ HThemeManager = HClass.extend
|
|
90
90
|
return ''
|
91
91
|
return '' unless @themeHTMLTemplates[_themeName][_componentName]?
|
92
92
|
[_tmplJS, _tmplHTML] = @themeHTMLTemplates[_themeName][_componentName]
|
93
|
-
# console.log( 'tmplJS:', _tmplJS )
|
94
|
-
# console.log( 'tmplHTML:', _tmplHTML )
|
95
93
|
_rect = _view.rect
|
96
94
|
_callArgs = [_view.elemId.toString(), _rect.width, _rect.height]
|
97
95
|
_tmplHTML = _tmplHTML.replace(/\]I\[/g,_callArgs[0]).replace(/\]W\[/g,_callArgs[1]).replace(/\]H\[/g,_callArgs[2])
|
@@ -116,6 +114,16 @@ HThemeManager = HClass.extend
|
|
116
114
|
# console.log('tmplHTML:',_tmplHTML) if _componentName == 'tab'
|
117
115
|
return _tmplHTML
|
118
116
|
|
117
|
+
gradientCSS: ->
|
118
|
+
_colors = []
|
119
|
+
_colors.push( _color ) for _color in arguments
|
120
|
+
_gradient = ELEM._linearGradientCSS(
|
121
|
+
start: _colors.shift()
|
122
|
+
end: _colors.pop()
|
123
|
+
steps: _colors
|
124
|
+
)
|
125
|
+
# console.log(_gradient)
|
126
|
+
return _gradient
|
119
127
|
buildCSSTemplate: ( _context, _themeName, _componentName )->
|
120
128
|
unless @themeCSSTemplates[_themeName]?
|
121
129
|
console.log('Theme not installed:',_themeName)
|
@@ -124,8 +132,6 @@ HThemeManager = HClass.extend
|
|
124
132
|
[_tmplJS, _tmplCSS] = @themeCSSTemplates[_themeName][_componentName]
|
125
133
|
return _tmplCSS if _tmplJS.length == 0
|
126
134
|
[_variableMatch, _assignmentMatch] = [@_variableMatch, @_assignmentMatch]
|
127
|
-
# console.log( 'tmplJS:', _tmplJS )
|
128
|
-
# console.log( 'tmplCSS:', _tmplCSS )
|
129
135
|
@getThemeGfxFile = (_fileName)-> @_buildThemePath(_fileName,_themeName)
|
130
136
|
@getCssFilePath = (_fileName)->
|
131
137
|
"url(#{@_buildThemePath(_fileName,_themeName)})"
|
@@ -145,7 +151,6 @@ HThemeManager = HClass.extend
|
|
145
151
|
_tmplCSS = _tmplCSS.replace( _variableMatch, _callValue( RegExp.$1 ) )
|
146
152
|
delete @getCssFilePath
|
147
153
|
delete @getThemeGfxFile
|
148
|
-
# console.log('tmplCSS:',_tmplCSS)
|
149
154
|
return _tmplCSS
|
150
155
|
|
151
156
|
resourcesFor: (_view, _themeName, _noHTML)->
|
@@ -166,7 +171,7 @@ HThemeManager = HClass.extend
|
|
166
171
|
for _ancestor in _view.ancestors
|
167
172
|
break unless _ancestor.componentName?
|
168
173
|
@resourcesFor( _ancestor, _themeName, true )
|
169
|
-
|
174
|
+
@buildHTMLTemplate( _view, _themeName, _componentName )
|
170
175
|
|
171
176
|
freeResourcesFor: (_view, _themeName, _noRecursion)->
|
172
177
|
_themeName = @currentTheme unless _themeName?
|
@@ -178,26 +183,34 @@ HThemeManager = HClass.extend
|
|
178
183
|
break unless _ancestor.componentName?
|
179
184
|
@freeResourcesFor( _ancestor, _themeName )
|
180
185
|
|
186
|
+
_ieActiveCssRe: /\.([_a-zA-Z0-9]+?)\:active/gm
|
187
|
+
_ieActiveCssClassMatch: []
|
188
|
+
_ieActivePatch: (_cssText)->
|
189
|
+
_ieActiveCssClassMatch = @_ieActiveCssClassMatch
|
190
|
+
_cssText.replace( @_ieActiveCssRe, (_all,_class)->
|
191
|
+
_ieActiveCssClassMatch.push(_class)
|
192
|
+
".#{_class}.ieActive"
|
193
|
+
)
|
194
|
+
|
181
195
|
# Creates a new cascading style sheet element and set its content with css. Returns the element.
|
182
196
|
useCSS: (_cssText)->
|
183
197
|
if BROWSER_TYPE.ie
|
184
|
-
# Internet Explorer (at least 6.x; check what 7.x does)
|
185
198
|
_style = document.createStyleSheet()
|
186
|
-
_style.cssText = _cssText
|
199
|
+
_style.cssText = @_ieActivePatch(_cssText)
|
187
200
|
else
|
188
201
|
# Common, standard <style> tag generation in <head>
|
189
202
|
_style = document.createElement('style')
|
190
203
|
_style.type = 'text/css'
|
191
204
|
_style.media = 'all'
|
192
|
-
|
205
|
+
|
193
206
|
_head = document.getElementsByTagName('head')[0]
|
194
|
-
|
195
|
-
|
207
|
+
|
196
208
|
if BROWSER_TYPE.safari
|
197
209
|
# This is how to do it in KHTML browsers
|
198
210
|
_style.appendChild( document.createTextNode(_cssText) )
|
199
211
|
else
|
200
212
|
# This works for others (add more checks, if problems with new browsers)
|
201
213
|
_style.textContent = _cssText
|
214
|
+
_head.appendChild(_style)
|
202
215
|
|
203
216
|
_style
|