diff engine/extensions/savers.py @ 106:1fa74d3229d5

Omission of a camera viewport in xml map files now indicates that the camera should use the full window.
author jwt@33b003aa-7bff-0310-803a-e67f0ece8222
date Fri, 25 Jul 2008 00:59:08 +0000
parents 4a0efb7baf70
children 9a1529f9625e
line wrap: on
line diff
--- a/engine/extensions/savers.py	Thu Jul 24 13:20:39 2008 +0000
+++ b/engine/extensions/savers.py	Fri Jul 25 00:59:08 2008 +0000
@@ -209,7 +209,6 @@
 						(None, 'ref_layer_id'): 'ref_layer_id',
 						(None, 'ref_cell_width'): 'ref_cell_width',
 						(None, 'ref_cell_height'): 'ref_cell_height',
-						(None, 'viewport'): 'viewport',
 				}
 
 				attr_vals = {
@@ -220,9 +219,13 @@
 					(None, 'ref_layer_id'): cam.getLocation().getLayer().getId(),
 					(None, 'ref_cell_width'): str( celldimensions.x ),
 					(None, 'ref_cell_height'): str( celldimensions.y ),
-					(None, 'viewport'): '%d,%d,%d,%d' % (viewport.x, viewport.y, viewport.w, viewport.h),
 				}
 
+				# add a viewport entry if the cam isn't full sized
+				if not (viewport == self.engine.getRenderBackend().getArea()):
+					attr_names[(None,'viewport')] = 'viewport'
+					attr_vals[(None,'viewport')] = '%d,%d,%d,%d' % (viewport.x, viewport.y, viewport.w, viewport.h)
+
 				attrs = AttributesNSImpl( attr_vals, attr_names )
 				self.startElement( 'camera', attrs );
 				self.endElement( 'camera' );