├── .config
└── dotnet-tools.json
├── .editorconfig
├── .gitattributes
├── .github
├── FUNDING.yml
├── ISSUE_TEMPLATE
│ ├── bug_report.md
│ └── feature_request.md
└── workflows
│ ├── build.yml
│ ├── create-release.yml
│ └── publish.yml
├── .gitignore
├── .gitmodules
├── .vscode
├── launch.json
├── settings.json
└── tasks.json
├── CODE_OF_CONDUCT.md
├── LICENSE.txt
├── README.md
├── build.cmd
├── build.sh
├── build
├── Build.proj
├── Common.Build.props
├── Common.Build.targets
├── Common.Mac.targets
├── Common.props
├── Utilities.targets
├── build-help-mdoc.sh
├── build-help-shfb.cmd
├── help
│ ├── Help.shfbproj
│ ├── Help.sln
│ └── xml
│ │ ├── index.xml
│ │ ├── ns-Eto.Drawing.xml
│ │ ├── ns-Eto.Forms.xml
│ │ ├── ns-Eto.IO.xml
│ │ ├── ns-Eto.Misc.xml
│ │ └── ns-Eto.xml
└── msbuild.cmd
├── dotnet-workloads.json
├── images
├── linux.png
├── mac.png
└── windows.png
├── lib
├── GtkSharp3
│ ├── atk-sharp.dll
│ ├── atk-sharp.dll.config
│ ├── atk-sharp.dll.mdb
│ ├── cairo-sharp.dll
│ ├── cairo-sharp.dll.mdb
│ ├── gdk-sharp.dll
│ ├── gdk-sharp.dll.config
│ ├── gdk-sharp.dll.mdb
│ ├── gio-sharp.dll
│ ├── gio-sharp.dll.config
│ ├── gio-sharp.dll.mdb
│ ├── glib-sharp.dll
│ ├── glib-sharp.dll.config
│ ├── glib-sharp.dll.mdb
│ ├── gtk-sharp.dll
│ ├── gtk-sharp.dll.config
│ ├── gtk-sharp.dll.mdb
│ ├── pango-sharp.dll
│ ├── pango-sharp.dll.config
│ └── pango-sharp.dll.mdb
├── SHDocVw
│ └── Interop.SHDocVw.dll
└── webkit-sharp
│ └── webkit-sharp.dll
├── nuget.config
├── samples
├── Directory.Build.props
├── Directory.Build.targets
├── Gtk
│ ├── EmbedEtoInGtk
│ │ ├── EmbedEtoInGtk.csproj
│ │ ├── MainWindow.cs
│ │ ├── MyEtoPanel.cs
│ │ └── Program.cs
│ └── EmbedGtkInEto
│ │ ├── EmbedGtkInEto.csproj
│ │ ├── MainForm.cs
│ │ ├── MyNativeWidget.cs
│ │ └── Program.cs
├── MacOS
│ ├── EmbedEtoInMacOS
│ │ ├── AppDelegate.cs
│ │ ├── Assets.xcassets
│ │ │ ├── AppIcon.appiconset
│ │ │ │ ├── AppIcon-128.png
│ │ │ │ ├── AppIcon-128@2x.png
│ │ │ │ ├── AppIcon-16.png
│ │ │ │ ├── AppIcon-16@2x.png
│ │ │ │ ├── AppIcon-256.png
│ │ │ │ ├── AppIcon-256@2x.png
│ │ │ │ ├── AppIcon-32.png
│ │ │ │ ├── AppIcon-32@2x.png
│ │ │ │ ├── AppIcon-512.png
│ │ │ │ ├── AppIcon-512@2x.png
│ │ │ │ └── Contents.json
│ │ │ └── Contents.json
│ │ ├── EmbedEtoInMacOS.csproj
│ │ ├── Entitlements.plist
│ │ ├── Info.plist
│ │ ├── Main.cs
│ │ ├── Main.storyboard
│ │ ├── MyEtoPanel.cs
│ │ ├── ViewController.cs
│ │ └── ViewController.designer.cs
│ └── EmbedMacOSInEto
│ │ ├── AppDelegate.cs
│ │ ├── Assets.xcassets
│ │ ├── AppIcon.appiconset
│ │ │ ├── AppIcon-128.png
│ │ │ ├── AppIcon-128@2x.png
│ │ │ ├── AppIcon-16.png
│ │ │ ├── AppIcon-16@2x.png
│ │ │ ├── AppIcon-256.png
│ │ │ ├── AppIcon-256@2x.png
│ │ │ ├── AppIcon-32.png
│ │ │ ├── AppIcon-32@2x.png
│ │ │ ├── AppIcon-512.png
│ │ │ ├── AppIcon-512@2x.png
│ │ │ └── Contents.json
│ │ └── Contents.json
│ │ ├── EmbedMacOSInEto.csproj
│ │ ├── Entitlements.plist
│ │ ├── Info.plist
│ │ ├── Main.cs
│ │ ├── MainForm.cs
│ │ ├── MyNativeView.cs
│ │ ├── MyNativeView.designer.cs
│ │ ├── MyNativeView.xib
│ │ ├── MyNativeViewController.cs
│ │ └── MyNativeViewController.designer.cs
├── Samples.sln
├── SdkTest
│ ├── Info.plist
│ ├── MacIcon.icns
│ ├── MainForm.cs
│ ├── Program.cs
│ ├── SdkTest.csproj
│ └── nuget.config
├── Tutorials
│ ├── CSharp
│ │ ├── Tutorial1
│ │ │ ├── CS.Tutorial1.HelloWorld.csproj
│ │ │ └── Main.cs
│ │ ├── Tutorial2
│ │ │ ├── CS.Tutorial2.MenusAndToolbars.csproj
│ │ │ └── Main.cs
│ │ ├── Tutorial3
│ │ │ ├── CS.Tutorial3.TableLayout.csproj
│ │ │ └── Main.cs
│ │ └── Tutorial4
│ │ │ ├── CS.Tutorial4.Binding.csproj
│ │ │ └── Main.cs
│ ├── FSharp
│ │ ├── Tutorial1
│ │ │ ├── FS.Tutorial1.HelloWorld.fsproj
│ │ │ └── Program.fs
│ │ ├── Tutorial2
│ │ │ ├── FS.Tutorial2.MenusAndToolbars.fsproj
│ │ │ └── Program.fs
│ │ ├── Tutorial3
│ │ │ ├── FS.Tutorial3.TableLayout.fsproj
│ │ │ └── Program.fs
│ │ └── Tutorial4
│ │ │ ├── FS.Tutorial4.Binding.fsproj
│ │ │ └── Program.fs
│ └── README.md
├── WinForms
│ ├── EmbedEtoInWinForms
│ │ ├── App.config
│ │ ├── EmbedEtoInWinForms.csproj
│ │ ├── Form1.Designer.cs
│ │ ├── Form1.cs
│ │ ├── Form1.resx
│ │ ├── MyEtoPanel.cs
│ │ ├── Program.cs
│ │ └── Properties
│ │ │ ├── Resources.Designer.cs
│ │ │ ├── Resources.resx
│ │ │ ├── Settings.Designer.cs
│ │ │ └── Settings.settings
│ └── EmbedWinFormsInEto
│ │ ├── EmbedWinFormsInEto.csproj
│ │ ├── MainForm.cs
│ │ ├── MyNativeControl.Designer.cs
│ │ ├── MyNativeControl.cs
│ │ ├── MyNativeControl.resx
│ │ └── Program.cs
└── Wpf
│ ├── EmbedEtoInWpf
│ ├── App.config
│ ├── App.xaml
│ ├── App.xaml.cs
│ ├── EmbedEtoInWpf.csproj
│ ├── MainWindow.xaml
│ ├── MainWindow.xaml.cs
│ ├── MyEtoPanel.cs
│ └── Properties
│ │ ├── AssemblyInfo.cs
│ │ ├── Resources.Designer.cs
│ │ ├── Resources.resx
│ │ ├── Settings.Designer.cs
│ │ └── Settings.settings
│ └── EmbedWpfInEto
│ ├── App.config
│ ├── EmbedWpfInEto.csproj
│ ├── MainForm.cs
│ ├── MyNativeControl.xaml
│ ├── MyNativeControl.xaml.cs
│ └── Program.cs
├── src
├── CustomDictionary.xml
├── Directory.Build.props
├── Directory.Build.targets
├── Eto.Android.sln
├── Eto.Android
│ ├── AndroidHelpers.cs
│ ├── ContextMenuHandler.cs
│ ├── Conversions.cs
│ ├── Drawing
│ │ ├── BitmapHandler.cs
│ │ ├── BrushHandler.cs
│ │ ├── FontFamilyHandler.cs
│ │ ├── FontHandler.cs
│ │ ├── FontTypefaceHandler.cs
│ │ ├── FontsHandler.cs
│ │ ├── FormattedTextHandler.cs
│ │ ├── GraphicsHandler.cs
│ │ ├── GraphicsPathHandler.cs
│ │ ├── IconHandler.cs
│ │ ├── IndexedBitmapHandler.cs
│ │ ├── LinearGradientBrushHandler.cs
│ │ ├── MatrixHandler.cs
│ │ ├── PenHandler.cs
│ │ ├── SolidBrushHandler.cs
│ │ ├── SystemColorsHandler.cs
│ │ └── TextureBrushHandler.cs
│ ├── Eto.Android.csproj
│ ├── Forms
│ │ ├── AndroidContainer.cs
│ │ ├── AndroidControl.cs
│ │ ├── AndroidExtensions.cs
│ │ ├── AndroidPanel.cs
│ │ ├── AndroidTextControl.cs
│ │ ├── AndroidWindow.cs
│ │ ├── ApplicationHandler.cs
│ │ ├── Cells
│ │ │ ├── CheckBoxCellHandler.cs
│ │ │ ├── ComboBoxCellHandler.cs
│ │ │ ├── ICellHandler.cs
│ │ │ ├── ImageTextCellHandler.cs
│ │ │ ├── ImageViewCellHandler.cs
│ │ │ ├── ProgressCellHandler.cs
│ │ │ └── TextBoxCellHandler.cs
│ │ ├── Controls
│ │ │ ├── AndroidCommonControl.cs
│ │ │ ├── ButtonHandler.cs
│ │ │ ├── CheckBoxHandler.cs
│ │ │ ├── ComboBoxHandler.cs
│ │ │ ├── DateTimePickerHandler.cs
│ │ │ ├── DrawableHandler.cs
│ │ │ ├── DropDownHandler.cs
│ │ │ ├── FontPickerHandler.cs
│ │ │ ├── GridColumnHandler.cs
│ │ │ ├── GridViewHandler.cs
│ │ │ ├── GroupBoxHandler.cs
│ │ │ ├── ImageViewHandler.cs
│ │ │ ├── LabelHandler.cs
│ │ │ ├── LinkButtonHandler.cs
│ │ │ ├── ListBoxHandler.cs
│ │ │ ├── NavigationHandler.cs
│ │ │ ├── NumericStepperHandler.cs
│ │ │ ├── NumericUpDownHandler.cs
│ │ │ ├── PanelHandler.cs
│ │ │ ├── PasswordBoxHandler.cs
│ │ │ ├── ProgressBarHandler.cs
│ │ │ ├── RadioButtonHandler.cs
│ │ │ ├── ScrollableHandler.cs
│ │ │ ├── SearchBoxHandler.cs
│ │ │ ├── SliderHandler.cs
│ │ │ ├── SpinnerHandler.cs
│ │ │ ├── SplitterHandler.cs
│ │ │ ├── TabControlHandler.cs
│ │ │ ├── TabPageHandler.cs
│ │ │ ├── TextAreaHandler.cs
│ │ │ ├── TextBoxHandler.cs
│ │ │ ├── TreeGridViewHandler.cs
│ │ │ ├── TreeViewHandler.cs
│ │ │ └── WebViewHandler.cs
│ │ ├── DialogHandler.cs
│ │ ├── EtoEnvironmentHandler.cs
│ │ ├── FormHandler.cs
│ │ ├── Menu
│ │ │ ├── ButtonMenuItemHandler.cs
│ │ │ ├── CheckMenuItemHandler.cs
│ │ │ ├── MenuItemHandler.cs
│ │ │ └── SeparatorMenuItemHandler.cs
│ │ ├── ScreenHandler.cs
│ │ ├── ScreensHandler.cs
│ │ ├── TableLayoutHandler.cs
│ │ ├── ToolBar
│ │ │ ├── ButtonToolItemHandler.cs
│ │ │ ├── CheckToolItemHandler.cs
│ │ │ ├── SeparatorToolItemHandler.cs
│ │ │ ├── ToolBarHandler.cs
│ │ │ └── ToolItemHandler.cs
│ │ └── UITimerHandler.cs
│ ├── KeyMap.cs
│ ├── MessageBoxHandler.cs
│ ├── PixelLayoutHandler.cs
│ └── Platform.cs
├── Eto.Direct2D
│ ├── 2DConversions.cs
│ ├── Drawing
│ │ ├── BitmapHandler.cs
│ │ ├── BrushData.cs
│ │ ├── FontFamilyHandler.cs
│ │ ├── FontHandler.cs
│ │ ├── FontTypefaceHandler.cs
│ │ ├── FontsHandler.cs
│ │ ├── FormattedTextHandler.cs
│ │ ├── GraphicsHandler.cs
│ │ ├── GraphicsPathHandler.cs
│ │ ├── IconFrameHandler.cs
│ │ ├── IconHandler.cs
│ │ ├── ImageHandler.cs
│ │ ├── IndexedBitmapHandler.cs
│ │ ├── LinearGradientBrushHandler.cs
│ │ ├── MatrixHandler.cs
│ │ ├── PenHandler.cs
│ │ ├── RadialGradientBrushHandler.cs
│ │ ├── SDFactory.cs
│ │ ├── SolidBrushHandler.cs
│ │ └── TextureBrushHandler.cs
│ ├── Eto.Direct2D.csproj
│ ├── Forms
│ │ ├── Controls
│ │ │ └── DrawableHandler.cs
│ │ └── Printing
│ │ │ └── PrintDocumentHandler.cs
│ └── Platform.cs
├── Eto.Forms.Templates
│ ├── Eto.Forms.Templates.csproj
│ └── content
│ │ ├── App-CSharp
│ │ ├── .template.config
│ │ │ ├── dotnetcli.host.json
│ │ │ ├── ide.host.json
│ │ │ └── template.json
│ │ ├── EtoApp.1.sln
│ │ ├── EtoApp.1
│ │ │ ├── EtoApp.1.csproj
│ │ │ ├── Info.plist
│ │ │ ├── MacIcon.icns
│ │ │ ├── MainForm.cs
│ │ │ ├── MainForm.eto.cs
│ │ │ ├── MainForm.jeto
│ │ │ ├── MainForm.jeto.cs
│ │ │ ├── MainForm.xeto
│ │ │ ├── MainForm.xeto.cs
│ │ │ └── Program.cs
│ │ └── Separate
│ │ │ ├── EtoApp.1.Gtk
│ │ │ ├── EtoApp.1.Gtk.csproj
│ │ │ └── Program.cs
│ │ │ ├── EtoApp.1.Mac
│ │ │ ├── EtoApp.1.Mac.csproj
│ │ │ ├── Icon.icns
│ │ │ ├── Info.plist
│ │ │ └── Program.cs
│ │ │ ├── EtoApp.1.MacOS
│ │ │ ├── Assets.xcassets
│ │ │ │ ├── AppIcon.appiconset
│ │ │ │ │ ├── AppIcon-128.png
│ │ │ │ │ ├── AppIcon-128@2x.png
│ │ │ │ │ ├── AppIcon-16.png
│ │ │ │ │ ├── AppIcon-16@2x.png
│ │ │ │ │ ├── AppIcon-256.png
│ │ │ │ │ ├── AppIcon-256@2x.png
│ │ │ │ │ ├── AppIcon-32.png
│ │ │ │ │ ├── AppIcon-32@2x.png
│ │ │ │ │ ├── AppIcon-512.png
│ │ │ │ │ ├── AppIcon-512@2x.png
│ │ │ │ │ └── Contents.json
│ │ │ │ └── Contents.json
│ │ │ ├── EtoApp.1.MacOS.csproj
│ │ │ ├── Info.plist
│ │ │ └── Program.cs
│ │ │ ├── EtoApp.1.WinForms
│ │ │ ├── EtoApp.1.WinForms.csproj
│ │ │ └── Program.cs
│ │ │ └── EtoApp.1.Wpf
│ │ │ ├── EtoApp.1.Wpf.csproj
│ │ │ └── Program.cs
│ │ ├── App-FSharp
│ │ ├── .template.config
│ │ │ ├── dotnetcli.host.json
│ │ │ ├── ide.host.json
│ │ │ └── template.json
│ │ ├── EtoApp.1.sln
│ │ ├── EtoApp.1
│ │ │ ├── EtoApp.1.fsproj
│ │ │ ├── Info.plist
│ │ │ ├── MacIcon.icns
│ │ │ ├── MainForm.eto.fs
│ │ │ ├── MainForm.fs
│ │ │ ├── MainForm.jeto
│ │ │ ├── MainForm.jeto.fs
│ │ │ ├── MainForm.xeto
│ │ │ ├── MainForm.xeto.fs
│ │ │ └── Program.fs
│ │ └── Separate
│ │ │ ├── EtoApp.1.Gtk
│ │ │ ├── EtoApp.1.Gtk.fsproj
│ │ │ └── Program.fs
│ │ │ ├── EtoApp.1.Mac
│ │ │ ├── EtoApp.1.Mac.fsproj
│ │ │ ├── Icon.icns
│ │ │ ├── Info.plist
│ │ │ └── Program.fs
│ │ │ ├── EtoApp.1.MacOS
│ │ │ ├── Assets.xcassets
│ │ │ │ ├── AppIcon.appiconset
│ │ │ │ │ ├── AppIcon-128.png
│ │ │ │ │ ├── AppIcon-128@2x.png
│ │ │ │ │ ├── AppIcon-16.png
│ │ │ │ │ ├── AppIcon-16@2x.png
│ │ │ │ │ ├── AppIcon-256.png
│ │ │ │ │ ├── AppIcon-256@2x.png
│ │ │ │ │ ├── AppIcon-32.png
│ │ │ │ │ ├── AppIcon-32@2x.png
│ │ │ │ │ ├── AppIcon-512.png
│ │ │ │ │ ├── AppIcon-512@2x.png
│ │ │ │ │ └── Contents.json
│ │ │ │ └── Contents.json
│ │ │ ├── EtoApp.1.MacOS.fsproj
│ │ │ ├── Info.plist
│ │ │ └── Program.fs
│ │ │ ├── EtoApp.1.WinForms
│ │ │ ├── EtoApp.1.WinForms.fsproj
│ │ │ └── Program.fs
│ │ │ └── EtoApp.1.Wpf
│ │ │ ├── EtoApp.1.Wpf.csproj
│ │ │ └── Program.cs
│ │ ├── App-VisualBasic
│ │ ├── .template.config
│ │ │ ├── dotnetcli.host.json
│ │ │ ├── ide.host.json
│ │ │ └── template.json
│ │ ├── EtoApp.1.sln
│ │ ├── EtoApp.1
│ │ │ ├── EtoApp.1.vbproj
│ │ │ ├── Info.plist
│ │ │ ├── MacIcon.icns
│ │ │ ├── MainForm.eto.vb
│ │ │ ├── MainForm.jeto
│ │ │ ├── MainForm.jeto.vb
│ │ │ ├── MainForm.vb
│ │ │ ├── MainForm.xeto
│ │ │ ├── MainForm.xeto.vb
│ │ │ └── Program.vb
│ │ └── Separate
│ │ │ ├── EtoApp.1.Gtk
│ │ │ ├── EtoApp.1.Gtk.vbproj
│ │ │ └── Program.vb
│ │ │ ├── EtoApp.1.Mac
│ │ │ ├── EtoApp.1.Mac.vbproj
│ │ │ ├── Icon.icns
│ │ │ ├── Info.plist
│ │ │ └── Program.vb
│ │ │ ├── EtoApp.1.MacOS
│ │ │ ├── Assets.xcassets
│ │ │ │ ├── AppIcon.appiconset
│ │ │ │ │ ├── AppIcon-128.png
│ │ │ │ │ ├── AppIcon-128@2x.png
│ │ │ │ │ ├── AppIcon-16.png
│ │ │ │ │ ├── AppIcon-16@2x.png
│ │ │ │ │ ├── AppIcon-256.png
│ │ │ │ │ ├── AppIcon-256@2x.png
│ │ │ │ │ ├── AppIcon-32.png
│ │ │ │ │ ├── AppIcon-32@2x.png
│ │ │ │ │ ├── AppIcon-512.png
│ │ │ │ │ ├── AppIcon-512@2x.png
│ │ │ │ │ └── Contents.json
│ │ │ │ └── Contents.json
│ │ │ ├── EtoApp.1.MacOS.csproj
│ │ │ ├── Info.plist
│ │ │ └── Program.cs
│ │ │ ├── EtoApp.1.WinForms
│ │ │ ├── EtoApp.1.WinForms.vbproj
│ │ │ └── Program.vb
│ │ │ └── EtoApp.1.Wpf
│ │ │ ├── EtoApp.1.Wpf.vbproj
│ │ │ └── Program.vb
│ │ ├── Directory.Build.props
│ │ ├── Directory.Build.targets
│ │ ├── File-CSharp
│ │ ├── .template.config
│ │ │ ├── dotnetcli.host.json
│ │ │ └── template.json
│ │ ├── MainForm.cs
│ │ ├── MainForm.eto.cs
│ │ ├── MainForm.jeto
│ │ ├── MainForm.jeto.cs
│ │ ├── MainForm.xeto
│ │ └── MainForm.xeto.cs
│ │ ├── File-FSharp
│ │ ├── .template.config
│ │ │ ├── dotnetcli.host.json
│ │ │ └── template.json
│ │ ├── MainForm.eto.fs
│ │ ├── MainForm.fs
│ │ ├── MainForm.jeto
│ │ ├── MainForm.jeto.fs
│ │ ├── MainForm.xeto
│ │ └── MainForm.xeto.fs
│ │ ├── File-VisualBasic
│ │ ├── .template.config
│ │ │ ├── dotnetcli.host.json
│ │ │ └── template.json
│ │ ├── MainForm.eto.vb
│ │ ├── MainForm.jeto
│ │ ├── MainForm.jeto.vb
│ │ ├── MainForm.vb
│ │ ├── MainForm.xeto
│ │ └── MainForm.xeto.vb
│ │ └── NuGet.Config
├── Eto.Gtk
│ ├── CustomControls
│ │ ├── AnalogClock.cs
│ │ ├── BaseComboBox.gtk2.cs
│ │ ├── BaseComboBox.gtk3.cs
│ │ ├── DateComboBox.cs
│ │ ├── DateComboBoxDialog.cs
│ │ ├── SizableBin.cs
│ │ └── WindowExtensions.cs
│ ├── Drawing
│ │ ├── BitmapHandler.cs
│ │ ├── BrushHandler.cs
│ │ ├── FontFamilyHandler.cs
│ │ ├── FontHandler.cs
│ │ ├── FontTypefaceHandler.cs
│ │ ├── FontsHandler.cs
│ │ ├── FormattedTextHandler.cs
│ │ ├── GraphicsHandler.cs
│ │ ├── GraphicsPathHandler.cs
│ │ ├── IconFrameHandler.cs
│ │ ├── IconHandler.cs
│ │ ├── ImageHandler.cs
│ │ ├── IndexedBitmapHandler.cs
│ │ ├── LinearGradientBrushHandler.cs
│ │ ├── MatrixHandler.cs
│ │ ├── PenHandler.cs
│ │ ├── RadialGradientBrushHandler.cs
│ │ ├── SolidBrushHandler.cs
│ │ ├── SystemColorsHandler.cs
│ │ ├── SystemIconsHandler.cs
│ │ └── TextureBrushHandler.cs
│ ├── Eto.Gtk.csproj
│ ├── Eto.Gtk2.csproj
│ ├── Eto.Gtk3.csproj
│ ├── EtoEnvironmentHandler.cs
│ ├── EtoWebView.cs
│ ├── Forms
│ │ ├── AboutDialogHandler.cs
│ │ ├── ApplicationHandler.cs
│ │ ├── Cells
│ │ │ ├── CellHandler.cs
│ │ │ ├── CheckBoxCellHandler.cs
│ │ │ ├── ComboBoxCellHandler.cs
│ │ │ ├── CustomCellHandler.cs
│ │ │ ├── DrawableCellHandler.cs
│ │ │ ├── GridCellFormattingEventArgs.cs
│ │ │ ├── ImageTextCellHandler.cs
│ │ │ ├── ImageViewCellHandler.cs
│ │ │ ├── ProgressCellHandler.cs
│ │ │ └── TextBoxCellHandler.cs
│ │ ├── ClipboardHandler.cs
│ │ ├── ColorDialogHandler.cs
│ │ ├── ColorDialogHandlerOld.cs
│ │ ├── Controls
│ │ │ ├── ButtonHandler.cs
│ │ │ ├── ButtonHandler.gtk2.cs
│ │ │ ├── ButtonHandler.gtk3.cs
│ │ │ ├── CalendarHandler.cs
│ │ │ ├── CheckBoxHandler.cs
│ │ │ ├── ColorPickerHandler.cs
│ │ │ ├── ComboBoxHandler.cs
│ │ │ ├── DateTimePickerHandler.cs
│ │ │ ├── DocumentControlHandler.cs
│ │ │ ├── DocumentPageHandler.cs
│ │ │ ├── DrawableHandler.cs
│ │ │ ├── DropDownHandler.cs
│ │ │ ├── ExpanderHandler.cs
│ │ │ ├── FilePickerHandler.cs
│ │ │ ├── FontPickerHandler.cs
│ │ │ ├── GridColumnHandler.cs
│ │ │ ├── GridHandler.cs
│ │ │ ├── GridViewHandler.cs
│ │ │ ├── GroupBoxHandler.cs
│ │ │ ├── GtkEnumerableModel.cs
│ │ │ ├── GtkListModel.cs
│ │ │ ├── GtkTreeModel.cs
│ │ │ ├── ImageViewHandler.cs
│ │ │ ├── LabelHandler.cs
│ │ │ ├── LinkButtonHandler.cs
│ │ │ ├── ListBoxHandler.cs
│ │ │ ├── NativeControlHandler.cs
│ │ │ ├── NumericStepperHandler.cs
│ │ │ ├── PanelHandler.cs
│ │ │ ├── PasswordBoxHandler.cs
│ │ │ ├── ProgressBarHandler.cs
│ │ │ ├── RadioButtonHandler.cs
│ │ │ ├── RichTextAreaHandler.cs
│ │ │ ├── ScrollableHandler.cs
│ │ │ ├── SearchBoxHandler.cs
│ │ │ ├── SliderHandler.cs
│ │ │ ├── SpinnerHandler.cs
│ │ │ ├── SplitterHandler.cs
│ │ │ ├── StepperHandler.cs
│ │ │ ├── TabControlHandler.cs
│ │ │ ├── TabPageHandler.cs
│ │ │ ├── TextAreaHandler.cs
│ │ │ ├── TextBoxHandler.cs
│ │ │ ├── TextStepperHandler.cs
│ │ │ ├── ToggleButtonHandler.cs
│ │ │ ├── TreeGridViewHandler.cs
│ │ │ ├── TreeViewHandler.cs
│ │ │ ├── WebKit2WebViewHandler.cs
│ │ │ └── WebViewHandler.cs
│ │ ├── CursorHandler.cs
│ │ ├── DataObjectHandler.cs
│ │ ├── DialogHandler.cs
│ │ ├── EtoControls.cs
│ │ ├── EtoControls.tt
│ │ ├── FloatingFormHandler.cs
│ │ ├── FontDialogHandler.cs
│ │ ├── FontDialogHandlerOld.cs
│ │ ├── FormHandler.cs
│ │ ├── GtkContainer.cs
│ │ ├── GtkControl.cs
│ │ ├── GtkFileDialog.cs
│ │ ├── GtkPanel.cs
│ │ ├── GtkSynchronizationContext.cs
│ │ ├── GtkWindow.cs
│ │ ├── KeyboardHandler.cs
│ │ ├── LinuxNotificationHandler.cs
│ │ ├── LinuxTrayIndicatorHandler.cs
│ │ ├── Menu
│ │ │ ├── ButtonMenuItemHandler.cs
│ │ │ ├── CheckMenuItemHandler.cs
│ │ │ ├── ContextMenuHandler.cs
│ │ │ ├── MenuBarHandler.cs
│ │ │ ├── MenuHandler.cs
│ │ │ ├── RadioMenuItemHandler.cs
│ │ │ ├── SeparatorMenuItemHandler.cs
│ │ │ └── SubMenuItemHandler.cs
│ │ ├── MessageBoxHandler.cs
│ │ ├── MouseHandler.cs
│ │ ├── OpenFileDialogHandler.cs
│ │ ├── OpenWithDialogHandler.cs
│ │ ├── OtherTrayIndicatorHandler.cs
│ │ ├── PixelLayoutHandler.cs
│ │ ├── Printing
│ │ │ ├── PrintDialogHandler.cs
│ │ │ ├── PrintDocumentHandler.cs
│ │ │ ├── PrintPreviewDialogHandler.cs
│ │ │ └── PrintSettingsHandler.cs
│ │ ├── SaveFileDialogHandler.cs
│ │ ├── ScreenHandler.gtk2.cs
│ │ ├── ScreenHandler.gtk3.cs
│ │ ├── ScreensHandler.cs
│ │ ├── SelectFolderDialogHandler.cs
│ │ ├── TableLayoutHandler.gtk2.cs
│ │ ├── TableLayoutHandler.gtk3.cs
│ │ ├── ToolBar
│ │ │ ├── ButtonToolItemHandler.cs
│ │ │ ├── CheckToolItemHandler.cs
│ │ │ ├── DropDownToolItemHandler.cs
│ │ │ ├── RadioToolItemHandler.cs
│ │ │ ├── SeparatorToolItemHandler.cs
│ │ │ ├── ToolBarHandler.cs
│ │ │ └── ToolItemHandler.cs
│ │ ├── UITimerHandler.cs
│ │ ├── UnityTaskbarHandler.cs
│ │ └── WindowHandler.cs
│ ├── Gtk3Compatibility.cs
│ ├── GtkConversions.cs
│ ├── GtkExtensions.cs
│ ├── GtkHelpers.cs
│ ├── GtkVersion.cs
│ ├── KeyMap.cs
│ ├── MenuActionItemHandler.cs
│ ├── NativeMacMethods.cs
│ ├── NativeMethods.cs
│ ├── NativeMethods.tt
│ └── Platform.cs
├── Eto.Mac
│ ├── AppDelegate.cs
│ ├── AsyncQueue.cs
│ ├── CGConversions.cs
│ ├── ColorizeView.cs
│ ├── CrashReporter.cs
│ ├── Drawing
│ │ ├── BitmapHandler.cs
│ │ ├── BrushHandler.cs
│ │ ├── ColorHandler.cs
│ │ ├── EtoFontManager.cs
│ │ ├── FontExtensions.cs
│ │ ├── FontFamilyHandler.cs
│ │ ├── FontHandler.cs
│ │ ├── FontTypefaceHandler.cs
│ │ ├── FontsHandler.cs
│ │ ├── FormattedTextHandler.cs
│ │ ├── GraphicsHandler.cs
│ │ ├── GraphicsPathHandler.cs
│ │ ├── IconFrameHandler.cs
│ │ ├── IconHandler.cs
│ │ ├── ImageHandler.cs
│ │ ├── IndexedBitmapHandler.cs
│ │ ├── LinearGradientBrushHandler.cs
│ │ ├── MatrixHandler.cs
│ │ ├── PenHandler.cs
│ │ ├── RadialGradientBrushHandler.cs
│ │ ├── SolidBrushHandler.cs
│ │ ├── SplineHelper.cs
│ │ ├── SystemColorsHandler.cs
│ │ ├── SystemIconsHandler.cs
│ │ └── TextureBrushHandler.cs
│ ├── Eto.Mac64.csproj
│ ├── Eto.macOS.csproj
│ ├── EtoBundle.cs
│ ├── EtoEnvironmentHandler.cs
│ ├── Forms
│ │ ├── Actions
│ │ │ └── MacCommand.cs
│ │ ├── ApplicationHandler.cs
│ │ ├── Cells
│ │ │ ├── CellHandler.cs
│ │ │ ├── CheckBoxCellHandler.cs
│ │ │ ├── ComboBoxCellHandler.cs
│ │ │ ├── CustomCellHandler.cs
│ │ │ ├── DrawableCellHandler.cs
│ │ │ ├── ImageTextCellHandler.cs
│ │ │ ├── ImageViewCellHandler.cs
│ │ │ ├── ProgressCellHandler.cs
│ │ │ └── TextBoxCellHandler.cs
│ │ ├── ClipboardHandler.cs
│ │ ├── ColorDialogHandler.cs
│ │ ├── Controls
│ │ │ ├── ButtonHandler.cs
│ │ │ ├── CalendarHandler.cs
│ │ │ ├── CheckBoxHandler.cs
│ │ │ ├── ColorPickerHandler.cs
│ │ │ ├── ComboBoxHandler.cs
│ │ │ ├── DateTimePickerHandler.cs
│ │ │ ├── DrawableHandler.cs
│ │ │ ├── DropDownHandler.cs
│ │ │ ├── ExpanderHandler.cs
│ │ │ ├── GridColumnHandler.cs
│ │ │ ├── GridHandler.cs
│ │ │ ├── GridViewHandler.cs
│ │ │ ├── GroupBoxHandler.cs
│ │ │ ├── ImageViewHandler.cs
│ │ │ ├── LabelHandler.cs
│ │ │ ├── LinkButtonHandler.cs
│ │ │ ├── ListBoxHandler.cs
│ │ │ ├── MacButton.cs
│ │ │ ├── MacControl.cs
│ │ │ ├── MacEventView.cs
│ │ │ ├── MacImageAndTextCell.cs
│ │ │ ├── MacImageTextView.cs
│ │ │ ├── MacLabel.cs
│ │ │ ├── MacText.cs
│ │ │ ├── NativeControlHandler.cs
│ │ │ ├── NumericStepperHandler.cs
│ │ │ ├── PanelHandler.cs
│ │ │ ├── PasswordBoxHandler.cs
│ │ │ ├── ProgressBarHandler.cs
│ │ │ ├── RadioButtonHandler.cs
│ │ │ ├── RichTextAreaHandler.cs
│ │ │ ├── ScrollableHandler.cs
│ │ │ ├── SearchBoxHandler.cs
│ │ │ ├── SegmentedButtonHandler.cs
│ │ │ ├── SliderHandler.cs
│ │ │ ├── SpinnerHandler.cs
│ │ │ ├── SplitterHandler.cs
│ │ │ ├── StepperHandler.cs
│ │ │ ├── TabControlHandler.cs
│ │ │ ├── TabPageHandler.cs
│ │ │ ├── TextAreaHandler.cs
│ │ │ ├── TextBoxHandler.cs
│ │ │ ├── ToggleButtonHandler.cs
│ │ │ ├── TreeGridViewHandler.cs
│ │ │ ├── TreeViewHandler.cs
│ │ │ └── WKWebViewHandler.cs
│ │ ├── CursorHandler.cs
│ │ ├── DataObjectHandler.cs
│ │ ├── DialogHandler.cs
│ │ ├── EtoDragSource.cs
│ │ ├── FloatingFormHandler.cs
│ │ ├── FontDialogHandler.cs
│ │ ├── FormHandler.cs
│ │ ├── KeyboardHandler.cs
│ │ ├── MacBase.cs
│ │ ├── MacCommon.cs
│ │ ├── MacContainer.cs
│ │ ├── MacControlExtensions.cs
│ │ ├── MacFieldEditor.cs
│ │ ├── MacFileDialog.cs
│ │ ├── MacModal.cs
│ │ ├── MacObject.cs
│ │ ├── MacPanel.cs
│ │ ├── MacView.cs
│ │ ├── MacViewTextInput.cs
│ │ ├── MacWindow.cs
│ │ ├── MemoryDataObjectHandler.cs
│ │ ├── Menu
│ │ │ ├── ButtonMenuItemHandler.cs
│ │ │ ├── CheckMenuItemHandler.cs
│ │ │ ├── ContextMenuHandler.cs
│ │ │ ├── MenuActionHandler.cs
│ │ │ ├── MenuBarHandler.cs
│ │ │ ├── MenuHandler.cs
│ │ │ ├── RadioMenuItemHandler.cs
│ │ │ ├── SeparatorMenuItem.cs
│ │ │ └── SubMenuItemHandler.cs
│ │ ├── MessageBoxHandler.cs
│ │ ├── MouseHandler.cs
│ │ ├── NativeFormHandler.cs
│ │ ├── NotificationHandler.cs
│ │ ├── OpenFileDialogHandler.cs
│ │ ├── OpenWithDialogHandler.cs
│ │ ├── PixelLayoutHandler.cs
│ │ ├── Printing
│ │ │ ├── PrintDialogHandler.cs
│ │ │ ├── PrintDocumentHandler.cs
│ │ │ └── PrintSettingsHandler.cs
│ │ ├── SaveFileDialogHandler.cs
│ │ ├── ScreenHandler.cs
│ │ ├── ScreensHandler.cs
│ │ ├── SelectFolderDialogHandler.cs
│ │ ├── TableLayoutHandler.cs
│ │ ├── TaskbarHandler.cs
│ │ ├── ToolBar
│ │ │ ├── ButtonToolItemHandler.cs
│ │ │ ├── CheckToolItemHandler.cs
│ │ │ ├── DropDownToolItemHandler.cs
│ │ │ ├── DropDownToolItemPreCatalinaHandler.cs
│ │ │ ├── RadioToolItemHandler.cs
│ │ │ ├── SeparatorToolItemHandler.cs
│ │ │ ├── ToolBarHandler.cs
│ │ │ └── ToolItemHandler.cs
│ │ ├── TrayIndicatorHandler.cs
│ │ ├── UITimerHandler.cs
│ │ ├── WindowHandler.cs
│ │ └── iosCompatibility.cs
│ ├── InvokeHelper.cs
│ ├── KeyMap.cs
│ ├── Mac64Extensions.cs
│ ├── MacConversions.cs
│ ├── MacConversions.ns.cs
│ ├── MacExtensions.cs
│ ├── MacHelpers.cs
│ ├── MacVersion.cs
│ ├── Messaging.cs
│ ├── NSImageExtensions.cs
│ ├── ObjCExtensions.cs
│ ├── Platform.cs
│ ├── SDConversions.cs
│ ├── Threading
│ │ └── ThreadHandler.cs
│ └── build
│ │ ├── BundleDotNetCore.targets
│ │ ├── BundleMono.targets
│ │ ├── CodeSign.entitlements
│ │ ├── CodeSign.targets
│ │ ├── Dmg.background.png
│ │ ├── Dmg.targets
│ │ ├── Icon.icns
│ │ ├── Info.plist
│ │ ├── Launcher64
│ │ ├── Mac.props
│ │ ├── Mac.targets
│ │ ├── Notarization.targets
│ │ ├── README.txt
│ │ ├── RunConfiguration.Default.targets
│ │ └── RunConfiguration.Mac.targets
├── Eto.Serialization.Json
│ ├── Converters
│ │ ├── DelegateConverter.cs
│ │ ├── DynamicLayoutConverter.cs
│ │ ├── FontConverter.cs
│ │ ├── ListItemConverter.cs
│ │ ├── NameConverter.cs
│ │ ├── PropertyStoreConverter.cs
│ │ ├── StackLayoutConverter.cs
│ │ ├── TableLayoutConverter.cs
│ │ └── TypeConverterConverter.cs
│ ├── DefaultNamespaceManager.cs
│ ├── Eto.Serialization.Json.csproj
│ ├── Eto.Serialization.Json.targets
│ ├── EtoBinder.cs
│ ├── EtoContractResolver.cs
│ ├── EventValueProvider.cs
│ ├── JsonReader.cs
│ └── NamespaceManager.cs
├── Eto.Serialization.Xaml
│ ├── DesignerUserControl.cs
│ ├── Eto.Serialization.Xaml.csproj
│ ├── Eto.Serialization.Xaml.targets
│ ├── EtoNameScope.cs
│ ├── EtoXamlSchemaContext.cs
│ ├── EtoXamlType.cs
│ ├── Extensions
│ │ ├── BindingExtension.cs
│ │ ├── FileExtension.cs
│ │ ├── FontExtension.cs
│ │ ├── OnExtension.cs
│ │ ├── ResourceExtension.cs
│ │ └── StaticResourceExtension.cs
│ ├── Properties
│ │ └── AssemblyInfo.cs
│ └── XamlReader.cs
├── Eto.WinForms
│ ├── BubbleEventFilter.cs
│ ├── CustomControls
│ │ ├── CalendarPicker.png
│ │ ├── ExtendedDateTimePicker.cs
│ │ └── TreeController.cs
│ ├── Drawing
│ │ ├── BitmapHandler.cs
│ │ ├── BrushHandler.cs
│ │ ├── FontFamilyHandler.cs
│ │ ├── FontHandler.cs
│ │ ├── FontTypefaceHandler.cs
│ │ ├── FontsHandler.cs
│ │ ├── FormattedTextHandler.cs
│ │ ├── GraphicsHandler.cs
│ │ ├── GraphicsPathHandler.cs
│ │ ├── IconFrameHandler.cs
│ │ ├── IconHandler.cs
│ │ ├── IndexedBitmapHandler.cs
│ │ ├── LinearGradientBrushHandler.cs
│ │ ├── MatrixHandler.cs
│ │ ├── PenHandler.cs
│ │ ├── RadialGradientBrushHandler.cs
│ │ ├── SolidBrushHandler.cs
│ │ ├── SystemColorsHandler.cs
│ │ └── TextureBrushHandler.cs
│ ├── Eto.WinForms.csproj
│ ├── EtoEnvironmentHandler.cs
│ ├── Forms
│ │ ├── ApplicationHandler.cs
│ │ ├── Cells
│ │ │ ├── CellHandler.cs
│ │ │ ├── CheckBoxCellHandler.cs
│ │ │ ├── ComboBoxCellHandler.cs
│ │ │ ├── CustomCellHandler.cs
│ │ │ ├── DrawableCellHandler.cs
│ │ │ ├── ImageTextCellHandler.cs
│ │ │ ├── ImageViewCellHandler.cs
│ │ │ ├── ProgressCellHandler.cs
│ │ │ └── TextBoxCellHandler.cs
│ │ ├── ClipboardHandler.cs
│ │ ├── ColorDialogHandler.cs
│ │ ├── Controls
│ │ │ ├── ButtonHandler.cs
│ │ │ ├── CalendarHandler.cs
│ │ │ ├── CheckBoxHandler.cs
│ │ │ ├── ColorPickerHandler.cs
│ │ │ ├── ComboBoxHandler.cs
│ │ │ ├── ControlHandler.cs
│ │ │ ├── DateTimePickerHandler.cs
│ │ │ ├── DrawableHandler.cs
│ │ │ ├── DropDownHandler.cs
│ │ │ ├── GridColumnHandler.cs
│ │ │ ├── GridHandler.cs
│ │ │ ├── GridViewHandler.cs
│ │ │ ├── GroupBoxHandler.cs
│ │ │ ├── ImageViewHandler.cs
│ │ │ ├── LabelHandler.cs
│ │ │ ├── LinkButtonHandler.cs
│ │ │ ├── ListBoxHandler.cs
│ │ │ ├── NativeControlHandler.cs
│ │ │ ├── NumericStepperHandler.cs
│ │ │ ├── PanelHandler.cs
│ │ │ ├── PasswordBoxHandler.cs
│ │ │ ├── ProgressBarHandler.cs
│ │ │ ├── RadioButton.cs
│ │ │ ├── RichTextAreaHandler.cs
│ │ │ ├── ScrollableHandler.cs
│ │ │ ├── SearchBoxHandler.cs
│ │ │ ├── SliderHandler.cs
│ │ │ ├── SplitterHandler.cs
│ │ │ ├── StepperHandler.cs
│ │ │ ├── TabControlHandler.cs
│ │ │ ├── TabPageHandler.cs
│ │ │ ├── TextAreaHandler.cs
│ │ │ ├── TextBoxHandler.cs
│ │ │ ├── TextStepperHandler.cs
│ │ │ ├── ToggleButtonHandler.cs
│ │ │ ├── TreeGridViewHandler.cs
│ │ │ ├── TreeViewHandler.cs
│ │ │ └── WebViewHandler.cs
│ │ ├── CursorHandler.cs
│ │ ├── DialogHandler.cs
│ │ ├── Extensions.cs
│ │ ├── FloatingFormHandler.cs
│ │ ├── FontDialogHandler.cs
│ │ ├── FormHandler.cs
│ │ ├── HwndFormHandler.cs
│ │ ├── Menu
│ │ │ ├── ButtonMenuItemHandler.cs
│ │ │ ├── CheckMenuItemHandler.cs
│ │ │ ├── ContextMenuHandler.cs
│ │ │ ├── MenuBarHandler.cs
│ │ │ ├── MenuHandler.cs
│ │ │ ├── RadioMenuItemHandler.cs
│ │ │ ├── SeparatorMenuItem.cs
│ │ │ └── SubMenuItemHandler.cs
│ │ ├── MessageBoxHandler.cs
│ │ ├── MouseHandler.cs
│ │ ├── NativeFormHandler.cs
│ │ ├── OpenFileDialogHandler.cs
│ │ ├── OpenWithDialogHandler.cs
│ │ ├── PixelLayoutHandler.cs
│ │ ├── Printing
│ │ │ ├── PrintDialogHandler.cs
│ │ │ ├── PrintDocumentHandler.cs
│ │ │ ├── PrintPreviewDialogHandler.cs
│ │ │ └── PrintSettingsHandler.cs
│ │ ├── SaveFileDialogHandler.cs
│ │ ├── ScreenHandler.cs
│ │ ├── ScreensHandler.cs
│ │ ├── SelectFolderDialogHandler.cs
│ │ ├── SwfDragEventArgs.cs
│ │ ├── SwfShellDropBehavior.cs
│ │ ├── TableLayoutHandler.cs
│ │ ├── ToolBar
│ │ │ ├── ButtonToolItemHandler.cs
│ │ │ ├── CheckToolItemHandler.cs
│ │ │ ├── DropDownToolItemHandler.cs
│ │ │ ├── RadioToolItemHandler.cs
│ │ │ ├── SeparatorToolBarItemHandler.cs
│ │ │ ├── ToolBarHandler.cs
│ │ │ └── ToolItemHandler.cs
│ │ ├── TrayIndicatorHandler.cs
│ │ ├── UITimerHandler.cs
│ │ ├── WindowHandler.cs
│ │ ├── WindowsContainer.cs
│ │ ├── WindowsControl.cs
│ │ ├── WindowsFileDialog.cs
│ │ └── WindowsPanel.cs
│ ├── KeyMap.cs
│ ├── LeakHelper.cs
│ ├── OctreeQuantizer.cs
│ ├── PaletteQuantizer.cs
│ ├── Platform.cs
│ ├── Quantizer.cs
│ ├── Resources.Designer.cs
│ ├── Resources.resx
│ ├── Resources
│ │ ├── Clear.png
│ │ └── Search.png
│ ├── ScrollMessageFilter.cs
│ ├── Win32.cs
│ ├── Win32.dpi.cs
│ ├── Win32.gdi.cs
│ ├── Win32TextBox.cs
│ ├── WinConversions.cs
│ ├── WinConversions.shared.cs
│ └── WinFormsHelpers.cs
├── Eto.WinUI
│ ├── CustomControls
│ │ └── SpinButton.cs
│ ├── Eto.WinUI.csproj
│ ├── EtoEnvironmentHandler.cs
│ ├── Forms
│ │ ├── ApplicationHandler.cs
│ │ ├── ControlExtensions.cs
│ │ ├── Controls
│ │ │ ├── BindingConverter.cs
│ │ │ ├── BindingTemplates.xaml
│ │ │ ├── ButtonHandler.cs
│ │ │ ├── CheckBoxHandler.cs
│ │ │ ├── DropDownHandler.cs
│ │ │ ├── EtoBindingTextBlock.xaml
│ │ │ ├── EtoBindingTextBlock.xaml.cs
│ │ │ ├── LabelHandler.cs
│ │ │ ├── ListBoxHandler.cs
│ │ │ ├── NumericStepperHandler.cs
│ │ │ ├── PanelHandler.cs
│ │ │ ├── ScrollableHandler.cs
│ │ │ ├── SplitterHandler.cs
│ │ │ ├── StepperHandler.cs
│ │ │ ├── TextAreaHandler.cs
│ │ │ ├── TextBoxHandler.cs
│ │ │ └── WinUIExtensions.cs
│ │ ├── FormHandler.cs
│ │ ├── TableLayoutHandler.cs
│ │ ├── WinUIBorderedControl.cs
│ │ ├── WinUIContainer.cs
│ │ ├── WinUIControl.cs
│ │ ├── WinUIFrameworkElement.cs
│ │ ├── WinUILayout.cs
│ │ ├── WinUIPanel.cs
│ │ └── WinUIWindow.cs
│ ├── Platform.cs
│ ├── WinUIConversions.cs
│ ├── WinUIExtensions.cs
│ ├── WinUIHelpers.cs
│ └── themes
│ │ └── Generic.xaml
├── Eto.Wpf
│ ├── AssemblyAbsoluteResourceDictionary.cs
│ ├── CustomControls
│ │ ├── DragDropLib.Swf.cs
│ │ ├── DragDropLib.Wpf.cs
│ │ ├── DragDropLib.cs
│ │ ├── EditableTextBlock.cs
│ │ ├── FontDialog
│ │ │ ├── fontchooser.xaml
│ │ │ ├── fontchooser.xaml.cs
│ │ │ ├── fontfamilylistitem.cs
│ │ │ ├── fontsizelistitem.cs
│ │ │ ├── typefacelistitem.cs
│ │ │ └── typographicfeaturelistitem.cs
│ │ ├── GlassHelper.cs
│ │ ├── HttpServer.cs
│ │ ├── MultiSizeImage.cs
│ │ ├── SelectableTreeView.cs
│ │ └── TreeGridView
│ │ │ └── TreeToggleButton.cs
│ ├── DragDropConversions.cs
│ ├── Drawing
│ │ ├── BitmapHandler.cs
│ │ ├── CachedBitmapFrame.cs
│ │ ├── FontFamilyHandler.cs
│ │ ├── FontHandler.cs
│ │ ├── FontTypefaceHandler.cs
│ │ ├── FontsHandler.cs
│ │ ├── FormattedTextHandler.cs
│ │ ├── GraphicsHandler.cs
│ │ ├── GraphicsPathHandler.cs
│ │ ├── IconFrameHandler.cs
│ │ ├── IconHandler.cs
│ │ ├── IndexedBitmapHandler.cs
│ │ ├── LinearGradientBrushHandler.cs
│ │ ├── MatrixHandler.cs
│ │ ├── PenHandler.cs
│ │ ├── RadialGradientBrushHandler.cs
│ │ ├── SolidBrushHandler.cs
│ │ ├── SystemColorsHandler.cs
│ │ ├── SystemIconsHandler.cs
│ │ ├── TextureBrushHandler.cs
│ │ └── TransformStack.cs
│ ├── Eto.Wpf.csproj
│ ├── EtoEnvironmentHandler.cs
│ ├── Forms
│ │ ├── ApplicationHandler.cs
│ │ ├── Cells
│ │ │ ├── CellHandler.cs
│ │ │ ├── CheckBoxCellHandler.cs
│ │ │ ├── ComboBoxCellHandler.cs
│ │ │ ├── CustomCellHandler.cs
│ │ │ ├── DrawableCellHandler.cs
│ │ │ ├── ImageTextCellHandler.cs
│ │ │ ├── ImageViewCellHandler.cs
│ │ │ ├── ProgressCellHandler.cs
│ │ │ └── TextBoxCellHandler.cs
│ │ ├── ClipboardHandler.cs
│ │ ├── ColorDialogHandler.cs
│ │ ├── Controls
│ │ │ ├── ButtonHandler.cs
│ │ │ ├── CalendarHandler.cs
│ │ │ ├── CheckBoxHandler.cs
│ │ │ ├── ColorPickerHandler.cs
│ │ │ ├── ComboBoxHandler.cs
│ │ │ ├── DateTimePickerHandler.cs
│ │ │ ├── DrawableHandler.cs
│ │ │ ├── DropDownHandler.cs
│ │ │ ├── EtoGridCollectionView.cs
│ │ │ ├── ExpanderHandler.cs
│ │ │ ├── GridColumnHandler.cs
│ │ │ ├── GridHandler.cs
│ │ │ ├── GridViewHandler.cs
│ │ │ ├── GroupBoxHandler.cs
│ │ │ ├── ImageViewHandler.cs
│ │ │ ├── LabelHandler.cs
│ │ │ ├── LinkButtonHandler.cs
│ │ │ ├── ListBoxHandler.cs
│ │ │ ├── NativeControlHandler.cs
│ │ │ ├── NumericStepperHandler.cs
│ │ │ ├── PanelHandler.cs
│ │ │ ├── PasswordBoxHandler.cs
│ │ │ ├── ProgressBarHandler.cs
│ │ │ ├── RadioButtonHandler.cs
│ │ │ ├── RichTextAreaHandler.cs
│ │ │ ├── ScrollableHandler.cs
│ │ │ ├── SearchBoxHandler.cs
│ │ │ ├── SliderHandler.cs
│ │ │ ├── SplitterHandler.cs
│ │ │ ├── StepperHandler.cs
│ │ │ ├── SwfWebViewHandler.cs
│ │ │ ├── TabControlHandler.cs
│ │ │ ├── TabPageHandler.cs
│ │ │ ├── TextAreaHandler.cs
│ │ │ ├── TextBoxHandler.cs
│ │ │ ├── TextStepperHandler.cs
│ │ │ ├── ToggleButtonHandler.cs
│ │ │ ├── TreeGridViewHandler.cs
│ │ │ ├── TreeViewHandler.cs
│ │ │ ├── WebView2Handler.cs
│ │ │ ├── WpfListItemHelper.cs
│ │ │ ├── WpfTreeItemHelper.cs
│ │ │ └── WpfWebViewHandler.cs
│ │ ├── CursorHandler.cs
│ │ ├── DataObjectHandler.cs
│ │ ├── DialogHandler.cs
│ │ ├── EnableThemingInScope.cs
│ │ ├── EtoBorder.cs
│ │ ├── FloatingFormHandler.cs
│ │ ├── FontDialogHandler.cs
│ │ ├── FormHandler.cs
│ │ ├── KeyboardHandler.cs
│ │ ├── Menu
│ │ │ ├── ButtonMenuItemHandler.cs
│ │ │ ├── CheckMenuItemHandler.cs
│ │ │ ├── ContextMenuHandler.cs
│ │ │ ├── MenuBarHandler.cs
│ │ │ ├── MenuHandler.cs
│ │ │ ├── MenuItemHandler.cs
│ │ │ ├── RadioMenuItemHandler.cs
│ │ │ ├── SeparatorMenuItemHandler.cs
│ │ │ └── SubMenuItemHandler.cs
│ │ ├── MessageBoxHandler.cs
│ │ ├── MouseHandler.cs
│ │ ├── NativeFormHandler.cs
│ │ ├── NotificationHandler.cs
│ │ ├── OpenFileDialogHandler.cs
│ │ ├── OpenWithDialogHandler.cs
│ │ ├── PerMonitorDpiHelper.cs
│ │ ├── PixelLayoutHandler.cs
│ │ ├── Printing
│ │ │ ├── PrintDialogHandler.cs
│ │ │ ├── PrintDocumentHandler.cs
│ │ │ ├── PrintPreviewDialogHandler.cs
│ │ │ └── PrintSettingsHandler.cs
│ │ ├── SaveFileDialogHandler.cs
│ │ ├── ScreenHandler.cs
│ │ ├── ScreensHandler.cs
│ │ ├── SelectFolderDialogHandler.cs
│ │ ├── TableLayoutHandler.cs
│ │ ├── TaskbarHandler.cs
│ │ ├── ToolBar
│ │ │ ├── ButtonToolItemHandler.cs
│ │ │ ├── CheckToolItemHandler.cs
│ │ │ ├── DropDownToolItemHandler.cs
│ │ │ ├── RadioToolItemHandler.cs
│ │ │ ├── SeparatorToolItemHandler.cs
│ │ │ ├── ToolBarHandler.cs
│ │ │ └── ToolItemHandler.cs
│ │ ├── TrayIndicatorHandler.cs
│ │ ├── UITimerHandler.cs
│ │ ├── VistaSelectFolderDialogHandler.cs
│ │ ├── WindowHandler.cs
│ │ ├── WindowsFormsHostHandler.cs
│ │ ├── WpfCommonDialog.cs
│ │ ├── WpfContainer.cs
│ │ ├── WpfControl.cs
│ │ ├── WpfDragEventArgs.cs
│ │ ├── WpfFileDialog.cs
│ │ ├── WpfFrameworkElement.cs
│ │ ├── WpfLayout.cs
│ │ ├── WpfPanel.cs
│ │ ├── WpfShellDropBehavior.cs
│ │ └── WpfWindow.cs
│ ├── KeyMap.cs
│ ├── LogicalScreenHelper.cs
│ ├── NameDictionaryExtensions.cs
│ ├── Platform.cs
│ ├── Properties
│ │ ├── AssemblyInfo.cs
│ │ ├── FontDialogResources.Designer.cs
│ │ ├── FontDialogResources.resources
│ │ └── FontDialogResources.resx
│ ├── PropertyChangeNotifier.cs
│ ├── PropertyPathHelper.cs
│ ├── ShellIcon.cs
│ ├── Win32.dib.cs
│ ├── WinFormsHelpers.cs
│ ├── WpfConversions.cs
│ ├── WpfExtensions.cs
│ ├── WpfHelpers.cs
│ ├── WpfProperties.cs
│ ├── XPThemes.manifest
│ └── themes
│ │ ├── controls
│ │ ├── DataGrid.xaml
│ │ ├── SearchTextBox.xaml
│ │ ├── ToggleButton.xaml
│ │ ├── WatermarkTextBox.xaml
│ │ ├── Window.xaml
│ │ └── XceedColorDialog.xaml
│ │ ├── generic.xaml
│ │ └── wpftoolkit
│ │ └── ButtonSpinner.xaml
├── Eto.iOS.sln
├── Eto.iOS
│ ├── Conversions.cs
│ ├── Drawing
│ │ ├── BitmapHandler.cs
│ │ ├── FontFamilyHandler.cs
│ │ ├── FontTypefaceHandler.cs
│ │ ├── IconHandler.cs
│ │ ├── ImageHandler.cs
│ │ └── IndexedBitmapHandler.cs
│ ├── Eto.iOS.csproj
│ ├── EtoAppDelegate.cs
│ ├── EtoEnvironmentHandler.cs
│ ├── Extensions.cs
│ ├── Forms
│ │ ├── ApplicationHandler.cs
│ │ ├── Cells
│ │ │ ├── CellHandler.cs
│ │ │ ├── CheckBoxCellHandler.cs
│ │ │ ├── ComboBoxCellHandler.cs
│ │ │ ├── ImageTextCellHandler.cs
│ │ │ ├── ImageViewCellHandler.cs
│ │ │ └── TextBoxCellHandler.cs
│ │ ├── ClipboardHandler.cs
│ │ ├── Controls
│ │ │ ├── BasePickerHandler.cs
│ │ │ ├── ButtonHandler.cs
│ │ │ ├── CheckBoxHandler.cs
│ │ │ ├── ComboBoxHandler.cs
│ │ │ ├── DateTimePickerHandler.cs
│ │ │ ├── DrawableHandler.cs
│ │ │ ├── DropDownHandler.cs
│ │ │ ├── GridColumnHandler.cs
│ │ │ ├── GridHandler.cs
│ │ │ ├── GridViewHandler.cs
│ │ │ ├── GroupBoxHandler.cs
│ │ │ ├── ImageViewHandler.cs
│ │ │ ├── IosButton.cs
│ │ │ ├── IosControl.cs
│ │ │ ├── LabelHandler.cs
│ │ │ ├── ListBoxHandler.cs
│ │ │ ├── NavigationHandler.cs
│ │ │ ├── NumericStepperHandler.cs
│ │ │ ├── PanelHandler.cs
│ │ │ ├── PasswordBoxHandler.cs
│ │ │ ├── ProgressBarHandler.cs
│ │ │ ├── RadioButtonHandler.cs
│ │ │ ├── ScrollableHandler.cs
│ │ │ ├── SearchBoxHandler.cs
│ │ │ ├── SliderHandler.cs
│ │ │ ├── SpinnerHandler.cs
│ │ │ ├── SplitterHandler.cs
│ │ │ ├── TabControlHandler.cs
│ │ │ ├── TabPageHandler.cs
│ │ │ ├── TextAreaHandler.cs
│ │ │ ├── TextBoxHandler.cs
│ │ │ ├── TreeGridViewHandler.cs
│ │ │ └── WebViewHandler.cs
│ │ ├── DialogHandler.cs
│ │ ├── FormHandler.cs
│ │ ├── IosLayout.cs
│ │ ├── IosView.cs
│ │ ├── IosViewExtensions.cs
│ │ ├── IosWindow.cs
│ │ ├── MacCompatibility.cs
│ │ ├── MessageBoxHandler.cs
│ │ ├── PixelLayoutHandler.cs
│ │ ├── RotatableViewController.cs
│ │ ├── ScreenHandler.cs
│ │ ├── ScreensHandler.cs
│ │ └── Toolbar
│ │ │ ├── ButtonToolItemHandler.cs
│ │ │ ├── CheckToolItemHandler.cs
│ │ │ ├── RadioToolItemHandler.cs
│ │ │ ├── SeparatorToolItemHandler.cs
│ │ │ ├── ToolItemHandler.cs
│ │ │ └── ToolbarHandler.cs
│ ├── InvokeHelper.cs
│ ├── Platform.cs
│ ├── Properties
│ │ └── AssemblyInfo.cs
│ └── Threading
│ │ └── ThreadHandler.cs
├── Eto.sln
├── Eto
│ ├── AutoInitializeAttribute.cs
│ ├── BreakingChanges.txt
│ ├── CollectionChangedHandler.cs
│ ├── ContentProperty.cs
│ ├── DefaultStyleProvider.cs
│ ├── DisplayAttributeExtensions.cs
│ ├── Drawing
│ │ ├── Bitmap.cs
│ │ ├── BitmapData.cs
│ │ ├── Brush.cs
│ │ ├── Brushes.cs
│ │ ├── Color.cs
│ │ ├── ColorCMYK.cs
│ │ ├── ColorConverter.cs
│ │ ├── ColorHSB.cs
│ │ ├── ColorHSL.cs
│ │ ├── Colors.cs
│ │ ├── DashStyle.cs
│ │ ├── DashStyles.cs
│ │ ├── FillMode.cs
│ │ ├── Font.cs
│ │ ├── FontConverter.cs
│ │ ├── FontFamilies.cs
│ │ ├── FontFamily.cs
│ │ ├── FontTypeface.cs
│ │ ├── Fonts.cs
│ │ ├── FormattedText.cs
│ │ ├── Graphics.cs
│ │ ├── GraphicsPath.cs
│ │ ├── Icon.cs
│ │ ├── IconFrame.cs
│ │ ├── Image.cs
│ │ ├── ImageConverter.cs
│ │ ├── ImageInterpolation.cs
│ │ ├── IndexedBitmap.cs
│ │ ├── LinearGradientBrush.cs
│ │ ├── Matrix.cs
│ │ ├── Padding.cs
│ │ ├── PaddingConverter.cs
│ │ ├── PaddingF.cs
│ │ ├── PaddingFConverter.cs
│ │ ├── Palette.cs
│ │ ├── Pen.cs
│ │ ├── PenLineCap.cs
│ │ ├── PenLineJoin.cs
│ │ ├── Pens.cs
│ │ ├── PixelOffsetMode.cs
│ │ ├── Point.cs
│ │ ├── PointConverter.cs
│ │ ├── PointF.cs
│ │ ├── PointFConverter.cs
│ │ ├── RadialGradientBrush.cs
│ │ ├── Rectangle.cs
│ │ ├── RectangleConverter.cs
│ │ ├── RectangleF.cs
│ │ ├── RectangleFConverter.cs
│ │ ├── Region.cs
│ │ ├── Size.cs
│ │ ├── SizeConverter.cs
│ │ ├── SizeF.cs
│ │ ├── SizeFConverter.cs
│ │ ├── SolidBrush.cs
│ │ ├── SystemColors.cs
│ │ ├── SystemFonts.cs
│ │ ├── SystemIcons.cs
│ │ └── TextureBrush.cs
│ ├── Eto.Forms.targets
│ ├── Eto.csproj
│ ├── EtoEnvironment.cs
│ ├── EtoMemberIdentifier.cs
│ ├── EventLookup.cs
│ ├── ExportHandlerAttribute.cs
│ ├── ExtendedObservableCollection.cs
│ ├── FileAction.cs
│ ├── Forms
│ │ ├── AboutDialog.cs
│ │ ├── Application.cs
│ │ ├── Binding
│ │ │ ├── BindableBinding.cs
│ │ │ ├── BindableExtensions.cs
│ │ │ ├── BindableWidget.cs
│ │ │ ├── Binding.cs
│ │ │ ├── Binding.helpers.cs
│ │ │ ├── BindingChangedEventArgs.cs
│ │ │ ├── BindingChangingEventArgs.cs
│ │ │ ├── BindingCollection.cs
│ │ │ ├── BindingExtensionsNonGeneric.cs
│ │ │ ├── ColumnBinding.cs
│ │ │ ├── DelegateBinding.cs
│ │ │ ├── DirectBinding.cs
│ │ │ ├── DualBinding.cs
│ │ │ ├── IBindable.cs
│ │ │ ├── IValueConverter.cs
│ │ │ ├── IndirectBinding.cs
│ │ │ ├── IndirectChildBinding.cs
│ │ │ ├── ObjectBinding.cs
│ │ │ ├── PropertyBinding.cs
│ │ │ ├── PropertyBindingException.cs
│ │ │ └── PropertyNotifyHelper.cs
│ │ ├── BindingExtensions.cs
│ │ ├── Cells
│ │ │ ├── Cell.cs
│ │ │ ├── CheckBoxCell.cs
│ │ │ ├── ComboBoxCell.cs
│ │ │ ├── CustomCell.cs
│ │ │ ├── DrawableCell.cs
│ │ │ ├── ImageTextCell.cs
│ │ │ ├── ImageViewCell.cs
│ │ │ ├── ProgressCell.cs
│ │ │ ├── PropertyCell.cs
│ │ │ ├── SingleValueCell.cs
│ │ │ └── TextBoxCell.cs
│ │ ├── Clipboard.cs
│ │ ├── ColorDialog.cs
│ │ ├── Command.cs
│ │ ├── CommonDialog.cs
│ │ ├── Container.cs
│ │ ├── ControlBinding.cs
│ │ ├── ControlConverter.cs
│ │ ├── Controls
│ │ │ ├── Button.cs
│ │ │ ├── Calendar.cs
│ │ │ ├── CheckBox.cs
│ │ │ ├── CheckBoxList.cs
│ │ │ ├── CollectionEditor.cs
│ │ │ ├── ColorPicker.cs
│ │ │ ├── ComboBox.cs
│ │ │ ├── CommonControl.cs
│ │ │ ├── Control.cs
│ │ │ ├── DataStoreExtensions.cs
│ │ │ ├── DateTimePicker.cs
│ │ │ ├── DocumentControl.cs
│ │ │ ├── DocumentPage.cs
│ │ │ ├── DragEventArgs.cs
│ │ │ ├── Drawable.cs
│ │ │ ├── DropDown.cs
│ │ │ ├── EnumCheckBoxList.cs
│ │ │ ├── EnumDropDown.cs
│ │ │ ├── EnumRadioButtonList.cs
│ │ │ ├── Expander.cs
│ │ │ ├── FilePicker.cs
│ │ │ ├── FontPicker.cs
│ │ │ ├── Grid.cs
│ │ │ ├── GridColumn.cs
│ │ │ ├── GridItem.cs
│ │ │ ├── GridView.cs
│ │ │ ├── GroupBox.cs
│ │ │ ├── ImageView.cs
│ │ │ ├── KeyEventArgs.cs
│ │ │ ├── Label.cs
│ │ │ ├── LinkButton.cs
│ │ │ ├── ListBox.cs
│ │ │ ├── ListControl.cs
│ │ │ ├── MaskedTextBox.cs
│ │ │ ├── MaskedTextStepper.cs
│ │ │ ├── MouseEventArgs.cs
│ │ │ ├── NativeControlHost.cs
│ │ │ ├── Navigation.cs
│ │ │ ├── NavigationItem.cs
│ │ │ ├── NumericStepper.cs
│ │ │ ├── Panel.cs
│ │ │ ├── PasswordBox.cs
│ │ │ ├── ProgressBar.cs
│ │ │ ├── PropertyGrid.cs
│ │ │ ├── RadioButton.cs
│ │ │ ├── RadioButtonList.cs
│ │ │ ├── RichTextArea.cs
│ │ │ ├── Scrollable.cs
│ │ │ ├── SearchBox.cs
│ │ │ ├── Slider.cs
│ │ │ ├── Spinner.cs
│ │ │ ├── Splitter.cs
│ │ │ ├── Stepper.cs
│ │ │ ├── TabControl.cs
│ │ │ ├── TabPage.cs
│ │ │ ├── TextArea.cs
│ │ │ ├── TextBox.cs
│ │ │ ├── TextChangingEventArgs.cs
│ │ │ ├── TextControl.cs
│ │ │ ├── TextInputEventArgs.cs
│ │ │ ├── TextStepper.cs
│ │ │ ├── ThemedContainerHandler.cs
│ │ │ ├── ThemedControlHandler.cs
│ │ │ ├── ToggleButton.cs
│ │ │ ├── TreeGridItem.cs
│ │ │ ├── TreeGridView.cs
│ │ │ ├── TreeItem.cs
│ │ │ ├── TreeView.cs
│ │ │ └── WebView.cs
│ │ ├── Cursor.cs
│ │ ├── Cursors.cs
│ │ ├── DataFormats.cs
│ │ ├── DataObject.cs
│ │ ├── DataStoreVirtualCollection.cs
│ │ ├── Dialog.cs
│ │ ├── DockPosition.cs
│ │ ├── FileDialog.cs
│ │ ├── FileFilter.cs
│ │ ├── FilterCollection.cs
│ │ ├── FloatingForm.cs
│ │ ├── FontDialog.cs
│ │ ├── Form.cs
│ │ ├── IDataStore.cs
│ │ ├── IKeyboardInputSource.cs
│ │ ├── IMouseInputSource.cs
│ │ ├── Key.cs
│ │ ├── Keyboard.cs
│ │ ├── KeysConverter.cs
│ │ ├── Layout
│ │ │ ├── DynamicControl.cs
│ │ │ ├── DynamicItem.cs
│ │ │ ├── DynamicItemConverter.cs
│ │ │ ├── DynamicLayout.cs
│ │ │ ├── DynamicRowConverter.cs
│ │ │ ├── DynamicTable.cs
│ │ │ ├── Layout.cs
│ │ │ ├── PixelLayout.cs
│ │ │ ├── StackLayout.cs
│ │ │ ├── StackLayoutItemConverter.cs
│ │ │ ├── TableCell.cs
│ │ │ ├── TableCellConverter.cs
│ │ │ ├── TableLayout.cs
│ │ │ ├── TableRow.cs
│ │ │ └── TableRowConverter.cs
│ │ ├── ListItem.cs
│ │ ├── LocalizeEventArgs.cs
│ │ ├── MaskedTextProvider
│ │ │ ├── FixedMaskedTextProvider.cs
│ │ │ ├── IMaskedTextProvider.cs
│ │ │ ├── NumericMaskedTextProvider.cs
│ │ │ └── VariableMaskedTextProvider.cs
│ │ ├── Menu
│ │ │ ├── ButtonMenuItem.cs
│ │ │ ├── CheckMenuItem.cs
│ │ │ ├── ContextMenu.cs
│ │ │ ├── Menu.cs
│ │ │ ├── MenuBar.cs
│ │ │ ├── MenuItem.cs
│ │ │ ├── MenuItemCollection.cs
│ │ │ ├── MenuItemConverter.cs
│ │ │ ├── RadioMenuItem.cs
│ │ │ ├── SeparatorMenuItem.cs
│ │ │ ├── SubMenu.cs
│ │ │ └── SubMenuItem.cs
│ │ ├── MessageBox.cs
│ │ ├── Mouse.cs
│ │ ├── Notification.cs
│ │ ├── NotificationEventArgs.cs
│ │ ├── ObjectData.cs
│ │ ├── OpenFileDialog.cs
│ │ ├── OpenWithDialog.cs
│ │ ├── Orientation.cs
│ │ ├── Printing
│ │ │ ├── PageSettings.cs
│ │ │ ├── PrintDialog.cs
│ │ │ ├── PrintDocument.cs
│ │ │ ├── PrintPageEventArgs.cs
│ │ │ ├── PrintPreviewDialog.cs
│ │ │ └── PrintSettings.cs
│ │ ├── Range.cs
│ │ ├── RelayCommand.cs
│ │ ├── RelayValueCommand.cs
│ │ ├── SaveFileDialog.cs
│ │ ├── Screen.cs
│ │ ├── SegmentedButton
│ │ │ ├── ButtonSegmentedItem.cs
│ │ │ ├── MenuSegmentedItem.cs
│ │ │ ├── SegmentedButton.cs
│ │ │ ├── SegmentedItem.cs
│ │ │ ├── SegmentedItemClickEventArgs.cs
│ │ │ ├── SegmentedItemCollection.cs
│ │ │ └── SegmentedItemConverter.cs
│ │ ├── SelectFolderDialog.cs
│ │ ├── Taskbar.cs
│ │ ├── TaskbarProgressState.cs
│ │ ├── ThemedControls
│ │ │ ├── ThemedAboutHandler.cs
│ │ │ ├── ThemedCollectionEditorHandler.cs
│ │ │ ├── ThemedColorPickerHandler.cs
│ │ │ ├── ThemedDocumentControlHandler.cs
│ │ │ ├── ThemedDocumentPageHandler.cs
│ │ │ ├── ThemedExpanderHandler.cs
│ │ │ ├── ThemedFilePickerHandler.cs
│ │ │ ├── ThemedFontPickerHandler.cs
│ │ │ ├── ThemedMessageBoxHandler.cs
│ │ │ ├── ThemedPropertyGridHandler.cs
│ │ │ ├── ThemedSegmentedButtonHandler.cs
│ │ │ ├── ThemedSpinnerHandler.cs
│ │ │ ├── ThemedSplitterHandler.cs
│ │ │ ├── ThemedStepperHandler.cs
│ │ │ └── ThemedTextStepperHandler.cs
│ │ ├── ToolBar
│ │ │ ├── ButtonToolItem.cs
│ │ │ ├── CheckToolItem.cs
│ │ │ ├── DropDownToolItem.cs
│ │ │ ├── RadioToolItem.cs
│ │ │ ├── SeparatorToolItem.cs
│ │ │ ├── Tool.cs
│ │ │ ├── ToolBar.cs
│ │ │ ├── ToolItem.cs
│ │ │ ├── ToolItemCollection.cs
│ │ │ └── ToolItemConverter.cs
│ │ ├── TrayIndicator.cs
│ │ ├── UITimer.cs
│ │ ├── ValueCommand.cs
│ │ ├── WidgetExtensions.cs
│ │ └── Window.cs
│ ├── HandlerAttribute.cs
│ ├── Helper.cs
│ ├── IO
│ │ └── SystemIcons.cs
│ ├── NamespaceInfo.cs
│ ├── OperatingSystemPlatform.cs
│ ├── PclTypes.cs
│ ├── Platform.cs
│ ├── PlatformContext.cs
│ ├── PlatformExtension.cs
│ ├── Platforms.cs
│ ├── Properties
│ │ └── AssemblyInfo.cs
│ ├── PropertyDescriptorHelpers.cs
│ ├── PropertyStore.cs
│ ├── RuntimeNamePropertyAttribute.cs
│ ├── Style.cs
│ ├── Threading
│ │ └── Thread.cs
│ ├── UnhandledExceptionEventHandler.cs
│ ├── Widget.cs
│ ├── WidgetHandler.cs
│ └── sdk
│ │ ├── Sdk.props
│ │ └── Sdk.targets
└── Shared
│ ├── BaseBitmapData.cs
│ ├── Conversions.cs
│ ├── EmbeddedAssemblyLoader.cs
│ ├── EnumerableExtensions.cs
│ ├── FixedMaskedTextProviderHandler.cs
│ ├── GradientHelper.cs
│ ├── HttpClientExtensions.cs
│ ├── MutableCellEventArgs.cs
│ └── OpenTypeFontInfo.cs
└── test
├── Directory.Build.props
├── Directory.Build.targets
├── Eto.Test.Android
├── Assets
│ └── AboutAssets.txt
├── Eto.Test.Android.csproj
├── MainActivity.cs
├── Properties
│ └── AndroidManifest.xml
└── Resources
│ ├── AboutResources.txt
│ ├── drawable
│ └── Icon.png
│ ├── layout
│ └── Main.axml
│ └── values
│ └── Strings.xml
├── Eto.Test.Direct2D
├── Eto.Test.Direct2D.csproj
├── Startup.cs
└── app.config
├── Eto.Test.Gtk
├── Eto.Test.Gtk.csproj
├── Eto.Test.Gtk2.csproj
├── Eto.Test.Gtk3.csproj
├── NativeHostControls.cs
├── Startup.cs
└── UnitTests
│ └── NativeParentWindowTests.cs
├── Eto.Test.Mac
├── Assets
│ ├── TestBundleResource.txt
│ ├── TestContent.txt
│ └── TestCopyToOutput.txt
├── Eto.Test.Mac64.csproj
├── Eto.Test.macOS.csproj
├── Info.plist
├── NativeHostControls.cs
├── Startup.cs
├── TestIcon.icns
├── UnitTests
│ ├── BitmapTests.cs
│ ├── ButtonTests.cs
│ ├── CheckBoxTests.cs
│ ├── DrawableTests.cs
│ ├── GridViewTests.cs
│ ├── IconTests.cs
│ ├── LabelTests.cs
│ ├── NativeParentWindowTests.cs
│ ├── RadioButtonTests.cs
│ ├── ResourceTests.cs
│ ├── RichTextAreaHandlerTests.cs
│ └── ScrollableTests.cs
└── linker.xml
├── Eto.Test.WinForms
├── Eto.Test.WinForms.csproj
├── NativeHostControls.cs
├── Startup.cs
├── UnitTests
│ ├── NativeParentWindowTests.cs
│ └── NativeTests.cs
├── app.config
└── app.manifest
├── Eto.Test.WinUI
├── App.xaml
├── App.xaml.cs
├── Assets
│ ├── LockScreenLogo.scale-200.png
│ ├── SplashScreen.scale-200.png
│ ├── Square150x150Logo.scale-200.png
│ ├── Square44x44Logo.scale-200.png
│ ├── Square44x44Logo.targetsize-24_altform-unplated.png
│ ├── StoreLogo.png
│ └── Wide310x150Logo.scale-200.png
├── Eto.Test.WinUI.csproj
├── Package.appxmanifest
├── Properties
│ ├── PublishProfiles
│ │ ├── win10-arm64.pubxml
│ │ ├── win10-x64.pubxml
│ │ └── win10-x86.pubxml
│ └── launchSettings.json
└── app.manifest
├── Eto.Test.Wpf
├── Eto.Test.Wpf.csproj
├── NativeHostControls.cs
├── Properties
│ └── AssemblyInfo.cs
├── Startup.cs
├── TestIcon.ico
├── UnitTests
│ ├── BitmapTests.cs
│ ├── DataContextTests.cs
│ ├── DropDownTests.cs
│ ├── LabelTests.cs
│ ├── MenuBarTests.cs
│ ├── NativeParentWindowTests.cs
│ ├── ScreenTests.cs
│ ├── ScreenToClientTests.cs
│ ├── ScrollableTests.cs
│ ├── TransformStackTest.cs
│ └── WindowTests.cs
├── app.config
└── app.manifest
├── Eto.Test.iOS
├── Eto.Test.iOS.csproj
├── Info.plist
├── MainForm.cs
├── Properties
│ └── AssemblyInfo.cs
├── Resources
│ ├── Default-568h@2x.png
│ ├── Default.png
│ └── Default@2x.png
├── Startup.cs
└── app.config
└── Eto.Test
├── Commands
├── About.cs
└── Quit.cs
├── CultureDropDown.cs
├── Eto.Test.csproj
├── Handlers
├── TabControlHandler.cs
└── TabPageHandler.cs
├── Images
├── Busy.cur
├── Logo.png
├── Logo@0.5x.png
├── Logo@1.5x.png
├── Logo@2x.png
├── Logo@4x.png
├── LogoWith288DPI.png
├── LogoWith288DPI@2x.png
├── TestIcon.ico
├── TestImage.png
├── Textures.gif
└── Textures.png
├── Log.cs
├── LoremGenerator.cs
├── MainForm.cs
├── NativeHostControls.cs
├── PointEntry.cs
├── Resources
└── Resource.designer.cs
├── SectionList.cs
├── Sections
├── Behaviors
│ ├── AllControlsBase.cs
│ ├── BadgeLabelSection.cs
│ ├── ClipboardSection.cs
│ ├── ContextMenuSection.cs
│ ├── CursorSection.cs
│ ├── DragDropSection.cs
│ ├── DynamicFocusSection.cs
│ ├── DynamicMenuBarSection.cs
│ ├── FocusEventsSection.cs
│ ├── KeyEventsSection.cs
│ ├── KeyboardSection.cs
│ ├── MouseEventsSection.cs
│ ├── MousePositionSection.cs
│ ├── NotificationSection.cs
│ ├── OperatingSystemPlatformSection.cs
│ ├── RestartSection.cs
│ ├── ScreenSection.cs
│ ├── TabIndexSection.cs
│ ├── TaskbarSection.cs
│ ├── ToolBarSection.cs
│ ├── ToolTipSection.cs
│ ├── TrayIndicatorSection.cs
│ └── WindowsSection.cs
├── Controls
│ ├── ButtonSection.cs
│ ├── CalendarSection.cs
│ ├── CheckBoxListSection.cs
│ ├── CheckBoxSection.cs
│ ├── ColorPickerSection.cs
│ ├── ComboBoxSection.cs
│ ├── ControlColorsSection.cs
│ ├── DateTimePickerSection.cs
│ ├── DocumentControlSection.cs
│ ├── DrawableSection.cs
│ ├── DropDownSection.cs
│ ├── ExpanderSection.cs
│ ├── FilePickerSection.cs
│ ├── FontPickerSection.cs
│ ├── GridCellFormattingSection.cs
│ ├── GridViewSection.cs
│ ├── GroupBoxSection.cs
│ ├── ImageViewSection.cs
│ ├── KitchenSinkSection.cs
│ ├── LabelSection.cs
│ ├── LinkButtonSection.cs
│ ├── ListBoxSection.cs
│ ├── MaskedTextBoxSection.cs
│ ├── MaskedTextStepperSection.cs
│ ├── NumericStepperSection.cs
│ ├── PasswordBoxSection.cs
│ ├── ProgressBarSection.cs
│ ├── PropertyCellSection.cs
│ ├── PropertyGridSection.cs
│ ├── RadioButtonListSection.cs
│ ├── RadioButtonSection.cs
│ ├── RichTextAreaSection.cs
│ ├── ScrollableSection.cs
│ ├── SegmentedButtonSection.cs
│ ├── SliderSection.cs
│ ├── SpinnerSection.cs
│ ├── SplitterSection.cs
│ ├── StepperSection.cs
│ ├── TabControlSection.cs
│ ├── TextAreaSection.cs
│ ├── TextBoxSection.cs
│ ├── TextStepperSection.cs
│ ├── ToggleButtonSection.cs
│ ├── TreeGridViewSection.cs
│ ├── TreeViewSection.cs
│ └── WebViewSection.cs
├── Dialogs
│ ├── AboutDialogSection.cs
│ ├── ColorDialogSection.cs
│ ├── DialogSection.cs
│ ├── FileDialogSection.cs
│ ├── FontDialogSection.cs
│ ├── MessageBoxSection.cs
│ ├── OpenWithDialogSection.cs
│ └── SelectFolderSection.cs
├── Drawing
│ ├── AntialiasSection.cs
│ ├── BitmapSection.cs
│ ├── BrushSection.cs
│ ├── ClearSection.cs
│ ├── ClipSection.cs
│ ├── ClipTransformSection.cs
│ ├── DrawLoopSection.cs
│ ├── DrawTextSection.cs
│ ├── FormattedTextSection.cs
│ ├── GetPixelSection.cs
│ ├── GraphicsPathSection.cs
│ ├── IconFrameSection.cs
│ ├── IndexedBitmapSection.cs
│ ├── InterpolationSection.cs
│ ├── PenSection.cs
│ ├── PixelOffsetModeSection.cs
│ ├── PixelOffsetTransforms.cs
│ ├── SystemColorSection.cs
│ ├── SystemIconsSection.cs
│ ├── TextureBrushesSection.cs
│ ├── TextureBrushesSection2.cs
│ └── TransformSection.cs
├── Layouts
│ ├── PixelLayoutSection
│ │ └── AnchorSection.cs
│ ├── ScrollingLayouts
│ │ ├── DockLayoutExpansion.cs
│ │ ├── PixelLayoutExpansion.cs
│ │ ├── TableLayoutExpansion.cs
│ │ └── TablePaddingAndSpacingSection.cs
│ └── TableLayoutSection
│ │ ├── ChildWidthSection.cs
│ │ ├── RuntimeSection.cs
│ │ ├── ScalingSection.cs
│ │ └── SpacingSection.cs
├── Printing
│ └── PrintDialogSection.cs
├── Serialization
│ ├── Json
│ │ ├── Test.cs
│ │ └── Test.jeto
│ ├── JsonReadSection.cs
│ ├── Xaml
│ │ ├── Test.cs
│ │ └── Test.xeto
│ └── XamlReadSection.cs
├── UnitTestPanel.cs
└── UnitTestSection.cs
├── Settings.cs
├── SizeEntry.cs
├── TestApplication.cs
├── TestIcons.cs
├── TestSections.cs
└── UnitTests
├── CollectionChangedHandlerTest.cs
├── Drawing
├── BitmapTests.cs
├── BrushTests.cs
├── ClipTests.cs
├── ColorTests.cs
├── DefaultValueTests.cs
├── FontTests.cs
├── GraphicsOffsetModeTests.cs
├── GraphicsPathTests.cs
├── GraphicsTests.cs
├── IconTests.cs
├── MatrixTests.cs
└── PenTests.cs
├── Forms
├── ApplicationTests.cs
├── Behaviors
│ └── MouseTests.cs
├── Bindings
│ ├── BindingHelpersTests.cs
│ ├── ChildBindingTests.cs
│ ├── DelegateBindingTests.cs
│ ├── ObjectBindingChangedTests.cs
│ ├── ObjectBindingObjectChangedTests.cs
│ └── PropertyBindingTests.cs
├── CascadingStyleTests.cs
├── ClipboardTests.cs
├── ContainerTests.cs
├── Controls
│ ├── ButtonTests.cs
│ ├── CalendarTests.cs
│ ├── ComboBoxTests.cs
│ ├── ControlEventTests.cs
│ ├── ControlTests.cs
│ ├── CustomCellTests.cs
│ ├── DocumentControlTests.cs
│ ├── DrawableTests.cs
│ ├── DropDownTests.cs
│ ├── GridTests.cs
│ ├── GridViewFilterTests.cs
│ ├── GridViewSelectTests.cs
│ ├── GridViewSelectableFilterTests.cs
│ ├── GridViewTests.cs
│ ├── GroupBoxTests.cs
│ ├── ImageViewTests.cs
│ ├── LabelTests.cs
│ ├── ListBoxTests.cs
│ ├── ListControlTests.cs
│ ├── NumericStepperTests.cs
│ ├── PanelTests.cs
│ ├── ProgressBarTests.cs
│ ├── RadioButtonListTests.cs
│ ├── RadioButtonTests.cs
│ ├── RichTextAreaTests.cs
│ ├── ScrollableTests.cs
│ ├── SegmentedButtonTests.cs
│ ├── SliderTests.cs
│ ├── SplitterTests.cs
│ ├── TextAreaTests.cs
│ ├── TextBoxTests.cs
│ ├── TextChangingEventArgsTests.cs
│ ├── TreeGridViewTests.cs
│ └── WebViewTests.cs
├── DataContextTests.cs
├── DefaultStyleProviderTests.cs
├── DialogTests.cs
├── FileDialogTests.cs
├── FilterCollectionTests.cs
├── FloatingFormTests.cs
├── FontDialogTests.cs
├── FormTests.cs
├── GlobalStyleProviderTests.cs
├── GridViewUtils.cs
├── Layout
│ ├── DynamicLayoutTests.cs
│ ├── LayoutTests.cs
│ ├── PixelLayoutTests.cs
│ ├── StackLayoutTests.cs
│ └── TableLayoutTests.cs
├── MenuItemTests.cs
├── MessageBoxTests.cs
├── NativeControlHostTests.cs
├── PrintingTests.cs
├── RangeTests.cs
├── TestClasses.cs
├── ThemedMessageBoxTests.cs
├── ToolBarTests.cs
├── ToolItemCollectionTests.cs
├── WindowTests.cs
└── XamlTests.cs
├── PlatformTests.cs
├── SingleFileDefaultTestAssemblyBuilder.cs
└── TestBase.cs
/.config/dotnet-tools.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": 1,
3 | "isRoot": true,
4 | "tools": {
5 | "dotnet-t4": {
6 | "version": "2.2.1",
7 | "commands": [
8 | "t4"
9 | ]
10 | }
11 | }
12 | }
--------------------------------------------------------------------------------
/.gitattributes:
--------------------------------------------------------------------------------
1 |
2 | * text=auto
3 | *.sh eol=lf
4 | *.entitlements eol=lf
5 | *.sln eol=crlf
6 | *.cmd eol=crlf
7 | *.csproj text
8 | *.xaml text
9 |
--------------------------------------------------------------------------------
/.github/FUNDING.yml:
--------------------------------------------------------------------------------
1 | # These are supported funding model platforms
2 |
3 | github: cwensley
4 | patreon: # Replace with a single Patreon username
5 | open_collective: # Replace with a single Open Collective username
6 | ko_fi: # Replace with a single Ko-fi username
7 | tidelift: # Replace with a single Tidelift platform-name/package-name e.g., npm/babel
8 | community_bridge: # Replace with a single Community Bridge project-name e.g., cloud-foundry
9 | liberapay: # Replace with a single Liberapay username
10 | issuehunt: # Replace with a single IssueHunt username
11 | otechie: # Replace with a single Otechie username
12 | custom: # Replace with up to 4 custom sponsorship URLs e.g., ['link1', 'link2']
13 |
--------------------------------------------------------------------------------
/.github/ISSUE_TEMPLATE/feature_request.md:
--------------------------------------------------------------------------------
1 | ---
2 | name: Feature request
3 | about: Suggest an idea for this project
4 | title: ''
5 | labels: ''
6 | assignees: ''
7 |
8 | ---
9 |
10 | **Is your feature request related to a problem? Please describe.**
11 | A clear and concise description of what the problem is. Ex. I'm always frustrated when [...]
12 |
13 | **Describe the solution you'd like**
14 | A clear and concise description of what you want to happen.
15 |
16 | **Describe alternatives you've considered**
17 | A clear and concise description of any alternative solutions or features you've considered.
18 |
19 | **Additional context**
20 | Add any other context or screenshots about the feature request here.
21 |
--------------------------------------------------------------------------------
/.gitignore:
--------------------------------------------------------------------------------
1 | *.orig
2 | *.user
3 | *.pidb
4 | *.userprefs
5 | *.suo
6 | bin/
7 | obj/
8 | *.shfbproj_*
9 | UpgradeLog*.htm
10 | /src/Components
11 | AppPackages
12 | .vs/
13 | [Tt]humbs.db
14 | /artifacts
15 | packages/
16 | .store
17 | .DS_Store
18 | *.proj.Backup.tmp
19 | ._.*
20 |
--------------------------------------------------------------------------------
/.gitmodules:
--------------------------------------------------------------------------------
1 | [submodule "lib/monomac"]
2 | path = lib/monomac
3 | url = https://github.com/cwensley/monomac.git
4 |
--------------------------------------------------------------------------------
/.vscode/settings.json:
--------------------------------------------------------------------------------
1 | {
2 | "editor.insertSpaces": false,
3 | "editor.detectIndentation": false,
4 | "files.exclude": {
5 | "**/.vs": true,
6 | "**/*.user": true
7 | },
8 | "var": {
9 | "configuration" : "Debug",
10 | "buildProperties" : "/v:Minimal /p:GenerateFullPaths=True /consoleloggerparameters:'ForceNoAlign;NoSummary'"
11 | },
12 | "vssolution.altSolutionFolders": [
13 | "src",
14 | "samples"
15 | ],
16 | "dotnet.defaultSolution": "src/Eto.sln"
17 |
18 | }
--------------------------------------------------------------------------------
/build.cmd:
--------------------------------------------------------------------------------
1 | @echo off
2 |
3 | WHERE dotnet > nul
4 | IF %ERRORLEVEL% NEQ 0 (
5 | ECHO dotnet not found. Install the .NET 5+ SDK
6 | pause
7 | )
8 |
9 | set BUILD_DIR=%~dp0build
10 | dotnet msbuild -v:minimal -t:Package -p:SetVersion=%1 "%BUILD_DIR%\Build.proj"
11 |
--------------------------------------------------------------------------------
/build.sh:
--------------------------------------------------------------------------------
1 | #!/bin/bash
2 |
3 | DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"
4 | dotnet msbuild /v:minimal /t:Package /p:SetVersion=$1 $DIR/build/Build.proj
5 |
--------------------------------------------------------------------------------
/build/Common.Mac.targets:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/build/build-help-shfb.cmd:
--------------------------------------------------------------------------------
1 | echo off
2 |
3 | WHERE msbuild > nul
4 | IF %ERRORLEVEL% NEQ 0 (
5 | ECHO msbuild not found. Run in the Developer Command Prompt for VS 2017
6 | pause
7 | )
8 |
9 | set BUILD_DIR=%~dp0
10 | msbuild -t:BuildHelpShfb "%BUILD_DIR%\Build.proj"
11 |
12 | pause
--------------------------------------------------------------------------------
/build/help/xml/index.xml:
--------------------------------------------------------------------------------
1 |
2 | Eto Cross Platform Framework
3 | © 2018 by Curtis Wensley
4 |
5 |
--------------------------------------------------------------------------------
/build/help/xml/ns-Eto.Drawing.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 | Graphics and Drawing
4 | Graphics and drawing routines
5 |
6 |
7 |
--------------------------------------------------------------------------------
/build/help/xml/ns-Eto.Forms.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 | User Interface
4 | User interface forms and controls
5 |
6 |
7 |
--------------------------------------------------------------------------------
/build/help/xml/ns-Eto.IO.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 | Abstracted I/O
4 | Abstracted input/output interfaces
5 |
6 |
7 |
--------------------------------------------------------------------------------
/build/help/xml/ns-Eto.Misc.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 | Obsolete namespace
4 | Obsolete namespace
5 |
6 |
7 |
--------------------------------------------------------------------------------
/build/help/xml/ns-Eto.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 | Core functionality
4 | Core functionality of the Eto framework
5 |
6 |
7 |
--------------------------------------------------------------------------------
/build/msbuild.cmd:
--------------------------------------------------------------------------------
1 | @echo off
2 | setlocal enabledelayedexpansion
3 |
4 | set vswhere=%ProgramFiles(x86)%\Microsoft Visual Studio\Installer\vswhere.exe
5 | set version=16.0
6 |
7 | for /f "usebackq tokens=*" %%i in (`"%vswhere%" -version %version% -requires Microsoft.Component.MSBuild -find MSBuild\**\Bin\MSBuild.exe`) do (
8 | "%%i" %*
9 | exit /b !errorlevel!
10 | )
--------------------------------------------------------------------------------
/dotnet-workloads.json:
--------------------------------------------------------------------------------
1 | {
2 | "microsoft.net.sdk.macos": "14.0.8478"
3 | }
--------------------------------------------------------------------------------
/images/linux.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/picoe/Eto/3fe1a808ade99210545ce9dc1dc17144941634f0/images/linux.png
--------------------------------------------------------------------------------
/images/mac.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/picoe/Eto/3fe1a808ade99210545ce9dc1dc17144941634f0/images/mac.png
--------------------------------------------------------------------------------
/images/windows.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/picoe/Eto/3fe1a808ade99210545ce9dc1dc17144941634f0/images/windows.png
--------------------------------------------------------------------------------
/lib/GtkSharp3/atk-sharp.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/picoe/Eto/3fe1a808ade99210545ce9dc1dc17144941634f0/lib/GtkSharp3/atk-sharp.dll
--------------------------------------------------------------------------------
/lib/GtkSharp3/atk-sharp.dll.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
--------------------------------------------------------------------------------
/lib/GtkSharp3/atk-sharp.dll.mdb:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/picoe/Eto/3fe1a808ade99210545ce9dc1dc17144941634f0/lib/GtkSharp3/atk-sharp.dll.mdb
--------------------------------------------------------------------------------
/lib/GtkSharp3/cairo-sharp.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/picoe/Eto/3fe1a808ade99210545ce9dc1dc17144941634f0/lib/GtkSharp3/cairo-sharp.dll
--------------------------------------------------------------------------------
/lib/GtkSharp3/cairo-sharp.dll.mdb:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/picoe/Eto/3fe1a808ade99210545ce9dc1dc17144941634f0/lib/GtkSharp3/cairo-sharp.dll.mdb
--------------------------------------------------------------------------------
/lib/GtkSharp3/gdk-sharp.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/picoe/Eto/3fe1a808ade99210545ce9dc1dc17144941634f0/lib/GtkSharp3/gdk-sharp.dll
--------------------------------------------------------------------------------
/lib/GtkSharp3/gdk-sharp.dll.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
--------------------------------------------------------------------------------
/lib/GtkSharp3/gdk-sharp.dll.mdb:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/picoe/Eto/3fe1a808ade99210545ce9dc1dc17144941634f0/lib/GtkSharp3/gdk-sharp.dll.mdb
--------------------------------------------------------------------------------
/lib/GtkSharp3/gio-sharp.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/picoe/Eto/3fe1a808ade99210545ce9dc1dc17144941634f0/lib/GtkSharp3/gio-sharp.dll
--------------------------------------------------------------------------------
/lib/GtkSharp3/gio-sharp.dll.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
--------------------------------------------------------------------------------
/lib/GtkSharp3/gio-sharp.dll.mdb:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/picoe/Eto/3fe1a808ade99210545ce9dc1dc17144941634f0/lib/GtkSharp3/gio-sharp.dll.mdb
--------------------------------------------------------------------------------
/lib/GtkSharp3/glib-sharp.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/picoe/Eto/3fe1a808ade99210545ce9dc1dc17144941634f0/lib/GtkSharp3/glib-sharp.dll
--------------------------------------------------------------------------------
/lib/GtkSharp3/glib-sharp.dll.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
--------------------------------------------------------------------------------
/lib/GtkSharp3/glib-sharp.dll.mdb:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/picoe/Eto/3fe1a808ade99210545ce9dc1dc17144941634f0/lib/GtkSharp3/glib-sharp.dll.mdb
--------------------------------------------------------------------------------
/lib/GtkSharp3/gtk-sharp.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/picoe/Eto/3fe1a808ade99210545ce9dc1dc17144941634f0/lib/GtkSharp3/gtk-sharp.dll
--------------------------------------------------------------------------------
/lib/GtkSharp3/gtk-sharp.dll.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
--------------------------------------------------------------------------------
/lib/GtkSharp3/gtk-sharp.dll.mdb:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/picoe/Eto/3fe1a808ade99210545ce9dc1dc17144941634f0/lib/GtkSharp3/gtk-sharp.dll.mdb
--------------------------------------------------------------------------------
/lib/GtkSharp3/pango-sharp.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/picoe/Eto/3fe1a808ade99210545ce9dc1dc17144941634f0/lib/GtkSharp3/pango-sharp.dll
--------------------------------------------------------------------------------
/lib/GtkSharp3/pango-sharp.dll.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
--------------------------------------------------------------------------------
/lib/GtkSharp3/pango-sharp.dll.mdb:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/picoe/Eto/3fe1a808ade99210545ce9dc1dc17144941634f0/lib/GtkSharp3/pango-sharp.dll.mdb
--------------------------------------------------------------------------------
/lib/SHDocVw/Interop.SHDocVw.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/picoe/Eto/3fe1a808ade99210545ce9dc1dc17144941634f0/lib/SHDocVw/Interop.SHDocVw.dll
--------------------------------------------------------------------------------
/lib/webkit-sharp/webkit-sharp.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/picoe/Eto/3fe1a808ade99210545ce9dc1dc17144941634f0/lib/webkit-sharp/webkit-sharp.dll
--------------------------------------------------------------------------------
/nuget.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/samples/Directory.Build.props:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | false
6 | $(BasePath)artifacts\samples\$(MSBuildProjectName)\
7 |
8 |
--------------------------------------------------------------------------------
/samples/Directory.Build.targets:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/samples/Gtk/EmbedEtoInGtk/MainWindow.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using Gtk;
3 | using Eto.Forms;
4 |
5 | namespace EmbedEtoInGtk
6 | {
7 |
8 | public class MainWindow: Gtk.Window
9 | {
10 | public MainWindow() : base(Gtk.WindowType.Toplevel)
11 | {
12 | Title = "EmbedEtoInGtk.MainWindow";
13 | WindowPosition = Gtk.WindowPosition.CenterOnParent;
14 | DefaultWidth = 423;
15 | DefaultHeight = 312;
16 | DeleteEvent += OnDeleteEvent;
17 |
18 | var nativeWidget = new MyEtoPanel().ToNative(true);
19 |
20 | Child = nativeWidget;
21 | }
22 |
23 | protected void OnDeleteEvent(object sender, DeleteEventArgs a)
24 | {
25 | Gtk.Application.Quit();
26 | a.RetVal = true;
27 | }
28 | }
29 |
30 | }
--------------------------------------------------------------------------------
/samples/Gtk/EmbedEtoInGtk/MyEtoPanel.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using Eto.Forms;
3 | using Eto.Drawing;
4 |
5 | namespace EmbedEtoInGtk
6 | {
7 | ///
8 | /// Eto.Forms panel to embed in an existing WinForms app
9 | ///
10 | public class MyEtoPanel : Panel
11 | {
12 | public MyEtoPanel()
13 | {
14 | Content = new TableLayout
15 | {
16 | Spacing = new Size(5, 5),
17 | Rows =
18 | {
19 | new TableRow(new Label { Text = "An Eto.Forms control" }),
20 | new TableRow(new TextBox()),
21 | new TableRow(new ComboBox { Items = { "Item 1", "Item 2", "Item 3" } }),
22 | null
23 | }
24 | };
25 | }
26 | }
27 | }
28 |
--------------------------------------------------------------------------------
/samples/Gtk/EmbedEtoInGtk/Program.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using Gtk;
3 |
4 | namespace EmbedEtoInGtk
5 | {
6 | static class Program
7 | {
8 | public static MainWindow MainWindow { get; set; }
9 |
10 | [STAThread]
11 | public static void Main(string[] args)
12 | {
13 | Application.Init();
14 | new Eto.Forms.Application(new Eto.GtkSharp.Platform()).Attach();
15 | MainWindow = new MainWindow();
16 | MainWindow.Show();
17 | Application.Run();
18 | }
19 | }
20 | }
21 |
--------------------------------------------------------------------------------
/samples/Gtk/EmbedGtkInEto/MainForm.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using Eto.Forms;
3 | using Eto.Drawing;
4 |
5 | namespace EmbedGtkInEto
6 | {
7 | public class MainForm : Form
8 | {
9 | public MainForm()
10 | {
11 | Menu = new MenuBar();
12 |
13 | // create a new native MonoMac view and wrap it in an eto control
14 | var nativeControl = new MyNativeWidget().ToEto();
15 |
16 | Content = new TableLayout
17 | {
18 | Padding = new Padding(10),
19 | Spacing = new Size(5, 5),
20 | Rows =
21 | {
22 | nativeControl,
23 | null,
24 | new TableLayout(new TableRow(null, new Button { Text = "An Eto.Forms button" })),
25 | }
26 | };
27 | }
28 | }
29 | }
30 |
31 |
--------------------------------------------------------------------------------
/samples/Gtk/EmbedGtkInEto/Program.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using Eto.Forms;
3 |
4 | namespace EmbedGtkInEto
5 | {
6 | static class Program
7 | {
8 | [STAThread]
9 | public static void Main(string[] args)
10 | {
11 | new Application(new Eto.GtkSharp.Platform()).Run(new MainForm());
12 | }
13 | }
14 | }
15 |
16 |
--------------------------------------------------------------------------------
/samples/MacOS/EmbedEtoInMacOS/AppDelegate.cs:
--------------------------------------------------------------------------------
1 | using AppKit;
2 | using Foundation;
3 |
4 | namespace EmbedEtoInMacOS
5 | {
6 | [Register("AppDelegate")]
7 | public class AppDelegate : NSApplicationDelegate
8 | {
9 | public AppDelegate()
10 | {
11 | }
12 |
13 | public override void DidFinishLaunching(NSNotification notification)
14 | {
15 | // Insert code here to initialize your application
16 | }
17 |
18 | public override void WillTerminate(NSNotification notification)
19 | {
20 | // Insert code here to tear down your application
21 | }
22 | }
23 | }
24 |
--------------------------------------------------------------------------------
/samples/MacOS/EmbedEtoInMacOS/Assets.xcassets/AppIcon.appiconset/AppIcon-128.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/picoe/Eto/3fe1a808ade99210545ce9dc1dc17144941634f0/samples/MacOS/EmbedEtoInMacOS/Assets.xcassets/AppIcon.appiconset/AppIcon-128.png
--------------------------------------------------------------------------------
/samples/MacOS/EmbedEtoInMacOS/Assets.xcassets/AppIcon.appiconset/AppIcon-128@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/picoe/Eto/3fe1a808ade99210545ce9dc1dc17144941634f0/samples/MacOS/EmbedEtoInMacOS/Assets.xcassets/AppIcon.appiconset/AppIcon-128@2x.png
--------------------------------------------------------------------------------
/samples/MacOS/EmbedEtoInMacOS/Assets.xcassets/AppIcon.appiconset/AppIcon-16.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/picoe/Eto/3fe1a808ade99210545ce9dc1dc17144941634f0/samples/MacOS/EmbedEtoInMacOS/Assets.xcassets/AppIcon.appiconset/AppIcon-16.png
--------------------------------------------------------------------------------
/samples/MacOS/EmbedEtoInMacOS/Assets.xcassets/AppIcon.appiconset/AppIcon-16@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/picoe/Eto/3fe1a808ade99210545ce9dc1dc17144941634f0/samples/MacOS/EmbedEtoInMacOS/Assets.xcassets/AppIcon.appiconset/AppIcon-16@2x.png
--------------------------------------------------------------------------------
/samples/MacOS/EmbedEtoInMacOS/Assets.xcassets/AppIcon.appiconset/AppIcon-256.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/picoe/Eto/3fe1a808ade99210545ce9dc1dc17144941634f0/samples/MacOS/EmbedEtoInMacOS/Assets.xcassets/AppIcon.appiconset/AppIcon-256.png
--------------------------------------------------------------------------------
/samples/MacOS/EmbedEtoInMacOS/Assets.xcassets/AppIcon.appiconset/AppIcon-256@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/picoe/Eto/3fe1a808ade99210545ce9dc1dc17144941634f0/samples/MacOS/EmbedEtoInMacOS/Assets.xcassets/AppIcon.appiconset/AppIcon-256@2x.png
--------------------------------------------------------------------------------
/samples/MacOS/EmbedEtoInMacOS/Assets.xcassets/AppIcon.appiconset/AppIcon-32.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/picoe/Eto/3fe1a808ade99210545ce9dc1dc17144941634f0/samples/MacOS/EmbedEtoInMacOS/Assets.xcassets/AppIcon.appiconset/AppIcon-32.png
--------------------------------------------------------------------------------
/samples/MacOS/EmbedEtoInMacOS/Assets.xcassets/AppIcon.appiconset/AppIcon-32@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/picoe/Eto/3fe1a808ade99210545ce9dc1dc17144941634f0/samples/MacOS/EmbedEtoInMacOS/Assets.xcassets/AppIcon.appiconset/AppIcon-32@2x.png
--------------------------------------------------------------------------------
/samples/MacOS/EmbedEtoInMacOS/Assets.xcassets/AppIcon.appiconset/AppIcon-512.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/picoe/Eto/3fe1a808ade99210545ce9dc1dc17144941634f0/samples/MacOS/EmbedEtoInMacOS/Assets.xcassets/AppIcon.appiconset/AppIcon-512.png
--------------------------------------------------------------------------------
/samples/MacOS/EmbedEtoInMacOS/Assets.xcassets/AppIcon.appiconset/AppIcon-512@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/picoe/Eto/3fe1a808ade99210545ce9dc1dc17144941634f0/samples/MacOS/EmbedEtoInMacOS/Assets.xcassets/AppIcon.appiconset/AppIcon-512@2x.png
--------------------------------------------------------------------------------
/samples/MacOS/EmbedEtoInMacOS/Assets.xcassets/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "info" : {
3 | "version" : 1,
4 | "author" : "xcode"
5 | }
6 | }
--------------------------------------------------------------------------------
/samples/MacOS/EmbedEtoInMacOS/Entitlements.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
--------------------------------------------------------------------------------
/samples/MacOS/EmbedEtoInMacOS/Main.cs:
--------------------------------------------------------------------------------
1 | using AppKit;
2 |
3 | namespace EmbedEtoInMacOS
4 | {
5 | static class MainClass
6 | {
7 | static void Main(string[] args)
8 | {
9 | NSApplication.Init();
10 |
11 | // initialize eto forms after native app is initialized
12 | new Eto.Forms.Application(new Eto.Mac.Platform()).Attach();
13 |
14 | NSApplication.Main(args);
15 | }
16 | }
17 | }
18 |
--------------------------------------------------------------------------------
/samples/MacOS/EmbedEtoInMacOS/MyEtoPanel.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using Eto.Forms;
3 | using Eto.Drawing;
4 |
5 | namespace EmbedEtoInMacOS
6 | {
7 | ///
8 | /// Eto.Forms panel to embed in an existing MonoMac app
9 | ///
10 | ///
11 | /// This is used in to add to the existing native app.
12 | ///
13 | public class MyEtoPanel : Panel
14 | {
15 | public MyEtoPanel()
16 | {
17 | Content = new TableLayout
18 | {
19 | Spacing = new Size(5, 5),
20 | Rows =
21 | {
22 | new TableRow(new Label { Text = "An Eto.Forms control" }),
23 | new TableRow(new TextBox()),
24 | new TableRow(new ComboBox { Items = { "Item 1", "Item 2", "Item 3" } }),
25 | null
26 | }
27 | };
28 | }
29 | }
30 | }
31 |
32 |
--------------------------------------------------------------------------------
/samples/MacOS/EmbedEtoInMacOS/ViewController.designer.cs:
--------------------------------------------------------------------------------
1 | // WARNING
2 | //
3 | // This file has been generated automatically by Visual Studio to store outlets and
4 | // actions made in the UI designer. If it is removed, they will be lost.
5 | // Manual changes to this file may not be handled correctly.
6 | //
7 | using Foundation;
8 | using System.CodeDom.Compiler;
9 |
10 | namespace EmbedEtoInMacOS
11 | {
12 | [Register ("ViewController")]
13 | partial class ViewController
14 | {
15 |
16 | void ReleaseDesignerOutlets ()
17 | {
18 | }
19 | }
20 | }
21 |
--------------------------------------------------------------------------------
/samples/MacOS/EmbedMacOSInEto/AppDelegate.cs:
--------------------------------------------------------------------------------
1 | using AppKit;
2 | using Foundation;
3 |
4 | namespace EmbedMacOSInEto
5 | {
6 | [Register("AppDelegate")]
7 | public class AppDelegate : NSApplicationDelegate
8 | {
9 | public AppDelegate()
10 | {
11 | }
12 |
13 | public override void DidFinishLaunching(NSNotification notification)
14 | {
15 | // Insert code here to initialize your application
16 | }
17 |
18 | public override void WillTerminate(NSNotification notification)
19 | {
20 | // Insert code here to tear down your application
21 | }
22 | }
23 | }
24 |
--------------------------------------------------------------------------------
/samples/MacOS/EmbedMacOSInEto/Assets.xcassets/AppIcon.appiconset/AppIcon-128.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/picoe/Eto/3fe1a808ade99210545ce9dc1dc17144941634f0/samples/MacOS/EmbedMacOSInEto/Assets.xcassets/AppIcon.appiconset/AppIcon-128.png
--------------------------------------------------------------------------------
/samples/MacOS/EmbedMacOSInEto/Assets.xcassets/AppIcon.appiconset/AppIcon-128@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/picoe/Eto/3fe1a808ade99210545ce9dc1dc17144941634f0/samples/MacOS/EmbedMacOSInEto/Assets.xcassets/AppIcon.appiconset/AppIcon-128@2x.png
--------------------------------------------------------------------------------
/samples/MacOS/EmbedMacOSInEto/Assets.xcassets/AppIcon.appiconset/AppIcon-16.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/picoe/Eto/3fe1a808ade99210545ce9dc1dc17144941634f0/samples/MacOS/EmbedMacOSInEto/Assets.xcassets/AppIcon.appiconset/AppIcon-16.png
--------------------------------------------------------------------------------
/samples/MacOS/EmbedMacOSInEto/Assets.xcassets/AppIcon.appiconset/AppIcon-16@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/picoe/Eto/3fe1a808ade99210545ce9dc1dc17144941634f0/samples/MacOS/EmbedMacOSInEto/Assets.xcassets/AppIcon.appiconset/AppIcon-16@2x.png
--------------------------------------------------------------------------------
/samples/MacOS/EmbedMacOSInEto/Assets.xcassets/AppIcon.appiconset/AppIcon-256.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/picoe/Eto/3fe1a808ade99210545ce9dc1dc17144941634f0/samples/MacOS/EmbedMacOSInEto/Assets.xcassets/AppIcon.appiconset/AppIcon-256.png
--------------------------------------------------------------------------------
/samples/MacOS/EmbedMacOSInEto/Assets.xcassets/AppIcon.appiconset/AppIcon-256@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/picoe/Eto/3fe1a808ade99210545ce9dc1dc17144941634f0/samples/MacOS/EmbedMacOSInEto/Assets.xcassets/AppIcon.appiconset/AppIcon-256@2x.png
--------------------------------------------------------------------------------
/samples/MacOS/EmbedMacOSInEto/Assets.xcassets/AppIcon.appiconset/AppIcon-32.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/picoe/Eto/3fe1a808ade99210545ce9dc1dc17144941634f0/samples/MacOS/EmbedMacOSInEto/Assets.xcassets/AppIcon.appiconset/AppIcon-32.png
--------------------------------------------------------------------------------
/samples/MacOS/EmbedMacOSInEto/Assets.xcassets/AppIcon.appiconset/AppIcon-32@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/picoe/Eto/3fe1a808ade99210545ce9dc1dc17144941634f0/samples/MacOS/EmbedMacOSInEto/Assets.xcassets/AppIcon.appiconset/AppIcon-32@2x.png
--------------------------------------------------------------------------------
/samples/MacOS/EmbedMacOSInEto/Assets.xcassets/AppIcon.appiconset/AppIcon-512.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/picoe/Eto/3fe1a808ade99210545ce9dc1dc17144941634f0/samples/MacOS/EmbedMacOSInEto/Assets.xcassets/AppIcon.appiconset/AppIcon-512.png
--------------------------------------------------------------------------------
/samples/MacOS/EmbedMacOSInEto/Assets.xcassets/AppIcon.appiconset/AppIcon-512@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/picoe/Eto/3fe1a808ade99210545ce9dc1dc17144941634f0/samples/MacOS/EmbedMacOSInEto/Assets.xcassets/AppIcon.appiconset/AppIcon-512@2x.png
--------------------------------------------------------------------------------
/samples/MacOS/EmbedMacOSInEto/Assets.xcassets/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "info" : {
3 | "version" : 1,
4 | "author" : "xcode"
5 | }
6 | }
--------------------------------------------------------------------------------
/samples/MacOS/EmbedMacOSInEto/Entitlements.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
--------------------------------------------------------------------------------
/samples/MacOS/EmbedMacOSInEto/Main.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using AppKit;
3 | using Eto.Forms;
4 |
5 | namespace EmbedMacOSInEto
6 | {
7 | static class MainClass
8 | {
9 | [STAThread]
10 | public static void Main(string[] args)
11 | {
12 | new Application(new Eto.Mac.Platform()).Run(new MainForm());
13 | }
14 | }
15 | }
16 |
--------------------------------------------------------------------------------
/samples/MacOS/EmbedMacOSInEto/MainForm.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using Eto.Drawing;
3 | using Eto.Forms;
4 |
5 | namespace EmbedMacOSInEto
6 | {
7 | public class MainForm : Form
8 | {
9 | public MainForm()
10 | {
11 | Menu = new MenuBar();
12 |
13 | // create a new native MonoMac view and wrap it in an eto control
14 | var nativeControl = new MyNativeViewController().ToEto();
15 |
16 | Content = new TableLayout
17 | {
18 | Padding = new Padding(10),
19 | Spacing = new Size(5, 5),
20 | Rows =
21 | {
22 | nativeControl,
23 | null,
24 | new TableLayout(new TableRow(null, new Button { Text = "An Eto.Forms button" })),
25 | }
26 | };
27 | }
28 | }
29 | }
30 |
--------------------------------------------------------------------------------
/samples/MacOS/EmbedMacOSInEto/MyNativeView.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections.Generic;
3 | using System.Linq;
4 | using Foundation;
5 | using AppKit;
6 |
7 | namespace EmbedMacOSInEto
8 | {
9 | public partial class MyNativeView : AppKit.NSView
10 | {
11 | #region Constructors
12 |
13 | // Called when created from unmanaged code
14 | public MyNativeView(IntPtr handle) : base(handle)
15 | {
16 | Initialize();
17 | }
18 |
19 | // Called when created directly from a XIB file
20 | [Export("initWithCoder:")]
21 | public MyNativeView(NSCoder coder) : base(coder)
22 | {
23 | Initialize();
24 | }
25 |
26 | // Shared initialization code
27 | void Initialize()
28 | {
29 | }
30 |
31 | #endregion
32 | }
33 | }
34 |
--------------------------------------------------------------------------------
/samples/MacOS/EmbedMacOSInEto/MyNativeView.designer.cs:
--------------------------------------------------------------------------------
1 | namespace EmbedMacOSInEto
2 | {
3 |
4 | // Should subclass AppKit.NSView
5 | [Foundation.Register("MyNativeView")]
6 | public partial class MyNativeView
7 | {
8 | }
9 | }
10 |
--------------------------------------------------------------------------------
/samples/MacOS/EmbedMacOSInEto/MyNativeViewController.designer.cs:
--------------------------------------------------------------------------------
1 | namespace EmbedMacOSInEto
2 | {
3 |
4 | // Should subclass AppKit.NSViewController
5 | [Foundation.Register("MyNativeViewController")]
6 | public partial class MyNativeViewController
7 | {
8 | }
9 | }
10 |
--------------------------------------------------------------------------------
/samples/SdkTest/Info.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | CFBundleName
6 | SdkTest
7 | CFBundleIdentifier
8 | ca.picoe.SdkTest
9 | CFBundleShortVersionString
10 | 1.0
11 | LSMinimumSystemVersion
12 | 10.15
13 | CFBundleDevelopmentRegion
14 | en
15 | NSHumanReadableCopyright
16 |
17 | CFBundleIconFile
18 | MacIcon.icns
19 |
20 |
21 |
--------------------------------------------------------------------------------
/samples/SdkTest/MacIcon.icns:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/picoe/Eto/3fe1a808ade99210545ce9dc1dc17144941634f0/samples/SdkTest/MacIcon.icns
--------------------------------------------------------------------------------
/samples/SdkTest/Program.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using Eto.Forms;
3 | using Eto.Drawing;
4 |
5 | namespace Sdk
6 | {
7 | class Program
8 | {
9 | [STAThread]
10 | static void Main(string[] args)
11 | {
12 | new Application(Eto.Platform.Detect).Run(new MainForm());
13 | }
14 | }
15 | }
16 |
--------------------------------------------------------------------------------
/samples/SdkTest/nuget.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
--------------------------------------------------------------------------------
/samples/Tutorials/CSharp/Tutorial1/Main.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using Eto.Forms;
3 | using Eto.Drawing;
4 |
5 | namespace Tutorial1
6 | {
7 | public class MyForm : Form
8 | {
9 | public MyForm()
10 | {
11 | // Set ClientSize instead of Size, as each platform has different window border sizes
12 | ClientSize = new Size(600, 400);
13 |
14 | // Title to show in the title bar
15 | Title = "Hello, Eto.Forms";
16 |
17 | // Content of the form
18 | Content = new Label { Text = "Some content", VerticalAlignment = VerticalAlignment.Center, TextAlignment = TextAlignment.Center };
19 | }
20 | }
21 |
22 | class Program
23 | {
24 | [STAThread]
25 | public static void Main(string[] args)
26 | {
27 | new Application().Run(new MyForm());
28 | }
29 | }
30 | }
31 |
--------------------------------------------------------------------------------
/samples/Tutorials/FSharp/Tutorial1/Program.fs:
--------------------------------------------------------------------------------
1 | open System
2 | open Eto.Forms
3 | open Eto.Drawing
4 |
5 | type MyForm() as this =
6 | inherit Form()
7 | do
8 | this.ClientSize <- Size(600, 400)
9 | this.Title <- "Hello, Eto.Forms"
10 | this.Content <- new Label(Text = "Some content", VerticalAlignment = VerticalAlignment.Center, TextAlignment = TextAlignment.Center)
11 |
12 | []
13 | let main argv =
14 | (new Application()).Run(new MyForm())
15 | 0
16 |
17 |
--------------------------------------------------------------------------------
/samples/Tutorials/README.md:
--------------------------------------------------------------------------------
1 | Eto.Forms Tutorials
2 | ===================
3 |
4 | How to Build
5 | ------------
6 |
7 | These tutorials use a script to copy the required platform dependencies:
8 |
9 | - buildapp.sh is used for OS X or Linux
10 | - buildapp.cmd is used for Windows
11 |
12 |
13 | How to Run
14 | ----------
15 |
16 | You can run from the IDE, though on OS X an .app bundle is created in the output directory that you must run separately,
17 | otherwise it will run the GTK platform on OS X.
18 |
19 | To run the MonoMac platform directly in MonoDevelop for OS X, you must create a MonoMac project separate from your GUI
20 | executable project. See the Eto.Test.Mac application as an example of how this looks.
--------------------------------------------------------------------------------
/samples/WinForms/EmbedEtoInWinForms/App.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
--------------------------------------------------------------------------------
/samples/WinForms/EmbedEtoInWinForms/MyEtoPanel.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using Eto.Forms;
3 | using Eto.Drawing;
4 |
5 | namespace EmbedEtoInWinForms
6 | {
7 | ///
8 | /// Eto.Forms panel to embed in an existing WinForms app
9 | ///
10 | public class MyEtoPanel : Panel
11 | {
12 | public MyEtoPanel()
13 | {
14 | var button = new Button { Text = "Show Dialog" };
15 |
16 | Content = new TableLayout
17 | {
18 | Spacing = new Size(5, 5),
19 | Rows =
20 | {
21 | new TableRow(new Label { Text = "An Eto.Forms control" }),
22 | new TableRow(new TextBox()),
23 | new TableRow(new ComboBox { Items = { "Item 1", "Item 2", "Item 3" } }),
24 | button,
25 | null
26 | }
27 | };
28 | }
29 | }
30 | }
31 |
--------------------------------------------------------------------------------
/samples/WinForms/EmbedEtoInWinForms/Program.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections.Generic;
3 | using System.Linq;
4 | using System.Threading.Tasks;
5 | using System.Windows.Forms;
6 |
7 | namespace EmbedEtoInWinForms
8 | {
9 | static class Program
10 | {
11 | ///
12 | /// The main entry point for the application.
13 | ///
14 | [STAThread]
15 | static void Main()
16 | {
17 | Application.EnableVisualStyles();
18 | Application.SetCompatibleTextRenderingDefault(false);
19 |
20 | // initialize eto forms after native app is initialized
21 | new Eto.Forms.Application(new Eto.WinForms.Platform()).Attach();
22 |
23 | Application.Run(new Form1());
24 | }
25 | }
26 | }
27 |
--------------------------------------------------------------------------------
/samples/WinForms/EmbedEtoInWinForms/Properties/Settings.settings:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
--------------------------------------------------------------------------------
/samples/WinForms/EmbedWinFormsInEto/MainForm.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using Eto.Forms;
3 | using Eto.Drawing;
4 |
5 | namespace EmbedWinFormsInEto
6 | {
7 | public class MainForm : Form
8 | {
9 | public MainForm()
10 | {
11 | Menu = new MenuBar();
12 |
13 | // create a new native WinForms control and wrap it in an eto control
14 | var nativeControl = new MyNativeControl().ToEto();
15 |
16 | Content = new TableLayout
17 | {
18 | Padding = new Padding(10),
19 | Spacing = new Size(5, 5),
20 | Rows =
21 | {
22 | nativeControl,
23 | null,
24 | new TableLayout(new TableRow(null, new Button { Text = "An Eto.Forms button" })),
25 | }
26 | };
27 | }
28 | }
29 | }
30 |
31 |
--------------------------------------------------------------------------------
/samples/WinForms/EmbedWinFormsInEto/MyNativeControl.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections.Generic;
3 | using System.ComponentModel;
4 | using System.Drawing;
5 | using System.Data;
6 | using System.Linq;
7 | using System.Text;
8 | using System.Threading.Tasks;
9 | using System.Windows.Forms;
10 |
11 | namespace EmbedWinFormsInEto
12 | {
13 | public partial class MyNativeControl : UserControl
14 | {
15 | public MyNativeControl()
16 | {
17 | InitializeComponent();
18 | }
19 | }
20 | }
21 |
--------------------------------------------------------------------------------
/samples/WinForms/EmbedWinFormsInEto/Program.cs:
--------------------------------------------------------------------------------
1 | using Eto.Forms;
2 | using System;
3 |
4 | namespace EmbedWinFormsInEto
5 | {
6 | static class Program
7 | {
8 | [STAThread]
9 | public static void Main(string[] args)
10 | {
11 | new Application(new Eto.WinForms.Platform()).Run(new MainForm());
12 | }
13 | }
14 | }
15 |
--------------------------------------------------------------------------------
/samples/Wpf/EmbedEtoInWpf/App.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
--------------------------------------------------------------------------------
/samples/Wpf/EmbedEtoInWpf/App.xaml:
--------------------------------------------------------------------------------
1 |
5 |
6 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/samples/Wpf/EmbedEtoInWpf/App.xaml.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections.Generic;
3 | using System.Configuration;
4 | using System.Data;
5 | using System.Linq;
6 | using System.Threading.Tasks;
7 | using System.Windows;
8 |
9 | namespace EmbedEtoInWpf
10 | {
11 | ///
12 | /// Interaction logic for App.xaml
13 | ///
14 | public partial class App : Application
15 | {
16 |
17 | protected override void OnStartup(StartupEventArgs e)
18 | {
19 | base.OnStartup(e);
20 |
21 |
22 | new Eto.Forms.Application(new Eto.Wpf.Platform()).Attach();
23 | }
24 | }
25 | }
26 |
--------------------------------------------------------------------------------
/samples/Wpf/EmbedEtoInWpf/MainWindow.xaml:
--------------------------------------------------------------------------------
1 |
5 |
6 |
7 |
8 |
9 |
10 |
--------------------------------------------------------------------------------
/samples/Wpf/EmbedEtoInWpf/MyEtoPanel.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using Eto.Forms;
3 | using Eto.Drawing;
4 |
5 | namespace EmbedEtoInWpf
6 | {
7 | ///
8 | /// Eto.Forms panel to embed in an existing Wpf app
9 | ///
10 | public class MyEtoPanel : Panel
11 | {
12 | public MyEtoPanel()
13 | {
14 | Content = new TableLayout
15 | {
16 | Spacing = new Size(5, 5),
17 | Rows =
18 | {
19 | new TableRow(new Label { Text = "An Eto.Forms control" }),
20 | new TableRow(new TextBox()),
21 | new TableRow(new ComboBox { Items = { "Item 1", "Item 2", "Item 3" } }),
22 | null
23 | }
24 | };
25 | }
26 | }
27 | }
28 |
--------------------------------------------------------------------------------
/samples/Wpf/EmbedEtoInWpf/Properties/Settings.settings:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
--------------------------------------------------------------------------------
/samples/Wpf/EmbedWpfInEto/App.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
--------------------------------------------------------------------------------
/samples/Wpf/EmbedWpfInEto/MainForm.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using Eto.Forms;
3 | using Eto.Drawing;
4 |
5 | namespace EmbedWpfInEto
6 | {
7 | public class MainForm : Form
8 | {
9 | public MainForm()
10 | {
11 | Menu = new MenuBar();
12 |
13 | // create a new native Wpf control and wrap it in an eto control
14 | var nativeControl = new MyNativeControl().ToEto();
15 |
16 | Content = new TableLayout
17 | {
18 | Padding = new Padding(10),
19 | Spacing = new Size(5, 5),
20 | Rows =
21 | {
22 | nativeControl,
23 | null,
24 | new TableLayout(new TableRow(null, new Button { Text = "An Eto.Forms button" })),
25 | }
26 | };
27 | }
28 | }
29 | }
30 |
31 |
--------------------------------------------------------------------------------
/samples/Wpf/EmbedWpfInEto/MyNativeControl.xaml.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections.Generic;
3 | using System.Linq;
4 | using System.Text;
5 | using System.Threading.Tasks;
6 | using System.Windows;
7 | using System.Windows.Controls;
8 | using System.Windows.Data;
9 | using System.Windows.Documents;
10 | using System.Windows.Input;
11 | using System.Windows.Media;
12 | using System.Windows.Media.Imaging;
13 | using System.Windows.Navigation;
14 | using System.Windows.Shapes;
15 |
16 | namespace EmbedWpfInEto
17 | {
18 | ///
19 | /// Interaction logic for MyNativeControl.xaml
20 | ///
21 | public partial class MyNativeControl : UserControl
22 | {
23 | public MyNativeControl()
24 | {
25 | InitializeComponent();
26 | }
27 | }
28 | }
29 |
--------------------------------------------------------------------------------
/samples/Wpf/EmbedWpfInEto/Program.cs:
--------------------------------------------------------------------------------
1 | using Eto.Forms;
2 | using System;
3 | using System.Collections.Generic;
4 | using System.Linq;
5 | using System.Text;
6 | using System.Threading.Tasks;
7 |
8 | namespace EmbedWpfInEto
9 | {
10 | static class Program
11 | {
12 | [STAThread]
13 | static void Main(string[] args)
14 | {
15 | new Application(new Eto.Wpf.Platform()).Run(new MainForm());
16 | }
17 | }
18 | }
19 |
--------------------------------------------------------------------------------
/src/CustomDictionary.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | Eto
6 | Ega
7 | Rgb
8 | Argb
9 | Instantiator
10 | Drawable
11 | xscale
12 | yscale
13 | x
14 | y
15 | Monospace
16 | Gtk
17 | Xam
18 | ios
19 |
20 |
21 |
--------------------------------------------------------------------------------
/src/Directory.Build.props:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | true
5 |
6 |
7 |
8 |
9 | $(ArtifactsDir)core\$(MSBuildProjectName)\
10 |
11 |
--------------------------------------------------------------------------------
/src/Directory.Build.targets:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/src/Eto.Android/Drawing/BrushHandler.cs:
--------------------------------------------------------------------------------
1 | using aa = Android.App;
2 | using ac = Android.Content;
3 | using ao = Android.OS;
4 | using ar = Android.Runtime;
5 | using av = Android.Views;
6 | using aw = Android.Widget;
7 | using ag = Android.Graphics;
8 |
9 | namespace Eto.Android.Drawing
10 | {
11 | public abstract class BrushHandler
12 | {
13 | public abstract ag.Paint GetPaint(Brush brush);
14 | }
15 | }
--------------------------------------------------------------------------------
/src/Eto.Android/Drawing/IndexedBitmapHandler.cs:
--------------------------------------------------------------------------------
1 | using aa = Android.App;
2 | using ac = Android.Content;
3 | using ao = Android.OS;
4 | using ar = Android.Runtime;
5 | using av = Android.Views;
6 | using aw = Android.Widget;
7 | using ag = Android.Graphics;
8 |
9 | namespace Eto.Android.Drawing
10 | {
11 | class IndexedBitmapHandler
12 | {
13 | }
14 | }
--------------------------------------------------------------------------------
/src/Eto.Android/Drawing/SystemColorsHandler.cs:
--------------------------------------------------------------------------------
1 | namespace Eto.Android
2 | {
3 | public class SystemColorsHandler : SystemColors.IHandler
4 | {
5 | // TODO: Not really implemented - just try to approximate the default WinForms look for now.
6 |
7 | public Color DisabledText => Colors.Gray;
8 |
9 | public Color ControlText => Colors.Black;
10 |
11 | public Color HighlightText => Colors.White;
12 |
13 | public Color Control => Colors.LightSlateGray;
14 |
15 | public Color ControlBackground => Colors.LightSlateGray;
16 |
17 | public Color Highlight => Colors.Blue;
18 |
19 | public Color WindowBackground => Colors.White;
20 |
21 | public Color SelectionText => HighlightText;
22 |
23 | public Color Selection => Highlight;
24 |
25 | public Color LinkText => Colors.Blue;
26 | }
27 | }
28 |
--------------------------------------------------------------------------------
/src/Eto.Android/Drawing/TextureBrushHandler.cs:
--------------------------------------------------------------------------------
1 | using aa = Android.App;
2 | using ac = Android.Content;
3 | using ao = Android.OS;
4 | using ar = Android.Runtime;
5 | using av = Android.Views;
6 | using aw = Android.Widget;
7 | using ag = Android.Graphics;
8 |
9 | namespace Eto.Android.Drawing
10 | {
11 | class TextureBrushHandler
12 | {
13 | }
14 | }
--------------------------------------------------------------------------------
/src/Eto.Android/Eto.Android.csproj:
--------------------------------------------------------------------------------
1 |
2 |
3 | net6.0-android
4 | 21
5 | enable
6 | disable
7 | $(DefaultItemExcludes);obj\**\*
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/src/Eto.Android/Forms/Cells/CheckBoxCellHandler.cs:
--------------------------------------------------------------------------------
1 | using aa = Android.App;
2 | using ac = Android.Content;
3 | using ao = Android.OS;
4 | using ar = Android.Runtime;
5 | using av = Android.Views;
6 | using aw = Android.Widget;
7 | using ag = Android.Graphics;
8 | namespace Eto.Android.Forms.Cells
9 | {
10 | public class CheckBoxCellHandler : CellHandler, CheckBoxCell.IHandler
11 | {
12 | public override av.View CreateView(av.View view, object item)
13 | {
14 | var tv = view as aw.TextView ?? new aw.TextView(Platform.AppContextThemed);
15 |
16 | tv.Text = Widget.Binding?.GetValue(item)?.ToString() ?? String.Empty;
17 | return tv;
18 | }
19 | }
20 | }
21 |
--------------------------------------------------------------------------------
/src/Eto.Android/Forms/Cells/ComboBoxCellHandler.cs:
--------------------------------------------------------------------------------
1 | using aa = Android.App;
2 | using ac = Android.Content;
3 | using ao = Android.OS;
4 | using ar = Android.Runtime;
5 | using av = Android.Views;
6 | using aw = Android.Widget;
7 | using ag = Android.Graphics;
8 | namespace Eto.Android.Forms.Cells
9 | {
10 | public class ComboBoxCellHandler : CellHandler, ComboBoxCell.IHandler
11 | {
12 | public IEnumerable