annotate dox/pyink.h @ 1530:9e7e5f79acc6

Remove layer group from the tree when removing a layer.
author Thinker K.F. Li <thinker@codemud.net>
date Tue, 27 Sep 2011 10:45:12 +0800
parents 73837e189039
children
rev   line source
1521
6d74f835f3b4 Add document page for pyink.
Thinker K.F. Li <thinker@codemud.net>
parents:
diff changeset
1 /*! \page pyink_arch Architecture of pyink
6d74f835f3b4 Add document page for pyink.
Thinker K.F. Li <thinker@codemud.net>
parents:
diff changeset
2 *
6d74f835f3b4 Add document page for pyink.
Thinker K.F. Li <thinker@codemud.net>
parents:
diff changeset
3 * pyink/ sub-directory is an implementation base on pybind. pybind
6d74f835f3b4 Add document page for pyink.
Thinker K.F. Li <thinker@codemud.net>
parents:
diff changeset
4 * is a binding for Python that exploses functions of Inkscape to
6d74f835f3b4 Add document page for pyink.
Thinker K.F. Li <thinker@codemud.net>
parents:
diff changeset
5 * Python. You can access internal data and functions provided by
6d74f835f3b4 Add document page for pyink.
Thinker K.F. Li <thinker@codemud.net>
parents:
diff changeset
6 * Inkscape, and extend functions of Inkscape platform.
6d74f835f3b4 Add document page for pyink.
Thinker K.F. Li <thinker@codemud.net>
parents:
diff changeset
7 *
6d74f835f3b4 Add document page for pyink.
Thinker K.F. Li <thinker@codemud.net>
parents:
diff changeset
8 * pyink.py includes entry points to initialize Python code when
6d74f835f3b4 Add document page for pyink.
Thinker K.F. Li <thinker@codemud.net>
parents:
diff changeset
9 * Inkscape is booting. With pybind, Inkscape will try to search and
6d74f835f3b4 Add document page for pyink.
Thinker K.F. Li <thinker@codemud.net>
parents:
diff changeset
10 * load pyink.py module from directories given by PYTHONPATH
6d74f835f3b4 Add document page for pyink.
Thinker K.F. Li <thinker@codemud.net>
parents:
diff changeset
11 * environment variable. pyink.pyink_start() would be called by
6d74f835f3b4 Add document page for pyink.
Thinker K.F. Li <thinker@codemud.net>
parents:
diff changeset
12 * Inkscape to give Python code a chance to initialize itself and
6d74f835f3b4 Add document page for pyink.
Thinker K.F. Li <thinker@codemud.net>
parents:
diff changeset
13 * register handlers for hooks provided by pybind. Pybind defines
6d74f835f3b4 Add document page for pyink.
Thinker K.F. Li <thinker@codemud.net>
parents:
diff changeset
14 * some hooks that will be tirggered for various events. By register
6d74f835f3b4 Add document page for pyink.
Thinker K.F. Li <thinker@codemud.net>
parents:
diff changeset
15 * handlers for hooks, Python code can intervent behavior of Inkscape
6d74f835f3b4 Add document page for pyink.
Thinker K.F. Li <thinker@codemud.net>
parents:
diff changeset
16 * to modify its heavior.
6d74f835f3b4 Add document page for pyink.
Thinker K.F. Li <thinker@codemud.net>
parents:
diff changeset
17 *
6d74f835f3b4 Add document page for pyink.
Thinker K.F. Li <thinker@codemud.net>
parents:
diff changeset
18 * Python code defined by pyink.py can also modify UI of Inkscape by
6d74f835f3b4 Add document page for pyink.
Thinker K.F. Li <thinker@codemud.net>
parents:
diff changeset
19 * manipulate component tree of GTK. In our implementation, it
6d74f835f3b4 Add document page for pyink.
Thinker K.F. Li <thinker@codemud.net>
parents:
diff changeset
20 * invokes PyGTK to inspect and modify GUI of Inkscape. For example,
6d74f835f3b4 Add document page for pyink.
Thinker K.F. Li <thinker@codemud.net>
parents:
diff changeset
21 * add list views or/and menu items.
6d74f835f3b4 Add document page for pyink.
Thinker K.F. Li <thinker@codemud.net>
parents:
diff changeset
22 *
6d74f835f3b4 Add document page for pyink.
Thinker K.F. Li <thinker@codemud.net>
parents:
diff changeset
23 * \section arch_pyink_mb Aricthrue of pyink module provied by MadButterfly
6d74f835f3b4 Add document page for pyink.
Thinker K.F. Li <thinker@codemud.net>
parents:
diff changeset
24 *
6d74f835f3b4 Add document page for pyink.
Thinker K.F. Li <thinker@codemud.net>
parents:
diff changeset
25 * The purpose of pyink provided by MadButterfly is for making GUI of
6d74f835f3b4 Add document page for pyink.
Thinker K.F. Li <thinker@codemud.net>
parents:
diff changeset
26 * other applications. It includes several major parts.
6d74f835f3b4 Add document page for pyink.
Thinker K.F. Li <thinker@codemud.net>
parents:
diff changeset
27 * - domview
6d74f835f3b4 Add document page for pyink.
Thinker K.F. Li <thinker@codemud.net>
parents:
diff changeset
28 * - domview_ui
6d74f835f3b4 Add document page for pyink.
Thinker K.F. Li <thinker@codemud.net>
parents:
diff changeset
29 * - frameline
1522
73837e189039 Add diagram of arch of pyink
Thinker K.F. Li <thinker@codemud.net>
parents: 1521
diff changeset
30 *
73837e189039 Add diagram of arch of pyink
Thinker K.F. Li <thinker@codemud.net>
parents: 1521
diff changeset
31 * \image html pyink-arch.png
73837e189039 Add diagram of arch of pyink
Thinker K.F. Li <thinker@codemud.net>
parents: 1521
diff changeset
32 *
73837e189039 Add diagram of arch of pyink
Thinker K.F. Li <thinker@codemud.net>
parents: 1521
diff changeset
33 * domview_ui will try to synchronize status of frameline and domview.
1521
6d74f835f3b4 Add document page for pyink.
Thinker K.F. Li <thinker@codemud.net>
parents:
diff changeset
34 */