diff --git a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Arrangement_on_surface_2.txt b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Arrangement_on_surface_2.txt
index 19ae9af185a..69f88754e64 100644
--- a/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Arrangement_on_surface_2.txt
+++ b/Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Arrangement_on_surface_2.txt
@@ -1538,8 +1538,8 @@ test that verifies that a vertex of degree greater than \f$ 4\f$
exists. This implied that collinearity indeed exists as explained above.
\todo check advanced section is correctly colored
-\cgalAdvancedBegin
\subsection arr_ssecunb_rep Representation of Unbounded Arrangements
+\cgalAdvancedBegin
\cgalFigureBegin{typenormal,unb_dcel.gif}
A \sc{Dcel} representing an arrangement of four lines. Halfedges are drawn as thin arrows. The vertices \f$ v_1, \ldots, v_8\f$ lie at infinity, and are not associated with valid points. The halfedges that connect them are fictitious, and are not associated with concrete curves. The face denoted \f$ f_0\f$ (lightly shaded) is the fictitious "unbounded face" which lies outside the bounding rectangle (dashed) that bounds the actual arrangement. The four fictitious vertices \f$ v_{\rm bl}, v_{\rm tl}, v_{\rm br}\f$ and \f$ v_{\rm tr}\f$ represent the four corners of the bounding rectangle.
diff --git a/Combinatorial_map/doc/Combinatorial_map/Combinatorial_map.txt b/Combinatorial_map/doc/Combinatorial_map/Combinatorial_map.txt
index 631efea8d74..f721dfdabe3 100644
--- a/Combinatorial_map/doc/Combinatorial_map/Combinatorial_map.txt
+++ b/Combinatorial_map/doc/Combinatorial_map/Combinatorial_map.txt
@@ -943,23 +943,23 @@ Section \ref sseclinkdarts "Sewing Orbits and Linking Darts");
The `CombinatorialMap` defines two groups of methods to modify the
\f$ \beta\f$ pointers of existing darts.
-\todo check the advanced is working in the
+\todo check the advanced is working nice here
-
-- The \ref CombinatorialMap::sew "sew" and \ref CombinatorialMap::unsew "unsew"
- methods iterate over two orbits in
- order to link or unlink specific darts two by two. Intuitively, a
- \ref CombinatorialMap::sew "sew" operation glues two i-cells by identifying two of
- their (i-1)-cells (see example in \cgalFigureRef{figexemplesew}
- where \ref CombinatorialMap::sew "sew<3>" is used to glue two 3-cells along one 2-cell).
- Reciprocally, a \ref CombinatorialMap::unsew "unsew" operation un-glues
- two i-cells which
- were glued along one of their (i-1)-cells.
- These methods guarantee that given a valid combinatorial map and a
- possible operation we obtain a valid combinatorial map as result of
- the operation.
-
-
- \cgalAdvancedBegin
+
+The \ref CombinatorialMap::sew "sew" and \ref CombinatorialMap::unsew "unsew"
+ methods iterate over two orbits in
+order to link or unlink specific darts two by two. Intuitively, a
+\ref CombinatorialMap::sew "sew" operation glues two i-cells by identifying two of
+their (i-1)-cells (see example in \cgalFigureRef{figexemplesew}
+where \ref CombinatorialMap::sew "sew<3>" is used to glue two 3-cells along one 2-cell).
+Reciprocally, a \ref CombinatorialMap::unsew "unsew" operation un-glues
+two i-cells which
+were glued along one of their (i-1)-cells.
+These methods guarantee that given a valid combinatorial map and a
+possible operation we obtain a valid combinatorial map as result of
+the operation.
+
+\cgalAdvancedBegin
The \ref CombinatorialMap::link_beta "link_beta" and
\ref CombinatorialMap::unlink_beta "unlink_beta" methods only modify
the pointer of two darts: the obtained combinatorial maps may be not
@@ -967,8 +967,8 @@ The `CombinatorialMap` defines two groups of methods to modify the
in a specific algorithm, for example to modify locally a
combinatorial map in a really fast way. In such a case, additional
operations may be needed to restore the validity conditions.
- \cgalAdvancedEnd
-
+\cgalAdvancedEnd
+
Linking two darts d1 and d2 by \f$ \beta_i\f$, with 2\f$
\leq\f$i\f$ \leq\f$d and d1\f$ \neq\f$d2,
diff --git a/Documentation/Doxyfile b/Documentation/Doxyfile
index 7f61ee88226..4fed530f479 100644
--- a/Documentation/Doxyfile
+++ b/Documentation/Doxyfile
@@ -241,7 +241,8 @@ ALIASES += "cgalHasModel=\xrefitem hasModels \"Has Models\" \"Has Model Relation
ALIASES += "cgalDebug=\par \"Debug\""
ALIASES += "cgalAdvancedBegin= Advanced
"
ALIASES += "cgalAdvancedEnd=
"
-ALIASES += "cgalAdvancedFunction=This is an advanced functions."
+ALIASES += "cgalAdvancedFunction=This is an advanced function."
+ALIASES += "cgalAdvancedClass=This is an advanced class."
ALIASES += "cgalPkgPicture{1}= \n \image html \1 \n
"
diff --git a/Documentation/doc/Installation.txt b/Documentation/doc/Installation.txt
index f7c01d289b2..403a392b903 100644
--- a/Documentation/doc/Installation.txt
+++ b/Documentation/doc/Installation.txt
@@ -330,12 +330,13 @@ such as `CMAKE_CXX_FLAGS`.
The command line tool `cmake` accepts CMake variables as arguments of the form `-D:=`, as
in the example above, but this is only useful if you already know which variables need to be explicitly defined.
-\cgalAdvanced CMake keeps the variables that a user can manipulate in a
+\cgalAdvancedBegin
+CMake keeps the variables that a user can manipulate in a
so-called CMake cache, a simple text file named
`CMakeCache.txt`, whose entries are of the form
`VARIABLE:TYPE=VALUE`. Advanced users can manually edit this file,
instead of going through the interactive configuration session.
-
+\cgalAdvancedEnd
The configuration process not only determines the location of the required dependencies, it also dynamically generates a
`compiler_config.h` file, which encodes the properties of your system and a special file named
@@ -709,7 +710,8 @@ The "Debug" argument is needed because CMake creates solution files for
all four configurations, and you need to explicitly choose one when building
(the other choices are Release, RelWithDebInfo and MinSizeRel).
-\cgalAdvanced The build files produced by CMake are autoconfigured. That
+\cgalAdvancedBegin
+The build files produced by CMake are autoconfigured. That
is, if you change any of the dependencies, the build step
automatically goes all the way back to the configuration step. This
way, once the target has been configured the very first time by
@@ -718,6 +720,7 @@ again. Rebuilding will call itself `cmake` and re-generate the
build file whenever needed. Keep this in mind if you configure \cgal
for the Visual Studio IDE since a build could then change the
solution/project file in-place and VS will prompt you to reload it.
+\cgalAdvancedEnd
If you have turned on the configuration of examples
(`-DWITH_examples=ON`) and/or demos (`-DWITH_demos=ON`), there will be additional
@@ -741,9 +744,11 @@ make Straight_skeleton_2_demo
-\cgalAdvanced When using `UNIX Makefiles` you can find out the
+\cgalAdvancedBegin
+When using `UNIX Makefiles` you can find out the
exact name of the example or demo target of a particular package by
typing `make help | grep `.
+\cgalAdvancedEnd
\section secinstalling Installing CGAL
@@ -772,10 +777,12 @@ make install # install
If you use a generator that produces IDE files (for Visual Studio for instance) there will be an optional
`INSTALL` project, which you will be able to "build" to execute the installation step.
-\cgalAdvanced The files are copied into a directory tree relative to the installation directory determined by the
+\cgalAdvancedBegin
+The files are copied into a directory tree relative to the installation directory determined by the
CMake variable `CMAKE_INSTALL_PREFIX`. This variable defaults to `/usr/local` under \sc{Unix}-like operating systems
and `C:\Program Files` under Windows. If you want to install to a different location, you must override that CMake
variable explicitly at the configuration time and not when executing the install step.
+\cgalAdvancedEnd
The file `CGALConfig.cmake` is installed by default in
`$CMAKE_INSTALLED_PREFIX/lib/CGAL-x.y`.
@@ -1139,12 +1146,13 @@ provide your own flags and this time they will not be overridden.
When using the interactive `cmake-gui` the first press on `Configure` unlocks
the flags, so that you can edit them as needed.
-\cgalAdvanced The locking of flags is controlled by the variable
+\cgalAdvancedBegin
+The locking of flags is controlled by the variable
`CGAL_DONT_OVERRIDE_CMAKE_FLAGS` which starts out FALSE and is
toggled right after the flags have been loaded from
`CGALConfig.cmake`.
-\cgalAdvanced If you use the command line tool you can specify flags directly by setting the
+If you use the command line tool you can specify flags directly by setting the
controlling variable right up front:
\code{.sh}
@@ -1153,6 +1161,7 @@ cmake -DCMAKE_BUILD_TYPE=Release -DCMAKE_CXX_FLAGS=-g .
cd CGAL-x.y/examples/Straight_skeleton_2
cmake -DCGAL_DIR=CGAL-x.y -DCMAKE_BUILD_TYPE=Debug -DCMAKE_CXX_FLAGS=-O2 -DCGAL_DONT_OVERRIDE_CMAKE_FLAGS=TRUE .
\endcode
+\cgalAdvancedEnd
\section installation_summary Summary of CGAL's Configuration Variables
diff --git a/Documentation/doc/Preliminaries.txt b/Documentation/doc/Preliminaries.txt
index 7267ca46b4b..b41b42fe5c9 100644
--- a/Documentation/doc/Preliminaries.txt
+++ b/Documentation/doc/Preliminaries.txt
@@ -73,7 +73,9 @@ In this manual you will encounter sections marked as follows.
Some functionality is considered more advanced, for example because it is
relatively low-level, or requires special care to be properly used.
-\cgalAdvanced Such functionality is identified this way in the manual.
+\cgalAdvancedBegin
+Such functionality is identified this way in the manual.
+\cgalAdvancedEnd
\subsection debugging_support Debugging Support Features
diff --git a/Inscribed_areas/doc/Inscribed_areas/CGAL/Extremal_polygon_traits_2.h b/Inscribed_areas/doc/Inscribed_areas/CGAL/Extremal_polygon_traits_2.h
index 69d8abfa67c..d7a3335b8ef 100644
--- a/Inscribed_areas/doc/Inscribed_areas/CGAL/Extremal_polygon_traits_2.h
+++ b/Inscribed_areas/doc/Inscribed_areas/CGAL/Extremal_polygon_traits_2.h
@@ -3,6 +3,7 @@ namespace CGAL {
/*!
\ingroup PkgInscribedAreas
+\cgalAdvancedClass
\cgalAdvancedBegin
The class `Extremal_polygon_area_traits_2` provides the types and
operations needed to compute a maximum area \f$ k\f$-gon \f$ P_k\f$ that can
@@ -107,6 +108,7 @@ Orientation_2 orientation_2_object();
/*!
\ingroup PkgInscribedAreas
+\cgalAdvancedClass
\cgalAdvancedBegin
The class `Extremal_polygon_perimeter_traits_2` provides the
types and operations needed to compute a maximum perimeter \f$
diff --git a/Polyhedron/doc/Polyhedron/CGAL/Polyhedron_3.h b/Polyhedron/doc/Polyhedron/CGAL/Polyhedron_3.h
index f93c08e5ed2..a80d6e52dd3 100644
--- a/Polyhedron/doc/Polyhedron/CGAL/Polyhedron_3.h
+++ b/Polyhedron/doc/Polyhedron/CGAL/Polyhedron_3.h
@@ -1569,8 +1569,8 @@ n */
\cgalAdvancedFunction
\cgalAdvancedBegin
calls the `Modifier_base::operator()()` of the modifier `m`.
- \pre The polyhedral surface must be valid when the modifier returns from execution.
\cgalAdvancedEnd
+ \pre The polyhedral surface must be valid when the modifier returns from execution.
*/
void delegate( CGAL::Modifier_base& m);
diff --git a/Triangulation_2/doc/TDS_2/CGAL/Triangulation_data_structure_2.h b/Triangulation_2/doc/TDS_2/CGAL/Triangulation_data_structure_2.h
index ada74f99a7e..375ac754126 100644
--- a/Triangulation_2/doc/TDS_2/CGAL/Triangulation_data_structure_2.h
+++ b/Triangulation_2/doc/TDS_2/CGAL/Triangulation_data_structure_2.h
@@ -70,8 +70,10 @@ typedef Compact_container Face_range;
/// @}
/// \name Operations
-/// \cgalAdvanced In addition to the interface documented in the concept,
+/// \cgalAdvancedBegin
+/// In addition to the interface documented in the concept,
/// the class offers the following functions.
+/// \cgalAdvancedEnd
/// @{
/*!
diff --git a/Triangulation_3/doc/TDS_3/Concepts/TriangulationDataStructure_3.h b/Triangulation_3/doc/TDS_3/Concepts/TriangulationDataStructure_3.h
index bad4ad9f0af..86ee5e81eaa 100644
--- a/Triangulation_3/doc/TDS_3/Concepts/TriangulationDataStructure_3.h
+++ b/Triangulation_3/doc/TDS_3/Concepts/TriangulationDataStructure_3.h
@@ -656,8 +656,8 @@ void decrease_dimension(Cell_handle c, int i);
\cgalAdvancedFunction
\cgalAdvancedBegin
Changes the orientation of all cells of the triangulation data structure.
-\pre `tds`.`dimension()` \f$ \geq1\f$.
\cgalAdvancedEnd
+\pre `tds`.`dimension()` \f$ \geq1\f$.
*/
void reorient();
@@ -722,8 +722,8 @@ Cell_handle n2, Cell_handle n3);
\cgalAdvancedFunction
\cgalAdvancedBegin
Removes the vertex from the triangulation data structure.
-\pre The vertex is a vertex of `tds`.
\cgalAdvancedEnd
+\pre The vertex is a vertex of `tds`.
*/
void delete_vertex( Vertex_handle v );
@@ -731,8 +731,8 @@ void delete_vertex( Vertex_handle v );
\cgalAdvancedFunction
\cgalAdvancedBegin
Removes the cell from the triangulation data structure.
-\pre The cell is a cell of `tds`.
\cgalAdvancedEnd
+\pre The cell is a cell of `tds`.
*/
void delete_cell( Cell_handle c );