Beispiel #1
0
        public ModelFolder Copy()
        {
            ModelFolder f = new ModelFolder();

            f.Caption             = this.Caption;
            f.Description         = this.Description;
            f.ID                  = this.ID;
            f._isBrowsable        = this._isBrowsable;
            f._isExpanded         = this._isExpanded;
            f._isItemListExpanded = this._isItemListExpanded;
            f._isReadOnly         = this._isReadOnly;
            f._isSelected         = this._isSelected;
            f.Name                = this.Name;

            foreach (object i in _items)
            {
                if (i is ModelClass)
                {
                    f._items.Add(((ModelClass)i).Clone());
                }
                if (i is ModelEnum)
                {
                    f._items.Add(((ModelEnum)i).Clone());
                }
            }

            return(f);
        }
Beispiel #2
0
        public void Remove(ModelFolder value)
        {
            int index = IndexOf(value);

            if (index == -1)
            {
                throw(new Exception("ModelFolder not found in collection."));
            }
            RemoveAt(index);
        }
Beispiel #3
0
 public int IndexOf(ModelFolder value)
 {
     for (int x = 0; x < itemCount; x++)
     {
         if (folders[x].Equals(value))
         {
             return(x);
         }
     }
     return(-1);
 }
Beispiel #4
0
 public void Insert(int index, ModelFolder value)
 {
     itemCount++;
     if (itemCount > folders.Length)
     {
         for (int x = index + 1; x == itemCount - 2; x++)
         {
             folders[x] = folders[x - 1];
         }
     }
     folders[index] = value;
 }
Beispiel #5
0
        public int Add(ModelFolder value)
        {
            itemCount++;
            if (itemCount > folders.GetUpperBound(0) + 1)
            {
                ModelFolder[] tempfolders = new ModelFolder[itemCount * 2];
                for (int x = 0; x <= folders.GetUpperBound(0); x++)
                {
                    tempfolders[x] = folders[x];
                }
                folders = tempfolders;
            }
            folders[itemCount - 1] = value;

            OnAdd(EventArgs.Empty);
            return(itemCount - 1);
        }
Beispiel #6
0
 public bool Contains(ModelFolder value)
 {
     return(IndexOf(value) != -1);
 }
Beispiel #7
0
        private void parse1_11File(XmlTextReader r)
        {
            string      fileVersion;
            ModelFolder defaultFolder = null;

            fileVersion = "1.11";

            name             = r.ReadElementString("Name");
            defaultNamespace = r.ReadElementString("DefaultNamespace");
            if (r.LocalName == "Description")
            {
                description = r.ReadElementString("Description");
            }
            if (r.LocalName == "ConnectionString")
            {
                connectionString = r.ReadElementString("ConnectionString");
            }
            if (r.LocalName == "ConnectionStringIsCoded")
            {
                connectionStringIsCoded = bool.Parse(r.ReadElementString("ConnectionStringIsCoded"));
            }
            if (r.LocalName == "ConnectionStringIsConfigKey")
            {
                connectionStringIsConfigKey = bool.Parse(r.ReadElementString("ConnectionStringIsConfigKey"));
            }
            if (r.LocalName == "VersionMajor")
            {
                version.Major = int.Parse(r.ReadElementString("VersionMajor"));
            }
            if (r.LocalName == "VersionMinor")
            {
                version.Minor = int.Parse(r.ReadElementString("VersionMinor"));
            }
            if (r.LocalName == "VersionBuild")
            {
                version.Build = int.Parse(r.ReadElementString("VersionBuild"));
            }

            if (r.Name == "References" && !r.IsEmptyElement)
            {
                r.Read();

                while (r.LocalName == "ReferenceEntry")
                {
                    references.Add(new ReferenceEntry(r));
                }

                r.ReadEndElement();
            }
            else
            {
                r.Read();
            }

            //
            // Skip Field Data Types on 1.1 models
            //
            while (r.Name != "ChildDataTypes")
            {
                r.Read();
            }

            if (r.Name == "ChildDataTypes" && !r.IsEmptyElement)
            {
                r.Read();
                while (r.LocalName == "ChildDataType")
                {
                    DataTypeManager.AddDataType(new ReferenceType(r));
                }
                r.ReadEndElement();
            }
            else
            {
                r.Read();
            }

            if ((r.Name == "ModelFolders" | r.Name == "ClassObjects") && !r.IsEmptyElement)
            {
                r.Read();
                while (r.LocalName == "ClassObject" | r.LocalName == "ModelFolder")
                {
                    if (r.LocalName == "ClassObject")
                    {
                        // Create a default folder for the class object if it
                        // is not already created.
                        if (defaultFolder == null)
                        {
                            defaultFolder             = new ModelFolder();
                            defaultFolder.Caption     = "General";
                            defaultFolder.Description = "General";
                            defaultFolder.Name        = "General";
                            defaultFolder.ParentModel = this;
                            defaultFolder.IsBrowsable = true;
                            defaultFolder.IsExpanded  = true;
                            this.Folders.Add(defaultFolder);
                        }

                        // Load ClassEntry
                        ModelClass c = new ModelClass(r, fileVersion);
                        c.ParentModel = this;

                        // Add Class Entry to Default Folder
                        defaultFolder.Items.Add(c);
                    }

                    // Add Model Folder
                    if (r.LocalName == "ModelFolder")
                    {
                        ModelFolder f = new ModelFolder(r, this, fileVersion);
                        folders.Add(f);
                    }
                }
                r.ReadEndElement();
            }
            else
            {
                r.Read();
            }
        }