Exemplo n.º 1
0
        private void btnGenerateScript_Click(object sender, EventArgs e)
        {
            try
            {
                if (ValidateForm())
                {
                    string tableName = (string)cmbDatabaseEntity.SelectedItem;

                    DatabaseEntity entity;
                    if (!_entities.TryGetValue(tableName, out entity))
                    {
                        entity = PluginsManager.GetEntityInfoFromPlugin(Project.Controller, tableName);
                        _entities[tableName] = entity;
                    }

                    var component = (GeneratorComponent)cmbComponent.SelectedItem;

                    var code = ActiveTemplate.Generate(entity, component);

                    if (!string.IsNullOrWhiteSpace(code))
                    {
                        txtGeneratedCode.Text = code;

                        ProjectsController.SaveCodeToProject(ActiveTemplate, component, Project, tableName, code, txtFileName.Text);

                        OnControlUpdate?.Invoke(this, new EventArgs());

                        if (chkCopyToClipboard.Checked)
                        {
                            txtGeneratedCode.SelectAll();
                            txtGeneratedCode.Copy();

                            MessageBox.Show("Copied to Clipboard", "Aviso", MessageBoxButtons.OK, MessageBoxIcon.Information);
                        }
                    }
                }

                EnableButtons();
            }
            catch (Exception ex)
            {
                MessageBoxHelper.ProcessException(ex);
            }
        }
Exemplo n.º 2
0
        private void UpdateFileName()
        {
            if (ActiveTemplate != null && cmbDatabaseEntity.SelectedItem != null)
            {
                string entityItem = (string)cmbDatabaseEntity.SelectedItem;

                DatabaseEntity entity;
                if (!_entities.TryGetValue(entityItem, out entity))
                {
                    entity = PluginsManager.GetEntityInfoFromPlugin(Project.Controller, entityItem);
                    _entities[entityItem] = entity;
                }

                txtFileName.Text = ActiveTemplate.GenerateFileName(entity, (GeneratorComponent)cmbComponent.SelectedItem);
            }
            else
            {
                txtFileName.Text = string.Empty;
            }
        }