Main Page | Namespace List | Class Hierarchy | Alphabetical List | Class List | File List | Namespace Members | Class Members | File Members

path-def.h

Go to the documentation of this file.
00001 // -*- c++ -*- 00002 // Generated by gtkmmproc -- DO NOT MODIFY! 00003 #ifndef _LIBGNOMECANVASMM_PATH_DEF_H 00004 #define _LIBGNOMECANVASMM_PATH_DEF_H 00005 00006 #include <glibmm.h> 00007 00008 /* $Id: path-def.hg,v 1.4 2002/04/04 14:04:33 aholzmann Exp $ */ 00009 00010 /* path-def.h 00011 * 00012 * 00013 * Copyright (C) 2002 The libgnomecanvasmm Development Team 00014 * 00015 * This library is free software; you can redistribute it and/or 00016 * modify it under the terms of the GNU Library General Public 00017 * License as published by the Free Software Foundation; either 00018 * version 2 of the License, or (at your option) any later version. 00019 * 00020 * This library is distributed in the hope that it will be useful, 00021 * but WITHOUT ANY WARRANTY; without even the implied warranty of 00022 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 00023 * Library General Public License for more details. 00024 * 00025 * You should have received a copy of the GNU Library General Public 00026 * License along with this library; if not, write to the Free 00027 * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. 00028 */ 00029 00030 #include <libgnomecanvasmm/point.h> 00031 #include <glibmm/containers.h> 00032 #include <libgnomecanvas/gnome-canvas-path-def.h> 00033 #include <libart_lgpl/art_bpath.h> 00034 #include <libart_lgpl/art_point.h> 00035 #include <libart_lgpl/art_bpath.h> 00036 00037 00038 namespace Gnome 00039 { 00040 00041 namespace Canvas 00042 { 00043 00044 class PathDef 00045 { 00046 public: 00047 #ifndef DOXYGEN_SHOULD_SKIP_THIS 00048 typedef PathDef CppObjectType; 00049 typedef GnomeCanvasPathDef BaseObjectType; 00050 #endif /* DOXYGEN_SHOULD_SKIP_THIS */ 00051 00052 static Glib::RefPtr<PathDef> create(); 00053 00054 // For use with Glib::RefPtr<> only. 00055 void reference() const; 00056 void unreference() const; 00057 00059 GnomeCanvasPathDef* gobj(); 00060 00062 const GnomeCanvasPathDef* gobj() const; 00063 00064 // The caller is responsible for freeing it. Use when directly setting fields in structs. 00065 GnomeCanvasPathDef* gobj_copy() const; 00066 00067 protected: 00068 // Do not derive this. Gnome::Canvas::PathDef can neither be constructed nor deleted. 00069 PathDef(); 00070 void operator delete(void*, size_t); 00071 00072 private: 00073 // noncopyable 00074 PathDef(const PathDef&); 00075 PathDef& operator=(const PathDef&); 00076 00077 00078 public: 00079 //gtkmmproc error: gnome_canvas_path_def_new : method defs lookup failed (1) 00080 00088 static Glib::RefPtr<PathDef> create(int length); 00089 00102 static Glib::RefPtr<PathDef> create(ArtBpath& bpath); 00103 00104 //GnomeCanvasPathDef * gnome_canvas_path_def_new_from_static_bpath (ArtBpath * bpath); 00105 //GnomeCanvasPathDef * gnome_canvas_path_def_new_from_foreign_bpath (ArtBpath * bpath); 00106 00107 //GnomeCanvasPathDef * gnome_canvas_path_def_concat (const GSList * list); 00108 //GSList * gnome_canvas_path_def_split (const GnomeCanvasPathDef * path); 00109 00114 Glib::RefPtr<PathDef> open_parts(); 00115 00121 Glib::RefPtr<PathDef> closed_parts(); 00122 00128 Glib::RefPtr<PathDef> close_all(); 00129 00130 00133 void finish(); 00134 00140 void ensure_space(int space); 00141 00142 00145 void reset(); 00146 00147 00154 void moveto(double x, double y); 00155 00161 void lineto(double x, double y); 00162 00163 00172 void lineto_moving(double x, double y); 00173 00182 void curveto(double x1, double y1, double x2, double y2, double x3, double y3); 00183 00188 void closepath(); 00189 00190 00194 void closepath_current(); 00195 00196 Gnome::Art::Point currentpoint() const; 00197 00198 00203 ArtBpath* get_bpath() const; 00204 00209 ArtBpath* first_bpath() const; 00210 00216 ArtBpath* last_bpath() const; 00217 00218 00223 bool is_empty() const; 00224 00230 int length() const; 00231 00237 bool has_currentpoint() const; 00238 00243 bool any_open() const; 00244 00249 bool all_open() const; 00250 00255 bool any_closed() const; 00256 00261 bool all_closed() const; 00262 00263 00264 }; 00265 00266 } /* namespace Canvas */ 00267 00268 } /* namespace Gnome */ 00269 00270 00271 namespace Glib 00272 { 00273 00275 Glib::RefPtr<Gnome::Canvas::PathDef> wrap(GnomeCanvasPathDef* object, bool take_copy = false); 00276 00277 } // namespace Glib 00278 00279 #endif /* _LIBGNOMECANVASMM_PATH_DEF_H */ 00280

Generated on Tue Jul 20 15:00:43 2004 for libgnomecanvasmm by doxygen 1.3.7