文件名称:KDE Architecture Overview
文件大小:485KB
文件格式:PDF
更新时间:2011-03-13 14:15:06
Architecture KDE Overview
KDE Architecture Overview
1 Librarystructure
1.1 Libraries byname . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
1.2 Groupedclasses . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
2 Graphics 6
2.1 Low-levelgraphics with QPainter . . . . . . . . . . . . . . . . . 6
2.1.1 Renderingwith QPainter . . . . . . . . . . . . . . . . . . 6
2.1.2 Transformations . . . . . . . . . . . . . . . . . . . . . . . 7
2.1.3 Settingstrokingattributes . . . . . . . . . . . . . . . . . . 8
2.1.4 Settingfillattributes . . . . . . . . . . . . . . . . . . . . . 9
2.1.5 Color . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
2.1.6 Othersettings . . . . . . . . . . . . . . . . . . . . . . . . . 10
2.1.7 Drawinggraphicsprimitives . . . . . . . . . . . . . . . . 11
2.1.8 Drawingpixmapsand images . . . . . . . . . . . . . . . 11
2.1.9 Drawingtext . . . . . . . . . . . . . . . . . . . . . . . . . 11
2.2 Structured graphicswith QCanvas . . . . . . . . . . . . . . . . . 12
2.3 3DgraphicswithOpenGL . . . . . . . . . . . . . . . . . . . . . . 13
2.3.1 Low-level interface . . . . . . . . . . . . . . . . . . . . . . 13
2.3.2 High-levelinterfaces . . . . . . . . . . . . . . . . . . . . . 14
3 User interface 15
3.1 Theactionpattern . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
3.2 Defining menus and toolbars inXML . . . . . . . . . . . . . . . 15
3.2.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . 15
3.2.2 Anexample: MenuinKView . . . . . . . . . . . . . . . . 16
KDE Architecture Overview
3.2.3 Anexample: Toolbars inKonqueror . . . . . . . . . . . . 18
3.2.4 Dynamicalmenus . . . . . . . . . . . . . . . . . . . . . . 19
3.2.5 Contextmenus . . . . . . . . . . . . . . . . . . . . . . . . 19
3.3 Providingonlinehelp . . . . . . . . . . . . . . . . . . . . . . . . . 20
4 Componentsandservices 23
4.1 KDE services . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
4.1.1 WhatareKDEservices? . . . . . . . . . . . . . . . . . . . 23
4.1.2 Definingservicetypes . . . . . . . . . . . . . . . . . . . . 24
4.1.3 Definingsharedlibrary services . . . . . . . . . . . . . . 24
4.1.4 Using sharedlibrary services . . . . . . . . . . . . . . . . 25
4.1.5 DefiningDCOP services . . . . . . . . . . . . . . . . . . . 26
4.1.6 Using DCOPservices . . . . . . . . . . . . . . . . . . . . 27
4.2 MIMEtypes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
4.2.1 WhatareMIMEtypes? . . . . . . . . . . . . . . . . . . . . 28
4.2.2 DefiningMIMEtypes . . . . . . . . . . . . . . . . . . . . 29
4.2.3 DeterminingtheMIMEtypeof data . . . . . . . . . . . . 29
4.2.4 Mapping aMIME typetoan applicationor service . . . 31
4.2.5 Miscellaneous . . . . . . . . . . . . . . . . . . . . . . . . . 32
4.3 Networktransparency . . . . . . . . . . . . . . . . . . . . . . . . 32
4.3.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . 32
4.3.2 Using KIO . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
4.3.3 Directoryentries . . . . . . . . . . . . . . . . . . . . . . . 35
4.3.4 Synchronoususage . . . . . . . . . . . . . . . . . . . . . . 36
4.3.5 Metadata . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
4.3.6 Scheduling . . . . . . . . . . . . . . . . . . . . . . . . . . . 38
4.3.7 Definingan ioslave . . . . . . . . . . . . . . . . . . . . . . 39
4.3.8 Implementing an ioslave . . . . . . . . . . . . . . . . . . . 40
4.3.9 Communicatingback tothe application . . . . . . . . . . 41
4.3.10 Interactingwiththeuser . . . . . . . . . . . . . . . . . . . 42
A Licensing 43