Re: [SailfishDevel] The missing HelloWorld. Wizard included
Hi, one thing I am trying to wrap my head around is the usage of a project for different devices/operating systems (why? because a living ecosystem needs to attract more developers and those coming from other platforms will come if they already use Qt or see a chance in switching to Qt but they sure don't want a maintenance nightmare). IMHO something like the rpm folder should go at least one directory level down, so one could differentiate between the brands or operating systems at top level. But so far any tests with rpm in another level broke apart. I am not sure if something is hardcoded here or if I simply don't know where to look? In such an attempt I would rename the folder src to sailfishos or something similar. What's your thoughts about that? BR. Sven On 30.11.2013, at 19:06, Artem Marchenko artem.marche...@gmail.com wrote: Hi All *Short version* Go check this out and contribute corrections - https://github.com/amarchen/helloworld-pro-sailfish *Long version* Just an app templates make my heart cry. Changing them to the proper structure is pain every time you go beyond just a helloworld. So I created a Helloworld Pro for Sailfish. Something that has minimal UI, but proper project structure and a couple of UI and non UI QML tests (includes src, test folders, multipackage .yaml/spec, proper 86x86 icon, etc) and passes harbour acceptance criteria (pending for now). And then I added a wizard script that renames everything to whatever project name you like to help you get started with MyCoolApp instead of helloworld-pro-sailfish Wizard is a bash script validated on Mac only, because that's the platform I use. Similar scripts for Windows and other corrections/improvements (e.g. adding simple app cover) are very welcome via pull requests. You will find the project at https://github.com/amarchen/helloworld-pro-sailfish If you want to do more with QML testing that I greatly encourage, this old presentation is still valid - www.slideshare.net/AgileArtem/test-drivingqml-12941898 Enjoy! Cheers, Artem. -- Artem Marchenko http://agilesoftwaredevelopment.com http://twitter.com/AgileArtem ___ SailfishOS.org Devel mailing list ___ SailfishOS.org Devel mailing list
Re: [SailfishDevel] The missing HelloWorld. Wizard included
I see the goal for the project in helping with the correct structure and practices from the very beginning. IMHO one minuscule C++ object integrated into QML can improve HelloWorld if: 1. It sits inside a properly structured C++ part of a project 2. Has at least one unit-test located in the proper places 3. Common test script executed both QML and C++ test 4. C++ part is easily throwable away for those who want just QML .. and probably it should really be just an individual C++ class, building en engine library is beyond the scope. Or is it not? A C++ test lib on the other hand has to be a stand alone project. I did C++ Qt and mix of C++/QML code in the past, but mostly I am a QML person. If somebody with more experience on C++ chips in, it would've been great. Focus is, again, on promoting the proper structure and practices, so it'd be cool to have input from those who are into these. Cheers, Artem. On Sun, Dec 1, 2013 at 2:23 PM, Sven Putze sailfish...@hardcodes.de wrote: Hi Artem and all, well, I don't have developed for Android yet and I don't intend to do so :-) Regarding this example, I was thinking if extending this one or create a bigger one as 2nd dive-in option. In such a bigger approach one could provide something like a Sailfish independent business model (the calculator) and maybe a state machine (maybe even MSM from boost, which would raise many question worth getting answered) that keeps track of the actions that can be done to the model. This way we could provide a C++ class that uses Q_PROPERTY but does know nothing about the model, just drives the state machine and have more or less stupid QML files. As an extra cherry on top a non blocking approach. IMHO this would be a great learning experience, not just for new SailfishOS developers. If this one or two example reach a more or less stable state, I could contribute the needed QtCreator Wizards, so that every developer can just start with a pre-organized code stub. BR. Sven On 01.12.2013, at 12:42, artem.marche...@gmail.com wrote: Hi Sven and all I was thinking similar myself and I am migrating too. Just from Symbian-Meego-desktop Qt, not from iOS. And src/test folder structure is standard in Qt world. It annoyed me a lot that I couldn't easily go to this structure from the Creator wizard. Plus just helloworld encourages no-tests development. That is not my dev style and I want to promote test-driven development and unit-testing. As for RPM folder, I was thinking where to put it and it was actually moving between src and top level. It ended up in the top level, because it is, well, a common thing for both src and test subprojects. Wikipedia project that uses same template has even fake subpackage also for grabbing files that annoy harbour check script (unused Qt Quick Test files from an external submodule). That said i'd very happy if you fork a project and make it better suitable for, say, Android people - the project is in public domain just for that. You can even resell the template if u manage :) Cheers, Artem. From: Putze Sven Sent: Sunday, December 1, 2013 11:55 To: Sailfish OS Developers Reply To: Sailfish OS Developers Subject: Re: [SailfishDevel] The missing HelloWorld. Wizard included Hi, one thing I am trying to wrap my head around is the usage of a project for different devices/operating systems (why? because a living ecosystem needs to attract more developers and those coming from other platforms will come if they already use Qt or see a chance in switching to Qt but they sure don't want a maintenance nightmare). IMHO something like the rpm folder should go at least one directory level down, so one could differentiate between the brands or operating systems at top level. But so far any tests with rpm in another level broke apart. I am not sure if something is hardcoded here or if I simply don't know where to look? In such an attempt I would rename the folder src to sailfishos or something similar. What's your thoughts about that? BR. Sven On 30.11.2013, at 19:06, Artem Marchenko artem.marche...@gmail.com wrote: Hi All *Short version* Go check this out and contribute corrections - https://github.com/amarchen/helloworld-pro-sailfish *Long version* Just an app templates make my heart cry. Changing them to the proper structure is pain every time you go beyond just a helloworld. So I created a Helloworld Pro for Sailfish. Something that has minimal UI, but proper project structure and a couple of UI and non UI QML tests (includes src, test folders, multipackage .yaml/spec, proper 86x86 icon, etc) and passes harbour acceptance criteria (pending for now). And then I added a wizard script that renames everything to whatever project name you like to help you get started with MyCoolApp instead of helloworld-pro-sailfish Wizard is a bash script validated on Mac only, because
Re: [SailfishDevel] The missing HelloWorld. Wizard included
Follow the readme, Sven :) You missed step 2. Open Projects tab, select i486 target, then Run tab. Choose Deploy as RPM Package for the deployment methods? /Artem. On Sat, Nov 30, 2013 at 8:46 PM, Putze Sven sailfish...@hardcodes.dewrote: Hi, great idea, I get an error if I try to run it on the emulator: bash: /opt/sdk/helloworld-pro-sailfish: No such file or directory Remote application finished with exit code 127. is shown in the Application output tab. BR. Sven On 30.11.2013, at 19:06, Artem Marchenko artem.marche...@gmail.com wrote: Hi All *Short version* Go check this out and contribute corrections - https://github.com/amarchen/helloworld-pro-sailfish *Long version* Just an app templates make my heart cry. Changing them to the proper structure is pain every time you go beyond just a helloworld. So I created a Helloworld Pro for Sailfish. Something that has minimal UI, but proper project structure and a couple of UI and non UI QML tests (includes src, test folders, multipackage .yaml/spec, proper 86x86 icon, etc) and passes harbour acceptance criteria (pending for now). And then I added a wizard script that renames everything to whatever project name you like to help you get started with MyCoolApp instead of helloworld-pro-sailfish Wizard is a bash script validated on Mac only, because that's the platform I use. Similar scripts for Windows and other corrections/improvements (e.g. adding simple app cover) are very welcome via pull requests. You will find the project at https://github.com/amarchen/helloworld-pro-sailfish If you want to do more with QML testing that I greatly encourage, this old presentation is still valid - www.slideshare.net/AgileArtem/test-drivingqml-12941898 Enjoy! Cheers, Artem. -- Artem Marchenko http://agilesoftwaredevelopment.com http://twitter.com/AgileArtem ___ SailfishOS.org Devel mailing list ___ SailfishOS.org Devel mailing list -- Artem Marchenko http://agilesoftwaredevelopment.com http://twitter.com/AgileArtem ___ SailfishOS.org Devel mailing list
Re: [SailfishDevel] The missing HelloWorld. Wizard included
486 was chosen, but where do I set Deploy as RPM Package for the deployment methods? BR. Sven On 30.11.2013, at 20:02, Artem Marchenko artem.marche...@gmail.com wrote: Deploy as RPM Package for the deployment methods ___ SailfishOS.org Devel mailing list
Re: [SailfishDevel] The missing HelloWorld. Wizard included
Oh boy, found it 8) BR. Sven On 30.11.2013, at 20:35, Sven Putze sailfish...@hardcodes.de wrote: 486 was chosen, but where do I set Deploy as RPM Package for the deployment methods? BR. Sven On 30.11.2013, at 20:02, Artem Marchenko artem.marche...@gmail.com wrote: Deploy as RPM Package for the deployment methods ___ SailfishOS.org Devel mailing list ___ SailfishOS.org Devel mailing list