Commit Graph

707 Commits

Author SHA1 Message Date
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
juha
39effc2a52 LCL: Allow specified PopupMenu in TabControl when page-selector menu disabled. Issue #37171, patch from Anton Kavalenka.
git-svn-id: trunk@63287 -
2020-06-04 20:07:35 +00:00
juha
0d191847d7 LCL: Fix an error in TTreeView mouse selection + some refactoring. Issue #37145.
git-svn-id: trunk@63235 -
2020-05-27 11:58:07 +00:00
juha
257f842d30 LCL: Improve TTreeView mouse selection. Issue #37145, patch from Joeny Ang.
git-svn-id: trunk@63232 -
2020-05-26 23:24:01 +00:00
juha
257f95ec97 LCL: Never trigger click events on TreeView's fold-arrow. Issue #37051, patch from CudaText man.
git-svn-id: trunk@63171 -
2020-05-16 08:23:09 +00:00
juha
b4415f3aa4 LCL: Don't trigger click event on TreeView's fold-arrow if another node is selected. Issue #37051.
git-svn-id: trunk@63147 -
2020-05-13 22:29:10 +00:00
juha
11e2bdecbc LCL: Don't trigger double-click on TreeView's fold-arrow if another node is selected. Issue #37051.
git-svn-id: trunk@63139 -
2020-05-12 18:52:10 +00:00
dmitry
8bcb4c3d6f lcl: moving RegisterPropertyToSkip from unit initialization to WSRegisterClass methods
git-svn-id: trunk@62581 -
2020-01-23 15:28:39 +00:00
dmitry
556c5562fe bug #36281. Merged revision(s) 62516-62547 from branches/listviewsortindicator:
lcl: adding sortIndicator to the listview
........
win32: implementation of sortindicator 
........
lcl: adding autosortindicator property for the listview
........
gtk2: sortindicator implementation
........
gtk2: reverting accidental changes (unrelated to sortindicator)
........
qt5: implementing sort indicator  (seems like qt5 allows only 1 indicator per header)
........
cocoa: implementing sortIndicator
........
doc: adding short descriptions for SortIndicator and AutoSortIndicator
........

git-svn-id: trunk@62567 -
2020-01-17 01:49:23 +00:00
juha
915d805de0 LCL: Add lacking functionality for TPageControl, mostly for Windows. Issue #34867, patch from Marcin Wiazowski.
git-svn-id: trunk@62201 -
2019-11-05 17:45:52 +00:00
juha
b13519cc85 LCL: Call GetPageClass when adding a TTabSheet in PageControl. Eliminate PageClass variable. Issue #34886.
git-svn-id: trunk@62136 -
2019-10-27 19:19:28 +00:00
juha
4bc787b833 LCL: Support AutoSize in TTrackBar with hi-dpi. Revert AutoSize=True from r61473 #8466836623. Issue #35861, patch from Joeny Ang.
git-svn-id: trunk@61676 -
2019-08-09 19:16:56 +00:00
juha
8466836623 LCL-GTK2: Fix autosize for TTrackBar when TickStyle := tsNone. Issue #34418, patch from Joeny Ang.
git-svn-id: trunk@61473 -
2019-06-25 05:43:32 +00:00
juha
383cc68489 LCL: Implement TreeView DisabledFontColor. Issue #35628, patch from Alexey Tor.
git-svn-id: trunk@61294 -
2019-05-27 09:39:54 +00:00
dmitry
73e6567b0f lcl: resolve the use of missing Min and Max buttons if WS implementation is used for TUpDown. #34663
git-svn-id: trunk@60969 -
2019-04-14 07:14:00 +00:00
dmitry
3d2a723a44 lcl: updating TCustomUpDown to use WS interface, if provided. #34663
git-svn-id: trunk@60966 -
2019-04-14 06:52:26 +00:00
juha
5c4bd12dd3 LCL: Publish OnMouseWheelHorz/Left/Right events for most controls. Issue #34683, patch from AlexeyT.
git-svn-id: trunk@59801 -
2018-12-12 11:33:10 +00:00
michl
5763246b85 LCL: TTreeView: Make TOldTreeNodeInfo.Data 32/64Bit aware to prevent crash of TreeView.Items.Assign on 64bit.
git-svn-id: trunk@58510 -
2018-07-13 21:44:31 +00:00
ondrej
8ea5419293 LCL: updown: default value for Wrap
git-svn-id: trunk@58348 -
2018-06-20 05:40:45 +00:00
ondrej
93a2ed86cc LCL: treeview: protect Change as well, not only OnChange
git-svn-id: trunk@58279 -
2018-06-15 14:28:30 +00:00
juha
3574bdfb6d Move debug- & other non-GUI stuff from LCLProc to LazUtilities and LazLogger in package LazUtils.
git-svn-id: trunk@58244 -
2018-06-13 13:59:07 +00:00
ondrej
f620b70d6d LCL: toolbar: fix endless align/autosize loop. Issue #33575
git-svn-id: trunk@57674 -
2018-04-19 14:49:39 +00:00
ondrej
71b81a6c94 LCL: TCustomTabControl: update images on DPI change
git-svn-id: branches/HiDPIImageList@57157 -
2018-01-27 13:39:09 +00:00
ondrej
039c7ea1bf LCL: High-DPI ImageList: reload WS image lists on resolution handle destruction (TPageControl, TListView)
git-svn-id: branches/HiDPIImageList@57073 -
2018-01-13 12:01:07 +00:00
ondrej
90f22ba7fd LCL: High-DPI ImageList: LCL runtime and win32
git-svn-id: branches/HiDPIImageList@57039 -
2018-01-10 12:46:42 +00:00
juha
25c7897052 LCL: Use 32-bit type for Data when streaming nodes of old format or Delphi format.
git-svn-id: trunk@56973 -
2018-01-05 23:48:03 +00:00
ondrej
be6ec02cd2 LCL: TListView: store column widths on handle destruction. Issue #32922
git-svn-id: trunk@56910 -
2018-01-01 20:58:03 +00:00
juha
fe589cfb05 LCL: Add horizontal mouse wheel support for TUpDown control. Issue #32753, patch from AlexeyT.
git-svn-id: trunk@56694 -
2017-12-11 19:44:39 +00:00
juha
d171170bb6 LCL: Extend horizontal mouse wheel messages for Grid and TreeView. Issue #32753, patch from AlexeyT.
git-svn-id: trunk@56654 -
2017-12-06 11:25:07 +00:00
mattias
c9af6fa9ba lcl: TTreeView: cleaned up TNodeState, removed not used nsInTree, added nsVisible
git-svn-id: trunk@56482 -
2017-11-24 16:50:16 +00:00
juha
de2332956c LCL: Scroll TreeView on drag-n-drop. Issue #19006, patch from AlexeyT.
git-svn-id: trunk@56426 -
2017-11-17 12:07:53 +00:00