[Author Prev][Author Next][Thread Prev][Thread Next][Author Index][Thread Index]

gEDA-cvs: gaf.git: branch: master updated (1.5.0-20080706-227-gcfd3bf7)



The branch, master has been updated
       via  cfd3bf75707dc8d031deb58d6edea3936384b027 (commit)
       via  e10b58d0b01553a1c600ef3a9532d1615171ff78 (commit)
       via  8731bb244e698f067ee18ad932240ba2b266a007 (commit)
      from  80ef18d6f79a12ba5a4d9269d0a77c0fa45217f4 (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.


=========
 Summary
=========

 libgeda/docs/Makefile.am                |    2 +
 libgeda/docs/images/Makefile            |   21 ++
 libgeda/docs/images/s_conn_overview.svg |  470 +++++++++++++++++++++++++++
 libgeda/docs/images/s_tile_overview.svg |  538 +++++++++++++++++++++++++++++++
 libgeda/include/struct.h                |   34 ++-
 libgeda/src/s_conn.c                    |  117 +++++--
 libgeda/src/s_tile.c                    |   63 +++--
 7 files changed, 1186 insertions(+), 59 deletions(-)
 create mode 100644 libgeda/docs/images/Makefile
 create mode 100644 libgeda/docs/images/s_conn_overview.svg
 create mode 100644 libgeda/docs/images/s_tile_overview.svg


=================
 Commit Messages
=================

commit cfd3bf75707dc8d031deb58d6edea3936384b027
Author: Werner Hoch <werner.ho@xxxxxx>
Date:   Sat Oct 18 11:14:42 2008 +0200

    Makefile to convert svg images to png and pdf
    
    If inscape doesn't work, try convert.

:100644 100644 c7c5907... 95d404d... M	libgeda/docs/Makefile.am
:000000 100644 0000000... 20caf89... A	libgeda/docs/images/Makefile

commit e10b58d0b01553a1c600ef3a9532d1615171ff78
Author: Werner Hoch <werner.ho@xxxxxx>
Date:   Sat Oct 18 10:44:46 2008 +0200

    doxygen documentation of st_tile and s_tile.c
    
    added svg images for s_conn and s_tile

:000000 100644 0000000... 4b017fa... A	libgeda/docs/images/s_conn_overview.svg
:000000 100644 0000000... b9a037b... A	libgeda/docs/images/s_tile_overview.svg
:100644 100644 0040b69... 87aeb49... M	libgeda/include/struct.h
:100644 100644 45b914c... 677c7cd... M	libgeda/src/s_conn.c
:100644 100644 c6e350d... 0a6c2e3... M	libgeda/src/s_tile.c

commit 8731bb244e698f067ee18ad932240ba2b266a007
Author: Werner Hoch <werner.ho@xxxxxx>
Date:   Fri Oct 17 20:11:46 2008 +0200

    doxygen comments for the connection system st_conn and s_conn.c

:100644 100644 087c3eb... 0040b69... M	libgeda/include/struct.h
:100644 100644 085bf1d... 45b914c... M	libgeda/src/s_conn.c

=========
 Changes
=========

commit cfd3bf75707dc8d031deb58d6edea3936384b027
Author: Werner Hoch <werner.ho@xxxxxx>
Date:   Sat Oct 18 11:14:42 2008 +0200

    Makefile to convert svg images to png and pdf
    
    If inscape doesn't work, try convert.

diff --git a/libgeda/docs/Makefile.am b/libgeda/docs/Makefile.am
index c7c5907..95d404d 100644
--- a/libgeda/docs/Makefile.am
+++ b/libgeda/docs/Makefile.am
@@ -9,6 +9,8 @@ all:
 doxygen: libgeda.dox
 	@echo 'Creating doxygen documentation for libgeda...'
 if BUILDDOC
+	-cd images && $(MAKE)
+	-cd ..
 	$(DOXYGEN) libgeda.dox
 	-cd latex && $(MAKE)
 	-cd ..
diff --git a/libgeda/docs/images/Makefile b/libgeda/docs/images/Makefile
new file mode 100644
index 0000000..20caf89
--- /dev/null
+++ b/libgeda/docs/images/Makefile
@@ -0,0 +1,21 @@
+
+svg_images = \
+	s_conn_overview.svg \
+	s_tile_overview.svg
+
+
+png_images = $(patsubst %.svg, %.png, $(svg_images))
+pdf_images = $(patsubst %.svg, %.pdf, $(svg_images))
+
+
+all: $(png_images) $(pdf_images)
+
+clean:
+	rm -rf $(png_images) $(pdf_images)
+
+%.png: %.svg
+	inkscape -e $@ $<  ||  convert $< $@
+
+%.pdf: %.svg
+	inkscape -A $@ $<  ||  convert $< $@
+

commit e10b58d0b01553a1c600ef3a9532d1615171ff78
Author: Werner Hoch <werner.ho@xxxxxx>
Date:   Sat Oct 18 10:44:46 2008 +0200

    doxygen documentation of st_tile and s_tile.c
    
    added svg images for s_conn and s_tile

diff --git a/libgeda/docs/images/s_conn_overview.svg b/libgeda/docs/images/s_conn_overview.svg
new file mode 100644
index 0000000..4b017fa
--- /dev/null
+++ b/libgeda/docs/images/s_conn_overview.svg
@@ -0,0 +1,470 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+<svg
+   xmlns:dc="http://purl.org/dc/elements/1.1/";
+   xmlns:cc="http://creativecommons.org/ns#";
+   xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#";
+   xmlns:svg="http://www.w3.org/2000/svg";
+   xmlns="http://www.w3.org/2000/svg";
+   xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd";
+   xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape";
+   width="600"
+   height="488"
+   id="svg2"
+   sodipodi:version="0.32"
+   inkscape:version="0.46"
+   sodipodi:docname="s_conn_overview.svg"
+   inkscape:output_extension="org.inkscape.output.svg.inkscape"
+   version="1.0">
+  <defs
+     id="defs4">
+    <marker
+       inkscape:stockid="Arrow1Mend"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="Arrow1Mend"
+       style="overflow:visible">
+      <path
+         id="path3406"
+         d="M 0,0 L 5,-5 L -12.5,0 L 5,5 L 0,0 z"
+         style="fill-rule:evenodd;stroke:#000000;stroke-width:1pt;marker-start:none"
+         transform="matrix(-0.4,0,0,-0.4,-4,0)" />
+    </marker>
+    <inkscape:perspective
+       sodipodi:type="inkscape:persp3d"
+       inkscape:vp_x="0 : 526.18109 : 1"
+       inkscape:vp_y="0 : 1000 : 0"
+       inkscape:vp_z="744.09448 : 526.18109 : 1"
+       inkscape:persp3d-origin="372.04724 : 350.78739 : 1"
+       id="perspective10" />
+  </defs>
+  <sodipodi:namedview
+     id="base"
+     pagecolor="#c0c0c0"
+     bordercolor="#666666"
+     borderopacity="1.0"
+     inkscape:pageopacity="0"
+     inkscape:pageshadow="2"
+     inkscape:zoom="0.85200571"
+     inkscape:cx="305.94633"
+     inkscape:cy="229.51454"
+     inkscape:document-units="px"
+     inkscape:current-layer="layer1"
+     showgrid="false"
+     inkscape:window-width="1197"
+     inkscape:window-height="879"
+     inkscape:window-x="1280"
+     inkscape:window-y="96"
+     showborder="true"
+     inkscape:showpageshadow="false" />
+  <metadata
+     id="metadata7">
+    <rdf:RDF>
+      <cc:Work
+         rdf:about="">
+        <dc:format>image/svg+xml</dc:format>
+        <dc:type
+           rdf:resource="http://purl.org/dc/dcmitype/StillImage"; />
+      </cc:Work>
+    </rdf:RDF>
+  </metadata>
+  <g
+     inkscape:label="Ebene 1"
+     inkscape:groupmode="layer"
+     id="layer1">
+    <rect
+       style="opacity:1;fill:#c0c0c0;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
+       id="rect3363"
+       width="622.06158"
+       height="510.55988"
+       x="-10.563311"
+       y="-10.822948" />
+    <text
+       xml:space="preserve"
+       style="font-size:15.46203899px;font-style:normal;font-weight:normal;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans"
+       x="259.43689"
+       y="259.04913"
+       id="text3171"><tspan
+         sodipodi:role="line"
+         id="tspan3173"
+         x="259.43689"
+         y="259.04913">net object 1</tspan></text>
+    <rect
+       style="opacity:1;fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
+       id="rect3167"
+       width="175.71396"
+       height="6.5079241"
+       x="321.52542"
+       y="266.15997" />
+    <rect
+       style="opacity:1;fill:#0000ff;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
+       id="rect3159"
+       width="175.71396"
+       height="6.5079241"
+       x="-339.53699"
+       y="41.388134"
+       transform="matrix(0,-1,1,0,0,0)" />
+    <rect
+       style="opacity:1;fill:#ff0000;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
+       id="rect3157"
+       width="10.41268"
+       height="10.41268"
+       x="-169.35474"
+       y="39.435799"
+       transform="matrix(0,-1,1,0,0,0)" />
+    <rect
+       style="opacity:1;fill:#ff0000;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
+       id="rect2385"
+       width="10.41268"
+       height="10.41268"
+       x="-342.14014"
+       y="39.435799"
+       transform="matrix(0,-1,1,0,0,0)" />
+    <rect
+       y="266.15997"
+       x="48.318779"
+       height="6.5079241"
+       width="383.84137"
+       id="rect3161"
+       style="opacity:1;fill:#0000ff;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" />
+    <rect
+       y="264.20764"
+       x="39.273083"
+       height="10.41268"
+       width="10.41268"
+       id="rect3165"
+       style="opacity:1;fill:#ffff00;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
+       ry="4.0406103"
+       rx="4.0406103" />
+    <text
+       xml:space="preserve"
+       style="font-size:15.46203899px;font-style:normal;font-weight:normal;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans"
+       x="-255.7807"
+       y="35.451546"
+       id="text3175"
+       transform="matrix(0,-1,1,0,0,0)"><tspan
+         sodipodi:role="line"
+         id="tspan3177"
+         x="-255.7807"
+         y="35.451546">net object 2</tspan></text>
+    <text
+       xml:space="preserve"
+       style="font-size:15.46203899px;font-style:normal;font-weight:normal;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans"
+       x="479.99341"
+       y="260.62836"
+       id="text3179"><tspan
+         sodipodi:role="line"
+         id="tspan3181"
+         x="479.99341"
+         y="260.62836">pin object</tspan></text>
+    <text
+       id="text3187"
+       y="214.70105"
+       x="-238.27028"
+       style="font-size:15.46203899px;font-style:normal;font-weight:normal;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans"
+       xml:space="preserve"
+       transform="matrix(1.4631343e-3,-0.9999989,0.9999989,1.4631343e-3,0,0)"><tspan
+         y="214.70105"
+         x="-238.27028"
+         id="tspan3189"
+         sodipodi:role="line">conn_list</tspan></text>
+    <g
+       id="g3229"
+       transform="matrix(1.2885033,0,0,1.2885033,-226.7672,-579.91624)">
+      <rect
+         style="opacity:1;fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#000000;stroke-width:1.0773977;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
+         id="rect3213"
+         width="209.2767"
+         height="100.68536"
+         x="321.01468"
+         y="457.67358" />
+      <text
+         id="text3195"
+         y="469.75674"
+         x="324.51147"
+         style="font-size:12px;font-style:normal;font-weight:normal;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans"
+         xml:space="preserve"><tspan
+           y="469.75674"
+           x="324.51147"
+           id="tspan3197"
+           sodipodi:role="line">GList</tspan></text>
+      <text
+         id="text3199"
+         y="487.68689"
+         x="332.34018"
+         style="font-size:12px;font-style:normal;font-weight:normal;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans"
+         xml:space="preserve"><tspan
+           y="487.68689"
+           x="332.34018"
+           id="tspan3201"
+           sodipodi:role="line">other_object</tspan><tspan
+           id="tspan3203"
+           y="502.68689"
+           x="332.34018"
+           sodipodi:role="line">type</tspan><tspan
+           id="tspan3205"
+           y="517.68689"
+           x="332.34018"
+           sodipodi:role="line">x,y</tspan><tspan
+           id="tspan3207"
+           y="532.68689"
+           x="332.34018"
+           sodipodi:role="line">whichone</tspan><tspan
+           id="tspan3209"
+           y="547.68689"
+           x="332.34018"
+           sodipodi:role="line">other_whichone</tspan></text>
+      <rect
+         y="473.5448"
+         x="325.2691"
+         height="81.822357"
+         width="97.984795"
+         id="rect3211"
+         style="opacity:1;fill:none;fill-opacity:1;fill-rule:nonzero;stroke:#000000;stroke-width:1;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" />
+      <text
+         xml:space="preserve"
+         style="font-size:12px;font-style:normal;font-weight:normal;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans"
+         x="435.37576"
+         y="487.68689"
+         id="text3215"><tspan
+           sodipodi:role="line"
+           id="tspan3217"
+           x="435.37576"
+           y="487.68689">other_object</tspan><tspan
+           sodipodi:role="line"
+           x="435.37576"
+           y="502.68689"
+           id="tspan3219">type</tspan><tspan
+           sodipodi:role="line"
+           x="435.37576"
+           y="517.68689"
+           id="tspan3221">x,y</tspan><tspan
+           sodipodi:role="line"
+           x="435.37576"
+           y="532.68689"
+           id="tspan3223">whichone</tspan><tspan
+           sodipodi:role="line"
+           x="435.37576"
+           y="547.68689"
+           id="tspan3225">other_whichone</tspan></text>
+      <rect
+         style="opacity:1;fill:none;fill-opacity:1;fill-rule:nonzero;stroke:#000000;stroke-width:1;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
+         id="rect3227"
+         width="97.984795"
+         height="81.822357"
+         x="428.30469"
+         y="473.5448" />
+    </g>
+    <g
+       id="g3354"
+       transform="matrix(1.2885033,0,0,1.2885033,41.359289,-389.88485)">
+      <rect
+         y="575.86145"
+         x="323.03497"
+         height="101.69552"
+         width="106.24111"
+         id="rect3250"
+         style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#000000;stroke-width:1.0773977;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" />
+      <text
+         xml:space="preserve"
+         style="font-size:12px;font-style:normal;font-weight:normal;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans"
+         x="326.53177"
+         y="587.94458"
+         id="text3252"><tspan
+           sodipodi:role="line"
+           id="tspan3254"
+           x="326.53177"
+           y="587.94458">GList</tspan></text>
+      <text
+         xml:space="preserve"
+         style="font-size:12px;font-style:normal;font-weight:normal;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans"
+         x="334.36047"
+         y="605.87476"
+         id="text3256"><tspan
+           sodipodi:role="line"
+           id="tspan3258"
+           x="334.36047"
+           y="605.87476">other_object</tspan><tspan
+           sodipodi:role="line"
+           x="334.36047"
+           y="620.87476"
+           id="tspan3260">type</tspan><tspan
+           sodipodi:role="line"
+           x="334.36047"
+           y="635.87476"
+           id="tspan3262">x,y</tspan><tspan
+           sodipodi:role="line"
+           x="334.36047"
+           y="650.87476"
+           id="tspan3264">whichone</tspan><tspan
+           sodipodi:role="line"
+           x="334.36047"
+           y="665.87476"
+           id="tspan3266">other_whichone</tspan></text>
+      <rect
+         style="fill:none;fill-opacity:1;fill-rule:nonzero;stroke:#000000;stroke-width:1;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
+         id="rect3268"
+         width="97.984795"
+         height="81.822357"
+         x="327.2894"
+         y="591.73267" />
+    </g>
+    <g
+       id="g3366"
+       transform="matrix(1.2885033,0,0,1.2885033,-359.50176,-393.97462)">
+      <rect
+         style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#000000;stroke-width:1.0773977;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
+         id="rect3368"
+         width="106.24111"
+         height="101.69552"
+         x="323.03497"
+         y="575.86145" />
+      <text
+         id="text3370"
+         y="587.94458"
+         x="326.53177"
+         style="font-size:12px;font-style:normal;font-weight:normal;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans"
+         xml:space="preserve"><tspan
+           y="587.94458"
+           x="326.53177"
+           id="tspan3372"
+           sodipodi:role="line">GList</tspan></text>
+      <text
+         id="text3374"
+         y="605.87476"
+         x="334.36047"
+         style="font-size:12px;font-style:normal;font-weight:normal;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans"
+         xml:space="preserve"><tspan
+           y="605.87476"
+           x="334.36047"
+           id="tspan3376"
+           sodipodi:role="line">other_object</tspan><tspan
+           id="tspan3378"
+           y="620.87476"
+           x="334.36047"
+           sodipodi:role="line">type</tspan><tspan
+           id="tspan3380"
+           y="635.87476"
+           x="334.36047"
+           sodipodi:role="line">x,y</tspan><tspan
+           id="tspan3382"
+           y="650.87476"
+           x="334.36047"
+           sodipodi:role="line">whichone</tspan><tspan
+           id="tspan3384"
+           y="665.87476"
+           x="334.36047"
+           sodipodi:role="line">other_whichone</tspan></text>
+      <rect
+         y="591.73267"
+         x="327.2894"
+         height="81.822357"
+         width="97.984795"
+         id="rect3386"
+         style="fill:none;fill-opacity:1;fill-rule:nonzero;stroke:#000000;stroke-width:1;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" />
+    </g>
+    <path
+       style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:2.19045568;stroke-linecap:butt;stroke-linejoin:miter;marker-end:url(#Arrow1Mend);stroke-miterlimit:4;stroke-dasharray:2.19045556, 2.19045556;stroke-dashoffset:0;stroke-opacity:1"
+       d="M 465.67595,273.96952 L 474.13625,346.53287"
+       id="path3392"
+       sodipodi:nodetypes="cc" />
+    <path
+       sodipodi:nodetypes="cc"
+       id="path4172"
+       d="M 50.642792,308.26693 L 82.722925,344.0701"
+       style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:2.19045568;stroke-linecap:butt;stroke-linejoin:miter;marker-end:url(#Arrow1Mend);stroke-miterlimit:4;stroke-dasharray:2.19045556, 2.19045556;stroke-dashoffset:0;stroke-opacity:1" />
+    <path
+       style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:2.19045568;stroke-linecap:butt;stroke-linejoin:miter;marker-end:url(#Arrow1Mend);stroke-miterlimit:4;stroke-dasharray:2.19045556, 2.19045556;stroke-dashoffset:0;stroke-opacity:1"
+       d="M 219.6764,268.76318 L 220.97798,145.1126"
+       id="path4174"
+       sodipodi:nodetypes="cc" />
+    <path
+       sodipodi:nodetypes="cz"
+       id="path4176"
+       d="M 199.35338,43.710631 C 120.27482,61.244221 83.642865,106.5585 49.799161,180.52198"
+       style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:1.28850329;stroke-linecap:butt;stroke-linejoin:miter;marker-end:url(#Arrow1Mend);stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" />
+    <path
+       sodipodi:nodetypes="cz"
+       id="path4178"
+       d="M 422.86507,44.188341 C 483.03692,40.430771 486.08415,70.776841 472.61124,262.99953"
+       style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:1.28850329;stroke-linecap:butt;stroke-linejoin:miter;marker-end:url(#Arrow1Mend);stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" />
+    <path
+       sodipodi:nodetypes="cz"
+       id="path4180"
+       d="M 468.43447,424.41967 C 405.73756,430.66105 432.40626,338.89193 432.46571,276.86075"
+       style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:1.28850329;stroke-linecap:butt;stroke-linejoin:miter;marker-end:url(#Arrow1Mend);stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" />
+    <path
+       style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:1.28850329;stroke-linecap:butt;stroke-linejoin:miter;marker-end:url(#Arrow1Mend);stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
+       d="M 331.01083,102.75171 C 283.45109,205.86285 427.24326,151.85631 424.83382,261.42837"
+       id="path4182"
+       sodipodi:nodetypes="cz" />
+    <path
+       sodipodi:nodetypes="cz"
+       id="path4184"
+       d="M 441.07603,128.79929 C 467.42119,179.45458 435.43399,206.25002 439.42083,261.8096"
+       style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:1.28850329;stroke-linecap:butt;stroke-linejoin:miter;marker-end:url(#Arrow1Mend);stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" />
+    <path
+       sodipodi:nodetypes="cz"
+       id="path4186"
+       d="M 469.07132,387.15593 C 367.84665,387.95392 342.90982,334.34776 341.15117,276.66617"
+       style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:1.28850329;stroke-linecap:butt;stroke-linejoin:miter;marker-end:url(#Arrow1Mend);stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" />
+    <path
+       style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:1.28850329;stroke-linecap:butt;stroke-linejoin:miter;marker-end:url(#Arrow1Mend);stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
+       d="M 158.62089,383.99159 C 242.07731,384.10884 253.06415,318.5944 251.52517,276.34076"
+       id="path4188"
+       sodipodi:nodetypes="cz" />
+    <path
+       style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:1.28850329;stroke-linecap:butt;stroke-linejoin:miter;marker-end:url(#Arrow1Mend);stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
+       d="M 197.401,63.885191 C 144.35413,62.871191 141.56339,148.53461 50.449954,261.87102"
+       id="path4214"
+       sodipodi:nodetypes="cz" />
+    <path
+       sodipodi:nodetypes="csz"
+       id="path4216"
+       d="M 68.813674,401.49531 C 15.298118,405.82557 23.862606,409.74363 23.931971,341.50622 C 23.994434,280.26598 14.778858,269.75052 37.05288,269.56211"
+       style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:1.28850329;stroke-linecap:butt;stroke-linejoin:miter;marker-end:url(#Arrow1Mend);stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" />
+    <text
+       xml:space="preserve"
+       style="font-size:15.46203899px;font-style:normal;font-weight:normal;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans"
+       x="-399.64713"
+       y="14.146936"
+       id="text4218"
+       transform="matrix(-1.1899865e-2,-0.9999292,0.9999292,-1.1899865e-2,0,0)"><tspan
+         sodipodi:role="line"
+         id="tspan4220"
+         x="-399.64713"
+         y="14.146936">CONN_ENDPOINT</tspan></text>
+    <text
+       xml:space="preserve"
+       style="font-size:15.46203995px;font-style:normal;font-weight:normal;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans"
+       x="-154.14096"
+       y="176.16016"
+       id="text4222"
+       transform="matrix(0.4946911,-0.8690689,0.8690689,0.4946911,0,0)"><tspan
+         sodipodi:role="line"
+         id="tspan4224"
+         x="-154.14096"
+         y="176.16016">CONN_MIDPOINT</tspan></text>
+    <path
+       style="opacity:1;fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:3;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
+       d="M -61.032455,-2.6070407 L -2.3474025,-2.6070407 L -2.3474025,-53.076186"
+       id="path2579"
+       sodipodi:nodetypes="ccc" />
+    <path
+       sodipodi:nodetypes="ccc"
+       id="path3357"
+       d="M 660.86706,489.90726 L 602.18201,489.90726 L 602.18201,540.3764"
+       style="opacity:1;fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:3;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
+    <path
+       style="opacity:1;fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:3;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
+       d="M 661.16048,-2.1669001 L 602.47543,-2.1669001 L 602.47543,-52.63605"
+       id="path3359"
+       sodipodi:nodetypes="ccc" />
+    <path
+       sodipodi:nodetypes="ccc"
+       id="path3361"
+       d="M -2.3474072,549.4726 L -2.3474072,490.78754 L -52.816546,490.78754"
+       style="opacity:1;fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:3;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
+  </g>
+</svg>
diff --git a/libgeda/docs/images/s_tile_overview.svg b/libgeda/docs/images/s_tile_overview.svg
new file mode 100644
index 0000000..b9a037b
--- /dev/null
+++ b/libgeda/docs/images/s_tile_overview.svg
@@ -0,0 +1,538 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+<svg
+   xmlns:dc="http://purl.org/dc/elements/1.1/";
+   xmlns:cc="http://creativecommons.org/ns#";
+   xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#";
+   xmlns:svg="http://www.w3.org/2000/svg";
+   xmlns="http://www.w3.org/2000/svg";
+   xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd";
+   xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape";
+   width="600"
+   height="488"
+   id="svg2"
+   sodipodi:version="0.32"
+   inkscape:version="0.46"
+   sodipodi:docname="s_tile_overview.svg"
+   inkscape:output_extension="org.inkscape.output.svg.inkscape"
+   version="1.0">
+  <defs
+     id="defs4">
+    <marker
+       inkscape:stockid="DotM"
+       orient="auto"
+       refY="0.0"
+       refX="0.0"
+       id="DotM"
+       style="overflow:visible">
+      <path
+         id="path3465"
+         d="M -2.5,-1.0 C -2.5,1.7600000 -4.7400000,4.0 -7.5,4.0 C -10.260000,4.0 -12.5,1.7600000 -12.5,-1.0 C -12.5,-3.7600000 -10.260000,-6.0 -7.5,-6.0 C -4.7400000,-6.0 -2.5,-3.7600000 -2.5,-1.0 z "
+         style="fill-rule:evenodd;stroke:#000000;stroke-width:1.0pt;marker-start:none;marker-end:none"
+         transform="scale(0.4) translate(7.4, 1)" />
+    </marker>
+    <marker
+       inkscape:stockid="Arrow1Mend"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="Arrow1Mend"
+       style="overflow:visible">
+      <path
+         id="path3406"
+         d="M 0,0 L 5,-5 L -12.5,0 L 5,5 L 0,0 z"
+         style="fill-rule:evenodd;stroke:#000000;stroke-width:1pt;marker-start:none"
+         transform="matrix(-0.4,0,0,-0.4,-4,0)" />
+    </marker>
+    <inkscape:perspective
+       sodipodi:type="inkscape:persp3d"
+       inkscape:vp_x="0 : 526.18109 : 1"
+       inkscape:vp_y="0 : 1000 : 0"
+       inkscape:vp_z="744.09448 : 526.18109 : 1"
+       inkscape:persp3d-origin="372.04724 : 350.78739 : 1"
+       id="perspective10" />
+  </defs>
+  <sodipodi:namedview
+     id="base"
+     pagecolor="#c0c0c0"
+     bordercolor="#666666"
+     borderopacity="1.0"
+     inkscape:pageopacity="0"
+     inkscape:pageshadow="2"
+     inkscape:zoom="0.85200571"
+     inkscape:cx="287.94111"
+     inkscape:cy="145.96733"
+     inkscape:document-units="px"
+     inkscape:current-layer="layer1"
+     showgrid="false"
+     inkscape:window-width="1197"
+     inkscape:window-height="879"
+     inkscape:window-x="1280"
+     inkscape:window-y="96"
+     showborder="true"
+     inkscape:showpageshadow="false" />
+  <metadata
+     id="metadata7">
+    <rdf:RDF>
+      <cc:Work
+         rdf:about="">
+        <dc:format>image/svg+xml</dc:format>
+        <dc:type
+           rdf:resource="http://purl.org/dc/dcmitype/StillImage"; />
+      </cc:Work>
+    </rdf:RDF>
+  </metadata>
+  <g
+     inkscape:label="Ebene 1"
+     inkscape:groupmode="layer"
+     id="layer1">
+    <rect
+       style="opacity:1;fill:#c0c0c0;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
+       id="rect3363"
+       width="622.06158"
+       height="510.55988"
+       x="-14.0844"
+       y="-9.6492472" />
+    <text
+       xml:space="preserve"
+       style="font-size:15.46203899px;font-style:normal;font-weight:normal;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans"
+       x="460.13977"
+       y="379.94037"
+       id="text3171"><tspan
+         sodipodi:role="line"
+         id="tspan3173"
+         x="460.13977"
+         y="379.94037">single TILE</tspan></text>
+    <path
+       style="opacity:1;fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:3;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
+       d="M -61.032455,-2.6070407 L -2.3474025,-2.6070407 L -2.3474025,-53.076186"
+       id="path2579"
+       sodipodi:nodetypes="ccc" />
+    <path
+       sodipodi:nodetypes="ccc"
+       id="path3357"
+       d="M 660.86706,489.90726 L 602.18201,489.90726 L 602.18201,540.3764"
+       style="opacity:1;fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:3;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
+    <path
+       style="opacity:1;fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:3;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
+       d="M 661.16048,-2.1669001 L 602.47543,-2.1669001 L 602.47543,-52.63605"
+       id="path3359"
+       sodipodi:nodetypes="ccc" />
+    <path
+       sodipodi:nodetypes="ccc"
+       id="path3361"
+       d="M -2.3474072,549.4726 L -2.3474072,490.78754 L -52.816546,490.78754"
+       style="opacity:1;fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:3;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
+    <g
+       id="g2492">
+      <path
+         sodipodi:nodetypes="cc"
+         id="path2456"
+         d="M 544.33765,13.824774 L 544.33765,470.39448"
+         style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" />
+      <path
+         style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+         d="M 483.33765,13.824774 L 483.33765,470.39448"
+         id="path2458"
+         sodipodi:nodetypes="cc" />
+      <path
+         sodipodi:nodetypes="cc"
+         id="path2460"
+         d="M 422.33765,13.824774 L 422.33765,470.39448"
+         style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" />
+      <path
+         style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+         d="M 361.33765,13.824774 L 361.33765,470.39448"
+         id="path2462"
+         sodipodi:nodetypes="cc" />
+      <path
+         sodipodi:nodetypes="cc"
+         id="path2464"
+         d="M 300.33765,13.824774 L 300.33765,470.39448"
+         style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" />
+      <path
+         style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+         d="M 239.33765,13.824774 L 239.33765,470.39448"
+         id="path2466"
+         sodipodi:nodetypes="cc" />
+      <path
+         sodipodi:nodetypes="cc"
+         id="path2468"
+         d="M 178.33765,13.824774 L 178.33765,470.39448"
+         style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" />
+      <path
+         style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+         d="M 117.33765,13.824774 L 117.33765,470.39448"
+         id="path2470"
+         sodipodi:nodetypes="cc" />
+      <path
+         sodipodi:nodetypes="cc"
+         id="path2472"
+         d="M 56.337651,13.824774 L 56.337651,470.39448"
+         style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" />
+      <path
+         style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:1.0976665px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+         d="M 576.17828,442.75873 L 25.961024,442.07302"
+         id="path2474"
+         sodipodi:nodetypes="cc" />
+      <path
+         sodipodi:nodetypes="cc"
+         id="path2476"
+         d="M 576.17828,393.97536 L 25.961023,393.28965"
+         style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:1.0976665px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" />
+      <path
+         style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:1.0976665px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+         d="M 576.17828,345.19198 L 25.961024,344.50627"
+         id="path2478"
+         sodipodi:nodetypes="cc" />
+      <path
+         sodipodi:nodetypes="cc"
+         id="path2480"
+         d="M 576.17827,296.4086 L 25.961033,295.72289"
+         style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:1.0976665px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" />
+      <path
+         style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:1.0976665px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+         d="M 576.17828,247.62523 L 25.961023,246.93953"
+         id="path2482"
+         sodipodi:nodetypes="cc" />
+      <path
+         sodipodi:nodetypes="cc"
+         id="path2484"
+         d="M 576.17828,198.84186 L 25.961022,198.15616"
+         style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:1.0976665px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" />
+      <path
+         style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:1.0976665px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+         d="M 576.17828,150.0585 L 25.961022,149.3728"
+         id="path2486"
+         sodipodi:nodetypes="cc" />
+      <path
+         sodipodi:nodetypes="cc"
+         id="path2488"
+         d="M 576.17828,101.27513 L 25.961024,100.58943"
+         style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:1.0976665px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" />
+      <path
+         style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:1.0976665px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+         d="M 576.17828,52.491767 L 25.961023,51.806066"
+         id="path2490"
+         sodipodi:nodetypes="cc" />
+    </g>
+    <rect
+       style="opacity:1;fill:#ffcc00;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
+       id="rect2543"
+       width="59.418629"
+       height="47.241428"
+       x="362.08676"
+       y="394.39734" />
+    <path
+       sodipodi:nodetypes="cz"
+       id="path4176"
+       d="M 556.5153,384.47415 C 424.53012,381.6435 428.74262,382.1661 394.51488,418.39421"
+       style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:1.28850329;stroke-linecap:butt;stroke-linejoin:miter;marker-end:url(#Arrow1Mend);stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" />
+    <text
+       xml:space="preserve"
+       style="font-size:12px;font-style:normal;font-weight:normal;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans"
+       x="-430.07449"
+       y="419.41727"
+       id="text2545"
+       transform="matrix(0,-1,1,0,0,0)"><tspan
+         sodipodi:role="line"
+         id="tspan2547"
+         x="-430.07449"
+         y="419.41727">right</tspan></text>
+    <text
+       xml:space="preserve"
+       style="font-size:12px;font-style:normal;font-weight:normal;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans"
+       x="377.93173"
+       y="403.49356"
+       id="text2549"><tspan
+         sodipodi:role="line"
+         id="tspan2551"
+         x="377.93173"
+         y="403.49356">top</tspan></text>
+    <text
+       xml:space="preserve"
+       style="font-size:12px;font-style:normal;font-weight:normal;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans"
+       x="373.23694"
+       y="440.17163"
+       id="text2553"><tspan
+         sodipodi:role="line"
+         id="tspan2555"
+         x="373.23694"
+         y="440.17163">bottom</tspan></text>
+    <text
+       xml:space="preserve"
+       style="font-size:12px;font-style:normal;font-weight:normal;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans"
+       x="-425.96652"
+       y="371.58902"
+       id="text2557"
+       transform="matrix(0,-1,1,0,0,0)"><tspan
+         sodipodi:role="line"
+         id="tspan2559"
+         x="-425.96652"
+         y="371.58902">left</tspan></text>
+    <rect
+       y="296.68671"
+       x="179.13611"
+       height="47.241428"
+       width="59.418629"
+       id="rect2561"
+       style="opacity:1;fill:#ffd42a;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" />
+    <rect
+       style="opacity:1;fill:#ffd42a;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
+       id="rect2563"
+       width="59.418629"
+       height="47.241428"
+       x="179.13611"
+       y="247.83144" />
+    <rect
+       y="345.54202"
+       x="178.9894"
+       height="47.241428"
+       width="59.418629"
+       id="rect2565"
+       style="opacity:1;fill:#ffd42a;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" />
+    <rect
+       style="opacity:1;fill:#ffd42a;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
+       id="rect2567"
+       width="59.418629"
+       height="47.241428"
+       x="118.25037"
+       y="345.24863" />
+    <rect
+       y="394.25061"
+       x="118.25037"
+       height="47.241428"
+       width="59.418629"
+       id="rect2569"
+       style="opacity:1;fill:#ffd42a;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" />
+    <g
+       transform="matrix(0.8736931,0.4864775,-0.4864775,0.8736931,358.82593,250.32071)"
+       id="g2523">
+      <rect
+         style="opacity:1;fill:#0000ff;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
+         id="rect2525"
+         width="175.71396"
+         height="6.5079241"
+         x="-267.94122"
+         y="-102.97705"
+         transform="matrix(0,-1,1,0,0,0)" />
+      <rect
+         style="opacity:1;fill:#ff0000;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
+         id="rect2527"
+         width="10.41268"
+         height="10.41268"
+         x="-94.237869"
+         y="-104.92943"
+         transform="matrix(0,-1,1,0,0,0)" />
+      <rect
+         style="opacity:1;fill:#ff0000;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
+         id="rect2529"
+         width="10.41268"
+         height="10.41268"
+         x="-268.19696"
+         y="-104.92943"
+         transform="matrix(0,-1,1,0,0,0)" />
+    </g>
+    <rect
+       style="opacity:1;fill:#ffd42a;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
+       id="rect2571"
+       width="59.418629"
+       height="47.241428"
+       x="57.071198"
+       y="199.26952" />
+    <rect
+       y="150.41425"
+       x="57.071198"
+       height="47.241428"
+       width="59.418629"
+       id="rect2573"
+       style="opacity:1;fill:#ffd42a;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" />
+    <rect
+       style="opacity:1;fill:#ffd42a;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
+       id="rect2575"
+       width="59.418629"
+       height="47.241428"
+       x="56.924484"
+       y="248.12483" />
+    <rect
+       y="52.410213"
+       x="57.217915"
+       height="47.241428"
+       width="59.418629"
+       id="rect2577"
+       style="opacity:1;fill:#ffd42a;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" />
+    <rect
+       style="opacity:1;fill:#ffd42a;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
+       id="rect2579"
+       width="59.418629"
+       height="47.241428"
+       x="57.217915"
+       y="101.4122" />
+    <g
+       id="g2512"
+       transform="translate(198.94233,-1.7605516)">
+      <rect
+         transform="matrix(0,-1,1,0,0,0)"
+         y="-102.97705"
+         x="-267.94122"
+         height="6.5079241"
+         width="175.71396"
+         id="rect3159"
+         style="opacity:1;fill:#0000ff;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" />
+      <rect
+         transform="matrix(0,-1,1,0,0,0)"
+         y="-104.92943"
+         x="-94.237869"
+         height="10.41268"
+         width="10.41268"
+         id="rect3157"
+         style="opacity:1;fill:#ff0000;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" />
+      <rect
+         transform="matrix(0,-1,1,0,0,0)"
+         y="-104.92943"
+         x="-268.19696"
+         height="10.41268"
+         width="10.41268"
+         id="rect2385"
+         style="opacity:1;fill:#ff0000;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" />
+    </g>
+    <path
+       sodipodi:nodetypes="cz"
+       id="path4184"
+       d="M 185.15857,361.6537 C 203.7288,384.01054 200.54871,421.06701 170.56495,430.12244"
+       style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:1.0380131;stroke-linecap:butt;stroke-linejoin:miter;marker-end:url(#Arrow1Mend);stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" />
+    <path
+       style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:1.0380131;stroke-linecap:butt;stroke-linejoin:miter;marker-end:url(#Arrow1Mend);stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
+       d="M 185.15857,361.6537 C 203.7288,384.01054 162.40343,409.33 147.09093,374.37164"
+       id="path2581"
+       sodipodi:nodetypes="cz" />
+    <path
+       sodipodi:nodetypes="cz"
+       id="path2583"
+       d="M 185.15857,361.6537 C 203.7288,384.01054 207.00407,354.7529 224.5552,376.71904"
+       style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:1.0380131;stroke-linecap:butt;stroke-linejoin:miter;marker-end:url(#Arrow1Mend);stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" />
+    <path
+       style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:1.0380131;stroke-linecap:butt;stroke-linejoin:miter;marker-end:url(#Arrow1Mend);stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
+       d="M 185.15857,361.6537 C 211.94471,371.09983 230.47809,340.66849 227.48945,315.09973"
+       id="path2585"
+       sodipodi:nodetypes="cz" />
+    <path
+       sodipodi:nodetypes="cz"
+       id="path2587"
+       d="M 185.15857,361.6537 C 211.94471,371.09983 211.11202,301.3495 208.12338,275.78074"
+       style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:1.0380131;stroke-linecap:butt;stroke-linejoin:miter;marker-end:url(#Arrow1Mend);stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" />
+    <rect
+       y="101.85236"
+       x="484.00494"
+       height="47.241428"
+       width="59.418629"
+       id="rect2589"
+       style="opacity:1;fill:#ffd42a;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" />
+    <rect
+       style="opacity:1;fill:#ffd42a;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
+       id="rect2591"
+       width="59.418629"
+       height="47.241428"
+       x="301.20102"
+       y="52.997051" />
+    <g
+       id="g2519"
+       transform="translate(-187.20532,-58.098202)">
+      <rect
+         y="188.69571"
+         x="681.85162"
+         height="6.5079241"
+         width="32.52243"
+         id="rect3167"
+         style="opacity:1;fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" />
+      <rect
+         style="opacity:1;fill:#ff0000;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
+         id="rect2517"
+         width="10.222111"
+         height="6.5079241"
+         x="681.85162"
+         y="188.69571" />
+    </g>
+    <g
+       transform="translate(-187.20532,-75.703718)"
+       id="g2531">
+      <rect
+         style="opacity:1;fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
+         id="rect2533"
+         width="32.52243"
+         height="6.5079241"
+         x="681.85162"
+         y="188.69571" />
+      <rect
+         y="188.69571"
+         x="681.85162"
+         height="6.5079241"
+         width="10.222111"
+         id="rect2535"
+         style="opacity:1;fill:#ff0000;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" />
+    </g>
+    <g
+       id="g2537"
+       transform="translate(-366.78158,-113.26215)">
+      <rect
+         y="188.69571"
+         x="681.85162"
+         height="6.5079241"
+         width="32.52243"
+         id="rect2539"
+         style="opacity:1;fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" />
+      <rect
+         style="opacity:1;fill:#ff0000;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
+         id="rect2541"
+         width="10.222111"
+         height="6.5079241"
+         x="681.85162"
+         y="188.69571" />
+    </g>
+    <text
+       xml:space="preserve"
+       style="font-size:15.46203995px;font-style:normal;font-weight:normal;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans"
+       x="195.73514"
+       y="418.3869"
+       id="text3374"><tspan
+         sodipodi:role="line"
+         x="195.73514"
+         y="418.3869"
+         id="tspan3384">OBJECT-&gt;tiles</tspan></text>
+    <text
+       id="text2617"
+       y="142.56715"
+       x="120.61827"
+       style="font-size:15.46203995px;font-style:normal;font-weight:normal;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans"
+       xml:space="preserve"><tspan
+         id="tspan2619"
+         y="142.56715"
+         x="120.61827"
+         sodipodi:role="line">TILE-&gt;objects</tspan></text>
+    <path
+       style="fill:none;fill-opacity:0.75000000000000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.289;stroke-linecap:butt;stroke-linejoin:miter;marker-end:url(#Arrow1Mend);stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;marker-start:url(#DotM)"
+       d="M 70.593315,283.0533 C 9.6845049,278.47574 28.887252,239.663 96.596634,222.05709"
+       id="path4188"
+       sodipodi:nodetypes="cz" />
+    <path
+       sodipodi:nodetypes="cz"
+       id="path4181"
+       d="M 74.114418,238.45266 C 13.205608,233.8751 30.354378,230.27339 98.06376,212.66748"
+       style="fill:none;fill-opacity:0.75000000000000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.289;stroke-linecap:butt;stroke-linejoin:miter;marker-end:url(#Arrow1Mend);stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;marker-start:url(#DotM)" />
+    <path
+       style="fill:none;fill-opacity:0.75000000000000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.289;stroke-linecap:butt;stroke-linejoin:miter;marker-end:url(#Arrow1Mend);stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;marker-start:url(#DotM)"
+       d="M 74.114418,169.2043 C 54.285145,185.75336 62.613236,203.09658 98.06376,202.10417"
+       id="path4183"
+       sodipodi:nodetypes="cz" />
+    <path
+       sodipodi:nodetypes="cz"
+       id="path4185"
+       d="M 78.809222,125.77736 C 8.867866,157.74552 32.720356,216.78605 98.357186,206.50555"
+       style="fill:none;fill-opacity:0.75000000000000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.289;stroke-linecap:butt;stroke-linejoin:miter;marker-end:url(#Arrow1Mend);stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;marker-start:url(#DotM)" />
+    <path
+       style="fill:none;fill-opacity:0.75000000000000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.289;stroke-linecap:butt;stroke-linejoin:miter;marker-end:url(#Arrow1Mend);stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;marker-start:url(#DotM)"
+       d="M 79.982923,76.481916 C 3.9835784,112.30516 -0.94683086,215.85695 98.06376,209.43981"
+       id="path4187"
+       sodipodi:nodetypes="cz" />
+  </g>
+</svg>
diff --git a/libgeda/include/struct.h b/libgeda/include/struct.h
index 0040b69..87aeb49 100644
--- a/libgeda/include/struct.h
+++ b/libgeda/include/struct.h
@@ -364,6 +364,13 @@ struct st_undo {
   UNDO *next;
 };
 
+
+/*! \brief structure to split a page into tiles
+ *  
+ *  This structure is used to track objects that are inside
+ *  a smaller TILE of o a page.
+ *  See s_tile.c for further informations.
+ */
 struct st_tile {
   GList *objects;
 
diff --git a/libgeda/src/s_conn.c b/libgeda/src/s_conn.c
index 45b914c..677c7cd 100644
--- a/libgeda/src/s_conn.c
+++ b/libgeda/src/s_conn.c
@@ -45,7 +45,7 @@
  *  between connections and OBJECTS:
  *  
  *  \image html s_conn_overview.png
- *  \image latex s_conn_overview.png "Connection overview" width=14cm
+ *  \image latex s_conn_overview.pdf "Connection overview" width=14cm
  */
 
 
diff --git a/libgeda/src/s_tile.c b/libgeda/src/s_tile.c
index c6e350d..0a6c2e3 100644
--- a/libgeda/src/s_tile.c
+++ b/libgeda/src/s_tile.c
@@ -32,10 +32,28 @@
 #include <dmalloc.h>
 #endif
 
-/*! \todo Finish function documentation!!!
- *  \brief
- *  \par Function Description
+/*! \file s_tile.c
+ *  \brief Splits a page into tiles
  *
+ *  With the <b>tiles</b> a page (st_page) is splitted into several smaller areas.
+ *  The number of tiles is defined by <b>MAX_TILES_X</b> and <b>MAX_TILES_Y</b>.
+ *  
+ *  Each <b>TILE</b> (st_tile) can contain zero to many <b>OBJECTS</b> 
+ *  (st_object) and each OBJECT can be in one or more TILES.
+ * 
+ *  The usage of tiles makes it easier to find geometrical connections between
+ *  the line objects (OBJ_NET, OBJ_PIN, OBJ_BUS).
+ *  
+ *  \image html s_tile_overview.png
+ *  \image latex s_tile_overview.pdf "Tile overview" width=14cm
+ */
+
+/*! \brief initialize the array of tiles
+ *  \par Function Description
+ *  This function splits the page size into tiles and initializes
+ *  every tile.
+ *  \param toplevel TOPLEVEL structure
+ *  \param p_current The page that gets the tiles.
  */
 void s_tile_init(TOPLEVEL * toplevel, PAGE * p_current)
 {
@@ -82,10 +100,14 @@ void s_tile_init(TOPLEVEL * toplevel, PAGE * p_current)
 #endif
 }
 
-/*! \todo Finish function documentation!!!
- *  \brief
+/*! \brief add a line object to the tiles
  *  \par Function Description
- *
+ *  This function takes a single line object and adds it to
+ *  every tile that is touched by the line. 
+ *  It also adds all tiles that are touched by the object to 
+ *  the objects tile list.
+ *  \param toplevel The TOPLEVEL structure
+ *  \param object The line OBJECT to add
  */
 void s_tile_add_line_object (TOPLEVEL *toplevel, OBJECT *object)
 {
@@ -277,10 +299,11 @@ void s_tile_add_line_object (TOPLEVEL *toplevel, OBJECT *object)
   }
 }
 
-/*! \todo Finish function documentation!!!
- *  \brief
+/*! \brief remove an object from the tiles
  *  \par Function Description
- *
+ *  This function remose an object from all tiles that are refered by the object.
+ *  It also removes the object from each tile that contained the object.
+ *  \param object The object to remove
  */
 void s_tile_remove_object(OBJECT *object)
 {
@@ -300,10 +323,12 @@ void s_tile_remove_object(OBJECT *object)
   object->tiles = NULL;
 }
 
-/*! \todo Finish function documentation!!!
- *  \brief
+/*! \brief update the tile informations of an object
  *  \par Function Description
- *
+ *  This function updates the tile informations of an object.
+ *  This function can be used if an object has been moved on the page
+ *  \param toplevel The TOPLEVEL structure
+ *  \param object The OBJECT to update
  */
 void s_tile_update_object(TOPLEVEL * toplevel, OBJECT * object)
 {
@@ -316,7 +341,7 @@ void s_tile_update_object(TOPLEVEL * toplevel, OBJECT * object)
  *  \par Function Description
  *  This functions collects all object lists of the tiles that are touched
  *  by the given rectangle (x1,y1), (x2,y2).
- *  Note: The caller has to g_list_free() the returned list.
+ *  \note The caller has to g_list_free() the returned list.
  */
 GList* s_tile_get_objectlists(TOPLEVEL *toplevel, int world_x1, int world_y1,
 			      int world_x2, int world_y2)
@@ -364,10 +389,10 @@ GList* s_tile_get_objectlists(TOPLEVEL *toplevel, int world_x1, int world_y1,
 }
 
 
-/*! \todo Finish function documentation!!!
- *  \brief
+/*! \brief print all objects for each tile
  *  \par Function Description
- *
+ *  Debugging function to print all object names that are inside
+ *  the tiles.
  */
 void s_tile_print(TOPLEVEL * toplevel)
 {
@@ -397,10 +422,10 @@ void s_tile_print(TOPLEVEL * toplevel)
 
 }
 
-/*! \todo Finish function documentation!!!
- *  \brief
+/*! \brief free all tiles
  *  \par Function Description
- *
+ *  This function frees all tiles from the given page.
+ *  \param p_current The PAGE where the tiles are removed.
  */
 void s_tile_free_all(PAGE * p_current)
 {

commit 8731bb244e698f067ee18ad932240ba2b266a007
Author: Werner Hoch <werner.ho@xxxxxx>
Date:   Fri Oct 17 20:11:46 2008 +0200

    doxygen comments for the connection system st_conn and s_conn.c

diff --git a/libgeda/include/struct.h b/libgeda/include/struct.h
index 087c3eb..0040b69 100644
--- a/libgeda/include/struct.h
+++ b/libgeda/include/struct.h
@@ -301,15 +301,26 @@ struct st_object {
 }; 
 
 
+/*! \brief Structure for connections between OBJECTs
+ *
+ * The st_conn structure contains a single connection
+ * to another object.
+ * The connection system in s_conn.c uses this struct
+ */
 struct st_conn {
-  OBJECT *other_object;	/* The "other" object connected to this one */
-  int type;		/* Always in reference to how the "other" */
-				/* object is connected to the current one */
-  int x, y;		/* x, y coord of the connection */
-  int whichone;		/* which endpoint of the current object */
-				/* caused this connection */
-  int other_whichone;	/* which endpoint of the "other" object */
-				/* caused this connection */
+  /*! \brief The "other" object connected to this one */
+  OBJECT *other_object;
+  /*! \brief type of connection. Always in reference to how the "other"
+    object is connected to the current one */
+  int type;
+  /*! \brief x coord of the connection position */
+  int x;
+  /*! \brief y coord of the connection position */
+  int y;		
+  /*! \brief which endpoint of the current object caused this connection */
+  int whichone;
+  /*! \brief which endpoint of the "other" object caused this connection */
+  int other_whichone;
 };
 
 /* this structure is used in gschem to add rippers when drawing nets */
diff --git a/libgeda/src/s_conn.c b/libgeda/src/s_conn.c
index 085bf1d..45b914c 100644
--- a/libgeda/src/s_conn.c
+++ b/libgeda/src/s_conn.c
@@ -31,10 +31,30 @@
 #include <dmalloc.h>
 #endif
 
-/*! \todo Finish function documentation!!!
- *  \brief
+/*! \file s_conn.c
+ *  \brief The connection system
+ *  
+ *  The connection system stores and tracks the connections between
+ *  connected <b>OBJECTS</b>. The connected OBJECTS are either
+ *  <b>pins</b>, <b>nets</b> and <b>busses</b>.
+ *  
+ *  Each connection object with the type <b>st_conn</b> represents a
+ *  single unidirectional relation to another object.
+ *  
+ *  The following figure with two nets and a pin shows the relations
+ *  between connections and OBJECTS:
+ *  
+ *  \image html s_conn_overview.png
+ *  \image latex s_conn_overview.png "Connection overview" width=14cm
+ */
+
+
+/*! \brief create a new connection object
  *  \par Function Description
- *
+ *  create a single st_conn object and initialize it with the 
+ *  given parameters.
+ *  
+ *  \return The new connection object
  */
 CONN *s_conn_return_new(OBJECT * other_object, int type, int x, int y,
 			int whichone, int other_whichone)
@@ -57,10 +77,12 @@ CONN *s_conn_return_new(OBJECT * other_object, int type, int x, int y,
   return (new_conn);
 }
 
-/*! \todo Finish function documentation!!!
- *  \brief
+/*! \brief check if a connection is uniq in a list
  *  \par Function Description
- *
+ *  This function checks if there's no identical connection
+ *  in the list of connections.
+ *  \param conn_list list of connection objects
+ *  \param input_conn single connection object.
  *  \return TRUE if the CONN structure is unique, FALSE otherwise.
  */
 int s_conn_uniq(GList * conn_list, CONN * input_conn)
@@ -84,10 +106,14 @@ int s_conn_uniq(GList * conn_list, CONN * input_conn)
   return (TRUE);
 }
 
-/*! \todo Finish function documentation!!!
- *  \brief
+/*! \brief remove a object from the connection list of another object
  *  \par Function Description
- *
+ *  This function removes the OBJECT <b>to_remove</b> from the connection
+ *  list of the OBJECT <b>other_object</b>.
+ *  \param toplevel (currently not used)
+ *  \param other_object OBJECT from that the to_remove OBJECT needs to be removed
+ *  \param to_remove OBJECT to remove
+ *  \return TRUE if a connection has been deleted, FALSE otherwise
  */
 int s_conn_remove_other(TOPLEVEL * toplevel, OBJECT * other_object,
 			OBJECT * to_remove)
@@ -132,10 +158,12 @@ int s_conn_remove_other(TOPLEVEL * toplevel, OBJECT * other_object,
     return (FALSE);
 }
 
-/*! \todo Finish function documentation!!!
- *  \brief
+/*! \brief remove an OBJECT from the connection system
  *  \par Function Description
- *
+ *  This function removes all connections from and to the OBJECT
+ *  <b>to_remove</b>.
+ *  \param toplevel (currently not used)
+ *  \param to_remove OBJECT to unconnected from all other objects
  */
 void s_conn_remove(TOPLEVEL * toplevel, OBJECT * to_remove)
 {
@@ -185,9 +213,13 @@ void s_conn_remove(TOPLEVEL * toplevel, OBJECT * to_remove)
 #endif
 }
 
-/*! \todo Finish function documentation!!!
- *  \brief
+/*! \brief remove a complex OBJECT from the connection system
  *  \par Function Description
+ *  This function removes all connections from and to the underlying 
+ *  OBJECTS of the given complex OBJECT
+ *  <b>to_remove</b>.
+ *  \param toplevel (currently not used)
+ *  \param to_remove OBJECT to unconnected from all other objects
  *
  */
 void s_conn_remove_complex(TOPLEVEL * toplevel, OBJECT * to_remove)
@@ -213,10 +245,14 @@ void s_conn_remove_complex(TOPLEVEL * toplevel, OBJECT * to_remove)
   
 }
 
-/*! \todo Finish function documentation!!!
- *  \brief
+/*! \brief Checks if a point is a midpoint of an OBJECT
  *  \par Function Description
- *
+ *  Checks if the point (<b>x</b>,<b>y</b>) is on the OBJECT
+ *  and between it's endpoints.
+ *  \return TRUE if the point is a midpoint of the OBJECT. FALSE 
+ *  if the point is not a midpoinit or if the OBJECT is not a 
+ *  NET a PIN or a BUS or if the OBJECT 
+ *  has neither horizontal nor vertical orientation. 
  */
 OBJECT *s_conn_check_midpoint(OBJECT *o_current, int x, int y)
 {
@@ -263,10 +299,14 @@ OBJECT *s_conn_check_midpoint(OBJECT *o_current, int x, int y)
   return(NULL);
 }
 
-/*! \todo Finish function documentation!!!
- *  \brief
+/*! \brief add an OBJECT to the connection system
  *  \par Function Description
- *
+ *  This function searches for all geometrical conections of the OBJECT
+ *  <b>object</b> to all other connectable objects. It adds connections
+ *  to the object and from all other
+ *  objects to this one.
+ *  \param toplevel (currently not used)
+ *  \param object OBJECT to add into the connection system
  */
 void s_conn_update_object(TOPLEVEL * toplevel, OBJECT * object)
 {
@@ -668,10 +708,12 @@ void s_conn_update_object(TOPLEVEL * toplevel, OBJECT * object)
 #endif
 }
 
-/*! \todo Finish function documentation!!!
- *  \brief
+/*! \brief add an complex OBJECT to the connection system
  *  \par Function Description
- *
+ *  This function adds all underlying OBJECTs of a complex OBJECT
+ *  <b>complex</b> into the connection system.
+ *  \param toplevel (currently not used)
+ *  \param object complex OBJECT to add into the connection system
  */
 void s_conn_update_complex(TOPLEVEL * toplevel, OBJECT * complex)
 {
@@ -692,10 +734,10 @@ void s_conn_update_complex(TOPLEVEL * toplevel, OBJECT * complex)
 
 }
 
-/*! \todo Finish function documentation!!!
- *  \brief
+/*! \brief print all connections of a connection list
  *  \par Function Description
- *
+ *  This is a debugging function to print a List of connections.
+ *  \param conn_list GList of connection objects
  */
 void s_conn_print(GList * conn_list)
 {
@@ -753,10 +795,15 @@ int s_conn_net_search(OBJECT* new_net, int whichone, GList * conn_list)
   return FALSE;
 }
 
-/*! \todo Finish function documentation!!!
- *  \brief
+/*! \brief get a list of all objects connected to this one
  *  \par Function Description
- *
+ *  This function gets all other_object from the connection
+ *  list of the current object. If an <b>input_list</b> is given, the other
+ *  objects are appended to that list. If the input list is <b>NULL</b>, a new
+ *  list is returned
+ *  \param input_list GList of OBJECT's or NULL
+ *  \param object OBJECT to get other OBJECTs from
+ *  \return A GList of objects
  *  \warning
  *  Caller must g_list_free returned GList pointer.
  *  Do not free individual data items in list.
@@ -784,10 +831,16 @@ GList *s_conn_return_others(GList *input_list, OBJECT *object)
   return(return_list);
 }
 
-/*! \todo Finish function documentation!!!
- *  \brief
+/*! \brief get a list of all objects connected to this complex one
  *  \par Function Description
- *
+ *  This function gets all other_object from the connection
+ *  list of all underlying OBJECTs of the given complex OBJECT.
+ *  If an <b>input_list</b> is given, the other
+ *  objects are appended to that list. If the input list is <b>NULL</b>, a new
+ *  list is returned
+ *  \param input_list GList of OBJECT's or NULL
+ *  \param object complex OBJECT to get other objects from
+ *  \return A GList of objects
  *  \warning
  *  Caller must g_list_free returned GList pointer.
  *  Do not free individual data items in list.




_______________________________________________
geda-cvs mailing list
geda-cvs@xxxxxxxxxxxxxx
http://www.seul.org/cgi-bin/mailman/listinfo/geda-cvs