* 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 CameraPlus 1.0
-import "data.js" as Data
Item {
id: overlay
property Camera cam
property bool animationRunning: false
property int policyMode: recording == true ? CameraResources.Recording : CameraResources.Video
- property bool controlsVisible: !animationRunning && cam.running && dimmer.opacity == 0.0
- && !cameraMode.busy
-// TODO:
+ property bool controlsVisible: !animationRunning && cam != null && cam.running
+ && dimmer.opacity == 0.0 && !cameraMode.busy
property bool pressed: overlay.recording || capture.pressed ||
zoomSlider.pressed || modeButton.pressed
anchors.right: parent.right
anchors.rightMargin: 20
anchors.verticalCenter: parent.verticalCenter
- iconSource: overlay.recording ? "image://theme/icon-m-camera-video-record" : "image://theme/icon-m-camera-video-record"
+ iconSource: overlay.recording ? cameraTheme.captureButtonRecordingIconId : cameraTheme.captureButtonVideoIconId
width: 75
height: 75
opacity: 0.5
expanded: settings.showToolBar
onExpandedChanged: settings.showToolBar = expanded;
- items: [
+ tools: CameraToolBarTools {
VideoTorchButton {
camera: cam
- },
+ }
+
VideoSceneButton {
-// TODO: hide when recording
- onClicked: toolBar.push(items)
- },
+ visible: !overlay.recording
+ onClicked: toolBar.push(tools)
+ }
+
VideoEvCompButton {
- onClicked: toolBar.push(items)
- },
+ onClicked: toolBar.push(tools)
+ }
+
VideoWhiteBalanceButton {
- onClicked: toolBar.push(items)
- },
+ onClicked: toolBar.push(tools)
+ }
+
VideoColorFilterButton {
- onClicked: toolBar.push(items)
- },
+ onClicked: toolBar.push(tools)
+ }
+
VideoMuteButton {
}
- ]
+ }
}
Rectangle {
Indicator {
id: resolutionIndicator
- source: "image://theme/" + Data.videoIcon(settings.videoResolution)
+ property string videoResolution: settings.device == 1 ? settings.secondaryVideoResolution : settings.primaryVideoResolution
+ property string videoRatio: settings.device == 1 ? settings.secondaryVideoAspectRatio : settings.primaryVideoAspectRatio
+ source: cameraTheme.videoIcon(videoRatio, videoResolution, settings.device)
}
Indicator {
id: wbIndicator
- source: visible ? "image://theme/" + Data.wbIcon(settings.videoWhiteBalance) + "-screen" : ""
- visible: settings.videoWhiteBalance != WhiteBalance.Auto
+ source: visible ? cameraTheme.whiteBalanceIcon(settings.videoWhiteBalance) : ""
+ visible: settings.videoWhiteBalance != WhiteBalance.Auto && !toolBar.expanded
}
Indicator {
id: cfIndicator
- source: "image://theme/" + Data.cfIcon(settings.videoColorFilter) + "-screen"
- visible: settings.videoColorFilter != ColorTone.Normal
+ source: visible ? cameraTheme.colorFilterIcon(settings.videoColorFilter) : ""
+ visible: settings.videoColorFilter != ColorTone.Normal && !toolBar.expanded
+ }
+
+ Indicator {
+ id: sceneIndicator
+ visible: settings.videoSceneMode != Scene.Auto && (!toolBar.expanded || overlay.recording)
+ source: visible ? cameraTheme.videoSceneModeIcon(settings.videoSceneMode) : ""
}
Indicator {
id: gpsIndicator
visible: settings.useGps
- source: "image://theme/icon-m-camera-location"
+ source: cameraTheme.gpsIndicatorIcon
PropertyAnimation on opacity {
easing.type: Easing.OutSine
}
trackerStore.storeVideo(file);
+
+ if (toolBar.depth() > 1) {
+ toolBar.pop()
+ }
}
function startRecording() {