/// <summary> /// invaldate control /// </summary> internal virtual void Invalidate(bool wholeParent) { if (ContainerManager is BasicControlsManager) { BasicControlsManager staticControlsManager = (BasicControlsManager)ContainerManager; if (staticControlsManager != null) { if (wholeParent) { //invalidate all container control - to remove reminders of old line _containerControl.Invalidate(); InvalidateSemiTransparentControls(_containerControl, null); } else { Point offset = staticControlsManager.ContainerOffset(); Rectangle rect = getRectangle(); rect.Offset(offset.X, offset.Y); _containerControl.Invalidate(rect); InvalidateSemiTransparentControls(_containerControl, (Rectangle?)rect); } } } else if (ContainerManager is TableManager) { _containerControl.Invalidate(getRectangle()); } }
/// <summary> /// implement interface /// </summary> /// <param name = "cellRectangle"></param> /// <returns></returns> Rectangle BoundsComputer.computeEditorBounds(Rectangle cellRectangle, bool isHeaderEditor) { Point offset = _staticControlsManager.ContainerOffset(); Rectangle rect = DisplayRect; rect.Offset(offset.X, offset.Y); return(rect); }
/// <summary> /// ofset static controls according to container's offset /// </summary> /// <param name = "rect"></param> internal void offsetStaticControlRect(ref Rectangle rect) { BasicControlsManager staticControlsManager = ContainerManager as BasicControlsManager; if (staticControlsManager != null) { Point offset = staticControlsManager.ContainerOffset(); rect.Offset(offset.X, offset.Y); } }
/// <summary> /// paint line control /// </summary> /// <param name="g"></param> internal override void paintForeground(Graphics g, Rectangle rect, Color fgColor) { if (!Visible) { return; } Point pt1 = new Point(X1, Y1); Point pt2 = new Point(X2, Y2); #if PocketPC BasicControlsManager staticControlsManager = ContainerManager as BasicControlsManager; if (staticControlsManager != null) { Point offset = staticControlsManager.ContainerOffset(); pt1.Offset(offset.X, offset.Y); pt2.Offset(offset.X, offset.Y); } #endif ControlRenderer.PaintLineForeGround(g, fgColor, LineHelper.Style, LineHelper.LineWidth, LineHelper.LineStyle, pt1, pt2); }