controls.tsx 1.2 KB

1234567891011121314151617181920212223242526272829303132
  1. /**
  2. * Copyright (c) 2019 mol* contributors, licensed under MIT, See LICENSE file for more info.
  3. *
  4. * @author David Sehnal <david.sehnal@gmail.com>
  5. */
  6. import * as React from 'react';
  7. import * as ReactDOM from 'react-dom';
  8. import { PluginUIComponent } from '../../../mol-plugin-ui/base';
  9. import { CurrentObject, PluginContextContainer } from '../../../mol-plugin-ui/plugin';
  10. import { AnimationControls } from '../../../mol-plugin-ui/state/animation';
  11. import { CameraSnapshots } from '../../../mol-plugin-ui/camera';
  12. import { PluginContext } from '../../../mol-plugin/context';
  13. import { TransformUpdaterControl } from '../../../mol-plugin-ui/state/update-transform';
  14. import { StateElements } from '../helpers';
  15. export class ControlsWrapper extends PluginUIComponent {
  16. render() {
  17. return <div className='msp-scrollable-container msp-right-controls'>
  18. <CurrentObject />
  19. <AnimationControls />
  20. <CameraSnapshots />
  21. </div>;
  22. }
  23. }
  24. export function volumeStreamingControls(plugin: PluginContext, parent: Element) {
  25. ReactDOM.render(<PluginContextContainer plugin={plugin}>
  26. <TransformUpdaterControl nodeRef={StateElements.VolumeStreaming} />
  27. </PluginContextContainer>,
  28. parent);
  29. }