From e92240e94a4434b8b6a882d57f2cf928c9b3ad59 Mon Sep 17 00:00:00 2001
From: Joseph Mirabel <jmirabel@laas.fr>
Date: Fri, 20 May 2016 17:30:33 +0200
Subject: [PATCH] Add more documentation

---
 doc/main.hh                         |  5 +++++
 include/gepetto/gui/doc.hh          | 32 +++++++++++++++++++++++++++++
 include/gepetto/viewer/corba/doc.hh |  7 +++----
 3 files changed, 40 insertions(+), 4 deletions(-)
 create mode 100644 doc/main.hh
 create mode 100644 include/gepetto/gui/doc.hh

diff --git a/doc/main.hh b/doc/main.hh
new file mode 100644
index 0000000..678090e
--- /dev/null
+++ b/doc/main.hh
@@ -0,0 +1,5 @@
+/// \mainpage Gepetto Viewer user interfaces
+///
+/// This package provides two compatible interfaces to vizualise robots:
+/// \li a \ref gepetto_viewer_corba_introduction "command line interface in Python"
+/// \li a \ref gepetto_gui_introduction "graphical user interface" which is fully compatible with the Python interface.
diff --git a/include/gepetto/gui/doc.hh b/include/gepetto/gui/doc.hh
new file mode 100644
index 0000000..b93c63d
--- /dev/null
+++ b/include/gepetto/gui/doc.hh
@@ -0,0 +1,32 @@
+/// \page gepetto_gui_introduction Gepetto Gui introduction
+///
+/// Graphical user interface for the gepetto-viewer package.
+///
+/// \section gui_using_interface Using the interface
+///
+/// To start the interface, use
+/// \code{bash} gepetto-gui \endcode
+///
+/// To get some help on the command line options, use
+/// \code{bash} gepetto-gui --help \endcode
+///
+/// \section gui_extending_interface Extending the interface
+///
+/// There are two ways of extending the interface: Python and C++. Python
+/// plugins are easier to write than C++ plugins, but they do not offer
+/// full control of the interface (yet).
+///
+/// \subsection python_plugins Python plugins
+///
+/// See the documentation of gepetto::gui::PythonWidget to know how to write
+/// plugins in Python. You may have a look at the file
+/// \ref pyplugins/gepetto/gui/pythonwidget.py which is an example.
+///
+/// The Python console is a good tool for debugging. The following variables
+/// are accessible:
+/// \li \c mainWindow: gepetto::gui::MainWindow
+/// \li \c osg: the widget responsible for the first created window (class gepetto::gui::OSGWidget)
+///
+/// \subsection cpp_plugins C++ Plugins
+///
+/// See documentation of gepetto::gui::PluginInterface,  for details on how to write a plugin.
diff --git a/include/gepetto/viewer/corba/doc.hh b/include/gepetto/viewer/corba/doc.hh
index 21b6dca..12e1faa 100644
--- a/include/gepetto/viewer/corba/doc.hh
+++ b/include/gepetto/viewer/corba/doc.hh
@@ -1,5 +1,4 @@
-/// \mainpage
-/// \section gepetto_viewer_corba_introduction
+/// \page gepetto_viewer_corba_introduction Gepetto Viewer server
 ///
 /// This package implements a corba server embedding gepetto-viewer library.
 ///
@@ -7,9 +6,9 @@
 ///
 /// To use the graphical interface via python,
 /// \li start executable
-///     \code gepetto-viewer-server \endcode.
+///     \code{bash} gepetto-viewer-server \endcode.
 /// \li in a python terminal, create a client
-/// \code
+/// \code{py}
 /// from gepetto.corbaserver import Client
 /// client = Client ()
 /// # open a new window
-- 
GitLab