diff engine/core/view/renderers/genericrenderer.i @ 445:f855809822cf

* Fixed GenericRenderer, now it only render to a specific layer. If the node is only a point then it used the last active layer. fixes #[ticket:458]
author helios2000@33b003aa-7bff-0310-803a-e67f0ece8222
date Wed, 24 Mar 2010 16:11:30 +0000
parents ad1f09d954f9
children 16c2b3ee59ce
line wrap: on
line diff
--- a/engine/core/view/renderers/genericrenderer.i	Wed Mar 24 13:29:16 2010 +0000
+++ b/engine/core/view/renderers/genericrenderer.i	Wed Mar 24 16:11:30 2010 +0000
@@ -29,9 +29,13 @@
 	
 	class GenericRendererNode {
 	public:
+		GenericRendererNode(Instance* attached_instance, Location* relative_location, Layer* relative_layer, const Point &relative_point = Point(0,0));
 		GenericRendererNode(Instance* attached_instance, Location* relative_location, const Point &relative_point = Point(0,0));
+		GenericRendererNode(Instance* attached_instance, Layer* relative_layer, const Point &relative_point = Point(0,0));
 		GenericRendererNode(Instance* attached_instance, const Point &relative_point = Point(0,0));
+		GenericRendererNode(Location* attached_location, Layer* relative_layer, const Point &relative_point = Point(0,0));
 		GenericRendererNode(Location* attached_location, const Point &relative_point = Point(0,0));
+		GenericRendererNode(Layer* attached_layer, const Point &relative_point = Point(0,0));
 		GenericRendererNode(const Point &attached_point);
 		~GenericRendererNode();
 		
@@ -41,6 +45,7 @@
 		void setAttached(Instance* attached_instance);
 		void setAttached(Location* attached_location, const Point &relative_point);
 		void setAttached(Location* attached_location);
+		void setAttached(Layer* attached_layer);
 		void setAttached(const Point &attached_point);
 		
 		void setRelative(Location* relative_location);
@@ -49,6 +54,7 @@
 		
 		Instance* getAttachedInstance();
 		Location* getAttachedLocation();
+		Layer* getAttachedLayer();
 		Point getAttachedPoint();
 		
 		Location* getOffsetLocation();
@@ -56,12 +62,14 @@
 		
 		Instance* getInstance();
 		Location* getLocation();
+		Layer* getLayer();
 		Point getPoint();
 
 		Point getCalculatedPoint(Camera* cam, Layer* layer, std::vector<Instance*>& instances);
 	private:
 		Instance* m_instance;
 		Location* m_location;
+		Layer* m_layer;
 		Point m_point;
 	};
 	class GenericRendererElementInfo {