We have a set of components underneath qml/harmattan implementing harmattan specific
functionality. The rest should be more or less generic.
*/
@IMPORT_QT_QUICK@
-import com.nokia.meego 1.1
Column {
id: col
spacing: 10
width: parent.width
- Label {
+ CameraLabel {
font.pixelSize: 36
text: qsTr("Camera settings")
width: parent.width
width: parent.width
}
- TextField {
+ CameraTextField {
placeholderText: qsTr("Name or copyright")
width: parent.width
text: settings.creatorName
*/
@IMPORT_QT_QUICK@
-import com.nokia.meego 1.1
import "CameraToolBar.js" as Layout
Rectangle {
PropertyAnimation { duration: 100 }
}
- ToolIcon {
+ CameraToolIcon {
property bool __isMenu: true
visible: !parent.hideBack
id: menu
*/
@IMPORT_QT_QUICK@
-import com.nokia.meego 1.1
Item {
id: button
property url iconSource
- property Style platformStyle: ButtonStyle {}
+ property CameraButtonStyle platformStyle: CameraButtonStyle {}
property alias pressed: mouse.pressed
property alias mouseX: mouse.mouseX
source: button.iconSource
visible: source != ""
}
-}
\ No newline at end of file
+}
*/
@IMPORT_QT_QUICK@
-import com.nokia.meego 1.1
-ToolIcon {
+CameraToolIcon {
id: button
property string normalIcon: ""
property string checkedIcon: ""
*/
@IMPORT_QT_QUICK@
-import com.nokia.meego 1.1
import QtCamera 1.0
import "data.js" as Data
-ToolIcon {
+CameraToolIcon {
id: button
iconSource: "image://theme/" + Data.flashIcon(settings.imageFlashMode)
property list<Item> items: [
- Label {
+ CameraLabel {
height: parent ? parent.height : 0
text: qsTr("Flash")
verticalAlignment: Text.AlignVCenter
*/
@IMPORT_QT_QUICK@
-import com.nokia.meego 1.1
import QtCamera 1.0
import "data.js" as Data
-ToolIcon {
+CameraToolIcon {
id: button
iconSource: "image://theme/" + Data.cfIcon(settings.imageColorFilter)
property list<Item> items: [
- Label {
+ CameraLabel {
height: parent ? parent.height : 0
text: qsTr("Filter")
verticalAlignment: Text.AlignVCenter
*/
@IMPORT_QT_QUICK@
-import com.nokia.meego 1.1
import QtCamera 1.0
-ToolIcon {
+CameraToolIcon {
id: button
iconSource: settings.imageEvComp == 0 ? "image://theme/icon-m-camera-manual-exposure" : ""
- Label {
+ CameraLabel {
anchors.fill: parent
verticalAlignment: Text.AlignVCenter
visible: settings.imageEvComp != 0
}
property list<Item> items: [
- Label {
+ CameraLabel {
height: parent ? parent.height : 0
text: qsTr("EV")
verticalAlignment: Text.AlignVCenter
},
- Slider {
+ CameraSlider {
id: slider
width: 500
orientation: Qt.Horizontal
*/
@IMPORT_QT_QUICK@
-import com.nokia.meego 1.1
import QtCamera 1.0
import "data.js" as Data
-ToolIcon {
+CameraToolIcon {
id: button
iconSource: "image://theme/" + Data.isoIcon(settings.imageIso)
property list<Item> items: [
- Label {
+ CameraLabel {
height: parent ? parent.height : 0
text: qsTr("ISO")
verticalAlignment: Text.AlignVCenter
},
- Button {
+ CameraButton {
property int value: 0
onClicked: settings.imageIso = value
text: qsTr("Auto")
checked: settings.imageIso == value
anchors.verticalCenter: parent ? parent.verticalCenter : undefined
},
- Button {
+ CameraButton {
property int value: 100
onClicked: settings.imageIso = value
text: value
checked: settings.imageIso == value
anchors.verticalCenter: parent ? parent.verticalCenter : undefined
},
- Button {
+ CameraButton {
property int value: 200
onClicked: settings.imageIso = value
text: value
checked: settings.imageIso == value
anchors.verticalCenter: parent ? parent.verticalCenter : undefined
},
- Button {
+ CameraButton {
property int value: 400
onClicked: settings.imageIso = value
text: value
checked: settings.imageIso == value
anchors.verticalCenter: parent ? parent.verticalCenter : undefined
},
- Button {
+ CameraButton {
property int value: 800
onClicked: settings.imageIso = value
text: value
*/
@IMPORT_QT_QUICK@
-import com.nokia.meego 1.1
import QtCamera 1.0
import CameraPlus 1.0
import "data.js" as Data
*/
@IMPORT_QT_QUICK@
-import com.nokia.meego 1.1
Column {
spacing: 10
text: qsTr("Aspect ratio")
}
- ButtonRow {
+ CameraButtonRow {
id: aspectRatioRow
width: parent.width
enabled: cam.idle
Repeater {
model: imageSettings.aspectRatios
- delegate: Button {
+ delegate: CameraButton {
text: qsTr(modelData)
checked: settings.imageAspectRatio == modelData
onClicked: settings.imageAspectRatio = modelData
text: qsTr("Resolution")
}
- ButtonRow {
+ CameraButtonRow {
id: resolutionsRow
width: parent.width
enabled: cam.idle
model: imageSettings.resolutions.aspectRatio == settings.imageAspectRatio ?
imageSettings.resolutions : undefined
- delegate: Button {
+ delegate: CameraButton {
font.capitalization: Font.Capitalize
text: qsTr("%1 %2 Mpx").arg(resolutionName).arg(megaPixels)
checked: settings.imageResolution == resolutionName
*/
@IMPORT_QT_QUICK@
-import com.nokia.meego 1.1
import QtCamera 1.0
import "data.js" as Data
-ToolIcon {
+CameraToolIcon {
id: button
iconSource: "image://theme/" + Data.ismIcon(settings.imageSceneMode)
property list<Item> items: [
- Label {
+ CameraLabel {
height: parent ? parent.height : 0
text: qsTr("Scene")
verticalAlignment: Text.AlignVCenter
*/
@IMPORT_QT_QUICK@
-import com.nokia.meego 1.1
import QtCamera 1.0
Flickable {
width: parent.width
spacing: 10
- Label {
+ CameraLabel {
font.pixelSize: 36
text: qsTr("Image settings")
}
*/
@IMPORT_QT_QUICK@
-import com.nokia.meego 1.1
import QtCamera 1.0
import "data.js" as Data
-ToolIcon {
+CameraToolIcon {
id: button
iconSource: "image://theme/" + Data.wbIcon(settings.imageWhiteBalance)
property list<Item> items: [
- Label {
+ CameraLabel {
height: parent ? parent.height : 0
text: qsTr("WB")
verticalAlignment: Text.AlignVCenter
*/
@IMPORT_QT_QUICK@
-import com.nokia.meego 1.1
import CameraPlus 1.0
Item {
onFinished: loader.source = ""
}
+// TODO: rotation
QuillItem {
id: image
width: parent.width - 10
Component.onCompleted: initialize(itemData.url, itemData.mimetype)
visible: loader.source == ""
- Label {
+ CameraLabel {
anchors.fill: parent
visible: image.error
text: qsTr("Failed to load preview")
onClicked: postCaptureItem.clicked()
}
- ToolIcon {
+ CameraToolIcon {
// TODO: this is overlapping with error.
id: playIcon
anchors.centerIn: parent
@IMPORT_QT_QUICK@
import CameraPlus 1.0
-import com.nokia.meego 1.1
import QtCamera 1.0
Item {
anchors.leftMargin: 20
opacity: 0.8
- property bool show: deleteDialog.status == DialogStatus.Open ||
- deleteDialog.status == DialogStatus.Opening ||
- hideTimer.running || menu.status == DialogStatus.Open ||
- menu.status == DialogStatus.Opening ||
+ property bool show: deleteDialog.isOpen || deleteDialog.isOpening ||
+ hideTimer.running || menu.isOpen || menu.isOpening ||
(view.currentItem && view.currentItem.error) && !view.currentItem.playing
Behavior on anchors.bottomMargin {
}
items: [
- ToolIcon {
+ CameraToolIcon {
iconId: !available ? "icon-m-toolbar-favorite-mark-dimmed-white" : view.currentItem.itemData.favorite ? "icon-m-toolbar-favorite-mark-white" : "icon-m-toolbar-favorite-unmark-white"
onClicked: {
addOrRemoveFavorite()
restartTimer()
}
},
- ToolIcon {
+ CameraToolIcon {
iconId: available ? "icon-m-toolbar-share-white" : "icon-m-toolbar-share-dimmed-white"
onClicked: {
shareCurrentItem()
restartTimer()
}
},
- ToolIcon {
+ CameraToolIcon {
iconId: available ? "icon-m-toolbar-delete-white" : "icon-m-toolbar-delete-dimmed-white"
onClicked: {
deleteCurrentItem()
restartTimer()
}
},
- ToolIcon {
+ CameraToolIcon {
iconId: "icon-m-toolbar-view-menu-white"
onClicked: {
menu.open()
]
}
- QueryDialog {
+ CameraQueryDialog {
id: deleteDialog
titleText: qsTr("Delete item?");
acceptButtonText: qsTr("Yes");
}
}
- Menu {
+ CameraMenu {
id: menu
onStatusChanged: restartTimer()
- MenuLayout {
- MenuItem {
+ actions: [
+ CameraMenuAction {
text: qsTr("Captures in gallery")
onClicked: launchGallery()
- }
-
- MenuItem {
+ },
+ CameraMenuAction {
+ // TODO: this is not working...
text: qsTr("View in gallery")
enabled: available
onClicked: showInGallery()
}
- }
+ ]
}
Rectangle {
x: 20
height: parent.height
- Label {
+ CameraLabel {
text: view.currentItem ? view.currentItem.itemData.title : ""
width: parent.width / 2
height: parent.height
horizontalAlignment: Text.AlignLeft
}
- Label {
+ CameraLabel {
text: view.currentItem ? view.currentItem.itemData.created : ""
width: parent.width / 2
height: parent.height
*/
@IMPORT_QT_QUICK@
-import com.nokia.meego 1.1
import QtCamera 1.0
Image {
*/
@IMPORT_QT_QUICK@
-import com.nokia.meego 1.1
Rectangle {
property int duration
sourceSize.height: 20
}
- Label {
+ CameraLabel {
function formatDuration(dur) {
var secs = parseInt(recordingDuration.duration)
var minutes = Math.floor(secs / 60)
*/
@IMPORT_QT_QUICK@
-import com.nokia.meego 1.1
Row {
id: root
property alias text: label.text
- Label {
+ CameraLabel {
id: label
verticalAlignment: Text.AlignVCenter
}
*/
@IMPORT_QT_QUICK@
-import com.nokia.meego 1.0
Rectangle {
id: standby
anchors.centerIn: parent
}
- Label {
+ CameraLabel {
anchors.top: icon.bottom
anchors.right: parent.right
anchors.left: parent.left
*/
@IMPORT_QT_QUICK@
-import com.nokia.meego 1.1
Item {
property alias text: label.text
width: parent.width
height: switchComponent.height
- Text {
- property Style platformStyle: LabelStyle {}
-
+ CameraLabel {
id: label
anchors.left: parent.left
- font.family: platformStyle.fontFamily
- font.pixelSize: platformStyle.fontPixelSize
- color: platformStyle.textColor
wrapMode: Text.Wrap
}
- Switch {
+ CameraSwitch {
id: switchComponent
anchors.right: parent.right
}
*/
@IMPORT_QT_QUICK@
-import com.nokia.meego 1.1
import QtCamera 1.0
import "data.js" as Data
-ToolIcon {
+CameraToolIcon {
id: button
iconSource: "image://theme/" + Data.cfIcon(settings.videoColorFilter)
property list<Item> items: [
- Label {
+ CameraLabel {
height: parent ? parent.height : 0
text: qsTr("Filter")
verticalAlignment: Text.AlignVCenter
*/
@IMPORT_QT_QUICK@
-import com.nokia.meego 1.1
import QtCamera 1.0
-ToolIcon {
+CameraToolIcon {
id: button
iconSource: settings.videoEvComp == 0 ? "image://theme/icon-m-camera-manual-exposure" : ""
- Label {
+ CameraLabel {
anchors.fill: parent
verticalAlignment: Text.AlignVCenter
visible: settings.videoEvComp != 0
}
property list<Item> items: [
- Label {
+ CameraLabel {
height: parent ? parent.height : 0
text: qsTr("EV")
verticalAlignment: Text.AlignVCenter
},
- Slider {
+ CameraSlider {
id: slider
width: 500
orientation: Qt.Horizontal
*/
@IMPORT_QT_QUICK@
-import com.nokia.meego 1.1
-ToolIcon {
+CameraToolIcon {
iconSource: settings.videoMuted ? "image://theme/icon-m-toolbar-volume-off-white-selected" :
"image://theme/icon-m-toolbar-volume-white-selected"
onClicked: settings.videoMuted = !settings.videoMuted
*/
@IMPORT_QT_QUICK@
-import com.nokia.meego 1.1
import QtCamera 1.0
import CameraPlus 1.0
import "data.js" as Data
*/
@IMPORT_QT_QUICK@
-import com.nokia.meego 1.1
import CameraPlus 1.0
import QtCamera 1.0
import QtCameraExtras 1.0
}
items: [
- ToolIcon {
+ CameraToolIcon {
iconId: "icon-m-toolbar-mediacontrol-stop-white"
onClicked: video.stop()
},
- Slider {
+ CameraSlider {
id: slider
height: toolBar.height
anchors.verticalCenter: parent.verticalCenter
- platformStyle: SliderStyle {
- handleBackground: ""
- handleBackgroundPressed: ""
- }
+ handleBackground: ""
+ handleBackgroundPressed: ""
minimumValue: 0
maximumValue: video.duration
hideTimer.restart()
}
},
- ToolIcon {
+ CameraToolIcon {
id: control
iconId: !video.paused ? "icon-m-toolbar-mediacontrol-pause-white"
: "icon-m-toolbar-mediacontrol-play-white"
*/
@IMPORT_QT_QUICK@
-import com.nokia.meego 1.1
Column {
spacing: 10
text: qsTr("Resolution")
}
- ButtonRow {
+ CameraButtonRow {
width: parent.width
enabled: cam.idle
exclusive: false
model: videoSettings.resolutions
- delegate: Button {
+ delegate: CameraButton {
font.capitalization: Font.Capitalize
text: qsTr("%1 %2").arg(resolutionName).arg(resolution)
checked: settings.videoResolution == resolutionName
*/
@IMPORT_QT_QUICK@
-import com.nokia.meego 1.1
import QtCamera 1.0
import "data.js" as Data
-ToolIcon {
+CameraToolIcon {
id: button
iconSource: "image://theme/" + Data.vsmIcon(settings.videoSceneMode)
property list<Item> items: [
- Label {
+ CameraLabel {
height: parent ? parent.height : 0
text: qsTr("Scene")
verticalAlignment: Text.AlignVCenter
*/
@IMPORT_QT_QUICK@
-import com.nokia.meego 1.1
import QtCamera 1.0
Flickable {
width: parent.width
spacing: 10
- Label {
+ CameraLabel {
font.pixelSize: 36
text: qsTr("Video settings")
}
*/
@IMPORT_QT_QUICK@
-import com.nokia.meego 1.1
import QtCamera 1.0
-ToolIcon {
+CameraToolIcon {
id: button
property Camera camera: null
*/
@IMPORT_QT_QUICK@
-import com.nokia.meego 1.1
import QtCamera 1.0
import "data.js" as Data
-ToolIcon {
+CameraToolIcon {
id: button
iconSource: "image://theme/" + Data.wbIcon(settings.videoWhiteBalance)
property list<Item> items: [
- Label {
+ CameraLabel {
height: parent ? parent.height : 0
text: qsTr("WB")
verticalAlignment: Text.AlignVCenter
*/
@IMPORT_QT_QUICK@
-import com.nokia.meego 1.1
import CameraPlus 1.0
Item {
*/
@IMPORT_QT_QUICK@
-import com.nokia.meego 1.1
import CameraPlus 1.0
MouseArea {
PropertyAnimation { duration: 100; }
}
- Label {
+ CameraLabel {
id: label
anchors.verticalCenter: parent.verticalCenter
width: parent.width
*/
@IMPORT_QT_QUICK@
-import com.nokia.meego 1.1
import QtCamera 1.0
-Slider {
+CameraSlider {
id: slider
property Camera camera: null
- platformStyle: SliderStyle {
- handleBackground: ""
- handleBackgroundPressed: ""
- }
+ handleBackground: ""
+ handleBackgroundPressed: ""
Binding {
target: camera ? camera.zoom : null
--- /dev/null
+// -*- qml -*-
+
+/*!
+ * This file is part of CameraPlus.
+ *
+ * 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
+ * License as published by the Free Software Foundation; either
+ * version 2.1 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
+ */
+
+import QtQuick 1.1
+import com.nokia.meego 1.1
+
+Button {
+
+}
--- /dev/null
+// -*- qml -*-
+
+/*!
+ * This file is part of CameraPlus.
+ *
+ * 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
+ * License as published by the Free Software Foundation; either
+ * version 2.1 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
+ */
+
+import QtQuick 1.1
+import com.nokia.meego 1.1
+
+ButtonRow {
+
+}
--- /dev/null
+// -*- qml -*-
+
+/*!
+ * This file is part of CameraPlus.
+ *
+ * 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
+ * License as published by the Free Software Foundation; either
+ * version 2.1 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
+ */
+
+import QtQuick 1.1
+import com.nokia.meego 1.1
+
+ButtonStyle {
+}
--- /dev/null
+// -*- qml -*-
+
+/*!
+ * This file is part of CameraPlus.
+ *
+ * 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
+ * License as published by the Free Software Foundation; either
+ * version 2.1 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
+ */
+
+import QtQuick 1.1
+import com.nokia.extras 1.1
+
+InfoBanner {
+}
--- /dev/null
+// -*- qml -*-
+
+/*!
+ * This file is part of CameraPlus.
+ *
+ * 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
+ * License as published by the Free Software Foundation; either
+ * version 2.1 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
+ */
+
+import QtQuick 1.1
+import com.nokia.meego 1.1
+
+Label {
+
+}
--- /dev/null
+// -*- qml -*-
+
+/*!
+ * This file is part of CameraPlus.
+ *
+ * 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
+ * License as published by the Free Software Foundation; either
+ * version 2.1 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
+ */
+
+import QtQuick 1.1
+import com.nokia.meego 1.1
+
+Menu {
+ id: menu
+
+ property bool isOpen: status == DialogStatus.Open
+ property bool isOpening: status == DialogStatus.Opening
+
+ property list<CameraMenuAction> actions
+
+ MenuLayout {
+ Repeater {
+ model: menu.actions
+ delegate: MenuItem {
+ text: modelData.text
+ enabled: modelData.enabled
+ onClicked: modelData.clicked()
+ }
+ }
+ }
+}
--- /dev/null
+// -*- qml -*-
+
+/*!
+ * This file is part of CameraPlus.
+ *
+ * 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
+ * License as published by the Free Software Foundation; either
+ * version 2.1 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
+ */
+
+import QtQuick 1.1
+import com.nokia.meego 1.1
+
+QtObject {
+ property string text
+ property bool enabled: true
+ signal clicked
+}
--- /dev/null
+// -*- qml -*-
+
+/*!
+ * This file is part of CameraPlus.
+ *
+ * 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
+ * License as published by the Free Software Foundation; either
+ * version 2.1 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
+ */
+
+import QtQuick 1.1
+import com.nokia.meego 1.1
+
+QueryDialog {
+ property bool isOpen: status == DialogStatus.Open
+ property bool isOpening: status == DialogStatus.Opening
+}
--- /dev/null
+// -*- qml -*-
+
+/*!
+ * This file is part of CameraPlus.
+ *
+ * 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
+ * License as published by the Free Software Foundation; either
+ * version 2.1 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
+ */
+
+import QtQuick 1.1
+import com.nokia.meego 1.1
+
+Slider {
+ property alias handleBackground: sliderStyle.handleBackground
+ property alias handleBackgroundPressed: sliderStyle.handleBackgroundPressed
+
+ SliderStyle {
+ id: sliderStyle
+ }
+
+ platformStyle: sliderStyle
+}
--- /dev/null
+// -*- qml -*-
+
+/*!
+ * This file is part of CameraPlus.
+ *
+ * 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
+ * License as published by the Free Software Foundation; either
+ * version 2.1 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
+ */
+
+import QtQuick 1.1
+import com.nokia.meego 1.1
+
+Switch {
+
+}
--- /dev/null
+// -*- qml -*-
+
+/*!
+ * This file is part of CameraPlus.
+ *
+ * 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
+ * License as published by the Free Software Foundation; either
+ * version 2.1 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
+ */
+
+import QtQuick 1.1
+import com.nokia.meego 1.1
+
+TextField {
+
+}
--- /dev/null
+// -*- qml -*-
+
+/*!
+ * This file is part of CameraPlus.
+ *
+ * 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
+ * License as published by the Free Software Foundation; either
+ * version 2.1 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
+ */
+
+import QtQuick 1.1
+import com.nokia.meego 1.1
+
+ToolIcon {
+
+}
--- /dev/null
+// -*- qml -*-
+
+/*!
+ * This file is part of CameraPlus.
+ *
+ * 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
+ * License as published by the Free Software Foundation; either
+ * version 2.1 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
+ */
+
+import QtQuick 1.1
+import com.nokia.meego 1.1
+
+Window {
+ Component.onCompleted: {
+ screen.setAllowedOrientations(Screen.Landscape)
+ theme.inverted = true
+ }
+}
--- /dev/null
+<!DOCTYPE RCC>
+<RCC version="1.0">
+ <qresource prefix="/qml">
+ <file>CameraLabel.qml</file>
+ <file>CameraTextField.qml</file>
+ <file>CameraToolIcon.qml</file>
+ <file>CameraButton.qml</file>
+ <file>CameraSlider.qml</file>
+ <file>CameraSwitch.qml</file>
+ <file>CameraButtonRow.qml</file>
+ <file>CameraQueryDialog.qml</file>
+ <file>CameraWindow.qml</file>
+ <file>CameraInfoBanner.qml</file>
+ <file>CameraButtonStyle.qml</file>
+ <file>CameraMenu.qml</file>
+ <file>CameraMenuAction.qml</file>
+ </qresource>
+</RCC>
*/
@IMPORT_QT_QUICK@
-import com.nokia.meego 1.1
-import com.nokia.extras 1.1
import QtCamera 1.0
import CameraPlus 1.0
import QtMobility.location 1.2
// TODO: flash not ready (battery low or flash not ready message)
-Window {
+CameraWindow {
id: root
property alias camera: cam
}
Component.onCompleted: {
- screen.setAllowedOrientations(Screen.Landscape)
- theme.inverted = true
platformSettings.init()
// TODO: hardcoding device id
root.resetCamera(0, settings.mode)
property alias dimmer: camDimmer
- PageStack {
- id: pageStack
- anchors.fill: parent
- }
-
- MouseArea {
- anchors.fill: parent
- enabled: pageStack.busy
- }
-
PositionSource {
// NOTE: The source will not reset the position when we lose the signal.
// This shouldn't be a big problem as we are course enough.
id: fileSystem
}
- InfoBanner {
+ CameraInfoBanner {
id: error
}
include(../qmljsdebugger/qmljsdebugger-src.pri)
}
+contains(MEEGO_EDITION, "harmattan") {
+ message("Building for harmattan")
+ DEFINES += HARMATTAN
+ RESOURCES += ../qml/harmattan/harmattan.qrc
+}
+
target.path = /usr/bin/
INSTALLS += target