1 /*
2  * This file is part of d-dazzle.
3  *
4  * d-dazzle is free software; you can redistribute it and/or modify
5  * it under the terms of the GNU Lesser General Public License
6  * as published by the Free Software Foundation; either version 3
7  * of the License, or (at your option) any later version, with
8  * some exceptions, please read the COPYING file.
9  *
10  * d-dazzle is distributed in the hope that it will be useful,
11  * but WITHOUT ANY WARRANTY; without even the implied warranty of
12  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
13  * GNU Lesser General Public License for more details.
14  *
15  * You should have received a copy of the GNU Lesser General Public License
16  * along with d-dazzle; if not, write to the Free Software
17  * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110, USA
18  */
19 module dazzle.GraphRendererT;
20 
21 public  import cairo.Context;
22 public  import cairo.RectangleInt;
23 public  import dazzle.GraphModel;
24 public  import dazzle.c.functions;
25 public  import dazzle.c.types;
26 
27 
28 /** */
29 public template GraphRendererT(TStruct)
30 {
31 	/** Get the main Gtk struct */
32 	public DzlGraphRenderer* getGraphRendererStruct(bool transferOwnership = false)
33 	{
34 		if (transferOwnership)
35 			ownedRef = false;
36 		return cast(DzlGraphRenderer*)getStruct();
37 	}
38 
39 	/** */
40 	public void render(GraphModel table, long xBegin, long xEnd, double yBegin, double yEnd, Context cr, RectangleInt* area)
41 	{
42 		dzl_graph_view_renderer_render(getGraphRendererStruct(), (table is null) ? null : table.getGraphModelStruct(), xBegin, xEnd, yBegin, yEnd, (cr is null) ? null : cr.getContextStruct(), cast(cairo_rectangle_int_t*)area);
43 	}
44 
45 	/**
46 	 */
47 }