5 ms·
This is cool, but to seriously use this one would have to have an idea of how extensible this is (is it easy to add new widgets? reskin existing widgets?) compa
by iam 15y ago
This is cool, but to seriously use this one would have to have an idea of how extensible this is (is it easy to add new widgets? reskin existing widgets?) compared to existing UI toolkits.
Also it's entirely unclear what makes Kivy specific to NUI? I am assuming that you ditched the old one widget/one focus model and that multiple widgets can have focus at the same time. But that's not really said anywhere, it just "looks" like it from the multiple scrollbars in the demo.
So really aside from the very cool demo there is no strong evidence to convince someone to switch to Kivy if they've worked with UI toolkits before.
Maybe talk about this over the tech demo on top of having cool music.
- txprog 15y agoIt's perfectly fitted to make your own widget or add new one. Almost all our widgets are subclassed from another one, and we believe that the simplicity to make your own widget speed up the testing process. We even think that if you don't have a perfect widget that fit to your need, it sometimes simpler to subclass and changes or add new behavior / graphics. Check: http://kivy.org/docs/guide/firstwidget.html#your-first-widget http://kivy.org/docs/guide/firstwidget.html#your-first-widge... for a complicated widget that tracing all the touches + trails What's make Kivy specific to NUI is we have an approach that combine every possible input into one event. That's unlikely because most of times, you have event for specific device (on_mouse_down/move.., on_object_down/move..., on_touch_... ) Here, we have uniq event dispatch, and extensible motion event that deliver all the data he can deliver (position, angle, acceleration, image...). It's called profile, and a motion event can deliver information according to one or more profile. For example, the mouse will fill properties of the "pos" profile, instead of Wacom tablet that will fill "pos", "pressure", or even TUIO with fiducials object that will fill "markerid" and "angle". Then you can do specific interaction or filter specific motion event according the profiles delivered in the current touch. All the widgets are made using that approach, make it possible multiple interactions at the same time. Not sure if it'm 100% clear, best is to read & try :)