[-]
[+]
|
Changed |
_service:tar_git:harbour-barcode.changes
|
|
[-]
[+]
|
Changed |
_service:tar_git:harbour-barcode.spec
^
|
|
[-]
[+]
|
Changed |
_service
^
|
@@ -2,6 +2,6 @@
<service name="tar_git">
<param name="url">https://github.com/monich/sailfish-barcode.git</param>
<param name="branch">master</param>
- <param name="revision">226869b</param>
+ <param name="revision">7f31bf2</param>
</service>
</services>
\ No newline at end of file
|
[-]
[+]
|
Deleted |
_service:tar_git:harbour-barcode-1.0.45.tar.bz2/src/Plugins.cpp
^
|
@@ -1,133 +0,0 @@
-/*
-The MIT License (MIT)
-
-Copyright (c) 2020-2021 Slava Monich
-
-Permission is hereby granted, free of charge, to any person obtaining a copy
-of this software and associated documentation files (the "Software"), to deal
-in the Software without restriction, including without limitation the rights
-to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
-copies of the Software, and to permit persons to whom the Software is
-furnished to do so, subject to the following conditions:
-
-The above copyright notice and this permission notice shall be included in
-all copies or substantial portions of the Software.
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
-LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
-OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
-THE SOFTWARE.
-*/
-
-#include "Plugins.h"
-
-#include "HarbourMediaPlugin.h"
-#include "HarbourPolicyPlugin.h"
-
-// Workaround for certain plugins not being allowed in harbour apps
-
-// ==========================================================================
-// Plugins::Gallery
-// ==========================================================================
-
-class Plugins::Gallery: public HarbourPluginLoader {
- Gallery(QQmlEngine* aEngine);
- void registerTypes(const char* aModule, int v1, int v2);
-public:
- static void registerTypes(QQmlEngine* aEngine, const char* aModule, int v1, int v2);
-};
-
-Plugins::Gallery::Gallery(QQmlEngine* aEngine) :
- HarbourPluginLoader(aEngine, "QtDocGallery", 5, 0)
-{
-}
-
-void Plugins::Gallery::registerTypes(const char* aModule, int v1, int v2)
-{
- reRegisterType("DocumentGallery", aModule, v1, v2);
- reRegisterType("DocumentGalleryItem", aModule, v1, v2);
- reRegisterType("DocumentGalleryModel", aModule, v1, v2);
- reRegisterType("GalleryStartsWithFilter", aModule, v1, v2);
-}
-
-void Plugins::Gallery::registerTypes(QQmlEngine* aEngine, const char* aModule, int v1, int v2)
-{
- static Gallery* gInstance = Q_NULLPTR;
- if (!gInstance) {
- (gInstance = new Gallery(aEngine))->registerTypes(aModule, v1, v2);
- }
-}
-
-// ==========================================================================
-// Plugins::Contacts
-// ==========================================================================
-
-class Plugins::Contacts: public HarbourPluginLoader {
- Contacts(QQmlEngine* aEngine);
- void registerTypes(const char* aModule, int v1, int v2);
-public:
- static void registerTypes(QQmlEngine* aEngine, const char* aModule, int v1, int v2);
-};
-
-Plugins::Contacts::Contacts(QQmlEngine* aEngine) :
- HarbourPluginLoader(aEngine, "org.nemomobile.contacts", 1, 0)
-{
-}
-
-void Plugins::Contacts::registerTypes(const char* aModule, int v1, int v2)
-{
- reRegisterType("PeopleVCardModel", aModule, v1, v2);
-}
-
-void Plugins::Contacts::registerTypes(QQmlEngine* aEngine, const char* aModule, int v1, int v2)
-{
- static Contacts* gInstance = Q_NULLPTR;
- if (!gInstance) {
- (gInstance = new Contacts(aEngine))->registerTypes(aModule, v1, v2);
- }
-}
-
-// ==========================================================================
-// Plugins::Thumbnailer
-// ==========================================================================
-
-class Plugins::Thumbnailer: public HarbourPluginLoader {
- Thumbnailer(QQmlEngine* aEngine);
- void registerTypes(const char* aModule, int v1, int v2);
-public:
- static void registerTypes(QQmlEngine* aEngine, const char* aModule, int v1, int v2);
-};
-
-Plugins::Thumbnailer::Thumbnailer(QQmlEngine* aEngine) :
- HarbourPluginLoader(aEngine, "org.nemomobile.thumbnailer", 1, 0)
-{
-}
-
-void Plugins::Thumbnailer::registerTypes(const char* aModule, int v1, int v2)
-{
- reRegisterType("Thumbnail", aModule, v1, v2);
-}
-
-void Plugins::Thumbnailer::registerTypes(QQmlEngine* aEngine, const char* aModule, int v1, int v2)
-{
- static Thumbnailer* gInstance = Q_NULLPTR;
- if (!gInstance) {
- (gInstance = new Thumbnailer(aEngine))->registerTypes(aModule, v1, v2);
- }
-}
-
-// ==========================================================================
-// Plugins
-// ==========================================================================
-
-void Plugins::registerTypes(QQmlEngine* aEngine, const char* aModule, int v1, int v2)
-{
- Gallery::registerTypes(aEngine, aModule, v1, v2);
- Contacts::registerTypes(aEngine, aModule, v1, v2);
- Thumbnailer::registerTypes(aEngine, aModule, v1, v2);
- HarbourMediaPlugin::registerTypes(aEngine, aModule, v1, v2);
- HarbourPolicyPlugin::registerTypes(aEngine, aModule, v1, v2);
-}
|
[-]
[+]
|
Deleted |
_service:tar_git:harbour-barcode-1.0.45.tar.bz2/src/Plugins.h
^
|
@@ -1,41 +0,0 @@
-/*
-The MIT License (MIT)
-
-Copyright (c) 2020 Slava Monich
-
-Permission is hereby granted, free of charge, to any person obtaining a copy
-of this software and associated documentation files (the "Software"), to deal
-in the Software without restriction, including without limitation the rights
-to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
-copies of the Software, and to permit persons to whom the Software is
-furnished to do so, subject to the following conditions:
-
-The above copyright notice and this permission notice shall be included in
-all copies or substantial portions of the Software.
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
-LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
-OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
-THE SOFTWARE.
-*/
-
-#ifndef BARCODE_PLUGINS_H
-#define BARCODE_PLUGINS_H
-
-// Certain plugins are not allowed in harbour apps, can't be used
-// directly, have to be loaded in a weird way
-
-class QQmlEngine;
-
-class Plugins {
- class Gallery; // QtDocGallery
- class Contacts; // org.nemomobile.contacts
- class Thumbnailer; // org.nemomobile.thumbnailer
-public:
- static void registerTypes(QQmlEngine* aEngine, const char* aModule, int v1, int v2);
-};
-
-#endif // BARCODE_PLUGINS_H
|
[-]
[+]
|
Changed |
_service:tar_git:harbour-barcode-1.0.46.tar.bz2/harbour-barcode.pro
^
|
@@ -10,7 +10,7 @@
LIBS += -ldl
isEmpty(VERSION) {
- VERSION = 1.0.45
+ VERSION = 1.0.46
message("VERSION is unset, assuming $$VERSION")
}
@@ -42,7 +42,6 @@
src/HistoryModel.cpp \
src/MeCardConverter.cpp \
src/OfdReceiptFetcher.cpp \
- src/Plugins.cpp \
src/Settings.cpp \
src/scanner/BarcodeScanner.cpp \
src/scanner/Decoder.cpp \
@@ -59,7 +58,6 @@
src/HistoryModel.h \
src/MeCardConverter.h \
src/OfdReceiptFetcher.h \
- src/Plugins.h \
src/Settings.h \
src/scanner/BarcodeScanner.h \
src/scanner/Decoder.h \
@@ -92,13 +90,9 @@
$${HARBOUR_LIB_SRC}/HarbourBase45.cpp \
$${HARBOUR_LIB_SRC}/HarbourDisplayBlanking.cpp \
$${HARBOUR_LIB_SRC}/HarbourMce.cpp \
- $${HARBOUR_LIB_SRC}/HarbourMediaPlugin.cpp \
- $${HARBOUR_LIB_SRC}/HarbourPluginLoader.cpp \
- $${HARBOUR_LIB_SRC}/HarbourPolicyPlugin.cpp \
$${HARBOUR_LIB_SRC}/HarbourProcessState.cpp \
$${HARBOUR_LIB_SRC}/HarbourSelectionListModel.cpp \
$${HARBOUR_LIB_SRC}/HarbourSingleImageProvider.cpp \
- $${HARBOUR_LIB_SRC}/HarbourSystem.cpp \
$${HARBOUR_LIB_SRC}/HarbourSystemInfo.cpp \
$${HARBOUR_LIB_SRC}/HarbourTask.cpp \
$${HARBOUR_LIB_SRC}/HarbourTemporaryFile.cpp
@@ -107,13 +101,9 @@
$${HARBOUR_LIB_INCLUDE}/HarbourBase45.h \
$${HARBOUR_LIB_INCLUDE}/HarbourDebug.h \
$${HARBOUR_LIB_INCLUDE}/HarbourDisplayBlanking.h \
- $${HARBOUR_LIB_INCLUDE}/HarbourMediaPlugin.h \
- $${HARBOUR_LIB_INCLUDE}/HarbourPluginLoader.h \
- $${HARBOUR_LIB_INCLUDE}/HarbourPolicyPlugin.h \
$${HARBOUR_LIB_INCLUDE}/HarbourProcessState.h \
$${HARBOUR_LIB_INCLUDE}/HarbourSelectionListModel.h \
$${HARBOUR_LIB_INCLUDE}/HarbourSingleImageProvider.h \
- $${HARBOUR_LIB_INCLUDE}/HarbourSystem.h \
$${HARBOUR_LIB_INCLUDE}/HarbourSystemInfo.h \
$${HARBOUR_LIB_INCLUDE}/HarbourTask.h \
$${HARBOUR_LIB_INCLUDE}/HarbourTemporaryFile.h \
@@ -124,7 +114,8 @@
$${HARBOUR_LIB_QML}/HarbourFitLabel.qml \
$${HARBOUR_LIB_QML}/HarbourHighlightIcon.qml \
$${HARBOUR_LIB_QML}/HarbourHintIconButton.qml \
- $${HARBOUR_LIB_QML}/HarbourHorizontalSwipeHint.qml
+ $${HARBOUR_LIB_QML}/HarbourHorizontalSwipeHint.qml \
+ $${HARBOUR_LIB_QML}/HarbourPressEffect.qml
OTHER_FILES += $${HARBOUR_QML_COMPONENTS}
|
[-]
[+]
|
Added |
_service:tar_git:harbour-barcode-1.0.46.tar.bz2/qml/components/Thumbnail.qml
^
|
@@ -0,0 +1,51 @@
+/*
+The MIT License (MIT)
+
+Copyright (c) 2022 Slava Monich
+
+Permission is hereby granted, free of charge, to any person obtaining a copy
+of this software and associated documentation files (the "Software"), to deal
+in the Software without restriction, including without limitation the rights
+to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+copies of the Software, and to permit persons to whom the Software is
+furnished to do so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in
+all copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+THE SOFTWARE.
+*/
+
+import QtQuick 2.0
+import harbour.barcode 1.0
+
+Item {
+ id: thisItem
+
+ property string mimeType
+ property url source
+
+ signal thumbnailError()
+
+ readonly property var thumbnail: Qt.createQmlObject(BarcodeUtils.thumbnailQml, thisItem, "Thumbnail")
+
+ Binding { target: thumbnail; property: "sourceSize"; value: Qt.size(width,height) }
+ Binding { target: thumbnail; property: "mimeType"; value: mimeType }
+ Binding { target: thumbnail; property: "source"; value: source }
+
+ Connections {
+ target: thumbnail
+ ignoreUnknownSignals: true
+ onStatusChanged: {
+ if (thumbnail.status === thumbnail.errorStatus) {
+ thisItem.thumbnailError()
+ }
+ }
+ }
+}
|
[-]
[+]
|
Changed |
_service:tar_git:harbour-barcode-1.0.46.tar.bz2/qml/components/VCard.qml
^
|
@@ -1,7 +1,7 @@
/*
The MIT License (MIT)
-Copyright (c) 2018-2021 Slava Monich
+Copyright (c) 2018-2022 Slava Monich
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
@@ -26,16 +26,20 @@
import Sailfish.Silica 1.0
import org.nemomobile.notifications 1.0
import org.nemomobile.dbus 2.0
-//import org.nemomobile.contacts 1.0
import harbour.barcode 1.0
Item {
id: vcard
+
visible: false
- property alias count: model.count
+ readonly property int count: !model ? 0 : model.count
property alias content: file.content
+ readonly property var model: Qt.createQmlObject(BarcodeUtils.peopleVCardModelQml, vcard, "VCardModel")
+
+ Binding { target: model; property: "source"; value: file.url }
+
function importContact() {
var url
if (SystemInfo.osVersionCompare("4.0") >= 0) {
@@ -79,12 +83,7 @@
}
function contact() {
- return model.getPerson(0)
- }
-
- PeopleVCardModel {
- id: model
- source: file.fileName
+ return !model ? undefined : model.getPerson(0)
}
DBusInterface {
|
[-]
[+]
|
Changed |
_service:tar_git:harbour-barcode-1.0.46.tar.bz2/qml/components/ViewFinder.qml
^
|
@@ -10,7 +10,6 @@
fillMode: VideoOutput.Stretch
property alias beepSource: beep.source
- property bool playingBeep: false
property size viewfinderResolution
property bool completed
property bool showFocusArea: true
@@ -73,15 +72,7 @@
}
function playBeep() {
- // Camera locks the output playback resource, we need
- // to stop it before we can play the beep. Luckily,
- // the viewfinder is typically covered with the marker
- // image so the user won't even notice the pause.
- playingBeep = true
- // The beep starts playing when the camera stops and
- // audio becomes available. When playback is stopped,
- // the camera is restarted.
- camera.stop()
+ beep.play()
}
function viewfinderToFramePoint(vx, vy) {
@@ -135,7 +126,7 @@
id: camera
flash.mode: Camera.FlashOff
- captureMode: Camera.CaptureVideo
+ captureMode: Camera.CaptureStillImage
videoRecorder.frameRate: 30
imageProcessing.whiteBalanceMode: flashOn ?
CameraImageProcessing.WhiteBalanceFlash :
@@ -155,20 +146,10 @@
// Camera doesn't emit maximumDigitalZoomChanged signal
viewFinder.maximumDigitalZoom(maximumDigitalZoom)
digitalZoom = viewFinder.digitalZoom
- } else if (viewFinder.playingBeep) {
- // Try to play when camera actually gets into inactive state
- beep.play()
- if (beep.playing) {
- // Yey, it's playing! Clear the request. Camera will be
- // restarted when the beep stops playing.
- viewFinder.playingBeep = false
- }
}
}
onCameraStateChanged: {
- if (cameraState === Camera.ActiveState) {
- viewFinder.playingBeep = false
- } else if (cameraState === Camera.UnloadedState) {
+ if (cameraState === Camera.UnloadedState) {
if (viewFinder.viewfinderResolution &&
viewFinder.viewfinderResolution !== viewfinder.resolution) {
viewfinder.resolution = viewFinder.viewfinderResolution
@@ -226,7 +207,5 @@
SoundEffect {
id: beep
-
- onPlayingChanged: if (!playing) camera.start()
}
}
|
[-]
[+]
|
Changed |
_service:tar_git:harbour-barcode-1.0.46.tar.bz2/qml/pages/GalleryPage.qml
^
|
@@ -1,7 +1,7 @@
/*
The MIT License (MIT)
-Copyright (c) 2018 Slava Monich
+Copyright (c) 2018-2022 Slava Monich
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
@@ -23,27 +23,18 @@
*/
import QtQuick 2.0
-//import QtDocGallery 5.0
import Sailfish.Silica 1.0
import harbour.barcode 1.0
+import "../components"
+import "../harbour"
+
Page {
id: thisPage
property string title
- DocumentGalleryModel {
- id: galleryModel
- rootType: DocumentGallery.Image
- readonly property string keyRole: "url"
- properties: ["url", "mimeType", "orientation", "dateTaken", "width", "height"]
- sortProperties: ["-lastModified"]
- filter: GalleryStartsWithFilter {
- property: "filePath"
- value: StandardPaths.music
- negated: true
- }
- }
+ readonly property var galleryModel: Qt.createQmlObject(BarcodeUtils.documentGalleryModelQml, thisPage, "GalleryModel")
signal imageSelected(var url, var orientation)
@@ -75,28 +66,21 @@
contentHeight: grid.cellSize
contentWidth: grid.cellSize
+ layer.enabled: highlighted
+ layer.effect: HarbourPressEffect { source: delegate }
+
readonly property url modelUrl: url
readonly property string modelMimeType: mimeType
readonly property int modelOrientation: orientation
Thumbnail {
id: thumbnail
+
source: modelUrl
mimeType: modelMimeType
width: grid.cellSize
height: grid.cellSize
- sourceSize.width: grid.cellSize
- sourceSize.height: grid.cellSize
- priority: Thumbnail.NormalPriority
- opacity: delegate.highlighted ? 0.7 : 1.0
-
- onStatusChanged: {
- if (status === Thumbnail.Error) {
- errorComponent.createObject(thumbnail)
- }
- }
-
- Behavior on opacity { FadeAnimation {} }
+ onThumbnailError: errorComponent.createObject(thumbnail)
}
Component {
@@ -132,7 +116,22 @@
//: Placeholder text
//% "No images found in the gallery"
text: qsTrId("gallery-empty")
- enabled: !galleryModel.count
+ enabled: !busyIndicator.running && (!galleryModel || !galleryModel.count)
+ }
+ }
+
+ BusyIndicator {
+ id: busyIndicator
+
+ size: BusyIndicatorSize.Large
+ anchors.centerIn: thisPage
+ running: initTimer.running && !!galleryModel && !galleryModel.count
+
+ Timer {
+ id: initTimer
+
+ interval: 5000
+ running: true
}
}
}
|
[-]
[+]
|
Changed |
_service:tar_git:harbour-barcode-1.0.46.tar.bz2/qml/pages/ScanPage.qml
^
|
@@ -52,6 +52,30 @@
readonly property bool scanningGalleryImage: galleryImage && galleryImage.visible
readonly property bool useVolumeKeys: AppSettings.volumeZoom && (scanPage.status === PageStatus.Active) && Qt.application.active
+ readonly property var volumeUp: Qt.createQmlObject(BarcodeUtils.mediaKeyQml, scanPage, "VolumeKey")
+ readonly property var volumeDown: Qt.createQmlObject(BarcodeUtils.mediaKeyQml, scanPage, "VolumeKey")
+ readonly property var permissions: Qt.createQmlObject(BarcodeUtils.permissionsQml, scanPage, "Permissions")
+
+ Binding { target: permissions; property: "enabled"; value: useVolumeKeys }
+ Binding { target: volumeUp; property: "enabled"; value: useVolumeKeys }
+ Binding { target: volumeUp; property: "key"; value: Qt.Key_VolumeUp }
+ Binding { target: volumeDown; property: "enabled"; value: useVolumeKeys }
+ Binding { target: volumeDown; property: "key"; value: Qt.Key_VolumeDown }
+
+ Connections {
+ target: volumeUp
+ ignoreUnknownSignals: true
+ onPressed: zoomSlider.zoomIn()
+ onRepeat: zoomSlider.zoomIn()
+ }
+
+ Connections {
+ target: volumeDown
+ ignoreUnknownSignals: true
+ onPressed: zoomSlider.zoomOut()
+ onRepeat: zoomSlider.zoomOut()
+ }
+
function destroyViewFinder() {
if (viewFinder) {
console.log("destroying viewfinder ...")
@@ -963,32 +987,6 @@
RemorseItem { }
}
- MediaKey {
- enabled: useVolumeKeys
- key: Qt.Key_VolumeUp
- onPressed: zoomSlider.zoomIn()
- onRepeat: zoomSlider.zoomIn()
- }
-
- MediaKey {
- enabled: useVolumeKeys
- key: Qt.Key_VolumeDown
- onPressed: zoomSlider.zoomOut()
- onRepeat: zoomSlider.zoomOut()
- }
-
- Permissions {
- enabled: useVolumeKeys
- autoRelease: true
- applicationClass: "camera"
-
- Resource {
- id: volumeKeysResource
- type: Resource.ScaleButton
- optional: true
- }
- }
-
states: [
State {
name: "portrait"
|
[-]
[+]
|
Changed |
_service:tar_git:harbour-barcode-1.0.46.tar.bz2/src/BarcodeUtils.cpp
^
|
@@ -25,6 +25,45 @@
#include "BarcodeUtils.h"
#include "BarcodeFormatModel.h"
+#include "HarbourBase45.h"
+
+// import Sailfish.Silica 1.0;import QtDocGallery 5.0;DocumentGalleryModel{
+// rootType:DocumentGallery.Image;properties:["url","mimeType","orientation"];sortProperties:["-lastModified"];
+// filter:GalleryStartsWithFilter{property:"filePath";value:StandardPaths.music;negated:true}}
+static const char documentGalleryModelBase45[] =
+ "YEDS9E5LE+347ECUVD+EDU7DNOAXVDGPC634Y$5:M7Q$D04ESUEHDAET8ZOCAECTV"
+ "DALEA34Y$57M7U3E1%E1$CMVEAECTVDALENZ96VC6WD0LE24EPUAI9ELG7U3E1%E1"
+ "$CMVEAECTVDALEE%5B$D93D6N70LEI9E5LEQEDNPEKNB6%E7UD3Q5J$DF$DPUAI9E"
+ "IE4+F4*KE1$C3WEBWE-3EMF49N704EVVE0LEI9E5LEQEDNPEKNBIX5HECSVEV3ERE"
+ "DQEDTTCHZBR.C:VD5$COG7AECTVDALEYOAGECLWEC2BAWEP+8:VD5$CARF0LEI9E5"
+ "LETEFVF4XEDG CIECI7DCN7AEC%$E G73WE0/DGECUUCIEC99D5*57%EOED4N7* C"
+ "IEC COH76LEG$CZ2";
+
+// import Sailfish.Media 1.0;MediaKey{}
+static const char mediaKeyBase45[] =
+ "YEDS9E5LE+347ECUVD+EDU7DDZ9AVCOCCZ96H46DZ9AVCMDCC$CNRF";
+
+// import org.nemomobile.policy 1.0;Permissions{
+// autoRelease:true;applicationClass:"camera";
+// Resource{type:Resource.ScaleButton;optional:true}}
+static const char permissionsBase45[] =
+ "YEDS9E5LEN44$KE6*50$C+3ET3EXEDRZCS9EXVD+PC634Y$5JM75$CJ$DZQE EDF/"
+ "D+QF8%ED3E: CX CLQEOH76LE+ZCEECP9EOEDIEC EDC.DPVDZQEWF7GPCF$DVKEX"
+ "E4XIAVQE6%EKPCERF%FF*ZCXIAVQE6%EKPCO%5GPCTVD3I8MWE-3E5N7X9E ED..D"
+ "VUDKWE%$E+%F";
+
+// import org.nemomobile.thumbnailer 1.0;Thumbnail{
+// readonly property int errorStatus:Thumbnail.Error;anchors.fill:parent}
+static const char thumbnailBase45[] =
+ "YEDS9E5LEN44$KE6*50$C+3ET3EXEDRZCAWE1%E/JC7ECTVDBJEZ96H468UA1%E/J"
+ "C7EC6WDZKE2EC-3E4WDO440LEI9E5LE3EFZEDSUE5$C0LEHKE3WENWENPE8UA1%E/"
+ "JC7ECJUD3Z80LE%JECECNPC04EBPER.C VDKH7GEC1$CVWE";
+
+// import org.nemomobile.contacts 1.0;PeopleVCardModel{}
+static const char peopleVCardModelBase45[] =
+ "YEDS9E5LEN44$KE6*50$C+3ET3EXEDRZCUPCG/D1ECLWE634Y$5JM72$CP9EM CEN"
+ "8YKENZ96VC6WDZ2";
+
BarcodeUtils::BarcodeUtils(QObject* aParent) :
QObject(aParent)
{
@@ -36,6 +75,31 @@
return new BarcodeUtils();
}
+QString BarcodeUtils::documentGalleryModelQml()
+{
+ return HarbourBase45::fromBase45(QString::fromLatin1(documentGalleryModelBase45));
+}
+
+QString BarcodeUtils::thumbnailQml()
+{
+ return HarbourBase45::fromBase45(QString::fromLatin1(thumbnailBase45));
+}
+
+QString BarcodeUtils::mediaKeyQml()
+{
+ return HarbourBase45::fromBase45(QString::fromLatin1(mediaKeyBase45));
+}
+
+QString BarcodeUtils::permissionsQml()
+{
+ return HarbourBase45::fromBase45(QString::fromLatin1(permissionsBase45));
+}
+
+QString BarcodeUtils::peopleVCardModelQml()
+{
+ return HarbourBase45::fromBase45(QString::fromLatin1(peopleVCardModelBase45));
+}
+
QString BarcodeUtils::urlScheme(QString aText)
{
return (!aText.isEmpty() &&
|
[-]
[+]
|
Changed |
_service:tar_git:harbour-barcode-1.0.46.tar.bz2/src/BarcodeUtils.h
^
|
@@ -33,6 +33,11 @@
class BarcodeUtils : public QObject {
Q_OBJECT
+ Q_PROPERTY(QString documentGalleryModelQml READ documentGalleryModelQml CONSTANT)
+ Q_PROPERTY(QString thumbnailQml READ thumbnailQml CONSTANT)
+ Q_PROPERTY(QString mediaKeyQml READ mediaKeyQml CONSTANT)
+ Q_PROPERTY(QString permissionsQml READ permissionsQml CONSTANT)
+ Q_PROPERTY(QString peopleVCardModelQml READ peopleVCardModelQml CONSTANT)
public:
BarcodeUtils(QObject* aParent = Q_NULLPTR);
@@ -40,6 +45,12 @@
// Callback for qmlRegisterSingletonType<BarcodeUtils>
static QObject* createSingleton(QQmlEngine*, QJSEngine*);
+ static QString documentGalleryModelQml();
+ static QString thumbnailQml();
+ static QString mediaKeyQml();
+ static QString permissionsQml();
+ static QString peopleVCardModelQml();
+
Q_INVOKABLE static QString urlScheme(QString text);
Q_INVOKABLE static const QString barcodeFormatName(QString ident);
};
|
[-]
[+]
|
Changed |
_service:tar_git:harbour-barcode-1.0.46.tar.bz2/src/harbour-barcode.cpp
^
|
@@ -46,7 +46,6 @@
#include "BarcodeFormatModel.h"
#include "BarcodeUtils.h"
-#include "Plugins.h"
#include "Database.h"
#include "DGCertModel.h"
#include "DGCertRecognizer.h"
@@ -64,7 +63,6 @@
static void register_types(QQmlEngine* engine, const char* uri, int v1, int v2)
{
- Plugins::registerTypes(engine, uri, v1, v2);
qmlRegisterType<HarbourSelectionListModel>(uri, v1, v2, "HarbourSelectionListModel");
qmlRegisterType<HarbourSingleImageProvider>(uri, v1, v2, "SingleImageProvider");
qmlRegisterType<HarbourDisplayBlanking>(uri, v1, v2, "DisplayBlanking");
|
[-]
[+]
|
Changed |
_service:tar_git:harbour-barcode-1.0.46.tar.bz2/translations/harbour-barcode-hu.ts
^
|
@@ -11,7 +11,7 @@
<message id="about-description">
<source>This app demonstrates a bar code reader for Sailfish OS. We hope it is useful for other projects. CodeReader is open source and licensed under the MIT License.</source>
<extracomment>About page text</extracomment>
- <translation type="unfinished">Ez egy demonstrációs céllal létrehozott alkalmazás a Sailfish OS-hez. Reméljük hasznát veszed akár más projektekhez is. A program forráskódja nyílt, MIT licensznek megfelelően.</translation>
+ <translation>Ez egy demonstrációs céllal létrehozott alkalmazás a Sailfish OS-hez. Reméljük hasznát veszed akár más projektekhez is. A program forráskódja nyílt, MIT licensznek megfelelően.</translation>
</message>
<message id="about-version-label">
<source>Version</source>
@@ -21,12 +21,12 @@
<message id="about-author-labels">
<source>Authors</source>
<extracomment>About page label</extracomment>
- <translation type="unfinished">Készítők</translation>
+ <translation>Készítők</translation>
</message>
<message id="about-contributors-label">
<source>Contributors</source>
<extracomment>About page label</extracomment>
- <translation>Közreműködtek</translation>
+ <translation>Közreműködők</translation>
</message>
<message id="about-contributors-text">
<source>%1 and others.</source>
@@ -61,7 +61,7 @@
<message id="scan-slider-zoom">
<source>Zoom</source>
<extracomment>Slider label</extracomment>
- <translation type="unfinished">Nagyítás</translation>
+ <translation>Nagyítás</translation>
</message>
<message id="scan-action-scan">
<source>Scan</source>
@@ -71,7 +71,7 @@
<message id="scan-action-cancel">
<source>Cancel</source>
<extracomment>Scan button label</extracomment>
- <translation type="unfinished">Mégsem</translation>
+ <translation>Mégsem</translation>
</message>
<message id="scan-status-busy">
<source>Scan in progress ...</source>
@@ -91,12 +91,12 @@
<message id="settings-formats-section">
<source>Barcode formats</source>
<extracomment>Section header</extracomment>
- <translation type="unfinished">Vonalkód formátumok</translation>
+ <translation>Vonalkódformátumok</translation>
</message>
<message id="settings-formats-description">
<source>Disabling the formats that you don't need speeds up the decoding and reduces the risk of incorrect recognition of the barcode type.</source>
<extracomment>Section description</extracomment>
- <translation type="unfinished">A nem szükséges formátumok letiltása felgyorsítja a dekódolást és csökkenti a vonalkód típusának helytelen felismerésének kockázatát.</translation>
+ <translation>A nem szükséges formátumok letiltása felgyorsítja a dekódolást és csökkenti a vonalkódtípus helytelen felismerésének kockázatát.</translation>
</message>
<message id="settings-scan-section">
<source>Scan</source>
@@ -121,7 +121,7 @@
<message id="settings-volume_zoom-label">
<source>Zoom with volume keys</source>
<extracomment>Switch button text</extracomment>
- <translation type="unfinished">Nagyítás hangerő-szabályzó gombokkal</translation>
+ <translation>Nagyítás hangerő-szabályzó gombokkal</translation>
</message>
<message id="settings-save_images-label">
<source>Save barcode images</source>
@@ -250,7 +250,7 @@
<message id="button-eu_covid_cert">
<source>COVID Certificate</source>
<extracomment>Button text</extracomment>
- <translation type="unfinished">COVID tanúsítvány</translation>
+ <translation>COVID-igazolvány</translation>
</message>
<message id="button-open_link">
<source>Open link</source>
@@ -265,7 +265,7 @@
<message id="button-contact_card">
<source>Contact card</source>
<extracomment>Button text</extracomment>
- <translation>Névjegy</translation>
+ <translation>Névjegykártya</translation>
</message>
<message id="button-add_to_calendar">
<source>Add to calendar</source>
@@ -295,7 +295,7 @@
<message id="text-receipt_not_found">
<source>Receipt not found</source>
<extracomment>Status label</extracomment>
- <translation>Recept letöltése</translation>
+ <translation>Bizonylat nem található</translation>
</message>
<message id="text-network_error">
<source>Network error</source>
@@ -305,27 +305,27 @@
<message id="contact-menu-save_contact">
<source>Save contact</source>
<extracomment>Pulley menu item (saves contact)</extracomment>
- <translation type="unfinished"></translation>
+ <translation>Névjegy mentése</translation>
</message>
<message id="contact-notification-saved">
<source>Contact saved</source>
<extracomment>Pop-up notification</extracomment>
- <translation type="unfinished">Névjegy mentve</translation>
+ <translation>Névjegy mentve</translation>
</message>
<message id="contact-notification-maybe_saved">
<source>Contact saved (or at least we tried)</source>
<extracomment>Pop-up notification</extracomment>
- <translation type="unfinished">Névjegy mentve (legalább megpróbáltuk)</translation>
+ <translation>Névjegy mentve (legalábbis megpróbáltuk)</translation>
</message>
<message id="contact-notification-failed">
<source>Failed to save the contact</source>
<extracomment>Pop-up notification</extracomment>
- <translation type="unfinished">Névjegy nem lehetett megmenteni</translation>
+ <translation>A névjegyet nem lehetett menteni</translation>
</message>
<message id="contact-notification-failed_jailed">
<source>Failed to save the contact (blocked by sandboxing?)</source>
<extracomment>Pop-up notification</extracomment>
- <translation type="unfinished">Névjegy nem lehetett megmenteni (a homokozó által blokkolt?)</translation>
+ <translation>A névjegyet nem lehetett menteni (a homokozó által blokkolt?)</translation>
</message>
<message id="notification-copied_to_clipboard">
<source>Copied to clipboard</source>
@@ -355,7 +355,7 @@
<message id="hint-open_contact_card">
<source>Open contact card</source>
<extracomment>Hint label</extracomment>
- <translation>Névjegy megnyitása</translation>
+ <translation>Névjegykártya megnyitása</translation>
</message>
<message id="hint-open_link">
<source>Open link in browser</source>
@@ -370,12 +370,12 @@
<message id="hint-covid_certificate">
<source>Show EU digital COVID certificate</source>
<extracomment>Hint label</extracomment>
- <translation type="unfinished">Uniós digitális Covid-igazolvány megjelenítése</translation>
+ <translation>Uniós digitális Covid-igazolvány megjelenítése</translation>
</message>
<message id="hint-add_to_calendar">
<source>Add event to calendar</source>
<extracomment>Hint label</extracomment>
- <translation type="unfinished">Esemény hozzáadása a naptárhoz</translation>
+ <translation>Esemény hozzáadása a naptárhoz</translation>
</message>
<message id="settings-display-section">
<source>Display</source>
@@ -385,7 +385,7 @@
<message id="settings-display-orientation-label">
<source>Orientation</source>
<extracomment>Combo box label</extracomment>
- <translation>Képernyőforgatás</translation>
+ <translation>Tájolás</translation>
</message>
<message id="settings-display-orientation-primary">
<source>Primary</source>
@@ -415,7 +415,7 @@
<message id="settings-display-orientation-allow_inverted-description">
<source>If enabled, allows both primary and inverted landscape or portrait orientation.</source>
<extracomment>Text switch description</extracomment>
- <translation>Ha bekapcsolod mind az elsődleges, a tükrözött álló és fekvő mód is elérhető lesz.</translation>
+ <translation>Ha bekapcsolod mind az elsődleges, mind a tükrözött álló és fekvő mód is elérhető lesz.</translation>
</message>
<message id="select-title">
<source>Select codes</source>
@@ -450,27 +450,27 @@
<message id="scan-gallery-menu">
<source>Scan from Gallery</source>
<extracomment>Pulley menu item</extracomment>
- <translation type="unfinished">Szkennelés a Galériából</translation>
+ <translation>Szkennelés a Galériából</translation>
</message>
<message id="gallery-title">
<source>Select image</source>
<extracomment>Page header</extracomment>
- <translation type="unfinished">Kép kiválasztása</translation>
+ <translation>Kép kiválasztása</translation>
</message>
<message id="gallery-empty">
<source>No images found in the gallery</source>
<extracomment>Placeholder text</extracomment>
- <translation type="unfinished">Nincs kép a galériában</translation>
+ <translation>Nincs kép a galériában</translation>
</message>
<message id="gallery-thumbnail-error">
<source>Error</source>
<extracomment>Thumbnail image loading failed</extracomment>
- <translation type="unfinished">Hiba</translation>
+ <translation>Hiba</translation>
</message>
<message id="gallery-rotate">
<source>Rotate</source>
<extracomment>Rotation widget</extracomment>
- <translation type="unfinished">Forog</translation>
+ <translation>Forgatás</translation>
</message>
<message id="dgcert-page_header">
|
[-]
[+]
|
Changed |
_service:tar_git:harbour-barcode-1.0.46.tar.bz2/translations/harbour-barcode-sk.ts
^
|
@@ -91,12 +91,12 @@
<message id="settings-formats-section">
<source>Barcode formats</source>
<extracomment>Section header</extracomment>
- <translation type="unfinished">Formáty čiarových kódov</translation>
+ <translation>Formáty čiarových kódov</translation>
</message>
<message id="settings-formats-description">
<source>Disabling the formats that you don't need speeds up the decoding and reduces the risk of incorrect recognition of the barcode type.</source>
<extracomment>Section description</extracomment>
- <translation type="unfinished">Vypnutím nepotrebných formátov zrýchlite dekódovanie a znížite možnosť nesprávnej detekcie typu čiarového kódu.</translation>
+ <translation>Vypnutím nepotrebných formátov zrýchlite dekódovanie a znížite možnosť nesprávnej detekcie typu čiarového kódu.</translation>
</message>
<message id="settings-scan-section">
<source>Scan</source>
|