/*\r
* pettanR system.js\r
- * version 0.5.5\r
+ * version 0.5.6\r
* \r
* \r
* Type\r
getChildIndex: function( _parent, _child ){\r
var _children = _parent.getElementsByTagName( _child.tagName ),\r
l = _children.length;\r
- for(var i=0; i<l; ++i){\r
- if( _children[ i] === _child) return i;\r
- }\r
+ for( var i=0; i<l; ++i ){\r
+ if( _children[ i ] === _child ) return i;\r
+ };\r
return -1;\r
},\r
- hasClassName: function( _elm, _className){\r
- var _classes = ( _elm.className || '').split( ' ');\r
- for( var i=0, l=_classes.length; i<l; ++i){\r
- if( _classes[ i] === _className) return true;\r
- }\r
- return false;\r
+ hasClassName: function( _elm, _className ){\r
+ return Util.getIndex( ( _elm.className || '' ).split( ' ' ), _className ) !== -1;\r
+ },\r
+ addClass: function( _elm, _className ){\r
+ if( Util.hasClassName( _elm, _className ) === false ){\r
+ var sp = ' ';\r
+ var _array = ( _elm.className || '' ).replace( /\s+/g, sp ).split( sp );\r
+ _array.push( _className );\r
+ _elm.className = _array.join( sp );\r
+ };\r
+ },\r
+ removeClass: function( _elm, _className ){\r
+ var sp = ' ',\r
+ _array = _elm.className.replace( /\s+/g, sp ).split( sp ),\r
+ i = Util.getIndex( _array, _className );\r
+ if( i !== -1 ){\r
+ _array.splice( i, 1 );\r
+ _elm.className = _array.join( sp );\r
+ };\r
+ },\r
+ toggleClass: function( _elm, _className ){\r
+ Util.hasClassName( _elm, _className ) === false ? Util.addClass( _elm, _className ) : Util.removeClass( _elm, _className );\r
},\r
removeAllChildren: function ( _elm){\r
while( _elm.firstChild){\r
/*\r
* \r
*/\r
- createGlobalFunction: function( _func ){\r
- var randomKey = null;\r
- while( true) {\r
- randomKey = '_glovalFunction_' + ( '' + Math.random()).replace( /\./,'');\r
- if( eval( 'typeof '+randomKey) === 'undefined') {\r
- break;\r
- }\r
- }\r
- window[ randomKey ] = _func;\r
- return randomKey;\r
- },\r
- createGlobalFunc: function( func){\r
- var randomKey = null;\r
- while(true) {\r
- randomKey = 'hogeGlovalFunc_'+(''+Math.random()).replace(/\./,'');\r
- if(eval('typeof '+randomKey) == 'undefined') {\r
- break;\r
- }\r
- }\r
- eval(randomKey+'='+((typeof func=='string') ? func : func.toString()));\r
- return randomKey;\r
- },\r
- createGlobalVar: function( obj){\r
- var randomKey = null;\r
- while(true) {\r
- randomKey = 'hogeGlovalVar_'+(''+Math.random()).replace(/\./,'');\r
- if(eval('typeof '+randomKey+'') == 'undefined') {\r
- break;\r
- }\r
- }\r
- var globalObj = eval(randomKey+'={}');\r
- globalObj.value = obj;\r
- return randomKey;\r
- },\r
createGlobalUniqueName: function(){\r
var randomKey = null;\r
while(true) {\r
};\r
\r
function onOpen(){\r
+ self.rootElement.style.display = '';\r
+ \r
if( self.MIN_WIDTH > _w || self.MIN_HEIGHT > _h ){\r
if( Type.isHTMLElement( self.rootElement ) === true ){\r
// 小さすぎる!、と表示\r
if( currentApplication ){\r
if( currentApplication.getUID() === uid ) return null;\r
if( isOverlay === false && currentApplication.close() === false ) return null;\r
- }\r
+ };\r
\r
appClass.prototype = new AbstractApplication( displayName, appClass, isOverlay );\r
var application = new appClass(); // new は boot で\r
body.style.backgroundColor = application.bgColor;\r
\r
body.appendChild( application.rootElement );\r
+ application.rootElement.style.display = 'none';\r
application.init();\r
\r
application.addAsyncCall( asyncOpen, arg );\r
\r
//body.appendChild( application.rootElement );\r
elmContainer.insertBefore( application.rootElement, elmCloseButton );\r
+ application.rootElement.style.display = 'none';\r
application.init();\r
- \r
- \r
};\r
function asyncOpen( /* arguments */ ){\r
\r
}\r
\r
var ButtonClass = function( apiuser, uiGroup, elmWrapper, onUpdate ){\r
- var className = elmWrapper.className || '',\r
- instance = this,\r
- focus = false,\r
- visible = true,\r
- enabled = true;\r
+ var instance = this,\r
+ focus = false,\r
+ visible = true,\r
+ enabled = true;\r
MouseEvent.add( apiuser, elmWrapper, 'click', onClick );\r
\r
function onClick(){\r
};\r
this.focus = function(){\r
focus = true;\r
- elmWrapper.className = className + ' button-has-focus';\r
+ Util.addClass( elmWrapper, 'button-has-focus' );\r
start( apiuser, uiGroup, instance );\r
};\r
this.blur = function( keyCode ){\r
keyCode === 13 && onClick();\r
- elmWrapper.className = className;\r
+ Util.removeClass( elmWrapper, 'button-has-focus' );\r
focus = false;\r
finish( apiuser, uiGroup, instance );\r
};\r
- this.enabled = function(){\r
+ this.enabled = function( _enabled ){\r
+ if( Type.isBoolean( _enabled ) === true && enabled !== _enabled ){\r
+ _enabled === true ? Util.removeClass( elmWrapper, 'button-disabled' ) : Util.addClass( elmWrapper, 'button-disabled' );\r
+ enabled = _enabled;\r
+ };\r
return enabled;\r
};\r
this.visible = function( _visible ){\r