User Interface / UI Overview
In This Topic
    UI Overview
    In This Topic

    Nevron Open Vision (NOV) implements a complete and feature rich set of User Interface elements (widgets) that aims to completely eliminate the need to use any platform specific controls, that would ultimately tie your Presentation Layer to a specific platform/runtime, look-and-feel and API. The UI toolbox that NOV implements is built on top of the NOV DOM (see DOM Overview for more info), which ensures that it implements the latest standards and technologies that the W3C (World Wide Web Consortium) has to offer, and extends them with technologies outside of the scope of the W3C standards. This makes the NOV UI the only GUI toolkit, that is actually based on a Web 2.0 technology, which does not require a browser and runs inside multiple .NET based runtimes and presentation layers.

    The integration of NOV UI in a specific presentation layer/runtime typically starts by creating one or more NChildWindow(s) that are hosted somewhere in a platform specific host (see Hosting NOV in your Application for more info). From there on however NOV content is not restricted to within the child window(s), from which it originates - it can display top-level windows that are native for the integration platform (Windows for example), thus achieving UI goals that are outside the possibilities of web based interfaces. Whenever a windowing system is missing, the NOV hosts actually emulate such (Silverlight for example) to achieve the same functional results. That is why we can safely say that Nevron Windows are now Everywhere.

    Functionally the NOV UI is divided into Windows and Widgets. NOV Windows serve as integration points between NOV content and the native presentation layer/operating system windows. NOV abstracts its content from the actual presentation layer in which it operates by using a black-box model that relies on the following abstractions:

    Because NOV handles these important UI abstractions, widgets are implemented as windowless objects, that run from the same codebase everywhere. This allows for the NOV UI to evolve in features and new widgets regardless of the presentation layer/OS in which it will be integrated, and simultaneously for all supported integration platforms. This allows for a long project lifecycle not connected with the lifecycle of the specific presentation layers in which it integrates. Whether WinForm, WPF and/or Silverlight is dead/evolves or is replaced with another API is of no concern to NOV UI - it has a lifecycle of its own! That is why it is the only viable way to create feature rich LOB applications and components with .NET that would run everywhere for a longer period of time.

    The widgets toolbox can be logically divided into the following categories:

    Miscellaneous UI features that apply to all types of widgets include:

    To understand where and how the most essential features of the NOV DOM fit in the NOV UI - take a look at the UI Elements Hierarchy topic.

    All examples related to the NOV UI assume that you are using the Nevron.Nov.UI namespace and that you have referenced the Nevron.Nov.Presentation.XXX.dll for the specific runtime that you target.