X-Git-Url: http://cgit.sxemacs.org/?p=harmattan%2Fcameraplus;a=blobdiff_plain;f=qml%2FModeButton.qml;h=830e143964c7eb141147217d8b7bb02e1a968832;hp=1101144535b7f636a6c8ff6006067f1db55640b3;hb=c54bd1327085d9e1d8a9ff3236aa805842545a3e;hpb=86e1c0d20f4ceb8eac527d91f3d372ed7fcb67ed diff --git a/qml/ModeButton.qml b/qml/ModeButton.qml index 1101144..830e143 100644 --- a/qml/ModeButton.qml +++ b/qml/ModeButton.qml @@ -1,133 +1,40 @@ // -*- qml -*- -import QtQuick 1.1 +/*! + * This file is part of CameraPlus. + * + * Copyright (C) 2012-2013 Mohammed Sameer + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + */ + + +import QtQuick 2.0 import QtCamera 1.0 -Rectangle { - id: button - property int mode: Camera.ImageMode - - color: "black" - width: 60 - height: 120 - smooth: true - radius: width - border.width: 2 - border.color: "gray" - - visible: cam.running && cam.idle && !cameraMode.animationRunning - - Rectangle { - id: highlighter - width: parent.width - height: parent.width - color: mouse.pressed ? "lightblue" : "white" - radius: parent.width - y: mode == 1 ? video.y : image.y - } - - Column { - Image { - id: image - width: button.width - height: width -// anchors.top: parent.top - property string released: "icon-m-viewfinder-camera.png" - property string active: "icon-m-viewfinder-camera-selected.png" - source: mouse.pressed ? "/usr/share/themes/blanco/meegotouch/icons/" + released : button.mode == 0 ? "/usr/share/themes/blanco/meegotouch/icons/" + active : "/usr/share/themes/blanco/meegotouch/icons/" + released - } - - Image { - id: video - width: button.width - height: width - property string released: "icon-m-camera-video-record.png" - property string active: "icon-m-camera-video-selected.png" - source: mouse.pressed ? "/usr/share/themes/blanco/meegotouch/icons/" + released : button.mode == 1 ? "/usr/share/themes/blanco/meegotouch/icons/" + active : "/usr/share/themes/blanco/meegotouch/icons/" + released - } - } - - MouseArea { - anchors.fill: parent - id: mouse - drag.target: highlighter - drag.axis: Drag.YAxis - drag.minimumY: 0 - drag.maximumY: parent.height / 2 - onReleased: { - if (!drag.active) { - if (mode == 0) { - mode = Camera.VideoMode; -// highlighter.y = video.y; - } - else { - mode = Camera.ImageMode; -// highlighter.y = image.y; - } - return; - } - -// var pos = 0; - if (mouse.y >= video.y) { - mode = Camera.VideoMode; -// pos = video.y; - } - else { - mode = Camera.ImageMode; -// pos = image.y; - } - -// highlighter.y = pos; - } - - onPressed: { - var y = mouse.y - highlighter.height / 2; - - if (y > drag.maximumY) { - y = drag.maximumY; - } - - else if (y < drag.minimumY) { - y = 0; - } - - highlighter.y = y - } - } - -/* - ListView { - anchors.fill: parent - interactive: false - - model: ListModel { - id: model - ListElement { - mode: 0 - released: "icon-m-viewfinder-camera.png" - active: "icon-m-viewfinder-camera-selected.png" - } - - ListElement { - mode: 1 - released: "icon-m-camera-video-record.png" - active: "icon-m-camera-video-selected.png" - } - } - - delegate: Rectangle { - width: button.width - height: button.width - radius: parent.width - smooth: true - color: mouse.pressed ? "black" : button.mode == mode ? "white" : "black" - Image { - z: 10 - id: image - source: mouse.pressed ? "/usr/share/themes/blanco/meegotouch/icons/" + released : button.mode == mode ? "/usr/share/themes/blanco/meegotouch/icons/" + active : "/usr/share/themes/blanco/meegotouch/icons/" + released - anchors.fill: parent - } - } +CaptureButton { + width: 55 + height: 55 + opacity: 0.5 + + iconSource: settings.mode == Camera.VideoMode ? cameraTheme.cameraImageIconId : cameraTheme.cameraVideoIconId + onClicked: { + if (settings.mode == Camera.VideoMode) { + settings.mode = Camera.ImageMode + } else { + settings.mode = Camera.VideoMode } - */ + } }