public EditRelationDialog(ActiveRecordDescriptor descriptor, Project project, ActiveRecordPropertyRelationDescriptor prop) : base(descriptor, project) { // This call is required by the Windows Form Designer. InitializeComponent(); AssociationEnum assoc = AssociationEnum.Undefined; if (prop is ActiveRecordHasManyDescriptor) { hasManyButton.Checked = true; assoc = AssociationEnum.HasMany; } else if (prop is ActiveRecordBelongsToDescriptor) { belongsToButton.Checked = true; assoc = AssociationEnum.BelongsTo; } else if (prop is ActiveRecordHasAndBelongsToManyDescriptor) { hasAndBelongsToManyButton.Checked = true; assoc = AssociationEnum.HasAndBelongsToMany; } SelectedTarget = prop.TargetType; SwitchViewTo(assoc); }
public ActiveRecordPropertiesDialog(ActiveRecordDescriptor descriptor, Project project) { _project = project; _descriptor = descriptor; if (descriptor is ActiveRecordDescriptorSubClass) { _parent = ((ActiveRecordDescriptorSubClass) descriptor).BaseClass; } InitializeComponent(); Title = descriptor.ClassName + " Properties"; FillClassDetails(descriptor); FillClassProperties(descriptor); FillClassRelationships(descriptor); }
public AddRelationDialog(ActiveRecordDescriptor descriptor, Project project) : this() { _descriptor = descriptor; _project = project; _relationBuilder = (IRelationshipBuilder) ServiceRegistry.Instance[ typeof(IRelationshipBuilder) ]; className.Text = _descriptor.ClassName; targetTableList.ValueMember = "ClassName"; foreach(IActiveRecordDescriptor desc in _project.Descriptors) { if (desc is ActiveRecordBaseDescriptor) continue; if (desc.ClassName == null) continue; targetTableList.Items.Add( desc ); } }
private void OnChanged(object sender, Project project) { this.Text = String.Format("ActiveRecord Generator - [{0}]", project.Name); }
private void OnProjectReplaced(object sender, Project oldProject, Project newProject) { OnChanged(sender, newProject); }
private void _model_OnProjectReplaced(object sender, Project oldProject, Project newProject) { // Clear! _desc2Shape.Clear(); graphControl1.Nodes.Clear(); OnProjectChange(sender, newProject); }
private void OnProjectChange(object sender, Project project) { DisableWizard(); foreach(IActiveRecordDescriptor descriptor in project.Descriptors) { Shape shape = ObtainShape(descriptor); if (graphControl1.Nodes.Contains(shape)) continue; shape = CreateShapeFrom(descriptor); if (shape.X == 0 && shape.Y == 0) { shape.X = rnd.Next(50, graphControl1.Width - 100); shape.Y = rnd.Next(50, graphControl1.Height - 20); } CreateConnectionsIfNecessary(shape); } RefreshView(); EnableWizard(); }
private void UpdateTree(Project project) { treeView1.Nodes.Clear(); TreeNode projectNode = new TreeNode(project.Name, ImageConstants.Database_Views, ImageConstants.Database_Views); treeView1.Nodes.Add(projectNode); foreach(DatabaseDefinition def in project.Databases) { TreeNode dbNode = new TreeNode(def.Alias, ImageConstants.Database_Catalog, ImageConstants.Database_Catalog); projectNode.Nodes.Add(dbNode); dbNode.EnsureVisible(); foreach(TableDefinition table in def.Tables) { TreeNode tableNode = new TreeNode(table.Name, ImageConstants.Database_Table, ImageConstants.Database_Table); dbNode.Nodes.Add(tableNode); foreach(ColumnDefinition colDef in table.Columns) { TreeNode colNode = new TreeNode(colDef.Name, ImageConstants.Database_Field, ImageConstants.Database_Field); tableNode.Nodes.Add(colNode); } } } Hashtable db2Node = new Hashtable(); foreach(DictionaryEntry entry in project.BaseClasses) { IActiveRecordDescriptor baseDesc = entry.Value as IActiveRecordDescriptor; TreeNode arBaseNode = new TreeNode(baseDesc.ClassName, ImageConstants.Classes_Entity, ImageConstants.Classes_Entity); arBaseNode.Tag = baseDesc; projectNode.Nodes.Add(arBaseNode); db2Node[entry.Key] = arBaseNode; } foreach(IActiveRecordDescriptor desc in project.Descriptors) { ActiveRecordDescriptor arDesc = desc as ActiveRecordDescriptor; if (arDesc == null) continue; TreeNode arNode = new TreeNode(desc.ClassName, ImageConstants.Classes_Entity, ImageConstants.Classes_Entity); arNode.Tag = arDesc; TreeNode parent = db2Node[arDesc.Table.DatabaseDefinition] as TreeNode; parent.Nodes.Add(arNode); } }
private void OnProjectChange(object sender, Project project) { UpdateTree(project); }
private void OnProjectReplaced(object sender, Project oldProject, Project newProject) { UpdateTree(newProject); }