• Home
  • History
  • Annotate
Name Date Size #Lines LOC

..03-May-2022-

.github/H28-Nov-2020-1311

bgra_pascalscript_library/H03-May-2022-1,6371,289

bgrasvgimagelistform/H03-May-2022-775721

docs/img/H03-May-2022-

fpdoc/H28-Nov-2020-3331

icons/H03-May-2022-1,4801,448

images/H03-May-2022-9,2319,230

lcl/H03-May-2022-626417

mouseandkeyinput/H03-May-2022-1,218825

styles/H28-Nov-2020-4,5664,514

test/H28-Nov-2020-103,277100,055

winmake/H28-Nov-2020-4836

.gitignoreH A D28-Nov-2020162 2119

MakefileH A D28-Nov-2020720 3627

README.mdH A D28-Nov-20209.2 KiB305157

_config.ymlH A D28-Nov-2020130 97

atshapelinebgra.pasH A D03-May-202210.5 KiB400293

bcbasectrls.pasH A D03-May-202249.5 KiB1,8381,439

bcbrightandcontrast.pasH A D03-May-20221.8 KiB7345

bcbutton.pasH A D03-May-202259.4 KiB2,1211,724

bcbuttonfocus.pasH A D03-May-202254.1 KiB1,9201,518

bccombobox.pasH A D03-May-202220.6 KiB732643

bcdefaultthememanager.pasH A D03-May-20228.1 KiB261217

bceffect.pasH A D03-May-20225.6 KiB228171

bcfilters.pasH A D03-May-202232.4 KiB1,5521,306

bcgamegrid.pasH A D03-May-20226.4 KiB267194

bcgradientbutton.pasH A D03-May-20226.2 KiB255221

bcimagebutton.pasH A D03-May-202238.7 KiB1,4591,168

bckeyboard.pasH A D03-May-202213.5 KiB515405

bclabel.pasH A D03-May-20229.1 KiB386283

bclistbox.pasH A D03-May-20224.1 KiB185117

bclistboxex.pasH A D03-May-20225.3 KiB239211

bcmaterialdesignbutton.pasH A D03-May-202214.1 KiB523454

bcmdbutton.pasH A D03-May-202226.7 KiB915733

bcmdbuttonfocus.pasH A D03-May-202224.6 KiB864704

bcnumerickeyboard.pasH A D03-May-20229 KiB362268

bcpanel.pasH A D03-May-202213 KiB518389

bcpaperlistbox.lrsH A D28-Nov-20201.2 KiB1817

bcradialprogressbar.pasH A D03-May-20227.9 KiB303247

bcreg.pasH A D03-May-20222.6 KiB6331

bcroundedimage.pasH A D03-May-20224.5 KiB171122

bcrtti.pasH A D03-May-20229.2 KiB341242

bcsamples.pasH A D03-May-202249.3 KiB1,3031,165

bcstylesform.lfmH A D28-Nov-20206.7 KiB235234

bcstylesform.pasH A D03-May-202214.3 KiB517398

bcsvgbutton.pasH A D03-May-20229.2 KiB358284

bcsvgviewer.pasH A D03-May-20229.2 KiB354297

bcthememanager.pasH A D03-May-2022769 3316

bctoolbar.pasH A D03-May-20225 KiB185127

bctools.pasH A D03-May-202224.2 KiB734607

bctrackbarupdown.pasH A D03-May-202223.4 KiB815724

bctypes.pasH A D03-May-202229.7 KiB1,114876

bgracolortheme.pasH A D03-May-20226.7 KiB234200

bgracontrols.dpkH A D28-Nov-20202.6 KiB9488

bgracontrols.dprojH A D28-Nov-202012.3 KiB226225

bgracontrols.dproj.localH A D28-Nov-202060 32

bgracontrols.incH A D28-Nov-2020275 1412

bgracontrols.logicH A D28-Nov-2020218 55

bgracontrols.lpkH A D28-Nov-202011.4 KiB365364

bgracontrols.pasH A D03-May-20223.7 KiB7665

bgracontrols.statH A D28-Nov-2020156 1110

bgracontrolsinfo.pasH A D03-May-2022737 3826

bgracustomdrawn.pasH A D03-May-202231.2 KiB1,026806

bgradrawerflashprogressbar.pasH A D03-May-20226.5 KiB227195

bgraflashprogressbar.pasH A D03-May-20228.1 KiB288216

bgragraphiccontrol.pasH A D03-May-20229.2 KiB343262

bgraimagelist.pasH A D03-May-20222.9 KiB12764

bgraimagemanipulation.pasH A D03-May-202283.2 KiB2,6861,982

bgraimagetheme.pasH A D03-May-20222.5 KiB10781

bgraknob.pasH A D03-May-202215.4 KiB570454

bgrapascalscript.pasH A D03-May-202212.7 KiB434335

bgrapascalscriptcomponent.lpkH A D28-Nov-20201.4 KiB5150

bgrapascalscriptcomponent.pasH A D03-May-2022475 2312

bgraresizespeedbutton.pasH A D03-May-20222.4 KiB9055

bgrascript.pasH A D03-May-202217.9 KiB688577

bgrashape.pasH A D03-May-202211.8 KiB454380

bgraspeedbutton.pasH A D03-May-20222.7 KiB11352

bgraspriteanimation.pasH A D03-May-202218.9 KiB698560

bgrasvgimagelist.pasH A D03-May-202210.4 KiB354299

bgrasvgtheme.pasH A D03-May-202233.3 KiB923798

bgratheme.pasH A D03-May-202210.8 KiB391322

bgrathemebutton.pasH A D03-May-20225.3 KiB229192

bgrathemecheckbox.pasH A D03-May-20223.5 KiB165134

bgrathemeradiobutton.pasH A D03-May-20224 KiB180148

bgravirtualscreen.pasH A D03-May-202214.9 KiB561456

colorspeedbutton.pasH A D03-May-202216.3 KiB611506

dtanalogclock.pasH A D03-May-20227.4 KiB306192

dtanalogcommon.pasH A D03-May-202221.1 KiB878669

dtanalogcommon.ppH A D28-Nov-202021.6 KiB874712

dtanaloggauge.pasH A D03-May-202211.8 KiB472292

dtanaloggauge.ppH A D28-Nov-202011.9 KiB466347

dtthemedclock.pasH A D03-May-20229.9 KiB326219

dtthemedgauge.pasH A D03-May-20227.2 KiB257153

dtthemedgauge.ppH A D28-Nov-20207.1 KiB250191

fpdoc.batH A D28-Nov-202068 11

materialcolors.pasH A D03-May-20227.1 KiB206165

update_bgracontrols_force.jsonH A D28-Nov-2020468 2020

upsi_bgrapascalscript.pasH A D03-May-202211.3 KiB204148

README.md

1# BGRA Controls
2
3BGRA Controls is a set of graphical UI elements that you can use with Lazarus LCL applications.
4
5![BGRA Controls](https://raw.githubusercontent.com/bgrabitmap/bgracontrols/dev-bgracontrols/docs/img/logo.png)
6
7### Support Us
8
9If you like BGRAControls please [support @lainz on Patreon](https://www.patreon.com/lainz) and [support @circular17 with PayPal](https://sourceforge.net/p/lazpaint/donate/?source=navbar).
10
11### Installing
12
13Use the Online Package Manager to get BGRABitmap and BGRAControls.
14
15Notice that you must check only the packages "bgrabitmappack.lpk" and "bgracontrols.lpk" in the Online Package Manager. The other packages are optional and may need third party packages / libraries to work (OpenGL and PascalScript).
16
17### Optional Components
18
19Since v4.4 the components TBCDefaultThemeManager, TBCKeyboard and TBCNumericKeyboard are not installed by default to allow Linux users to get a seamless installation with the Online Package Manager not installing third party stuff. If you want these components turn on the "Register unit" in the package options for each file (bcdefaulthememanager.pas, bckeyboard.pas, bcnumerickeyboard.pas) then compile and rebuild Lazarus. On Linux you need to install libxtst-dev and libgl-dev first.
20
21### Screenshots macOS 64 Cocoa
22![Analog Controls](https://raw.githubusercontent.com/bgrabitmap/bgracontrols/dev-bgracontrols/docs/img/analogcontrols.png)
23![BCButton](https://raw.githubusercontent.com/bgrabitmap/bgracontrols/dev-bgracontrols/docs/img/bcbutton.png)
24![BCButtonFocus](https://raw.githubusercontent.com/bgrabitmap/bgracontrols/dev-bgracontrols/docs/img/bcbuttonfocus.png)
25![BCImageButton](https://raw.githubusercontent.com/bgrabitmap/bgracontrols/dev-bgracontrols/docs/img/bcimagebutton.png)
26![BCToolBar](https://raw.githubusercontent.com/bgrabitmap/bgracontrols/dev-bgracontrols/docs/img/bctoolbar.png)
27![BCXButton](https://raw.githubusercontent.com/bgrabitmap/bgracontrols/dev-bgracontrols/docs/img/bcxbutton.png)
28![BGRA Ribbon](https://raw.githubusercontent.com/bgrabitmap/bgracontrols/dev-bgracontrols/docs/img/bgraribbon.png)
29![ProgressBar](https://raw.githubusercontent.com/bgrabitmap/bgracontrols/dev-bgracontrols/docs/img/progressbar.png)
30
31### TBCButton
32
33A button control that can be styled through properties for each state like StateClicked, StateHover, StateNormal with settings like gradients, border and text with shadows. You can assign an already made style through the property AssignStyle.
34
35Author: Dibo.
36
37### TBCButtonFocus
38
39Like TBCButton but it supports focus like normal TButton.
40
41Author: Dibo.
42
43### TBCGameGrid
44
45A grid with custom width and height of items and any number of horizontal and vertical cells that can be drawn with BGRABitmap directly with the OnRenderControl event.
46
47Author: Lainz.
48
49### TBCImageButton
50
51A button control that can be styled with one image file, containing the drawing for each state Normal, Hovered, Active and Disabled. It supports 9-slice scaling feature. It supports a nice fading animation that can be turned on.
52
53Author: Lainz.
54
55### TBCXButton
56
57A button control that can be styled by code with the OnRenderControl event. Or even better create your own child control inheriting from this class.
58
59Author: Lainz.
60
61### TBCLabel
62
63A label control that can be styled through properties, it supports shadow, custom borders and background.
64
65Author: Dibo.
66
67### TBCMaterialDesignButton
68
69A button control that has an animation effect according to Google Material Design guidelines. It supports custom color for background and for the circle animation, also you can customize the shadow.
70
71Author: Lainz.
72
73### TBCMDButton
74
75A button control like TBCMaterialDesignButton, without shadow, but with more capabilities.
76
77Author: Lainz. Contributions by Fritz.
78
79### TBCPanel
80
81A panel control that can be styled through properties. You can assign an already made style through the property AssignStyle.
82
83Author: Dibo.
84
85### TBCRadialProgressBar
86
87A progress bar with radial style. You can set the color and text properties as you like.
88
89Author: Lainz.
90
91### TBCSVGButton
92
93Button made with SVG images for each state. Based on the SVG Viewer.
94
95Author: Josh.
96
97### TBCSVGViewer
98
99SVG viewer with several options.
100
101Author: Lainz, Circular.
102
103### TBCToolBar
104
105A TToolBar with an event OnRedraw to paint it using BGRABitmap. It supports also the default OnPaintButton to customize the buttons drawing. By default it comes with a Windows 7 like explorer toolbar style.
106
107Author: Lainz.
108
109### TBCTrackBarUpdown
110
111A control to input numeric values with works like a trackbar and a spinedit both in one control.
112
113Author: Circular.
114
115### TBGRAFlashProgressBar
116
117A progress bar with a default style inspired in the old Flash Player Setup for Windows progress dialog. You can change the color property to have different styles and also you can use the event OnRedraw to paint custom styles on it like text or override the entire default drawing.
118
119Author: Circular.
120
121### TBGRAGraphicControl
122
123Is like a paintbox. You can draw with transparency with this control using the OnRedraw event.
124
125Author: Circular.
126
127### TBGRAImageList
128
129An image list that supports alpha in all supported platforms.
130
131Author: Dibo.
132
133### TBGRAImageManipulation
134
135A tool to manipulate pictures, see the demo that shows all the capability that comes with it.
136
137Author: Emerson Cavalcanti.
138
139### TBGRAKnob
140
141A knob that can be styled through properties.
142
143Author: Circular.
144
145### TBGRAResizeSpeedButton
146
147A speed button that can resize the glyph to fit in the entire control.
148
149Author: Fox (helix2001).
150
151### TBGRAShape
152
153A control with configurable shapes like polygon and ellipse that can be filled with gradients and can have custom borders and many other visual settings.
154
155Author: Circular.
156
157### TBGRASpeedButton
158
159A speed button that in GTK and GTK2 provides BGRABitmap powered transparency to the glyph.
160
161Author: Dibo.
162
163### TBGRASpriteAnimation
164
165A component that can be used as image viewer or animation viewer, supports the loading of gif files.
166
167Author: Lainz.
168
169### TBGRAVirtualScreen
170
171Is like a panel. You can draw this control using the OnRedraw event.
172
173Author: Circular.
174
175### TBCNumericKeyboard
176
177A panel with numeric buttons to store the input in a string. Then you can use the events to edit it to fit your needs and assign to other controls that value.
178
179Author: Lainz.
180
181### TBCRealNumericKeyboard
182
183A panel with numeric buttons to do the real input of the keys on keyboard. What you type is sent to the focused control directly.
184
185Author: Lainz. Esvignolo.
186
187### TBCDefaultThemeManager
188
189A component to style all the selected buttons in a form with the need to style only a single button. Can be used entirely with code.
190
191Author: Lainz.
192
193### TDTAnalogClock
194
195A clock.
196
197Author: Digeo.
198
199### TDTAnalogGaugue
200
201A gauge.
202
203Author: Digeo.
204
205### TDTThemedClock
206
207Another clock.
208
209Author: Digeo.
210
211### TDTThemedGauge
212
213Another gauge.
214
215Author: Digeo.
216
217### TPSImport_BGRAPascalScript
218
219A component to load BGRABitmap pascal script utilities.
220
221Author: Lainz, Circular.
222
223# BGRA Custom Drawn
224BGRA Custom Drawn is a set of controls inherited from Custom Drawn. These come with a default dark style that is like Photoshop.
225
226Author: Lainz.
227
228### TBCDButton
229
230A button control that is styled with TBGRADrawer.
231
232### TBCDEdit
233
234An edit control that is styled with TBGRADrawer.
235
236### TBCDStaticText
237
238A label control that is styled with TBGRADrawer.
239
240### TBCDProgressBar
241
242A progress bar control that is styled with TBGRADrawer.
243
244### TBCDSpinEdit
245
246A spin edit control that is styled with TBGRADrawer.
247
248### TBCDCheckBox
249
250A check box control that is styled with TBGRADrawer.
251
252### TBCRadioButton
253
254A radio button that is styled with TBGRADrawer.
255
256### TBCDPanel
257
258A panel control that is styled in its own Paint event.
259
260# Sample code
261
262BGRA Controls comes with nice demos to show how to use the stuff and extra things you can use in your own projects.
263
264Contributors: Lainz, Circular, Fred vS, Coasting and others.
265
266### Pascal Script Library
267
268Putting BGRABitmap methods into a .dll with c#, java and pascal headers.
269
270### BGRA Ribbon Custom
271
272How to create a fully themed window using the controls to achieve a Ribbon like application.
273
274### Tests
275
276There are test for analog controls (clock and gauge), BC prefixed controls, BGRA prefixed controls, BGRA Custom Drawn controls, how to use Pascal Script and BGRABitmap, bgrascript or how to create your own scripting solution with BGRABitmap.
277
278### Tests Extra
279
280These are extra tests like how to use fading effect, an fpGUI theme, games like maze and puzzle, how we created the material design animation, pix2svg or how to convert a small picture to svg using hexagons, rectangles and ellipses, plugins or how to load .dlls and use into a TBGRAVirtualScreen, rain effect, shadow effect, 9-slice-scaling with Custom Drawn or how to theme with bitmaps an application to look like Windows themes and 9-slice-scaling with charts.
281
282# Another units
283
284These units come with BGRA Controls and contains more functionality that is sometimes used with the controls, sometimes not but are usefull in some way. Some are listed here, others you can see linked directly with any control like bcrtti, bcstylesform, bctools, bctypes.
285
286Author: Dibo.
287
288### BCEffect
289
290Fading effect with BGRABitmap.
291
292Author: Lainz, Circular.
293
294### BCFilters
295
296A set of pixel filters to use with BGRABitmap.
297
298Author: Lainz.
299
300### BGRAScript
301
302Scripting with BGRABitmap, see test project.
303
304Author: Lainz.
305