-/*\r
-Copyright (C) 1999-2007 id Software, Inc. and contributors.\r
-For a list of contributors, see the accompanying CONTRIBUTORS file.\r
-\r
-This file is part of GtkRadiant.\r
-\r
-GtkRadiant is free software; you can redistribute it and/or modify\r
-it under the terms of the GNU General Public License as published by\r
-the Free Software Foundation; either version 2 of the License, or\r
-(at your option) any later version.\r
-\r
-GtkRadiant is distributed in the hope that it will be useful,\r
-but WITHOUT ANY WARRANTY; without even the implied warranty of\r
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\r
-GNU General Public License for more details.\r
-\r
-You should have received a copy of the GNU General Public License\r
-along with GtkRadiant; if not, write to the Free Software\r
-Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA\r
-*/\r
-\r
-/*\r
-Camera plugin for GtkRadiant\r
-Copyright (C) 2002 Splash Damage Ltd.\r
-*/\r
-\r
-#ifndef _CAMERA_H_\r
-#define _CAMERA_H_\r
-\r
-#ifdef _WIN32\r
- #pragma warning(disable : 4267)\r
-#else\r
- typedef unsigned char byte;\r
-#endif\r
-\r
-class CCamera;\r
-\r
-#include <gtk/gtk.h>\r
-\r
-#include "str.h"\r
-\r
-#define USE_QERTABLE_DEFINE\r
-#include "qerplugin.h"\r
-\r
-#include "igl.h"\r
-#include "iui.h"\r
-#include "icamera.h"\r
-\r
-#include "misc.h"\r
-#include "dialogs.h"\r
-#include "funchandlers.h"\r
-#include "renderer.h"\r
-#include "listener.h"\r
-\r
-extern _QERFuncTable_1 g_FuncTable;\r
-extern _QERQglTable g_QglTable;\r
-extern _QERUITable g_UITable;\r
-extern _QERCameraTable g_CameraTable;\r
-\r
-extern CRenderer *Renderer;\r
-extern CListener *Listener;\r
-\r
-// splinelib\r
-#define CAMERA_PLUGIN\r
-#define DotProduct(a,b) ((a)[0]*(b)[0]+(a)[1]*(b)[1]+(a)[2]*(b)[2])\r
-\r
-extern void ( APIENTRY * qglBegin )(GLenum mode);\r
-extern void ( APIENTRY * qglEnd )(void);\r
-extern void ( APIENTRY * qglVertex3fv )(const GLfloat *v);\r
-\r
-extern "C" void InitIglToQgl( _QERQglTable *g_QglTable );\r
-\r
-#include "splines/splines.h"\r
-\r
-// this needs to match splines.cpp\r
-#define MAX_CAMERAS 64\r
-extern idCameraDef camera[MAX_CAMERAS];\r
-\r
-extern "C" qboolean loadCamera(int camNum, const char *name);\r
-\r
-//\r
-// CCamera\r
-//\r
-\r
-class CCamera {\r
-public:\r
- CCamera( int i ) {\r
- cam = &camera[i];\r
- camnum = i;\r
- Init();\r
- }\r
- ~CCamera();\r
-\r
- void Init() {\r
- next = prev = NULL;\r
- fileName[0] = '\0';\r
- hasbeensaved = 0;\r
- }\r
-\r
- idCameraDef *GetCam() {\r
- return( cam );\r
- }\r
- int GetCamNum() {\r
- return( camnum );\r
- }\r
-\r
- char *GetFileName() {\r
- return( fileName );\r
- }\r
- void SetFileName( const char *name, bool save ) {\r
- strcpy( fileName, name );\r
- if( save )\r
- hasbeensaved = 1;\r
- }\r
-\r
- CCamera *GetNext() {\r
- return( next );\r
- }\r
-\r
- CCamera *GetPrev() {\r
- return( prev );\r
- }\r
-\r
- void SetNext( CCamera *camera ) {\r
- next = camera;\r
- }\r
- void SetPrev( CCamera *camera ) {\r
- prev = camera;\r
- }\r
-\r
- int HasBeenSaved() {\r
- return( hasbeensaved );\r
- }\r
- void HasBeenModified() {\r
- if( hasbeensaved )\r
- hasbeensaved = 2;\r
- }\r
-\r
-protected:\r
- idCameraDef *cam;\r
- int camnum;\r
- CCamera *next, *prev;\r
- char fileName[PATH_MAX];\r
- int hasbeensaved; // 0:never saved 1:saved 2:saved, but modified\r
-};\r
-\r
-CCamera *AllocCam();\r
-void FreeCam( CCamera *cam );\r
-void SetCurrentCam( CCamera *cam );\r
-CCamera *GetCurrentCam();\r
-\r
-// globals\r
-extern GtkWidget *g_pRadiantWnd;\r
-extern GtkWidget *g_pCameraInspectorWnd;\r
-extern CCamera *firstCam;\r
-extern bool g_bEditOn;\r
-extern int g_iEditMode;\r
-extern int g_iActiveTarget;\r
-extern int g_iPreviewRunning;\r
-extern CCamera *g_pCurrentEditCam;\r
-\r
-#endif // _CAMERA_H_\r
+/*
+Copyright (C) 1999-2007 id Software, Inc. and contributors.
+For a list of contributors, see the accompanying CONTRIBUTORS file.
+
+This file is part of GtkRadiant.
+
+GtkRadiant is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2 of the License, or
+(at your option) any later version.
+
+GtkRadiant 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 General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with GtkRadiant; if not, write to the Free Software
+Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
+*/
+
+/*
+Camera plugin for GtkRadiant
+Copyright (C) 2002 Splash Damage Ltd.
+*/
+
+#ifndef _CAMERA_H_
+#define _CAMERA_H_
+
+#ifdef _WIN32
+ #pragma warning(disable : 4267)
+#else
+ typedef unsigned char byte;
+#endif
+
+class CCamera;
+
+#include <gtk/gtk.h>
+
+#include "str.h"
+
+#define USE_QERTABLE_DEFINE
+#include "qerplugin.h"
+
+#include "igl.h"
+#include "iui.h"
+#include "icamera.h"
+
+#include "misc.h"
+#include "dialogs.h"
+#include "funchandlers.h"
+#include "renderer.h"
+#include "listener.h"
+
+extern _QERFuncTable_1 g_FuncTable;
+extern _QERQglTable g_QglTable;
+extern _QERUITable g_UITable;
+extern _QERCameraTable g_CameraTable;
+
+extern CRenderer *Renderer;
+extern CListener *Listener;
+
+// splinelib
+#define CAMERA_PLUGIN
+#define DotProduct(a,b) ((a)[0]*(b)[0]+(a)[1]*(b)[1]+(a)[2]*(b)[2])
+
+extern void ( APIENTRY * qglBegin )(GLenum mode);
+extern void ( APIENTRY * qglEnd )(void);
+extern void ( APIENTRY * qglVertex3fv )(const GLfloat *v);
+
+extern "C" void InitIglToQgl( _QERQglTable *g_QglTable );
+
+#include "splines/splines.h"
+
+// this needs to match splines.cpp
+#define MAX_CAMERAS 64
+extern idCameraDef camera[MAX_CAMERAS];
+
+extern "C" qboolean loadCamera(int camNum, const char *name);
+
+//
+// CCamera
+//
+
+class CCamera {
+public:
+ CCamera( int i ) {
+ cam = &camera[i];
+ camnum = i;
+ Init();
+ }
+ ~CCamera();
+
+ void Init() {
+ next = prev = NULL;
+ fileName[0] = '\0';
+ hasbeensaved = 0;
+ }
+
+ idCameraDef *GetCam() {
+ return( cam );
+ }
+ int GetCamNum() {
+ return( camnum );
+ }
+
+ char *GetFileName() {
+ return( fileName );
+ }
+ void SetFileName( const char *name, bool save ) {
+ strcpy( fileName, name );
+ if( save )
+ hasbeensaved = 1;
+ }
+
+ CCamera *GetNext() {
+ return( next );
+ }
+
+ CCamera *GetPrev() {
+ return( prev );
+ }
+
+ void SetNext( CCamera *camera ) {
+ next = camera;
+ }
+ void SetPrev( CCamera *camera ) {
+ prev = camera;
+ }
+
+ int HasBeenSaved() {
+ return( hasbeensaved );
+ }
+ void HasBeenModified() {
+ if( hasbeensaved )
+ hasbeensaved = 2;
+ }
+
+protected:
+ idCameraDef *cam;
+ int camnum;
+ CCamera *next, *prev;
+ char fileName[PATH_MAX];
+ int hasbeensaved; // 0:never saved 1:saved 2:saved, but modified
+};
+
+CCamera *AllocCam();
+void FreeCam( CCamera *cam );
+void SetCurrentCam( CCamera *cam );
+CCamera *GetCurrentCam();
+
+// globals
+extern GtkWidget *g_pRadiantWnd;
+extern GtkWidget *g_pCameraInspectorWnd;
+extern CCamera *firstCam;
+extern bool g_bEditOn;
+extern int g_iEditMode;
+extern int g_iActiveTarget;
+extern int g_iPreviewRunning;
+extern CCamera *g_pCurrentEditCam;
+
+#endif // _CAMERA_H_