FileAPI.createFolderUnderRoot( FILE_DATA_SERVICE_ROOT );
Driver.isPettanrFileInstance = function( _file ){
- if( FileAPI.isFileInstance( _file ) === true){
- var _data = FileAPI.getFileData( _file);
+ if( FileAPI.isFileInstance( _file ) === true ){
+ var _data = FileAPI.getFileData( _file.getUID() );// _file でなく _file.getUID()
return _data !== null && _data.driver === Driver;
}
return false;
self = this;
function clickOK(){
- textElement && textElement.text( elmTextarea.val() );
+ textElement && textElement.text( elmTextarea.value );
self.addAsyncCall( asyncCallback );
}
var panelW, panelH,
borderSize,
fileData, panelElements, panelElm;
-
+
if( FileAPI.isFileInstance( _file ) === true ){
if( Driver.isPettanrFileInstance( _file ) === true ){
if( _file.getType() === FILE_TYPE.COMIC ){
comicID = fileData.comic ? fileData.comic.id || -1 : -1;
panelID = fileData.id || -1;
panelTimming = fileData.t || -1;
- if( Type.isArray( panelElements ) === true ){
- for( var i=0; i<panelElements.length; ++i ){
- panelElm = panelElements[ i ];
- if( panelElm.resource_picture ){
- PANEL_ELEMENT_CONTROL.createImageElement( panelElm );
- } else
- if( panelElm.balloon_template_id ){
- PANEL_ELEMENT_CONTROL.createTextElement( panelElm );
- };
- };
- };
};
} else {
-
};
+ } else {
};
HISTORY_CONTROL.open();
windowH = _h;
self.onPaneResize( _w, _h );
+
+ if( Type.isArray( panelElements ) === true ){
+ for( var i=0; i<panelElements.length; ++i ){
+ panelElm = panelElements[ i ];
+ if( panelElm.resource_picture ){
+ PANEL_ELEMENT_CONTROL.createImageElement( panelElm );
+ } else
+ if( panelElm.balloon_template_id ){
+ PANEL_ELEMENT_CONTROL.createTextElement( panelElm );
+ };
+ };
+ };
+
/*
* centering
*/
self.addKeyEventListener( 'keydown', centering, 96, false, true ); // ctrl + 0
- self.addKeyEventListener( 'krydown, centering', 48, false, true ); // ctrl + 0
+ self.addKeyEventListener( 'krydown', centering, 48, false, true ); // ctrl + 0
MENU_BAR_CONTROL.EDIT.createOption( 'centering', 'ctrl + 0', centering, true, true, true);
/*
* jqMouseEventChacher は透明な要素で、
( function( window, undefined ){\r
\r
var doc = window.document;\r
- var body = ( doc.compatMode || '' ) !== 'CSS1Compat' ? doc.body : doc.documentElement;// doc.getElementsByTagName( 'body' )[ 0 ]; //\r
+ var body = doc.getElementsByTagName( 'body' )[ 0 ]; //( doc.compatMode || '' ) !== 'CSS1Compat' ? doc.body : doc.documentElement;// \r
\r
var SERVICE_LIST = [];\r
var SUPER_USER_KEY = { getUID: function(){ return 0; }};\r
}\r
\r
var uid = Util.getIndex( FILEDATA_RESITER, FILEDATAorFILE );\r
- if( uid === -1){\r
+ if( uid === -1 ){\r
uid = FILEDATA_RESITER.length;\r
FILEDATA_RESITER.push( FILEDATAorFILE );\r
}\r
return uid;\r
},\r
getFileDataAccess: function( UIDorFILEorFILEDATA ){\r
- var _uid, _data, _access;\r
- \r
- if( typeof UIDorFILEorFILEDATA === 'number' ){\r
- _data = FILEDATA_RESITER[ UIDorFILEorFILEDATA ] || null;\r
- } else\r
- if( UIDorFILEorFILEDATA instanceof FileClass ){\r
- _uid = UIDorFILEorFILEDATA.getUID();\r
- _data = FILEDATA_RESITER[ _uid ] || null;\r
- } else {\r
- _data = UIDorFILEorFILEDATA || null;\r
- }\r
- \r
+ var _uid, _data = FILE_CONTROLER.getFileData( UIDorFILEorFILEDATA ), _access;\r
+\r
if( _data === null || typeof _data !== 'object' ) return null;\r
for( var i=0, l = FILEDATA_ACCESS.length; i<l; ++i ){\r
_access = FILEDATA_ACCESS[ i ];\r
if( _access.DATA === _data ) return _access;\r
- }\r
+ };\r
return null;\r
}, \r
getFileData: function( UIDorFILEorFILEDATA ){\r
- var _access = FILE_CONTROLER.getFileDataAccess( UIDorFILEorFILEDATA );\r
- return _access !== null ? _access.DATA : null;\r
+ if( typeof UIDorFILEorFILEDATA === 'number' ){\r
+ return FILEDATA_RESITER[ UIDorFILEorFILEDATA ] || null;\r
+ } else\r
+ if( UIDorFILEorFILEDATA instanceof FileClass ){\r
+ return FILEDATA_RESITER[ UIDorFILEorFILEDATA.getUID() ] || null;\r
+ } else\r
+ if( Util.getIndex( FILEDATA_RESITER, UIDorFILEorFILEDATA ) !== -1 ){\r
+ return UIDorFILEorFILEDATA;\r
+ }\r
+ return null;\r
},\r
getChildren: function( UIDorFILEorFILEDATA ){\r
var _data = FILE_CONTROLER.getFileData( UIDorFILEorFILEDATA );\r
var _currentFile = currentFile;\r
currentFile = null;\r
_currentFile.destroy();\r
- }\r
+ };\r
if( typeof _index === 'number'){\r
if( _index >= l) return null;\r
currentFile = this.getParentFileAt( _index );\r
PARENT_FILE_RESITER.splice( 0, l -_index);\r
} else {\r
currentFile = PARENT_FILE_RESITER.shift();\r
- }\r
+ };\r
currentFile.getSeqentialFiles();\r
return currentFile; \r
};\r
return Type.isArray( children ) === true ? children.length : -1;\r
},\r
getChildFileIndex: function( _FILEorFILEDATA ){\r
- var children = FILE_CONTROLER.getChildren( this);\r
+ var children = FILE_CONTROLER.getChildren( this );\r
if( Type.isArray( children ) === false ) return -1;\r
var l = children.length,\r
_fileData = FILE_CONTROLER.getFileData( _FILEorFILEDATA );\r
};\r
}\r
\r
-var AbstractApplication = function( appClass, isOverlay ){\r
+var AbstractApplication = function( displayName, appClass, isOverlay ){\r
var self = null, // init で設定\r
uiList = [],\r
finderList = [];\r
- this.rootElement = doc.createElement( 'div' );\r
+ this.rootElement = document.createElement( 'div' );\r
this.bgColor = '#C1CACF';\r
this.getUID = function(){\r
return Util.getIndex( API_USER_LIST, appClass );\r
this.close = function(){\r
if( self.onClose() === false ){\r
return false;\r
- }\r
+ };\r
MouseEvent.remove( self );\r
KeyEvent.remove( self );\r
SystemTimer.remove( self );\r
return Util.getIndex( API_USER_LIST, appClass );\r
};\r
this.boot = function( /* _option */ ){\r
- application = Application.boot( self.getUID(), appClass, isOverlay, Util.copyArray( arguments ) );\r
+ application = Application.boot( displayName, self.getUID(), appClass, isOverlay, Util.copyArray( arguments ) );\r
};\r
this.shutdown = function(){\r
if( !application ) return false;\r
isCurrentAppplication: function( _application ){\r
return true\r
},\r
- boot: function( uid, appClass, isOverlay, arg ){\r
+ boot: function( displayName, uid, appClass, isOverlay, arg ){\r
if( currentApplication ){\r
if( currentApplication.getUID() === uid ) return null;\r
if( isOverlay === false && currentApplication.close() === false ) return null;\r
}\r
- \r
- appClass.prototype = new AbstractApplication( appClass, isOverlay );\r
+\r
+ appClass.prototype = new AbstractApplication( displayName, appClass, isOverlay );\r
var application = new appClass(); // new は boot で\r
\r
coveredApplication = isOverlay === true ? currentApplication : null;\r
var cancel = false,\r
type = e.type,\r
key = e.keyCode || e.charCode || e.which,\r
- shift = e.shiftKey || e.modifiers & Event.SHIFT_MASK,\r
- ctrl = e.ctrlKey || e.modifiers & Event.CONTROL_MASK,\r
+ shift = Type.isBoolean( e.shiftKey ) === true ? e.shiftKey : ( e.modifiers & Event.SHIFT_MASK ),\r
+ ctrl = Type.isBoolean( e.ctrlKey ) === true ? e.ctrlKey : ( e.modifiers & Event.CONTROL_MASK ),\r
t;\r
\r
if( key === 16 || shift === true ){\r
KeyEvent.shiftEnabled = type !== 'keyup';\r
}\r
if( key === 17 || ctrl === true ){\r
- KeyEvent.ctrlEnabled = type !== 'keyup';\r
+ KeyEvent.ctrlEnabled = type !== 'keyup';\r
}\r
\r
for( var i=currentList.length; t = currentList[ --i ]; ){\r
Overlay.hide();\r
return false;\r
};\r
+ function asyncInit( /* arguments */ ){ \r
+ \r
+ //body.appendChild( application.rootElement );\r
+ elmContainer.insertBefore( application.rootElement, elmCloseButton );\r
+ application.init();\r
+ \r
+ \r
+ };\r
function asyncOpen( /* arguments */ ){\r
+ \r
var _arg = Util.copyArray( arguments );\r
_arg.unshift( windowW, windowH );\r
application.open.apply( application, _arg );\r
elmContainer = document.createElement( 'div' );\r
body.appendChild( elmContainer );\r
\r
+ elmContainer.id = 'overlay-container';\r
+ \r
bodyOverflow = body.style.overflow;\r
body.style.overflow = 'hidden';\r
\r
- elmContainer.id = 'overlay-container';\r
- elmContainer.style.display = 'none'; // hide for fadeIn\r
- elmContainer.innerHTML = '<div id="overlay-shadow"></div><div id="overlay-close-button">x</div>';\r
+ elmShadow = document.createElement( 'div' );\r
+ elmContainer.appendChild( elmShadow );\r
+ elmShadow.id = 'overlay-shadow';\r
\r
- elmShadow = document.getElementById( 'overlay-shadow' );\r
- elmCloseButton = document.getElementById( 'overlay-close-button' );\r
+ elmCloseButton = document.createElement( 'div' );\r
+ elmContainer.appendChild( elmCloseButton );\r
+ elmCloseButton.id = 'overlay-close-button';\r
+ elmCloseButton.appendChild( document.createTextNode( 'x' ) );\r
\r
- elmContainer.insertBefore( _application.rootElement, elmCloseButton );\r
- _application.init();\r
+ elmContainer.style.display = 'none'; // hide for fadeIn\r
\r
+ _application.addAsyncCall( asyncInit );\r
_application.addAsyncCall( asyncOpen, _bootParams );\r
\r
visible = true;\r
elmA.style.display = 'none';\r
elmValue.appendChild( ELM_INPUT_TEXT );\r
ELM_INPUT_TEXT.value = value;\r
- ELM_INPUT_TEXT.focus();\r
- ELM_INPUT_TEXT.select();\r
+ try {\r
+ ELM_INPUT_TEXT.focus();\r
+ ELM_INPUT_TEXT.select(); \r
+ } catch(e) {\r
+ \r
+ }\r
+\r
return false;\r
};\r
this.blur = function( keep ){\r