High DPI and resource sizes in points support, possible fix for issue #72

This commit is contained in:
Vadim Lopatin 2015-03-19 10:32:24 +03:00
parent 6cfe98a4f1
commit 3b4e98b024
8 changed files with 63 additions and 220 deletions

View File

@ -173,6 +173,35 @@ struct Rect {
} }
} }
// Layout size constants
/// layout option, to occupy all available place
immutable int FILL_PARENT = 0x4000_0000;
/// layout option, for size based on content
immutable int WRAP_CONTENT = 0x2000_0000;
/// use as widget.layout() param to avoid applying of parent size
immutable int SIZE_UNSPECIFIED = 0x6000_0000;
/// use in styles to specify size in points (1/72 inch)
immutable int SIZE_IN_POINTS_FLAG = 0x1000_0000;
/// (RESERVED) use in styles to specify size in percents * 100 (e.g. 0 == 0%, 10000 == 100%, 100 = 1%)
immutable int SIZE_IN_PERCENTS_FLAG = 0x0800_0000;
/// convert custom size to pixels (sz can be either pixels, or points if SIZE_IN_POINTS_FLAG bit set)
int toPixels(int sz) {
return sz > 0 ? ((sz & SIZE_IN_POINTS_FLAG) ? pointsToPixels(sz ^ SIZE_IN_POINTS_FLAG) : sz) : sz;
}
/// convert custom size Point to pixels (sz can be either pixels, or points if SIZE_IN_POINTS_FLAG bit set)
Point toPixels(const Point sz) {
return Point(toPixels(sz.x), toPixels(sz.y));
}
/// convert custom size Rect to pixels (sz can be either pixels, or points if SIZE_IN_POINTS_FLAG bit set)
Rect toPixels(const Rect sz) {
return Rect(toPixels(sz.left), toPixels(sz.top), toPixels(sz.right), toPixels(sz.bottom));
}
/// screen dots per inch /// screen dots per inch
private __gshared int PRIVATE_SCREEN_DPI = 96; private __gshared int PRIVATE_SCREEN_DPI = 96;

View File

@ -292,8 +292,8 @@ static uint decodeDimension(string s) {
// TODO: convert points to pixels // TODO: convert points to pixels
switch(units) { switch(units) {
case DimensionUnits.points: case DimensionUnits.points:
// convert points to pixels // need to convert points to pixels
value = pointsToPixels(value); value |= SIZE_IN_POINTS_FLAG;
break; break;
default: default:
break; break;
@ -301,6 +301,7 @@ static uint decodeDimension(string s) {
return value; return value;
} }
/// decode solid color / gradient / frame drawable from string like #AARRGGBB, e.g. #5599AA /// decode solid color / gradient / frame drawable from string like #AARRGGBB, e.g. #5599AA
/// ///
/// SolidFillDrawable: #AARRGGBB - e.g. #8090A0 or #80ffffff /// SolidFillDrawable: #AARRGGBB - e.g. #8090A0 or #80ffffff

View File

@ -928,8 +928,16 @@ class SDLPlatform : Platform {
override Window createWindow(dstring windowCaption, Window parent, uint flags = WindowFlag.Resizable, uint width = 0, uint height = 0) { override Window createWindow(dstring windowCaption, Window parent, uint flags = WindowFlag.Resizable, uint width = 0, uint height = 0) {
setDefaultLanguageAndThemeIfNecessary(); setDefaultLanguageAndThemeIfNecessary();
int oldDPI = SCREEN_DPI;
SDLWindow res = new SDLWindow(this, windowCaption, parent, flags, width, height); SDLWindow res = new SDLWindow(this, windowCaption, parent, flags, width, height);
_windowMap[res.windowId] = res; _windowMap[res.windowId] = res;
version(Windows) {
width = pointsToPixels(width);
height = pointsToPixels(height);
res.doResize(width, height);
}
if (oldDPI != SCREEN_DPI)
onThemeChanged();
return res; return res;
} }

View File

@ -778,6 +778,8 @@ class Win32Platform : Platform {
return null; return null;
} }
override Window createWindow(dstring windowCaption, Window parent, uint flags = WindowFlag.Resizable, uint width = 0, uint height = 0) { override Window createWindow(dstring windowCaption, Window parent, uint flags = WindowFlag.Resizable, uint width = 0, uint height = 0) {
width = pointsToPixels(width);
height = pointsToPixels(height);
setDefaultLanguageAndThemeIfNecessary(); setDefaultLanguageAndThemeIfNecessary();
return new Win32Window(this, windowCaption, parent, flags, width, height); return new Win32Window(this, windowCaption, parent, flags, width, height);
} }

View File

@ -11,9 +11,11 @@ Synopsis:
---- ----
import dlangui.widgets.styles; import dlangui.widgets.styles;
---- ----
Recent changes:
Dimensions like fontSize, padding, margins, min/max width and height can be specified in points, e.g. minWidth = "3pt" margins="1pt,2pt,1pt,2pt"
Copyright: Vadim Lopatin, 2014 Copyright: Vadim Lopatin, 2014
License: Boost License 1.0 License: Boost License 1.0
Authors: Vadim Lopatin, coolreader.org@gmail.com Authors: Vadim Lopatin, coolreader.org@gmail.com
@ -180,13 +182,6 @@ immutable string STYLE_COLOR_WINDOW_BACKGROUND = "window_background";
immutable string STYLE_COLOR_DIALOG_BACKGROUND = "dialog_background"; immutable string STYLE_COLOR_DIALOG_BACKGROUND = "dialog_background";
// Layout size constants
/// layout option, to occupy all available place
immutable int FILL_PARENT = int.max - 1;
/// layout option, for size based on content
immutable int WRAP_CONTENT = int.max - 2;
/// use as widget.layout() param to avoid applying of parent size
immutable int SIZE_UNSPECIFIED = int.max;
// Other style constants // Other style constants
@ -262,8 +257,8 @@ class Style {
protected ubyte _align = Align.TopLeft; protected ubyte _align = Align.TopLeft;
protected ubyte _fontStyle = FONT_STYLE_UNSPECIFIED; protected ubyte _fontStyle = FONT_STYLE_UNSPECIFIED;
protected FontFamily _fontFamily = FontFamily.Unspecified; protected FontFamily _fontFamily = FontFamily.Unspecified;
protected ushort _fontSize = FONT_SIZE_UNSPECIFIED;
protected ushort _fontWeight = FONT_WEIGHT_UNSPECIFIED; protected ushort _fontWeight = FONT_WEIGHT_UNSPECIFIED;
protected int _fontSize = FONT_SIZE_UNSPECIFIED;
protected uint _backgroundColor = COLOR_UNSPECIFIED; protected uint _backgroundColor = COLOR_UNSPECIFIED;
protected uint _textColor = COLOR_UNSPECIFIED; protected uint _textColor = COLOR_UNSPECIFIED;
protected uint _textFlags = 0; protected uint _textFlags = 0;
@ -447,9 +442,9 @@ class Style {
} }
/// font size /// font size
@property ushort fontSize() const { @property int fontSize() const {
if (_fontSize != FONT_SIZE_UNSPECIFIED) if (_fontSize != FONT_SIZE_UNSPECIFIED)
return _fontSize; return toPixels(_fontSize);
else else
return parentStyle.fontSize; return parentStyle.fontSize;
} }
@ -458,17 +453,17 @@ class Style {
// layout parameters: margins / padding // layout parameters: margins / padding
/// padding /// padding
@property ref const(Rect) padding() const { @property const(Rect) padding() const {
if (_stateMask || _padding.left == SIZE_UNSPECIFIED) if (_stateMask || _padding.left == SIZE_UNSPECIFIED)
return parentStyle._padding; return toPixels(parentStyle._padding);
return _padding; return toPixels(_padding);
} }
/// margins /// margins
@property ref const(Rect) margins() const { @property const(Rect) margins() const {
if (_stateMask || _margins.left == SIZE_UNSPECIFIED) if (_stateMask || _margins.left == SIZE_UNSPECIFIED)
return parentStyle._margins; return toPixels(parentStyle._margins);
return _margins; return toPixels(_margins);
} }
/// alpha (0=opaque .. 255=transparent) /// alpha (0=opaque .. 255=transparent)
@ -528,28 +523,28 @@ class Style {
/// minimal width constraint, 0 if limit is not set /// minimal width constraint, 0 if limit is not set
@property uint minWidth() const { @property uint minWidth() const {
if (_minWidth != SIZE_UNSPECIFIED) if (_minWidth != SIZE_UNSPECIFIED)
return _minWidth; return toPixels(_minWidth);
else else
return parentStyle.minWidth; return parentStyle.minWidth;
} }
/// max width constraint, returns SIZE_UNSPECIFIED if limit is not set /// max width constraint, returns SIZE_UNSPECIFIED if limit is not set
@property uint maxWidth() const { @property uint maxWidth() const {
if (_maxWidth != SIZE_UNSPECIFIED) if (_maxWidth != SIZE_UNSPECIFIED)
return _maxWidth; return toPixels(_maxWidth);
else else
return parentStyle.maxWidth; return parentStyle.maxWidth;
} }
/// minimal height constraint, 0 if limit is not set /// minimal height constraint, 0 if limit is not set
@property uint minHeight() const { @property uint minHeight() const {
if (_minHeight != SIZE_UNSPECIFIED) if (_minHeight != SIZE_UNSPECIFIED)
return _minHeight; return toPixels(_minHeight);
else else
return parentStyle.minHeight; return parentStyle.minHeight;
} }
/// max height constraint, SIZE_UNSPECIFIED if limit is not set /// max height constraint, SIZE_UNSPECIFIED if limit is not set
@property uint maxHeight() const { @property uint maxHeight() const {
if (_maxHeight != SIZE_UNSPECIFIED) if (_maxHeight != SIZE_UNSPECIFIED)
return _maxHeight; return toPixels(_maxHeight);
else else
return parentStyle.maxHeight; return parentStyle.maxHeight;
} }
@ -660,7 +655,7 @@ class Style {
return this; return this;
} }
@property Style fontSize(ushort size) { @property Style fontSize(int size) {
_fontSize = size; _fontSize = size;
_font.clear(); _font.clear();
return this; return this;
@ -832,7 +827,7 @@ class Theme : Style {
_textColor = 0x000000; // black _textColor = 0x000000; // black
_maxLines = 1; _maxLines = 1;
_align = Align.TopLeft; _align = Align.TopLeft;
_fontSize = 14; // TODO: from settings or screen properties / DPI _fontSize = 9 | SIZE_IN_POINTS_FLAG; // TODO: from settings or screen properties / DPI
_fontStyle = FONT_STYLE_NORMAL; _fontStyle = FONT_STYLE_NORMAL;
_fontWeight = 400; _fontWeight = 400;
//_fontFace = "Arial"; // TODO: from settings //_fontFace = "Arial"; // TODO: from settings

View File

@ -460,9 +460,9 @@ class Widget {
return this; return this;
} }
/// returns font size in pixels /// returns font size in pixels
@property ushort fontSize() const { return stateStyle.fontSize; } @property int fontSize() const { return stateStyle.fontSize; }
/// set font size for widget - override one from style /// set font size for widget - override one from style
@property Widget fontSize(ushort size) { @property Widget fontSize(int size) {
ownStyle.fontSize = size; ownStyle.fontSize = size;
requestLayout(); requestLayout();
return this; return this;

View File

@ -1,7 +1,5 @@
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<theme id="theme_dark" parent="theme_default" <theme id="theme_dark" parent="theme_default"
fontFace="Verdana,Arial,DejaVu Sans"
fontFamily="SansSerif"
textColor="#E0E0E0" textColor="#E0E0E0"
> >
<color id="window_background" value="#000000"/> <color id="window_background" value="#000000"/>
@ -28,24 +26,17 @@
<style id="BUTTON" <style id="BUTTON"
backgroundImageId="btn_background_dark" backgroundImageId="btn_background_dark"
align="Center"
margins="5,5,5,5"
focusRectColors="#FFF" focusRectColors="#FFF"
textFlags="UnderlineHotKeys"
> >
<state state_enabled="false" textColor="#60FFFFFF"/> <state state_enabled="false" textColor="#60FFFFFF"/>
<state state_enabled="true" state_hovered="true" textColor="#E0E080"/> <state state_enabled="true" state_hovered="true" textColor="#E0E080"/>
</style> </style>
<style id="BUTTON_TRANSPARENT" <style id="BUTTON_TRANSPARENT"
backgroundImageId="btn_background_transparent_dark" backgroundImageId="btn_background_transparent_dark"
align="Center"
/> />
<style id="BUTTON_LABEL" <style id="BUTTON_LABEL"
layoutWidth="FILL_PARENT" layoutWidth="FILL_PARENT"
margins="2,2,2,2"
align="Left|VCenter"
focusRectColors="#FFF" focusRectColors="#FFF"
textFlags="UnderlineHotKeys"
> >
<state state_enabled="false" textColor="#60FFFFFF"/> <state state_enabled="false" textColor="#60FFFFFF"/>
<state state_enabled="true" state_hovered="true" textColor="#E0E080"/> <state state_enabled="true" state_hovered="true" textColor="#E0E080"/>
@ -57,68 +48,26 @@
<state state_enabled="false" textColor="#60FFFFFF"/> <state state_enabled="false" textColor="#60FFFFFF"/>
<state state_enabled="true" state_hovered="true" textColor="#A0A0FF" textFlags="Underline"/> <state state_enabled="true" state_hovered="true" textColor="#A0A0FF" textFlags="Underline"/>
</style> </style>
<style id="BUTTON_IMAGE"
margins="2,2,2,2"
align="Center"
/>
<style id="CHECKBOX"
backgroundImageId="@null"
margins="2,2,2,2"
padding="2,2,2,2"
focusRectColors="@null"
/>
<style id="CHECKBOX_IMAGE" parent="BUTTON_IMAGE"
align="Center"
margins="2,2,2,2"
/>
<style id="CHECKBOX_LABEL" parent="BUTTON_LABEL" <style id="CHECKBOX_LABEL" parent="BUTTON_LABEL"
align="Left|VCenter"
focusRectColors="#FFF" focusRectColors="#FFF"
> >
<state state_enabled="true" state_hovered="true" textColor="#C0FFFF"/> <state state_enabled="true" state_hovered="true" textColor="#C0FFFF"/>
</style> </style>
<style id="RADIOBUTTON" parent="CHECKBOX"
margins="2,2,2,2"
padding="2,2,2,2"
/>
<style id="RADIOBUTTON_IMAGE" parent="CHECKBOX_IMAGE"
align="Center"
margins="2,2,2,2"
/>
<style id="RADIOBUTTON_LABEL" parent="CHECKBOX_LABEL" <style id="RADIOBUTTON_LABEL" parent="CHECKBOX_LABEL"
align="Left|VCenter"
focusRectColors="#FFF" focusRectColors="#FFF"
> >
<state state_enabled="true" state_hovered="true" textColor="#C0FFFF"/> <state state_enabled="true" state_hovered="true" textColor="#C0FFFF"/>
</style> </style>
<style id="TEXT" <style id="TEXT"
margins="2,2,2,2"
padding="1,1,1,1"
align="Left|VCenter"
> >
<state state_enabled="false" textColor="#A0FFFFFF"/> <state state_enabled="false" textColor="#A0FFFFFF"/>
</style> </style>
<style id="MULTILINE_TEXT" <style id="MULTILINE_TEXT"
margins="2,2,2,2"
padding="1,1,1,1"
align="Left|VCenter"
maxLines = "0"
> >
<state state_enabled="false" textColor="#A0FFFFFF"/> <state state_enabled="false" textColor="#A0FFFFFF"/>
</style> </style>
<style id="HSPACER"
layoutWidth="FILL_PARENT"
layoutWeight="100"
minWidth="5"
/>
<style id="VSPACER"
layoutHeight="FILL_PARENT"
layoutWeight="100"
minHeight="5"
/>
<style id="BUTTON_NOMARGINS" <style id="BUTTON_NOMARGINS"
backgroundImageId="btn_background_dark" backgroundImageId="btn_background_dark"
align="Center"
/> />
<drawable id="btn_check" value="btn_check_dark"/> <drawable id="btn_check" value="btn_check_dark"/>
<drawable id="btn_radio" value="btn_radio_dark"/> <drawable id="btn_radio" value="btn_radio_dark"/>
@ -141,11 +90,6 @@
<style id="SCROLLBAR" <style id="SCROLLBAR"
backgroundColor="#C0808080" backgroundColor="#C0808080"
align="Center"
/>
<style id="SCROLLBAR_BUTTON" parent="BUTTON"
/>
<style id="SLIDER"
/> />
<style id="PAGE_SCROLL" <style id="PAGE_SCROLL"
backgroundColor="#FFFFFFFF" backgroundColor="#FFFFFFFF"
@ -156,25 +100,20 @@
<style id="TAB_DOWN_DARK" <style id="TAB_DOWN_DARK"
backgroundImageId="tab_down_background_theme_dark" backgroundImageId="tab_down_background_theme_dark"
layoutWidth="FILL_PARENT"
> >
</style> </style>
<style id="TAB_DOWN_BUTTON_DARK" <style id="TAB_DOWN_BUTTON_DARK"
padding="5,1,1,1"
backgroundImageId="tab_btn_dark_down_dark" backgroundImageId="tab_btn_dark_down_dark"
/> />
<style id="TAB_UP_DARK" <style id="TAB_UP_DARK"
backgroundImageId="tab_up_background_theme_dark" backgroundImageId="tab_up_background_theme_dark"
layoutWidth="FILL_PARENT"
> >
</style> </style>
<style id="TAB_UP_BUTTON_DARK" <style id="TAB_UP_BUTTON_DARK"
padding="5,1,1,1"
backgroundImageId="tab_btn_dark_up_dark" backgroundImageId="tab_btn_dark_up_dark"
/> />
<style id="TAB_UP_BUTTON_DARK_TEXT" <style id="TAB_UP_BUTTON_DARK_TEXT"
textColor="#E0E0E0" textColor="#E0E0E0"
align="Center"
> >
<state state_selected="true" state_window_focused="true" state_hovered="true" textColor="#FFFFC0"/> <state state_selected="true" state_window_focused="true" state_hovered="true" textColor="#FFFFC0"/>
<state state_selected="true" state_window_focused="true" textColor="#FFFFE0"/> <state state_selected="true" state_window_focused="true" textColor="#FFFFE0"/>
@ -185,13 +124,11 @@
</style> </style>
<style id="TAB_UP" <style id="TAB_UP"
backgroundImageId="tab_up_background_theme_dark" backgroundImageId="tab_up_background_theme_dark"
layoutWidth="FILL_PARENT"
> >
<state state_selected="true" backgroundImageId="tab_up_backgrond_selected_dark"/> <state state_selected="true" backgroundImageId="tab_up_backgrond_selected_dark"/>
</style> </style>
<style id="TAB_UP_BUTTON_TEXT" <style id="TAB_UP_BUTTON_TEXT"
textColor="#C0C0C0" textColor="#C0C0C0"
align="Center"
> >
<state state_selected="true" state_focused="true" textColor="#FFFFC0"/> <state state_selected="true" state_focused="true" textColor="#FFFFC0"/>
<state state_selected="true" textColor="#FFFFC0"/> <state state_selected="true" textColor="#FFFFC0"/>
@ -202,8 +139,6 @@
backgroundImageId="tab_btn_up_dark" backgroundImageId="tab_btn_up_dark"
/> />
<style id="TAB_HOST" <style id="TAB_HOST"
layoutWidth="FILL_PARENT"
layoutHeight="FILL_PARENT"
backgroundColor="#101010" backgroundColor="#101010"
/> />
<style id="TAB_WIDGET" <style id="TAB_WIDGET"
@ -211,49 +146,33 @@
/> />
<style id="MAIN_MENU" <style id="MAIN_MENU"
layoutWidth="FILL_PARENT"
backgroundColor="#202020" backgroundColor="#202020"
layoutWeight="0"
/> />
<style id="MAIN_MENU_ITEM" <style id="MAIN_MENU_ITEM"
padding="4,2,4,2"
backgroundImageId="main_menu_item_background_dark" backgroundImageId="main_menu_item_background_dark"
textFlags="Parent"
/> />
<style id="MENU_ITEM" <style id="MENU_ITEM"
backgroundImageId="menu_item_background_dark" backgroundImageId="menu_item_background_dark"
padding="4,2,4,2"
> >
</style> </style>
<style id="MENU_ICON" <style id="MENU_ICON"
margins="2,2,2,2"
align="Left|VCenter"
> >
<state state_enabled="false" alpha="160"/> <state state_enabled="false" alpha="160"/>
</style> </style>
<style id="MENU_LABEL" <style id="MENU_LABEL"
margins="4,2,4,2"
align="Left|VCenter"
textFlags="UnderlineHotKeys"
> >
<state state_enabled="false" textColor="#808080"/> <state state_enabled="false" textColor="#808080"/>
</style> </style>
<style id="MAIN_MENU_LABEL" <style id="MAIN_MENU_LABEL"
margins="4,2,4,2"
align="Left|VCenter"
textFlags="Parent"
> >
<state state_enabled="false" textColor="#808080"/> <state state_enabled="false" textColor="#808080"/>
</style> </style>
<style id="MENU_ACCEL" <style id="MENU_ACCEL"
margins="4,2,4,2"
align="Left|VCenter"
> >
<state state_enabled="false" textColor="#808080"/> <state state_enabled="false" textColor="#808080"/>
</style> </style>
<style id="TRANSPARENT_BUTTON_BACKGROUND" <style id="TRANSPARENT_BUTTON_BACKGROUND"
backgroundImageId="btn_background_transparent_dark" backgroundImageId="btn_background_transparent_dark"
padding="4,2,4,2"
/> />
<style id="POPUP_MENU" <style id="POPUP_MENU"
backgroundImageId="popup_menu_background_normal_dark" backgroundImageId="popup_menu_background_normal_dark"
@ -264,123 +183,59 @@
<style id="COMBO_BOX" <style id="COMBO_BOX"
backgroundImageId="combobox_background_dark" backgroundImageId="combobox_background_dark"
padding="2,2,2,2"
margins="2,2,2,2"
minWidth="40"
/> />
<style id="COMBO_BOX_BODY" <style id="COMBO_BOX_BODY"
padding="2,2,2,2"
minWidth="40"
align="Left|VCenter"
focusRectColors="#FFF" focusRectColors="#FFF"
/> />
<style id="COMBO_BOX_BUTTON" <style id="COMBO_BOX_BUTTON"
padding="2,2,2,2"
backgroundImageId="btn_background_transparent_dark" backgroundImageId="btn_background_transparent_dark"
align="Center"
/> />
<style id="EDIT_LINE" <style id="EDIT_LINE"
backgroundImageId="editbox_background_dark" backgroundImageId="editbox_background_dark"
padding="4,4,4,4"
margins="2,2,2,2"
minWidth="40"
/> />
<style id="EDIT_BOX" <style id="EDIT_BOX"
backgroundImageId="editbox_background_dark" backgroundImageId="editbox_background_dark"
padding="2,2,2,2"
margins="2,2,2,2"
minWidth="100"
minHeight="60"
layoutWidth="FILL_PARENT"
layoutHeight="FILL_PARENT"
/> />
<style id="STATUS_LINE" <style id="STATUS_LINE"
backgroundColor="#101010" backgroundColor="#101010"
layoutWidth="FILL_PARENT"
layoutHeight="WRAP_CONTENT"
padding="1,1,1,1"
layoutWeight="0"
/> />
<style id="DOCK_HOST" <style id="DOCK_HOST"
backgroundColor="#091925" backgroundColor="#091925"
layoutWidth="FILL_PARENT"
layoutHeight="FILL_PARENT"
padding="2,2,2,2"
/>
<style id="DOCK_HOST_BODY"
layoutWidth="FILL_PARENT"
layoutHeight="FILL_PARENT"
padding="1,1,1,1"
margins="4,4,4,4"
/> />
<style id="DOCK_WINDOW" <style id="DOCK_WINDOW"
backgroundColor="#8E9BBC" backgroundColor="#8E9BBC"
layoutWidth="FILL_PARENT"
layoutHeight="FILL_PARENT"
padding="1,1,1,1"
margins="4,4,4,4"
/> />
<style id="FLOATING_WINDOW" <style id="FLOATING_WINDOW"
backgroundImageId="popup_window_background_dark" backgroundImageId="popup_window_background_dark"
layoutWidth="FILL_PARENT"
layoutHeight="FILL_PARENT"
padding="1,1,1,1"
margins="4,4,4,4"
/> />
<style id="DOCK_WINDOW_CAPTION" <style id="DOCK_WINDOW_CAPTION"
backgroundColor="#3d5072" backgroundColor="#3d5072"
layoutWidth="FILL_PARENT"
layoutHeight="WRAP_CONTENT"
padding="1,1,1,1"
/> />
<style id="DOCK_WINDOW_CAPTION_LABEL" <style id="DOCK_WINDOW_CAPTION_LABEL"
textColor="#E0E0E0" textColor="#E0E0E0"
layoutWidth="FILL_PARENT"
layoutHeight="WRAP_CONTENT"
padding="3,3,3,3"
align="Left|VCenter"
/> />
<style id="DOCK_WINDOW_BODY" <style id="DOCK_WINDOW_BODY"
backgroundColor="#000000" backgroundColor="#000000"
layoutWidth="FILL_PARENT"
layoutHeight="FILL_PARENT"
padding="1,1,1,1"
/> />
<style id="TOOLBAR_HOST" <style id="TOOLBAR_HOST"
backgroundColor="#202325" backgroundColor="#202325"
layoutWidth="FILL_PARENT"
layoutHeight="WRAP_CONTENT"
padding="1,1,1,1"
/> />
<style id="TOOLTIP" <style id="TOOLTIP"
backgroundImageId="tooltip_background_dark" backgroundImageId="tooltip_background_dark"
layoutWidth="WRAP_CONTENT"
layoutHeight="WRAP_CONTENT"
margins="2,7,2,1"
padding="3,3,3,3"
textColor="#E0E0E0" textColor="#E0E0E0"
/> />
<style id="TOOLBAR" <style id="TOOLBAR"
backgroundImageId="toolbar_background_dark" backgroundImageId="toolbar_background_dark"
layoutWidth="WRAP_CONTENT"
layoutHeight="WRAP_CONTENT"
margins="2,1,2,1"
/> />
<style id="TOOLBAR_BUTTON" <style id="TOOLBAR_BUTTON"
backgroundImageId="toolbar_button_background_dark" backgroundImageId="toolbar_button_background_dark"
align="Center"
margins="1,1,1,1"
padding="2,2,2,2"
> >
<state state_enabled="false" alpha="160" backgroundImageId="@null"/> <state state_enabled="false" alpha="160" backgroundImageId="@null"/>
</style> </style>
<style id="TOOLBAR_CONTROL" <style id="TOOLBAR_CONTROL"
backgroundImageId="toolbar_control_background_dark" backgroundImageId="toolbar_control_background_dark"
align="Center"
margins="1,1,1,1"
padding="2,2,2,2"
> >
<state state_enabled="false" alpha="160" backgroundImageId="@null"/> <state state_enabled="false" alpha="160" backgroundImageId="@null"/>
</style> </style>
@ -388,57 +243,14 @@
align="Center" align="Center"
/> />
<style id="TREE_ITEM"
minWidth="100"
minHeight="14"
layoutWidth="FILL_PARENT"
layoutHeight="WRAP_CONTENT"
>
</style>
<style id="TREE_ITEM_EXPAND_ICON"
align="Left|VCenter"
textFlags="Parent"
/>
<style id="TREE_ITEM_BODY" <style id="TREE_ITEM_BODY"
align="Left|VCenter"
textFlags="Parent"
backgroundImageId="list_item_background_dark" backgroundImageId="list_item_background_dark"
/> />
<style id="TREE_ITEM_ICON"
align="Left|VCenter"
textFlags="Parent"
/>
<style id="TREE_ITEM_LABEL"
layoutWidth="FILL_PARENT"
layoutHeight="WRAP_CONTENT"
align="Left|VCenter"
textFlags="Parent"
/>
<style id="SETTINGS_TREE" <style id="SETTINGS_TREE"
margins="8,8,8,8"
backgroundColor="#000000" backgroundColor="#000000"
layoutWeight="3"
/>
<style id="SETTINGS_PAGES"
margins="0,8,8,8"
padding="4,4,4,4"
layoutWidth="FILL_PARENT"
layoutWeight="5"
/>
<style id="SETTINGS_PAGE_TITLE"
margins="4,4,4,14"
layoutWeight="0"
layoutWidth="FILL_PARENT"
/> />
<style id="RESIZER_VERTICAL" <style id="RESIZER_VERTICAL"
layoutWidth="FILL_PARENT"
layoutHeight="WRAP_CONTENT"
minHeight="7"
maxHeight="7"
backgroundColor="#303030"> backgroundColor="#303030">
<state state_focused="true" backgroundColor="#40404000"/> <state state_focused="true" backgroundColor="#40404000"/>
<state state_pressed="true" backgroundColor="#40406000"/> <state state_pressed="true" backgroundColor="#40406000"/>
@ -446,10 +258,6 @@
<state state_hovered="true" backgroundColor="#C0404000"/> <state state_hovered="true" backgroundColor="#C0404000"/>
</style> </style>
<style id="RESIZER_HORIZONTAL" <style id="RESIZER_HORIZONTAL"
layoutWidth="FILL_PARENT"
layoutHeight="WRAP_CONTENT"
minWidth="7"
maxWidth="7"
backgroundColor="#303030"> backgroundColor="#303030">
<state state_focused="true" backgroundColor="#40404000"/> <state state_focused="true" backgroundColor="#40404000"/>
<state state_pressed="true" backgroundColor="#40406000"/> <state state_pressed="true" backgroundColor="#40406000"/>

View File

@ -1,6 +1,6 @@
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<theme id="theme_default" <theme id="theme_default"
fontSize="9pt" fontSize="11pt"
fontFace="Verdana,Arial,DejaVu Sans" fontFace="Verdana,Arial,DejaVu Sans"
fontFamily="SansSerif" fontFamily="SansSerif"
> >