]> de.git.xonotic.org Git - xonotic/netradiant.git/blobdiff - radiant/brush.h
Q3map2:
[xonotic/netradiant.git] / radiant / brush.h
index d26547e8a2116d7aa7f4bea10bf00520fb2da669..c467af92110ebd5dae6e81197de2cdd1b5aa40ce 100644 (file)
@@ -3428,6 +3428,39 @@ void testSelectComponents( Selector& selector, SelectionTest& test, SelectionSys
        }
 }
 
+void invertComponentSelection( SelectionSystem::EComponentMode mode ){
+       switch ( mode )
+       {
+       case SelectionSystem::eVertex:
+       {
+               for ( VertexInstances::iterator i = m_vertexInstances.begin(); i != m_vertexInstances.end(); ++i )
+               {
+                       ( *i ).setSelected( !( *i ).isSelected() );
+               }
+       }
+       break;
+       case SelectionSystem::eEdge:
+       {
+               for ( EdgeInstances::iterator i = m_edgeInstances.begin(); i != m_edgeInstances.end(); ++i )
+               {
+                       ( *i ).setSelected( !( *i ).isSelected() );
+               }
+       }
+       break;
+       case SelectionSystem::eFace:
+       {
+               for ( FaceInstances::iterator i = m_faceInstances.begin(); i != m_faceInstances.end(); ++i )
+               {
+                       if( !( *i ).getFace().isFiltered() )
+                               ( *i ).setSelected( mode, !( *i ).isSelected() );
+               }
+       }
+       break;
+       default:
+               break;
+       }
+}
+
 void selectPlanes( Selector& selector, SelectionTest& test, const PlaneCallback& selectedPlaneCallback ){
        test.BeginMesh( localToWorld() );