Convert TextSwitch to a platform specific component and rename it to CameraTextSwitch
[harmattan/cameraplus] / qml / ImageSceneButton.qml
index eb2f7f0..54ca4fb 100644 (file)
 
 import QtQuick 2.0
 import QtCamera 1.0
-import "data.js" as Data
 
 CameraToolIcon {
     id: button
 
-    iconId: Data.ismIcon(settings.imageSceneMode)
+    iconSource: cameraTheme.imageSceneModeIcon(settings.imageSceneMode)
+    property list<ToolsModelItem> toolsModel: [
+        ToolsModelItem {icon: cameraTheme.imageSceneModeAutoIconId; value: Scene.Auto},
+        ToolsModelItem {icon: cameraTheme.imageSceneModeCloseupIconId; value: Scene.Closeup},
+        ToolsModelItem {icon: cameraTheme.imageSceneModeLandscapeIconId; value: Scene.Landscape},
+        ToolsModelItem {icon: cameraTheme.imageSceneModePortraitIconId; value: Scene.Portrait},
+        ToolsModelItem {icon: cameraTheme.imageSceneModeNightIconId; value: Scene.Night},
+        ToolsModelItem {icon: cameraTheme.imageSceneModeSportIconId; value: Scene.Sport}
+    ]
 
-    property list<Item> items: [
+    property CameraToolBarTools tools: CameraToolBarTools {
         CameraLabel {
             height: parent ? parent.height : 0
             text: qsTr("Scene")
             verticalAlignment: Text.AlignVCenter
-        },
-        CheckButton {
-            normalIcon: "image://theme/" + Data.ismIcon(value)
-            checkedIcon: "image://theme/" + Data.ismSelectedIcon(value)
-            savedValue: settings.imageSceneMode
-            onClicked: settings.imageSceneMode = value
-            value: Scene.Auto
-        },
-        CheckButton {
-            normalIcon: "image://theme/" + Data.ismIcon(value)
-            checkedIcon: "image://theme/" + Data.ismSelectedIcon(value)
-            savedValue: settings.imageSceneMode
-            onClicked: settings.imageSceneMode = value
-            value: Scene.Closeup
-        },
-        CheckButton {
-            normalIcon: "image://theme/" + Data.ismIcon(value)
-            checkedIcon: "image://theme/" + Data.ismSelectedIcon(value)
-            savedValue: settings.imageSceneMode
-            onClicked: settings.imageSceneMode = value
-            value: Scene.Landscape
-        },
-        CheckButton {
-            normalIcon: "image://theme/" + Data.ismIcon(value)
-            checkedIcon: "image://theme/" + Data.ismSelectedIcon(value)
-            savedValue: settings.imageSceneMode
-            onClicked: settings.imageSceneMode = value
-            value: Scene.Portrait
-        },
-        CheckButton {
-            normalIcon: "image://theme/" + Data.ismIcon(value)
-            checkedIcon: "image://theme/" + Data.ismSelectedIcon(value)
-            savedValue: settings.imageSceneMode
-            onClicked: settings.imageSceneMode = value
-            value: Scene.Night
-        },
-        CheckButton {
-            normalIcon: "image://theme/" + Data.ismIcon(value)
-            checkedIcon: "image://theme/" + Data.ismSelectedIcon(value)
-            savedValue: settings.imageSceneMode
-            onClicked: settings.imageSceneMode = value
-            value: Scene.Sport
         }
-    ]
+
+        Repeater {
+            model: parent != null && parent.visible ? toolsModel : undefined
+
+            delegate: CheckButton {
+                iconSource: icon
+                onClicked: settings.imageSceneMode = value
+                checked: settings.imageSceneMode == value
+                visible: !(value == Scene.Night && overlay.cam.quirks.hasQuirk(Quirks.NoNightSceneMode))
+            }
+        }
+    }
 }