Exemple #1
0
        protected override void doReadXml(System.Xml.XmlReader reader)
        {
            paned1.Position = Convert.ToInt32(reader["Position"]);
            base.doReadXml(reader);

            while ((reader.LocalName != "dock1") && reader.Read())
            {
                ;
            }
            if ((reader.LocalName == "dock1") && !reader.IsEmptyElement)
            {
                reader.Read();                 //skip dock1
                dock1.ReadXml(reader);
                dock1.Visible = true;
            }

            while ((reader.LocalName != "dock2") && reader.Read())
            {
                ;
            }
            if ((reader.LocalName == "dock2") && !reader.IsEmptyElement)
            {
                reader.Read();                 //skip dock2
                dock2.ReadXml(reader);
                dock2.Visible = true;
            }

            while ((reader.LocalName != "positions") && reader.Read())
            {
                ;
            }
            if ((reader.LocalName == "positions") && (!reader.IsEmptyElement))
            {
                reader.Read();                  //skip positions node
                do
                {
                    String type = reader["type"];
                    String val  = reader["position"];

                    DockFramePosition pos = DockFramePosition.None;
                    Enum.TryParse <DockFramePosition>(val, out pos);

                    lastposition.Add(type, pos);
                    reader.Read();
                } while ((reader.LocalName != "positions"));
            }
            reader.Read(); //skip positions node
        }
Exemple #2
0
        public void addItem(DockItemContainer item, ItemAlignment align, bool left = false)
        {
            items.Add(item);

            DockFramePosition pos = DockFramePosition.None;

            if (lastposition.ContainsKey(item.CurrentWidget.GetType().ToString()))
            {
                pos = lastposition[item.CurrentWidget.GetType().ToString()];
            }

            switch (pos)
            {
            case DockFramePosition.Left:
                left = true;
                break;

            case DockFramePosition.Right:
                left = false;
                break;
            }

            if (left)
            {
                if (dock1.Mode == ViewMode.Notebook)
                {
                    dock1.addPage(item, align);
                }
                else
                {
                    dock1.addItem(item, align);
                }
            }
            else
            {
                if (dock2.Mode == ViewMode.Notebook)
                {
                    dock2.addPage(item, align);
                }
                else
                {
                    dock2.addItem(item, align);
                }
            }
        }