summaryrefslogtreecommitdiff
path: root/doc/metacity-theme.dtd
diff options
context:
space:
mode:
Diffstat (limited to 'doc/metacity-theme.dtd')
-rw-r--r--doc/metacity-theme.dtd273
1 files changed, 273 insertions, 0 deletions
diff --git a/doc/metacity-theme.dtd b/doc/metacity-theme.dtd
new file mode 100644
index 00000000..4c52a1a4
--- /dev/null
+++ b/doc/metacity-theme.dtd
@@ -0,0 +1,273 @@
+<!--
+ DTD for Metacity themes, as of Metacity 2.4.1
+ Author: Ross Burton <ross@burtonini.com>
+ Copyright (C) 2002 Ross Burton
+ Licensed under the GPL, version 2
+-->
+
+<!-- Top-level element -->
+<!ELEMENT metacity_theme (info,(window|frame_style_set|frame_style|frame_geometry|constant|draw_ops|menu_icon)+)>
+
+<!-- Theme metadata -->
+<!ELEMENT info (name?|author?|copyright?|date?|description?)*>
+<!ELEMENT name (#PCDATA)>
+<!ELEMENT author (#PCDATA)>
+<!ELEMENT copyright (#PCDATA)>
+<!ELEMENT date (#PCDATA)>
+<!ELEMENT description (#PCDATA)>
+
+<!ENTITY % xyrequired "
+ x CDATA #REQUIRED
+ y CDATA #REQUIRED
+">
+
+<!ENTITY % xyimplied "
+ x CDATA #IMPLIED
+ y CDATA #IMPLIED
+">
+
+<!ENTITY % widthheightrequired "
+ width CDATA #REQUIRED
+ height CDATA #REQUIRED
+">
+
+<!ENTITY % widthheightimplied "
+ width CDATA #IMPLIED
+ height CDATA #IMPLIED
+">
+
+<!ENTITY % boolean "(true|false)">
+
+<!ENTITY % piece_positions "
+(entire_background|titlebar|titlebar_middle|left_titlebar_edge|right_titlebar_edge|top_titlebar_edge|bottom_titlebar_edge|title|left_edge|right_edge|bottom_edge|overlay)
+">
+
+<!ENTITY % gtk-state "
+ state (normal|prelight|active|selected|insensitive) #REQUIRED
+">
+
+<!ENTITY % gtk-shadow "
+ shadow (none|in|out|etched_in|etched_out) #REQUIRED
+">
+
+
+<!-- The actual theme -->
+
+<!ELEMENT window EMPTY>
+<!ATTLIST window
+ type (normal|dialog|modal_dialog|menu|utility|border) #REQUIRED
+ style_set CDATA #REQUIRED
+>
+
+
+<!ELEMENT frame_style_set (frame+)>
+<!ATTLIST frame_style_set
+ name CDATA #REQUIRED
+ parent CDATA #IMPLIED
+>
+
+<!ELEMENT frame EMPTY>
+<!ATTLIST frame
+ focus (yes|no) #REQUIRED
+ state (normal|maximized|shaded|maximized_and_shaded) #REQUIRED
+ resize (both|horizontal|vertical|none) #REQUIRED
+ style CDATA #REQUIRED
+>
+
+<!ELEMENT frame_style (piece|button)*>
+<!ATTLIST frame_style
+ name CDATA #REQUIRED
+ geometry CDATA #REQUIRED
+ parent CDATA #IMPLIED
+>
+
+<!ELEMENT piece (draw_ops?)>
+<!ATTLIST piece
+ position %piece_positions; #REQUIRED
+ draw_ops CDATA #IMPLIED
+>
+
+<!ELEMENT button (draw_ops?)>
+<!ATTLIST button
+ function (menu|minimize|maximize|close|left_left_background|left_middle_background|left_right_background|right_left_background|right_middle_background|right_right_background) #REQUIRED
+ state (normal|prelight|pressed) #REQUIRED
+ draw_ops CDATA #IMPLIED
+>
+
+<!ELEMENT frame_geometry (border|(aspect_ratio|distance))+>
+<!ATTLIST frame_geometry
+ name CDATA #REQUIRED
+ parent CDATA #IMPLIED
+ title_scale (xx-small|x-small|small|medium|large|x-large|xx-large) #IMPLIED
+ has_title (true|false) 'true'
+ rounded_top_left %boolean; #IMPLIED
+ rounded_top_right %boolean; #IMPLIED
+ rounded_bottom_left %boolean; #IMPLIED
+ rounded_bottom_right %boolean; #IMPLIED
+>
+
+<!ELEMENT distance EMPTY>
+<!ATTLIST distance
+ name (left_width|right_width|bottom_height|title_vertical_pad|right_titlebar_edge|left_titlebar_edge|button_width|button_height) #REQUIRED
+ value CDATA #REQUIRED
+>
+
+<!ELEMENT border EMPTY>
+<!ATTLIST border
+ name CDATA #REQUIRED
+ top CDATA #REQUIRED
+ bottom CDATA #REQUIRED
+ left CDATA #REQUIRED
+ right CDATA #REQUIRED
+>
+
+<!ELEMENT aspect_ratio EMPTY>
+<!ATTLIST aspect_ratio
+ name CDATA #REQUIRED
+ value CDATA #REQUIRED
+>
+
+<!ELEMENT draw_ops (line|rectangle|arc|tint|gradient|image|gtk_arrow|gtk_box|gtk_vline|icon|title|clip|include|tile)*>
+<!-- not sure about this.. maybe it should be removed. see #3478 in theme-parser.c -->
+<!ATTLIST draw_ops
+ name CDATA #IMPLIED
+>
+
+<!ELEMENT line EMPTY>
+<!ATTLIST line
+ color CDATA #REQUIRED
+ x1 CDATA #REQUIRED
+ y1 CDATA #REQUIRED
+ x2 CDATA #REQUIRED
+ y2 CDATA #REQUIRED
+ width CDATA #IMPLIED
+ dash_on_length CDATA #IMPLIED
+ dash_off_length CDATA #IMPLIED
+>
+
+<!ELEMENT rectangle EMPTY>
+<!ATTLIST rectangle
+ color CDATA #REQUIRED
+ %xyrequired;
+ %widthheightrequired;
+ filled %boolean; 'false'
+>
+
+<!ELEMENT arc EMTPY>
+<!ATTLIST arc
+ color CDATA #REQUIRED
+ %xyrequired;
+ %widthheightrequired;
+ start_angle CDATA #REQUIRED
+ extent_angle CDATA #REQUIRED
+ filled %boolean; 'false'
+>
+
+<!ELEMENT icon EMPTY>
+<!ATTLIST icon
+ %xyrequired;
+ width CDATA #REQUIRED
+ height CDATA #REQUIRED
+ alpha CDATA #IMPLIED
+ fill_type (tile|scale) 'scale'
+>
+
+<!ELEMENT image EMPTY>
+<!ATTLIST image
+ filename CDATA #REQUIRED
+ colorize CDATA #IMPLIED
+ %xyrequired;
+ %widthheightrequired;
+ alpha CDATA #IMPLIED
+ fill_type (tile|scale) 'scale'
+>
+
+<!ELEMENT tile EMPTY>
+<!ATTLIST tile
+ name CDATA #REQUIRED
+ %xyrequired;
+ %widthheightrequired;
+ tile_xoffset CDATA #IMPLIED
+ tile_yoffset CDATA #IMPLIED
+ tile_width CDATA #REQUIRED
+ tile_height CDATA #REQUIRED
+>
+
+<!ELEMENT clip EMPTY>
+<!ATTLIST clip
+ %xyrequired;
+ %widthheightrequired;
+>
+
+<!ELEMENT title EMPTY>
+<!ATTLIST title
+ color CDATA #REQUIRED
+ %xyrequired;
+>
+
+<!ELEMENT tint EMPTY>
+<!ATTLIST tint
+ color CDATA #REQUIRED
+ %xyrequired;
+ %widthheightrequired;
+ alpha CDATA #REQUIRED
+>
+
+<!ELEMENT gtk_box EMPTY>
+<!ATTLIST gtk_box
+ %gtk-state;
+ %gtk-shadow;
+ %xyrequired;
+ %widthheightrequired;
+>
+
+<!ELEMENT gtk_arrow EMPTY>
+<!ATTLIST gtk_arrow
+ %gtk-state;
+ %gtk-shadow;
+ arrow (up|down|left|right) #REQUIRED
+ %xyrequired;
+ %widthheightrequired;
+ filed CDATA #IMPLIED
+>
+
+<!ELEMENT gtk_vline EMPTY>
+<!ATTLIST gtk_vline
+ %gtk-state;
+ x CDATA #REQUIRED
+ y1 CDATA #REQUIRED
+ y2 CDATA #REQUIRED
+>
+
+<!ELEMENT gradient (color)+>
+<!ATTLIST gradient
+ type (vertical|horizontal|diagonal) #REQUIRED
+ %xyrequired;
+ %widthheightrequired;
+ alpha CDATA #IMPLIED
+>
+
+<!ELEMENT color EMPTY>
+<!ATTLIST color
+ value CDATA #REQUIRED
+>
+
+<!ELEMENT include EMPTY>
+<!ATTLIST include
+ name CDATA #REQUIRED
+ %xyimplied;
+ %widthheightimplied;
+>
+
+<!ELEMENT constant EMPTY>
+<!ATTLIST constant
+ name CDATA #REQUIRED
+ value CDATA #REQUIRED
+>
+
+<!ELEMENT menu_icon (draw_ops?)>
+<!ATTLIST menu_icon
+ function (close|maximize|minimize|unmaximize) #REQUIRED
+ %gtk-state;
+ draw_ops CDATA #IMPLIED
+>