Config.js 1.3 KB

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