On Wednesday, December 12, 2012 09:44:10 André Somers wrote: > Op 11-12-2012 21:59, Alan Alpert schreef: > > On Tue, Dec 11, 2012 at 10:49 AM, Shawn Rutledge > > > > <[email protected]> wrote: > >> On Tue, Dec 11, 2012 at 09:48:22AM -0800, Alan Alpert wrote: > >>> Why can't this be QML-only? For the set of controls exposed in > >>> C++-only we have a C++-only Action API. When we add a set of controls > >>> exposed in QML-only we can have a QML-only Action API. We don't > >> > >> Because it seems likely that the business logic of an application would > >> be written in C++, so why not export the actions that the logic can > >> support at the same time? > > > > The way I see it, the actions are UI logic, not business logic, and > > belong on the QML side of the divide (although they are right on the > > edge). > > I disagree here. The core of the action - the abstraction of the action > method itself and its availability in the current state - is business > logic IMO. The same goes for any value the action may have: checked, or > perhaps some other value. The action logically bundles state (the > availability of an action) with the action itself.
Yes. I agree. The state-management parts of kontact actions is hundereds of lines of (shared) code. > > The decoration around it - the user visible strings, icons and whatnot - > is indeed UI logic. Yes. That stuff is also not UI-specific - not tied to either QML or widgets. > That's why I think that perhaps we conceptually need > something like a CoreAction and a UiAction. The UiAction would > 'decorate' a CoreAction with the stuff that is needed to represent it in > a UI. The implementation of the UiAction part would be different for QML > and Widgets, I think. > > Actions are a very powerful piece of glue between business and UI logic > if used this way. > Thanks, -- Stephen Kelly <[email protected]> | Software Engineer KDAB (Deutschland) GmbH & Co.KG, a KDAB Group Company www.kdab.com || Germany +49-30-521325470 || Sweden (HQ) +46-563-540090 KDAB - Qt Experts - Platform-Independent Software Solutions
signature.asc
Description: This is a digitally signed message part.
_______________________________________________ Development mailing list [email protected] http://lists.qt-project.org/mailman/listinfo/development
