]> de.git.xonotic.org Git - xonotic/netradiant.git/blobdiff - radiant/surfacedialog.cpp
uncrustify! now the code is only ugly on the *inside*
[xonotic/netradiant.git] / radiant / surfacedialog.cpp
index b7c59d76bc2cd1b3b54dbed5c3b82b13dd1425cf..0b6a467e187b590f0373ce1ed6ed7caa836a4def 100644 (file)
@@ -1,23 +1,23 @@
 /*
-Copyright (C) 1999-2007 id Software, Inc. and contributors.
-For a list of contributors, see the accompanying CONTRIBUTORS file.
+   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.
+   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 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.
+   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
-*/
+   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
+ */
 
 //
 // Surface Dialog
@@ -36,15 +36,15 @@ SurfaceDlg g_dlgSurface;
 // surface properties plugin
 
 /*
-===================================================
+   ===================================================
 
-  SURFACE INSPECTOR
+   SURFACE INSPECTOR
 
-===================================================
-*/
+   ===================================================
+ */
 
 // the texdef to switch back to when the OnCancel is called
-texdef_t       g_old_texdef;
+texdef_t g_old_texdef;
 // when != NULL, this thing means the surface inspector is currently being displayed
 // NOTE a boolean flag would have been more explicit, this is totally so ugly
 GtkWidget*  g_surfwin = NULL;
@@ -58,299 +58,282 @@ bool g_bListenUpdate = true;
 
 #ifdef _DEBUG
 // experimental stuff, work directly on BP
-static void OnTest(GtkWidget *widget, gpointer data)
-{
-  if (!g_qeglobals.m_bBrushPrimitMode)
-  {
-    Sys_FPrintf(SYS_WRN, "BP mode required\n");
-    return;
-  }
-  if (g_ptrSelectedFaces.GetSize() != 1)
-  {
-    Sys_FPrintf(SYS_WRN, "Expected single face selection\n");
-    return;
-  }
-  brush_t *b = reinterpret_cast<brush_t*>(g_ptrSelectedFaceBrushes.GetAt(0));
-  face_t *selFace = reinterpret_cast<face_t*>(g_ptrSelectedFaces.GetAt(0));
-  // get the ST axis base for the face
-  vec3_t texS,texT;
-  ComputeAxisBase(selFace->plane.normal, texS, texT);
-  // find ST coordinates for the center of the face
-  float Os=0,Ot=0;
-  int i;
-  for (i=0; i<selFace->face_winding->numpoints; i++)
-  {
-    Os += DotProduct(selFace->face_winding->points[i],texS);
-    Ot += DotProduct(selFace->face_winding->points[i],texT);
-  }
-  Os /= selFace->face_winding->numpoints;
-  Ot /= selFace->face_winding->numpoints;
-  brushprimit_texdef_t *pBP = &selFace->brushprimit_texdef;
-
-  // (FIXME: initial version, before axis base change optimize)
-
-  // we need to compute our BP matrix in this new axis base (O,texS,texT)
-  // the general case if BPO = M * BP * M^-1
-  //   where BPO is transformation expressed in (O,texS,texT)
-  //         M is the axis base change from (origin,texS,texT) to (O,texS,texT)
-  // here we have a special case, M is a translation and it's inverse is easy
-  vec_t BPO[2][3];
-  vec_t aux[2][3];
-  vec_t m[2][3];
-  memset(&m, 0, sizeof(vec_t)*6);
-  m[0][0] = 1; m[1][1] = 1; m[0][2] = -Os; m[1][2] = -Ot;
-  BPMatMul(m, pBP->coords, aux);
-  m[0][2] = Os; m[1][2] = Ot; // now M^-1
-  BPMatMul(aux, m, BPO);
+static void OnTest( GtkWidget *widget, gpointer data ){
+       if ( !g_qeglobals.m_bBrushPrimitMode ) {
+               Sys_FPrintf( SYS_WRN, "BP mode required\n" );
+               return;
+       }
+       if ( g_ptrSelectedFaces.GetSize() != 1 ) {
+               Sys_FPrintf( SYS_WRN, "Expected single face selection\n" );
+               return;
+       }
+       brush_t *b = reinterpret_cast<brush_t*>( g_ptrSelectedFaceBrushes.GetAt( 0 ) );
+       face_t *selFace = reinterpret_cast<face_t*>( g_ptrSelectedFaces.GetAt( 0 ) );
+       // get the ST axis base for the face
+       vec3_t texS,texT;
+       ComputeAxisBase( selFace->plane.normal, texS, texT );
+       // find ST coordinates for the center of the face
+       float Os = 0,Ot = 0;
+       int i;
+       for ( i = 0; i < selFace->face_winding->numpoints; i++ )
+       {
+               Os += DotProduct( selFace->face_winding->points[i],texS );
+               Ot += DotProduct( selFace->face_winding->points[i],texT );
+       }
+       Os /= selFace->face_winding->numpoints;
+       Ot /= selFace->face_winding->numpoints;
+       brushprimit_texdef_t *pBP = &selFace->brushprimit_texdef;
+
+       // (FIXME: initial version, before axis base change optimize)
+
+       // we need to compute our BP matrix in this new axis base (O,texS,texT)
+       // the general case if BPO = M * BP * M^-1
+       //   where BPO is transformation expressed in (O,texS,texT)
+       //         M is the axis base change from (origin,texS,texT) to (O,texS,texT)
+       // here we have a special case, M is a translation and it's inverse is easy
+       vec_t BPO[2][3];
+       vec_t aux[2][3];
+       vec_t m[2][3];
+       memset( &m, 0, sizeof( vec_t ) * 6 );
+       m[0][0] = 1; m[1][1] = 1; m[0][2] = -Os; m[1][2] = -Ot;
+       BPMatMul( m, pBP->coords, aux );
+       m[0][2] = Os; m[1][2] = Ot; // now M^-1
+       BPMatMul( aux, m, BPO );
 
 #if 0
-  // apply a scaling
-  // scale factors against S and T axis, we apply on top of the existing matrix
-  // <1 will decrease the texel/world resolution, >1 will increase
-  float sS = 1.025,sT = 1.025;
-  BPMatScale(BPO,sS,sT);
+       // apply a scaling
+       // scale factors against S and T axis, we apply on top of the existing matrix
+       // <1 will decrease the texel/world resolution, >1 will increase
+       float sS = 1.025,sT = 1.025;
+       BPMatScale( BPO,sS,sT );
 #endif
 #if 0
-  // apply a rotation
-  float theta = 5;
-  BPMatRotate(BPO,theta);
+       // apply a rotation
+       float theta = 5;
+       BPMatRotate( BPO,theta );
 #endif
 #if 0
-  // read the scale
-  ConvertTexMatWithQTexture(BPO, selFace->d_texture, aux, NULL);
-  // reset the scale (normalize the matrix)
-  vec_t v1,v2;
-  v1 = sqrt(aux[0][0]*aux[0][0]+aux[1][0]*aux[1][0]);
-  v2 = sqrt(aux[0][1]*aux[0][1]+aux[1][1]*aux[1][1]);
-  // if reading the scale values, we have them here:
-  Sys_Printf("Current Scale: S: %g T: %g\n", v1, v2);
-  return;
+       // read the scale
+       ConvertTexMatWithQTexture( BPO, selFace->d_texture, aux, NULL );
+       // reset the scale (normalize the matrix)
+       vec_t v1,v2;
+       v1 = sqrt( aux[0][0] * aux[0][0] + aux[1][0] * aux[1][0] );
+       v2 = sqrt( aux[0][1] * aux[0][1] + aux[1][1] * aux[1][1] );
+       // if reading the scale values, we have them here:
+       Sys_Printf( "Current Scale: S: %g T: %g\n", v1, v2 );
+       return;
 #endif
 #if 1
-  // apply a given scale (on S and T)
-  ConvertTexMatWithQTexture(BPO, selFace->d_texture, aux, NULL);
-  // reset the scale (normalize the matrix)
-  vec_t v1,v2;
-  v1 = sqrt(aux[0][0]*aux[0][0]+aux[1][0]*aux[1][0]);
-  v2 = sqrt(aux[0][1]*aux[0][1]+aux[1][1]*aux[1][1]);
-  vec_t sS,sT;
-  // put the values for scale on S and T here:
-  sS = 1.2 / v1;
-  sT = 0.8 / v2;
-  aux[0][0] *= sS; aux[1][0] *= sS;
-  aux[0][1] *= sT; aux[1][1] *= sT;
-  ConvertTexMatWithQTexture(aux, NULL, BPO, selFace->d_texture);
+       // apply a given scale (on S and T)
+       ConvertTexMatWithQTexture( BPO, selFace->d_texture, aux, NULL );
+       // reset the scale (normalize the matrix)
+       vec_t v1,v2;
+       v1 = sqrt( aux[0][0] * aux[0][0] + aux[1][0] * aux[1][0] );
+       v2 = sqrt( aux[0][1] * aux[0][1] + aux[1][1] * aux[1][1] );
+       vec_t sS,sT;
+       // put the values for scale on S and T here:
+       sS = 1.2 / v1;
+       sT = 0.8 / v2;
+       aux[0][0] *= sS; aux[1][0] *= sS;
+       aux[0][1] *= sT; aux[1][1] *= sT;
+       ConvertTexMatWithQTexture( aux, NULL, BPO, selFace->d_texture );
 #endif
 
-  // now BPO must be expressed back in (origin,texS,texT) axis base BP = M^-1 * BPO * M
-  BPMatMul(m, BPO, aux); // m is M^-1
-  m[0][2] = -Os; m[1][2] = -Ot;
-  BPMatMul(aux, m, pBP->coords);
+       // now BPO must be expressed back in (origin,texS,texT) axis base BP = M^-1 * BPO * M
+       BPMatMul( m, BPO, aux ); // m is M^-1
+       m[0][2] = -Os; m[1][2] = -Ot;
+       BPMatMul( aux, m, pBP->coords );
 
-  // now emit the coordinates on the winding
-  EmitBrushPrimitTextureCoordinates(selFace, selFace->face_winding);
-  Sys_UpdateWindows(W_CAMERA);
+       // now emit the coordinates on the winding
+       EmitBrushPrimitTextureCoordinates( selFace, selFace->face_winding );
+       Sys_UpdateWindows( W_CAMERA );
 }
 
 /*
-  FIXME: try again, there must be a silly mistake in the formula expansion
-  // we need to compute our BP matrix in this new axis base (O,texS,texT)
-  // the general case is BPO = M * BP * M^-1
-  //   where BPO is transformation expressed in (O,texS,texT)
-  //         M is the axis base change from (origin,texS,texT) to (O,texS,texT)
-  // here we have a special case, M is a translation and it's inverse is easy
-  // the M * BP * M^-1 formula can be expanded and simplified
-  vec_t BPO[2][3];
-  memcpy(&BPO, &pBP->coords, sizeof(vec_t)*6);
-  BPO[0][2] = Os*(pBP->coords[0][0]-1.0) + Ot*pBP->coords[0][1] + pBP->coords[0][2];
-  BPO[1][2] = Os*pBP->coords[1][0] + Ot*(pBP->coords[1][1]-1.0) + Ot*pBP->coords[1][2];
-
-  // apply a scaling
-  // scale factors against S and T axis, we apply on top of the existing matrix
-  // <1 will decrease the texel/world resolution, >1 will increase
-  float sS = 1.025,sT = 1.025;
-  BPMatScale(BPO,sS,sT);
-
-  // now BPO must be expressed back in (origin,texS,texT) axis base BP = M^-1 * BPO * M
-  // same expanded formula as above
-  memcpy(&pBP->coords, &BPO, sizeof(vec_t)*6);
-  pBP->coords[0][2] = Os*(1.0-BPO[0][0]) - Ot*BPO[0][1] + BPO[0][2];
-  pBP->coords[1][2] = -Os*BPO[1][0] + Ot*(1.0-BPO[1][1]) + BPO[1][2];
-*/
+   FIXME: try again, there must be a silly mistake in the formula expansion
+   // we need to compute our BP matrix in this new axis base (O,texS,texT)
+   // the general case is BPO = M * BP * M^-1
+   //   where BPO is transformation expressed in (O,texS,texT)
+   //         M is the axis base change from (origin,texS,texT) to (O,texS,texT)
+   // here we have a special case, M is a translation and it's inverse is easy
+   // the M * BP * M^-1 formula can be expanded and simplified
+   vec_t BPO[2][3];
+   memcpy(&BPO, &pBP->coords, sizeof(vec_t)*6);
+   BPO[0][2] = Os*(pBP->coords[0][0]-1.0) + Ot*pBP->coords[0][1] + pBP->coords[0][2];
+   BPO[1][2] = Os*pBP->coords[1][0] + Ot*(pBP->coords[1][1]-1.0) + Ot*pBP->coords[1][2];
+
+   // apply a scaling
+   // scale factors against S and T axis, we apply on top of the existing matrix
+   // <1 will decrease the texel/world resolution, >1 will increase
+   float sS = 1.025,sT = 1.025;
+   BPMatScale(BPO,sS,sT);
+
+   // now BPO must be expressed back in (origin,texS,texT) axis base BP = M^-1 * BPO * M
+   // same expanded formula as above
+   memcpy(&pBP->coords, &BPO, sizeof(vec_t)*6);
+   pBP->coords[0][2] = Os*(1.0-BPO[0][0]) - Ot*BPO[0][1] + BPO[0][2];
+   pBP->coords[1][2] = -Os*BPO[1][0] + Ot*(1.0-BPO[1][1]) + BPO[1][2];
+ */
 
 /*
-  // initial version, before axis base change optimize
-
-  // we need to compute our BP matrix in this new axis base (O,texS,texT)
-  // the general case if BPO = M * BP * M^-1
-  //   where BPO is transformation expressed in (O,texS,texT)
-  //         M is the axis base change from (origin,texS,texT) to (O,texS,texT)
-  // here we have a special case, M is a translation and it's inverse is easy
-  vec_t BPO[2][3];
-  vec_t aux[2][3];
-  vec_t m[2][3];
-  memset(&m, 0, sizeof(vec_t)*6);
-  m[0][0] = 1; m[1][1] = 1; m[0][2] = -Os; m[1][2] = -Ot;
-  BPMatMul(m, pBP->coords, aux);
-  m[0][2] = Os; m[1][2] = Ot; // now M^-1
-  BPMatMul(aux, m, BPO);
-
-  // apply a scaling
-  // scale factors against S and T axis, we apply on top of the existing matrix
-  // <1 will decrease the texel/world resolution, >1 will increase
-  float sS = 1.025,sT = 1.025;
-  BPMatScale(BPO,sS,sT);
-
-  // now BPO must be expressed back in (origin,texS,texT) axis base BP = M^-1 * BPO * M
-  BPMatMul(m, BPO, aux); // m is M^-1
-  m[0][2] = -Os; m[1][2] = -Ot;
-  BPMatMul(aux, m, pBP->coords);
-*/
+   // initial version, before axis base change optimize
+
+   // we need to compute our BP matrix in this new axis base (O,texS,texT)
+   // the general case if BPO = M * BP * M^-1
+   //   where BPO is transformation expressed in (O,texS,texT)
+   //         M is the axis base change from (origin,texS,texT) to (O,texS,texT)
+   // here we have a special case, M is a translation and it's inverse is easy
+   vec_t BPO[2][3];
+   vec_t aux[2][3];
+   vec_t m[2][3];
+   memset(&m, 0, sizeof(vec_t)*6);
+   m[0][0] = 1; m[1][1] = 1; m[0][2] = -Os; m[1][2] = -Ot;
+   BPMatMul(m, pBP->coords, aux);
+   m[0][2] = Os; m[1][2] = Ot; // now M^-1
+   BPMatMul(aux, m, BPO);
+
+   // apply a scaling
+   // scale factors against S and T axis, we apply on top of the existing matrix
+   // <1 will decrease the texel/world resolution, >1 will increase
+   float sS = 1.025,sT = 1.025;
+   BPMatScale(BPO,sS,sT);
+
+   // now BPO must be expressed back in (origin,texS,texT) axis base BP = M^-1 * BPO * M
+   BPMatMul(m, BPO, aux); // m is M^-1
+   m[0][2] = -Os; m[1][2] = -Ot;
+   BPMatMul(aux, m, pBP->coords);
+ */
 #endif
 
-static void OnDone(GtkWidget *widget, gpointer data)
-{
-  g_dlgSurface.GetTexMods();
-  g_dlgSurface.HideDlg ();
-  Sys_UpdateWindows(W_ALL);
+static void OnDone( GtkWidget *widget, gpointer data ){
+       g_dlgSurface.GetTexMods();
+       g_dlgSurface.HideDlg();
+       Sys_UpdateWindows( W_ALL );
 }
 
 // OnUpdate is called when something is changed in the dialog
 // and must be reflected in the views. But it's not a change
 // so important, so the system will try to undo our last do before applying the new changes
-static void OnUpdate (GtkWidget *widget, gpointer data)
-{
-  if (!g_bListenChanged)
-    return;
-
-  if (OnlyPatchesSelected())
-  {
-    //++timo possible bug or misfeature in our gtk_MessageBox here..
+static void OnUpdate( GtkWidget *widget, gpointer data ){
+       if ( !g_bListenChanged ) {
+               return;
+       }
+
+       if ( OnlyPatchesSelected() ) {
+               //++timo possible bug or misfeature in our gtk_MessageBox here..
 //    gtk_MessageBox("The surface inspector doesn't work for patches, use the patch inspector instead (Shift+S)", "Surface Inspector", MB_OK );
-    Sys_Printf("The surface inspector doesn't work for patches, use the patch inspector instead (Shift+S)\n");
-    return;
-  }
+               Sys_Printf( "The surface inspector doesn't work for patches, use the patch inspector instead (Shift+S)\n" );
+               return;
+       }
 
-  // avoid long delays on slow computers
-  while (gtk_events_pending ())
-    gtk_main_iteration ();
+       // avoid long delays on slow computers
+       while ( gtk_events_pending() )
+               gtk_main_iteration();
 
-  g_dlgSurface.GetTexMods ();
-  Sys_UpdateWindows(W_CAMERA);
+       g_dlgSurface.GetTexMods();
+       Sys_UpdateWindows( W_CAMERA );
 }
 
 // reflect the current changes in the views, and make sure
 // the changes are stored in the undo.
-static void OnApply (GtkWidget *widget, gpointer data)
-{
-  if (!g_bListenChanged)
-    return;
-
-  g_dlgSurface.GetTexMods ();
-  g_dlgSurface.m_nUndoId = 0; // that way we are sure we won't call undo
-  Sys_UpdateWindows(W_CAMERA);
+static void OnApply( GtkWidget *widget, gpointer data ){
+       if ( !g_bListenChanged ) {
+               return;
+       }
+
+       g_dlgSurface.GetTexMods();
+       g_dlgSurface.m_nUndoId = 0; // that way we are sure we won't call undo
+       Sys_UpdateWindows( W_CAMERA );
 }
 
 // we use OnTextureKey to detect when the user edits something in the texture widget
 // in which case next 'Enter' will be interpreted as a OnApply instead of a OnDone
-static gint OnTextureKey (GtkWidget* widget, GdkEventKey* event, gpointer data)
-{
+static gint OnTextureKey( GtkWidget* widget, GdkEventKey* event, gpointer data ){
 #ifdef DBG_SI
-  Sys_Printf("OnTextureKey\n");
+       Sys_Printf( "OnTextureKey\n" );
 #endif
-  if (event->keyval != GDK_Return)
-    g_dlgSurface.m_bEditingTextureWidget = true;
-  return FALSE;
+       if ( event->keyval != GDK_Return ) {
+               g_dlgSurface.m_bEditingTextureWidget = true;
+       }
+       return FALSE;
 }
 
-static void OnCancel(GtkWidget *widget, gpointer data)
-{
-  g_qeglobals.d_texturewin.texdef = g_old_texdef;
-  // cancel the last do if we own it
-  if (g_dlgSurface.m_nUndoId == Undo_GetUndoId())
-  {
+static void OnCancel( GtkWidget *widget, gpointer data ){
+       g_qeglobals.d_texturewin.texdef = g_old_texdef;
+       // cancel the last do if we own it
+       if ( g_dlgSurface.m_nUndoId == Undo_GetUndoId() ) {
 #ifdef DBG_SI
-    Sys_Printf("OnCancel calling Undo_Undo\n");
+               Sys_Printf( "OnCancel calling Undo_Undo\n" );
 #endif
-    g_bListenUpdate = false;
-    Undo_Undo();
-    g_bListenUpdate = true;
-    g_dlgSurface.m_nUndoId = 0;
-  }
-  g_dlgSurface.HideDlg ();
+               g_bListenUpdate = false;
+               Undo_Undo();
+               g_bListenUpdate = true;
+               g_dlgSurface.m_nUndoId = 0;
+       }
+       g_dlgSurface.HideDlg();
 }
 
-static gint OnDialogKey (GtkWidget* widget, GdkEventKey* event, gpointer data)
-{
-  if (g_surfwin)
-  {
-    if (event->keyval == GDK_Return)
-    {
-      if (g_dlgSurface.m_bEditingTextureWidget)
-      {
-        OnApply (NULL, NULL);
-        g_dlgSurface.m_bEditingTextureWidget = false;
-      }
-      else
-      {
-        OnDone (NULL, NULL);
-      }
-      return TRUE;
-    }
-    if (event->keyval == GDK_Escape)
-    {
-      OnCancel (NULL, NULL);
-      return TRUE;
-    }
-  }
-  return FALSE;
+static gint OnDialogKey( GtkWidget* widget, GdkEventKey* event, gpointer data ){
+       if ( g_surfwin ) {
+               if ( event->keyval == GDK_Return ) {
+                       if ( g_dlgSurface.m_bEditingTextureWidget ) {
+                               OnApply( NULL, NULL );
+                               g_dlgSurface.m_bEditingTextureWidget = false;
+                       }
+                       else
+                       {
+                               OnDone( NULL, NULL );
+                       }
+                       return TRUE;
+               }
+               if ( event->keyval == GDK_Escape ) {
+                       OnCancel( NULL, NULL );
+                       return TRUE;
+               }
+       }
+       return FALSE;
 }
 
 // the widget can be one of hshift, vshift, hscale, vscale, rotate
 // we use the g_bListenChanged flag to ignore when changing stuff ourselves
-static void OnIncrementChanged(GtkWidget *widget, gpointer data)
-{
-  if (!g_bListenChanged)
-    return;
+static void OnIncrementChanged( GtkWidget *widget, gpointer data ){
+       if ( !g_bListenChanged ) {
+               return;
+       }
 
 #ifdef DBG_SI
-  Sys_Printf("OnIncrementChanged\n");
+       Sys_Printf( "OnIncrementChanged\n" );
 #endif
 
-  gfloat val = 0;
-  sscanf( gtk_entry_get_text (GTK_ENTRY (widget)), "%g", &val);
-  // now push it into the appropriate spin button
-  GtkAdjustment * adjust;
-  if (widget == g_dlgSurface.GetDlgWidget ("hshift_inc"))
-  {
-    l_pIncrement->shift[0] = val;
-    adjust = gtk_spin_button_get_adjustment (GTK_SPIN_BUTTON (g_dlgSurface.GetDlgWidget ("hshift")));
-    adjust->step_increment = l_pIncrement->shift[0];
-  }
-  else if (widget == g_dlgSurface.GetDlgWidget ("vshift_inc"))
-  {
-    l_pIncrement->shift[1] = val;
-    adjust = gtk_spin_button_get_adjustment (GTK_SPIN_BUTTON (g_dlgSurface.GetDlgWidget ("vshift")));
-    adjust->step_increment = l_pIncrement->shift[1];
-  }
-  else if (widget == g_dlgSurface.GetDlgWidget ("hscale_inc"))
-  {
-    l_pIncrement->scale[0] = val;
-    adjust = gtk_spin_button_get_adjustment (GTK_SPIN_BUTTON (g_dlgSurface.GetDlgWidget ("hscale")));
-    adjust->step_increment = l_pIncrement->scale[0];
-  }
-  else if (widget == g_dlgSurface.GetDlgWidget ("vscale_inc"))
-  {
-    l_pIncrement->scale[1] = val;
-    adjust = gtk_spin_button_get_adjustment (GTK_SPIN_BUTTON (g_dlgSurface.GetDlgWidget ("vscale")));
-    adjust->step_increment = l_pIncrement->scale[1];
-  }
-  else if (widget == g_dlgSurface.GetDlgWidget ("rotate_inc"))
-  {
-    l_pIncrement->rotate = val;
-    adjust = gtk_spin_button_get_adjustment (GTK_SPIN_BUTTON (g_dlgSurface.GetDlgWidget ("rotate")));
-    adjust->step_increment = l_pIncrement->rotate;
-  }
+       gfloat val = 0;
+       sscanf( gtk_entry_get_text( GTK_ENTRY( widget ) ), "%g", &val );
+       // now push it into the appropriate spin button
+       GtkAdjustment * adjust;
+       if ( widget == g_dlgSurface.GetDlgWidget( "hshift_inc" ) ) {
+               l_pIncrement->shift[0] = val;
+               adjust = gtk_spin_button_get_adjustment( GTK_SPIN_BUTTON( g_dlgSurface.GetDlgWidget( "hshift" ) ) );
+               adjust->step_increment = l_pIncrement->shift[0];
+       }
+       else if ( widget == g_dlgSurface.GetDlgWidget( "vshift_inc" ) ) {
+               l_pIncrement->shift[1] = val;
+               adjust = gtk_spin_button_get_adjustment( GTK_SPIN_BUTTON( g_dlgSurface.GetDlgWidget( "vshift" ) ) );
+               adjust->step_increment = l_pIncrement->shift[1];
+       }
+       else if ( widget == g_dlgSurface.GetDlgWidget( "hscale_inc" ) ) {
+               l_pIncrement->scale[0] = val;
+               adjust = gtk_spin_button_get_adjustment( GTK_SPIN_BUTTON( g_dlgSurface.GetDlgWidget( "hscale" ) ) );
+               adjust->step_increment = l_pIncrement->scale[0];
+       }
+       else if ( widget == g_dlgSurface.GetDlgWidget( "vscale_inc" ) ) {
+               l_pIncrement->scale[1] = val;
+               adjust = gtk_spin_button_get_adjustment( GTK_SPIN_BUTTON( g_dlgSurface.GetDlgWidget( "vscale" ) ) );
+               adjust->step_increment = l_pIncrement->scale[1];
+       }
+       else if ( widget == g_dlgSurface.GetDlgWidget( "rotate_inc" ) ) {
+               l_pIncrement->rotate = val;
+               adjust = gtk_spin_button_get_adjustment( GTK_SPIN_BUTTON( g_dlgSurface.GetDlgWidget( "rotate" ) ) );
+               adjust->step_increment = l_pIncrement->rotate;
+       }
 }
 
 // make the shift increments match the grid settings
@@ -363,24 +346,21 @@ static void OnIncrementChanged(GtkWidget *widget, gpointer data)
 // NOTE: the default scale depends if you are using BP mode or regular.
 // For regular it's 0.5f (128 pixels cover 64 world units), for BP it's simply 1.0f
 // see fenris #2810
-void DoSnapTToGrid(float hscale, float vscale)
-{
-  if (hscale == 0.0f)
-  {
-    (g_qeglobals.m_bBrushPrimitMode) ? hscale = 1.0f : hscale = 0.5f;
-  }
-  if (vscale == 0.0f)
-  {
-    (g_qeglobals.m_bBrushPrimitMode) ? vscale = 1.0f : vscale = 0.5f;
-  }
+void DoSnapTToGrid( float hscale, float vscale ){
+       if ( hscale == 0.0f ) {
+               ( g_qeglobals.m_bBrushPrimitMode ) ? hscale = 1.0f : hscale = 0.5f;
+       }
+       if ( vscale == 0.0f ) {
+               ( g_qeglobals.m_bBrushPrimitMode ) ? vscale = 1.0f : vscale = 0.5f;
+       }
 #ifdef _DEBUG
-  Sys_Printf ("DoSnapTToGrid: hscale %g vscale %g\n", hscale, vscale);
+       Sys_Printf( "DoSnapTToGrid: hscale %g vscale %g\n", hscale, vscale );
 #endif
-  l_pIncrement->shift[0] = (int) ( (float)g_qeglobals.d_gridsize / hscale );
-  l_pIncrement->shift[1] = (int) ( (float)g_qeglobals.d_gridsize / vscale );
-  // now some update work
-  // FIXME: doesn't look good here, seems to be called several times
-  g_dlgSurface.SetTexMods();
+       l_pIncrement->shift[0] = (int) ( (float)g_qeglobals.d_gridsize / hscale );
+       l_pIncrement->shift[1] = (int) ( (float)g_qeglobals.d_gridsize / vscale );
+       // now some update work
+       // FIXME: doesn't look good here, seems to be called several times
+       g_dlgSurface.SetTexMods();
 }
 
 // make the shift increments match the grid settings
@@ -389,747 +369,726 @@ void DoSnapTToGrid(float hscale, float vscale)
 // we move the textures in pixels, not world units. (i.e. increment values are in pixel)
 // depending on the texture scale it doesn't take the same amount of pixels to move of g_qeglobals.d_gridsize
 // increment * scale = gridsize
-static void OnBtnMatchGrid(GtkWidget *widget, gpointer data)
-{
-  float hscale, vscale;
-  hscale = gtk_spin_button_get_value_as_float (GTK_SPIN_BUTTON (g_dlgSurface.GetDlgWidget ("hscale")));
-  vscale = gtk_spin_button_get_value_as_float (GTK_SPIN_BUTTON (g_dlgSurface.GetDlgWidget ("vscale")));
-  if (hscale == 0.0f || vscale == 0.0f)
-  {
-    Sys_Printf("ERROR: unexpected scale == 0.0f\n");
-    return;
-  }
-  DoSnapTToGrid (hscale, vscale);
+static void OnBtnMatchGrid( GtkWidget *widget, gpointer data ){
+       float hscale, vscale;
+       hscale = gtk_spin_button_get_value_as_float( GTK_SPIN_BUTTON( g_dlgSurface.GetDlgWidget( "hscale" ) ) );
+       vscale = gtk_spin_button_get_value_as_float( GTK_SPIN_BUTTON( g_dlgSurface.GetDlgWidget( "vscale" ) ) );
+       if ( hscale == 0.0f || vscale == 0.0f ) {
+               Sys_Printf( "ERROR: unexpected scale == 0.0f\n" );
+               return;
+       }
+       DoSnapTToGrid( hscale, vscale );
 }
 
-void UpdateSurfaceDialog()
-{
-  if (!g_bListenUpdate)
-    return;
+void UpdateSurfaceDialog(){
+       if ( !g_bListenUpdate ) {
+               return;
+       }
 
-  g_SurfaceTable.m_pfnUpdateSurfaceDialog();
+       g_SurfaceTable.m_pfnUpdateSurfaceDialog();
 }
 
 // DoSurface will always try to show the surface inspector
 // or update it because something new has been selected
-void DoSurface (void)
-{
+void DoSurface( void ){
 #ifdef DBG_SI
-  Sys_Printf("DoSurface\n");
+       Sys_Printf( "DoSurface\n" );
 #endif
-  g_SurfaceTable.m_pfnDoSurface();
-  return;
+       g_SurfaceTable.m_pfnDoSurface();
+       return;
 }
 
-void ToggleSurface()
-{
-  g_SurfaceTable.m_pfnToggleSurface();
-  return;
+void ToggleSurface(){
+       g_SurfaceTable.m_pfnToggleSurface();
+       return;
 }
 
 // NOTE: will raise and show the Surface inspector and exec fit for patches and brushes
-void SurfaceDlgFitAll()
-{
-  g_SurfaceTable.m_pfnSurfaceDlgFitAll();
-  return;
+void SurfaceDlgFitAll(){
+       g_SurfaceTable.m_pfnSurfaceDlgFitAll();
+       return;
 }
 
-static void OnBtnPatchdetails(GtkWidget *widget, gpointer data)
-{
-  Patch_NaturalizeSelected(true);
-  Sys_UpdateWindows(W_ALL);
+static void OnBtnPatchdetails( GtkWidget *widget, gpointer data ){
+       Patch_NaturalizeSelected( true );
+       Sys_UpdateWindows( W_ALL );
 }
 
-static void OnBtnPatchnatural(GtkWidget *widget, gpointer data)
-{
-  Patch_NaturalizeSelected();
-  Sys_UpdateWindows(W_ALL);
+static void OnBtnPatchnatural( GtkWidget *widget, gpointer data ){
+       Patch_NaturalizeSelected();
+       Sys_UpdateWindows( W_ALL );
 }
 
-static void OnBtnPatchreset(GtkWidget *widget, gpointer data)
-{
-  float fx, fy;
+static void OnBtnPatchreset( GtkWidget *widget, gpointer data ){
+       float fx, fy;
 
-  if (DoTextureLayout (&fx, &fy) == IDOK)
-    Patch_ResetTexturing (fx, fy);
-  Sys_UpdateWindows(W_ALL);
+       if ( DoTextureLayout( &fx, &fy ) == IDOK ) {
+               Patch_ResetTexturing( fx, fy );
+       }
+       Sys_UpdateWindows( W_ALL );
 }
 
-static void OnBtnPatchFit(GtkWidget *widget, gpointer data)
-{
-  Patch_ResetTexturing(1.0, 1.0);
-  Sys_UpdateWindows(W_ALL);
+static void OnBtnPatchFit( GtkWidget *widget, gpointer data ){
+       Patch_ResetTexturing( 1.0, 1.0 );
+       Sys_UpdateWindows( W_ALL );
 }
 
-static void OnBtnAxial(GtkWidget *widget, gpointer data)
-{
-  Select_SetTexture (&g_qeglobals.d_texturewin.texdef, &g_qeglobals.d_texturewin.brushprimit_texdef, true);
-  g_dlgSurface.SetTexMods();
-  Sys_UpdateWindows(W_ALL);
+static void OnBtnAxial( GtkWidget *widget, gpointer data ){
+       Select_SetTexture( &g_qeglobals.d_texturewin.texdef, &g_qeglobals.d_texturewin.brushprimit_texdef, true );
+       g_dlgSurface.SetTexMods();
+       Sys_UpdateWindows( W_ALL );
 }
 
-static void OnBtnFaceFit(GtkWidget *widget, gpointer data)
-{
-  g_dlgSurface.UpdateData(TRUE);
-  if (g_ptrSelectedFaces.GetSize() == 0)
-  {
-    brush_t *b;
-    for (b=selected_brushes.next ; b != &selected_brushes ; b=b->next)
-    {
-      for (face_t* pFace = b->brush_faces; pFace; pFace = pFace->next)
-      {
-        g_ptrSelectedFaces.Add(pFace);
-        g_ptrSelectedFaceBrushes.Add(b);
-      }
-    }
-    Select_FitTexture(g_dlgSurface.m_nHeight, g_dlgSurface.m_nWidth);
-    g_dlgSurface.SetTexMods();
-    g_ptrSelectedFaces.RemoveAll();
-  }
-  else
-  {
-    Select_FitTexture(g_dlgSurface.m_nHeight, g_dlgSurface.m_nWidth);
-    g_dlgSurface.SetTexMods();
-  }
-  Sys_UpdateWindows(W_ALL);
+static void OnBtnFaceFit( GtkWidget *widget, gpointer data ){
+       g_dlgSurface.UpdateData( TRUE );
+       if ( g_ptrSelectedFaces.GetSize() == 0 ) {
+               brush_t *b;
+               for ( b = selected_brushes.next ; b != &selected_brushes ; b = b->next )
+               {
+                       for ( face_t* pFace = b->brush_faces; pFace; pFace = pFace->next )
+                       {
+                               g_ptrSelectedFaces.Add( pFace );
+                               g_ptrSelectedFaceBrushes.Add( b );
+                       }
+               }
+               Select_FitTexture( g_dlgSurface.m_nHeight, g_dlgSurface.m_nWidth );
+               g_dlgSurface.SetTexMods();
+               g_ptrSelectedFaces.RemoveAll();
+       }
+       else
+       {
+               Select_FitTexture( g_dlgSurface.m_nHeight, g_dlgSurface.m_nWidth );
+               g_dlgSurface.SetTexMods();
+       }
+       Sys_UpdateWindows( W_ALL );
 }
 
 // =============================================================================
 // SurfaceDialog class
 
-SurfaceDlg::SurfaceDlg ()
-{
-  m_nHeight = 1;
-  m_nWidth = 1;
-  m_nUndoId = 0;
+SurfaceDlg::SurfaceDlg (){
+       m_nHeight = 1;
+       m_nWidth = 1;
+       m_nUndoId = 0;
 }
 
-void SurfaceDlg::ShowDlg()
-{
-  Dialog::ShowDlg();
-  if(GetWidget() == NULL)
-    Create();
-  g_surfwin = GetWidget ();
+void SurfaceDlg::ShowDlg(){
+       Dialog::ShowDlg();
+       if ( GetWidget() == NULL ) {
+               Create();
+       }
+       g_surfwin = GetWidget();
 }
-void SurfaceDlg::HideDlg()
-{
-  g_surfwin = NULL;
-  Dialog::HideDlg();
+void SurfaceDlg::HideDlg(){
+       g_surfwin = NULL;
+       Dialog::HideDlg();
 }
 
-GtkWidget* SurfaceDlg::GetWidget()
-{
-  return g_SurfaceTable.m_pfnGet_SI_Module_Widget();
+GtkWidget* SurfaceDlg::GetWidget(){
+       return g_SurfaceTable.m_pfnGet_SI_Module_Widget();
 }
 
 // set default values for increments (shift scale and rot)
 // this is called by the prefs code if can't find the values
-void SurfaceDlg::InitDefaultIncrement(texdef_t *tex)
-{
-  tex->SetName("foo");
-  tex->shift[0] = 8;
-  tex->shift[1] = 8;
-  tex->scale[0] = 0.25;
-  tex->scale[1] = 0.25;
-  tex->rotate = 10;
+void SurfaceDlg::InitDefaultIncrement( texdef_t *tex ){
+       tex->SetName( "foo" );
+       tex->shift[0] = 8;
+       tex->shift[1] = 8;
+       tex->scale[0] = 0.25;
+       tex->scale[1] = 0.25;
+       tex->rotate = 10;
 }
 
-void SurfaceDlg::BuildDialog ()
-{
-  GtkWidget *dlg, *vbox, *hbox2, *frame, *table, *label;
-  GtkWidget *button, *entry, *spin;
+void SurfaceDlg::BuildDialog(){
+       GtkWidget *dlg, *vbox, *hbox2, *frame, *table, *label;
+       GtkWidget *button, *entry, *spin;
 
-  dlg = m_pWidget;
+       dlg = m_pWidget;
 
-  load_window_pos (dlg, g_PrefsDlg.mWindowInfo.posSurfaceWnd);
+       load_window_pos( dlg, g_PrefsDlg.mWindowInfo.posSurfaceWnd );
 
-  gtk_window_set_title (GTK_WINDOW (dlg), _("Surface inspector"));
-  //g_signal_connect (G_OBJECT (dlg), "delete_event", G_CALLBACK (OnCancel), NULL);
-  // we catch 'Enter' and interpret is as OnDone
-  gtk_signal_connect (GTK_OBJECT (dlg), "key_press_event", GTK_SIGNAL_FUNC (OnDialogKey), NULL);
-  gtk_window_set_transient_for (GTK_WINDOW (dlg), GTK_WINDOW (g_pParentWnd->m_pWidget));
+       gtk_window_set_title( GTK_WINDOW( dlg ), _( "Surface inspector" ) );
+       //g_signal_connect (G_OBJECT (dlg), "delete_event", G_CALLBACK (OnCancel), NULL);
+       // we catch 'Enter' and interpret is as OnDone
+       gtk_signal_connect( GTK_OBJECT( dlg ), "key_press_event", GTK_SIGNAL_FUNC( OnDialogKey ), NULL );
+       gtk_window_set_transient_for( GTK_WINDOW( dlg ), GTK_WINDOW( g_pParentWnd->m_pWidget ) );
 
-  // replaced by only the vbox:
-  vbox = gtk_vbox_new (FALSE, 5);
-  gtk_widget_show (vbox);
-  gtk_container_add (GTK_CONTAINER (dlg), vbox);
-  gtk_container_set_border_width (GTK_CONTAINER (vbox), 5);
+       // replaced by only the vbox:
+       vbox = gtk_vbox_new( FALSE, 5 );
+       gtk_widget_show( vbox );
+       gtk_container_add( GTK_CONTAINER( dlg ), vbox );
+       gtk_container_set_border_width( GTK_CONTAINER( vbox ), 5 );
 
-  hbox2 = gtk_hbox_new (FALSE, 5);
-  gtk_widget_show (hbox2);
-  gtk_box_pack_start (GTK_BOX (vbox), hbox2, FALSE, TRUE, 0);
+       hbox2 = gtk_hbox_new( FALSE, 5 );
+       gtk_widget_show( hbox2 );
+       gtk_box_pack_start( GTK_BOX( vbox ), hbox2, FALSE, TRUE, 0 );
 
-  label = gtk_label_new (_("Texture"));
-  gtk_widget_show (label);
-  gtk_box_pack_start (GTK_BOX (hbox2), label, FALSE, TRUE, 0);
+       label = gtk_label_new( _( "Texture" ) );
+       gtk_widget_show( label );
+       gtk_box_pack_start( GTK_BOX( hbox2 ), label, FALSE, TRUE, 0 );
 
-  entry = gtk_entry_new ();
-  gtk_signal_connect (GTK_OBJECT (entry), "key_press_event", GTK_SIGNAL_FUNC (OnTextureKey), NULL);
-  gtk_widget_show (entry);
-  gtk_box_pack_start (GTK_BOX (hbox2), entry, TRUE, TRUE, 0);
-  g_object_set_data (G_OBJECT (m_pWidget), "texture", entry);
+       entry = gtk_entry_new();
+       gtk_signal_connect( GTK_OBJECT( entry ), "key_press_event", GTK_SIGNAL_FUNC( OnTextureKey ), NULL );
+       gtk_widget_show( entry );
+       gtk_box_pack_start( GTK_BOX( hbox2 ), entry, TRUE, TRUE, 0 );
+       g_object_set_data( G_OBJECT( m_pWidget ), "texture", entry );
 
 //  table = gtk_table_new (5, 4, FALSE);
-  table = gtk_table_new (6, 4, FALSE);
-  gtk_widget_show (table);
-  gtk_box_pack_start (GTK_BOX (vbox), table, FALSE, TRUE, 0);
-  gtk_table_set_row_spacings (GTK_TABLE (table), 5);
-  gtk_table_set_col_spacings (GTK_TABLE (table), 5);
-
-  label = gtk_label_new (_("Horizontal shift"));
-  gtk_widget_show (label);
-  gtk_misc_set_alignment (GTK_MISC (label), 0, 0);
-  gtk_table_attach (GTK_TABLE (table), label, 0, 1, 0, 1,
-                   (GtkAttachOptions) (GTK_FILL),
-                   (GtkAttachOptions) (0), 0, 0);
-
-  spin = gtk_spin_button_new (GTK_ADJUSTMENT (gtk_adjustment_new (0, -8192, 8192, 2, 8, 8)), 0, 0);
-  g_object_set_data (G_OBJECT (dlg), "hshift", spin);
-  gtk_signal_connect (GTK_OBJECT (gtk_spin_button_get_adjustment (GTK_SPIN_BUTTON (spin))), "value_changed",
-                     GTK_SIGNAL_FUNC (OnUpdate), NULL);
-  gtk_widget_show (spin);
-  gtk_table_attach (GTK_TABLE (table), spin, 1, 2, 0, 1,
-                   (GtkAttachOptions) (GTK_EXPAND | GTK_FILL),
-                   (GtkAttachOptions) (0), 0, 0);
-  gtk_widget_set_usize (spin, 60, -2);
-
-  label = gtk_label_new (_("Step"));
-  gtk_widget_show (label);
-  gtk_misc_set_alignment (GTK_MISC (label), 0, 0);
-  gtk_table_attach (GTK_TABLE (table), label, 2, 3, 0, 1,
-                   (GtkAttachOptions) (GTK_FILL),
-                   (GtkAttachOptions) (0), 0, 0);
-
-  entry = gtk_entry_new ();
-  g_object_set_data (G_OBJECT (dlg), "hshift_inc", entry);
-  gtk_signal_connect (GTK_OBJECT (entry), "changed",
-                     GTK_SIGNAL_FUNC (OnIncrementChanged), NULL);
-  gtk_widget_show (entry);
-  gtk_table_attach (GTK_TABLE (table), entry, 3, 4, 0, 1,
-                   (GtkAttachOptions) (GTK_EXPAND | GTK_FILL),
-                   (GtkAttachOptions) (0), 0, 0);
-  gtk_widget_set_usize (entry, 50, -2);
-
-  label = gtk_label_new (_("Vertical shift"));
-  gtk_widget_show (label);
-  gtk_misc_set_alignment (GTK_MISC (label), 0, 0);
-  gtk_table_attach (GTK_TABLE (table), label, 0, 1, 1, 2,
-                   (GtkAttachOptions) (GTK_FILL),
-                   (GtkAttachOptions) (0), 0, 0);
-
-  spin = gtk_spin_button_new (GTK_ADJUSTMENT (gtk_adjustment_new (0, -8192, 8192, 2, 8, 8)), 0, 0);
-  g_object_set_data (G_OBJECT (dlg), "vshift", spin);
-  gtk_signal_connect (GTK_OBJECT (gtk_spin_button_get_adjustment (GTK_SPIN_BUTTON (spin))), "value_changed",
-                     GTK_SIGNAL_FUNC (OnUpdate), NULL);
-  gtk_widget_show (spin);
-  gtk_table_attach (GTK_TABLE (table), spin, 1, 2, 1, 2,
-                   (GtkAttachOptions) (GTK_FILL),
-                   (GtkAttachOptions) (0), 0, 0);
-  gtk_widget_set_usize (spin, 60, -2);
-
-  label = gtk_label_new (_("Step"));
-  gtk_widget_show (label);
-  gtk_misc_set_alignment (GTK_MISC (label), 0, 0);
-  gtk_table_attach (GTK_TABLE (table), label, 2, 3, 1, 2,
-                   (GtkAttachOptions) (GTK_FILL),
-                   (GtkAttachOptions) (0), 0, 0);
-
-  entry = gtk_entry_new ();
-  g_object_set_data (G_OBJECT (dlg), "vshift_inc", entry);
-  gtk_signal_connect (GTK_OBJECT (entry), "changed",
-                     GTK_SIGNAL_FUNC (OnIncrementChanged), NULL);
-  gtk_widget_show (entry);
-  gtk_table_attach (GTK_TABLE (table), entry, 3, 4, 1, 2,
-                   (GtkAttachOptions) (GTK_FILL),
-                   (GtkAttachOptions) (0), 0, 0);
-  gtk_widget_set_usize (entry, 50, -2);
-
-  label = gtk_label_new (_("Horizontal stretch"));
-  gtk_widget_show (label);
-  gtk_misc_set_alignment (GTK_MISC (label), 0, 0);
-  gtk_table_attach (GTK_TABLE (table), label, 0, 1, 2, 3,
-                   (GtkAttachOptions) (GTK_FILL),
-                   (GtkAttachOptions) (0), 0, 0);
-
-  spin = gtk_spin_button_new (GTK_ADJUSTMENT (gtk_adjustment_new (0, -1000, 1000, 1, 10, 10)), 0, 0);
-  g_object_set_data (G_OBJECT (dlg), "hscale", spin);
-  gtk_signal_connect (GTK_OBJECT (gtk_spin_button_get_adjustment (GTK_SPIN_BUTTON (spin))), "value_changed",
-                     GTK_SIGNAL_FUNC (OnUpdate), NULL);
-  gtk_widget_show (spin);
-  gtk_table_attach (GTK_TABLE (table), spin, 1, 2, 2, 3,
-                   (GtkAttachOptions) (GTK_FILL),
-                   (GtkAttachOptions) (0), 0, 0);
-  gtk_widget_set_usize (spin, 60, -2);
-
-  label = gtk_label_new (_("Step"));
-  gtk_widget_show (label);
-  gtk_misc_set_alignment (GTK_MISC (label), 0, 0);
-  gtk_table_attach (GTK_TABLE (table), label, 2, 3, 2, 3,
-                   (GtkAttachOptions) (GTK_FILL),
-                   (GtkAttachOptions) (0), 2, 3);
-
-  entry = gtk_entry_new ();
-  g_object_set_data (G_OBJECT (dlg), "hscale_inc", entry);
-  gtk_signal_connect (GTK_OBJECT (entry), "changed",
-                     GTK_SIGNAL_FUNC (OnIncrementChanged), NULL);
-  gtk_widget_show (entry);
-  gtk_table_attach (GTK_TABLE (table), entry, 3, 4, 2, 3,
-                   (GtkAttachOptions) (GTK_FILL),
-                   (GtkAttachOptions) (0), 2, 3);
-  gtk_widget_set_usize (entry, 50, -2);
-
-  label = gtk_label_new (_("Vertical stretch"));
-  gtk_widget_show (label);
-  gtk_misc_set_alignment (GTK_MISC (label), 0, 0);
-  gtk_table_attach (GTK_TABLE (table), label, 0, 1, 3, 4,
-                   (GtkAttachOptions) (GTK_FILL),
-                   (GtkAttachOptions) (0), 0, 0);
-
-  spin = gtk_spin_button_new (GTK_ADJUSTMENT (gtk_adjustment_new (0, -1000, 1000, 1, 10, 10)), 0, 0);
-  g_object_set_data (G_OBJECT (dlg), "vscale", spin);
-  gtk_signal_connect (GTK_OBJECT (gtk_spin_button_get_adjustment (GTK_SPIN_BUTTON (spin))), "value_changed",
-                     GTK_SIGNAL_FUNC (OnUpdate), NULL);
-  gtk_widget_show (spin);
-  gtk_table_attach (GTK_TABLE (table), spin, 1, 2, 3, 4,
-                   (GtkAttachOptions) (GTK_FILL),
-                   (GtkAttachOptions) (0), 0, 0);
-  gtk_widget_set_usize (spin, 60, -2);
-
-  label = gtk_label_new (_("Step"));
-  gtk_widget_show (label);
-  gtk_misc_set_alignment (GTK_MISC (label), 0, 0);
-  gtk_table_attach (GTK_TABLE (table), label, 2, 3, 3, 4,
-                   (GtkAttachOptions) (GTK_FILL),
-                   (GtkAttachOptions) (0), 0, 0);
-
-  entry = gtk_entry_new ();
-  g_object_set_data (G_OBJECT (dlg), "vscale_inc", entry);
-  gtk_signal_connect (GTK_OBJECT (entry), "changed",
-                     GTK_SIGNAL_FUNC (OnIncrementChanged), NULL);
-  gtk_widget_show (entry);
-  gtk_table_attach (GTK_TABLE (table), entry, 3, 4, 3, 4,
-                   (GtkAttachOptions) (GTK_FILL),
-                   (GtkAttachOptions) (0), 0, 0);
-  gtk_widget_set_usize (entry, 50, -2);
-
-  label = gtk_label_new (_("Rotate"));
-  gtk_widget_show (label);
-  gtk_misc_set_alignment (GTK_MISC (label), 0, 0);
-  gtk_table_attach (GTK_TABLE (table), label, 0, 1, 4, 5,
-                   (GtkAttachOptions) (GTK_FILL),
-                   (GtkAttachOptions) (0), 0, 0);
-
-  spin = gtk_spin_button_new (GTK_ADJUSTMENT (gtk_adjustment_new (0, -360, 360, 1, 10, 10)), 1, 0);
-  g_object_set_data (G_OBJECT (dlg), "rotate", spin);
-  gtk_signal_connect (GTK_OBJECT (gtk_spin_button_get_adjustment (GTK_SPIN_BUTTON (spin))), "value_changed",
-                     GTK_SIGNAL_FUNC (OnUpdate), NULL);
-  gtk_widget_show (spin);
-  gtk_table_attach (GTK_TABLE (table), spin, 1, 2, 4, 5,
-                   (GtkAttachOptions) (GTK_FILL),
-                   (GtkAttachOptions) (0), 0, 0);
-  gtk_widget_set_usize (spin, 60, -2);
-  gtk_spin_button_set_wrap (GTK_SPIN_BUTTON (spin), TRUE);
-
-  label = gtk_label_new (_("Step"));
-  gtk_widget_show (label);
-  gtk_misc_set_alignment (GTK_MISC (label), 0, 0);
-  gtk_table_attach (GTK_TABLE (table), label, 2, 3, 4, 5,
-                   (GtkAttachOptions) (GTK_FILL),
-                   (GtkAttachOptions) (0), 0, 0);
-
-  entry = gtk_entry_new ();
-  g_object_set_data (G_OBJECT (dlg), "rotate_inc", entry);
-  gtk_signal_connect (GTK_OBJECT (entry), "changed",
-                     GTK_SIGNAL_FUNC (OnIncrementChanged), NULL);
-  gtk_widget_show (entry);
-  gtk_table_attach (GTK_TABLE (table), entry, 3, 4, 4, 5,
-                   (GtkAttachOptions) (GTK_FILL),
-                   (GtkAttachOptions) (0), 0, 0);
-  gtk_widget_set_usize (entry, 50, -2);
-
-  // match grid button
-  button = gtk_button_new_with_label (_("Match Grid"));
-  gtk_widget_show (button);
-  gtk_table_attach (GTK_TABLE (table), button, 2, 4, 5, 6,
-                   (GtkAttachOptions) (GTK_EXPAND | GTK_FILL),
-                   (GtkAttachOptions) (0), 0, 0);
-  gtk_signal_connect (GTK_OBJECT (button), "clicked",
-                      GTK_SIGNAL_FUNC (OnBtnMatchGrid), NULL);
-
-  frame = gtk_frame_new (_("Texturing"));
-  gtk_widget_show (frame);
-  gtk_box_pack_start (GTK_BOX (vbox), frame, FALSE, TRUE, 0);
-
-  table = gtk_table_new (4, 4, FALSE);
-  gtk_widget_show (table);
-  gtk_container_add (GTK_CONTAINER (frame), table);
-  gtk_table_set_row_spacings (GTK_TABLE (table), 5);
-  gtk_table_set_col_spacings (GTK_TABLE (table), 5);
-  gtk_container_set_border_width (GTK_CONTAINER (table), 5);
-
-  label = gtk_label_new ("Brush");
-  gtk_widget_show (label);
-  gtk_table_attach (GTK_TABLE (table), label, 0, 1, 0, 1,
-                   (GtkAttachOptions) (GTK_FILL),
-                   (GtkAttachOptions) (0), 0, 0);
-
-  label = gtk_label_new ("Patch");
-  gtk_widget_show (label);
-  gtk_table_attach (GTK_TABLE (table), label, 0, 1, 2, 3,
-                   (GtkAttachOptions) (GTK_FILL),
-                   (GtkAttachOptions) (0), 0, 0);
-
-  label = gtk_label_new ("Width");
-  gtk_widget_show (label);
-  gtk_table_attach (GTK_TABLE (table), label, 2, 3, 0, 1,
-                   (GtkAttachOptions) (GTK_FILL),
-                   (GtkAttachOptions) (0), 0, 0);
-
-  label = gtk_label_new (_("Height"));
-  gtk_widget_show (label);
-  gtk_table_attach (GTK_TABLE (table), label, 3, 4, 0, 1,
-                   (GtkAttachOptions) (GTK_FILL),
-                   (GtkAttachOptions) (0), 0, 0);
-
-  button = gtk_button_new_with_label (_("Axial"));
-  gtk_widget_show (button);
-  gtk_table_attach (GTK_TABLE (table), button, 0, 1, 1, 2,
-                   (GtkAttachOptions) (GTK_EXPAND | GTK_FILL),
-                   (GtkAttachOptions) (0), 0, 0);
-  gtk_signal_connect (GTK_OBJECT (button), "clicked",
-                      GTK_SIGNAL_FUNC (OnBtnAxial), NULL);
-  gtk_widget_set_usize (button, 60, -2);
-
-  button = gtk_button_new_with_label (_("Fit"));
-  gtk_widget_show (button);
-  gtk_table_attach (GTK_TABLE (table), button, 1, 2, 1, 2,
-                   (GtkAttachOptions) (GTK_EXPAND | GTK_FILL),
-                   (GtkAttachOptions) (0), 0, 0);
-  gtk_signal_connect (GTK_OBJECT (button), "clicked",
-                      GTK_SIGNAL_FUNC (OnBtnFaceFit), NULL);
-  gtk_widget_set_usize (button, 60, -2);
-
-  button = gtk_button_new_with_label (_("CAP"));
-  gtk_widget_show (button);
-  gtk_table_attach (GTK_TABLE (table), button, 0, 1, 3, 4,
-                   (GtkAttachOptions) (GTK_EXPAND | GTK_FILL),
-                   (GtkAttachOptions) (0), 0, 0);
-  gtk_signal_connect (GTK_OBJECT (button), "clicked",
-                      GTK_SIGNAL_FUNC (OnBtnPatchdetails), NULL);
-  gtk_widget_set_usize (button, 60, -2);
-
-  button = gtk_button_new_with_label (_("Set..."));
-  gtk_widget_show (button);
-  gtk_table_attach (GTK_TABLE (table), button, 1, 2, 3, 4,
-                   (GtkAttachOptions) (GTK_EXPAND | GTK_FILL),
-                   (GtkAttachOptions) (0), 0, 0);
-  gtk_signal_connect (GTK_OBJECT (button), "clicked",
-                      GTK_SIGNAL_FUNC (OnBtnPatchreset), NULL);
-  gtk_widget_set_usize (button, 60, -2);
-
-  button = gtk_button_new_with_label (_("Natural"));
-  gtk_widget_show (button);
-  gtk_table_attach (GTK_TABLE (table), button, 2, 3, 3, 4,
-                   (GtkAttachOptions) (GTK_EXPAND | GTK_FILL),
-                   (GtkAttachOptions) (0), 0, 0);
-  gtk_signal_connect (GTK_OBJECT (button), "clicked",
-                      GTK_SIGNAL_FUNC (OnBtnPatchnatural), NULL);
-  gtk_widget_set_usize (button, 60, -2);
-
-  button = gtk_button_new_with_label (_("Fit"));
-  gtk_widget_show (button);
-  gtk_table_attach (GTK_TABLE (table), button, 3, 4, 3, 4,
-                   (GtkAttachOptions) (GTK_EXPAND | GTK_FILL),
-                   (GtkAttachOptions) (0), 0, 0);
-  gtk_signal_connect (GTK_OBJECT (button), "clicked",
-                      GTK_SIGNAL_FUNC (OnBtnPatchFit), NULL);
-  gtk_widget_set_usize (button, 60, -2);
-
-  spin = gtk_spin_button_new (GTK_ADJUSTMENT (gtk_adjustment_new (1, 1, 32, 1, 10, 10)), 1, 0);
-  gtk_widget_show (spin);
-  gtk_table_attach (GTK_TABLE (table), spin, 2, 3, 1, 2,
-                   (GtkAttachOptions) (GTK_EXPAND | GTK_FILL),
-                   (GtkAttachOptions) (0), 0, 0);
-  gtk_widget_set_usize (spin, 60, -2);
-  AddDialogData (spin, &m_nWidth, DLG_SPIN_INT);
-
-  spin = gtk_spin_button_new (GTK_ADJUSTMENT (gtk_adjustment_new (1, 1, 32, 1, 10, 10)), 1, 0);
-  gtk_widget_show (spin);
-  gtk_table_attach (GTK_TABLE (table), spin, 3, 4, 1, 2,
-                   (GtkAttachOptions) (GTK_EXPAND | GTK_FILL),
-                   (GtkAttachOptions) (0), 0, 0);
-  gtk_widget_set_usize (spin, 60, -2);
-  AddDialogData (spin, &m_nHeight, DLG_SPIN_INT);
-
-  hbox2 = gtk_hbox_new (FALSE, 5);
-  gtk_widget_show (hbox2);
-  gtk_box_pack_start (GTK_BOX (vbox), hbox2, FALSE, TRUE, 0);
-
-  button = gtk_button_new_with_label (_("Done"));
-  gtk_widget_show (button);
-  gtk_box_pack_start (GTK_BOX (hbox2), button, FALSE, FALSE, 0);
-  gtk_signal_connect (GTK_OBJECT (button), "clicked",
-                      GTK_SIGNAL_FUNC (OnDone), NULL);
-  gtk_widget_set_usize (button, 60, -2);
-
-  button = gtk_button_new_with_label (_("Apply"));
-  gtk_widget_show (button);
-  gtk_box_pack_start (GTK_BOX (hbox2), button, FALSE, FALSE, 0);
-  gtk_signal_connect (GTK_OBJECT (button), "clicked",
-                      GTK_SIGNAL_FUNC (OnApply), NULL);
-  gtk_widget_set_usize (button, 60, -2);
-
-  button = gtk_button_new_with_label (_("Cancel"));
-  gtk_widget_show (button);
-  gtk_box_pack_start (GTK_BOX (hbox2), button, FALSE, FALSE, 0);
-  gtk_signal_connect (GTK_OBJECT (button), "clicked",
-                      GTK_SIGNAL_FUNC (OnCancel), NULL);
-  gtk_widget_set_usize (button, 60, -2);
-
-  // that's a bit of trashy stuff from Textool-v2 branch
+       table = gtk_table_new( 6, 4, FALSE );
+       gtk_widget_show( table );
+       gtk_box_pack_start( GTK_BOX( vbox ), table, FALSE, TRUE, 0 );
+       gtk_table_set_row_spacings( GTK_TABLE( table ), 5 );
+       gtk_table_set_col_spacings( GTK_TABLE( table ), 5 );
+
+       label = gtk_label_new( _( "Horizontal shift" ) );
+       gtk_widget_show( label );
+       gtk_misc_set_alignment( GTK_MISC( label ), 0, 0 );
+       gtk_table_attach( GTK_TABLE( table ), label, 0, 1, 0, 1,
+                                         (GtkAttachOptions) ( GTK_FILL ),
+                                         (GtkAttachOptions) ( 0 ), 0, 0 );
+
+       spin = gtk_spin_button_new( GTK_ADJUSTMENT( gtk_adjustment_new( 0, -8192, 8192, 2, 8, 8 ) ), 0, 0 );
+       g_object_set_data( G_OBJECT( dlg ), "hshift", spin );
+       gtk_signal_connect( GTK_OBJECT( gtk_spin_button_get_adjustment( GTK_SPIN_BUTTON( spin ) ) ), "value_changed",
+                                               GTK_SIGNAL_FUNC( OnUpdate ), NULL );
+       gtk_widget_show( spin );
+       gtk_table_attach( GTK_TABLE( table ), spin, 1, 2, 0, 1,
+                                         (GtkAttachOptions) ( GTK_EXPAND | GTK_FILL ),
+                                         (GtkAttachOptions) ( 0 ), 0, 0 );
+       gtk_widget_set_usize( spin, 60, -2 );
+
+       label = gtk_label_new( _( "Step" ) );
+       gtk_widget_show( label );
+       gtk_misc_set_alignment( GTK_MISC( label ), 0, 0 );
+       gtk_table_attach( GTK_TABLE( table ), label, 2, 3, 0, 1,
+                                         (GtkAttachOptions) ( GTK_FILL ),
+                                         (GtkAttachOptions) ( 0 ), 0, 0 );
+
+       entry = gtk_entry_new();
+       g_object_set_data( G_OBJECT( dlg ), "hshift_inc", entry );
+       gtk_signal_connect( GTK_OBJECT( entry ), "changed",
+                                               GTK_SIGNAL_FUNC( OnIncrementChanged ), NULL );
+       gtk_widget_show( entry );
+       gtk_table_attach( GTK_TABLE( table ), entry, 3, 4, 0, 1,
+                                         (GtkAttachOptions) ( GTK_EXPAND | GTK_FILL ),
+                                         (GtkAttachOptions) ( 0 ), 0, 0 );
+       gtk_widget_set_usize( entry, 50, -2 );
+
+       label = gtk_label_new( _( "Vertical shift" ) );
+       gtk_widget_show( label );
+       gtk_misc_set_alignment( GTK_MISC( label ), 0, 0 );
+       gtk_table_attach( GTK_TABLE( table ), label, 0, 1, 1, 2,
+                                         (GtkAttachOptions) ( GTK_FILL ),
+                                         (GtkAttachOptions) ( 0 ), 0, 0 );
+
+       spin = gtk_spin_button_new( GTK_ADJUSTMENT( gtk_adjustment_new( 0, -8192, 8192, 2, 8, 8 ) ), 0, 0 );
+       g_object_set_data( G_OBJECT( dlg ), "vshift", spin );
+       gtk_signal_connect( GTK_OBJECT( gtk_spin_button_get_adjustment( GTK_SPIN_BUTTON( spin ) ) ), "value_changed",
+                                               GTK_SIGNAL_FUNC( OnUpdate ), NULL );
+       gtk_widget_show( spin );
+       gtk_table_attach( GTK_TABLE( table ), spin, 1, 2, 1, 2,
+                                         (GtkAttachOptions) ( GTK_FILL ),
+                                         (GtkAttachOptions) ( 0 ), 0, 0 );
+       gtk_widget_set_usize( spin, 60, -2 );
+
+       label = gtk_label_new( _( "Step" ) );
+       gtk_widget_show( label );
+       gtk_misc_set_alignment( GTK_MISC( label ), 0, 0 );
+       gtk_table_attach( GTK_TABLE( table ), label, 2, 3, 1, 2,
+                                         (GtkAttachOptions) ( GTK_FILL ),
+                                         (GtkAttachOptions) ( 0 ), 0, 0 );
+
+       entry = gtk_entry_new();
+       g_object_set_data( G_OBJECT( dlg ), "vshift_inc", entry );
+       gtk_signal_connect( GTK_OBJECT( entry ), "changed",
+                                               GTK_SIGNAL_FUNC( OnIncrementChanged ), NULL );
+       gtk_widget_show( entry );
+       gtk_table_attach( GTK_TABLE( table ), entry, 3, 4, 1, 2,
+                                         (GtkAttachOptions) ( GTK_FILL ),
+                                         (GtkAttachOptions) ( 0 ), 0, 0 );
+       gtk_widget_set_usize( entry, 50, -2 );
+
+       label = gtk_label_new( _( "Horizontal stretch" ) );
+       gtk_widget_show( label );
+       gtk_misc_set_alignment( GTK_MISC( label ), 0, 0 );
+       gtk_table_attach( GTK_TABLE( table ), label, 0, 1, 2, 3,
+                                         (GtkAttachOptions) ( GTK_FILL ),
+                                         (GtkAttachOptions) ( 0 ), 0, 0 );
+
+       spin = gtk_spin_button_new( GTK_ADJUSTMENT( gtk_adjustment_new( 0, -1000, 1000, 1, 10, 10 ) ), 0, 0 );
+       g_object_set_data( G_OBJECT( dlg ), "hscale", spin );
+       gtk_signal_connect( GTK_OBJECT( gtk_spin_button_get_adjustment( GTK_SPIN_BUTTON( spin ) ) ), "value_changed",
+                                               GTK_SIGNAL_FUNC( OnUpdate ), NULL );
+       gtk_widget_show( spin );
+       gtk_table_attach( GTK_TABLE( table ), spin, 1, 2, 2, 3,
+                                         (GtkAttachOptions) ( GTK_FILL ),
+                                         (GtkAttachOptions) ( 0 ), 0, 0 );
+       gtk_widget_set_usize( spin, 60, -2 );
+
+       label = gtk_label_new( _( "Step" ) );
+       gtk_widget_show( label );
+       gtk_misc_set_alignment( GTK_MISC( label ), 0, 0 );
+       gtk_table_attach( GTK_TABLE( table ), label, 2, 3, 2, 3,
+                                         (GtkAttachOptions) ( GTK_FILL ),
+                                         (GtkAttachOptions) ( 0 ), 2, 3 );
+
+       entry = gtk_entry_new();
+       g_object_set_data( G_OBJECT( dlg ), "hscale_inc", entry );
+       gtk_signal_connect( GTK_OBJECT( entry ), "changed",
+                                               GTK_SIGNAL_FUNC( OnIncrementChanged ), NULL );
+       gtk_widget_show( entry );
+       gtk_table_attach( GTK_TABLE( table ), entry, 3, 4, 2, 3,
+                                         (GtkAttachOptions) ( GTK_FILL ),
+                                         (GtkAttachOptions) ( 0 ), 2, 3 );
+       gtk_widget_set_usize( entry, 50, -2 );
+
+       label = gtk_label_new( _( "Vertical stretch" ) );
+       gtk_widget_show( label );
+       gtk_misc_set_alignment( GTK_MISC( label ), 0, 0 );
+       gtk_table_attach( GTK_TABLE( table ), label, 0, 1, 3, 4,
+                                         (GtkAttachOptions) ( GTK_FILL ),
+                                         (GtkAttachOptions) ( 0 ), 0, 0 );
+
+       spin = gtk_spin_button_new( GTK_ADJUSTMENT( gtk_adjustment_new( 0, -1000, 1000, 1, 10, 10 ) ), 0, 0 );
+       g_object_set_data( G_OBJECT( dlg ), "vscale", spin );
+       gtk_signal_connect( GTK_OBJECT( gtk_spin_button_get_adjustment( GTK_SPIN_BUTTON( spin ) ) ), "value_changed",
+                                               GTK_SIGNAL_FUNC( OnUpdate ), NULL );
+       gtk_widget_show( spin );
+       gtk_table_attach( GTK_TABLE( table ), spin, 1, 2, 3, 4,
+                                         (GtkAttachOptions) ( GTK_FILL ),
+                                         (GtkAttachOptions) ( 0 ), 0, 0 );
+       gtk_widget_set_usize( spin, 60, -2 );
+
+       label = gtk_label_new( _( "Step" ) );
+       gtk_widget_show( label );
+       gtk_misc_set_alignment( GTK_MISC( label ), 0, 0 );
+       gtk_table_attach( GTK_TABLE( table ), label, 2, 3, 3, 4,
+                                         (GtkAttachOptions) ( GTK_FILL ),
+                                         (GtkAttachOptions) ( 0 ), 0, 0 );
+
+       entry = gtk_entry_new();
+       g_object_set_data( G_OBJECT( dlg ), "vscale_inc", entry );
+       gtk_signal_connect( GTK_OBJECT( entry ), "changed",
+                                               GTK_SIGNAL_FUNC( OnIncrementChanged ), NULL );
+       gtk_widget_show( entry );
+       gtk_table_attach( GTK_TABLE( table ), entry, 3, 4, 3, 4,
+                                         (GtkAttachOptions) ( GTK_FILL ),
+                                         (GtkAttachOptions) ( 0 ), 0, 0 );
+       gtk_widget_set_usize( entry, 50, -2 );
+
+       label = gtk_label_new( _( "Rotate" ) );
+       gtk_widget_show( label );
+       gtk_misc_set_alignment( GTK_MISC( label ), 0, 0 );
+       gtk_table_attach( GTK_TABLE( table ), label, 0, 1, 4, 5,
+                                         (GtkAttachOptions) ( GTK_FILL ),
+                                         (GtkAttachOptions) ( 0 ), 0, 0 );
+
+       spin = gtk_spin_button_new( GTK_ADJUSTMENT( gtk_adjustment_new( 0, -360, 360, 1, 10, 10 ) ), 1, 0 );
+       g_object_set_data( G_OBJECT( dlg ), "rotate", spin );
+       gtk_signal_connect( GTK_OBJECT( gtk_spin_button_get_adjustment( GTK_SPIN_BUTTON( spin ) ) ), "value_changed",
+                                               GTK_SIGNAL_FUNC( OnUpdate ), NULL );
+       gtk_widget_show( spin );
+       gtk_table_attach( GTK_TABLE( table ), spin, 1, 2, 4, 5,
+                                         (GtkAttachOptions) ( GTK_FILL ),
+                                         (GtkAttachOptions) ( 0 ), 0, 0 );
+       gtk_widget_set_usize( spin, 60, -2 );
+       gtk_spin_button_set_wrap( GTK_SPIN_BUTTON( spin ), TRUE );
+
+       label = gtk_label_new( _( "Step" ) );
+       gtk_widget_show( label );
+       gtk_misc_set_alignment( GTK_MISC( label ), 0, 0 );
+       gtk_table_attach( GTK_TABLE( table ), label, 2, 3, 4, 5,
+                                         (GtkAttachOptions) ( GTK_FILL ),
+                                         (GtkAttachOptions) ( 0 ), 0, 0 );
+
+       entry = gtk_entry_new();
+       g_object_set_data( G_OBJECT( dlg ), "rotate_inc", entry );
+       gtk_signal_connect( GTK_OBJECT( entry ), "changed",
+                                               GTK_SIGNAL_FUNC( OnIncrementChanged ), NULL );
+       gtk_widget_show( entry );
+       gtk_table_attach( GTK_TABLE( table ), entry, 3, 4, 4, 5,
+                                         (GtkAttachOptions) ( GTK_FILL ),
+                                         (GtkAttachOptions) ( 0 ), 0, 0 );
+       gtk_widget_set_usize( entry, 50, -2 );
+
+       // match grid button
+       button = gtk_button_new_with_label( _( "Match Grid" ) );
+       gtk_widget_show( button );
+       gtk_table_attach( GTK_TABLE( table ), button, 2, 4, 5, 6,
+                                         (GtkAttachOptions) ( GTK_EXPAND | GTK_FILL ),
+                                         (GtkAttachOptions) ( 0 ), 0, 0 );
+       gtk_signal_connect( GTK_OBJECT( button ), "clicked",
+                                               GTK_SIGNAL_FUNC( OnBtnMatchGrid ), NULL );
+
+       frame = gtk_frame_new( _( "Texturing" ) );
+       gtk_widget_show( frame );
+       gtk_box_pack_start( GTK_BOX( vbox ), frame, FALSE, TRUE, 0 );
+
+       table = gtk_table_new( 4, 4, FALSE );
+       gtk_widget_show( table );
+       gtk_container_add( GTK_CONTAINER( frame ), table );
+       gtk_table_set_row_spacings( GTK_TABLE( table ), 5 );
+       gtk_table_set_col_spacings( GTK_TABLE( table ), 5 );
+       gtk_container_set_border_width( GTK_CONTAINER( table ), 5 );
+
+       label = gtk_label_new( "Brush" );
+       gtk_widget_show( label );
+       gtk_table_attach( GTK_TABLE( table ), label, 0, 1, 0, 1,
+                                         (GtkAttachOptions) ( GTK_FILL ),
+                                         (GtkAttachOptions) ( 0 ), 0, 0 );
+
+       label = gtk_label_new( "Patch" );
+       gtk_widget_show( label );
+       gtk_table_attach( GTK_TABLE( table ), label, 0, 1, 2, 3,
+                                         (GtkAttachOptions) ( GTK_FILL ),
+                                         (GtkAttachOptions) ( 0 ), 0, 0 );
+
+       label = gtk_label_new( "Width" );
+       gtk_widget_show( label );
+       gtk_table_attach( GTK_TABLE( table ), label, 2, 3, 0, 1,
+                                         (GtkAttachOptions) ( GTK_FILL ),
+                                         (GtkAttachOptions) ( 0 ), 0, 0 );
+
+       label = gtk_label_new( _( "Height" ) );
+       gtk_widget_show( label );
+       gtk_table_attach( GTK_TABLE( table ), label, 3, 4, 0, 1,
+                                         (GtkAttachOptions) ( GTK_FILL ),
+                                         (GtkAttachOptions) ( 0 ), 0, 0 );
+
+       button = gtk_button_new_with_label( _( "Axial" ) );
+       gtk_widget_show( button );
+       gtk_table_attach( GTK_TABLE( table ), button, 0, 1, 1, 2,
+                                         (GtkAttachOptions) ( GTK_EXPAND | GTK_FILL ),
+                                         (GtkAttachOptions) ( 0 ), 0, 0 );
+       gtk_signal_connect( GTK_OBJECT( button ), "clicked",
+                                               GTK_SIGNAL_FUNC( OnBtnAxial ), NULL );
+       gtk_widget_set_usize( button, 60, -2 );
+
+       button = gtk_button_new_with_label( _( "Fit" ) );
+       gtk_widget_show( button );
+       gtk_table_attach( GTK_TABLE( table ), button, 1, 2, 1, 2,
+                                         (GtkAttachOptions) ( GTK_EXPAND | GTK_FILL ),
+                                         (GtkAttachOptions) ( 0 ), 0, 0 );
+       gtk_signal_connect( GTK_OBJECT( button ), "clicked",
+                                               GTK_SIGNAL_FUNC( OnBtnFaceFit ), NULL );
+       gtk_widget_set_usize( button, 60, -2 );
+
+       button = gtk_button_new_with_label( _( "CAP" ) );
+       gtk_widget_show( button );
+       gtk_table_attach( GTK_TABLE( table ), button, 0, 1, 3, 4,
+                                         (GtkAttachOptions) ( GTK_EXPAND | GTK_FILL ),
+                                         (GtkAttachOptions) ( 0 ), 0, 0 );
+       gtk_signal_connect( GTK_OBJECT( button ), "clicked",
+                                               GTK_SIGNAL_FUNC( OnBtnPatchdetails ), NULL );
+       gtk_widget_set_usize( button, 60, -2 );
+
+       button = gtk_button_new_with_label( _( "Set..." ) );
+       gtk_widget_show( button );
+       gtk_table_attach( GTK_TABLE( table ), button, 1, 2, 3, 4,
+                                         (GtkAttachOptions) ( GTK_EXPAND | GTK_FILL ),
+                                         (GtkAttachOptions) ( 0 ), 0, 0 );
+       gtk_signal_connect( GTK_OBJECT( button ), "clicked",
+                                               GTK_SIGNAL_FUNC( OnBtnPatchreset ), NULL );
+       gtk_widget_set_usize( button, 60, -2 );
+
+       button = gtk_button_new_with_label( _( "Natural" ) );
+       gtk_widget_show( button );
+       gtk_table_attach( GTK_TABLE( table ), button, 2, 3, 3, 4,
+                                         (GtkAttachOptions) ( GTK_EXPAND | GTK_FILL ),
+                                         (GtkAttachOptions) ( 0 ), 0, 0 );
+       gtk_signal_connect( GTK_OBJECT( button ), "clicked",
+                                               GTK_SIGNAL_FUNC( OnBtnPatchnatural ), NULL );
+       gtk_widget_set_usize( button, 60, -2 );
+
+       button = gtk_button_new_with_label( _( "Fit" ) );
+       gtk_widget_show( button );
+       gtk_table_attach( GTK_TABLE( table ), button, 3, 4, 3, 4,
+                                         (GtkAttachOptions) ( GTK_EXPAND | GTK_FILL ),
+                                         (GtkAttachOptions) ( 0 ), 0, 0 );
+       gtk_signal_connect( GTK_OBJECT( button ), "clicked",
+                                               GTK_SIGNAL_FUNC( OnBtnPatchFit ), NULL );
+       gtk_widget_set_usize( button, 60, -2 );
+
+       spin = gtk_spin_button_new( GTK_ADJUSTMENT( gtk_adjustment_new( 1, 1, 32, 1, 10, 10 ) ), 1, 0 );
+       gtk_widget_show( spin );
+       gtk_table_attach( GTK_TABLE( table ), spin, 2, 3, 1, 2,
+                                         (GtkAttachOptions) ( GTK_EXPAND | GTK_FILL ),
+                                         (GtkAttachOptions) ( 0 ), 0, 0 );
+       gtk_widget_set_usize( spin, 60, -2 );
+       AddDialogData( spin, &m_nWidth, DLG_SPIN_INT );
+
+       spin = gtk_spin_button_new( GTK_ADJUSTMENT( gtk_adjustment_new( 1, 1, 32, 1, 10, 10 ) ), 1, 0 );
+       gtk_widget_show( spin );
+       gtk_table_attach( GTK_TABLE( table ), spin, 3, 4, 1, 2,
+                                         (GtkAttachOptions) ( GTK_EXPAND | GTK_FILL ),
+                                         (GtkAttachOptions) ( 0 ), 0, 0 );
+       gtk_widget_set_usize( spin, 60, -2 );
+       AddDialogData( spin, &m_nHeight, DLG_SPIN_INT );
+
+       hbox2 = gtk_hbox_new( FALSE, 5 );
+       gtk_widget_show( hbox2 );
+       gtk_box_pack_start( GTK_BOX( vbox ), hbox2, FALSE, TRUE, 0 );
+
+       button = gtk_button_new_with_label( _( "Done" ) );
+       gtk_widget_show( button );
+       gtk_box_pack_start( GTK_BOX( hbox2 ), button, FALSE, FALSE, 0 );
+       gtk_signal_connect( GTK_OBJECT( button ), "clicked",
+                                               GTK_SIGNAL_FUNC( OnDone ), NULL );
+       gtk_widget_set_usize( button, 60, -2 );
+
+       button = gtk_button_new_with_label( _( "Apply" ) );
+       gtk_widget_show( button );
+       gtk_box_pack_start( GTK_BOX( hbox2 ), button, FALSE, FALSE, 0 );
+       gtk_signal_connect( GTK_OBJECT( button ), "clicked",
+                                               GTK_SIGNAL_FUNC( OnApply ), NULL );
+       gtk_widget_set_usize( button, 60, -2 );
+
+       button = gtk_button_new_with_label( _( "Cancel" ) );
+       gtk_widget_show( button );
+       gtk_box_pack_start( GTK_BOX( hbox2 ), button, FALSE, FALSE, 0 );
+       gtk_signal_connect( GTK_OBJECT( button ), "clicked",
+                                               GTK_SIGNAL_FUNC( OnCancel ), NULL );
+       gtk_widget_set_usize( button, 60, -2 );
+
+       // that's a bit of trashy stuff from Textool-v2 branch
 #ifdef _DEBUG
-  // FIXME: testing only, scaling in BP mode
-  button = gtk_button_new_with_label (_("Test"));
-  gtk_widget_show (button);
-  gtk_box_pack_start (GTK_BOX (hbox2), button, FALSE, FALSE, 0);
-  gtk_signal_connect (GTK_OBJECT (button), "clicked",
-                      GTK_SIGNAL_FUNC (OnTest), NULL);
-  gtk_widget_set_usize (button, 60, -2);
+       // FIXME: testing only, scaling in BP mode
+       button = gtk_button_new_with_label( _( "Test" ) );
+       gtk_widget_show( button );
+       gtk_box_pack_start( GTK_BOX( hbox2 ), button, FALSE, FALSE, 0 );
+       gtk_signal_connect( GTK_OBJECT( button ), "clicked",
+                                               GTK_SIGNAL_FUNC( OnTest ), NULL );
+       gtk_widget_set_usize( button, 60, -2 );
 #endif
 
-  // Initialize
-  SetTexMods ();
+       // Initialize
+       SetTexMods();
 }
 
 /*
-==============
-SetTexMods
-
-Set the fields to the current texdef (i.e. map/texdef -> dialog widgets)
-if faces selected (instead of brushes) -> will read this face texdef, else current texdef
-if only patches selected, will read the patch texdef
-===============
-*/
-
-void SurfaceDlg::SetTexMods()
-{
-  texdef_t *pt;
-  brushprimit_texdef_t *bpt;
-  // local copy if a width=2 height=2 qtetxture_t is needed
-  brushprimit_texdef_t local_bp;
+   ==============
+   SetTexMods
+
+   Set the fields to the current texdef (i.e. map/texdef -> dialog widgets)
+   if faces selected (instead of brushes) -> will read this face texdef, else current texdef
+   if only patches selected, will read the patch texdef
+   ===============
+ */
+
+void SurfaceDlg::SetTexMods(){
+       texdef_t *pt;
+       brushprimit_texdef_t  *bpt;
+       // local copy if a width=2 height=2 qtetxture_t is needed
+       brushprimit_texdef_t local_bp;
 
 #ifdef DBG_SI
-  Sys_Printf("SurfaceDlg::SetTexMods\n");
+       Sys_Printf( "SurfaceDlg::SetTexMods\n" );
 #endif
 
-  if (!g_surfwin)
-    return;
-
-  if (g_ptrSelectedFaces.GetSize() > 0)
-  {
-    face_t *selFace = reinterpret_cast<face_t*>(g_ptrSelectedFaces.GetAt(0));
-    pt = &selFace->texdef;
-    if (g_qeglobals.m_bBrushPrimitMode)
-    {
-      // compute a texture matrix related to the default matrix width=2 height=2
-      ConvertTexMatWithQTexture( &selFace->brushprimit_texdef, selFace->d_texture, &local_bp, NULL );
-      bpt = &local_bp;
-    }
-  }
-  else
-  {
-    pt = &g_qeglobals.d_texturewin.texdef;
-    if (g_qeglobals.m_bBrushPrimitMode)
-    {
-      bpt = &g_qeglobals.d_texturewin.brushprimit_texdef;
-    }
-  }
-  // brush primitive mode : compute fake shift scale rot representation
-  if (g_qeglobals.m_bBrushPrimitMode)
-    TexMatToFakeTexCoords( bpt->coords, m_shift, &m_rotate, m_scale );
-
-  g_bListenChanged = false;
-
-  if(strncmp(pt->GetName(), "textures/", 9) != 0)
-    pt->SetName(SHADER_NOT_FOUND);
-  gtk_entry_set_text (GTK_ENTRY (GetDlgWidget ("texture")), pt->GetName()+9);
-
-  GtkSpinButton *spin;
-  spin = GTK_SPIN_BUTTON (GetDlgWidget ("hshift"));
-    gtk_spin_button_set_digits (spin, 2);
-    if (g_qeglobals.m_bBrushPrimitMode)
-      gtk_spin_button_set_value (spin, m_shift[0]);
-    else
-      gtk_spin_button_set_value (spin, pt->shift[0]);
-  GtkAdjustment *adjust = gtk_spin_button_get_adjustment (GTK_SPIN_BUTTON (spin));
-  adjust->step_increment = l_pIncrement->shift[0];
-  char buf[10]; // got into snprintf paranoia after BoundChecker detected a stack overrun
+       if ( !g_surfwin ) {
+               return;
+       }
+
+       if ( g_ptrSelectedFaces.GetSize() > 0 ) {
+               face_t *selFace = reinterpret_cast<face_t*>( g_ptrSelectedFaces.GetAt( 0 ) );
+               pt = &selFace->texdef;
+               if ( g_qeglobals.m_bBrushPrimitMode ) {
+                       // compute a texture matrix related to the default matrix width=2 height=2
+                       ConvertTexMatWithQTexture( &selFace->brushprimit_texdef, selFace->d_texture, &local_bp, NULL );
+                       bpt = &local_bp;
+               }
+       }
+       else
+       {
+               pt = &g_qeglobals.d_texturewin.texdef;
+               if ( g_qeglobals.m_bBrushPrimitMode ) {
+                       bpt = &g_qeglobals.d_texturewin.brushprimit_texdef;
+               }
+       }
+       // brush primitive mode : compute fake shift scale rot representation
+       if ( g_qeglobals.m_bBrushPrimitMode ) {
+               TexMatToFakeTexCoords( bpt->coords, m_shift, &m_rotate, m_scale );
+       }
+
+       g_bListenChanged = false;
+
+       if ( strncmp( pt->GetName(), "textures/", 9 ) != 0 ) {
+               pt->SetName( SHADER_NOT_FOUND );
+       }
+       gtk_entry_set_text( GTK_ENTRY( GetDlgWidget( "texture" ) ), pt->GetName() + 9 );
+
+       GtkSpinButton *spin;
+       spin = GTK_SPIN_BUTTON( GetDlgWidget( "hshift" ) );
+       gtk_spin_button_set_digits( spin, 2 );
+       if ( g_qeglobals.m_bBrushPrimitMode ) {
+               gtk_spin_button_set_value( spin, m_shift[0] );
+       }
+       else{
+               gtk_spin_button_set_value( spin, pt->shift[0] );
+       }
+       GtkAdjustment *adjust = gtk_spin_button_get_adjustment( GTK_SPIN_BUTTON( spin ) );
+       adjust->step_increment = l_pIncrement->shift[0];
+       char buf[10]; // got into snprintf paranoia after BoundChecker detected a stack overrun
 #ifdef _WIN32
-  // TTimo: THIS IS UGLY
+       // TTimo: THIS IS UGLY
 #define snprintf _snprintf
 #endif
-  snprintf (buf, 10, "%g", l_pIncrement->shift[0]);
-  gtk_entry_set_text (GTK_ENTRY (GetDlgWidget ("hshift_inc")), buf);
-
-  spin = GTK_SPIN_BUTTON (GetDlgWidget ("vshift"));
-    gtk_spin_button_set_digits (spin, 2);
-    if (g_qeglobals.m_bBrushPrimitMode)
-      gtk_spin_button_set_value (spin, m_shift[1]);
-    else
-      gtk_spin_button_set_value (spin, pt->shift[1]);
-  adjust = gtk_spin_button_get_adjustment (GTK_SPIN_BUTTON (spin));
-  adjust->step_increment = l_pIncrement->shift[1];
-  snprintf (buf, 10, "%g", l_pIncrement->shift[1]);
-  gtk_entry_set_text (GTK_ENTRY (GetDlgWidget ("vshift_inc")), buf);
-
-  spin = GTK_SPIN_BUTTON (GetDlgWidget ("hscale"));
-  gtk_spin_button_set_digits (spin, 5);
-  gtk_spin_button_set_value (spin, g_qeglobals.m_bBrushPrimitMode ? m_scale[0] : pt->scale[0]);
-
-  adjust = gtk_spin_button_get_adjustment (GTK_SPIN_BUTTON (spin));
-  adjust->step_increment = l_pIncrement->scale[0];
-  snprintf (buf, 10, "%g", l_pIncrement->scale[0]);
-  gtk_entry_set_text (GTK_ENTRY (GetDlgWidget ("hscale_inc")), buf);
-
-  spin = GTK_SPIN_BUTTON (GetDlgWidget ("vscale"));
-  gtk_spin_button_set_digits (spin, 5);
-  gtk_spin_button_set_value (spin, g_qeglobals.m_bBrushPrimitMode ? m_scale[1] : pt->scale[1]);
-
-  adjust = gtk_spin_button_get_adjustment (GTK_SPIN_BUTTON (spin));
-  adjust->step_increment = l_pIncrement->scale[1];
-  snprintf (buf, 10, "%g", l_pIncrement->scale[1]);
-  gtk_entry_set_text (GTK_ENTRY (GetDlgWidget ("vscale_inc")), buf);
-
-  //++timo compute BProtate as int ..
-  spin = GTK_SPIN_BUTTON (GetDlgWidget ("rotate"));
-  gtk_spin_button_set_digits (spin, 2);
-  gtk_spin_button_set_value (spin, g_qeglobals.m_bBrushPrimitMode ? m_rotate : pt->rotate);
-
-  adjust = gtk_spin_button_get_adjustment (GTK_SPIN_BUTTON (spin));
-  adjust->step_increment = l_pIncrement->rotate;
-  snprintf (buf, 10, "%g", l_pIncrement->rotate);
-  gtk_entry_set_text (GTK_ENTRY (GetDlgWidget ("rotate_inc")), buf);
-
-  g_bListenChanged = true;
-
-  // undo tricks: set the undo id to zero so we don't attempt to undo something that does not belong to us
-  m_nUndoId = 0;
-  // store the current texdef as our escape route if user hits OnCancel
-  g_old_texdef = g_qeglobals.d_texturewin.texdef;
-  // reset the Enter key behaviour flag
-  m_bEditingTextureWidget = false;
+       snprintf( buf, 10, "%g", l_pIncrement->shift[0] );
+       gtk_entry_set_text( GTK_ENTRY( GetDlgWidget( "hshift_inc" ) ), buf );
+
+       spin = GTK_SPIN_BUTTON( GetDlgWidget( "vshift" ) );
+       gtk_spin_button_set_digits( spin, 2 );
+       if ( g_qeglobals.m_bBrushPrimitMode ) {
+               gtk_spin_button_set_value( spin, m_shift[1] );
+       }
+       else{
+               gtk_spin_button_set_value( spin, pt->shift[1] );
+       }
+       adjust = gtk_spin_button_get_adjustment( GTK_SPIN_BUTTON( spin ) );
+       adjust->step_increment = l_pIncrement->shift[1];
+       snprintf( buf, 10, "%g", l_pIncrement->shift[1] );
+       gtk_entry_set_text( GTK_ENTRY( GetDlgWidget( "vshift_inc" ) ), buf );
+
+       spin = GTK_SPIN_BUTTON( GetDlgWidget( "hscale" ) );
+       gtk_spin_button_set_digits( spin, 5 );
+       gtk_spin_button_set_value( spin, g_qeglobals.m_bBrushPrimitMode ? m_scale[0] : pt->scale[0] );
+
+       adjust = gtk_spin_button_get_adjustment( GTK_SPIN_BUTTON( spin ) );
+       adjust->step_increment = l_pIncrement->scale[0];
+       snprintf( buf, 10, "%g", l_pIncrement->scale[0] );
+       gtk_entry_set_text( GTK_ENTRY( GetDlgWidget( "hscale_inc" ) ), buf );
+
+       spin = GTK_SPIN_BUTTON( GetDlgWidget( "vscale" ) );
+       gtk_spin_button_set_digits( spin, 5 );
+       gtk_spin_button_set_value( spin, g_qeglobals.m_bBrushPrimitMode ? m_scale[1] : pt->scale[1] );
+
+       adjust = gtk_spin_button_get_adjustment( GTK_SPIN_BUTTON( spin ) );
+       adjust->step_increment = l_pIncrement->scale[1];
+       snprintf( buf, 10, "%g", l_pIncrement->scale[1] );
+       gtk_entry_set_text( GTK_ENTRY( GetDlgWidget( "vscale_inc" ) ), buf );
+
+       //++timo compute BProtate as int ..
+       spin = GTK_SPIN_BUTTON( GetDlgWidget( "rotate" ) );
+       gtk_spin_button_set_digits( spin, 2 );
+       gtk_spin_button_set_value( spin, g_qeglobals.m_bBrushPrimitMode ? m_rotate : pt->rotate );
+
+       adjust = gtk_spin_button_get_adjustment( GTK_SPIN_BUTTON( spin ) );
+       adjust->step_increment = l_pIncrement->rotate;
+       snprintf( buf, 10, "%g", l_pIncrement->rotate );
+       gtk_entry_set_text( GTK_ENTRY( GetDlgWidget( "rotate_inc" ) ), buf );
+
+       g_bListenChanged = true;
+
+       // undo tricks: set the undo id to zero so we don't attempt to undo something that does not belong to us
+       m_nUndoId = 0;
+       // store the current texdef as our escape route if user hits OnCancel
+       g_old_texdef = g_qeglobals.d_texturewin.texdef;
+       // reset the Enter key behaviour flag
+       m_bEditingTextureWidget = false;
 }
 
 /*
-==============
-GetTexMods
-
-Reads the fields to get the current texdef (i.e. widgets -> MAP)
-in brush primitive mode, grab the fake shift scale rot and compute a new texture matrix
-===============
-*/
-void SurfaceDlg::GetTexMods()
-{
-  char buffer[1024];
-  texdef_t *pt;
+   ==============
+   GetTexMods
+
+   Reads the fields to get the current texdef (i.e. widgets -> MAP)
+   in brush primitive mode, grab the fake shift scale rot and compute a new texture matrix
+   ===============
+ */
+void SurfaceDlg::GetTexMods(){
+       char buffer[1024];
+       texdef_t *pt;
 
 #ifdef DBG_SI
-  Sys_Printf("SurfaceDlg::GetTexMods\n");
+       Sys_Printf( "SurfaceDlg::GetTexMods\n" );
 #endif
 
-  if (g_ptrSelectedFaces.GetSize() > 0)
-  {
-    //++timo just a test, we disable the undo when working on selected faces
-    m_nUndoId=0;
-    face_t *selFace = reinterpret_cast<face_t*>(g_ptrSelectedFaces.GetAt(0));
-    g_qeglobals.d_texturewin.texdef = selFace->texdef;
+       if ( g_ptrSelectedFaces.GetSize() > 0 ) {
+               //++timo just a test, we disable the undo when working on selected faces
+               m_nUndoId = 0;
+               face_t *selFace = reinterpret_cast<face_t*>( g_ptrSelectedFaces.GetAt( 0 ) );
+               g_qeglobals.d_texturewin.texdef = selFace->texdef;
 #ifdef DBG_SI
-    Sys_Printf("g_qeglobals.d_texturewin.texdef = selFace->texdef\n");
+               Sys_Printf( "g_qeglobals.d_texturewin.texdef = selFace->texdef\n" );
 #endif
-  }
+       }
 //  else
 //  {
-    pt = &g_qeglobals.d_texturewin.texdef;
+       pt = &g_qeglobals.d_texturewin.texdef;
 #ifdef DBG_SI
-    Sys_Printf("pt = &g_qeglobals.d_texturewin.texdef\n");
+       Sys_Printf( "pt = &g_qeglobals.d_texturewin.texdef\n" );
 #endif
 //  }
 
-  const char* text = gtk_entry_get_text (GTK_ENTRY (GetDlgWidget ("texture")));
+       const char* text = gtk_entry_get_text( GTK_ENTRY( GetDlgWidget( "texture" ) ) );
 
 #ifdef DBG_SI
-  Sys_Printf("pt->SetName(%s)\n", text );
+       Sys_Printf( "pt->SetName(%s)\n", text );
 #endif
 
-  // TTimo: detect and refuse invalid texture names (at least the ones with spaces)
-  if (text[0] <= ' ' || strchr(text, ' '))
-  {
-    Sys_FPrintf(SYS_WRN, "WARNING: spaces in shader names are not allowed, ignoring '%s'\n", text);
-    pt->SetName(SHADER_NOT_FOUND);
-    gtk_entry_set_text (GTK_ENTRY (GetDlgWidget ("texture")), pt->GetName());
-  }
-  else
-  {
-    strcpy(buffer, "textures/");
-    strcpy(buffer+9, text);
-    pt->SetName(buffer);
-  }
-
-
-  (g_qeglobals.m_bBrushPrimitMode ? m_shift[0] : pt->shift[0]) =
-    gtk_spin_button_get_value_as_float (GTK_SPIN_BUTTON (GetDlgWidget ("hshift")));
-  (g_qeglobals.m_bBrushPrimitMode ? m_shift[1] : pt->shift[1]) =
-    gtk_spin_button_get_value_as_float (GTK_SPIN_BUTTON (GetDlgWidget ("vshift")));
-  (g_qeglobals.m_bBrushPrimitMode ? m_scale[0] : pt->scale[0]) =
-    gtk_spin_button_get_value_as_float (GTK_SPIN_BUTTON (GetDlgWidget ("hscale")));
-  (g_qeglobals.m_bBrushPrimitMode ? m_scale[1] : pt->scale[1]) =
-    gtk_spin_button_get_value_as_float (GTK_SPIN_BUTTON (GetDlgWidget ("vscale")));
-  (g_qeglobals.m_bBrushPrimitMode ? m_rotate : pt->rotate) =
-    gtk_spin_button_get_value_as_float (GTK_SPIN_BUTTON (GetDlgWidget ("rotate")));
-
-  // a local copy of the texture matrix, given for a qtexture_t with width=2 height=2
-  brushprimit_texdef_t local_bp;
-  brushprimit_texdef_t *bpt;
-  if (g_qeglobals.m_bBrushPrimitMode)
-  {
-    face_t *selFace = NULL;
-    if (g_ptrSelectedFaces.GetSize() > 0)
-    {
-      selFace = reinterpret_cast<face_t*>(g_ptrSelectedFaces.GetAt(0));
-      bpt = &selFace->brushprimit_texdef;
-    }
-    else
-    {
-      bpt = &g_qeglobals.d_texturewin.brushprimit_texdef;
-    }
-    // compute texture matrix
-    // the matrix returned must be understood as a qtexture_t with width=2 height=2
-    FakeTexCoordsToTexMat( m_shift, m_rotate, m_scale, local_bp.coords );
-    // copy the texture matrix in the global struct
-    // fit the qtexture if we have a face selected, otherwise g_qeglobals.d_texturewin.brushprimit_texdef uses the basic qtexture_t with width=2 height=2
-
-    ConvertTexMatWithQTexture( &local_bp, NULL, bpt, ( (selFace) ? selFace->d_texture : NULL ) );
-  }
-  // we are gonna do stuff, if we own the last do we undo it first
-  if (m_nUndoId != 0)
-  {
-    // check the do we're about to undo is the one we pushed earlier
-               if (m_nUndoId == Undo_GetUndoId())
-    {
+       // TTimo: detect and refuse invalid texture names (at least the ones with spaces)
+       if ( text[0] <= ' ' || strchr( text, ' ' ) ) {
+               Sys_FPrintf( SYS_WRN, "WARNING: spaces in shader names are not allowed, ignoring '%s'\n", text );
+               pt->SetName( SHADER_NOT_FOUND );
+               gtk_entry_set_text( GTK_ENTRY( GetDlgWidget( "texture" ) ), pt->GetName() );
+       }
+       else
+       {
+               strcpy( buffer, "textures/" );
+               strcpy( buffer + 9, text );
+               pt->SetName( buffer );
+       }
+
+
+       ( g_qeglobals.m_bBrushPrimitMode ? m_shift[0] : pt->shift[0] ) =
+               gtk_spin_button_get_value_as_float( GTK_SPIN_BUTTON( GetDlgWidget( "hshift" ) ) );
+       ( g_qeglobals.m_bBrushPrimitMode ? m_shift[1] : pt->shift[1] ) =
+               gtk_spin_button_get_value_as_float( GTK_SPIN_BUTTON( GetDlgWidget( "vshift" ) ) );
+       ( g_qeglobals.m_bBrushPrimitMode ? m_scale[0] : pt->scale[0] ) =
+               gtk_spin_button_get_value_as_float( GTK_SPIN_BUTTON( GetDlgWidget( "hscale" ) ) );
+       ( g_qeglobals.m_bBrushPrimitMode ? m_scale[1] : pt->scale[1] ) =
+               gtk_spin_button_get_value_as_float( GTK_SPIN_BUTTON( GetDlgWidget( "vscale" ) ) );
+       ( g_qeglobals.m_bBrushPrimitMode ? m_rotate : pt->rotate ) =
+               gtk_spin_button_get_value_as_float( GTK_SPIN_BUTTON( GetDlgWidget( "rotate" ) ) );
+
+       // a local copy of the texture matrix, given for a qtexture_t with width=2 height=2
+       brushprimit_texdef_t local_bp;
+       brushprimit_texdef_t  *bpt;
+       if ( g_qeglobals.m_bBrushPrimitMode ) {
+               face_t *selFace = NULL;
+               if ( g_ptrSelectedFaces.GetSize() > 0 ) {
+                       selFace = reinterpret_cast<face_t*>( g_ptrSelectedFaces.GetAt( 0 ) );
+                       bpt = &selFace->brushprimit_texdef;
+               }
+               else
+               {
+                       bpt = &g_qeglobals.d_texturewin.brushprimit_texdef;
+               }
+               // compute texture matrix
+               // the matrix returned must be understood as a qtexture_t with width=2 height=2
+               FakeTexCoordsToTexMat( m_shift, m_rotate, m_scale, local_bp.coords );
+               // copy the texture matrix in the global struct
+               // fit the qtexture if we have a face selected, otherwise g_qeglobals.d_texturewin.brushprimit_texdef uses the basic qtexture_t with width=2 height=2
+
+               ConvertTexMatWithQTexture( &local_bp, NULL, bpt, ( ( selFace ) ? selFace->d_texture : NULL ) );
+       }
+       // we are gonna do stuff, if we own the last do we undo it first
+       if ( m_nUndoId != 0 ) {
+               // check the do we're about to undo is the one we pushed earlier
+               if ( m_nUndoId == Undo_GetUndoId() ) {
 #ifdef DBG_SI
-      Sys_Printf("GetTexMods calling Undo_Undo (silent)\n");
+                       Sys_Printf( "GetTexMods calling Undo_Undo (silent)\n" );
 #endif
-      g_bListenUpdate=false;
-                       Undo_Undo(true);
-      g_bListenUpdate=true;
-    }
+                       g_bListenUpdate = false;
+                       Undo_Undo( true );
+                       g_bListenUpdate = true;
+               }
        }
-  Select_SetTexture(pt,&local_bp);
-  m_nUndoId = Undo_GetUndoId();
+       Select_SetTexture( pt,&local_bp );
+       m_nUndoId = Undo_GetUndoId();
 }
 
-void SurfaceDlg::FitAll()
-{
-  OnBtnFaceFit(NULL, NULL);
-  OnBtnPatchFit(NULL, NULL);
+void SurfaceDlg::FitAll(){
+       OnBtnFaceFit( NULL, NULL );
+       OnBtnPatchFit( NULL, NULL );
 }