>From: ext Girish Ramakrishnan [gir...@forwardbias.in] >Sent: Tuesday, April 24, 2012 12:50 PM >To: Donald Carr >Cc: Alpert Alan (Nokia-MP/Brisbane); development@qt-project.org >Subject: Re: [Development] The place of QML >>> I do think we should evaluate exposing the QML implementations to C++ for >>> 5.1. >> >> I think a better question would be; What existing evaluations exist? >> And outside of the people seeking a contractual C++ API to scenegraph, >> what evident extensibility/functionality issues exist in QML today? >> > >My point above is an extensibility issue with our current QML >offering. You cannot extend any existing QML element in C++. You have >to start from scratch. We basically mark all existing QML items as >'final' for C++ use.
I get your point, but exposing the existing C++ APIs is not the answer. I recently tried to write my own QML code editor, which basically meant re-implementing TextEdit. It was not fun. That time I had the option to use private headers if I wanted too, but the current QQuickTextEdit API was just not helpful. I compared it to QTextEdit, which could be easily extended to do what I wanted (all I wanted was syntax highlighting), and the difference was some specific API which QTextEdit has and QQuickTextEdit doesn't. The point being, that the extensibility issue isn't really C++ vs QML. It's the subtly different question of extending the APIs (and thus the maintenance burden and implementation restrictions). Back to the QTextEdit example: I put a concept up on codereview to share with someone, https://codereview.qt-project.org/#change,23617 , which added the necessary API - but to QML. This allowed me to extend TextEdit in QML just fine, and I could have done it in C++ if I was so inclined. This was purely a question of what API was exposed. For those interested in the implications of how that patch would be used, in my case I created a custom QSyntaxHighlighter in C++ and then exposed it to QML so I could do syntaxHighlighter:MySyntaxHighlighter{}; . Doing something similar with the QTextDocument might be the solution for rich text editing in QML (but I don't think so - that's a separate discussion anyways ;) ). -- Alan Alpert _______________________________________________ Development mailing list Development@qt-project.org http://lists.qt-project.org/mailman/listinfo/development