]> de.git.xonotic.org Git - xonotic/netradiant.git/blobdiff - radiant/xywindow.cpp
Merge commit 'ff48e71434a414958e6e56628ccf04284d030784' into master-merge
[xonotic/netradiant.git] / radiant / xywindow.cpp
index 5e67ecf2813394ebc4c881e16c647b3636fcc633..3470f861b0834c25f984a62caf646eb0461cea7c 100644 (file)
@@ -739,7 +739,16 @@ Shader* XYWnd::m_state_selected = 0;
 
 void xy_update_xor_rectangle( XYWnd& self, rect_t area ){
        if ( self.GetWidget().visible() ) {
-               self.m_XORRectangle.set( rectangle_from_area( area.min, area.max, self.Width(), self.Height() ) );
+               rectangle_t rect = rectangle_from_area( area.min, area.max, self.Width(), self.Height() );
+               int nDim1 = ( self.GetViewType() == YZ ) ? 1 : 0;
+               int nDim2 = ( self.GetViewType() == XY ) ? 1 : 2;
+               rect.x /= self.Scale();
+               rect.y /= self.Scale();
+               rect.w /= self.Scale();
+               rect.h /= self.Scale();
+               rect.x += self.GetOrigin()[nDim1];
+               rect.y += self.GetOrigin()[nDim2];
+               self.m_XORRectangle.set( rect );
        }
 }