Michaël Van Canneyt
961f8b2aa8
* Before/After bind support for THTMLElementActionList
2023-07-18 09:15:57 +02:00
Michaël Van Canneyt
5261aa9075
* Support for retrieving resource parameters
2023-07-18 09:15:57 +02:00
Juha
ed7945efe2
IDE: Load and save AutoSaveActiveDesktop value. It was left out in EnvironmentOptions refactoring.
2023-07-18 01:45:09 +03:00
Juha
d14ccface0
DockedFormEditor: Join Msg LM_TIMER into a case construct in TDesignForm.WndMethod.
2023-07-17 22:56:51 +03:00
Juha
a236313f5f
DockedFormEditor: Fix a missing Result value of TDesignForms.Add().
2023-07-17 22:56:51 +03:00
Martin
8533349aba
Codetools: IdentifierCompletion, fix freeing correct item if History.Capacity is reached. Issue #40354
2023-07-17 21:33:12 +02:00
Martin
9146a986b4
Codetools: Identifier completion, improve/fix limit for recent history items shown. issue #40332
...
- take into account that some items in history may not be in the current unfiltered items, and that "HistoryIndex" may have gaps
2023-07-17 21:33:12 +02:00
Martin
e7c438c50b
Codetools: Identifier completion, add limit for recent history items shown. issue #40332 Patch by WooBean007
2023-07-17 21:33:12 +02:00
Martin
c32f97c6c8
Codetools: Identifier completion, don't use CompareIdentifiers for ParamList. ParamList contains symbols ";()". Found in issue #40332
2023-07-17 21:33:11 +02:00
Juha
ebad154bc6
DockedFormEditor: Prevent an eternal loop when an invalid LFM file causes a read error. Issue #39288 .
2023-07-17 22:16:41 +03:00
mattias
636cae9653
codetools: fixed tests on windows
2023-07-17 17:35:33 +02:00
Maxim Ganetsky
005710726a
IDE: regenerated translations
2023-07-17 02:22:04 +03:00
wp_xyz
518d35ba69
Images: Reworked dataset images, uniform style. By Roland Hahn.
2023-07-16 17:07:27 +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
27f6e20118
IDE: Improve removing unknown component properties. Issue #40377 .
2023-07-16 15:48:01 +03:00
Juha
d9608a3489
IDE: Improve removing unknown component properties. Issue #40377 .
2023-07-16 15:21:51 +03: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
Juha
0c056fc0d2
IDE: Remove unknown component properties using the same GUI already used in other situations. Issue #40377 .
2023-07-15 21:17:02 +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
Martin
bb33afb81a
SynEdit: fixed crash introduced by bee839cc18
"Ide, SynEdit: Pas-HL, add ability to parse anonymous procs"
...
Decisions on "fold-block-type" (or open/close) can not be based on "ScanAhead".
If one of the "ahead scanned" lines changes, the fold structure (type/depth) for the above node will be wrong.
E.g., TLazSynEditNestedFoldsList will trigger a temp-scan and get non-matching results. This means "node info" may not be found (due to incorrect fold-level), and code can crash. (observed with MarkupFoldColoring, triggers "assert" in TLazSynEditNestedFoldsList)
2023-07-15 14:08:58 +02:00
Juha
dca4378fae
LCL-QT4: Clean and optimize function TQtWidgetSet.EnumDisplayMonitors(). By lagprogramming.
2023-07-15 13:08:51 +03:00
mattias
86c8874b0c
codetools: fixed search atttibute
2023-07-15 11:45:48 +02:00
mattias
c472699a81
codetools: fixed pas2js tests
2023-07-15 11:22:19 +02:00
mattias
9d18e66aa8
codetools: fixed two tests
2023-07-15 11:04:18 +02:00
Maxim Ganetsky
992a3c2ff5
AnchorDocking: improved autosizing flat header buttons and some refactoring, merge request !221
2023-07-15 02:20:25 +03:00
zamtmn
2fa20e3333
Small refactoring
2023-07-15 01:58:14 +03:00
zamtmn
0c9b09585d
Return HardcodedButtonSize, ButtonBorderSpacingAround to interface section
2023-07-15 01:58:14 +03:00
zamtmn
6d464562d7
Improve vertical header width, refactoring
2023-07-15 01:58:13 +03:00
mattias
bb83fdd273
simplewebservergui: fixed run on older windows, loading GetTcpTable2 via GetProcAddress
2023-07-14 22:52:38 +02:00
mattias
79893d2cbe
updated makefiles
2023-07-14 16:42:45 +02:00
rich2014
185e72ea31
Cocoa: better handling of TCocoaWindow.makeFirstResponder() reentrancy
2023-07-14 21:05:41 +08:00
dsiders
957d62af56
Docs: LCL/stdctrls. Restores documentation after reverting commit 9f577dc5
.
2023-07-14 13:35:53 +01:00
Maxim Ganetsky
255bdd2bb0
Revert "LCL: Add an option to NOT call TCheckbox OnChange handler when clicked. Issue #39870 , patch by Arioch The."
...
This reverts commit 9f577dc548
.
Reasons:
1. The logic of VCL_OnClick_Emulation flag (or its name) is wrong: when it is true, OnChange event gets called LCL-style (note that VCL does not have OnChange event).
2. Having such flag is unsafe: e.g. some used unit can disable it and checkboxes in the whole program will _silently_ change their behavior.
3. The code claimed as a reason for introducing this change does not work in Delphi too.
Such Delphi compatibility issues should be handled another way.
2023-07-14 03:00:19 +03:00
Maxim Ganetsky
ce43b4d6a5
IDE: regenerated translations and updated Russian translation
2023-07-14 02:45:17 +03:00
Maxim Ganetsky
0429abf3de
IDE, Editor options: fixed copy-paste error and a typo in XML name for newly added Anonymous procedure
2023-07-14 02:43:43 +03:00
Martin
d80518932f
IDE, Debugger: Add "Enabled" to breakpoint properties dialog
2023-07-13 18:50:32 +02:00
Martin
188aae51fa
IDE: Add Key/Mouse-Command to Show Breakpoint-properties on current line. (create/modify)
2023-07-13 18:50:32 +02:00
Martin
320cae4037
IDE: Fix advanced mouse opts for breakpoint toggling / enabling
2023-07-13 18:50:31 +02:00
Martin
bee839cc18
Ide, SynEdit: Pas-HL, add ability to parse anonymous procs
2023-07-13 18:50:31 +02:00
Juha
479ff9635e
Codetools: Support more modifiers in class method. Issue #40368 , patch by Peacoor.
2023-07-13 15:53:57 +03:00
Juha
be92e362e8
LCL-QT[56]: Clean and optimise function TQtWidgetSet.EnumDisplayMonitors(). By lagprogramming.
2023-07-13 12:06:03 +03:00
wp_xyz
fde9c86ca8
TAChart: Minor axis can get marks from a chartsource now
2023-07-13 00:28:58 +02:00
mattias
f306bcae87
IDE: fixed --no-splash-screen, #40375
2023-07-12 22:37:29 +02:00
dsiders
b824561f12
Docs: LCOL/controls. Update TControl.Notification topic for changes in c6200e29
.
2023-07-12 15:01:31 +01:00
Bart
02765cb9db
LCLTaskDialog: use descriptive const instead of magic numbers.
2023-07-12 15:37:31 +02:00
Bart
a802987646
TTaskDialog: remove ctypes unit from LCLTaskDialog (on Windows): it isn't used.
2023-07-12 15:18:37 +02:00
Bart
e5aa4cee57
diff --git a/lcl/dialogs.pp b/lcl/dialogs.pp
...
index 24f69c5ac7..b156a70d9c 100644
--- a/lcl/dialogs.pp
+++ b/lcl/dialogs.pp
@@ -543,6 +543,7 @@ type
tfShowMarqueeProgressBar, tfCallbackTimer,
tfPositionRelativeToWindow, tfRtlLayout,
tfNoDefaultRadioButton, tfCanBeMinimized,
+ tfNoSetForeGround, tfSizeToContent,
tfForceNonNative, tfEmulateClassicStyle);
TTaskDialogFlags = set of TTaskDialogFlag;
diff --git a/lcl/include/taskdialog.inc b/lcl/include/taskdialog.inc
index 2ce5a97571..ddf2f46aaa 100644
--- a/lcl/include/taskdialog.inc
+++ b/lcl/include/taskdialog.inc
@@ -179,6 +179,10 @@ function TCustomTaskDialog.DoExecute(ParentWnd: HWND): Boolean;
Result := Result + [tdfNoDefaultRadioButton];
if tfCanBeMinimized in aTaskFlags then
Result := Result + [tdfCanBeMinimized];
+ if tfNoSetForeGround in aTaskFlags then
+ Result := Result + [tdfNoSetForeGround];
+ if tfSizeToContent in aTaskFlags then
+ Result := Result + [tdfSizeToContent];
end;
function TF_DIALOGICON(const aIcon: TTaskDialogIcon): LCLTaskDialog.TTaskDialogIcon;
diff --git a/lcl/lcltaskdialog.pas b/lcl/lcltaskdialog.pas
index 660702261f..2c3caccd43 100644
--- a/lcl/lcltaskdialog.pas
+++ b/lcl/lcltaskdialog.pas
@@ -127,7 +127,7 @@ interface
uses
{$IFDEF MSWINDOWS}
- Windows, ctypes,
+ Windows, ctypes, CommCtrl,
{$ENDIF}
Classes, SysUtils,
LazUTF8,
@@ -172,7 +172,9 @@ type
tdfExpandFooterArea, tdfExpandByDefault, tdfVerificationFlagChecked,
tdfShowProgressBar, tdfShowMarqueeProgressBar, tdfCallbackTimer,
tdfPositionRelativeToWindow, tdfRtlLayout, tdfNoDefaultRadioButton,
- tdfCanBeMinimized, tdfQuery, tdfQueryMasked, tdfQueryFieldFocused);
+ tdfCanBeMinimized, tdfNoSetForeGround {added in Windows 8}, tdfSizeToContent,
+ //custom LCL flags
+ tdfQuery, tdfQueryMasked, tdfQueryFieldFocused);
/// set of available configuration flags for the Task Dialog
TTaskDialogFlags = set of TTaskDialogFlag;
@@ -771,6 +773,29 @@ var
if ModalResult=aButtonDef then
Dialog.Form.ActiveControl := result;
end;
+ {$IFDEF MSWINDOwS}
+ function TaskDialogFlagsToInteger(aFlags: TTaskDialogFlags): Integer;
+ const
+ //missing from CommCtrls in fpc < 3.3.1
+ TDF_NO_SET_FOREGROUND = $10000;
+ TDF_SIZE_TO_CONTENT = $1000000;
+ FlagValues: Array[TTaskDialogFlag] of Integer = (
+ TDF_ENABLE_HYPERLINKS, TDF_USE_HICON_MAIN, TDF_USE_HICON_FOOTER,
+ TDF_ALLOW_DIALOG_CANCELLATION, TDF_USE_COMMAND_LINKS, TDF_USE_COMMAND_LINKS_NO_ICON,
+ TDF_EXPAND_FOOTER_AREA, TDF_EXPANDED_BY_DEFAULT, TDF_VERIFICATION_FLAG_CHECKED,
+ TDF_SHOW_PROGRESS_BAR, TDF_SHOW_MARQUEE_PROGRESS_BAR, TDF_CALLBACK_TIMER,
+ TDF_POSITION_RELATIVE_TO_WINDOW, TDF_RTL_LAYOUT, TDF_NO_DEFAULT_RADIO_BUTTON,
+ TDF_CAN_BE_MINIMIZED, TDF_NO_SET_FOREGROUND {added in Windows 8}, TDF_SIZE_TO_CONTENT,
+ //custom LCL flags
+ 0 {tdfQuery}, 0 {tdfQueryMasked}, 0 {tdfQueryFieldFocused});
+ var
+ aFlag: TTaskDialogFlag;
+ begin
+ Result := 0;
+ for aFlag := Low(TTaskDialogFlags) to High(TTaskDialogFlags) do
+ if (aFlag in aFlags) then Result := Result or FlagValues[aFlag];
+ end;
+ {$ENDIF MSWINWOS}
var
ARadioOffset: integer;
@@ -821,7 +846,7 @@ begin
include(aFlags,tdfVerificationFlagChecked);
if (Config.cButtons=0) and (aCommonButtons=[cbOk]) then
Include(aFlags,tdfAllowDialogCancellation); // just OK -> Esc/Alt+F4 close
- Config.dwFlags := integer(aFlags);
+ Config.dwFlags := TaskDialogFlagsToInteger(aFlags);
Config.hMainIcon := TD_ICONS[aDialogIcon];
Config.hFooterIcon := TD_FOOTERICONS[aFooterIcon];
Config.nDefaultButton := aButtonDef;
2023-07-12 15:15:34 +02:00
mattias
c6200e29c8
lcl: TWinControl class completed
2023-07-12 11:35:47 +02:00
mattias
2dc7c77293
lcl: clean hostdocksite
2023-07-12 11:35:47 +02:00
wp_xyz
e77066d3af
TAChart: Use new icons in charteditor demo.
2023-07-12 10:48:19 +02:00