1// -*- c++ -*-
2/* $Id: layoutiter.ccg,v 1.1 2003/01/21 13:41:06 murrayc Exp $ */
3
4/*
5 *
6 * Copyright 2001-2002 The gtkmm Development Team
7 *
8 * This library is free software; you can redistribute it and/or
9 * modify it under the terms of the GNU Lesser General Public
10 * License as published by the Free Software Foundation; either
11 * version 2.1 of the License, or (at your option) any later version.
12 *
13 * This library is distributed in the hope that it will be useful,
14 * but WITHOUT ANY WARRANTY; without even the implied warranty of
15 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
16 * Lesser General Public License for more details.
17 *
18 * You should have received a copy of the GNU Lesser General Public
19 * License along with this library; if not, write to the Free
20 * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
21 */
22
23#include <pangomm/layout.h>
24
25namespace Pango
26{
27
28void LayoutIter::assign_gobj(PangoLayoutIter* /* src */)
29{
30  //We don't actually use this anymore, and it was only ever for internal use.
31  //We just have not removed it completely to avoid appearing to break the ABI.
32}
33
34Rectangle LayoutIter::get_char_extents() const
35{
36  Rectangle logical_rect;
37  pango_layout_iter_get_char_extents(const_cast<PangoLayoutIter*>(gobj()), logical_rect.gobj());
38  return logical_rect;
39}
40
41Rectangle LayoutIter::get_cluster_ink_extents() const
42{
43  Rectangle ink_rect;
44  pango_layout_iter_get_cluster_extents(const_cast<PangoLayoutIter*>(gobj()), ink_rect.gobj(), 0);
45  return ink_rect;
46}
47
48Rectangle LayoutIter::get_cluster_logical_extents() const
49{
50  Rectangle logical_rect;
51  pango_layout_iter_get_cluster_extents(const_cast<PangoLayoutIter*>(gobj()), 0, logical_rect.gobj());
52  return logical_rect;
53}
54
55Rectangle LayoutIter::get_run_ink_extents() const
56{
57  Rectangle ink_rect;
58  pango_layout_iter_get_run_extents(const_cast<PangoLayoutIter*>(gobj()), ink_rect.gobj(), 0);
59  return ink_rect;
60}
61
62Rectangle LayoutIter::get_run_logical_extents() const
63{
64  Rectangle logical_rect;
65  pango_layout_iter_get_run_extents(const_cast<PangoLayoutIter*>(gobj()), 0, logical_rect.gobj());
66  return logical_rect;
67}
68
69Rectangle LayoutIter::get_line_ink_extents() const
70{
71  Rectangle ink_rect;
72  pango_layout_iter_get_line_extents(const_cast<PangoLayoutIter*>(gobj()), ink_rect.gobj(), 0);
73  return ink_rect;
74}
75
76Rectangle LayoutIter::get_line_logical_extents() const
77{
78  Rectangle logical_rect;
79  pango_layout_iter_get_line_extents(const_cast<PangoLayoutIter*>(gobj()), 0, logical_rect.gobj());
80  return logical_rect;
81}
82
83Rectangle LayoutIter::get_layout_ink_extents() const
84{
85  Rectangle ink_rect;
86  pango_layout_iter_get_layout_extents(const_cast<PangoLayoutIter*>(gobj()), ink_rect.gobj(), 0);
87  return ink_rect;
88}
89
90Rectangle LayoutIter::get_layout_logical_extents() const
91{
92  Rectangle logical_rect;
93  pango_layout_iter_get_layout_extents(const_cast<PangoLayoutIter*>(gobj()), 0, logical_rect.gobj());
94  return logical_rect;
95}
96
97} // namespace Pango
98
99