diff options
Diffstat (limited to 'examples/quick/demos/calqlatr/content')
-rw-r--r-- | examples/quick/demos/calqlatr/content/Button.qml | 104 | ||||
-rw-r--r-- | examples/quick/demos/calqlatr/content/Display.qml | 203 | ||||
-rw-r--r-- | examples/quick/demos/calqlatr/content/NumberPad.qml | 81 | ||||
-rw-r--r-- | examples/quick/demos/calqlatr/content/calculator.js | 161 | ||||
-rw-r--r-- | examples/quick/demos/calqlatr/content/images/paper-edge-left.png | bin | 12401 -> 0 bytes | |||
-rw-r--r-- | examples/quick/demos/calqlatr/content/images/paper-edge-right.png | bin | 12967 -> 0 bytes | |||
-rw-r--r-- | examples/quick/demos/calqlatr/content/images/paper-grip.png | bin | 298 -> 0 bytes |
7 files changed, 0 insertions, 549 deletions
diff --git a/examples/quick/demos/calqlatr/content/Button.qml b/examples/quick/demos/calqlatr/content/Button.qml deleted file mode 100644 index 5279596ef1..0000000000 --- a/examples/quick/demos/calqlatr/content/Button.qml +++ /dev/null @@ -1,104 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2017 The Qt Company Ltd. -** Contact: https://www.qt.io/licensing/ -** -** This file is part of the examples of the Qt Toolkit. -** -** $QT_BEGIN_LICENSE:BSD$ -** 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. -** -** BSD License Usage -** Alternatively, you may use this file under the terms of the BSD license -** as follows: -** -** "Redistribution and use in source and binary forms, with or without -** modification, are permitted provided that the following conditions are -** met: -** * Redistributions of source code must retain the above copyright -** notice, this list of conditions and the following disclaimer. -** * Redistributions in binary form must reproduce the above copyright -** notice, this list of conditions and the following disclaimer in -** the documentation and/or other materials provided with the -** distribution. -** * Neither the name of The Qt Company Ltd nor the names of its -** contributors may be used to endorse or promote products derived -** from this software without specific prior written permission. -** -** -** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." -** -** $QT_END_LICENSE$ -** -****************************************************************************/ - -import QtQuick 2.0 - -Item { - id: button - property alias text: textItem.text - property color color: "#eceeea" - - property bool operator: false - property bool dimmable: false - property bool dimmed: false - - width: 30 - height: 50 - - Text { - id: textItem - font.pixelSize: 48 - wrapMode: Text.WordWrap - lineHeight: 0.75 - color: (dimmable && dimmed) ? Qt.darker(button.color) : button.color - Behavior on color { ColorAnimation { duration: 120; easing.type: Easing.OutElastic} } - states: [ - State { - name: "pressed" - when: mouse.pressed && !dimmed - PropertyChanges { - target: textItem - color: Qt.lighter(button.color) - } - } - ] - } - - MouseArea { - id: mouse - anchors.fill: parent - anchors.margins: -5 - onClicked: { - if (operator) - window.operatorPressed(parent.text) - else - window.digitPressed(parent.text) - } - } - - function updateDimmed() { - dimmed = window.isButtonDisabled(button.text) - } - - Component.onCompleted: { - numPad.buttonPressed.connect(updateDimmed) - updateDimmed() - } -} diff --git a/examples/quick/demos/calqlatr/content/Display.qml b/examples/quick/demos/calqlatr/content/Display.qml deleted file mode 100644 index 9ddd64d251..0000000000 --- a/examples/quick/demos/calqlatr/content/Display.qml +++ /dev/null @@ -1,203 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2017 The Qt Company Ltd. -** Contact: https://www.qt.io/licensing/ -** -** This file is part of the examples of the Qt Toolkit. -** -** $QT_BEGIN_LICENSE:BSD$ -** 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. -** -** BSD License Usage -** Alternatively, you may use this file under the terms of the BSD license -** as follows: -** -** "Redistribution and use in source and binary forms, with or without -** modification, are permitted provided that the following conditions are -** met: -** * Redistributions of source code must retain the above copyright -** notice, this list of conditions and the following disclaimer. -** * Redistributions in binary form must reproduce the above copyright -** notice, this list of conditions and the following disclaimer in -** the documentation and/or other materials provided with the -** distribution. -** * Neither the name of The Qt Company Ltd nor the names of its -** contributors may be used to endorse or promote products derived -** from this software without specific prior written permission. -** -** -** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." -** -** $QT_END_LICENSE$ -** -****************************************************************************/ - -import QtQuick 2.0 -import QtQuick.Window 2.0 - -Item { - id: display - property real fontSize: Math.floor(Screen.pixelDensity * 5.0) - property bool enteringDigits: false - property int maxDigits: (width / fontSize) + 1 - property string displayedOperand - property string errorString: qsTr("ERROR") - property bool isError: displayedOperand === errorString - - function displayOperator(operator) - { - listView.model.append({ "operator": operator, "operand": "" }) - enteringDigits = true - listView.positionViewAtEnd() - } - - function newLine(operator, operand) - { - displayedOperand = displayNumber(operand) - listView.model.append({ "operator": operator, "operand": displayedOperand }) - enteringDigits = false - listView.positionViewAtEnd() - } - - function appendDigit(digit) - { - if (!enteringDigits) - listView.model.append({ "operator": "", "operand": "" }) - var i = listView.model.count - 1; - listView.model.get(i).operand = listView.model.get(i).operand + digit; - enteringDigits = true - listView.positionViewAtEnd() - } - - function setDigit(digit) - { - var i = listView.model.count - 1; - listView.model.get(i).operand = digit; - listView.positionViewAtEnd() - } - - function clear() - { - displayedOperand = "" - if (enteringDigits) { - var i = listView.model.count - 1 - if (i >= 0) - listView.model.remove(i) - enteringDigits = false - } - } - - // Returns a string representation of a number that fits in - // display.maxDigits characters, trying to keep as much precision - // as possible. If the number cannot be displayed, returns an - // error string. - function displayNumber(num) { - if (typeof(num) != "number") - return errorString; - - var intNum = parseInt(num); - var intLen = intNum.toString().length; - - // Do not count the minus sign as a digit - var maxLen = num < 0 ? maxDigits + 1 : maxDigits; - - if (num.toString().length <= maxLen) { - if (isFinite(num)) - return num.toString(); - return errorString; - } - - // Integer part of the number is too long - try - // an exponential notation - if (intNum == num || intLen > maxLen - 3) { - var expVal = num.toExponential(maxDigits - 6).toString(); - if (expVal.length <= maxLen) - return expVal; - } - - // Try a float presentation with fixed number of digits - var floatStr = parseFloat(num).toFixed(maxDigits - intLen - 1).toString(); - if (floatStr.length <= maxLen) - return floatStr; - - return errorString; - } - - Item { - id: theItem - width: parent.width + 32 - height: parent.height - - Rectangle { - id: rect - x: 16 - color: "white" - height: parent.height - width: display.width - 16 - } - Image { - anchors.right: rect.left - source: "images/paper-edge-left.png" - height: parent.height - fillMode: Image.TileVertically - } - Image { - anchors.left: rect.right - source: "images/paper-edge-right.png" - height: parent.height - fillMode: Image.TileVertically - } - - Image { - id: grip - source: "images/paper-grip.png" - anchors.horizontalCenter: parent.horizontalCenter - anchors.bottom: parent.bottom - anchors.bottomMargin: 20 - } - - ListView { - id: listView - x: 16; y: 30 - width: display.width - height: display.height - 50 - y - delegate: Item { - height: display.fontSize * 1.1 - width: parent.width - Text { - id: operator - x: 6 - font.pixelSize: display.fontSize - color: "#6da43d" - text: model.operator - } - Text { - id: operand - font.pixelSize: display.fontSize - anchors.right: parent.right - anchors.rightMargin: 22 - text: model.operand - } - } - model: ListModel { } - } - - } - -} diff --git a/examples/quick/demos/calqlatr/content/NumberPad.qml b/examples/quick/demos/calqlatr/content/NumberPad.qml deleted file mode 100644 index 9936116fa1..0000000000 --- a/examples/quick/demos/calqlatr/content/NumberPad.qml +++ /dev/null @@ -1,81 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2017 The Qt Company Ltd. -** Contact: https://www.qt.io/licensing/ -** -** This file is part of the examples of the Qt Toolkit. -** -** $QT_BEGIN_LICENSE:BSD$ -** 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. -** -** BSD License Usage -** Alternatively, you may use this file under the terms of the BSD license -** as follows: -** -** "Redistribution and use in source and binary forms, with or without -** modification, are permitted provided that the following conditions are -** met: -** * Redistributions of source code must retain the above copyright -** notice, this list of conditions and the following disclaimer. -** * Redistributions in binary form must reproduce the above copyright -** notice, this list of conditions and the following disclaimer in -** the documentation and/or other materials provided with the -** distribution. -** * Neither the name of The Qt Company Ltd nor the names of its -** contributors may be used to endorse or promote products derived -** from this software without specific prior written permission. -** -** -** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." -** -** $QT_END_LICENSE$ -** -****************************************************************************/ - -import QtQuick 2.0 - -Grid { - columns: 3 - columnSpacing: 32 - rowSpacing: 16 - - signal buttonPressed - - Button { text: "7" } - Button { text: "8" } - Button { text: "9" } - Button { text: "4" } - Button { text: "5" } - Button { text: "6" } - Button { text: "1" } - Button { text: "2" } - Button { text: "3" } - Button { text: "0" } - Button { text: "."; dimmable: true } - Button { text: " " } - Button { text: "±"; color: "#6da43d"; operator: true; dimmable: true } - Button { text: "−"; color: "#6da43d"; operator: true; dimmable: true } - Button { text: "+"; color: "#6da43d"; operator: true; dimmable: true } - Button { text: "√"; color: "#6da43d"; operator: true; dimmable: true } - Button { text: "÷"; color: "#6da43d"; operator: true; dimmable: true } - Button { text: "×"; color: "#6da43d"; operator: true; dimmable: true } - Button { text: "C"; color: "#6da43d"; operator: true } - Button { text: " "; color: "#6da43d"; operator: true } - Button { text: "="; color: "#6da43d"; operator: true; dimmable: true } -} diff --git a/examples/quick/demos/calqlatr/content/calculator.js b/examples/quick/demos/calqlatr/content/calculator.js deleted file mode 100644 index 37eb752191..0000000000 --- a/examples/quick/demos/calqlatr/content/calculator.js +++ /dev/null @@ -1,161 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2017 The Qt Company Ltd. -** Contact: https://www.qt.io/licensing/ -** -** This file is part of the examples of the Qt Toolkit. -** -** $QT_BEGIN_LICENSE:BSD$ -** 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. -** -** BSD License Usage -** Alternatively, you may use this file under the terms of the BSD license -** as follows: -** -** "Redistribution and use in source and binary forms, with or without -** modification, are permitted provided that the following conditions are -** met: -** * Redistributions of source code must retain the above copyright -** notice, this list of conditions and the following disclaimer. -** * Redistributions in binary form must reproduce the above copyright -** notice, this list of conditions and the following disclaimer in -** the documentation and/or other materials provided with the -** distribution. -** * Neither the name of The Qt Company Ltd nor the names of its -** contributors may be used to endorse or promote products derived -** from this software without specific prior written permission. -** -** -** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." -** -** $QT_END_LICENSE$ -** -****************************************************************************/ - -var curVal = 0 -var memory = 0 -var lastOp = "" -var previousOperator = "" -var digits = "" - -function disabled(op) { - if (digits == "" && !((op >= "0" && op <= "9") || op == ".")) - return true - else if (op == '=' && previousOperator.length != 1) - return true - else if (op == "." && digits.toString().search(/\./) != -1) { - return true - } else if (op == "√" && digits.toString().search(/-/) != -1) { - return true - } else { - return false - } -} - -function digitPressed(op) -{ - if (disabled(op)) - return - if (digits.toString().length >= display.maxDigits) - return - if (lastOp.toString().length == 1 && ((lastOp >= "0" && lastOp <= "9") || lastOp == ".") ) { - digits = digits + op.toString() - display.appendDigit(op.toString()) - } else { - digits = op - display.appendDigit(op.toString()) - } - lastOp = op -} - -function operatorPressed(op) -{ - if (disabled(op)) - return - lastOp = op - - if (op == "±") { - digits = Number(digits.valueOf() * -1) - display.setDigit(display.displayNumber(digits)) - return - } - - if (previousOperator == "+") { - digits = Number(digits.valueOf()) + Number(curVal.valueOf()) - } else if (previousOperator == "−") { - digits = Number(curVal.valueOf()) - Number(digits.valueOf()) - } else if (previousOperator == "×") { - digits = Number(curVal) * Number(digits.valueOf()) - } else if (previousOperator == "÷") { - digits = Number(curVal) / Number(digits.valueOf()) - } - - if (op == "+" || op == "−" || op == "×" || op == "÷") { - previousOperator = op - curVal = digits.valueOf() - digits = "" - display.displayOperator(previousOperator) - return - } - - if (op == "=") { - display.newLine("=", digits.valueOf()) - } - - curVal = 0 - previousOperator = "" - - if (op == "1/x") { - digits = (1 / digits.valueOf()).toString() - } else if (op == "x^2") { - digits = (digits.valueOf() * digits.valueOf()).toString() - } else if (op == "Abs") { - digits = (Math.abs(digits.valueOf())).toString() - } else if (op == "Int") { - digits = (Math.floor(digits.valueOf())).toString() - } else if (op == "√") { - digits = Number(Math.sqrt(digits.valueOf())) - display.newLine("√", digits.valueOf()) - } else if (op == "mc") { - memory = 0; - } else if (op == "m+") { - memory += digits.valueOf() - } else if (op == "mr") { - digits = memory.toString() - } else if (op == "m-") { - memory = digits.valueOf() - } else if (op == "backspace") { - digits = digits.toString().slice(0, -1) - display.clear() - display.appendDigit(digits) - } else if (op == "Off") { - Qt.quit(); - } - - // Reset the state on 'C' operator or after - // an error occurred - if (op == "C" || display.isError) { - display.clear() - curVal = 0 - memory = 0 - lastOp = "" - digits = "" - } -} - diff --git a/examples/quick/demos/calqlatr/content/images/paper-edge-left.png b/examples/quick/demos/calqlatr/content/images/paper-edge-left.png Binary files differdeleted file mode 100644 index ca29a3ae10..0000000000 --- a/examples/quick/demos/calqlatr/content/images/paper-edge-left.png +++ /dev/null diff --git a/examples/quick/demos/calqlatr/content/images/paper-edge-right.png b/examples/quick/demos/calqlatr/content/images/paper-edge-right.png Binary files differdeleted file mode 100644 index 7c2da7b930..0000000000 --- a/examples/quick/demos/calqlatr/content/images/paper-edge-right.png +++ /dev/null diff --git a/examples/quick/demos/calqlatr/content/images/paper-grip.png b/examples/quick/demos/calqlatr/content/images/paper-grip.png Binary files differdeleted file mode 100644 index 953c408bca..0000000000 --- a/examples/quick/demos/calqlatr/content/images/paper-grip.png +++ /dev/null |