diff --git a/components/jvcllaz/packages/JvXPCtrlsLaz.lpk b/components/jvcllaz/packages/JvXPCtrlsLaz.lpk
index f44a85172..685428355 100644
--- a/components/jvcllaz/packages/JvXPCtrlsLaz.lpk
+++ b/components/jvcllaz/packages/JvXPCtrlsLaz.lpk
@@ -11,7 +11,7 @@
-
+
@@ -24,7 +24,7 @@
"/>
-
+
@@ -54,18 +54,25 @@
+
+
+
+
-
+
-
+
-
+
+
+
+
-
+
diff --git a/components/jvcllaz/packages/JvXPCtrlsLaz.pas b/components/jvcllaz/packages/JvXPCtrlsLaz.pas
index 9497f1972..5b4c1242f 100644
--- a/components/jvcllaz/packages/JvXPCtrlsLaz.pas
+++ b/components/jvcllaz/packages/JvXPCtrlsLaz.pas
@@ -9,7 +9,7 @@ interface
uses
JvXPCoreUtils, JvXPBar, JvXPCore, JvXPContainer, JvXPButtons,
- JvXPCheckCtrls, JvXPCtrlsReg, LazarusPackageIntf;
+ JvXPCheckCtrls, JvXPCtrlsReg, JvXPPropertyEditors, LazarusPackageIntf;
implementation
diff --git a/components/jvcllaz/packages/JvXPCtrlsReg.pp b/components/jvcllaz/packages/JvXPCtrlsReg.pp
index 95797d473..00c708139 100644
--- a/components/jvcllaz/packages/JvXPCtrlsReg.pp
+++ b/components/jvcllaz/packages/JvXPCtrlsReg.pp
@@ -12,7 +12,9 @@ procedure Register;
implementation
uses
- JvXPCore, JvXPBar, JvXPContainer, JvXPButtons, JvXPCheckCtrls;
+ ComponentEditors, PropEdits, GraphPropEdits, ImgList,
+ JvXPCore, JvXPPropertyEditors,
+ JvXPBar, JvXPContainer, JvXPButtons, JvXPCheckCtrls;
procedure Register;
begin
@@ -24,6 +26,16 @@ begin
TJvXPCheckbox,
TJvXPStyleManager
]);
+
+ {
+ RegisterPropertyEditor(TypeInfo(TImageIndex), TJvXPBarItem, 'ImageIndex',
+ TJvXPItemImageIndexProperty);
+ }
+
+ RegisterPropertyEditor(TypeInfo(TImageIndex), TJvXPBarItem, 'ImageIndex',
+ TImageIndexPropertyEditor);
+
+ RegisterComponentEditor(TJvXPBar, TJvXPBarItemEditor);
end;
initialization
diff --git a/components/jvcllaz/run/JvXPBar.pas b/components/jvcllaz/run/JvXPBar.pas
index de393843a..1bf7bad63 100644
--- a/components/jvcllaz/run/JvXPBar.pas
+++ b/components/jvcllaz/run/JvXPBar.pas
@@ -60,8 +60,7 @@ type
TJvXPBarRollMode = (rmFixed, rmShrink); // rmFixed is default
- TJvXPBarHitTest =
- (
+ TJvXPBarHitTest = (
htNone, // mouse is inside non-supported rect
htHeader, // mouse is inside header
htRollButton // mouse is inside rollbutton
@@ -89,6 +88,9 @@ const
dxColor_FocusedFrameColorXP = clHotLight;
dxColor_CheckedFrameColorXP = clHighlight;
+ dxColor_FontColorXP = TColor($00840000);
+ dxColor_HeaderFontColorXP = TColor($00840000);
+
type
TJvXPBarItem = class;
TJvXPBarItems = class;
@@ -1310,6 +1312,7 @@ begin
Self.CheckedFrameColor := CheckedFrameColor;
Self.FocusedFrameColor := FocusedFrameColor;
Self.BodyColor := BodyColor;
+ Self.BodyBorderColor := BodyBorderColor;
Self.GradientTo := GradientTo;
Self.GradientFrom := GradientFrom;
Self.SeparatorColor := SeparatorColor;
@@ -1439,14 +1442,14 @@ begin
FTopSpace := 5;
FFont := TFont.Create;
- FFont.Color := $00840000;
+ FFont.Color := dxColor_FontColorXP; //$00840000;
FFont.Size := 0; //8;
FFont.OnChange := @FontChange;
FHeaderHeight := 28;
FHeaderRounded := True;
FGradientWidth := 0;
FHeaderFont := TFont.Create;
- FHeaderFont.Color := $00840000;
+ FHeaderFont.Color := dxColor_HeaderFontColorXP; //$00840000;
FHeaderFont.Size := 0; //8;
FHeaderFont.Style := [fsBold];
FHeaderFont.OnChange := @FontChange;
@@ -1696,13 +1699,13 @@ begin
begin
FFontChanging := True;
try
- FFont.Color := $00E75100;
- FFont.Name := inherited Font.Name;
- FFont.Size := 8;
+ FFont.Color := dxColor_FontColorXP;
+ FFont.Name := 'default';
+ FFont.Size := 0;
FFont.Style := inherited Font.Style;
- FHeaderFont.Color := $00E75100;
- FHeaderFont.Name := Font.Name;
- FHeaderFont.Size := 8;
+ FHeaderFont.Color := dxColor_HeaderFontColorXP;
+ FHeaderFont.Name := 'default';
+ FHeaderFont.Size := 0;
FHeaderFont.Style := [fsBold];
finally
FFontChanging := False;
diff --git a/components/jvcllaz/run/JvXPCore.pas b/components/jvcllaz/run/JvXPCore.pas
index 9a1d88793..0c69b9782 100644
--- a/components/jvcllaz/run/JvXPCore.pas
+++ b/components/jvcllaz/run/JvXPCore.pas
@@ -151,6 +151,7 @@ type
procedure CMMouseEnter(var Msg: TLMessage); message CM_MOUSEENTER;
procedure CMMouseLeave(var Msg: TLMessage); message CM_MOUSELEAVE;
procedure CMParentColorChanged(var Msg: TLMessage); message CM_PARENTCOLORCHANGED;
+ procedure CMParentFontChanged(var Msg: TLMessage); message CM_PARENTFONTCHANGED;
//LCL doesnt fire it
//procedure CMParentFontChanged(var Msg: TLMessage); message CM_PARENTFONTCHANGED;
@@ -439,6 +440,13 @@ begin
HookParentColorChanged;
end;
+procedure TJvXPCustomControl.CMParentFontChanged(var Msg: TLMessage);
+begin
+ // delegate message "ParentFontChanged" to hook.
+ inherited;
+ HookParentFontChanged;
+end;
+
//LCL doesnt fire it...
(*
procedure TJvXPCustomControl.CMParentFontChanged(var Msg: TLMessage);