From c031543420c50966045850c070750f2a7acec41e Mon Sep 17 00:00:00 2001
From: Nelsson Huotari <unelsson@gmail.com>
Date: Fri, 4 Oct 2019 12:07:47 +0300
Subject: [PATCH] use enum for brush shapes

---
 apps/opencs/view/render/terrainshapemode.cpp | 18 +++++++++---------
 apps/opencs/view/render/terrainshapemode.hpp |  8 ++++++++
 2 files changed, 17 insertions(+), 9 deletions(-)

diff --git a/apps/opencs/view/render/terrainshapemode.cpp b/apps/opencs/view/render/terrainshapemode.cpp
index 052a5b67e3..2590a10c54 100644
--- a/apps/opencs/view/render/terrainshapemode.cpp
+++ b/apps/opencs/view/render/terrainshapemode.cpp
@@ -393,7 +393,7 @@ void CSVRender::TerrainShapeMode::editTerrainShapeGrid(const std::pair<int, int>
 
     if(allowLandShapeEditing(cellId)==true)
     {
-        if (mBrushShape == 0)
+        if (mBrushShape == BrushShape_Point)
         {
             int x = CSMWorld::CellCoordinates::vertexGlobalToInCellCoords(vertexCoords.first);
             int y = CSMWorld::CellCoordinates::vertexGlobalToInCellCoords(vertexCoords.second);
@@ -403,7 +403,7 @@ void CSVRender::TerrainShapeMode::editTerrainShapeGrid(const std::pair<int, int>
             if (mShapeEditTool == 4) flattenHeight(cellCoords, x, y, mShapeEditToolStrength, mTargetHeight);
         }
 
-        if (mBrushShape == 1)
+        if (mBrushShape == BrushShape_Square)
         {
             for(int i = vertexCoords.first - r; i <= vertexCoords.first + r; ++i)
             {
@@ -421,7 +421,7 @@ void CSVRender::TerrainShapeMode::editTerrainShapeGrid(const std::pair<int, int>
             }
         }
 
-        if (mBrushShape == 2)
+        if (mBrushShape == BrushShape_Circle)
         {
             for(int i = vertexCoords.first - r; i <= vertexCoords.first + r; ++i)
             {
@@ -447,7 +447,7 @@ void CSVRender::TerrainShapeMode::editTerrainShapeGrid(const std::pair<int, int>
                 }
             }
         }
-        if (mBrushShape == 3)
+        if (mBrushShape == BrushShape_Custom)
         {
             if(!mCustomBrushShape.empty())
             {
@@ -1037,12 +1037,12 @@ void CSVRender::TerrainShapeMode::selectTerrainShapes(const std::pair<int, int>&
     int r = mBrushSize / 2;
     std::vector<std::pair<int, int>> selections;
 
-    if (mBrushShape == 0)
+    if (mBrushShape == BrushShape_Point)
     {
         selections.emplace_back(vertexCoords);
     }
 
-    if (mBrushShape == 1)
+    if (mBrushShape == BrushShape_Square)
     {
         for(int i = vertexCoords.first - r; i <= vertexCoords.first + r; ++i)
         {
@@ -1053,7 +1053,7 @@ void CSVRender::TerrainShapeMode::selectTerrainShapes(const std::pair<int, int>&
         }
     }
 
-    if (mBrushShape == 2)
+    if (mBrushShape == BrushShape_Circle)
     {
         for(int i = vertexCoords.first - r; i <= vertexCoords.first + r; ++i)
         {
@@ -1067,7 +1067,7 @@ void CSVRender::TerrainShapeMode::selectTerrainShapes(const std::pair<int, int>&
         }
     }
 
-    if (mBrushShape == 3)
+    if (mBrushShape == BrushShape_Custom)
     {
         if(!mCustomBrushShape.empty())
         {
@@ -1196,7 +1196,7 @@ void CSVRender::TerrainShapeMode::setBrushShape(int brushShape)
     mBrushShape = brushShape;
 
     //Set custom brush shape
-    if (mBrushShape == 3 && !mTerrainShapeSelection->getTerrainSelection().empty())
+    if (mBrushShape == BrushShape_Custom && !mTerrainShapeSelection->getTerrainSelection().empty())
     {
         auto terrainSelection = mTerrainShapeSelection->getTerrainSelection();
         int selectionCenterX = 0;
diff --git a/apps/opencs/view/render/terrainshapemode.hpp b/apps/opencs/view/render/terrainshapemode.hpp
index 63e14de31c..cec40b1367 100644
--- a/apps/opencs/view/render/terrainshapemode.hpp
+++ b/apps/opencs/view/render/terrainshapemode.hpp
@@ -46,6 +46,14 @@ namespace CSVRender
                 InteractionType_None
             };
 
+            enum BrushShape
+            {
+                BrushShape_Point = 1,
+                BrushShape_Square = 2,
+                BrushShape_Circle = 3,
+                BrushShape_Custom = 4
+            };
+
             /// Editmode for terrain shape grid
             TerrainShapeMode(WorldspaceWidget*, osg::Group* parentNode, QWidget* parent = nullptr);