summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSergey Udaltsov <svu@gnome.org>2006-03-11 00:39:26 +0000
committerSergey Udaltsov <svu@gnome.org>2006-03-11 00:39:26 +0000
commit1ff7d5ff76a35182526663e8c2dc9862ca7cd4d1 (patch)
tree2c80e4fbbc0b45f7ba1d86b94c30b03a03f3bd7c
parent4d8ead1605ca4117fd70e36766990c28ca4a161e (diff)
downloadlibxklavier-1ff7d5ff76a35182526663e8c2dc9862ca7cd4d1.tar.gz
gtkdocize
-rw-r--r--Doxyfile.in1165
-rw-r--r--Makefile.am17
-rwxr-xr-xautogen.sh3
-rw-r--r--configure.in10
-rw-r--r--doc/Makefile.am2
-rw-r--r--doc/html/.cvsignore1
-rw-r--r--doc/html/Makefile.am62
-rw-r--r--doc/reference/.cvsignore11
-rw-r--r--doc/reference/Makefile.am78
-rw-r--r--libxklavier.spec.in5
-rw-r--r--libxklavier/xkl_config_item.h51
-rw-r--r--libxklavier/xkl_engine.h339
-rw-r--r--libxklavier/xklavier.h94
-rw-r--r--libxklavier/xklavier_evt.c24
-rw-r--r--libxklavier/xklavier_evt_xkb.c10
-rw-r--r--libxklavier/xklavier_private.h48
-rw-r--r--libxklavier/xklavier_private_xkb.h2
-rw-r--r--libxklavier/xklavier_toplevel.c14
-rw-r--r--libxklavier/xklavier_util.c8
19 files changed, 429 insertions, 1515 deletions
diff --git a/Doxyfile.in b/Doxyfile.in
deleted file mode 100644
index 40e2611..0000000
--- a/Doxyfile.in
+++ /dev/null
@@ -1,1165 +0,0 @@
-# Doxyfile 1.3.9.1
-
-# This file describes the settings to be used by the documentation system
-# doxygen (www.doxygen.org) for a project
-#
-# All text after a hash (#) is considered a comment and will be ignored
-# The format is:
-# TAG = value [value, ...]
-# For lists items can also be appended using:
-# TAG += value [value, ...]
-# Values that contain spaces should be placed between quotes (" ")
-
-#---------------------------------------------------------------------------
-# Project related configuration options
-#---------------------------------------------------------------------------
-
-# The PROJECT_NAME tag is a single word (or a sequence of words surrounded
-# by quotes) that should identify the project.
-
-PROJECT_NAME = @PACKAGE@
-
-# The PROJECT_NUMBER tag can be used to enter a project or revision number.
-# This could be handy for archiving the generated documentation or
-# if some version control system is used.
-
-PROJECT_NUMBER = @VERSION@
-
-# The OUTPUT_DIRECTORY tag is used to specify the (relative or absolute)
-# base path where the generated documentation will be put.
-# If a relative path is entered, it will be relative to the location
-# where doxygen was started. If left blank the current directory will be used.
-
-OUTPUT_DIRECTORY = doc
-
-# If the CREATE_SUBDIRS tag is set to YES, then doxygen will create
-# 4096 sub-directories (in 2 levels) under the output directory of each output
-# format and will distribute the generated files over these directories.
-# Enabling this option can be useful when feeding doxygen a huge amount of source
-# files, where putting all generated files in the same directory would otherwise
-# cause performance problems for the file system.
-
-CREATE_SUBDIRS = NO
-
-# The OUTPUT_LANGUAGE tag is used to specify the language in which all
-# documentation generated by doxygen is written. Doxygen will use this
-# information to generate all constant output in the proper language.
-# The default language is English, other supported languages are:
-# Brazilian, Catalan, Chinese, Chinese-Traditional, Croatian, Czech, Danish,
-# Dutch, Finnish, French, German, Greek, Hungarian, Italian, Japanese,
-# Japanese-en (Japanese with English messages), Korean, Korean-en, Norwegian,
-# Polish, Portuguese, Romanian, Russian, Serbian, Slovak, Slovene, Spanish,
-# Swedish, and Ukrainian.
-
-OUTPUT_LANGUAGE = English
-
-# This tag can be used to specify the encoding used in the generated output.
-# The encoding is not always determined by the language that is chosen,
-# but also whether or not the output is meant for Windows or non-Windows users.
-# In case there is a difference, setting the USE_WINDOWS_ENCODING tag to YES
-# forces the Windows encoding (this is the default for the Windows binary),
-# whereas setting the tag to NO uses a Unix-style encoding (the default for
-# all platforms other than Windows).
-
-USE_WINDOWS_ENCODING = NO
-
-# If the BRIEF_MEMBER_DESC tag is set to YES (the default) Doxygen will
-# include brief member descriptions after the members that are listed in
-# the file and class documentation (similar to JavaDoc).
-# Set to NO to disable this.
-
-BRIEF_MEMBER_DESC = YES
-
-# If the REPEAT_BRIEF tag is set to YES (the default) Doxygen will prepend
-# the brief description of a member or function before the detailed description.
-# Note: if both HIDE_UNDOC_MEMBERS and BRIEF_MEMBER_DESC are set to NO, the
-# brief descriptions will be completely suppressed.
-
-REPEAT_BRIEF = YES
-
-# This tag implements a quasi-intelligent brief description abbreviator
-# that is used to form the text in various listings. Each string
-# in this list, if found as the leading text of the brief description, will be
-# stripped from the text and the result after processing the whole list, is used
-# as the annotated text. Otherwise, the brief description is used as-is. If left
-# blank, the following values are used ("$name" is automatically replaced with the
-# name of the entity): "The $name class" "The $name widget" "The $name file"
-# "is" "provides" "specifies" "contains" "represents" "a" "an" "the"
-
-ABBREVIATE_BRIEF =
-
-# If the ALWAYS_DETAILED_SEC and REPEAT_BRIEF tags are both set to YES then
-# Doxygen will generate a detailed section even if there is only a brief
-# description.
-
-ALWAYS_DETAILED_SEC = NO
-
-# If the INLINE_INHERITED_MEMB tag is set to YES, doxygen will show all inherited
-# members of a class in the documentation of that class as if those members were
-# ordinary class members. Constructors, destructors and assignment operators of
-# the base classes will not be shown.
-
-INLINE_INHERITED_MEMB = NO
-
-# If the FULL_PATH_NAMES tag is set to YES then Doxygen will prepend the full
-# path before files name in the file list and in the header files. If set
-# to NO the shortest path that makes the file name unique will be used.
-
-FULL_PATH_NAMES = NO
-
-# If the FULL_PATH_NAMES tag is set to YES then the STRIP_FROM_PATH tag
-# can be used to strip a user-defined part of the path. Stripping is
-# only done if one of the specified strings matches the left-hand part of
-# the path. The tag can be used to show relative paths in the file list.
-# If left blank the directory from which doxygen is run is used as the
-# path to strip.
-
-STRIP_FROM_PATH =
-
-# The STRIP_FROM_INC_PATH tag can be used to strip a user-defined part of
-# the path mentioned in the documentation of a class, which tells
-# the reader which header file to include in order to use a class.
-# If left blank only the name of the header file containing the class
-# definition is used. Otherwise one should specify the include paths that
-# are normally passed to the compiler using the -I flag.
-
-STRIP_FROM_INC_PATH =
-
-# If the SHORT_NAMES tag is set to YES, doxygen will generate much shorter
-# (but less readable) file names. This can be useful is your file systems
-# doesn't support long names like on DOS, Mac, or CD-ROM.
-
-SHORT_NAMES = NO
-
-# If the JAVADOC_AUTOBRIEF tag is set to YES then Doxygen
-# will interpret the first line (until the first dot) of a JavaDoc-style
-# comment as the brief description. If set to NO, the JavaDoc
-# comments will behave just like the Qt-style comments (thus requiring an
-# explicit @brief command for a brief description.
-
-JAVADOC_AUTOBRIEF = NO
-
-# The MULTILINE_CPP_IS_BRIEF tag can be set to YES to make Doxygen
-# treat a multi-line C++ special comment block (i.e. a block of //! or ///
-# comments) as a brief description. This used to be the default behaviour.
-# The new default is to treat a multi-line C++ comment block as a detailed
-# description. Set this tag to YES if you prefer the old behaviour instead.
-
-MULTILINE_CPP_IS_BRIEF = NO
-
-# If the DETAILS_AT_TOP tag is set to YES then Doxygen
-# will output the detailed description near the top, like JavaDoc.
-# If set to NO, the detailed description appears after the member
-# documentation.
-
-DETAILS_AT_TOP = NO
-
-# If the INHERIT_DOCS tag is set to YES (the default) then an undocumented
-# member inherits the documentation from any documented member that it
-# re-implements.
-
-INHERIT_DOCS = YES
-
-# If member grouping is used in the documentation and the DISTRIBUTE_GROUP_DOC
-# tag is set to YES, then doxygen will reuse the documentation of the first
-# member in the group (if any) for the other members of the group. By default
-# all members of a group must be documented explicitly.
-
-DISTRIBUTE_GROUP_DOC = NO
-
-# The TAB_SIZE tag can be used to set the number of spaces in a tab.
-# Doxygen uses this value to replace tabs by spaces in code fragments.
-
-TAB_SIZE = 8
-
-# This tag can be used to specify a number of aliases that acts
-# as commands in the documentation. An alias has the form "name=value".
-# For example adding "sideeffect=\par Side Effects:\n" will allow you to
-# put the command \sideeffect (or @sideeffect) in the documentation, which
-# will result in a user-defined paragraph with heading "Side Effects:".
-# You can put \n's in the value part of an alias to insert newlines.
-
-ALIASES =
-
-# Set the OPTIMIZE_OUTPUT_FOR_C tag to YES if your project consists of C sources
-# only. Doxygen will then generate output that is more tailored for C.
-# For instance, some of the names that are used will be different. The list
-# of all members will be omitted, etc.
-
-OPTIMIZE_OUTPUT_FOR_C = NO
-
-# Set the OPTIMIZE_OUTPUT_JAVA tag to YES if your project consists of Java sources
-# only. Doxygen will then generate output that is more tailored for Java.
-# For instance, namespaces will be presented as packages, qualified scopes
-# will look different, etc.
-
-OPTIMIZE_OUTPUT_JAVA = NO
-
-# Set the SUBGROUPING tag to YES (the default) to allow class member groups of
-# the same type (for instance a group of public functions) to be put as a
-# subgroup of that type (e.g. under the Public Functions section). Set it to
-# NO to prevent subgrouping. Alternatively, this can be done per class using
-# the \nosubgrouping command.
-
-SUBGROUPING = YES
-
-#---------------------------------------------------------------------------
-# Build related configuration options
-#---------------------------------------------------------------------------
-
-# If the EXTRACT_ALL tag is set to YES doxygen will assume all entities in
-# documentation are documented, even if no documentation was available.
-# Private class members and static file members will be hidden unless
-# the EXTRACT_PRIVATE and EXTRACT_STATIC tags are set to YES
-
-EXTRACT_ALL = NO
-
-# If the EXTRACT_PRIVATE tag is set to YES all private members of a class
-# will be included in the documentation.
-
-EXTRACT_PRIVATE = NO
-
-# If the EXTRACT_STATIC tag is set to YES all static members of a file
-# will be included in the documentation.
-
-EXTRACT_STATIC = NO
-
-# If the EXTRACT_LOCAL_CLASSES tag is set to YES classes (and structs)
-# defined locally in source files will be included in the documentation.
-# If set to NO only classes defined in header files are included.
-
-EXTRACT_LOCAL_CLASSES = YES
-
-# This flag is only useful for Objective-C code. When set to YES local
-# methods, which are defined in the implementation section but not in
-# the interface are included in the documentation.
-# If set to NO (the default) only methods in the interface are included.
-
-EXTRACT_LOCAL_METHODS = NO
-
-# If the HIDE_UNDOC_MEMBERS tag is set to YES, Doxygen will hide all
-# undocumented members of documented classes, files or namespaces.
-# If set to NO (the default) these members will be included in the
-# various overviews, but no documentation section is generated.
-# This option has no effect if EXTRACT_ALL is enabled.
-
-HIDE_UNDOC_MEMBERS = NO
-
-# If the HIDE_UNDOC_CLASSES tag is set to YES, Doxygen will hide all
-# undocumented classes that are normally visible in the class hierarchy.
-# If set to NO (the default) these classes will be included in the various
-# overviews. This option has no effect if EXTRACT_ALL is enabled.
-
-HIDE_UNDOC_CLASSES = NO
-
-# If the HIDE_FRIEND_COMPOUNDS tag is set to YES, Doxygen will hide all
-# friend (class|struct|union) declarations.
-# If set to NO (the default) these declarations will be included in the
-# documentation.
-
-HIDE_FRIEND_COMPOUNDS = NO
-
-# If the HIDE_IN_BODY_DOCS tag is set to YES, Doxygen will hide any
-# documentation blocks found inside the body of a function.
-# If set to NO (the default) these blocks will be appended to the
-# function's detailed documentation block.
-
-HIDE_IN_BODY_DOCS = NO
-
-# The INTERNAL_DOCS tag determines if documentation
-# that is typed after a \internal command is included. If the tag is set
-# to NO (the default) then the documentation will be excluded.
-# Set it to YES to include the internal documentation.
-
-INTERNAL_DOCS = NO
-
-# If the CASE_SENSE_NAMES tag is set to NO then Doxygen will only generate
-# file names in lower-case letters. If set to YES upper-case letters are also
-# allowed. This is useful if you have classes or files whose names only differ
-# in case and if your file system supports case sensitive file names. Windows
-# and Mac users are advised to set this option to NO.
-
-CASE_SENSE_NAMES = YES
-
-# If the HIDE_SCOPE_NAMES tag is set to NO (the default) then Doxygen
-# will show members with their full class and namespace scopes in the
-# documentation. If set to YES the scope will be hidden.
-
-HIDE_SCOPE_NAMES = NO
-
-# If the SHOW_INCLUDE_FILES tag is set to YES (the default) then Doxygen
-# will put a list of the files that are included by a file in the documentation
-# of that file.
-
-SHOW_INCLUDE_FILES = YES
-
-# If the INLINE_INFO tag is set to YES (the default) then a tag [inline]
-# is inserted in the documentation for inline members.
-
-INLINE_INFO = YES
-
-# If the SORT_MEMBER_DOCS tag is set to YES (the default) then doxygen
-# will sort the (detailed) documentation of file and class members
-# alphabetically by member name. If set to NO the members will appear in
-# declaration order.
-
-SORT_MEMBER_DOCS = YES
-
-# If the SORT_BRIEF_DOCS tag is set to YES then doxygen will sort the
-# brief documentation of file, namespace and class members alphabetically
-# by member name. If set to NO (the default) the members will appear in
-# declaration order.
-
-SORT_BRIEF_DOCS = NO
-
-# If the SORT_BY_SCOPE_NAME tag is set to YES, the class list will be
-# sorted by fully-qualified names, including namespaces. If set to
-# NO (the default), the class list will be sorted only by class name,
-# not including the namespace part.
-# Note: This option is not very useful if HIDE_SCOPE_NAMES is set to YES.
-# Note: This option applies only to the class list, not to the
-# alphabetical list.
-
-SORT_BY_SCOPE_NAME = NO
-
-# The GENERATE_TODOLIST tag can be used to enable (YES) or
-# disable (NO) the todo list. This list is created by putting \todo
-# commands in the documentation.
-
-GENERATE_TODOLIST = YES
-
-# The GENERATE_TESTLIST tag can be used to enable (YES) or
-# disable (NO) the test list. This list is created by putting \test
-# commands in the documentation.
-
-GENERATE_TESTLIST = YES
-
-# The GENERATE_BUGLIST tag can be used to enable (YES) or
-# disable (NO) the bug list. This list is created by putting \bug
-# commands in the documentation.
-
-GENERATE_BUGLIST = YES
-
-# The GENERATE_DEPRECATEDLIST tag can be used to enable (YES) or
-# disable (NO) the deprecated list. This list is created by putting
-# \deprecated commands in the documentation.
-
-GENERATE_DEPRECATEDLIST= YES
-
-# The ENABLED_SECTIONS tag can be used to enable conditional
-# documentation sections, marked by \if sectionname ... \endif.
-
-ENABLED_SECTIONS =
-
-# The MAX_INITIALIZER_LINES tag determines the maximum number of lines
-# the initial value of a variable or define consists of for it to appear in
-# the documentation. If the initializer consists of more lines than specified
-# here it will be hidden. Use a value of 0 to hide initializers completely.
-# The appearance of the initializer of individual variables and defines in the
-# documentation can be controlled using \showinitializer or \hideinitializer
-# command in the documentation regardless of this setting.
-
-MAX_INITIALIZER_LINES = 30
-
-# Set the SHOW_USED_FILES tag to NO to disable the list of files generated
-# at the bottom of the documentation of classes and structs. If set to YES the
-# list will mention the files that were used to generate the documentation.
-
-SHOW_USED_FILES = YES
-
-# If the sources in your project are distributed over multiple directories
-# then setting the SHOW_DIRECTORIES tag to YES will show the directory hierarchy
-# in the documentation.
-
-SHOW_DIRECTORIES = YES
-
-#---------------------------------------------------------------------------
-# configuration options related to warning and progress messages
-#---------------------------------------------------------------------------
-
-# The QUIET tag can be used to turn on/off the messages that are generated
-# by doxygen. Possible values are YES and NO. If left blank NO is used.
-
-QUIET = NO
-
-# The WARNINGS tag can be used to turn on/off the warning messages that are
-# generated by doxygen. Possible values are YES and NO. If left blank
-# NO is used.
-
-WARNINGS = YES
-
-# If WARN_IF_UNDOCUMENTED is set to YES, then doxygen will generate warnings
-# for undocumented members. If EXTRACT_ALL is set to YES then this flag will
-# automatically be disabled.
-
-WARN_IF_UNDOCUMENTED = YES
-
-# If WARN_IF_DOC_ERROR is set to YES, doxygen will generate warnings for
-# potential errors in the documentation, such as not documenting some
-# parameters in a documented function, or documenting parameters that
-# don't exist or using markup commands wrongly.
-
-WARN_IF_DOC_ERROR = YES
-
-# The WARN_FORMAT tag determines the format of the warning messages that
-# doxygen can produce. The string should contain the $file, $line, and $text
-# tags, which will be replaced by the file and line number from which the
-# warning originated and the warning text.
-
-WARN_FORMAT =
-
-# The WARN_LOGFILE tag can be used to specify a file to which warning
-# and error messages should be written. If left blank the output is written
-# to stderr.
-
-WARN_LOGFILE =
-
-#---------------------------------------------------------------------------
-# configuration options related to the input files
-#---------------------------------------------------------------------------
-
-# The INPUT tag can be used to specify the files and/or directories that contain
-# documented source files. You may enter file names like "myfile.cpp" or
-# directories like "/usr/src/myproject". Separate the files or directories
-# with spaces.
-
-INPUT = libxklavier
-
-# If the value of the INPUT tag contains directories, you can use the
-# FILE_PATTERNS tag to specify one or more wildcard pattern (like *.cpp
-# and *.h) to filter out the source-files in the directories. If left
-# blank the following patterns are tested:
-# *.c *.cc *.cxx *.cpp *.c++ *.java *.ii *.ixx *.ipp *.i++ *.inl *.h *.hh *.hxx *.hpp
-# *.h++ *.idl *.odl *.cs *.php *.php3 *.inc *.m *.mm
-
-FILE_PATTERNS = xklavier.h \
- xkl_config_item.h \
- xkl_config_rec.h \
- xkl_config_registry.h \
- xkl_engine.h
-
-# The RECURSIVE tag can be used to turn specify whether or not subdirectories
-# should be searched for input files as well. Possible values are YES and NO.
-# If left blank NO is used.
-
-RECURSIVE = NO
-
-# The EXCLUDE tag can be used to specify files and/or directories that should
-# excluded from the INPUT source files. This way you can easily exclude a
-# subdirectory from a directory tree whose root is specified with the INPUT tag.
-
-EXCLUDE =
-
-# The EXCLUDE_SYMLINKS tag can be used select whether or not files or directories
-# that are symbolic links (a Unix filesystem feature) are excluded from the input.
-
-EXCLUDE_SYMLINKS = NO
-
-# If the value of the INPUT tag contains directories, you can use the
-# EXCLUDE_PATTERNS tag to specify one or more wildcard patterns to exclude
-# certain files from those directories.
-
-EXCLUDE_PATTERNS =
-
-# The EXAMPLE_PATH tag can be used to specify one or more files or
-# directories that contain example code fragments that are included (see
-# the \include command).
-
-EXAMPLE_PATH =
-
-# If the value of the EXAMPLE_PATH tag contains directories, you can use the
-# EXAMPLE_PATTERNS tag to specify one or more wildcard pattern (like *.cpp
-# and *.h) to filter out the source-files in the directories. If left
-# blank all files are included.
-
-EXAMPLE_PATTERNS =
-
-# If the EXAMPLE_RECURSIVE tag is set to YES then subdirectories will be
-# searched for input files to be used with the \include or \dontinclude
-# commands irrespective of the value of the RECURSIVE tag.
-# Possible values are YES and NO. If left blank NO is used.
-
-EXAMPLE_RECURSIVE = NO
-
-# The IMAGE_PATH tag can be used to specify one or more files or
-# directories that contain image that are included in the documentation (see
-# the \image command).
-
-IMAGE_PATH =
-
-# The INPUT_FILTER tag can be used to specify a program that doxygen should
-# invoke to filter for each input file. Doxygen will invoke the filter program
-# by executing (via popen()) the command <filter> <input-file>, where <filter>
-# is the value of the INPUT_FILTER tag, and <input-file> is the name of an
-# input file. Doxygen will then use the output that the filter program writes
-# to standard output. If FILTER_PATTERNS is specified, this tag will be
-# ignored.
-
-INPUT_FILTER =
-
-# The FILTER_PATTERNS tag can be used to specify filters on a per file pattern
-# basis. Doxygen will compare the file name with each pattern and apply the
-# filter if there is a match. The filters are a list of the form:
-# pattern=filter (like *.cpp=my_cpp_filter). See INPUT_FILTER for further
-# info on how filters are used. If FILTER_PATTERNS is empty, INPUT_FILTER
-# is applied to all files.
-
-FILTER_PATTERNS =
-
-# If the FILTER_SOURCE_FILES tag is set to YES, the input filter (if set using
-# INPUT_FILTER) will be used to filter the input files when producing source
-# files to browse (i.e. when SOURCE_BROWSER is set to YES).
-
-FILTER_SOURCE_FILES = NO
-
-#---------------------------------------------------------------------------
-# configuration options related to source browsing
-#---------------------------------------------------------------------------
-
-# If the SOURCE_BROWSER tag is set to YES then a list of source files will
-# be generated. Documented entities will be cross-referenced with these sources.
-# Note: To get rid of all source code in the generated output, make sure also
-# VERBATIM_HEADERS is set to NO.
-
-SOURCE_BROWSER = NO
-
-# Setting the INLINE_SOURCES tag to YES will include the body
-# of functions and classes directly in the documentation.
-
-INLINE_SOURCES = NO
-
-# Setting the STRIP_CODE_COMMENTS tag to YES (the default) will instruct
-# doxygen to hide any special comment blocks from generated source code
-# fragments. Normal C and C++ comments will always remain visible.
-
-STRIP_CODE_COMMENTS = YES
-
-# If the REFERENCED_BY_RELATION tag is set to YES (the default)
-# then for each documented function all documented
-# functions referencing it will be listed.
-
-REFERENCED_BY_RELATION = YES
-
-# If the REFERENCES_RELATION tag is set to YES (the default)
-# then for each documented function all documented entities
-# called/used by that function will be listed.
-
-REFERENCES_RELATION = YES
-
-# If the VERBATIM_HEADERS tag is set to YES (the default) then Doxygen
-# will generate a verbatim copy of the header file for each class for
-# which an include is specified. Set to NO to disable this.
-
-VERBATIM_HEADERS = YES
-
-#---------------------------------------------------------------------------
-# configuration options related to the alphabetical class index
-#---------------------------------------------------------------------------
-
-# If the ALPHABETICAL_INDEX tag is set to YES, an alphabetical index
-# of all compounds will be generated. Enable this if the project
-# contains a lot of classes, structs, unions or interfaces.
-
-ALPHABETICAL_INDEX = NO
-
-# If the alphabetical index is enabled (see ALPHABETICAL_INDEX) then
-# the COLS_IN_ALPHA_INDEX tag can be used to specify the number of columns
-# in which this list will be split (can be a number in the range [1..20])
-
-COLS_IN_ALPHA_INDEX = 5
-
-# In case all classes in a project start with a common prefix, all
-# classes will be put under the same header in the alphabetical index.
-# The IGNORE_PREFIX tag can be used to specify one or more prefixes that
-# should be ignored while generating the index headers.
-
-IGNORE_PREFIX =
-
-#---------------------------------------------------------------------------
-# configuration options related to the HTML output
-#---------------------------------------------------------------------------
-
-# If the GENERATE_HTML tag is set to YES (the default) Doxygen will
-# generate HTML output.
-
-GENERATE_HTML = YES
-
-# The HTML_OUTPUT tag is used to specify where the HTML docs will be put.
-# If a relative path is entered the value of OUTPUT_DIRECTORY will be
-# put in front of it. If left blank `html' will be used as the default path.
-
-HTML_OUTPUT =
-
-# The HTML_FILE_EXTENSION tag can be used to specify the file extension for
-# each generated HTML page (for example: .htm,.php,.asp). If it is left blank
-# doxygen will generate files with .html extension.
-
-HTML_FILE_EXTENSION = .html
-
-# The HTML_HEADER tag can be used to specify a personal HTML header for
-# each generated HTML page. If it is left blank doxygen will generate a
-# standard header.
-
-HTML_HEADER =
-
-# The HTML_FOOTER tag can be used to specify a personal HTML footer for
-# each generated HTML page. If it is left blank doxygen will generate a
-# standard footer.
-
-HTML_FOOTER =
-
-# The HTML_STYLESHEET tag can be used to specify a user-defined cascading
-# style sheet that is used by each HTML page. It can be used to
-# fine-tune the look of the HTML output. If the tag is left blank doxygen
-# will generate a default style sheet. Note that doxygen will try to copy
-# the style sheet file to the HTML output directory, so don't put your own
-# stylesheet in the HTML output directory as well, or it will be erased!
-
-HTML_STYLESHEET =
-
-# If the HTML_ALIGN_MEMBERS tag is set to YES, the members of classes,
-# files or namespaces will be aligned in HTML using tables. If set to
-# NO a bullet list will be used.
-
-HTML_ALIGN_MEMBERS = YES
-
-# If the GENERATE_HTMLHELP tag is set to YES, additional index files
-# will be generated that can be used as input for tools like the
-# Microsoft HTML help workshop to generate a compressed HTML help file (.chm)
-# of the generated HTML documentation.
-
-GENERATE_HTMLHELP = NO
-
-# If the GENERATE_HTMLHELP tag is set to YES, the CHM_FILE tag can
-# be used to specify the file name of the resulting .chm file. You
-# can add a path in front of the file if the result should not be
-# written to the html output directory.
-
-CHM_FILE =
-
-# If the GENERATE_HTMLHELP tag is set to YES, the HHC_LOCATION tag can
-# be used to specify the location (absolute path including file name) of
-# the HTML help compiler (hhc.exe). If non-empty doxygen will try to run
-# the HTML help compiler on the generated index.hhp.
-
-HHC_LOCATION =
-
-# If the GENERATE_HTMLHELP tag is set to YES, the GENERATE_CHI flag
-# controls if a separate .chi index file is generated (YES) or that
-# it should be included in the master .chm file (NO).
-
-GENERATE_CHI = NO
-
-# If the GENERATE_HTMLHELP tag is set to YES, the BINARY_TOC flag
-# controls whether a binary table of contents is generated (YES) or a
-# normal table of contents (NO) in the .chm file.
-
-BINARY_TOC = NO
-
-# The TOC_EXPAND flag can be set to YES to add extra items for group members
-# to the contents of the HTML help documentation and to the tree view.
-
-TOC_EXPAND = NO
-
-# The DISABLE_INDEX tag can be used to turn on/off the condensed index at
-# top of each HTML page. The value NO (the default) enables the index and
-# the value YES disables it.
-
-DISABLE_INDEX = NO
-
-# This tag can be used to set the number of enum values (range [1..20])
-# that doxygen will group on one line in the generated HTML documentation.
-
-ENUM_VALUES_PER_LINE = 4
-
-# If the GENERATE_TREEVIEW tag is set to YES, a side panel will be
-# generated containing a tree-like index structure (just like the one that
-# is generated for HTML Help). For this to work a browser that supports
-# JavaScript, DHTML, CSS and frames is required (for instance Mozilla 1.0+,
-# Netscape 6.0+, Internet explorer 5.0+, or Konqueror). Windows users are
-# probably better off using the HTML help feature.
-
-GENERATE_TREEVIEW = NO
-
-# If the treeview is enabled (see GENERATE_TREEVIEW) then this tag can be
-# used to set the initial width (in pixels) of the frame in which the tree
-# is shown.
-
-TREEVIEW_WIDTH = 250
-
-#---------------------------------------------------------------------------
-# configuration options related to the LaTeX output
-#---------------------------------------------------------------------------
-
-# If the GENERATE_LATEX tag is set to YES (the default) Doxygen will
-# generate Latex output.
-
-GENERATE_LATEX = NO
-
-# The LATEX_OUTPUT tag is used to specify where the LaTeX docs will be put.
-# If a relative path is entered the value of OUTPUT_DIRECTORY will be
-# put in front of it. If left blank `latex' will be used as the default path.
-
-LATEX_OUTPUT =
-
-# The LATEX_CMD_NAME tag can be used to specify the LaTeX command name to be
-# invoked. If left blank `latex' will be used as the default command name.
-
-LATEX_CMD_NAME = latex
-
-# The MAKEINDEX_CMD_NAME tag can be used to specify the command name to
-# generate index for LaTeX. If left blank `makeindex' will be used as the
-# default command name.
-
-MAKEINDEX_CMD_NAME = makeindex
-
-# If the COMPACT_LATEX tag is set to YES Doxygen generates more compact
-# LaTeX documents. This may be useful for small projects and may help to
-# save some trees in general.
-
-COMPACT_LATEX = NO
-
-# The PAPER_TYPE tag can be used to set the paper type that is used
-# by the printer. Possible values are: a4, a4wide, letter, legal and
-# executive. If left blank a4wide will be used.
-
-PAPER_TYPE = a4wide
-
-# The EXTRA_PACKAGES tag can be to specify one or more names of LaTeX
-# packages that should be included in the LaTeX output.
-
-EXTRA_PACKAGES =
-
-# The LATEX_HEADER tag can be used to specify a personal LaTeX header for
-# the generated latex document. The header should contain everything until
-# the first chapter. If it is left blank doxygen will generate a
-# standard header. Notice: only use this tag if you know what you are doing!
-
-LATEX_HEADER =
-
-# If the PDF_HYPERLINKS tag is set to YES, the LaTeX that is generated
-# is prepared for conversion to pdf (using ps2pdf). The pdf file will
-# contain links (just like the HTML output) instead of page references
-# This makes the output suitable for online browsing using a pdf viewer.
-
-PDF_HYPERLINKS = NO
-
-# If the USE_PDFLATEX tag is set to YES, pdflatex will be used instead of
-# plain latex in the generated Makefile. Set this option to YES to get a
-# higher quality PDF documentation.
-
-USE_PDFLATEX = NO
-
-# If the LATEX_BATCHMODE tag is set to YES, doxygen will add the \\batchmode.
-# command to the generated LaTeX files. This will instruct LaTeX to keep
-# running if errors occur, instead of asking the user for help.
-# This option is also used when generating formulas in HTML.
-
-LATEX_BATCHMODE = NO
-
-# If LATEX_HIDE_INDICES is set to YES then doxygen will not
-# include the index chapters (such as File Index, Compound Index, etc.)
-# in the output.
-
-LATEX_HIDE_INDICES = NO
-
-#---------------------------------------------------------------------------
-# configuration options related to the RTF output
-#---------------------------------------------------------------------------
-
-# If the GENERATE_RTF tag is set to YES Doxygen will generate RTF output
-# The RTF output is optimized for Word 97 and may not look very pretty with
-# other RTF readers or editors.
-
-GENERATE_RTF = NO
-
-# The RTF_OUTPUT tag is used to specify where the RTF docs will be put.
-# If a relative path is entered the value of OUTPUT_DIRECTORY will be
-# put in front of it. If left blank `rtf' will be used as the default path.
-
-RTF_OUTPUT =
-
-# If the COMPACT_RTF tag is set to YES Doxygen generates more compact
-# RTF documents. This may be useful for small projects and may help to
-# save some trees in general.
-
-COMPACT_RTF = NO
-
-# If the RTF_HYPERLINKS tag is set to YES, the RTF that is generated
-# will contain hyperlink fields. The RTF file will
-# contain links (just like the HTML output) instead of page references.
-# This makes the output suitable for online browsing using WORD or other
-# programs which support those fields.
-# Note: wordpad (write) and others do not support links.
-
-RTF_HYPERLINKS = NO
-
-# Load stylesheet definitions from file. Syntax is similar to doxygen's
-# config file, i.e. a series of assignments. You only have to provide
-# replacements, missing definitions are set to their default value.
-
-RTF_STYLESHEET_FILE =
-
-# Set optional variables used in the generation of an rtf document.
-# Syntax is similar to doxygen's config file.
-
-RTF_EXTENSIONS_FILE =
-
-#---------------------------------------------------------------------------
-# configuration options related to the man page output
-#---------------------------------------------------------------------------
-
-# If the GENERATE_MAN tag is set to YES (the default) Doxygen will
-# generate man pages
-
-GENERATE_MAN = NO
-
-# The MAN_OUTPUT tag is used to specify where the man pages will be put.
-# If a relative path is entered the value of OUTPUT_DIRECTORY will be
-# put in front of it. If left blank `man' will be used as the default path.
-
-MAN_OUTPUT =
-
-# The MAN_EXTENSION tag determines the extension that is added to
-# the generated man pages (default is the subroutine's section .3)
-
-MAN_EXTENSION =
-
-# If the MAN_LINKS tag is set to YES and Doxygen generates man output,
-# then it will generate one additional man file for each entity
-# documented in the real man page(s). These additional files
-# only source the real man page, but without them the man command
-# would be unable to find the correct page. The default is NO.
-
-MAN_LINKS = NO
-
-#---------------------------------------------------------------------------
-# configuration options related to the XML output
-#---------------------------------------------------------------------------
-
-# If the GENERATE_XML tag is set to YES Doxygen will
-# generate an XML file that captures the structure of
-# the code including all documentation.
-
-GENERATE_XML = NO
-
-# The XML_OUTPUT tag is used to specify where the XML pages will be put.
-# If a relative path is entered the value of OUTPUT_DIRECTORY will be
-# put in front of it. If left blank `xml' will be used as the default path.
-
-XML_OUTPUT = xml
-
-# The XML_SCHEMA tag can be used to specify an XML schema,
-# which can be used by a validating XML parser to check the
-# syntax of the XML files.
-
-XML_SCHEMA =
-
-# The XML_DTD tag can be used to specify an XML DTD,
-# which can be used by a validating XML parser to check the
-# syntax of the XML files.
-
-XML_DTD =
-
-# If the XML_PROGRAMLISTING tag is set to YES Doxygen will
-# dump the program listings (including syntax highlighting
-# and cross-referencing information) to the XML output. Note that
-# enabling this will significantly increase the size of the XML output.
-
-XML_PROGRAMLISTING = YES
-
-#---------------------------------------------------------------------------
-# configuration options for the AutoGen Definitions output
-#---------------------------------------------------------------------------
-
-# If the GENERATE_AUTOGEN_DEF tag is set to YES Doxygen will
-# generate an AutoGen Definitions (see autogen.sf.net) file
-# that captures the structure of the code including all
-# documentation. Note that this feature is still experimental
-# and incomplete at the moment.
-
-GENERATE_AUTOGEN_DEF = NO
-
-#---------------------------------------------------------------------------
-# configuration options related to the Perl module output
-#---------------------------------------------------------------------------
-
-# If the GENERATE_PERLMOD tag is set to YES Doxygen will
-# generate a Perl module file that captures the structure of
-# the code including all documentation. Note that this
-# feature is still experimental and incomplete at the
-# moment.
-
-GENERATE_PERLMOD = NO
-
-# If the PERLMOD_LATEX tag is set to YES Doxygen will generate
-# the necessary Makefile rules, Perl scripts and LaTeX code to be able
-# to generate PDF and DVI output from the Perl module output.
-
-PERLMOD_LATEX = NO
-
-# If the PERLMOD_PRETTY tag is set to YES the Perl module output will be
-# nicely formatted so it can be parsed by a human reader. This is useful
-# if you want to understand what is going on. On the other hand, if this
-# tag is set to NO the size of the Perl module output will be much smaller
-# and Perl will parse it just the same.
-
-PERLMOD_PRETTY = YES
-
-# The names of the make variables in the generated doxyrules.make file
-# are prefixed with the string contained in PERLMOD_MAKEVAR_PREFIX.
-# This is useful so different doxyrules.make files included by the same
-# Makefile don't overwrite each other's variables.
-
-PERLMOD_MAKEVAR_PREFIX =
-
-#---------------------------------------------------------------------------
-# Configuration options related to the preprocessor
-#---------------------------------------------------------------------------
-
-# If the ENABLE_PREPROCESSING tag is set to YES (the default) Doxygen will
-# evaluate all C-preprocessor directives found in the sources and include
-# files.
-
-ENABLE_PREPROCESSING = YES
-
-# If the MACRO_EXPANSION tag is set to YES Doxygen will expand all macro
-# names in the source code. If set to NO (the default) only conditional
-# compilation will be performed. Macro expansion can be done in a controlled
-# way by setting EXPAND_ONLY_PREDEF to YES.
-
-MACRO_EXPANSION = NO
-
-# If the EXPAND_ONLY_PREDEF and MACRO_EXPANSION tags are both set to YES
-# then the macro expansion is limited to the macros specified with the
-# PREDEFINED and EXPAND_AS_PREDEFINED tags.
-
-EXPAND_ONLY_PREDEF = NO
-
-# If the SEARCH_INCLUDES tag is set to YES (the default) the includes files
-# in the INCLUDE_PATH (see below) will be search if a #include is found.
-
-SEARCH_INCLUDES = YES
-
-# The INCLUDE_PATH tag can be used to specify one or more directories that
-# contain include files that are not input files but should be processed by
-# the preprocessor.
-
-INCLUDE_PATH =
-
-# You can use the INCLUDE_FILE_PATTERNS tag to specify one or more wildcard
-# patterns (like *.h and *.hpp) to filter out the header-files in the
-# directories. If left blank, the patterns specified with FILE_PATTERNS will
-# be used.
-
-INCLUDE_FILE_PATTERNS =
-
-# The PREDEFINED tag can be used to specify one or more macro names that
-# are defined before the preprocessor is started (similar to the -D option of
-# gcc). The argument of the tag is a list of macros of the form: name
-# or name=definition (no spaces). If the definition and the = are
-# omitted =1 is assumed. To prevent a macro definition from being
-# undefined via #undef or recursively expanded use the := operator
-# instead of the = operator.
-
-PREDEFINED =
-
-# If the MACRO_EXPANSION and EXPAND_ONLY_PREDEF tags are set to YES then
-# this tag can be used to specify a list of macro names that should be expanded.
-# The macro definition that is found in the sources will be used.
-# Use the PREDEFINED tag if you want to use a different macro definition.
-
-EXPAND_AS_DEFINED =
-
-# If the SKIP_FUNCTION_MACROS tag is set to YES (the default) then
-# doxygen's preprocessor will remove all function-like macros that are alone
-# on a line, have an all uppercase name, and do not end with a semicolon. Such
-# function macros are typically used for boiler-plate code, and will confuse the
-# parser if not removed.
-
-SKIP_FUNCTION_MACROS = YES
-
-#---------------------------------------------------------------------------
-# Configuration::additions related to external references
-#---------------------------------------------------------------------------
-
-# The TAGFILES option can be used to specify one or more tagfiles.
-# Optionally an initial location of the external documentation
-# can be added for each tagfile. The format of a tag file without
-# this location is as follows:
-# TAGFILES = file1 file2 ...
-# Adding location for the tag files is done as follows:
-# TAGFILES = file1=loc1 "file2 = loc2" ...
-# where "loc1" and "loc2" can be relative or absolute paths or
-# URLs. If a location is present for each tag, the installdox tool
-# does not have to be run to correct the links.
-# Note that each tag file must have a unique name
-# (where the name does NOT include the path)
-# If a tag file is not located in the directory in which doxygen
-# is run, you must also specify the path to the tagfile here.
-
-TAGFILES =
-
-# When a file name is specified after GENERATE_TAGFILE, doxygen will create
-# a tag file that is based on the input files it reads.
-
-GENERATE_TAGFILE =
-
-# If the ALLEXTERNALS tag is set to YES all external classes will be listed
-# in the class index. If set to NO only the inherited external classes
-# will be listed.
-
-ALLEXTERNALS = NO
-
-# If the EXTERNAL_GROUPS tag is set to YES all external groups will be listed
-# in the modules index. If set to NO, only the current project's groups will
-# be listed.
-
-EXTERNAL_GROUPS = YES
-
-# The PERL_PATH should be the absolute path and name of the perl script
-# interpreter (i.e. the result of `which perl').
-
-PERL_PATH =
-
-#---------------------------------------------------------------------------
-# Configuration options related to the dot tool
-#---------------------------------------------------------------------------
-
-# If the CLASS_DIAGRAMS tag is set to YES (the default) Doxygen will
-# generate a inheritance diagram (in HTML, RTF and LaTeX) for classes with base or
-# super classes. Setting the tag to NO turns the diagrams off. Note that this
-# option is superseded by the HAVE_DOT option below. This is only a fallback. It is
-# recommended to install and use dot, since it yields more powerful graphs.
-
-CLASS_DIAGRAMS = YES
-
-# If set to YES, the inheritance and collaboration graphs will hide
-# inheritance and usage relations if the target is undocumented
-# or is not a class.
-
-HIDE_UNDOC_RELATIONS = YES
-
-# If you set the HAVE_DOT tag to YES then doxygen will assume the dot tool is
-# available from the path. This tool is part of Graphviz, a graph visualization
-# toolkit from AT&T and Lucent Bell Labs. The other options in this section
-# have no effect if this option is set to NO (the default)
-
-HAVE_DOT = NO
-
-# If the CLASS_GRAPH and HAVE_DOT tags are set to YES then doxygen
-# will generate a graph for each documented class showing the direct and
-# indirect inheritance relations. Setting this tag to YES will force the
-# the CLASS_DIAGRAMS tag to NO.
-
-CLASS_GRAPH = YES
-
-# If the COLLABORATION_GRAPH and HAVE_DOT tags are set to YES then doxygen
-# will generate a graph for each documented class showing the direct and
-# indirect implementation dependencies (inheritance, containment, and
-# class references variables) of the class with other documented classes.
-
-COLLABORATION_GRAPH = YES
-
-# If the UML_LOOK tag is set to YES doxygen will generate inheritance and
-# collaboration diagrams in a style similar to the OMG's Unified Modeling
-# Language.
-
-UML_LOOK = NO
-
-# If set to YES, the inheritance and collaboration graphs will show the
-# relations between templates and their instances.
-
-TEMPLATE_RELATIONS = NO
-
-# If the ENABLE_PREPROCESSING, SEARCH_INCLUDES, INCLUDE_GRAPH, and HAVE_DOT
-# tags are set to YES then doxygen will generate a graph for each documented
-# file showing the direct and indirect include dependencies of the file with
-# other documented files.
-
-INCLUDE_GRAPH = YES
-
-# If the ENABLE_PREPROCESSING, SEARCH_INCLUDES, INCLUDED_BY_GRAPH, and
-# HAVE_DOT tags are set to YES then doxygen will generate a graph for each
-# documented header file showing the documented files that directly or
-# indirectly include this file.
-
-INCLUDED_BY_GRAPH = YES
-
-# If the CALL_GRAPH and HAVE_DOT tags are set to YES then doxygen will
-# generate a call dependency graph for every global function or class method.
-# Note that enabling this option will significantly increase the time of a run.
-# So in most cases it will be better to enable call graphs for selected
-# functions only using the \callgraph command.
-
-CALL_GRAPH = NO
-
-# If the GRAPHICAL_HIERARCHY and HAVE_DOT tags are set to YES then doxygen
-# will graphical hierarchy of all classes instead of a textual one.
-
-GRAPHICAL_HIERARCHY = YES
-
-# The DOT_IMAGE_FORMAT tag can be used to set the image format of the images
-# generated by dot. Possible values are png, jpg, or gif
-# If left blank png will be used.
-
-DOT_IMAGE_FORMAT = png
-
-# The tag DOT_PATH can be used to specify the path where the dot tool can be
-# found. If left blank, it is assumed the dot tool can be found on the path.
-
-DOT_PATH =
-
-# The DOTFILE_DIRS tag can be used to specify one or more directories that
-# contain dot files that are included in the documentation (see the
-# \dotfile command).
-
-DOTFILE_DIRS =
-
-# The MAX_DOT_GRAPH_WIDTH tag can be used to set the maximum allowed width
-# (in pixels) of the graphs generated by dot. If a graph becomes larger than
-# this value, doxygen will try to truncate the graph, so that it fits within
-# the specified constraint. Beware that most browsers cannot cope with very
-# large images.
-
-MAX_DOT_GRAPH_WIDTH = 1024
-
-# The MAX_DOT_GRAPH_HEIGHT tag can be used to set the maximum allows height
-# (in pixels) of the graphs generated by dot. If a graph becomes larger than
-# this value, doxygen will try to truncate the graph, so that it fits within
-# the specified constraint. Beware that most browsers cannot cope with very
-# large images.
-
-MAX_DOT_GRAPH_HEIGHT = 1024
-
-# The MAX_DOT_GRAPH_DEPTH tag can be used to set the maximum depth of the
-# graphs generated by dot. A depth value of 3 means that only nodes reachable
-# from the root by following a path via at most 3 edges will be shown. Nodes that
-# lay further from the root node will be omitted. Note that setting this option to
-# 1 or 2 may greatly reduce the computation time needed for large code bases. Also
-# note that a graph may be further truncated if the graph's image dimensions are
-# not sufficient to fit the graph (see MAX_DOT_GRAPH_WIDTH and MAX_DOT_GRAPH_HEIGHT).
-# If 0 is used for the depth value (the default), the graph is not depth-constrained.
-
-MAX_DOT_GRAPH_DEPTH = 0
-
-# If the GENERATE_LEGEND tag is set to YES (the default) Doxygen will
-# generate a legend page explaining the meaning of the various boxes and
-# arrows in the dot generated graphs.
-
-GENERATE_LEGEND = YES
-
-# If the DOT_CLEANUP tag is set to YES (the default) Doxygen will
-# remove the intermediate dot files that are used to generate
-# the various graphs.
-
-DOT_CLEANUP = YES
-
-#---------------------------------------------------------------------------
-# Configuration::additions related to the search engine
-#---------------------------------------------------------------------------
-
-# The SEARCHENGINE tag specifies whether or not a search engine should be
-# used. If set to NO the values of all tags below this one will be ignored.
-
-SEARCHENGINE = NO
diff --git a/Makefile.am b/Makefile.am
index a8a53e5..0170b86 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -4,22 +4,9 @@ config_xml_DATA = xfree86.xml
config_xmldir = $(datadir)/$(PACKAGE)
EXTRA_DIST = libxklavier.spec libxklavier.spec.in \
- Doxyfile Doxyfile.in autogen.sh \
- CREDITS libxklavier.pc.in \
+ autogen.sh \
+ CREDITS libxklavier.pc.in gtk-doc.make \
$(config_xml_DATA)
pkgconfigdir = $(libdir)/pkgconfig
pkgconfig_DATA = libxklavier.pc
-
-doxydocs: libxklavier/xklavier.h \
- libxklavier/xkl_config_item.h \
- libxklavier/xkl_config_rec.h \
- libxklavier/xkl_config_registry.h \
- libxklavier/xkl_engine.h
- if test "x$(DO_DOXYGEN)" = "xyes" ; then \
- doxygen Doxyfile; \
- fi;
-
-all: doxydocs
-
-.PHONY: doxydocs
diff --git a/autogen.sh b/autogen.sh
index ad495e7..8fbba28 100755
--- a/autogen.sh
+++ b/autogen.sh
@@ -133,6 +133,9 @@ do
automake --add-missing --gnu $am_opt
echo "Running autoconf ..."
autoconf
+
+ echo "Running gtkdocize ..."
+ gtkdocize || exit 1
)
fi
done
diff --git a/configure.in b/configure.in
index 67f9100..5bf0630 100644
--- a/configure.in
+++ b/configure.in
@@ -25,6 +25,7 @@ dnl AC_ARG_PROGRAM
AM_PROG_LIBTOOL
AM_ICONV
+GTK_DOC_CHECK(1.0)
dnl From Bruno Haible.
dnl From gnoome-vfs
@@ -101,12 +102,6 @@ AC_SUBST(xkbheaders_present)
CFLAGS="$save_CFLAGS"
-AC_ARG_ENABLE(doxygen,
-[ --enable-doxygen Build doxygen documentation],
-, enable_doxygen=no)
-
-AC_SUBST(DO_DOXYGEN,"${enable_doxygen}")
-
AC_ARG_ENABLE(xkb-support,
[ --enable-xkb-support Enable XKB support],
, enable_xkb_support=yes)
@@ -147,9 +142,8 @@ AC_OUTPUT([
Makefile
libxklavier/Makefile
libxklavier.spec
-Doxyfile
doc/Makefile
-doc/html/Makefile
+doc/reference/Makefile
tests/Makefile
libxklavier.pc
])
diff --git a/doc/Makefile.am b/doc/Makefile.am
index 38d9a77..b68c774 100644
--- a/doc/Makefile.am
+++ b/doc/Makefile.am
@@ -1 +1 @@
-SUBDIRS=html
+SUBDIRS=reference
diff --git a/doc/html/.cvsignore b/doc/html/.cvsignore
deleted file mode 100644
index 4414e3f..0000000
--- a/doc/html/.cvsignore
+++ /dev/null
@@ -1 +0,0 @@
-Makefile Makefile.in *.html *.css *.gif *.png
diff --git a/doc/html/Makefile.am b/doc/html/Makefile.am
deleted file mode 100644
index ea274a8..0000000
--- a/doc/html/Makefile.am
+++ /dev/null
@@ -1,62 +0,0 @@
-EXTRA_WEB_FILES = doxygen.css \
- doxygen.png
-
-HTML_FILES = annotated.html\
- files.html\
- functions.html\
- globals.html\
- group__activation.html\
- group__callbacks.html\
- group__currents.html\
- group__debugerr.html\
- group__enum.html\
- group__lookup.html\
- group__props.html\
- group__settings.html\
- group__wininfo.html\
- group__xkbevents.html\
- group__xkbgroup.html\
- group__xkbinfo.html\
- group__xklconfig.html\
- group__xklconfiginitterm.html\
- group__xklinitterm.html\
- index.html\
- modules.html\
- struct__XklConfigItem.html\
- struct__XklConfigItem-members.html\
- struct__XklConfigRec.html\
- struct__XklConfigRec-members.html\
- structXklState.html\
- structXklState-members.html\
- xklavier_8h.html\
- xklavier_8h-source.html\
- xklavier__config_8h.html\
- xklavier__config_8h-source.html
-
-DOXYGEN_OUT_FILES = $(EXTRA_WEB_FILES) $(HTML_FILES)
-
-doc_to = $(datadir)/doc/$(PACKAGE)-$(VERSION)/html
-
-doc_files = $(DOXYGEN_OUT_FILES)
-
-EXTRA_DIST= $(doc_files)
-
-install:
- @$(NORMAL_INSTALL)
- if test "x$(DO_DOXYGEN)" = "xyes" ; then \
- $(mkinstalldirs) $(DESTDIR)$(doc_to); \
- for p in $(doc_files); do \
- $(INSTALL_DATA) $$p $(DESTDIR)$(doc_to)/$$p; \
- done; \
- fi
-
-uninstall:
- @$(NORMAL_UNINSTALL)
- if test "x$(DO_DOXYGEN)" = "xyes" ; then \
- for p in $(doc_files); do \
- rm -f $(DESTDIR)$(doc_to)/$$p; \
- done \
- fi
-
-MAINTAINERCLEANFILES = $(DOXYGEN_OUT_FILES)
-
diff --git a/doc/reference/.cvsignore b/doc/reference/.cvsignore
new file mode 100644
index 0000000..10c9dba
--- /dev/null
+++ b/doc/reference/.cvsignore
@@ -0,0 +1,11 @@
+*.txt
+html
+sgml
+tmpl
+xml
+.libs
+*.sgml
+Makefile
+Makefile.in
+libxklavier.*
+*.stamp
diff --git a/doc/reference/Makefile.am b/doc/reference/Makefile.am
new file mode 100644
index 0000000..532876b
--- /dev/null
+++ b/doc/reference/Makefile.am
@@ -0,0 +1,78 @@
+## Process this file with automake to produce Makefile.in
+
+# We require automake 1.6 at least.
+AUTOMAKE_OPTIONS = 1.6
+
+# This is a blank Makefile.am for using gtk-doc.
+# Copy this to your project's API docs directory and modify the variables to
+# suit your project. See the GTK+ Makefiles in gtk+/docs/reference for examples
+# of using the various options.
+
+# The name of the module, e.g. 'glib'.
+DOC_MODULE=libxklavier
+
+# The top-level SGML file. You can change this if you want to.
+DOC_MAIN_SGML_FILE=$(DOC_MODULE)-docs.sgml
+
+# The directory containing the source code. Relative to $(srcdir).
+# gtk-doc will search all .c & .h files beneath here for inline comments
+# documenting the functions and macros.
+# e.g. DOC_SOURCE_DIR=../../../gtk
+DOC_SOURCE_DIR=../../libxklavier
+
+# Extra options to pass to gtkdoc-scangobj. Not normally needed.
+SCANGOBJ_OPTIONS=
+
+# Extra options to supply to gtkdoc-scan.
+# e.g. SCAN_OPTIONS=--deprecated-guards="GTK_DISABLE_DEPRECATED"
+SCAN_OPTIONS=
+
+# Extra options to supply to gtkdoc-mkdb.
+# e.g. MKDB_OPTIONS=--sgml-mode --output-format=xml
+MKDB_OPTIONS=--sgml-mode --output-format=xml
+
+# Extra options to supply to gtkdoc-mktmpl
+# e.g. MKTMPL_OPTIONS=--only-section-tmpl
+MKTMPL_OPTIONS=
+
+# Extra options to supply to gtkdoc-fixref. Not normally needed.
+# e.g. FIXXREF_OPTIONS=--extra-dir=../gdk-pixbuf/html --extra-dir=../gdk/html
+FIXXREF_OPTIONS=
+
+# Used for dependencies. The docs will be rebuilt if any of these change.
+# e.g. HFILE_GLOB=$(top_srcdir)/gtk/*.h
+# e.g. CFILE_GLOB=$(top_srcdir)/gtk/*.c
+HFILE_GLOB=
+CFILE_GLOB=
+
+# Header files to ignore when scanning.
+# e.g. IGNORE_HFILES=gtkdebug.h gtkintl.h
+IGNORE_HFILES=xklavier_private.h xklavier_private_xkb.h xklavier_private_xmm.h xkl_engine_marshal.h
+
+# Images to copy into HTML directory.
+# e.g. HTML_IMAGES=$(top_srcdir)/gtk/stock-icons/stock_about_24.png
+HTML_IMAGES=
+
+# Extra SGML files that are included by $(DOC_MAIN_SGML_FILE).
+# e.g. content_files=running.sgml building.sgml changes-2.0.sgml
+content_files=
+
+# SGML files where gtk-doc abbrevations (#GtkWidget) are expanded
+# These files must be listed here *and* in content_files
+# e.g. expand_content_files=running.sgml
+expand_content_files=
+
+# CFLAGS and LDFLAGS for compiling gtkdoc-scangobj with your library.
+# Only needed if you are using gtkdoc-scangobj to dynamically query widget
+# signals and properties.
+# e.g. INCLUDES=-I$(top_srcdir) -I$(top_builddir) $(GTK_DEBUG_FLAGS)
+# e.g. GTKDOC_LIBS=$(top_builddir)/gtk/$(gtktargetlib)
+INCLUDES=-I$(top_srcdir) -I$(top_builddir) $(GLIB_CFLAGS)
+GTKDOC_LIBS=$(GLIB_LIBS) -L$(top_builddir)/libxklavier -lxklavier
+
+# This includes the standard gtk-doc make rules, copied by gtkdocize.
+include $(top_srcdir)/gtk-doc.make
+
+# Other files to distribute
+# e.g. EXTRA_DIST += version.xml.in
+EXTRA_DIST +=
diff --git a/libxklavier.spec.in b/libxklavier.spec.in
index 547b9dc..a70895c 100644
--- a/libxklavier.spec.in
+++ b/libxklavier.spec.in
@@ -5,7 +5,7 @@ Release: 1
License: LGPL
Group: Development/Libraries
Url: http://gswitchit.sourceforge.net/
-BuildRequires: doxygen
+BuildRequires: gtk-doc
Source: http://gswitchit.sourceforge.net/%{name}-%{version}.tar.gz
Buildroot: %{_tmppath}/%{name}-%{version}-%{release}-root
@@ -27,8 +27,7 @@ Libraries, include files, etc you can use to develop libxklavier applications.
%build
CONFIG_FLAGS="--prefix=%{_prefix} --libdir=%{_libdir} \
- --includedir=%{_includedir} --bindir=%{_bindir} \
- --disable-doxygen"
+ --includedir=%{_includedir} --bindir=%{_bindir}"
if [ ! -f configure ]; then
CFLAGS="$RPM_OPT_FLAGS" ./autogen.sh $CONFIG_FLAGS
diff --git a/libxklavier/xkl_config_item.h b/libxklavier/xkl_config_item.h
index 8e35bca..bd3843e 100644
--- a/libxklavier/xkl_config_item.h
+++ b/libxklavier/xkl_config_item.h
@@ -1,28 +1,24 @@
-/**
- * @file xkl_config_item.h
- */
-
#ifndef __XKL_CONFIG_ITEM_H__
#define __XKL_CONFIG_ITEM_H__
#include <glib-object.h>
-/**
+/*
* Maximum name length, including '\'0' character
*/
#define XKL_MAX_CI_NAME_LENGTH 32
-/**
- * Maximum short description length, including '\\0' character.
- * Important: this length is in bytes, so for unicode (UTF-8 encoding in
- * XML file) the actual maximum length can be smaller.
+/*
+ * Maximum short description length, including '\\0' character
+ * (this length is in bytes, so for UTF-8 encoding in
+ * XML file the actual maximum length can be smaller)
*/
#define XKL_MAX_CI_SHORT_DESC_LENGTH 10
-/**
- * Maximum description length, including '\\0' character.
- * Important: this length is in bytes, so for unicode (UTF-8 encoding in
- * XML file) the actual maximum length can be smaller.
+/*
+ * Maximum description length, including '\\0' character
+ * (this length is in bytes, so for UTF-8 encoding in
+ * XML file the actual maximum length can be smaller)
*/
#define XKL_MAX_CI_DESC_LENGTH 192
@@ -78,43 +74,44 @@ extern "C" {
GObjectClass parent_class;
};
/**
+ * xkl_config_item_get_type:
+ *
* Get type info for XklConfigItem
- * @return GType for XklConfigItem
+ *
+ * Returns: GType for XklConfigItem
*/
extern GType xkl_config_item_get_type(void);
/**
+ * xkl_config_item_new:
+ *
* Create new XklConfigItem
- * @return new instance
+ *
+ * Returns: new instance
*/
extern XklConfigItem *xkl_config_item_new(void);
/**
- * @defgroup enum XKB configuration elements enumeration functions
- * @{
- */
-
-/**
+ * @item: the item from registry
+ * @data: anything which can be stored into the pointer
+ *
* Callback type used for enumerating keyboard models, layouts, variants, options
- * @param item is the item from registry
- * @param data is anything which can be stored into the pointer
*/
typedef void (*ConfigItemProcessFunc) (const XklConfigItem * item,
gpointer data);
/**
+ * @item: the item from registry
+ * @allow_multiple_selection: a flag whether this group allows multiple selection
+ * @data: anything which can be stored into the pointer
+ *
* Callback type used for enumerating keyboard option groups
- * @param item is the item from registry
- * @param allow_multiple_selection is a flag whether this group allows multiple selection
- * @param data is anything which can be stored into the pointer
*/
typedef void (*GroupProcessFunc) (const XklConfigItem * item,
gboolean
allow_multiple_selection,
gpointer data);
-/** @} */
-
#ifdef __cplusplus
}
#endif /* __cplusplus */
diff --git a/libxklavier/xkl_engine.h b/libxklavier/xkl_engine.h
index 9d47f46..208db55 100644
--- a/libxklavier/xkl_engine.h
+++ b/libxklavier/xkl_engine.h
@@ -1,7 +1,3 @@
-/**
- * @file xkl_engine.h
- */
-
#ifndef __XKL_ENGINE_H__
#define __XKL_ENGINE_H__
@@ -13,8 +9,6 @@
extern "C" {
#endif
-#ifndef DOXYGEN_SHOULD_SKIP_THIS
-
typedef struct _XklEngine XklEngine;
typedef struct _XklEnginePrivate XklEnginePrivate;
typedef struct _XklEngineClass XklEngineClass;
@@ -26,9 +20,6 @@ extern "C" {
#define XKL_IS_ENGINE_CLASS(obj) (G_TYPE_CHECK_CLASS_TYPE ((obj), XKL_TYPE_ENGINE))
#define XKL_ENGINE_GET_CLASS (G_TYPE_INSTANCE_GET_CLASS ((obj), XKL_TYPE_ENGINE, XklEngineClass))
-#endif // DOXYGEN_SHOULD_SKIP_THIS
-
-
typedef enum {
/**
* Group was changed
@@ -40,27 +31,27 @@ extern "C" {
INDICATORS_CHANGED
} XklStateChange;
-/**
+/*
* Backend allows to toggls indicators on/off
*/
#define XKLF_CAN_TOGGLE_INDICATORS 0x01
-/**
+/*
* Backend allows to write ascii representation of the configuration
*/
#define XKLF_CAN_OUTPUT_CONFIG_AS_ASCII 0x02
-/**
+/*
* Backend allows to write binary representation of the configuration
*/
#define XKLF_CAN_OUTPUT_CONFIG_AS_BINARY 0x04
-/**
+/*
* Backend supports multiple layouts
*/
#define XKLF_MULTIPLE_LAYOUTS_SUPPORTED 0x08
-/**
+/*
* Backend requires manual configuration,
* some daemon should do
* xkl_StartListen( XKLL_MANAGE_LAYOUTS );
@@ -101,190 +92,244 @@ extern "C" {
GObjectClass parent_class;
/**
+ * XklEngine::config-notify:
+ * @engine: the object on which the signal is emitted
+ *
* Used for notifying application of the XKB configuration change.
*/
void (*config_notify) (XklEngine * engine);
/**
+ * XklEngine::new_window_notify:
+ * @engine: the object on which the signal is emitted
+ * @win: new window
+ * @parent: new window's parent
+ *
* Used for notifying application of new window creation (actually,
* registration).
- * @param win is a new window
- * @param parent is a new window's parent
- * @return the initial group id for the window (-1 to use the default value)
+ *
+ * Returns: the initial group id for the window (-1 to use the default value)
*/
gint(*new_window_notify) (XklEngine * engine, Window win,
Window parent);
/**
- * Used for notifying application of the window state change.
- * @param changeType is a mask of changes
- * @param group is a new group
- * @param restore is indicator of whether this state is restored from
+ * XklEngine::state_notify
+ * @engine: the object on which the signal is emitted
+ * @change_type: mask of changes
+ * @group: new group
+ * @restore: whether this state is restored from
* saved state of set as new.
+ *
+ * Used for notifying application of the window state change.
*/
void (*state_notify) (XklEngine * engine,
- XklStateChange changeType,
+ XklStateChange change_type,
gint group, gboolean restore);
};
/**
+ * xkl_engine_get_type:
+ *
* Get type info for XklEngine
- * @return GType for XklEngine
+ *
+ * Returns: GType for XklEngine
*/
extern GType xkl_engine_get_type(void);
/**
- * Get the instance of the XklEngine. Within a process, there is always once instance
- * @return the singleton instance
+ * xkl_engine_get_instance:
+ * @display: the X display used by the application
+ *
+ * Get the instance of the XklEngine. Within a process, there is always once instance.
+ *
+ * Returns: the singleton instance
*/
extern XklEngine *xkl_engine_get_instance(Display * display);
/**
- * What kind of backend if used
- * @return some string id of the backend
+ * xkl_engine_get_backend_name:
+ * @engine: the engine
+ *
+ * What kind of backend is used
+ *
+ * Returns: some string id of the backend
*/
extern const gchar *xkl_engine_get_backend_name(XklEngine *
engine);
/**
+ * xkl_engine_get_features:
+ * @engine: the engine
+ *
* Provides information regarding available backend features
* (combination of XKLF_* constants)
- * @return ORed XKLF_* constants
+ *
+ * Returns: ORed XKLF_* constants
*/
extern guint xkl_engine_get_features(XklEngine * engine);
/**
+ * xkl_engine_get_max_num_groups:
+ * @engine: the engine
+ *
* Provides the information on maximum number of simultaneously supported
* groups (layouts)
- * @return maximum number of the groups in configuration,
+ *
+ * Returns: maximum number of the groups in configuration,
* 0 if no restrictions.
*/
extern guint xkl_engine_get_max_num_groups(XklEngine * engine);
-/**
- * @defgroup xkbevents XKB event handling and management
- * @{
- */
-
-/**
+/*
* The listener process should handle the per-window states
* and all the related activity
*/
#define XKLL_MANAGE_WINDOW_STATES 0x01
-/**
+/*
* Just track the state and pass it to the application above.
*/
#define XKLL_TRACK_KEYBOARD_STATE 0x02
-/**
+/*
* The listener process should help backend to maintain the configuration
* (manually switch layouts etc).
*/
#define XKLL_MANAGE_LAYOUTS 0x04
/**
+ * xkl_engine_start_listen:
+ * @engine: the engine
+ * @flags: any combination of XKLL_* constants
+ *
* Starts listening for XKB-related events
- * @param what any combination of XKLL_* constants
- * @return 0
+ *
+ * Returns: 0
*/
extern gint xkl_engine_start_listen(XklEngine * engine,
- guint what);
+ guint flags);
/**
+ * xkl_engine_stop_listen:
+ * @engine: the engine
+ *
* Stops listening for XKB-related events
- * @return 0
+ * Returns: 0
*/
extern gint xkl_engine_stop_listen(XklEngine * engine);
/**
+ * xkl_engine_pause_listen:
+ * @engine: the engine
+ *
* Temporary pauses listening for XKB-related events
- * @return 0
+ *
+ * Returns: 0
*/
extern gint xkl_engine_pause_listen(XklEngine * engine);
/**
+ * xkl_engine_resume_listen:
+ * @engine: the engine
+ *
* Resumes listening for XKB-related events
- * @return 0
+ *
+ * Returns: 0
*/
extern gint xkl_engine_resume_listen(XklEngine * engine);
/**
+ * xkl_engine_grab_key:
+ * @engine: the engine
+ * @keycode: keycode
+ * @modifiers: bitmask of modifiers
+ *
* Grabs some key
- * @param keycode is a keycode
- * @param modifiers is a bitmask of modifiers
- * @return True on success
+ *
+ * Returns: TRUE on success
*/
extern gboolean xkl_engine_grab_key(XklEngine * engine,
gint keycode, guint modifiers);
/**
+ * xkl_engine_ungrab_key:
+ * @engine: the engine
+ * @keycode: keycode
+ * @modifiers: bitmask of modifiers
+ *
* Ungrabs some key
- * @param keycode is a keycode
- * @param modifiers is a bitmask of modifiers
- * @return True on success
+ *
+ * Returns: TRUE on success
*/
extern gboolean xkl_engine_ungrab_key(XklEngine * engine,
gint keycode,
guint modifiers);
/**
+ * xkl_engine_filter_events:
+ * @engine: the engine
+ * @evt: delivered X event
+ *
* Processes X events. Should be included into the main event cycle of an
* application. One of the most important functions.
- * @param evt is delivered X event
- * @return 0 if the event it processed - 1 otherwise
- * @see xkl_StartListen
+ *
+ * Returns: 0 if the event it processed - 1 otherwise
*/
extern gint xkl_engine_filter_events(XklEngine * engine,
XEvent * evt);
/**
+ * xkl_engine_allow_one_switch_to_secondary_group:
+ * @engine: the engine
+ *
* Allows to switch (once) to the secondary group
+ *
*/
extern void
xkl_engine_allow_one_switch_to_secondary_group(XklEngine *
engine);
-/** @} */
-
/**
- * @defgroup currents Current state of the library
- * @{
- */
-
-/**
- * @return currently focused window
+ * xkl_engine_get_current_window:
+ * @engine: the engine
+ *
+ * Returns: currently focused window
*/
extern Window xkl_engine_get_current_window(XklEngine * engine);
/**
- * @return current state of the keyboard (in XKB terms).
+ * xkl_engine_get_current_state:
+ * @engine: the engine
+ *
+ * Returns: current state of the keyboard.
* Returned value is a statically allocated buffer, should not be freed.
*/
extern XklState *xkl_engine_get_current_state(XklEngine * engine);
-/** @} */
-
-/**
- * @defgroup wininfo Per-window information
- * @{
- */
-
/**
- * @return the window title of some window or NULL.
+ * xkl_engine_get_window_title:
+ * @engine: the engine
+ * @win: X window
+ *
+ * Returns: the window title of some window or NULL.
* If not NULL, it should be freed with XFree
*/
extern gchar *xkl_engine_get_window_title(XklEngine * engine,
- Window w);
+ Window win);
/**
+ * xkl_engine_get_state:
+ * @engine: the engine
+ * @win: window to query
+ * @state_out: structure to store the state
+ *
* Finds the state for a given window (for its "App window").
- * @param win is a target window
- * @param state_out is a structure to store the state
- * @return True on success, otherwise False
+ *
+ * Returns: TRUE on success, otherwise FALSE
* (the error message can be obtained using xkl_GetLastError).
*/
extern gboolean xkl_engine_get_state(XklEngine * engine,
@@ -292,26 +337,34 @@ extern "C" {
XklState * state_out);
/**
+ * xkl_engine_delete_state:
+ * @engine: the engine
+ * @win: target window
+ *
* Drops the state of a given window (of its "App window").
- * @param win is a target window
*/
extern void xkl_engine_delete_state(XklEngine * engine,
Window win);
/**
+ * xkl_engine_save_state:
+ * @engine: the engine
+ * @win: target window
+ * @state: new state of the window
+ *
* Stores ths state for a given window
- * @param win is a target window
- * @param state is a new state of the window
*/
extern void xkl_engine_save_state(XklEngine * engine, Window win,
XklState * state);
/**
+ * xkl_engine_set_window_transparent:
+ * @engine: the engine
+ * @win: window do set the flag for.
+ * @transparent: if true, the windows is transparent.
+ *
* Sets the "transparent" flag. It means focus switching onto
* this window will never change the state.
- * @param win is the window do set the flag for.
- * @param transparent - if true, the windows is transparent.
- * @see xkl_IsTranspatent
*/
extern void xkl_engine_set_window_transparent(XklEngine * engine,
Window win,
@@ -319,19 +372,25 @@ extern "C" {
transparent);
/**
- * Returns "transparent" flag.
- * @param win is the window to get the transparent flag from.
- * @see xkl_SetTranspatent
+ * xkl_engine_is_window_transparent:
+ * @engine: the engine
+ * @win: window to get the transparent flag from.
+ *
+ * Returns: TRUE if the window is "transparent"
*/
extern gboolean xkl_engine_is_window_transparent(XklEngine *
engine,
Window win);
/**
+ * xkl_engine_is_window_from_same_toplevel_window:
+ * @engine: the engine
+ * @win1: first window
+ * @win2: second window
+ *
* Checks whether 2 windows have the same topmost window
- * @param win1 is first window
- * @param win2 is second window
- * @return True is windows are in the same application
+ *
+ * Returns: TRUE is windows are in the same application
*/
extern gboolean
xkl_engine_is_window_from_same_toplevel_window(XklEngine *
@@ -339,21 +398,20 @@ extern "C" {
Window win1,
Window win2);
-/** @} */
-
-/**
- * @defgroup xkbinfo Various XKB configuration info
- * @{
- */
-
/**
- * @return the total number of groups in the current XKB configuration
+ * xkl_engine_get_num_groups:
+ * @engine: the engine
+ *
+ * Returns: the total number of groups in the current configuration
* (keyboard)
*/
extern guint xkl_engine_get_num_groups(XklEngine * engine);
/**
- * @return the array of group names for the current XKB configuration
+ * xkl_engine_get_groups_names:
+ * @engine: the engine
+ *
+ * Returns: the array of group names for the current XKB configuration
* (keyboard).
* This array is static, should not be freed
*/
@@ -361,117 +419,138 @@ extern "C" {
engine);
/**
- * @return the array of indicator names for the current XKB configuration
+ * xkl_engine_get_indicators_names:
+ * @engine: the engine
+ *
+ * Returns: the array of indicator names for the current XKB configuration
* (keyboard).
* This array is static, should not be freed
*/
extern const gchar **xkl_engine_get_indicators_names(XklEngine *
engine);
-/** @} */
-
-/**
- * @defgroup xkbgroup XKB group calculation and change
- * @{
- */
-
/**
+ * xkl_engine_get_next_group:
+ * @engine: the engine
+ *
* Calculates next group id. Does not change the state of anything.
- * @return next group id
+ *
+ * Returns: next group id
*/
extern gint xkl_engine_get_next_group(XklEngine * engine);
/**
+ * xkl_engine_get_prev_group:
+ * @engine: the engine
+ *
* Calculates prev group id. Does not change the state of anything.
- * @return prev group id
+ *
+ * Returns: prev group id
*/
extern gint xkl_engine_get_prev_group(XklEngine * engine);
/**
- * @return saved group id of the current window.
- * Does not change the state of anything.
+ * xkl_engine_get_current_window_group:
+ * @engine: the engine
+ *
+ * Returns: saved group id of the current window.
*/
extern gint xkl_engine_get_current_window_group(XklEngine *
engine);
/**
+ * xkl_engine_lock_group:
+ * @engine: the engine
+ * @group: group number for locking
+ *
* Locks the group. Can be used after xkl_GetXXXGroup functions
- * @param group is a group number for locking
- * @see xkl_GetNextGroup
- * @see xkl_GetPrevGroup
- * @see xkl_GetRestoreGroup
*/
extern void xkl_engine_lock_group(XklEngine * engine, gint group);
-/** @} */
-
-/**
- * @defgroup settings Settings for event processing
- * @{
- */
-
/**
+ * xkl_engine_set_group_per_toplevel_window:
+ * @engine: the engine
+ * @is_global: new parameter value
+ *
* Sets the configuration parameter: group per application
- * @param isGlobal is a new parameter value
*/
extern void xkl_engine_set_group_per_toplevel_window(XklEngine *
engine,
gboolean
- isGlobal);
+ is_global);
/**
- * @return the value of the parameter: group per application
+ * xkl_engine_is_group_per_toplevel_window:
+ * @engine: the engine
+ *
+ * Returns: the value of the parameter: group per application
*/
extern gboolean xkl_engine_is_group_per_toplevel_window(XklEngine *
engine);
/**
+ * xkl_engine_set_indicators_handling:
+ * @engine: the engine
+ * @whether_handle: new parameter value
+ *
* Sets the configuration parameter: perform indicators handling
- * @param whetherHandle is a new parameter value
*/
extern void xkl_engine_set_indicators_handling(XklEngine * engine,
gboolean
- whetherHandle);
+ whether_handle);
/**
- * @return the value of the parameter: perform indicator handling
+ * xkl_engine_get_indicators_handling:
+ * @engine: the engine
+ *
+ * Returns: the value of the parameter: perform indicator handling
*/
extern gboolean xkl_engine_get_indicators_handling(XklEngine *
engine);
/**
+ * xkl_engine_set_secondary_groups_mask:
+ * @engine: the engine
+ * @mask: new group mask
+ *
* Sets the secondary groups (one bit per group).
* Secondary groups require explicit "allowance" for switching
- * @param mask is a new group mask
- * @see xkl_allow_one_switch_to_secondary_group
*/
extern void xkl_engine_set_secondary_groups_mask(XklEngine *
engine,
guint mask);
/**
- * @return the secondary group mask
+ * xkl_engine_get_secondary_groups_mask:
+ * @engine: the engine
+ *
+ * Returns: the secondary group mask
*/
extern guint xkl_engine_get_secondary_groups_mask(XklEngine *
engine);
/**
+ * xkl_engine_group_set_default:
+ * @engine: the engine
+ * @group: default group
+ *
* Configures the default group set on window creation.
* If -1, no default group is used
- * @param group the default group
*/
extern void xkl_engine_group_set_default(XklEngine * engine,
gint group);
/**
+ * xkl_engine_group_get_default:
+ * @engine: the engine
+ *
* Returns the default group set on window creation
* If -1, no default group is used
- * @return the default group
+ *
+ * Returns: the default group
*/
extern gint xkl_engine_group_get_default(XklEngine * engine);
-/** @} */
-
#ifdef __cplusplus
}
#endif /* __cplusplus */
diff --git a/libxklavier/xklavier.h b/libxklavier/xklavier.h
index b9a6a55..5dcb8c5 100644
--- a/libxklavier/xklavier.h
+++ b/libxklavier/xklavier.h
@@ -1,7 +1,3 @@
-/**
- * @file xklavier.h
- */
-
#ifndef __XKLAVIER_H__
#define __XKLAVIER_H__
@@ -21,41 +17,38 @@ extern "C" {
#endif
/**
- * @defgroup debugerr Debugging, error processing
- * @{
- */
-
-/**
- * @return the text message (statically allocated) of the last error
+ * xkl_get_last_error:
+ *
+ * Returns: the text message (statically allocated) of the last error
*/
extern const gchar *xkl_get_last_error(void);
/**
- * Output (optionally) some debug info
- * @param file is the name of the source file.
+ * _xkl_debug:
+ * @file: the name of the source file.
* Preprocessor symbol__FILE__ should be used here
- * @param function is a name of the function
+ * @function: name of the function
* Preprocessor symbol__func__ should be used here
- * @param level is a level of the message
- * @param format is a format (like in printf)
- * @see xkl_debug
+ * @level: level of the message
+ * @format: is a format (like in printf)
+ *
+ * Output (optionally) some debug info
*/
extern void _xkl_debug(const gchar file[], const gchar function[],
gint level, const gchar format[], ...);
/**
- * Custom log output method for _xkl_debug. This appender is NOT called if the
- * level of the message is greater than currently set debug level.
- *
- * @param file is the name of the source file.
+ * XklLogAppender:
+ * @file: name of the source file.
* Preprocessor symbol__FILE__ should be used here
- * @param function is a name of the function
+ * @function: name of the function
* Preprocessor symbol__func__ should be used here
- * @param level is a level of the message
- * @param format is a format (like in printf)
- * @param args is the list of parameters
- * @see _xkl_debug
- * @see xkl_set_debug_level
+ * @level: level of the message
+ * @format: format (like in printf)
+ * @args: list of parameters
+ *
+ * Custom log output method for _xkl_debug. This appender is NOT called if the
+ * level of the message is greater than currently set debug level.
*/
typedef void (*XklLogAppender) (const gchar file[],
const gchar function[],
@@ -64,15 +57,16 @@ extern "C" {
va_list args);
/**
- * Default log output method. Sends everything to stdout.
- *
- * @param file is the name of the source file.
+ * xkl_default_log_appender:
+ * @file: name of the source file.
* Preprocessor symbol__FILE__ should be used here
- * @param function is a name of the function
+ * @function: name of the function
* Preprocessor symbol__func__ should be used here
- * @param level is a level of the message
- * @param format is a format (like in printf)
- * @param args is the list of parameters
+ * @level: level of the message
+ * @format: format (like in printf)
+ * @args: list of parameters
+ *
+ * Default log output method. Sends everything to stdout.
*/
extern void xkl_default_log_appender(const gchar file[],
const gchar function[],
@@ -81,37 +75,39 @@ extern "C" {
va_list args);
/**
+ * xkl_set_log_appender:
+ * @fun: new log appender
+ *
* Installs the custom log appender.function
- * @param fun is the new log appender
*/
extern void xkl_set_log_appender(XklLogAppender fun);
/**
+ * xkl_set_debug_level:
+ * @level: new debug level
+ *
* Sets maximum debug level.
* Message of the level more than the one set here - will be ignored
- * @param level is a new debug level
*/
extern void xkl_set_debug_level(gint level);
-/* Just to make doxygen happy - two block with/without @param format */
-#if defined(G_HAVE_GNUC_VARARGS)
-/**
- * Output (optionally) some debug info
- * @param level is a level of the message
- * @param format is a format (like in printf)
- * @see _xkl_Debug
- */
-#else
+#ifdef G_HAVE_ISO_VARARGS
/**
+ * xkl_debug:
+ * @level: level of the message
+ *
* Output (optionally) some debug info
- * @param level is a level of the message
- * @see _xkl_Debug
*/
-#endif
-#ifdef G_HAVE_ISO_VARARGS
#define xkl_debug( level, ... ) \
_xkl_debug( __FILE__, __func__, level, __VA_ARGS__ )
#elif defined(G_HAVE_GNUC_VARARGS)
+/**
+ * xkl_debug:
+ * @level: level of the message
+ * @format: format (like in printf)
+ *
+ * Output (optionally) some debug info
+ */
#define xkl_debug( level, format, args... ) \
_xkl_debug( __FILE__, __func__, level, format, ## args )
#else
@@ -119,8 +115,6 @@ extern "C" {
_xkl_debug( __FILE__, __func__, level, __VA_ARGS__ )
#endif
-/** @} */
-
#ifdef __cplusplus
}
#endif /* __cplusplus */
diff --git a/libxklavier/xklavier_evt.c b/libxklavier/xklavier_evt.c
index c9801ba..a367c5d 100644
--- a/libxklavier/xklavier_evt.c
+++ b/libxklavier/xklavier_evt.c
@@ -65,7 +65,7 @@ xkl_engine_filter_events(XklEngine * engine, XEvent * xev)
return 1;
}
-/**
+/*
* FocusIn handler
*/
void
@@ -121,7 +121,7 @@ xkl_engine_process_focus_in_evt(XklEngine * engine,
xkl_debug(150,
"Leaving transparent window\n");
- /**
+ /*
* Reload the current state from the current window.
* Do not do it for transparent window - we keep the state from
* the _previous_ window.
@@ -195,7 +195,7 @@ xkl_engine_process_focus_in_evt(XklEngine * engine,
group,
selected_window_state.
group);
- /**
+ /*
* For fast mouse movements - the state is probably not updated yet
* (because of the group change notification being late).
* so we'll enforce the update. But this should only happen in GPA mode
@@ -285,7 +285,7 @@ xkl_engine_process_focus_in_evt(XklEngine * engine,
}
}
-/**
+/*
* FocusOut handler
*/
void
@@ -311,7 +311,7 @@ xkl_engine_process_focus_out_evt(XklEngine * engine,
if (xkl_engine_is_window_transparent(engine, fev->window)) {
xkl_debug(150, "Leaving transparent window!\n");
-/**
+/*
* If we are leaving the transparent window - we skip the restore operation.
* This is useful for secondary groups switching from the transparent control
* window.
@@ -325,7 +325,7 @@ xkl_engine_process_focus_out_evt(XklEngine * engine,
}
}
-/**
+/*
* PropertyChange handler
* Interested in :
* + for XKLL_MANAGE_WINDOW_STATES
@@ -400,7 +400,7 @@ xkl_engine_process_property_evt(XklEngine * engine, XPropertyEvent * pev)
} /* XKLL_MANAGE_WINDOW_STATES */
}
-/**
+/*
* CreateNotify handler. Just interested in properties and focus events...
*/
void
@@ -443,7 +443,7 @@ xkl_engine_process_create_window_evt(XklEngine * engine,
}
}
-/**
+/*
* Just error handler - sometimes we get BadWindow error for already gone
* windows, so we'll just ignore
*/
@@ -473,7 +473,7 @@ xkl_process_error(Display * dpy, XErrorEvent * evt)
}
}
-/**
+/*
* Some common functionality for Xkb handler
*/
void
@@ -495,7 +495,7 @@ xkl_engine_process_state_modification(XklEngine * engine,
return;
}
- /**
+ /*
* Only if we manage states - otherwise xkl_engine_priv(engine,curr_toplvl_win) does not make sense
*/
if (!xkl_engine_find_toplevel_window
@@ -518,7 +518,7 @@ xkl_engine_process_state_modification(XklEngine * engine,
if (focused_toplevel !=
xkl_engine_priv(engine, curr_toplvl_win)) {
- /**
+ /*
* If not state - we got the new window
*/
if (!xkl_engine_get_toplevel_window_state
@@ -534,7 +534,7 @@ xkl_engine_process_state_modification(XklEngine * engine,
&xkl_engine_priv(engine,
curr_state));
}
- /**
+ /*
* There is state - just get the state from the window
*/
else {
diff --git a/libxklavier/xklavier_evt_xkb.c b/libxklavier/xklavier_evt_xkb.c
index 4901e79..c5b9c73 100644
--- a/libxklavier/xklavier_evt_xkb.c
+++ b/libxklavier/xklavier_evt_xkb.c
@@ -8,7 +8,7 @@
#include "xklavier_private.h"
#include "xklavier_private_xkb.h"
-/**
+/*
* XKB event handler
*/
gint
@@ -30,7 +30,7 @@ xkl_xkb_process_x_event(XklEngine * engine, XEvent * xev)
xkl_debug(150, "Xkb event detected\n");
switch (kev->any.xkb_type) {
- /**
+ /*
* Group is changed!
*/
case XkbStateNotify:
@@ -63,7 +63,7 @@ xkl_xkb_process_x_event(XklEngine * engine, XEvent * xev)
break;
- /**
+ /*
* Indicators are changed!
*/
case XkbIndicatorStateNotify:
@@ -85,7 +85,7 @@ xkl_xkb_process_x_event(XklEngine * engine, XEvent * xev)
0, inds, TRUE);
break;
- /**
+ /*
* The configuration is changed!
*/
case XkbIndicatorMapNotify:
@@ -105,7 +105,7 @@ xkl_xkb_process_x_event(XklEngine * engine, XEvent * xev)
"XKB event: XkbNewKeyboardNotify");
break;
- /**
+ /*
* ...Not interested...
*/
default:
diff --git a/libxklavier/xklavier_private.h b/libxklavier/xklavier_private.h
index ed1ff59..92d0182 100644
--- a/libxklavier/xklavier_private.h
+++ b/libxklavier/xklavier_private.h
@@ -45,17 +45,17 @@ struct _XklEnginePrivate {
Display *display;
- /**
+ /*
* Backend name
*/
const gchar *backend_id;
- /**
+ /*
* Functions supported by the backend, combination of XKLF_* constants
*/
guint8 features;
- /**
+ /*
* Activates the configuration.
* xkb: create proper the XkbDescRec and send it to the server
* xmodmap: save the property, init layout #1
@@ -63,14 +63,14 @@ struct _XklEnginePrivate {
gboolean(*activate_config_rec) (XklEngine * engine,
const XklConfigRec * data);
- /**
+ /*
* Background-specific initialization.
* xkb: XkbInitAtoms - init internal xkb atoms table
* xmodmap: void.
*/
void (*init_config_registry) (XklConfigRegistry * config);
- /**
+ /*
* Loads the registry tree into DOM (using whatever path(s))
* The XklVTConfigFreeRegistry is static - no virtualization necessary.
* xkb: loads xml from XKB_BASE+"/rules/"+ruleset+".xml"
@@ -78,7 +78,7 @@ struct _XklEnginePrivate {
*/
gboolean(*load_config_registry) (XklConfigRegistry * config);
- /**
+ /*
* Write the configuration into the file (binary/textual)
* xkb: write xkb or xkm file
* xmodmap: if text requested, just dump XklConfigRec to the
@@ -89,28 +89,28 @@ struct _XklEnginePrivate {
const XklConfigRec * data,
const gboolean binary);
- /**
+ /*
* Get the list of the group names
* xkb: return cached list of the group names
* xmodmap: return the list of layouts from the internal XklConfigRec
*/
const gchar **(*get_groups_names) (XklEngine * engine);
- /**
+ /*
* Get the maximum number of loaded groups
* xkb: returns 1 or XkbNumKbdGroups
* xmodmap: return 0
*/
guint(*get_max_num_groups) (XklEngine * engine);
- /**
+ /*
* Get the number of loaded groups
* xkb: return from the cached XkbDesc
* xmodmap: return number of layouts from internal XklConfigRec
*/
guint(*get_num_groups) (XklEngine * engine);
- /**
+ /*
* Switches the keyboard to the group N
* xkb: simple one-liner to call the XKB function
* xmodmap: changes the root window property
@@ -118,35 +118,35 @@ struct _XklEnginePrivate {
*/
void (*lock_group) (XklEngine * engine, gint group);
- /**
+ /*
* Handles X events.
* xkb: XkbEvent handling
* xmodmap: keep track on the root window properties. What else can we do?
*/
gint(*process_x_event) (XklEngine * engine, XEvent * xev);
- /**
+ /*
* Flushes the cached server config info.
* xkb: frees XkbDesc
* xmodmap: frees internal XklConfigRec
*/
void (*free_all_info) (XklEngine * engine);
- /**
+ /*
* Compares the cached info with the actual one, from the server
* xkb: Compares some parts of XkbDescPtr
* xmodmap: returns False
*/
gboolean(*if_cached_info_equals_actual) (XklEngine * engine);
- /**
+ /*
* Loads the configuration info from the server
* xkb: loads XkbDesc, names, indicators
* xmodmap: loads internal XklConfigRec from server
*/
gboolean(*load_all_info) (XklEngine * engine);
- /**
+ /*
* Gets the current state
* xkb: XkbGetState and XkbGetIndicatorState
* xmodmap: check the root window property (regarding the group)
@@ -154,21 +154,21 @@ struct _XklEnginePrivate {
void (*get_server_state) (XklEngine * engine,
XklState * current_state_out);
- /**
+ /*
* Stop tracking the keyboard-related events
* xkb: XkbSelectEvents(..., 0)
* xmodmap: Ungrab the switching shortcut.
*/
gint(*pause_listen) (XklEngine * engine);
- /**
+ /*
* Start tracking the keyboard-related events
* xkb: XkbSelectEvents + XkbSelectEventDetails
* xmodmap: Grab the switching shortcut.
*/
gint(*resume_listen) (XklEngine * engine);
- /**
+ /*
* Set the indicators state from the XklState
* xkb: XklSetIndicator for all indicators
* xmodmap: NULL. Not supported
@@ -176,37 +176,37 @@ struct _XklEnginePrivate {
void (*set_indicators) (XklEngine * engine,
const XklState * window_state);
- /**
+ /*
* Perform the cleanup
*/
void (*finalize) (XklEngine * engine);
/* all data is private - no direct access */
- /**
+ /*
* The base configuration atom.
* xkb: _XKB_RF_NAMES_PROP_ATOM
* xmodmap: "_XMM_NAMES"
*/
Atom base_config_atom;
- /**
+ /*
* The configuration backup atom
* xkb: "_XKB_RULES_NAMES_BACKUP"
* xmodmap: "_XMM_NAMES_BACKUP"
*/
Atom backup_config_atom;
- /**
+ /*
* Fallback for missing model
*/
const gchar *default_model;
- /**
+ /*
* Fallback for missing layout
*/
const gchar *default_layout;
- /**
+ /*
* Any stuff backend might need to put in here
*/
gpointer backend;
diff --git a/libxklavier/xklavier_private_xkb.h b/libxklavier/xklavier_private_xkb.h
index 1e1153e..0fa7d15 100644
--- a/libxklavier/xklavier_private_xkb.h
+++ b/libxklavier/xklavier_private_xkb.h
@@ -92,7 +92,7 @@ extern void xkl_xkb_term(XklEngine * engine);
#else
-/**
+/*
* VERY VERY BAD STYLE, some kind of 'protected' methods -
* but some programs may want to hook into them.
*/
diff --git a/libxklavier/xklavier_toplevel.c b/libxklavier/xklavier_toplevel.c
index 7cdf6df..6b19d7e 100644
--- a/libxklavier/xklavier_toplevel.c
+++ b/libxklavier/xklavier_toplevel.c
@@ -37,7 +37,7 @@ xkl_engine_set_toplevel_window_transparent(XklEngine * engine,
}
}
-/**
+/*
* "Adds" app window to the set of managed windows.
* Actually, no data structures involved. The only thing we do is save app state
* and register ourselves us listeners.
@@ -111,7 +111,7 @@ xkl_engine_add_toplevel_window(XklEngine * engine, Window toplevel_win,
xkl_debug(150, "done\n");
}
-/**
+/*
* Checks the window and goes up
*/
gboolean
@@ -152,7 +152,7 @@ xkl_engine_find_toplevel_window_bottom_to_top(XklEngine * engine,
toplevel_win_out);
}
-/**
+/*
* Recursively finds "App window" (window with WM_STATE) for given window.
* First, checks the window itself
* Then, for first level of recursion, checks childen,
@@ -197,7 +197,7 @@ xkl_engine_find_toplevel_window(XklEngine * engine, Window win,
return FALSE;
}
- /**
+ /*
* Here we first check the children (in case win is just above some "App Window")
* and then go upstairs
*/
@@ -228,7 +228,7 @@ xkl_engine_find_toplevel_window(XklEngine * engine, Window win,
return rv;
}
-/**
+/*
* Gets the state from the window property
*/
gboolean
@@ -285,7 +285,7 @@ xkl_engine_get_toplevel_window_state(XklEngine * engine,
return ret;
}
-/**
+/*
* Deletes the state from the window properties
*/
void
@@ -296,7 +296,7 @@ xkl_engine_remove_toplevel_window_state(XklEngine * engine,
xkl_engine_priv(engine, atoms)[XKLAVIER_STATE]);
}
-/**
+/*
* Saves the state into the window properties
*/
void
diff --git a/libxklavier/xklavier_util.c b/libxklavier/xklavier_util.c
index 88a1a27..741bdc7 100644
--- a/libxklavier/xklavier_util.c
+++ b/libxklavier/xklavier_util.c
@@ -86,7 +86,7 @@ xkl_engine_save_state(XklEngine * engine, Window win, XklState * state)
state);
}
-/**
+/*
* Prepares the name of window suitable for debugging (32characters long).
*/
gchar *
@@ -111,7 +111,7 @@ xkl_engine_get_current_window(XklEngine * engine)
return xkl_engine_priv(engine, curr_toplvl_win);
}
-/**
+/*
* Loads subtree.
* All the windows with WM_STATE are added.
* All the windows within level 0 are listened for focus and property
@@ -181,7 +181,7 @@ xkl_engine_load_subtree(XklEngine * engine, Window window, gint level,
return retval;
}
-/**
+/*
* Checks whether given window has WM_STATE property (i.e. "App window").
*/
gboolean
@@ -203,7 +203,7 @@ xkl_engine_if_window_has_wm_state(XklEngine * engine, Window win)
return type != None;
}
-/**
+/*
* Finds out the official parent window (accortind to XQueryTree)
*/
Window