//-----------------------------------------------------------------------------
// wx.NET - Wizard.cs
//
// The wxWizard wrapper class.
//
// Written by Jason Perkins (jason@379.com)
// (C) 2003 379, Inc.
// Licensed under the wxWidgets license, see LICENSE.txt for details.
//
// $Id: Wizard.cs,v 1.5 2007/12/08 23:21:15 harald_meyer Exp $
//-----------------------------------------------------------------------------
using System;
using System.Drawing;
using System.Runtime.InteropServices;
namespace wx{
public class Wizard : Dialog
{
[DllImport("wx-c")] static extern IntPtr wxWizard_ctor(IntPtr parent, int id, IntPtr title, IntPtr bitmap, int posX, int posY);
[DllImport("wx-c")] static extern bool wxWizard_RunWizard(IntPtr self, IntPtr firstPage);
[DllImport("wx-c")] static extern void wxWizard_SetPageSize(IntPtr self, ref Size size);
//---------------------------------------------------------------------
public Wizard(IntPtr wxObject)
: base(wxObject) {}
public Wizard(Window parent, int id, string title, Bitmap bitmap)
: this(parent, id, wxString.SafeNew(title), bitmap)
{
}
public Wizard(Window parent, int id, wxString title, Bitmap bitmap)
: base(wxWizard_ctor(Object.SafePtr(parent), id, Object.SafePtr(title), Object.SafePtr(bitmap), -1, -1)) {}
//---------------------------------------------------------------------
public bool RunWizard(WizardPage firstPage)
{
if (firstPage == null)
throw new ArgumentNullException("firstPage");
return wxWizard_RunWizard(wxObject, firstPage.wxObject);
}
//---------------------------------------------------------------------
public Size PageSize
{
set { wxWizard_SetPageSize(wxObject, ref value); }
}
}
}
|