mirror of
https://gitlab.com/freepascal.org/lazarus/lazarus.git
synced 2025-08-16 04:39:22 +02:00
Very large patch from Jesus Reyes. Among other things it updates qt bindings to 1.24, fixes the font color problem, implements SetBkColor, SetBkMode and makes TStringGrid almost work.
git-svn-id: trunk@10496 -
This commit is contained in:
parent
1f429be860
commit
637112c8b5
@ -43,6 +43,6 @@ initialization
|
|||||||
|
|
||||||
finalization
|
finalization
|
||||||
|
|
||||||
WidgetSet.Free;
|
FreeWidgetset;
|
||||||
|
|
||||||
end.
|
end.
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
unit qt4;
|
unit qt4;
|
||||||
|
|
||||||
{ Version : 1.21 }
|
{ Version : 1.24 }
|
||||||
|
|
||||||
{$ifdef fpc}
|
{$ifdef fpc}
|
||||||
{$mode delphi}
|
{$mode delphi}
|
||||||
@ -26,6 +26,13 @@ const
|
|||||||
|
|
||||||
|
|
||||||
type
|
type
|
||||||
|
|
||||||
|
{$ifndef fpc}
|
||||||
|
PPtrInt = ^PtrInt;
|
||||||
|
PtrInt = longint; // 32bit dcc
|
||||||
|
qword = type int64;
|
||||||
|
{$endif}
|
||||||
|
|
||||||
QHookH = TMethod;
|
QHookH = TMethod;
|
||||||
PSizePolicy = ^TSizePolicy;
|
PSizePolicy = ^TSizePolicy;
|
||||||
TSizePolicy = packed record
|
TSizePolicy = packed record
|
||||||
@ -44,7 +51,8 @@ type
|
|||||||
qreal = double;
|
qreal = double;
|
||||||
qrgb = longword;
|
qrgb = longword;
|
||||||
|
|
||||||
TCoreApplicationEventFilter = procedure(Msg:PChar;Res:PLongInt) cdecl;
|
TCoreApplicationEventFilter = function(Msg:PChar;Res:PLongInt):boolean cdecl;
|
||||||
|
TAbstractEventFilter = function(Msg:PChar):boolean cdecl;
|
||||||
|
|
||||||
|
|
||||||
PIntArray = ^TIntArray;
|
PIntArray = ^TIntArray;
|
||||||
@ -166,6 +174,7 @@ QMatrixH = class(TObject) end;
|
|||||||
QMimeSourceH = class(TObject) end;
|
QMimeSourceH = class(TObject) end;
|
||||||
QModelIndexH = class(TObject) end;
|
QModelIndexH = class(TObject) end;
|
||||||
QObjectH = class(TObject) end;
|
QObjectH = class(TObject) end;
|
||||||
|
QAbstractEventDispatcherH = class(QObjectH) end;
|
||||||
QAbstractItemDelegateH = class(QObjectH) end;
|
QAbstractItemDelegateH = class(QObjectH) end;
|
||||||
QAbstractItemModelH = class(QObjectH) end;
|
QAbstractItemModelH = class(QObjectH) end;
|
||||||
QAbstractTextDocumentLayoutH = class(QObjectH) end;
|
QAbstractTextDocumentLayoutH = class(QObjectH) end;
|
||||||
@ -182,6 +191,7 @@ QObjectH = class(TObject) end;
|
|||||||
QMimeDataH = class(QObjectH) end;
|
QMimeDataH = class(QObjectH) end;
|
||||||
QMovieH = class(QObjectH) end;
|
QMovieH = class(QObjectH) end;
|
||||||
QSessionManagerH = class(QObjectH) end;
|
QSessionManagerH = class(QObjectH) end;
|
||||||
|
QSocketNotifierH = class(QObjectH) end;
|
||||||
QStyleH = class(QObjectH) end;
|
QStyleH = class(QObjectH) end;
|
||||||
QTextDocumentH = class(QObjectH) end;
|
QTextDocumentH = class(QObjectH) end;
|
||||||
QTextObjectH = class(QObjectH) end;
|
QTextObjectH = class(QObjectH) end;
|
||||||
@ -1144,7 +1154,7 @@ procedure QObject_removeEventFilter(handle: QObjectH; p1: QObjectH); cdecl; exte
|
|||||||
function QObject_connect(sender: QObjectH; signal: PAnsiChar; receiver: QObjectH; member: PAnsiChar; p5: QtConnectionType = QtAutoConnection): Boolean; overload; cdecl; external QtIntf name 'QObject_connect';
|
function QObject_connect(sender: QObjectH; signal: PAnsiChar; receiver: QObjectH; member: PAnsiChar; p5: QtConnectionType = QtAutoConnection): Boolean; overload; cdecl; external QtIntf name 'QObject_connect';
|
||||||
function QObject_connect(handle: QObjectH; sender: QObjectH; signal: PAnsiChar; member: PAnsiChar; _type: QtConnectionType = QtAutoConnection): Boolean; overload; cdecl; external QtIntf name 'QObject_connect2';
|
function QObject_connect(handle: QObjectH; sender: QObjectH; signal: PAnsiChar; member: PAnsiChar; _type: QtConnectionType = QtAutoConnection): Boolean; overload; cdecl; external QtIntf name 'QObject_connect2';
|
||||||
function QObject_disconnect(sender: QObjectH; signal: PAnsiChar; receiver: QObjectH; member: PAnsiChar): Boolean; overload; cdecl; external QtIntf name 'QObject_disconnect';
|
function QObject_disconnect(sender: QObjectH; signal: PAnsiChar; receiver: QObjectH; member: PAnsiChar): Boolean; overload; cdecl; external QtIntf name 'QObject_disconnect';
|
||||||
function QObject_disconnect(handle: QObjectH; receiver: QObjectH; member: PAnsiChar = 0): Boolean; overload; cdecl; external QtIntf name 'QObject_disconnect3';
|
function QObject_disconnect(handle: QObjectH; receiver: QObjectH; member: PAnsiChar = nil): Boolean; overload; cdecl; external QtIntf name 'QObject_disconnect3';
|
||||||
procedure QObject_dumpObjectTree(handle: QObjectH); cdecl; external QtIntf name 'QObject_dumpObjectTree';
|
procedure QObject_dumpObjectTree(handle: QObjectH); cdecl; external QtIntf name 'QObject_dumpObjectTree';
|
||||||
procedure QObject_dumpObjectInfo(handle: QObjectH); cdecl; external QtIntf name 'QObject_dumpObjectInfo';
|
procedure QObject_dumpObjectInfo(handle: QObjectH); cdecl; external QtIntf name 'QObject_dumpObjectInfo';
|
||||||
function QObject_setProperty(handle: QObjectH; name: PAnsiChar; value: QVariantH): Boolean; cdecl; external QtIntf name 'QObject_setProperty';
|
function QObject_setProperty(handle: QObjectH; name: PAnsiChar; value: QVariantH): Boolean; cdecl; external QtIntf name 'QObject_setProperty';
|
||||||
@ -1346,7 +1356,7 @@ procedure QCoreApplication_addLibraryPath(p1: PWideString); cdecl; external QtIn
|
|||||||
procedure QCoreApplication_removeLibraryPath(p1: PWideString); cdecl; external QtIntf name 'QCoreApplication_removeLibraryPath';
|
procedure QCoreApplication_removeLibraryPath(p1: PWideString); cdecl; external QtIntf name 'QCoreApplication_removeLibraryPath';
|
||||||
procedure QCoreApplication_installTranslator(messageFile: QTranslatorH); cdecl; external QtIntf name 'QCoreApplication_installTranslator';
|
procedure QCoreApplication_installTranslator(messageFile: QTranslatorH); cdecl; external QtIntf name 'QCoreApplication_installTranslator';
|
||||||
procedure QCoreApplication_removeTranslator(messageFile: QTranslatorH); cdecl; external QtIntf name 'QCoreApplication_removeTranslator';
|
procedure QCoreApplication_removeTranslator(messageFile: QTranslatorH); cdecl; external QtIntf name 'QCoreApplication_removeTranslator';
|
||||||
procedure QCoreApplication_translate(retval: PWideString; context: PAnsiChar; key: PAnsiChar; comment: PAnsiChar = 0; encoding: QCoreApplicationEncoding = QCoreApplicationDefaultCodec); cdecl; external QtIntf name 'QCoreApplication_translate';
|
procedure QCoreApplication_translate(retval: PWideString; context: PAnsiChar; key: PAnsiChar; comment: PAnsiChar = nil; encoding: QCoreApplicationEncoding = QCoreApplicationDefaultCodec); cdecl; external QtIntf name 'QCoreApplication_translate';
|
||||||
procedure QCoreApplication_flush(); cdecl; external QtIntf name 'QCoreApplication_flush';
|
procedure QCoreApplication_flush(); cdecl; external QtIntf name 'QCoreApplication_flush';
|
||||||
{$ifdef DARWIN or LINUX }
|
{$ifdef DARWIN or LINUX }
|
||||||
procedure QCoreApplication_watchUnixSignal(signal: Integer; watch: Boolean); cdecl; external QtIntf name 'QCoreApplication_watchUnixSignal';
|
procedure QCoreApplication_watchUnixSignal(signal: Integer; watch: Boolean); cdecl; external QtIntf name 'QCoreApplication_watchUnixSignal';
|
||||||
@ -1366,7 +1376,7 @@ type
|
|||||||
|
|
||||||
function QTranslator_create(parent: QObjectH = nil): QTranslatorH; cdecl; external QtIntf name 'QTranslator_create';
|
function QTranslator_create(parent: QObjectH = nil): QTranslatorH; cdecl; external QtIntf name 'QTranslator_create';
|
||||||
procedure QTranslator_destroy(handle: QTranslatorH); cdecl; external QtIntf name 'QTranslator_destroy';
|
procedure QTranslator_destroy(handle: QTranslatorH); cdecl; external QtIntf name 'QTranslator_destroy';
|
||||||
procedure QTranslator_translate(handle: QTranslatorH; retval: PWideString; context: PAnsiChar; sourceText: PAnsiChar; comment: PAnsiChar = 0); cdecl; external QtIntf name 'QTranslator_translate';
|
procedure QTranslator_translate(handle: QTranslatorH; retval: PWideString; context: PAnsiChar; sourceText: PAnsiChar; comment: PAnsiChar = nil); cdecl; external QtIntf name 'QTranslator_translate';
|
||||||
function QTranslator_isEmpty(handle: QTranslatorH): Boolean; cdecl; external QtIntf name 'QTranslator_isEmpty';
|
function QTranslator_isEmpty(handle: QTranslatorH): Boolean; cdecl; external QtIntf name 'QTranslator_isEmpty';
|
||||||
function QTranslator_load(handle: QTranslatorH; filename: PWideString; directory: PWideString = nil; search_delimiters: PWideString = nil; suffix: PWideString = nil): Boolean; overload; cdecl; external QtIntf name 'QTranslator_load';
|
function QTranslator_load(handle: QTranslatorH; filename: PWideString; directory: PWideString = nil; search_delimiters: PWideString = nil; suffix: PWideString = nil): Boolean; overload; cdecl; external QtIntf name 'QTranslator_load';
|
||||||
function QTranslator_load(handle: QTranslatorH; data: PByte; len: Integer): Boolean; overload; cdecl; external QtIntf name 'QTranslator_load2';
|
function QTranslator_load(handle: QTranslatorH; data: PByte; len: Integer): Boolean; overload; cdecl; external QtIntf name 'QTranslator_load2';
|
||||||
@ -1482,12 +1492,12 @@ function QVariant_isNull(handle: QVariantH): Boolean; cdecl; external QtIntf nam
|
|||||||
procedure QVariant_clear(handle: QVariantH); cdecl; external QtIntf name 'QVariant_clear';
|
procedure QVariant_clear(handle: QVariantH); cdecl; external QtIntf name 'QVariant_clear';
|
||||||
procedure QVariant_detach(handle: QVariantH); cdecl; external QtIntf name 'QVariant_detach';
|
procedure QVariant_detach(handle: QVariantH); cdecl; external QtIntf name 'QVariant_detach';
|
||||||
function QVariant_isDetached(handle: QVariantH): Boolean; cdecl; external QtIntf name 'QVariant_isDetached';
|
function QVariant_isDetached(handle: QVariantH): Boolean; cdecl; external QtIntf name 'QVariant_isDetached';
|
||||||
function QVariant_toInt(handle: QVariantH; ok: PBoolean = 0): Integer; cdecl; external QtIntf name 'QVariant_toInt';
|
function QVariant_toInt(handle: QVariantH; ok: PBoolean = nil): Integer; cdecl; external QtIntf name 'QVariant_toInt';
|
||||||
function QVariant_toUInt(handle: QVariantH; ok: PBoolean = 0): Cardinal; cdecl; external QtIntf name 'QVariant_toUInt';
|
function QVariant_toUInt(handle: QVariantH; ok: PBoolean = nil): Cardinal; cdecl; external QtIntf name 'QVariant_toUInt';
|
||||||
function QVariant_toLongLong(handle: QVariantH; ok: PBoolean = 0): int64; cdecl; external QtIntf name 'QVariant_toLongLong';
|
function QVariant_toLongLong(handle: QVariantH; ok: PBoolean = nil): int64; cdecl; external QtIntf name 'QVariant_toLongLong';
|
||||||
function QVariant_toULongLong(handle: QVariantH; ok: PBoolean = 0): qword; cdecl; external QtIntf name 'QVariant_toULongLong';
|
function QVariant_toULongLong(handle: QVariantH; ok: PBoolean = nil): qword; cdecl; external QtIntf name 'QVariant_toULongLong';
|
||||||
function QVariant_toBool(handle: QVariantH): Boolean; cdecl; external QtIntf name 'QVariant_toBool';
|
function QVariant_toBool(handle: QVariantH): Boolean; cdecl; external QtIntf name 'QVariant_toBool';
|
||||||
function QVariant_toDouble(handle: QVariantH; ok: PBoolean = 0): Double; cdecl; external QtIntf name 'QVariant_toDouble';
|
function QVariant_toDouble(handle: QVariantH; ok: PBoolean = nil): Double; cdecl; external QtIntf name 'QVariant_toDouble';
|
||||||
procedure QVariant_toByteArray(handle: QVariantH; retval: QByteArrayH); cdecl; external QtIntf name 'QVariant_toByteArray';
|
procedure QVariant_toByteArray(handle: QVariantH; retval: QByteArrayH); cdecl; external QtIntf name 'QVariant_toByteArray';
|
||||||
procedure QVariant_toBitArray(handle: QVariantH; retval: QBitArrayH); cdecl; external QtIntf name 'QVariant_toBitArray';
|
procedure QVariant_toBitArray(handle: QVariantH; retval: QBitArrayH); cdecl; external QtIntf name 'QVariant_toBitArray';
|
||||||
procedure QVariant_toString(handle: QVariantH; retval: PWideString); cdecl; external QtIntf name 'QVariant_toString';
|
procedure QVariant_toString(handle: QVariantH; retval: PWideString); cdecl; external QtIntf name 'QVariant_toString';
|
||||||
@ -1513,6 +1523,23 @@ function QVariant_typeToName(_type: QVariantType): PAnsiChar; cdecl; external Qt
|
|||||||
function QVariant_nameToType(name: PAnsiChar): QVariantType; cdecl; external QtIntf name 'QVariant_nameToType';
|
function QVariant_nameToType(name: PAnsiChar): QVariantType; cdecl; external QtIntf name 'QVariant_nameToType';
|
||||||
function QVariant_constData(handle: QVariantH): Pointer; cdecl; external QtIntf name 'QVariant_constData';
|
function QVariant_constData(handle: QVariantH): Pointer; cdecl; external QtIntf name 'QVariant_constData';
|
||||||
|
|
||||||
|
function QAbstractEventDispatcher_instance(thread: QThreadH = nil): QAbstractEventDispatcherH; cdecl; external QtIntf name 'QAbstractEventDispatcher_instance';
|
||||||
|
function QAbstractEventDispatcher_processEvents(handle: QAbstractEventDispatcherH; flags: QEventLoopProcessEventsFlags): Boolean; cdecl; external QtIntf name 'QAbstractEventDispatcher_processEvents';
|
||||||
|
function QAbstractEventDispatcher_hasPendingEvents(handle: QAbstractEventDispatcherH): Boolean; cdecl; external QtIntf name 'QAbstractEventDispatcher_hasPendingEvents';
|
||||||
|
procedure QAbstractEventDispatcher_registerSocketNotifier(handle: QAbstractEventDispatcherH; notifier: QSocketNotifierH); cdecl; external QtIntf name 'QAbstractEventDispatcher_registerSocketNotifier';
|
||||||
|
procedure QAbstractEventDispatcher_unregisterSocketNotifier(handle: QAbstractEventDispatcherH; notifier: QSocketNotifierH); cdecl; external QtIntf name 'QAbstractEventDispatcher_unregisterSocketNotifier';
|
||||||
|
function QAbstractEventDispatcher_registerTimer(handle: QAbstractEventDispatcherH; interval: Integer; _object: QObjectH): Integer; overload; cdecl; external QtIntf name 'QAbstractEventDispatcher_registerTimer';
|
||||||
|
procedure QAbstractEventDispatcher_registerTimer(handle: QAbstractEventDispatcherH; timerId: Integer; interval: Integer; _object: QObjectH); overload; cdecl; external QtIntf name 'QAbstractEventDispatcher_registerTimer2';
|
||||||
|
function QAbstractEventDispatcher_unregisterTimer(handle: QAbstractEventDispatcherH; timerId: Integer): Boolean; cdecl; external QtIntf name 'QAbstractEventDispatcher_unregisterTimer';
|
||||||
|
function QAbstractEventDispatcher_unregisterTimers(handle: QAbstractEventDispatcherH; _object: QObjectH): Boolean; cdecl; external QtIntf name 'QAbstractEventDispatcher_unregisterTimers';
|
||||||
|
procedure QAbstractEventDispatcher_wakeUp(handle: QAbstractEventDispatcherH); cdecl; external QtIntf name 'QAbstractEventDispatcher_wakeUp';
|
||||||
|
procedure QAbstractEventDispatcher_interrupt(handle: QAbstractEventDispatcherH); cdecl; external QtIntf name 'QAbstractEventDispatcher_interrupt';
|
||||||
|
procedure QAbstractEventDispatcher_flush(handle: QAbstractEventDispatcherH); cdecl; external QtIntf name 'QAbstractEventDispatcher_flush';
|
||||||
|
procedure QAbstractEventDispatcher_startingUp(handle: QAbstractEventDispatcherH); cdecl; external QtIntf name 'QAbstractEventDispatcher_startingUp';
|
||||||
|
procedure QAbstractEventDispatcher_closingDown(handle: QAbstractEventDispatcherH); cdecl; external QtIntf name 'QAbstractEventDispatcher_closingDown';
|
||||||
|
function QAbstractEventDispatcher_setEventFilter(handle: QAbstractEventDispatcherH; filter: TAbstractEventFilter): TAbstractEventFilter; cdecl; external QtIntf name 'QAbstractEventDispatcher_setEventFilter';
|
||||||
|
function QAbstractEventDispatcher_filterEvent(handle: QAbstractEventDispatcherH; message: Pointer): Boolean; cdecl; external QtIntf name 'QAbstractEventDispatcher_filterEvent';
|
||||||
|
|
||||||
function QStringList_create(): QStringListH; overload; cdecl; external QtIntf name 'QStringList_create';
|
function QStringList_create(): QStringListH; overload; cdecl; external QtIntf name 'QStringList_create';
|
||||||
procedure QStringList_destroy(handle: QStringListH); cdecl; external QtIntf name 'QStringList_destroy';
|
procedure QStringList_destroy(handle: QStringListH); cdecl; external QtIntf name 'QStringList_destroy';
|
||||||
function QStringList_create(i: PWideString): QStringListH; overload; cdecl; external QtIntf name 'QStringList_create2';
|
function QStringList_create(i: PWideString): QStringListH; overload; cdecl; external QtIntf name 'QStringList_create2';
|
||||||
@ -1687,9 +1714,9 @@ procedure QApplication_restoreOverrideCursor(); cdecl; external QtIntf name 'QAp
|
|||||||
procedure QApplication_palette(retval: QPaletteH); overload; cdecl; external QtIntf name 'QApplication_palette';
|
procedure QApplication_palette(retval: QPaletteH); overload; cdecl; external QtIntf name 'QApplication_palette';
|
||||||
procedure QApplication_palette(retval: QPaletteH; p1: QWidgetH); overload; cdecl; external QtIntf name 'QApplication_palette2';
|
procedure QApplication_palette(retval: QPaletteH; p1: QWidgetH); overload; cdecl; external QtIntf name 'QApplication_palette2';
|
||||||
procedure QApplication_palette(retval: QPaletteH; className: PAnsiChar); overload; cdecl; external QtIntf name 'QApplication_palette3';
|
procedure QApplication_palette(retval: QPaletteH; className: PAnsiChar); overload; cdecl; external QtIntf name 'QApplication_palette3';
|
||||||
procedure QApplication_setPalette(p1: QPaletteH; className: PAnsiChar = 0); cdecl; external QtIntf name 'QApplication_setPalette';
|
procedure QApplication_setPalette(p1: QPaletteH; className: PAnsiChar = nil); cdecl; external QtIntf name 'QApplication_setPalette';
|
||||||
procedure QApplication_font(retval: QFontH; p1: QWidgetH = nil); cdecl; external QtIntf name 'QApplication_font';
|
procedure QApplication_font(retval: QFontH; p1: QWidgetH = nil); cdecl; external QtIntf name 'QApplication_font';
|
||||||
procedure QApplication_setFont(p1: QFontH; className: PAnsiChar = 0); cdecl; external QtIntf name 'QApplication_setFont';
|
procedure QApplication_setFont(p1: QFontH; className: PAnsiChar = nil); cdecl; external QtIntf name 'QApplication_setFont';
|
||||||
procedure QApplication_fontMetrics(retval: QFontMetricsH); cdecl; external QtIntf name 'QApplication_fontMetrics';
|
procedure QApplication_fontMetrics(retval: QFontMetricsH); cdecl; external QtIntf name 'QApplication_fontMetrics';
|
||||||
procedure QApplication_setWindowIcon(icon: QIconH); cdecl; external QtIntf name 'QApplication_setWindowIcon';
|
procedure QApplication_setWindowIcon(icon: QIconH); cdecl; external QtIntf name 'QApplication_setWindowIcon';
|
||||||
procedure QApplication_windowIcon(retval: QIconH); cdecl; external QtIntf name 'QApplication_windowIcon';
|
procedure QApplication_windowIcon(retval: QIconH); cdecl; external QtIntf name 'QApplication_windowIcon';
|
||||||
@ -2662,9 +2689,9 @@ function QColor_blueF(handle: QColorH): Double; cdecl; external QtIntf name 'QCo
|
|||||||
procedure QColor_setRedF(handle: QColorH; red: Double); cdecl; external QtIntf name 'QColor_setRedF';
|
procedure QColor_setRedF(handle: QColorH; red: Double); cdecl; external QtIntf name 'QColor_setRedF';
|
||||||
procedure QColor_setGreenF(handle: QColorH; green: Double); cdecl; external QtIntf name 'QColor_setGreenF';
|
procedure QColor_setGreenF(handle: QColorH; green: Double); cdecl; external QtIntf name 'QColor_setGreenF';
|
||||||
procedure QColor_setBlueF(handle: QColorH; blue: Double); cdecl; external QtIntf name 'QColor_setBlueF';
|
procedure QColor_setBlueF(handle: QColorH; blue: Double); cdecl; external QtIntf name 'QColor_setBlueF';
|
||||||
procedure QColor_getRgb(handle: QColorH; r: PInteger; g: PInteger; b: PInteger; a: PInteger = 0); cdecl; external QtIntf name 'QColor_getRgb';
|
procedure QColor_getRgb(handle: QColorH; r: PInteger; g: PInteger; b: PInteger; a: PInteger = nil); cdecl; external QtIntf name 'QColor_getRgb';
|
||||||
procedure QColor_setRgb(handle: QColorH; r: Integer; g: Integer; b: Integer; a: Integer = 255); overload; cdecl; external QtIntf name 'QColor_setRgb';
|
procedure QColor_setRgb(handle: QColorH; r: Integer; g: Integer; b: Integer; a: Integer = 255); overload; cdecl; external QtIntf name 'QColor_setRgb';
|
||||||
procedure QColor_getRgbF(handle: QColorH; r: PDouble; g: PDouble; b: PDouble; a: PDouble = 0); cdecl; external QtIntf name 'QColor_getRgbF';
|
procedure QColor_getRgbF(handle: QColorH; r: PDouble; g: PDouble; b: PDouble; a: PDouble = nil); cdecl; external QtIntf name 'QColor_getRgbF';
|
||||||
procedure QColor_setRgbF(handle: QColorH; r: Double; g: Double; b: Double; a: Double = 1.0); cdecl; external QtIntf name 'QColor_setRgbF';
|
procedure QColor_setRgbF(handle: QColorH; r: Double; g: Double; b: Double; a: Double = 1.0); cdecl; external QtIntf name 'QColor_setRgbF';
|
||||||
function QColor_rgba(handle: QColorH): QRgb; cdecl; external QtIntf name 'QColor_rgba';
|
function QColor_rgba(handle: QColorH): QRgb; cdecl; external QtIntf name 'QColor_rgba';
|
||||||
procedure QColor_setRgba(handle: QColorH; rgba: QRgb); cdecl; external QtIntf name 'QColor_setRgba';
|
procedure QColor_setRgba(handle: QColorH; rgba: QRgb); cdecl; external QtIntf name 'QColor_setRgba';
|
||||||
@ -2676,9 +2703,9 @@ function QColor_value(handle: QColorH): Integer; cdecl; external QtIntf name 'QC
|
|||||||
function QColor_hueF(handle: QColorH): Double; cdecl; external QtIntf name 'QColor_hueF';
|
function QColor_hueF(handle: QColorH): Double; cdecl; external QtIntf name 'QColor_hueF';
|
||||||
function QColor_saturationF(handle: QColorH): Double; cdecl; external QtIntf name 'QColor_saturationF';
|
function QColor_saturationF(handle: QColorH): Double; cdecl; external QtIntf name 'QColor_saturationF';
|
||||||
function QColor_valueF(handle: QColorH): Double; cdecl; external QtIntf name 'QColor_valueF';
|
function QColor_valueF(handle: QColorH): Double; cdecl; external QtIntf name 'QColor_valueF';
|
||||||
procedure QColor_getHsv(handle: QColorH; h: PInteger; s: PInteger; v: PInteger; a: PInteger = 0); cdecl; external QtIntf name 'QColor_getHsv';
|
procedure QColor_getHsv(handle: QColorH; h: PInteger; s: PInteger; v: PInteger; a: PInteger = nil); cdecl; external QtIntf name 'QColor_getHsv';
|
||||||
procedure QColor_setHsv(handle: QColorH; h: Integer; s: Integer; v: Integer; a: Integer = 255); cdecl; external QtIntf name 'QColor_setHsv';
|
procedure QColor_setHsv(handle: QColorH; h: Integer; s: Integer; v: Integer; a: Integer = 255); cdecl; external QtIntf name 'QColor_setHsv';
|
||||||
procedure QColor_getHsvF(handle: QColorH; h: PDouble; s: PDouble; v: PDouble; a: PDouble = 0); cdecl; external QtIntf name 'QColor_getHsvF';
|
procedure QColor_getHsvF(handle: QColorH; h: PDouble; s: PDouble; v: PDouble; a: PDouble = nil); cdecl; external QtIntf name 'QColor_getHsvF';
|
||||||
procedure QColor_setHsvF(handle: QColorH; h: Double; s: Double; v: Double; a: Double = 1.0); cdecl; external QtIntf name 'QColor_setHsvF';
|
procedure QColor_setHsvF(handle: QColorH; h: Double; s: Double; v: Double; a: Double = 1.0); cdecl; external QtIntf name 'QColor_setHsvF';
|
||||||
function QColor_cyan(handle: QColorH): Integer; cdecl; external QtIntf name 'QColor_cyan';
|
function QColor_cyan(handle: QColorH): Integer; cdecl; external QtIntf name 'QColor_cyan';
|
||||||
function QColor_magenta(handle: QColorH): Integer; cdecl; external QtIntf name 'QColor_magenta';
|
function QColor_magenta(handle: QColorH): Integer; cdecl; external QtIntf name 'QColor_magenta';
|
||||||
@ -2688,9 +2715,9 @@ function QColor_cyanF(handle: QColorH): Double; cdecl; external QtIntf name 'QCo
|
|||||||
function QColor_magentaF(handle: QColorH): Double; cdecl; external QtIntf name 'QColor_magentaF';
|
function QColor_magentaF(handle: QColorH): Double; cdecl; external QtIntf name 'QColor_magentaF';
|
||||||
function QColor_yellowF(handle: QColorH): Double; cdecl; external QtIntf name 'QColor_yellowF';
|
function QColor_yellowF(handle: QColorH): Double; cdecl; external QtIntf name 'QColor_yellowF';
|
||||||
function QColor_blackF(handle: QColorH): Double; cdecl; external QtIntf name 'QColor_blackF';
|
function QColor_blackF(handle: QColorH): Double; cdecl; external QtIntf name 'QColor_blackF';
|
||||||
procedure QColor_getCmyk(handle: QColorH; c: PInteger; m: PInteger; y: PInteger; k: PInteger; a: PInteger = 0); cdecl; external QtIntf name 'QColor_getCmyk';
|
procedure QColor_getCmyk(handle: QColorH; c: PInteger; m: PInteger; y: PInteger; k: PInteger; a: PInteger = nil); cdecl; external QtIntf name 'QColor_getCmyk';
|
||||||
procedure QColor_setCmyk(handle: QColorH; c: Integer; m: Integer; y: Integer; k: Integer; a: Integer = 255); cdecl; external QtIntf name 'QColor_setCmyk';
|
procedure QColor_setCmyk(handle: QColorH; c: Integer; m: Integer; y: Integer; k: Integer; a: Integer = 255); cdecl; external QtIntf name 'QColor_setCmyk';
|
||||||
procedure QColor_getCmykF(handle: QColorH; c: PDouble; m: PDouble; y: PDouble; k: PDouble; a: PDouble = 0); cdecl; external QtIntf name 'QColor_getCmykF';
|
procedure QColor_getCmykF(handle: QColorH; c: PDouble; m: PDouble; y: PDouble; k: PDouble; a: PDouble = nil); cdecl; external QtIntf name 'QColor_getCmykF';
|
||||||
procedure QColor_setCmykF(handle: QColorH; c: Double; m: Double; y: Double; k: Double; a: Double = 1.0); cdecl; external QtIntf name 'QColor_setCmykF';
|
procedure QColor_setCmykF(handle: QColorH; c: Double; m: Double; y: Double; k: Double; a: Double = 1.0); cdecl; external QtIntf name 'QColor_setCmykF';
|
||||||
procedure QColor_toRgb(handle: QColorH; retval: PQColor); cdecl; external QtIntf name 'QColor_toRgb';
|
procedure QColor_toRgb(handle: QColorH; retval: PQColor); cdecl; external QtIntf name 'QColor_toRgb';
|
||||||
procedure QColor_toHsv(handle: QColorH; retval: PQColor); cdecl; external QtIntf name 'QColor_toHsv';
|
procedure QColor_toHsv(handle: QColorH; retval: PQColor); cdecl; external QtIntf name 'QColor_toHsv';
|
||||||
@ -2739,7 +2766,7 @@ function QMatrix_shear(handle: QMatrixH; sh: Double; sv: Double): QMatrixH; cdec
|
|||||||
function QMatrix_rotate(handle: QMatrixH; a: Double): QMatrixH; cdecl; external QtIntf name 'QMatrix_rotate';
|
function QMatrix_rotate(handle: QMatrixH; a: Double): QMatrixH; cdecl; external QtIntf name 'QMatrix_rotate';
|
||||||
function QMatrix_isInvertible(handle: QMatrixH): Boolean; cdecl; external QtIntf name 'QMatrix_isInvertible';
|
function QMatrix_isInvertible(handle: QMatrixH): Boolean; cdecl; external QtIntf name 'QMatrix_isInvertible';
|
||||||
function QMatrix_det(handle: QMatrixH): Double; cdecl; external QtIntf name 'QMatrix_det';
|
function QMatrix_det(handle: QMatrixH): Double; cdecl; external QtIntf name 'QMatrix_det';
|
||||||
procedure QMatrix_inverted(handle: QMatrixH; retval: QMatrixH; invertible: PBoolean = 0); cdecl; external QtIntf name 'QMatrix_inverted';
|
procedure QMatrix_inverted(handle: QMatrixH; retval: QMatrixH; invertible: PBoolean = nil); cdecl; external QtIntf name 'QMatrix_inverted';
|
||||||
|
|
||||||
|
|
||||||
type
|
type
|
||||||
@ -3007,8 +3034,8 @@ procedure QPainter_drawText(handle: QPainterH; p: QPointFH; s: PWideString); ove
|
|||||||
procedure QPainter_drawText(handle: QPainterH; p: PPoint; s: PWideString); overload; cdecl; external QtIntf name 'QPainter_drawText2';
|
procedure QPainter_drawText(handle: QPainterH; p: PPoint; s: PWideString); overload; cdecl; external QtIntf name 'QPainter_drawText2';
|
||||||
procedure QPainter_drawText(handle: QPainterH; x: Integer; y: Integer; s: PWideString); overload; cdecl; external QtIntf name 'QPainter_drawText3';
|
procedure QPainter_drawText(handle: QPainterH; x: Integer; y: Integer; s: PWideString); overload; cdecl; external QtIntf name 'QPainter_drawText3';
|
||||||
procedure QPainter_drawText(handle: QPainterH; r: QRectFH; flags: Integer; text: PWideString; br: QRectFH = nil); overload; cdecl; external QtIntf name 'QPainter_drawText4';
|
procedure QPainter_drawText(handle: QPainterH; r: QRectFH; flags: Integer; text: PWideString; br: QRectFH = nil); overload; cdecl; external QtIntf name 'QPainter_drawText4';
|
||||||
procedure QPainter_drawText(handle: QPainterH; r: PRect; flags: Integer; text: PWideString; br: PRect); overload; cdecl; external QtIntf name 'QPainter_drawText5';
|
procedure QPainter_drawText(handle: QPainterH; r: PRect; flags: Integer; text: PWideString; br: PRect = nil); overload; cdecl; external QtIntf name 'QPainter_drawText5';
|
||||||
procedure QPainter_drawText(handle: QPainterH; x: Integer; y: Integer; w: Integer; h: Integer; flags: Integer; text: PWideString; br: PRect); overload; cdecl; external QtIntf name 'QPainter_drawText6';
|
procedure QPainter_drawText(handle: QPainterH; x: Integer; y: Integer; w: Integer; h: Integer; flags: Integer; text: PWideString; br: PRect = nil); overload; cdecl; external QtIntf name 'QPainter_drawText6';
|
||||||
procedure QPainter_drawText(handle: QPainterH; r: QRectFH; text: PWideString; o: QTextOptionH = nil); overload; cdecl; external QtIntf name 'QPainter_drawText7';
|
procedure QPainter_drawText(handle: QPainterH; r: QRectFH; text: PWideString; o: QTextOptionH = nil); overload; cdecl; external QtIntf name 'QPainter_drawText7';
|
||||||
procedure QPainter_boundingRect(handle: QPainterH; retval: QRectFH; rect: QRectFH; flags: Integer; text: PWideString); overload; cdecl; external QtIntf name 'QPainter_boundingRect';
|
procedure QPainter_boundingRect(handle: QPainterH; retval: QRectFH; rect: QRectFH; flags: Integer; text: PWideString); overload; cdecl; external QtIntf name 'QPainter_boundingRect';
|
||||||
procedure QPainter_boundingRect(handle: QPainterH; retval: PRect; rect: PRect; flags: Integer; text: PWideString); overload; cdecl; external QtIntf name 'QPainter_boundingRect2';
|
procedure QPainter_boundingRect(handle: QPainterH; retval: PRect; rect: PRect; flags: Integer; text: PWideString); overload; cdecl; external QtIntf name 'QPainter_boundingRect2';
|
||||||
@ -3024,7 +3051,7 @@ procedure QPainter_setRenderHint(handle: QPainterH; hint: QPainterRenderHint; _o
|
|||||||
function QPainter_renderHints(handle: QPainterH): QPainterRenderHints; cdecl; external QtIntf name 'QPainter_renderHints';
|
function QPainter_renderHints(handle: QPainterH): QPainterRenderHints; cdecl; external QtIntf name 'QPainter_renderHints';
|
||||||
function QPainter_paintEngine(handle: QPainterH): QPaintEngineH; cdecl; external QtIntf name 'QPainter_paintEngine';
|
function QPainter_paintEngine(handle: QPainterH): QPaintEngineH; cdecl; external QtIntf name 'QPainter_paintEngine';
|
||||||
procedure QPainter_setRedirected(device: QPaintDeviceH; replacement: QPaintDeviceH; offset: PPoint = nil); cdecl; external QtIntf name 'QPainter_setRedirected';
|
procedure QPainter_setRedirected(device: QPaintDeviceH; replacement: QPaintDeviceH; offset: PPoint = nil); cdecl; external QtIntf name 'QPainter_setRedirected';
|
||||||
function QPainter_redirected(device: QPaintDeviceH; offset: PPoint = 0): QPaintDeviceH; cdecl; external QtIntf name 'QPainter_redirected';
|
function QPainter_redirected(device: QPaintDeviceH; offset: PPoint = nil): QPaintDeviceH; cdecl; external QtIntf name 'QPainter_redirected';
|
||||||
procedure QPainter_restoreRedirected(device: QPaintDeviceH); cdecl; external QtIntf name 'QPainter_restoreRedirected';
|
procedure QPainter_restoreRedirected(device: QPaintDeviceH); cdecl; external QtIntf name 'QPainter_restoreRedirected';
|
||||||
|
|
||||||
|
|
||||||
@ -3515,9 +3542,9 @@ function QFontMetrics_width(handle: QFontMetricsH; p1: PWideChar): Integer; over
|
|||||||
function QFontMetrics_charWidth(handle: QFontMetricsH; str: PWideString; pos: Integer): Integer; cdecl; external QtIntf name 'QFontMetrics_charWidth';
|
function QFontMetrics_charWidth(handle: QFontMetricsH; str: PWideString; pos: Integer): Integer; cdecl; external QtIntf name 'QFontMetrics_charWidth';
|
||||||
procedure QFontMetrics_boundingRect(handle: QFontMetricsH; retval: PRect; p1: PWideChar); overload; cdecl; external QtIntf name 'QFontMetrics_boundingRect';
|
procedure QFontMetrics_boundingRect(handle: QFontMetricsH; retval: PRect; p1: PWideChar); overload; cdecl; external QtIntf name 'QFontMetrics_boundingRect';
|
||||||
procedure QFontMetrics_boundingRect(handle: QFontMetricsH; retval: PRect; text: PWideString); overload; cdecl; external QtIntf name 'QFontMetrics_boundingRect2';
|
procedure QFontMetrics_boundingRect(handle: QFontMetricsH; retval: PRect; text: PWideString); overload; cdecl; external QtIntf name 'QFontMetrics_boundingRect2';
|
||||||
procedure QFontMetrics_boundingRect(handle: QFontMetricsH; retval: PRect; r: PRect; flags: Integer; text: PWideString; tabstops: Integer = 0; tabarray: PInteger = 0); overload; cdecl; external QtIntf name 'QFontMetrics_boundingRect3';
|
procedure QFontMetrics_boundingRect(handle: QFontMetricsH; retval: PRect; r: PRect; flags: Integer; text: PWideString; tabstops: Integer = 0; tabarray: PInteger = nil); overload; cdecl; external QtIntf name 'QFontMetrics_boundingRect3';
|
||||||
procedure QFontMetrics_boundingRect(handle: QFontMetricsH; retval: PRect; x: Integer; y: Integer; w: Integer; h: Integer; flags: Integer; text: PWideString; tabstops: Integer = 0; tabarray: PInteger = 0); overload; cdecl; external QtIntf name 'QFontMetrics_boundingRect4';
|
procedure QFontMetrics_boundingRect(handle: QFontMetricsH; retval: PRect; x: Integer; y: Integer; w: Integer; h: Integer; flags: Integer; text: PWideString; tabstops: Integer = 0; tabarray: PInteger = nil); overload; cdecl; external QtIntf name 'QFontMetrics_boundingRect4';
|
||||||
procedure QFontMetrics_size(handle: QFontMetricsH; retval: PSize; flags: Integer; str: PWideString; tabstops: Integer = 0; tabarray: PInteger = 0); cdecl; external QtIntf name 'QFontMetrics_size';
|
procedure QFontMetrics_size(handle: QFontMetricsH; retval: PSize; flags: Integer; str: PWideString; tabstops: Integer = 0; tabarray: PInteger = nil); cdecl; external QtIntf name 'QFontMetrics_size';
|
||||||
function QFontMetrics_underlinePos(handle: QFontMetricsH): Integer; cdecl; external QtIntf name 'QFontMetrics_underlinePos';
|
function QFontMetrics_underlinePos(handle: QFontMetricsH): Integer; cdecl; external QtIntf name 'QFontMetrics_underlinePos';
|
||||||
function QFontMetrics_overlinePos(handle: QFontMetricsH): Integer; cdecl; external QtIntf name 'QFontMetrics_overlinePos';
|
function QFontMetrics_overlinePos(handle: QFontMetricsH): Integer; cdecl; external QtIntf name 'QFontMetrics_overlinePos';
|
||||||
function QFontMetrics_strikeOutPos(handle: QFontMetricsH): Integer; cdecl; external QtIntf name 'QFontMetrics_strikeOutPos';
|
function QFontMetrics_strikeOutPos(handle: QFontMetricsH): Integer; cdecl; external QtIntf name 'QFontMetrics_strikeOutPos';
|
||||||
@ -3542,8 +3569,8 @@ function QFontMetricsF_width(handle: QFontMetricsFH; _string: PWideString): Doub
|
|||||||
function QFontMetricsF_width(handle: QFontMetricsFH; p1: PWideChar): Double; overload; cdecl; external QtIntf name 'QFontMetricsF_width2';
|
function QFontMetricsF_width(handle: QFontMetricsFH; p1: PWideChar): Double; overload; cdecl; external QtIntf name 'QFontMetricsF_width2';
|
||||||
procedure QFontMetricsF_boundingRect(handle: QFontMetricsFH; retval: QRectFH; _string: PWideString); overload; cdecl; external QtIntf name 'QFontMetricsF_boundingRect';
|
procedure QFontMetricsF_boundingRect(handle: QFontMetricsFH; retval: QRectFH; _string: PWideString); overload; cdecl; external QtIntf name 'QFontMetricsF_boundingRect';
|
||||||
procedure QFontMetricsF_boundingRect(handle: QFontMetricsFH; retval: QRectFH; p1: PWideChar); overload; cdecl; external QtIntf name 'QFontMetricsF_boundingRect2';
|
procedure QFontMetricsF_boundingRect(handle: QFontMetricsFH; retval: QRectFH; p1: PWideChar); overload; cdecl; external QtIntf name 'QFontMetricsF_boundingRect2';
|
||||||
procedure QFontMetricsF_boundingRect(handle: QFontMetricsFH; retval: QRectFH; r: QRectFH; flags: Integer; _string: PWideString; tabstops: Integer = 0; tabarray: PInteger = 0); overload; cdecl; external QtIntf name 'QFontMetricsF_boundingRect3';
|
procedure QFontMetricsF_boundingRect(handle: QFontMetricsFH; retval: QRectFH; r: QRectFH; flags: Integer; _string: PWideString; tabstops: Integer = 0; tabarray: PInteger = nil); overload; cdecl; external QtIntf name 'QFontMetricsF_boundingRect3';
|
||||||
procedure QFontMetricsF_size(handle: QFontMetricsFH; retval: QSizeFH; flags: Integer; str: PWideString; tabstops: Integer = 0; tabarray: PInteger = 0); cdecl; external QtIntf name 'QFontMetricsF_size';
|
procedure QFontMetricsF_size(handle: QFontMetricsFH; retval: QSizeFH; flags: Integer; str: PWideString; tabstops: Integer = 0; tabarray: PInteger = nil); cdecl; external QtIntf name 'QFontMetricsF_size';
|
||||||
function QFontMetricsF_underlinePos(handle: QFontMetricsFH): Double; cdecl; external QtIntf name 'QFontMetricsF_underlinePos';
|
function QFontMetricsF_underlinePos(handle: QFontMetricsFH): Double; cdecl; external QtIntf name 'QFontMetricsF_underlinePos';
|
||||||
function QFontMetricsF_overlinePos(handle: QFontMetricsFH): Double; cdecl; external QtIntf name 'QFontMetricsF_overlinePos';
|
function QFontMetricsF_overlinePos(handle: QFontMetricsFH): Double; cdecl; external QtIntf name 'QFontMetricsF_overlinePos';
|
||||||
function QFontMetricsF_strikeOutPos(handle: QFontMetricsFH): Double; cdecl; external QtIntf name 'QFontMetricsF_strikeOutPos';
|
function QFontMetricsF_strikeOutPos(handle: QFontMetricsFH): Double; cdecl; external QtIntf name 'QFontMetricsF_strikeOutPos';
|
||||||
@ -3668,7 +3695,7 @@ function QPixmap_create(): QPixmapH; overload; cdecl; external QtIntf name 'QPix
|
|||||||
procedure QPixmap_destroy(handle: QPixmapH); cdecl; external QtIntf name 'QPixmap_destroy';
|
procedure QPixmap_destroy(handle: QPixmapH); cdecl; external QtIntf name 'QPixmap_destroy';
|
||||||
function QPixmap_create(w: Integer; h: Integer): QPixmapH; overload; cdecl; external QtIntf name 'QPixmap_create2';
|
function QPixmap_create(w: Integer; h: Integer): QPixmapH; overload; cdecl; external QtIntf name 'QPixmap_create2';
|
||||||
function QPixmap_create(p1: PSize): QPixmapH; overload; cdecl; external QtIntf name 'QPixmap_create3';
|
function QPixmap_create(p1: PSize): QPixmapH; overload; cdecl; external QtIntf name 'QPixmap_create3';
|
||||||
function QPixmap_create(fileName: PWideString; format: PAnsiChar = 0; flags: QtImageConversionFlags = QtAutoColor): QPixmapH; overload; cdecl; external QtIntf name 'QPixmap_create4';
|
function QPixmap_create(fileName: PWideString; format: PAnsiChar = nil; flags: QtImageConversionFlags = QtAutoColor): QPixmapH; overload; cdecl; external QtIntf name 'QPixmap_create4';
|
||||||
function QPixmap_create(xpm: PAnsiChar): QPixmapH; overload; cdecl; external QtIntf name 'QPixmap_create5';
|
function QPixmap_create(xpm: PAnsiChar): QPixmapH; overload; cdecl; external QtIntf name 'QPixmap_create5';
|
||||||
function QPixmap_create(p1: QPixmapH): QPixmapH; overload; cdecl; external QtIntf name 'QPixmap_create6';
|
function QPixmap_create(p1: QPixmapH): QPixmapH; overload; cdecl; external QtIntf name 'QPixmap_create6';
|
||||||
function QPixmap_isNull(handle: QPixmapH): Boolean; cdecl; external QtIntf name 'QPixmap_isNull';
|
function QPixmap_isNull(handle: QPixmapH): Boolean; cdecl; external QtIntf name 'QPixmap_isNull';
|
||||||
@ -3679,7 +3706,7 @@ procedure QPixmap_size(handle: QPixmapH; retval: PSize); cdecl; external QtIntf
|
|||||||
procedure QPixmap_rect(handle: QPixmapH; retval: PRect); cdecl; external QtIntf name 'QPixmap_rect';
|
procedure QPixmap_rect(handle: QPixmapH; retval: PRect); cdecl; external QtIntf name 'QPixmap_rect';
|
||||||
function QPixmap_depth(handle: QPixmapH): Integer; cdecl; external QtIntf name 'QPixmap_depth';
|
function QPixmap_depth(handle: QPixmapH): Integer; cdecl; external QtIntf name 'QPixmap_depth';
|
||||||
function QPixmap_defaultDepth(): Integer; cdecl; external QtIntf name 'QPixmap_defaultDepth';
|
function QPixmap_defaultDepth(): Integer; cdecl; external QtIntf name 'QPixmap_defaultDepth';
|
||||||
procedure QPixmap_fill(handle: QPixmapH; fillColor: PQColor = Qtwhite); overload; cdecl; external QtIntf name 'QPixmap_fill';
|
procedure QPixmap_fill(handle: QPixmapH; fillColor: PQColor); overload; cdecl; external QtIntf name 'QPixmap_fill';
|
||||||
procedure QPixmap_fill(handle: QPixmapH; widget: QWidgetH; ofs: PPoint); overload; cdecl; external QtIntf name 'QPixmap_fill2';
|
procedure QPixmap_fill(handle: QPixmapH; widget: QWidgetH; ofs: PPoint); overload; cdecl; external QtIntf name 'QPixmap_fill2';
|
||||||
procedure QPixmap_fill(handle: QPixmapH; widget: QWidgetH; xofs: Integer; yofs: Integer); overload; cdecl; external QtIntf name 'QPixmap_fill3';
|
procedure QPixmap_fill(handle: QPixmapH; widget: QWidgetH; xofs: Integer; yofs: Integer); overload; cdecl; external QtIntf name 'QPixmap_fill3';
|
||||||
procedure QPixmap_mask(handle: QPixmapH; retval: QBitmapH); cdecl; external QtIntf name 'QPixmap_mask';
|
procedure QPixmap_mask(handle: QPixmapH; retval: QBitmapH); cdecl; external QtIntf name 'QPixmap_mask';
|
||||||
@ -3701,9 +3728,9 @@ procedure QPixmap_transformed(handle: QPixmapH; retval: QPixmapH; p1: QMatrixH;
|
|||||||
procedure QPixmap_trueMatrix(retval: QMatrixH; m: QMatrixH; w: Integer; h: Integer); cdecl; external QtIntf name 'QPixmap_trueMatrix';
|
procedure QPixmap_trueMatrix(retval: QMatrixH; m: QMatrixH; w: Integer; h: Integer); cdecl; external QtIntf name 'QPixmap_trueMatrix';
|
||||||
procedure QPixmap_toImage(handle: QPixmapH; retval: QImageH); cdecl; external QtIntf name 'QPixmap_toImage';
|
procedure QPixmap_toImage(handle: QPixmapH; retval: QImageH); cdecl; external QtIntf name 'QPixmap_toImage';
|
||||||
procedure QPixmap_fromImage(retval: QPixmapH; image: QImageH; flags: QtImageConversionFlags = QtAutoColor); cdecl; external QtIntf name 'QPixmap_fromImage';
|
procedure QPixmap_fromImage(retval: QPixmapH; image: QImageH; flags: QtImageConversionFlags = QtAutoColor); cdecl; external QtIntf name 'QPixmap_fromImage';
|
||||||
function QPixmap_load(handle: QPixmapH; fileName: PWideString; format: PAnsiChar = 0; flags: QtImageConversionFlags = QtAutoColor): Boolean; cdecl; external QtIntf name 'QPixmap_load';
|
function QPixmap_load(handle: QPixmapH; fileName: PWideString; format: PAnsiChar = nil; flags: QtImageConversionFlags = QtAutoColor): Boolean; cdecl; external QtIntf name 'QPixmap_load';
|
||||||
function QPixmap_loadFromData(handle: QPixmapH; buf: PByte; len: Cardinal; format: PAnsiChar = 0; flags: QtImageConversionFlags = QtAutoColor): Boolean; overload; cdecl; external QtIntf name 'QPixmap_loadFromData';
|
function QPixmap_loadFromData(handle: QPixmapH; buf: PByte; len: Cardinal; format: PAnsiChar = nil; flags: QtImageConversionFlags = QtAutoColor): Boolean; overload; cdecl; external QtIntf name 'QPixmap_loadFromData';
|
||||||
function QPixmap_loadFromData(handle: QPixmapH; data: QByteArrayH; format: PAnsiChar = 0; flags: QtImageConversionFlags = QtAutoColor): Boolean; overload; cdecl; external QtIntf name 'QPixmap_loadFromData2';
|
function QPixmap_loadFromData(handle: QPixmapH; data: QByteArrayH; format: PAnsiChar = nil; flags: QtImageConversionFlags = QtAutoColor): Boolean; overload; cdecl; external QtIntf name 'QPixmap_loadFromData2';
|
||||||
function QPixmap_save(handle: QPixmapH; fileName: PWideString; format: PAnsiChar; quality: Integer = -1): Boolean; overload; cdecl; external QtIntf name 'QPixmap_save';
|
function QPixmap_save(handle: QPixmapH; fileName: PWideString; format: PAnsiChar; quality: Integer = -1): Boolean; overload; cdecl; external QtIntf name 'QPixmap_save';
|
||||||
function QPixmap_save(handle: QPixmapH; device: QIODeviceH; format: PAnsiChar; quality: Integer = -1): Boolean; overload; cdecl; external QtIntf name 'QPixmap_save2';
|
function QPixmap_save(handle: QPixmapH; device: QIODeviceH; format: PAnsiChar; quality: Integer = -1): Boolean; overload; cdecl; external QtIntf name 'QPixmap_save2';
|
||||||
procedure QPixmap_copy(handle: QPixmapH; retval: QPixmapH; x: Integer; y: Integer; width: Integer; height: Integer); overload; cdecl; external QtIntf name 'QPixmap_copy';
|
procedure QPixmap_copy(handle: QPixmapH; retval: QPixmapH; x: Integer; y: Integer; width: Integer; height: Integer); overload; cdecl; external QtIntf name 'QPixmap_copy';
|
||||||
@ -3744,8 +3771,8 @@ function QImage_create(size: PSize; format: QImageFormat): QImageH; overload; cd
|
|||||||
function QImage_create(width: Integer; height: Integer; format: QImageFormat): QImageH; overload; cdecl; external QtIntf name 'QImage_create3';
|
function QImage_create(width: Integer; height: Integer; format: QImageFormat): QImageH; overload; cdecl; external QtIntf name 'QImage_create3';
|
||||||
function QImage_create(data: PByte; width: Integer; height: Integer; format: QImageFormat): QImageH; overload; cdecl; external QtIntf name 'QImage_create4';
|
function QImage_create(data: PByte; width: Integer; height: Integer; format: QImageFormat): QImageH; overload; cdecl; external QtIntf name 'QImage_create4';
|
||||||
function QImage_create(xpm: PAnsiChar): QImageH; overload; cdecl; external QtIntf name 'QImage_create5';
|
function QImage_create(xpm: PAnsiChar): QImageH; overload; cdecl; external QtIntf name 'QImage_create5';
|
||||||
function QImage_create(fileName: PWideString; format: PAnsiChar = 0): QImageH; overload; cdecl; external QtIntf name 'QImage_create6';
|
function QImage_create(fileName: PWideString; format: PAnsiChar = nil): QImageH; overload; cdecl; external QtIntf name 'QImage_create6';
|
||||||
function QImage_create(fileName: PAnsiChar; format: PAnsiChar = 0): QImageH; overload; cdecl; external QtIntf name 'QImage_create7';
|
function QImage_create(fileName: PAnsiChar; format: PAnsiChar = nil): QImageH; overload; cdecl; external QtIntf name 'QImage_create7';
|
||||||
function QImage_create(p1: QImageH): QImageH; overload; cdecl; external QtIntf name 'QImage_create8';
|
function QImage_create(p1: QImageH): QImageH; overload; cdecl; external QtIntf name 'QImage_create8';
|
||||||
function QImage_isNull(handle: QImageH): Boolean; cdecl; external QtIntf name 'QImage_isNull';
|
function QImage_isNull(handle: QImageH): Boolean; cdecl; external QtIntf name 'QImage_isNull';
|
||||||
function QImage_devType(handle: QImageH): Integer; cdecl; external QtIntf name 'QImage_devType';
|
function QImage_devType(handle: QImageH): Integer; cdecl; external QtIntf name 'QImage_devType';
|
||||||
@ -3790,13 +3817,13 @@ procedure QImage_mirrored(handle: QImageH; retval: QImageH; horizontally: Boolea
|
|||||||
procedure QImage_rgbSwapped(handle: QImageH; retval: QImageH); cdecl; external QtIntf name 'QImage_rgbSwapped';
|
procedure QImage_rgbSwapped(handle: QImageH; retval: QImageH); cdecl; external QtIntf name 'QImage_rgbSwapped';
|
||||||
procedure QImage_invertPixels(handle: QImageH; p1: QImageInvertMode = QImageInvertRgb); cdecl; external QtIntf name 'QImage_invertPixels';
|
procedure QImage_invertPixels(handle: QImageH; p1: QImageInvertMode = QImageInvertRgb); cdecl; external QtIntf name 'QImage_invertPixels';
|
||||||
function QImage_load(handle: QImageH; device: QIODeviceH; format: PAnsiChar): Boolean; overload; cdecl; external QtIntf name 'QImage_load';
|
function QImage_load(handle: QImageH; device: QIODeviceH; format: PAnsiChar): Boolean; overload; cdecl; external QtIntf name 'QImage_load';
|
||||||
function QImage_load(handle: QImageH; fileName: PWideString; format: PAnsiChar = 0): Boolean; overload; cdecl; external QtIntf name 'QImage_load2';
|
function QImage_load(handle: QImageH; fileName: PWideString; format: PAnsiChar = nil): Boolean; overload; cdecl; external QtIntf name 'QImage_load2';
|
||||||
function QImage_loadFromData(handle: QImageH; buf: PByte; len: Integer; format: PAnsiChar = 0): Boolean; overload; cdecl; external QtIntf name 'QImage_loadFromData';
|
function QImage_loadFromData(handle: QImageH; buf: PByte; len: Integer; format: PAnsiChar = nil): Boolean; overload; cdecl; external QtIntf name 'QImage_loadFromData';
|
||||||
function QImage_loadFromData(handle: QImageH; data: QByteArrayH; aformat: PAnsiChar = 0): Boolean; overload; cdecl; external QtIntf name 'QImage_loadFromData2';
|
function QImage_loadFromData(handle: QImageH; data: QByteArrayH; aformat: PAnsiChar = nil): Boolean; overload; cdecl; external QtIntf name 'QImage_loadFromData2';
|
||||||
function QImage_save(handle: QImageH; fileName: PWideString; format: PAnsiChar; quality: Integer = -1): Boolean; overload; cdecl; external QtIntf name 'QImage_save';
|
function QImage_save(handle: QImageH; fileName: PWideString; format: PAnsiChar; quality: Integer = -1): Boolean; overload; cdecl; external QtIntf name 'QImage_save';
|
||||||
function QImage_save(handle: QImageH; device: QIODeviceH; format: PAnsiChar; quality: Integer = -1): Boolean; overload; cdecl; external QtIntf name 'QImage_save2';
|
function QImage_save(handle: QImageH; device: QIODeviceH; format: PAnsiChar; quality: Integer = -1): Boolean; overload; cdecl; external QtIntf name 'QImage_save2';
|
||||||
procedure QImage_fromData(retval: QImageH; data: PByte; size: Integer; format: PAnsiChar = 0); overload; cdecl; external QtIntf name 'QImage_fromData';
|
procedure QImage_fromData(retval: QImageH; data: PByte; size: Integer; format: PAnsiChar = nil); overload; cdecl; external QtIntf name 'QImage_fromData';
|
||||||
procedure QImage_fromData(retval: QImageH; data: QByteArrayH; format: PAnsiChar = 0); overload; cdecl; external QtIntf name 'QImage_fromData2';
|
procedure QImage_fromData(retval: QImageH; data: QByteArrayH; format: PAnsiChar = nil); overload; cdecl; external QtIntf name 'QImage_fromData2';
|
||||||
function QImage_serialNumber(handle: QImageH): Integer; cdecl; external QtIntf name 'QImage_serialNumber';
|
function QImage_serialNumber(handle: QImageH): Integer; cdecl; external QtIntf name 'QImage_serialNumber';
|
||||||
function QImage_paintEngine(handle: QImageH): QPaintEngineH; cdecl; external QtIntf name 'QImage_paintEngine';
|
function QImage_paintEngine(handle: QImageH): QPaintEngineH; cdecl; external QtIntf name 'QImage_paintEngine';
|
||||||
function QImage_dotsPerMeterX(handle: QImageH): Integer; cdecl; external QtIntf name 'QImage_dotsPerMeterX';
|
function QImage_dotsPerMeterX(handle: QImageH): Integer; cdecl; external QtIntf name 'QImage_dotsPerMeterX';
|
||||||
@ -3808,7 +3835,7 @@ procedure QImage_setOffset(handle: QImageH; p1: PPoint); cdecl; external QtIntf
|
|||||||
procedure QImage_textKeys(handle: QImageH; retval: QStringListH); cdecl; external QtIntf name 'QImage_textKeys';
|
procedure QImage_textKeys(handle: QImageH; retval: QStringListH); cdecl; external QtIntf name 'QImage_textKeys';
|
||||||
procedure QImage_text(handle: QImageH; retval: PWideString; key: PWideString = nil); overload; cdecl; external QtIntf name 'QImage_text';
|
procedure QImage_text(handle: QImageH; retval: PWideString; key: PWideString = nil); overload; cdecl; external QtIntf name 'QImage_text';
|
||||||
procedure QImage_setText(handle: QImageH; key: PWideString; value: PWideString); overload; cdecl; external QtIntf name 'QImage_setText';
|
procedure QImage_setText(handle: QImageH; key: PWideString; value: PWideString); overload; cdecl; external QtIntf name 'QImage_setText';
|
||||||
procedure QImage_text(handle: QImageH; retval: PWideString; key: PAnsiChar; lang: PAnsiChar = 0); overload; cdecl; external QtIntf name 'QImage_text2';
|
procedure QImage_text(handle: QImageH; retval: PWideString; key: PAnsiChar; lang: PAnsiChar = nil); overload; cdecl; external QtIntf name 'QImage_text2';
|
||||||
procedure QImage_textLanguages(handle: QImageH; retval: QStringListH); cdecl; external QtIntf name 'QImage_textLanguages';
|
procedure QImage_textLanguages(handle: QImageH; retval: QStringListH); cdecl; external QtIntf name 'QImage_textLanguages';
|
||||||
procedure QImage_setText(handle: QImageH; key: PAnsiChar; lang: PAnsiChar; p3: PWideString); overload; cdecl; external QtIntf name 'QImage_setText2';
|
procedure QImage_setText(handle: QImageH; key: PAnsiChar; lang: PAnsiChar; p3: PWideString); overload; cdecl; external QtIntf name 'QImage_setText2';
|
||||||
|
|
||||||
@ -3817,7 +3844,7 @@ procedure QBitmap_destroy(handle: QBitmapH); cdecl; external QtIntf name 'QBitma
|
|||||||
function QBitmap_create(p1: QPixmapH): QBitmapH; overload; cdecl; external QtIntf name 'QBitmap_create2';
|
function QBitmap_create(p1: QPixmapH): QBitmapH; overload; cdecl; external QtIntf name 'QBitmap_create2';
|
||||||
function QBitmap_create(w: Integer; h: Integer): QBitmapH; overload; cdecl; external QtIntf name 'QBitmap_create3';
|
function QBitmap_create(w: Integer; h: Integer): QBitmapH; overload; cdecl; external QtIntf name 'QBitmap_create3';
|
||||||
function QBitmap_create(p1: PSize): QBitmapH; overload; cdecl; external QtIntf name 'QBitmap_create4';
|
function QBitmap_create(p1: PSize): QBitmapH; overload; cdecl; external QtIntf name 'QBitmap_create4';
|
||||||
function QBitmap_create(fileName: PWideString; format: PAnsiChar = 0): QBitmapH; overload; cdecl; external QtIntf name 'QBitmap_create5';
|
function QBitmap_create(fileName: PWideString; format: PAnsiChar = nil): QBitmapH; overload; cdecl; external QtIntf name 'QBitmap_create5';
|
||||||
procedure QBitmap_clear(handle: QBitmapH); cdecl; external QtIntf name 'QBitmap_clear';
|
procedure QBitmap_clear(handle: QBitmapH); cdecl; external QtIntf name 'QBitmap_clear';
|
||||||
procedure QBitmap_fromImage(retval: QBitmapH; image: QImageH; flags: QtImageConversionFlags = QtAutoColor); cdecl; external QtIntf name 'QBitmap_fromImage';
|
procedure QBitmap_fromImage(retval: QBitmapH; image: QImageH; flags: QtImageConversionFlags = QtAutoColor); cdecl; external QtIntf name 'QBitmap_fromImage';
|
||||||
procedure QBitmap_fromData(retval: QBitmapH; size: PSize; bits: PByte; monoFormat: QImageFormat = QImageFormat_MonoLSB); cdecl; external QtIntf name 'QBitmap_fromData';
|
procedure QBitmap_fromData(retval: QBitmapH; size: PSize; bits: PByte; monoFormat: QImageFormat = QImageFormat_MonoLSB); cdecl; external QtIntf name 'QBitmap_fromData';
|
||||||
@ -3832,10 +3859,10 @@ function QPicture_size(handle: QPictureH): Cardinal; cdecl; external QtIntf name
|
|||||||
function QPicture_data(handle: QPictureH): PAnsiChar; cdecl; external QtIntf name 'QPicture_data';
|
function QPicture_data(handle: QPictureH): PAnsiChar; cdecl; external QtIntf name 'QPicture_data';
|
||||||
procedure QPicture_setData(handle: QPictureH; data: PAnsiChar; size: Cardinal); cdecl; external QtIntf name 'QPicture_setData';
|
procedure QPicture_setData(handle: QPictureH; data: PAnsiChar; size: Cardinal); cdecl; external QtIntf name 'QPicture_setData';
|
||||||
function QPicture_play(handle: QPictureH; p: QPainterH): Boolean; cdecl; external QtIntf name 'QPicture_play';
|
function QPicture_play(handle: QPictureH; p: QPainterH): Boolean; cdecl; external QtIntf name 'QPicture_play';
|
||||||
function QPicture_load(handle: QPictureH; dev: QIODeviceH; format: PAnsiChar = 0): Boolean; overload; cdecl; external QtIntf name 'QPicture_load';
|
function QPicture_load(handle: QPictureH; dev: QIODeviceH; format: PAnsiChar = nil): Boolean; overload; cdecl; external QtIntf name 'QPicture_load';
|
||||||
function QPicture_load(handle: QPictureH; fileName: PWideString; format: PAnsiChar = 0): Boolean; overload; cdecl; external QtIntf name 'QPicture_load2';
|
function QPicture_load(handle: QPictureH; fileName: PWideString; format: PAnsiChar = nil): Boolean; overload; cdecl; external QtIntf name 'QPicture_load2';
|
||||||
function QPicture_save(handle: QPictureH; dev: QIODeviceH; format: PAnsiChar = 0): Boolean; overload; cdecl; external QtIntf name 'QPicture_save';
|
function QPicture_save(handle: QPictureH; dev: QIODeviceH; format: PAnsiChar = nil): Boolean; overload; cdecl; external QtIntf name 'QPicture_save';
|
||||||
function QPicture_save(handle: QPictureH; fileName: PWideString; format: PAnsiChar = 0): Boolean; overload; cdecl; external QtIntf name 'QPicture_save2';
|
function QPicture_save(handle: QPictureH; fileName: PWideString; format: PAnsiChar = nil): Boolean; overload; cdecl; external QtIntf name 'QPicture_save2';
|
||||||
procedure QPicture_boundingRect(handle: QPictureH; retval: PRect); cdecl; external QtIntf name 'QPicture_boundingRect';
|
procedure QPicture_boundingRect(handle: QPictureH; retval: PRect); cdecl; external QtIntf name 'QPicture_boundingRect';
|
||||||
procedure QPicture_setBoundingRect(handle: QPictureH; r: PRect); cdecl; external QtIntf name 'QPicture_setBoundingRect';
|
procedure QPicture_setBoundingRect(handle: QPictureH; r: PRect); cdecl; external QtIntf name 'QPicture_setBoundingRect';
|
||||||
procedure QPicture_detach(handle: QPictureH); cdecl; external QtIntf name 'QPicture_detach';
|
procedure QPicture_detach(handle: QPictureH); cdecl; external QtIntf name 'QPicture_detach';
|
||||||
@ -4703,7 +4730,7 @@ procedure QComboBox_setDuplicatesEnabled(handle: QComboBoxH; enable: Boolean); c
|
|||||||
procedure QComboBox_setFrame(handle: QComboBoxH; p1: Boolean); cdecl; external QtIntf name 'QComboBox_setFrame';
|
procedure QComboBox_setFrame(handle: QComboBoxH; p1: Boolean); cdecl; external QtIntf name 'QComboBox_setFrame';
|
||||||
function QComboBox_hasFrame(handle: QComboBoxH): Boolean; cdecl; external QtIntf name 'QComboBox_hasFrame';
|
function QComboBox_hasFrame(handle: QComboBoxH): Boolean; cdecl; external QtIntf name 'QComboBox_hasFrame';
|
||||||
function QComboBox_findText(handle: QComboBoxH; text: PWideString; flags: QtMatchFlags = QtMatchExactly or QtMatchCaseSensitive): Integer; cdecl; external QtIntf name 'QComboBox_findText';
|
function QComboBox_findText(handle: QComboBoxH; text: PWideString; flags: QtMatchFlags = QtMatchExactly or QtMatchCaseSensitive): Integer; cdecl; external QtIntf name 'QComboBox_findText';
|
||||||
function QComboBox_findData(handle: QComboBoxH; data: QVariantH; role: Integer = QtUserRole; flags: QtMatchFlags = QtMatchExactly or QtMatchCaseSensitive): Integer; cdecl; external QtIntf name 'QComboBox_findData';
|
function QComboBox_findData(handle: QComboBoxH; data: QVariantH; role: QtItemDataRole = QtUserRole; flags: QtMatchFlags = QtMatchExactly or QtMatchCaseSensitive): Integer; cdecl; external QtIntf name 'QComboBox_findData';
|
||||||
function QComboBox_insertPolicy(handle: QComboBoxH): QComboBoxInsertPolicy; cdecl; external QtIntf name 'QComboBox_insertPolicy';
|
function QComboBox_insertPolicy(handle: QComboBoxH): QComboBoxInsertPolicy; cdecl; external QtIntf name 'QComboBox_insertPolicy';
|
||||||
procedure QComboBox_setInsertPolicy(handle: QComboBoxH; policy: QComboBoxInsertPolicy); cdecl; external QtIntf name 'QComboBox_setInsertPolicy';
|
procedure QComboBox_setInsertPolicy(handle: QComboBoxH; policy: QComboBoxInsertPolicy); cdecl; external QtIntf name 'QComboBox_setInsertPolicy';
|
||||||
function QComboBox_sizeAdjustPolicy(handle: QComboBoxH): QComboBoxSizeAdjustPolicy; cdecl; external QtIntf name 'QComboBox_sizeAdjustPolicy';
|
function QComboBox_sizeAdjustPolicy(handle: QComboBoxH): QComboBoxSizeAdjustPolicy; cdecl; external QtIntf name 'QComboBox_sizeAdjustPolicy';
|
||||||
@ -4730,7 +4757,7 @@ function QComboBox_currentIndex(handle: QComboBoxH): Integer; cdecl; external Qt
|
|||||||
procedure QComboBox_currentText(handle: QComboBoxH; retval: PWideString); cdecl; external QtIntf name 'QComboBox_currentText';
|
procedure QComboBox_currentText(handle: QComboBoxH; retval: PWideString); cdecl; external QtIntf name 'QComboBox_currentText';
|
||||||
procedure QComboBox_itemText(handle: QComboBoxH; retval: PWideString; index: Integer); cdecl; external QtIntf name 'QComboBox_itemText';
|
procedure QComboBox_itemText(handle: QComboBoxH; retval: PWideString; index: Integer); cdecl; external QtIntf name 'QComboBox_itemText';
|
||||||
procedure QComboBox_itemIcon(handle: QComboBoxH; retval: QIconH; index: Integer); cdecl; external QtIntf name 'QComboBox_itemIcon';
|
procedure QComboBox_itemIcon(handle: QComboBoxH; retval: QIconH; index: Integer); cdecl; external QtIntf name 'QComboBox_itemIcon';
|
||||||
procedure QComboBox_itemData(handle: QComboBoxH; retval: QVariantH; index: Integer; role: Integer = QtUserRole); cdecl; external QtIntf name 'QComboBox_itemData';
|
procedure QComboBox_itemData(handle: QComboBoxH; retval: QVariantH; index: Integer; role: QtItemDataRole = QtUserRole); cdecl; external QtIntf name 'QComboBox_itemData';
|
||||||
procedure QComboBox_addItem(handle: QComboBoxH; text: PWideString; userData: QVariantH = nil); overload; cdecl; external QtIntf name 'QComboBox_addItem';
|
procedure QComboBox_addItem(handle: QComboBoxH; text: PWideString; userData: QVariantH = nil); overload; cdecl; external QtIntf name 'QComboBox_addItem';
|
||||||
procedure QComboBox_addItem(handle: QComboBoxH; icon: QIconH; text: PWideString; userData: QVariantH = nil); overload; cdecl; external QtIntf name 'QComboBox_addItem2';
|
procedure QComboBox_addItem(handle: QComboBoxH; icon: QIconH; text: PWideString; userData: QVariantH = nil); overload; cdecl; external QtIntf name 'QComboBox_addItem2';
|
||||||
procedure QComboBox_addItems(handle: QComboBoxH; texts: QStringListH); cdecl; external QtIntf name 'QComboBox_addItems';
|
procedure QComboBox_addItems(handle: QComboBoxH; texts: QStringListH); cdecl; external QtIntf name 'QComboBox_addItems';
|
||||||
@ -4740,7 +4767,7 @@ procedure QComboBox_insertItems(handle: QComboBoxH; index: Integer; texts: QStri
|
|||||||
procedure QComboBox_removeItem(handle: QComboBoxH; index: Integer); cdecl; external QtIntf name 'QComboBox_removeItem';
|
procedure QComboBox_removeItem(handle: QComboBoxH; index: Integer); cdecl; external QtIntf name 'QComboBox_removeItem';
|
||||||
procedure QComboBox_setItemText(handle: QComboBoxH; index: Integer; text: PWideString); cdecl; external QtIntf name 'QComboBox_setItemText';
|
procedure QComboBox_setItemText(handle: QComboBoxH; index: Integer; text: PWideString); cdecl; external QtIntf name 'QComboBox_setItemText';
|
||||||
procedure QComboBox_setItemIcon(handle: QComboBoxH; index: Integer; icon: QIconH); cdecl; external QtIntf name 'QComboBox_setItemIcon';
|
procedure QComboBox_setItemIcon(handle: QComboBoxH; index: Integer; icon: QIconH); cdecl; external QtIntf name 'QComboBox_setItemIcon';
|
||||||
procedure QComboBox_setItemData(handle: QComboBoxH; index: Integer; value: QVariantH; role: Integer = QtUserRole); cdecl; external QtIntf name 'QComboBox_setItemData';
|
procedure QComboBox_setItemData(handle: QComboBoxH; index: Integer; value: QVariantH; role: QtItemDataRole = QtUserRole); cdecl; external QtIntf name 'QComboBox_setItemData';
|
||||||
function QComboBox_view(handle: QComboBoxH): QAbstractItemViewH; cdecl; external QtIntf name 'QComboBox_view';
|
function QComboBox_view(handle: QComboBoxH): QAbstractItemViewH; cdecl; external QtIntf name 'QComboBox_view';
|
||||||
procedure QComboBox_setView(handle: QComboBoxH; itemView: QAbstractItemViewH); cdecl; external QtIntf name 'QComboBox_setView';
|
procedure QComboBox_setView(handle: QComboBoxH; itemView: QAbstractItemViewH); cdecl; external QtIntf name 'QComboBox_setView';
|
||||||
procedure QComboBox_sizeHint(handle: QComboBoxH; retval: PSize); cdecl; external QtIntf name 'QComboBox_sizeHint';
|
procedure QComboBox_sizeHint(handle: QComboBoxH; retval: PSize); cdecl; external QtIntf name 'QComboBox_sizeHint';
|
||||||
@ -5539,13 +5566,13 @@ procedure QMessageBox_aboutQt(parent: QWidgetH; caption: PWideString = nil); cde
|
|||||||
procedure QMessageBox_sizeHint(handle: QMessageBoxH; retval: PSize); cdecl; external QtIntf name 'QMessageBox_sizeHint';
|
procedure QMessageBox_sizeHint(handle: QMessageBoxH; retval: PSize); cdecl; external QtIntf name 'QMessageBox_sizeHint';
|
||||||
procedure QMessageBox_standardIcon(retval: QPixmapH; icon: QMessageBoxIcon); cdecl; external QtIntf name 'QMessageBox_standardIcon';
|
procedure QMessageBox_standardIcon(retval: QPixmapH; icon: QMessageBoxIcon); cdecl; external QtIntf name 'QMessageBox_standardIcon';
|
||||||
|
|
||||||
procedure QInputDialog_getText(retval: PWideString; parent: QWidgetH; title: PWideString; _label: PWideString; echo: QLineEditEchoMode = QLineEditNormal; text: PWideString = nil; ok: PBoolean = 0; f: QtWindowFlags = 0); cdecl; external QtIntf name 'QInputDialog_getText';
|
procedure QInputDialog_getText(retval: PWideString; parent: QWidgetH; title: PWideString; _label: PWideString; echo: QLineEditEchoMode = QLineEditNormal; text: PWideString = nil; ok: PBoolean = nil; f: QtWindowFlags = 0); cdecl; external QtIntf name 'QInputDialog_getText';
|
||||||
function QInputDialog_getInteger(parent: QWidgetH; title: PWideString; _label: PWideString; value: Integer = 0; minValue: Integer = -2147483647; maxValue: Integer = 2147483647; step: Integer = 1; ok: PBoolean = 0; f: QtWindowFlags = 0): Integer; cdecl; external QtIntf name 'QInputDialog_getInteger';
|
function QInputDialog_getInteger(parent: QWidgetH; title: PWideString; _label: PWideString; value: Integer = 0; minValue: Integer = -2147483647; maxValue: Integer = 2147483647; step: Integer = 1; ok: PBoolean = nil; f: QtWindowFlags = 0): Integer; cdecl; external QtIntf name 'QInputDialog_getInteger';
|
||||||
function QInputDialog_getDouble(parent: QWidgetH; title: PWideString; _label: PWideString; value: Double = 0; minValue: Double = -2147483647; maxValue: Double = 2147483647; decimals: Integer = 1; ok: PBoolean = 0; f: QtWindowFlags = 0): Double; cdecl; external QtIntf name 'QInputDialog_getDouble';
|
function QInputDialog_getDouble(parent: QWidgetH; title: PWideString; _label: PWideString; value: Double = 0; minValue: Double = -2147483647; maxValue: Double = 2147483647; decimals: Integer = 1; ok: PBoolean = nil; f: QtWindowFlags = 0): Double; cdecl; external QtIntf name 'QInputDialog_getDouble';
|
||||||
procedure QInputDialog_getItem(retval: PWideString; parent: QWidgetH; title: PWideString; _label: PWideString; list: QStringListH; current: Integer = 0; editable: Boolean = True; ok: PBoolean = 0; f: QtWindowFlags = 0); cdecl; external QtIntf name 'QInputDialog_getItem';
|
procedure QInputDialog_getItem(retval: PWideString; parent: QWidgetH; title: PWideString; _label: PWideString; list: QStringListH; current: Integer = 0; editable: Boolean = True; ok: PBoolean = nil; f: QtWindowFlags = 0); cdecl; external QtIntf name 'QInputDialog_getItem';
|
||||||
|
|
||||||
procedure QColorDialog_getColor(retval: PQColor; init: PQColor = Qtwhite; parent: QWidgetH = nil); cdecl; external QtIntf name 'QColorDialog_getColor';
|
procedure QColorDialog_getColor(retval: PQColor; init: PQColor; parent: QWidgetH = nil); cdecl; external QtIntf name 'QColorDialog_getColor';
|
||||||
function QColorDialog_getRgba(p1: QRgb; ok: PBoolean = 0; parent: QWidgetH = nil): QRgb; cdecl; external QtIntf name 'QColorDialog_getRgba';
|
function QColorDialog_getRgba(p1: QRgb; ok: PBoolean = nil; parent: QWidgetH = nil): QRgb; cdecl; external QtIntf name 'QColorDialog_getRgba';
|
||||||
function QColorDialog_customCount(): Integer; cdecl; external QtIntf name 'QColorDialog_customCount';
|
function QColorDialog_customCount(): Integer; cdecl; external QtIntf name 'QColorDialog_customCount';
|
||||||
function QColorDialog_customColor(p1: Integer): QRgb; cdecl; external QtIntf name 'QColorDialog_customColor';
|
function QColorDialog_customColor(p1: Integer): QRgb; cdecl; external QtIntf name 'QColorDialog_customColor';
|
||||||
procedure QColorDialog_setCustomColor(p1: Integer; p2: QRgb); cdecl; external QtIntf name 'QColorDialog_setCustomColor';
|
procedure QColorDialog_setCustomColor(p1: Integer; p2: QRgb); cdecl; external QtIntf name 'QColorDialog_setCustomColor';
|
||||||
|
@ -49,6 +49,7 @@ type
|
|||||||
TQtWidgetSet = Class(TWidgetSet)
|
TQtWidgetSet = Class(TWidgetSet)
|
||||||
private
|
private
|
||||||
App: QApplicationH;
|
App: QApplicationH;
|
||||||
|
SavedDCList: TList;
|
||||||
public
|
public
|
||||||
// Application
|
// Application
|
||||||
procedure AppInit(var ScreenInfo: TScreenInfo); override;
|
procedure AppInit(var ScreenInfo: TScreenInfo); override;
|
||||||
@ -151,6 +152,39 @@ const
|
|||||||
KEYMAP_TOGGLE = $20000;
|
KEYMAP_TOGGLE = $20000;
|
||||||
KEYMAP_EXTENDED = $40000;
|
KEYMAP_EXTENDED = $40000;
|
||||||
|
|
||||||
|
|
||||||
|
function QtObjectFromWidgetH(const WidgetH: QWidgetH): TQtWidget;
|
||||||
|
var
|
||||||
|
V: QVariantH;
|
||||||
|
Ok: Boolean;
|
||||||
|
QtWg: TQtWidget;
|
||||||
|
begin
|
||||||
|
Result:=nil;
|
||||||
|
V := QVariant_Create();
|
||||||
|
try
|
||||||
|
QObject_property(QObjectH(WidgetH), V, 'lclwidget');
|
||||||
|
if not QVariant_IsNull(v) and QVariant_isValid(V) then
|
||||||
|
begin
|
||||||
|
//Write('Got a valid variant .. ');
|
||||||
|
QtWg:=TQtWidget(QVariant_toUint(V, @Ok));
|
||||||
|
if OK then
|
||||||
|
begin
|
||||||
|
//Write('Converted successfully, Control=');
|
||||||
|
if QtWg<>nil then
|
||||||
|
begin
|
||||||
|
Result := QtWg;
|
||||||
|
//WriteLn(Result.LCLObject.Name);
|
||||||
|
end else
|
||||||
|
;//WriteLn('nil');
|
||||||
|
end else
|
||||||
|
;//WriteLn('Can''t convert to UINT');
|
||||||
|
end else
|
||||||
|
;//Writeln('GetFocus: Variant is NULL or INVALID');
|
||||||
|
finally
|
||||||
|
QVariant_Destroy(V);
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
procedure EventTrace(message: string; data: pointer);
|
procedure EventTrace(message: string; data: pointer);
|
||||||
begin
|
begin
|
||||||
|
|
||||||
|
@ -38,9 +38,14 @@ end;
|
|||||||
------------------------------------------------------------------------------}
|
------------------------------------------------------------------------------}
|
||||||
destructor TQtWidgetSet.Destroy;
|
destructor TQtWidgetSet.Destroy;
|
||||||
begin
|
begin
|
||||||
|
|
||||||
QtWidgetSet := nil;
|
QtWidgetSet := nil;
|
||||||
|
|
||||||
|
if SavedDCList<>nil then
|
||||||
|
SavedDCList.Free;
|
||||||
|
|
||||||
inherited Destroy;
|
inherited Destroy;
|
||||||
|
|
||||||
end;
|
end;
|
||||||
|
|
||||||
{------------------------------------------------------------------------------
|
{------------------------------------------------------------------------------
|
||||||
@ -162,6 +167,7 @@ begin
|
|||||||
begin
|
begin
|
||||||
Result := TColor(QImage_pixel(TQtDeviceContext(CanvasHandle).vImage, X, Y));
|
Result := TColor(QImage_pixel(TQtDeviceContext(CanvasHandle).vImage, X, Y));
|
||||||
|
|
||||||
|
|
||||||
{ Color := QColor_create(QImage_pixel(TQtDeviceContext(CanvasHandle).vImage, X, Y));
|
{ Color := QColor_create(QImage_pixel(TQtDeviceContext(CanvasHandle).vImage, X, Y));
|
||||||
|
|
||||||
Result := RGBToColor(QColor_red(Color), QColor_green(Color), QColor_blue(Color));
|
Result := RGBToColor(QColor_red(Color), QColor_green(Color), QColor_blue(Color));
|
||||||
@ -170,9 +176,37 @@ begin
|
|||||||
end;
|
end;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TQtWidgetSet.DCSetPixel(CanvasHandle: HDC; X, Y: integer; AColor: TGraphicsColor);
|
procedure dbgcolor(msg: string; C:TQColor);
|
||||||
begin
|
begin
|
||||||
|
debugLn(msg+' spec=%x alpha=%x r=%x g=%x b=%x pad=%x',[c.ColorSpec,c.Alpha,c.r,c.g,c.b,c.pad]);
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TQtWidgetSet.DCSetPixel(CanvasHandle: HDC; X, Y: integer; AColor: TGraphicsColor);
|
||||||
|
var
|
||||||
|
Color: TQColor;
|
||||||
|
Pen, APen: QPenH;
|
||||||
|
Painter: QPainterH;
|
||||||
|
begin
|
||||||
|
if IsValidDC(CanvasHandle) then
|
||||||
|
begin
|
||||||
|
//WriteLn('TQtWidgetSet.DCSetPixel X=',X,' Y=',Y, ' AColor=',dbghex(AColor));
|
||||||
|
|
||||||
|
//TODO: First compare color if same, draw point with current pen
|
||||||
|
|
||||||
|
Painter :=TQtDeviceContext(CanvasHandle).Widget;
|
||||||
|
Pen := QPainter_Pen(Painter);
|
||||||
|
APen := QPen_Create(Pen);
|
||||||
|
|
||||||
|
QPen_color(APen,@Color);
|
||||||
|
ColorRefToTQColor(AColor, Color);
|
||||||
|
QPen_setColor(Apen, @Color);
|
||||||
|
|
||||||
|
Qpainter_SetPen(Painter, APen);
|
||||||
|
QPainter_DrawPoint(Painter, X,Y);
|
||||||
|
QPainter_SetPen(Painter, Pen);
|
||||||
|
|
||||||
|
QPen_Destroy(APen);
|
||||||
|
end;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TQtWidgetSet.DCRedraw(CanvasHandle: HDC);
|
procedure TQtWidgetSet.DCRedraw(CanvasHandle: HDC);
|
||||||
@ -232,7 +266,8 @@ begin
|
|||||||
|
|
||||||
if aObject is TObject then
|
if aObject is TObject then
|
||||||
begin
|
begin
|
||||||
Result := (aObject is TQtFont) or (aObject is TQtBrush) or (aObject is TQtImage);
|
Result := (aObject is TQtFont) or (aObject is TQtBrush) or (aObject is TQtImage)
|
||||||
|
or (aObject is TQtPen) or (aObject is TQTRegion);
|
||||||
end;
|
end;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
|
@ -31,9 +31,17 @@ uses
|
|||||||
// Free Pascal
|
// Free Pascal
|
||||||
Classes, SysUtils, Types,
|
Classes, SysUtils, Types,
|
||||||
// LCL
|
// LCL
|
||||||
LCLType, Menus, LCLProc;
|
LCLType, Menus, LCLProc, Graphics;
|
||||||
|
|
||||||
type
|
type
|
||||||
|
|
||||||
|
{ TQtResource }
|
||||||
|
|
||||||
|
TQtResource = class(TObject)
|
||||||
|
public
|
||||||
|
Owner: TObject;
|
||||||
|
end;
|
||||||
|
|
||||||
{ TQtAction }
|
{ TQtAction }
|
||||||
|
|
||||||
TQtAction = class(TObject)
|
TQtAction = class(TObject)
|
||||||
@ -70,7 +78,7 @@ type
|
|||||||
|
|
||||||
{ TQtFont }
|
{ TQtFont }
|
||||||
|
|
||||||
TQtFont = class(TObject)
|
TQtFont = class(TQtResource)
|
||||||
private
|
private
|
||||||
public
|
public
|
||||||
Widget: QFontH;
|
Widget: QFontH;
|
||||||
@ -116,11 +124,10 @@ type
|
|||||||
|
|
||||||
{ TQtBrush }
|
{ TQtBrush }
|
||||||
|
|
||||||
TQtBrush = class(TObject)
|
TQtBrush = class(TQtResource)
|
||||||
private
|
private
|
||||||
public
|
public
|
||||||
Widget: QBrushH;
|
Widget: QBrushH;
|
||||||
public
|
|
||||||
constructor Create(CreateHandle: Boolean); virtual;
|
constructor Create(CreateHandle: Boolean); virtual;
|
||||||
destructor Destroy; override;
|
destructor Destroy; override;
|
||||||
procedure setStyle(style: QtBrushStyle);
|
procedure setStyle(style: QtBrushStyle);
|
||||||
@ -128,13 +135,13 @@ type
|
|||||||
|
|
||||||
{ TQtPen }
|
{ TQtPen }
|
||||||
|
|
||||||
TQtPen = class(TObject)
|
TQtPen = class(TQtResource)
|
||||||
private
|
private
|
||||||
public
|
public
|
||||||
Widget: QPenH;
|
Widget: QPenH;
|
||||||
public
|
|
||||||
constructor Create(CreateHandle: Boolean); virtual;
|
constructor Create(CreateHandle: Boolean); virtual;
|
||||||
destructor Destroy; override;
|
destructor Destroy; override;
|
||||||
|
public
|
||||||
function Width: Integer;
|
function Width: Integer;
|
||||||
function Style: QtPenStyle;
|
function Style: QtPenStyle;
|
||||||
procedure setStyle(style: QtPenStyle);
|
procedure setStyle(style: QtPenStyle);
|
||||||
@ -146,37 +153,57 @@ type
|
|||||||
|
|
||||||
{ TQtRegion }
|
{ TQtRegion }
|
||||||
|
|
||||||
TQtRegion = class(TObject)
|
TQtRegion = class(TQtResource)
|
||||||
private
|
private
|
||||||
public
|
public
|
||||||
Widget: QRegionH;
|
Widget: QRegionH;
|
||||||
public
|
|
||||||
constructor Create(CreateHandle: Boolean); virtual; overload;
|
constructor Create(CreateHandle: Boolean); virtual; overload;
|
||||||
constructor Create(CreateHandle: Boolean; X1,Y1,X2,Y2: Integer); virtual; overload;
|
constructor Create(CreateHandle: Boolean; X1,Y1,X2,Y2: Integer); virtual; overload;
|
||||||
destructor Destroy; override;
|
destructor Destroy; override;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
|
// NOTE: PQtDCData was a pointer to a structure with QPainter information
|
||||||
|
// about current state, currently this functionality is implemented
|
||||||
|
// using native functions qpainter_save and qpainter_restore. If in
|
||||||
|
// future it needs to save/restore aditional information, PQtDCData
|
||||||
|
// should point to a structure holding the additional information.
|
||||||
|
// see SaveDC and RestoreDC for more information.
|
||||||
|
// for example: what about textcolor, it's currently not saved....
|
||||||
|
PQtDCData = pointer;
|
||||||
|
|
||||||
{ TQtDeviceContext }
|
{ TQtDeviceContext }
|
||||||
|
|
||||||
TQtDeviceContext = class(TObject)
|
TQtDeviceContext = class(TObject)
|
||||||
private
|
private
|
||||||
|
SelFont: TQTFont;
|
||||||
|
SelBrush: TQTBrush;
|
||||||
|
SelPen: TQtPen;
|
||||||
|
PenColor: TQColor;
|
||||||
|
procedure RestorePenColor;
|
||||||
|
procedure RestoreTextColor;
|
||||||
public
|
public
|
||||||
Widget: QPainterH;
|
Widget: QPainterH;
|
||||||
Parent: QWidgetH;
|
Parent: QWidgetH;
|
||||||
Origin: TPoint;
|
ParentPixmap: QPixmapH;
|
||||||
vBrush: TQtBrush;
|
vBrush: TQtBrush;
|
||||||
vFont: TQtFont;
|
vFont: TQtFont;
|
||||||
vImage: QImageH;
|
vImage: QImageH;
|
||||||
vPen: TQtPen;
|
vPen: TQtPen;
|
||||||
vRegion: TQtRegion;
|
vRegion: TQtRegion;
|
||||||
public
|
vBackgroundBrush: TQtBrush;
|
||||||
|
vClipRect: PRect; // is the cliprect paint event give to us
|
||||||
|
vClipRectDirty: boolean; // false=paint cliprect is still valid
|
||||||
|
vTextColor: TColor;
|
||||||
constructor Create(WidgetHandle: THandle); virtual;
|
constructor Create(WidgetHandle: THandle); virtual;
|
||||||
destructor Destroy; override;
|
destructor Destroy; override;
|
||||||
public
|
public
|
||||||
|
function CreateDCData: PQtDCDATA;
|
||||||
|
function RestoreDCData(DCData: PQtDCData): boolean;
|
||||||
|
procedure DebugClipRect(const msg: string);
|
||||||
procedure drawPoint(x1: Integer; y1: Integer);
|
procedure drawPoint(x1: Integer; y1: Integer);
|
||||||
procedure drawRect(x1: Integer; y1: Integer; w: Integer; h: Integer);
|
procedure drawRect(x1: Integer; y1: Integer; w: Integer; h: Integer);
|
||||||
procedure drawText(x: Integer; y: Integer; s: PWideString);
|
procedure drawText(x: Integer; y: Integer; s: PWideString); overload;
|
||||||
|
procedure DrawText(x,y,w,h,flags: Integer; s:PWideString); overload;
|
||||||
procedure drawLine(x1: Integer; y1: Integer; x2: Integer; y2: Integer);
|
procedure drawLine(x1: Integer; y1: Integer; x2: Integer; y2: Integer);
|
||||||
procedure drawEllipse(x: Integer; y: Integer; w: Integer; h: Integer);
|
procedure drawEllipse(x: Integer; y: Integer; w: Integer; h: Integer);
|
||||||
procedure setBrushOrigin(x, y: Integer);
|
procedure setBrushOrigin(x, y: Integer);
|
||||||
@ -185,8 +212,11 @@ type
|
|||||||
procedure setFont(f: TQtFont);
|
procedure setFont(f: TQtFont);
|
||||||
function brush: TQtBrush;
|
function brush: TQtBrush;
|
||||||
procedure setBrush(brush: TQtBrush);
|
procedure setBrush(brush: TQtBrush);
|
||||||
|
function BackgroundBrush: TQtBrush;
|
||||||
function pen: TQtPen;
|
function pen: TQtPen;
|
||||||
procedure setPen(pen: TQtPen);
|
procedure setPen(pen: TQtPen);
|
||||||
|
function SetBkColor(Color: TcolorRef): TColorRef;
|
||||||
|
function SetBkMode(BkMode: Integer): Integer;
|
||||||
function region: TQtRegion;
|
function region: TQtRegion;
|
||||||
procedure setRegion(region: TQtRegion);
|
procedure setRegion(region: TQtRegion);
|
||||||
procedure drawImage(targetRect: PRect; image: QImageH; sourceRect: PRect; flags: QtImageConversionFlags = QtAutoColor);
|
procedure drawImage(targetRect: PRect; image: QImageH; sourceRect: PRect; flags: QtImageConversionFlags = QtAutoColor);
|
||||||
@ -209,6 +239,10 @@ type
|
|||||||
procedure grabWindow(p1: Cardinal; x: Integer = 0; y: Integer = 0; w: Integer = -1; h: Integer = -1);
|
procedure grabWindow(p1: Cardinal; x: Integer = 0; y: Integer = 0; w: Integer = -1; h: Integer = -1);
|
||||||
procedure toImage(retval: QImageH);
|
procedure toImage(retval: QImageH);
|
||||||
end;
|
end;
|
||||||
|
|
||||||
|
procedure TQColorToColorRef(const AColor: TQColor; out AColorRef: TColorRef);
|
||||||
|
procedure ColorRefToTQColor(const AColorRef: TColorRef; var AColor:TQColor);
|
||||||
|
procedure DebugRegion(const msg: string; Rgn: QRegionH);
|
||||||
|
|
||||||
implementation
|
implementation
|
||||||
|
|
||||||
@ -684,9 +718,66 @@ begin
|
|||||||
inherited Destroy;
|
inherited Destroy;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
|
|
||||||
{ TQtDeviceContext }
|
{ TQtDeviceContext }
|
||||||
|
|
||||||
|
procedure TQtDeviceContext.DebugClipRect(const msg: string);
|
||||||
|
var
|
||||||
|
Rgn: QRegionH;
|
||||||
|
R: TRect;
|
||||||
|
ok: boolean;
|
||||||
|
begin
|
||||||
|
ok := QPainter_hasClipping(Widget);
|
||||||
|
Write(Msg, 'DC: HasClipping=', ok);
|
||||||
|
if Ok then
|
||||||
|
begin
|
||||||
|
Rgn := QRegion_Create;
|
||||||
|
QPainter_ClipRegion(Widget, Rgn);
|
||||||
|
DebugRegion('', Rgn);
|
||||||
|
QRegion_Destroy(Rgn);
|
||||||
|
end else
|
||||||
|
WriteLn;
|
||||||
|
end;
|
||||||
|
|
||||||
|
|
||||||
|
{------------------------------------------------------------------------------
|
||||||
|
Function: TQtDeviceContext.Create
|
||||||
|
Params: None
|
||||||
|
Returns: Nothing
|
||||||
|
------------------------------------------------------------------------------}
|
||||||
|
function TQtDeviceContext.CreateDCData: PQtDCDATA;
|
||||||
|
begin
|
||||||
|
Qpainter_save(Widget);
|
||||||
|
result:=nil; // doesn't matter;
|
||||||
|
end;
|
||||||
|
|
||||||
|
{------------------------------------------------------------------------------
|
||||||
|
Function: TQtDeviceContext.RestoreDCData
|
||||||
|
Params: DCData, dummy in current implementation
|
||||||
|
Returns: true if QPainter state was successfuly restored
|
||||||
|
------------------------------------------------------------------------------}
|
||||||
|
function TQtDeviceContext.RestoreDCData(DCData: PQtDCData):boolean;
|
||||||
|
begin
|
||||||
|
QPainter_restore(Widget);
|
||||||
|
result:=true;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TQtDeviceContext.RestorePenColor;
|
||||||
|
begin
|
||||||
|
Qpainter_setPen(Widget, @PenColor);
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TQtDeviceContext.RestoreTextColor;
|
||||||
|
var
|
||||||
|
CurPen: QPenH;
|
||||||
|
TxtColor: TQColor;
|
||||||
|
begin
|
||||||
|
CurPen := QPainter_Pen(Widget);
|
||||||
|
QPen_color(CurPen, @PenColor);
|
||||||
|
TxtColor := PenColor;
|
||||||
|
ColorRefToTQColor(vTextColor, TxtColor);
|
||||||
|
Qpainter_setPen(Widget, @txtColor);
|
||||||
|
end;
|
||||||
|
|
||||||
{------------------------------------------------------------------------------
|
{------------------------------------------------------------------------------
|
||||||
Function: TQtDeviceContext.Create
|
Function: TQtDeviceContext.Create
|
||||||
Params: None
|
Params: None
|
||||||
@ -700,19 +791,26 @@ begin
|
|||||||
|
|
||||||
if WidgetHandle = 0 then
|
if WidgetHandle = 0 then
|
||||||
begin
|
begin
|
||||||
Parent := nil;
|
ParentPixmap := QPixmap_Create(10,10);
|
||||||
Widget := QPainter_create
|
Widget := QPainter_Create(QPaintDeviceH(ParentPixmap));
|
||||||
end
|
end
|
||||||
else
|
else
|
||||||
begin
|
begin
|
||||||
Parent := TQtMainWindow(WidgetHandle).Widget;
|
Parent := TQtWidget(WidgetHandle).Widget;
|
||||||
Widget := QPainter_create(QWidget_to_QPaintDevice(Parent));
|
Widget := QPainter_create(QWidget_to_QPaintDevice(Parent));
|
||||||
end;
|
end;
|
||||||
|
|
||||||
vBrush := TQtBrush.Create(False);
|
vBrush := TQtBrush.Create(False);
|
||||||
|
vBrush.Owner := Self;
|
||||||
vFont := TQtFont.Create(False);
|
vFont := TQtFont.Create(False);
|
||||||
|
vFont.Owner := Self;;
|
||||||
vPen := TQtPen.Create(False);
|
vPen := TQtPen.Create(False);
|
||||||
|
vPen.Owner := Self;
|
||||||
vRegion := TQtRegion.Create(False);
|
vRegion := TQtRegion.Create(False);
|
||||||
|
vRegion.Owner := Self;
|
||||||
|
vBackgroundBrush := TQtBrush.Create(False);
|
||||||
|
vBackgroundBrush.Owner := Self;
|
||||||
|
vTextColor := ColorToRGB(clWindowText);
|
||||||
end;
|
end;
|
||||||
|
|
||||||
{------------------------------------------------------------------------------
|
{------------------------------------------------------------------------------
|
||||||
@ -726,6 +824,9 @@ begin
|
|||||||
WriteLn('TQtDeviceContext.Destroy');
|
WriteLn('TQtDeviceContext.Destroy');
|
||||||
{$endif}
|
{$endif}
|
||||||
|
|
||||||
|
if vClipRect<>nil then
|
||||||
|
dispose(vClipRect);
|
||||||
|
|
||||||
vBrush.Widget := nil;
|
vBrush.Widget := nil;
|
||||||
vBrush.Free;
|
vBrush.Free;
|
||||||
vFont.Widget := nil;
|
vFont.Widget := nil;
|
||||||
@ -734,11 +835,16 @@ begin
|
|||||||
vPen.Free;
|
vPen.Free;
|
||||||
vRegion.Widget := nil;
|
vRegion.Widget := nil;
|
||||||
vRegion.Free;
|
vRegion.Free;
|
||||||
|
vBackgroundBrush.Widget := nil;
|
||||||
|
vBackgroundBrush.Free;
|
||||||
|
|
||||||
if vImage <> nil then QImage_destroy(vImage);
|
if vImage <> nil then QImage_destroy(vImage);
|
||||||
|
|
||||||
QPainter_destroy(Widget);
|
QPainter_destroy(Widget);
|
||||||
|
|
||||||
|
if ParentPixmap<>nil then
|
||||||
|
QPixmap_destroy(ParentPixmap);
|
||||||
|
|
||||||
inherited Destroy;
|
inherited Destroy;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
@ -772,29 +878,43 @@ var
|
|||||||
QtFontMetrics: TQtFontMetrics;
|
QtFontMetrics: TQtFontMetrics;
|
||||||
begin
|
begin
|
||||||
{$ifdef VerboseQt}
|
{$ifdef VerboseQt}
|
||||||
Write('TQtDeviceContext.drawText TargetX: ', (Origin.X + X), ' TargetY: ', (Origin.Y + Y));
|
Write('TQtDeviceContext.drawText TargetX: ', X, ' TargetY: ', Y);
|
||||||
{$endif}
|
{$endif}
|
||||||
|
|
||||||
QtFontMetrics := TQtFontMetrics.Create(Font.Widget);
|
QtFontMetrics := TQtFontMetrics.Create(Font.Widget);
|
||||||
try
|
try
|
||||||
|
|
||||||
Save;
|
Save;
|
||||||
|
|
||||||
translate(Origin.X + x, Origin.Y + y + QtFontMetrics.height);
|
translate(x, y);
|
||||||
|
|
||||||
Rotate(-0.1 * vFont.Angle);
|
Rotate(-0.1 * vFont.Angle);
|
||||||
|
|
||||||
QPainter_drawText(Widget, 0, 0, s);
|
RestoreTextColor;
|
||||||
|
|
||||||
|
QPainter_drawText(Widget, 0, QtFontMetrics.ascent, s);
|
||||||
|
|
||||||
|
RestorePenColor;
|
||||||
|
|
||||||
Restore;
|
Restore;
|
||||||
|
|
||||||
{$ifdef VerboseQt}
|
{$ifdef VerboseQt}
|
||||||
WriteLn(' Font metrics height: ', QtFontMetrics.height, ' Angle: ', Round(0.1 * vFont.Angle));
|
WriteLn(' Font metrics height: ', QtFontMetrics.height, ' Angle: ',
|
||||||
|
Round(0.1 * vFont.Angle));
|
||||||
{$endif}
|
{$endif}
|
||||||
finally
|
finally
|
||||||
QtFontMetrics.Free;
|
QtFontMetrics.Free;
|
||||||
end;
|
end;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
|
procedure TQtDeviceContext.DrawText(x, y, w, h, flags: Integer; s: PWideString);
|
||||||
|
begin
|
||||||
|
RestoreTextColor;
|
||||||
|
|
||||||
|
QPainter_DrawText(Widget, x, y, w, h, Flags, s);
|
||||||
|
|
||||||
|
RestorePenColor;
|
||||||
|
end;
|
||||||
|
|
||||||
{------------------------------------------------------------------------------
|
{------------------------------------------------------------------------------
|
||||||
Function: TQtDeviceContext.drawLine
|
Function: TQtDeviceContext.drawLine
|
||||||
Params: None
|
Params: None
|
||||||
@ -859,8 +979,10 @@ end;
|
|||||||
function TQtDeviceContext.font: TQtFont;
|
function TQtDeviceContext.font: TQtFont;
|
||||||
begin
|
begin
|
||||||
vFont.Widget := QPainter_font(Widget);
|
vFont.Widget := QPainter_font(Widget);
|
||||||
|
if SelFont=nil then
|
||||||
Result := vFont;
|
Result := vFont
|
||||||
|
else
|
||||||
|
Result := SelFont;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
{------------------------------------------------------------------------------
|
{------------------------------------------------------------------------------
|
||||||
@ -870,10 +992,10 @@ end;
|
|||||||
------------------------------------------------------------------------------}
|
------------------------------------------------------------------------------}
|
||||||
procedure TQtDeviceContext.setFont(f: TQtFont);
|
procedure TQtDeviceContext.setFont(f: TQtFont);
|
||||||
begin
|
begin
|
||||||
if (f.Widget <> nil) and (Widget <> nil) and (Parent <> nil) then
|
SelFont := F;
|
||||||
|
if (f.Widget <> nil) and (Widget <> nil) {and (Parent <> nil)} then
|
||||||
begin
|
begin
|
||||||
QPainter_setFont(Widget, QFontH(f.Widget));
|
QPainter_setFont(Widget, QFontH(f.Widget));
|
||||||
|
|
||||||
vFont.Angle := f.Angle;
|
vFont.Angle := f.Angle;
|
||||||
end;
|
end;
|
||||||
end;
|
end;
|
||||||
@ -886,8 +1008,10 @@ end;
|
|||||||
function TQtDeviceContext.brush: TQtBrush;
|
function TQtDeviceContext.brush: TQtBrush;
|
||||||
begin
|
begin
|
||||||
vBrush.Widget := QPainter_brush(Widget);
|
vBrush.Widget := QPainter_brush(Widget);
|
||||||
|
if SelBrush=nil then
|
||||||
Result := vBrush;
|
Result := vBrush
|
||||||
|
else
|
||||||
|
Result := SelBrush;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
{------------------------------------------------------------------------------
|
{------------------------------------------------------------------------------
|
||||||
@ -897,7 +1021,15 @@ end;
|
|||||||
------------------------------------------------------------------------------}
|
------------------------------------------------------------------------------}
|
||||||
procedure TQtDeviceContext.setBrush(brush: TQtBrush);
|
procedure TQtDeviceContext.setBrush(brush: TQtBrush);
|
||||||
begin
|
begin
|
||||||
if (brush.Widget <> nil) and (Widget <> nil) then QPainter_setBrush(Widget, brush.Widget);
|
SelBrush := Brush;
|
||||||
|
if (brush.Widget <> nil) and (Widget <> nil) then
|
||||||
|
QPainter_setBrush(Widget, brush.Widget);
|
||||||
|
end;
|
||||||
|
|
||||||
|
function TQtDeviceContext.BackgroundBrush: TQtBrush;
|
||||||
|
begin
|
||||||
|
vBackgroundBrush.Widget := QPainter_background(Widget);
|
||||||
|
result := vBackGroundBrush;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
{------------------------------------------------------------------------------
|
{------------------------------------------------------------------------------
|
||||||
@ -908,7 +1040,10 @@ end;
|
|||||||
function TQtDeviceContext.pen: TQtPen;
|
function TQtDeviceContext.pen: TQtPen;
|
||||||
begin
|
begin
|
||||||
vPen.Widget := QPainter_pen(Widget);
|
vPen.Widget := QPainter_pen(Widget);
|
||||||
Result := vPen;
|
if SelPen=nil then
|
||||||
|
Result := vPen
|
||||||
|
else
|
||||||
|
Result := SelPen;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
{------------------------------------------------------------------------------
|
{------------------------------------------------------------------------------
|
||||||
@ -918,7 +1053,69 @@ end;
|
|||||||
------------------------------------------------------------------------------}
|
------------------------------------------------------------------------------}
|
||||||
procedure TQtDeviceContext.setPen(pen: TQtPen);
|
procedure TQtDeviceContext.setPen(pen: TQtPen);
|
||||||
begin
|
begin
|
||||||
if (pen.Widget <> nil) and (Widget <> nil) then QPainter_setPen(Widget, pen.Widget);
|
SelPen := Pen;
|
||||||
|
if (pen.Widget <> nil) and (Widget <> nil) then
|
||||||
|
QPainter_setPen(Widget, pen.Widget);
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TQColorToColorRef(const AColor: TQColor; out AColorRef: TColorRef);
|
||||||
|
begin
|
||||||
|
AColorRef:=(( AColor.r shr 8) and $FF)
|
||||||
|
or (AColor.g and $ff00)
|
||||||
|
or ((AColor.b shl 8) and $ff0000);
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure ColorRefToTQColor(const AColorRef: TColorRef; var AColor:TQColor);
|
||||||
|
begin
|
||||||
|
AColor.r:=(AColorRef and $ff);
|
||||||
|
AColor.r:=AColor.r+(AColor.r shl 8);
|
||||||
|
AColor.g:=(AColorRef and $ff00);
|
||||||
|
AColor.g:=AColor.g+(AColor.g shr 8);
|
||||||
|
AColor.b:=(AColorRef and $ff0000) shr 8;
|
||||||
|
AColor.b:=AColor.b+(AColor.b shr 8);
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure DebugRegion(const msg: string; Rgn: QRegionH);
|
||||||
|
var
|
||||||
|
R: TRect;
|
||||||
|
ok: boolean;
|
||||||
|
begin
|
||||||
|
Write(Msg);
|
||||||
|
ok := QRegion_isEmpty(Rgn);
|
||||||
|
QRegion_BoundingRect(Rgn, @R);
|
||||||
|
WriteLn(' Empty=',Ok,' Rect=', dbgs(R));
|
||||||
|
end;
|
||||||
|
|
||||||
|
function TQtDeviceContext.SetBkColor(Color: TcolorRef): TColorRef;
|
||||||
|
var
|
||||||
|
ABrush: QBrushH;
|
||||||
|
NColor: TQColor;
|
||||||
|
begin
|
||||||
|
result := CLR_INVALID;
|
||||||
|
ABrush := BackgroundBrush.Widget;
|
||||||
|
if ABrush<>nil then
|
||||||
|
begin
|
||||||
|
NColor := QBrush_Color(aBrush)^;
|
||||||
|
TQColorToColorRef(NColor, Result);
|
||||||
|
ColorRefToTQColor(ColorToRGB(Color), NColor);
|
||||||
|
QBrush_setColor(ABrush, @NColor);
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
|
function TQtDeviceContext.SetBkMode(BkMode: Integer): Integer;
|
||||||
|
var
|
||||||
|
Mode: QtBGMode;
|
||||||
|
begin
|
||||||
|
result := 0;
|
||||||
|
if Widget<>nil then
|
||||||
|
begin
|
||||||
|
Mode := QPainter_BackgroundMode(Widget);
|
||||||
|
if Mode=QtOpaqueMode then result := OPAQUE
|
||||||
|
else result := TRANSPARENT;
|
||||||
|
if BkMode=OPAQUE then Mode := QtOpaqueMode
|
||||||
|
else Mode := QtTransparentMode;
|
||||||
|
QPainter_SetBackgroundMode(Widget, Mode);
|
||||||
|
end;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
{------------------------------------------------------------------------------
|
{------------------------------------------------------------------------------
|
||||||
@ -928,6 +1125,9 @@ end;
|
|||||||
------------------------------------------------------------------------------}
|
------------------------------------------------------------------------------}
|
||||||
function TQtDeviceContext.region: TQtRegion;
|
function TQtDeviceContext.region: TQtRegion;
|
||||||
begin
|
begin
|
||||||
|
if vRegion.Widget=nil then
|
||||||
|
vRegion.Widget := QRegion_Create();
|
||||||
|
|
||||||
QPainter_clipRegion(Widget, vRegion.Widget);
|
QPainter_clipRegion(Widget, vRegion.Widget);
|
||||||
Result := vRegion;
|
Result := vRegion;
|
||||||
end;
|
end;
|
||||||
@ -939,7 +1139,8 @@ end;
|
|||||||
------------------------------------------------------------------------------}
|
------------------------------------------------------------------------------}
|
||||||
procedure TQtDeviceContext.setRegion(region: TQtRegion);
|
procedure TQtDeviceContext.setRegion(region: TQtRegion);
|
||||||
begin
|
begin
|
||||||
if (region.Widget <> nil) and (Widget <> nil) then QPainter_setClipRegion(Widget, Region.Widget);
|
if (region.Widget <> nil) and (Widget <> nil) then
|
||||||
|
QPainter_setClipRegion(Widget, Region.Widget);
|
||||||
end;
|
end;
|
||||||
|
|
||||||
{------------------------------------------------------------------------------
|
{------------------------------------------------------------------------------
|
||||||
@ -953,11 +1154,6 @@ var
|
|||||||
LocalRect: TRect;
|
LocalRect: TRect;
|
||||||
begin
|
begin
|
||||||
LocalRect := targetRect^;
|
LocalRect := targetRect^;
|
||||||
|
|
||||||
LocalRect.Left := LocalRect.Left + Origin.X;
|
|
||||||
|
|
||||||
LocalRect.Top := LocalRect.Top + Origin.Y;
|
|
||||||
|
|
||||||
QPainter_drawImage(Widget, PRect(@LocalRect), image, sourceRect, flags);
|
QPainter_drawImage(Widget, PRect(@LocalRect), image, sourceRect, flags);
|
||||||
end;
|
end;
|
||||||
|
|
||||||
|
File diff suppressed because it is too large
Load Diff
@ -39,6 +39,9 @@
|
|||||||
- Once on every OnPaint event
|
- Once on every OnPaint event
|
||||||
------------------------------------------------------------------------------}
|
------------------------------------------------------------------------------}
|
||||||
function TQtWidgetSet.BeginPaint(Handle: hWnd; Var PS : TPaintStruct): hdc;
|
function TQtWidgetSet.BeginPaint(Handle: hWnd; Var PS : TPaintStruct): hdc;
|
||||||
|
var
|
||||||
|
Widget: TQtWidget;
|
||||||
|
DC: TQtDeviceContext;
|
||||||
begin
|
begin
|
||||||
{$ifdef VerboseQtWinAPI}
|
{$ifdef VerboseQtWinAPI}
|
||||||
WriteLn('Trace:> [WinAPI BeginPaint] Handle=', dbgs(Handle));
|
WriteLn('Trace:> [WinAPI BeginPaint] Handle=', dbgs(Handle));
|
||||||
@ -48,9 +51,31 @@ begin
|
|||||||
Result :=GetDoubleBufferedDC(Handle)
|
Result :=GetDoubleBufferedDC(Handle)
|
||||||
else}
|
else}
|
||||||
|
|
||||||
PS.hdc := HDC(TQtDeviceContext.Create(Handle));
|
DC := TQtDeviceContext.Create(Handle);
|
||||||
|
PS.hdc := HDC(DC);
|
||||||
if Handle <> 0 then TQtMainWindow(Handle).Canvas := TQtDeviceContext(PS.hdc);
|
|
||||||
|
if Handle<>0 then
|
||||||
|
begin
|
||||||
|
// if current handle has paintdata information,
|
||||||
|
// setup hdc with it
|
||||||
|
//DC.DebugClipRect('BeginPaint: Before');
|
||||||
|
Widget := TQtWidget(Handle);
|
||||||
|
if Widget.PaintData.ClipRegion<>nil then
|
||||||
|
begin
|
||||||
|
//Write('>>> Setting Paint ClipRegion: ');
|
||||||
|
//DebugRegion('PaintData.ClipRegion: ', Widget.PaintData.ClipRegion);
|
||||||
|
QPainter_SetClipRegion(DC.Widget, Widget.PaintData.ClipRegion);
|
||||||
|
end;
|
||||||
|
if Widget.PaintData.ClipRect<>nil then
|
||||||
|
begin
|
||||||
|
New(DC.vClipRect);
|
||||||
|
DC.vClipRect^ := Widget.PaintData.ClipRect^;
|
||||||
|
end;
|
||||||
|
//DC.DebugClipRect('BeginPaint: After');
|
||||||
|
// TODO: ask what is this good for
|
||||||
|
if Widget is TQtMainWindow then
|
||||||
|
TQtMainWindow(Widget).Canvas := DC;
|
||||||
|
end;
|
||||||
|
|
||||||
Result := PS.hdc;
|
Result := PS.hdc;
|
||||||
|
|
||||||
@ -90,8 +115,47 @@ end;
|
|||||||
|
|
||||||
------------------------------------------------------------------------------}
|
------------------------------------------------------------------------------}
|
||||||
function TQtWidgetSet.CombineRgn(Dest, Src1, Src2: HRGN; fnCombineMode: Longint): Longint;
|
function TQtWidgetSet.CombineRgn(Dest, Src1, Src2: HRGN; fnCombineMode: Longint): Longint;
|
||||||
|
var
|
||||||
|
RDest,RSrc1,RSrc2: QRegionH;
|
||||||
begin
|
begin
|
||||||
Result := SimpleRegion;
|
result:=ERROR;
|
||||||
|
|
||||||
|
if not IsValidGDIObject(Dest) or not IsValidGDIObject(Src1) then
|
||||||
|
exit
|
||||||
|
else begin
|
||||||
|
RDest := TQtRegion(Dest).Widget;
|
||||||
|
RSrc1 := TQtRegion(Src1).Widget;
|
||||||
|
end;
|
||||||
|
|
||||||
|
if (fnCombineMode<>RGN_COPY) and not IsValidGDIObject(Src2) then
|
||||||
|
exit
|
||||||
|
else
|
||||||
|
RSrc2 := TQtRegion(Src2).Widget;
|
||||||
|
|
||||||
|
case fnCombineMode of
|
||||||
|
RGN_AND:
|
||||||
|
QRegion_Intersect(RSrc1, RDest, RSrc2);
|
||||||
|
RGN_COPY:
|
||||||
|
begin
|
||||||
|
// union of Src1 with a null region
|
||||||
|
RSrc2 := QRegion_Create;
|
||||||
|
QRegion_unite(RSrc1, RDest, RSrc2);
|
||||||
|
QRegion_Destroy(RSrc2);
|
||||||
|
end;
|
||||||
|
RGN_DIFF:
|
||||||
|
QRegion_Subtract(RSrc1, RDest, RSrc2);
|
||||||
|
RGN_OR:
|
||||||
|
QRegion_Unite(RSrc1, RDest, RSrc2);
|
||||||
|
RGN_XOR:
|
||||||
|
QRegion_eor(RSrc1, RDest, RSrc2);
|
||||||
|
end;
|
||||||
|
|
||||||
|
if QRegion_isEmpty(RDest) then
|
||||||
|
result := NULLREGION
|
||||||
|
else begin
|
||||||
|
// TODO: Evaluate if region is complex
|
||||||
|
Result := SIMPLEREGION;
|
||||||
|
end;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
{------------------------------------------------------------------------------
|
{------------------------------------------------------------------------------
|
||||||
@ -143,9 +207,11 @@ end;
|
|||||||
function TQtWidgetSet.CreateBrushIndirect(const LogBrush: TLogBrush): HBRUSH;
|
function TQtWidgetSet.CreateBrushIndirect(const LogBrush: TLogBrush): HBRUSH;
|
||||||
var
|
var
|
||||||
QtBrush: TQtBrush;
|
QtBrush: TQtBrush;
|
||||||
|
Color: TQColor;
|
||||||
begin
|
begin
|
||||||
{$ifdef VerboseQtWinAPI}
|
{$ifdef VerboseQtWinAPI}
|
||||||
WriteLn(Format('Trace:> [WinAPI CreateBrushIndirect] Style: %d, Color: %8x', [LogBrush.lbStyle, LogBrush.lbColor]));
|
WriteLn(Format('Trace:> [WinAPI CreateBrushIndirect] Style: %d, Color: %8x (%s)',
|
||||||
|
[LogBrush.lbStyle, LogBrush.lbColor, ColorToString(LogBrush.lbColor)]));
|
||||||
{$endif}
|
{$endif}
|
||||||
|
|
||||||
result := 0;
|
result := 0;
|
||||||
@ -210,6 +276,12 @@ begin
|
|||||||
QtRadialGradientPattern,
|
QtRadialGradientPattern,
|
||||||
QtConicalGradientPattern,
|
QtConicalGradientPattern,
|
||||||
QtTexturePattern = 24 );}
|
QtTexturePattern = 24 );}
|
||||||
|
|
||||||
|
// set brush color
|
||||||
|
Color := QBrush_Color(QtBrush.Widget)^;
|
||||||
|
ColorRefToTQColor(ColorToRGB(logBrush.lbColor), Color);
|
||||||
|
QBrush_setColor(QtBrush.Widget, @Color);
|
||||||
|
|
||||||
except
|
except
|
||||||
{$ifdef VerboseQtWinAPI}
|
{$ifdef VerboseQtWinAPI}
|
||||||
WriteLn('[WinAPI CreateBrushIndirect] Failed');
|
WriteLn('[WinAPI CreateBrushIndirect] Failed');
|
||||||
@ -327,27 +399,23 @@ begin
|
|||||||
|
|
||||||
with LogPen do
|
with LogPen do
|
||||||
begin
|
begin
|
||||||
case lopnStyle of
|
case lopnStyle of
|
||||||
PS_SOLID: QtPen.setStyle(QtSolidLine);
|
PS_SOLID: QtPen.setStyle(QtSolidLine);
|
||||||
PS_DASH: QtPen.setStyle(QtDashLine);
|
PS_DASH: QtPen.setStyle(QtDashLine);
|
||||||
PS_DOT: QtPen.setStyle(QtDotLine);
|
PS_DOT: QtPen.setStyle(QtDotLine);
|
||||||
PS_DASHDOT:QtPen.setStyle(QtDashDotLine);
|
PS_DASHDOT:QtPen.setStyle(QtDashDotLine);
|
||||||
PS_DASHDOTDOT:QtPen.setStyle(QtDashDotDotLine);
|
PS_DASHDOTDOT:QtPen.setStyle(QtDashDotDotLine);
|
||||||
PS_USERSTYLE: QtPen.setStyle(QtCustomDashLine);
|
PS_USERSTYLE: QtPen.setStyle(QtCustomDashLine);
|
||||||
PS_NULL:QtPen.setStyle(QtNoPen);
|
PS_NULL:QtPen.setStyle(QtNoPen);
|
||||||
else
|
else
|
||||||
QtPen.setStyle(QtSolidLine);
|
QtPen.setStyle(QtSolidLine);
|
||||||
end;
|
end;
|
||||||
|
|
||||||
QtPen.setWidth(lopnWidth.X);
|
QtPen.setWidth(lopnWidth.X);
|
||||||
{TODO: FIX Color issues }
|
|
||||||
color.Alpha := TColorToFPColor(lopnColor).Alpha;
|
|
||||||
color.r := TColorToFPColor(lopnColor).Red;
|
|
||||||
color.g := TColorToFPColor(lopnColor).Green;
|
|
||||||
color.b := TColorToFPColor(lopnColor).Blue;
|
|
||||||
|
|
||||||
QtPen.setColor(Color);
|
|
||||||
|
|
||||||
|
QPen_Color(QtPen.Widget, @Color);
|
||||||
|
ColorRefToTQColor(ColorToRGB(lopnColor), Color);
|
||||||
|
QPen_setColor(QtPen.Widget, @Color);
|
||||||
end;
|
end;
|
||||||
|
|
||||||
Result := HPEN(QtPen);
|
Result := HPEN(QtPen);
|
||||||
@ -366,6 +434,9 @@ var
|
|||||||
begin
|
begin
|
||||||
QtRegion := TQtRegion.Create(True, X1,Y1,X2,Y2);
|
QtRegion := TQtRegion.Create(True, X1,Y1,X2,Y2);
|
||||||
Result := HRGN(QtRegion);
|
Result := HRGN(QtRegion);
|
||||||
|
{$ifdef VerboseQtWinAPI}
|
||||||
|
WriteLn('Trace: [WinAPI CreateRectRgn] Result: ', IntToStr(Result),' QRegionH=', ptrint(QtRegion.Widget));
|
||||||
|
{$endif}
|
||||||
end;
|
end;
|
||||||
|
|
||||||
{------------------------------------------------------------------------------
|
{------------------------------------------------------------------------------
|
||||||
@ -442,8 +513,44 @@ begin
|
|||||||
{$endif}
|
{$endif}
|
||||||
|
|
||||||
// TQtImage(aObject).Free;
|
// TQtImage(aObject).Free;
|
||||||
|
end
|
||||||
|
{------------------------------------------------------------------------------
|
||||||
|
Region
|
||||||
|
------------------------------------------------------------------------------}
|
||||||
|
else if aObject is TQtRegion then
|
||||||
|
begin
|
||||||
|
{$ifdef VerboseQtWinAPI}
|
||||||
|
ObjType := 'Region';
|
||||||
|
{$endif}
|
||||||
|
|
||||||
|
// TQtRegion(aObject).Free;
|
||||||
|
end
|
||||||
|
|
||||||
|
{------------------------------------------------------------------------------
|
||||||
|
Pen
|
||||||
|
------------------------------------------------------------------------------}
|
||||||
|
else if aObject is TQtPen then
|
||||||
|
begin
|
||||||
|
{$ifdef VerboseQtWinAPI}
|
||||||
|
ObjType := 'Pen';
|
||||||
|
{$endif}
|
||||||
|
|
||||||
|
// TQtRegion(aObject).Free;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
|
if AObject is TQtResource then
|
||||||
|
if TQtResource(AObject).Owner<>nil then
|
||||||
|
begin
|
||||||
|
// this is an owned (default) resource, let owner free it
|
||||||
|
DebugLn('WARNING: Trying to Free a default resource');
|
||||||
|
AObject:=nil;
|
||||||
|
end;
|
||||||
|
|
||||||
|
if AObject<>nil then
|
||||||
|
AObject.Free;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
// Find out if we want to release internal GDI object
|
// Find out if we want to release internal GDI object
|
||||||
{ case GDIType of
|
{ case GDIType of
|
||||||
gdiBrush:
|
gdiBrush:
|
||||||
@ -480,36 +587,76 @@ function TQtWidgetSet.DrawText(DC: HDC; Str: PChar; Count: Integer;
|
|||||||
var
|
var
|
||||||
WideStr: WideString;
|
WideStr: WideString;
|
||||||
QtFontMetrics: TQtFontMetrics;
|
QtFontMetrics: TQtFontMetrics;
|
||||||
|
R: TRect;
|
||||||
|
F: Integer;
|
||||||
|
QtDC: TQtDeviceContext;
|
||||||
begin
|
begin
|
||||||
{$ifdef VerboseQtWinAPI}
|
{$ifdef VerboseQtWinAPI}
|
||||||
WriteLn('[WinAPI DrawText] DC: ', dbgs(DC), ' Str: ', string(Str),
|
WriteLn('[WinAPI DrawText] DC: ', dbgs(DC), ' Str: ', string(Str),
|
||||||
' CalcRect: ', dbgs((Flags and DT_CALCRECT) = DT_CALCRECT),
|
' CalcRect: ', dbgs((Flags and DT_CALCRECT) = DT_CALCRECT));
|
||||||
' Rect.Left: ', Rect.Left, ' Rect.Top: ', Rect.Top);
|
|
||||||
{$endif}
|
{$endif}
|
||||||
|
|
||||||
Result := 0;
|
Result := 0;
|
||||||
|
|
||||||
if not IsValidDC(DC) then Exit;
|
if not IsValidDC(DC) then
|
||||||
|
Exit;
|
||||||
|
|
||||||
|
QtDC :=TQtDeviceContext(DC);
|
||||||
|
|
||||||
WideStr := UTF8Decode(Str);
|
WideStr := UTF8Decode(Str);
|
||||||
|
|
||||||
QtFontMetrics := TQtFontMetrics.Create(TQtDeviceContext(DC).font.Widget);
|
QtFontMetrics := TQtFontMetrics.Create(QtDC.font.Widget);
|
||||||
try
|
try
|
||||||
|
// convert DT flags to QT Flags
|
||||||
|
F := 0;
|
||||||
|
// horizontal alignment
|
||||||
|
if Flags and DT_CENTER <> 0 then
|
||||||
|
F := F or QTAlignHCenter
|
||||||
|
else
|
||||||
|
if Flags and DT_RIGHT <> 0 then
|
||||||
|
F := F or QTAlignRight
|
||||||
|
else
|
||||||
|
F := F or QTAlignLeft;
|
||||||
|
// vertical alignment
|
||||||
|
if Flags and DT_VCENTER <> 0 then
|
||||||
|
F := F or QTAlignVCenter
|
||||||
|
else
|
||||||
|
if Flags and DT_BOTTOM <> 0 then
|
||||||
|
F := F or QTAlignBottom
|
||||||
|
else
|
||||||
|
F := F or QTAlignTop;
|
||||||
|
|
||||||
|
// mutually exclusive wordbreak and singleline
|
||||||
|
if Flags and DT_WORDBREAK <> 0 then
|
||||||
|
F := F or $1000{QTTExtWordWrap}
|
||||||
|
else
|
||||||
|
if Flags and DT_SINGLELINE <> 0 then
|
||||||
|
F := F or $100;{QTTextSingleLine;}
|
||||||
|
|
||||||
|
if Flags and DT_NOPREFIX = 0 then
|
||||||
|
F := F or $800;{QTTextShowMnemonic;}
|
||||||
|
|
||||||
|
QFontMetrics_BoundingRect(QtFontMetrics.Widget, @R, @Rect, F, @WideStr);
|
||||||
|
|
||||||
|
|
||||||
|
//TODO: result should be different when DT_VCENTER or DT_BOTTOM is set
|
||||||
Result := QtFontMetrics.height;
|
Result := QtFontMetrics.height;
|
||||||
|
|
||||||
if (Flags and DT_CALCRECT) = DT_CALCRECT then
|
|
||||||
begin
|
|
||||||
Rect.Right := Rect.Left + QtFontMetrics.width(@WideStr);
|
|
||||||
Rect.Bottom := Rect.Top + QtFontMetrics.height;
|
|
||||||
end;
|
|
||||||
|
|
||||||
finally
|
finally
|
||||||
QtFontMetrics.Free;
|
QtFontMetrics.Free;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
if (Flags and DT_CALCRECT) = DT_CALCRECT then Exit;
|
if (Flags and DT_CALCRECT) = DT_CALCRECT then
|
||||||
|
begin
|
||||||
|
{$ifdef VerboseQtWinAPI}
|
||||||
|
WriteLn('[WinAPI DrawText] Rect=', dbgs(Rect));
|
||||||
|
{$endif}
|
||||||
|
Exit;
|
||||||
|
end;
|
||||||
|
|
||||||
TQtDeviceContext(DC).drawText(Rect.Left, Rect.Top, @WideStr);
|
with Rect do
|
||||||
|
QtDC.DrawText(left, Top, Right-Left, Bottom-Top, F, @WideStr);
|
||||||
|
|
||||||
end;
|
end;
|
||||||
|
|
||||||
{------------------------------------------------------------------------------
|
{------------------------------------------------------------------------------
|
||||||
@ -566,6 +713,7 @@ function TQtWidgetSet.ExtTextOut(DC: HDC; X, Y: Integer; Options: Longint;
|
|||||||
Rect: PRect; Str: PChar; Count: Longint; Dx: PInteger): Boolean;
|
Rect: PRect; Str: PChar; Count: Longint; Dx: PInteger): Boolean;
|
||||||
var
|
var
|
||||||
WideStr: WideString;
|
WideStr: WideString;
|
||||||
|
Painter: QPainterH;
|
||||||
begin
|
begin
|
||||||
{$ifdef VerboseQtWinAPI}
|
{$ifdef VerboseQtWinAPI}
|
||||||
WriteLn('[WinAPI ExtTextOut]');
|
WriteLn('[WinAPI ExtTextOut]');
|
||||||
@ -577,14 +725,35 @@ begin
|
|||||||
|
|
||||||
WideStr := UTF8Decode(Str);
|
WideStr := UTF8Decode(Str);
|
||||||
|
|
||||||
// if TQtDeviceContext(DC).isDrawing then TQtDeviceContext(DC).drawText(X, Y, @WideStr)
|
|
||||||
// else TQtDeviceContext(DC).AddObject(dcTextOut, @WideStr, X, Y);
|
|
||||||
|
|
||||||
TQtDeviceContext(DC).drawText(X, Y, @WideStr);
|
TQtDeviceContext(DC).drawText(X, Y, @WideStr);
|
||||||
|
|
||||||
Result := True;
|
Result := True;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
|
function TQtWidgetSet.FillRect(DC: HDC; const Rect: TRect; Brush: HBRUSH
|
||||||
|
): Boolean;
|
||||||
|
var
|
||||||
|
Painter: QPainterH;
|
||||||
|
ABrush: QBrushH;
|
||||||
|
begin
|
||||||
|
result:=false;
|
||||||
|
|
||||||
|
{$ifdef VerboseQtWinAPI}
|
||||||
|
DebugLn('[WinAPI FillRect Rect=', dbgs(Rect),' Brush=', dbgHex(Brush));
|
||||||
|
{$endif}
|
||||||
|
|
||||||
|
if not IsValidDC(DC) then
|
||||||
|
exit;
|
||||||
|
if not IsValidGdiObject(Brush) then
|
||||||
|
exit;
|
||||||
|
|
||||||
|
Painter:= TQTDeviceContext(DC).Widget;
|
||||||
|
ABrush := TQTBrush(Brush).Widget;
|
||||||
|
|
||||||
|
QPainter_FillRect(Painter, @Rect, ABrush);
|
||||||
|
|
||||||
|
result := true;
|
||||||
|
end;
|
||||||
|
|
||||||
{------------------------------------------------------------------------------
|
{------------------------------------------------------------------------------
|
||||||
Method: TQtWidgetSet.GetBitmapRawImageDescription
|
Method: TQtWidgetSet.GetBitmapRawImageDescription
|
||||||
Params: none
|
Params: none
|
||||||
@ -660,6 +829,61 @@ begin
|
|||||||
Result:=true;
|
Result:=true;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
|
{------------------------------------------------------------------------------
|
||||||
|
Function: GetClipBox
|
||||||
|
Params: dc, lprect
|
||||||
|
Returns: Integer
|
||||||
|
|
||||||
|
Returns the smallest rectangle which includes the entire current
|
||||||
|
Clipping Region, or if no Clipping Region is set, the current
|
||||||
|
dimensions of the Drawable.
|
||||||
|
|
||||||
|
The result can be one of the following constants
|
||||||
|
Error
|
||||||
|
NullRegion
|
||||||
|
SimpleRegion
|
||||||
|
ComplexRegion
|
||||||
|
------------------------------------------------------------------------------}
|
||||||
|
function TQtWidgetSet.GetClipBox(DC: hDC; lpRect: PRect): Longint;
|
||||||
|
var
|
||||||
|
ARegion: QRegionH;
|
||||||
|
begin
|
||||||
|
Result := SIMPLEREGION;
|
||||||
|
If lpRect <> nil then
|
||||||
|
lpRect^ := Rect(0,0,0,0);
|
||||||
|
|
||||||
|
If not IsValidDC(DC) then
|
||||||
|
Result := ERROR;
|
||||||
|
|
||||||
|
if Result <> ERROR
|
||||||
|
then with TQtDeviceContext(DC) do
|
||||||
|
begin
|
||||||
|
{$ifdef VerboseQtWinAPI}
|
||||||
|
Write('TQtWidgetSet.GetClipBox FastClip=',((vClipRect<>nil) and not vClipRectDirty));
|
||||||
|
{$endif}
|
||||||
|
|
||||||
|
// the most correct way to get a clipbox if through
|
||||||
|
// region.boundingrect, but it's slower.
|
||||||
|
|
||||||
|
// TODO: remove "and false" below when vClipRectDirty is implemented
|
||||||
|
// it should be "true" when user set a custom clip rect
|
||||||
|
// and "false" on beginpaint
|
||||||
|
if (vClipRect<>nil) and not vClipRectDirty and false then
|
||||||
|
lpRect^ := vClipRect^
|
||||||
|
else
|
||||||
|
if QPainter_HasClipping(Widget) then
|
||||||
|
begin
|
||||||
|
ARegion := QRegion_Create;
|
||||||
|
QPainter_ClipRegion(Widget, ARegion);
|
||||||
|
QRegion_boundingRect(ARegion, lpRect);
|
||||||
|
QRegion_destroy(ARegion);
|
||||||
|
end;
|
||||||
|
{$ifdef VerboseQtWinAPI}
|
||||||
|
WriteLn(' Rect=', dbgs(lprect^));
|
||||||
|
{$endif}
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
{------------------------------------------------------------------------------
|
{------------------------------------------------------------------------------
|
||||||
Function: GetClipRGN
|
Function: GetClipRGN
|
||||||
Params: dc, rgn
|
Params: dc, rgn
|
||||||
@ -674,7 +898,25 @@ end;
|
|||||||
------------------------------------------------------------------------------}
|
------------------------------------------------------------------------------}
|
||||||
Function TQtWidgetSet.GetClipRGN(DC : hDC; RGN : hRGN): Longint;
|
Function TQtWidgetSet.GetClipRGN(DC : hDC; RGN : hRGN): Longint;
|
||||||
begin
|
begin
|
||||||
Result := 1;
|
{$ifdef VerboseQtWinAPI}
|
||||||
|
Write('Trace: [WinAPI GetClipRgn] DC: ', IntToStr(DC),' RGN: ', IntToStr(Rgn));
|
||||||
|
if RGN<>0 then
|
||||||
|
WriteLn(' QRegionH=', PtrInt(TQtRegion(Rgn).Widget))
|
||||||
|
else
|
||||||
|
WriteLn(' Rgn=0');
|
||||||
|
{$endif}
|
||||||
|
// it assumes that clipregion object has been created some other place
|
||||||
|
result := -1;
|
||||||
|
if not IsValidDC(DC) then
|
||||||
|
exit;
|
||||||
|
if rgn=0 then
|
||||||
|
exit;
|
||||||
|
if not QPainter_HasClipping(TQtDeviceContext(DC).Widget) then
|
||||||
|
result := 0
|
||||||
|
else begin
|
||||||
|
QPainter_ClipRegion(TQtDeviceContext(DC).Widget, TQtRegion(Rgn).Widget);
|
||||||
|
Result := 1;
|
||||||
|
end;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
{------------------------------------------------------------------------------
|
{------------------------------------------------------------------------------
|
||||||
@ -705,7 +947,7 @@ begin
|
|||||||
WriteLn('Trace:> [WinAPI GetDC] hWnd: ', IntToStr(hWnd));
|
WriteLn('Trace:> [WinAPI GetDC] hWnd: ', IntToStr(hWnd));
|
||||||
{$endif}
|
{$endif}
|
||||||
|
|
||||||
Result := HDC(TQtDeviceContext.Create(0));
|
Result := HDC(TQtDeviceContext.Create(hWnd));
|
||||||
|
|
||||||
// if hWnd <> 0 then TQtCustomForm(hWnd).Canvas := TQtDeviceContext(Result);
|
// if hWnd <> 0 then TQtCustomForm(hWnd).Canvas := TQtDeviceContext(Result);
|
||||||
|
|
||||||
@ -714,6 +956,28 @@ begin
|
|||||||
{$endif}
|
{$endif}
|
||||||
end;
|
end;
|
||||||
|
|
||||||
|
function TQtWidgetSet.GetFocus: HWND;
|
||||||
|
var
|
||||||
|
WidgetH: QWidgetH;
|
||||||
|
Obj: TQtWidget;
|
||||||
|
begin
|
||||||
|
result:=0;
|
||||||
|
WidgetH:=QApplication_FocusWidget();
|
||||||
|
if WidgetH<>nil then
|
||||||
|
begin
|
||||||
|
Obj := QtObjectFromWidgetH(WidgetH);
|
||||||
|
if Obj<>nil then
|
||||||
|
result:=Hwnd(Obj);
|
||||||
|
{$ifdef VerboseFocus}
|
||||||
|
Write('TQtWidgetSet.GetFocus: WidgetH=',dbghex(ptrint(WidgetH)), ' QtWidget=', dbgsname(Obj));
|
||||||
|
if Obj<>nil then
|
||||||
|
WriteLn(' LclObject=', dbgsname(Obj.LCLObject))
|
||||||
|
else
|
||||||
|
WriteLn;
|
||||||
|
{$endif}
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
|
|
||||||
{------------------------------------------------------------------------------
|
{------------------------------------------------------------------------------
|
||||||
Method: TQtWidgetSet.GetDeviceRawImageDescription
|
Method: TQtWidgetSet.GetDeviceRawImageDescription
|
||||||
@ -911,6 +1175,14 @@ begin
|
|||||||
{$endif}
|
{$endif}
|
||||||
end;
|
end;
|
||||||
|
|
||||||
|
function TQtWidgetSet.GetProp(Handle: hwnd; Str: PChar): Pointer;
|
||||||
|
begin
|
||||||
|
if Handle<>0 then
|
||||||
|
result := TQtWidget(Handle).Props[str]
|
||||||
|
else
|
||||||
|
result := nil;
|
||||||
|
end;
|
||||||
|
|
||||||
{------------------------------------------------------------------------------
|
{------------------------------------------------------------------------------
|
||||||
Method: TQtWidgetSet.GetRawImageFromDevice
|
Method: TQtWidgetSet.GetRawImageFromDevice
|
||||||
Params: none
|
Params: none
|
||||||
@ -1550,6 +1822,34 @@ begin
|
|||||||
end;
|
end;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
|
function TQtWidgetSet.GetWindowOrgEx(dc: hdc; P: PPoint): Integer;
|
||||||
|
var
|
||||||
|
Matrix: QMatrixH;
|
||||||
|
begin
|
||||||
|
{$ifdef VerboseQtWinAPI}
|
||||||
|
WriteLn('Trace: > [WinAPI GetWindowOrgEx]');
|
||||||
|
{$endif}
|
||||||
|
Result := 0;
|
||||||
|
if not IsValidDC(DC) and (P<>nil) then
|
||||||
|
begin
|
||||||
|
{$ifdef VerboseQtWinAPI}
|
||||||
|
WriteLn('Trace: < [WinAPI GetWindowOrgEx] No valid DC or P is nil');
|
||||||
|
{$endif}
|
||||||
|
exit;
|
||||||
|
end;
|
||||||
|
|
||||||
|
Matrix := QPainter_Matrix(TQtDeviceContext(DC).Widget);
|
||||||
|
if Matrix<>nil then
|
||||||
|
begin
|
||||||
|
P^.X := Trunc(QMatrix_Dx(Matrix));
|
||||||
|
P^.Y := Trunc(QMatrix_Dy(Matrix));
|
||||||
|
result := 1;
|
||||||
|
end;
|
||||||
|
{$ifdef VerboseQtWinAPI}
|
||||||
|
WriteLn('Trace: < [WinAPI GetWindowOrgEx] Result=', dbgs(p^));
|
||||||
|
{$endif}
|
||||||
|
end;
|
||||||
|
|
||||||
|
|
||||||
{------------------------------------------------------------------------------
|
{------------------------------------------------------------------------------
|
||||||
Method: GetWindowRect
|
Method: GetWindowRect
|
||||||
@ -1673,11 +1973,14 @@ end;
|
|||||||
|
|
||||||
------------------------------------------------------------------------------}
|
------------------------------------------------------------------------------}
|
||||||
function TQtWidgetSet.InvalidateRect(aHandle: HWND; Rect: pRect; bErase: Boolean): Boolean;
|
function TQtWidgetSet.InvalidateRect(aHandle: HWND; Rect: pRect; bErase: Boolean): Boolean;
|
||||||
|
var
|
||||||
|
R: TRect;
|
||||||
begin
|
begin
|
||||||
{$ifdef VerboseQtWinAPI}
|
{$ifdef VerboseQtWinAPI}
|
||||||
WriteLn('[WinAPI Invalidate Rect]');
|
WriteLn('[WinAPI Invalidate Rect]');
|
||||||
{$endif}
|
{$endif}
|
||||||
|
|
||||||
|
//TODO: QWidget_update(TQtWidget(aHandle).Widget,Rect);
|
||||||
TQtWidget(aHandle).Update;
|
TQtWidget(aHandle).Update;
|
||||||
|
|
||||||
Result := True;
|
Result := True;
|
||||||
@ -1702,12 +2005,11 @@ begin
|
|||||||
|
|
||||||
if not IsValidDC(DC) then Exit;
|
if not IsValidDC(DC) then Exit;
|
||||||
|
|
||||||
|
//TODO: check this brushorigin stuff, don't smell good.
|
||||||
|
// replace with DC local point.
|
||||||
TQtDeviceContext(DC).brushOrigin(@BrushPos);
|
TQtDeviceContext(DC).brushOrigin(@BrushPos);
|
||||||
|
|
||||||
TQtDeviceContext(DC).drawLine(
|
TQtDeviceContext(DC).drawLine( BrushPos.X, BrushPos.Y, X, Y);
|
||||||
TQtDeviceContext(DC).Origin.X + BrushPos.X,
|
|
||||||
TQtDeviceContext(DC).Origin.Y + BrushPos.Y,
|
|
||||||
X, Y);
|
|
||||||
|
|
||||||
MoveToEx(DC, X, Y, nil);
|
MoveToEx(DC, X, Y, nil);
|
||||||
|
|
||||||
@ -1782,6 +2084,140 @@ begin
|
|||||||
Result := 1;
|
Result := 1;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
|
|
||||||
|
{------------------------------------------------------------------------------
|
||||||
|
Function: RestoreDC: Restore a previously saved DC state
|
||||||
|
Params:
|
||||||
|
DC: Handle to a DeviceContext
|
||||||
|
SavedDC: Index of saved state that needs to be restored
|
||||||
|
Returns: True if state was successfuly restored.
|
||||||
|
-------------------------------------------------------------------------------}
|
||||||
|
function TQtWidgetSet.RestoreDC(DC: HDC; SavedDC: Integer): Boolean;
|
||||||
|
var
|
||||||
|
DCData: PQtDCData;
|
||||||
|
begin
|
||||||
|
{$ifdef VerboseQTWinAPI}
|
||||||
|
WriteLn('Trace:> [WinAPI RestoreDC] DC=', dbghex(DC),' SavedDC=',SavedDC);
|
||||||
|
{$Endif}
|
||||||
|
// if SavedDC is positive, it represents the wished saved dc instance
|
||||||
|
// if SavedDC is negative, it's a relative number from last pushed state
|
||||||
|
Result := False;
|
||||||
|
if SavedDCList=nil then
|
||||||
|
begin
|
||||||
|
{$ifdef VerboseQTWinAPI}
|
||||||
|
WriteLn('Trace:< [WinAPI RestoreDC] there is no List yet, result=', result);
|
||||||
|
{$Endif}
|
||||||
|
exit;
|
||||||
|
end;
|
||||||
|
|
||||||
|
if SavedDC<0 then
|
||||||
|
SavedDC := SavedDC+SavedDCList.Count;
|
||||||
|
|
||||||
|
// check index
|
||||||
|
result := (SavedDC>0)and(SavedDC<SavedDCList.Count);
|
||||||
|
if result then
|
||||||
|
begin
|
||||||
|
|
||||||
|
if SavedDC<>SavedDCList.Count-1 then
|
||||||
|
DebugLn('WARNING: poping other than last saved DC from stack');
|
||||||
|
|
||||||
|
result := true;
|
||||||
|
while SavedDC>0 do
|
||||||
|
begin
|
||||||
|
DCData := PQtDcData(SavedDCList[SavedDC]);
|
||||||
|
SavedDCList.Delete(SAvedDC);
|
||||||
|
result := TQtDeviceContext(DC).RestoreDCData(DCData);
|
||||||
|
Dec(SavedDC);
|
||||||
|
end;
|
||||||
|
|
||||||
|
end;
|
||||||
|
{$ifdef VerboseQTWinAPI}
|
||||||
|
WriteLn('Trace:< [WinAPI RestoreDC]');
|
||||||
|
{$Endif}
|
||||||
|
end;
|
||||||
|
|
||||||
|
{------------------------------------------------------------------------------
|
||||||
|
Function: SaveDC: save DC state information to a stack
|
||||||
|
Params: DC
|
||||||
|
Returns: The index assigned to the or 0 if DC is not valid
|
||||||
|
-------------------------------------------------------------------------------}
|
||||||
|
function TQtWidgetSet.SaveDC(DC: HDC): Integer;
|
||||||
|
var
|
||||||
|
DCData: PQtDCData;
|
||||||
|
begin
|
||||||
|
{$ifdef VerboseQTWinAPI}
|
||||||
|
WriteLn('Trace:> [WinAPI SaveDC] DC=', dbghex(DC));
|
||||||
|
{$Endif}
|
||||||
|
|
||||||
|
result:=0;
|
||||||
|
|
||||||
|
if not IsValidDC(DC) then
|
||||||
|
begin
|
||||||
|
{$ifdef VerboseQTWinAPI}
|
||||||
|
WriteLn('Trace:< [WinAPI SaveDC] DC Invalid, result=', result);
|
||||||
|
{$Endif}
|
||||||
|
exit;
|
||||||
|
end;
|
||||||
|
|
||||||
|
if SavedDCList=nil then
|
||||||
|
begin
|
||||||
|
SavedDCList := TList.Create;
|
||||||
|
SavedDCList.Add(nil); // start at index 1, 0 is an invalid saved state
|
||||||
|
end;
|
||||||
|
|
||||||
|
DCData := TQtDeviceContext(Dc).CreateDCData;
|
||||||
|
result := SavedDCList.Add(DCData);
|
||||||
|
|
||||||
|
{$ifdef VerboseQTWinAPI}
|
||||||
|
WriteLn('Trace:< [WinAPI SaveDC] result=', result);
|
||||||
|
{$Endif}
|
||||||
|
end;
|
||||||
|
|
||||||
|
{------------------------------------------------------------------------------
|
||||||
|
Function: SelectClipRGN
|
||||||
|
Params: DC, RGN
|
||||||
|
Returns: longint
|
||||||
|
|
||||||
|
Sets the DeviceContext's ClipRegion. The Return value
|
||||||
|
is the new clip regions type, or ERROR.
|
||||||
|
|
||||||
|
The result can be one of the following constants
|
||||||
|
Error
|
||||||
|
NullRegion
|
||||||
|
SimpleRegion
|
||||||
|
ComplexRegion
|
||||||
|
|
||||||
|
------------------------------------------------------------------------------}
|
||||||
|
function TQtWidgetSet.SelectClipRGN(DC: hDC; RGN: HRGN): Longint;
|
||||||
|
var
|
||||||
|
ARegion: QRegionH;
|
||||||
|
Painter: QPainterH;
|
||||||
|
begin
|
||||||
|
result := ERROR;
|
||||||
|
if IsValidDC(DC) then
|
||||||
|
begin
|
||||||
|
Painter := TQtDeviceContext(DC).Widget;
|
||||||
|
QPainter_setClipRegion(Painter, TQtRegion(Rgn).Widget);
|
||||||
|
if QPainter_hasClipping(Painter) then
|
||||||
|
begin
|
||||||
|
// TODO: isNull is trated as isEmpty, is not right but isNull is not
|
||||||
|
// in the bindings, it's not also in QT documentation :(
|
||||||
|
// however in QT documentation for isEmpty, isNull is mentioned
|
||||||
|
ARegion := QRegion_Create;
|
||||||
|
QPainter_ClipRegion(Painter, ARegion);
|
||||||
|
if QRegion_isEmpty(ARegion) then
|
||||||
|
result := NULLREGION
|
||||||
|
else begin
|
||||||
|
result := SIMPLEREGION;
|
||||||
|
// TODO: test for complex region
|
||||||
|
end;
|
||||||
|
QRegion_Destroy(ARegion);
|
||||||
|
end else begin
|
||||||
|
result := NULLREGION;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
{------------------------------------------------------------------------------
|
{------------------------------------------------------------------------------
|
||||||
Function: SelectObject
|
Function: SelectObject
|
||||||
Params: none
|
Params: none
|
||||||
@ -1797,7 +2233,7 @@ var
|
|||||||
{$endif}
|
{$endif}
|
||||||
begin
|
begin
|
||||||
{$ifdef VerboseQtWinAPI}
|
{$ifdef VerboseQtWinAPI}
|
||||||
WriteLn('Trace:> [WinAPI SelectObject] DC=', dbgs(DC), ' GDIObj=', dbgs(GDIObj));
|
WriteLn('Trace:> [WinAPI SelectObject] DC=', dbghex(DC), ' GDIObj=', dbghex(GDIObj));
|
||||||
{$endif}
|
{$endif}
|
||||||
|
|
||||||
Result := 0;
|
Result := 0;
|
||||||
@ -1832,6 +2268,15 @@ begin
|
|||||||
|
|
||||||
TQtDeviceContext(DC).setFont(TQtFont(aObject));
|
TQtDeviceContext(DC).setFont(TQtFont(aObject));
|
||||||
end
|
end
|
||||||
|
else if aObject is TQtPen then
|
||||||
|
begin
|
||||||
|
{$ifdef VerboseQtWinAPI}
|
||||||
|
ObjType := 'Pen' ;
|
||||||
|
{$endif}
|
||||||
|
result := HGDIOBJ(TQtDeviceContext(DC).pen);
|
||||||
|
|
||||||
|
TQtDeviceContext(DC).setPen(TQtPen(aObject));
|
||||||
|
end
|
||||||
else if aObject is TQtBrush then
|
else if aObject is TQtBrush then
|
||||||
begin
|
begin
|
||||||
{$ifdef VerboseQtWinAPI}
|
{$ifdef VerboseQtWinAPI}
|
||||||
@ -1839,6 +2284,8 @@ begin
|
|||||||
{$endif}
|
{$endif}
|
||||||
|
|
||||||
Result := HGDIOBJ(TQtDeviceContext(DC).brush);
|
Result := HGDIOBJ(TQtDeviceContext(DC).brush);
|
||||||
|
|
||||||
|
TQtDeviceContext(DC).setBrush(TQtBrush(aObject));
|
||||||
end
|
end
|
||||||
else if aObject is TQtImage then
|
else if aObject is TQtImage then
|
||||||
begin
|
begin
|
||||||
@ -1847,15 +2294,65 @@ begin
|
|||||||
{$endif}
|
{$endif}
|
||||||
|
|
||||||
Result := HGDIOBJ(TQtDeviceContext(DC).vImage);
|
Result := HGDIOBJ(TQtDeviceContext(DC).vImage);
|
||||||
|
|
||||||
|
// TODO: is this also saved in qpainter_save?
|
||||||
TQtDeviceContext(DC).vImage := TQtImage(aObject).Handle;
|
TQtDeviceContext(DC).vImage := TQtImage(aObject).Handle;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
{$ifdef VerboseQtWinAPI}
|
{$ifdef VerboseQtWinAPI}
|
||||||
WriteLn('Trace:< [WinAPI SelectObject] Result=', dbgs(Result), ' ObjectType=', ObjType);
|
WriteLn('Trace:< [WinAPI SelectObject] Result=', dbghex(Result), ' ObjectType=', ObjType);
|
||||||
{$endif}
|
{$endif}
|
||||||
end;
|
end;
|
||||||
|
|
||||||
|
{------------------------------------------------------------------------------
|
||||||
|
Function: SetCursorPos
|
||||||
|
Params: X:
|
||||||
|
Y:
|
||||||
|
Returns:
|
||||||
|
|
||||||
|
------------------------------------------------------------------------------}
|
||||||
|
function TQtWidgetSet.SetBKColor(DC: HDC; Color: TColorRef): TColorRef;
|
||||||
|
var
|
||||||
|
Brush: TQtBrush;
|
||||||
|
begin
|
||||||
|
{$ifdef VerboseQtWinAPI}
|
||||||
|
WriteLn('Trace:> [WinAPI SetBkColor] DC=', dbgs(DC), ' Color=', dbgs(Color));
|
||||||
|
{$endif}
|
||||||
|
|
||||||
|
Result := 0;
|
||||||
|
|
||||||
|
if not IsValidDC(DC) then
|
||||||
|
begin
|
||||||
|
{$ifdef VerboseQtWinAPI}
|
||||||
|
WriteLn('Trace:< [WinAPI SetBkColor] Invalid DC');
|
||||||
|
{$endif}
|
||||||
|
|
||||||
|
Exit;
|
||||||
|
end;
|
||||||
|
|
||||||
|
result := TQtDeviceContext(DC).SetBkColor(Color);
|
||||||
|
end;
|
||||||
|
|
||||||
|
function TQtWidgetSet.SetBkMode(DC: HDC; bkMode: Integer): Integer;
|
||||||
|
begin
|
||||||
|
{$ifdef VerboseQtWinAPI}
|
||||||
|
WriteLn('Trace:> [WinAPI SetBkMode] DC=', dbgs(DC), ' BkMode=', dbgs(bkMode));
|
||||||
|
{$endif}
|
||||||
|
|
||||||
|
Result := 0;
|
||||||
|
|
||||||
|
if not IsValidDC(DC) then
|
||||||
|
begin
|
||||||
|
{$ifdef VerboseQtWinAPI}
|
||||||
|
WriteLn('Trace:< [WinAPI SetBkMode] Invalid DC');
|
||||||
|
{$endif}
|
||||||
|
|
||||||
|
Exit;
|
||||||
|
end;
|
||||||
|
|
||||||
|
result := TQtDeviceContext(DC).SetBkMode(bkMode);
|
||||||
|
end;
|
||||||
|
|
||||||
{------------------------------------------------------------------------------
|
{------------------------------------------------------------------------------
|
||||||
Function: SetCursorPos
|
Function: SetCursorPos
|
||||||
Params: X:
|
Params: X:
|
||||||
@ -1874,6 +2371,23 @@ begin
|
|||||||
Result := True;
|
Result := True;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
|
function TQtWidgetSet.SetFocus(hWnd: HWND): HWND;
|
||||||
|
var
|
||||||
|
Widget: QWidgetH;
|
||||||
|
begin
|
||||||
|
if hwnd<>0 then
|
||||||
|
begin
|
||||||
|
{$ifdef VerboseFocus}
|
||||||
|
WriteLn('********* TQtWidgetSet.SetFocus INIT focusing ', TQtWidget(hwnd).lclobject.name);
|
||||||
|
{$endif}
|
||||||
|
result := GetFocus;
|
||||||
|
QWidget_SetFocus(TQtWidget(hWnd).Widget);
|
||||||
|
{$ifdef VerboseFocus}
|
||||||
|
DebugLn('********* TQtWidgetSet.SetFocus END was %x now is %x',[result,hwnd]);
|
||||||
|
{$endif}
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
{------------------------------------------------------------------------------
|
{------------------------------------------------------------------------------
|
||||||
Method: SetWindowOrgEx
|
Method: SetWindowOrgEx
|
||||||
Params: DC - handle of device context
|
Params: DC - handle of device context
|
||||||
@ -1894,15 +2408,45 @@ begin
|
|||||||
|
|
||||||
if IsValidDC(DC) then
|
if IsValidDC(DC) then
|
||||||
begin
|
begin
|
||||||
TQtDeviceContext(DC).Origin.X := -NewX;
|
|
||||||
TQtDeviceContext(DC).Origin.Y := -NewY;
|
GetWindowOrgEx(DC, OldPoint);
|
||||||
|
QPainter_translate(TQtDeviceContext(DC).Widget, -NewX, -NewY);
|
||||||
if OldPoint <> nil then OldPoint^ := TQtDeviceContext(DC).Origin;
|
|
||||||
end;
|
end;
|
||||||
|
|
||||||
Result := True;
|
Result := True;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
|
function TQtWidgetSet.SetProp(Handle: hwnd; Str: PChar; Data: Pointer
|
||||||
|
): Boolean;
|
||||||
|
begin
|
||||||
|
if Handle<>0 then
|
||||||
|
begin
|
||||||
|
TQtWidget(Handle).Props[str] := Data;
|
||||||
|
result:=(TQtWidget(Handle).Props[str]=Data);
|
||||||
|
{$ifdef VerboseQT}
|
||||||
|
DebugLn('[WinAPI SetProp win=%s str=%s data=%x',[dbgsname(TQtWidget(Handle)), str, ptrint(data)]);
|
||||||
|
{$endif}
|
||||||
|
end else
|
||||||
|
result:=False;
|
||||||
|
end;
|
||||||
|
|
||||||
|
function TQtWidgetSet.SetTextColor(DC: HDC; Color: TColorRef): TColorRef;
|
||||||
|
begin
|
||||||
|
{$ifdef VerboseQtWinAPI}
|
||||||
|
WriteLn('[WinAPI SetTextColor] DC: ', dbgs(DC));
|
||||||
|
{$endif}
|
||||||
|
result := CLR_INVALID;
|
||||||
|
if not IsValidDC(DC) then begin
|
||||||
|
{$ifdef VerboseQtWinAPI}
|
||||||
|
WriteLn('[WinAPI SetTextColor] Invalid DC');
|
||||||
|
{$endif}
|
||||||
|
exit;
|
||||||
|
end;
|
||||||
|
result := TQtDeviceContext(DC).vTextColor;
|
||||||
|
TQtDeviceContext(DC).vTextColor := ColorToRGB(Color); // be sure we get TColorRef
|
||||||
|
end;
|
||||||
|
|
||||||
{------------------------------------------------------------------------------
|
{------------------------------------------------------------------------------
|
||||||
function ShowWindow(hWnd: HWND; nCmdShow: Integer): Boolean;
|
function ShowWindow(hWnd: HWND; nCmdShow: Integer): Boolean;
|
||||||
|
|
||||||
@ -1919,7 +2463,7 @@ begin
|
|||||||
|
|
||||||
Result := False;
|
Result := False;
|
||||||
|
|
||||||
Widget := QWidgetH(hWnd);
|
Widget := TQTWidget(hWnd).Widget; //QWidgetH(hWnd);
|
||||||
|
|
||||||
// if Widget = nil then RaiseException('TQtWidgetSet.ShowWindow hWnd is nil');
|
// if Widget = nil then RaiseException('TQtWidgetSet.ShowWindow hWnd is nil');
|
||||||
|
|
||||||
|
@ -45,15 +45,20 @@ function Ellipse(DC: HDC; x1, y1, x2, y2: Integer): Boolean; override;
|
|||||||
function EndPaint(Handle: hwnd; var PS: TPaintStruct): Integer; override;
|
function EndPaint(Handle: hwnd; var PS: TPaintStruct): Integer; override;
|
||||||
function ExtTextOut(DC: HDC; X, Y: Integer; Options: Longint; Rect: PRect; Str: PChar; Count: Longint; Dx: PInteger): Boolean; override;
|
function ExtTextOut(DC: HDC; X, Y: Integer; Options: Longint; Rect: PRect; Str: PChar; Count: Longint; Dx: PInteger): Boolean; override;
|
||||||
|
|
||||||
|
function FillRect(DC: HDC; const Rect: TRect; Brush: HBRUSH): Boolean; override;
|
||||||
|
|
||||||
function GetBitmapRawImageDescription(Bitmap: HBITMAP; Desc: PRawImageDescription): Boolean; override;
|
function GetBitmapRawImageDescription(Bitmap: HBITMAP; Desc: PRawImageDescription): Boolean; override;
|
||||||
function GetClientBounds(handle : HWND; var ARect : TRect) : Boolean; override;
|
function GetClientBounds(handle : HWND; var ARect : TRect) : Boolean; override;
|
||||||
function GetClientRect(handle : HWND; var ARect : TRect) : Boolean; override;
|
function GetClientRect(handle : HWND; var ARect : TRect) : Boolean; override;
|
||||||
|
function GetClipBox(DC : hDC; lpRect : PRect) : Longint; override;
|
||||||
Function GetClipRGN(DC: hDC; RGN: hRGN): Longint; override;
|
Function GetClipRGN(DC: hDC; RGN: hRGN): Longint; override;
|
||||||
function GetCursorPos(var lpPoint: TPoint ): Boolean; override;
|
function GetCursorPos(var lpPoint: TPoint ): Boolean; override;
|
||||||
function GetDeviceRawImageDescription(DC: HDC; Desc: PRawImageDescription): boolean; override;
|
function GetDeviceRawImageDescription(DC: HDC; Desc: PRawImageDescription): boolean; override;
|
||||||
function GetDeviceSize(DC: HDC; var P: TPoint): Boolean; Override;
|
function GetDeviceSize(DC: HDC; var P: TPoint): Boolean; Override;
|
||||||
function GetDC(hWnd: HWND): HDC; override;
|
function GetDC(hWnd: HWND): HDC; override;
|
||||||
|
function GetFocus: HWND; override;
|
||||||
function GetObject(GDIObj: HGDIOBJ; BufSize: Integer; Buf: Pointer): Integer; override;
|
function GetObject(GDIObj: HGDIOBJ; BufSize: Integer; Buf: Pointer): Integer; override;
|
||||||
|
function GetProp(Handle : hwnd; Str : PChar): Pointer; override;
|
||||||
function GetRawImageFromDevice(SrcDC: HDC; const SrcRect: TRect; var NewRawImage: TRawImage): boolean; override;
|
function GetRawImageFromDevice(SrcDC: HDC; const SrcRect: TRect; var NewRawImage: TRawImage): boolean; override;
|
||||||
function GetRawImageFromBitmap(SrcBitmap, SrcMaskBitmap: HBITMAP; const SrcRect: TRect; var NewRawImage: TRawImage): boolean; Override;
|
function GetRawImageFromBitmap(SrcBitmap, SrcMaskBitmap: HBITMAP; const SrcRect: TRect; var NewRawImage: TRawImage): boolean; Override;
|
||||||
function GetSysColor(nIndex: Integer): DWORD; override;
|
function GetSysColor(nIndex: Integer): DWORD; override;
|
||||||
@ -61,6 +66,7 @@ function GetSystemMetrics(nIndex: Integer): Integer; override;
|
|||||||
function GetTextColor(DC: HDC) : TColorRef; Override;
|
function GetTextColor(DC: HDC) : TColorRef; Override;
|
||||||
function GetTextExtentPoint(DC: HDC; Str: PChar; Count: Integer; var Size: TSize): Boolean; override;
|
function GetTextExtentPoint(DC: HDC; Str: PChar; Count: Integer; var Size: TSize): Boolean; override;
|
||||||
function GetTextMetrics(DC: HDC; var TM: TTextMetric): Boolean; override;
|
function GetTextMetrics(DC: HDC; var TM: TTextMetric): Boolean; override;
|
||||||
|
Function GetWindowOrgEx(dc : hdc; P : PPoint): Integer; override;
|
||||||
function GetWindowRect(Handle: hwnd; var ARect: TRect): Integer; override;
|
function GetWindowRect(Handle: hwnd; var ARect: TRect): Integer; override;
|
||||||
function GetWindowRelativePosition(Handle: hwnd; var Left, Top: Integer): boolean; override;
|
function GetWindowRelativePosition(Handle: hwnd; var Left, Top: Integer): boolean; override;
|
||||||
function GetWindowSize(Handle: hwnd; var Width, Height: Integer): boolean; override;
|
function GetWindowSize(Handle: hwnd; var Width, Height: Integer): boolean; override;
|
||||||
@ -73,9 +79,17 @@ function MoveToEx(DC: HDC; X, Y: Integer; OldPoint: PPoint): Boolean; override;
|
|||||||
|
|
||||||
function Rectangle(DC: HDC; X1, Y1, X2, Y2: Integer): Boolean; override;
|
function Rectangle(DC: HDC; X1, Y1, X2, Y2: Integer): Boolean; override;
|
||||||
function ReleaseDC(hWnd: HWND; DC: HDC): Integer; override;
|
function ReleaseDC(hWnd: HWND; DC: HDC): Integer; override;
|
||||||
|
function RestoreDC(DC: HDC; SavedDC: Integer): Boolean; override;
|
||||||
|
|
||||||
|
function SaveDC(DC: HDC): Integer; override;
|
||||||
|
Function SelectClipRGN(DC : hDC; RGN : HRGN) : Longint; override;
|
||||||
function SelectObject(DC: HDC; GDIObj: HGDIOBJ): HGDIOBJ; override;
|
function SelectObject(DC: HDC; GDIObj: HGDIOBJ): HGDIOBJ; override;
|
||||||
|
function SetBKColor(DC: HDC; Color: TColorRef): TColorRef; override;
|
||||||
|
Function SetBkMode(DC: HDC; bkMode : Integer) : Integer; override;
|
||||||
function SetCursorPos(X, Y: Integer): Boolean; override;
|
function SetCursorPos(X, Y: Integer): Boolean; override;
|
||||||
|
function SetFocus(hWnd: HWND): HWND; override;
|
||||||
|
Function SetProp(Handle: hwnd; Str : PChar; Data : Pointer) : Boolean; override;
|
||||||
|
function SetTextColor(DC: HDC; Color: TColorRef): TColorRef; override;
|
||||||
function SetWindowOrgEx(DC : HDC; NewX, NewY : Integer; OldPoint: PPoint) : Boolean; override;
|
function SetWindowOrgEx(DC : HDC; NewX, NewY : Integer; OldPoint: PPoint) : Boolean; override;
|
||||||
function ShowWindow(hWnd: HWND; nCmdShow: Integer): Boolean; override;
|
function ShowWindow(hWnd: HWND; nCmdShow: Integer): Boolean; override;
|
||||||
function StretchBlt(DestDC: HDC; X, Y, Width, Height: Integer;
|
function StretchBlt(DestDC: HDC; X, Y, Width, Height: Integer;
|
||||||
|
@ -30,7 +30,7 @@ uses
|
|||||||
// Bindings
|
// Bindings
|
||||||
qt4, qtwidgets,
|
qt4, qtwidgets,
|
||||||
// LCL
|
// LCL
|
||||||
SysUtils, Controls, LCLType, Forms, Graphics,
|
SysUtils, Controls, LCLType, LCLProc, Forms, Graphics,
|
||||||
// Widgetset
|
// Widgetset
|
||||||
InterfaceBase, WSControls, WSLCLClasses;
|
InterfaceBase, WSControls, WSLCLClasses;
|
||||||
|
|
||||||
@ -122,6 +122,9 @@ var
|
|||||||
Method: TMethod;
|
Method: TMethod;
|
||||||
Hook : QObject_hookH;
|
Hook : QObject_hookH;
|
||||||
begin
|
begin
|
||||||
|
{$ifdef VerboseQt}
|
||||||
|
WriteLn('> TQtWSWinControl.CreateHandle for ',dbgsname(AWinControl));
|
||||||
|
{$endif}
|
||||||
QtWidget := TQtWidget.Create(AWinControl, AParams);
|
QtWidget := TQtWidget.Create(AWinControl, AParams);
|
||||||
|
|
||||||
// Various Events
|
// Various Events
|
||||||
@ -137,7 +140,7 @@ begin
|
|||||||
Result := THandle(QtWidget);
|
Result := THandle(QtWidget);
|
||||||
|
|
||||||
{$ifdef VerboseQt}
|
{$ifdef VerboseQt}
|
||||||
WriteLn('TQtWSWinControl.CreateHandle Result: ', IntToStr(Result));
|
WriteLn('< TQtWSWinControl.CreateHandle for ',dbgsname(AWinControl),' Result: ', dbgHex(Result));
|
||||||
{$endif}
|
{$endif}
|
||||||
end;
|
end;
|
||||||
|
|
||||||
|
@ -27,14 +27,11 @@ unit QtWSGrids;
|
|||||||
interface
|
interface
|
||||||
|
|
||||||
uses
|
uses
|
||||||
////////////////////////////////////////////////////
|
// Bindings
|
||||||
// I M P O R T A N T
|
qt4, qtwidgets,
|
||||||
////////////////////////////////////////////////////
|
// LCL
|
||||||
// To get as little as posible circles,
|
LCLType, LCLProc, Controls, Grids,
|
||||||
// uncomment only when needed for registration
|
// Widgetset
|
||||||
////////////////////////////////////////////////////
|
|
||||||
// Grids,
|
|
||||||
////////////////////////////////////////////////////
|
|
||||||
WSGrids, WSLCLClasses;
|
WSGrids, WSLCLClasses;
|
||||||
|
|
||||||
type
|
type
|
||||||
@ -87,4 +84,4 @@ initialization
|
|||||||
// RegisterWSComponent(TDrawGrid, TQtWSDrawGrid);
|
// RegisterWSComponent(TDrawGrid, TQtWSDrawGrid);
|
||||||
// RegisterWSComponent(TStringGrid, TQtWSStringGrid);
|
// RegisterWSComponent(TStringGrid, TQtWSStringGrid);
|
||||||
////////////////////////////////////////////////////
|
////////////////////////////////////////////////////
|
||||||
end.
|
end.
|
||||||
|
@ -920,7 +920,7 @@ begin
|
|||||||
|
|
||||||
// Focus
|
// Focus
|
||||||
|
|
||||||
QWidget_setFocusPolicy(QtCheckBox.Widget, QtStrongFocus);
|
//QWidget_setFocusPolicy(QtCheckBox.Widget, QtStrongFocus);
|
||||||
|
|
||||||
// Returns the Handle
|
// Returns the Handle
|
||||||
|
|
||||||
@ -1038,7 +1038,7 @@ begin
|
|||||||
|
|
||||||
// Focus
|
// Focus
|
||||||
|
|
||||||
QWidget_setFocusPolicy(QtRadioButton.Widget, QtStrongFocus);
|
//QWidget_setFocusPolicy(QtRadioButton.Widget, QtStrongFocus);
|
||||||
|
|
||||||
// Returns the Handle
|
// Returns the Handle
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user