Showing preview only (939K chars total). Download the full file or copy to clipboard to get everything.
Repository: N-a-r-w-i-n/MetroSet-UI
Branch: master
Commit: 39c93bd370da
Files: 129
Total size: 892.6 KB
Directory structure:
gitextract_95ymntp2/
├── .gitattributes
├── .gitignore
├── LICENSE
├── MetroSet Theme.xml
├── MetroSet UI/
│ ├── Actions/
│ │ ├── MetroSetBadgeActionList.cs
│ │ ├── MetroSetButtonActionList.cs
│ │ ├── MetroSetCheckBoxActionList.cs
│ │ ├── MetroSetControlBoxActionList.cs
│ │ ├── MetroSetDefaultButtonActionList.cs
│ │ ├── MetroSetDividerActionList.cs
│ │ ├── MetroSetEllipseActionList.cs
│ │ ├── MetroSetLabelActionList.cs
│ │ ├── MetroSetLinkActionList.cs
│ │ ├── MetroSetListBoxActionList.cs
│ │ ├── MetroSetNumericActionList.cs
│ │ ├── MetroSetProgressBarActionList.cs
│ │ ├── MetroSetRadiobuttonActionList.cs
│ │ ├── MetroSetRichTextBoxActionList.cs
│ │ ├── MetroSetScrollBarActionList.cs
│ │ ├── MetroSetSwitchActionList.cs
│ │ ├── MetroSetTextBoxActionList.cs
│ │ ├── MetroSetTileActionList.cs
│ │ ├── MetroSetToolTipActionList.cs
│ │ ├── MetroSetTrackBarActionList.cs
│ │ └── StyleManagerActionList.cs
│ ├── Animates/
│ │ ├── Animate.cs
│ │ ├── ColorAnimate.cs
│ │ ├── DoubleAnimat.cs
│ │ ├── IntAnimate.cs
│ │ ├── Interpolation.cs
│ │ ├── PointFAnimate.cs
│ │ └── SizeFAnimate.cs
│ ├── Child/
│ │ ├── MetroSetItemCollection.cs
│ │ ├── MetroSetSetTabPage.cs
│ │ ├── MetroSetTabPageCollectionEditor.cs
│ │ └── MetroSetToolStripMenuItem.cs
│ ├── Components/
│ │ ├── MetroSetSetToolTip.cs
│ │ └── StyleManager.cs
│ ├── Controls/
│ │ ├── MetroSetBadge.cs
│ │ ├── MetroSetButton.cs
│ │ ├── MetroSetCheckBox.cs
│ │ ├── MetroSetComboBox.cs
│ │ ├── MetroSetContextMenuStrip.cs
│ │ ├── MetroSetControlBox.cs
│ │ ├── MetroSetDefaultButton.cs
│ │ ├── MetroSetDivider.cs
│ │ ├── MetroSetEllipse.cs
│ │ ├── MetroSetLabel.cs
│ │ ├── MetroSetLink.cs
│ │ ├── MetroSetListBox.cs
│ │ ├── MetroSetNumeric.cs
│ │ ├── MetroSetPanel.cs
│ │ ├── MetroSetProgressBar.cs
│ │ ├── MetroSetRadioButton.cs
│ │ ├── MetroSetRichTextBox.cs
│ │ ├── MetroSetScrollBar.cs
│ │ ├── MetroSetSwitch.cs
│ │ ├── MetroSetTabControl.cs
│ │ ├── MetroSetTextBox.cs
│ │ ├── MetroSetTile.cs
│ │ └── MetroSetTrackBar.cs
│ ├── Design/
│ │ ├── MetroSetBadgeDesigner.cs
│ │ ├── MetroSetButtonDesigner.cs
│ │ ├── MetroSetCheckBoxDesigner.cs
│ │ ├── MetroSetControBoxDesigner.cs
│ │ ├── MetroSetDefaultButtonDesigner.cs
│ │ ├── MetroSetDividerDesigner.cs
│ │ ├── MetroSetEllipseDesigner.cs
│ │ ├── MetroSetLabelDesigner.cs
│ │ ├── MetroSetLinkDesigner.cs
│ │ ├── MetroSetListBoxDesigner.cs
│ │ ├── MetroSetNumericDesigner.cs
│ │ ├── MetroSetProgressBarDesigner.cs
│ │ ├── MetroSetRadioButtonDesigner.cs
│ │ ├── MetroSetRichTextBoxDesigner.cs
│ │ ├── MetroSetScrollBarDesigner.cs
│ │ ├── MetroSetSwitchDesigner.cs
│ │ ├── MetroSetTabControlDesigner.cs
│ │ ├── MetroSetTabpageDesigner.cs
│ │ ├── MetroSetTextBoxDesigner.cs
│ │ ├── MetroSetTileDesigner.cs
│ │ ├── MetroSetToolTipDesigner.cs
│ │ ├── MetroSetTrackBarDesigner.cs
│ │ └── StyleManagerDesigner.cs
│ ├── Enums/
│ │ ├── BageAlign.cs
│ │ ├── CheckState.cs
│ │ ├── DividerStyle.cs
│ │ ├── EasingType.cs
│ │ ├── MouseSates.cs
│ │ ├── ProgressOrientation.cs
│ │ ├── ScrollOrientation.cs
│ │ ├── SignStyle.cs
│ │ ├── Style.cs
│ │ ├── TabStyle.cs
│ │ ├── TextAlign.cs
│ │ └── TileAlign.cs
│ ├── Extensions/
│ │ ├── Global Font.cs
│ │ ├── GraphicsQuality.cs
│ │ ├── Methods.cs
│ │ ├── MetroSetFonts.cs
│ │ └── Utilites.cs
│ ├── Forms/
│ │ ├── MetroSetForm.cs
│ │ ├── MetroSetForm.resx
│ │ └── MetroSetMessageBox.cs
│ ├── Interfaces/
│ │ ├── IMetroForm.cs
│ │ ├── IMetroSetControl.cs
│ │ ├── MetroSetControl.cs
│ │ └── MetroSetForm.cs
│ ├── MetroSet UI.csproj
│ ├── Native/
│ │ └── User32.cs
│ ├── Properties/
│ │ ├── AssemblyInfo.cs
│ │ ├── PublishProfiles/
│ │ │ └── FolderProfile.pubxml
│ │ ├── Resources.Designer.cs
│ │ ├── Resources.resx
│ │ ├── Settings.Designer.cs
│ │ └── Settings.settings
│ └── Resources/
│ └── MetroSet Theme.xml
├── MetroSet UI Example/
│ ├── Form1.Designer.cs
│ ├── Form1.cs
│ ├── Form1.resx
│ ├── MetroSet UI Example.csproj
│ ├── Program.cs
│ └── Properties/
│ ├── AssemblyInfo.cs
│ ├── Resources.Designer.cs
│ ├── Resources.resx
│ ├── Settings.Designer.cs
│ └── Settings.settings
├── MetroSet UI.sln
└── README.md
================================================
FILE CONTENTS
================================================
================================================
FILE: .gitattributes
================================================
###############################################################################
# Set default behavior to automatically normalize line endings.
###############################################################################
* text=auto
###############################################################################
# Set default behavior for command prompt diff.
#
# This is need for earlier builds of msysgit that does not have it on by
# default for csharp files.
# Note: This is only used by command line
###############################################################################
#*.cs diff=csharp
###############################################################################
# Set the merge driver for project and solution files
#
# Merging from the command prompt will add diff markers to the files if there
# are conflicts (Merging from VS is not affected by the settings below, in VS
# the diff markers are never inserted). Diff markers may cause the following
# file extensions to fail to load in VS. An alternative would be to treat
# these files as binary and thus will always conflict and require user
# intervention with every merge. To do so, just uncomment the entries below
###############################################################################
#*.sln merge=binary
#*.csproj merge=binary
#*.vbproj merge=binary
#*.vcxproj merge=binary
#*.vcproj merge=binary
#*.dbproj merge=binary
#*.fsproj merge=binary
#*.lsproj merge=binary
#*.wixproj merge=binary
#*.modelproj merge=binary
#*.sqlproj merge=binary
#*.wwaproj merge=binary
###############################################################################
# behavior for image files
#
# image files are treated as binary by default.
###############################################################################
#*.jpg binary
#*.png binary
#*.gif binary
###############################################################################
# diff behavior for common document formats
#
# Convert binary document formats to text before diffing them. This feature
# is only available from the command line. Turn it on by uncommenting the
# entries below.
###############################################################################
#*.doc diff=astextplain
#*.DOC diff=astextplain
#*.docx diff=astextplain
#*.DOCX diff=astextplain
#*.dot diff=astextplain
#*.DOT diff=astextplain
#*.pdf diff=astextplain
#*.PDF diff=astextplain
#*.rtf diff=astextplain
#*.RTF diff=astextplain
================================================
FILE: .gitignore
================================================
## Ignore Visual Studio temporary files, build results, and
## files generated by popular Visual Studio add-ons.
# User-specific files
*.suo
*.user
*.userosscache
*.sln.docstates
# User-specific files (MonoDevelop/Xamarin Studio)
*.userprefs
# Build results
[Dd]ebug/
[Dd]ebugPublic/
[Rr]elease/
[Rr]eleases/
[Xx]64/
[Xx]86/
[Bb]uild/
bld/
[Bb]in/
[Oo]bj/
# Visual Studio 2015 cache/options directory
.vs/
# Uncomment if you have tasks that create the project's static files in wwwroot
#wwwroot/
# MSTest test Results
[Tt]est[Rr]esult*/
[Bb]uild[Ll]og.*
# NUNIT
*.VisualState.xml
TestResult.xml
# Build Results of an ATL Project
[Dd]ebugPS/
[Rr]eleasePS/
dlldata.c
# DNX
project.lock.json
artifacts/
*_i.c
*_p.c
*_i.h
*.ilk
*.meta
*.obj
*.pch
*.pdb
*.pgc
*.pgd
*.rsp
*.sbr
*.tlb
*.tli
*.tlh
*.tmp
*.tmp_proj
*.log
*.vspscc
*.vssscc
.builds
*.pidb
*.svclog
*.scc
# Chutzpah Test files
_Chutzpah*
# Visual C++ cache files
ipch/
*.aps
*.ncb
*.opendb
*.opensdf
*.sdf
*.cachefile
*.VC.db
# Visual Studio profiler
*.psess
*.vsp
*.vspx
*.sap
# TFS 2012 Local Workspace
$tf/
# Guidance Automation Toolkit
*.gpState
# ReSharper is a .NET coding add-in
_ReSharper*/
*.[Rr]e[Ss]harper
*.DotSettings.user
# JustCode is a .NET coding add-in
.JustCode
# TeamCity is a build add-in
_TeamCity*
# DotCover is a Code Coverage Tool
*.dotCover
# NCrunch
_NCrunch_*
.*crunch*.local.xml
nCrunchTemp_*
# MightyMoose
*.mm.*
AutoTest.Net/
# Web workbench (sass)
.sass-cache/
# Installshield output folder
[Ee]xpress/
# DocProject is a documentation generator add-in
DocProject/buildhelp/
DocProject/Help/*.HxT
DocProject/Help/*.HxC
DocProject/Help/*.hhc
DocProject/Help/*.hhk
DocProject/Help/*.hhp
DocProject/Help/Html2
DocProject/Help/html
# Click-Once directory
publish/
# Publish Web Output
*.[Pp]ublish.xml
*.azurePubxml
# TODO: Un-comment the next line if you do not want to checkin
# your web deploy settings because they may include unencrypted
# passwords
#*.pubxml
*.publishproj
# NuGet Packages
*.nupkg
# The packages folder can be ignored because of Package Restore
**/packages/*
# except build/, which is used as an MSBuild target.
!**/packages/build/
# Uncomment if necessary however generally it will be regenerated when needed
#!**/packages/repositories.config
# NuGet v3's project.json files produces more ignoreable files
*.nuget.props
*.nuget.targets
# Microsoft Azure Build Output
csx/
*.build.csdef
# Microsoft Azure Emulator
ecf/
rcf/
# Microsoft Azure ApplicationInsights config file
ApplicationInsights.config
# Windows Store app package directory
AppPackages/
BundleArtifacts/
# Visual Studio cache files
# files ending in .cache can be ignored
*.[Cc]ache
# but keep track of directories ending in .cache
!*.[Cc]ache/
# Others
ClientBin/
[Ss]tyle[Cc]op.*
~$*
*~
*.dbmdl
*.dbproj.schemaview
*.pfx
*.publishsettings
node_modules/
orleans.codegen.cs
# RIA/Silverlight projects
Generated_Code/
# Backup & report files from converting an old project file
# to a newer Visual Studio version. Backup files are not needed,
# because we have git ;-)
_UpgradeReport_Files/
Backup*/
UpgradeLog*.XML
UpgradeLog*.htm
# SQL Server files
*.mdf
*.ldf
# Business Intelligence projects
*.rdl.data
*.bim.layout
*.bim_*.settings
# Microsoft Fakes
FakesAssemblies/
# GhostDoc plugin setting file
*.GhostDoc.xml
# Node.js Tools for Visual Studio
.ntvs_analysis.dat
# Visual Studio 6 build log
*.plg
# Visual Studio 6 workspace options file
*.opt
# Visual Studio LightSwitch build output
**/*.HTMLClient/GeneratedArtifacts
**/*.DesktopClient/GeneratedArtifacts
**/*.DesktopClient/ModelManifest.xml
**/*.Server/GeneratedArtifacts
**/*.Server/ModelManifest.xml
_Pvt_Extensions
# LightSwitch generated files
GeneratedArtifacts/
ModelManifest.xml
# Paket dependency manager
.paket/paket.exe
# FAKE - F# Make
.fake/
/MetroSet UI/Controls/MetroSetDataGrid.cs
================================================
FILE: LICENSE
================================================
MIT License
MetroSet UI - MetroSet UI Framewrok
Copyright (c) 2017 Narwin, https://github.com/N-a-r-w-i-n
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.
================================================
FILE: MetroSet Theme.xml
================================================
<?xml version="1.0" encoding="utf-8"?>
<MetroSetTheme>
<Theme>
<Name>Custom Theme</Name>
<Author>Narwin</Author>
</Theme>
<Form>
<ForeColor>#293955</ForeColor>
<BackColor>#FFFFFF</BackColor>
<BorderColor>#ffc40d</BorderColor>
<SmallLineColor1>#ffc40d</SmallLineColor1>
<SmallLineColor2>#ffc40d</SmallLineColor2>
<TextColor>#293955</TextColor>
<HeaderColor>#ffc40d</HeaderColor>
</Form>
<DefaultButton>
<NormalColor>#ffc40d</NormalColor>
<NormalBorderColor>#000000</NormalBorderColor>
<NormalTextColor>#FFFFFF</NormalTextColor>
<HoverColor>#293A56</HoverColor>
<HoverBorderColor>#2B2B2B</HoverBorderColor>
<HoverTextColor>#FFFFFF</HoverTextColor>
<PressColor>#D6DBE9</PressColor>
<PressBorderColor>#2B2B2B</PressBorderColor>
<PressTextColor>#FFFFFF</PressTextColor>
<DisabledBackColor>#EEEEEE</DisabledBackColor>
<DisabledBorderColor>#505050</DisabledBorderColor>
<DisabledForeColor>#6D6D6D</DisabledForeColor>
</DefaultButton>
<Button>
<NormalColor>#ffc40d</NormalColor>
<NormalBorderColor>#ffc40d</NormalBorderColor>
<NormalTextColor>#FFFFFF</NormalTextColor>
<HoverColor>#5FCFFF</HoverColor>
<HoverBorderColor>#5FCFFF</HoverBorderColor>
<HoverTextColor>#FFFFFF</HoverTextColor>
<PressColor>#2393C3</PressColor>
<PressBorderColor>#2393C3</PressBorderColor>
<PressTextColor>#FFFFFF</PressTextColor>
<DisabledBackColor>#FFE235</DisabledBackColor>
<DisabledBorderColor>#FFE235</DisabledBorderColor>
<DisabledForeColor>#808080</DisabledForeColor>
</Button>
<Tile>
<NormalColor>#ffc40d</NormalColor>
<NormalBorderColor>#ffc40d</NormalBorderColor>
<NormalTextColor>#FFFFFF</NormalTextColor>
<HoverColor>#293A56</HoverColor>
<HoverBorderColor>#2B2B2B</HoverBorderColor>
<HoverTextColor>#FFFFFF</HoverTextColor>
<PressColor>#D6DBE9</PressColor>
<PressBorderColor>#2B2B2B</PressBorderColor>
<PressTextColor>#FFFFFF</PressTextColor>
<DisabledBackColor>#EEEEEE</DisabledBackColor>
<DisabledBorderColor>#505050</DisabledBorderColor>
<DisabledForeColor>#6D6D6D</DisabledForeColor>
</Tile>
<Ellipse>
<NormalColor>#ffc40d</NormalColor>
<NormalBorderColor>#FFBA03</NormalBorderColor>
<NormalTextColor>#FFFFFF</NormalTextColor>
<HoverColor>#293A56</HoverColor>
<HoverBorderColor>#2B2B2B</HoverBorderColor>
<HoverTextColor>#FFFFFF</HoverTextColor>
<PressColor>#D6DBE9</PressColor>
<PressBorderColor>#2B2B2B</PressBorderColor>
<PressTextColor>#FFFFFF</PressTextColor>
<DisabledBackColor>#FFE235</DisabledBackColor>
<DisabledBorderColor>#FFE235</DisabledBorderColor>
<DisabledForeColor>#6D6D6D</DisabledForeColor>
</Ellipse>
<Badge>
<NormalColor>#ffc40d</NormalColor>
<NormalBorderColor>#000000</NormalBorderColor>
<NormalTextColor>#FFFFFF</NormalTextColor>
<HoverColor>#293A56</HoverColor>
<HoverBorderColor>#2B2B2B</HoverBorderColor>
<HoverTextColor>#FFFFFF</HoverTextColor>
<PressColor>#D6DBE9</PressColor>
<PressBorderColor>#2B2B2B</PressBorderColor>
<PressTextColor>#FFFFFF</PressTextColor>
<NormalBadgeColor>#ffc40d</NormalBadgeColor>
<NormalBadgeTextColor>#FFFFFF</NormalBadgeTextColor>
<HoverBadgeColor>#cb2828</HoverBadgeColor>
<HoverBadgeTextColor>#FFFFFF</HoverBadgeTextColor>
<PressBadgeColor>#a31414</PressBadgeColor>
<PressBadgeTextColor>#FFFFFF</PressBadgeTextColor>
<DisabledBackColor>#FFE235</DisabledBackColor>
<DisabledBorderColor>#FFE235</DisabledBorderColor>
<DisabledForeColor>#6D6D6D</DisabledForeColor>
</Badge>
<Label>
<ForeColor>#ffc40d</ForeColor>
<BackColor>#00FFFFFF</BackColor>
</Label>
<ComboBox>
<ForeColor>#CCCCCC</ForeColor>
<BackColor>#FFFFFF</BackColor>
<BorderColor>#6E6E6E</BorderColor>
<ArrowColor>#6E6E6E</ArrowColor>
<SelectedItemBackColor>#ffc40d</SelectedItemBackColor>
<SelectedItemForeColor>#FFFFFF</SelectedItemForeColor>
<DisabledBackColor>#EEEEEE</DisabledBackColor>
<DisabledBorderColor>#505050</DisabledBorderColor>
<DisabledForeColor>#6D6D6D</DisabledForeColor>
</ComboBox>
<TextBox>
<ForeColor>#CCCCCC</ForeColor>
<BackColor>#FFFFFF</BackColor>
<HoverColor>#ffc40d</HoverColor>
<BorderColor>#6E6E6E</BorderColor>
<WatermarkText>n</WatermarkText>
<DisabledBackColor>#EEEEEE</DisabledBackColor>
<DisabledBorderColor>#505050</DisabledBorderColor>
<DisabledForeColor>#6D6D6D</DisabledForeColor>
</TextBox>
<RichTextBox>
<ForeColor>#CCCCCC</ForeColor>
<BackColor>#FFFFFF</BackColor>
<HoverColor>#ffc40d</HoverColor>
<BorderColor>#6E6E6E</BorderColor>
<DisabledBackColor>#EEEEEE</DisabledBackColor>
<DisabledBorderColor>#505050</DisabledBorderColor>
<DisabledForeColor>#6D6D6D</DisabledForeColor>
</RichTextBox>
<Numeric>
<ForeColor>#CCCCCC</ForeColor>
<BackColor>#FFFFFF</BackColor>
<BorderColor>#6E6E6E</BorderColor>
<SymbolsColor>#ffc40d</SymbolsColor>
<DisabledBackColor>#EEEEEE</DisabledBackColor>
<DisabledBorderColor>#505050</DisabledBorderColor>
<DisabledForeColor>#6D6D6D</DisabledForeColor>
</Numeric>
<CheckBox>
<ForeColor>#ffc40d</ForeColor>
<CheckColor>#ffc40d</CheckColor>
<BackColor>#00FFFFFF</BackColor>
<BordeColor>#ffc40d</BordeColor>
<DisabledBorderColor>#999999</DisabledBorderColor>
<CheckedStyle>Shape</CheckedStyle>
<!--Sign, Shape-->
</CheckBox>
<SwitchBox>
<SymbolColor>#5C5C5C</SymbolColor>
<BackColor>#FFFFFF</BackColor>
<BorderColor>#9B9B9B</BorderColor>
<DisabledBorderColor>#555555</DisabledBorderColor>
<UnCheckColor>#9B9B9B</UnCheckColor>
<CheckColor>#ffc40d</CheckColor>
<DisabledUnCheckColor>#CDCDCD</DisabledUnCheckColor>
<DisabledCheckColor>#FFE235</DisabledCheckColor>
</SwitchBox>
<RadioButton>
<ForeColor>#ffc40d</ForeColor>
<CheckColor>#ffc40d</CheckColor>
<BackColor>#00FFFFFF</BackColor>
<BordeColor>#ffc40d</BordeColor>
<DisabledBorderColor>#999999</DisabledBorderColor>
</RadioButton>
<Divider>
<Orientation>Horizontal</Orientation>
<!--Horizontal, Vertical-->
<Thickness>1</Thickness>
<ForeColor>#ffc40d</ForeColor>
</Divider>
<LinkLabel>
<ForeColor>#ffc40d</ForeColor>
<BackColor>#00FFFFFF</BackColor>
<LinkColor>#41b1e1</LinkColor>
<ActiveLinkColor>#55c5f5</ActiveLinkColor>
<VisitedLinkColor>#2d9dcd</VisitedLinkColor>
<LinkBehavior>HoverUnderline</LinkBehavior>
<!--HoverUnderline, AlwaysUnderline, NeverUnderline, SystemDefault-->
</LinkLabel>
<ToolTip>
<ForeColor>#FFFFFF</ForeColor>
<BackColor>#FFFFFF</BackColor>
<BorderColor>#ffc40d</BorderColor>
</ToolTip>
<Progress>
<BackColor>#EEEEEE</BackColor>
<BorderColor>#EEEEEE</BorderColor>
<ProgressColor>#ffc40d</ProgressColor>
<DisabledBackColor>#EEEEEE</DisabledBackColor>
<DisabledBorderColor>#EEEEEE</DisabledBorderColor>
<DisabledProgressColor>#FFE235</DisabledProgressColor>
</Progress>
<TrackBar>
<BackColor>#EEEEEE</BackColor>
<HandlerColor>#8F8F8F</HandlerColor>
<ValueColor>#ffc40d</ValueColor>
<DisabledBackColor>#EEEEEE</DisabledBackColor>
<DisabledValueColor>#8F8F8F</DisabledValueColor>
<DisabledHandlerColor>#FFE235</DisabledHandlerColor>
</TrackBar>
<ContextMenu>
<BackColor>#FFFFFF</BackColor>
<ForeColor>#AAAAAA</ForeColor>
<ArrowColor>#808080</ArrowColor>
<SeparatorColor>#808080</SeparatorColor>
<SelectedItemColor>#FFFFFF</SelectedItemColor>
<SelectedItemBackColor>#ffc40d</SelectedItemBackColor>
<DisabledForeColor>#C0C0C0</DisabledForeColor>
</ContextMenu>
<TabControl>
<BackColor>#FFFFFF</BackColor>
<ForeColor>#ffc40d</ForeColor>
<UnselectedTextColor>#808080</UnselectedTextColor>
<SelectedTextColor>#FFFFFF</SelectedTextColor>
</TabControl>
<ScrollBar>
<BackColor>#FFFFFF</BackColor>
<ForeColor>#ffc40d</ForeColor>
<DisabledBackColor>#505050</DisabledBackColor>
<DisabledForeColor>#6D6D6D</DisabledForeColor>
</ScrollBar>
<ListBox>
<BackColor>#FFFFFF</BackColor>
<ForeColor>#808080</ForeColor>
<BorderColor>#404040</BorderColor>
<SelectedItemColor>#FFFFFF</SelectedItemColor>
<SelectedItemBackColor>#ffc40d</SelectedItemBackColor>
<HoveredItemColor>#000000</HoveredItemColor>
<HoveredItemBackColor>#FFE235</HoveredItemBackColor>
<DisabledBackColor>#505050</DisabledBackColor>
<DisabledForeColor>#6D6D6D</DisabledForeColor>
</ListBox>
<Panel>
<BackColor>#FFFFFF</BackColor>
<BorderColor>#6E6E6E</BorderColor>
</Panel>
<ControlBox>
<CloseHoverBackColor>#ffc40d</CloseHoverBackColor>
<CloseHoverForeColor>#FFFFFF</CloseHoverForeColor>
<CloseNormalForeColor>#808080</CloseNormalForeColor>
<MaximizeHoverBackColor>#EEEEEE</MaximizeHoverBackColor>
<MaximizeHoverForeColor>#808080</MaximizeHoverForeColor>
<MaximizeNormalForeColor>#808080</MaximizeNormalForeColor>
<MinimizeHoverBackColor>#EEEEEE</MinimizeHoverBackColor>
<MinimizeHoverForeColor>#808080</MinimizeHoverForeColor>
<MinimizeNormalForeColor>#808080</MinimizeNormalForeColor>
</ControlBox>
</MetroSetTheme>
================================================
FILE: MetroSet UI/Actions/MetroSetBadgeActionList.cs
================================================
/*
* MetroSet UI - MetroSet UI Framework
*
* The MIT License (MIT)
* Copyright (c) 2017 Narwin, https://github.com/N-a-r-w-i-n
*
* Permission is hereby granted, free of charge, to any person obtaining a copy of
* this software and associated documentation files (the "Software"), to deal in the
* Software without restriction, including without limitation the rights to use, copy,
* modify, merge, publish, distribute, sublicense, and/or sell copies of the Software,
* and to permit persons to whom the Software is furnished to do so, subject to the
* following conditions:
*
* The above copyright notice and this permission notice shall be included in
* all copies or substantial portions of the Software.
*
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED,
* INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A
* PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
* HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF
* CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE
* OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
*/
using System.ComponentModel;
using System.ComponentModel.Design;
using System.Drawing;
using MetroSet_UI.Components;
using MetroSet_UI.Controls;
using MetroSet_UI.Enums;
namespace MetroSet_UI.Actions
{
public class MetroSetBadgeActionList : DesignerActionList
{
private readonly MetroSetBadge _metroSetBadge;
public MetroSetBadgeActionList(IComponent component) : base(component)
{
_metroSetBadge = (MetroSetBadge)component;
}
public Style Style
{
get => _metroSetBadge.Style;
set => _metroSetBadge.Style = value;
}
public string ThemeAuthor => _metroSetBadge.ThemeAuthor;
public string ThemeName => _metroSetBadge.ThemeName;
public StyleManager StyleManager
{
get => _metroSetBadge.StyleManager;
set => _metroSetBadge.StyleManager = value;
}
public string Text
{
get => _metroSetBadge.Text;
set => _metroSetBadge.Text = value;
}
public Font Font
{
get => _metroSetBadge.Font;
set => _metroSetBadge.Font = value;
}
public BadgeAlign BadgeAlignment
{
get => _metroSetBadge.BadgeAlignment;
set => _metroSetBadge.BadgeAlignment = value;
}
public string BadgeText
{
get => _metroSetBadge.BadgeText;
set => _metroSetBadge.BadgeText = value;
}
public override DesignerActionItemCollection GetSortedActionItems()
{
var items = new DesignerActionItemCollection
{
new DesignerActionHeaderItem("MetroSet Framework"),
new DesignerActionPropertyItem("StyleManager", "StyleManager", "MetroSet Framework", "Gets or sets the stylemanager for the control."),
new DesignerActionPropertyItem("Style", "Style", "MetroSet Framework", "Gets or sets the style."),
new DesignerActionHeaderItem("Informations"),
new DesignerActionPropertyItem("ThemeName", "ThemeName", "Informations", "Gets or sets the The Theme name associated with the theme."),
new DesignerActionPropertyItem("ThemeAuthor", "ThemeAuthor", "Informations", "Gets or sets the The Author name associated with the theme."),
new DesignerActionHeaderItem("Appearance"),
new DesignerActionPropertyItem("Text", "Text", "Appearance", "Gets or sets the The text associated with the control."),
new DesignerActionPropertyItem("Font", "Font", "Appearance", "Gets or sets the The font associated with the control."),
new DesignerActionHeaderItem("Badge"),
new DesignerActionPropertyItem("BadgeText", "BadgeText", "Badge", "Gets or sets the badge text associated with the control."),
new DesignerActionPropertyItem("BadgeAlignment", "BadgeAlignment", "Badge", "Gets or sets the badge alignment associated with the control.")
};
return items;
}
}
}
================================================
FILE: MetroSet UI/Actions/MetroSetButtonActionList.cs
================================================
/*
* MetroSet UI - MetroSet UI Framework
*
* The MIT License (MIT)
* Copyright (c) 2017 Narwin, https://github.com/N-a-r-w-i-n
*
* Permission is hereby granted, free of charge, to any person obtaining a copy of
* this software and associated documentation files (the "Software"), to deal in the
* Software without restriction, including without limitation the rights to use, copy,
* modify, merge, publish, distribute, sublicense, and/or sell copies of the Software,
* and to permit persons to whom the Software is furnished to do so, subject to the
* following conditions:
*
* The above copyright notice and this permission notice shall be included in
* all copies or substantial portions of the Software.
*
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED,
* INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A
* PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
* HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF
* CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE
* OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
*/
using System.ComponentModel;
using System.ComponentModel.Design;
using System.Drawing;
using MetroSet_UI.Components;
using MetroSet_UI.Controls;
using MetroSet_UI.Enums;
namespace MetroSet_UI.Actions
{
public class MetroSetButtonActionList : DesignerActionList
{
private readonly MetroSetButton _metroSetButton;
public MetroSetButtonActionList(IComponent component) : base(component)
{
_metroSetButton = (MetroSetButton)component;
}
public Style Style
{
get => _metroSetButton.Style;
set => _metroSetButton.Style = value;
}
public string ThemeAuthor => _metroSetButton.ThemeAuthor;
public string ThemeName => _metroSetButton.ThemeName;
public StyleManager StyleManager
{
get => _metroSetButton.StyleManager;
set => _metroSetButton.StyleManager = value;
}
public string Text
{
get => _metroSetButton.Text;
set => _metroSetButton.Text = value;
}
public Font Font
{
get => _metroSetButton.Font;
set => _metroSetButton.Font = value;
}
public override DesignerActionItemCollection GetSortedActionItems()
{
var items = new DesignerActionItemCollection
{
new DesignerActionHeaderItem("MetroSet Framework"),
new DesignerActionPropertyItem("StyleManager", "StyleManager", "MetroSet Framework", "Gets or sets the stylemanager for the control."),
new DesignerActionPropertyItem("Style", "Style", "MetroSet Framework", "Gets or sets the style."),
new DesignerActionHeaderItem("Informations"),
new DesignerActionPropertyItem("ThemeName", "ThemeName", "Informations", "Gets or sets the The Theme name associated with the theme."),
new DesignerActionPropertyItem("ThemeAuthor", "ThemeAuthor", "Informations", "Gets or sets the The Author name associated with the theme."),
new DesignerActionHeaderItem("Appearance"),
new DesignerActionPropertyItem("Text", "Text", "Appearance", "Gets or sets the The text associated with the control."),
new DesignerActionPropertyItem("Font", "Font", "Appearance", "Gets or sets the The font associated with the control.")
};
return items;
}
}
}
================================================
FILE: MetroSet UI/Actions/MetroSetCheckBoxActionList.cs
================================================
/*
* MetroSet UI - MetroSet UI Framework
*
* The MIT License (MIT)
* Copyright (c) 2017 Narwin, https://github.com/N-a-r-w-i-n
*
* Permission is hereby granted, free of charge, to any person obtaining a copy of
* this software and associated documentation files (the "Software"), to deal in the
* Software without restriction, including without limitation the rights to use, copy,
* modify, merge, publish, distribute, sublicense, and/or sell copies of the Software,
* and to permit persons to whom the Software is furnished to do so, subject to the
* following conditions:
*
* The above copyright notice and this permission notice shall be included in
* all copies or substantial portions of the Software.
*
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED,
* INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A
* PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
* HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF
* CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE
* OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
*/
using System.ComponentModel;
using System.ComponentModel.Design;
using MetroSet_UI.Components;
using MetroSet_UI.Controls;
using MetroSet_UI.Enums;
namespace MetroSet_UI.Actions
{
internal class MetroSetRadioButtonActionList : DesignerActionList
{
private readonly MetroSetRadioButton _metroSetRadioButton;
public MetroSetRadioButtonActionList(IComponent component) : base(component)
{
_metroSetRadioButton = (MetroSetRadioButton)component;
}
public Style Style
{
get => _metroSetRadioButton.Style;
set => _metroSetRadioButton.Style = value;
}
public string ThemeAuthor => _metroSetRadioButton.ThemeAuthor;
public string ThemeName => _metroSetRadioButton.ThemeName;
public StyleManager StyleManager
{
get => _metroSetRadioButton.StyleManager;
set => _metroSetRadioButton.StyleManager = value;
}
public string Text
{
get => _metroSetRadioButton.Text;
set => _metroSetRadioButton.Text = value;
}
public bool Checked
{
get => _metroSetRadioButton.Checked;
set => _metroSetRadioButton.Checked = value;
}
public override DesignerActionItemCollection GetSortedActionItems()
{
var items = new DesignerActionItemCollection
{
new DesignerActionHeaderItem("MetroSet Framework"),
new DesignerActionPropertyItem("StyleManager", "StyleManager", "MetroSet Framework", "Gets or sets the stylemanager for the control."),
new DesignerActionPropertyItem("Style", "Style", "MetroSet Framework", "Gets or sets the style."),
new DesignerActionHeaderItem("Informations"),
new DesignerActionPropertyItem("ThemeName", "ThemeName", "Informations", "Gets or sets the The Theme name associated with the theme."),
new DesignerActionPropertyItem("ThemeAuthor", "ThemeAuthor", "Informations", "Gets or sets the The Author name associated with the theme."),
new DesignerActionHeaderItem("Appearance"),
new DesignerActionPropertyItem("Text", "Text", "Appearance", "Gets or sets the The text associated with the control."),
new DesignerActionPropertyItem("Checked", "Checked", "Appearance", "Gets or sets a value indicating whether the control is checked."),
};
return items;
}
}
}
================================================
FILE: MetroSet UI/Actions/MetroSetControlBoxActionList.cs
================================================
using System.ComponentModel;
using System.ComponentModel.Design;
using MetroSet_UI.Components;
using MetroSet_UI.Controls;
using MetroSet_UI.Enums;
/*
* MetroSet UI - MetroSet UI Framework
*
* The MIT License (MIT)
* Copyright (c) 2017 Narwin, https://github.com/N-a-r-w-i-n
*
* Permission is hereby granted, free of charge, to any person obtaining a copy of
* this software and associated documentation files (the "Software"), to deal in the
* Software without restriction, including without limitation the rights to use, copy,
* modify, merge, publish, distribute, sublicense, and/or sell copies of the Software,
* and to permit persons to whom the Software is furnished to do so, subject to the
* following conditions:
*
* The above copyright notice and this permission notice shall be included in
* all copies or substantial portions of the Software.
*
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED,
* INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A
* PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
* HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF
* CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE
* OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
*/
namespace MetroSet_UI.Actions
{
internal class MetroSetControlBoxActionList : DesignerActionList
{
private readonly MetroSetControlBox _metroSetControBox;
public MetroSetControlBoxActionList(IComponent component) : base(component)
{
_metroSetControBox = (MetroSetControlBox)component;
}
public Style Style
{
get => _metroSetControBox.Style;
set => _metroSetControBox.Style = value;
}
public string ThemeAuthor => _metroSetControBox.ThemeAuthor;
public string ThemeName => _metroSetControBox.ThemeName;
public StyleManager StyleManager
{
get => _metroSetControBox.StyleManager;
set => _metroSetControBox.StyleManager = value;
}
public bool MaximizeBox
{
get => _metroSetControBox.MaximizeBox;
set => _metroSetControBox.MaximizeBox = value;
}
public bool MinimizeBox
{
get => _metroSetControBox.MinimizeBox;
set => _metroSetControBox.MinimizeBox = value;
}
public override DesignerActionItemCollection GetSortedActionItems()
{
DesignerActionItemCollection items = new DesignerActionItemCollection
{
new DesignerActionHeaderItem("MetroSet Framework"),
new DesignerActionPropertyItem("StyleManager", "StyleManager", "MetroSet Framework", "Gets or sets the stylemanager for the control."),
new DesignerActionPropertyItem("Style", "Style", "MetroSet Framework", "Gets or sets the style."),
new DesignerActionHeaderItem("Informations"),
new DesignerActionPropertyItem("ThemeName", "ThemeName", "Informations", "Gets or sets the The Theme name associated with the theme."),
new DesignerActionPropertyItem("ThemeAuthor", "ThemeAuthor", "Informations", "Gets or sets the The Author name associated with the theme."),
new DesignerActionHeaderItem("Appearance"),
new DesignerActionPropertyItem("MaximizeBox", "Enable MaximizeBox", "Appearance", "Gets or sets a value indicating whether the Maximize button is Enabled in the caption bar of the form."),
new DesignerActionPropertyItem("MinimizeBox", "Enable MinimizeBox", "Appearance", "Gets or sets a value indicating whether the Minimize button is Enabled in the caption bar of the form.")
};
return items;
}
}
}
================================================
FILE: MetroSet UI/Actions/MetroSetDefaultButtonActionList.cs
================================================
/*
* MetroSet UI - MetroSet UI Framework
*
* The MIT License (MIT)
* Copyright (c) 2017 Narwin, https://github.com/N-a-r-w-i-n
*
* Permission is hereby granted, free of charge, to any person obtaining a copy of
* this software and associated documentation files (the "Software"), to deal in the
* Software without restriction, including without limitation the rights to use, copy,
* modify, merge, publish, distribute, sublicense, and/or sell copies of the Software,
* and to permit persons to whom the Software is furnished to do so, subject to the
* following conditions:
*
* The above copyright notice and this permission notice shall be included in
* all copies or substantial portions of the Software.
*
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED,
* INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A
* PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
* HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF
* CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE
* OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
*/
using System.ComponentModel;
using System.ComponentModel.Design;
using System.Drawing;
using MetroSet_UI.Components;
using MetroSet_UI.Controls;
using MetroSet_UI.Enums;
namespace MetroSet_UI.Actions
{
public class MetroSetDefaultButtonActionList : DesignerActionList
{
private readonly MetroSetDefaultButton _metroSetButton;
public MetroSetDefaultButtonActionList(IComponent component) : base(component)
{
_metroSetButton = (MetroSetDefaultButton)component;
}
public Style Style
{
get => _metroSetButton.Style;
set => _metroSetButton.Style = value;
}
public string ThemeAuthor => _metroSetButton.ThemeAuthor;
public string ThemeName => _metroSetButton.ThemeName;
public StyleManager StyleManager
{
get => _metroSetButton.StyleManager;
set => _metroSetButton.StyleManager = value;
}
public string Text
{
get => _metroSetButton.Text;
set => _metroSetButton.Text = value;
}
public Font Font
{
get => _metroSetButton.Font;
set => _metroSetButton.Font = value;
}
public override DesignerActionItemCollection GetSortedActionItems()
{
DesignerActionItemCollection items = new DesignerActionItemCollection
{
new DesignerActionHeaderItem("MetroSet Framework"),
new DesignerActionPropertyItem("StyleManager", "StyleManager", "MetroSet Framework", "Gets or sets the stylemanager for the control."),
new DesignerActionPropertyItem("Style", "Style", "MetroSet Framework", "Gets or sets the style."),
new DesignerActionHeaderItem("Informations"),
new DesignerActionPropertyItem("ThemeName", "ThemeName", "Informations", "Gets or sets the The Theme name associated with the theme."),
new DesignerActionPropertyItem("ThemeAuthor", "ThemeAuthor", "Informations", "Gets or sets the The Author name associated with the theme."),
new DesignerActionHeaderItem("Appearance"),
new DesignerActionPropertyItem("Text", "Text", "Appearance", "Gets or sets the The text associated with the control."),
new DesignerActionPropertyItem("Font", "Font", "Appearance", "Gets or sets the The font associated with the control.")
};
return items;
}
}
}
================================================
FILE: MetroSet UI/Actions/MetroSetDividerActionList.cs
================================================
/*
* MetroSet UI - MetroSet UI Framework
*
* The MIT License (MIT)
* Copyright (c) 2017 Narwin, https://github.com/N-a-r-w-i-n
*
* Permission is hereby granted, free of charge, to any person obtaining a copy of
* this software and associated documentation files (the "Software"), to deal in the
* Software without restriction, including without limitation the rights to use, copy,
* modify, merge, publish, distribute, sublicense, and/or sell copies of the Software,
* and to permit persons to whom the Software is furnished to do so, subject to the
* following conditions:
*
* The above copyright notice and this permission notice shall be included in
* all copies or substantial portions of the Software.
*
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED,
* INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A
* PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
* HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF
* CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE
* OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
*/
using System.ComponentModel;
using System.ComponentModel.Design;
using MetroSet_UI.Components;
using MetroSet_UI.Controls;
using MetroSet_UI.Enums;
namespace MetroSet_UI.Actions
{
internal class MetroSetDividerActionList : DesignerActionList
{
private readonly MetroSetDivider _metroSetDivider;
public MetroSetDividerActionList(IComponent component) : base(component)
{
_metroSetDivider = (MetroSetDivider)component;
}
public Style Style
{
get => _metroSetDivider.Style;
set => _metroSetDivider.Style = value;
}
public string ThemeAuthor => _metroSetDivider.ThemeAuthor;
public string ThemeName => _metroSetDivider.ThemeName;
public StyleManager StyleManager
{
get => _metroSetDivider.StyleManager;
set => _metroSetDivider.StyleManager = value;
}
public DividerStyle Orientation
{
get => _metroSetDivider.Orientation;
set => _metroSetDivider.Orientation = value;
}
public int Thickness
{
get => _metroSetDivider.Thickness;
set => _metroSetDivider.Thickness = value;
}
public override DesignerActionItemCollection GetSortedActionItems()
{
DesignerActionItemCollection items = new DesignerActionItemCollection
{
new DesignerActionHeaderItem("MetroSet Framework"),
new DesignerActionPropertyItem("StyleManager", "StyleManager", "MetroSet Framework", "Gets or sets the stylemanager for the control."),
new DesignerActionPropertyItem("Style", "Style", "MetroSet Framework", "Gets or sets the style."),
new DesignerActionHeaderItem("Informations"),
new DesignerActionPropertyItem("ThemeName", "ThemeName", "Informations", "Gets or sets the The Theme name associated with the theme."),
new DesignerActionPropertyItem("ThemeAuthor", "ThemeAuthor", "Informations", "Gets or sets the The Author name associated with the theme."),
new DesignerActionHeaderItem("Appearance"),
new DesignerActionPropertyItem("Orientation", "Orientation", "Appearance", "Gets or sets Orientation of the control."),
new DesignerActionPropertyItem("Thickness", "Thickness", "Appearance", "Gets or sets the divider thickness."),
};
return items;
}
}
}
================================================
FILE: MetroSet UI/Actions/MetroSetEllipseActionList.cs
================================================
/*
* MetroSet UI - MetroSet UI Framework
*
* The MIT License (MIT)
* Copyright (c) 2017 Narwin, https://github.com/N-a-r-w-i-n
*
* Permission is hereby granted, free of charge, to any person obtaining a copy of
* this software and associated documentation files (the "Software"), to deal in the
* Software without restriction, including without limitation the rights to use, copy,
* modify, merge, publish, distribute, sublicense, and/or sell copies of the Software,
* and to permit persons to whom the Software is furnished to do so, subject to the
* following conditions:
*
* The above copyright notice and this permission notice shall be included in
* all copies or substantial portions of the Software.
*
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED,
* INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A
* PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
* HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF
* CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE
* OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
*/
using System.ComponentModel;
using System.ComponentModel.Design;
using System.Drawing;
using MetroSet_UI.Components;
using MetroSet_UI.Controls;
using MetroSet_UI.Enums;
namespace MetroSet_UI.Actions
{
public class MetroSetEllipseActionList : DesignerActionList
{
private readonly MetroSetEllipse _metroSetEllipse;
public MetroSetEllipseActionList(IComponent component) : base(component)
{
_metroSetEllipse = (MetroSetEllipse)component;
}
public Style Style
{
get => _metroSetEllipse.Style;
set => _metroSetEllipse.Style = value;
}
public string ThemeAuthor => _metroSetEllipse.ThemeAuthor;
public string ThemeName => _metroSetEllipse.ThemeName;
public StyleManager StyleManager
{
get => _metroSetEllipse.StyleManager;
set => _metroSetEllipse.StyleManager = value;
}
public string Text
{
get => _metroSetEllipse.Text;
set => _metroSetEllipse.Text = value;
}
public Font Font
{
get => _metroSetEllipse.Font;
set => _metroSetEllipse.Font = value;
}
public int BorderThickness
{
get => _metroSetEllipse.BorderThickness;
set => _metroSetEllipse.BorderThickness = value;
}
public Size ImageSize
{
get => _metroSetEllipse.ImageSize;
set => _metroSetEllipse.ImageSize = value;
}
public Image Image
{
get => _metroSetEllipse.Image;
set => _metroSetEllipse.Image = value;
}
public override DesignerActionItemCollection GetSortedActionItems()
{
DesignerActionItemCollection items = new DesignerActionItemCollection
{
new DesignerActionHeaderItem("MetroSet Framework"),
new DesignerActionPropertyItem("StyleManager", "StyleManager", "MetroSet Framework", "Gets or sets the stylemanager for the control."),
new DesignerActionPropertyItem("Style", "Style", "MetroSet Framework", "Gets or sets the style."),
new DesignerActionHeaderItem("Informations"),
new DesignerActionPropertyItem("ThemeName", "ThemeName", "Informations", "Gets or sets the The Theme name associated with the theme."),
new DesignerActionPropertyItem("ThemeAuthor", "ThemeAuthor", "Informations", "Gets or sets the The Author name associated with the theme."),
new DesignerActionHeaderItem("Appearance"),
new DesignerActionPropertyItem("Text", "Text", "Appearance", "Gets or sets the The text associated with the control."),
new DesignerActionPropertyItem("Font", "Font", "Appearance", "Gets or sets the The font associated with the control."),
new DesignerActionPropertyItem("BorderThickness", "BorderThickness", "Appearance", "Gets or sets the border thickness associated with the control."),
new DesignerActionPropertyItem("Image", "Image", "Appearance", "Gets or sets the image associated with the control."),
new DesignerActionPropertyItem("ImageSize", "ImageSize", "Appearance", "Gets or sets the image size associated with the control."),
};
return items;
}
}
}
================================================
FILE: MetroSet UI/Actions/MetroSetLabelActionList.cs
================================================
using System.ComponentModel;
using System.ComponentModel.Design;
using System.Drawing;
using MetroSet_UI.Components;
using MetroSet_UI.Controls;
using MetroSet_UI.Enums;
/*
* MetroSet UI - MetroSet UI Framework
*
* The MIT License (MIT)
* Copyright (c) 2017 Narwin, https://github.com/N-a-r-w-i-n
*
* Permission is hereby granted, free of charge, to any person obtaining a copy of
* this software and associated documentation files (the "Software"), to deal in the
* Software without restriction, including without limitation the rights to use, copy,
* modify, merge, publish, distribute, sublicense, and/or sell copies of the Software,
* and to permit persons to whom the Software is furnished to do so, subject to the
* following conditions:
*
* The above copyright notice and this permission notice shall be included in
* all copies or substantial portions of the Software.
*
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED,
* INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A
* PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
* HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF
* CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE
* OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
*/
namespace MetroSet_UI.Actions
{
class MetroSetLabelActionList : DesignerActionList
{
private readonly MetroSetLabel _metroSetLabel;
public MetroSetLabelActionList(IComponent component) : base(component)
{
_metroSetLabel = (MetroSetLabel)component;
}
public Style Style
{
get => _metroSetLabel.Style;
set => _metroSetLabel.Style = value;
}
public string ThemeAuthor => _metroSetLabel.ThemeAuthor;
public string ThemeName => _metroSetLabel.ThemeName;
public StyleManager StyleManager
{
get => _metroSetLabel.StyleManager;
set => _metroSetLabel.StyleManager = value;
}
public string Text
{
get => _metroSetLabel.Text;
set => _metroSetLabel.Text = value;
}
public Font Font
{
get => _metroSetLabel.Font;
set => _metroSetLabel.Font = value;
}
public override DesignerActionItemCollection GetSortedActionItems()
{
DesignerActionItemCollection items = new DesignerActionItemCollection
{
new DesignerActionHeaderItem("MetroSet Framework"),
new DesignerActionPropertyItem("StyleManager", "StyleManager", "MetroSet Framework", "Gets or sets the stylemanager for the control."),
new DesignerActionPropertyItem("Style", "Style", "MetroSet Framework", "Gets or sets the style."),
new DesignerActionHeaderItem("Informations"),
new DesignerActionPropertyItem("ThemeName", "ThemeName", "Informations", "Gets or sets the The Theme name associated with the theme."),
new DesignerActionPropertyItem("ThemeAuthor", "ThemeAuthor", "Informations", "Gets or sets the The Author name associated with the theme."),
new DesignerActionHeaderItem("Appearance"),
new DesignerActionPropertyItem("Text", "Text", "Appearance", "Gets or sets the The text associated with the control."),
new DesignerActionPropertyItem("Font", "Font", "Appearance", "Gets or sets the The font associated with the control.")
};
return items;
}
}
}
================================================
FILE: MetroSet UI/Actions/MetroSetLinkActionList.cs
================================================
/*
* MetroSet UI - MetroSet UI Framework
*
* The MIT License (MIT)
* Copyright (c) 2017 Narwin, https://github.com/N-a-r-w-i-n
*
* Permission is hereby granted, free of charge, to any person obtaining a copy of
* this software and associated documentation files (the "Software"), to deal in the
* Software without restriction, including without limitation the rights to use, copy,
* modify, merge, publish, distribute, sublicense, and/or sell copies of the Software,
* and to permit persons to whom the Software is furnished to do so, subject to the
* following conditions:
*
* The above copyright notice and this permission notice shall be included in
* all copies or substantial portions of the Software.
*
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED,
* INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A
* PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
* HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF
* CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE
* OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
*/
using System.ComponentModel;
using System.ComponentModel.Design;
using System.Drawing;
using System.Windows.Forms;
using MetroSet_UI.Components;
using MetroSet_UI.Controls;
using MetroSet_UI.Enums;
using static System.Windows.Forms.LinkLabel;
namespace MetroSet_UI.Actions
{
class MetroSetLinkActionList : DesignerActionList
{
private readonly MetroSetLink _metroSetLink;
public MetroSetLinkActionList(IComponent component) : base(component)
{
_metroSetLink = (MetroSetLink)component;
}
public Style Style
{
get => _metroSetLink.Style;
set => _metroSetLink.Style = value;
}
public string ThemeAuthor => _metroSetLink.ThemeAuthor;
public string ThemeName => _metroSetLink.ThemeName;
public StyleManager StyleManager
{
get => _metroSetLink.StyleManager;
set => _metroSetLink.StyleManager = value;
}
public string Text
{
get => _metroSetLink.Text;
set => _metroSetLink.Text = value;
}
public Font Font
{
get => _metroSetLink.Font;
set => _metroSetLink.Font = value;
}
public LinkBehavior LinkBehaviour
{
get => _metroSetLink.LinkBehavior;
set => _metroSetLink.LinkBehavior = value;
}
public Color LinkColor
{
get => _metroSetLink.LinkColor;
set => _metroSetLink.LinkColor = value;
}
public Color ActiveLinkColor
{
get => _metroSetLink.ActiveLinkColor;
set => _metroSetLink.ActiveLinkColor = value;
}
public Color VisitedLinkColor
{
get => _metroSetLink.VisitedLinkColor;
set => _metroSetLink.VisitedLinkColor = value;
}
public bool LinkVisited
{
get => _metroSetLink.LinkVisited;
set => _metroSetLink.LinkVisited = value;
}
public LinkCollection Links => _metroSetLink.Links;
public override DesignerActionItemCollection GetSortedActionItems()
{
DesignerActionItemCollection items = new DesignerActionItemCollection
{
new DesignerActionHeaderItem("MetroSet Framework"),
new DesignerActionPropertyItem("StyleManager", "StyleManager", "MetroSet Framework", "Gets or sets the stylemanager for the control."),
new DesignerActionPropertyItem("Style", "Style", "MetroSet Framework", "Gets or sets the style."),
new DesignerActionHeaderItem("Informations"),
new DesignerActionPropertyItem("ThemeName", "ThemeName", "Informations", "Gets or sets the The Theme name associated with the theme."),
new DesignerActionPropertyItem("ThemeAuthor", "ThemeAuthor", "Informations", "Gets or sets the The Author name associated with the theme."),
new DesignerActionHeaderItem("Appearance"),
new DesignerActionPropertyItem("Text", "Text", "Appearance", "Gets or sets the The text associated with the control."),
new DesignerActionPropertyItem("Font", "Font", "Appearance", "Gets or sets the The font associated with the control."),
new DesignerActionPropertyItem("LinkVisited", "LinkVisited", "Appearance", "Gets or sets a value indicating whether a link should be displayed as though it were visited."),
new DesignerActionPropertyItem("LinkColor", "LinkColor", "Appearance", "Gets or sets the color used when displaying a normal link."),
new DesignerActionPropertyItem("ActiveLinkColor", "ActiveLinkColor", "Appearance", "Gets or sets the color used to display an active link."),
new DesignerActionPropertyItem("VisitedLinkColor", "VisitedLinkColor", "Appearance", "Gets or sets the color used when displaying a link that that has been previously visited."),
new DesignerActionHeaderItem("Behaviour"),
new DesignerActionPropertyItem("LinkBehaviour", "LinkBehaviour", "Behaviour", "Gets or sets a value that represents the behavior of a link."),
new DesignerActionPropertyItem("Links", "Links", "Behaviour", "Gets the collection of links contained within the LinkLabel.")
};
return items;
}
}
}
================================================
FILE: MetroSet UI/Actions/MetroSetListBoxActionList.cs
================================================
using System.ComponentModel;
using System.ComponentModel.Design;
using MetroSet_UI.Child;
using MetroSet_UI.Components;
using MetroSet_UI.Controls;
using MetroSet_UI.Enums;
/*
* MetroSet UI - MetroSet UI Framework
*
* The MIT License (MIT)
* Copyright (c) 2017 Narwin, https://github.com/N-a-r-w-i-n
*
* Permission is hereby granted, free of charge, to any person obtaining a copy of
* this software and associated documentation files (the "Software"), to deal in the
* Software without restriction, including without limitation the rights to use, copy,
* modify, merge, publish, distribute, sublicense, and/or sell copies of the Software,
* and to permit persons to whom the Software is furnished to do so, subject to the
* following conditions:
*
* The above copyright notice and this permission notice shall be included in
* all copies or substantial portions of the Software.
*
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED,
* INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A
* PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
* HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF
* CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE
* OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
*/
namespace MetroSet_UI.Actions
{
internal class MetroSetListBoxActionList : DesignerActionList
{
private readonly MetroSetListBox _metroSetListBox;
public MetroSetListBoxActionList(IComponent component) : base(component)
{
_metroSetListBox = (MetroSetListBox)component;
}
public Style Style
{
get => _metroSetListBox.Style;
set => _metroSetListBox.Style = value;
}
public string ThemeAuthor => _metroSetListBox.ThemeAuthor;
public string ThemeName => _metroSetListBox.ThemeName;
public StyleManager StyleManager
{
get => _metroSetListBox.StyleManager;
set => _metroSetListBox.StyleManager = value;
}
[TypeConverter(typeof(CollectionConverter))]
[DesignerSerializationVisibility(DesignerSerializationVisibility.Content)]
[Editor("System.Windows.Forms.Design.StringCollectionEditor, System.Design", "System.Drawing.Design.UITypeEditor, System.Drawing")]
public MetroSetItemCollection Items => _metroSetListBox.Items;
public int ItemHeight
{
get => _metroSetListBox.ItemHeight;
set => _metroSetListBox.ItemHeight = value;
}
public bool MultiSelect
{
get => _metroSetListBox.MultiSelect;
set => _metroSetListBox.MultiSelect = value;
}
public bool ShowScrollBar
{
get => _metroSetListBox.ShowScrollBar;
set => _metroSetListBox.ShowScrollBar = value;
}
public bool ShowBorder
{
get => _metroSetListBox.ShowBorder;
set => _metroSetListBox.ShowBorder = value;
}
public override DesignerActionItemCollection GetSortedActionItems()
{
DesignerActionItemCollection items = new DesignerActionItemCollection
{
new DesignerActionHeaderItem("MetroSet Framework"),
new DesignerActionPropertyItem("StyleManager", "StyleManager", "MetroSet Framework", "Gets or sets the stylemanager for the control."),
new DesignerActionPropertyItem("Style", "Style", "MetroSet Framework", "Gets or sets the style."),
new DesignerActionHeaderItem("Informations"),
new DesignerActionPropertyItem("ThemeName", "ThemeName", "Informations", "Gets or sets the The Theme name associated with the theme."),
new DesignerActionPropertyItem("ThemeAuthor", "ThemeAuthor", "Informations", "Gets or sets the The Author name associated with the theme."),
new DesignerActionHeaderItem("Appearance"),
new DesignerActionPropertyItem("Items", "Items", "Appearance", "Gets the items of the ListBox."),
new DesignerActionPropertyItem("ItemHeight", "ItemHeight", "Appearance", "Gets or sets the height of an item in the ListBox."),
new DesignerActionPropertyItem("MultiSelect", "MultiSelect", "Appearance", "Gets or sets a value indicating whether the ListBox supports multiple rows."),
new DesignerActionPropertyItem("ShowScrollBar", "ShowScrollBar", "Appearance", "Gets or sets a value indicating whether the vertical scroll bar is shown or not."),
new DesignerActionPropertyItem("ShowBorder", "ShowBorder", "Appearance", "Gets or sets a value indicating whether the border shown or not."),
};
return items;
}
}
}
================================================
FILE: MetroSet UI/Actions/MetroSetNumericActionList.cs
================================================
using System.ComponentModel;
using System.ComponentModel.Design;
using MetroSet_UI.Components;
using MetroSet_UI.Controls;
using MetroSet_UI.Enums;
/*
* MetroSet UI - MetroSet UI Framework
*
* The MIT License (MIT)
* Copyright (c) 2017 Narwin, https://github.com/N-a-r-w-i-n
*
* Permission is hereby granted, free of charge, to any person obtaining a copy of
* this software and associated documentation files (the "Software"), to deal in the
* Software without restriction, including without limitation the rights to use, copy,
* modify, merge, publish, distribute, sublicense, and/or sell copies of the Software,
* and to permit persons to whom the Software is furnished to do so, subject to the
* following conditions:
*
* The above copyright notice and this permission notice shall be included in
* all copies or substantial portions of the Software.
*
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED,
* INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A
* PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
* HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF
* CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE
* OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
*/
namespace MetroSet_UI.Actions
{
internal class MetroSetNumericActionList : DesignerActionList
{
private readonly MetroSetNumeric _metroSetNumeric;
public MetroSetNumericActionList(IComponent component) : base(component)
{
_metroSetNumeric = (MetroSetNumeric)component;
}
public Style Style
{
get => _metroSetNumeric.Style;
set => _metroSetNumeric.Style = value;
}
public string ThemeAuthor => _metroSetNumeric.ThemeAuthor;
public string ThemeName => _metroSetNumeric.ThemeName;
public StyleManager StyleManager
{
get => _metroSetNumeric.StyleManager;
set => _metroSetNumeric.StyleManager = value;
}
public int Maximum
{
get => _metroSetNumeric.Maximum;
set => _metroSetNumeric.Maximum = value;
}
public int Minimum
{
get => _metroSetNumeric.Minimum;
set => _metroSetNumeric.Minimum = value;
}
public int Value
{
get => _metroSetNumeric.Value;
set => _metroSetNumeric.Value = value;
}
public override DesignerActionItemCollection GetSortedActionItems()
{
DesignerActionItemCollection items = new DesignerActionItemCollection
{
new DesignerActionHeaderItem("MetroSet Framework"),
new DesignerActionPropertyItem("StyleManager", "StyleManager", "MetroSet Framework", "Gets or sets the stylemanager for the control."),
new DesignerActionPropertyItem("Style", "Style", "MetroSet Framework", "Gets or sets the style."),
new DesignerActionHeaderItem("Informations"),
new DesignerActionPropertyItem("ThemeName", "ThemeName", "Informations", "Gets or sets the The Theme name associated with the theme."),
new DesignerActionPropertyItem("ThemeAuthor", "ThemeAuthor", "Informations", "Gets or sets the The Author name associated with the theme."),
new DesignerActionHeaderItem("Appearance"),
new DesignerActionPropertyItem("Value", "Value", "Appearance", "Gets or sets the current number of the Numeric."),
new DesignerActionPropertyItem("Minimum", "Minimum", "Appearance", "Gets or sets the minimum number of the Numeric."),
new DesignerActionPropertyItem("Maximum", "Maximum", "Appearance", "Gets or sets the maximum number of the Numeric."),
};
return items;
}
}
}
================================================
FILE: MetroSet UI/Actions/MetroSetProgressBarActionList.cs
================================================
/*
* MetroSet UI - MetroSet UI Framework
*
* The MIT License (MIT)
* Copyright (c) 2017 Narwin, https://github.com/N-a-r-w-i-n
*
* Permission is hereby granted, free of charge, to any person obtaining a copy of
* this software and associated documentation files (the "Software"), to deal in the
* Software without restriction, including without limitation the rights to use, copy,
* modify, merge, publish, distribute, sublicense, and/or sell copies of the Software,
* and to permit persons to whom the Software is furnished to do so, subject to the
* following conditions:
*
* The above copyright notice and this permission notice shall be included in
* all copies or substantial portions of the Software.
*
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED,
* INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A
* PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
* HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF
* CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE
* OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
*/
using System.ComponentModel;
using System.ComponentModel.Design;
using MetroSet_UI.Components;
using MetroSet_UI.Controls;
using MetroSet_UI.Enums;
namespace MetroSet_UI.Actions
{
internal class MetroSetProgressBarActionList : DesignerActionList
{
private readonly MetroSetProgressBar _metroSetProgressBar;
public MetroSetProgressBarActionList(IComponent component) : base(component)
{
_metroSetProgressBar = (MetroSetProgressBar)component;
}
public Style Style
{
get => _metroSetProgressBar.Style;
set => _metroSetProgressBar.Style = value;
}
public string ThemeAuthor => _metroSetProgressBar.ThemeAuthor;
public string ThemeName => _metroSetProgressBar.ThemeName;
public StyleManager StyleManager
{
get => _metroSetProgressBar.StyleManager;
set => _metroSetProgressBar.StyleManager = value;
}
public int Value
{
get => _metroSetProgressBar.Value;
set => _metroSetProgressBar.Value = value;
}
public int Maximum
{
get => _metroSetProgressBar.Maximum;
set => _metroSetProgressBar.Maximum = value;
}
public int Minimum
{
get => _metroSetProgressBar.Minimum;
set => _metroSetProgressBar.Minimum = value;
}
public override DesignerActionItemCollection GetSortedActionItems()
{
DesignerActionItemCollection items = new DesignerActionItemCollection
{
new DesignerActionHeaderItem("MetroSet Framework"),
new DesignerActionPropertyItem("StyleManager", "StyleManager", "MetroSet Framework", "Gets or sets the stylemanager for the control."),
new DesignerActionPropertyItem("Style", "Style", "MetroSet Framework", "Gets or sets the style."),
new DesignerActionHeaderItem("Informations"),
new DesignerActionPropertyItem("ThemeName", "ThemeName", "Informations", "Gets or sets the The Theme name associated with the theme."),
new DesignerActionPropertyItem("ThemeAuthor", "ThemeAuthor", "Informations", "Gets or sets the The Author name associated with the theme."),
new DesignerActionHeaderItem("Appearance"),
new DesignerActionPropertyItem("Minimum", "Minimum", "Appearance", "Gets or sets the minimum value of the progressbar."),
new DesignerActionPropertyItem("Maximum", "Maximum", "Appearance", "Gets or sets the maximum value of the progressbar."),
new DesignerActionPropertyItem("Value", "Value", "Appearance", "Gets or sets the current position of the progressbar."),
};
return items;
}
}
}
================================================
FILE: MetroSet UI/Actions/MetroSetRadiobuttonActionList.cs
================================================
/*
* MetroSet UI - MetroSet UI Framework
*
* The MIT License (MIT)
* Copyright (c) 2017 Narwin, https://github.com/N-a-r-w-i-n
*
* Permission is hereby granted, free of charge, to any person obtaining a copy of
* this software and associated documentation files (the "Software"), to deal in the
* Software without restriction, including without limitation the rights to use, copy,
* modify, merge, publish, distribute, sublicense, and/or sell copies of the Software,
* and to permit persons to whom the Software is furnished to do so, subject to the
* following conditions:
*
* The above copyright notice and this permission notice shall be included in
* all copies or substantial portions of the Software.
*
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED,
* INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A
* PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
* HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF
* CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE
* OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
*/
using System.ComponentModel;
using System.ComponentModel.Design;
using MetroSet_UI.Components;
using MetroSet_UI.Controls;
using MetroSet_UI.Enums;
namespace MetroSet_UI.Actions
{
internal class MetroSetCheckBoxActionList : DesignerActionList
{
private readonly MetroSetCheckBox _metroSetCheckBox;
public MetroSetCheckBoxActionList(IComponent component) : base(component)
{
_metroSetCheckBox = (MetroSetCheckBox)component;
}
public Style Style
{
get => _metroSetCheckBox.Style;
set => _metroSetCheckBox.Style = value;
}
public string ThemeAuthor => _metroSetCheckBox.ThemeAuthor;
public string ThemeName => _metroSetCheckBox.ThemeName;
public StyleManager StyleManager
{
get => _metroSetCheckBox.StyleManager;
set => _metroSetCheckBox.StyleManager = value;
}
public string Text
{
get => _metroSetCheckBox.Text;
set => _metroSetCheckBox.Text = value;
}
public bool Checked
{
get => _metroSetCheckBox.Checked;
set => _metroSetCheckBox.Checked = value;
}
public SignStyle SignStyle
{
get => _metroSetCheckBox.SignStyle;
set => _metroSetCheckBox.SignStyle = value;
}
public override DesignerActionItemCollection GetSortedActionItems()
{
DesignerActionItemCollection items = new DesignerActionItemCollection
{
new DesignerActionHeaderItem("MetroSet Framework"),
new DesignerActionPropertyItem("StyleManager", "StyleManager", "MetroSet Framework", "Gets or sets the stylemanager for the control."),
new DesignerActionPropertyItem("Style", "Style", "MetroSet Framework", "Gets or sets the style."),
new DesignerActionHeaderItem("Informations"),
new DesignerActionPropertyItem("ThemeName", "ThemeName", "Informations", "Gets or sets the The Theme name associated with the theme."),
new DesignerActionPropertyItem("ThemeAuthor", "ThemeAuthor", "Informations", "Gets or sets the The Author name associated with the theme."),
new DesignerActionHeaderItem("Appearance"),
new DesignerActionPropertyItem("Text", "Text", "Appearance", "Gets or sets the The text associated with the control."),
new DesignerActionPropertyItem("Checked", "Checked", "Appearance", "Gets or sets a value indicating whether the control is checked."),
new DesignerActionPropertyItem("SignStyle", "SignStyle", "Appearance", "Gets or sets the the sign style of check.")
};
return items;
}
}
}
================================================
FILE: MetroSet UI/Actions/MetroSetRichTextBoxActionList.cs
================================================
/*
* MetroSet UI - MetroSet UI Framework
*
* The MIT License (MIT)
* Copyright (c) 2017 Narwin, https://github.com/N-a-r-w-i-n
*
* Permission is hereby granted, free of charge, to any person obtaining a copy of
* this software and associated documentation files (the "Software"), to deal in the
* Software without restriction, including without limitation the rights to use, copy,
* modify, merge, publish, distribute, sublicense, and/or sell copies of the Software,
* and to permit persons to whom the Software is furnished to do so, subject to the
* following conditions:
*
* The above copyright notice and this permission notice shall be included in
* all copies or substantial portions of the Software.
*
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED,
* INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A
* PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
* HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF
* CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE
* OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
*/
using System.ComponentModel;
using System.ComponentModel.Design;
using System.Drawing;
using System.Windows.Forms;
using MetroSet_UI.Components;
using MetroSet_UI.Controls;
using MetroSet_UI.Enums;
namespace MetroSet_UI.Actions
{
internal class MetroSetRichTextBoxActionList : DesignerActionList
{
private readonly MetroSetRichTextBox _metroSetRichTextBox;
public MetroSetRichTextBoxActionList(IComponent component) : base(component)
{
_metroSetRichTextBox = (MetroSetRichTextBox)component;
}
public Style Style
{
get => _metroSetRichTextBox.Style;
set => _metroSetRichTextBox.Style = value;
}
public string ThemeAuthor => _metroSetRichTextBox.ThemeAuthor;
public string ThemeName => _metroSetRichTextBox.ThemeName;
public StyleManager StyleManager
{
get => _metroSetRichTextBox.StyleManager;
set => _metroSetRichTextBox.StyleManager = value;
}
public string Text
{
get => _metroSetRichTextBox.Text;
set => _metroSetRichTextBox.Text = value;
}
public Font Font
{
get => _metroSetRichTextBox.Font;
set => _metroSetRichTextBox.Font = value;
}
public bool ReadOnly
{
get => _metroSetRichTextBox.ReadOnly;
set => _metroSetRichTextBox.ReadOnly = value;
}
public ContextMenuStrip ContextMenuStrip
{
get => _metroSetRichTextBox.ContextMenuStrip;
set => _metroSetRichTextBox.ContextMenuStrip = value;
}
public override DesignerActionItemCollection GetSortedActionItems()
{
DesignerActionItemCollection items = new DesignerActionItemCollection
{
new DesignerActionHeaderItem("MetroSet Framework"),
new DesignerActionPropertyItem("StyleManager", "StyleManager", "MetroSet Framework", "Gets or sets the stylemanager for the control."),
new DesignerActionPropertyItem("Style", "Style", "MetroSet Framework", "Gets or sets the style."),
new DesignerActionHeaderItem("Informations"),
new DesignerActionPropertyItem("ThemeName", "ThemeName", "Informations", "Gets or sets the The Theme name associated with the theme."),
new DesignerActionPropertyItem("ThemeAuthor", "ThemeAuthor", "Informations", "Gets or sets the The Author name associated with the theme."),
new DesignerActionHeaderItem("Appearance"),
new DesignerActionPropertyItem("Text", "Text", "Appearance", "Gets or sets the The text associated with the control."),
new DesignerActionPropertyItem("Font", "Font", "Appearance", "Gets or sets the The font associated with the control."),
new DesignerActionPropertyItem("ReadOnly", "ReadOnly", "Appearance", "Gets or sets a value indicating whether text in the rich text box is read-only."),
new DesignerActionPropertyItem("ContextMenuStrip", "ContextMenuStrip", "Appearance", "Gets or sets the ContextMenuStrip associated with this control."),
};
return items;
}
}
}
================================================
FILE: MetroSet UI/Actions/MetroSetScrollBarActionList.cs
================================================
using System.ComponentModel;
using System.ComponentModel.Design;
using MetroSet_UI.Components;
using MetroSet_UI.Controls;
using MetroSet_UI.Enums; /*
* MetroSet UI - MetroSet UI Framework
*
* The MIT License (MIT)
* Copyright (c) 2017 Narwin, https://github.com/N-a-r-w-i-n
*
* Permission is hereby granted, free of charge, to any person obtaining a copy of
* this software and associated documentation files (the "Software"), to deal in the
* Software without restriction, including without limitation the rights to use, copy,
* modify, merge, publish, distribute, sublicense, and/or sell copies of the Software,
* and to permit persons to whom the Software is furnished to do so, subject to the
* following conditions:
*
* The above copyright notice and this permission notice shall be included in
* all copies or substantial portions of the Software.
*
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED,
* INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A
* PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
* HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF
* CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE
* OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
*/
namespace MetroSet_UI.Actions
{
class MetroSetScrollBarActionList : DesignerActionList
{
private readonly MetroSetScrollBar _metroSetScrollBar;
public MetroSetScrollBarActionList(IComponent component) : base(component)
{
_metroSetScrollBar = (MetroSetScrollBar)component;
}
public Style Style
{
get => _metroSetScrollBar.Style;
set => _metroSetScrollBar.Style = value;
}
public string ThemeAuthor => _metroSetScrollBar.ThemeAuthor;
public string ThemeName => _metroSetScrollBar.ThemeName;
public StyleManager StyleManager
{
get => _metroSetScrollBar.StyleManager;
set => _metroSetScrollBar.StyleManager = value;
}
public int Maximum
{
get => _metroSetScrollBar.Maximum;
set => _metroSetScrollBar.Maximum = value;
}
public int Minimum
{
get => _metroSetScrollBar.Minimum;
set => _metroSetScrollBar.Minimum = value;
}
public int Value
{
get => _metroSetScrollBar.Value;
set => _metroSetScrollBar.Value = value;
}
public int SmallChange
{
get => _metroSetScrollBar.SmallChange;
set => _metroSetScrollBar.SmallChange = value;
}
public int LargeChange
{
get => _metroSetScrollBar.LargeChange;
set => _metroSetScrollBar.LargeChange = value;
}
public ScrollOrientate Orientation
{
get => _metroSetScrollBar.Orientation;
set => _metroSetScrollBar.Orientation = value;
}
public override DesignerActionItemCollection GetSortedActionItems()
{
DesignerActionItemCollection items = new DesignerActionItemCollection
{
new DesignerActionHeaderItem("MetroSet Framework"),
new DesignerActionPropertyItem("StyleManager", "StyleManager", "MetroSet Framework", "Gets or sets the stylemanager for the control."),
new DesignerActionPropertyItem("Style", "Style", "MetroSet Framework", "Gets or sets the style."),
new DesignerActionHeaderItem("Informations"),
new DesignerActionPropertyItem("ThemeName", "ThemeName", "Informations", "Gets or sets the The Theme name associated with the theme."),
new DesignerActionPropertyItem("ThemeAuthor", "ThemeAuthor", "Informations", "Gets or sets the The Author name associated with the theme."),
new DesignerActionHeaderItem("Appearance"),
new DesignerActionPropertyItem("Orientation", "Orientation", "Appearance", "Gets or sets the scroll bar orientation."),
new DesignerActionHeaderItem("Behavior"),
new DesignerActionPropertyItem("Maximum", "Maximum", "Behavior", "Gets or sets the upper limit of the scrollable range."),
new DesignerActionPropertyItem("Minimum", "Minimum", "Behavior", "Gets or sets the lower limit of the scrollable range."),
new DesignerActionPropertyItem("Value", "Value", "Behavior", "Gets or sets a numeric value that represents the current position of the scroll bar box."),
new DesignerActionPropertyItem("LargeChange", "LargeChange", "Behavior", "Gets or sets the distance to move a scroll bar in response to a large scroll command."),
new DesignerActionPropertyItem("SmallChange", "SmallChange", "Behavior", "Gets or sets the distance to move a scroll bar in response to a small scroll command."),
};
return items;
}
}
}
================================================
FILE: MetroSet UI/Actions/MetroSetSwitchActionList.cs
================================================
/*
* MetroSet UI - MetroSet UI Framework
*
* The MIT License (MIT)
* Copyright (c) 2017 Narwin, https://github.com/N-a-r-w-i-n
*
* Permission is hereby granted, free of charge, to any person obtaining a copy of
* this software and associated documentation files (the "Software"), to deal in the
* Software without restriction, including without limitation the rights to use, copy,
* modify, merge, publish, distribute, sublicense, and/or sell copies of the Software,
* and to permit persons to whom the Software is furnished to do so, subject to the
* following conditions:
*
* The above copyright notice and this permission notice shall be included in
* all copies or substantial portions of the Software.
*
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED,
* INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A
* PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
* HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF
* CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE
* OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
*/
using System.ComponentModel;
using System.ComponentModel.Design;
using MetroSet_UI.Components;
using MetroSet_UI.Controls;
using MetroSet_UI.Enums;
namespace MetroSet_UI.Actions
{
internal class MetroSetSwitchActionList : DesignerActionList
{
private readonly MetroSetSwitch _metroSetSwitch;
public MetroSetSwitchActionList(IComponent component) : base(component)
{
_metroSetSwitch = (MetroSetSwitch)component;
}
public Style Style
{
get => _metroSetSwitch.Style;
set => _metroSetSwitch.Style = value;
}
public string ThemeAuthor => _metroSetSwitch.ThemeAuthor;
public string ThemeName => _metroSetSwitch.ThemeName;
public StyleManager StyleManager
{
get => _metroSetSwitch.StyleManager;
set => _metroSetSwitch.StyleManager = value;
}
public string Text
{
get => _metroSetSwitch.Text;
set => _metroSetSwitch.Text = value;
}
public bool Switched
{
get => _metroSetSwitch.Switched;
set => _metroSetSwitch.Switched = value;
}
public override DesignerActionItemCollection GetSortedActionItems()
{
DesignerActionItemCollection items = new DesignerActionItemCollection
{
new DesignerActionHeaderItem("MetroSet Framework"),
new DesignerActionPropertyItem("StyleManager", "StyleManager", "MetroSet Framework", "Gets or sets the stylemanager for the control."),
new DesignerActionPropertyItem("Style", "Style", "MetroSet Framework", "Gets or sets the style."),
new DesignerActionHeaderItem("Informations"),
new DesignerActionPropertyItem("ThemeName", "ThemeName", "Informations", "Gets or sets the The Theme name associated with the theme."),
new DesignerActionPropertyItem("ThemeAuthor", "ThemeAuthor", "Informations", "Gets or sets the The Author name associated with the theme."),
new DesignerActionHeaderItem("Appearance"),
new DesignerActionPropertyItem("Text", "Text", "Appearance", "Gets or sets the The text associated with the control."),
new DesignerActionPropertyItem("Switched", "Switched", "Appearance", "Gets or sets a value indicating whether the control is switched."),
};
return items;
}
}
}
================================================
FILE: MetroSet UI/Actions/MetroSetTextBoxActionList.cs
================================================
/*
* MetroSet UI - MetroSet UI Framework
*
* The MIT License (MIT)
* Copyright (c) 2017 Narwin, https://github.com/N-a-r-w-i-n
*
* Permission is hereby granted, free of charge, to any person obtaining a copy of
* this software and associated documentation files (the "Software"), to deal in the
* Software without restriction, including without limitation the rights to use, copy,
* modify, merge, publish, distribute, sublicense, and/or sell copies of the Software,
* and to permit persons to whom the Software is furnished to do so, subject to the
* following conditions:
*
* The above copyright notice and this permission notice shall be included in
* all copies or substantial portions of the Software.
*
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED,
* INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A
* PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
* HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF
* CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE
* OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
*/
using System.ComponentModel;
using System.ComponentModel.Design;
using System.Drawing;
using System.Windows.Forms;
using MetroSet_UI.Components;
using MetroSet_UI.Controls;
using MetroSet_UI.Enums;
namespace MetroSet_UI.Actions
{
internal class MetroSetTextBoxActionList : DesignerActionList
{
private readonly MetroSetTextBox _metroSetTextBox;
public MetroSetTextBoxActionList(IComponent component) : base(component)
{
_metroSetTextBox = (MetroSetTextBox)component;
}
public Style Style
{
get => _metroSetTextBox.Style;
set => _metroSetTextBox.Style = value;
}
public string ThemeAuthor => _metroSetTextBox.ThemeAuthor;
public string ThemeName => _metroSetTextBox.ThemeName;
public StyleManager StyleManager
{
get => _metroSetTextBox.StyleManager;
set => _metroSetTextBox.StyleManager = value;
}
public string Text
{
get => _metroSetTextBox.Text;
set => _metroSetTextBox.Text = value;
}
public Font Font
{
get => _metroSetTextBox.Font;
set => _metroSetTextBox.Font = value;
}
public bool ReadOnly
{
get => _metroSetTextBox.ReadOnly;
set => _metroSetTextBox.ReadOnly = value;
}
public bool UseSystemPasswordChar
{
get => _metroSetTextBox.UseSystemPasswordChar;
set => _metroSetTextBox.UseSystemPasswordChar = value;
}
public bool Multiline
{
get => _metroSetTextBox.Multiline;
set => _metroSetTextBox.Multiline = value;
}
public string WatermarkText
{
get => _metroSetTextBox.WatermarkText;
set => _metroSetTextBox.WatermarkText = value;
}
public ContextMenuStrip ContextMenuStrip
{
get => _metroSetTextBox.ContextMenuStrip;
set => _metroSetTextBox.ContextMenuStrip = value;
}
public override DesignerActionItemCollection GetSortedActionItems()
{
DesignerActionItemCollection items = new DesignerActionItemCollection
{
new DesignerActionHeaderItem("MetroSet Framework"),
new DesignerActionPropertyItem("StyleManager", "StyleManager", "MetroSet Framework", "Gets or sets the stylemanager for the control."),
new DesignerActionPropertyItem("Style", "Style", "MetroSet Framework", "Gets or sets the style."),
new DesignerActionHeaderItem("Informations"),
new DesignerActionPropertyItem("ThemeName", "ThemeName", "Informations", "Gets or sets the The Theme name associated with the theme."),
new DesignerActionPropertyItem("ThemeAuthor", "ThemeAuthor", "Informations", "Gets or sets the The Author name associated with the theme."),
new DesignerActionHeaderItem("Appearance"),
new DesignerActionPropertyItem("Text", "Text", "Appearance", "Gets or sets the The text associated with the control."),
new DesignerActionPropertyItem("Font", "Font", "Appearance", "Gets or sets the The font associated with the control."),
new DesignerActionPropertyItem("ReadOnly", "ReadOnly", "Appearance", "Gets or sets a value indicating whether text in the text box is read-only."),
new DesignerActionPropertyItem("UseSystemPasswordChar", "UseSystemPasswordChar", "Appearance", "Gets or sets a value indicating whether the text in the TextBox control should appear as the default password character."),
new DesignerActionPropertyItem("Multiline", "Multiline", "Appearance", "Gets or sets a value indicating whether this is a multiline TextBox control."),
new DesignerActionPropertyItem("WatermarkText", "WatermarkText", "Appearance", "Gets or sets the text in the TextBox while being empty."),
new DesignerActionPropertyItem("ContextMenuStrip", "ContextMenuStrip", "Appearance", "Gets or sets the ContextMenuStrip associated with this control."),
};
return items;
}
}
}
================================================
FILE: MetroSet UI/Actions/MetroSetTileActionList.cs
================================================
/*
* MetroSet UI - MetroSet UI Framework
*
* The MIT License (MIT)
* Copyright (c) 2017 Narwin, https://github.com/N-a-r-w-i-n
*
* Permission is hereby granted, free of charge, to any person obtaining a copy of
* this software and associated documentation files (the "Software"), to deal in the
* Software without restriction, including without limitation the rights to use, copy,
* modify, merge, publish, distribute, sublicense, and/or sell copies of the Software,
* and to permit persons to whom the Software is furnished to do so, subject to the
* following conditions:
*
* The above copyright notice and this permission notice shall be included in
* all copies or substantial portions of the Software.
*
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED,
* INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A
* PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
* HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF
* CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE
* OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
*/
using System.ComponentModel;
using System.ComponentModel.Design;
using System.Drawing;
using MetroSet_UI.Components;
using MetroSet_UI.Controls;
using MetroSet_UI.Enums;
namespace MetroSet_UI.Actions
{
public class MetroSetTileActionList : DesignerActionList
{
private readonly MetroSetTile _metroSetTile;
public MetroSetTileActionList(IComponent component) : base(component)
{
_metroSetTile = (MetroSetTile)component;
}
public Style Style
{
get => _metroSetTile.Style;
set => _metroSetTile.Style = value;
}
public string ThemeAuthor => _metroSetTile.ThemeAuthor;
public string ThemeName => _metroSetTile.ThemeName;
public StyleManager StyleManager
{
get => _metroSetTile.StyleManager;
set => _metroSetTile.StyleManager = value;
}
public string Text
{
get => _metroSetTile.Text;
set => _metroSetTile.Text = value;
}
public Font Font
{
get => _metroSetTile.Font;
set => _metroSetTile.Font = value;
}
public Image BackgroundImage
{
get => _metroSetTile.BackgroundImage;
set => _metroSetTile.BackgroundImage = value;
}
public override DesignerActionItemCollection GetSortedActionItems()
{
DesignerActionItemCollection items = new DesignerActionItemCollection
{
new DesignerActionHeaderItem("MetroSet Framework"),
new DesignerActionPropertyItem("StyleManager", "StyleManager", "MetroSet Framework", "Gets or sets the stylemanager for the control."),
new DesignerActionPropertyItem("Style", "Style", "MetroSet Framework", "Gets or sets the style."),
new DesignerActionHeaderItem("Informations"),
new DesignerActionPropertyItem("ThemeName", "ThemeName", "Informations", "Gets or sets the The Theme name associated with the theme."),
new DesignerActionPropertyItem("ThemeAuthor", "ThemeAuthor", "Informations", "Gets or sets the The Author name associated with the theme."),
new DesignerActionHeaderItem("Appearance"),
new DesignerActionPropertyItem("Text", "Text", "Appearance", "Gets or sets the The text associated with the control."),
new DesignerActionPropertyItem("Font", "Font", "Appearance", "Gets or sets the The font associated with the control."),
new DesignerActionPropertyItem("BackgroundImage", "BackgroundImage", "Appearance", "Gets or sets the BackgroundImage associated with the control."),
};
return items;
}
}
}
================================================
FILE: MetroSet UI/Actions/MetroSetToolTipActionList.cs
================================================
/*
* MetroSet UI - MetroSet UI Framework
*
* The MIT License (MIT)
* Copyright (c) 2017 Narwin, https://github.com/N-a-r-w-i-n
*
* Permission is hereby granted, free of charge, to any person obtaining a copy of
* this software and associated documentation files (the "Software"), to deal in the
* Software without restriction, including without limitation the rights to use, copy,
* modify, merge, publish, distribute, sublicense, and/or sell copies of the Software,
* and to permit persons to whom the Software is furnished to do so, subject to the
* following conditions:
*
* The above copyright notice and this permission notice shall be included in
* all copies or substantial portions of the Software.
*
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED,
* INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A
* PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
* HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF
* CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE
* OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
*/
using System.ComponentModel;
using System.ComponentModel.Design;
using MetroSet_UI.Components;
using MetroSet_UI.Enums;
namespace MetroSet_UI.Actions
{
internal class MetroSetToolTipActionList : DesignerActionList
{
private readonly MetroSetSetToolTip _metroSetSetToolTip;
public MetroSetToolTipActionList(IComponent component) : base(component)
{
_metroSetSetToolTip = (MetroSetSetToolTip)component;
}
public Style Style
{
get => _metroSetSetToolTip.Style;
set => _metroSetSetToolTip.Style = value;
}
public string ThemeAuthor => _metroSetSetToolTip.ThemeAuthor;
public string ThemeName => _metroSetSetToolTip.ThemeName;
public StyleManager StyleManager
{
get => _metroSetSetToolTip.StyleManager;
set => _metroSetSetToolTip.StyleManager = value;
}
public bool Active
{
get => _metroSetSetToolTip.Active;
set => _metroSetSetToolTip.Active = value;
}
public int AutomaticDelay
{
get => _metroSetSetToolTip.AutomaticDelay;
set => _metroSetSetToolTip.AutomaticDelay = value;
}
public int AutoPopDelay
{
get => _metroSetSetToolTip.AutoPopDelay;
set => _metroSetSetToolTip.AutoPopDelay = value;
}
public int InitialDelay
{
get => _metroSetSetToolTip.InitialDelay;
set => _metroSetSetToolTip.InitialDelay = value;
}
public bool StripAmpersands
{
get => _metroSetSetToolTip.StripAmpersands;
set => _metroSetSetToolTip.StripAmpersands = value;
}
public bool UseAnimation
{
get => _metroSetSetToolTip.UseAnimation;
set => _metroSetSetToolTip.UseAnimation = value;
}
public bool UseFading
{
get => _metroSetSetToolTip.UseFading;
set => _metroSetSetToolTip.UseFading = value;
}
public override DesignerActionItemCollection GetSortedActionItems()
{
DesignerActionItemCollection items = new DesignerActionItemCollection
{
new DesignerActionHeaderItem("MetroSet Framework"),
new DesignerActionPropertyItem("StyleManager", "StyleManager", "MetroSet Framework", "Gets or sets the stylemanager for the control."),
new DesignerActionPropertyItem("Style", "Style", "MetroSet Framework", "Gets or sets the style."),
new DesignerActionHeaderItem("Informations"),
new DesignerActionPropertyItem("ThemeName", "ThemeName", "Informations", "Gets or sets the The Theme name associated with the theme."),
new DesignerActionPropertyItem("ThemeAuthor", "ThemeAuthor", "Informations", "Gets or sets the The Author name associated with the theme."),
new DesignerActionHeaderItem("Misc"),
new DesignerActionPropertyItem("Active", "Active", "Misc", "Gets or sets a value indicating whether the ToolTip is currently active."),
new DesignerActionPropertyItem("AutomaticDelay", "AutomaticDelay", "Misc", "Gets or sets the automatic delay for the ToolTip."),
new DesignerActionPropertyItem("AutoPopDelay", "AutoPopDelay", "Misc", "Gets or sets the period of time the ToolTip remains visible if the pointer is stationary on a control with specified ToolTip text."),
new DesignerActionPropertyItem("InitialDelay", "InitialDelay", "Misc", "Gets or sets the time that passes before the ToolTip appears."),
new DesignerActionPropertyItem("StripAmpersands", "StripAmpersands", "Misc", "Gets or sets a value that determines how ampersand (&) characters are treated."),
new DesignerActionPropertyItem("UseAnimation", "UseAnimation", "Misc", "Gets or sets a value determining whether an animation effect should be used when displaying the ToolTip."),
new DesignerActionPropertyItem("UseFading", "UseFading", "Appearance", "Gets or sets a value determining whether a fade effect should be used when displaying the ToolTip."),
};
return items;
}
}
}
================================================
FILE: MetroSet UI/Actions/MetroSetTrackBarActionList.cs
================================================
/*
* MetroSet UI - MetroSet UI Framework
*
* The MIT License (MIT)
* Copyright (c) 2017 Narwin, https://github.com/N-a-r-w-i-n
*
* Permission is hereby granted, free of charge, to any person obtaining a copy of
* this software and associated documentation files (the "Software"), to deal in the
* Software without restriction, including without limitation the rights to use, copy,
* modify, merge, publish, distribute, sublicense, and/or sell copies of the Software,
* and to permit persons to whom the Software is furnished to do so, subject to the
* following conditions:
*
* The above copyright notice and this permission notice shall be included in
* all copies or substantial portions of the Software.
*
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED,
* INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A
* PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
* HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF
* CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE
* OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
*/
using System.ComponentModel;
using System.ComponentModel.Design;
using MetroSet_UI.Components;
using MetroSet_UI.Controls;
using MetroSet_UI.Enums;
namespace MetroSet_UI.Actions
{
public class MetroSetTrackBarActionList : DesignerActionList
{
private readonly MetroSetTrackBar _metroSetTrackBar;
public MetroSetTrackBarActionList(IComponent component) : base(component)
{
_metroSetTrackBar = (MetroSetTrackBar)component;
}
public Style Style
{
get => _metroSetTrackBar.Style;
set => _metroSetTrackBar.Style = value;
}
public string ThemeAuthor => _metroSetTrackBar.ThemeAuthor;
public string ThemeName => _metroSetTrackBar.ThemeName;
public StyleManager StyleManager
{
get => _metroSetTrackBar.StyleManager;
set => _metroSetTrackBar.StyleManager = value;
}
public int Maximum
{
get => _metroSetTrackBar.Maximum;
set => _metroSetTrackBar.Maximum = value;
}
public int Minimum
{
get => _metroSetTrackBar.Minimum;
set => _metroSetTrackBar.Minimum = value;
}
public int Value
{
get => _metroSetTrackBar.Value;
set => _metroSetTrackBar.Value = value;
}
public override DesignerActionItemCollection GetSortedActionItems()
{
DesignerActionItemCollection items = new DesignerActionItemCollection
{
new DesignerActionHeaderItem("MetroSet Framework"),
new DesignerActionPropertyItem("StyleManager", "StyleManager", "MetroSet Framework", "Gets or sets the stylemanager for the control."),
new DesignerActionPropertyItem("Style", "Style", "MetroSet Framework", "Gets or sets the style."),
new DesignerActionHeaderItem("Informations"),
new DesignerActionPropertyItem("ThemeName", "ThemeName", "Informations", "Gets or sets the The Theme name associated with the theme."),
new DesignerActionPropertyItem("ThemeAuthor", "ThemeAuthor", "Informations", "Gets or sets the The Author name associated with the theme."),
new DesignerActionHeaderItem("Appearance"),
new DesignerActionPropertyItem("Maximum", "Maximum", "Appearance", "Gets or sets the upper limit of the range this TrackBar is working with."),
new DesignerActionPropertyItem("Minimum", "Minimum", "Appearance", "Gets or sets the lower limit of the range this TrackBar is working with."),
new DesignerActionPropertyItem("Value", "Value", "Appearance", "Gets or sets a numeric value that represents the current position of the scroll box on the track bar."),
};
return items;
}
}
}
================================================
FILE: MetroSet UI/Actions/StyleManagerActionList.cs
================================================
using System.ComponentModel;
using System.ComponentModel.Design;
using System.Drawing.Design;
using System.Windows.Forms;
using MetroSet_UI.Components;
using MetroSet_UI.Enums;
/*
* MetroSet UI - MetroSet UI Framework
*
* The MIT License (MIT)
* Copyright (c) 2017 Narwin, https://github.com/N-a-r-w-i-n
*
* Permission is hereby granted, free of charge, to any person obtaining a copy of
* this software and associated documentation files (the "Software"), to deal in the
* Software without restriction, including without limitation the rights to use, copy,
* modify, merge, publish, distribute, sublicense, and/or sell copies of the Software,
* and to permit persons to whom the Software is furnished to do so, subject to the
* following conditions:
*
* The above copyright notice and this permission notice shall be included in
* all copies or substantial portions of the Software.
*
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED,
* INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A
* PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
* HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF
* CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE
* OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
*/
namespace MetroSet_UI.Actions
{
class StyleManagerActionList : DesignerActionList
{
private readonly StyleManager _styleManger;
public StyleManagerActionList(IComponent component) : base(component)
{
_styleManger = (StyleManager)component;
}
public Style Style
{
get => _styleManger.Style;
set => _styleManger.Style = value;
}
public string ThemeAuthor => _styleManger.ThemeAuthor;
public string ThemeName => _styleManger.ThemeName;
[Editor(typeof(StyleManager.FileNamesEditor), typeof(UITypeEditor)), Category("MetroSet Framework"), Description("Gets or sets the custom theme file.")]
public string CustomTheme
{
get => _styleManger.CustomTheme;
set => _styleManger.CustomTheme = value;
}
public Form OwnerForm
{
get => _styleManger.MetroForm;
set => _styleManger.MetroForm = value;
}
public override DesignerActionItemCollection GetSortedActionItems()
{
var items = new DesignerActionItemCollection
{
new DesignerActionHeaderItem("MetroSet Framework"),
new DesignerActionPropertyItem("OwnerForm", "OwnerForm", "MetroSet Framework", "Gets or sets the form (MetroForm) to Apply themes for."),
new DesignerActionPropertyItem("Style", "Style", "MetroSet Framework", "Gets or sets the style."),
new DesignerActionPropertyItem("CustomTheme", "CustomTheme", "MetroSet Framework", "Gets or sets the custom theme file."),
new DesignerActionHeaderItem("Information"),
new DesignerActionPropertyItem("ThemeName", "ThemeName", "Information", "Gets or sets the The Theme name associated with the theme."),
new DesignerActionPropertyItem("ThemeAuthor", "ThemeAuthor", "Information", "Gets or sets the The Author name associated with the theme."),
};
return items;
}
}
}
================================================
FILE: MetroSet UI/Animates/Animate.cs
================================================
using System;
using System.Windows.Forms;
using MetroSet_UI.Enums;
namespace MetroSet_UI.Animates
{
// interpolation animate
public abstract class Animate<T> : IDisposable
{
/// <summary>
/// Call when animation update
/// </summary>
public Action<T> Update { get; set; }
/// <summary>
/// Call when animation complate
/// </summary>
public MethodInvoker Complete { get; set; }
#region Internal Vars
// a bad way to record time...
private DateTime _lastUpdateTime;
// I use timer instead of thread, so you can modify control without Control.Invoke
private Timer _animateTimer;
// reverse animate
private bool _reverse;
#endregion
#region Constructors
// choose best interval for yourself
public Animate(int updateInterval = 16)
{
_animateTimer = new Timer()
{
Interval = updateInterval,
Enabled = false,
};
_animateTimer.Tick += this.OnFrameUpdate;
_reverse = false;
Alpha = 0.0;
}
#endregion
#region Functions
// just set once, and use start, back or reverse to play animate
public void Setting(int duration, T initial, T end, EasingType easing = EasingType.Linear)
{
InitialValue = initial;
EndValue = end;
EasingType = easing;
Duration = duration;
}
// start animate with default setting
public void Start()
{
_reverse = false;
Alpha = 0.0;
Play();
}
// back animate with default setting
public void Back()
{
_reverse = true;
Alpha = 1.0;
Play();
}
// start animate with default setting
public void Start(int duration)
{
_reverse = false;
Alpha = 0.0;
Duration = duration;
Play();
}
// back animate with default setting
public void Back(int duration)
{
_reverse = true;
Alpha = 1.0;
Duration = duration;
Play();
}
// reverse animate
public void Reverse()
{
Reverse(!_reverse);
}
// reverse animate
public void Reverse(bool val)
{
_reverse = val;
if (!Active)
Play();
}
// play animate
public void Play()
{
_lastUpdateTime = DateTime.Now;
Active = true;
_animateTimer.Enabled = true;
_animateTimer.Start();
}
public void Pause()
{
_animateTimer.Stop();
_animateTimer.Enabled = false;
Active = false;
}
public void Stop()
{
Pause();
Alpha = _reverse ? 1.0 : 0.0;
}
// start animate with specific setting
public void Start(int duration, T initial, T end, EasingType easing = EasingType.Linear)
{
Setting(duration, initial, end, easing);
Start();
}
// back animate with specific setting
public void Back(int duration, T initial, T end, EasingType easing = EasingType.Linear)
{
Setting(duration, initial, end, easing);
Back();
}
#endregion
#region Events
// process frame
private void OnFrameUpdate(object sender, EventArgs e)
{
DateTime updateTime = DateTime.Now;
double elapsed;
if (Duration == 0)
elapsed = 1.0;
else
elapsed = (updateTime - _lastUpdateTime).TotalMilliseconds / Duration;
_lastUpdateTime = updateTime;
Alpha = Math.Max(0.0, Math.Min(Alpha + (_reverse ? -elapsed : elapsed), 1.0));
Update?.Invoke(Value);
if (Alpha != 0.0 && Alpha != 1.0)
return;
Pause();
Complete?.Invoke();
}
#endregion
#region Properties
// progress. value between 0 and 1
public double Alpha { get; set; }
// animate duration
// recorded for calculating elapsed alpha
// if you use reverse animate when animate avtiving
// the real duration will different with the duration you set
public int Duration { get; set; }
// initial state of value
public T InitialValue { get; private set; }
public abstract T Value { get; }
// final state of value
public T EndValue { get; private set; }
// easing type
public EasingType EasingType { get; private set; }
// active if the animate is running
public bool Active { get; private set; }
// store you own variable here
public object Tag { get; set; }
#endregion
#region Dispose
public void Dispose()
{
_animateTimer.Dispose();
}
#endregion
}
}
================================================
FILE: MetroSet UI/Animates/ColorAnimate.cs
================================================
using System.Drawing;
namespace MetroSet_UI.Animates
{
public class ColorAnimate : Animate<Color>
{
public override Color Value =>
Color.FromArgb(
(byte)Interpolation.ValueAt(InitialValue.A, EndValue.A, Alpha, EasingType),
(byte)Interpolation.ValueAt(InitialValue.R, EndValue.R, Alpha, EasingType),
(byte)Interpolation.ValueAt(InitialValue.G, EndValue.G, Alpha, EasingType),
(byte)Interpolation.ValueAt(InitialValue.B, EndValue.B, Alpha, EasingType)
);
}
}
================================================
FILE: MetroSet UI/Animates/DoubleAnimat.cs
================================================
namespace MetroSet_UI.Animates
{
public class DoubleAnimate : Animate<double>
{
public override double Value =>
Interpolation.ValueAt(InitialValue, EndValue, Alpha, EasingType);
}
}
================================================
FILE: MetroSet UI/Animates/IntAnimate.cs
================================================
namespace MetroSet_UI.Animates
{
public class IntAnimate : Animate<int>
{
public override int Value =>
(int)Interpolation.ValueAt(InitialValue, EndValue, Alpha, EasingType);
}
}
================================================
FILE: MetroSet UI/Animates/Interpolation.cs
================================================
using System;
using MetroSet_UI.Enums;
namespace MetroSet_UI.Animates
{
// for animate
public class Interpolation
{
public static double ValueAt(double initial, double end, double alpha, EasingType easing)
{
switch (easing)
{
default:
return (end * alpha) + (initial * (1 - alpha));
case EasingType.QuadIn:
{
double factor = alpha * alpha;
return (end * factor) + (initial * (1 - factor));
}
case EasingType.QuadOut:
{
double factor = (2 - alpha) * alpha;
return (end * factor) + (initial * (1 - factor));
}
case EasingType.QuadInOut:
{
double mid = initial + (end - initial) / 2.0;
if (alpha <= 0.5)
return ValueAt(initial, mid, alpha * 2, EasingType.QuadIn);
else
return ValueAt(mid, end, (alpha - 0.5) * 2, EasingType.QuadOut);
}
case EasingType.CubeIn:
{
double factor = alpha * alpha * alpha;
return (end * factor) + (initial * (1 - factor));
}
case EasingType.CubeOut:
{
double factor = -(alpha - 1);
factor = -(factor * factor * factor) + 1;
return (end * factor) + (initial * (1 - factor));
}
case EasingType.CubeInOut:
{
double mid = initial + (end - initial) / 2.0;
if (alpha <= 0.5)
return ValueAt(initial, mid, alpha * 2, EasingType.CubeIn);
else
return ValueAt(mid, end, (alpha - 0.5) * 2, EasingType.CubeOut);
}
case EasingType.QuartIn:
{
double factor = alpha * alpha * alpha * alpha;
return (end * factor) + (initial * (1 - factor));
}
case EasingType.QuartOut:
{
double factor = -(alpha - 1);
factor = 1 - (factor * factor * factor * factor);
return (end * factor) + (initial * (1 - factor));
}
case EasingType.QuartInOut:
{
double mid = initial + (end - initial) / 2.0;
if (alpha <= 0.5)
return ValueAt(initial, mid, alpha * 2, EasingType.QuartIn);
else
return ValueAt(mid, end, (alpha - 0.5) * 2, EasingType.QuartOut);
}
case EasingType.QuintIn:
{
double factor = alpha * alpha * alpha * alpha * alpha;
return (end * factor) + (initial * (1 - factor));
}
case EasingType.QuintOut:
{
double factor = -(alpha - 1);
factor = 1 - (factor * factor * factor * factor * factor);
return (end * factor) + (initial * (1 - factor));
}
case EasingType.QuintInOut:
{
double mid = initial + (end - initial) / 2.0;
if (alpha <= 0.5)
return ValueAt(initial, mid, alpha / 0.5, EasingType.QuintIn);
else
return ValueAt(mid, end, (alpha - 0.5) / 0.5, EasingType.QuintOut);
}
case EasingType.SineIn:
{
double factor = 1 - Math.Cos(Math.PI / 2 * alpha);
return (end * factor) + (initial * (1 - factor));
}
case EasingType.SineOut:
{
double factor = Math.Sin(Math.PI / 2 * alpha);
return (end * factor) + (initial * (1 - factor));
}
case EasingType.SineInOut:
{
if (alpha <= 0.5)
return ValueAt(initial, (initial + end) / 2.0, alpha * 2, EasingType.SineIn);
else
return ValueAt((initial + end) / 2.0, end, (alpha - 0.5) * 2, EasingType.SineOut);
}
}
}
}
}
================================================
FILE: MetroSet UI/Animates/PointFAnimate.cs
================================================
using System.Drawing;
namespace MetroSet_UI.Animates
{
public class PointFAnimate : Animate<PointF>
{
public override PointF Value =>
new PointF(
(float)Interpolation.ValueAt(InitialValue.X, EndValue.X, Alpha, EasingType),
(float)Interpolation.ValueAt(InitialValue.Y, EndValue.Y, Alpha, EasingType)
);
}
}
================================================
FILE: MetroSet UI/Animates/SizeFAnimate.cs
================================================
using System.Drawing;
namespace MetroSet_UI.Animates
{
public class SizeFAnimate : Animate<SizeF>
{
public override SizeF Value =>
new SizeF(
(float)Interpolation.ValueAt(InitialValue.Width, EndValue.Width, Alpha, EasingType),
(float)Interpolation.ValueAt(InitialValue.Height, EndValue.Height, Alpha, EasingType)
);
}
}
================================================
FILE: MetroSet UI/Child/MetroSetItemCollection.cs
================================================
/*
* MetroSet UI - MetroSet UI Framework
*
* The MIT License (MIT)
* Copyright (c) 2017 Narwin, https://github.com/N-a-r-w-i-n
*
* Permission is hereby granted, free of charge, to any person obtaining a copy of
* this software and associated documentation files (the "Software"), to deal in the
* Software without restriction, including without limitation the rights to use, copy,
* modify, merge, publish, distribute, sublicense, and/or sell copies of the Software,
* and to permit persons to whom the Software is furnished to do so, subject to the
* following conditions:
*
* The above copyright notice and this permission notice shall be included in
* all copies or substantial portions of the Software.
*
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED,
* INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A
* PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
* HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF
* CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE
* OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
*/
using System;
using System.Collections.Generic;
using System.Collections.ObjectModel;
namespace MetroSet_UI.Child
{
public class MetroSetItemCollection : Collection<object>
{
/// <summary>
/// An event for to determine whether and item or items added or removed.
/// </summary>
public event EventHandler ItemUpdated;
public delegate void EventHandler(object sender, EventArgs e);
/// <summary>
/// Adds an array of items to the list of items for a MetroSetListBox.
/// </summary>
/// <param name="items">An IEnumerable of objects to add to the list.</param>
public void AddRange(IEnumerable<object> items)
{
foreach (var item in items)
{
Add(item);
}
}
/// <summary>
/// Adds an item to the list of items for a MetroSetListBox.
/// </summary>
/// <param name="item">An object representing the item to add to the collection.</param>
protected new void Add(object item)
{
base.Add(item);
ItemUpdated?.Invoke(this, null);
}
/// <summary>
/// Inserts an item into the list box at the specified index.
/// </summary>
/// <param name="index">The zero-based index location where the item is inserted.</param>
/// <param name="item">An object representing the item to insert.</param>
protected override void InsertItem(int index, object item)
{
base.InsertItem(index, item);
ItemUpdated?.Invoke(this, null);
}
/// <summary>
/// Removes the specified object from the collection.
/// </summary>
/// <param name="value">An object representing the item to remove from the collection.</param>
protected override void RemoveItem(int value)
{
base.RemoveItem(value);
ItemUpdated?.Invoke(this, null);
}
/// <summary>
/// Removes all items from the collection.
/// </summary>
protected new void Clear()
{
base.Clear();
ItemUpdated?.Invoke(this, null);
}
/// <summary>
/// Removes all items from the collection.
/// </summary>
protected override void ClearItems()
{
base.ClearItems();
ItemUpdated?.Invoke(this, null);
}
}
}
================================================
FILE: MetroSet UI/Child/MetroSetSetTabPage.cs
================================================
/*
* MetroSet UI - MetroSet UI Framework
*
* The MIT License (MIT)
* Copyright (c) 2017 Narwin, https://github.com/N-a-r-w-i-n
*
* Permission is hereby granted, free of charge, to any person obtaining a copy of
* this software and associated documentation files (the "Software"), to deal in the
* Software without restriction, including without limitation the rights to use, copy,
* modify, merge, publish, distribute, sublicense, and/or sell copies of the Software,
* and to permit persons to whom the Software is furnished to do so, subject to the
* following conditions:
*
* The above copyright notice and this permission notice shall be included in
* all copies or substantial portions of the Software.
*
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED,
* INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A
* PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
* HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF
* CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE
* OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
*/
using System.ComponentModel;
using System.Drawing;
using System.Windows.Forms;
using MetroSet_UI.Components;
using MetroSet_UI.Design;
using MetroSet_UI.Enums;
using MetroSet_UI.Extensions;
using MetroSet_UI.Interfaces;
namespace MetroSet_UI.Child
{
[Designer(typeof(MetroSetTabPageDesigner))]
public class MetroSetSetTabPage : TabPage, IMetroSetControl
{
#region Interfaces
/// <summary>
/// Gets or sets the style associated with the control.
/// </summary>
[Browsable(false)]
[Category("MetroSet Framework"), Description("Gets or sets the style associated with the control.")]
public Style Style
{
get => StyleManager?.Style ?? _style;
set
{
_style = value;
switch (value)
{
case Style.Light:
ApplyTheme();
break;
case Style.Dark:
ApplyTheme(Style.Dark);
break;
case Style.Custom:
ApplyTheme(Style.Custom);
break;
default:
ApplyTheme();
break;
}
Invalidate();
}
}
/// <summary>
/// Gets or sets the Style Manager associated with the control.
/// </summary>
[Browsable(false)]
[Category("MetroSet Framework"), Description("Gets or sets the Style Manager associated with the control.")]
public StyleManager StyleManager
{
get => _styleManager;
set { _styleManager = value; Invalidate(); }
}
/// <summary>
/// Gets or sets the The Author name associated with the theme.
/// </summary>
[Category("MetroSet Framework"), Description("Gets or sets the The Author name associated with the theme.")]
public string ThemeAuthor { get; set; }
/// <summary>
/// Gets or sets the The Theme name associated with the theme.
/// </summary>
[Category("MetroSet Framework"), Description("Gets or sets the The Theme name associated with the theme.")]
public string ThemeName { get; set; }
#endregion Interfaces
#region Internal Vars
private Style _style;
private StyleManager _styleManager;
#endregion Internal Vars
#region Constructors
public MetroSetSetTabPage()
{
SetStyle(
ControlStyles.UserPaint |
ControlStyles.AllPaintingInWmPaint |
ControlStyles.ResizeRedraw |
ControlStyles.OptimizedDoubleBuffer |
ControlStyles.SupportsTransparentBackColor, true);
base.Font = MetroSetFonts.Light(10);
UpdateStyles();
ApplyTheme();
}
#endregion Constructors
#region ApplyTheme
/// <summary>
/// Gets or sets the style provided by the user.
/// </summary>
/// <param name="style">The Style.</param>
private void ApplyTheme(Style style = Style.Light)
{
if (!IsDerivedStyle)
return;
switch (style)
{
case Style.Light:
BaseColor = Color.White;
ThemeAuthor = "Narwin";
ThemeName = "MetroLite";
UpdateProperties();
break;
case Style.Dark:
BaseColor = Color.FromArgb(32, 32, 32);
ThemeAuthor = "Narwin";
ThemeName = "MetroDark";
UpdateProperties();
break;
}
}
/// <summary>
/// Updating properties after changing in style.
/// </summary>
public void UpdateProperties()
{
Invalidate();
}
#endregion ApplyTheme
#region Properties
[Browsable(false)]
public new Color BackColor { get; set; } = Color.Transparent;
// I don't want to re-create the following properties for specific reason but for helping
// the users to find usage properties easily under MetroSet Framework category in property grid.
[Category("MetroSet Framework")]
public override string Text { get; set; }
[Category("MetroSet Framework")]
public new Font Font { get; set; }
[Category("MetroSet Framework")]
public new int ImageIndex { get; set; }
[Category("MetroSet Framework")]
public new string ImageKey { get; set; }
[Category("MetroSet Framework")]
public new string ToolTipText { get; set; }
[Category("MetroSet Framework")]
[Bindable(false)]
public Color BaseColor { get; set; }
private bool _isDerivedStyle = true;
/// <summary>
/// Gets or sets the whether this control reflect to parent form style.
/// Set it to false if you want the style of this control be independent.
/// </summary>
[Category("MetroSet Framework")]
[Description("Gets or sets the whether this control reflect to parent form style. \n " +
"Set it to false if you want the style of this control be independent. ")]
public bool IsDerivedStyle
{
get { return _isDerivedStyle; }
set
{
_isDerivedStyle = value;
Refresh();
}
}
#endregion Properties
#region DrawControl
protected override void OnPaint(PaintEventArgs e)
{
Graphics g = e.Graphics;
g.TextRenderingHint = System.Drawing.Text.TextRenderingHint.ClearTypeGridFit;
using (var bg = new SolidBrush(BaseColor))
{
g.FillRectangle(bg, ClientRectangle);
}
}
#endregion
}
}
================================================
FILE: MetroSet UI/Child/MetroSetTabPageCollectionEditor.cs
================================================
/*
* MetroSet UI - MetroSet UI Framework
*
* The MIT License (MIT)
* Copyright (c) 2017 Narwin, https://github.com/N-a-r-w-i-n
*
* Permission is hereby granted, free of charge, to any person obtaining a copy of
* this software and associated documentation files (the "Software"), to deal in the
* Software without restriction, including without limitation the rights to use, copy,
* modify, merge, publish, distribute, sublicense, and/or sell copies of the Software,
* and to permit persons to whom the Software is furnished to do so, subject to the
* following conditions:
*
* The above copyright notice and this permission notice shall be included in
* all copies or substantial portions of the Software.
*
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED,
* INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A
* PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
* HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF
* CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE
* OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
*/
using System;
using System.ComponentModel.Design;
using System.Windows.Forms;
namespace MetroSet_UI.Child
{
/// <summary>
/// I provided this class to make the MetroSetTabControl add or remove MetroSetSetTabPage instead of normal TabPage provided by Microsoft.
/// </summary>
internal class MetroSetTabPageCollectionEditor : CollectionEditor
{
public MetroSetTabPageCollectionEditor(Type type)
: base(type)
{ }
protected override Type[] CreateNewItemTypes()
{
return new[] { typeof(TabPage), typeof(MetroSetSetTabPage) };
}
}
}
================================================
FILE: MetroSet UI/Child/MetroSetToolStripMenuItem.cs
================================================
/*
* MetroSet UI - MetroSet UI Framework
*
* The MIT License (MIT)
* Copyright (c) 2017 Narwin, https://github.com/N-a-r-w-i-n
*
* Permission is hereby granted, free of charge, to any person obtaining a copy of
* this software and associated documentation files (the "Software"), to deal in the
* Software without restriction, including without limitation the rights to use, copy,
* modify, merge, publish, distribute, sublicense, and/or sell copies of the Software,
* and to permit persons to whom the Software is furnished to do so, subject to the
* following conditions:
*
* The above copyright notice and this permission notice shall be included in
* all copies or substantial portions of the Software.
*
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED,
* INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A
* PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
* HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF
* CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE
* OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
*/
using System.Drawing;
using System.Windows.Forms;
using MetroSet_UI.Controls;
namespace MetroSet_UI.Child
{
public sealed class MetroSetToolStripMenuItem : ToolStripMenuItem
{
#region Constructors
public MetroSetToolStripMenuItem()
{
AutoSize = false;
Size = new Size(160, 30);
}
#endregion Constructors
#region Adding DropDowns
protected override ToolStripDropDown CreateDefaultDropDown()
{
if (DesignMode)
{ return base.CreateDefaultDropDown(); }
var dp = new MetroSetContextMenuStrip();
dp.Items.AddRange(base.CreateDefaultDropDown().Items);
return dp;
}
#endregion Adding DropDowns
}
}
================================================
FILE: MetroSet UI/Components/MetroSetSetToolTip.cs
================================================
/*
* MetroSet UI - MetroSet UI Framework
*
* The MIT License (MIT)
* Copyright (c) 2017 Narwin, https://github.com/N-a-r-w-i-n
*
* Permission is hereby granted, free of charge, to any person obtaining a copy of
* this software and associated documentation files (the "Software"), to deal in the
* Software without restriction, including without limitation the rights to use, copy,
* modify, merge, publish, distribute, sublicense, and/or sell copies of the Software,
* and to permit persons to whom the Software is furnished to do so, subject to the
* following conditions:
*
* The above copyright notice and this permission notice shall be included in
* all copies or substantial portions of the Software.
*
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED,
* INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A
* PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
* HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF
* CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE
* OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
*/
using System;
using System.ComponentModel;
using System.Drawing;
using System.Drawing.Text;
using System.Windows.Forms;
using MetroSet_UI.Design;
using MetroSet_UI.Enums;
using MetroSet_UI.Extensions;
using MetroSet_UI.Interfaces;
namespace MetroSet_UI.Components
{
[ToolboxItem(true)]
[ToolboxBitmap(typeof(MetroSetSetToolTip), "Bitmaps.ToolTip.bmp")]
[Designer(typeof(MetroSetToolTipDesigner))]
[DefaultEvent("Popup")]
public class MetroSetSetToolTip : ToolTip, IMetroSetControl
{
#region Interfaces
/// <summary>
/// Gets or sets the style associated with the control.
/// </summary>
[Category("MetroSet Framework"), Description("Gets or sets the style associated with the control.")]
public Style Style
{
get => StyleManager?.Style ?? _style;
set
{
_style = value;
switch (value)
{
case Style.Light:
ApplyTheme();
break;
case Style.Dark:
ApplyTheme(Style.Dark);
break;
case Style.Custom:
ApplyTheme(Style.Custom);
break;
default:
ApplyTheme();
break;
}
}
}
/// <summary>
/// Gets or sets the Style Manager associated with the control.
/// </summary>
[Category("MetroSet Framework"), Description("Gets or sets the Style Manager associated with the control.")]
public StyleManager StyleManager
{
get => _styleManager;
set => _styleManager = value;
}
/// <summary>
/// Gets or sets the The Author name associated with the theme.
/// </summary>
[Category("MetroSet Framework"), Description("Gets or sets the The Author name associated with the theme.")]
public string ThemeAuthor { get; set; }
/// <summary>
/// Gets or sets the The Theme name associated with the theme.
/// </summary>
[Category("MetroSet Framework"), Description("Gets or sets the The Theme name associated with the theme.")]
public string ThemeName { get; set; }
#endregion Interfaces
#region Global Vars
private readonly Methods _mth;
private readonly Utilites _utl;
#endregion Global Vars
#region Internal Vars
private StyleManager _styleManager;
private Style _style;
#endregion Internal Vars
#region Constructors
public MetroSetSetToolTip()
{
OwnerDraw = true;
Draw += OnDraw;
Popup += ToolTip_Popup;
_mth = new Methods();
_utl = new Utilites();
ApplyTheme();
}
#endregion Constructors
#region Draw Control
private void OnDraw(object sender, DrawToolTipEventArgs e)
{
var g = e.Graphics;
g.TextRenderingHint = TextRenderingHint.ClearTypeGridFit;
var rect = new Rectangle(e.Bounds.X, e.Bounds.Y, e.Bounds.Width - 1, e.Bounds.Height - 1);
using (var bg = new SolidBrush(BackColor))
using (var stroke = new Pen(BorderColor))
using (var tb = new SolidBrush(ForeColor))
{
g.FillRectangle(bg, rect);
g.DrawString(e.ToolTipText, MetroSetFonts.Light(11), tb, rect, _mth.SetPosition());
g.DrawRectangle(stroke, rect);
}
}
#endregion
#region ApplyTheme
/// <summary>
/// Gets or sets the style provided by the user.
/// </summary>
/// <param name="style">The Style.</param>
private void ApplyTheme(Style style = Style.Light)
{
if (!IsDerivedStyle)
return;
switch (style)
{
case Style.Light:
ForeColor = Color.FromArgb(170, 170, 170);
BackColor = Color.White;
BorderColor = Color.FromArgb(204, 204, 204);
ThemeAuthor = "Narwin";
ThemeName = "MetroLite";
break;
case Style.Dark:
ForeColor = Color.FromArgb(204, 204, 204);
BackColor = Color.FromArgb(32, 32, 32);
BorderColor = Color.FromArgb(64, 64, 64);
ThemeAuthor = "Narwin";
ThemeName = "MetroDark";
break;
case Style.Custom:
if (StyleManager != null)
foreach (var varkey in StyleManager.ToolTipDictionary)
{
switch (varkey.Key)
{
case "BackColor":
BackColor = _utl.HexColor((string)varkey.Value);
break;
case "BorderColor":
BorderColor = _utl.HexColor((string)varkey.Value);
break;
case "ForeColor":
ForeColor = _utl.HexColor((string)varkey.Value);
break;
default:
return;
}
}
break;
default:
throw new ArgumentOutOfRangeException(nameof(style), style, null);
}
}
#endregion ApplyTheme
#region Properties
/// <summary>
/// Gets or sets a value indicating whether a ToolTip window is displayed, even when its parent control is not active.
/// </summary>
[Browsable(false)]
public new bool ShowAlways { get; } = false;
/// <summary>
/// Gets or sets a value indicating whether the ToolTip is drawn by the operating system or by code that you provide.
/// </summary>
[Browsable(false)]
public new bool OwnerDraw
{
get => base.OwnerDraw;
set
{
base.OwnerDraw = true;
}
}
/// <summary>
/// Gets or sets a value indicating whether the ToolTip should use a balloon window.
/// </summary>
[Browsable(false)]
public new bool IsBalloon { get; } = false;
/// <summary>
/// Gets or sets the background color for the ToolTip.
/// </summary>
[Browsable(false)]
public new Color BackColor { get; set; }
/// <summary>
/// Gets or sets the foreground color for the ToolTip.
/// </summary>
[Category("MetroSet Framework"), Description("Gets or sets the foreground color for the ToolTip.")]
public new Color ForeColor { get; set; }
/// <summary>
/// Gets or sets a title for the ToolTip window.
/// </summary>
[Category("MetroSet Framework"), Description("Gets or sets a title for the ToolTip window.")]
public new string ToolTipTitle { get; } = string.Empty;
/// <summary>
/// Defines a set of standardized icons that can be associated with a ToolTip.
/// </summary>
[Browsable(false)]
public new ToolTipIcon ToolTipIcon { get; } = ToolTipIcon.None;
/// <summary>
/// Gets or sets the border color for the ToolTip.
/// </summary>
[Category("MetroSet Framework"), Description("Gets or sets the border color for the ToolTip.")]
public Color BorderColor { get; set; }
private bool _isDerivedStyle = true;
/// <summary>
/// Gets or sets the whether this control reflect to parent form style.
/// Set it to false if you want the style of this control be independent.
/// </summary>
[Category("MetroSet Framework")]
[Description("Gets or sets the whether this control reflect to parent(s) style. \n " +
"Set it to false if you want the style of this control be independent. ")]
public bool IsDerivedStyle
{
get { return _isDerivedStyle; }
set
{
_isDerivedStyle = value;
}
}
#endregion
#region Methods
/// <summary>
/// The ToolTip text to display when the pointer is on the control.
/// </summary>
/// <param name = "control" > The Control to show the tooltip.</param>
/// <param name = "caption" > The Text that appears in tooltip.</param>
public new void SetToolTip(Control control, string caption)
{
//This Method is useful at runtime.
base.SetToolTip(control, caption);
foreach (Control c in control.Controls)
{
SetToolTip(c, caption);
}
}
#endregion
#region Events
/// <summary>
/// Here we handle popup event and we set the style of controls for tooltip.
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void ToolTip_Popup(object sender, PopupEventArgs e)
{
var control = e.AssociatedControl;
if (control is IMetroSetControl iControl)
{
Style = iControl.Style;
ThemeAuthor = iControl.ThemeAuthor;
ThemeName = iControl.ThemeName;
StyleManager = iControl.StyleManager;
}
else if (control is IMetroForm)
{
Style = ((IMetroForm)control).Style;
ThemeAuthor = ((IMetroForm)control).ThemeAuthor;
ThemeName = ((IMetroForm)control).ThemeName;
StyleManager = ((IMetroForm)control).StyleManager;
}
e.ToolTipSize = new Size(e.ToolTipSize.Width + 30, e.ToolTipSize.Height + 6);
}
#endregion
}
}
================================================
FILE: MetroSet UI/Components/StyleManager.cs
================================================
/*
* MetroSet UI - MetroSet UI Framework
*
* The MIT License (MIT)
* Copyright (c) 2017 Narwin, https://github.com/N-a-r-w-i-n
*
* Permission is hereby granted, free of charge, to any person obtaining a copy of
* this software and associated documentation files (the "Software"), to deal in the
* Software without restriction, including without limitation the rights to use, copy,
* modify, merge, publish, distribute, sublicense, and/or sell copies of the Software,
* and to permit persons to whom the Software is furnished to do so, subject to the
* following conditions:
*
* The above copyright notice and this permission notice shall be included in
* all copies or substantial portions of the Software.
*
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED,
* INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A
* PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
* HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF
* CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE
* OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
*/
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Drawing;
using System.Drawing.Design;
using System.IO;
using System.Windows.Forms;
using System.Windows.Forms.Design;
using System.Xml;
using MetroSet_UI.Design;
using MetroSet_UI.Enums;
using MetroSet_UI.Interfaces;
namespace MetroSet_UI.Components
{
[DefaultProperty("Style")]
[Designer(typeof(StyleManagerDesigner))]
[ToolboxItem(true)]
[ToolboxBitmap(typeof(StyleManager), "Style.bmp")]
public class StyleManager : Component
{
private readonly Form _ownerForm;
#region Constructor
public StyleManager()
{
_style = Style.Light;
if (_customTheme == null)
{
var themeFile = Properties.Settings.Default.ThemeFile;
_customTheme = File.Exists(themeFile) ? themeFile : ThemeFilePath(themeFile);
}
InitializeDictionaries();
}
#endregion
#region Methods
/// <summary>
/// The Method to update the form with the style manager style and it's controls.
/// </summary>
private void UpdateForm()
{
switch (MetroForm)
{
case IMetroForm form:
form.Style = Style;
form.ThemeAuthor = ThemeAuthor;
form.ThemeName = ThemeName;
form.StyleManager = this;
form.StyleManager.MetroForm = _ownerForm;
break;
}
if (MetroForm.Controls.Count > 0)
UpdateControls(MetroForm.Controls);
MetroForm.Invalidate();
}
/// <summary>
/// The Method to update controls with the style manager style.
/// </summary>
private void UpdateControls(Control.ControlCollection controls)
{
foreach (Control ctrl in controls)
{
var control = ctrl as IMetroSetControl;
if (control != null && CustomTheme != null)
{
control.Style = Style;
control.ThemeAuthor = ThemeAuthor;
control.ThemeName = ThemeName;
control.StyleManager = this;
}
if (control is TabControl tabControl)
{
foreach (TabPage c in tabControl.TabPages)
{
if (c is IMetroSetControl)
{
control.Style = Style;
control.StyleManager = this;
control.ThemeAuthor = ThemeAuthor;
control.ThemeName = ThemeName;
}
UpdateControls(c.Controls);
}
}
foreach (Control child in ctrl.Controls)
{
if (!(child is IMetroSetControl))
continue;
((IMetroSetControl)child).Style = Style;
((IMetroSetControl)child).StyleManager = this;
((IMetroSetControl)child).ThemeAuthor = ThemeAuthor;
((IMetroSetControl)child).ThemeName = ThemeName;
}
}
}
/// <summary>
/// The Method to apply the style manager style to the added controls.
/// </summary>
private void ControlAdded(object sender, ControlEventArgs e)
{
if (e.Control is IMetroSetControl control)
{
if (!control.IsDerivedStyle)
return;
control.Style = Style;
control.ThemeAuthor = ThemeAuthor;
control.ThemeName = ThemeName;
control.StyleManager = this;
}
else
{
UpdateForm();
}
}
#endregion
#region Internal Vars
private Style _style;
private Form _metroForm;
private string _customTheme;
#endregion Internal Vars
#region Properties
/// <summary>
/// Gets or sets the The Author name associated with the theme.
/// </summary>
[Category("MetroSet Framework"), Description("Gets or sets the The Author name associated with the theme.")]
public string ThemeAuthor { get; set; }
/// <summary>
/// Gets or sets the The Theme name associated with the theme.
/// </summary>
[Category("MetroSet Framework"), Description("Gets or sets the The Theme name associated with the theme.")]
public string ThemeName { get; set; }
/// <summary>
/// Gets or sets the form (MetroForm) to Apply themes for.
/// </summary>
[Category("MetroSet Framework"), Description("Gets or sets the form (MetroForm) to Apply themes for.")]
public Form MetroForm
{
get => _metroForm;
set
{
if (_metroForm != null)
return;
_metroForm = value;
_metroForm.ControlAdded += ControlAdded;
UpdateForm();
}
}
/// <summary>
/// Gets or sets the style for the button.
/// </summary>
[Category("MetroSet Framework"), Description("Gets or sets the style.")]
public Style Style
{
get => _style;
set
{
_style = value;
switch (value)
{
case Style.Light:
ThemeAuthor = "Narwin";
ThemeName = "MetroLight";
break;
case Style.Dark:
ThemeAuthor = "Narwin";
ThemeName = "MetroDark";
break;
}
UpdateForm();
}
}
/// <summary>
/// Gets or sets the custom theme file controls.
/// </summary>
[Editor(typeof(FileNamesEditor), typeof(UITypeEditor)), Category("MetroSet Framework"), Description("Gets or sets the custom theme file.")]
public string CustomTheme
{
get => _customTheme;
set
{
if (Style == Style.Custom)
{
Properties.Settings.Default.ThemeFile = value;
Properties.Settings.Default.Save();
ControlProperties(value);
}
_customTheme = value;
}
}
#endregion Properties
#region Open Theme
/// <summary>
/// The Method to execute the FileNamesEditor and open the dialog of importing the custom theme.
/// </summary>
public void OpenTheme()
{
Style = Style.Custom;
using (var ofd = new OpenFileDialog { Filter = @"Xml File (*.xml)|*.xml" })
{
if (ofd.ShowDialog() != DialogResult.OK)
{
return;
}
CustomTheme = ofd.FileName;
}
}
/// <summary>
/// The Method for setting the custom theme up.
/// </summary>
/// <param name="path">The Custom theme file path.</param>
public void SetTheme(string path)
{
Style = Style.Custom;
CustomTheme = path;
}
/// <summary>
/// The Method to write the them file from resources to templates folder.
/// </summary>
/// <param name="str">the theme content</param>
/// <returns>The Sorted theme path in templates folder.</returns>
private string ThemeFilePath(string str)
{
var path = $"{Environment.GetFolderPath(Environment.SpecialFolder.Templates) + @"\ThemeFile.xml"}";
File.WriteAllText(path, str);
return path;
}
#endregion Open Theme
#region Dictionaries
#region Declartions
/// <summary>
/// The Button properties from custom theme will be stored into this dictionary.
/// </summary>
public Dictionary<string, object> ButtonDictionary;
/// <summary>
/// The DefaultButton properties from custom theme will be stored into this dictionary.
/// </summary>
public Dictionary<string, object> DefaultButtonDictionary;
/// <summary>
/// The Label properties from custom theme will be stored into this dictionary.
/// </summary>
public Dictionary<string, object> LabelDictionary;
/// <summary>
/// The LinkLabel properties from custom theme will be stored into this dictionary.
/// </summary>
public Dictionary<string, object> LinkLabelDictionary;
/// <summary>
/// The TextBox properties from custom theme will be stored into this dictionary.
/// </summary>
public Dictionary<string, object> TextBoxDictionary;
/// <summary>
/// The RichTextBox properties from custom theme will be stored into this dictionary.
/// </summary>
public Dictionary<string, object> RichTextBoxDictionary;
/// <summary>
/// The ComboBox properties from custom theme will be stored into this dictionary.
/// </summary>
public Dictionary<string, object> ComboBoxDictionary;
/// <summary>
/// The Form properties from custom theme will be stored into this dictionary.
/// </summary>
public Dictionary<string, object> FormDictionary;
/// <summary>
/// The Badge properties from custom theme will be stored into this dictionary.
/// </summary>
public Dictionary<string, object> BadgeDictionary;
/// <summary>
/// The Divider properties from custom theme will be stored into this dictionary.
/// </summary>
public Dictionary<string, object> DividerDictionary;
/// <summary>
/// The CheckBox properties from custom theme will be stored into this dictionary.
/// </summary>
public Dictionary<string, object> CheckBoxDictionary;
/// <summary>
/// The RadioButton properties from custom theme will be stored into this dictionary.
/// </summary>
public Dictionary<string, object> RadioButtonDictionary;
/// <summary>
/// The Switch properties from custom theme will be stored into this dictionary.
/// </summary>
public Dictionary<string, object> SwitchBoxDictionary;
/// <summary>
/// The ToolTip properties from custom theme will be stored into this dictionary.
/// </summary>
public Dictionary<string, object> ToolTipDictionary;
/// <summary>
/// The ToolTip properties from custom theme will be stored into this dictionary.
/// </summary>
public Dictionary<string, object> NumericDictionary;
/// <summary>
/// The ToolTip properties from custom theme will be stored into this dictionary.
/// </summary>
public Dictionary<string, object> EllipseDictionary;
/// <summary>
/// The Tile properties from custom theme will be stored into this dictionary.
/// </summary>
public Dictionary<string, object> TileDictionary;
/// <summary>
/// The Tile properties from custom theme will be stored into this dictionary.
/// </summary>
public Dictionary<string, object> ProgressDictionary;
/// <summary>
/// The ControlBox properties from custom theme will be stored into this dictionary.
/// </summary>
public Dictionary<string, object> ControlBoxDictionary;
/// <summary>
/// The TabControl properties from custom theme will be stored into this dictionary.
/// </summary>
public Dictionary<string, object> TabControlDictionary;
/// <summary>
/// The ScrollBar properties from custom theme will be stored into this dictionary.
/// </summary>
public Dictionary<string, object> ScrollBarDictionary;
/// <summary>
/// The Panel properties from custom theme will be stored into this dictionary.
/// </summary>
public Dictionary<string, object> PanelDictionary;
/// <summary>
/// The TrackBar properties from custom theme will be stored into this dictionary.
/// </summary>
public Dictionary<string, object> TrackBarDictionary;
/// <summary>
/// The ContextMenuStrip properties from custom theme will be stored into this dictionary.
/// </summary>
public Dictionary<string, object> ContextMenuDictionary;
/// <summary>
/// The ListBox properties from custom theme will be stored into this dictionary.
/// </summary>
public Dictionary<string, object> ListBoxDictionary;
/// <summary>
/// The ListBox properties from custom theme will be stored into this dictionary.
/// </summary>
public Dictionary<string, object> DataGridDictionary;
#endregion
#region Methods
private void Clear()
{
ButtonDictionary.Clear();
DefaultButtonDictionary.Clear();
FormDictionary.Clear();
LabelDictionary.Clear();
TextBoxDictionary.Clear();
LabelDictionary.Clear();
LinkLabelDictionary.Clear();
BadgeDictionary.Clear();
DividerDictionary.Clear();
CheckBoxDictionary.Clear();
RadioButtonDictionary.Clear();
SwitchBoxDictionary.Clear();
ToolTipDictionary.Clear();
RichTextBoxDictionary.Clear();
ComboBoxDictionary.Clear();
NumericDictionary.Clear();
EllipseDictionary.Clear();
TileDictionary.Clear();
ProgressDictionary.Clear();
ControlBoxDictionary.Clear();
TabControlDictionary.Clear();
ScrollBarDictionary.Clear();
PanelDictionary.Clear();
TrackBarDictionary.Clear();
ContextMenuDictionary.Clear();
ListBoxDictionary.Clear();
DataGridDictionary.Clear();
}
#endregion
#region Evaluate
private void InitializeDictionaries()
{
ButtonDictionary = new Dictionary<string, object>();
DefaultButtonDictionary = new Dictionary<string, object>();
LabelDictionary = new Dictionary<string, object>();
LinkLabelDictionary = new Dictionary<string, object>();
TextBoxDictionary = new Dictionary<string, object>();
RichTextBoxDictionary = new Dictionary<string, object>();
FormDictionary = new Dictionary<string, object>();
BadgeDictionary = new Dictionary<string, object>();
DividerDictionary = new Dictionary<string, object>();
CheckBoxDictionary = new Dictionary<string, object>();
RadioButtonDictionary = new Dictionary<string, object>();
SwitchBoxDictionary = new Dictionary<string, object>();
ToolTipDictionary = new Dictionary<string, object>();
ComboBoxDictionary = new Dictionary<string, object>();
NumericDictionary = new Dictionary<string, object>();
EllipseDictionary = new Dictionary<string, object>();
TileDictionary = new Dictionary<string, object>();
ProgressDictionary = new Dictionary<string, object>();
ControlBoxDictionary = new Dictionary<string, object>();
TabControlDictionary = new Dictionary<string, object>();
ScrollBarDictionary = new Dictionary<string, object>();
PanelDictionary = new Dictionary<string, object>();
TrackBarDictionary = new Dictionary<string, object>();
ContextMenuDictionary = new Dictionary<string, object>();
ListBoxDictionary = new Dictionary<string, object>();
DataGridDictionary = new Dictionary<string, object>();
}
#endregion
#endregion
#region Reader
/// <summary>
/// Reads the theme file and put elements properties to dictionaries.
/// </summary>
/// <param name="path">The File path.</param>
private void ControlProperties(string path)
{
// We clear every dictionary for avoid the "the key is already exist in dictionary" exception.
Clear();
// Here we refill the dictionaries with information we get in custom theme.
FormDictionary = GetValues(path, "Form");
ButtonDictionary = GetValues(path, "Button");
DefaultButtonDictionary = GetValues(path, "DefaultButton");
LabelDictionary = GetValues(path, "Label");
LinkLabelDictionary = GetValues(path, "LinkLabel");
BadgeDictionary = GetValues(path, "Badge");
DividerDictionary = GetValues(path, "Divider");
CheckBoxDictionary = GetValues(path, "CheckBox");
RadioButtonDictionary = GetValues(path, "RadioButton");
SwitchBoxDictionary = GetValues(path, "SwitchBox");
ToolTipDictionary = GetValues(path, "ToolTip");
TextBoxDictionary = GetValues(path, "TextBox");
RichTextBoxDictionary = GetValues(path, "RichTextBox");
ComboBoxDictionary = GetValues(path, "ComboBox");
NumericDictionary = GetValues(path, "Numeric");
EllipseDictionary = GetValues(path, "Ellipse");
TileDictionary = GetValues(path, "Tile");
ProgressDictionary = GetValues(path, "Progress");
ControlBoxDictionary = GetValues(path, "ControlBox");
TabControlDictionary = GetValues(path, "TabControl");
ScrollBarDictionary = GetValues(path, "ScrollBar");
PanelDictionary = GetValues(path, "Panel");
TrackBarDictionary = GetValues(path, "TrackBar");
ContextMenuDictionary = GetValues(path, "ContextMenu");
ListBoxDictionary = GetValues(path, "ListBox");
DataGridDictionary = GetValues(path, "DataGrid");
ThemeDetailsReader(path);
UpdateForm();
}
/// <summary>
/// The Method get the custom theme name and author.
/// </summary>
/// <param name="path">The Path of the custom theme file.</param>
private void ThemeDetailsReader(string path)
{
foreach (var item in GetValues(path, "Theme"))
{
switch (item.Key)
{
case "Name":
ThemeName = item.Value.ToString();
break;
case "Author":
ThemeAuthor = item.Value.ToString();
break;
}
}
}
/// <summary>
/// The Method to load the custom xml theme file and add a childnodes from a specific node into a dectionary.
/// </summary>
/// <param name="path">The Path of custom theme file (XML file).</param>
/// <param name="nodename">The Node name to get the childnodes from.</param>
/// <returns>The Dictionary of childnodes names and values of a specific node.</returns>
private Dictionary<string, object> GetValues(string path, string nodename)
{
try
{
var dict = new Dictionary<string, object>();
var doc = new XmlDocument();
if (File.Exists(path))
doc.Load(path);
if (doc.DocumentElement == null)
{ return null; }
var xmlNode = doc.SelectSingleNode($"/MetroSetTheme/{nodename}");
if (xmlNode == null)
return dict;
foreach (XmlNode node in xmlNode.ChildNodes)
dict.Add(node.Name, node.InnerText);
return dict;
}
catch
{
return null;
}
}
#endregion Reader
#region UITypeEditor
/// <summary>
/// Dialog Type For Opening the theme.
/// </summary>
public class FileNamesEditor : UITypeEditor
{
private OpenFileDialog _ofd;
public override UITypeEditorEditStyle GetEditStyle(ITypeDescriptorContext context)
{
return UITypeEditorEditStyle.Modal;
}
public override object EditValue(ITypeDescriptorContext context, IServiceProvider provider, object value)
{
if (context == null || provider == null)
return base.EditValue(context, provider, value);
var editorService =
(IWindowsFormsEditorService)
provider.GetService(typeof(IWindowsFormsEditorService));
if (editorService == null)
return base.EditValue(context, provider, value);
_ofd = new OpenFileDialog
{
Filter = @"Xml File (*.xml)|*.xml",
};
return _ofd.ShowDialog() == DialogResult.OK ? _ofd.FileName : base.EditValue(context, provider, value);
}
}
#endregion
}
}
================================================
FILE: MetroSet UI/Controls/MetroSetBadge.cs
================================================
/*
* MetroSet UI - MetroSet UI Framework
*
* The MIT License (MIT)
* Copyright (c) 2017 Narwin, https://github.com/N-a-r-w-i-n
*
* Permission is hereby granted, free of charge, to any person obtaining a copy of
* this software and associated documentation files (the "Software"), to deal in the
* Software without restriction, including without limitation the rights to use, copy,
* modify, merge, publish, distribute, sublicense, and/or sell copies of the Software,
* and to permit persons to whom the Software is furnished to do so, subject to the
* following conditions:
*
* The above copyright notice and this permission notice shall be included in
* all copies or substantial portions of the Software.
*
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED,
* INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A
* PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
* HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF
* CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE
* OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
*/
using System;
using System.ComponentModel;
using System.Drawing;
using System.Drawing.Drawing2D;
using System.Drawing.Text;
using System.Runtime.InteropServices;
using System.Windows.Forms;
using MetroSet_UI.Components;
using MetroSet_UI.Design;
using MetroSet_UI.Enums;
using MetroSet_UI.Extensions;
using MetroSet_UI.Interfaces;
namespace MetroSet_UI.Controls
{
[ToolboxItem(true)]
[ToolboxBitmap(typeof(MetroSetBadge), "Bitmaps.Button.bmp")]
[Designer(typeof(MetroSetBadgeDesigner))]
[DefaultEvent("Click")]
[DefaultProperty("Text")]
[ComVisible(true)]
public class MetroSetBadge : Control, IMetroSetControl
{
#region Interfaces
/// <summary>
/// Gets or sets the style associated with the control.
/// </summary>
[Category("MetroSet Framework"), Description("Gets or sets the style associated with the control.")]
public Style Style
{
get => StyleManager?.Style ?? _style;
set
{
_style = value;
switch (value)
{
case Style.Light:
ApplyTheme();
break;
case Style.Dark:
ApplyTheme(Style.Dark);
break;
case Style.Custom:
ApplyTheme(Style.Custom);
break;
default:
ApplyTheme();
break;
}
Invalidate();
}
}
/// <summary>
/// Gets or sets the The Author name associated with the theme.
/// </summary>
[Category("MetroSet Framework"), Description("Gets or sets the The Author name associated with the theme.")]
public string ThemeAuthor { get; set; }
/// <summary>
/// Gets or sets the The Theme name associated with the theme.
/// </summary>
[Category("MetroSet Framework"), Description("Gets or sets the The Theme name associated with the theme.")]
public string ThemeName { get; set; }
/// <summary>
/// Gets or sets the Style Manager associated with the control.
/// </summary>
[Category("MetroSet Framework"), Description("Gets or sets the Style Manager associated with the control.")]
public StyleManager StyleManager
{
get => _styleManager;
set
{
_styleManager = value;
Invalidate();
}
}
#endregion Interfaces
#region Global Vars
private readonly Methods _mth;
private readonly Utilites _utl;
#endregion Global Vars
#region Internal Vars
private MouseMode _state;
private Style _style;
private StyleManager _styleManager;
private BadgeAlign _badgeAlignment;
private string _badgeText;
private Color _normalColor;
private Color _normalBorderColor;
private Color _normalTextColor;
private Color _hoverColor;
private Color _hoverBorderColor;
private Color _hoverTextColor;
private Color _pressColor;
private Color _pressBorderColor;
private Color _pressTextColor;
private Color _disabledBackColor;
private Color _disabledForeColor;
private Color _disabledBorderColor;
private Color _normalBadgeColor;
private Color _normalBadgeTextColor;
private Color _hoverBadgeColor;
private Color _hoverBadgeTextColor;
private Color _pressBadgeColor;
private Color _pressBadgeTextColor;
#endregion Internal Vars
#region Constructors
public MetroSetBadge()
{
SetStyle(
ControlStyles.AllPaintingInWmPaint |
ControlStyles.ResizeRedraw | ControlStyles.UserPaint |
ControlStyles.OptimizedDoubleBuffer |
ControlStyles.SupportsTransparentBackColor, true);
UpdateStyles();
base.Font = MetroSetFonts.Light(10);
base.BackColor = Color.Transparent;
_badgeAlignment = BadgeAlign.TopRight;
_badgeText = "3";
_utl = new Utilites();
_mth = new Methods();
ApplyTheme();
}
#endregion Constructors
#region Properties
/// <summary>
/// Gets or sets the badge alignment associated with the control.
/// </summary>
[Category("MetroSet Framework"), Description("Gets or sets the badge alignment associated with the control.")]
public BadgeAlign BadgeAlignment
{
get { return _badgeAlignment; }
set
{
_badgeAlignment = value;
Refresh();
}
}
/// <summary>
/// Gets or sets the badge text associated with the control.
/// </summary>
[Category("MetroSet Framework"), Description("Gets or sets the badge text associated with the control.")]
public string BadgeText
{
get { return _badgeText; }
set
{
_badgeText = value;
Refresh();
}
}
/// <summary>
/// Handling Control Enable state to detect the disability state.
/// </summary>
[Category("MetroSet Framework")]
public new bool Enabled
{
get => base.Enabled;
set
{
base.Enabled = value;
if (value == false)
{
_state = MouseMode.Disabled;
}
Invalidate();
}
}
/// <summary>
/// Gets or sets the control background color in normal mouse sate.
/// </summary>
[Category("MetroSet Framework")]
[Description("Gets or sets the control background color in normal mouse sate.")]
public Color NormalColor
{
get { return _normalColor; }
set
{
_normalColor = value;
Refresh();
}
}
/// <summary>
/// Gets or sets the control border color in normal mouse sate.
/// </summary>
[Category("MetroSet Framework")]
[Description("Gets or sets the control border color in normal mouse sate.")]
public Color NormalBorderColor
{
get { return _normalBorderColor; }
set
{
_normalBorderColor = value;
Refresh();
}
}
/// <summary>
/// Gets or sets the control Text color in normal mouse sate.
/// </summary>
[Category("MetroSet Framework")]
[Description("Gets or sets the control Text color in normal mouse sate.")]
public Color NormalTextColor
{
get { return _normalTextColor; }
set
{
_normalTextColor = value;
Refresh();
}
}
/// <summary>
/// Gets or sets the control background color in hover mouse sate.
/// </summary>
[Category("MetroSet Framework")]
[Description("Gets or sets the control background color in hover mouse sate.")]
public Color HoverColor
{
get { return _hoverColor; }
set
{
_hoverColor = value;
Refresh();
}
}
/// <summary>
/// Gets or sets the control border color in hover mouse sate.
/// </summary>
[Category("MetroSet Framework")]
[Description("Gets or sets the control border color in hover mouse sate.")]
public Color HoverBorderColor
{
get { return _hoverBorderColor; }
set
{
_hoverBorderColor = value;
Refresh();
}
}
/// <summary>
/// Gets or sets the control Text color in hover mouse sate.
/// </summary>
[Category("MetroSet Framework")]
[Description("Gets or sets the control Text color in hover mouse sate.")]
public Color HoverTextColor
{
get { return _hoverTextColor; }
set
{
_hoverTextColor = value;
Refresh();
}
}
/// <summary>
/// Gets or sets the control background color in pushed mouse sate.
/// </summary>
[Category("MetroSet Framework")]
[Description("Gets or sets the control background color in pushed mouse sate.")]
public Color PressColor
{
get { return _pressColor; }
set
{
_pressColor = value;
Refresh();
}
}
/// <summary>
/// Gets or sets the control border color in pushed mouse sate.
/// </summary>
[Category("MetroSet Framework")]
[Description("Gets or sets the control border color in pushed mouse sate.")]
public Color PressBorderColor
{
get { return _pressBorderColor; }
set
{
_pressBorderColor = value;
Refresh();
}
}
/// <summary>
/// Gets or sets the control Text color in pushed mouse sate.
/// </summary>
[Category("MetroSet Framework")]
[Description("Gets or sets the control Text color in pushed mouse sate.")]
public Color PressTextColor
{
get { return _pressTextColor; }
set
{
_pressTextColor = value;
Refresh();
}
}
/// <summary>
/// Gets or sets backcolor used by the control while disabled.
/// </summary>
[Category("MetroSet Framework")]
[Description("Gets or sets backcolor used by the control while disabled.")]
public Color DisabledBackColor
{
get { return _disabledBackColor; }
set
{
_disabledBackColor = value;
Refresh();
}
}
/// <summary>
/// Gets or sets the forecolor of the control whenever while disabled.
/// </summary>
[Category("MetroSet Framework")]
[Description("Gets or sets the forecolor of the control whenever while disabled.")]
public Color DisabledForeColor
{
get { return _disabledForeColor; }
set
{
_disabledForeColor = value;
Refresh();
}
}
/// <summary>
/// Gets or sets the border color of the control while disabled.
/// </summary>
[Category("MetroSet Framework")]
[Description("Gets or sets the border color of the control while disabled.")]
public Color DisabledBorderColor
{
get { return _disabledBorderColor; }
set
{
_disabledBorderColor = value;
Refresh();
}
}
/// <summary>
/// Gets or sets the Badge background color in normal mouse sate.
/// </summary>
[Category("MetroSet Framework")]
[Description("Gets or sets the Badge background color in normal mouse sate.")]
public Color NormalBadgeColor
{
get { return _normalBadgeColor; }
set
{
_normalBadgeColor = value;
Refresh();
}
}
/// <summary>
/// Gets or sets the Badge Text color in normal mouse sate.
/// </summary>
[Category("MetroSet Framework")]
[Description("Gets or sets the Badge Text color in normal mouse sate.")]
public Color NormalBadgeTextColor
{
get { return _normalBadgeTextColor; }
set
{
_normalBadgeTextColor = value;
Refresh();
}
}
/// <summary>
/// Gets or sets the Badge background color in hover mouse sate.
/// </summary>
[Category("MetroSet Framework")]
[Description("Gets or sets the Badge background color in hover mouse sate.")]
public Color HoverBadgeColor
{
get { return _hoverBadgeColor; }
set
{
_hoverBadgeColor = value;
Refresh();
}
}
/// <summary>
/// Gets or sets the Badge Text color in hover mouse sate.
/// </summary>
[Category("MetroSet Framework")]
[Description("Gets or sets the Badge Text color in hover mouse sate.")]
public Color HoverBadgeTextColor
{
get { return _hoverBadgeTextColor; }
set
{
_hoverBadgeTextColor = value;
Refresh();
}
}
/// <summary>
/// Gets or sets the Badge background color in pushed mouse sate.
/// </summary>
[Category("MetroSet Framework")]
[Description("Gets or sets the Badge background color in pushed mouse sate.")]
public Color PressBadgeColor
{
get { return _pressBadgeColor; }
set
{
_pressBadgeColor = value;
Refresh();
}
}
/// <summary>
/// Gets or sets the Badge Text color in pushed mouse sate.
/// </summary>
[Category("MetroSet Framework")]
[Description("Gets or sets the Badge Text color in pushed mouse sate.")]
public Color PressBadgeTextColor
{
get { return _pressBadgeTextColor; }
set
{
_pressBadgeTextColor = value;
Refresh();
}
}
private bool _isDerivedStyle = true;
/// <summary>
/// Gets or sets the whether this control reflect to parent form style.
/// Set it to false if you want the style of this control be independent.
/// </summary>
[Category("MetroSet Framework")]
[Description("Gets or sets the whether this control reflect to parent(s) style. \n " +
"Set it to false if you want the style of this control be independent. ")]
public bool IsDerivedStyle
{
get { return _isDerivedStyle; }
set
{
_isDerivedStyle = value;
Refresh();
}
}
#endregion Properties
#region Draw Control
protected override void OnPaint(PaintEventArgs e)
{
var g = e.Graphics;
Rectangle r;
Rectangle badge;
g.TextRenderingHint = TextRenderingHint.ClearTypeGridFit;
switch (BadgeAlignment)
{
case BadgeAlign.Topleft:
r = new Rectangle(18, 18, Width - 21, Height - 21);
badge = new Rectangle(5, 5, 29, 29);
break;
case BadgeAlign.TopRight:
r = new Rectangle(0, 18, Width - 18, Height - 21);
badge = new Rectangle(Width - 35, 1, 29, 29);
break;
case BadgeAlign.BottmLeft:
r = new Rectangle(18, 0, Width - 19, Height - 18);
badge = new Rectangle(1, Height - 35, 29, 29);
break;
case BadgeAlign.BottomRight:
r = new Rectangle(0, 0, Width - 19, Height - 18);
badge = new Rectangle(Width - 35, Height - 35, 29, 29);
break;
default:
throw new ArgumentOutOfRangeException();
}
switch (_state)
{
case MouseMode.Normal:
using (var bg = new SolidBrush(NormalColor))
using (var p = new Pen(NormalBorderColor))
using (var tb = new SolidBrush(NormalTextColor))
using (var bdgBrush = new SolidBrush(NormalBadgeColor))
using (var bdgtxtBrush = new SolidBrush(NormalBadgeTextColor))
{
g.FillRectangle(bg, r);
g.DrawRectangle(p, r);
g.DrawString(Text, Font, tb, r, _mth.SetPosition());
SmoothingType(g);
g.FillEllipse(bdgBrush, badge);
g.DrawString(BadgeText, Font, bdgtxtBrush, badge, _mth.SetPosition());
}
break;
case MouseMode.Hovered:
Cursor = Cursors.Hand;
using (var bg = new SolidBrush(HoverColor))
using (var p = new Pen(HoverBorderColor))
using (var tb = new SolidBrush(HoverTextColor))
using (var bdgBrush = new SolidBrush(HoverBadgeColor))
using (var bdgtxtBrush = new SolidBrush(HoverBadgeTextColor))
{
g.FillRectangle(bg, r);
g.DrawRectangle(p, r);
g.DrawString(Text, Font, tb, r, _mth.SetPosition());
SmoothingType(g);
g.FillEllipse(bdgBrush, badge);
g.DrawString(BadgeText, Font, bdgtxtBrush, badge, _mth.SetPosition());
}
break;
case MouseMode.Pushed:
using (var bg = new SolidBrush(PressColor))
using (var p = new Pen(PressBorderColor))
using (var tb = new SolidBrush(PressTextColor))
using (var bdgBrush = new SolidBrush(PressBadgeColor))
using (var bdgtxtBrush = new SolidBrush(PressBadgeTextColor))
{
g.FillRectangle(bg, r);
g.DrawRectangle(p, r);
g.DrawString(Text, Font, tb, r, _mth.SetPosition());
SmoothingType(g);
g.FillEllipse(bdgBrush, badge);
g.DrawString(BadgeText, Font, bdgtxtBrush, badge, _mth.SetPosition());
}
break;
case MouseMode.Disabled:
using (var bg = new SolidBrush(DisabledBackColor))
using (var p = new Pen(DisabledBorderColor))
using (var tb = new SolidBrush(DisabledForeColor))
using (var bdgBrush = new SolidBrush(PressBadgeColor))
using (var bdgtxtBrush = new SolidBrush(PressBadgeTextColor))
{
g.FillRectangle(bg, r);
g.DrawRectangle(p, r);
g.DrawString(Text, Font, tb, r, _mth.SetPosition());
SmoothingType(g);
g.FillEllipse(bdgBrush, badge);
g.DrawString(BadgeText, Font, bdgtxtBrush, badge, _mth.SetPosition());
}
break;
}
}
#endregion Draw Control
#region ApplyTheme
/// <summary>
/// Gets or sets the style provided by the user.
/// </summary>
/// <param name="style">The Style.</param>
private void ApplyTheme(Style style = Style.Light)
{
if (!IsDerivedStyle)
return;
switch (style)
{
case Style.Light:
NormalColor = Color.FromArgb(238, 238, 238);
NormalBorderColor = Color.FromArgb(204, 204, 204);
NormalTextColor = Color.Black;
HoverColor = Color.FromArgb(102, 102, 102);
HoverBorderColor = Color.FromArgb(102, 102, 102);
HoverTextColor = Color.White;
PressColor = Color.FromArgb(51, 51, 51);
PressBorderColor = Color.FromArgb(51, 51, 51);
PressTextColor = Color.White;
NormalBadgeColor = Color.FromArgb(65, 177, 225);
NormalBadgeTextColor = Color.White;
HoverBadgeColor = Color.FromArgb(85, 187, 245);
HoverBadgeTextColor = Color.White;
PressBadgeColor = Color.FromArgb(45, 147, 205);
PressBadgeTextColor = Color.White;
DisabledBackColor = Color.FromArgb(204, 204, 204);
DisabledBorderColor = Color.FromArgb(155, 155, 155);
DisabledForeColor = Color.FromArgb(136, 136, 136);
ThemeAuthor = "Narwin";
ThemeName = "MetroLite";
break;
case Style.Dark:
NormalColor = Color.FromArgb(32, 32, 32);
NormalBorderColor = Color.FromArgb(64, 64, 64);
NormalTextColor = Color.FromArgb(204, 204, 204);
HoverColor = Color.FromArgb(170, 170, 170);
HoverBorderColor = Color.FromArgb(170, 170, 170);
HoverTextColor = Color.White;
PressColor = Color.FromArgb(240, 240, 240);
PressBorderColor = Color.FromArgb(240, 240, 240);
PressTextColor = Color.White;
NormalBadgeColor = Color.FromArgb(65, 177, 225);
NormalBadgeTextColor = Color.White;
HoverBadgeColor = Color.FromArgb(85, 187, 245);
HoverBadgeTextColor = Color.White;
PressBadgeColor = Color.FromArgb(45, 147, 205);
PressBadgeTextColor = Color.White;
DisabledBackColor = Color.FromArgb(80, 80, 80);
DisabledBorderColor = Color.FromArgb(109, 109, 109);
DisabledForeColor = Color.FromArgb(109, 109, 109);
ThemeAuthor = "Narwin";
ThemeName = "MetroDark";
break;
case Style.Custom:
if (StyleManager != null)
foreach (var varkey in StyleManager.BadgeDictionary)
{
if (varkey.Key == null)
{
return;
}
switch (varkey.Key)
{
case "NormalColor":
NormalColor = _utl.HexColor((string)varkey.Value);
break;
case "NormalBorderColor":
NormalBorderColor = _utl.HexColor((string)varkey.Value);
break;
case "NormalTextColor":
NormalTextColor = _utl.HexColor((string)varkey.Value);
break;
case "HoverColor":
HoverColor = _utl.HexColor((string)varkey.Value);
break;
case "HoverBorderColor":
HoverBorderColor = _utl.HexColor((string)varkey.Value);
break;
case "HoverTextColor":
HoverTextColor = _utl.HexColor((string)varkey.Value);
break;
case "PressColor":
PressColor = _utl.HexColor((string)varkey.Value);
break;
case "PressBorderColor":
PressBorderColor = _utl.HexColor((string)varkey.Value);
break;
case "PressTextColor":
PressTextColor = _utl.HexColor((string)varkey.Value);
break;
case "NormalBadgeColor":
NormalBadgeColor = _utl.HexColor((string)varkey.Value);
break;
case "NormalBadgeTextColor":
NormalBadgeTextColor = _utl.HexColor((string)varkey.Value);
break;
case "HoverBadgeColor":
HoverBadgeColor = _utl.HexColor((string)varkey.Value);
break;
case "HoverBadgeTextColor":
HoverBadgeTextColor = _utl.HexColor((string)varkey.Value);
break;
case "PressBadgeColor":
PressBadgeColor = _utl.HexColor((string)varkey.Value);
break;
case "PressBadgeTextColor":
PressBadgeTextColor = _utl.HexColor((string)varkey.Value);
break;
case "DisabledBackColor":
DisabledBackColor = _utl.HexColor((string)varkey.Value);
break;
case "DisabledBorderColor":
DisabledBorderColor = _utl.HexColor((string)varkey.Value);
break;
case "DisabledForeColor":
DisabledForeColor = _utl.HexColor((string)varkey.Value);
break;
}
}
Invalidate();
break;
default:
throw new ArgumentOutOfRangeException(nameof(style), style, null);
}
}
#endregion Theme Changing
#region Events
/// <summary>
/// Handling mouse up event of the control.
/// </summary>
/// <param name="e">MouseEventArgs</param>
protected override void OnMouseUp(MouseEventArgs e)
{
base.OnMouseUp(e);
_state = MouseMode.Hovered;
Invalidate();
}
/// <summary>
/// Handling mouse down event of the control.
/// </summary>
/// <param name="e">MouseEventArgs</param>
protected override void OnMouseDown(MouseEventArgs e)
{
base.OnMouseUp(e);
_state = MouseMode.Pushed;
Invalidate();
}
/// <summary>
/// Handling mouse entering event of the control.
/// </summary>
/// <param name="e">MouseEventArgs</param>
protected override void OnMouseEnter(EventArgs e)
{
base.OnMouseEnter(e);
_state = MouseMode.Hovered;
Invalidate();
}
/// <summary>
/// Handling mouse leave event of the control.
/// </summary>
/// <param name="e">EventArgs</param>
protected override void OnMouseLeave(EventArgs e)
{
base.OnMouseEnter(e);
_state = MouseMode.Normal;
Invalidate();
}
#endregion Events
#region Methods
/// <summary>
/// Sets the smoothingmode the the specific graphics.
/// </summary>
/// <param name="e">Graphics to Set the effect.</param>
/// <param name="state">state of smoothingmode.</param>
private void SmoothingType(Graphics e, SmoothingMode state = SmoothingMode.AntiAlias)
{
e.SmoothingMode = state;
}
#endregion Methods
}
}
================================================
FILE: MetroSet UI/Controls/MetroSetButton.cs
================================================
/*
* MetroSet UI - MetroSet UI Framework
*
* The MIT License (MIT)
* Copyright (c) 2017 Narwin, https://github.com/N-a-r-w-i-n
*
* Permission is hereby granted, free of charge, to any person obtaining a copy of
* this software and associated documentation files (the "Software"), to deal in the
* Software without restriction, including without limitation the rights to use, copy,
* modify, merge, publish, distribute, sublicense, and/or sell copies of the Software,
* and to permit persons to whom the Software is furnished to do so, subject to the
* following conditions:
*
* The above copyright notice and this permission notice shall be included in
* all copies or substantial portions of the Software.
*
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED,
* INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A
* PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
* HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF
* CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE
* OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
*/
using System;
using System.ComponentModel;
using System.Drawing;
using System.Drawing.Text;
using System.Windows.Forms;
using MetroSet_UI.Components;
using MetroSet_UI.Design;
using MetroSet_UI.Enums;
using MetroSet_UI.Extensions;
using MetroSet_UI.Interfaces;
namespace MetroSet_UI.Controls
{
[ToolboxItem(true)]
[ToolboxBitmap(typeof(MetroSetButton), "Bitmaps.Button.bmp")]
[Designer(typeof(MetroSetButtonDesigner))]
[DefaultEvent("Click")]
[DefaultProperty("Text")]
public class MetroSetButton : Control, IMetroSetControl
{
#region Interfaces
/// <summary>
/// Gets or sets the style associated with the control.
/// </summary>
[Category("MetroSet Framework"), Description("Gets or sets the style associated with the control.")]
public Style Style
{
get => StyleManager?.Style ?? _style;
set
{
_style = value;
switch (value)
{
case Style.Light:
ApplyTheme();
break;
case Style.Dark:
ApplyTheme(Style.Dark);
break;
case Style.Custom:
ApplyTheme(Style.Custom);
break;
default:
ApplyTheme();
break;
}
Invalidate();
}
}
/// <summary>
/// Gets or sets the The Author name associated with the theme.
/// </summary>
[Category("MetroSet Framework"), Description("Gets or sets the The Author name associated with the theme.")]
public string ThemeAuthor { get; set; }
/// <summary>
/// Gets or sets the The Theme name associated with the theme.
/// </summary>
[Category("MetroSet Framework"), Description("Gets or sets the The Theme name associated with the theme.")]
public string ThemeName { get; set; }
/// <summary>
/// Gets or sets the Style Manager associated with the control.
/// </summary>
[Category("MetroSet Framework"), Description("Gets or sets the Style Manager associated with the control.")]
public StyleManager StyleManager
{
get => _styleManager;
set
{
_styleManager = value;
Invalidate();
}
}
#endregion Interfaces
#region Global Vars
private readonly Methods _mth;
private readonly Utilites _utl;
#endregion Global Vars
#region Internal Vars
private MouseMode _state;
private Style _style;
private StyleManager _styleManager;
private Color _normalColor;
private Color _normalBorderColor;
private Color _normalTextColor;
private Color _hoverColor;
private Color _hoverBorderColor;
private Color _hoverTextColor;
private Color _pressColor;
private Color _pressBorderColor;
private Color _pressTextColor;
private Color _disabledBackColor;
private Color _disabledForeColor;
private Color _disabledBorderColor;
#endregion Internal Vars
#region Constructors
public MetroSetButton()
{
SetStyle(
ControlStyles.AllPaintingInWmPaint |
ControlStyles.ResizeRedraw | ControlStyles.UserPaint |
ControlStyles.OptimizedDoubleBuffer |
ControlStyles.SupportsTransparentBackColor, true);
UpdateStyles();
base.Font = MetroSetFonts.Light(10);
_utl = new Utilites();
_mth = new Methods();
ApplyTheme();
}
#endregion Constructors
#region Draw Control
protected override void OnPaint(PaintEventArgs e)
{
var g = e.Graphics;
var r = new Rectangle(0, 0, Width - 1, Height - 1);
g.TextRenderingHint = TextRenderingHint.ClearTypeGridFit;
switch (_state)
{
case MouseMode.Normal:
using (var bg = new SolidBrush(NormalColor))
using (var p = new Pen(NormalBorderColor))
using (var tb = new SolidBrush(NormalTextColor))
{
g.FillRectangle(bg, r);
g.DrawRectangle(p, r);
g.DrawString(Text, Font, tb, r, _mth.SetPosition());
}
break;
case MouseMode.Hovered:
Cursor = Cursors.Hand;
using (var bg = new SolidBrush(HoverColor))
using (var p = new Pen(HoverBorderColor))
using (var tb = new SolidBrush(HoverTextColor))
{
g.FillRectangle(bg, r);
g.DrawRectangle(p, r);
g.DrawString(Text, Font, tb, r, _mth.SetPosition());
}
break;
case MouseMode.Pushed:
using (var bg = new SolidBrush(PressColor))
using (var p = new Pen(PressBorderColor))
using (var tb = new SolidBrush(PressTextColor))
{
g.FillRectangle(bg, r);
g.DrawRectangle(p, r);
g.DrawString(Text, Font, tb, r, _mth.SetPosition());
}
break;
case MouseMode.Disabled:
using (var bg = new SolidBrush(DisabledBackColor))
using (var p = new Pen(DisabledBorderColor))
using (var tb = new SolidBrush(DisabledForeColor))
{
g.FillRectangle(bg, r);
g.DrawRectangle(p, r);
g.DrawString(Text, Font, tb, r, _mth.SetPosition());
}
break;
default:
throw new ArgumentOutOfRangeException();
}
}
#endregion Draw Control
#region ApplyTheme
/// <summary>
/// Gets or sets the style provided by the user.
/// </summary>
/// <param name="style">The Style.</param>
private void ApplyTheme(Style style = Style.Light)
{
if (!IsDerivedStyle)
return;
switch (style)
{
case Style.Light:
NormalColor = Color.FromArgb(65, 177, 225);
NormalBorderColor = Color.FromArgb(65, 177, 225);
NormalTextColor = Color.White;
HoverColor = Color.FromArgb(95, 207, 255);
HoverBorderColor = Color.FromArgb(95, 207, 255);
HoverTextColor = Color.White;
PressColor = Color.FromArgb(35, 147, 195);
PressBorderColor = Color.FromArgb(35, 147, 195);
PressTextColor = Color.White;
DisabledBackColor = Color.FromArgb(120, 65, 177, 225);
DisabledBorderColor = Color.FromArgb(120, 65, 177, 225);
DisabledForeColor = Color.Gray;
ThemeAuthor = "Narwin";
ThemeName = "MetroLite";
break;
case Style.Dark:
NormalColor = Color.FromArgb(65, 177, 225);
NormalBorderColor = Color.FromArgb(65, 177, 225);
NormalTextColor = Color.White;
HoverColor = Color.FromArgb(95, 207, 255);
HoverBorderColor = Color.FromArgb(95, 207, 255);
HoverTextColor = Color.White;
PressColor = Color.FromArgb(35, 147, 195);
PressBorderColor = Color.FromArgb(35, 147, 195);
PressTextColor = Color.White;
DisabledBackColor = Color.FromArgb(120, 65, 177, 225);
DisabledBorderColor = Color.FromArgb(120, 65, 177, 225);
DisabledForeColor = Color.Gray;
ThemeAuthor = "Narwin";
ThemeName = "MetroDark";
break;
case Style.Custom:
if (StyleManager != null)
foreach (var varkey in StyleManager.ButtonDictionary)
{
if ((varkey.Key == null) || varkey.Key == null)
{
return;
}
switch (varkey.Key)
{
case "NormalColor":
NormalColor = _utl.HexColor((string)varkey.Value);
break;
case "NormalBorderColor":
NormalBorderColor = _utl.HexColor((string)varkey.Value);
break;
case "NormalTextColor":
NormalTextColor = _utl.HexColor((string)varkey.Value);
break;
case "HoverColor":
HoverColor = _utl.HexColor((string)varkey.Value);
break;
case "HoverBorderColor":
HoverBorderColor = _utl.HexColor((string)varkey.Value);
break;
case "HoverTextColor":
HoverTextColor = _utl.HexColor((string)varkey.Value);
break;
case "PressColor":
PressColor = _utl.HexColor((string)varkey.Value);
break;
case "PressBorderColor":
PressBorderColor = _utl.HexColor((string)varkey.Value);
break;
case "PressTextColor":
PressTextColor = _utl.HexColor((string)varkey.Value);
break;
case "DisabledBackColor":
DisabledBackColor = _utl.HexColor((string)varkey.Value);
break;
case "DisabledBorderColor":
DisabledBorderColor = _utl.HexColor((string)varkey.Value);
break;
case "DisabledForeColor":
DisabledForeColor = _utl.HexColor((string)varkey.Value);
break;
}
}
Invalidate();
break;
default:
throw new ArgumentOutOfRangeException(nameof(style), style, null);
}
}
#endregion Theme Changing
#region Properties
/// <summary>
/// I make BackColor inaccessible cause we have not use of it.
/// </summary>
[Browsable(false), EditorBrowsable(EditorBrowsableState.Never)]
public override Color BackColor => Color.Transparent;
/// <summary>
/// Handling Control Enable state to detect the disability state.
/// </summary>
[Category("MetroSet Framework")]
public new bool Enabled
{
get => base.Enabled;
set
{
base.Enabled = value;
_state = value ? MouseMode.Normal : MouseMode.Disabled;
Invalidate();
}
}
/// <summary>
/// Gets or sets the button background color in normal mouse sate.
/// </summary>
[Category("MetroSet Framework")]
[Description("Gets or sets the button background color in normal mouse sate.")]
public Color NormalColor
{
get { return _normalColor; }
set
{
_normalColor = value;
Refresh();
}
}
/// <summary>
/// Gets or sets the button border color in normal mouse sate.
/// </summary>
[Category("MetroSet Framework")]
[Description("Gets or sets the button border color in normal mouse sate.")]
public Color NormalBorderColor
{
get { return _normalBorderColor; }
set
{
_normalBorderColor = value;
Refresh();
}
}
/// <summary>
/// Gets or sets the button Text color in normal mouse sate.
/// </summary>
[Category("MetroSet Framework")]
[Description("Gets or sets the button Text color in normal mouse sate.")]
public Color NormalTextColor
{
get { return _normalTextColor; }
set
{
_normalTextColor = value;
Refresh();
}
}
/// <summary>
/// Gets or sets the button background color in hover mouse sate.
/// </summary>
[Category("MetroSet Framework")]
[Description("Gets or sets the button background color in hover mouse sate.")]
public Color HoverColor
{
get { return _hoverColor; }
set
{
_hoverColor = value;
Refresh();
}
}
/// <summary>
/// Gets or sets the button border color in hover mouse sate.
/// </summary>
[Category("MetroSet Framework")]
[Description("Gets or sets the button border color in hover mouse sate.")]
public Color HoverBorderColor
{
get { return _hoverBorderColor; }
set
{
_hoverBorderColor = value;
Refresh();
}
}
/// <summary>
/// Gets or sets the button Text color in hover mouse sate.
/// </summary>
[Category("MetroSet Framework")]
[Description("Gets or sets the button Text color in hover mouse sate.")]
public Color HoverTextColor
{
get { return _hoverTextColor; }
set
{
_hoverTextColor = value;
Refresh();
}
}
/// <summary>
/// Gets or sets the button background color in pushed mouse sate.
/// </summary>
[Category("MetroSet Framework")]
[Description("Gets or sets the button background color in pushed mouse sate.")]
public Color PressColor
{
get { return _pressColor; }
set
{
_pressColor = value;
Refresh();
}
}
/// <summary>
/// Gets or sets the button border color in pushed mouse sate.
/// </summary>
[Category("MetroSet Framework")]
[Description("Gets or sets the button border color in pushed mouse sate.")]
public Color PressBorderColor
{
get { return _pressBorderColor; }
set
{
_pressBorderColor = value;
Refresh();
}
}
/// <summary>
/// Gets or sets the button Text color in pushed mouse sate.
/// </summary>
[Category("MetroSet Framework")]
[Description("Gets or sets the button Text color in pushed mouse sate.")]
public Color PressTextColor
{
get { return _pressTextColor; }
set
{
_pressTextColor = value;
Refresh();
}
}
/// <summary>
/// Gets or sets BackColor used by the control while disabled.
/// </summary>
[Category("MetroSet Framework")]
[Description("Gets or sets backcolor used by the control while disabled.")]
public Color DisabledBackColor
{
get { return _disabledBackColor; }
set
{
_disabledBackColor = value;
Refresh();
}
}
/// <summary>
/// Gets or sets the ForeColor of the control whenever while disabled.
/// </summary>
[Category("MetroSet Framework")]
[Description("Gets or sets the forecolor of the control whenever while disabled.")]
public Color DisabledForeColor
{
get { return _disabledForeColor; }
set
{
_disabledForeColor = value;
Refresh();
}
}
/// <summary>
/// Gets or sets the border color of the control while disabled.
/// </summary>
[Category("MetroSet Framework")]
[Description("Gets or sets the border color of the control while disabled.")]
public Color DisabledBorderColor
{
get { return _disabledBorderColor; }
set
{
_disabledBorderColor = value;
Refresh();
}
}
private bool _isDerivedStyle = true;
/// <summary>
/// Gets or sets the whether this control reflect to parent form style.
/// Set it to false if you want the style of this control be independent.
/// </summary>
[Category("MetroSet Framework")]
[Description("Gets or sets the whether this control reflect to parent(s) style. \n " +
"Set it to false if you want the style of this control be independent. ")]
public bool IsDerivedStyle
{
get { return _isDerivedStyle; }
set
{
_isDerivedStyle = value;
Refresh();
}
}
#endregion
#region Events
/// <summary>
/// Handling mouse up event of the control.
/// </summary>
/// <param name="e">MouseEventArgs</param>
protected override void OnMouseUp(MouseEventArgs e)
{
base.OnMouseUp(e);
_state = MouseMode.Hovered;
Invalidate();
}
/// <summary>
/// Handling mouse down event of the control.
/// </summary>
/// <param name="e">MouseEventArgs</param>
protected override void OnMouseDown(MouseEventArgs e)
{
base.OnMouseUp(e);
_state = MouseMode.Pushed;
Invalidate();
}
/// <summary>
/// Handling mouse entering event of the control.
/// </summary>
/// <param name="e">EventArgs</param>
protected override void OnMouseEnter(EventArgs e)
{
base.OnMouseEnter(e);
_state = MouseMode.Hovered;
Invalidate();
}
/// <summary>
/// Handling mouse leave event of the control.
/// </summary>
/// <param name="e">MouseEventArgs</param>
protected override void OnMouseLeave(EventArgs e)
{
base.OnMouseEnter(e);
_state = MouseMode.Normal;
Invalidate();
}
#endregion Events
}
}
================================================
FILE: MetroSet UI/Controls/MetroSetCheckBox.cs
================================================
/*
* MetroSet UI - MetroSet UI Framework
*
* The MIT License (MIT)
* Copyright (c) 2017 Narwin, https://github.com/N-a-r-w-i-n
*
* Permission is hereby granted, free of charge, to any person obtaining a copy of
* this software and associated documentation files (the "Software"), to deal in the
* Software without restriction, including without limitation the rights to use, copy,
* modify, merge, publish, distribute, sublicense, and/or sell copies of the Software,
* and to permit persons to whom the Software is furnished to do so, subject to the
* following conditions:
*
* The above copyright notice and this permission notice shall be included in
* all copies or substantial portions of the Software.
*
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED,
* INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A
* PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
* HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF
* CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE
* OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
*/
using System;
using System.ComponentModel;
using System.Drawing;
using System.Drawing.Drawing2D;
using System.Drawing.Text;
using System.Windows.Forms;
using MetroSet_UI.Animates;
using MetroSet_UI.Components;
using MetroSet_UI.Design;
using MetroSet_UI.Enums;
using MetroSet_UI.Extensions;
using MetroSet_UI.Interfaces;
using MetroSet_UI.Native;
namespace MetroSet_UI.Controls
{
[ToolboxItem(true)]
[ToolboxBitmap(typeof(MetroSetCheckBox), "Bitmaps.CheckBox.bmp")]
[Designer(typeof(MetroSetCheckBoxDesigner))]
[DefaultEvent("CheckedChanged")]
[DefaultProperty("Checked")]
public class MetroSetCheckBox : Control, IMetroSetControl, IDisposable
{
#region Interfaces
/// <summary>
/// Gets or sets the style associated with the control.
/// </summary>
[Category("MetroSet Framework"), Description("Gets or sets the style associated with the control.")]
public Style Style
{
get => StyleManager?.Style ?? _style;
set
{
_style = value;
switch (value)
{
case Style.Light:
ApplyTheme();
break;
case Style.Dark:
ApplyTheme(Style.Dark);
break;
case Style.Custom:
ApplyTheme(Style.Custom);
break;
default:
ApplyTheme();
break;
}
Invalidate();
}
}
/// <summary>
/// Gets or sets the Style Manager associated with the control.
/// </summary>
[Category("MetroSet Framework"), Description("Gets or sets the Style Manager associated with the control.")]
public StyleManager StyleManager
{
get => _styleManager;
set { _styleManager = value; Invalidate(); }
}
/// <summary>
/// Gets or sets the The Author name associated with the theme.
/// </summary>
[Category("MetroSet Framework"), Description("Gets or sets the The Author name associated with the theme.")]
public string ThemeAuthor { get; set; }
/// <summary>
/// Gets or sets the The Theme name associated with the theme.
/// </summary>
[Category("MetroSet Framework"), Description("Gets or sets the The Theme name associated with the theme.")]
public string ThemeName { get; set; }
#endregion Interfaces
#region Global Vars
private readonly Utilites _utl;
#endregion Global Vars
#region Internal Vars
private Style _style;
private StyleManager _styleManager;
private bool _checked;
private IntAnimate _animator;
private SignStyle _signStyle = SignStyle.Sign;
private Enums.CheckState _checkState;
private Color _backgroundColor;
private Color _borderColor;
private Color _disabledBorderColor;
private Color _checkSignColor;
#endregion Internal Vars
#region Constructors
public MetroSetCheckBox()
{
SetStyle(
ControlStyles.ResizeRedraw |
ControlStyles.OptimizedDoubleBuffer |
ControlStyles.SupportsTransparentBackColor, true);
UpdateStyles();
base.Font = MetroSetFonts.Light(10);
base.Cursor = Cursors.Hand;
base.BackColor = Color.Transparent;
_utl = new Utilites();
_animator = new IntAnimate();
_animator.Setting(100, 0, 255);
_animator.Update = (alpha) => Invalidate();
ApplyTheme();
}
#endregion Constructors
#region ApplyTheme
/// <summary>
/// Gets or sets the style provided by the user.
/// </summary>
/// <param name="style">The Style.</param>
private void ApplyTheme(Style style = Style.Light)
{
if (!IsDerivedStyle)
return;
switch (style)
{
case Style.Light:
ForeColor = Color.Black;
BackgroundColor = Color.White;
BorderColor = Color.FromArgb(155, 155, 155);
DisabledBorderColor = Color.FromArgb(205, 205, 205);
CheckSignColor = Color.FromArgb(65, 177, 225);
ThemeAuthor = "Narwin";
ThemeName = "MetroLite";
UpdateProperties();
break;
case Style.Dark:
ForeColor = Color.FromArgb(170, 170, 170);
BackgroundColor = Color.FromArgb(30, 30, 30);
BorderColor = Color.FromArgb(155, 155, 155);
DisabledBorderColor = Color.FromArgb(85, 85, 85);
CheckSignColor = Color.FromArgb(65, 177, 225);
ThemeAuthor = "Narwin";
ThemeName = "MetroDark";
UpdateProperties();
break;
case Style.Custom:
if (StyleManager != null)
foreach (var varkey in StyleManager.CheckBoxDictionary)
{
switch (varkey.Key)
{
case "ForeColor":
ForeColor = _utl.HexColor((string)varkey.Value);
break;
case "BackColor":
BackgroundColor = _utl.HexColor((string)varkey.Value);
break;
case "BorderColor":
BorderColor = _utl.HexColor((string)varkey.Value);
break;
case "DisabledBorderColor":
DisabledBorderColor = _utl.HexColor((string)varkey.Value);
break;
case "CheckColor":
CheckSignColor = _utl.HexColor((string)varkey.Value);
break;
case "CheckedStyle":
if ((string)varkey.Value == "Sign")
SignStyle = SignStyle.Sign;
else if ((string)varkey.Value == "Shape")
{
SignStyle = SignStyle.Shape;
}
break;
default:
return;
}
}
UpdateProperties();
break;
default:
throw new ArgumentOutOfRangeException(nameof(style), style, null);
}
}
private void UpdateProperties()
{
Invalidate();
}
#endregion Theme Changing
#region Draw Control
protected override void OnPaint(PaintEventArgs e)
{
var g = e.Graphics;
g.TextRenderingHint = TextRenderingHint.ClearTypeGridFit;
var rect = new Rectangle(0, 0, 16, 15);
var alpha = _animator.Value;
using (var backBrush = new SolidBrush(Enabled ? BackgroundColor : Color.FromArgb(238, 238, 238)))
{
using (var checkMarkPen = new Pen(Enabled ? Checked || _animator.Active ? Color.FromArgb(alpha, CheckSignColor) : BackgroundColor : Color.FromArgb(alpha, DisabledBorderColor), 2))
{
using (var checkMarkBrush = new SolidBrush(Enabled ? Checked || _animator.Active ? Color.FromArgb(alpha, CheckSignColor) : BackgroundColor : DisabledBorderColor))
{
using (var p = new Pen(Enabled ? BorderColor : DisabledBorderColor))
{
using (var sf = new StringFormat { Alignment = StringAlignment.Near, LineAlignment = StringAlignment.Center })
{
using (var tb = new SolidBrush(ForeColor))
{
g.FillRectangle(backBrush, rect);
g.DrawRectangle(Enabled ? p : checkMarkPen, rect);
DrawSymbol(g, checkMa
gitextract_95ymntp2/ ├── .gitattributes ├── .gitignore ├── LICENSE ├── MetroSet Theme.xml ├── MetroSet UI/ │ ├── Actions/ │ │ ├── MetroSetBadgeActionList.cs │ │ ├── MetroSetButtonActionList.cs │ │ ├── MetroSetCheckBoxActionList.cs │ │ ├── MetroSetControlBoxActionList.cs │ │ ├── MetroSetDefaultButtonActionList.cs │ │ ├── MetroSetDividerActionList.cs │ │ ├── MetroSetEllipseActionList.cs │ │ ├── MetroSetLabelActionList.cs │ │ ├── MetroSetLinkActionList.cs │ │ ├── MetroSetListBoxActionList.cs │ │ ├── MetroSetNumericActionList.cs │ │ ├── MetroSetProgressBarActionList.cs │ │ ├── MetroSetRadiobuttonActionList.cs │ │ ├── MetroSetRichTextBoxActionList.cs │ │ ├── MetroSetScrollBarActionList.cs │ │ ├── MetroSetSwitchActionList.cs │ │ ├── MetroSetTextBoxActionList.cs │ │ ├── MetroSetTileActionList.cs │ │ ├── MetroSetToolTipActionList.cs │ │ ├── MetroSetTrackBarActionList.cs │ │ └── StyleManagerActionList.cs │ ├── Animates/ │ │ ├── Animate.cs │ │ ├── ColorAnimate.cs │ │ ├── DoubleAnimat.cs │ │ ├── IntAnimate.cs │ │ ├── Interpolation.cs │ │ ├── PointFAnimate.cs │ │ └── SizeFAnimate.cs │ ├── Child/ │ │ ├── MetroSetItemCollection.cs │ │ ├── MetroSetSetTabPage.cs │ │ ├── MetroSetTabPageCollectionEditor.cs │ │ └── MetroSetToolStripMenuItem.cs │ ├── Components/ │ │ ├── MetroSetSetToolTip.cs │ │ └── StyleManager.cs │ ├── Controls/ │ │ ├── MetroSetBadge.cs │ │ ├── MetroSetButton.cs │ │ ├── MetroSetCheckBox.cs │ │ ├── MetroSetComboBox.cs │ │ ├── MetroSetContextMenuStrip.cs │ │ ├── MetroSetControlBox.cs │ │ ├── MetroSetDefaultButton.cs │ │ ├── MetroSetDivider.cs │ │ ├── MetroSetEllipse.cs │ │ ├── MetroSetLabel.cs │ │ ├── MetroSetLink.cs │ │ ├── MetroSetListBox.cs │ │ ├── MetroSetNumeric.cs │ │ ├── MetroSetPanel.cs │ │ ├── MetroSetProgressBar.cs │ │ ├── MetroSetRadioButton.cs │ │ ├── MetroSetRichTextBox.cs │ │ ├── MetroSetScrollBar.cs │ │ ├── MetroSetSwitch.cs │ │ ├── MetroSetTabControl.cs │ │ ├── MetroSetTextBox.cs │ │ ├── MetroSetTile.cs │ │ └── MetroSetTrackBar.cs │ ├── Design/ │ │ ├── MetroSetBadgeDesigner.cs │ │ ├── MetroSetButtonDesigner.cs │ │ ├── MetroSetCheckBoxDesigner.cs │ │ ├── MetroSetControBoxDesigner.cs │ │ ├── MetroSetDefaultButtonDesigner.cs │ │ ├── MetroSetDividerDesigner.cs │ │ ├── MetroSetEllipseDesigner.cs │ │ ├── MetroSetLabelDesigner.cs │ │ ├── MetroSetLinkDesigner.cs │ │ ├── MetroSetListBoxDesigner.cs │ │ ├── MetroSetNumericDesigner.cs │ │ ├── MetroSetProgressBarDesigner.cs │ │ ├── MetroSetRadioButtonDesigner.cs │ │ ├── MetroSetRichTextBoxDesigner.cs │ │ ├── MetroSetScrollBarDesigner.cs │ │ ├── MetroSetSwitchDesigner.cs │ │ ├── MetroSetTabControlDesigner.cs │ │ ├── MetroSetTabpageDesigner.cs │ │ ├── MetroSetTextBoxDesigner.cs │ │ ├── MetroSetTileDesigner.cs │ │ ├── MetroSetToolTipDesigner.cs │ │ ├── MetroSetTrackBarDesigner.cs │ │ └── StyleManagerDesigner.cs │ ├── Enums/ │ │ ├── BageAlign.cs │ │ ├── CheckState.cs │ │ ├── DividerStyle.cs │ │ ├── EasingType.cs │ │ ├── MouseSates.cs │ │ ├── ProgressOrientation.cs │ │ ├── ScrollOrientation.cs │ │ ├── SignStyle.cs │ │ ├── Style.cs │ │ ├── TabStyle.cs │ │ ├── TextAlign.cs │ │ └── TileAlign.cs │ ├── Extensions/ │ │ ├── Global Font.cs │ │ ├── GraphicsQuality.cs │ │ ├── Methods.cs │ │ ├── MetroSetFonts.cs │ │ └── Utilites.cs │ ├── Forms/ │ │ ├── MetroSetForm.cs │ │ ├── MetroSetForm.resx │ │ └── MetroSetMessageBox.cs │ ├── Interfaces/ │ │ ├── IMetroForm.cs │ │ ├── IMetroSetControl.cs │ │ ├── MetroSetControl.cs │ │ └── MetroSetForm.cs │ ├── MetroSet UI.csproj │ ├── Native/ │ │ └── User32.cs │ ├── Properties/ │ │ ├── AssemblyInfo.cs │ │ ├── PublishProfiles/ │ │ │ └── FolderProfile.pubxml │ │ ├── Resources.Designer.cs │ │ ├── Resources.resx │ │ ├── Settings.Designer.cs │ │ └── Settings.settings │ └── Resources/ │ └── MetroSet Theme.xml ├── MetroSet UI Example/ │ ├── Form1.Designer.cs │ ├── Form1.cs │ ├── Form1.resx │ ├── MetroSet UI Example.csproj │ ├── Program.cs │ └── Properties/ │ ├── AssemblyInfo.cs │ ├── Resources.Designer.cs │ ├── Resources.resx │ ├── Settings.Designer.cs │ └── Settings.settings ├── MetroSet UI.sln └── README.md
SYMBOL INDEX (571 symbols across 111 files)
FILE: MetroSet UI Example/Form1.Designer.cs
class Form1 (line 5) | partial class Form1
method Dispose (line 16) | protected override void Dispose(bool disposing)
method InitializeComponent (line 31) | private void InitializeComponent()
FILE: MetroSet UI Example/Form1.cs
class Form1 (line 8) | public partial class Form1 : MetroSetForm
method Form1 (line 10) | public Form1()
method MetroSetSwitch2_SwitchedChanged (line 15) | private void MetroSetSwitch2_SwitchedChanged(object sender)
method MetroSetButton3_Click (line 27) | private void MetroSetButton3_Click(object sender, EventArgs e)
method MetroSetButton4_Click (line 32) | private void MetroSetButton4_Click(object sender, EventArgs e)
method MetroSetButton5_Click (line 37) | private void MetroSetButton5_Click(object sender, EventArgs e)
method MetroSetButton6_Click (line 42) | private void MetroSetButton6_Click(object sender, EventArgs e)
method MetroSetButton7_Click_1 (line 47) | private void MetroSetButton7_Click_1(object sender, EventArgs e)
method MetroSetDefaultButton1_Click (line 52) | private void MetroSetDefaultButton1_Click(object sender, EventArgs e)
method metroSetListBox2_SelectedIndexChanged (line 57) | private void metroSetListBox2_SelectedIndexChanged(object sender)
FILE: MetroSet UI Example/Program.cs
class Program (line 6) | static class Program
method Main (line 11) | [STAThread]
FILE: MetroSet UI Example/Properties/Resources.Designer.cs
class Resources (line 22) | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resource...
method Resources (line 31) | [global::System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Mic...
FILE: MetroSet UI Example/Properties/Settings.Designer.cs
class Settings (line 14) | [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
FILE: MetroSet UI/Actions/MetroSetBadgeActionList.cs
class MetroSetBadgeActionList (line 34) | public class MetroSetBadgeActionList : DesignerActionList
method MetroSetBadgeActionList (line 38) | public MetroSetBadgeActionList(IComponent component) : base(component)
method GetSortedActionItems (line 83) | public override DesignerActionItemCollection GetSortedActionItems()
FILE: MetroSet UI/Actions/MetroSetButtonActionList.cs
class MetroSetButtonActionList (line 34) | public class MetroSetButtonActionList : DesignerActionList
method MetroSetButtonActionList (line 38) | public MetroSetButtonActionList(IComponent component) : base(component)
method GetSortedActionItems (line 71) | public override DesignerActionItemCollection GetSortedActionItems()
FILE: MetroSet UI/Actions/MetroSetCheckBoxActionList.cs
class MetroSetRadioButtonActionList (line 33) | internal class MetroSetRadioButtonActionList : DesignerActionList
method MetroSetRadioButtonActionList (line 37) | public MetroSetRadioButtonActionList(IComponent component) : base(comp...
method GetSortedActionItems (line 70) | public override DesignerActionItemCollection GetSortedActionItems()
FILE: MetroSet UI/Actions/MetroSetControlBoxActionList.cs
class MetroSetControlBoxActionList (line 33) | internal class MetroSetControlBoxActionList : DesignerActionList
method MetroSetControlBoxActionList (line 37) | public MetroSetControlBoxActionList(IComponent component) : base(compo...
method GetSortedActionItems (line 70) | public override DesignerActionItemCollection GetSortedActionItems()
FILE: MetroSet UI/Actions/MetroSetDefaultButtonActionList.cs
class MetroSetDefaultButtonActionList (line 34) | public class MetroSetDefaultButtonActionList : DesignerActionList
method MetroSetDefaultButtonActionList (line 38) | public MetroSetDefaultButtonActionList(IComponent component) : base(co...
method GetSortedActionItems (line 71) | public override DesignerActionItemCollection GetSortedActionItems()
FILE: MetroSet UI/Actions/MetroSetDividerActionList.cs
class MetroSetDividerActionList (line 33) | internal class MetroSetDividerActionList : DesignerActionList
method MetroSetDividerActionList (line 37) | public MetroSetDividerActionList(IComponent component) : base(component)
method GetSortedActionItems (line 70) | public override DesignerActionItemCollection GetSortedActionItems()
FILE: MetroSet UI/Actions/MetroSetEllipseActionList.cs
class MetroSetEllipseActionList (line 34) | public class MetroSetEllipseActionList : DesignerActionList
method MetroSetEllipseActionList (line 38) | public MetroSetEllipseActionList(IComponent component) : base(component)
method GetSortedActionItems (line 87) | public override DesignerActionItemCollection GetSortedActionItems()
FILE: MetroSet UI/Actions/MetroSetLabelActionList.cs
class MetroSetLabelActionList (line 34) | class MetroSetLabelActionList : DesignerActionList
method MetroSetLabelActionList (line 38) | public MetroSetLabelActionList(IComponent component) : base(component)
method GetSortedActionItems (line 71) | public override DesignerActionItemCollection GetSortedActionItems()
FILE: MetroSet UI/Actions/MetroSetLinkActionList.cs
class MetroSetLinkActionList (line 36) | class MetroSetLinkActionList : DesignerActionList
method MetroSetLinkActionList (line 40) | public MetroSetLinkActionList(IComponent component) : base(component)
method GetSortedActionItems (line 105) | public override DesignerActionItemCollection GetSortedActionItems()
FILE: MetroSet UI/Actions/MetroSetListBoxActionList.cs
class MetroSetListBoxActionList (line 34) | internal class MetroSetListBoxActionList : DesignerActionList
method MetroSetListBoxActionList (line 38) | public MetroSetListBoxActionList(IComponent component) : base(component)
method GetSortedActionItems (line 88) | public override DesignerActionItemCollection GetSortedActionItems()
FILE: MetroSet UI/Actions/MetroSetNumericActionList.cs
class MetroSetNumericActionList (line 33) | internal class MetroSetNumericActionList : DesignerActionList
method MetroSetNumericActionList (line 37) | public MetroSetNumericActionList(IComponent component) : base(component)
method GetSortedActionItems (line 76) | public override DesignerActionItemCollection GetSortedActionItems()
FILE: MetroSet UI/Actions/MetroSetProgressBarActionList.cs
class MetroSetProgressBarActionList (line 33) | internal class MetroSetProgressBarActionList : DesignerActionList
method MetroSetProgressBarActionList (line 37) | public MetroSetProgressBarActionList(IComponent component) : base(comp...
method GetSortedActionItems (line 76) | public override DesignerActionItemCollection GetSortedActionItems()
FILE: MetroSet UI/Actions/MetroSetRadiobuttonActionList.cs
class MetroSetCheckBoxActionList (line 33) | internal class MetroSetCheckBoxActionList : DesignerActionList
method MetroSetCheckBoxActionList (line 37) | public MetroSetCheckBoxActionList(IComponent component) : base(component)
method GetSortedActionItems (line 76) | public override DesignerActionItemCollection GetSortedActionItems()
FILE: MetroSet UI/Actions/MetroSetRichTextBoxActionList.cs
class MetroSetRichTextBoxActionList (line 35) | internal class MetroSetRichTextBoxActionList : DesignerActionList
method MetroSetRichTextBoxActionList (line 39) | public MetroSetRichTextBoxActionList(IComponent component) : base(comp...
method GetSortedActionItems (line 84) | public override DesignerActionItemCollection GetSortedActionItems()
FILE: MetroSet UI/Actions/MetroSetScrollBarActionList.cs
class MetroSetScrollBarActionList (line 31) | class MetroSetScrollBarActionList : DesignerActionList
method MetroSetScrollBarActionList (line 35) | public MetroSetScrollBarActionList(IComponent component) : base(compon...
method GetSortedActionItems (line 95) | public override DesignerActionItemCollection GetSortedActionItems()
FILE: MetroSet UI/Actions/MetroSetSwitchActionList.cs
class MetroSetSwitchActionList (line 33) | internal class MetroSetSwitchActionList : DesignerActionList
method MetroSetSwitchActionList (line 37) | public MetroSetSwitchActionList(IComponent component) : base(component)
method GetSortedActionItems (line 70) | public override DesignerActionItemCollection GetSortedActionItems()
FILE: MetroSet UI/Actions/MetroSetTextBoxActionList.cs
class MetroSetTextBoxActionList (line 35) | internal class MetroSetTextBoxActionList : DesignerActionList
method MetroSetTextBoxActionList (line 39) | public MetroSetTextBoxActionList(IComponent component) : base(component)
method GetSortedActionItems (line 102) | public override DesignerActionItemCollection GetSortedActionItems()
FILE: MetroSet UI/Actions/MetroSetTileActionList.cs
class MetroSetTileActionList (line 34) | public class MetroSetTileActionList : DesignerActionList
method MetroSetTileActionList (line 38) | public MetroSetTileActionList(IComponent component) : base(component)
method GetSortedActionItems (line 77) | public override DesignerActionItemCollection GetSortedActionItems()
FILE: MetroSet UI/Actions/MetroSetToolTipActionList.cs
class MetroSetToolTipActionList (line 32) | internal class MetroSetToolTipActionList : DesignerActionList
method MetroSetToolTipActionList (line 36) | public MetroSetToolTipActionList(IComponent component) : base(component)
method GetSortedActionItems (line 99) | public override DesignerActionItemCollection GetSortedActionItems()
FILE: MetroSet UI/Actions/MetroSetTrackBarActionList.cs
class MetroSetTrackBarActionList (line 33) | public class MetroSetTrackBarActionList : DesignerActionList
method MetroSetTrackBarActionList (line 37) | public MetroSetTrackBarActionList(IComponent component) : base(component)
method GetSortedActionItems (line 76) | public override DesignerActionItemCollection GetSortedActionItems()
FILE: MetroSet UI/Actions/StyleManagerActionList.cs
class StyleManagerActionList (line 34) | class StyleManagerActionList : DesignerActionList
method StyleManagerActionList (line 38) | public StyleManagerActionList(IComponent component) : base(component)
method GetSortedActionItems (line 66) | public override DesignerActionItemCollection GetSortedActionItems()
FILE: MetroSet UI/Animates/Animate.cs
class Animate (line 8) | public abstract class Animate<T> : IDisposable
method Animate (line 31) | public Animate(int updateInterval = 16)
method Setting (line 46) | public void Setting(int duration, T initial, T end, EasingType easing ...
method Start (line 55) | public void Start()
method Back (line 63) | public void Back()
method Start (line 71) | public void Start(int duration)
method Back (line 80) | public void Back(int duration)
method Reverse (line 89) | public void Reverse()
method Reverse (line 95) | public void Reverse(bool val)
method Play (line 104) | public void Play()
method Pause (line 112) | public void Pause()
method Stop (line 119) | public void Stop()
method Start (line 126) | public void Start(int duration, T initial, T end, EasingType easing = ...
method Back (line 133) | public void Back(int duration, T initial, T end, EasingType easing = E...
method OnFrameUpdate (line 142) | private void OnFrameUpdate(object sender, EventArgs e)
method Dispose (line 193) | public void Dispose()
FILE: MetroSet UI/Animates/ColorAnimate.cs
class ColorAnimate (line 5) | public class ColorAnimate : Animate<Color>
FILE: MetroSet UI/Animates/DoubleAnimat.cs
class DoubleAnimate (line 3) | public class DoubleAnimate : Animate<double>
FILE: MetroSet UI/Animates/IntAnimate.cs
class IntAnimate (line 3) | public class IntAnimate : Animate<int>
FILE: MetroSet UI/Animates/Interpolation.cs
class Interpolation (line 7) | public class Interpolation
method ValueAt (line 9) | public static double ValueAt(double initial, double end, double alpha,...
FILE: MetroSet UI/Animates/PointFAnimate.cs
class PointFAnimate (line 5) | public class PointFAnimate : Animate<PointF>
FILE: MetroSet UI/Animates/SizeFAnimate.cs
class SizeFAnimate (line 5) | public class SizeFAnimate : Animate<SizeF>
FILE: MetroSet UI/Child/MetroSetItemCollection.cs
class MetroSetItemCollection (line 32) | public class MetroSetItemCollection : Collection<object>
method AddRange (line 45) | public void AddRange(IEnumerable<object> items)
method Add (line 57) | protected new void Add(object item)
method InsertItem (line 68) | protected override void InsertItem(int index, object item)
method RemoveItem (line 78) | protected override void RemoveItem(int value)
method Clear (line 87) | protected new void Clear()
method ClearItems (line 96) | protected override void ClearItems()
FILE: MetroSet UI/Child/MetroSetSetTabPage.cs
class MetroSetSetTabPage (line 37) | [Designer(typeof(MetroSetTabPageDesigner))]
method MetroSetSetTabPage (line 110) | public MetroSetSetTabPage()
method ApplyTheme (line 131) | private void ApplyTheme(Style style = Style.Light)
method UpdateProperties (line 157) | public void UpdateProperties()
method OnPaint (line 214) | protected override void OnPaint(PaintEventArgs e)
FILE: MetroSet UI/Child/MetroSetTabPageCollectionEditor.cs
class MetroSetTabPageCollectionEditor (line 37) | internal class MetroSetTabPageCollectionEditor : CollectionEditor
method MetroSetTabPageCollectionEditor (line 39) | public MetroSetTabPageCollectionEditor(Type type)
method CreateNewItemTypes (line 43) | protected override Type[] CreateNewItemTypes()
FILE: MetroSet UI/Child/MetroSetToolStripMenuItem.cs
class MetroSetToolStripMenuItem (line 32) | public sealed class MetroSetToolStripMenuItem : ToolStripMenuItem
method MetroSetToolStripMenuItem (line 36) | public MetroSetToolStripMenuItem()
method CreateDefaultDropDown (line 46) | protected override ToolStripDropDown CreateDefaultDropDown()
FILE: MetroSet UI/Components/MetroSetSetToolTip.cs
class MetroSetSetToolTip (line 38) | [ToolboxItem(true)]
method MetroSetSetToolTip (line 118) | public MetroSetSetToolTip()
method OnDraw (line 133) | private void OnDraw(object sender, DrawToolTipEventArgs e)
method ApplyTheme (line 157) | private void ApplyTheme(Style style = Style.Light)
method SetToolTip (line 303) | public new void SetToolTip(Control control, string caption)
method ToolTip_Popup (line 322) | private void ToolTip_Popup(object sender, PopupEventArgs e)
FILE: MetroSet UI/Components/StyleManager.cs
class StyleManager (line 40) | [DefaultProperty("Style")]
method StyleManager (line 51) | public StyleManager()
method UpdateForm (line 69) | private void UpdateForm()
method UpdateControls (line 91) | private void UpdateControls(Control.ControlCollection controls)
method ControlAdded (line 135) | private void ControlAdded(object sender, ControlEventArgs e)
method OpenTheme (line 249) | public void OpenTheme()
method SetTheme (line 266) | public void SetTheme(string path)
method ThemeFilePath (line 277) | private string ThemeFilePath(string str)
method Clear (line 425) | private void Clear()
method InitializeDictionaries (line 460) | private void InitializeDictionaries()
method ControlProperties (line 500) | private void ControlProperties(string path)
method ThemeDetailsReader (line 571) | private void ThemeDetailsReader(string path)
method GetValues (line 594) | private Dictionary<string, object> GetValues(string path, string noden...
class FileNamesEditor (line 626) | public class FileNamesEditor : UITypeEditor
method GetEditStyle (line 630) | public override UITypeEditorEditStyle GetEditStyle(ITypeDescriptorCo...
method EditValue (line 635) | public override object EditValue(ITypeDescriptorContext context, ISe...
FILE: MetroSet UI/Controls/MetroSetBadge.cs
class MetroSetBadge (line 40) | [ToolboxItem(true)]
method MetroSetBadge (line 150) | public MetroSetBadge()
method OnPaint (line 510) | protected override void OnPaint(PaintEventArgs e)
method ApplyTheme (line 627) | private void ApplyTheme(Style style = Style.Light)
method OnMouseUp (line 762) | protected override void OnMouseUp(MouseEventArgs e)
method OnMouseDown (line 773) | protected override void OnMouseDown(MouseEventArgs e)
method OnMouseEnter (line 784) | protected override void OnMouseEnter(EventArgs e)
method OnMouseLeave (line 795) | protected override void OnMouseLeave(EventArgs e)
method SmoothingType (line 811) | private void SmoothingType(Graphics e, SmoothingMode state = Smoothing...
FILE: MetroSet UI/Controls/MetroSetButton.cs
class MetroSetButton (line 38) | [ToolboxItem(true)]
method MetroSetButton (line 139) | public MetroSetButton()
method OnPaint (line 158) | protected override void OnPaint(PaintEventArgs e)
method ApplyTheme (line 230) | private void ApplyTheme(Style style = Style.Light)
method OnMouseUp (line 559) | protected override void OnMouseUp(MouseEventArgs e)
method OnMouseDown (line 570) | protected override void OnMouseDown(MouseEventArgs e)
method OnMouseEnter (line 581) | protected override void OnMouseEnter(EventArgs e)
method OnMouseLeave (line 592) | protected override void OnMouseLeave(EventArgs e)
FILE: MetroSet UI/Controls/MetroSetCheckBox.cs
class MetroSetCheckBox (line 42) | [ToolboxItem(true)]
method MetroSetCheckBox (line 131) | public MetroSetCheckBox()
method ApplyTheme (line 156) | private void ApplyTheme(Style style = Style.Light)
method UpdateProperties (line 233) | private void UpdateProperties()
method OnPaint (line 242) | protected override void OnPaint(PaintEventArgs e)
method DrawSymbol (line 274) | private void DrawSymbol(Graphics g, Pen pen, SolidBrush solidBrush)
method OnClick (line 307) | protected override void OnClick(EventArgs e)
method OnResize (line 318) | protected override void OnResize(EventArgs e)
method WndProc (line 329) | protected override void WndProc(ref Message m)
method Dispose (line 491) | public new void Dispose()
FILE: MetroSet UI/Controls/MetroSetComboBox.cs
class MetroSetComboBox (line 38) | [ToolboxItem(true)]
method MetroSetComboBox (line 130) | public MetroSetComboBox()
method OnDrawItem (line 342) | protected override void OnDrawItem(DrawItemEventArgs e)
method OnPaint (line 368) | protected override void OnPaint(PaintEventArgs e)
method ApplyTheme (line 406) | private void ApplyTheme(Style style = Style.Light)
method UpdateProperties (line 497) | private void UpdateProperties()
FILE: MetroSet UI/Controls/MetroSetContextMenuStrip.cs
class MetroSetContextMenuStrip (line 38) | [ToolboxItem(true)]
method MetroSetContextMenuStrip (line 119) | public MetroSetContextMenuStrip()
method ApplyTheme (line 134) | private void ApplyTheme(Style style = Style.Light)
method UpdateProperties (line 212) | private void UpdateProperties()
method OnItemClicked (line 297) | protected override void OnItemClicked(ToolStripItemClickedEventArgs e)
method OnMouseHover (line 314) | protected override void OnMouseHover(EventArgs e)
method OnMouseUp (line 325) | protected override void OnMouseUp(MouseEventArgs e)
class MetroSetToolStripRender (line 336) | private sealed class MetroSetToolStripRender : ToolStripProfessionalRe...
method OnRenderItemText (line 345) | protected override void OnRenderItemText(ToolStripItemTextRenderEven...
method OnRenderToolStripBackground (line 363) | protected override void OnRenderToolStripBackground(ToolStripRenderE...
method OnRenderMenuItemBackground (line 373) | protected override void OnRenderMenuItemBackground(ToolStripItemRend...
method OnRenderImageMargin (line 388) | protected override void OnRenderImageMargin(ToolStripRenderEventArgs e)
method OnRenderSeparator (line 402) | protected override void OnRenderSeparator(ToolStripSeparatorRenderEv...
method OnRenderArrow (line 418) | protected override void OnRenderArrow(ToolStripArrowRenderEventArgs e)
FILE: MetroSet UI/Controls/MetroSetControlBox.cs
class MetroSetControlBox (line 39) | [ToolboxItem(true)]
method MetroSetControlBox (line 132) | public MetroSetControlBox()
method ApplyTheme (line 152) | private void ApplyTheme(Style style = Style.Light)
method OnPaint (line 475) | protected override void OnPaint(PaintEventArgs e)
method OnResize (line 534) | protected override void OnResize(EventArgs e)
method OnMouseMove (line 544) | protected override void OnMouseMove(MouseEventArgs e)
method OnMouseUp (line 585) | protected override void OnMouseUp(MouseEventArgs e)
method OnMouseLeave (line 611) | protected override void OnMouseLeave(EventArgs e)
method OnMouseDown (line 625) | protected override void OnMouseDown(MouseEventArgs e)
FILE: MetroSet UI/Controls/MetroSetDefaultButton.cs
class MetroSetDefaultButton (line 39) | [ToolboxItem(true)]
method MetroSetDefaultButton (line 141) | public MetroSetDefaultButton()
method OnPaint (line 159) | protected override void OnPaint(PaintEventArgs e)
method ApplyTheme (line 228) | private void ApplyTheme(Style style = Style.Light)
method OnMouseUp (line 561) | protected override void OnMouseUp(MouseEventArgs e)
method OnMouseDown (line 572) | protected override void OnMouseDown(MouseEventArgs e)
method OnMouseEnter (line 583) | protected override void OnMouseEnter(EventArgs e)
method OnMouseLeave (line 594) | protected override void OnMouseLeave(EventArgs e)
FILE: MetroSet UI/Controls/MetroSetDivider.cs
class MetroSetDivider (line 38) | [ToolboxItem(true)]
method MetroSetDivider (line 121) | public MetroSetDivider()
method ApplyTheme (line 140) | private void ApplyTheme(Style style = Style.Light)
method UpdateProperties (line 199) | private void UpdateProperties()
method OnPaint (line 208) | protected override void OnPaint(PaintEventArgs e)
method OnResize (line 293) | protected override void OnResize(EventArgs e)
FILE: MetroSet UI/Controls/MetroSetEllipse.cs
class MetroSetEllipse (line 39) | [ToolboxItem(true)]
method MetroSetEllipse (line 144) | public MetroSetEllipse()
method OnPaint (line 162) | protected override void OnPaint(PaintEventArgs e)
method ApplyTheme (line 240) | private void ApplyTheme(Style style = Style.Light)
method OnMouseUp (line 639) | protected override void OnMouseUp(MouseEventArgs e)
method OnMouseDown (line 650) | protected override void OnMouseDown(MouseEventArgs e)
method OnMouseEnter (line 661) | protected override void OnMouseEnter(EventArgs e)
method OnMouseLeave (line 672) | protected override void OnMouseLeave(EventArgs e)
FILE: MetroSet UI/Controls/MetroSetLabel.cs
class MetroSetLabel (line 38) | [ToolboxItem(true)]
method MetroSetLabel (line 119) | public MetroSetLabel()
method ApplyTheme (line 140) | private void ApplyTheme(Style style = Style.Light)
method UpdateProperties (line 188) | private void UpdateProperties()
FILE: MetroSet UI/Controls/MetroSetLink.cs
class MetroSetLink (line 38) | [ToolboxItem(true)]
method MetroSetLink (line 118) | public MetroSetLink()
method ApplyTheme (line 142) | private void ApplyTheme(Style style = Style.Light)
method UpdateProperties (line 226) | private void UpdateProperties()
method WndProc (line 239) | protected override void WndProc(ref Message m)
FILE: MetroSet UI/Controls/MetroSetListBox.cs
class MetroSetListBox (line 41) | [ToolboxItem(true)]
method MetroSetListBox (line 150) | public MetroSetListBox()
method SetDefaults (line 167) | private void SetDefaults()
method ApplyTheme (line 203) | private void ApplyTheme(Style style = Style.Light)
method UpdateProperties (line 294) | private void UpdateProperties()
method OnPaint (line 303) | protected override void OnPaint(PaintEventArgs e)
method AddItem (line 668) | public void AddItem(string newItem)
method AddItems (line 678) | public void AddItems(string[] newItems)
method RemoveItemAt (line 691) | public void RemoveItemAt(int index)
method RemoveItem (line 701) | public void RemoveItem(string item)
method IndexOf (line 712) | public int IndexOf(string value)
method Contains (line 722) | public bool Contains(object item)
method RemoveItems (line 731) | public void RemoveItems(string[] itemsToRemove)
method Clear (line 743) | public void Clear()
method OnSizeChanged (line 768) | protected override void OnSizeChanged(EventArgs e)
method OnMouseDown (line 780) | protected override void OnMouseDown(MouseEventArgs e)
method HandleScroll (line 814) | private void HandleScroll(object sender)
method InvalidateScroll (line 824) | private void InvalidateScroll(object sender, EventArgs e)
method VS_MouseDown (line 835) | private void VS_MouseDown(object sender, MouseEventArgs e)
method InvalidateLayout (line 843) | private void InvalidateLayout()
method OnMouseWheel (line 854) | protected override void OnMouseWheel(MouseEventArgs e)
method IsInputKey (line 865) | protected override bool IsInputKey(Keys keyData)
method OnMouseMove (line 903) | protected override void OnMouseMove(MouseEventArgs e)
method OnMouseLeave (line 923) | protected override void OnMouseLeave(EventArgs e)
method OnHandleCreated (line 935) | protected override void OnHandleCreated(EventArgs e)
method WndProc (line 946) | protected override void WndProc(ref Message m)
FILE: MetroSet UI/Controls/MetroSetNumeric.cs
class MetroSetNumeric (line 40) | [ToolboxItem(true)]
method MetroSetNumeric (line 134) | public MetroSetNumeric()
method OnPaint (line 161) | protected override void OnPaint(PaintEventArgs e)
method ApplyTheme (line 204) | private void ApplyTheme(Style style = Style.Light)
method UpdateProperties (line 283) | private void UpdateProperties()
method OnMouseMove (line 464) | protected override void OnMouseMove(MouseEventArgs e)
method OnClick (line 478) | protected override void OnClick(EventArgs e)
method WndProc (line 488) | protected override void WndProc(ref Message m)
method OnResize (line 504) | protected override void OnResize(EventArgs e)
method OnMouseDown (line 510) | protected override void OnMouseDown(MouseEventArgs e)
method OnMouseUp (line 523) | protected override void OnMouseUp(MouseEventArgs e)
method HoldTimer_Tick (line 528) | private void HoldTimer_Tick(object sender, EventArgs args)
method Revaluate (line 533) | private void Revaluate()
FILE: MetroSet UI/Controls/MetroSetPanel.cs
class MetroSetPanel (line 37) | [ToolboxItem(true)]
method MetroSetPanel (line 119) | public MetroSetPanel()
method ApplyTheme (line 141) | private void ApplyTheme(Style style = Style.Light)
method UpdateProperties (line 189) | private void UpdateProperties()
method OnPaint (line 198) | protected override void OnPaint(PaintEventArgs e)
FILE: MetroSet UI/Controls/MetroSetProgressBar.cs
class MetroSetProgressBar (line 38) | [ToolboxItem(true)]
method MetroSetProgressBar (line 131) | public MetroSetProgressBar()
method ApplyTheme (line 150) | private void ApplyTheme(Style style = Style.Light)
method UpdateProperties (line 222) | private void UpdateProperties()
method OnPaint (line 231) | protected override void OnPaint(PaintEventArgs e)
method RenewCurrentValue (line 455) | private void RenewCurrentValue()
FILE: MetroSet UI/Controls/MetroSetRadioButton.cs
class MetroSetRadioButton (line 43) | [ToolboxItem(true)]
method MetroSetRadioButton (line 133) | public MetroSetRadioButton()
method ApplyTheme (line 156) | private void ApplyTheme(Style style = Style.Light)
method UpdateProperties (line 222) | private void UpdateProperties()
method OnPaint (line 239) | protected override void OnPaint(PaintEventArgs e)
method OnClick (line 290) | protected override void OnClick(EventArgs e)
method OnResize (line 301) | protected override void OnResize(EventArgs e)
method UpdateState (line 311) | private void UpdateState()
method WndProc (line 329) | protected override void WndProc(ref Message m)
method Dispose (line 481) | public new void Dispose()
FILE: MetroSet UI/Controls/MetroSetRichTextBox.cs
class MetroSetRichTextBox (line 38) | [ToolboxItem(true)]
method MetroSetRichTextBox (line 139) | public MetroSetRichTextBox()
method EvaluateVars (line 153) | private void EvaluateVars()
method T_Defaults (line 158) | private void T_Defaults()
method OnPaint (line 192) | protected override void OnPaint(PaintEventArgs e)
method ApplyTheme (line 250) | private void ApplyTheme(Style style = Style.Light)
method UpdateProperties (line 331) | private void UpdateProperties()
method T_SelectionChanged (line 363) | private void T_SelectionChanged(object sender, EventArgs e)
method T_LinkClicked (line 373) | private void T_LinkClicked(object sender, EventArgs e)
method T_Protected (line 383) | private void T_Protected(object sender, EventArgs e)
method T_Leave (line 393) | public void T_Leave(object sender, EventArgs e)
method OnMouseLeave (line 403) | protected override void OnMouseLeave(EventArgs e)
method OnMouseUp (line 414) | protected override void OnMouseUp(MouseEventArgs e)
method T_MouseUp (line 426) | public void T_MouseUp(object sender, MouseEventArgs e)
method OnMouseEnter (line 441) | protected override void OnMouseEnter(EventArgs e)
method OnMouseHover (line 452) | protected override void OnMouseHover(EventArgs e)
method T_MouseHover (line 464) | public void T_MouseHover(object sender, EventArgs e)
method OnResize (line 474) | protected override void OnResize(EventArgs e)
method T_Enter (line 485) | public void T_Enter(object sender, EventArgs e)
method T_KeyDown (line 496) | private void T_KeyDown(object sender, KeyEventArgs e)
method T_TextChanged (line 512) | private void T_TextChanged(object sender, EventArgs e)
method OnCreateControl (line 522) | protected override void OnCreateControl()
method AppendText (line 533) | public void AppendText(string text)
method Undo (line 544) | public void Undo()
method GetLineFromCharIndex (line 560) | public int GetLineFromCharIndex(int index)
method GetPositionFromCharIndex (line 577) | public Point GetPositionFromCharIndex(int index)
method GetCharIndexFromPosition (line 587) | public int GetCharIndexFromPosition(Point pt)
method ClearUndo (line 597) | public void ClearUndo()
method Copy (line 607) | public void Copy()
method Cut (line 617) | public void Cut()
method SelectAll (line 627) | public void SelectAll()
method DeselectAll (line 637) | public void DeselectAll()
method Select (line 649) | public void Select(int start, int length)
method Paste (line 660) | public void Paste(DataFormats.Format clipFormat)
method LoadFile (line 671) | public void LoadFile(string path)
method LoadFile (line 683) | public void LoadFile(string path, RichTextBoxStreamType fileType)
method LoadFile (line 695) | public void LoadFile(System.IO.Stream data, RichTextBoxStreamType file...
method SaveFile (line 706) | public void SaveFile(string path)
method SaveFile (line 718) | public void SaveFile(string path, RichTextBoxStreamType fileType)
method SaveFile (line 730) | public void SaveFile(System.IO.Stream data, RichTextBoxStreamType file...
method CanPaste (line 742) | public bool CanPaste(DataFormats.Format clipFormat)
method Find (line 753) | public int Find(char[] characterSet)
method Find (line 766) | public int Find(char[] characterSet, int start)
method Find (line 780) | public int Find(char[] characterSet, int start, int ends)
method Find (line 792) | public int Find(string str)
method Find (line 807) | public int Find(string str, int start, int ends, RichTextBoxFinds opti...
method Find (line 820) | public int Find(string str, RichTextBoxFinds options)
method Find (line 834) | public int Find(string str, int start, RichTextBoxFinds options)
FILE: MetroSet UI/Controls/MetroSetScrollBar.cs
class MetroSetScrollBar (line 36) | [ToolboxItem(true)]
method MetroSetScrollBar (line 132) | public MetroSetScrollBar()
method SetDefaults (line 148) | void SetDefaults()
method ApplyTheme (line 164) | private void ApplyTheme(Style style = Style.Light)
method UpdateProperties (line 225) | public void UpdateProperties()
method OnPaint (line 234) | protected override void OnPaint(PaintEventArgs e)
method OnSizeChanged (line 453) | protected override void OnSizeChanged(EventArgs e)
method InvalidateLayout (line 461) | private void InvalidateLayout()
method InvalidatePosition (line 488) | private void InvalidatePosition()
method OnMouseDown (line 507) | protected override void OnMouseDown(MouseEventArgs e)
method OnMouseMove (line 538) | protected override void OnMouseMove(MouseEventArgs e)
method OnMouseUp (line 570) | protected override void OnMouseUp(MouseEventArgs e)
method OnMouseLeave (line 591) | protected override void OnMouseLeave(EventArgs e)
method CurrentValue (line 601) | private double CurrentValue()
FILE: MetroSet UI/Controls/MetroSetSwitch.cs
class MetroSetSwitch (line 40) | [ToolboxItem(true)]
method MetroSetSwitch (line 134) | public MetroSetSwitch()
method UpdateProperties (line 157) | private void UpdateProperties()
method ApplyTheme (line 166) | private void ApplyTheme(Style style = Style.Light)
method OnPaint (line 257) | protected override void OnPaint(PaintEventArgs e)
method OnClick (line 299) | protected override void OnClick(EventArgs e)
method OnResize (line 310) | protected override void OnResize(EventArgs e)
method WndProc (line 321) | protected override void WndProc(ref Message m)
method Dispose (line 522) | public new void Dispose()
FILE: MetroSet UI/Controls/MetroSetTabControl.cs
class MetroSetTabControl (line 41) | [ToolboxItem(true)]
method MetroSetTabControl (line 130) | public MetroSetTabControl()
method ApplyTheme (line 155) | private void ApplyTheme(Style style = Style.Light)
method UpdateProperties (line 214) | private void UpdateProperties()
method OnPaint (line 418) | protected override void OnPaint(PaintEventArgs e)
method OnMouseMove (line 485) | protected override void OnMouseMove(MouseEventArgs e)
method OnMouseLeave (line 502) | protected override void OnMouseLeave(EventArgs e)
method WndProc (line 513) | protected override void WndProc(ref Message m)
method DoSlideAnimate (line 526) | private void DoSlideAnimate(TabPage control1, TabPage control2, bool m...
method OnSelecting (line 570) | protected override void OnSelecting(TabControlCancelEventArgs e)
method OnDeselecting (line 582) | protected override void OnDeselecting(TabControlCancelEventArgs e)
method DoAnimationScrollRight (line 587) | private void DoAnimationScrollRight(Control control1, Control control2)
method InvalidateTabPage (line 635) | private void InvalidateTabPage(Color c)
FILE: MetroSet UI/Controls/MetroSetTextBox.cs
class MetroSetTextBox (line 40) | [ToolboxItem(true)]
method MetroSetTextBox (line 147) | public MetroSetTextBox()
method EvaluateVars (line 164) | private void EvaluateVars()
method T_Defaults (line 169) | private void T_Defaults()
method OnPaint (line 211) | protected override void OnPaint(PaintEventArgs e)
method ApplyTheme (line 272) | private void ApplyTheme(Style style = Style.Light)
method UpdateProperties (line 353) | public void UpdateProperties()
method T_Leave (line 372) | public void T_Leave(object sender, EventArgs e)
method T_KeyPress (line 378) | public void T_KeyPress(object sender, KeyPressEventArgs e)
method OnMouseLeave (line 388) | protected override void OnMouseLeave(EventArgs e)
method OnMouseUp (line 398) | protected override void OnMouseUp(MouseEventArgs e)
method OnMouseEnter (line 409) | protected override void OnMouseEnter(EventArgs e)
method OnMouseHover (line 420) | protected override void OnMouseHover(EventArgs e)
method T_MouseHover (line 432) | public void T_MouseHover(object sender, EventArgs e)
method OnResize (line 442) | protected override void OnResize(EventArgs e)
method OnGotFocus (line 451) | protected override void OnGotFocus(EventArgs e)
method T_Enter (line 462) | public void T_Enter(object sender, EventArgs e)
method T_KeyDown (line 474) | private void T_KeyDown(object sender, KeyEventArgs e)
method T_TextChanged (line 490) | private void T_TextChanged(object sender, EventArgs e)
method OnCreateControl (line 500) | protected override void OnCreateControl()
method AppendText (line 512) | public void AppendText(string text)
method Undo (line 521) | public void Undo()
method GetLineFromCharIndex (line 537) | public int GetLineFromCharIndex(int index)
method GetPositionFromCharIndex (line 548) | public Point GetPositionFromCharIndex(int index)
method GetCharIndexFromPosition (line 559) | public int GetCharIndexFromPosition(Point pt)
method ClearUndo (line 568) | public void ClearUndo()
method Copy (line 577) | public void Copy()
method Cut (line 586) | public void Cut()
method SelectAll (line 595) | public void SelectAll()
method DeselectAll (line 604) | public void DeselectAll()
method Paste (line 614) | public void Paste(string clipFormat)
method Select (line 625) | public void Select(int start, int length)
FILE: MetroSet UI/Controls/MetroSetTile.cs
class MetroSetTile (line 39) | [ToolboxItem(true)]
method MetroSetTile (line 141) | public MetroSetTile()
method OnPaint (line 158) | protected override void OnPaint(PaintEventArgs e)
method ApplyTheme (line 290) | private void ApplyTheme(Style style = Style.Light)
method OnMouseUp (line 663) | protected override void OnMouseUp(MouseEventArgs e)
method OnMouseDown (line 674) | protected override void OnMouseDown(MouseEventArgs e)
method OnMouseEnter (line 685) | protected override void OnMouseEnter(EventArgs e)
method OnMouseLeave (line 696) | protected override void OnMouseLeave(EventArgs e)
FILE: MetroSet UI/Controls/MetroSetTrackBar.cs
class MetroSetTrackBar (line 38) | [ToolboxItem(true)]
method MetroSetTrackBar (line 134) | public MetroSetTrackBar()
method ApplyTheme (line 157) | private void ApplyTheme(Style style = Style.Light)
method UpdateProperties (line 230) | private void UpdateProperties()
method OnPaint (line 239) | protected override void OnPaint(PaintEventArgs e)
method OnMouseMove (line 458) | protected override void OnMouseMove(MouseEventArgs e)
method OnMouseDown (line 471) | protected override void OnMouseDown(MouseEventArgs e)
method OnMouseUp (line 486) | protected override void OnMouseUp(MouseEventArgs e)
method OnKeyDown (line 496) | protected override void OnKeyDown(KeyEventArgs e)
method OnResize (line 521) | protected override void OnResize(EventArgs e)
method MoveTrack (line 533) | private void MoveTrack()
method RenewCurrentValue (line 541) | public void RenewCurrentValue()
FILE: MetroSet UI/Design/MetroSetBadgeDesigner.cs
class MetroSetBadgeDesigner (line 31) | internal class MetroSetBadgeDesigner : ControlDesigner
method PostFilterProperties (line 39) | protected override void PostFilterProperties(System.Collections.IDicti...
FILE: MetroSet UI/Design/MetroSetButtonDesigner.cs
class MetroSetButtonDesigner (line 31) | internal class MetroSetButtonDesigner : ControlDesigner
method PostFilterProperties (line 41) | protected override void PostFilterProperties(System.Collections.IDicti...
FILE: MetroSet UI/Design/MetroSetCheckBoxDesigner.cs
class MetroSetCheckBoxDesigner (line 31) | internal class MetroSetCheckBoxDesigner : ControlDesigner
FILE: MetroSet UI/Design/MetroSetControBoxDesigner.cs
class MetroSetControBoxDesigner (line 31) | internal class MetroSetControBoxDesigner : ControlDesigner
FILE: MetroSet UI/Design/MetroSetDefaultButtonDesigner.cs
class MetroSetDefaultButtonDesigner (line 31) | internal class MetroSetDefaultButtonDesigner : ControlDesigner
method PostFilterProperties (line 41) | protected override void PostFilterProperties(System.Collections.IDicti...
FILE: MetroSet UI/Design/MetroSetDividerDesigner.cs
class MetroSetDividerDesigner (line 31) | internal class MetroSetDividerDesigner : ControlDesigner
method PostFilterProperties (line 39) | protected override void PostFilterProperties(System.Collections.IDicti...
FILE: MetroSet UI/Design/MetroSetEllipseDesigner.cs
class MetroSetEllipseDesigner (line 31) | internal class MetroSetEllipseDesigner : ControlDesigner
method PostFilterProperties (line 41) | protected override void PostFilterProperties(System.Collections.IDicti...
FILE: MetroSet UI/Design/MetroSetLabelDesigner.cs
class MetroSetLabelDesigner (line 31) | internal class MetroSetLabelDesigner : ControlDesigner
FILE: MetroSet UI/Design/MetroSetLinkDesigner.cs
class MetroSetLinkDesigner (line 31) | internal class MetroSetLinkDesigner : ControlDesigner
FILE: MetroSet UI/Design/MetroSetListBoxDesigner.cs
class MetroSetListBoxDesigner (line 31) | internal class MetroSetListBoxDesigner : ControlDesigner
method PostFilterProperties (line 41) | protected override void PostFilterProperties(System.Collections.IDicti...
FILE: MetroSet UI/Design/MetroSetNumericDesigner.cs
class MetroSetNumericDesigner (line 31) | internal class MetroSetNumericDesigner : ControlDesigner
FILE: MetroSet UI/Design/MetroSetProgressBarDesigner.cs
class MetroSetProgressBarDesigner (line 31) | internal class MetroSetProgressBarDesigner : ControlDesigner
FILE: MetroSet UI/Design/MetroSetRadioButtonDesigner.cs
class MetroSetRadioButtonDesigner (line 31) | internal class MetroSetRadioButtonDesigner : ControlDesigner
FILE: MetroSet UI/Design/MetroSetRichTextBoxDesigner.cs
class MetroSetRichTextBoxDesigner (line 31) | internal class MetroSetRichTextBoxDesigner : ControlDesigner
FILE: MetroSet UI/Design/MetroSetScrollBarDesigner.cs
class MetroSetScrollBarDesigner (line 31) | internal class MetroSetScrollBarDesigner : ControlDesigner
method PostFilterProperties (line 41) | protected override void PostFilterProperties(System.Collections.IDicti...
FILE: MetroSet UI/Design/MetroSetSwitchDesigner.cs
class MetroSetSwitchDesigner (line 31) | internal class MetroSetSwitchDesigner : ControlDesigner
FILE: MetroSet UI/Design/MetroSetTabControlDesigner.cs
class MetroSetTabControlDesigner (line 43) | public class MetroSetTabControlDesigner : ParentControlDesigner
method Initialize (line 96) | public override void Initialize(IComponent component)
method PostFilterProperties (line 112) | protected override void PostFilterProperties(IDictionary properties)
method WndProc (line 126) | protected override void WndProc(ref Message m)
method GetHitTest (line 137) | protected override bool GetHitTest(Point point)
method Dispose (line 167) | protected override void Dispose(bool disposing)
method OnAddTab (line 184) | private void OnAddTab(Object sender, EventArgs e)
method OnRemoveTab (line 202) | private void OnRemoveTab(Object sender, EventArgs e)
method OnComponentChanged (line 217) | private void OnComponentChanged(object sender, ComponentChangedEventAr...
FILE: MetroSet UI/Design/MetroSetTabpageDesigner.cs
class MetroSetTabPageDesigner (line 30) | internal class MetroSetTabPageDesigner : ScrollableControlDesigner
method PostFilterProperties (line 38) | protected override void PostFilterProperties(System.Collections.IDicti...
FILE: MetroSet UI/Design/MetroSetTextBoxDesigner.cs
class MetroSetTextBoxDesigner (line 31) | internal class MetroSetTextBoxDesigner : ControlDesigner
FILE: MetroSet UI/Design/MetroSetTileDesigner.cs
class MetroSetTileDesigner (line 31) | internal class MetroSetTileDesigner : ControlDesigner
method PostFilterProperties (line 41) | protected override void PostFilterProperties(System.Collections.IDicti...
FILE: MetroSet UI/Design/MetroSetToolTipDesigner.cs
class MetroSetToolTipDesigner (line 30) | internal class MetroSetToolTipDesigner : ComponentDesigner
FILE: MetroSet UI/Design/MetroSetTrackBarDesigner.cs
class MetroSetTrackBarDesigner (line 31) | internal class MetroSetTrackBarDesigner : ControlDesigner
method PostFilterProperties (line 41) | protected override void PostFilterProperties(System.Collections.IDicti...
FILE: MetroSet UI/Design/StyleManagerDesigner.cs
class StyleManagerDesigner (line 30) | public class StyleManagerDesigner : ComponentDesigner
FILE: MetroSet UI/Enums/BageAlign.cs
type BadgeAlign (line 27) | public enum BadgeAlign
FILE: MetroSet UI/Enums/CheckState.cs
type CheckState (line 27) | public enum CheckState
FILE: MetroSet UI/Enums/DividerStyle.cs
type DividerStyle (line 27) | public enum DividerStyle
FILE: MetroSet UI/Enums/EasingType.cs
type EasingType (line 4) | public enum EasingType
FILE: MetroSet UI/Enums/MouseSates.cs
type MouseMode (line 30) | public enum MouseMode
FILE: MetroSet UI/Enums/ProgressOrientation.cs
type ProgressOrientation (line 27) | public enum ProgressOrientation
FILE: MetroSet UI/Enums/ScrollOrientation.cs
type ScrollOrientate (line 27) | public enum ScrollOrientate
FILE: MetroSet UI/Enums/SignStyle.cs
type SignStyle (line 27) | public enum SignStyle
FILE: MetroSet UI/Enums/Style.cs
type Style (line 27) | public enum Style
FILE: MetroSet UI/Enums/TabStyle.cs
type TabStyle (line 27) | public enum TabStyle
FILE: MetroSet UI/Enums/TextAlign.cs
type TextAlign (line 27) | public enum TextAlign
FILE: MetroSet UI/Enums/TileAlign.cs
type TileAlign (line 27) | public enum TileAlign
FILE: MetroSet UI/Extensions/Global Font.cs
class Global_Font (line 5) | public class Global_Font
method Regular (line 13) | public static Font Regular(float size)
method Normal (line 24) | public static Font Normal(string fnt, float size)
method Light (line 34) | public static Font Light(float size)
method Italic (line 44) | public static Font Italic(float size)
method SemiBold (line 54) | public static Font SemiBold(float size)
method Bold (line 64) | public static Font Bold(float size)
FILE: MetroSet UI/Extensions/GraphicsQuality.cs
class GraphicsQuality (line 9) | public class GraphicsQuality
method SetQuality (line 20) | public void SetQuality(Graphics e,
FILE: MetroSet UI/Extensions/Methods.cs
class Methods (line 32) | internal class Methods
method DrawImageFromBase64 (line 40) | public void DrawImageFromBase64(Graphics graphics, string base64Image,...
method DrawImageWithColor (line 59) | public void DrawImageWithColor(Graphics G, Rectangle r, Image image, C...
method DrawImageWithColor (line 89) | public void DrawImageWithColor(Graphics G, Rectangle r, string image, ...
method SetPosition (line 117) | public StringFormat SetPosition(StringAlignment horizontal = StringAli...
method ColorToMatrix (line 132) | public float[][] ColorToMatrix(float alpha, Color c)
method DrawImageWithTransparency (line 151) | public void DrawImageWithTransparency(Graphics G, float alpha, Image i...
method ImageFromBase64 (line 167) | public Image ImageFromBase64(string base64Image)
method RoundRec (line 187) | public GraphicsPath RoundRec(Rectangle r, int curve, bool topLeft = tr...
method RoundRec (line 242) | public GraphicsPath RoundRec(int x, int y, int width, int height, int ...
FILE: MetroSet UI/Extensions/MetroSetFonts.cs
class MetroSetFonts (line 32) | public class MetroSetFonts
method SemiLight (line 40) | public static Font SemiLight(float size)
method Light (line 50) | public static Font Light(float size)
method SemiBold (line 60) | public static Font SemiBold(float size)
method Bold (line 70) | public static Font Bold(float size)
method Regular (line 81) | public static Font Regular(float size)
method UIRegular (line 86) | public static Font UIRegular(float size)
method GetFont (line 97) | public static Font GetFont(byte[] fontbyte, float size)
FILE: MetroSet UI/Extensions/Utilites.cs
class Utilites (line 33) | internal class Utilites
method GlowBrush (line 43) | public static PathGradientBrush GlowBrush(Color CenterColor, Color Sur...
method SolidBrushRGBColor (line 63) | public SolidBrush SolidBrushRGBColor(int R, int G, int B, int A = 0)
method SolidBrushHTMlColor (line 73) | public SolidBrush SolidBrushHTMlColor(string C_WithoutHash)
method PenRGBColor (line 87) | public Pen PenRGBColor(int red, int green, int blue, int alpha, float ...
method PenHTMlColor (line 98) | public Pen PenHTMlColor(string colorWithoutHash, float size = 1)
method HexColor (line 108) | public Color HexColor(string hexColor)
method GetAlphaHexColor (line 119) | public Color GetAlphaHexColor(int alpha, string hexColor)
method InitControlHandle (line 133) | public void InitControlHandle(Control ctrl)
method SmoothCursor (line 148) | public void SmoothCursor(ref Message message)
FILE: MetroSet UI/Forms/MetroSetForm.cs
class MetroSetForm (line 42) | [ToolboxItem(false)]
method MetroSetForm (line 54) | protected MetroSetForm()
method OnPaint (line 83) | protected override void OnPaint(PaintEventArgs e)
method ResizeForm (line 537) | private void ResizeForm(ref Message message)
method ApplyTheme (line 712) | internal void ApplyTheme(Style style = Style.Light)
method UpdateProperties (line 791) | private void UpdateProperties()
method WndProc (line 804) | protected override void WndProc(ref Message message)
method OnHandleCreated (line 821) | protected override void OnHandleCreated(EventArgs e)
method OnLoad (line 846) | protected override void OnLoad(EventArgs e)
method OnClosing (line 858) | protected override void OnClosing(CancelEventArgs e)
FILE: MetroSet UI/Forms/MetroSetMessageBox.cs
class MetroSetMessageBox (line 34) | public class MetroSetMessageBox : MetroSetForm
method MetroSetMessageBox (line 106) | private MetroSetMessageBox()
method EvaluateControls (line 121) | private void EvaluateControls()
method AddControls (line 141) | private void AddControls()
method EvaluateRetryButton (line 155) | private void EvaluateRetryButton()
method EvaluateCancelButton (line 169) | private void EvaluateCancelButton()
method EvaluateNoButton (line 183) | private void EvaluateNoButton()
method EvaluateYesButton (line 197) | private void EvaluateYesButton()
method EvaluateOkeyButton (line 211) | private void EvaluateOkeyButton()
method EvaluateAbortButton (line 225) | private void EvaluateAbortButton()
method EvaluateIgnoreButton (line 240) | private void EvaluateIgnoreButton()
method RetryButton_Click (line 260) | private void RetryButton_Click(object sender, EventArgs e)
method CancelButton_Click (line 270) | private void CancelButton_Click(object sender, EventArgs e)
method NoButton_Click (line 280) | private void NoButton_Click(object sender, EventArgs e)
method YesButton_Click (line 290) | private void YesButton_Click(object sender, EventArgs e)
method OkButton_Click (line 300) | private void OkButton_Click(object sender, EventArgs e)
method AbortButton_Click (line 310) | private void AbortButton_Click(object sender, EventArgs e)
method IgnoreButton_Click (line 320) | private void IgnoreButton_Click(object sender, EventArgs e)
method Show (line 331) | public static DialogResult Show(MetroSetForm form, string content)
method Show (line 343) | public static DialogResult Show(MetroSetForm form, string content, str...
method Show (line 356) | public static DialogResult Show(MetroSetForm form, string content, str...
method Show (line 370) | public static DialogResult Show(MetroSetForm form, string content, str...
method ShowDialog (line 425) | protected new DialogResult ShowDialog()
method OnPaint (line 489) | protected override void OnPaint(PaintEventArgs e)
FILE: MetroSet UI/Interfaces/IMetroForm.cs
type IMetroForm (line 30) | public interface IMetroForm
FILE: MetroSet UI/Interfaces/IMetroSetControl.cs
type IMetroSetControl (line 30) | public interface IMetroSetControl
FILE: MetroSet UI/Interfaces/MetroSetControl.cs
type MetroSetControl (line 6) | public interface MetroSetControl
FILE: MetroSet UI/Interfaces/MetroSetForm.cs
type iMetroSetForm (line 6) | public interface iMetroSetForm
FILE: MetroSet UI/Native/User32.cs
class User32 (line 31) | internal class User32
type TCHITTESTINFO (line 42) | [StructLayout(LayoutKind.Sequential)]
method TCHITTESTINFO (line 48) | private TCHITTESTINFO(TabControlHitTest hitTest)
method TCHITTESTINFO (line 54) | public TCHITTESTINFO(Point point, TabControlHitTest hitTest)
method TCHITTESTINFO (line 60) | public TCHITTESTINFO(int x, int y, TabControlHitTest hitTest)
type AnimateWindowFlags (line 74) | public enum AnimateWindowFlags : uint
type TabControlHitTest (line 87) | [Flags]
method AnimateWindow (line 116) | [DllImport("user32")]
method AnimateWindow (line 119) | internal void AnimateWindow(IntPtr handle, int v, object p)
method SendMessage (line 124) | [DllImport("user32.dll", CharSet = CharSet.Auto)]
method LoadCursor (line 127) | [DllImport("user32.dll", CharSet = CharSet.Auto, SetLastError = true)]
method SetCursor (line 130) | [DllImport("user32.dll", CharSet = CharSet.Auto)]
type Msgs (line 161) | internal enum Msgs
FILE: MetroSet UI/Properties/Resources.Designer.cs
class Resources (line 22) | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resource...
method Resources (line 31) | [global::System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Mic...
FILE: MetroSet UI/Properties/Settings.Designer.cs
class Settings (line 14) | [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
Condensed preview — 129 files, each showing path, character count, and a content snippet. Download the .json file or copy for the full structured content (1,014K chars).
[
{
"path": ".gitattributes",
"chars": 2519,
"preview": "###############################################################################\n# Set default behavior to automatically "
},
{
"path": ".gitignore",
"chars": 3877,
"preview": "## Ignore Visual Studio temporary files, build results, and\n## files generated by popular Visual Studio add-ons.\n\n# User"
},
{
"path": "LICENSE",
"chars": 1132,
"preview": "MIT License\n\nMetroSet UI - MetroSet UI Framewrok\n\nCopyright (c) 2017 Narwin, https://github.com/N-a-r-w-i-n\n\nPermission "
},
{
"path": "MetroSet Theme.xml",
"chars": 9275,
"preview": "<?xml version=\"1.0\" encoding=\"utf-8\"?>\n<MetroSetTheme>\n <Theme>\n <Name>Custom Theme</Name>\n <Author>Narwin</Autho"
},
{
"path": "MetroSet UI/Actions/MetroSetBadgeActionList.cs",
"chars": 3859,
"preview": "/*\n * MetroSet UI - MetroSet UI Framework\n * \n * The MIT License (MIT)\n * Copyright (c) 2017 Narwin, https://github.com"
},
{
"path": "MetroSet UI/Actions/MetroSetButtonActionList.cs",
"chars": 3308,
"preview": "/*\n * MetroSet UI - MetroSet UI Framework\n * \n * The MIT License (MIT)\n * Copyright (c) 2017 Narwin, https://github.com"
},
{
"path": "MetroSet UI/Actions/MetroSetCheckBoxActionList.cs",
"chars": 3394,
"preview": "/*\n * MetroSet UI - MetroSet UI Framework\n * \n * The MIT License (MIT)\n * Copyright (c) 2017 Narwin, https://github.com"
},
{
"path": "MetroSet UI/Actions/MetroSetControlBoxActionList.cs",
"chars": 3528,
"preview": "using System.ComponentModel;\nusing System.ComponentModel.Design;\nusing MetroSet_UI.Components;\nusing MetroSet_UI.Contro"
},
{
"path": "MetroSet UI/Actions/MetroSetDefaultButtonActionList.cs",
"chars": 3361,
"preview": "/*\n * MetroSet UI - MetroSet UI Framework\n * \n * The MIT License (MIT)\n * Copyright (c) 2017 Narwin, https://github.com"
},
{
"path": "MetroSet UI/Actions/MetroSetDividerActionList.cs",
"chars": 3363,
"preview": "/*\n * MetroSet UI - MetroSet UI Framework\n * \n * The MIT License (MIT)\n * Copyright (c) 2017 Narwin, https://github.com"
},
{
"path": "MetroSet UI/Actions/MetroSetEllipseActionList.cs",
"chars": 4116,
"preview": "/*\n * MetroSet UI - MetroSet UI Framework\n * \n * The MIT License (MIT)\n * Copyright (c) 2017 Narwin, https://github.com"
},
{
"path": "MetroSet UI/Actions/MetroSetLabelActionList.cs",
"chars": 3311,
"preview": "using System.ComponentModel;\nusing System.ComponentModel.Design;\nusing System.Drawing;\nusing MetroSet_UI.Components;\nus"
},
{
"path": "MetroSet UI/Actions/MetroSetLinkActionList.cs",
"chars": 5009,
"preview": "/*\n * MetroSet UI - MetroSet UI Framework\n * \n * The MIT License (MIT)\n * Copyright (c) 2017 Narwin, https://github.com"
},
{
"path": "MetroSet UI/Actions/MetroSetListBoxActionList.cs",
"chars": 4855,
"preview": "using System.ComponentModel;\nusing System.ComponentModel.Design;\nusing MetroSet_UI.Child;\nusing MetroSet_UI.Components;"
},
{
"path": "MetroSet UI/Actions/MetroSetNumericActionList.cs",
"chars": 3549,
"preview": "using System.ComponentModel;\nusing System.ComponentModel.Design;\nusing MetroSet_UI.Components;\nusing MetroSet_UI.Contro"
},
{
"path": "MetroSet UI/Actions/MetroSetProgressBarActionList.cs",
"chars": 3648,
"preview": "/*\n * MetroSet UI - MetroSet UI Framework\n * \n * The MIT License (MIT)\n * Copyright (c) 2017 Narwin, https://github.com"
},
{
"path": "MetroSet UI/Actions/MetroSetRadiobuttonActionList.cs",
"chars": 3613,
"preview": "/*\n * MetroSet UI - MetroSet UI Framework\n * \n * The MIT License (MIT)\n * Copyright (c) 2017 Narwin, https://github.com"
},
{
"path": "MetroSet UI/Actions/MetroSetRichTextBoxActionList.cs",
"chars": 4036,
"preview": "/*\n * MetroSet UI - MetroSet UI Framework\n * \n * The MIT License (MIT)\n * Copyright (c) 2017 Narwin, https://github.com"
},
{
"path": "MetroSet UI/Actions/MetroSetScrollBarActionList.cs",
"chars": 4533,
"preview": "using System.ComponentModel;\nusing System.ComponentModel.Design;\nusing MetroSet_UI.Components;\nusing MetroSet_UI.Contro"
},
{
"path": "MetroSet UI/Actions/MetroSetSwitchActionList.cs",
"chars": 3344,
"preview": "/*\n * MetroSet UI - MetroSet UI Framework\n * \n * The MIT License (MIT)\n * Copyright (c) 2017 Narwin, https://github.com"
},
{
"path": "MetroSet UI/Actions/MetroSetTextBoxActionList.cs",
"chars": 4872,
"preview": "/*\n * MetroSet UI - MetroSet UI Framework\n * \n * The MIT License (MIT)\n * Copyright (c) 2017 Narwin, https://github.com"
},
{
"path": "MetroSet UI/Actions/MetroSetTileActionList.cs",
"chars": 3584,
"preview": "/*\n * MetroSet UI - MetroSet UI Framework\n * \n * The MIT License (MIT)\n * Copyright (c) 2017 Narwin, https://github.com"
},
{
"path": "MetroSet UI/Actions/MetroSetToolTipActionList.cs",
"chars": 4934,
"preview": "/*\n * MetroSet UI - MetroSet UI Framework\n * \n * The MIT License (MIT)\n * Copyright (c) 2017 Narwin, https://github.com"
},
{
"path": "MetroSet UI/Actions/MetroSetTrackBarActionList.cs",
"chars": 3684,
"preview": "/*\n * MetroSet UI - MetroSet UI Framework\n * \n * The MIT License (MIT)\n * Copyright (c) 2017 Narwin, https://github.com"
},
{
"path": "MetroSet UI/Actions/StyleManagerActionList.cs",
"chars": 3165,
"preview": "using System.ComponentModel;\nusing System.ComponentModel.Design;\nusing System.Drawing.Design;\nusing System.Windows.Form"
},
{
"path": "MetroSet UI/Animates/Animate.cs",
"chars": 4097,
"preview": "using System;\nusing System.Windows.Forms;\nusing MetroSet_UI.Enums;\n\nnamespace MetroSet_UI.Animates\n{\n\t// interpolation "
},
{
"path": "MetroSet UI/Animates/ColorAnimate.cs",
"chars": 567,
"preview": "using System.Drawing;\n\nnamespace MetroSet_UI.Animates\n{\n public class ColorAnimate : Animate<Color>\n {\n pu"
},
{
"path": "MetroSet UI/Animates/DoubleAnimat.cs",
"chars": 215,
"preview": "namespace MetroSet_UI.Animates\n{\n public class DoubleAnimate : Animate<double>\n {\n public override double "
},
{
"path": "MetroSet UI/Animates/IntAnimate.cs",
"chars": 212,
"preview": "namespace MetroSet_UI.Animates\n{\n public class IntAnimate : Animate<int>\n {\n public override int Value => "
},
{
"path": "MetroSet UI/Animates/Interpolation.cs",
"chars": 3285,
"preview": "using System;\nusing MetroSet_UI.Enums;\n\nnamespace MetroSet_UI.Animates\n{\n\t// for animate\n\tpublic class Interpolation\n\t{"
},
{
"path": "MetroSet UI/Animates/PointFAnimate.cs",
"chars": 384,
"preview": "using System.Drawing;\n\nnamespace MetroSet_UI.Animates\n{\n public class PointFAnimate : Animate<PointF>\n {\n "
},
{
"path": "MetroSet UI/Animates/SizeFAnimate.cs",
"chars": 398,
"preview": "using System.Drawing;\n\nnamespace MetroSet_UI.Animates\n{\n public class SizeFAnimate : Animate<SizeF>\n {\n pu"
},
{
"path": "MetroSet UI/Child/MetroSetItemCollection.cs",
"chars": 3669,
"preview": "/*\n* MetroSet UI - MetroSet UI Framework\n* \n* The MIT License (MIT)\n* Copyright (c) 2017 Narwin, https://github.com/N-a"
},
{
"path": "MetroSet UI/Child/MetroSetSetTabPage.cs",
"chars": 6019,
"preview": "/*\n * MetroSet UI - MetroSet UI Framework\n *\n * The MIT License (MIT)\n * Copyright (c) 2017 Narwin, https://github.com/"
},
{
"path": "MetroSet UI/Child/MetroSetTabPageCollectionEditor.cs",
"chars": 1756,
"preview": "/*\n* MetroSet UI - MetroSet UI Framework\n* \n* The MIT License (MIT)\n* Copyright (c) 2017 Narwin, https://github.com/N-a"
},
{
"path": "MetroSet UI/Child/MetroSetToolStripMenuItem.cs",
"chars": 1842,
"preview": "/*\n* MetroSet UI - MetroSet UI Framework\n* \n* The MIT License (MIT)\n* Copyright (c) 2017 Narwin, https://github.com/N-a"
},
{
"path": "MetroSet UI/Components/MetroSetSetToolTip.cs",
"chars": 9274,
"preview": "/*\n * MetroSet UI - MetroSet UI Framework\n * \n * The MIT License (MIT)\n * Copyright (c) 2017 Narwin, https://github.com"
},
{
"path": "MetroSet UI/Components/StyleManager.cs",
"chars": 18714,
"preview": "/*\n * MetroSet UI - MetroSet UI Framework\n * \n * The MIT License (MIT)\n * Copyright (c) 2017 Narwin, https://github.com"
},
{
"path": "MetroSet UI/Controls/MetroSetBadge.cs",
"chars": 22197,
"preview": "/*\n* MetroSet UI - MetroSet UI Framework\n* \n* The MIT License (MIT)\n* Copyright (c) 2017 Narwin, https://github.com/N-a"
},
{
"path": "MetroSet UI/Controls/MetroSetButton.cs",
"chars": 15783,
"preview": "/*\n * MetroSet UI - MetroSet UI Framework\n * \n * The MIT License (MIT)\n * Copyright (c) 2017 Narwin, https://github.com"
},
{
"path": "MetroSet UI/Controls/MetroSetCheckBox.cs",
"chars": 12992,
"preview": "/*\n* MetroSet UI - MetroSet UI Framework\n* \n* The MIT License (MIT)\n* Copyright (c) 2017 Narwin, https://github.com/N-a"
},
{
"path": "MetroSet UI/Controls/MetroSetComboBox.cs",
"chars": 13045,
"preview": "/*\n* MetroSet UI - MetroSet UI Framework\n* \n* The MIT License (MIT)\n* Copyright (c) 2017 Narwin, https://github.com/N-a"
},
{
"path": "MetroSet UI/Controls/MetroSetContextMenuStrip.cs",
"chars": 12677,
"preview": "/*\n* MetroSet UI - MetroSet UI Framework\n* \n* The MIT License (MIT)\n* Copyright (c) 2017 Narwin, https://github.com/N-a"
},
{
"path": "MetroSet UI/Controls/MetroSetControlBox.cs",
"chars": 17169,
"preview": "/*\n* MetroSet UI - MetroSet UI Framework\n* \n* The MIT License (MIT)\n* Copyright (c) 2017 Narwin, https://github.com/N-a"
},
{
"path": "MetroSet UI/Controls/MetroSetDefaultButton.cs",
"chars": 15968,
"preview": "/*\n * MetroSet UI - MetroSet UI Framework\n * \n * The MIT License (MIT)\n * Copyright (c) 2017 Narwin, https://github.com"
},
{
"path": "MetroSet UI/Controls/MetroSetDivider.cs",
"chars": 7765,
"preview": "/*\n* MetroSet UI - MetroSet UI Framework\n* \n* The MIT License (MIT)\n* Copyright (c) 2017 Narwin, https://github.com/N-a"
},
{
"path": "MetroSet UI/Controls/MetroSetEllipse.cs",
"chars": 17661,
"preview": "/*\n* MetroSet UI - MetroSet UI Framework\n* \n* The MIT License (MIT)\n* Copyright (c) 2017 Narwin, https://github.com/N-a"
},
{
"path": "MetroSet UI/Controls/MetroSetLabel.cs",
"chars": 6088,
"preview": "/*\n* MetroSet UI - MetroSet UI Framework\n* \n* The MIT License (MIT)\n* Copyright (c) 2017 Narwin, https://github.com/N-a"
},
{
"path": "MetroSet UI/Controls/MetroSetLink.cs",
"chars": 8931,
"preview": "/*\n* MetroSet UI - MetroSet UI Framework\n* \n* The MIT License (MIT)\n* Copyright (c) 2017 Narwin, https://github.com/N-a"
},
{
"path": "MetroSet UI/Controls/MetroSetListBox.cs",
"chars": 25376,
"preview": "/*\n* MetroSet UI - MetroSet UI Framework\n*\n* The MIT License (MIT)\n* Copyright (c) 2017 Narwin, https://github.com/N-a-"
},
{
"path": "MetroSet UI/Controls/MetroSetNumeric.cs",
"chars": 13885,
"preview": "/*\n* MetroSet UI - MetroSet UI Framework\n* \n* The MIT License (MIT)\n* Copyright (c) 2017 Narwin, https://github.com/N-a"
},
{
"path": "MetroSet UI/Controls/MetroSetPanel.cs",
"chars": 7714,
"preview": "/*\n* MetroSet UI - MetroSet UI Framework\n* \n* The MIT License (MIT)\n* Copyright (c) 2017 Narwin, https://github.com/N-a"
},
{
"path": "MetroSet UI/Controls/MetroSetProgressBar.cs",
"chars": 12007,
"preview": "/*\n * MetroSet UI - MetroSet UI Framework\n * \n * The MIT License (MIT)\n * Copyright (c) 2017 Narwin, https://github.com"
},
{
"path": "MetroSet UI/Controls/MetroSetRadioButton.cs",
"chars": 12660,
"preview": "/*\n* MetroSet UI - MetroSet UI Framework\n* \n* The MIT License (MIT)\n* Copyright (c) 2017 Narwin, https://github.com/N-a"
},
{
"path": "MetroSet UI/Controls/MetroSetRichTextBox.cs",
"chars": 31483,
"preview": "/*\n* MetroSet UI - MetroSet UI Framework\n* \n* The MIT License (MIT)\n* Copyright (c) 2017 Narwin, https://github.com/N-a"
},
{
"path": "MetroSet UI/Controls/MetroSetScrollBar.cs",
"chars": 15371,
"preview": "/*\n* MetroSet UI - MetroSet UI Framework\n* \n* The MIT License (MIT)\n* Copyright (c) 2017 Narwin, https://github.com/N-a"
},
{
"path": "MetroSet UI/Controls/MetroSetSwitch.cs",
"chars": 13620,
"preview": "/*\n* MetroSet UI - MetroSet UI Framework\n* \n* The MIT License (MIT)\n* Copyright (c) 2017 Narwin, https://github.com/N-a"
},
{
"path": "MetroSet UI/Controls/MetroSetTabControl.cs",
"chars": 16705,
"preview": "/*\n * MetroSet UI - MetroSet UI Framework\n *\n * The MIT License (MIT)\n * Copyright (c) 2017 Narwin, https://github.com/"
},
{
"path": "MetroSet UI/Controls/MetroSetTextBox.cs",
"chars": 25265,
"preview": "/*\n* MetroSet UI - MetroSet UI Framework\n* \n* The MIT License (MIT)\n* Copyright (c) 2017 Narwin, https://github.com/N-a"
},
{
"path": "MetroSet UI/Controls/MetroSetTile.cs",
"chars": 18240,
"preview": "/*\n* MetroSet UI - MetroSet UI Framework\n* \n* The MIT License (MIT)\n* Copyright (c) 2017 Narwin, https://github.com/N-a"
},
{
"path": "MetroSet UI/Controls/MetroSetTrackBar.cs",
"chars": 13911,
"preview": "/*\n* MetroSet UI - MetroSet UI Framework\n* \n* The MIT License (MIT)\n* Copyright (c) 2017 Narwin, https://github.com/N-a"
},
{
"path": "MetroSet UI/Design/MetroSetBadgeDesigner.cs",
"chars": 2245,
"preview": "/*\n * MetroSet UI - MetroSet UI Framework\n * \n * The MIT License (MIT)\n * Copyright (c) 2017 Narwin, https://github.com"
},
{
"path": "MetroSet UI/Design/MetroSetButtonDesigner.cs",
"chars": 2249,
"preview": "/*\n * MetroSet UI - MetroSet UI Framework\n * \n * The MIT License (MIT)\n * Copyright (c) 2017 Narwin, https://github.com"
},
{
"path": "MetroSet UI/Design/MetroSetCheckBoxDesigner.cs",
"chars": 1769,
"preview": "/*\n * MetroSet UI - MetroSet UI Framework\n * \n * The MIT License (MIT)\n * Copyright (c) 2017 Narwin, https://github.com"
},
{
"path": "MetroSet UI/Design/MetroSetControBoxDesigner.cs",
"chars": 1772,
"preview": "/*\n * MetroSet UI - MetroSet UI Framework\n * \n * The MIT License (MIT)\n * Copyright (c) 2017 Narwin, https://github.com"
},
{
"path": "MetroSet UI/Design/MetroSetDefaultButtonDesigner.cs",
"chars": 2263,
"preview": "/*\n * MetroSet UI - MetroSet UI Framework\n * \n * The MIT License (MIT)\n * Copyright (c) 2017 Narwin, https://github.com"
},
{
"path": "MetroSet UI/Design/MetroSetDividerDesigner.cs",
"chars": 2213,
"preview": "/*\n * MetroSet UI - MetroSet UI Framework\n *\n * The MIT License (MIT)\n * Copyright (c) 2017 Narwin, https://github.com/"
},
{
"path": "MetroSet UI/Design/MetroSetEllipseDesigner.cs",
"chars": 2251,
"preview": "/*\n * MetroSet UI - MetroSet UI Framework\n * \n * The MIT License (MIT)\n * Copyright (c) 2017 Narwin, https://github.com"
},
{
"path": "MetroSet UI/Design/MetroSetLabelDesigner.cs",
"chars": 1763,
"preview": "/*\n * MetroSet UI - MetroSet UI Framework\n * \n * The MIT License (MIT)\n * Copyright (c) 2017 Narwin, https://github.com"
},
{
"path": "MetroSet UI/Design/MetroSetLinkDesigner.cs",
"chars": 1761,
"preview": "/*\n * MetroSet UI - MetroSet UI Framework\n * \n * The MIT License (MIT)\n * Copyright (c) 2017 Narwin, https://github.com"
},
{
"path": "MetroSet UI/Design/MetroSetListBoxDesigner.cs",
"chars": 2238,
"preview": "/*\n * MetroSet UI - MetroSet UI Framework\n * \n * The MIT License (MIT)\n * Copyright (c) 2017 Narwin, https://github.com"
},
{
"path": "MetroSet UI/Design/MetroSetNumericDesigner.cs",
"chars": 1767,
"preview": "/*\n * MetroSet UI - MetroSet UI Framework\n * \n * The MIT License (MIT)\n * Copyright (c) 2017 Narwin, https://github.com"
},
{
"path": "MetroSet UI/Design/MetroSetProgressBarDesigner.cs",
"chars": 1775,
"preview": "/*\n * MetroSet UI - MetroSet UI Framework\n * \n * The MIT License (MIT)\n * Copyright (c) 2017 Narwin, https://github.com"
},
{
"path": "MetroSet UI/Design/MetroSetRadioButtonDesigner.cs",
"chars": 1775,
"preview": "/*\n * MetroSet UI - MetroSet UI Framework\n * \n * The MIT License (MIT)\n * Copyright (c) 2017 Narwin, https://github.com"
},
{
"path": "MetroSet UI/Design/MetroSetRichTextBoxDesigner.cs",
"chars": 1775,
"preview": "/*\n * MetroSet UI - MetroSet UI Framework\n * \n * The MIT License (MIT)\n * Copyright (c) 2017 Narwin, https://github.com"
},
{
"path": "MetroSet UI/Design/MetroSetScrollBarDesigner.cs",
"chars": 2242,
"preview": "/*\n * MetroSet UI - MetroSet UI Framework\n * \n * The MIT License (MIT)\n * Copyright (c) 2017 Narwin, https://github.com"
},
{
"path": "MetroSet UI/Design/MetroSetSwitchDesigner.cs",
"chars": 1765,
"preview": "/*\n * MetroSet UI - MetroSet UI Framework\n * \n * The MIT License (MIT)\n * Copyright (c) 2017 Narwin, https://github.com"
},
{
"path": "MetroSet UI/Design/MetroSetTabControlDesigner.cs",
"chars": 7180,
"preview": "/*\n * MetroSet UI - MetroSet UI Framework\n *\n * The MIT License (MIT)\n * Copyright (c) 2017 Narwin, https://github.com/"
},
{
"path": "MetroSet UI/Design/MetroSetTabpageDesigner.cs",
"chars": 1917,
"preview": "/*\n * MetroSet UI - MetroSet UI Framework\n *\n * The MIT License (MIT)\n * Copyright (c) 2017 Narwin, https://github.com/"
},
{
"path": "MetroSet UI/Design/MetroSetTextBoxDesigner.cs",
"chars": 1767,
"preview": "/*\n * MetroSet UI - MetroSet UI Framework\n * \n * The MIT License (MIT)\n * Copyright (c) 2017 Narwin, https://github.com"
},
{
"path": "MetroSet UI/Design/MetroSetTileDesigner.cs",
"chars": 2227,
"preview": "/*\n * MetroSet UI - MetroSet UI Framework\n * \n * The MIT License (MIT)\n * Copyright (c) 2017 Narwin, https://github.com"
},
{
"path": "MetroSet UI/Design/MetroSetToolTipDesigner.cs",
"chars": 1719,
"preview": "/*\n * MetroSet UI - MetroSet UI Framework\n *\n * The MIT License (MIT)\n * Copyright (c) 2017 Narwin, https://github.com/"
},
{
"path": "MetroSet UI/Design/MetroSetTrackBarDesigner.cs",
"chars": 2253,
"preview": "/*\n * MetroSet UI - MetroSet UI Framework\n * \n * The MIT License (MIT)\n * Copyright (c) 2017 Narwin, https://github.com"
},
{
"path": "MetroSet UI/Design/StyleManagerDesigner.cs",
"chars": 1728,
"preview": "/*\n * MetroSet UI - MetroSet UI Framework\n * \n * The MIT License (MIT)\n * Copyright (c) 2017 Narwin, https://github.com"
},
{
"path": "MetroSet UI/Enums/BageAlign.cs",
"chars": 1558,
"preview": "/*\n * MetroSet UI - MetroSet UI Framework\n * \n * The MIT License (MIT)\n * Copyright (c) 2017 Narwin, https://github.com"
},
{
"path": "MetroSet UI/Enums/CheckState.cs",
"chars": 1412,
"preview": "/*\n * MetroSet UI - MetroSet UI Framework\n * \n * The MIT License (MIT)\n * Copyright (c) 2017 Narwin, https://github.com"
},
{
"path": "MetroSet UI/Enums/DividerStyle.cs",
"chars": 1453,
"preview": "/*\n * MetroSet UI - MetroSet UI Framework\n * \n * The MIT License (MIT)\n * Copyright (c) 2017 Narwin, https://github.com"
},
{
"path": "MetroSet UI/Enums/EasingType.cs",
"chars": 386,
"preview": "namespace MetroSet_UI.Enums\n{\n // for animate\n public enum EasingType\n {\n None,\n Linear,\n "
},
{
"path": "MetroSet UI/Enums/MouseSates.cs",
"chars": 1432,
"preview": "/*\n * MetroSet UI - MetroSet UI Framework\n *\n * The MIT License (MIT)\n * Copyright (c) 2017 Narwin, https://github.com/"
},
{
"path": "MetroSet UI/Enums/ProgressOrientation.cs",
"chars": 1550,
"preview": "/*\n * MetroSet UI - MetroSet UI Framework\n * \n * The MIT License (MIT)\n * Copyright (c) 2017 Narwin, https://github.com"
},
{
"path": "MetroSet UI/Enums/ScrollOrientation.cs",
"chars": 1541,
"preview": "/*\n * MetroSet UI - MetroSet UI Framework\n * \n * The MIT License (MIT)\n * Copyright (c) 2017 Narwin, https://github.com"
},
{
"path": "MetroSet UI/Enums/SignStyle.cs",
"chars": 1443,
"preview": "/*\n * MetroSet UI - MetroSet UI Framework\n * \n * The MIT License (MIT)\n * Copyright (c) 2017 Narwin, https://github.com"
},
{
"path": "MetroSet UI/Enums/Style.cs",
"chars": 1494,
"preview": "/*\n * MetroSet UI - MetroSet UI Framework\n * \n * The MIT License (MIT)\n * Copyright (c) 2017 Narwin, https://github.com"
},
{
"path": "MetroSet UI/Enums/TabStyle.cs",
"chars": 1506,
"preview": "/*\n * MetroSet UI - MetroSet UI Framework\n * \n * The MIT License (MIT)\n * Copyright (c) 2017 Narwin, https://github.com"
},
{
"path": "MetroSet UI/Enums/TextAlign.cs",
"chars": 1509,
"preview": "/*\n * MetroSet UI - MetroSet UI Framework\n * \n * The MIT License (MIT)\n * Copyright (c) 2017 Narwin, https://github.com"
},
{
"path": "MetroSet UI/Enums/TileAlign.cs",
"chars": 1692,
"preview": "/*\n * MetroSet UI - MetroSet UI Framework\n * \n * The MIT License (MIT)\n * Copyright (c) 2017 Narwin, https://github.com"
},
{
"path": "MetroSet UI/Extensions/Global Font.cs",
"chars": 2315,
"preview": "using System.Drawing;\n\nnamespace MetroSet_UI.Extensions\n{\n public class Global_Font\n {\n\n /// <summary>\n "
},
{
"path": "MetroSet UI/Extensions/GraphicsQuality.cs",
"chars": 1893,
"preview": "using System;\nusing System.Drawing;\nusing System.Drawing.Drawing2D;\nusing System.Drawing.Text;\nusing System.Windows.For"
},
{
"path": "MetroSet UI/Extensions/Methods.cs",
"chars": 10083,
"preview": "/*\n * MetroSet UI - MetroSet UI Framework\n * \n * The MIT License (MIT)\n * Copyright (c) 2017 Narwin, https://github.com"
},
{
"path": "MetroSet UI/Extensions/MetroSetFonts.cs",
"chars": 4305,
"preview": "/*\n * MetroSet UI - MetroSet UI Framework\n * \n * The MIT License (MIT)\n * Copyright (c) 2017 Narwin, https://github.com"
},
{
"path": "MetroSet UI/Extensions/Utilites.cs",
"chars": 5502,
"preview": "/*\n * MetroSet UI - MetroSet UI Framework\n * \n * The MIT License (MIT)\n * Copyright (c) 2017 Narwin, https://github.com"
},
{
"path": "MetroSet UI/Forms/MetroSetForm.cs",
"chars": 22094,
"preview": "/*\n * MetroSet UI - MetroSet UI Framework\n * \n * The MIT License (MIT)\n * Copyright (c) 2017 Narwin, https://github.com"
},
{
"path": "MetroSet UI/Forms/MetroSetForm.resx",
"chars": 5894,
"preview": "<?xml version=\"1.0\" encoding=\"utf-8\"?>\n<root>\n <!-- \n Microsoft ResX Schema \n \n Version 2.0\n \n The prim"
},
{
"path": "MetroSet UI/Forms/MetroSetMessageBox.cs",
"chars": 15116,
"preview": "/*\n * MetroSet UI - MetroSet UI Framework\n * \n * The MIT License (MIT)\n * Copyright (c) 2017 Narwin, https://github.com"
},
{
"path": "MetroSet UI/Interfaces/IMetroForm.cs",
"chars": 1873,
"preview": "/*\n * MetroSet UI - MetroSet UI Framework\n * \n * The MIT License (MIT)\n * Copyright (c) 2017 Narwin, https://github.com"
},
{
"path": "MetroSet UI/Interfaces/IMetroSetControl.cs",
"chars": 2107,
"preview": "/*\n * MetroSet UI - MetroSet UI Framework\n * \n * The MIT License (MIT)\n * Copyright (c) 2017 Narwin, https://github.com"
},
{
"path": "MetroSet UI/Interfaces/MetroSetControl.cs",
"chars": 353,
"preview": "using MetroSet_UI.Components;\nusing MetroSet_UI.Enums;\n\nnamespace MetroSet_UI.Interfaces\n{\n\tpublic interface MetroSetCo"
},
{
"path": "MetroSet UI/Interfaces/MetroSetForm.cs",
"chars": 351,
"preview": "using MetroSet_UI.Components;\nusing MetroSet_UI.Enums;\n\nnamespace MetroSet_UI.Interfaces\n{\n\tpublic interface iMetroSetF"
},
{
"path": "MetroSet UI/MetroSet UI.csproj",
"chars": 2920,
"preview": "<?xml version=\"1.0\" encoding=\"utf-8\"?>\n\n<Project Sdk=\"Microsoft.NET.Sdk.WindowsDesktop\">\n <PropertyGroup>\n <OutputT"
},
{
"path": "MetroSet UI/Native/User32.cs",
"chars": 35500,
"preview": "/*\n * MetroSet UI - MetroSet UI Framework\n * \n * The MIT License (MIT)\n * Copyright (c) 2017 Narwin, https://github.com"
},
{
"path": "MetroSet UI/Properties/AssemblyInfo.cs",
"chars": 1425,
"preview": "using System.Reflection;\nusing System.Runtime.InteropServices;\n\n// General Information about an assembly is controlled "
},
{
"path": "MetroSet UI/Properties/PublishProfiles/FolderProfile.pubxml",
"chars": 461,
"preview": "<?xml version=\"1.0\" encoding=\"utf-8\"?>\n<!--\nhttps://go.microsoft.com/fwlink/?LinkID=208121. \n-->\n<Project ToolsVersion="
},
{
"path": "MetroSet UI/Properties/Resources.Designer.cs",
"chars": 5651,
"preview": "//------------------------------------------------------------------------------\n// <auto-generated>\n// This code w"
},
{
"path": "MetroSet UI/Properties/Resources.resx",
"chars": 7277,
"preview": "<?xml version=\"1.0\" encoding=\"utf-8\"?>\n<root>\n <!-- \n Microsoft ResX Schema \n \n Version 2.0\n \n The prim"
},
{
"path": "MetroSet UI/Properties/Settings.Designer.cs",
"chars": 1488,
"preview": "//------------------------------------------------------------------------------\n// <auto-generated>\n// This code w"
},
{
"path": "MetroSet UI/Properties/Settings.settings",
"chars": 401,
"preview": "<?xml version='1.0' encoding='utf-8'?>\n<SettingsFile xmlns=\"http://schemas.microsoft.com/VisualStudio/2004/01/settings\""
},
{
"path": "MetroSet UI/Resources/MetroSet Theme.xml",
"chars": 9276,
"preview": "<?xml version=\"1.0\" encoding=\"utf-8\"?>\n<MetroSetTheme>\n <Theme>\n <Name>Custom Theme</Name>\n <Author>Narwin</Auth"
},
{
"path": "MetroSet UI Example/Form1.Designer.cs",
"chars": 161190,
"preview": "using MetroSet_UI.Components;\n\nnamespace MetroSet_UI_Example\n{\n\tpartial class Form1\n\t{\n\t\t/// <summary>\n\t\t/// Required d"
},
{
"path": "MetroSet UI Example/Form1.cs",
"chars": 1857,
"preview": "using System;\nusing System.Windows.Forms;\nusing MetroSet_UI.Enums;\nusing MetroSet_UI.Forms;\n\nnamespace MetroSet_UI_Exam"
},
{
"path": "MetroSet UI Example/Form1.resx",
"chars": 7064,
"preview": "<?xml version=\"1.0\" encoding=\"utf-8\"?>\n<root>\n <!-- \n Microsoft ResX Schema \n \n Version 2.0\n \n The prim"
},
{
"path": "MetroSet UI Example/MetroSet UI Example.csproj",
"chars": 5841,
"preview": "<?xml version=\"1.0\" encoding=\"utf-8\"?>\n\n<Project Sdk=\"Microsoft.NET.Sdk.WindowsDesktop\">\n <PropertyGroup>\n <OutputT"
},
{
"path": "MetroSet UI Example/Program.cs",
"chars": 357,
"preview": "using System;\nusing System.Windows.Forms;\n\nnamespace MetroSet_UI_Example\n{\n\tstatic class Program\n\t{\n\t\t/// <summary>\n\t\t/"
},
{
"path": "MetroSet UI Example/Properties/AssemblyInfo.cs",
"chars": 1372,
"preview": "using System.Reflection;\nusing System.Runtime.InteropServices;\n\n// General Information about an assembly is controlled "
},
{
"path": "MetroSet UI Example/Properties/Resources.Designer.cs",
"chars": 7225,
"preview": "//------------------------------------------------------------------------------\n// <auto-generated>\n// This code w"
},
{
"path": "MetroSet UI Example/Properties/Resources.resx",
"chars": 8793,
"preview": "<?xml version=\"1.0\" encoding=\"utf-8\"?>\n<root>\n <!-- \n Microsoft ResX Schema \n \n Version 2.0\n \n The prim"
},
{
"path": "MetroSet UI Example/Properties/Settings.Designer.cs",
"chars": 1074,
"preview": "//------------------------------------------------------------------------------\n// <auto-generated>\n// This code w"
},
{
"path": "MetroSet UI Example/Properties/Settings.settings",
"chars": 240,
"preview": "<?xml version='1.0' encoding='utf-8'?>\n<SettingsFile xmlns=\"http://schemas.microsoft.com/VisualStudio/2004/01/settings\""
},
{
"path": "MetroSet UI.sln",
"chars": 1607,
"preview": "\nMicrosoft Visual Studio Solution File, Format Version 12.00\n# Visual Studio 15\nVisualStudioVersion = 15.0.26228.4\nMini"
},
{
"path": "README.md",
"chars": 8957,
"preview": "<p align=\"center\">\n <a href=\"https://github.com/N-a-r-w-i-n/MetroSet-UI\">\n <img alt=\"MetroSet-UI\" width=\"384\" heigt"
}
]
About this extraction
This page contains the full source code of the N-a-r-w-i-n/MetroSet-UI GitHub repository, extracted and formatted as plain text for AI agents and large language models (LLMs). The extraction includes 129 files (892.6 KB), approximately 237.9k tokens, and a symbol index with 571 extracted functions, classes, methods, constants, and types. Use this with OpenClaw, Claude, ChatGPT, Cursor, Windsurf, or any other AI tool that accepts text input. You can copy the full output to your clipboard or download it as a .txt file.
Extracted by GitExtract — free GitHub repo to text converter for AI. Built by Nikandr Surkov.