protected void RenderBackground(IDrawingToolkit tk, Area backgroundArea, Color backgroundColor) { /* Background */ tk.LineWidth = 0; tk.FillColor = backgroundColor; tk.DrawRectangle(backgroundArea.Start, backgroundArea.Width, backgroundArea.Height); }
public void Clear(Color color) { SetColor(color); CContext.Operator = Operator.Source; CContext.Paint(); CContext.Operator = Operator.Over; }
void HandleDrawableChangedEvent(IEnumerable <IBlackboardObject> drawables) { selectedDrawable = (drawables == null || drawables.Count() > 1) ? null : drawables.FirstOrDefault() as Drawable; colorbutton.Sensitive = !(selectedDrawable is Text); ignoreChanges = true; if (selectedDrawable == null) { colorbutton.Color = Misc.ToGdkColor(blackboard.Color); colorbutton.Alpha = Color.ByteToUShort(blackboard.Color.A); textcolorbutton.Color = Misc.ToGdkColor(blackboard.TextColor); backgroundcolorbutton.Color = Misc.ToGdkColor(blackboard.TextBackgroundColor); backgroundcolorbutton.Alpha = Color.ByteToUShort(blackboard.TextBackgroundColor.A); linesizespinbutton.Value = OriginalSize(blackboard.LineWidth); if (blackboard.LineStyle == LineStyle.Normal) { stylecombobox.Active = 0; } else { stylecombobox.Active = 1; } typecombobox.Active = (int)blackboard.LineType; } else { if (selectedDrawable is Text) { textcolorbutton.Color = Misc.ToGdkColor((selectedDrawable as Text).TextColor); backgroundcolorbutton.Color = Misc.ToGdkColor(selectedDrawable.FillColor); backgroundcolorbutton.Alpha = Color.ByteToUShort(selectedDrawable.FillColor.A); textspinbutton.Value = OriginalSize((selectedDrawable as Text).TextSize); } else { colorbutton.Color = Misc.ToGdkColor(selectedDrawable.StrokeColor); colorbutton.UseAlpha = true; colorbutton.Alpha = Color.ByteToUShort(selectedDrawable.StrokeColor.A); } if (selectedDrawable is Line) { typecombobox.Active = (int)(selectedDrawable as Line).Type; } linesizespinbutton.Value = OriginalSize(selectedDrawable.LineWidth); if (selectedDrawable.Style == LineStyle.Normal) { stylecombobox.Active = 0; } else { stylecombobox.Active = 1; } } UpdateSettingsVisibility(blackboard.Tool); ignoreChanges = false; }
protected void RenderColorStrip(IDrawingToolkit tk, Area backgroundArea, Color color) { Point p = new Point(backgroundArea.Left + LEFT_OFFSET, backgroundArea.Start.Y); //Draw Color strip tk.FillColor = color; tk.StrokeColor = color; tk.DrawRectangle(p, COLOR_RECTANGLE_WIDTH, backgroundArea.Height); }
void SetButtonColor(DrawingArea area, Color color) { Gdk.Color gcolor = Misc.ToGdkColor(color); area.ModifyBg(StateType.Normal, gcolor); area.ModifyBg(StateType.Active, gcolor); area.ModifyBg(StateType.Insensitive, gcolor); area.ModifyBg(StateType.Prelight, gcolor); area.ModifyBg(StateType.Selected, gcolor); }
void RenderType(string name, int childsCount, Color color, IDrawingToolkit tk, IContext context, Area backgroundArea, Area cellArea, CellState state) { Point textP = new Point(Sizes.ListTextOffset, backgroundArea.Start.Y); tk.Context = context; tk.Begin(); RenderBackgroundAndTitleText(tk, backgroundArea, textP, cellArea.Width - textP.X, name, App.Current.Style.ScreenBase, color); RenderCount(childsCount, tk, backgroundArea, cellArea); RenderSeparationLine(tk, context, backgroundArea); tk.End(); }
void SetColor(Color color) { if (color != null) { CContext.SetSourceRGBA((double)color.R / byte.MaxValue, (double)color.G / byte.MaxValue, (double)color.B / byte.MaxValue, (double)color.A / byte.MaxValue); } else { CContext.SetSourceRGBA(0, 0, 0, 0); } }
public UpgradeLimitationPanel() { this.Build(); eventbox.ModifyBg(StateType.Normal, Helpers.Misc.ToGdkColor(App.Current.Style.ScreenBase)); header.ModifyFont(FontDescription.FromString($"{App.Current.Style.Font} normal {HEADER_LABEL_SIZE}px")); featuresHeader.ModifyFont(FontDescription.FromString($"{App.Current.Style.Font} light {FEATURE_HEADER_LABEL_SIZE}px")); featuresCaption.ModifyFont(FontDescription.FromString($"{App.Current.Style.Font} light {FEATURE_LABEL_SIZE}px")); upgradeButton2 = ButtonHelper.CreateButton(); upgradeButton2.Name = StyleConf.ButtonCallToActionRounded; upgradeButton2.WidthRequest = 240; upgradeButton2.HeightRequest = 40; upgradeButton2.BorderWidth = 0; undecidedlbl = new Label(); undecidedlbl.WidthRequest = 240; undecidedlbl.HeightRequest = 11; undecidedlbl.Justify = Justification.Center; undecidedlbl.ModifyFont(FontDescription.FromString($"{App.Current.Style.Font} light {UNDECIDED_LABEL_SIZE}px")); undecidedlbl.ModifyText(StateType.Normal, Helpers.Misc.ToGdkColor(CommonColor.Parse(UNDECIDED_COLOR))); seeOtherPlanslbl = new Label(); seeOtherPlanslbl.WidthRequest = 240; seeOtherPlanslbl.HeightRequest = 14; seeOtherPlanslbl.Justify = Justification.Center; seeOtherPlanslbl.ModifyFont(FontDescription.FromString($"{App.Current.Style.Font} normal {FEATURE_LABEL_SIZE}px")); seeOtherPlanslbl.ModifyText(StateType.Normal, Helpers.Misc.ToGdkColor(CommonColor.Parse(UPGRADE_BUTTON_COLOR))); captionBackgroundHeader = new ImageView(App.Current.ResourcesLocator.LoadImage(Images.UpgradeDialogBackgroundTop)); captionFixedHeader.Put(captionBackgroundHeader, 0, 0); captionBackgroundBottom = new ImageView(App.Current.ResourcesLocator.LoadImage(Images.UpgradeDialogBackgroundBottom)); captionFixedBottom.Put(captionBackgroundBottom, 0, 0); captionFixedBottom.Put(upgradeButton2, (captionBackgroundBottom.Image.Width / 2) - (upgradeButton2.WidthRequest / 2), 0); captionFixedBottom.Put(undecidedlbl, (captionBackgroundBottom.Image.Width / 2) - (undecidedlbl.WidthRequest / 2), upgradeButton2.HeightRequest + 15); captionFixedBottom.Put(seeOtherPlanslbl, (captionBackgroundBottom.Image.Width / 2) - (seeOtherPlanslbl.WidthRequest / 2), upgradeButton2.HeightRequest + 15 + undecidedlbl.HeightRequest + 5); WidthRequest = captionBackgroundBottom.Image.Width; header.WidthRequest = WidthRequest - (int)headersAlignment.LeftPadding - (int)headersAlignment.RightPadding; header.Wrap = true; header.LineWrap = true; featuresHeader.WidthRequest = WidthRequest - (int)headersAlignment.LeftPadding - (int)headersAlignment.RightPadding; featuresHeader.Wrap = true; featuresHeader.LineWrap = true; Bind(); }
public ContextStatus(Color strokeColor, Color fillColor, Style fSlant, Weight fWeight, Pango.Alignment alignment, int lineWidth, int fontSize, string fontFamily, LineStyle lineStyle, bool clear) { StrokeColor = strokeColor; FillColor = fillColor; FSlant = fSlant; FWeight = fWeight; Alignment = alignment; LineWidth = lineWidth; FontSize = fontSize; FontFamily = fontFamily; LineStyle = lineStyle; Clear = clear; }
void HandleColorSet(object sender, EventArgs e) { if (ignore) { return; } VASColor c = Helpers.Misc.ToLgmColor((sender as ColorButton).Color); if (sender == colorbutton1) { button.BackgroundColor = c; } else { button.TextColor = c; } Edited = true; }
void HandleColorSet(object sender, EventArgs e) { if (ignoreChanges) { return; } if (selectedDrawable != null) { selectedDrawable.StrokeColor = Misc.ToLgmColor(colorbutton.Color, colorbutton.Alpha); if (selectedDrawable.FillColor != null) { Color c = Misc.ToLgmColor(colorbutton.Color, colorbutton.Alpha); selectedDrawable.FillColor = c; } QueueDraw(); } else { blackboard.Color = Misc.ToLgmColor(colorbutton.Color, colorbutton.Alpha); } }
public static LColor ToLgmColor(Color color, ushort alpha = ushort.MaxValue) { return(LColor.ColorFromUShort(color.Red, color.Green, color.Blue, alpha)); }
public static Color ToGdkColor(LColor color) { return(new Color(color.R, color.G, color.B)); }
public static global::Cairo.Color RGBToCairoColor(Color c) { return(new global::Cairo.Color(ByteToDouble(c.R), ByteToDouble(c.G), ByteToDouble(c.B))); }
public DrawingTool() { this.Build(); blackboard = new Blackboard(new WidgetWrapper(drawingarea)); blackboard.ConfigureObjectEvent += HandleConfigureObjectEvent; blackboard.ShowMenuEvent += HandleShowMenuEvent; blackboard.DrawableChangedEvent += HandleDrawableChangedEvent; blackboard.DrawToolChanged += HandleDrawToolChangedEvent; blackboard.RegionOfInterestChanged += HandleRegionOfInterestChanged; selectbutton.Active = true; buttonToDrawTool = new Dictionary <RadioButton, DrawTool> () { { selectbutton, DrawTool.Selection }, { eraserbutton, DrawTool.Eraser }, { penbutton, DrawTool.Pen }, { textbutton, DrawTool.Text }, { linebutton, DrawTool.Line }, { crossbutton, DrawTool.Cross }, { rectanglebutton, DrawTool.Rectangle }, { ellipsebutton, DrawTool.Ellipse }, { rectanglefilledbutton, DrawTool.RectangleArea }, { ellipsefilledbutton, DrawTool.CircleArea }, { numberbutton, DrawTool.Counter }, { anglebutton, DrawTool.Angle }, { playerbutton, DrawTool.Player }, { zoombutton, DrawTool.Zoom }, }; foreach (var button in buttonToDrawTool.Keys) { button.Name = "DrawingToolButton-" + button.Name; button.Toggled += HandleToolClicked; } CreateToolSettings(); UpdateSettingsVisibility(DrawTool.Selection); selectbuttonimage.Image = App.Current.ResourcesLocator.LoadIcon("vas-select", 20); eraserbuttonimage.Image = App.Current.ResourcesLocator.LoadIcon("vas-eraser", 20); penbuttonimage.Image = App.Current.ResourcesLocator.LoadIcon("vas-pencil", 20); textbuttonimage.Image = App.Current.ResourcesLocator.LoadIcon("vas-text", 20); linebuttonimage.Image = App.Current.ResourcesLocator.LoadIcon("vas-arrow", 20); crossbuttonimage.Image = App.Current.ResourcesLocator.LoadIcon("vas-mark", 20); rectanglebuttonimage.Image = App.Current.ResourcesLocator.LoadIcon("vas-square", 20); ellipsebuttonimage.Image = App.Current.ResourcesLocator.LoadIcon("vas-circle", 20); rectanglefilledbuttonimage.Image = App.Current.ResourcesLocator.LoadIcon("vas-square-fill", 20); ellipsefilledbuttonimage.Image = App.Current.ResourcesLocator.LoadIcon("vas-circle-fill", 20); playerbuttonimage.Image = App.Current.ResourcesLocator.LoadIcon("vas-person", 20); numberbuttonimage.Image = App.Current.ResourcesLocator.LoadIcon("vas-counter", 20); anglebuttonimage.Image = App.Current.ResourcesLocator.LoadIcon("vas-angle", 20); zoombuttonimage.Image = App.Current.ResourcesLocator.LoadIcon("vas-search", 20); zoomoutimage.Image = App.Current.ResourcesLocator.LoadIcon("vas-zoom-out", 14); zoominimage.Image = App.Current.ResourcesLocator.LoadIcon("vas-zoom-in", 14); // Force tooltips to be translatable as there seems to be a bug in stetic // code generation for translatable tooltips. selectbutton.TooltipMarkup = Catalog.GetString("Selection tool"); eraserbutton.TooltipMarkup = Catalog.GetString("Eraser tool"); penbutton.TooltipMarkup = Catalog.GetString("Pencil tool"); textbutton.TooltipMarkup = Catalog.GetString("Text tool"); linebutton.TooltipMarkup = Catalog.GetString("Line tool"); crossbutton.TooltipMarkup = Catalog.GetString("Cross tool"); rectanglebutton.TooltipMarkup = Catalog.GetString("Rectangle tool"); ellipsebutton.TooltipMarkup = Catalog.GetString("Ellipse tool"); rectanglefilledbutton.TooltipMarkup = Catalog.GetString("Rectangle area tool"); ellipsefilledbutton.TooltipMarkup = Catalog.GetString("Ellipsis area tool"); playerbutton.TooltipMarkup = Catalog.GetString("Player tool"); numberbutton.TooltipMarkup = Catalog.GetString("Index tool"); anglebutton.TooltipMarkup = Catalog.GetString("Angle tool"); stylecombobox.TooltipMarkup = Catalog.GetString("Change the line style"); typecombobox.TooltipMarkup = Catalog.GetString("Change the line style"); clearbutton.TooltipMarkup = Catalog.GetString("Clear all drawings"); zoombutton.TooltipMarkup = Catalog.GetString("Zoom tool. Click to zoom in, Alt+Shift to zoom out"); FillLineStyle(); FillLineType(); colorbutton.ColorSet += HandleColorSet; colorbutton.Color = Misc.ToGdkColor(Color.Red1); colorbutton.UseAlpha = true; colorbutton.Alpha = Color.FloatToUShort(0.8f); blackboard.Color = Color.Red1; blackboard.Color.SetAlpha(0.8f); textcolorbutton.ColorSet += HandleTextColorSet; textcolorbutton.Color = Misc.ToGdkColor(Color.White); blackboard.TextColor = Color.White; backgroundcolorbutton.UseAlpha = true; backgroundcolorbutton.Alpha = 0; backgroundcolorbutton.ColorSet += HandleBackgroundColorSet; backgroundcolorbutton.Color = Misc.ToGdkColor(Color.Green1); blackboard.TextBackgroundColor = Misc.ToLgmColor(backgroundcolorbutton.Color, backgroundcolorbutton.Alpha); textspinbutton.Value = 12; textspinbutton.ValueChanged += (sender, e) => UpdateTextSize(); linesizespinbutton.ValueChanged += (sender, e) => UpdateLineWidth(); linesizespinbutton.Value = 2; zoomscale.CanFocus = false; hscrollbar.ValueChanged += HandleScrollValueChanged; wscrollbar.ValueChanged += HandleScrollValueChanged; hscrollbar.Visible = wscrollbar.Visible = false; Misc.SetFocus(this, false); var saveToFileCommand = new AsyncCommand(SaveToFile); saveToFileCommand.Icon = App.Current.ResourcesLocator.LoadIcon("vas-save", App.Current.Style.IconSmallWidth); saveToFileCommand.Text = Catalog.GetString("Save to File"); savebutton.BindManually(saveToFileCommand); var saveToProjectCommand = new AsyncCommand(SaveToProject); saveToProjectCommand.Icon = App.Current.ResourcesLocator.LoadIcon("vas-save", App.Current.Style.IconSmallWidth); saveToProjectCommand.Text = Catalog.GetString("Save to Project"); savetoprojectbutton.BindManually(saveToProjectCommand); var clearCommand = new Command(Clear); clearCommand.Icon = App.Current.ResourcesLocator.LoadIcon("vas-delete", App.Current.Style.IconSmallWidth); clearbutton.BindManually(clearCommand); Bind(); }
void RenderBackgroundAndTitleText(IDrawingToolkit tk, Area backgroundArea, Point textP, double textW, string text, Color backgroundColor, Color textColor) { /* Background */ RenderBackground(tk, backgroundArea, backgroundColor); /* Text */ tk.StrokeColor = textColor; tk.FontSize = Sizes.ListTextFontSize; tk.FontWeight = FontWeight.Bold; tk.FontAlignment = FontAlignment.Left; tk.DrawText(textP, textW, backgroundArea.Height, text, false, true); }
protected void RenderChildText(IDrawingToolkit tk, Point p, int width, int height, string text, Color textColor) { tk.StrokeColor = textColor; tk.FontSize = 12; tk.FontWeight = FontWeight.Normal; tk.FontAlignment = FontAlignment.Left; tk.DrawText(p, width, height, text, false, true); }
protected void RenderChildLongText(IDrawingToolkit tk, Area backgroundArea, Point textP, double textW, string text, Color textColor) { /* Text */ tk.StrokeColor = textColor; tk.FontSize = 11; tk.FontWeight = FontWeight.Light; tk.FontAlignment = FontAlignment.Left; tk.DrawText(textP, textW, backgroundArea.Height, text, false, true); }