Better documentation structure.

SVN revision: 46472
This commit is contained in:
Christopher Michael 2010-02-25 18:46:21 +00:00
parent ec910dae73
commit 85cbec19a7
4 changed files with 120 additions and 79 deletions

View File

@ -506,7 +506,7 @@ WARN_LOGFILE =
# directories like "/usr/src/myproject". Separate the files or directories # directories like "/usr/src/myproject". Separate the files or directories
# with spaces. # with spaces.
INPUT = ../ INPUT = ./illume.dox ../
# This tag can be used to specify the character encoding of the source files # This tag can be used to specify the character encoding of the source files
# that doxygen parses. Internally doxygen uses the UTF-8 encoding, which is # that doxygen parses. Internally doxygen uses the UTF-8 encoding, which is

View File

@ -1,13 +1,28 @@
MAINTAINERCLEANFILES = Makefile.in MAINTAINERCLEANFILES = Makefile.in illume.dox
MODULE_TARNAME = illume2
MODULE_VERSION = 2.0
.PHONY: doc .PHONY: doc
PACKAGE_DOCNAME = $(MODULE_TARNAME)-$(MODULE_VERSION)-doc
if EFL_BUILD_DOC if EFL_BUILD_DOC
doc: all doc-clean:
rm -rf html/ latex/ man/ rm -rf html/ latex/ man/ xml/ $(PACKAGE_DOCNAME).tar*
doc: all doc-clean
$(efl_doxygen) $(efl_doxygen)
cp img/* html/ cp img/* html/
rm -rf $(PACKAGE_DOCNAME).tar*
mkdir -p $(PACKAGE_DOCNAME)/doc
cp -R html/ latex/ man/ $(PACKAGE_DOCNAME)/doc
tar cf $(PACKAGE_DOCNAME).tar $(PACKAGE_DOCNAME)/
bzip2 -9 $(PACKAGE_DOCNAME).tar
rm -rf $(PACKAGE_DOCNAME)/
mv $(PACKAGE_DOCNAME).tar.bz2 $(top_srcdir)
clean-local: doc-clean
else else
@ -16,7 +31,4 @@ doc:
endif endif
clean-local: EXTRA_DIST = Doxyfile $(wildcard img/*.*) e.css head.html foot.html illume.dox.in
@rm -rf html/ latex/ man/
EXTRA_DIST = Doxyfile $(wildcard img/*.*) e.css head.html foot.html

View File

@ -0,0 +1,79 @@
/**
@mainpage Illume
@image html e.png
@author Carsten Haitzler <raster\@rasterman.com>
@author Christopher Michael <devilhorns\@comcast.net>
@date 2000-2010
@section intro Introduction
Illume is a module for Enlightenment that modifies the user interface of
enlightenment to work cleanly and nicely on a mobile device - such as an
Openmoko phone. It is resolution independent meaning that it can
accommodate a very wide range of devices, from cell phones and PDAs to
tablets and desktops. Illume has been designed from the ground up to
support multiple screens in more than one way using either xinerama or multi-head.
@warning This is a work in progress and as such is subject to change.
*/
/**
@page Illume_Main_Page Illume Basics
@section intro What is Illume?
Illume is a module for that modifies the user interface of Enlightenment to work
cleanly and nicely on an embedded system - from cell phones and PDAs to tablets and
desktops. It is resolution independent meaning that it can accommodate a very wide
range of devices. Illume has been designed from the ground up to support multiple
screens in more than one way using either xinerama or multi-head.
@section work How does Illume work?
*/
/**
@page Illume_Policy_Api_Page Illume Policy API Information
*/
/**
@page Illume_Policy Illume Policy Information
*/
// GROUP DEFINITIONS
/**
@defgroup E_Illume_Keyboard_Group Illume Keyboard Information
The following group defines information needed to interact with the
Virtual Keyboard.
*/
/**
@defgroup E_Illume_Policy_Group Illume Policy Information
The following group defines information needed to implement an Illume
Policy.
@warning There are some requirements that every policy must implement and
some things are optional. Please reference the @ref E_Illume_Policy
structure for requirements.
*/
/**
@defgroup E_Illume_Config_Group Illume Configuration Information
The following group defines information pertaining to Illume Configuration.
*/
/**
@defgroup E_Illume_Quickpanel_Group Illume Quickpanel Information
The following group defines information pertaining to Illume Quickpanels.
*/

View File

@ -1,35 +1,6 @@
#ifndef E_ILLUME_H #ifndef E_ILLUME_H
# define E_ILLUME_H # define E_ILLUME_H
/* include standard E header */
# include "e.h"
/**
* @mainpage Illume
*
* @image html e.png
*
* @author Christopher Michael
* @date 2010
*
* @section illume_toc_sec Table of contents
*
* <ul>
* <li> @ref illume_intro_sec
* </ul>
*
* @section illume_intro_sec Introduction to Illume
*
* Illume is a module for Enlightenment that modifies the user interface of
* enlightenment to work cleanly and nicely on a mobile device - such as an
* Openmoko phone. It is resolution independent meaning that it can
* accommodate a very wide range of devices, from cell phones and PDAs to
* tablets and desktops. Illume has been designed from the ground up to
* support more than one screen in more than one way (multihead and xinerama).
*
* @warning This is a work in progress and as such is subject to change.
*/
/** /**
* @file e_illume.h * @file e_illume.h
* *
@ -47,13 +18,16 @@
* For details on quickpanels, see @ref E_Illume_Quickpanel_Group. * For details on quickpanels, see @ref E_Illume_Quickpanel_Group.
*/ */
/** /* include standard E header */
* @defgroup E_Illume_Keyboard_Group Illume Keyboard Information # include "e.h"
*
* The following group defines information needed to interact with the /* define all of our typedefs */
* Virtual Keyboard. typedef struct _E_Illume_Keyboard E_Illume_Keyboard;
* typedef struct _E_Illume_Policy_Api E_Illume_Policy_Api;
*/ typedef struct _E_Illume_Policy E_Illume_Policy;
typedef struct _E_Illume_Config E_Illume_Config;
typedef struct _E_Illume_Config_Zone E_Illume_Config_Zone;
typedef struct _E_Illume_Quickpanel E_Illume_Quickpanel;
/** /**
* @enum E_Illume_Keyboard_Layout * @enum E_Illume_Keyboard_Layout
@ -86,7 +60,7 @@ typedef enum _E_Illume_Keyboard_Layout
* *
* @ingroup E_Illume_Keyboard_Group * @ingroup E_Illume_Keyboard_Group
*/ */
typedef struct _E_Illume_Keyboard struct _E_Illume_Keyboard
{ {
E_Object e_obj_inherit; E_Object e_obj_inherit;
@ -108,18 +82,7 @@ typedef struct _E_Illume_Keyboard
/**< flag to indicate if the keyboard is currently disabled */ /**< flag to indicate if the keyboard is currently disabled */
unsigned char fullscreen : 1; unsigned char fullscreen : 1;
/**< flag to indicate if the keyboard is currently fullscreen */ /**< flag to indicate if the keyboard is currently fullscreen */
} E_Illume_Keyboard; };
/**
* @defgroup E_Illume_Policy_Group Illume Policy Information
*
* The following group defines information needed to implement an Illume
* Policy.
*
* @warning There are some requirements that every policy must implement and
* some things are optional. Please reference the E_Illume_Policy structure
* for requirements.
*/
/** /**
* @def E_ILLUME_POLICY_API_VERSION * @def E_ILLUME_POLICY_API_VERSION
@ -143,7 +106,7 @@ typedef struct _E_Illume_Keyboard
* *
* @ingroup E_Illume_Policy_Group * @ingroup E_Illume_Policy_Group
*/ */
typedef struct _E_Illume_Policy_Api struct _E_Illume_Policy_Api
{ {
int version; int version;
/**< The version of this policy. */ /**< The version of this policy. */
@ -152,10 +115,7 @@ typedef struct _E_Illume_Policy_Api
/**< The name of this policy. */ /**< The name of this policy. */
const char *label; const char *label;
/**< The label of this policy. */ /**< The label of this policy. */
} E_Illume_Policy_Api; };
typedef struct _E_Illume_Policy E_Illume_Policy;
/** /**
* @brief structure for policy * @brief structure for policy
@ -272,18 +232,13 @@ struct _E_Illume_Policy
} funcs; } funcs;
}; };
/**
* @defgroup E_Illume_Config_Group Illume Configuration Information
*
* The following group defines information pertaining to Illume Configuration.
*/
/** /**
* @brief structure for Illume configuration. * @brief structure for Illume configuration.
* *
* @ingroup E_Illume_Config_Group * @ingroup E_Illume_Config_Group
*/ */
typedef struct _E_Illume_Config struct _E_Illume_Config
{ {
int version; int version;
@ -314,14 +269,14 @@ typedef struct _E_Illume_Config
} vkbd, indicator, softkey, home; } vkbd, indicator, softkey, home;
Eina_List *zones; Eina_List *zones;
} policy; } policy;
} E_Illume_Config; };
/** /**
* @brief structure for Illume zone configuration. * @brief structure for Illume zone configuration.
* *
* @ingroup E_Illume_Config_Group * @ingroup E_Illume_Config_Group
*/ */
typedef struct _E_Illume_Config_Zone struct _E_Illume_Config_Zone
{ {
int id; int id;
struct struct
@ -335,20 +290,14 @@ typedef struct _E_Illume_Config_Zone
{ {
int size; int size;
} vkbd, indicator, softkey; } vkbd, indicator, softkey;
} E_Illume_Config_Zone; };
/**
* @defgroup E_Illume_Quickpanel_Group Illume Quickpanel Information
*
* The following group defines information pertaining to Illume Quickpanels.
*/
/** /**
* @brief structure for Illume Quickpanels. * @brief structure for Illume Quickpanels.
* *
* @ingroup E_Illume_Quickpanel_Group * @ingroup E_Illume_Quickpanel_Group
*/ */
typedef struct _E_Illume_Quickpanel struct _E_Illume_Quickpanel
{ {
E_Object e_obj_inherit; E_Object e_obj_inherit;
@ -360,7 +309,8 @@ typedef struct _E_Illume_Quickpanel
int h, ih, adjust, adjust_start, adjust_end; int h, ih, adjust, adjust_start, adjust_end;
unsigned char visible : 1; unsigned char visible : 1;
/**< flag to indicate if the quickpanel is currently visible */ /**< flag to indicate if the quickpanel is currently visible */
} E_Illume_Quickpanel; };
/* define function prototypes that policies can use */ /* define function prototypes that policies can use */
EAPI E_Illume_Config_Zone *e_illume_zone_config_get(int id); EAPI E_Illume_Config_Zone *e_illume_zone_config_get(int id);