Creating Slick User Interfaces With Qt

13,174 views

Published on

Describes four different ways of creating GUIs in Qt and what their pros and cons are. The different ways are: QWidget, QGraphicsView, Qt Quick and QtWebKit using HTML5.

Thanks to Marius, Ariya, Alessandro and Henrik for helping out with it :)

First given at SEE2010 in Amsterdam (http://www.see2010.org/)

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

No Downloads
Views
Total views
13,174
On SlideShare
0
From Embeds
0
Number of Embeds
8
Actions
Shares
0
Downloads
158
Comments
0
Likes
7
Embeds 0
No embeds

No notes for slide

Creating Slick User Interfaces With Qt

  1. 1. 1 Creating Slick User Interfaces With Qt Espen Riskedal / Cutehacks SEE 2010
  2. 2. 2 Purpose of this talk Explain which Qt technologies to use now, and what to choose in the future.
  3. 3. 3 Espen Riskedal Masters from University of Bergen 6 years in Trolltech 2 years in NOKIA Co-founded Cutehacks AS
  4. 4. 4 Mobile apps Symbian MeeGo Android
  5. 5. 5 Agenda A quick Qt primer The good and the bad QWidget QGraphicsView Qt Quick QtWebKit (HTML5) Conclusion
  6. 6. 6 A quick Qt primer «Which class was that again?»
  7. 7. QWidget QWebView QDeclarativeView QGraphicsView QFrame QAbstractScrollArea QPaintDeviceQObject
  8. 8. 8 QWidget QGraphicsView Qt Quick QtWebKit
  9. 9. The Good and the Bad «What do I gain and what do I lose?»
  10. 10. QWidget
  11. 11. 11 QWidget Low-level Painting Alien widgets Scrolling Mature High-level Touch interface Resolution dep. Style API Transformations Good Bad
  12. 12. Yr.no by cutehacks.com Flights by cutehacks.com
  13. 13. Programming tip #1 Hire a designer :)
  14. 14. Programming tip #2 qDrawBorderPixmap (...)
  15. 15. Programming tip #3 QWidget::scroll(...) Qt::WA_OpaquePaintEvent
  16. 16. QGraphicsView
  17. 17. QGraphicsView Resolution indep. Transformations Lightweight items Layers Anchor layouts Components Performance Style API Good Bad
  18. 18. Orange Wednesdays by orange.co.uk Images from http://blog.symbian.org/2010/07/30/building-orange-wednesdays-in-qt/
  19. 19. Programming tip #4 QGraphicsItem::setCacheMode() QGraphicsItem::DeviceCoordinateCache
  20. 20. Qt Quick
  21. 21. 21 Qt Quick Property bindings Rapid prototyping Resolution indep. No compile Anchor layouts Components Memory Style API Good Bad
  22. 22. Work in progress by cutehacks.com Flickr mobile by qt.nokia.com
  23. 23. Programming tip #5 don't mix too many layers of transparency don't build too deep hierarchies don't put javascript in the critical path
  24. 24. QtWebkit + HTML5
  25. 25. 25 QtWebKit + HTML5 Standard Cross-platform Designer friendly Corporations Memory CPU Immature Good Bad
  26. 26. Sencha Touch by sencha.com
  27. 27. Programming tip #6 QGraphicsWebView
  28. 28. Conclusion «It depends :-)»
  29. 29. 29 Conclusion Right now Custom widgets on top of QWidget
  30. 30. 30 Conclusion Near future (Q1 2011) Qt Quick
  31. 31. 31 Conclusion A year from now (Q3 2011) HTML5? Qt Quick with Qt components?
  32. 32. 32 Multi platform
  33. 33. 33 THANK YOU! Questions?
  34. 34. 34 http://cutehacks.com @snowpong

×