blob: cab1103eac558cc6b12e7e654bad43ab83c39141 [file] [log] [blame]
/****************************************************************************
**
** Copyright (C) 2016 The Qt Company Ltd.
** Contact: https://www.qt.io/licensing/
**
** This file is part of the QtQml module of the Qt Toolkit.
**
** $QT_BEGIN_LICENSE:GPL-EXCEPT$
** Commercial License Usage
** Licensees holding valid commercial Qt licenses may use this file in
** accordance with the commercial license agreement provided with the
** Software or, alternatively, in accordance with the terms contained in
** a written agreement between you and The Qt Company. For licensing terms
** and conditions see https://www.qt.io/terms-conditions. For further
** information use the contact form at https://www.qt.io/contact-us.
**
** GNU General Public License Usage
** Alternatively, this file may be used under the terms of the GNU
** General Public License version 3 as published by the Free Software
** Foundation with exceptions as appearing in the file LICENSE.GPL3-EXCEPT
** included in the packaging of this file. Please review the following
** information to ensure the GNU General Public License requirements will
** be met: https://www.gnu.org/licenses/gpl-3.0.html.
**
** $QT_END_LICENSE$
**
****************************************************************************/
import QtQuick 2.0
Rectangle {
id: main
width: 800; height: 600
focus: true
color: "#eeeeee"
property variant hAlign: Image.AlignHCenter
property variant vAlign: Image.AlignVCenter
property bool mirror: false
property string source: "qt-logo.png"
Flow {
anchors.fill: parent
anchors { topMargin: 20; leftMargin: 20; rightMargin: 20 }
spacing: 30
ImageNG {
horizontalAlignment: main.hAlign; verticalAlignment: main.vAlign
mirror: main.mirror; source: main.source
explicitSize: false
label: "implicit size"
}
ImageNG {
horizontalAlignment: main.hAlign; verticalAlignment: main.vAlign
mirror: main.mirror; source: main.source
label: "explicit size"
}
ImageNG {
horizontalAlignment: main.hAlign; verticalAlignment: main.vAlign
fillMode: Image.Pad
mirror: main.mirror; source: main.source
label: "padding"
}
ImageNG {
horizontalAlignment: main.hAlign; verticalAlignment: main.vAlign
fillMode: Image.Tile
mirror: main.mirror; source: main.source
label: "tile"
}
ImageNG {
horizontalAlignment: main.hAlign; verticalAlignment: main.vAlign
fillMode: Image.TileHorizontally
mirror: main.mirror; source: main.source
label: "tile horizontally"
}
ImageNG {
horizontalAlignment: main.hAlign; verticalAlignment: main.vAlign
fillMode: Image.TileVertically
mirror: main.mirror; source: main.source
label: "tile vertically"
}
ImageNG {
horizontalAlignment: main.hAlign; verticalAlignment: main.vAlign
fillMode: Image.PreserveAspectFit
mirror: main.mirror; source: main.source
label: "preserve aspect fit"
}
ImageNG {
horizontalAlignment: main.hAlign; verticalAlignment: main.vAlign
fillMode: Image.PreserveAspectFit
width: 150; height: 200
mirror: main.mirror; source: main.source
label: "preserve aspect fit"
}
ImageNG {
horizontalAlignment: main.hAlign; verticalAlignment: main.vAlign
fillMode: Image.PreserveAspectCrop
mirror: main.mirror; source: main.source
label: "preserve aspect crop"
}
ImageNG {
horizontalAlignment: main.hAlign; verticalAlignment: main.vAlign
fillMode: Image.PreserveAspectCrop
width: 150; height: 200
mirror: main.mirror; source: main.source
label: "preserve aspect crop"
}
}
Keys.onUpPressed: vAlign = Image.AlignTop
Keys.onDownPressed: vAlign = Image.AlignBottom
Keys.onLeftPressed: hAlign = Image.AlignLeft
Keys.onRightPressed: hAlign = Image.AlignRight
Keys.onPressed: {
if (event.key == Qt.Key_H)
hAlign = Image.AlignHCenter
else if (event.key == Qt.Key_V)
vAlign = Image.AlignVCenter
}
}