public override Region GetRegion(Graphics dc, Rectangle rect) { Region ret; if (IsDefined(VisualStyleElement.ToolTip.Balloon.Normal)) { VisualStyleRenderer renderer = new VisualStyleRenderer(VisualStyleElement.ToolTip.Balloon.Normal); ret = renderer.GetBackgroundRegion(dc, rect); } else ret = new Region(rect); return ret; }
Region ManagedWindowGetWindowRegion (Form form) { if (form.WindowManager is MdiWindowManager && form.WindowManager.IsMaximized) return null; VisualStyleElement title_bar_element = ManagedWindowGetTitleBarVisualStyleElement (form.WindowManager); if (!VisualStyleRenderer.IsElementDefined (title_bar_element)) return null; VisualStyleRenderer renderer = new VisualStyleRenderer (title_bar_element); if (!renderer.IsBackgroundPartiallyTransparent ()) return null; IDeviceContext dc = GetMeasurementDeviceContext (); Rectangle title_bar_rectangle = ManagedWindowGetTitleBarRectangle (form.WindowManager); Region region = renderer.GetBackgroundRegion (dc, title_bar_rectangle); ReleaseMeasurementDeviceContext (dc); region.Union (new Rectangle (0, title_bar_rectangle.Bottom, form.Width, form.Height)); return region; }
public void method_0(Point point, string text) { _toolTip.Text = text; var size = Size.Ceiling(_toolTip.method_0(text)); size.Height += 4; size.Width += 4; point.Y += 19; var screen = Screen.FromPoint(point); if (point.X < screen.Bounds.Left) point.X = screen.Bounds.Left; if (point.X + size.Width > screen.Bounds.Right) { point.X = screen.Bounds.Right - size.Width; if (point.X < screen.Bounds.Left) { return; } } if (point.Y < screen.Bounds.Top) { point.Y = screen.Bounds.Top; } if (point.Y + size.Height > screen.Bounds.Bottom) { point.Y = screen.Bounds.Bottom - size.Height; if (point.Y < screen.Bounds.Top) { return; } point.X++; } Native.SetWindowPos(_toolTip.Handle, new IntPtr(-1), point.X, point.Y, size.Width, size.Height, 80); var normal = VisualStyleElement.ToolTip.Standard.Normal; if (Application.RenderWithVisualStyles && VisualStyleRenderer.IsElementDefined(normal)) { var renderer = new VisualStyleRenderer(normal); using (var g = _toolTip.CreateGraphics()) _toolTip.Region = renderer.GetBackgroundRegion(g, _toolTip.ClientRectangle); } _toolTip.Invalidate(); _tooltipShown = true; if (_ownerForm != null) _ownerForm.Deactivate -= OnFormDeactivate; _ownerForm = FindTopContainingForm(_control); if (_ownerForm == null) return; _ownerForm.Deactivate += OnFormDeactivate; _toolTip.Owner = _ownerForm; }
public static Region GetRegion(IDeviceContext dc, Size minSize, Size maxSize, string title, string text, ToolTipIcon icon, Padding padding) { Region ret; Rectangle titleRect; Rectangle rect = GetRect(dc, minSize, maxSize, title, text, out titleRect, icon, padding); if (Application.RenderWithVisualStyles) { VisualStyleRenderer renderer = new VisualStyleRenderer(VisualStyleElement.ToolTip.Balloon.Normal); ret = renderer.GetBackgroundRegion(dc, rect); } else { throw new NotImplementedException(); } return ret; }