On Wednesday, 29 May 2013 at 09:40:33 UTC, Flamaros wrote:
On Wednesday, 29 May 2013 at 08:49:24 UTC, Paulo Pinto wrote:
On Tuesday, 28 May 2013 at 21:25:05 UTC, Flamaros wrote:
Hi,
I and a friend are developing a GUI library, and now our
script engine is ready to start a prototype (but far to be
finished). We think to try to create a GUI editor based on
our library.
In this way, we'll see which features are need.
My concern is about how the editor have to works, we see two
different ways to do it :
1) Classic editor external to the user applications
a) Good :
- Lightweight (easy to deploy and test)
- No need to modify application code
- Stable due to isolation of application
- Real-time edition but limited on one view (bad to preview
menus transitions)
b) Bad :
- Limited, plugins needed to extend editor components and
his knowledge of application (can't predict size of unknown
application specific items)
2) Integrated editor (launch with the user application in a
second Window)
a) Good :
- Preview is the final result with real data
- All application components accessible to the editor
without complex plugin system (in this way all editors
components will be well placed in the preview)
- Full real-time edition (can preview menus transitions,...)
- User can customize the editor
b) Bad :
- Intrusive in the application code
- Force the user to port application on a desktop OS
(Linux, Mac or Windows), not friendly if he target only
embedded devices (can be bypassed with a remote system)
- Less stable editor?
The second solution is commonly used in the video game
industry, but is the best choice for a larger usage?
What do you think about?
I always hold Delphi and C++ Builder as examples of a what a
good UI editor should offer.
Currently Blend + VS are also another good examples for proper
tooling for making good UIs.
--
Paulo
It seems Blend can directly run on top of the application. Are
you using this feature?
What you mean by "run on top" ?
I use it to have a look if everything looks like and for some
stuff I need to execute the application but it requires runtime
information.
Blend can work with VS solutions and also invoke MSBuild, but if
you are doing custom controls and stuff it is better to do
certain parts from VS side, hence using both.
--
Paulo