From 4695d0049b3553d710d7ed686fbb963597d00267 Mon Sep 17 00:00:00 2001 From: lazarus Date: Sat, 17 Aug 2002 23:41:16 +0000 Subject: [PATCH] MWE: Applied patch from "Andrew Johnson" Here is the run down of what it includes - -Vasily Volchenko's Updated Russian Localizations -improvements to GTK Styles/SysColors -initial GTK Palette code - (untested, and for now useless) -Hint Windows and Modal dialogs now try to stay transient to the main program form, aka they stay on top of the main form and usually minimize/maximize with it. -fixes to Form BorderStyle code(tool windows needed a border) -fixes DrawFrameControl DFCS_BUTTONPUSH to match Win32 better when flat -fixes DrawFrameControl DFCS_BUTTONCHECK to match Win32 better and to match GTK theme better. It works most of the time now, but some themes, noteably Default, don't work. -fixes bug in Bitmap code which broke compiling in NoGDKPixbuf mode. -misc other cleanups/ fixes in gtk interface -speedbutton's should now draw correctly when flat in Win32 -I have included an experimental new CheckBox(disabled by default) which has initial support for cbGrayed(Tri-State), and WordWrap, and misc other improvements. It is not done, it is mostly a quick hack to test DrawFrameControl DFCS_BUTTONCHECK, however it offers many improvements which can be seen in cbsCheck/cbsCrissCross (aka non-themed) state. -fixes Message Dialogs to more accurately determine button Spacing/Size, and Label Spacing/Size based on current System font. -fixes MessageDlgPos, & ShowMessagePos in Dialogs -adds InputQuery & InputBox to Dialogs -re-arranges & somewhat re-designs Control Tabbing, it now partially works - wrapping around doesn't work, and subcontrols(Panels & Children, etc) don't work. TabOrder now works to an extent. I am not sure what is wrong with my code, based on my other tests at least wrapping and TabOrder SHOULD work properly, but.. Anyone want to try and fix? -SynEdit(Code Editor) now changes mouse cursor to match position(aka over scrollbar/gutter vs over text edit) -adds a TRegion property to Graphics.pp, and Canvas. Once I figure out how to handle complex regions(aka polygons) data properly I will add Region functions to the canvas itself (SetClipRect, intersectClipRect etc.) -BitBtn now has a Stored flag on Glyph so it doesn't store to lfm/lrs if Glyph is Empty, or if Glyph is not bkCustom(aka bkOk, bkCancel, etc.) This should fix most crashes with older GDKPixbuf libs. git-svn-id: trunk@2333 - --- lcl/buttons.pp | 69 ++++++++++++++++++++++++++++++++++++++++++++++++-- 1 file changed, 67 insertions(+), 2 deletions(-) diff --git a/lcl/buttons.pp b/lcl/buttons.pp index 0f87021949..960171255a 100644 --- a/lcl/buttons.pp +++ b/lcl/buttons.pp @@ -86,7 +86,8 @@ type property Cancel : Boolean read FCancel write FCancel default False; property Caption; property Font; - property TabStop default true; + property TabStop; + property TabOrder; property PopupMenu; property ShowHint; property Visible; @@ -141,6 +142,7 @@ type FSpacing : Integer; Function GetGlyph : TBitmap; Function IsCustom : Boolean; + Function IsGlyphStored : Boolean; Procedure SetGlyph(Value : TBitmap); Procedure SetKind(Value : TBitBtnKind); Procedure SetLayout(Value : TButtonLayout); @@ -153,7 +155,7 @@ type destructor Destroy; Override; published property Default stored IsCustom; - property Glyph : TBitmap read GetGlyph write SetGlyph; + property Glyph : TBitmap read GetGlyph write SetGlyph stored IsGlyphStored; property Kind : TBitBtnKind read FKind write SetKind; property Layout: TButtonLayout read FLayout write SetLayout; property ModalResult stored IsCustom; @@ -282,6 +284,69 @@ end. { ============================================================================= $Log$ + Revision 1.28 2002/09/27 20:52:20 lazarus + MWE: Applied patch from "Andrew Johnson" + + Here is the run down of what it includes - + + -Vasily Volchenko's Updated Russian Localizations + + -improvements to GTK Styles/SysColors + -initial GTK Palette code - (untested, and for now useless) + + -Hint Windows and Modal dialogs now try to stay transient to + the main program form, aka they stay on top of the main form + and usually minimize/maximize with it. + + -fixes to Form BorderStyle code(tool windows needed a border) + + -fixes DrawFrameControl DFCS_BUTTONPUSH to match Win32 better + when flat + + -fixes DrawFrameControl DFCS_BUTTONCHECK to match Win32 better + and to match GTK theme better. It works most of the time now, + but some themes, noteably Default, don't work. + + -fixes bug in Bitmap code which broke compiling in NoGDKPixbuf + mode. + + -misc other cleanups/ fixes in gtk interface + + -speedbutton's should now draw correctly when flat in Win32 + + -I have included an experimental new CheckBox(disabled by + default) which has initial support for cbGrayed(Tri-State), + and WordWrap, and misc other improvements. It is not done, it + is mostly a quick hack to test DrawFrameControl + DFCS_BUTTONCHECK, however it offers many improvements which + can be seen in cbsCheck/cbsCrissCross (aka non-themed) state. + + -fixes Message Dialogs to more accurately determine + button Spacing/Size, and Label Spacing/Size based on current + System font. + -fixes MessageDlgPos, & ShowMessagePos in Dialogs + -adds InputQuery & InputBox to Dialogs + + -re-arranges & somewhat re-designs Control Tabbing, it now + partially works - wrapping around doesn't work, and + subcontrols(Panels & Children, etc) don't work. TabOrder now + works to an extent. I am not sure what is wrong with my code, + based on my other tests at least wrapping and TabOrder SHOULD + work properly, but.. Anyone want to try and fix? + + -SynEdit(Code Editor) now changes mouse cursor to match + position(aka over scrollbar/gutter vs over text edit) + + -adds a TRegion property to Graphics.pp, and Canvas. Once I + figure out how to handle complex regions(aka polygons) data + properly I will add Region functions to the canvas itself + (SetClipRect, intersectClipRect etc.) + + -BitBtn now has a Stored flag on Glyph so it doesn't store to + lfm/lrs if Glyph is Empty, or if Glyph is not bkCustom(aka + bkOk, bkCancel, etc.) This should fix most crashes with older + GDKPixbuf libs. + Revision 1.27 2002/09/13 16:58:27 lazarus MG: removed the 1x1 bitmap from TBitBtn