Re: [SailfishDevel] Hidden information to ListView
Hi Chris and others, yes I understand how to add more than one fields in the same append command. The problem is that I would like to add hidden (not visible for user) per ListItem. In my example which I send in my previous mail was only one label which is visible for user, but how to add variables inside the ListItem (row ID of DB and other information) which I can access from other functions like when deleting the item from screen and db at the same time. I tried to add inside ListItem this way: delegate: ListItem { id: contentListItem property int itemId: itemId Label { text: itemValue } } and in the append({itemValue: items.rows.item(i).itemValue, itemId, items.rows.item(i).itemId}) However, later when I'm calling: contentItem.isDefault returns undefined. I can't figure out what I'm doing wrong. I just want that I can delete the item when I'm pressing the ListItem and getting the dropdown where is selection Delete. I hope that someone could help me with this. Kind Regards, Jukka 2014-02-22 21:51 GMT+02:00 christopher.l...@thurweb.ch: Jukka It is very easy to add multiple roles / fields with the same append command. Here is an example culled from one of my apps: var db = DB.DataModel(); var rs = db.getContacts(area_id, template_id); for(var i = 0; i rs.rows.length; i++) { contactModel.append({name: rs.rows.item(i).name, phone: rs.rows.item(i).phone, primary_contact: rs.rows.item(i).primary_contact, contact_id: rs.rows.item(i).id}); } HTH Chris Zitat von Jukka Heikkilä jut...@gmail.com: I'm creating page which shows some information which is returned from local storage. I have successfully created the next code which will work: Page { root Component.onCompleted: { //External Function which return the items from Local Storage items = DB.listItems(); //Adding items to list view for(var i = 0; i items.rows.length; i++){ listItems.model.append({itemValue: items.rows.item(i).itemValue}) } } SilicaListView { id: listItems model: listModel VerticalScrollDecorator {} delegate: ListItem { id: contentListItem Label { text: itemValue } } } ListModel { id: listModel } } I would like to include some hidden values (e.g. DB row ID) for later usage, but is there possibilities to include extra data with same append command to the ListItem? I know the properties, but I haven't managed how to pass the variables in it. I would be grateful for your help. Kind Regards, Jukka @Juukks ___ SailfishOS.org Devel mailing list ___ SailfishOS.org Devel mailing list
Re: [SailfishDevel] Hidden information to ListView
what the problem? You not forced to use all fields in any visual elements. You can use model.get(index).fieldname for getting any field from model On 23.02.2014 14:17, Jukka Heikkilä wrote: Hi Chris and others, yes I understand how to add more than one fields in the same append command. The problem is that I would like to add hidden (not visible for user) per ListItem. In my example which I send in my previous mail was only one label which is visible for user, but how to add variables inside the ListItem (row ID of DB and other information) which I can access from other functions like when deleting the item from screen and db at the same time. I tried to add inside ListItem this way: delegate: ListItem { id: contentListItem property int itemId: itemId Label { text: itemValue } } and in the append({itemValue: items.rows.item(i).itemValue, itemId, items.rows.item(i).itemId}) However, later when I'm calling: contentItem.isDefault returns undefined. I can't figure out what I'm doing wrong. I just want that I can delete the item when I'm pressing the ListItem and getting the dropdown where is selection Delete. I hope that someone could help me with this. Kind Regards, Jukka 2014-02-22 21:51 GMT+02:00 christopher.l...@thurweb.ch: Jukka It is very easy to add multiple roles / fields with the same append command. Here is an example culled from one of my apps: var db = DB.DataModel(); var rs = db.getContacts(area_id, template_id); for(var i = 0; i rs.rows.length; i++) { contactModel.append({name: rs.rows.item(i).name, phone: rs.rows.item(i).phone, primary_contact: rs.rows.item(i).primary_contact, contact_id: rs.rows.item(i).id}); } HTH Chris Zitat von Jukka Heikkilä jut...@gmail.com: I'm creating page which shows some information which is returned from local storage. I have successfully created the next code which will work: Page { root Component.onCompleted: { //External Function which return the items from Local Storage items = DB.listItems(); //Adding items to list view for(var i = 0; i items.rows.length; i++){ listItems.model.append({itemValue: items.rows.item(i).itemValue}) } } SilicaListView { id: listItems model: listModel VerticalScrollDecorator {} delegate: ListItem { id: contentListItem Label { text: itemValue } } } ListModel { id: listModel } } I would like to include some hidden values (e.g. DB row ID) for later usage, but is there possibilities to include extra data with same append command to the ListItem? I know the properties, but I haven't managed how to pass the variables in it. I would be grateful for your help. Kind Regards, Jukka @Juukks ___ SailfishOS.org Devel mailing list ___ SailfishOS.org Devel mailing list ___ SailfishOS.org Devel mailing list
Re: [SailfishDevel] Hidden information to ListView
Hi, that was the problem. Big thanks for your help. Kind Regards, Jukka 2014-02-23 10:21 GMT+02:00 Andrey Kozhevnikov coderusin...@gmail.com: what the problem? You not forced to use all fields in any visual elements. You can use model.get(index).fieldname for getting any field from model On 23.02.2014 14:17, Jukka Heikkilä wrote: Hi Chris and others, yes I understand how to add more than one fields in the same append command. The problem is that I would like to add hidden (not visible for user) per ListItem. In my example which I send in my previous mail was only one label which is visible for user, but how to add variables inside the ListItem (row ID of DB and other information) which I can access from other functions like when deleting the item from screen and db at the same time. I tried to add inside ListItem this way: delegate: ListItem { id: contentListItem property int itemId: itemId Label { text: itemValue } } and in the append({itemValue: items.rows.item(i).itemValue, itemId, items.rows.item(i).itemId}) However, later when I'm calling: contentItem.isDefault returns undefined. I can't figure out what I'm doing wrong. I just want that I can delete the item when I'm pressing the ListItem and getting the dropdown where is selection Delete. I hope that someone could help me with this. Kind Regards, Jukka 2014-02-22 21:51 GMT+02:00 christopher.l...@thurweb.ch: Jukka It is very easy to add multiple roles / fields with the same append command. Here is an example culled from one of my apps: var db = DB.DataModel(); var rs = db.getContacts(area_id, template_id); for(var i = 0; i rs.rows.length; i++) { contactModel.append({name: rs.rows.item(i).name, phone: rs.rows.item(i).phone, primary_contact: rs.rows.item(i).primary_contact, contact_id: rs.rows.item(i).id}); } HTH Chris Zitat von Jukka Heikkilä jut...@gmail.com: I'm creating page which shows some information which is returned from local storage. I have successfully created the next code which will work: Page { root Component.onCompleted: { //External Function which return the items from Local Storage items = DB.listItems(); //Adding items to list view for(var i = 0; i items.rows.length; i++){ listItems.model.append({itemValue: items.rows.item(i).itemValue}) } } SilicaListView { id: listItems model: listModel VerticalScrollDecorator {} delegate: ListItem { id: contentListItem Label { text: itemValue } } } ListModel { id: listModel } } I would like to include some hidden values (e.g. DB row ID) for later usage, but is there possibilities to include extra data with same append command to the ListItem? I know the properties, but I haven't managed how to pass the variables in it. I would be grateful for your help. Kind Regards, Jukka @Juukks ___ SailfishOS.org Devel mailing list ___ SailfishOS.org Devel mailing list ___ SailfishOS.org Devel mailing list ___ SailfishOS.org Devel mailing list
Re: [SailfishDevel] Sharing in Sailfish
its in nemomobile transferengine plugins On 24.02.2014 01:49, Peter Pykäläinen wrote: Hi, how to use the sharing in a Sailfish application? I'm looking for similar what we had in Meego Harmattan. I guess it was called share-ui. Is there any way I can invoke the sharing functionality from my application? // Peter Pykäläinen ___ SailfishOS.org Devel mailing list ___ SailfishOS.org Devel mailing list
[SailfishDevel] Sailfish OS alarm scheduler - where do find source, headers, docs?
Hi All I seem to remember somebody telling that Sailfish/Nemo scheduler is the same timed as in Harmattan (or a little modified timed?). I fail to find links to the Jolla's timed sources-headers-docs, however. Could somebody, please, point me there? I'd use it for setting custom alarms via dbus. In Harmattan it was going via Maemo::Timed::Event, Maemo::Timed::Interface, etc. Best regards, Artem. -- Artem Marchenko http://agilesoftwaredevelopment.com http://twitter.com/AgileArtem ___ SailfishOS.org Devel mailing list
Re: [SailfishDevel] Sailfish OS alarm scheduler - where do find source, headers, docs?
Den 24. feb. 2014 00:20, skrev Artem Marchenko: Hi All I seem to remember somebody telling that Sailfish/Nemo scheduler is the same timed as in Harmattan (or a little modified timed?). I fail to find links to the Jolla's timed sources-headers-docs, however. Could somebody, please, point me there? I'd use it for setting custom alarms via dbus. In Harmattan it was going via Maemo::Timed::Event, Maemo::Timed::Interface, etc. https://github.com/nemomobile/timed/tree/master/src ___ SailfishOS.org Devel mailing list
Re: [SailfishDevel] Puzzling application rejection...
What is the desired channel to contact reviewer if developer do not understand/do not agree with reason behind rejection? I found #sailfishos IRC channel a good source of quick help for these issues. There are often people with direct contact with testers. developer-care email seems to be useless. Tried contacting them three times, got zero answers (or maybe a month is not enough for official enough answer :)), your exprience seems to be similar. Cheers, Artem. On Tue, Feb 18, 2014 at 6:44 PM, Zoltán Lutor zoltan.lu...@gmail.comwrote: Hi, What is the desired channel to contact reviewer if developer do not understand/do not agree with reason behind rejection? It is really uncomfortable there is no two way communication channel built into Harbour. Writing to developer-c...@jolla.com does not do the trick either... Br, Zoltan https://www.facebook.com/ForFictionMobile 2014-02-18 14:44 GMT+01:00 Developer Care developer-c...@jolla.com: Ahoy, This was a human error and we have called the rejection back from our Harbour QA system. Sorry for all the trouble. Br, Jolla crew -Original Message- From: devel-boun...@lists.sailfishos.org [mailto:devel- boun...@lists.sailfishos.org] On Behalf Of Andrey Kozhevnikov Sent: 18. helmikuuta 2014 15:34 To: devel@lists.sailfishos.org Subject: Re: [SailfishDevel] Puzzling application rejection... I see QA not testing applications, reading application name and description and pushing random buttons :D On 18.02.2014 19:28, Jonni Rainisto wrote: Maybe QA tester has misread RPM vs. RPN :-) From: devel-boun...@lists.sailfishos.org [devel-boun...@lists.sailfishos.org] on behalf of Luciano Montanaro [mikel...@gmail.com] Sent: Tuesday, February 18, 2014 3:23 PM To: devel@lists.sailfishos.org Subject: [SailfishDevel] Puzzling application rejection... Hi everybody, since I cannot find a way to ask for details in the harbour, I will try asking for help here: I submitted my updated Quanto Fa RPN calculator, and this the motivation of the rejection: We have to reject your application because it's using the PackageKit D-Bus API to install (sideload) RPM packages. See https://harbour.jolla.com/faq#7.2.0 and https://harbour.jolla.com/faq#6.7.0, we currently do not allow that. Please remove that functionality for the time being. It's also mentioned that very soon we will allow RPM sideloading, please keep an eye on the FAQs and the release notes of Sailfish OS upgrades, when you can enable that feature again. Now I am puzzled, because I am doing nothing of that sort. The app is almost entirely QML/JavaScript. The only problem I could imagine with it is that I use QtFeedback to make the keys click... but I am conditionally loading the QML object, and fallback gracefully if the functionality is unavailable. The validator did not complain. But if that is the problem, the above comment is very misleading. Best regards, Luciano -- Luciano Montanaro Anyone who is capable of getting themselves made President should on no account be allowed to do the job. -- Douglas Adams ___ SailfishOS.org Devel mailing list ___ SailfishOS.org Devel mailing list ___ SailfishOS.org Devel mailing list ___ SailfishOS.org Devel mailing list ___ SailfishOS.org Devel mailing list -- Artem Marchenko http://agilesoftwaredevelopment.com http://twitter.com/AgileArtem ___ SailfishOS.org Devel mailing list
[SailfishDevel] how to activate vibration actuator
I asked this question in the DL a while ago and didn't get a reply (did get some helpful pointers). I finally have the code to do this. Adapted from https://github.com/nemomobile/qt-mobility-haptics-ffmemlessChris Adams was also kind enough to say this #include QCoreApplication#include QTimer#include QDebug #include linux/input.h#include sys/types.h#include sys/stat.h#include fcntl.h #define BITS_PER_LONG (sizeof(long) * 8)#define OFF(x) ((x)%BITS_PER_LONG)#define BIT(x) (1ULOFF(x))#define LONG(x) ((x)/BITS_PER_LONG)#define test_bit(bit, array)((array[LONG(bit)] OFF(bit)) 1) #define ACTUATOR_SPIN_UP 2#define ACTUATOR_SPIN_DOWN 4#define ACTUATOR_RUMBLE_MIN 8191#define ACTUATOR_RUMBLE_MAX 32767#define ACTUATOR_MAGNITUDE_MAX 16000#define ACTUATOR_MAGNITUDE_MEAN 12000#define LONG_PRESS_DURATION 77#define LONG_PRESS_DELAY 4#define LONG_PRESS_MAX 16384#define LONG_PRESS_MIN 8191#define BUTTON_PRESS_DURATION 14#define BUTTON_PRESS_DELAY 4#define BUTTON_PRESS_MAX 24576#define BUTTON_PRESS_MIN 20478#define KEYPAD_PRESS_DURATION 6#define KEYPAD_PRESS_DELAY 4#define KEYPAD_PRESS_MAX 32767#define KEYPAD_PRESS_MIN 32767 int vibra_evdev_file_search(bool *supportsRumble, bool *supportsPeriodic){ int i = 0;int fp = 1;char device_file_name[24];unsigned long features[4]; /* fail safe stop at 256 devices */while (fp i 256) { sprintf(device_file_name, /dev/input/event%d, i);fp = open(device_file_name, O_RDWR);if (fp == -1) {qDebug() Unable to open input file;break;} if (ioctl(fp, EVIOCGBIT(EV_FF, sizeof(unsigned long) * 4), features) 0) {qDebug() Ioctl query failed;close(fp); i++;continue;} *supportsRumble = false;*supportsPeriodic = false;if (test_bit(FF_RUMBLE, features))*supportsRumble = true;if (test_bit(FF_PERIODIC, features))*supportsPeriodic = true; if (*supportsRumble || *supportsPeriodic)return fp; close(fp);i++;} return -1;} Q_DECL_EXPORT int main(int argc, char *argv[]){QCoreApplication a(argc, argv); struct ff_effect m_themeEffect, m_customHapticEffect; bool supportsRumble = false, supportsPeriodic = false;int m_vibraSpiDevice = -1; //Initialize effectsm_themeEffect.type = FF_RUMBLE;m_themeEffect.id = 1;m_themeEffect.u.rumble.strong_magnitude = KEYPAD_PRESS_MAX; m_themeEffect.u.rumble.weak_magnitude = KEYPAD_PRESS_MIN; m_themeEffect.replay.length = KEYPAD_PRESS_DURATION; m_themeEffect.replay.delay = KEYPAD_PRESS_DELAY; m_customHapticEffect.type = FF_RUMBLE;m_customHapticEffect.id = 2; m_customHapticEffect.u.rumble.strong_magnitude = ACTUATOR_RUMBLE_MAX; m_customHapticEffect.u.rumble.weak_magnitude = ACTUATOR_RUMBLE_MIN; m_customHapticEffect.replay.length = 100 + ACTUATOR_SPIN_UP; m_customHapticEffect.replay.delay = ACTUATOR_SPIN_DOWN; m_vibraSpiDevice = vibra_evdev_file_search(supportsRumble, supportsPeriodic); qDebug() Supports Rumble: supportsRumble;qDebug() Supports Periodic: supportsPeriodic; struct input_event playEvent;playEvent.type = EV_FF;playEvent.code = 1;playEvent.value = 1;{// Write effect and let the device rumbleint writeRetn = write(m_vibraSpiDevice, (const void*) playEvent, sizeof(playEvent));if (writeRetn == -1) {qDebug() Unable to write event to effect;}QEventLoop loop; QTimer::singleShot(1000, loop, SLOT(quit()));loop.exec();} close(m_vibraSpiDevice); return 0;} ___ SailfishOS.org Devel mailing list
Re: [SailfishDevel] how to get qml debug output to file
Hi This may be related: I haven noticed that using journalctl to view system logs on the device, QML and C++ debug output is reported differently. Below is an example extract: C++ debug is reported with the application name. QML debug is reported as lipstick Feb 23 13:39:39 localhost lipstick[971]: about to getPrimaryContact: area_id: 3, template_id: 1, any: 1 Feb 23 13:39:39 localhost landed26_QT5[27558]: [D] JSONStorage::openDatabase:20 - Document Path: /home/nemo/Documents/ Feb 23 13:39:39 localhost landed26_QT5[27558]: [D] JSONStorage::openDatabase:22 - App Name: landed26_QT5 Feb 23 13:39:39 localhost landed26_QT5[27558]: [D] JSONStorage::openDatabase:24 - Full path: /home/nemo/Documents/landed26_QT5/landeddb.json Feb 23 13:39:39 localhost lipstick[971]: about to pass DB to JSONPath Chris Zitat von Artem Marchenko artem.marche...@gmail.com: I found message handler working just fine (both for QML console and cpp qDebug() messages) is emulator builds, but not for when code is running on device. Go figure. Could it be so that on device exactly QML engine is somehow always used separately from your c++ execution context.. no it doesn't make sense. It would be nice to have some logs-to-file way working in production with both QML and c++ logs indeed. Cheers, Artem. On Wed, Feb 5, 2014 at 4:58 PM, Robin Burchell robin.burch...@jolla.comwrote: On 04 Feb 2014, at 22:37, Tero Siironen tero.siiro...@iki.fi wrote: Andrey Kozhevnikov coderusin...@gmail.com kirjoitti 4.2.2014 kello 23.14: This is messages handler i'm using in my projects: This doesn't seem to make a difference for me, the log file still contains only c++ side debug prints, qml prints (like console.log()) are not handled with messagehandler. Actually I found out that even if set in pro-file: DEFINES +=QT_NO_DEBUG_OUTPUT DEFINES +=QT_NO_WARNING_OUTPUT I still get qml debug prints printed out to console, so it seems that those prints from qml are not handled via normal debug handling at all? I would like to get no debug printing at all, or then just to file. DEFINES in qmake adds additional defines (-D) to the cflags used to build C++ affect code compiled with them. QtDeclarative was not compiled with these defines, so your adding them won't affect console.log (whose C++ implementation lives inside QtDeclarative). If you don't want debug prints, you need to install a message handler (you say you've tried this and it doesn't work, I can't answer why that would be the case, it should work, as it uses the same infrastructure). BR, Robin ___ SailfishOS.org Devel mailing list -- Artem Marchenko http://agilesoftwaredevelopment.com http://twitter.com/AgileArtem ___ SailfishOS.org Devel mailing list
Re: [SailfishDevel] how to get qml debug output to file
working fine for both cpp and qml output On 24.02.2014 05:37, Artem Marchenko wrote: I found message handler working just fine (both for QML console and cpp qDebug() messages) is emulator builds, but not for when code is running on device. Go figure. Could it be so that on device exactly QML engine is somehow always used separately from your c++ execution context.. no it doesn't make sense. It would be nice to have some logs-to-file way working in production with both QML and c++ logs indeed. Cheers, Artem. On Wed, Feb 5, 2014 at 4:58 PM, Robin Burchell robin.burch...@jolla.com mailto:robin.burch...@jolla.com wrote: On 04 Feb 2014, at 22:37, Tero Siironen tero.siiro...@iki.fi mailto:tero.siiro...@iki.fi wrote: Andrey Kozhevnikov coderusin...@gmail.com mailto:coderusin...@gmail.com kirjoitti 4.2.2014 kello 23.14: This is messages handler i'm using in my projects: This doesn't seem to make a difference for me, the log file still contains only c++ side debug prints, qml prints (like console.log()) are not handled with messagehandler. Actually I found out that even if set in pro-file: DEFINES +=QT_NO_DEBUG_OUTPUT DEFINES +=QT_NO_WARNING_OUTPUT I still get qml debug prints printed out to console, so it seems that those prints from qml are not handled via normal debug handling at all? I would like to get no debug printing at all, or then just to file. DEFINES in qmake adds additional defines (-D) to the cflags used to build C++ affect code compiled with them. QtDeclarative was not compiled with these defines, so your adding them won't affect console.log (whose C++ implementation lives inside QtDeclarative). If you don't want debug prints, you need to install a message handler (you say you've tried this and it doesn't work, I can't answer why that would be the case, it should work, as it uses the same infrastructure). BR, Robin ___ SailfishOS.org Devel mailing list -- Artem Marchenko http://agilesoftwaredevelopment.com http://twitter.com/AgileArtem ___ SailfishOS.org Devel mailing list ___ SailfishOS.org Devel mailing list
Re: [SailfishDevel] how to get qml debug output to file
Could it be related how and where the qml is loaded? I'm reading the qml files from resource file. I haven't tested this yet with simple application that uses the default sailfishapp structure, so that I could confirm this, just guessing. -- Tero 2014-02-24 9:00 GMT+02:00 Andrey Kozhevnikov coderusin...@gmail.com: working fine for both cpp and qml output On 24.02.2014 05:37, Artem Marchenko wrote: I found message handler working just fine (both for QML console and cpp qDebug() messages) is emulator builds, but not for when code is running on device. Go figure. Could it be so that on device exactly QML engine is somehow always used separately from your c++ execution context.. no it doesn't make sense. It would be nice to have some logs-to-file way working in production with both QML and c++ logs indeed. Cheers, Artem. On Wed, Feb 5, 2014 at 4:58 PM, Robin Burchell robin.burch...@jolla.com wrote: On 04 Feb 2014, at 22:37, Tero Siironen tero.siiro...@iki.fi wrote: Andrey Kozhevnikov coderusin...@gmail.com kirjoitti 4.2.2014 kello 23.14: This is messages handler i'm using in my projects: This doesn't seem to make a difference for me, the log file still contains only c++ side debug prints, qml prints (like console.log()) are not handled with messagehandler. Actually I found out that even if set in pro-file: DEFINES +=QT_NO_DEBUG_OUTPUT DEFINES +=QT_NO_WARNING_OUTPUT I still get qml debug prints printed out to console, so it seems that those prints from qml are not handled via normal debug handling at all? I would like to get no debug printing at all, or then just to file. DEFINES in qmake adds additional defines (-D) to the cflags used to build C++ affect code compiled with them. QtDeclarative was not compiled with these defines, so your adding them won't affect console.log (whose C++ implementation lives inside QtDeclarative). If you don't want debug prints, you need to install a message handler (you say you've tried this and it doesn't work, I can't answer why that would be the case, it should work, as it uses the same infrastructure). BR, Robin ___ SailfishOS.org Devel mailing list -- Artem Marchenko http://agilesoftwaredevelopment.com http://twitter.com/AgileArtem ___ SailfishOS.org Devel mailing list ___ SailfishOS.org Devel mailing list ___ SailfishOS.org Devel mailing list
[SailfishDevel] USSD request
How I can send USSD request using c++ or qml? ___ SailfishOS.org Devel mailing list