Initial ui reimplementation. Still in its early phase.
[harmattan/cameraplus] / qml / FlashButton.qml
index 08bfd9e..9582323 100644 (file)
@@ -3,7 +3,7 @@
 /*!
  * This file is part of CameraPlus.
  *
- * Copyright (C) 2012 Mohammed Sameer <msameer@foolab.org>
+ * Copyright (C) 2012-2013 Mohammed Sameer <msameer@foolab.org>
  *
  * This library is free software; you can redistribute it and/or
  * modify it under the terms of the GNU Lesser General Public
@@ -25,65 +25,43 @@ import com.nokia.meego 1.1
 import QtCamera 1.0
 import "data.js" as Data
 
-Selector {
+ToolIcon {
         id: button
 
-        property alias value: flash.value
-
         iconSource: "image://theme/" + Data.flashIcon(settings.imageFlashMode)
 
-        title: qsTr("Flash mode");
-
-        Flash {
-                // TODO: move this out of here.
-                id: flash
-                camera: cam
-                value: settings.imageFlashMode
-                       // TODO: scene modes can change flash value. what to do here ?
-                onValueChanged: settings.imageFlashMode = value;
-        }
-
-        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; }
-                }
-
+        property list<Item> items: [
+                Label {
+                        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.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
-                }
-
+                },
                 CheckButton {
                         normalIcon: "image://theme/" + Data.flashIcon(value)
                         checkedIcon: "image://theme/" + Data.flashPressedIcon(value)
                         onClicked: settings.imageFlashMode = value;
                         value: Flash.Off
                         savedValue: settings.imageFlashMode
-                }
-
+                },
                 CheckButton {
                         normalIcon: "image://theme/" + Data.flashIcon(value)
                         checkedIcon: "image://theme/" + Data.flashPressedIcon(value)
                         onClicked: settings.imageFlashMode = value;
                         value: Flash.RedEye
                         savedValue: settings.imageFlashMode
-                }
-        }
+                }]
 }