Qt: implemented setBorderStyle for IQtEdit interface

git-svn-id: trunk@19020 -
This commit is contained in:
zeljko 2009-03-18 09:38:19 +00:00
parent c99a91c256
commit 02c50e3d3e
4 changed files with 38 additions and 3 deletions

View File

@ -65,6 +65,7 @@ type
procedure setMaxLength(const ALength: Integer);
procedure setReadOnly(const AReadOnly: Boolean);
procedure setSelection(const AStart, ALength: Integer);
procedure setBorder(const ABorder: Boolean);
procedure Undo;
end;
@ -582,6 +583,7 @@ type
function hasSelectedText: Boolean;
procedure selectAll;
procedure setAlignment(const AAlignment: QtAlignment);
procedure setBorder(const ABorder: Boolean);
procedure setColor(const Value: PQColor); override;
procedure setTextColor(const Value: PQColor); override;
procedure setCursorPosition(const AValue: Integer);
@ -619,6 +621,7 @@ type
function getSelectionLength: Integer;
function isUndoAvailable: Boolean;
procedure setAlignment(const AAlignment: QtAlignment);
procedure setBorder(const ABorder: Boolean);
procedure setColor(const Value: PQColor); override;
procedure setTextColor(const Value: PQColor); override;
procedure setEchoMode(const AMode: QLineEditEchoMode);
@ -722,6 +725,7 @@ type
public
FList: TStrings;
destructor Destroy; override;
procedure setBorder(const ABorder: Boolean);
procedure SetColor(const Value: PQColor); override;
procedure setTextColor(const Value: PQColor); override;
function currentIndex: Integer;
@ -776,6 +780,7 @@ type
function getReadOnly: Boolean;
function getText: WideString; override;
function getTextStatic: Boolean; override;
procedure setBorder(const ABorder: Boolean);
procedure setFocusPolicy(const APolicy: QtFocusPolicy); override;
procedure setMinimum(const v: Double); virtual; abstract;
procedure setMaximum(const v: Double); virtual; abstract;
@ -5247,6 +5252,11 @@ begin
QLineEdit_setAlignment(QLineEditH(Widget), AAlignment);
end;
procedure TQtLineEdit.setBorder(const ABorder: Boolean);
begin
QLineEdit_setFrame(QLineEditH(Widget), ABorder);
end;
procedure TQtLineEdit.AttachEvents;
var
Method: TMethod;
@ -5538,6 +5548,14 @@ begin
QTextCursor_destroy(TextCursor);
end;
procedure TQtTextEdit.setBorder(const ABorder: Boolean);
begin
if ABorder then
QFrame_setFrameShape(QFrameH(Widget), QFrameStyledPanel)
else
QFrame_setFrameShape(QFrameH(Widget), QFrameNoFrame);
end;
procedure TQtTextEdit.AttachEvents;
var
Method: TMethod;
@ -6011,6 +6029,11 @@ begin
Result := False;
end;
procedure TQtComboBox.setBorder(const ABorder: Boolean);
begin
QComboBox_setFrame(QComboBoxH(Widget), ABorder);
end;
procedure TQtComboBox.setEchoMode(const AMode: QLineEditEchoMode);
begin
if LineEdit <> nil then
@ -6535,6 +6558,11 @@ begin
Result := False;
end;
procedure TQtAbstractSpinBox.setBorder(const ABorder: Boolean);
begin
QAbstractSpinBox_setFrame(QAbstractSpinBoxH(Widget), ABorder);
end;
procedure TQtAbstractSpinBox.setEchoMode(const AMode: QLineEditEchoMode);
begin
if LineEdit <> nil then

View File

@ -609,13 +609,18 @@ class procedure TQtWSWinControl.SetBorderStyle(const AWinControl: TWinControl;
const ABorderStyle: TBorderStyle);
var
Widget: TQtWidget;
QtEdit: IQtEdit;
begin
if not WSCheckHandleAllocated(AWinControl, 'SetBorderStyle') then
Exit;
Widget := TQtWidget(AWinControl.Handle);
QtEdit := nil;
if Widget is TQtFrame then
TQtFrame(Widget).setFrameShape(TBorderStyleToQtFrameShapeMap[ABorderStyle]);
TQtFrame(Widget).setFrameShape(TBorderStyleToQtFrameShapeMap[ABorderStyle])
else
if Supports(Widget, IQtEdit, QtEdit) then
QtEdit.setBorder(ABorderStyle = bsSingle);
end;
{ TQtWSDragImageList }

View File

@ -102,7 +102,8 @@ begin
QtSpinBox := TQtFloatSpinBox.Create(AWinControl, AParams)
else
QtSpinBox := TQtSpinBox.Create(AWinControl, AParams);
QtSpinBox.setBorder(TCustomFloatSpinEdit(AWinControl).BorderStyle = bsSingle);
QtSpinBox.AttachEvents;
InternalUpdateControl(QtSpinBox, TCustomFloatSpinEdit(AWinControl));

View File

@ -589,7 +589,7 @@ var
begin
QtTextEdit := TQtTextEdit.Create(AWinControl, AParams);
QtTextEdit.AttachEvents;
QtTextEdit.setBorder(TCustomMemo(AWinControl).BorderStyle = bsSingle);
QtTextEdit.setReadOnly(TCustomMemo(AWinControl).ReadOnly);
QtTextEdit.setLineWrapMode(WordWrapMap[TCustomMemo(AWinControl).WordWrap]);
// create our FList helper
@ -706,6 +706,7 @@ var
QtLineEdit: TQtLineEdit;
begin
QtLineEdit := TQtLineEdit.Create(AWinControl, AParams);
QtLineEdit.setBorder(TCustomEdit(AWinControl).BorderStyle = bsSingle);
QtLineEdit.setAlignment(AlignmentMap[TCustomEdit(AWinControl).Alignment]);
QtLineEdit.AttachEvents;