summaryrefslogtreecommitdiff
path: root/development/pim/pim_howto/pim_howto.lyx
Unidiff
Diffstat (limited to 'development/pim/pim_howto/pim_howto.lyx') (more/less context) (ignore whitespace changes)
-rw-r--r--development/pim/pim_howto/pim_howto.lyx112
1 files changed, 60 insertions, 52 deletions
diff --git a/development/pim/pim_howto/pim_howto.lyx b/development/pim/pim_howto/pim_howto.lyx
index 4571996..1e43d63 100644
--- a/development/pim/pim_howto/pim_howto.lyx
+++ b/development/pim/pim_howto/pim_howto.lyx
@@ -54,4 +54,4 @@
54\end_preamble 54\end_preamble
55\language german 55\language american
56\inputencoding auto 56\inputencoding default
57\fontscheme ae 57\fontscheme ae
@@ -72,3 +72,3 @@
72\defskip medskip 72\defskip medskip
73\quotes_language german 73\quotes_language english
74\quotes_times 2 74\quotes_times 2
@@ -99,3 +99,3 @@ The Opie-Pim API provides a powerfull access interface to the PIM (Personal
99 Information Management) data which contains your contact information, the 99 Information Management) data which contains your contact information, the
100 dates in your calender tool (in this paper called datebook events) and 100 dates in your calendar tool (in this paper called datebook events) and
101 your todo events. 101 your todo events.
@@ -108,3 +108,3 @@ The Opie-Pim API provides a powerfull access interface to the PIM (Personal
108While starting to read the automatically generated API-documentation, the 108While starting to read the automatically generated API-documentation, the
109 user may be confused by a lot of unneccessary classes and details which 109 user may be confused by a lot of unnecessary classes and details which
110 makes the quick start not as easy as possible. 110 makes the quick start not as easy as possible.
@@ -126,3 +126,3 @@ Introduction
126 126
127Before starting to jump into the work, we should introduce some specialities 127Before starting to jump into the work, we should introduce some specialties
128 of the PIM API, first. 128 of the PIM API, first.
@@ -135,3 +135,3 @@ The PIM-API heavily uses C++ templates (as known as generic classes), but
135 they work! Most of the API works without even seeing the templates. 135 they work! Most of the API works without even seeing the templates.
136 In some cases whe have to use them (for instance to use the factory classes), 136 In some cases we have to use them (for instance to use the factory classes),
137 but this guide will provide examples which should help to find the path 137 but this guide will provide examples which should help to find the path
@@ -139,3 +139,3 @@ The PIM-API heavily uses C++ templates (as known as generic classes), but
139 But it is a good idea to read some short introduction of templates to avoid 139 But it is a good idea to read some short introduction of templates to avoid
140 unneccessary mistakes. 140 unnecessary mistakes.
141\layout Enumerate 141\layout Enumerate
@@ -153,3 +153,3 @@ backend.
153 how to access the databases and what to do with the data. 153 how to access the databases and what to do with the data.
154 As we just want to access data, this paper just focusses the frontend. 154 As we just want to access data, this paper just focuses the frontend.
155 Thus, you should ignore all classes which contains something like 155 Thus, you should ignore all classes which contains something like
@@ -162,4 +162,4 @@ backend
162 162
163 in its name! Backends are just interessting for people who want to extend 163 in its name! Backends are just interesting for people who want to extend
164 or implement new possiblities about how to access databases, which will 164 or implement new possibilities about how to access databases, which will
165 be discussed at the end of this paper. 165 be discussed at the end of this paper.
@@ -219,3 +219,3 @@ OPimAccessFactory
219 219
220T* defaultAccess (typename OPimGlobal::PimType type, const QString &appName) 220T* defaultAccess (typename OPimGlobal::PimType type, const QString &appName)
221\layout Standard 221\layout Standard
@@ -243,3 +243,3 @@ If everything works as expected, you will receive a pointer to the contact
243\begin_inset Foot 243\begin_inset Foot
244collapsed true 244collapsed false
245 245
@@ -277,5 +277,5 @@ defaultAccess()
277\emph default 277\emph default
278, the default dabase is accessed automatically 278, the default database is accessed automatically
279\begin_inset Foot 279\begin_inset Foot
280collapsed true 280collapsed false
281 281
@@ -362,3 +362,3 @@ data-class
362\begin_inset Foot 362\begin_inset Foot
363collapsed true 363collapsed false
364 364
@@ -376,3 +376,3 @@ see
376\begin_inset Foot 376\begin_inset Foot
377collapsed true 377collapsed false
378 378
@@ -390,3 +390,3 @@ see
390\begin_inset Foot 390\begin_inset Foot
391collapsed true 391collapsed false
392 392
@@ -408,3 +408,3 @@ bool load ();
408 408
409bool reload (); 409bool reload ();
410\layout LyX-Code 410\layout LyX-Code
@@ -416,9 +416,9 @@ bool save ();
416 416
417bool add (const T& t); 417bool add (const T& t);
418\layout LyX-Code 418\layout LyX-Code
419 419
420bool remove (const T& t); 420bool remove (const T& t);
421\layout LyX-Code 421\layout LyX-Code
422 422
423bool replace (const T& t); 423bool replace (const T& t);
424\layout Standard 424\layout Standard
@@ -462,3 +462,3 @@ without
462\begin_inset Foot 462\begin_inset Foot
463collapsed true 463collapsed false
464 464
@@ -466,3 +466,3 @@ collapsed true
466 466
467We should check whether all dabases behave like this! (se) 467We should check whether all databases behave like this! (se)
468\end_inset 468\end_inset
@@ -498,3 +498,3 @@ OPimRecordList
498 498
499List allRecords (); 499List allRecords();
500\layout Standard 500\layout Standard
@@ -506,6 +506,6 @@ List
506 just contains a list of uid's to take care of memory space. 506 just contains a list of uid's to take care of memory space.
507 As every record is identified by an unique identifaction number which is 507 As every record is identified by an unique identification number which
508 called UID (Unique IDentification), these numbers just exists once in the 508 is called UID (Unique Identification), these numbers just exists once in
509 database which is currently on access! To receive the real record, you 509 the database which is currently on access! To receive the real record,
510 have to use the operation 510 you have to use the operation
511\begin_inset Quotes gld 511\begin_inset Quotes gld
@@ -517,6 +517,6 @@ find()
517 517
518 with a valid UID as paramter: 518 with a valid UID as parameter:
519\layout LyX-Code 519\layout LyX-Code
520 520
521T find (UID uid); 521T find (UID uid);
522\layout Standard 522\layout Standard
@@ -560,3 +560,3 @@ As shown in the previous chapter, all we need to access the PIM-Database
560 560
561But first we will start with intoducing some features of the 561But first we will start with introducing some features of the
562\series bold 562\series bold
@@ -583,3 +583,3 @@ defaultAccess()
583 583
584 to request an access-object to the dafault backend. 584 to request an access-object to the default backend.
585 Whether this default backend will access the XML, VCard or SQLite database 585 Whether this default backend will access the XML, VCard or SQLite database
@@ -618,3 +618,3 @@ defaultAccess()
618If the developer wants to select a special database type for sure without 618If the developer wants to select a special database type for sure without
619 unnecessary side effects, he has to use the oparation 619 unnecessary side effects, he has to use the operation
620\emph on 620\emph on
@@ -625,3 +625,3 @@ create()
625 625
626T * create (OPimGlobal::PimType type, OPimGlobal::DatabaseStyle dbStyle, 626T* create (OPimGlobal::PimType type, OPimGlobal::DatabaseStyle dbStyle,
627 const QString &appName, const QString &fileName=QString::null) 627 const QString &appName, const QString &fileName=QString::null)
@@ -629,3 +629,3 @@ T * create (OPimGlobal::PimType type, OPimGlobal::DatabaseStyle dbStyle,
629 629
630Some paramters are already known, like type and appName (see section 630Some parameters are already known, like type and appName (see section
631\begin_inset LatexCommand \ref{sec:Instantiate-the-Access} 631\begin_inset LatexCommand \ref{sec:Instantiate-the-Access}
@@ -748,6 +748,6 @@ In most cases it is not sufficient to receive just a list of all information
748 able to sort it. 748 able to sort it.
749 For this kind of excercise we provide some special operations which provide 749 For this kind of exercise we provide some special operations which provide
750 searching and sorting in an incremental manner 750 searching and sorting in an incremental manner
751\begin_inset Foot 751\begin_inset Foot
752collapsed true 752collapsed false
753 753
@@ -842,3 +842,3 @@ The function is defined like this:
842 842
843List matchRegexp (const QRegExp &r); 843List matchRegexp (const QRegExp& r);
844\layout Standard 844\layout Standard
@@ -899,3 +899,3 @@ OPimContact searchQuery;
899searchQuery.setLastName( 899searchQuery.setLastName(
900\begin_inset Quotes gld 900\begin_inset Quotes eld
901\end_inset 901\end_inset
@@ -903,3 +903,3 @@ searchQuery.setLastName(
903Eilers 903Eilers
904\begin_inset Quotes grd 904\begin_inset Quotes erd
905\end_inset 905\end_inset
@@ -910,3 +910,3 @@ Eilers
910searchQuery.setHomeZip( 910searchQuery.setHomeZip(
911\begin_inset Quotes gld 911\begin_inset Quotes eld
912\end_inset 912\end_inset
@@ -914,3 +914,3 @@ searchQuery.setHomeZip(
9143* 9143*
915\begin_inset Quotes grd 915\begin_inset Quotes srd
916\end_inset 916\end_inset
@@ -961,4 +961,4 @@ The next step is to put this query into the operation which is defined like
961 961
962List queryByExample (const T& query, int querySettings, const QDateTime 962List queryByExample (const T& query, int querySettings, const QDateTime&
963 &startperiod=QDateTime()) 963 startperiod=QDateTime())
964\layout Standard 964\layout Standard
@@ -982,3 +982,11 @@ querySettings
982 to configure the search properly. 982 to configure the search properly.
983 This settings are defined by the enum QuerySettings in the class 983 This settings are defined by the enumeration
984\begin_inset Quotes gld
985\end_inset
986
987QuerySettings
988\begin_inset Quotes grd
989\end_inset
990
991 in the class
984\series bold 992\series bold
@@ -1084,3 +1092,3 @@ It should be clear at this stage, that this query is very powerful and -
1084\begin_inset Foot 1092\begin_inset Foot
1085collapsed true 1093collapsed false
1086 1094
@@ -1099,6 +1107,6 @@ At this time, just the contact database for XML and VCard is supporting
1099 1107
1100bool hasQuerySettings( uint querySettings ); 1108bool hasQuerySettings( uint querySettings );
1101\layout LyX-Code 1109\layout LyX-Code
1102 1110
1103uint querySettings(); 1111uint querySettings();
1104\layout Standard 1112\layout Standard
@@ -1204,3 +1212,3 @@ List
1204 as the first parameter. 1212 as the first parameter.
1205 The search operation will just occure on this set of uid's! 1213 The search operation will just occur on this set of uid's!
1206\layout Subsection 1214\layout Subsection
@@ -1214,3 +1222,3 @@ To sort a given dataset, you should use the following operation (or one
1214 1222
1215List sorted (const List& list, bool ascending, int sortOrder, int sortFilter, 1223List sorted (const List& list, bool ascending, int sortOrder, int sortFilter,
1216 const QArray< UID >& cats); 1224 const QArray< UID >& cats);
@@ -1403,3 +1411,3 @@ Internal Signal Handling: Automatic Propagation of Changes
1403 1411
1404Need to be written and is not implemented completly! 1412Need to be written and is not implemented completely!
1405\layout Chapter 1413\layout Chapter