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 Fri Nov 12 14:55:52 2004 for libgnomecanvasmm by doxygen 1.3.5