Warning, /education/gcompris/src/core/Mainpage.dox is written in an unsupported language. File is not indexed.
0001 /** 0002 @mainpage GCompris-qt Core Documentation 0003 0004 The GCompris core comprises different classes and QML components, that can 0005 be used by activities for their purposes. The core can roughly be 0006 subdivided into 0007 <ol> 0008 <li> 0009 @ref infrastructure, that consists of some fundamental source code 0010 infrastructure needed by the bare GCompris application to run and 0011 </li> 0012 <li> 0013 @ref components that define some common building blocks for activities 0014 and thus assure a consistent integration into the GCompris ecosystem. 0015 </li> 0016 </ol> 0017 0018 Accordingly, activity developers should first have a look at the 0019 @ref components section to get an overview of the activity interface they 0020 have to implement. 0021 0022 Most of the classes from the @ref infrastructure section are not of immediate 0023 use for activity developers, unless they want to contribute/extend core 0024 functionalities. One exception is the ApplicationInfo singleton 0025 that contains some accessor methods to the native layer, that are often of 0026 use for concrete activitites. 0027 */ 0028 0029 /** 0030 @defgroup infrastructure Core Infrastructure 0031 0032 This section contains all objects that implement internal core functions 0033 needed by the bare GCompris application to run. 0034 0035 Among the more important classes are the following: 0036 0037 <ul> 0038 <li> 0039 The ApplicationSettings singleton maintains the persistent settings of 0040 GCompris. 0041 </li> 0042 0043 <li> 0044 ApplicationInfo is kind of a general purpose container for helper functions 0045 often accessing native platform properties that are needed in many places 0046 of GCompris. 0047 </li> 0048 </ul> 0049 */ 0050 0051 /** 0052 @defgroup components Core QML Components 0053 This section contains all core QML components, that encapsulate common 0054 behaviour and can be used by activities in order to integrate well into the 0055 GCompris ecosystem. 0056 0057 Each activity has to provide meta information about itself by implementing the 0058 ActivityInfo template and derive from ActivityBase as a container for its 0059 QML scene. 0060 0061 Each activity @em must add a navigation Bar to its viewport. Activities that 0062 support sublevels should use a Score element. The Bonus component can be used 0063 for audio feedback upon winning/loosing. If an activity uses per-activity 0064 configuration it should use DialogActivityConfig. 0065 0066 For audio playback the GCAudio wrapper should be used, and GCText's purpose is 0067 to unify Text handling in GCompris. 0068 0069 Besides these, there are more components that provide controls or 0070 styles for GCompris. 0071 0072 Cf. Template.qml for a skeleton that can also be used as a starting point for 0073 developing new activities. 0074 0075 Last but not least have a look at the existing activities to learn by example. 0076 */