Config.js 1.2 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667
  1. var Config = function () {
  2. var name = 'threejs-editor';
  3. var storage = {
  4. 'autosave': true,
  5. 'theme': 'css/light.css',
  6. 'camera/position': [ 500, 250, 500 ],
  7. 'camera/target': [ 0, 0, 0 ],
  8. 'ui/sidebar/animation/collapsed': true,
  9. 'ui/sidebar/geometry/collapsed': true,
  10. 'ui/sidebar/material/collapsed': true,
  11. 'ui/sidebar/object3d/collapsed': false,
  12. 'ui/sidebar/renderer/collapsed': true,
  13. 'ui/sidebar/scene/collapsed': false,
  14. 'ui/sidebar/script/collapsed': true
  15. };
  16. if ( window.localStorage[ name ] === undefined ) {
  17. window.localStorage[ name ] = JSON.stringify( storage );
  18. } else {
  19. var data = JSON.parse( window.localStorage[ name ] );
  20. for ( var key in data ) {
  21. storage[ key ] = data[ key ];
  22. }
  23. }
  24. return {
  25. getKey: function ( key ) {
  26. return storage[ key ];
  27. },
  28. setKey: function () { // key, value, key, value ...
  29. for ( var i = 0, l = arguments.length; i < l; i += 2 ) {
  30. storage[ arguments[ i ] ] = arguments[ i + 1 ];
  31. }
  32. window.localStorage[ name ] = JSON.stringify( storage );
  33. console.log( '[' + /\d\d\:\d\d\:\d\d/.exec( new Date() )[ 0 ] + ']', 'Saved config to LocalStorage.' );
  34. },
  35. clear: function () {
  36. delete window.localStorage[ name ];
  37. }
  38. }
  39. };