Toolbar.js 1.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657
  1. var Toolbar = function ( editor ) {
  2. var signals = editor.signals;
  3. var container = new UI.Panel();
  4. container.setPosition( 'absolute' );
  5. container.setClass( 'toolbar' );
  6. var buttons = new UI.Panel();
  7. buttons.setPadding( '7px' );
  8. container.add( buttons );
  9. // translate / rotate / scale
  10. var translate = new UI.Button( 'translate' ).onClick( function () {
  11. signals.transformModeChanged.dispatch( 'translate' );
  12. } );
  13. buttons.add( translate );
  14. var rotate = new UI.Button( 'rotate' ).onClick( function () {
  15. signals.transformModeChanged.dispatch( 'rotate' );
  16. } );
  17. buttons.add( rotate );
  18. var scale = new UI.Button( 'scale' ).onClick( function () {
  19. signals.transformModeChanged.dispatch( 'scale' );
  20. } );
  21. buttons.add( scale );
  22. // grid
  23. var grid = new UI.Number( 25 ).onChange( update );
  24. grid.dom.style.width = '42px';
  25. buttons.add( new UI.Text( 'Grid: ' ) );
  26. buttons.add( grid );
  27. var snap = new UI.Checkbox( false ).onChange( update );
  28. buttons.add( snap );
  29. buttons.add( new UI.Text( 'snap' ) );
  30. function update() {
  31. signals.snapChanged.dispatch( snap.getValue() === true ? grid.getValue() : null );
  32. }
  33. update();
  34. return container;
  35. }