public override void Render(GUIRenderContext Context) { Skin skin = this._Style.Skin; Surface surfback = skin.GetSurface(this._Style.Backing, this.Size); Context.DrawSurface(surfback); double width = this.Size.X * this._Value; Rectangle clip = new Rectangle(0, 0, width, this.Size.Y); Context.PushClip(clip); Surface surfprog = skin.GetSurface(this._Style.Progress, this.Size); Context.DrawSurface(surfprog); Context.Pop(); }
/// <summary> /// Renders a shadow for the hovering control. The context given will not be translated or clipped from /// the layer container. /// </summary> public virtual void RenderShadow(Point Position, GUIRenderContext Context) { ShadowStyle ss = this._Container.Style.DefaultShadowStyle; double width = ss.Width; Context.DrawSurface(ss.Skin.GetSurface(ss.Image, this.Size + new Point(width * 2.0, width * 2.0)), Position - new Point(width, width)); }
/// <summary> /// Renders the item to the specified location. /// </summary> public void Render(GUIRenderContext Context, PopupStyle Style, Rectangle Area) { CommandMenuItem cmi = Source as CommandMenuItem; if (cmi != null) { Context.DrawText(Style.TextColor, this.Sample, Area); } CompoundMenuItem cpmi = Source as CompoundMenuItem; if (cpmi != null) { Context.DrawText(Style.TextColor, this.Sample, Area); Point arrowsize = Style.CompoundArrowSize; Context.DrawSurface( Style.Skin.GetSurface(Style.CompoundArrow, arrowsize), new Point(Area.Location.X + Area.Size.X - arrowsize.X, Area.Location.Y + Area.Size.Y * 0.5 - arrowsize.Y * 0.5)); } SeperatorMenuItem smi = Source as SeperatorMenuItem; if (smi != null) { Context.DrawSurface( Style.Skin.GetSurface(Style.Seperator, new Point(Area.Size.X, Style.SeperatorHeight)), Area.Location + new Point(0.0, Style.SeperatorPadding)); } }
public override void Render(GUIRenderContext Context) { Skin s = this._Style.Skin; double areastart; double areaend; double areasize; double sliderstart; double slidersize; this._GetScrollMeasurements(out areastart, out areaend, out areasize, out sliderstart, out slidersize); slidersize = Math.Round(slidersize); areastart = Math.Round(areastart); sliderstart = Math.Round(sliderstart); if (this._Direction == Axis.Horizontal) { Context.DrawSurface(s.GetSurface(this._Style.HorizontalBackground, new Point(areasize, this.Size.Y)), new Point(areastart, 0.0)); if (this._Enabled) { Context.DrawSurface(s.GetSurface(this._Style.HorizontalSlider, new Point(slidersize, this.Size.Y)), new Point(sliderstart, 0.0)); } } else { Context.DrawSurface(s.GetSurface(this._Style.VerticalBackground, new Point(this.Size.X, areasize)), new Point(0.0, areastart)); if (this._Enabled) { Context.DrawSurface(s.GetSurface(this._Style.VerticalSlider, new Point(this.Size.X, slidersize)), new Point(0.0, sliderstart)); } } this._TopLeftButton.Render(Context); Context.PushTranslate(this._BottomRightButtonOffset); this._BottomRightButton.Render(Context); Context.Pop(); }
public override void Render(GUIRenderContext Context) { PopupStyle style = this._Style; Skin s = style.Skin; Context.DrawSurface(s.GetSurface(style.Back, this.Size)); Rectangle inner = new Rectangle(this.Size).Margin(this._Style.Margin); foreach (_Item i in this._Items) { if (this._Active == i) { SkinArea sa = this._MouseDown ? style.PushedItem : style.ActiveItem; Context.DrawSurface(s.GetSurface(sa, new Point(this.Size.X, i.Size.Y)), new Point(0.0, i.Y + inner.Location.Y)); } i.Render(Context, style, new Rectangle(0.0, i.Y, inner.Size.X, i.Size.Y) + inner.Location); } }
public override void Render(GUIRenderContext Context) { Skin s = this._Style.Skin; Context.DrawSurface(s.GetSurface(this._Style.Textbox, this.Size)); Rectangle inner = new Rectangle(this.Size).Margin(this._Style.InteriorMargin); Context.PushClip(inner); // Draw text Point texloc = new Point(inner.Location.X, inner.Location.Y + inner.Size.Y / 2.0 - this._TextSample.Size.Y / 2.0); Context.DrawText(this._Style.TextColor, this._TextSample, texloc); // Draw selection if (this._Selection != null) { int starti; int endi; this._Selection.Order(out starti, out endi); Rectangle[] charbounds = this._TextSample.CharacterBounds; if (endi - starti > 0) { double startx = inner.Location.X + SelectionX(charbounds, starti); double endx = inner.Location.X + SelectionX(charbounds, endi); Rectangle clip = new Rectangle(startx, inner.Location.Y, endx - startx, inner.Size.Y); Context.PushClip(clip); Context.DrawSolid(this._Style.SelectionBackgroundColor, clip); Context.DrawText(this._Style.SelectionTextColor, this._TextSample, texloc); Context.Pop(); } // Draw cursor if (_CursorFlashTime > 0.0) { int curi = this._Selection.Start; double cursx = inner.Location.X + SelectionX(charbounds, curi); Context.DrawSolid(this._Style.CursorColor, new Rectangle(cursx, inner.Location.Y, 1.0, inner.Size.Y)); } } Context.Pop(); }
public override void Render(GUIRenderContext Context) { Skin s = this._Style.Skin; Surface sf; if (this._MouseOver) { if (this._MouseDown) { sf = s.GetSurface(this._Style.Pushed, this.Size); } else { sf = s.GetSurface(this._Style.Active, this.Size); } } else { sf = s.GetSurface(this._Style.Normal, this.Size); } Context.DrawSurface(sf); // Render client, if any if (this._Client != null) { Context.PushTranslate(new Point(this._Style.ClientMargin, this._Style.ClientMargin)); this._Client.Render(Context); Context.Pop(); } }
public override void Render(GUIRenderContext Context) { CheckboxStyle style = this._Style; Skin s = style.Skin; Surface surfbox = s.GetSurface(style.Box, style.BoxSize); Context.DrawSurface(surfbox); if(this.Checked) { Surface surftick = s.GetSurface(style.Tick, style.BoxSize); Context.DrawSurface(surftick); } Rectangle textrect = new Rectangle(style.BoxSize.X + style.Padding, 0, this.Size.X - style.BoxSize.X, this.Size.Y); if(this._Sample == null) this._Sample = style.TextFont.CreateSample(this._Text, textrect.Size, TextAlign.Left, TextAlign.Top, TextWrap.Wrap); Context.DrawText(style.TextColor, this._Sample, textrect); }
public override void Render(GUIRenderContext Context) { Rectangle clirect = this.ClientRectangle; // Back Context.DrawSolid(this._Style.BackColor, clirect); // Client Context.PushTranslate(clirect.Location); this._Client.Render(Context); Context.Pop(); // Form Skin s = this._Style.Skin; Context.DrawSurface(s.GetSurface(this._Style.Form, this._Style.Form.Width / 2, this._Style.FormVerticalStretchLine, this.Size)); // Right of the title bar. Context.PushTranslate(this._RightTitleBarOffset); this._RightTitleBar.Render(Context); Context.Pop(); // Text if (this._Text != null && this._Text != "") { Rectangle textrect = new Rectangle( this._Style.TitleBarLeftRightMargin, this._Style.TitleBarTopMargin, this.Size.X - this._Style.TitleBarLeftRightMargin - this._RightTitleBar.Size.X - this._Style.TitleBarItemSeperation, this._Style.TitleBarSize - this._Style.TitleBarTopMargin - this._Style.TitleBarBottomMargin); if (this._TextSample == null) { this._TextSample = this._Style.TitleBarFont.CreateSample(this._Text, textrect.Size, TextAlign.Left, TextAlign.Center, TextWrap.Ellipsis); } Context.DrawText(this._Style.TitleBarTextColor, this._TextSample, textrect); } }