|
Revision 114, 1.4 kB
(checked in by bjourne, 6 years ago)
|
Add chapter about the source code. The purpose of the chapter is to explain design decisions and answer questions that may not be
apparent from reading through the source code (e.g the Pimpl question).
|
| Line | |
|---|
| 1 |
<refentry id = "sourcecode" revision = "6 May 2007"> |
|---|
| 2 |
<refmeta> |
|---|
| 3 |
<refentrytitle>Source code overview</refentrytitle> |
|---|
| 4 |
</refmeta> |
|---|
| 5 |
<refnamediv> |
|---|
| 6 |
<refname>Source code overview</refname> |
|---|
| 7 |
<refpurpose> |
|---|
| 8 |
Overview of the source code. |
|---|
| 9 |
</refpurpose> |
|---|
| 10 |
</refnamediv> |
|---|
| 11 |
<refsect1> |
|---|
| 12 |
<para> |
|---|
| 13 |
This chapter contains important information for those that want |
|---|
| 14 |
to hack on the code. |
|---|
| 15 |
</para> |
|---|
| 16 |
<para> |
|---|
| 17 |
All source code is located in the <filename>src</filename> |
|---|
| 18 |
directory. Each C source code file has a matching header |
|---|
| 19 |
file. The header files are divided into two groups; those that |
|---|
| 20 |
are part of the <emphasis>public API</emphasis> and those that |
|---|
| 21 |
are not. All public API files are named using |
|---|
| 22 |
the <filename>gtk</filename> prefix. Although both public and |
|---|
| 23 |
"private" header files are installed, the intention is that |
|---|
| 24 |
client code should only use declarations in the public header |
|---|
| 25 |
files. |
|---|
| 26 |
</para> |
|---|
| 27 |
<para> |
|---|
| 28 |
Both public and private headers are installed because |
|---|
| 29 |
GtkImageView does not use the <ulink url = |
|---|
| 30 |
"http://www.gotw.ca/gotw/028.htm">Pimpl idiom</ulink>. The Pimpl |
|---|
| 31 |
idiom is not currently used because it makes the source code |
|---|
| 32 |
much uglier. That may change in the future (see <ulink url = |
|---|
| 33 |
"http://trac.bjourne.webfactional.com/ticket/9">ticket |
|---|
| 34 |
9</ulink>). |
|---|
| 35 |
</para> |
|---|
| 36 |
</refsect1> |
|---|
| 37 |
</refentry> |
|---|