Commit Graph

737 Commits

Author SHA1 Message Date
Juha
d784606f77 LCL: Fix deprecation warnings. Issue #40918, patch by Don Siders. 2024-04-26 00:59:26 +03:00
Bart
148735d8fb TCustomTabControl: rename a method. No functional changes. 2024-02-25 13:29:39 +01:00
Bart
e5a637999d TCustomTabControl: activate first control on page after page changed. Issue #40775. 2024-02-24 13:47:49 +01:00
Bart
af9412b019 TCustomListView: trying to implement OnChanging (Win32):
* according to Delph docs (https://docwiki.embarcadero.com/Libraries/Alexandria/en/Vcl.ComCtrls.TCustomListView.CanChange) the function CanClose calls the OnChanging event. It's result indicates wether changing will be allowed.
2024-01-05 17:59:21 +01:00
Bart
39eb9884d0 TCustomListView: exploring how to implement OnChanging (on Win32 for now). 2024-01-05 15:17:07 +01:00
Bart
fe0ed266ce TTaskDialog: start implementing TTaskDialogProgressBar: skeleton only, does not communicate with the dialog yet. 2023-08-23 13:10:52 +02:00
mattias
ee218d1fa0 lcl: TTreeView: public ScrolledLeft/Top, PathDelimiter 2023-08-14 15:08:23 +02:00
wp_xyz
0cbb6646f7 LCL/all units with controls: stream events at the end. 2023-08-12 14:55:46 +02:00
Juha
cc4760393b Reserve "On..." prefix for events and name functions differently. 2023-07-25 11:07:57 +03:00
Juha
e65a102527 Remove unit Laz_AVL_Tree, a copy of unit AVL_Tree. Not needed with FPC 3.2.x. 2023-07-07 17:39:03 +03:00
Juha
211d95da17 LCL: Use TLCLHandle instead of a redefined LCLType.THandle or TLCLIntfHandle. Deprecate them. 2023-07-03 11:17:01 +03:00
Jesus Reyes A
0d7fc55be1 LCL: fix TTreeview ShowSeparators default value. 2023-06-27 19:24:10 -06:00
Juha
cc7d9e60fb LCL: Simplify TTreeNode after adding support for Enabled property. Issue #40335, patch by n7800. 2023-06-20 11:09:58 +03:00
Juha
e045ba01d2 Remove units from uses sections, especially LCLProc which now contains many wrappers to other non-LCL units. 2023-06-18 14:57:06 +03:00
Juha
87fe030800 LazControls, LCL: Add shortcuts to TreeFilterEdit to work with TreeView. Issue #40321, patch by n7800. 2023-06-16 02:01:21 +03:00
wp_xyz
f793569190 LCL: Fix high-dpi scaling of the TabHeight and TabWidth properties of TPageControl and TTabControl 2023-05-16 22:28:12 +02:00
Željan Rikalo
45519ddb9f Win32: public Canvas property for TTabControl. Patch by Marco Van de Voort. issue #22780 2023-05-15 12:52:14 +02:00
Juha
65d888e286 IDE, LCL: Formatting. 2023-05-15 02:15:40 +03:00
wp_xyz
dc299031b7 LCL/Toolbar: Remove redundant method TToolbar.ToolButtonDown, issue #40216 2023-04-18 13:56:58 +02:00
wp_xyz
f0ca99ba13 LCL/ToolButton: Fix endless loop when there is more than one checked button in group. Issue #40216, patch by n7800 2023-04-18 00:17:24 +02:00
Juha
65a33f80b8 LCL: Publish TTreeView.ShowSeparators. Issue #40186, patch by Don Siders. 2023-04-01 08:54:02 +03:00
wp_xyz
3f3e32ce9b lcl/(Shell)TreeView: Add "FindOptions" so that FindNodeWithTextPath works in TShellTreeView even with collapsed nodes and in case-insensitive file systems. 2022-11-08 15:55:17 +01:00
wp_xyz
9cce03ac94 LCL/(Shell)TreeView: Add property PathDelimiter to TCustomTreeView to allow OS path delimiter in ShellTreeView. 2022-11-08 15:30:03 +01:00
Ondrej Pokorny
9d20943797 LCL: public TCustomTrackBar.SetParams 2022-09-29 00:24:59 +02:00
wp_xyz
6d123c6ac8 LCL/Toolbar: Fix incorrect high-dpi scaling of toolbuttons due to hard-coded constant margins. 2022-09-13 21:55:27 +02:00
wp_xyz
7db50f95cc LCL: Increase distance between TToolButton icon and text in List mode. 2022-09-11 18:12:06 +02:00
wp_xyz
0883c8c524 LCL/ListView: implement incremental search in virtual mode for Windows. Issue #39748. 2022-05-13 11:06:11 +02:00
wp_xyz
fb64d6ef4d LCL/ListView: Fix multi-selection in virtual mode. Issue #39693. 2022-04-03 23:27:52 +02:00
Juha
cd2ae505e3 LCL: Fix cursor key behavior with TTreeNode.Enabled, add methods to iterate tree. Issue #39590. 2022-01-25 11:20:56 +02:00
Juha
6464e232a0 LCL: Implement TreeView's TTreeNode.Enabled property, partly functional. Issue #39590, patch by Alexey Torgashin. 2022-01-23 21:29:54 +02:00
Juha
02eed0c903 LCL: A new angle bracket option for TreeViewExpandSignType. Issue #39361, patch by Alexey T. 2021-10-04 11:35:11 +03:00
wp
ee25f78baf LCL/ShellTreeView: Speed-up of populating a folder with many subfolders (example: c:\Windows\WinSxS)
git-svn-id: trunk@65454 -
2021-07-15 08:26:48 +00:00
wp
8b6e1655ea LCL/TPageControl: Add new method "Clear" to remove all pages.
git-svn-id: trunk@65355 -
2021-07-03 20:44:02 +00:00
juha
a04f03d6df LCL: Take the width of TPageControl's TTabSheets into account in an autosized form. Issue #36493, patch by Joeny Ang.
git-svn-id: trunk@65218 -
2021-06-11 07:25:39 +00:00
juha
a8969e516a LCL: In TListItem, use TListItemState type directly.
git-svn-id: trunk@64948 -
2021-04-10 10:01:05 +00:00
wp
446f7d1290 LCL/TreeView: Re-add state flag tvsUpdating removed in r64855 #a1aea6a20a. Issue #38735.
git-svn-id: trunk@64947 -
2021-04-10 09:46:11 +00:00
wp
a1aea6a20a LCL/TreeView: Fix OnExpand* events not firing any more after r64142 #2a0df745f0. Issue #38084.
git-svn-id: trunk@64855 -
2021-03-22 08:43:53 +00:00
juha
c5c78f2c8b LCL: Add widgetset support for TCustomListView.GetNextItem. Implement now for Win32. Issue #38565, patch from Remko Plantenga.
git-svn-id: trunk@64848 -
2021-03-21 08:31:45 +00:00
martin
37d6fcb8bd TTabControl: "fix" x/y in Mouse(move/down/up/Drag) messages. Issue #0038403 see note 0129133 amends rev 64424 #ed6e087523,64436 #dfa3fe0ea4
- All X,Y are now computed from the LCL top/left of the TTabControl. X,Y of the embedded control are amended.

git-svn-id: trunk@64677 -
2021-02-27 15:14:31 +00:00
wp
e32b62e6b4 LCL/ShellCtrls: On Windows automatically show shell icons in TShellTreeView when no imagelist is attached.
git-svn-id: trunk@64575 -
2021-02-13 22:11:24 +00:00
martin
dfa3fe0ea4 TTabControl: reverted/replaced r64424 #ed6e087523: "fix ClientOrigin, Issue #38403 - Need the origin of the child TabControl".
Modifying the ClientOrigin affects child-controls of the TTabControl.
Also fixes issue #38422, endless recursion if no handle was allocated.

git-svn-id: trunk@64436 -
2021-01-29 18:53:47 +00:00
martin
fc429e3a50 Missing file for * SynEdit: Introduce LineGutter.OnFormatLineNumber - Issue #38370
git-svn-id: trunk@64427 -
2021-01-27 16:08:00 +00:00
juha
42850cfe4d LazUtils: Deprecate now obsolete unit LazUtf8Classes and remove its references from Lazarus code.
git-svn-id: trunk@64384 -
2021-01-14 12:41:32 +00:00
bart
cdfd1ae57a TUpDown: use the MouseEnter/MouseLeave methods to fire the OnMouseEnter and OnMouseLeave events. Slightly alters r64151 #6a41fe9801.
git-svn-id: trunk@64369 -
2021-01-09 21:45:16 +00:00
bart
b8b3de002a Refine the implementation of TCustomListView.Delete(), .InsertItem and .Edit after r64309 #fbb46cb85d (Issue #0038263).
This commit is also not completely Delphi compatible.
In Delphi Items can be added or delted as a respons to LVN_xxx messages, which the Lazarus implementation
does not support (it may very well be not protable?).

This commit causes code duplication (fortunately mostly one-liners)
The resons for this that the Lazarus methods DoDeletion, DoInsert and DoEndEdit are virtual and as such
may have been overriden by users, so this code still needs to work.
Users with code coming from Delphi expect that they can override Delete, InsertItem and Edit, so this must be possible as well,
and in that case out event dispatchers simply call the overridden Delphi variant.

The exception to this is Delete().
As far as we know, in Delphi Delete() is triggerd after an Items.Delete and acts as an event dispatcher,
but if you call it by itself, then it will actually delete the item (this in contrast to InsertItem, which only
calls the event handler and does nothing else).
(No Delphi code was studied to obtain this information, it was all done using black box testing (by LacaK and BB),
so this conclusion may be wrong.)
I decided to implement Delete in such a way that it checks wether it was called after the fact (after Items.Delete),
and if that is not the case, it will delete the item (triggering a re-entry of the method).
Not very nice, but it is in any case better then an empy implementation like it was before r64309 #fbb46cb85d.

It was discussed also to rename and deprecate our event dispatchers in favour of the Delpi ones, but I decided agains that
for the following reasons:
- naming conventions: DoXXX dispatches OnXXX
- signatures differ between DoEndEdit and Edit

git-svn-id: trunk@64318 -
2021-01-02 13:23:49 +00:00
wp
fbb46cb85d LCL/TListView: Improved Delphi compatibility by giving life to the empty methods Delete and InsertItem and adding an Edit method.
git-svn-id: trunk@64309 -
2020-12-30 18:56:35 +00:00
juha
9219ea531d Move unit GraphMath from LCL to LazUtils. It has no dependencies to GUI.
git-svn-id: trunk@64303 -
2020-12-29 22:56:40 +00:00
juha
6a41fe9801 LCL: Fire TUpDown MouseEnter and MouseLeave events. Issue #38101.
git-svn-id: trunk@64151 -
2020-11-20 10:52:19 +00:00
juha
2a0df745f0 LCL: Do not call TTreeView.OnCollapsing and OnCollapsed during clearing the items. Issue #38084.
git-svn-id: trunk@64142 -
2020-11-15 16:57:13 +00:00
juha
14d83904c3 IdeIntf: Do not autoexpand ComponentTree in OI after component delete or ZOrder change. Issue #37434.
git-svn-id: trunk@64138 -
2020-11-15 11:41:43 +00:00