/////////////////////////////////////////////////////////////////////////////
// Name: cpp/process.h
// Purpose: C++ wrapper for wxProcess
// Author: Mattia Barbon
// Modified by:
// Created: 11/02/2002
// RCS-ID: $Id: process.h 2057 2007-06-18 23:03:00Z mbarbon $
// Copyright: (c) 2002, 2004 Mattia Barbon
// Licence: This program is free software; you can redistribute it and/or
// modify it under the same terms as Perl itself
/////////////////////////////////////////////////////////////////////////////
class wxPliProcess:public wxProcess
{
WXPLI_DECLARE_DYNAMIC_CLASS( wxPliProcess );
WXPLI_DECLARE_V_CBACK();
public:
wxPliProcess( const char* package, wxEvtHandler* parent, int id );
virtual void OnTerminate( int pid, int status );
};
inline wxPliProcess::wxPliProcess( const char* package,
wxEvtHandler* parent, int id )
: wxProcess( parent, id ),
m_callback( "Wx::Process" )
{
m_callback.SetSelf( wxPli_make_object( this, package ), true );
}
void wxPliProcess::OnTerminate( int pid, int status )
{
dTHX;
if( wxPliVirtualCallback_FindCallback( aTHX_ &m_callback, "OnTerminate" ) )
{
wxPliVirtualCallback_CallCallback( aTHX_ &m_callback,
G_SCALAR|G_DISCARD,
"ii", pid, status );
}
else
wxProcess::OnTerminate( pid, status );
}
WXPLI_IMPLEMENT_DYNAMIC_CLASS( wxPliProcess, wxProcess );
// Local variables: //
// mode: c++ //
// End: //