Skip to content

Commit 7908761

Browse files
version 3.5.3
- Added unit Vcl.TemplateButtonStyles.pas
1 parent 35d08fe commit 7908761

10 files changed

+308
-5
lines changed

Images/CustomComponentEditor.jpg

171 KB
Loading

Images/PropertyFamilyCustom.jpg

37.6 KB
Loading

Images/PropertyStyleClassCustom.jpg

26.5 KB
Loading

Images/VCLStyledComponents.png

21.9 KB
Loading

README.htm

Lines changed: 9 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,7 @@
3131
</style>
3232
<h1>Delphi VCL StyledComponents <a href="https://opensource.org/licenses/Apache-2.0"><img src="https://img.shields.io/badge/License-Apache%202.0-yellowgreen.svg" alt="License"/></a></h1>
3333
<h2>Components similar to Delphi VCL Buttons, Toolbar, DbNavigator, BindNavigator, ButtonGroup and CategoryButtons with Custom Graphic Styles, and an advanced, full-customizable TaskDialog, also with animations!</h2>
34-
<h3>Actual official version: 3.5.2</h3>
34+
<h3>Actual official version: 3.5.3</h3>
3535
<hr />
3636
<h2>A brief description</h2>
3737
<p><strong>StyledComponents</strong> is a set of VCL components for Delphi (32 and 64 bit) that allow you to overcome the limits imposed by standard VCL components, maintaining 100% compatibility of the properties.</p>
@@ -45,6 +45,7 @@ <h2>A brief description</h2>
4545
<li>Adapt to the colors of the VCL styles, keeping the shape of the button consistent</li>
4646
<li>The appearance is identical in “Windows” mode or by applying VCL styles to the application</li>
4747
</ul>
48+
<p>Last, but not least, with <strong>StyledTaskDialog</strong> you can control appearance of your Message Dialogs in any aspect. Using Skia4Delphi you can also add animated Icons to your messages.</p>
4849
<p>…all available from the Delphi XE6 version (which allows the use of GDI+, used for button drawing).</p>
4950
<h2>The most important properties</h2>
5051
<p>using only few properties you can setup your Button in a very simple way.</p>
@@ -152,7 +153,7 @@ <h2>List of available Components:</h2>
152153
<li>The space between the Icon and the Caption, defined by <em>spacing</em>.</li>
153154
</ul>
154155
<hr />
155-
<h2>New <em>TStyledAnimatedButton</em> Component (beta):</h2>
156+
<h2>New <em>TStyledAnimatedButton</em> Component:</h2>
156157
<table>
157158
<tr>
158159
<th>Component</th>
@@ -212,6 +213,8 @@ <h2>Description of Styled Buttons</h2>
212213
<pre><code class="Pascal">TStyledButton.RegisterDefaultRenderingStyle(btRoundRect, BOOTSTRAP_FAMILY, btn_primary, BOOTSTRAP_NORMAL);
213214
</code></pre>
214215
<p>You can also use <a href="https://github.com/EtheaDev/StyledComponents/wiki/Interposer-Unit-(Vcl.StyledComponentsHooks)">Interposer Unit (Vcl.StyledComponentsHooks.pas)</a> to easily change all Buttons of your application.</p>
216+
<p><strong><em>New Template unit to create your custom Family Styles</em></strong></p>
217+
<p>NOTICE: from version 3.5.3 there is a new unit &ldquo;Vcl.TemplateButtonStyles.pas&rdquo; you can use to create your own Family of Button Styles, <a href="https://github.com/EtheaDev/StyledComponents/wiki/HowtoBuildYourCustomStyle">as explained here</a></p>
215218
<p><strong><em>New RoundedCorners options</em></strong></p>
216219
<p>NOTICE: from version 3.5.0 the new <strong>RoundedCorners</strong> property was added to all of the Styled Buttons, to enable/disable Rounding drawing, as showed in this example:</p>
217220
<p><img src="./Images/StyledRoundedCornersExamples.jpg" alt="RoundedCorners"/></p>
@@ -333,6 +336,10 @@ <h3>Available from Delphi XE6 to Delphi 12 (32bit and 64bit platforms)</h3>
333336
<p><img src="./Images/SupportingDelphi.jpg" alt="Delphi Support"/></p>
334337
<p>Related links: <a href="https://www.embarcadero.com">embarcadero.com</a> - <a href="https://learndelphi.org">learndelphi.org</a></p>
335338
<h3>RELEASE NOTES</h3>
339+
<p>16 May 2024: version 3.5.3</p>
340+
<ul>
341+
<li>Added unit Vcl.TemplateButtonStyles.pas</li>
342+
</ul>
336343
<p>12 May 2024: version 3.5.2</p>
337344
<ul>
338345
<li>Fixed Storing Caption of StyledToolButton</li>

README.md

Lines changed: 11 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22

33
## Components similar to Delphi VCL Buttons, Toolbar, DbNavigator, BindNavigator, ButtonGroup and CategoryButtons with Custom Graphic Styles, and an advanced, full-customizable TaskDialog, also with animations!
44

5-
### Actual official version: 3.5.2
5+
### Actual official version: 3.5.3
66

77
---
88
## A brief description
@@ -20,6 +20,8 @@ With **StyledComponents** you can overcome these limits in a simple way. You can
2020
- Adapt to the colors of the VCL styles, keeping the shape of the button consistent
2121
- The appearance is identical in “Windows” mode or by applying VCL styles to the application
2222

23+
Last, but not least, with **StyledTaskDialog** you can control appearance of your Message Dialogs in any aspect. Using Skia4Delphi you can also add animated Icons to your messages.
24+
2325
…all available from the Delphi XE6 version (which allows the use of GDI+, used for button drawing).
2426

2527
## The most important properties
@@ -85,7 +87,7 @@ Those components uses some properties to Draw Icon and Caption in a different wa
8587

8688
---
8789

88-
## New _TStyledAnimatedButton_ Component (beta):
90+
## New _TStyledAnimatedButton_ Component:
8991
| Component | Description |
9092
| - | - |
9193
| ![OK_ANIMATED_BUTTON_128.png](./Images/OK_ANIMATED_BUTTON_128.png) | **TStyledAnimatedButton** is Styled Button with with "animated icon" using a Skia TSkAnimatedImage component inside. You can select the events that starts the animation, like: _AnimateOnMouseOver_, _AnimateOnClick_, _AnimateAlways_, _AnimateOnFocus_. |
@@ -162,6 +164,10 @@ TStyledButton.RegisterDefaultRenderingStyle(btRoundRect, BOOTSTRAP_FAMILY, btn_p
162164
```
163165
You can also use [Interposer Unit (Vcl.StyledComponentsHooks.pas)](https://github.com/EtheaDev/StyledComponents/wiki/Interposer-Unit-(Vcl.StyledComponentsHooks)) to easily change all Buttons of your application.
164166

167+
***New Template unit to create your custom Family Styles***
168+
169+
NOTICE: from version 3.5.3 there is a new unit "Vcl.TemplateButtonStyles.pas" you can use to create your own Family of Button Styles, [as explained here](https://github.com/EtheaDev/StyledComponents/wiki/HowtoBuildYourCustomStyle)
170+
165171
***New RoundedCorners options***
166172

167173
NOTICE: from version 3.5.0 the new **RoundedCorners** property was added to all of the Styled Buttons, to enable/disable Rounding drawing, as showed in this example:
@@ -376,6 +382,9 @@ If you are have Skia4Delphi installed, you can also try the AnimatedTaskDialogDe
376382
Related links: [embarcadero.com](https://www.embarcadero.com) - [learndelphi.org](https://learndelphi.org)
377383

378384
### RELEASE NOTES
385+
16 May 2024: version 3.5.3
386+
- Added unit Vcl.TemplateButtonStyles.pas
387+
379388
12 May 2024: version 3.5.2
380389
- Fixed Storing Caption of StyledToolButton
381390

packages/Vcl.StyledButtonEditorUnit.dfm

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -145,6 +145,7 @@ object StyledButtonEditor: TStyledButtonEditor
145145
'Classic')
146146
TabIndex = 0
147147
OnChange = TabControlChange
148+
OnGetImageIndex = TabControlGetImageIndex
148149
object ScrollBox: TScrollBox
149150
AlignWithMargins = True
150151
Left = 7

packages/Vcl.StyledButtonEditorUnit.pas

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -101,6 +101,8 @@ TStyledButtonEditor = class(TForm)
101101
procedure CheckBoxClick(Sender: TObject);
102102
procedure AsVCLComponentCheckBoxClick(Sender: TObject);
103103
procedure RoundedCheckBoxClick(Sender: TObject);
104+
procedure TabControlGetImageIndex(Sender: TObject; TabIndex: Integer;
105+
var ImageIndex: Integer);
104106
private
105107
FUpdating: Boolean;
106108
FFamilyBuilt: TStyledButtonFamily;
@@ -516,6 +518,16 @@ procedure TStyledButtonEditor.TabControlChange(Sender: TObject);
516518
BuildFamilyPreview(LFamily);
517519
end;
518520

521+
procedure TStyledButtonEditor.TabControlGetImageIndex(Sender: TObject;
522+
TabIndex: Integer; var ImageIndex: Integer);
523+
begin
524+
//Use always Image n.6 for custom Families
525+
if TabIndex <= 5 then
526+
ImageIndex := TabIndex
527+
else
528+
ImageIndex := 6;
529+
end;
530+
519531
procedure TStyledButtonEditor.UpdateDestFromGUI;
520532
begin
521533
DestButton.Style := TCustomButton.TButtonStyle(StyleComboBox.ItemIndex);

source/Vcl.StyledButton.pas

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -53,7 +53,7 @@ interface
5353
;
5454

5555
const
56-
StyledButtonsVersion = '3.5.2';
56+
StyledButtonsVersion = '3.5.3';
5757

5858
resourcestring
5959
ERROR_SETTING_BUTTON_STYLE = 'Error setting Button Style: %s/%s/%s not available';

0 commit comments

Comments
 (0)