]> de.git.xonotic.org Git - xonotic/netradiant.git/blob - plugins/surface_quake2/surfdlg_plugin.h
uncrustify! now the code is only ugly on the *inside*
[xonotic/netradiant.git] / plugins / surface_quake2 / surfdlg_plugin.h
1 /*
2    Copyright (c) 2001, Loki software, inc.
3    All rights reserved.
4
5    Redistribution and use in source and binary forms, with or without modification,
6    are permitted provided that the following conditions are met:
7
8    Redistributions of source code must retain the above copyright notice, this list
9    of conditions and the following disclaimer.
10
11    Redistributions in binary form must reproduce the above copyright notice, this
12    list of conditions and the following disclaimer in the documentation and/or
13    other materials provided with the distribution.
14
15    Neither the name of Loki software nor the names of its contributors may be used
16    to endorse or promote products derived from this software without specific prior
17    written permission.
18
19    THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS ``AS IS''
20    AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
21    IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
22    DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE FOR ANY
23    DIRECT,INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
24    (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
25    LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
26    ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
27    (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
28    SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
29  */
30
31 #ifndef _SURFDLG_PLUGIN_H_
32 #define _SURFDLG_PLUGIN_H_
33
34 #ifdef __linux__
35
36 typedef void* HMODULE;
37 typedef void* LPVOID;
38 typedef char* LPCSTR;
39
40 #endif // __linux__
41
42 #include "qerplugin.h"
43 #include "synapse.h"
44 #include "iselectedface.h"
45 #include "iundo.h"
46 #include "ishaders.h"
47 #include "mathlib.h"
48 #include "missing.h"
49 #include "idata.h"
50
51 #include "isurfaceplugin.h"
52
53 class SurfaceDialog : public IPluginTexdef
54 {
55 int refCount;
56 public:
57 // Increment the number of references to this object
58 void IncRef() { refCount++; }
59 // Decrement the reference count
60 void DecRef() {
61         if ( --refCount <= 0 ) {
62                 delete this;
63         }
64 }
65 };
66
67 extern _QERFuncTable_1 g_FuncTable;
68 extern _QERUndoTable g_UndoTable;
69 extern _QERAppSurfaceTable g_AppSurfaceTable;
70 extern _QERSelectedFaceTable g_SelectedFaceTable;
71 extern _QERShadersTable g_ShadersTable;
72 extern _QERAppShadersTable g_AppShadersTable;
73 extern _QERAppDataTable g_AppDataTable;
74
75 #define GetSelectedFaceCount g_SelectedFaceTable.m_pfnGetSelectedFaceCount
76
77 #define Undo_Undo g_UndoTable.m_pfnUndo_Undo
78 #define Undo_GetUndoId g_UndoTable.m_pfnUndo_GetUndoId
79
80 #define Sys_Printf g_FuncTable.m_pfnSysPrintf
81 #define Sys_FPrintf g_FuncTable.m_pfnSysFPrintf
82 #define Sys_UpdateWindows g_FuncTable.m_pfnSysUpdateWindows
83
84
85 #define Select_FitTexture g_AppSurfaceTable.m_pfnSelect_FitTexture
86 #define Get_SI_Inc g_AppSurfaceTable.m_pfnQERApp_QeglobalsSavedinfo_SIInc
87 #define GridSize g_AppSurfaceTable.m_pfnQeglobalsGetGridSize
88 #define FaceList_FitTexture g_AppSurfaceTable.m_pfnFaceList_FitTexture
89 #define GetMainWindow g_AppSurfaceTable.m_pfnGetMainWindow
90 #define GetSelectedFaceCountfromBrushes g_AppSurfaceTable.m_pfnGetSelectedFaceCountfromBrushes
91 #define GetSelFacesTexdef g_AppSurfaceTable.m_pfnGetSelFacesTexdef
92 #define SetTexdef_FaceList g_AppSurfaceTable.m_pfnSetTexdef_FaceList
93 #define SetWinPos_from_Prefs g_AppSurfaceTable.m_pfnSetWinPos_From_Prefs
94
95 #define Texturewin g_AppShadersTable.m_pfnQeglobalsTexturewin
96
97 #endif // _SURFDLG_PLUGIN_H_