I think this is an interesting idea. I want to test my understanding.
An important provision is the API and callbacks of layer 1, since code above layer 1 will rely on it, yes? Then anyone could build a layer 1 implementation and substitute it for whatever the default/reference is. (I keep thinking that the default should not depend on Qt. I will not worry about that for now, so long as someone could build a branch that uses a different layer 1 that is fully ALv2 licensed.) A test of the design would need to be demonstration that non-Qt layer 1 are not too difficult and that they need not be disadvantaged relative to use of a Qt-based layer 1. I am unclear how layer 2 and above work independently, because of the stated relationship to an XML UI design file. I also don't quite see how a NULL version is testable as an editor, so that remains to be figured out as well. Is this in line with the intention for this framework? - Dennis -----Original Message----- From: jan i [mailto:j...@apache.org] Sent: Wednesday, July 29, 2015 05:45 To: dev@corinthia.incubator.apache.org Subject: Proposal editor development framework. [ ... ] I designed a framework (presented below), and just to be sureI checked it with another project (albeit java) who have similar problems. Framework (layers are bottom up) - Layer 0, Actual graphic implementation Operating system libs, Qt runtime, webkit etc. These are and cannot be part of our source release - Layer 1, glue kit and UI design This layer has 2 main functions: a) It reads a UI design specification (which happens to have Qt XML format), and creates the connection to layer 0 b) It contains an API and callbacks to the higher layers. Remember we only use a very limited part of a full scale UI, which reduces the size of this layer dramatically. This is the real critical point, if we cannot do a major reduction this framework will not work. We implement an example of this layer, and by accident we use Qt. Other developers might (and most importantly for license reasons "can do it") implement e.g. webkit. For test purposes we also implement a NULL version of this layer, thereby the editor can link without and third party source. We supply this source as EXAMPLE source, clearly marked as such. [ ... ]