Exemple #1
0
            public void Serialize(object obj, Altaxo.Serialization.Xml.IXmlSerializationInfo info)
            {
                ColumnStyle s = (ColumnStyle)obj;

                info.AddEnum("Type", s._columnStyleType);
                info.AddValue("Size", (float)s.m_Size);
                info.AddValue("Alignment", Enum.GetName(typeof(System.Drawing.StringAlignment), s.m_TextFormat.Alignment));

                info.AddValue("CustomPen", s._isCellPenCustom);
                if (s._isCellPenCustom)
                {
                    info.AddValue("Pen", s.m_CellPen);
                }

                info.AddValue("CustomText", s._isTextBrushCustom);
                if (s._isTextBrushCustom)
                {
                    info.AddValue("TextBrush", s.m_TextBrush);
                }

                info.AddValue("CustomBkg", s._isBackgroundBrushCustom);
                if (s._isBackgroundBrushCustom)
                {
                    info.AddValue("BkgBrush", s.m_BackgroundBrush);
                }

                info.AddValue("CustomFont", s.IsCustomFont);
                if (s.IsCustomFont)
                {
                    info.AddValue("Font", s.m_TextFont);
                }
            }
Exemple #2
0
        /// <summary>
        /// Retrieves the column number clicked onto
        /// </summary>
        /// <param name="dg">The parent data grid</param>
        /// <param name="mouseCoord">The coordinates of the mouse click.</param>
        /// <param name="cellRect">The function sets the x-properties (X and Width) of the cell rectangle.</param>
        /// <returns>Either -1 when clicked on the row header area, column number when clicked in the column range, or int.MinValue when clicked outside of all.</returns>
        public static int GetColumnNumber(WinFormsWorksheetController dg, Point mouseCoord, ref Rectangle cellRect)
        {
            int firstVisibleColumn = dg.FirstVisibleColumn;
            int actualColumnRight  = dg.WorksheetLayout.RowHeaderStyle.Width;
            int columnCount        = dg.DataTable.DataColumns.ColumnCount;

            if (mouseCoord.X < actualColumnRight)
            {
                cellRect.X = 0; cellRect.Width = actualColumnRight;
                return(-1);
            }

            for (int i = firstVisibleColumn; i < columnCount; i++)
            {
                cellRect.X = actualColumnRight;
                Altaxo.Worksheet.ColumnStyle cs = dg.GetDataColumnStyle(i);
                actualColumnRight += cs.Width;
                if (actualColumnRight > mouseCoord.X)
                {
                    cellRect.Width = cs.Width;
                    return(i);
                }
            } // end for
            return(int.MinValue);
        }
Exemple #3
0
            public object Deserialize(object o, Altaxo.Serialization.Xml.IXmlDeserializationInfo info, object parent)
            {
                ColumnStyle s = (ColumnStyle)o;

                if ("Size" == info.CurrentElementName)
                {
                    return(new XmlSerializationSurrogate0().Deserialize(o, info, parent));
                }

                s._columnStyleType       = (ColumnStyleType)info.GetEnum("Type", typeof(ColumnStyleType));
                s.m_Size                 = (int)info.GetSingle("Size");
                s.m_TextFormat.Alignment = (StringAlignment)Enum.Parse(typeof(StringAlignment), info.GetString("Alignment"));
                s._isCellPenCustom       = info.GetBoolean("CustomPen");
                if (s._isCellPenCustom)
                {
                    s.CellBorder = (PenX)info.GetValue("Pen", s);
                }
                else
                {
                    s.SetDefaultCellBorder();
                }

                s._isTextBrushCustom = info.GetBoolean("CustomText");
                if (s._isTextBrushCustom)
                {
                    s.TextBrush = (BrushX)info.GetValue("TextBrush", s);
                }
                else
                {
                    s.SetDefaultTextBrush();
                }

                s._isBackgroundBrushCustom = info.GetBoolean("CustomBkg");
                if (s._isBackgroundBrushCustom)
                {
                    s.BackgroundBrush = (BrushX)info.GetValue("BkgBrush", s);
                }
                else
                {
                    s.SetDefaultBackgroundBrush();
                }

                bool isCustomFont = info.GetBoolean("CustomFont");

                if (isCustomFont)
                {
                    s.TextFont = (Font)info.GetValue("Font", s);
                }
                else
                {
                    s.SetDefaultTextFont();
                }

                return(s);
            }
Exemple #4
0
            public void GetObjectData(object obj, System.Runtime.Serialization.SerializationInfo info, System.Runtime.Serialization.StreamingContext context)
            {
                ColumnStyle s = (ColumnStyle)obj;

                info.AddValue("Size", (float)s.m_Size);
                info.AddValue("Pen", s.m_CellPen);
                info.AddValue("TextBrush", s.m_TextBrush);
                info.AddValue("BkgBrush", s.m_BackgroundBrush);
                info.AddValue("Alignment", s.m_TextFormat.Alignment);


                info.AddValue("Font", s.m_TextFont); // Serialization is possible in NET1SP2, but deserialization fails (Tested with SOAP formatter)
            }
Exemple #5
0
        public ColumnStyle(ColumnStyle s)
        {
            _columnStyleType = s._columnStyleType;
            m_Size           = s.m_Size;

            _isCellPenCustom = s._isCellPenCustom;
            m_CellPen        = (PenX)s.m_CellPen.Clone();
            m_TextFormat     = (StringFormat)s.m_TextFormat.Clone();
            m_TextFont       = (Font)s.m_TextFont.Clone();

            _isTextBrushCustom = s._isTextBrushCustom;
            m_TextBrush        = (BrushX)s.m_TextBrush.Clone();

            _isBackgroundBrushCustom = s._isBackgroundBrushCustom;
            m_BackgroundBrush        = (BrushX)s.m_BackgroundBrush.Clone();
        }
Exemple #6
0
        public ColumnStyle(ColumnStyle s)
        {
            _columnStyleType = s._columnStyleType;
            _columnSize      = s._columnSize;

            _isCellPenCustom = s._isCellPenCustom;
            ChildCopyToMember(ref _cellPen, s._cellPen);
            _textFormat = (StringFormat)s._textFormat.Clone();
            _textFont   = s._textFont;

            _isTextBrushCustom = s._isTextBrushCustom;
            ChildCopyToMember(ref _textBrush, s._textBrush);

            _isBackgroundBrushCustom = s._isBackgroundBrushCustom;
            ChildCopyToMember(ref _backgroundBrush, s._backgroundBrush);
        }
Exemple #7
0
            public object Deserialize(object o, Altaxo.Serialization.Xml.IXmlDeserializationInfo info, object parent)
            {
                ColumnStyle s = (ColumnStyle)o;

                s.m_Size = (int)info.GetSingle("Size");

                object notneeded;

                notneeded = info.GetValue("Pen", s);
                notneeded = info.GetValue("TextBrush", s);


                notneeded = info.GetValue("SelTextBrush", s);
                notneeded = info.GetValue("BkgBrush", s);

                notneeded = info.GetValue("SelBkgBrush", s);
                s.m_TextFormat.Alignment = (StringAlignment)Enum.Parse(typeof(StringAlignment), info.GetString("Alignment"));
                s.m_TextFont             = (Font)info.GetValue("Font", s);
                return(s);
            }
Exemple #8
0
            public object SetObjectData(object obj, System.Runtime.Serialization.SerializationInfo info, System.Runtime.Serialization.StreamingContext context, System.Runtime.Serialization.ISurrogateSelector selector)
            {
                ColumnStyle s = (ColumnStyle)obj;



                s.m_Size                 = (int)info.GetSingle("Size");
                s.m_CellPen              = (PenX)info.GetValue("Pen", typeof(PenX));
                s.m_TextBrush            = (BrushX)info.GetValue("TextBrush", typeof(BrushX));
                s.m_BackgroundBrush      = (BrushX)info.GetValue("BkgBrush", typeof(BrushX));
                s.m_TextFormat           = new StringFormat();
                s.m_TextFormat.Alignment = (StringAlignment)info.GetValue("Alignment", typeof(StringAlignment));


                // Deserialising a font with SoapFormatter raises an error at least in Net1SP2, so I had to circuumvent this
                s.m_TextFont = (Font)info.GetValue("Font", typeof(Font));
                //  s.m_TextFont = new Font("Arial",8);


                return(s);
            }
Exemple #9
0
		public ColumnStyle(ColumnStyle s)
		{
			_columnStyleType = s._columnStyleType;
			_columnSize = s._columnSize;

			_isCellPenCustom = s._isCellPenCustom;
			ChildCopyToMember(ref _cellPen, s._cellPen);
			_textFormat = (StringFormat)s._textFormat.Clone();
			_textFont = s._textFont;

			_isTextBrushCustom = s._isTextBrushCustom;
			ChildCopyToMember(ref _textBrush, s._textBrush);

			_isBackgroundBrushCustom = s._isBackgroundBrushCustom;
			ChildCopyToMember(ref _backgroundBrush, s._backgroundBrush);
		}
    public ColumnStyle(ColumnStyle s)
    {
      _columnStyleType = s._columnStyleType;
      m_Size = s.m_Size;

      _isCellPenCustom = s._isCellPenCustom;
      m_CellPen = (PenX)s.m_CellPen.Clone();
      m_TextFormat = (StringFormat)s.m_TextFormat.Clone();
      m_TextFont = (Font)s.m_TextFont.Clone();
      
      _isTextBrushCustom = s._isTextBrushCustom;
      m_TextBrush = (BrushX)s.m_TextBrush.Clone();

      _isBackgroundBrushCustom = s._isBackgroundBrushCustom;
      m_BackgroundBrush = (BrushX)s.m_BackgroundBrush.Clone();
    }