From bc8aead4717add1f9272a083a14b21f9e4f66462 Mon Sep 17 00:00:00 2001 From: Pedro Larouca Date: Sat, 27 Jan 2018 19:12:24 +0000 Subject: [PATCH] Separeted widgets into files --- .../Samples/Sections/Widgets/ButtonSection.cs | 70 ------------------- .../Sections/Widgets/ColorButtonSection.cs | 38 ++++++++++ .../Sections/Widgets/LinkButtonSection.cs | 25 +++++++ .../Sections/Widgets/SpinButtonSection.cs | 32 +++++++++ .../Sections/Widgets/SwitchButtonSection.cs | 26 +++++++ .../Sections/Widgets/ToggleButtonSection.cs | 32 +++++++++ 6 files changed, 153 insertions(+), 70 deletions(-) create mode 100644 Source/Samples/Sections/Widgets/ColorButtonSection.cs create mode 100644 Source/Samples/Sections/Widgets/LinkButtonSection.cs create mode 100644 Source/Samples/Sections/Widgets/SpinButtonSection.cs create mode 100644 Source/Samples/Sections/Widgets/SwitchButtonSection.cs create mode 100644 Source/Samples/Sections/Widgets/ToggleButtonSection.cs diff --git a/Source/Samples/Sections/Widgets/ButtonSection.cs b/Source/Samples/Sections/Widgets/ButtonSection.cs index b100301c1..d5f4d09e1 100644 --- a/Source/Samples/Sections/Widgets/ButtonSection.cs +++ b/Source/Samples/Sections/Widgets/ButtonSection.cs @@ -15,11 +15,6 @@ namespace Samples AddItem(CreateImageButton()); AddItem(CreateImageTextButton()); AddItem(CreateActionButton()); - AddItem(CreateToggleButton()); - AddItem(CreateLinkButton()); - AddItem(CreateSpinButton()); - AddItem(CreateSwitchButton()); - AddItem(CreateColorButton()); } public (string, Widget) CreateSimpleButton() @@ -72,70 +67,5 @@ namespace Samples return ("Action button:", btn); } - - public (string, Widget) CreateToggleButton() - { - var btn = new ToggleButton("Toggle Me"); - btn.Toggled += (sender, e) => ApplicationOutput.WriteLine(sender, "Buton Toggled"); - - return ("Toggle button:", btn); - } - - public (string, Widget) CreateLinkButton() - { - var btn = new LinkButton("A simple link button"); - btn.Clicked += (sender, e) => ApplicationOutput.WriteLine(sender, "Link button Clicked"); - - return ("Link button:", btn); - } - - public (string, Widget) CreateSpinButton() - { - // Spinbutton constructor takes MinValue, MaxValue and StepValue - var btn = new SpinButton(0, 1000, 1); - - // Button constructor also takes the adjustment object - // and it can be redefined any time like CurrentVal, MinVal, MaxVal, Step, PageStep, PageSize - btn.Adjustment.Configure(888, 0, 1000, 1, 100, 0); - - // Default values are double, use ValueAsInt method to get Int - btn.ValueChanged += (sender, e) => - ApplicationOutput.WriteLine(sender, $"Spin button changed: {btn.ValueAsInt}"); - - return ("Spin button:", btn); - } - - public (string, Widget) CreateSwitchButton() - { - var btn = new Switch(); - - btn.ButtonReleaseEvent += (o, args) => - ApplicationOutput.WriteLine(o, $"Switch is now: {!btn.Active}"); - - return ("Switch:", btn); - } - - public (string, Widget) CreateColorButton() - { - var btn = new ColorButton(); - - // Set RGBA color - btn.Rgba = new Gdk.RGBA() - { - Red = 0, - Green = 0, - Blue = 255, - Alpha = 0.2 // 20% translucent - }; - - // Or Parse hex - btn.Rgba.Parse("#729FCF"); - - // UseAlpha default is false - btn.UseAlpha = true; - - return ("Color button:", btn); - } - } } \ No newline at end of file diff --git a/Source/Samples/Sections/Widgets/ColorButtonSection.cs b/Source/Samples/Sections/Widgets/ColorButtonSection.cs new file mode 100644 index 000000000..89499750c --- /dev/null +++ b/Source/Samples/Sections/Widgets/ColorButtonSection.cs @@ -0,0 +1,38 @@ +// This is free and unencumbered software released into the public domain. +// Happy coding!!! - GtkSharp Team + +using Gtk; + +namespace Samples +{ + [Section(Name = "Color Button", Category = Category.Widgets)] + class ColorButtonSection : ListSection + { + public ColorButtonSection() + { + AddItem(CreateColorButton()); + } + + public (string, Widget) CreateColorButton() + { + var btn = new ColorButton(); + + // Set RGBA color + btn.Rgba = new Gdk.RGBA() + { + Red = 0, + Green = 0, + Blue = 255, + Alpha = 0.2 // 20% translucent + }; + + // Or Parse hex + btn.Rgba.Parse("#729FCF"); + + // UseAlpha default is false + btn.UseAlpha = true; + + return ("Color button:", btn); + } + } +} diff --git a/Source/Samples/Sections/Widgets/LinkButtonSection.cs b/Source/Samples/Sections/Widgets/LinkButtonSection.cs new file mode 100644 index 000000000..ed898361e --- /dev/null +++ b/Source/Samples/Sections/Widgets/LinkButtonSection.cs @@ -0,0 +1,25 @@ + +// This is free and unencumbered software released into the public domain. +// Happy coding!!! - GtkSharp Team + +using Gtk; + +namespace Samples +{ + [Section(Name = "Link Button", Category = Category.Widgets)] + class LinkButtonSection : ListSection + { + public LinkButtonSection() + { + AddItem(CreateLinkButton()); + } + + public (string, Widget) CreateLinkButton() + { + var btn = new LinkButton("A simple link button"); + btn.Clicked += (sender, e) => ApplicationOutput.WriteLine(sender, "Link button Clicked"); + + return ("Link button:", btn); + } + } +} diff --git a/Source/Samples/Sections/Widgets/SpinButtonSection.cs b/Source/Samples/Sections/Widgets/SpinButtonSection.cs new file mode 100644 index 000000000..3b611c065 --- /dev/null +++ b/Source/Samples/Sections/Widgets/SpinButtonSection.cs @@ -0,0 +1,32 @@ +// This is free and unencumbered software released into the public domain. +// Happy coding!!! - GtkSharp Team + +using Gtk; + +namespace Samples +{ + [Section(Name = "Spin Button", Category = Category.Widgets)] + class SpinButtonSection : ListSection + { + public SpinButtonSection() + { + AddItem(CreateSpinButton()); + } + + public (string, Widget) CreateSpinButton() + { + // Spinbutton constructor takes MinValue, MaxValue and StepValue + var btn = new SpinButton(0, 1000, 1); + + // Button constructor also takes the adjustment object + // and it can be redefined any time like CurrentVal, MinVal, MaxVal, Step, PageStep, PageSize + btn.Adjustment.Configure(888, 0, 1000, 1, 100, 0); + + // Default values are double, use ValueAsInt method to get Int + btn.ValueChanged += (sender, e) => + ApplicationOutput.WriteLine(sender, $"Spin button changed: {btn.ValueAsInt}"); + + return ("Spin button:", btn); + } + } +} diff --git a/Source/Samples/Sections/Widgets/SwitchButtonSection.cs b/Source/Samples/Sections/Widgets/SwitchButtonSection.cs new file mode 100644 index 000000000..9d76b6090 --- /dev/null +++ b/Source/Samples/Sections/Widgets/SwitchButtonSection.cs @@ -0,0 +1,26 @@ +// This is free and unencumbered software released into the public domain. +// Happy coding!!! - GtkSharp Team + +using Gtk; + +namespace Samples +{ + [Section(Name = "Switch Button", Category = Category.Widgets)] + class SwitchButtonSection : ListSection + { + public SwitchButtonSection() + { + AddItem(CreateSwitchButton()); + } + + public (string, Widget) CreateSwitchButton() + { + var btn = new Switch(); + + btn.ButtonReleaseEvent += (o, args) => + ApplicationOutput.WriteLine(o, $"Switch is now: {!btn.Active}"); + + return ("Switch:", btn); + } + } +} diff --git a/Source/Samples/Sections/Widgets/ToggleButtonSection.cs b/Source/Samples/Sections/Widgets/ToggleButtonSection.cs new file mode 100644 index 000000000..db2fc52cf --- /dev/null +++ b/Source/Samples/Sections/Widgets/ToggleButtonSection.cs @@ -0,0 +1,32 @@ +// This is free and unencumbered software released into the public domain. +// Happy coding!!! - GtkSharp Team + +using Gtk; + +namespace Samples +{ + [Section(Name = "Toggle Button", Category = Category.Widgets)] + class ToggleButtonSection : ListSection + { + public ToggleButtonSection() + { + AddItem(CreateToggleButton()); + } + + public (string, Widget) CreateToggleButton() + { + var btn = new ToggleButton("Toggle Me"); + btn.Toggled += (sender, e) => + { + if (btn.Active) + btn.Label = "Untoggle Me"; + else + btn.Label = "Toglle Me"; + + ApplicationOutput.WriteLine(sender, "Buton Toggled"); + }; + + return ("Toggle button:", btn); + } + } +}