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:
parent
74fc382285
commit
f537b79614
3 changed files with 90 additions and 1 deletions
|
@ -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>
|
2003-11-19 Peter Williams <peter@newton.cx>
|
||||||
|
|
||||||
* gtk/Gtk.metadata: Add some array attributes for some "type *elem,
|
* gtk/Gtk.metadata: Add some array attributes for some "type *elem,
|
||||||
|
|
|
@ -2,7 +2,7 @@ MCS=mcs
|
||||||
|
|
||||||
@ENABLE_GNOME_TRUE@ GNOME_PATH=-L ../art -L ../gnome
|
@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_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_PATH=-L ../glade
|
||||||
@ENABLE_GLADE_TRUE@ GLADE_ASSEMBLY=-r glade-sharp.dll
|
@ENABLE_GLADE_TRUE@ GLADE_ASSEMBLY=-r glade-sharp.dll
|
||||||
|
@ -33,6 +33,9 @@ canvas-example.exe: CanvasExample.cs
|
||||||
|
|
||||||
fifteen.exe: Fifteen.cs
|
fifteen.exe: Fifteen.cs
|
||||||
$(MCS) --unsafe -o fifteen.exe $(local_paths) $(all_assemblies) 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
|
button.exe: ButtonApp.cs
|
||||||
$(MCS) --unsafe -o button.exe $(local_paths) $(all_assemblies) ButtonApp.cs
|
$(MCS) --unsafe -o button.exe $(local_paths) $(all_assemblies) ButtonApp.cs
|
||||||
|
|
81
sample/PrintSample.cs
Normal file
81
sample/PrintSample.cs
Normal 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 ();
|
||||||
|
}
|
||||||
|
}
|
Loading…
Reference in a new issue