Config.js 1.2 KB

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