X-Git-Url: http://cgit.sxemacs.org/?p=harmattan%2Fcameraplus;a=blobdiff_plain;f=qml%2FFlashButton.qml;h=02029137b628a7beefd2f54f9c6bad295ccd060f;hp=32ca39d054bf01424b884bb155228431e77c323a;hb=e5ae33a4ee7a287d9790ea92e270a4d0fd4c4554;hpb=229f607b86e1fedf49901e24eefd147005e3b833 diff --git a/qml/FlashButton.qml b/qml/FlashButton.qml index 32ca39d..0202913 100644 --- a/qml/FlashButton.qml +++ b/qml/FlashButton.qml @@ -3,7 +3,7 @@ /*! * This file is part of CameraPlus. * - * Copyright (C) 2012 Mohammed Sameer + * 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 @@ -20,59 +20,37 @@ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA */ -import QtQuick 1.1 -import com.nokia.meego 1.1 +import QtQuick 2.0 import QtCamera 1.0 -import "data.js" as Data -Selector { - id: button +CameraToolIcon { + id: button - iconSource: "image://theme/" + Data.flashIcon(settings.imageFlashMode) + iconSource: cameraTheme.flashIcon(settings.imageFlashMode) - title: qsTr("Flash mode"); + property list toolsModel: [ + ToolsModelItem {icon: cameraTheme.flashAutoIconId; value: Flash.Auto }, + ToolsModelItem {icon: cameraTheme.flashOnIconId; value: Flash.On }, + ToolsModelItem {icon: cameraTheme.flashOffIconId; value: Flash.Off }, + ToolsModelItem {icon: cameraTheme.flashRedEyeIconId; value: Flash.RedEye } + ] - widget: Row { - id: row - height: button.checked ? 64 : 0 - width: button.checked ? (children.length * height) + (children.length - 1) * spacing : 0 - spacing: 10 - - Behavior on width { - // TODO: seems animation is not working - PropertyAnimation { duration: 250; } - } - - CheckButton { - normalIcon: "image://theme/" + Data.flashIcon(value) - checkedIcon: "image://theme/" + Data.flashPressedIcon(value) - onClicked: settings.imageFlashMode = value; - value: Flash.Auto - savedValue: settings.imageFlashMode - } - - CheckButton { - normalIcon: "image://theme/" + Data.flashIcon(value) - checkedIcon: "image://theme/" + Data.flashPressedIcon(value) - onClicked: settings.imageFlashMode = value; - value: Flash.On - savedValue: settings.imageFlashMode - } + property CameraToolBarTools tools: CameraToolBarTools { + CameraLabel { + height: parent ? parent.height : 0 + text: qsTr("Flash") + verticalAlignment: Text.AlignVCenter + } - CheckButton { - normalIcon: "image://theme/" + Data.flashIcon(value) - checkedIcon: "image://theme/" + Data.flashPressedIcon(value) - onClicked: settings.imageFlashMode = value; - value: Flash.Off - savedValue: settings.imageFlashMode - } + Repeater { + model: parent != null && parent.visible ? toolsModel : undefined - CheckButton { - normalIcon: "image://theme/" + Data.flashIcon(value) - checkedIcon: "image://theme/" + Data.flashPressedIcon(value) - onClicked: settings.imageFlashMode = value; - value: Flash.RedEye - savedValue: settings.imageFlashMode - } + delegate: CheckButton { + iconSource: icon + onClicked: settings.imageFlashMode = value + checked: settings.imageFlashMode == value + visible: !(overlay.cam.quirks.hasQuirk(Quirks.NoRedEyeFlash) && value == Flash.RedEye) + } } + } }