/*!
* 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
import com.nokia.meego 1.1
import QtCamera 1.0
import CameraPlus 1.0
-import QtMobility.systeminfo 1.2
Page {
id: page
- property bool needsPipeline: true
property int policyMode: CameraResources.None
property Camera cam: null
+ property Item dimmer: null
+ property ControlsActivationData activationData: ControlsActivationData {}
property bool controlsVisible: cam.running && !standby.visible
- property bool zoomVisible: true
- property bool modesVisible: true
- property bool standbyVisible: true
property bool focusReticleVisible: true
+ property bool enableViewfinder: true
property alias previewAnimationRunning: preview.animationRunning
}
onStatusChanged: {
- if (status == PageStatus.Active) {
- focusReticle.setRegionOfInterest();
- }
- }
-
- Rectangle {
- // TODO: fade out transition
- // TODO: there is a toolbar visible on the first startup
- id: standby
- color: "black"
- anchors.fill: parent
- visible: standbyVisible && page.status == PageStatus.Active && pipelineManager.showStandBy
- z: 2
- MouseArea {
- anchors.fill: parent
- enabled: parent.visible
- }
-
- Image {
- id: icon
- source: "image://theme/icon-l-camera-standby"
- anchors.centerIn: parent
+ if (status == PageStatus.Activating && enableViewfinder) {
+ cam.renderingEnabled = true;
}
+ else if (status == PageStatus.Active) {
+ focusReticle.resetReticle();
- Label {
- anchors.top: icon.bottom
- anchors.right: parent.right
- anchors.left: parent.left
- text: qsTr("Resources lost")
- color: "white"
- font.pixelSize: 36
- horizontalAlignment: Text.AlignHCenter
- visible: pipelineManager.state == "policyLost"
+ if (!enableViewfinder) {
+ cam.renderingEnabled = false;
+ }
}
}
anchors.right: parent.right
anchors.rightMargin: 20
anchors.bottomMargin: 20
- visible: controlsVisible && modesVisible
+ visible: controlsVisible && activationData.modeSelectorVisible
}
PreviewImage {
anchors.top: parent.top
anchors.topMargin: 0
anchors.horizontalCenter: parent.horizontalCenter
- visible: controlsVisible && zoomVisible
+ visible: controlsVisible && activationData.zoomBarVisible
}
function checkDiskSpace() {
return fileSystem.hasFreeSpace(fileNaming.path);
}
-
- function checkBattery() {
- // We are fine if we are connected to the charger:
- if (batteryMonitor.chargingState == BatteryInfo.Charging) {
- return true;
- }
-
- // If we have enough battery then we are fine:
- if (batteryMonitor.batteryStatus > BatteryInfo.BatteryCritical) {
- return true;
- }
-
- return false;
- }
-
- BatteryInfo {
- id: batteryMonitor
- monitorChargingStateChanges: cam.running
- monitorBatteryStatusChanges: cam.running
-
- onChargingStateChanged: {
- if (!checkBattery()) {
- parent.batteryLow();
- }
- }
-
- onBatteryStatusChanged: {
- if (!checkBattery()) {
- parent.batteryLow();
- }
- }
- }
}