Spread Windows Forms 13.0 Product Documentation
FarPoint.Win.Spread Assembly / FarPoint.Win.Spread.CellType Namespace / EditBaseCellType Class / IsReservedLocation Method
Graphics device interface for drawing the editor control
X-coordinate of pointer location
Y-coordinate of pointer location
Location and size of a rectangular region
Appearance settings of the editor control
Object that contains the name of the editor control
Numeric value for scaling the display of the editor control
Example


In This Topic
    IsReservedLocation Method (EditBaseCellType)
    In This Topic
    Determines whether the specified cursor location has special meaning to the editor control.
    Syntax
    'Declaration
     
    Public Overrides Function IsReservedLocation( _
       ByVal g As Graphics, _
       ByVal x As Integer, _
       ByVal y As Integer, _
       ByVal rc As Rectangle, _
       ByVal appearance As Appearance, _
       ByVal value As Object, _
       ByVal zoomFactor As Single _
    ) As Object
    'Usage
     
    Dim instance As EditBaseCellType
    Dim g As Graphics
    Dim x As Integer
    Dim y As Integer
    Dim rc As Rectangle
    Dim appearance As Appearance
    Dim value As Object
    Dim zoomFactor As Single
    Dim value As Object
     
    value = instance.IsReservedLocation(g, x, y, rc, appearance, value, zoomFactor)
    public override object IsReservedLocation( 
       Graphics g,
       int x,
       int y,
       Rectangle rc,
       Appearance appearance,
       object value,
       float zoomFactor
    )

    Parameters

    g
    Graphics device interface for drawing the editor control
    x
    X-coordinate of pointer location
    y
    Y-coordinate of pointer location
    rc
    Location and size of a rectangular region
    appearance
    Appearance settings of the editor control
    value
    Object that contains the name of the editor control
    zoomFactor
    Numeric value for scaling the display of the editor control

    Return Value

    Object containing the location reserved
    Remarks

    For limits on the zoomFactor parameter, refer to the ZoomFactor property for the sheet.

    Example
    This example subclasses the check box cell type to illustrate the use of the methods, but would be the same for any of several cell types.
    class myCkBox  : FarPoint.Win.Spread.CellType.CheckBoxCellType
    {
    CheckBox ckbx = new CheckBox();
    
    public myCkBox()
    {
    }
    new event EventHandler EditingCanceled;
    new event EventHandler EditingStopped;
    
    public override void StartEditing(EventArgs e, bool selectAll, bool autoClipboard)
    {
       return;
    }
    public override void CancelEditing()
    {
       EditingCanceled(ckbx, EventArgs.Empty);
       base.FireEditingCanceled();
    }
    public override bool StopEditing()
    {
       if (EditingStopped != null)
       {
          EditingStopped(ckbx, EventArgs.Empty);
          base.FireEditingStopped();
          return true;
       }
       else
       {
          return false;
       }
    }
    
    public override bool IsReservedKey(KeyEventArgs e)
    {
       return base.IsReservedKey(e);
    }
    public override object IsReservedLocation(Graphics g, int x, int y, Rectangle r, FarPoint.Win.Spread.Appearance appr, object
    value, float zoom)
    {
       return base.IsReservedLocation(g, x, y, r, appr, value, zoom);
    }
    public override Size GetPreferredSize(Graphics g, Size size, FarPoint.Win.Spread.Appearance appr, object value, float zoom)
    {
       return base.GetPreferredSize(g, size, appr, value, zoom);
    }
    public override object Parse(string s)
    {
       return base.Parse(s);
    }
    public override string Format(object o)
    {
       return base.Format(o.ToString());
    }
    public override Control GetEditorControl(FarPoint.Win.Spread.Appearance appearance, float zoomFactor)
    {
       return ckbx;
    }
    public override object GetEditorValue()
    {
       return ckbx.CheckState;
    }
    public override void PaintCell(Graphics g, Rectangle r, FarPoint.Win.Spread.Appearance appr, object value, bool issel, bool
    islocked, float zoom)
    {
       GetEditorValue();
       if (ckbx.CheckState == CheckState.Checked)
       {
          ControlPaint.DrawCheckBox(g, r.X, r.Y, r.Width - 40, r.Height - 6, ButtonState.Checked);
       }
       else if (ckbx.CheckState == CheckState.Unchecked)
       {
         ControlPaint.DrawCheckBox(g, r.X, r.Y, r.Width - 40, r.Height - 6, ButtonState.Normal);
       }
    }
    public override void SetEditorValue(object value)
    {
       ckbx.CheckState = CheckState.Checked;
    }
    public override Cursor GetReservedCursor(object o)
    {
       return base.GetReservedCursor(o);
    }
    }
    
    private void menuItem4_Click(object sender, System.EventArgs e)
    {
       myCkBox ckbx = new myCkBox();
       fpSpread1.ActiveSheet.Cells[0, 0].CellType = ckbx;
    }
    Public Class myCkBox
    Inherits FarPoint.Win.Spread.CellType.CheckBoxCellType
    
    Dim ckbx As New CheckBox()
    
    Sub New()
    
    End Sub
    
    Public Shadows Event EditingStopped(ByVal sender As Object, ByVal e As EventArgs)
    
    Public Shadows Event EditingCancelled(ByVal sender As Object, ByVal e As EventArgs)
    
    Public Overrides Sub StartEditing(ByVal e As EventArgs, ByVal selectAll As Boolean, ByVal autoClipboard As Boolean)
       MyBase.StartEditing(e, selectAll, autoClipboard)
    End Sub
    
    Public Overrides Sub CancelEditing()
       RaiseEvent EditingCancelled(ckbx, EventArgs.Empty)
       MyBase.FireEditingCanceled()
    End Sub
    
    Public Overrides Function StopEditing() As Boolean
       RaiseEvent EditingStopped(ckbx, EventArgs.Empty)
       MyBase.FireEditingStopped()
       Return True
    End Function
    
    Public Overrides Function IsReservedKey(ByVal e As KeyEventArgs) As Boolean
       Return MyBase.IsReservedKey(e)
    End Function
    
    Public Overrides Function IsReservedLocation(ByVal g As Graphics, ByVal x As Integer, ByVal y As Integer, ByVal r As Rectangle,
    ByVal appr As FarPoint.Win.Spread.Appearance, ByVal value As Object, ByVal zoom As Single) As Object
       Return MyBase.IsReservedLocation(g, x, y, r, appr, value, zoom)
    End Function
    
    Public Overrides Function GetPreferredSize(ByVal g As Graphics, ByVal s As Size, ByVal appr As FarPoint.Win.Spread.Appearance,
    ByVal value As Object, ByVal zoom As Single) As Size
       Return MyBase.GetPreferredSize(g, s, appr, value, zoom)
    End Function
    
    Public Overrides Function Parse(ByVal s As String) As Object
       Return MyBase.Parse(s)
    End Function
    
    Public Overrides Function Format(ByVal o As Object) As String
       Return MyBase.Format(o)
    End Function
    
    Public Overrides Function GetEditorControl(ByVal appr As FarPoint.Win.Spread.Appearance, ByVal zoom As Single) As Control
       Return ckbx
    End Function
    
    Public Overrides Function GetEditorValue() As Object
       Return ckbx.CheckState
    End Function
    
    Public Overrides Sub PaintCell(ByVal g As Graphics, ByVal r As Rectangle, ByVal appr As FarPoint.Win.Spread.Appearance, ByVal
    Value As Object, ByVal issel As Boolean, ByVal islocked As Boolean, ByVal zoom As Single)
       GetEditorValue()
       If ckbx.CheckState = CheckState.Checked Then
          ControlPaint.DrawCheckBox(g, r.X, r.Y, r.Width - 40, r.Height - 6, ButtonState.Checked)
       ElseIf ckbx.CheckState = CheckState.Unchecked Then
          ControlPaint.DrawCheckBox(g, r.X, r.Y, r.Width - 40, r.Height - 6, ButtonState.Normal)
       End If
    End Sub
    
    Public Overrides Sub SetEditorValue(ByVal value As Object)
       ckbx.CheckState = CheckState.Checked
    End Sub
    
    Public Overrides Function GetReservedCursor(ByVal o As Object) As Cursor
       Return MyBase.GetReservedCursor(o)
    End Function
    End Class
    
    Private Sub MenuItem1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MenuItem1.Click
       Dim ckbx As New myCkBox()
       fpSpread1.ActiveSheet.Cells(0, 0).CellType = ckbx
    End Sub
    
    See Also