Commit Graph

12642 Commits

Author SHA1 Message Date
Bart
e1d2db658f Refactoring TTaskDialog: remove hack of exposing TCustomTaskDialog.FWidth. It was unneccessary to begin with... 2023-07-24 11:12:55 +02:00
Bart
b7cc27d3a5 Refactoring TTaskDialog:
- TWSTaskDialog.Execute: Don't cast ADlg to TTaskDialog.
- Adapt signature of function ExecuteLCLTaskDialog accordingly.
- Less debug output
2023-07-24 11:06:22 +02:00
Bart
cc10035843 Refactoring TTaskDialog:
- Win32 WS: fix not returning ButtonID.
- Win32 WS: initialize RadioRes return value.
2023-07-24 10:52:11 +02:00
Bart
b9634c255d Refactoring TTaskDialog: switch over to the new code, remove dependency on deprecated unit LCLTaskDialog. 2023-07-24 10:31:34 +02:00
Bart
ca1e231417 Refactoring TTaskDialog:
- move procedure PrepareTaskDialogConfig to Execute, since it refrences variables on the stack
- move function DialogBaseUnits
- in callbackfunction only test if dwRefData is correct if a button is clicked, and only if assertions are enabled
- rename some nested procedures and variables
- less debug output
- TWin32WSTaskDialog.Execute now properly returns the result of TaskDialogIndirect
- use CommCtrl.TaskDialogIndirect, change the mechanisme of detecting wether this is supported.
2023-07-24 10:20:00 +02:00
Bart
92f83f8b59 Refactoring TTaskDialog:
- first attempt to get Win32 WS code working (currently littered with writeln() statements, so crashes if no console!)
- fix ModalResult in OnButtonClicked for emulated dialog.
2023-07-24 01:08:33 +02:00
Bart
4440804744 Refactoring TTaskDialog: start working on Win32 widgetset implementation. Far from functional yet. 2023-07-22 17:21:01 +02:00
Bart
9a3e5c120d Refactoring TTaskDialog:
- Change signature of TWSTaskDialog.Execute and related functions/methods so we can set ParentWnd and retrieve RadioRes.
The TLCLTaskDialog now should act the same as the old emulated version (unit LCLTaskDialog).
2023-07-20 20:09:38 +02:00
Bart
c3c73c48fc Refactoring TTaskDialog:
- TWSTaskDialog.Execute: return integer (modal result of the dialog) instead of boolean
- Idem for related functions and methods
2023-07-20 10:55:48 +02:00
Bart
e1dd886c07 Refactoring TTaskDialog: initialize TaskDialogIndirect in Win32 widgetset.
Still not functional.
2023-07-19 19:54:19 +02:00
Bart
fc6bbcc936 TCustomTaskDialog: inherit form TLCLComponent and register the widgetset class. 2023-07-17 13:52:40 +02:00
Bart
57e13c67d3 TWSTaskDialog: change signature of Execute method. Reason: TTaskDialog is not related to TCommonDialog.
Eventually we need to cast the parameter to TCustomTaskDialog in the Win32 implementation.
Because of the (Delhi compatible) signature of TTaskDialog.DoExcute, it seems that TCustomTaskDialog cannot
inherit from TCommonDialog, since this method (TCustomTaskDialog.DoExecute) must be dynamic, so it cannot
also be "override" as well.
2023-07-17 12:43:04 +02:00
Bart
cfbb089e1f TaskDialog: Start refactoring TTaskDialog: layout the basic infrastructure for a TWSTaskDialog class. 2023-07-17 11:05:33 +02:00
rich2014
b184a37dbe Cocoa: fix the issue that Modal Form may disappear when switching back from other apps
the issue fixed:
1. run your app, open Modal Form
2. switch to other apps
3. in the dock, right click your app ico and select "Show All Window", and select a window
4. the Modal Form is disappear (actually ordered behind the selected Form)
2023-07-16 23:00:29 +08:00
Juha
e4494cf4cd LCL-GTK2: Allow right-to-left selection of long text in TEdit with mouse. Issue #40379, patch by wavebvg. 2023-07-16 00:04:14 +03:00
rich2014
ebd0bf4135 Cocoa: Async call InputClientInsertText() for non-editable LCL CustomControl
in TCocoaCustomControl, such as Form, Grid, ListView, after inputting text, another control may be focused.
in insertText_replacementRange(), Cocoa/InputContext doesn't like it, so calling InputClientInsertText() asynchronously.
2023-07-16 00:02:06 +08:00
Juha
dca4378fae LCL-QT4: Clean and optimize function TQtWidgetSet.EnumDisplayMonitors(). By lagprogramming. 2023-07-15 13:08:51 +03:00
rich2014
185e72ea31 Cocoa: better handling of TCocoaWindow.makeFirstResponder() reentrancy 2023-07-14 21:05:41 +08:00
Juha
be92e362e8 LCL-QT[56]: Clean and optimise function TQtWidgetSet.EnumDisplayMonitors(). By lagprogramming. 2023-07-13 12:06:03 +03:00
Maxim Ganetsky
0f522e8d81 Removed unit UITypes from LazUtils. Use System.UITypes instead. Try 2. 2023-07-12 01:41:51 +03:00
mattias
c423a794b5 lazutils: added TPointArray to graphtype, added EllipsePolygon to GraphMath 2023-07-10 23:19:21 +02:00
mattias
626a74fd13 lcl: TGtk2WidgetSet.CreateEllipticRgn: fixed vertical radius 2023-07-10 16:11:32 +02:00
mattias
79cff8a8f3 lcl: TGtk2WidgetSet.CreateEllipticRgn: using symmetrical coords with less edges for a smoother ellipsis 2023-07-10 15:42:13 +02:00
Martin
4adebcb03e gtk3 issues.xml: fix copy paste MinDate vs MaxDate 2023-07-09 09:17:33 +02:00
dsiders
6717565e9b GTK3: Fixes missing end tags in gtk3/issues.xml. https://forum.lazarus.freepascal.org/index.php/topic,63867.msg484990.html#msg484990 2023-07-09 03:38:17 +01:00
Juha
5a19e7b529 Revert "Remove unit UITypes from LazUtils. Use System.UITypes."
This reverts commit f55ce5c939.
2023-07-08 16:16:56 +03:00
wp_xyz
da8a33d43f CustomDrawn: Add missing result value of function TCDWidgetSet.DrawFocusRect. Patch by lagprogramming. 2023-07-08 13:18:14 +02:00
Juha
f55ce5c939 Remove unit UITypes from LazUtils. Use System.UITypes. 2023-07-08 14:07:52 +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
adfc424e92 Lazarus trunk requires at least FPC 3.2.0. Remove checks for earlier FPC_FULLVERSION. 2023-07-07 17:39:03 +03:00
Juha
41adb276bb Remove obsolete checks for FPC versions earlier then 3.0. 2023-07-07 17:39:02 +03:00
rich2014
b103a5bd03 Cocoa: IME: clean up 2023-07-07 19:39:12 +08:00
rich2014
dfb24c2d12 Cocoa: IME: TCocoaInputClient removed 2023-07-07 19:09:36 +08:00
rich2014
533a9f90d4 Cocoa: IME: improve and fix details in TCocoaCustomControl 2023-07-07 19:09:36 +08:00
rich2014
b4be9f3898 Cocoa: IME: TLCLCommonCallback refactor 2023-07-07 19:09:36 +08:00
rich2014
f605a02231 Cocoa: IME: TCocoaCustomControl refactor 2023-07-07 19:09:35 +08:00
rich2014
2cff36a203 Cocoa: IME: TCocoaCustomControl.markedRange() and selectedRange() added 2023-07-07 19:09:35 +08:00
rich2014
019b57e4ce Cocoa: IME: in IME state, skip UTF8KeyPress() and KeyPress(), consistent with Win32 2023-07-07 19:09:35 +08:00
rich2014
7031b6b752 Cocoa: IME: implements a base NSTextInputClient for non-editable LCL CustomControl
implements a base NSTextInputClient for non-editable LCL CustomControl,
like Form, Grid, ListView, that are not system control and not FullEditControl.
1. when using IME in these controls, a temporary and one-time editor is shown at the bottom of the control, supporting IME such as Chinese.
2. refers to MacOS Finder, when using IME in the file list view, a small window will pop up at the bottom of the screen for input. the text can then be used for filename starting character match.
3. it is useful for implementing IME support for controls that do not have a text input window.
2023-07-07 19:09:35 +08:00
rich2014
873c352755 Cocoa: IME: inputclient and inputctx in TCocoaApplication removed 2023-07-07 19:09:35 +08:00
zeljan1
81002eb2ed CustomDrawn: cleanup, patch by lagprogramming 2023-07-06 11:21:13 +02:00
zeljan1
95dc42a5db Qt5: cleanup 2023-07-05 11:16:49 +02:00
Bart
a448e61987 TTrackBar.ScalePos: not supported on Win32, Cocoa, QT, QT4, QT6. 2023-07-04 22:18:26 +02:00
Juha
dd161fc03b LazUtils, LCL: Initialize UnicodeTables in LazUTF16 only when needed. Deprecate copied UTF16 functions in LCLProc. 2023-07-03 15:29:56 +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
Juha
c3891ad820 Reduce compiler warnings. 2023-07-03 06:23:49 +03:00
rich2014
feae93368d Cocoa: TSpeedButton: set the highlighted background color when pressed, consistent with win32
before, TSpeedButton had a white highlighted background color when it was normal, and a gray background when it was pressed, causing confusion to users.
2023-07-02 21:26:51 +08:00
rich2014
eb65e0684e Cocoa: TCocoaContext.Frame3d() removed by a901a8e 2023-07-02 16:57:35 +08:00
Juha
69d50106c9 LCL-GTK3: Fix wrong types found by -Sy compiler option. Some were wrong, some needed a typecast. 2023-07-02 10:03:22 +03:00
Bart
e95cadd095 Win32: fix MDIChild form not updating Top/Left. Issue #40232. 2023-07-01 14:06:07 +02:00