/////////////////////////////////////////////////////////////////////////////
// Name:        svg_print.h
// Purpose:     
// Author:      jean-pierre Charras
// Modified by: 
// Created:     05/02/2006 11:05:20
// RCS-ID:      
// Copyright:   License GNU
// Licence:     
/////////////////////////////////////////////////////////////////////////////

// Generated by DialogBlocks (unregistered), 05/02/2006 11:05:20

#ifndef _SVG_PRINT_H_
#define _SVG_PRINT_H_

#if defined(__GNUG__) && !defined(NO_GCC_PRAGMA)
#pragma interface "svg_print.h"
#endif

/*!
 * Includes
 */

////@begin includes
#include "wx/valgen.h"
#include "wx/spinctrl.h"
////@end includes

/*!
 * Forward declarations
 */

////@begin forward declarations
class wxSpinCtrl;
////@end forward declarations

/*!
 * Control identifiers
 */

////@begin control identifiers
#define ID_DIALOG 10000
#define SYMBOL_WINEDA_PRINTSVGFRAME_STYLE wxCAPTION|wxRESIZE_BORDER|wxSYSTEM_MENU|wxCLOSE_BOX|wxFRAME_FLOAT_ON_PARENT
#define SYMBOL_WINEDA_PRINTSVGFRAME_TITLE _("Create SVG file")
#define SYMBOL_WINEDA_PRINTSVGFRAME_IDNAME ID_DIALOG
#define SYMBOL_WINEDA_PRINTSVGFRAME_SIZE wxSize(400, 300)
#define SYMBOL_WINEDA_PRINTSVGFRAME_POSITION wxDefaultPosition
#define ID_SPINCTRL 10003
#define ID_RADIOBOX_SETPRINTMODE 10007
#define ID_CHECKBOX 10004
#define ID_RADIOBOX 10005
#define ID_PRINT_EXECUTE 10002
#define ID_TEXTCTRL 10001
#define ID_TEXTCTRL1 10006
////@end control identifiers

/*!
 * Compatibility
 */

#ifndef wxCLOSE_BOX
#define wxCLOSE_BOX 0x1000
#endif

/*!
 * WinEDA_PrintSVGFrame class declaration
 */

class WinEDA_PrintSVGFrame: public wxDialog
{    
    DECLARE_DYNAMIC_CLASS( WinEDA_PrintSVGFrame )
    DECLARE_EVENT_TABLE()

public:
    /// Constructors
    WinEDA_PrintSVGFrame( );
    WinEDA_PrintSVGFrame( WinEDA_DrawFrame* parent,
			wxWindowID id = SYMBOL_WINEDA_PRINTSVGFRAME_IDNAME,
			const wxString& caption = SYMBOL_WINEDA_PRINTSVGFRAME_TITLE,
			const wxPoint& pos = SYMBOL_WINEDA_PRINTSVGFRAME_POSITION,
			const wxSize& size = SYMBOL_WINEDA_PRINTSVGFRAME_SIZE,
			long style = SYMBOL_WINEDA_PRINTSVGFRAME_STYLE );

    /// Creation
    bool Create( wxWindow* parent, wxWindowID id = SYMBOL_WINEDA_PRINTSVGFRAME_IDNAME, const wxString& caption = SYMBOL_WINEDA_PRINTSVGFRAME_TITLE, const wxPoint& pos = SYMBOL_WINEDA_PRINTSVGFRAME_POSITION, const wxSize& size = SYMBOL_WINEDA_PRINTSVGFRAME_SIZE, long style = SYMBOL_WINEDA_PRINTSVGFRAME_STYLE );

    /// Creates the controls and sizers
    void CreateControls();

////@begin WinEDA_PrintSVGFrame event handler declarations

    /// wxEVT_CLOSE_WINDOW event handler for ID_DIALOG
    void OnCloseWindow( wxCloseEvent& event );

    /// wxEVT_COMMAND_SPINCTRL_UPDATED event handler for ID_SPINCTRL
    void OnSpinctrlUpdated( wxSpinEvent& event );

    /// wxEVT_COMMAND_RADIOBOX_SELECTED event handler for ID_RADIOBOX_SETPRINTMODE
    void OnRadioboxSetprintmodeSelected( wxCommandEvent& event );

    /// wxEVT_COMMAND_BUTTON_CLICKED event handler for ID_PRINT_EXECUTE
    void OnPrintExecuteClick( wxCommandEvent& event );

    /// wxEVT_COMMAND_BUTTON_CLICKED event handler for wxID_CLOSE
    void OnCloseClick( wxCommandEvent& event );

////@end WinEDA_PrintSVGFrame event handler declarations

////@begin WinEDA_PrintSVGFrame member function declarations

    /// Retrieves bitmap resources
    wxBitmap GetBitmapResource( const wxString& name );

    /// Retrieves icon resources
    wxIcon GetIconResource( const wxString& name );
////@end WinEDA_PrintSVGFrame member function declarations

    /// Should we show tooltips?
    static bool ShowToolTips();

	void PrintSVGDoc(wxCommandEvent& event);
	bool DrawPage(const wxString & FullFileName);
	void SetPenWidth(wxSpinEvent& event);
	wxString ReturnFullFileName(void);

////@begin WinEDA_PrintSVGFrame member variables
    wxSpinCtrl* m_ButtPenWidth;
    wxRadioBox* m_ModeColorOption;
    wxCheckBox* m_Print_Sheet_Ref;
    wxRadioBox* m_PagesOption;
    wxTextCtrl* m_FileNameCtrl;
    wxTextCtrl* m_MessagesBox;
////@end WinEDA_PrintSVGFrame member variables

	WinEDA_DrawFrame * m_Parent;
	int m_PrintMaskLayer;
	int m_ImageXSize_mm;
};

#endif
    // _SVG_PRINT_H_
