diff --git a/src/apps/viewer/app.ts b/src/apps/viewer/app.ts index f5af2fca0f8253ee2953ec64630beeecaa4f13e1..4190333879470c5f9d664805a9899a5003998ac6 100644 --- a/src/apps/viewer/app.ts +++ b/src/apps/viewer/app.ts @@ -5,7 +5,6 @@ * @author Alexander Rose <alexander.rose@weirdbyte.de> */ -import { ScriptSetting } from '../../extensions/language-select'; import { ANVILMembraneOrientation } from '../../extensions/anvil/behavior'; import { CellPack } from '../../extensions/cellpack'; import { DnatcoConfalPyramids } from '../../extensions/dnatco'; @@ -68,7 +67,6 @@ const Extensions = { 'geo-export': PluginSpec.Behavior(GeometryExport), 'ma-quality-assessment': PluginSpec.Behavior(MAQualityAssessment), 'zenodo-import': PluginSpec.Behavior(ZenodoImport), - 'script-language': PluginSpec.Behavior(ScriptSetting), }; const DefaultViewerOptions = { diff --git a/src/extensions/language-select/index.ts b/src/extensions/language-select/index.ts deleted file mode 100644 index 831fb6dff0f88efc3ed6bc96908c2e5d8287f3ba..0000000000000000000000000000000000000000 --- a/src/extensions/language-select/index.ts +++ /dev/null @@ -1,30 +0,0 @@ -/** - * Copyright (c) 2022 mol* contributors, licensed under MIT, See LICENSE file for more info. - * - * @author Alexander Rose <alexander.rose@weirdbyte.de> - */ - -import { PluginBehavior } from '../../mol-plugin/behavior/behavior'; -import { ScriptImportUI } from './ui'; - -export const ScriptSetting = PluginBehavior.create<{ }>({ - name: 'extension script language', - category: 'misc', - display: { - name: 'Script Language' - }, - ctor: class extends PluginBehavior.Handler<{ }> { - register(): void { - this.ctx.customImportControls.set('script-language', ScriptImportUI as any); - } - - update() { - return false; - } - - unregister() { - this.ctx.customImportControls.delete('script-language'); - } - }, - params: () => ({ }) -}); diff --git a/src/extensions/language-select/ui.tsx b/src/extensions/language-select/ui.tsx deleted file mode 100644 index 1d69326357473d9587395ff7b1d58f4c5a4e0503..0000000000000000000000000000000000000000 --- a/src/extensions/language-select/ui.tsx +++ /dev/null @@ -1,92 +0,0 @@ -/** - * Copyright (c) 2022 mol* contributors, licensed under MIT, See LICENSE file for more info. - * - * @author Alexander Rose <alexander.rose@weirdbyte.de> - */ - -//import { DownloadFile } from '../../mol-plugin-state/actions/file'; -//import { DownloadStructure, LoadTrajectory } from '../../mol-plugin-state/actions/structure'; -//import { DownloadDensity } from '../../mol-plugin-state/actions/volume'; -//import { CoordinatesFormatCategory } from '../../mol-plugin-state/formats/coordinates'; -//import { TopologyFormatCategory } from '../../mol-plugin-state/formats/topology'; -//import { TrajectoryFormatCategory } from '../../mol-plugin-state/formats/trajectory'; -//import { VolumeFormatCategory } from '../../mol-plugin-state/formats/volume'; -import { CollapsableControls, CollapsableState } from '../../mol-plugin-ui/base'; -import { Button } from '../../mol-plugin-ui/controls/common'; -import { SelectionModeSvg } from '../../mol-plugin-ui/controls/icons'; -import { ParameterControls } from '../../mol-plugin-ui/controls/parameters'; -//import { PluginContext } from '../../mol-plugin/context'; -//import { formatBytes } from '../../mol-util'; -import { ParamDefinition as PD } from '../../mol-util/param-definition'; - - -type ScriptLanguage = undefined; - -interface State { - busy?: boolean - languageValues: PD.Values<typeof ScriptImportParams> - importParams?: ImportParams - language?: ScriptLanguage -} - -const ScriptImportParams = { - language: PD.Text('', { description: 'Script Language' }) -}; - -function createImportParams() { - const params: PD.Params = {}; - let defaultType = ''; - return { - type: PD.MappedStatic(defaultType, Object.keys(params).length ? params : { '': PD.EmptyGroup() }) - }; -} -type ImportParams = ReturnType<typeof createImportParams> - - -export class ScriptImportUI extends CollapsableControls<{}, State> { - protected defaultState(): State & CollapsableState { - return { - header: 'Scripting Language', - isCollapsed: true, - brand: { accent: 'cyan', svg: SelectionModeSvg }, - languageValues: PD.getDefaultValues(ScriptImportParams), - importParams: undefined, - language: undefined, - }; - } - private loadLanguage = async () => { - this.plugin.log.message(`'${this.state.languageValues.language}'`); - }; - - private languageParamsOnChange = (values: any) => { - this.setState({ languageValues: values }); - }; - - private renderLanguageInfo(language: ScriptLanguage) { - return <div style={{ marginBottom: 10 }}> - <div className='msp-help-text'> - <div>Language </div> - </div> - </div>; - } - - - private renderLoadLanguage() { - return <div style={{ marginBottom: 10 }}> - <ParameterControls params={ScriptImportParams} values={this.state.languageValues} onChangeValues={this.languageParamsOnChange} isDisabled={this.state.busy} /> - <Button onClick={this.loadLanguage} style={{ marginTop: 1 }} disabled={this.state.busy || !this.state.languageValues.language}> - Set Language - </Button> - </div>; - } - - - protected renderControls(): JSX.Element | null { - return <> - {!this.state.language ? this.renderLoadLanguage() : null} - {this.state.language ? this.renderLanguageInfo(this.state.language) : null} - </>; - } - - -} diff --git a/src/mol-plugin-state/transforms/representation.ts b/src/mol-plugin-state/transforms/representation.ts index 1e0672b2cf1c5c9aac0c550cd3064a1a141803f2..32c564437b540369c43419285eb68e579a24a925 100644 --- a/src/mol-plugin-state/transforms/representation.ts +++ b/src/mol-plugin-state/transforms/representation.ts @@ -315,12 +315,12 @@ const OverpaintStructureRepresentation3DFromScript = PluginStateTransform.BuiltI to: SO.Molecule.Structure.Representation3DState, params: () => ({ layers: PD.ObjectList({ - script: PD.Script(Script()), + script: PD.Script(Script('(sel.atom.all)', 'mol-script')), color: PD.Color(ColorNames.blueviolet), clear: PD.Boolean(false) }, e => `${e.clear ? 'Clear' : Color.toRgbString(e.color)}`, { defaultValue: [{ - script: Script(), + script: Script('(sel.atom.all)', 'mol-script'), color: ColorNames.blueviolet, clear: false }] @@ -430,11 +430,11 @@ const TransparencyStructureRepresentation3DFromScript = PluginStateTransform.Bui to: SO.Molecule.Structure.Representation3DState, params: () => ({ layers: PD.ObjectList({ - script: PD.Script(Script()), + script: PD.Script(Script('(sel.atom.all)', 'mol-script')), value: PD.Numeric(0.5, { min: 0, max: 1, step: 0.01 }, { label: 'Transparency' }), }, e => `Transparency (${e.value})`, { defaultValue: [{ - script: Script(), + script: Script('(sel.atom.all)', 'mol-script'), value: 0.5, }] }) @@ -541,12 +541,12 @@ const SubstanceStructureRepresentation3DFromScript = PluginStateTransform.BuiltI to: SO.Molecule.Structure.Representation3DState, params: () => ({ layers: PD.ObjectList({ - script: PD.Script(Script()), + script: PD.Script(Script('(sel.atom.all)', 'mol-script')), material: Material.getParam(), clear: PD.Boolean(false) }, e => `${e.clear ? 'Clear' : Material.toString(e.material)}`, { defaultValue: [{ - script: Script(), + script: Script('(sel.atom.all)', 'mol-script'), material: Material({ roughness: 1 }), clear: false }] @@ -656,11 +656,11 @@ const ClippingStructureRepresentation3DFromScript = PluginStateTransform.BuiltIn to: SO.Molecule.Structure.Representation3DState, params: () => ({ layers: PD.ObjectList({ - script: PD.Script(Script()), + script: PD.Script(Script('(sel.atom.all)', 'mol-script')), groups: PD.Converted((g: Clipping.Groups) => Clipping.Groups.toNames(g), n => Clipping.Groups.fromNames(n), PD.MultiSelect(ObjectKeys(Clipping.Groups.Names), PD.objectToOptions(Clipping.Groups.Names))), }, e => `${Clipping.Groups.toNames(e.groups).length} group(s)`, { defaultValue: [{ - script: Script(), + script: Script('(sel.atom.all)', 'mol-script'), groups: Clipping.Groups.Flag.None, }] }), @@ -1165,4 +1165,4 @@ const StructureSelectionsPlane3D = PluginStateTransform.BuiltIn({ return StateTransformer.UpdateResult.Updated; }); }, -}); +}); \ No newline at end of file