annotate dox/pyink.h @ 1532:4a92b639a1cd

Clear selection set when switching current scene. To clear selection set after switching away from current to another scene. It avoids Inkscape select on nodes they are not saw after switching.
author Thinker K.F. Li <thinker@codemud.net>
date Fri, 30 Sep 2011 12:31:33 +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 */