+%\begin {itemize}
+%\item{\texttt{creaLib}} \\
+%a.k.a \texttt{crea}. It's a set of 'low level' utilities, needed by other
+%packages (an, sure, useful as well for people that doesn't use bbtkns.
+%\item{\texttt{creaContours}} \\
+%Provides sophisticated widgets for managing 3D R.O.I. (Regions of interest)
+%\item{\texttt{creaImageIO}} \\
+%Allows browsing, selectionning, ordering directories containing images of almost any type
+%(including DICOM)
+%\end {itemize}
+%\newpage
+
+% ==========================================
+%\vspace{0.5cm}
+\hrule
+\newpage
+\section{Using black boxes in \CPP programs}
+\label{cpp}
+% ==========================================
+
+A very useful feature is that you may use any widget
+black box within a \CPP program
+without worrying about writing a \wx main application.\\
+
+Let's look a the following bbs script :
+
+\begin{verbatim}
+# Load the packages
+load std
+load wx
+
+# Create the Objects
+new Slider slider
+new OutputText text
+new LayoutLine layout
+
+# Graphical pipeline
+connect slider.Widget layout.Widget1
+connect text.Widget layout.Widget2
+
+# Execution pipeline
+connect slider.BoxChange text.BoxExecute
+connect slider.Out text.In
+
+# Go!
+exec layout
+\end{verbatim}
+
+User wants to create a slider and an output text, within a LayoutLine,
+and display the slider value in the output text.
+Think about the (little!) nightmare to code the same, in 'raw C++', using wxWidgets.
+
+The following \CPP code does the same :
+
+\begin{verbatim}
+#include <bbtkFactory.h>
+#include <bbwxSlider.h>
+#include <bbwxOutputText.h>
+#include <bbwxLayoutLine.h>
+
+int main(int argv, char* argc[])
+{
+ try
+ {
+ // we need to intanciate a bbtk::Factory to be aware of the adaptors
+ bbtk::Factory::Pointer factory = bbtk::Factory::New();
+
+ // Load the packages
+ // ----------------
+ factory->LoadPackage("std");
+ factory->LoadPackage("wx");
+
+ // Create the Objects
+ // ------------------
+ bbwx::Slider::Pointer slider = bbwx::Slider::New("slider");
+ bbwx::OutputText::Pointer text = bbwx::OutputText::New("text");
+ bbwx::LayoutLine::Pointer layout = bbwx::LayoutLine::New("layout");
+
+ // Graphical pipeline
+ bbtk::Connection::Pointer c1 = bbtk::Connection::New(slider,"Widget",
+ layout,"Widget1");
+
+ bbtk::Connection::Pointer c2 = bbtk::Connection::New(text,"Widget",
+ layout,"Widget2");
+
+ // Execution pipeline
+ // ------------------
+
+ // We have to pass the 'factory', in order to call automatically an adaptor,
+ // if necessary.
+ bbtk::Connection::Pointer s2t = bbtk::Connection::New(slider,"Out",
+ text,"In",
+ factory);
+ bbtk::Connection::Pointer c3 = bbtk::Connection::New(slider,"BoxChange",
+ text,"BoxExecute");
+ layout->bbSetInputWinDialog(true);
+
+ // Go!
+ // ---
+ layout->bbExecute();
+
+ }
+ catch (bbtk::Exception e)
+ {
+ bbtk::MessageManager::SetMessageLevel("Error",1);
+ e.Print();
+ }
+}
+
+In this code, we use the headers of the \texttt{bbwx} \CPP library,
+which define the black boxes of the \texttt{wx} package.
+
+to be continued ...
+
+\end{verbatim}
+
+% ==========================================
+\hrule
+\newpage
+\section{\bbs language reference}
+\label{bbi-reference}
+% ==========================================
+
+% ==========================================
+\subsection{Pipeline creation and execution related commands}
+\label{bbi-reference-creation-execution}
+% ==========================================
+% See table \ref{bbi-reference-box}
+
+% ==========================================
+\begin{table}[!ht]
+\caption{\label{bbi-reference-box} \bbs pipeline creation and execution related commands.}