summaryrefslogtreecommitdiffstats
path: root/kcontrol/kthememanager/README
blob: cd32a528ac384efc8ea9575c1a9a26977062bf90 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
This theme manager should handle installing, removing
and creating global visual KDE themes. It's written
from scratch, totally unrelated to the old kthememgr
which was not maintained and obsolete.

*** WARNING ***
The XML file format is still subject to change!
*** WARNING ***

(c) 2003, 2004 Lukas Tinkl <[email protected]>


A KDE theme consists of:
========================
- wallpapers or bg colors
- icons
- sounds
- color scheme
- cursor theme
- window decorations
- screensaver
- name of the widget theme
- themed apps (mainly Konqueror and Kicker)


Sample XML theme config file:
=============================
<ktheme version="1">
<general>
    <author value="Me" />
    <email value="[email protected]" />
    <homepage value="http://me.home.com" />
    <version value="0.1" />
    <comment value="this is a nice theme, bla bla" />
</general>
<desktop number="0" common="true|false">
    <mode id="Flat|Pattern|*Gradient" />
    <color1 rgb="#123456" />
    <color2 rgb="#123456" />
    <blending mode="" balance="" reverse="true|false" />
    <pattern name="fish" />
    <wallpaper url="theme:/wallpapers/desktop/image.jpg"
	mode="Centred|Tiled|CenterTiled|CentredMaxpect|TiledMaxpect|Scaled|CentredAutoFit" />
</desktop>
<icons name="crystalsvg" />
<sounds>
    <event object="global|twin" name="eventname" url="theme:/sounds/file.wav" />
    ...
</sounds>
<colors contrast="7">
    <alternateBackground rgb="#123456" object="global|twin"/>
    ...
</colors>
<cursors name="theme_name" />
<wm type="builtin|custom" name="twin_lib_name">
    <buttons left="M" right="HIAX" />
    <border size="number" />
</wm>
<konqueror>
    <wallpaper url="" />
    <bgcolor rgb="#123456" />
</konqueror>
<panel>
    <background url="theme:/wallpapers/panel.png" colorize="true|false" />
    <!-- or -->
    <transparent value="true|false" />
</panel>
<widgets name="Style Name" />
<screensaver name="saver.desktop" />
</kdetheme>


Theme storage:
==============
- a gzipped tarball, directory tree based (e.g. theme.kth)


Sample dir tree:
================
-- mytheme.kth
   - mytheme.xml
   - mytheme.preview.png
   - sounds/
   - wallpapers/
     - konqueror/
     - desktop/
     - panel/

     
The notion of "url" here:
=========================
- local: points to an already installed file in the system
  (must be a sole filename, e.g. "background.png"); this differs
  according to the theme part (ie. can be different for sounds
  and/or wallpapers)
- theme: relative to the root of the theme tarball or directory
  (e.g. theme:/wallpapers/desktop/image.png)
- other URLs are not allowed, the file must be contained
  either in the theme or in the target system