/** | |
* projectM -- Milkdrop-esque visualisation SDK | |
* Copyright (C)2003-2004 projectM Team | |
* | |
* This library is free software; you can redistribute it and/or | |
* modify it under the terms of the GNU Lesser General Public | |
* License as published by the Free Software Foundation; either | |
* version 2.1 of the License, or (at your option) any later version. | |
* | |
* This library is distributed in the hope that it will be useful, | |
* but WITHOUT ANY WARRANTY; without even the implied warranty of | |
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | |
* Lesser General Public License for more details. | |
* | |
* You should have received a copy of the GNU Lesser General Public | |
* License along with this library; if not, write to the Free Software | |
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA | |
* See 'LICENSE.txt' included within this release | |
* | |
*/ | |
/** | |
* wxvisFrame.h | |
* | |
*/ | |
#ifndef _WXPROJECTMVISFRAME_H | |
#define _WXPROJECTMVISFRAME_H | |
#include <wx/wx.h> | |
#include <wx/glcanvas.h> | |
#if !wxUSE_GLCANVAS | |
#error "Define wxUSE_GLCANVAS in setup.h" | |
#endif /** !wxUSE_GLCANVAS */ | |
#ifdef DEBUG | |
extern FILE *debugFile; | |
#endif /** DEBUG */ | |
class wxvisApp; | |
class wxvisCanvas; | |
enum { | |
/** Rendering menu */ | |
WXPROJECTMVIS_RENDERING_MENU, | |
WXPROJECTMVIS_RENDERING_PER_PIXEL, | |
}; | |
class wxvisFrame : public wxFrame { | |
public: | |
/** Parent application */ | |
wxvisApp *app; | |
/** Default constructor */ | |
wxvisFrame( wxvisApp *parent, const wxString &title, wxPoint &pos, wxSize &dims ); | |
/** OpenGL canvas */ | |
wxvisCanvas *canvas; | |
/** "X" button event handler */ | |
void OnClose( wxCloseEvent &event ); | |
DECLARE_EVENT_TABLE() | |
public: | |
void updaterate(const char *text); | |
void updatestatus(const char *text); | |
/** Reset the camera and light positions */ | |
void resetViewer(); | |
}; | |
#endif /** !_WXPROJECTMVISFRAME_H */ |