2003-11-22 John Luke <jluke@cfl.rr.com>

* sample/PrintSample.cs: add small Gnome.Print example
	* sample/Makefile.in: add print example to gnome build

svn path=/trunk/gtk-sharp/; revision=20347
This commit is contained in:
John Luke 2003-11-23 00:53:14 +00:00
parent 74fc382285
commit f537b79614
3 changed files with 90 additions and 1 deletions

View File

@ -1,3 +1,8 @@
2003-11-22 John Luke <jluke@cfl.rr.com>
* sample/PrintSample.cs: add small Gnome.Print example
* sample/Makefile.in: add print example to gnome build
2003-11-19 Peter Williams <peter@newton.cx>
* gtk/Gtk.metadata: Add some array attributes for some "type *elem,

View File

@ -2,7 +2,7 @@ MCS=mcs
@ENABLE_GNOME_TRUE@ GNOME_PATH=-L ../art -L ../gnome
@ENABLE_GNOME_TRUE@ GNOME_ASSEMBLY=-r art-sharp.dll -r gnome-sharp.dll
@ENABLE_GNOME_TRUE@ GNOME_TARGETS=gnome-hello-world.exe canvas-example.exe fifteen.exe
@ENABLE_GNOME_TRUE@ GNOME_TARGETS=gnome-hello-world.exe canvas-example.exe fifteen.exe print.exe
@ENABLE_GLADE_TRUE@ GLADE_PATH=-L ../glade
@ENABLE_GLADE_TRUE@ GLADE_ASSEMBLY=-r glade-sharp.dll
@ -33,6 +33,9 @@ canvas-example.exe: CanvasExample.cs
fifteen.exe: Fifteen.cs
$(MCS) --unsafe -o fifteen.exe $(local_paths) $(all_assemblies) Fifteen.cs
print.exe: PrintSample.cs
$(MCS) --unsafe -o print.exe $(local_paths) $(all_assemblies) PrintSample.cs
button.exe: ButtonApp.cs
$(MCS) --unsafe -o button.exe $(local_paths) $(all_assemblies) ButtonApp.cs

81
sample/PrintSample.cs Normal file
View File

@ -0,0 +1,81 @@
using System;
using Gtk;
using GtkSharp;
using Gnome;
class PrintSample
{
TextView tv;
static void Main ()
{
new PrintSample ();
}
PrintSample ()
{
Application.Init ();
Gtk.Window win = new Gtk.Window ("Print sample");
win.SetDefaultSize (400, 300);
win.DeleteEvent += new DeleteEventHandler (OnWinDelete);
VBox vbox = new VBox (false, 0);
win.Add (vbox);
tv = new TextView ();
tv.Buffer.Text = "Hello World";
vbox.PackStart (tv, true, true, 0);
Button print = new Button (Gtk.Stock.Print);
print.Clicked += new EventHandler (OnPrintClicked);
vbox.PackStart (print, false, true, 0);
win.ShowAll ();
Application.Run ();
}
void MyPrint (PrintContext gpc)
{
Print.Beginpage (gpc, "demo");
Print.Moveto (gpc, 1, 700);
Print.Show (gpc, tv.Buffer.Text);
Print.Showpage (gpc);
}
void OnPrintClicked (object o, EventArgs args)
{
PrintJob pj = new PrintJob (PrintConfig.Default ());
PrintDialog dialog = new PrintDialog (pj, "Print Test", 0);
int response = dialog.Run ();
Console.WriteLine ("response: " + response);
if (response == (int) PrintButtons.Cancel) {
Console.WriteLine ("Canceled");
dialog.Hide ();
dialog.Dispose ();
return;
}
PrintContext ctx = pj.Context;
MyPrint (ctx);
pj.Close ();
switch (response) {
case (int) PrintButtons.Print:
pj.Print ();
break;
case (int) PrintButtons.Preview:
new PrintJobPreview (pj, "Print Test").Show ();
break;
}
dialog.Hide ();
dialog.Dispose ();
}
void OnWinDelete (object o, DeleteEventArgs args)
{
Application.Quit ();
}
}