1 /* 2 * This file is part of EvinceD. 3 * EvinceD is based on GtkD. 4 * 5 * EvinceD is free software; you can redistribute it and/or modify 6 * it under the terms of the GNU Lesser General Public License 7 * as published by the Free Software Foundation; either version 3 8 * of the License, or (at your option) any later version, with 9 * some exceptions, please read the COPYING file. 10 * 11 * EvinceD is distributed in the hope that it will be useful, 12 * but WITHOUT ANY WARRANTY; without even the implied warranty of 13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14 * GNU Lesser General Public License for more details. 15 * 16 * You should have received a copy of the GNU Lesser General Public License 17 * along with EvinceD; if not, write to the Free Software 18 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110, USA 19 */ 20 21 // generated automatically - do not change 22 // find conversion definition on APILookup.txt 23 24 25 module evince.document.SelectionT; 26 27 public import cairo.Region; 28 public import cairo.Surface; 29 public import evince.document.Page; 30 public import evince.document.Rectangle; 31 public import evince.document.RenderContext; 32 public import evince.document.c.functions; 33 public import evince.document.c.types; 34 public import gdk.Color; 35 public import glib.Str; 36 37 38 /** */ 39 public template SelectionT(TStruct) 40 { 41 /** Get the main Gtk struct */ 42 public EvSelection* getSelectionStruct(bool transferOwnership = false) 43 { 44 if (transferOwnership) 45 ownedRef = false; 46 return cast(EvSelection*)getStruct(); 47 } 48 49 50 /** */ 51 public string getSelectedText(Page page, EvSelectionStyle style, Rectangle points) 52 { 53 auto retStr = ev_selection_get_selected_text(getSelectionStruct(), (page is null) ? null : page.getPageStruct(), style, (points is null) ? null : points.getRectangleStruct()); 54 55 scope(exit) Str.freeString(retStr); 56 return Str.toString(retStr); 57 } 58 59 /** */ 60 public Region getSelectionRegion(RenderContext rc, EvSelectionStyle style, Rectangle points) 61 { 62 auto __p = ev_selection_get_selection_region(getSelectionStruct(), (rc is null) ? null : rc.getRenderContextStruct(), style, (points is null) ? null : points.getRectangleStruct()); 63 64 if(__p is null) 65 { 66 return null; 67 } 68 69 return new Region(cast(cairo_region_t*) __p); 70 } 71 72 /** */ 73 public void renderSelection(RenderContext rc, Surface surface, Rectangle points, Rectangle oldPoints, EvSelectionStyle style, Color text, Color base) 74 { 75 ev_selection_render_selection(getSelectionStruct(), (rc is null) ? null : rc.getRenderContextStruct(), (surface is null) ? null : surface.getSurfaceStruct(), (points is null) ? null : points.getRectangleStruct(), (oldPoints is null) ? null : oldPoints.getRectangleStruct(), style, (text is null) ? null : text.getColorStruct(), (base is null) ? null : base.getColorStruct()); 76 } 77 }