From 5a25a20f2cc3029bcb66f5897088cd391d3c450d Mon Sep 17 00:00:00 2001 From: Muki Date: Sat, 19 May 2012 08:12:43 +0200 Subject: [PATCH] 0.9.3-1 release --- main.cpp | 13 +- qml/ubi/AccountPage.qml | 44 ++---- qml/ubi/DownloadArea.qml | 17 --- qml/ubi/DownloadProgressBar.qml | 90 ------------ qml/ubi/FileSelector.qml | 224 ----------------------------- qml/ubi/FilesPage.qml | 73 ---------- qml/ubi/InitPage.qml | 13 -- qml/ubi/LoginPage.qml | 18 +-- qml/ubi/Page.qml | 44 ------ qml/ubi/PageStack.qml | 3 - qml/ubi/PropertiesPage.qml | 67 +-------- qml/ubi/SettingsPage.qml | 5 +- qml/ubi/StartPage.qml | 115 --------------- qml/ubi/SystemBar.qml | 63 -------- qml/ubi/TaskMenu.qml | 4 - qml/ubi/TopBar.qml | 66 --------- qml/ubi/components/Bar.qml | 3 - qml/ubi/components/BusyIndicator.qml | 1 - qml/ubi/components/Button.qml | 6 - qml/ubi/components/ButtonGlass.qml | 113 --------------- qml/ubi/components/ButtonNew.qml | 12 -- qml/ubi/components/ButtonResizable.qml | 3 - qml/ubi/components/File.qml | 39 ----- qml/ubi/components/Line.qml | 19 +-- qml/ubi/components/Mask.qml | 6 + qml/ubi/components/Notification.qml | 100 ------------- qml/ubi/components/NotificationNew.qml | 1 - qml/ubi/components/Showable.qml | 3 - qml/ubi/components/Spacer.qml | 1 - qml/ubi/components/ToolIcon.qml | 52 ------- qml/ubi/main.qml | 14 -- qtc_packaging/debian_fremantle/changelog | 8 ++ qtc_packaging/debian_fremantle/changelog~ | 8 ++ qtc_packaging/debian_harmattan/changelog | 8 ++ qtc_packaging/debian_harmattan/changelog~ | 10 +- ubi.pro | 18 +-- ubi.pro.user | 20 +-- ubi.qrc | 67 ++++++--- ubi.zip | Bin 129200 -> 148293 bytes 39 files changed, 130 insertions(+), 1241 deletions(-) delete mode 100644 qml/ubi/DownloadProgressBar.qml delete mode 100644 qml/ubi/FileSelector.qml delete mode 100644 qml/ubi/StartPage.qml delete mode 100644 qml/ubi/components/ButtonGlass.qml delete mode 100644 qml/ubi/components/Notification.qml delete mode 100644 qml/ubi/components/ToolIcon.qml diff --git a/main.cpp b/main.cpp index c51513a..b30bc56 100644 --- a/main.cpp +++ b/main.cpp @@ -17,22 +17,19 @@ Q_DECL_EXPORT int main(int argc, char *argv[]) QString locale = settings.value("locale").toString(); - //qDebug() << "locale1=" << locale; if(locale!="pl_PL" && locale!="en_US") { locale = QLocale::system().name(); - //qDebug() << "locale2=" << locale; if(locale!="pl_PL") { locale="en_US"; } settings.setValue("locale",locale); } - //qDebug() << "locale3=" << locale; QTranslator translator; - QString dir = "translations"; - //QString dir = ":/translations"; + //QString dir = "translations"; + QString dir = ":/translations"; #if defined(Q_WS_MAEMO_5) - dir = "/opt/ubi/"+dir; + //dir = "/opt/ubi/"+dir; #endif if (translator.load(QString("ubi.")+locale,dir)) { app->installTranslator(&translator); @@ -48,8 +45,8 @@ Q_DECL_EXPORT int main(int argc, char *argv[]) #if defined(Q_WS_MAEMO_5) //viewer.engine()->addImportPath(QString("/opt/qtm12/imports")); #endif - viewer.setMainQmlFile(QLatin1String("qml/ubi/main.qml")); - //viewer.setSource(QUrl("qrc:///qml/ubi/main.qml")); + //viewer.setMainQmlFile(QLatin1String("qml/ubi/main.qml")); + viewer.setSource(QUrl("qrc:///qml/ubi/main.qml")); viewer.setWindowTitle(QString("Ubi")); #if defined(Q_WS_MAEMO_5) diff --git a/qml/ubi/AccountPage.qml b/qml/ubi/AccountPage.qml index 44a000a..81bccb4 100644 --- a/qml/ubi/AccountPage.qml +++ b/qml/ubi/AccountPage.qml @@ -27,25 +27,17 @@ Page { function onResp(secrets,account) { - //console.log("onResp"); mask.state = "idle"; - - //uid.text = account.id; username.text = account.username; //username.text = "Molly"; - - //nick.text = account.nickname; - email.text = account.email; //email.text = "molly@ponny.eu"; storage.text = Conv.bytesToSize(account.total_storage); - U1.getRootNode(secrets,root); } function onRespRootNode(resp) { - //console.log("onResp"); mask.state = "idle"; var ubytes = Conv.bytesToSize(resp.used_bytes); var uprec = Math.round((resp.used_bytes/resp.max_bytes)*100); @@ -54,7 +46,6 @@ Page { function onErr(status) { - //console.log("onErr"); mask.state = "idle"; if(status==401) { tip.show(qsTr("Ubuntu One authorization has failed. Try once again or check login settings.")); @@ -78,23 +69,12 @@ Page { spacing: Const.DEFAULT_MARGIN x: Const.TEXT_MARGIN - /*Text { - font.pixelSize: 30 - color: "white" - text: "Id:" - } - Text { - id: uid - font.pixelSize: 30 - color: "black" - wrapMode: Text.Wrap - width: root.width - 6*Const.DEFAULT_MARGIN - }*/ Text { font.pixelSize: 30 color: "white" text: qsTr("User name:") } + Text { id: username font.pixelSize: 30 @@ -102,26 +82,17 @@ Page { wrapMode: Text.Wrap width: root.width - 6*Const.DEFAULT_MARGIN } + Line { width: root.width-2*Const.TEXT_MARGIN } - /*Text { - font.pixelSize: 30 - color: "white" - text: qsTr("Nickname:") - } - Text { - id: nick - font.pixelSize: 30 - color: "black" - wrapMode: Text.Wrap - width: root.width - 6*Const.DEFAULT_MARGIN - }*/ + Text { font.pixelSize: 30 color: "white" text: qsTr("Email:") } + Text { id: email font.pixelSize: 30 @@ -129,14 +100,17 @@ Page { wrapMode: Text.Wrap width: root.width - 6*Const.DEFAULT_MARGIN } + Line { width: root.width-2*Const.TEXT_MARGIN } + Text { font.pixelSize: 30 color: "white" text: qsTr("Total storage:") } + Text { id: storage font.pixelSize: 30 @@ -144,14 +118,17 @@ Page { wrapMode: Text.Wrap width: root.width - 6*Const.DEFAULT_MARGIN } + Line { width: root.width-2*Const.TEXT_MARGIN } + Text { font.pixelSize: 30 color: "white" text: qsTr("Used:") } + Text { id: used font.pixelSize: 30 @@ -159,6 +136,7 @@ Page { wrapMode: Text.Wrap width: root.width - 6*Const.DEFAULT_MARGIN } + Spacer{} } } diff --git a/qml/ubi/DownloadArea.qml b/qml/ubi/DownloadArea.qml index 62554a6..f010c3b 100644 --- a/qml/ubi/DownloadArea.qml +++ b/qml/ubi/DownloadArea.qml @@ -7,19 +7,10 @@ Item { property int count: 0 - /*Rectangle { - anchors.fill: parent - color: "red" - }*/ - height: taskView.height+Const.DEFAULT_MARGIN function addTask(type,filename) { - //emptyLabel.visible = Utils.emptyQuee(); - //emptyLabel.visible = false; - //console.log("1. taskView.childrens.length: "+taskView.children.length); - //console.log("1. taskView.height: "+taskView.height); var comp = Qt.createComponent("components/Bar.qml"); //var obj = comp.createObject(taskView,{"width": root.width}); var obj = comp.createObject(taskView); @@ -37,8 +28,6 @@ Item { if(type=="upload") obj.isUpload = true; } - //console.log("2. taskView.childrens.length: "+taskView.children.length); - //console.log("2. taskView.height: "+taskView.height); } function setProgress(filename, progress) @@ -67,8 +56,6 @@ Item { function stop(filename) { - //console.log("stop task"); - //console.log("3. taskView.childrens.length: "+taskView.children.length); var l = taskView.children.length; for(var i=0;i=root.width) - bar.state = "left"; - if(bar.x<=0) - bar.state = "right"; - - if(bar.state=="right") - bar.x += 6; - else if(bar.state=="left") - bar.x -= 6; - } - } - - states: [ - State { - name: "visible" - PropertyChanges { target: root; opacity: 1 } - }, - State { - name: "invisible" - PropertyChanges { target: root; opacity: 0 } - } - ] - - transitions: Transition { - NumberAnimation { properties: "opacity"; easing.type: Easing.InOutQuad } - } -} diff --git a/qml/ubi/FileSelector.qml b/qml/ubi/FileSelector.qml deleted file mode 100644 index 5c0d2cb..0000000 --- a/qml/ubi/FileSelector.qml +++ /dev/null @@ -1,224 +0,0 @@ -import QtQuick 1.0 // to target S60 5th Edition or Maemo 5 -import "components" -import "UIConstants.js" as Const -import Qt 4.7 -import Qt.labs.folderlistmodel 1.0 - - -Item { - id: root - - property string currentFilePath: fileSelector.currentFilePath - property bool load: fileSelector.load - property alias folder: folderModel.folder - property bool folderOnly: true - - state: "invisible" - - signal folderSelected(string folder) - signal fileSelected(string folder, string file) - - height: parent.height - width: parent.width - - function fixPath(path) { - path = path.toString(); - //console.log(path); - var ind = path.lastIndexOf("/"); - if(ind>=0) { - path = path.substr(ind+1); - } - if(path=="") path = "/"; - - return path; - } - - function open() { - state = "visible"; - } - - function close() { - state = "invisible"; - } - - Rectangle { - id: fileSelector - - width: parent.width - height: parent.height - radius: 10 - - property string currentFilePath: folderModel.folder - property bool load: true - property string folder: folderModel.folder - - state: "invisible" - color: Const.DEFAULT_DIALOG_BACKGROUND_COLOR - - function setFolder(folder) - { - console.log(root.folder); - console.log(folder); - - folderAnimation.folderToChange = folder; - folderAnimation.start(); - } - - function loadFile(filePath) { - engine.clearModels(); - storageThread.loadByUrl(filePath); - fileSelector.currentFilePath = filePath; - gestureListView.currentSetFilename = - helper.extractFilenameFromPath(filePath); - - if (!viewSwitcher.running) { - viewSwitcher.switchView(gestureListView, true); - } - } - - function saveFile(filePath) { - helper.saveGestures(filePath, engine); - gestureListView.currentSetFilename = - helper.extractFilenameFromPath(filePath); - - if (!viewSwitcher.running) { - viewSwitcher.switchView(gestureListView, true); - } - } - - Rectangle { - id: pathController - width: parent.width - height: 80 - anchors.top: parent.top - z: 1 - color: Const.LIGHT_AUBERGINE_COLOR - - Column { - anchors.horizontalCenter: parent.horizontalCenter - width: parent.width - 2 * Const.DEFAULT_MARGIN - height: parent.height - Const.DEFAULT_MARGIN - - Spacer {} - - Row { - width: parent.width - spacing: Const.DEFAULT_MARGIN - - Button { - id: currentFolderButton - maxSize: 12 - label: fixPath(folderModel.folder) - width: pathController.width-folderUpButton.width-cancelButton.width-4*Const.DEFAULT_MARGIN - onButtonClicked: root.folderSelected(folderModel.folder) - disabled: !root.folderOnly - } - Button { - id: folderUpButton - label: "up" - iconSource: "images/up.png" - onButtonClicked: fileSelector.setFolder(folderModel.parentFolder); - } - Button { - id: cancelButton - label: "cancel" - iconSource: "images/close.png" - onButtonClicked: { - root.close(); - mask.state = "idle"; - } - } - } - } - - } // pathController - - Shadow { - y: pathController.height - z: 1 - } - - Rectangle { - id: folderModelContainer - width: parent.width - anchors.top: pathController.bottom; - anchors.bottom: parent.bottom - color: Const.TRANSPARENT - radius: 30 - - FolderListModel { - id: folderModel - //folder: "/" - //nameFilters: [ "*.*" ] - } - - Component { - id: folderModelDelegate - - Rectangle { - width: parent.width; - height: folderModel.isFolder(index)? file.height + Const.DEFAULT_MARGIN : root.folderOnly? 0 : file.height + Const.DEFAULT_MARGIN - color: Const.TRANSPARENT - visible: root.folderOnly? folderModel.isFolder(index) : true - - FileOld { - id: file - anchors.verticalCenter: parent.verticalCenter - name: fileName - filename: fileName - isDirectory: folderModel.isFolder(index) - textMax: root.width/18 - onClicked: { - if(isDirectory) - fileSelector.setFolder(filePath); - else - root.fileSelected(folderModel.folder,filename) - } - } - } - } // Component - - ListView { - id: folderModelView - - anchors { - fill: parent; - margins: Const.TEXT_MARGIN - } - - model: folderModel - delegate: folderModelDelegate - - SequentialAnimation { - id: folderAnimation - - property string folderToChange - - PropertyAnimation { target: folderModelView; property: "opacity"; to: 0; duration: 100 } - PropertyAction { target: folderModel; property: "folder"; value: folderAnimation.folderToChange } - PropertyAnimation { target: folderModelView; property: "opacity"; to: 1.0; duration: 100 } - } - } - - } // folderModelContainer - } - - states: [ - State { - name: "visible" - PropertyChanges { target: root; opacity: 1 } - PropertyChanges { target: root; y: Const.SYSTEM_BAR_HEIGHT } - }, - State { - name: "invisible" - PropertyChanges { target: root; opacity: 0 } - PropertyChanges { target: root; y: root.parent.height } - } - ] - - transitions: Transition { - NumberAnimation { properties: "opacity"; easing.type: Easing.InOutQuad } - NumberAnimation { properties: "y"; easing.type: Easing.InOutQuad } - } -} - diff --git a/qml/ubi/FilesPage.qml b/qml/ubi/FilesPage.qml index ebbf02e..8af530b 100644 --- a/qml/ubi/FilesPage.qml +++ b/qml/ubi/FilesPage.qml @@ -54,7 +54,6 @@ Page { function onErr(status) { - //console.log("onErr"); mask.state = "idle"; if(status==401) { tip.show(qsTr("Ubuntu One authorization has failed. Try once again or check login settings.")); @@ -70,7 +69,6 @@ Page { function onRespRename() { - //console.log("onRespRename"); pageStack.prevPage().init(); mask.state = "idle"; tip.show(qsTr("Folder renamed!")); @@ -78,7 +76,6 @@ Page { function onErrRename(status) { - //console.log("onErrRenamed"); mask.state = "idle"; if(status==401) { tip.show(qsTr("Ubuntu One authorization has failed. Try once again or check login settings.")); @@ -89,7 +86,6 @@ Page { function onRespNew() { - //console.log("onRespNew"); pageStack.currentPage.init(); mask.state = "idle"; tip.show(qsTr("New folder created!")); @@ -111,12 +107,9 @@ Page { } var component = Qt.createComponent("components/File.qml"); l = nodes.length; - //console.log("l="+l); for (i=0; i=0) { ppath = path.substr(0,ind); } if(path=="") ppath = "/"; - - //console.log(ppath); return ppath; } @@ -331,7 +293,6 @@ Page { mask.state = "busy"; var currentPath = root.properties.resource_path; var targetPath = getParentPath(root.properties.path)+"/"+resp; - //console.log("targetPath: "+targetPath); U1.renameFile(secrets,currentPath,targetPath,root); } else { tip.show(qsTr("Invalid folder name!")) @@ -363,7 +324,6 @@ Page { else rpath = root.resource_path; var newPath = rpath+"/"+resp; - //console.log("newPath: "+newPath); U1.newFolder(secrets,newPath,root); } else { tip.show(qsTr("Invalid folder name!")) @@ -374,39 +334,6 @@ Page { } } - /*[qsTr("Upload file"),false], - [qsTr("Rename"),false], - [qsTr("Delete"),false], - [qsTr("New folder"),false], - [qsTr("Refresh"),false] - function menuFun(id) { - if(id==qsTr("Upload file")) { - mask.state = "dialog"; - fileSelector.open(); - } - if(id==qsTr("Refresh")) { - init(root.properties); - } - if(id==qsTr("Rename")) { - if(root.path=="/") { - tip.show(qsTr("Root folder can't be renamed!")); - } else { - dialogRename.open(); - } - } - if(id==qsTr("Delete")) { - if(root.path=="/") { - tip.show(qsTr("Root folder can't be deleted!")); - } else { - dialogDelete.open(); - } - } - if(id==qsTr("New folder")) { - dialogNew.open(); - } - } -*/ - TaskMenu { z: 200 id: taskMenu diff --git a/qml/ubi/InitPage.qml b/qml/ubi/InitPage.qml index 577f29f..3c9fdbc 100644 --- a/qml/ubi/InitPage.qml +++ b/qml/ubi/InitPage.qml @@ -21,14 +21,6 @@ Showable { } function login() { - /*var secrets = { - token: Utils.token(), - secret: Utils.tokenSecret(), - consumer_key : Utils.customerKey(), - consumer_secret: Utils.customerSecret() - }; - U1.getRootNode(secrets,root); - */ pageStack.currentPage.init(); } @@ -67,13 +59,10 @@ Showable { source: "images/ubi100.png" width: 104; height: 70 anchors.horizontalCenter: parent.horizontalCenter - //y: (box.height-height)/3 } Text { id: loading - //anchors.top: pic.bottom - //anchors.margins: Const.TEXT_MARGIN anchors.horizontalCenter: parent.horizontalCenter font.pixelSize: 25 color: "white" @@ -81,8 +70,6 @@ Showable { } BusyIndicator { - //anchors.top: loading.bottom - //anchors.margins: 2*Const.TEXT_MARGIN anchors.horizontalCenter: parent.horizontalCenter running: true } diff --git a/qml/ubi/LoginPage.qml b/qml/ubi/LoginPage.qml index 0b8b3d6..d951800 100644 --- a/qml/ubi/LoginPage.qml +++ b/qml/ubi/LoginPage.qml @@ -8,8 +8,6 @@ Page { title: qsTr("Login") orientation: "auto" - //property alias taskMenu: taskMenu - function getToken() { mask.state = "busy"; U1.getToken(user.text,pass.text,root) @@ -24,14 +22,12 @@ Page { Utils.setName(account.username); tip.show(qsTr("Logged in!")); - //pageStack.initialPage = "StartPage.qml"; pageStack.initialPage = "FilesPage.qml"; pageStack.currentPage.init(); } function onErr(status) { mask.state = "idle"; - //console.log("onErr"); if(status==401) { tip.show(qsTr("Ubuntu One authorization has failed. Try once again or check login settings.")); } else if(status==0) { @@ -46,13 +42,14 @@ Page { height: root.height contentHeight: content.height+Const.TOP_BAR_HEIGHT+Const.SYSTEM_BAR_HEIGHT+Const.TEXT_MARGIN - y: Const.TOP_BAR_HEIGHT Column { id: content spacing: Const.DEFAULT_MARGIN x: Const.TEXT_MARGIN + Spacer {} + Text { font.pixelSize: 30 color: "white" @@ -83,15 +80,4 @@ Page { } } - /*TaskMenu { - z: 200 - id: taskMenu - menuHeight: menuFixed.height+4*Const.DEFAULT_MARGIN - - menuDynamic: _menuDyn - Flow { - y: root.height-taskMenu.menuHeight-Const.SYSTEM_BAR_HEIGHT+1*Const.DEFAULT_MARGIN - id: _menuDyn - } - }*/ } diff --git a/qml/ubi/Page.qml b/qml/ubi/Page.qml index b0d3a81..1ffd7d5 100644 --- a/qml/ubi/Page.qml +++ b/qml/ubi/Page.qml @@ -28,49 +28,5 @@ Item { Component.onCompleted: { Utils.setOrientation(orientation); - //reloadMenu(); } - - /*function reloadMenu() { - var buttons = root.menu; - - var menu = taskBar.getMenu(); - var comp = Qt.createComponent("components/Button.qml"); - - var i,l; - if(menu.children.length>0) { - l = menu.children.length; - for(i=0;i0) { - l = buttons.length; - for(i=0;i=0) { ppath = path.substr(0,ind); } if(path=="") ppath = "/"; - - //console.log(ppath); return ppath; } @@ -373,7 +342,6 @@ Page { mask.state = "busy"; var currentPath = root.properties.resource_path; var targetPath = getParentPath(root.properties.path)+"/"+resp; - //console.log("targetPath: "+targetPath); U1.renameFile(secrets,currentPath,targetPath,root);; } else { tip.show(qsTr("Invalid file name!")) @@ -385,33 +353,6 @@ Page { } } - /* - menu: [ - [qsTr("Download"),false], - [qsTr("Publish"),false], - [qsTr("Rename"),false], - [qsTr("Delete"),false] - ] - - function menuFun(id) { - if(id==qsTr("Download")) { - fileSelector.state = "visible"; - } - if(id==qsTr("Publish")) { - if(isPublic) { - dialogStopPublish.open(); - } else { - dialogStartPublish.open(); - } - } - if(id==qsTr("Rename")) { - dialogRename.open(); - } - if(id==qsTr("Delete")) { - dialogDelete.open(); - } - }*/ - TaskMenu { z: 200 id: taskMenu diff --git a/qml/ubi/SettingsPage.qml b/qml/ubi/SettingsPage.qml index eae6a8e..2e29b09 100644 --- a/qml/ubi/SettingsPage.qml +++ b/qml/ubi/SettingsPage.qml @@ -22,7 +22,8 @@ Page { width: root.width height: root.height - contentHeight: content.height+Const.TOP_BAR_HEIGHT+Const.SYSTEM_BAR_HEIGHT+Const.TEXT_MARGIN + contentHeight: content.height+Const.TOP_BAR_HEIGHT + +Const.SYSTEM_BAR_HEIGHT+Const.TEXT_MARGIN y: Const.TOP_BAR_HEIGHT Column { @@ -65,8 +66,6 @@ Page { Utils.resetAuthorization(); pageStack.initialPage = "LoginPage.qml"; pageStack.clear(); - //pageStack.pop(); - //pageStack.currentPage.init(); } } } diff --git a/qml/ubi/StartPage.qml b/qml/ubi/StartPage.qml deleted file mode 100644 index 4d1d479..0000000 --- a/qml/ubi/StartPage.qml +++ /dev/null @@ -1,115 +0,0 @@ -import QtQuick 1.0 // to target S60 5th Edition or Maemo 5 -import "UIConstants.js" as Const -import "u1.js" as U1 -import "components" - -Page { - id: root - title: "Ubi" - - //Component.onCompleted: init() - - /*function init() { - if(Utils.isAuthorized()) { - //title = "Hi, "+Utils.name(); - } else { - console.log("not authorized!"); - pageStack.initialPage = "LoginPage.qml"; - } - }*/ - - menu: [ - [qsTr("About Ubi"),false] - ] - - function menuFun(id) { - if(id==qsTr("About Ubi")) { - dialog.open(); - } - } - - Column { - spacing: 10 - anchors.centerIn: parent - - /*Image { - source: "images/cloud.png" - width: 150; height: 98 - } - - Spacer{} - Spacer{} - */ - - Spacer{} - Spacer{} - - ButtonNew { - height: 100; width: 250 - label: qsTr("Files") - //iconSource: "images/files.png" - anchors.horizontalCenter: parent.horizontalCenter - onButtonClicked: { - pageStack.push("FilesPage.qml"); - pageStack.currentPage.init(); - } - } - - /*Button { - label: "Contacts" - disabled: true - } - Button { - label: "Notes" - disabled: true - }*/ - - ButtonNew { - height: 100; width: 250 - label: qsTr("Account") - //iconSource: "images/account.png" - anchors.horizontalCenter: parent.horizontalCenter - onButtonClicked: { - pageStack.push("AccountPage.qml"); - } - } - ButtonNew { - height: 100; width: 250 - label: qsTr("Settings") - //iconSource: "images/settings.png" - anchors.horizontalCenter: parent.horizontalCenter - onButtonClicked: pageStack.push("SettingsPage.qml"); - } - /*Button { - label: "Test" - //onButtonClicked: tip.show("Ala ma kota!") - //onButtonClicked: dialog.open() - //onButtonClicked: U1.getAccount() - }*/ - - //Spacer{} - - } - - /*FileDialog { - z: 200 - hidden: false - folderOnly: false - }*/ - - DialogInfo { - id: dialog - z: 200 - fontSize: 28 - iconSource: "images/ubi50.png" - textHeader: qsTr("Ubi") - - text: qsTr("

An unofficial Ubuntu One app for Maemo 5 " - +"and other Qt-enabled platforms.

" - +"

http://ubi.garage.maemo.org

" - +"

© 2012 Michal Kosciesza

") - - onOpened: mask.state = "dialog" - onCanceled: mask.state = "idle" - } -} diff --git a/qml/ubi/SystemBar.qml b/qml/ubi/SystemBar.qml index eefc449..1f8fafd 100644 --- a/qml/ubi/SystemBar.qml +++ b/qml/ubi/SystemBar.qml @@ -12,20 +12,6 @@ Item { signal clicked() signal clickedOnMask() - /*Shadow { - id: shadow - y:0 - visible: false - }*/ - - /*Rectangle { - id: bor - color: Const.WARM_GREY_COLOR - //color: Const.TRANSPARENT - height: 2; width: root.width - anchors.top: box.top - }*/ - Rectangle { id: box width: root.width @@ -39,18 +25,6 @@ Item { } } - /*Row { - id: box - y: 3 - Repeater { - model: root.width - Image { - id: img - source: "images/bg.png" - } - } - }*/ - Shadow { anchors.bottom: box.top } @@ -67,14 +41,6 @@ Item { text: pageStack.currentPage.title } - /*Image { - source: mouse.pressed? "images/menu-arrow-grey.png" : "images/menu-arrow.png" - anchors.verticalCenter: title.verticalCenter - visible: !taskBar.isEmpty && !progressIcon.visible - width: 18 - height: 14 - }*/ - Image { id: progressIcon source: "images/progress-small.png" @@ -105,35 +71,6 @@ Item { onClicked: root.clicked() } - /*Rectangle { - id: leftSeparator - - width: 1 - height: 40 - anchors { left: parent.left; leftMargin: 80; verticalCenter: parent.verticalCenter } - color: "white" - opacity: 0.5 - } - - Rectangle { - id: rightSeparator - - width: 1 - height: 40 - anchors { right: parent.right; rightMargin: 80; verticalCenter: parent.verticalCenter } - color: "white" - opacity: 0.5 - }*/ - - /*ToolIcon { - id: minimizeButton - - width: 80 - anchors { verticalCenter: parent.verticalCenter; left: parent.left } - iconSource: "images/minimize.png" - onClicked: Utils.minimizeWindow() - }*/ - Button { id: minimizeButton iconSource: pageStack.index > 0 ? "images/back.png" : "images/close.png" diff --git a/qml/ubi/TaskMenu.qml b/qml/ubi/TaskMenu.qml index 1808156..5feaf7f 100644 --- a/qml/ubi/TaskMenu.qml +++ b/qml/ubi/TaskMenu.qml @@ -6,10 +6,8 @@ DialogBlank { id: root property alias menuHeight: root.boxHeight - property alias menuFixed: _menuFixed property Flow menuDynamic - property bool contexMenu: false onOpened: { @@ -30,8 +28,6 @@ DialogBlank { Flow { id: _menuFixed - //y: root.height-root.menuHeight+1*Const.DEFAULT_MARGIN - anchors.top: root.contexMenu ? line.bottom : root.menuDynamic.bottom anchors.topMargin: Const.DEFAULT_MARGIN diff --git a/qml/ubi/TopBar.qml b/qml/ubi/TopBar.qml index 9b57f7f..d2a1240 100644 --- a/qml/ubi/TopBar.qml +++ b/qml/ubi/TopBar.qml @@ -19,8 +19,6 @@ Item { Item { width: 50 height: width - //color: mouseArea1.pressed ? "white" : "black" - //opacity: 0.2 anchors.left: root.left MouseArea { @@ -33,8 +31,6 @@ Item { Item { width: 50 height: width - //color: mouseArea2.pressed ? "white" : "black" - //opacity: 0.2 anchors.right: root.right MouseArea { @@ -43,68 +39,6 @@ Item { onClicked: Qt.quit() } } - - - /*Rectangle { - width: box.width/2-16 - height: 2 - color: "white" - x: 8 - y: (box.width/4)-1 - }*/ - - /*Rectangle { - width: parent.width - height: root.height - color: Const.TRANSPARENT - //color: "black" - } - - Item { - id: minimizeButton - width: 80; - height: 60 - anchors { verticalCenter: parent.verticalCenter; left: parent.left; margins: 5 } - - Rectangle { - id: background - anchors { fill: parent; margins: 6 } - color: "black" - opacity: 0.2 - radius: 10 - } - - Rectangle { - anchors { fill: parent; margins: 6 } - color: "white" - opacity: 0.5 - radius: 10 - visible: mouseArea.pressed - } - - Image { - id: icon - anchors.centerIn: parent - source: "images/minimize.png" - sourceSize.width: width - sourceSize.height: height - } - - MouseArea { - id: mouseArea - anchors.fill: parent - onClicked: Utils.minimizeWindow() - } - }*/ - - /*ToolIcon { - id: backButton - width: 80 - anchors { verticalCenter: parent.verticalCenter; right: parent.right; margins: 5 } - iconSource: "images/close.png" - onClicked: Qt.quit() - }*/ - } diff --git a/qml/ubi/components/Bar.qml b/qml/ubi/components/Bar.qml index ff0df97..9d67f47 100644 --- a/qml/ubi/components/Bar.qml +++ b/qml/ubi/components/Bar.qml @@ -31,13 +31,11 @@ Item { anchors.verticalCenter: parent.verticalCenter color: Const.TRANSPARENT border.width: 2 - //radius: 5 border.color: Const.DEFAULT_FOREGROUND_COLOR height: 40 width: icon.visible? root.width-icon.width-button.width-2*Const.DEFAULT_MARGIN : root.width-button.width-1*Const.DEFAULT_MARGIN - //x: icon.visible? icon.width+5 : 0 Rectangle { id: bar @@ -64,7 +62,6 @@ Item { id: caption font.pixelSize: 25 anchors.centerIn: parent - //color: Const.DEFAULT_FOREGROUND_COLOR text: root.label width: bbar.width elide: Text.ElideRight diff --git a/qml/ubi/components/BusyIndicator.qml b/qml/ubi/components/BusyIndicator.qml index 27a2a7d..a0af1bf 100644 --- a/qml/ubi/components/BusyIndicator.qml +++ b/qml/ubi/components/BusyIndicator.qml @@ -1,5 +1,4 @@ import QtQuick 1.0 // to target S60 5th Edition or Maemo 5 -//import "../UIConstants.js" as Const Image { id: icon diff --git a/qml/ubi/components/Button.qml b/qml/ubi/components/Button.qml index 3eb5ad8..32b75e0 100644 --- a/qml/ubi/components/Button.qml +++ b/qml/ubi/components/Button.qml @@ -28,7 +28,6 @@ Item { id: box color: root.disabled ? Const.COOL_GREY_COLOR : "black" height: root.iconSource=="" ? textbox.height+20 : icon.height+20 - //width: textbox.width<100 ? 120 : textbox.width+20 width: root.iconSource=="" ? textbox.width+30 : icon.width+30 radius: 10 } @@ -41,8 +40,6 @@ Item { color: Const.WARM_GREY_COLOR radius: 10 visible: root.state == "pressed" - //border.color: "black" - //border.width: Const.SHADOW_OFFSET } Image { @@ -57,9 +54,6 @@ Item { onLabelChanged: { if(root.label.length>root.maxSize) { - //console.log("root.label: "+root.label) - //console.log("root.label.length: "+root.label.length) - //console.log("root.maxSize: "+root.maxSize) textbox.text = root.label.substring(0,root.maxSize-3)+"..."; } else { textbox.text = root.label; diff --git a/qml/ubi/components/ButtonGlass.qml b/qml/ubi/components/ButtonGlass.qml deleted file mode 100644 index acce2c6..0000000 --- a/qml/ubi/components/ButtonGlass.qml +++ /dev/null @@ -1,113 +0,0 @@ -import QtQuick 1.0 // to target S60 5th Edition or Maemo 5 -import "../UIConstants.js" as Const - -Item { - id: root - property string label - property bool disabled: false - property int fontSize: 30 - property int maxSize: 27 - property string iconSource - - state: mouseArea.pressed && !root.disabled ? "pressed" : "unpressed" - - width: box.width - height: box.height - - signal buttonClicked(string label) - - Rectangle { - id: shadow - width: box.width - height: box.height - color: Const.SHADOW_COLOR; - radius: 10 - visible: false - } - - Rectangle { - id: box - color: root.disabled ? Const.COOL_GREY_COLOR : "black" - height: root.iconSource=="" ? textbox.height+20 : icon.height+20 - //width: textbox.width<100 ? 120 : textbox.width+20 - width: root.iconSource=="" ? textbox.width+30 : icon.width+30 - radius: 10 - visible: false - } - - Image { - source: root.state != "pressed" ? - "../images/pushbutton_normal.png" : - "../images/pushbutton_disabled.png" - } - - Rectangle { - width: box.width - height: box.height - x: box.x - y: box.y - color: Const.WARM_GREY_COLOR - radius: 10 - //visible: root.state == "pressed" - visible: false - //border.color: "black" - //border.width: Const.SHADOW_OFFSET - } - - Image { - id: icon - //width: 30 - //height: 30 - anchors.centerIn: box - source: root.iconSource == "" ? "" : "../" + root.iconSource - sourceSize.width: width - sourceSize.height: height - } - - onLabelChanged: { - if(root.label.length>root.maxSize) { - //console.log("root.label: "+root.label) - //console.log("root.label.length: "+root.label.length) - //console.log("root.maxSize: "+root.maxSize) - textbox.text = root.label.substring(0,root.maxSize-3)+"..."; - } else { - textbox.text = root.label; - } - } - - Text { - id: textbox - font.pixelSize: root.fontSize - color: root.disabled ? "gray" : "white" - anchors.centerIn: box - visible: root.iconSource == "" - } - - MouseArea { - id: mouseArea - width: box.width - height: box.height - onClicked: root.buttonClicked(root.label) - enabled: !root.disabled - } - - states: [ - State { - name: "unpressed" - PropertyChanges {target: shadow; x: Const.SHADOW_OFFSET} - PropertyChanges {target: shadow; y: Const.SHADOW_OFFSET} - PropertyChanges {target: box; x: 0} - PropertyChanges {target: box; y: 0} - }, - State { - name: "pressed" - PropertyChanges {target: shadow; x: Const.SHADOW_OFFSET} - PropertyChanges {target: shadow; y: Const.SHADOW_OFFSET} - PropertyChanges {target: box; x: Const.SHADOW_OFFSET} - PropertyChanges {target: box; y: Const.SHADOW_OFFSET} - } - ] -} - - - diff --git a/qml/ubi/components/ButtonNew.qml b/qml/ubi/components/ButtonNew.qml index cbb438c..23bdb82 100644 --- a/qml/ubi/components/ButtonNew.qml +++ b/qml/ubi/components/ButtonNew.qml @@ -10,9 +10,6 @@ Item { state: mouseArea.pressed && !root.disabled ? "pressed" : "unpressed" - //width: box.width - //height: box.height - signal buttonClicked(string label) Rectangle { @@ -26,9 +23,7 @@ Item { Rectangle { id: box color: root.disabled ? Const.COOL_GREY_COLOR : "black" - //height: textbox.height+20 height: root.height - //width: textbox.width<100 ? 120 : textbox.width+20 width: root.width radius: 10 } @@ -41,15 +36,10 @@ Item { color: Const.WARM_GREY_COLOR radius: 10 visible: root.state == "pressed" - //border.color: "black" - //border.width: Const.SHADOW_OFFSET } onLabelChanged: { if(root.label.length>root.maxSize) { - //console.log("root.label: "+root.label) - //console.log("root.label.length: "+root.label.length) - //console.log("root.maxSize: "+root.maxSize) textbox.text = root.label.substring(0,root.maxSize-3)+"..."; } else { textbox.text = root.label; @@ -71,8 +61,6 @@ Item { Text { id: textbox - //x: 10 - //y: 10 font.pixelSize: 30 color: root.disabled ? "gray" : "white" } diff --git a/qml/ubi/components/ButtonResizable.qml b/qml/ubi/components/ButtonResizable.qml index e9c0270..0fa2b0a 100644 --- a/qml/ubi/components/ButtonResizable.qml +++ b/qml/ubi/components/ButtonResizable.qml @@ -36,8 +36,6 @@ Item { color: Const.WARM_GREY_COLOR radius: 10 visible: root.state == "pressed" - //border.color: "black" - //border.width: Const.SHADOW_OFFSET } Image { @@ -58,7 +56,6 @@ Item { anchors.left: box.left; anchors.right: box.right anchors.margins: Const.DEFAULT_MARGIN anchors.verticalCenter: box.verticalCenter - //visible: root.iconSource == "" } MouseArea { diff --git a/qml/ubi/components/File.qml b/qml/ubi/components/File.qml index 55a3bd2..f459cb3 100644 --- a/qml/ubi/components/File.qml +++ b/qml/ubi/components/File.qml @@ -21,16 +21,6 @@ Item { signal clicked(variant prop) - /*Rectangle { - id: shadow - width: box.width - height: box.height - color: Const.SHADOW_COLOR; - radius: 10 - x: Const.SHADOW_OFFSET; - y: Const.SHADOW_OFFSET; - }*/ - Rectangle { id: box color: Const.TRANSPARENT @@ -38,26 +28,14 @@ Item { width: root.width } - /*Rectangle { - color: Const.DEFAULT_FOREGROUND_COLOR - height: 1 - anchors.bottom: box.bottom; - anchors.left: box.left; - anchors.right: box.right; - }*/ - Rectangle { id: boxShadow - //width: box.width-2*Const.TEXT_MARGIN+2*Const.DEFAULT_MARGIN width: box.width height: box.height y: 5 - //color: root.isDirectory ? "white" : "black" color: Const.DEFAULT_DIALOG_FOREGROUND_COLOR - //anchors.verticalCenter: box.verticalCenter anchors.horizontalCenter: box.horizontalCenter opacity: 0.4 - //radius: 10 visible: mouseArea.pressed } @@ -140,21 +118,4 @@ Item { root.clicked(root.properties); } } - - /*states: [ - State { - name: "unpressed" - PropertyChanges {target: shadow; x: Const.SHADOW_OFFSET} - PropertyChanges {target: shadow; y: Const.SHADOW_OFFSET} - PropertyChanges {target: box; x: 0} - PropertyChanges {target: box; y: 0} - }, - State { - name: "pressed" - PropertyChanges {target: shadow; x: Const.SHADOW_OFFSET} - PropertyChanges {target: shadow; y: Const.SHADOW_OFFSET} - PropertyChanges {target: box; x: Const.SHADOW_OFFSET} - PropertyChanges {target: box; y: Const.SHADOW_OFFSET} - } - ]*/ } diff --git a/qml/ubi/components/Line.qml b/qml/ubi/components/Line.qml index f97c455..2ea04e6 100644 --- a/qml/ubi/components/Line.qml +++ b/qml/ubi/components/Line.qml @@ -3,7 +3,7 @@ import "../UIConstants.js" as Const Item { id: root - height: 10 + height: 2 Row { anchors.bottom: root.bottom @@ -18,21 +18,4 @@ Item { } } } - - /*Rectangle { - y:0 - color: "black" - height: 1 - width: root.width - opacity: 0.5 - //anchors.bottom: root.bottom - } - Rectangle { - y:3 - color: "black" - height: 1 - width: root.width - opacity: 0.2 - //anchors.bottom: root.bottom - }*/ } diff --git a/qml/ubi/components/Mask.qml b/qml/ubi/components/Mask.qml index b9f68a7..c1ce927 100644 --- a/qml/ubi/components/Mask.qml +++ b/qml/ubi/components/Mask.qml @@ -14,6 +14,12 @@ Item { } else { busy.running = false; } + + if(root.state=="idle") { + systemBar.state = "active"; + } else { + systemBar.state = "inactive"; + } } Rectangle { diff --git a/qml/ubi/components/Notification.qml b/qml/ubi/components/Notification.qml deleted file mode 100644 index aec3d22..0000000 --- a/qml/ubi/components/Notification.qml +++ /dev/null @@ -1,100 +0,0 @@ -import QtQuick 1.0 // to target S60 5th Edition or Maemo 5 -import Qt 4.7 -//import QtMultimediaKit 1.1 -import "../UIConstants.js" as Const - -Item { - id: root - state: "invisible" - width: box.width; height: box.height - - Rectangle { - width: box.width - height: box.height - color: Const.SHADOW_COLOR; - radius: 10 - x: 2*Const.SHADOW_OFFSET; - y: 2*Const.SHADOW_OFFSET; - } - - Rectangle { - id: box - width: text.width+30 - height: text.height+30 - color: Const.DEFAULT_DIALOG_FOREGROUND_COLOR - radius: 10 - border.color: Const.WARM_GREY_COLOR - border.width: 4 - - Text { - anchors.centerIn: parent - id: text - color: Const.DEFAULT_BACKGROUND_COLOR - wrapMode: Text.WordWrap - font.pixelSize: Const.DEFAULT_FONT_PIXEL_SIZE - } - - MouseArea { - anchors.fill: parent - onClicked: tip.state = "invisible" - } - } - - function show(_text) - { - text.text= _text; - time.interval = 3000; - state = "visible" - //sound.play(); - time.restart(); - } - - function show2(_text,interval) - { - text.text= _text; - time.interval = interval; - state = "visible" - //sound.play(); - time.restart(); - } - - function hide() - { - text.text=""; - state="invisible"; - } - - /*Audio { - id: sound - source: "../sound/message.wav" - }*/ - - Timer { - id: time - interval: 3000 - onTriggered: { - //console.log("time"); - tip.state = "invisible"; - } - } - - states: [ - State { - name: "visible" - PropertyChanges { target: root; opacity: 1 } - }, - State { - name: "invisible" - PropertyChanges { target: root; opacity: 0 } - PropertyChanges { target: root; x: 0 } - PropertyChanges { target: root; y: 0 } - } - ] - - transitions: Transition { - NumberAnimation { properties: "opacity"; easing.type: Easing.InOutQuad } - NumberAnimation { properties: "x"; easing.type: Easing.InOutQuad } - NumberAnimation { properties: "y"; easing.type: Easing.InOutQuad } - } - -} diff --git a/qml/ubi/components/NotificationNew.qml b/qml/ubi/components/NotificationNew.qml index 56baecb..10b5ef9 100644 --- a/qml/ubi/components/NotificationNew.qml +++ b/qml/ubi/components/NotificationNew.qml @@ -22,7 +22,6 @@ Item { id: box height: text.height+4*Const.DEFAULT_MARGIN width: root.width - //color: Const.DEFAULT_DIALOG_FOREGROUND_COLOR color: Const.COOL_GREY_COLOR radius: 5 diff --git a/qml/ubi/components/Showable.qml b/qml/ubi/components/Showable.qml index 69c7390..77edddb 100644 --- a/qml/ubi/components/Showable.qml +++ b/qml/ubi/components/Showable.qml @@ -9,7 +9,6 @@ Item { property int speed: 1 state: hidden ? "closed" : "opened" - //visible: !hidden Component.onCompleted: { if(hidden) state = "closed"; @@ -32,7 +31,6 @@ Item { State { name: "closed" PropertyChanges { target: root; y: root.height } - //PropertyChanges { target: root; visible: false } } ] @@ -50,7 +48,6 @@ Item { id: time interval: root.speed*root.height/2 onTriggered: { - //console.log("aaa"); root.visible = false; } } diff --git a/qml/ubi/components/Spacer.qml b/qml/ubi/components/Spacer.qml index 59986bc..237eacd 100644 --- a/qml/ubi/components/Spacer.qml +++ b/qml/ubi/components/Spacer.qml @@ -2,7 +2,6 @@ import QtQuick 1.0 // to target S60 5th Edition or Maemo 5 import "../UIConstants.js" as Const Rectangle { - //property int size: height width: Const.DEFAULT_MARGIN height: Const.DEFAULT_MARGIN color: "#00000000" diff --git a/qml/ubi/components/ToolIcon.qml b/qml/ubi/components/ToolIcon.qml deleted file mode 100644 index 6632be4..0000000 --- a/qml/ubi/components/ToolIcon.qml +++ /dev/null @@ -1,52 +0,0 @@ -import QtQuick 1.0 // to target S60 5th Edition or Maemo 5 -import "../UIConstants.js" as Const - -Item { - id: root - - property string iconSource - property bool pressed: mouseArea.pressed - property string color: Const.TRANSPARENT - - signal clicked - signal pressAndHold - - width: 56 - height: 56 - - Rectangle { - id: background - anchors { fill: parent; margins: 6 } - //color: root.color - color: "black" - opacity: 0.1 - radius: 10 - } - - Rectangle { - anchors { fill: parent; margins: 6 } - color: "white" - opacity: 0.5 - radius: 10 - visible: mouseArea.pressed - } - - Image { - id: icon - width: 30 - height: 30 - anchors.centerIn: parent - source: iconSource == "" ? "" : "../" + iconSource - sourceSize.width: width - sourceSize.height: height - } - - MouseArea { - id: mouseArea - - anchors.fill: parent - enabled: root.enabled - onClicked: parent.clicked() - onPressAndHold: parent.pressAndHold() - } -} diff --git a/qml/ubi/main.qml b/qml/ubi/main.qml index 91cc567..60cd7ab 100644 --- a/qml/ubi/main.qml +++ b/qml/ubi/main.qml @@ -12,19 +12,11 @@ Rectangle { PageStack { id: pageStack - //initialPage: Qt.resolvedUrl("StartPage.qml") initialPage: Qt.resolvedUrl("FilesPage.qml") } TopBar { id: topbar - /*Component.onCompleted: { - //visible = Utils.isMaemo(); - } - onVisibleChanged: { - if(visible) - visible = Utils.isMaemo(); - }*/ } NotificationNew { @@ -34,10 +26,6 @@ Rectangle { y: mainWindow.height-height-Const.SYSTEM_BAR_HEIGHT-Const.TEXT_MARGIN } - /*TaskBar { - id: taskBar - }*/ - Connections { target: Utils onFileDownloaded: tip.show(qsTr("File downloaded.")) @@ -80,8 +68,6 @@ Rectangle { anchors.horizontalCenter: parent.horizontalCenter id: progressArea width: parent.width-3*Const.DEFAULT_MARGIN - - //onHeightChanged: console.log("height: "+height); } } diff --git a/qtc_packaging/debian_fremantle/changelog b/qtc_packaging/debian_fremantle/changelog index 5fc6d58..995f576 100644 --- a/qtc_packaging/debian_fremantle/changelog +++ b/qtc_packaging/debian_fremantle/changelog @@ -1,3 +1,11 @@ +ubi (0.9.3-1) unstable; urgency=low + + * UTF-8 encoding support + * New icons + * Updated GUI + + -- Michal Kosciesza Fri, 18 May 2012 22:10:09 +0200 + ubi (0.9.2-1) unstable; urgency=low * Added "publishing" feature diff --git a/qtc_packaging/debian_fremantle/changelog~ b/qtc_packaging/debian_fremantle/changelog~ index 5fc6d58..fbc5105 100644 --- a/qtc_packaging/debian_fremantle/changelog~ +++ b/qtc_packaging/debian_fremantle/changelog~ @@ -1,3 +1,11 @@ +ubi (0.9.3-1) unstable; urgency=low + + * UTF-8 encoding support + * New icons + * New UI + + -- Michal Kosciesza Fri, 18 May 2012 22:10:09 +0200 + ubi (0.9.2-1) unstable; urgency=low * Added "publishing" feature diff --git a/qtc_packaging/debian_harmattan/changelog b/qtc_packaging/debian_harmattan/changelog index 5fc6d58..995f576 100644 --- a/qtc_packaging/debian_harmattan/changelog +++ b/qtc_packaging/debian_harmattan/changelog @@ -1,3 +1,11 @@ +ubi (0.9.3-1) unstable; urgency=low + + * UTF-8 encoding support + * New icons + * Updated GUI + + -- Michal Kosciesza Fri, 18 May 2012 22:10:09 +0200 + ubi (0.9.2-1) unstable; urgency=low * Added "publishing" feature diff --git a/qtc_packaging/debian_harmattan/changelog~ b/qtc_packaging/debian_harmattan/changelog~ index a31c309..fbc5105 100644 --- a/qtc_packaging/debian_harmattan/changelog~ +++ b/qtc_packaging/debian_harmattan/changelog~ @@ -1,4 +1,12 @@ -ubi (0.9.1-3) unstable; urgency=low +ubi (0.9.3-1) unstable; urgency=low + + * UTF-8 encoding support + * New icons + * New UI + + -- Michal Kosciesza Fri, 18 May 2012 22:10:09 +0200 + +ubi (0.9.2-1) unstable; urgency=low * Added "publishing" feature diff --git a/ubi.pro b/ubi.pro index c399160..23ea7d4 100644 --- a/ubi.pro +++ b/ubi.pro @@ -1,11 +1,11 @@ # Add more folders to ship with the application, here -folder_01.source = qml/ubi -folder_01.target = qml -DEPLOYMENTFOLDERS = folder_01 +#folder_01.source = qml/ubi +#folder_01.target = qml +#DEPLOYMENTFOLDERS = folder_01 -folder_02.source = translations/ubi.pl.qm -folder_02.target = translations -DEPLOYMENTFOLDERS += folder_02 +#folder_02.source = translations/ubi.pl.qm +#folder_02.target = translations +#DEPLOYMENTFOLDERS += folder_02 # Additional import path used to resolve QML modules in Creator's code model QML_IMPORT_PATH = @@ -43,7 +43,7 @@ SOURCES += main.cpp \ utils.cpp # evil_hack_to_fool_lupdate -include(translation.pri) +#include(translation.pri) # Please do not modify the following two lines. Required for deployment. include(qmlapplicationviewer/qmlapplicationviewer.pri) @@ -70,5 +70,5 @@ HEADERS += \ TRANSLATIONS += translations/ubi.pl.ts -#RESOURCES += \ -# ubi.qrc +RESOURCES += \ + ubi.qrc diff --git a/ubi.pro.user b/ubi.pro.user index acd9bfe..d9962f0 100644 --- a/ubi.pro.user +++ b/ubi.pro.user @@ -1,10 +1,10 @@ - + ProjectExplorer.Project.ActiveTarget - 1 + 4 ProjectExplorer.Project.EditorSettings @@ -439,6 +439,7 @@ /home/mkiol/dev/Qt/ubi-build-maemo-Maemo_Qt_4_7_0__fremantle-pr13__Release/ubi_0_0_1_armel.deb /home/mkiol/dev/Qt/ubi-build-maemo-Maemo_Qt_4_7_0__fremantle-pr13__Release/ubi_0_9_0_armel.deb /home/mkiol/dev/Qt/ubi-build-maemo-Maemo_Qt_4_7_0__fremantle-pr13__Release/ubi_0_0_2_armel.deb + /home/mkiol/dev/Qt/ubi-build-maemo-Maemo_Qt_4_7_0__fremantle-pr13__Release/ubi_0_9_3-1_armel.deb /home/mkiol/dev/Qt/ubi-build-maemo-Maemo_Qt_4_7_0__fremantle-pr13__Release/ubi_0_0_2_armel.deb /home/mkiol/dev/Qt/ubi-build-maemo-Maemo_Qt_4_7_0__fremantle-pr13__Release/ubi_0_0_2_armel.deb /home/mkiol/dev/Qt/ubi-build-maemo-Maemo_Qt_4_7_0__fremantle-pr13__Release/ubi_0_9_0-2_armel.deb @@ -450,6 +451,7 @@ 192.168.2.101 192.168.2.101 192.168.2.102 + 192.168.2.101 192.168.2.100 192.168.2.101 192.168.2.101 @@ -467,17 +469,19 @@ + 2012-02-12T21:15:32 2012-04-27T23:16:36 2012-02-23T12:56:54 + 2012-05-18T22:20:33 2012-04-22T22:36:27 2012-04-20T23:23:40 2012-04-28T10:41:48 2012-05-03T18:56:53 2012-05-05T14:55:15 - 2012-05-16T05:43:04 + 2012-05-18T21:37:42 3 @@ -611,7 +615,7 @@ 0 0 - Qt4ProjectManager.ToolChain.Maemo:/home/mkiol/dev/QtSDK/Madde/targets/harmattan_10.2011.34-1_rt1.0/bin/gcc.arm-linux-generic-elf-32bit./home/mkiol/dev/QtSDK/debugger/Maemo/gdb + Qt4ProjectManager.ToolChain.Maemo:/home/mkiol/dev/QtSDK/Madde/targets/harmattan_10.2011.34-1_rt1.2/bin/gcc.arm-linux-generic-elf-32bit./home/mkiol/dev/QtSDK/debugger/Maemo/gdb qmake @@ -652,12 +656,12 @@ 2 false - Harmattan Target - QEmu PR1.0 (Qt SDK) Release + Harmattan Target - QEmu PR1.2 (Qt SDK) Release Qt4ProjectManager.Qt4BuildConfiguration 0 - 10 + 9 true @@ -1063,9 +1067,9 @@ 0 1 - 4_7_2_m1_1_1 + 4_7_3 1 - s60_5_0_n97 + symbian3 1 Build diff --git a/ubi.qrc b/ubi.qrc index d92407e..9e57c8b 100644 --- a/ubi.qrc +++ b/ubi.qrc @@ -1,65 +1,88 @@ - qml/ubi/AccountPage.qml - qml/ubi/bytesconv.js - qml/ubi/DownloadArea.qml - qml/ubi/DownloadProgressBar.qml - qml/ubi/FileSelector.qml - qml/ubi/FilesPage.qml - qml/ubi/ISOdate.js - qml/ubi/LoginPage.qml - qml/ubi/main.qml - qml/ubi/PageStack.qml - qml/ubi/PropertiesPage.qml - qml/ubi/SettingsPage.qml - qml/ubi/Shadow.qml - qml/ubi/StartPage.qml - qml/ubi/SystemBar.qml - qml/ubi/TaskBar.qml - qml/ubi/u1.js - qml/ubi/UIConstants.js qml/ubi/components/Bar.qml + qml/ubi/components/BusyIndicator.qml qml/ubi/components/Button.qml qml/ubi/components/ButtonNew.qml + qml/ubi/components/ButtonResizable.qml + qml/ubi/components/DialogBlank.qml qml/ubi/components/DialogBox.qml qml/ubi/components/DialogCombo.qml qml/ubi/components/DialogInfo.qml qml/ubi/components/DialogInput.qml qml/ubi/components/DialogYesNo.qml qml/ubi/components/File.qml - qml/ubi/components/FileOld.qml + qml/ubi/components/FileSmall.qml qml/ubi/components/Line.qml qml/ubi/components/Mask.qml - qml/ubi/components/Notification.qml - qml/ubi/components/Page.qml + qml/ubi/components/NotificationNew.qml + qml/ubi/components/Showable.qml qml/ubi/components/Spacer.qml qml/ubi/components/TextField.qml - qml/ubi/components/ToolIcon.qml qml/ubi/images/account.png qml/ubi/images/back.png + qml/ubi/images/back-old.png + qml/ubi/images/bg.png qml/ubi/images/close.png + qml/ubi/images/close-old.png qml/ubi/images/document.png + qml/ubi/images/document-small.png qml/ubi/images/down.png qml/ubi/images/download.png + qml/ubi/images/download-old.png qml/ubi/images/files.png qml/ubi/images/folder.png + qml/ubi/images/folder-small.png qml/ubi/images/internet.png qml/ubi/images/menu-arrow.png qml/ubi/images/menu-arrow-grey.png qml/ubi/images/menu-arrow-orange.png qml/ubi/images/minimize.png + qml/ubi/images/minimize-old.png + qml/ubi/images/music.png + qml/ubi/images/music-small.png qml/ubi/images/next.png + qml/ubi/images/options.png qml/ubi/images/photo.png + qml/ubi/images/photo-small.png qml/ubi/images/progress.png qml/ubi/images/progress-small.png + qml/ubi/images/pushbutton_disabled.png + qml/ubi/images/pushbutton_normal.png + qml/ubi/images/refresh.png qml/ubi/images/settings.png qml/ubi/images/share.png qml/ubi/images/ubi50.png + qml/ubi/images/ubi100.png qml/ubi/images/up.png qml/ubi/images/upload.png + qml/ubi/images/upload-old.png + qml/ubi/images/up-old.png + qml/ubi/images/video.png + qml/ubi/images/video-small.png qml/ubi/oauth/oauth.js qml/ubi/oauth/README.txt qml/ubi/oauth/sha1.js + qml/ubi/AccountPage.qml + qml/ubi/bytesconv.js + qml/ubi/DownloadArea.qml + qml/ubi/FileDialog.qml + qml/ubi/FilesPage.qml + qml/ubi/InitPage.qml + qml/ubi/ISOdate.js + qml/ubi/LoginPage.qml + qml/ubi/main.qml + qml/ubi/Page.qml + qml/ubi/PageStack.qml + qml/ubi/PropertiesPage.qml + qml/ubi/SettingsPage.qml + qml/ubi/Shadow.qml + qml/ubi/SystemBar.qml + qml/ubi/TaskBar.qml + qml/ubi/TaskMenu.qml + qml/ubi/TopBar.qml + qml/ubi/u1.js + qml/ubi/UIConstants.js translations/ubi.pl.qm diff --git a/ubi.zip b/ubi.zip index e2c24bb3e40ea62db0575e19355ac57383381912..b64fcad2dc829e4b0f9ce3d031a1b92c83201eac 100644 GIT binary patch delta 58745 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 blmmGV$FYS9T*xsPJMg0ffHPd+G>Q2?Yw^7I delta 42658 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 z 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