]> de.git.xonotic.org Git - voretournament/voretournament.git/blobdiff - misc/mediasource/extra/netradiant-src/plugins/textool/ControlPointsManager.h
Move the netradiant and fteqcc sources
[voretournament/voretournament.git] / misc / mediasource / extra / netradiant-src / plugins / textool / ControlPointsManager.h
diff --git a/misc/mediasource/extra/netradiant-src/plugins/textool/ControlPointsManager.h b/misc/mediasource/extra/netradiant-src/plugins/textool/ControlPointsManager.h
deleted file mode 100644 (file)
index 4305098..0000000
+++ /dev/null
@@ -1,133 +0,0 @@
-/*
-Copyright (C) 1999-2006 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
-*/
-
-//-----------------------------------------------------------------------------
-//
-// DESCRIPTION:
-// a class to handle control points in a 2D view
-// TODO: this one can be placed under an interface, and provided to the editor as service
-//
-// NOTE: the C2DView *m_p2DView is the orthogonal mapping between window and ST space
-// in Drag mode (for rotation) we need an orthonormal XY space
-// we do ST <-> XY transformations using the texture size
-// ( for translation-only moves, orthogonal is enough )
-// FIXME: is there a better way to deal between Window space <-> ST space <-> XY space ?
-//
-// NOTE: ControlPointsManagers are a bit different between brush faces and patches
-// so there's a base virtual class, and we have two versions
-
-#ifndef _CONTROLPOINTSMANAGER_H_
-#define _CONTROLPOINTSMANAGER_H_
-
-class CControlPointsManager
-{
-protected:
-  // used by Render
-  OpenGLBinding *m_pQglTable;
-  C2DView              *m_p2DView;
-public:
-  CControlPointsManager() { m_pQglTable = NULL; m_p2DView = NULL; }
-  virtual ~CControlPointsManager() { }
-  void Init( C2DView *p2DView, OpenGLBinding *pQglTable ) { m_pQglTable = pQglTable; m_p2DView = p2DView; }
-
-  virtual bool OnLButtonDown (int x, int y) = 0;
-  virtual bool OnMouseMove (int x, int y) = 0;
-  virtual bool OnLButtonUp (int x, int y) = 0;
-
-  virtual void render() = 0;
-  virtual void Commit() = 0;
-};
-
-// brush face manager
-class CControlPointsManagerBFace : public CControlPointsManager
-{
-  enum         EManagerState { Idle, Drag } ManagerState;
-  int                  m_NumPoints;
-  // initial geometry
-  CtrlPts_t    m_RefPts;
-  // current geometry
-  CtrlPts_t    *m_pPts;
-  // transform matrix ( 2DView is Window <-> ST )
-  float                m_TM[2][3];
-  // texture size for ST <-> XY
-  int                  m_TexSize[2];
-  // used when translating
-  float                m_TransOffset[2];
-  // dragged point index
-  int                  m_iDragPoint;
-  // do we have an anchor ?
-  bool         m_bGotAnchor;
-  // anchor point index
-  int                  m_iAnchorPoint;
-  // coordinates of Anchor
-  float                m_Anchor[2];
-  // used for commit
-  _QERFaceData *m_pFaceData;
-
-public:
-  // construction / init -------------------------------------------------
-  CControlPointsManagerBFace() { ManagerState = Idle; }
-  virtual ~CControlPointsManagerBFace() { }
-  // NOTE: pQglTable is sent to CControlPointsManager::Init
-  void Init(int iPts, CtrlPts_t *Pts, C2DView *p2DView, int TexSize[2], _QERFaceData* pFaceData, OpenGLBinding *pQglTable);
-  // CControlPointsManager interface -------------------------------------
-
-  virtual bool OnLButtonDown (int x, int y);
-  virtual bool OnMouseMove (int x, int y);
-  virtual bool OnLButtonUp (int x, int y);
-
-  virtual void render();
-  virtual void Commit();
-
-private:
-  // internal members
-  void UpdateCtrlPts();
-  void ComputeTransOffset(int i);
-  void XYSpaceForSTSpace( float xy[2], const float st[2] );
-};
-
-// patch manager
-class CControlPointsManagerPatch : public CControlPointsManager
-{
-  enum         EManagerState { Idle, Drag } ManagerState;
-  // reference data, used for commits
-  patchMesh_t* m_pPatch;
-  // work patch, holds current data
-  patchMesh_t* m_pWorkPatch;
-  int                  m_iDragPoint[2];
-
-public:
-  // construction / init -------------------------------------------------
-  CControlPointsManagerPatch() { ManagerState = Idle; }
-  virtual ~CControlPointsManagerPatch() { }
-  // NOTE: pQglTable is sent to CControlPointsManager::Init
-  void Init( patchMesh_t* pWorkPatch, C2DView *p2DView, OpenGLBinding *pQglTable, patchMesh_t* pPatch );
-  // CControlPointsManager interface -------------------------------------
-
-  virtual bool OnLButtonDown (int x, int y);
-  virtual bool OnMouseMove (int x, int y);
-  virtual bool OnLButtonUp (int x, int y);
-
-  virtual void render();
-  virtual void Commit();
-};
-
-#endif