private void Workspace_Changed(Events.Abstract e) { Changed = true; switch (e.type) { case Blockly.Events.CREATE: var cre = (Events.Create)e; BlockCreated?.Invoke(this, cre); break; case Blockly.Events.DELETE: var del = (Events.Delete)e; BlockDeleted?.Invoke(this, del); break; case Blockly.Events.CHANGE: var chg = (Events.Change)e; BlockChanged?.Invoke(this, chg); break; case Blockly.Events.MOVE: var mov = (Events.Move)e; BlockMoveed?.Invoke(this, mov); break; case Blockly.Events.UI: var ui = (Events.Ui)e; UiEvent?.Invoke(this, ui); break; } }
protected override void onchange(Events.Abstract ev) { if (this.workspace != null && this.optionCount_ < 1) { this.setWarningText("Drop down menu must\nhave at least one option."); } else { BlockFactory.fieldNameCheck(this); } }
/// <summary> /// Update the language code based on constructs made in Blockly. /// </summary> public static void updateLanguage(Events.Abstract e) { var rootBlock = FactoryUtils.getRootBlock(BlockFactory.mainWorkspace); if (rootBlock == null) { return; } var blockType = rootBlock.getFieldValue("NAME").Trim().ToLowerCase(); if (blockType == null) { blockType = BlockFactory.UNNAMED; } var format = ((HTMLSelectElement)Document.GetElementById("format")).Value; var code = FactoryUtils.getBlockDefinition(blockType, rootBlock, format, BlockFactory.mainWorkspace); FactoryUtils.injectCode(code, "languagePre"); BlockFactory.updatePreview(); }
protected override void onchange(Events.Abstract ev) { BlockFactory.fieldNameCheck(this); }