0
Qt Maemo-Hildon port




 - Kate Alhola
 - Antonio Aloisio




             Maemo Summit 2008, Berlin
Kate Alhola
               Maemo Chief Engineer in Forum Nokia
           



               Long term Open Source develo...
Background
    Qt is a cross-platform application framework



        It includes:
    


             An intuitive cla...
Goals of this presentation

    By the end we hope you will:



        Have a better understanding of what this port is
...
Agenda

     1.Brief Qt in maemo overview
     2.Integration of Qt in Hildon/Maemo
     3.Current status & next steps
    ...
Maemo layers
      Original maemo was GTK+
  

      based
      X11 makes easy to use
  

      other GUI toolkits
    ...
Maemo roadmap
Aim
    Aim of our project is to integrate Qt in Hildon



        Hildon as a new platform branch from X11/Linux for
   ...
Agenda

     1.Brief Qt in maemo overview
     2.Integration of Qt in Hildon/Maemo
     3.Current status & next steps
    ...
Integration? Why?

    Qt is not integrated in Hildon

Porting...

    Style = QGTKStyle + Hildon Changes

Porting..

    Input Method

Porting.

    Menus

Porting

    Other stuff like:



        Buttons support:
    


              Menu button
          


              ...
Packaging and Optimizations
    Packages based on official Debian packages.



        Maemo != Debian                   ...
Agenda

     1.Brief Qt in maemo overview
     2.Integration of Qt in Hildon/Maemo
     3.Current status & next steps
    ...
Currently

    Qt 4 Maemo is updated to the last upstream Qt


    version (4.4.1)
    Basic functions have been implemen...
Next steps...
    Moving packages from extras-devel to extras



    Writing documentation ( wiki.maemo.org )



       ...
Next steps...

    Finishing the porting:



        Style
    


        Input Method
    


        ...
    



    ...
Agenda

     1.Brief Qt in maemo overview
     2.Integration of Qt in Hildon/Maemo
     3.Current status & next steps
    ...
Porting an application....

    What you need is:



        A working scratchbox environment
    


        Installing ...
Porting an application...
      Remember that:
  


          The screen is small
      


          User is using finge...
Porting an application..
    and...



        Don't use absolute layout; in maemo style, fonts,
    

        buttons e...
Porting an application.

    Not less important is:



        Packaging your application
    


             It's quite...
Agenda

     1.Brief Qt in maemo overview
     2.Integration of Qt in Hildon/Maemo
     3.Current status & next steps
    ...
Community support

    We offer/receive community support via



        Public forum
    


        Qt-Devel Mailing Li...
Forum

    It is the place where:



        You can find answers at your questions
    


        You don't need a maem...
Mailing list

    It Is the place where:



        we discuss about the code, documentation ...
    


        you can ...
How to contribute...

    Writing documentation, tutorials...



    Helping us to answer to the forum questions



    ...
Conclusion
    Qt is powerfull and it has an intuitive API



    Qt applications run everywhere...



    Porting Qt ap...
Thank you!
Happy hacking with Qt




   http://qt4.garage.maemo.org
Upcoming SlideShare
Loading in...5
×

Qt Maemo-Hildon port

1,901

Published on

1.Brief Qt in maemo overview
2.Integration of Qt in Hildon/Maemo
3.Current status & next steps
4.Porting a Qt application
5.Maemo Qt community

Published in: Technology
0 Comments
3 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
1,901
On Slideshare
0
From Embeds
0
Number of Embeds
3
Actions
Shares
0
Downloads
60
Comments
0
Likes
3
Embeds 0
No embeds

No notes for slide

Transcript of "Qt Maemo-Hildon port"

  1. 1. Qt Maemo-Hildon port - Kate Alhola - Antonio Aloisio Maemo Summit 2008, Berlin
  2. 2. Kate Alhola Maemo Chief Engineer in Forum Nokia  Long term Open Source developer, first  Speakers contributions 8-bit microprocessor in early 80's Linux kernel driver from early 1.x kernels  Katix RTOS with IP stack for PC, 68K and PPC  Before Nokia, long career embedded Linux and RTOS related  development in small subcontractor companies Numerous embedded HW designs with 6809, 68xxx and PPC  Antonio Aloisio (GnuTon) Maemo Qt developer in Forum Nokia  KDE4 KBlogger main developer  He has contributed to the developing of KDEPim/KBlog 
  3. 3. Background Qt is a cross-platform application framework  It includes:  An intuitive class library  Integrated development tools (Designer,Linguist..)  Desktop & Embedded development support  Maemo is like any Linux distro,  It is:  based on same standard open source components and  debian packaging mobile optimized 
  4. 4. Goals of this presentation By the end we hope you will:  Have a better understanding of what this port is  Understand how to port a Qt application in Maemo  Understand how to contriubute to this project 
  5. 5. Agenda 1.Brief Qt in maemo overview 2.Integration of Qt in Hildon/Maemo 3.Current status & next steps 4.Porting a Qt application 5.Maemo Qt community
  6. 6. Maemo layers Original maemo was GTK+  based X11 makes easy to use  other GUI toolkits For maemo up to Diablo  release, Qt is an additional component
  7. 7. Maemo roadmap
  8. 8. Aim Aim of our project is to integrate Qt in Hildon  Hildon as a new platform branch from X11/Linux for  Qt No specific platform code in the application  Porting == recompile. 
  9. 9. Agenda 1.Brief Qt in maemo overview 2.Integration of Qt in Hildon/Maemo 3.Current status & next steps 4.Porting a Qt application 5.Maemo Qt community
  10. 10. Integration? Why? Qt is not integrated in Hildon 
  11. 11. Porting... Style = QGTKStyle + Hildon Changes 
  12. 12. Porting.. Input Method 
  13. 13. Porting. Menus 
  14. 14. Porting Other stuff like:  Buttons support:  Menu button  Fullscreen button  Adapting some widgets to the device screen  eg. QDialog, QMenu position  ... 
  15. 15. Packaging and Optimizations Packages based on official Debian packages.  Maemo != Debian we had to do a lot of Changes  Update Dependencies  Add Phonon support  Remove Qt-OpenGL support.  It will be available when OpenGL is supported by Maemo  Compile out unnecessary stuff like  Some SQL Modules (Eg: Postgress, Interbase..)  Print support  ...  Add ARM VFP technology support 
  16. 16. Agenda 1.Brief Qt in maemo overview 2.Integration of Qt in Hildon/Maemo 3.Current status & next steps 4.Porting a Qt application 5.Maemo Qt community
  17. 17. Currently Qt 4 Maemo is updated to the last upstream Qt  version (4.4.1) Basic functions have been implemented  Packages are available in diablo extra-devel  Working focused on:  Cleaning  Bug fixing 
  18. 18. Next steps... Moving packages from extras-devel to extras  Writing documentation ( wiki.maemo.org )  Limitations (Eg. No close button for dialog windows)  API changes (Very few, but sometime necessary)  Tutorials about coding and packaging  ... all the documentation that you need will be there!
  19. 19. Next steps... Finishing the porting:  Style  Input Method  ...  Using FileDialogs like hildon with Virtual File  System Support ... (KIO)
  20. 20. Agenda 1.Brief Qt in maemo overview 2.Integration of Qt in Hildon/Maemo 3.Current status & next steps 4.Porting a Qt application 5.Maemo Qt community
  21. 21. Porting an application.... What you need is:  A working scratchbox environment  Installing the libqt4-dev package  Installing the libqt4-*-dbg packages to debug your  applications
  22. 22. Porting an application... Remember that:  The screen is small  User is using finger or stylus, try to allow using  finger always when possible When on screen virtual keyboard is displayed,  arrange your dialogs and inputs so that they will fit in same screen.
  23. 23. Porting an application.. and...  Don't use absolute layout; in maemo style, fonts,  buttons etc are much larger than in desktop styles Don't use F6, F4 and ESC keys for your application  shortcuts. Add a Cancel button to close your Dialogs  Not full ported Qt app can use ESC to close Dialogs  If possible, avoid to wrap a group of widgets in a  QScrollArea in order to fit them in your dialogs Avoid to use Qcleanlook style 
  24. 24. Porting an application. Not less important is:  Packaging your application  It's quite simple, it's explained step by step at docs page  of Qt4 at garage website. Contacting us everytime that you have/find a  problem
  25. 25. Agenda 1.Brief Qt in maemo overview 2.Integration of Qt in Hildon/Maemo 3.Current status & next steps 4.Porting a Qt application 5.Maemo Qt community
  26. 26. Community support We offer/receive community support via  Public forum  Qt-Devel Mailing List  Bug Tracker 
  27. 27. Forum It is the place where:  You can find answers at your questions  You don't need a maemo.org account to post there  It's NOT the place where tracking bugs.
  28. 28. Mailing list It Is the place where:  we discuss about the code, documentation ...  you can talk to us about Maemo-Hildon Qt 
  29. 29. How to contribute... Writing documentation, tutorials...  Helping us to answer to the forum questions  Porting Qt applications in Maemo  Finding and reporting bugs  Sending us patches 
  30. 30. Conclusion Qt is powerfull and it has an intuitive API  Qt applications run everywhere...  Porting Qt application in Maemo requires very  few efforts... Packaging Qt application is quite easy!  Usually you can use a Debian package.  Lot of Qt applications in qt-apps.org are waiting  to be ported in Maemo by you!!!
  31. 31. Thank you! Happy hacking with Qt http://qt4.garage.maemo.org
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.

×