mirror of
https://gitlab.com/freepascal.org/lazarus/lazarus.git
synced 2025-06-22 02:08:23 +02:00
QT5: implement TColorDialog.AlphaChannel and associated TColorDialogOption cdShowAlphaChannel.
This commit is contained in:
parent
b511c5cafa
commit
8fd7e96fa5
@ -901,7 +901,7 @@ var
|
|||||||
|
|
||||||
begin
|
begin
|
||||||
AColor := ColorToRgb(ColorDialog.Color);
|
AColor := ColorToRgb(ColorDialog.Color);
|
||||||
AQColor.Alpha := $FFFF;
|
AQColor.Alpha := Word(ColorDialog.AlphaChannel) * $0101;
|
||||||
AQColor.ColorSpec := 1;
|
AQColor.ColorSpec := 1;
|
||||||
AQColor.Pad := 0;
|
AQColor.Pad := 0;
|
||||||
ColorRefToTQColor(AColor, AQColor);
|
ColorRefToTQColor(AColor, AQColor);
|
||||||
@ -915,6 +915,8 @@ begin
|
|||||||
ATitle := UTF8ToUTF16(ACommonDialog.Title);
|
ATitle := UTF8ToUTF16(ACommonDialog.Title);
|
||||||
AQColorRet := Default(TQColor);
|
AQColorRet := Default(TQColor);
|
||||||
AOptions := 0; // here we add possible options from ColorDialog.Options, see QColorDialogColorDialogOptions for possible options.
|
AOptions := 0; // here we add possible options from ColorDialog.Options, see QColorDialogColorDialogOptions for possible options.
|
||||||
|
if (cdShowAlphaChannel in ColorDialog.Options) then
|
||||||
|
AOptions := AOptions or QColorDialogShowAlphaChannel;
|
||||||
QColorDialog_getColor(PQColor(@AQColorRet), PQColor(@AQColor), TQtWSCommonDialog.GetDialogParent(ACommonDialog), @ATitle, AOptions);
|
QColorDialog_getColor(PQColor(@AQColorRet), PQColor(@AQColor), TQtWSCommonDialog.GetDialogParent(ACommonDialog), @ATitle, AOptions);
|
||||||
|
|
||||||
ReturnBool := AQColorRet.ColorSpec <> 0;
|
ReturnBool := AQColorRet.ColorSpec <> 0;
|
||||||
@ -923,6 +925,7 @@ begin
|
|||||||
begin
|
begin
|
||||||
TQColorToColorRef(AQColorRet, AColor);
|
TQColorToColorRef(AQColorRet, AColor);
|
||||||
ColorDialog.Color := AColor;
|
ColorDialog.Color := AColor;
|
||||||
|
ColorDialog.AlphaChannel := AQColorRet.Alpha and $FF;
|
||||||
ColorDialog.UserChoice := mrOk
|
ColorDialog.UserChoice := mrOk
|
||||||
end else
|
end else
|
||||||
ColorDialog.UserChoice := mrCancel;
|
ColorDialog.UserChoice := mrCancel;
|
||||||
|
Loading…
Reference in New Issue
Block a user