|
Packit Service |
e3b512 |
/* Copyright (C) 2005 The cairomm Development Team
|
|
Packit Service |
e3b512 |
*
|
|
Packit Service |
e3b512 |
* This library is free software; you can redistribute it and/or
|
|
Packit Service |
e3b512 |
* modify it under the terms of the GNU Library General Public
|
|
Packit Service |
e3b512 |
* License as published by the Free Software Foundation; either
|
|
Packit Service |
e3b512 |
* version 2 of the License, or (at your option) any later version.
|
|
Packit Service |
e3b512 |
*
|
|
Packit Service |
e3b512 |
* This library is distributed in the hope that it will be useful,
|
|
Packit Service |
e3b512 |
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
Packit Service |
e3b512 |
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
|
Packit Service |
e3b512 |
* Library General Public License for more details.
|
|
Packit Service |
e3b512 |
*
|
|
Packit Service |
e3b512 |
* You should have received a copy of the GNU Library General Public
|
|
Packit Service |
e3b512 |
* License along with this library; if not, write to the Free Software
|
|
Packit Service |
e3b512 |
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
|
|
Packit Service |
e3b512 |
* 02110-1301, USA.
|
|
Packit Service |
e3b512 |
*/
|
|
Packit Service |
e3b512 |
|
|
Packit Service |
e3b512 |
#ifndef __CAIROMM_PATH_H
|
|
Packit Service |
e3b512 |
#define __CAIROMM_PATH_H
|
|
Packit Service |
e3b512 |
|
|
Packit Service |
e3b512 |
#include <cairomm/enums.h>
|
|
Packit Service |
e3b512 |
#include <string>
|
|
Packit Service |
e3b512 |
#include <cairo.h>
|
|
Packit Service |
e3b512 |
|
|
Packit Service |
e3b512 |
|
|
Packit Service |
e3b512 |
namespace Cairo
|
|
Packit Service |
e3b512 |
{
|
|
Packit Service |
e3b512 |
|
|
Packit Service |
e3b512 |
/** A data structure for holding a path.
|
|
Packit Service |
e3b512 |
* Use Context::copy_path() or Context::copy_path_flat() to instantiate a new
|
|
Packit Service |
e3b512 |
* Path. The application is responsible for freeing the Path object when it is
|
|
Packit Service |
e3b512 |
* no longer needed.
|
|
Packit Service |
e3b512 |
*
|
|
Packit Service |
e3b512 |
* @todo There's currently no way to access the path data without reverting to
|
|
Packit Service |
e3b512 |
* the C object (see cobj())
|
|
Packit Service |
e3b512 |
*/
|
|
Packit Service |
e3b512 |
class Path
|
|
Packit Service |
e3b512 |
{
|
|
Packit Service |
e3b512 |
public:
|
|
Packit Service |
e3b512 |
//Path();
|
|
Packit Service |
e3b512 |
explicit Path(cairo_path_t* cobject, bool take_ownership = false);
|
|
Packit Service |
e3b512 |
|
|
Packit Service |
e3b512 |
Path(const Path&) = delete;
|
|
Packit Service |
e3b512 |
Path& operator=(const Path&) = delete;
|
|
Packit Service |
e3b512 |
|
|
Packit Service |
e3b512 |
virtual ~Path();
|
|
Packit Service |
e3b512 |
|
|
Packit Service |
e3b512 |
//Path& operator=(const Path& src);
|
|
Packit Service |
e3b512 |
|
|
Packit Service |
e3b512 |
//bool operator ==(const Path& src) const;
|
|
Packit Service |
e3b512 |
//bool operator !=(const Path& src) const;
|
|
Packit Service |
e3b512 |
|
|
Packit Service |
e3b512 |
typedef cairo_path_t cobject;
|
|
Packit Service |
e3b512 |
inline cobject* cobj() { return m_cobject; }
|
|
Packit Service |
e3b512 |
inline const cobject* cobj() const { return m_cobject; }
|
|
Packit Service |
e3b512 |
|
|
Packit Service |
e3b512 |
#ifndef DOXYGEN_IGNORE_THIS
|
|
Packit Service |
e3b512 |
///For use only by the cairomm implementation.
|
|
Packit Service |
e3b512 |
//There is no *_status() function for this object:
|
|
Packit Service |
e3b512 |
//inline ErrorStatus get_status() const
|
|
Packit Service |
e3b512 |
//{ return cairo_path_status(const_cast<cairo_path_t*>(cobj())); }
|
|
Packit Service |
e3b512 |
#endif //DOXYGEN_IGNORE_THIS
|
|
Packit Service |
e3b512 |
|
|
Packit Service |
e3b512 |
protected:
|
|
Packit Service |
e3b512 |
|
|
Packit Service |
e3b512 |
cobject* m_cobject;
|
|
Packit Service |
e3b512 |
};
|
|
Packit Service |
e3b512 |
|
|
Packit Service |
e3b512 |
} // namespace Cairo
|
|
Packit Service |
e3b512 |
|
|
Packit Service |
e3b512 |
#endif //__CAIROMM_PATH_H
|
|
Packit Service |
e3b512 |
|
|
Packit Service |
e3b512 |
// vim: ts=2 sw=2 et
|