mirror of
https://github.com/Ryujinx/GtkSharp.git
synced 2024-12-23 05:55:31 +00:00
Setup samples base
This commit is contained in:
parent
a6d5693151
commit
9cc0767772
37
Source/Samples/MainWindow.cs
Normal file
37
Source/Samples/MainWindow.cs
Normal file
|
@ -0,0 +1,37 @@
|
||||||
|
using System;
|
||||||
|
using Gtk;
|
||||||
|
using UI = Gtk.Builder.ObjectAttribute;
|
||||||
|
|
||||||
|
namespace Samples
|
||||||
|
{
|
||||||
|
class MainWindow : Window
|
||||||
|
{
|
||||||
|
#pragma warning disable 0649
|
||||||
|
[UI] private Label _label1;
|
||||||
|
[UI] private Button _button1;
|
||||||
|
#pragma warning restore 0649
|
||||||
|
|
||||||
|
private int _counter;
|
||||||
|
|
||||||
|
public MainWindow() : this(new Builder("MainWindow.glade")) { }
|
||||||
|
|
||||||
|
private MainWindow(Builder builder) : base(builder.GetObject("MainWindow").Handle)
|
||||||
|
{
|
||||||
|
builder.Autoconnect(this);
|
||||||
|
|
||||||
|
DeleteEvent += Window_DeleteEvent;
|
||||||
|
_button1.Clicked += Button1_Clicked;
|
||||||
|
}
|
||||||
|
|
||||||
|
private void Window_DeleteEvent(object sender, DeleteEventArgs a)
|
||||||
|
{
|
||||||
|
Application.Quit();
|
||||||
|
}
|
||||||
|
|
||||||
|
private void Button1_Clicked(object sender, EventArgs a)
|
||||||
|
{
|
||||||
|
_counter++;
|
||||||
|
_label1.Text = "Hello World! This button has been clicked " + _counter + " time(s).";
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
46
Source/Samples/MainWindow.glade
Normal file
46
Source/Samples/MainWindow.glade
Normal file
|
@ -0,0 +1,46 @@
|
||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<interface>
|
||||||
|
<requires lib="gtk+" version="3.18"/>
|
||||||
|
<object class="GtkWindow" id="MainWindow">
|
||||||
|
<property name="can_focus">False</property>
|
||||||
|
<property name="title" translatable="yes">Example Window</property>
|
||||||
|
<property name="default_width">480</property>
|
||||||
|
<property name="default_height">240</property>
|
||||||
|
<child>
|
||||||
|
<object class="GtkBox">
|
||||||
|
<property name="visible">True</property>
|
||||||
|
<property name="can_focus">False</property>
|
||||||
|
<property name="margin_left">4</property>
|
||||||
|
<property name="margin_right">4</property>
|
||||||
|
<property name="margin_top">4</property>
|
||||||
|
<property name="margin_bottom">4</property>
|
||||||
|
<property name="orientation">vertical</property>
|
||||||
|
<child>
|
||||||
|
<object class="GtkLabel" id="_label1">
|
||||||
|
<property name="visible">True</property>
|
||||||
|
<property name="can_focus">False</property>
|
||||||
|
<property name="label" translatable="yes">Hello World!</property>
|
||||||
|
</object>
|
||||||
|
<packing>
|
||||||
|
<property name="expand">True</property>
|
||||||
|
<property name="fill">True</property>
|
||||||
|
<property name="position">0</property>
|
||||||
|
</packing>
|
||||||
|
</child>
|
||||||
|
<child>
|
||||||
|
<object class="GtkButton" id="_button1">
|
||||||
|
<property name="label" translatable="yes">Click me!</property>
|
||||||
|
<property name="visible">True</property>
|
||||||
|
<property name="can_focus">False</property>
|
||||||
|
<property name="receives_default">True</property>
|
||||||
|
</object>
|
||||||
|
<packing>
|
||||||
|
<property name="expand">False</property>
|
||||||
|
<property name="fill">True</property>
|
||||||
|
<property name="position">1</property>
|
||||||
|
</packing>
|
||||||
|
</child>
|
||||||
|
</object>
|
||||||
|
</child>
|
||||||
|
</object>
|
||||||
|
</interface>
|
23
Source/Samples/Program.cs
Normal file
23
Source/Samples/Program.cs
Normal file
|
@ -0,0 +1,23 @@
|
||||||
|
using System;
|
||||||
|
using Gtk;
|
||||||
|
|
||||||
|
namespace Samples
|
||||||
|
{
|
||||||
|
class Program
|
||||||
|
{
|
||||||
|
[STAThread]
|
||||||
|
public static void Main(string[] args)
|
||||||
|
{
|
||||||
|
Application.Init();
|
||||||
|
|
||||||
|
var app = new Application("org.Samples.Samples", GLib.ApplicationFlags.None);
|
||||||
|
app.Register(GLib.Cancellable.Current);
|
||||||
|
|
||||||
|
var win = new MainWindow();
|
||||||
|
app.AddWindow(win);
|
||||||
|
|
||||||
|
win.Show();
|
||||||
|
Application.Run();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
17
Source/Samples/Samples.csproj
Normal file
17
Source/Samples/Samples.csproj
Normal file
|
@ -0,0 +1,17 @@
|
||||||
|
<Project Sdk="Microsoft.NET.Sdk">
|
||||||
|
<PropertyGroup>
|
||||||
|
<OutputType>WinExe</OutputType>
|
||||||
|
<TargetFramework>netcoreapp2.0</TargetFramework>
|
||||||
|
<AppendTargetFrameworkToOutputPath>false</AppendTargetFrameworkToOutputPath>
|
||||||
|
<OutputPath>..\..\BuildOutput\Samples</OutputPath>
|
||||||
|
</PropertyGroup>
|
||||||
|
<ItemGroup>
|
||||||
|
<None Remove="**\*.glade" />
|
||||||
|
<EmbeddedResource Include="**\*.glade">
|
||||||
|
<LogicalName>%(Filename)%(Extension)</LogicalName>
|
||||||
|
</EmbeddedResource>
|
||||||
|
</ItemGroup>
|
||||||
|
<ItemGroup>
|
||||||
|
<ProjectReference Include="..\Libs\GtkSharp\GtkSharp.csproj" />
|
||||||
|
</ItemGroup>
|
||||||
|
</Project>
|
14
build.cake
14
build.cake
|
@ -81,6 +81,20 @@ Task("Build")
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
|
Task("RunSamples")
|
||||||
|
.IsDependentOn("Build")
|
||||||
|
.Does(() =>
|
||||||
|
{
|
||||||
|
var settings = new DotNetCoreBuildSettings
|
||||||
|
{
|
||||||
|
Configuration = "Release",
|
||||||
|
MSBuildSettings = msbuildsettings
|
||||||
|
};
|
||||||
|
|
||||||
|
DotNetCoreBuild("Source/Samples/Samples.csproj", settings);
|
||||||
|
DotNetCoreRun("Source/Samples/Samples.csproj");
|
||||||
|
});
|
||||||
|
|
||||||
Task("PackageNuGet")
|
Task("PackageNuGet")
|
||||||
.IsDependentOn("Build")
|
.IsDependentOn("Build")
|
||||||
.Does(() =>
|
.Does(() =>
|
||||||
|
|
Loading…
Reference in a new issue