Wt 3.1.7a


 Sponsored links


 Sponsored links
License:
GPL
Category:
Development
Publisher:
EMWEB-bvba
Size:
14.7 MB
Last Updated:
2013-10-18
Operating System:
Mac OS X
Price:
FREE
Download
Publisher's description - Wt 3.1.7a
 
 Sponsored links

Wt (pronounced `witty`) is not a `framework`, which enforces a way of programming, but a library.

The API is widget-centric, and inspired by existing C++ Graphical User Interface (GUI) APIs. To the developer, Wt offers complete abstraction of any web-specific implementation details, including graphics support and event handling.

Typical use scenarios:
· Web-based GUIs for web-enabled embedded systems benefit from the low footprint of a C++ web application server.
· Web-based GUIs that require integration with (existing) C++ libraries, for example for scientific or engineering applications.
· Creating a port of existing C++ desktop applications to the web.

Some benefits of using Wt:
· Develop web applications like you develop C++ desktop applications.
· Provides plain widgets, which work regardless of JavaScript availability (but benefit from JavaScript availability), and Wt::Ext widgets which are more polished, or provide advanced functionality, but require JavaScript and a modern browser. As far as possible, these widgets share the same API.
· Use the built-in httpd for easy development and deployment, or use the FastCGI connector to deploy as a FastCGI application.
· A single specification for both client- and server-side validation and event handling (when using stateless slot implementations)
· Generates standards compliant HTML or XHTML code.
· Portable, anti-aliased graphics (uses inline VML, inline SVG or the HTML 5 canvas).
· No XSS security risks since Wt has complete control over the presentation layer and proactively filters out active tags and attributes. No exposure of business logic, which stays at the server.
· Ultra-fast load time and low bandwidth usage, which are affected only by screen complexity, not application size.

Here are some key features of "Wt":

Core library:
· Supports all major browsers (Firefox/Gecko, Internet Explorer, Safari, Konqueror, and Opera) but also browsers that do not support JavaScript (tested with Links and Lynx).
· Develop and deploy on Unix/GNU Linux (gcc) or Microsoft Windows (Visual Studio).
· Equal behavior with or without support for JavaScript or AJAX, as far as possible.
· Integrated Unicode support (UTF8/UTF16).
· Incremental rendering of changes to the web page (when AJAX is available).
· Two-phased rendering of changes to the web page, with first visible, and in the background invisible changes (when AJAX is available). When AJAX is not available, only visible contents is rendered.
· Configurable session tracking options that include URL rewriting and cookies.
· Supports timed events and built-in support for server-initiated updates ("server push")
· Support for browser history navigation (back/forward buttons and bookmarks) through a flexible internal path API.
· High performance, allowing deployment on low-end embedded devices, or energy-, space- and budget-friendly deployment of Internet or extranet web sites.
· Completely based on async I/O: sessions are not tied to threads, and neither do delayed responses (e.g. for server push) block threads. Instead, threads are needed only to improve concurrent request handling or for reentrant event loops.

Event handling:
· Listen for keyboard, mouse and focus events, and get event details (such as mouse position, modifier buttons, or keyboard key).
· Uses a template-based signal/slot system for event handling.
· By default, server-side event handling, in C++.
· Dynamic C++-to-JavaScript translation, by specifying stateless slot implementations. A single C++ slot implementation provides both client-side and server-side event handling: visual changes at client-side and application state at server side.
· Possibility to hook in custom JavaScript (e.g. for client-side only event handling), and emit C++ signals from this custom JavaScript.
· Easy Drag&Drop API.

Native painting system:
· Unified painting API which uses the browsers native (vector) graphics support (inline VML, inline SVG, or HTML 5 canvas).
· Supports arbitrary painter paths, clipping, text, images, transformations, and stroke and fill styling.
· Use the painting API in conjunction with a WPaintedWidget, or directly using the SVGImage paint device.

GUI components:
· Basic widgets (buttons, HTML anchors, checkboxes and radio buttons, combo boxes, containers, file upload control, images, labels, line edits, buttons, etc..
· Form widgets have built-in support for client-side and server-side validation using WValidator classes.
· Composite widgets (that are built on top of basic widgets, and use only the Wt public API): calendars, sliders, trees and tree tables, menus, in-place edits, virtual images, panels.
· Modal windows (dialog and message boxes)
· Built-in internationalization using messages resource bundles.
· CSS either inline, or using internal or external style sheets.
· Ext Wt widgets that internally use Ext JS 2.0.1 JavaScript widgets. A large subset of the ExtJS widgets have been wrapped as C++ widgets.
· Flexible charting widgets (cartesian charts and pie charts) based on the native painting API, and Wt`s MVC infrastructure.

Built-in security:
· Kernel-level memory protection protects against privacy issues arising from programming bugs, since sessions can be completely isolated from each other (in dedicated-process mode).
· Supports encryption and server authentication using Secure Sockets Layer (SSL) or Transport Layer Security (TLS) through HTTPS.
· Enables continuous use of HTTPS through low bandwidth requirements (fine-grained AJAX).
· Built-in Cross-Site Scripting (XSS) prevention. Rendered text is always filtered against potentially malicious code, making XSS attacks against Wt applications (close to) impossible.
· Not vulnerable to Cross-site Request Forgery (CSRF) because cookies for session tracking are optional, and even when used, they are never solely relied on for requests that trigger event handling code.

Deployment:
FastCGI:
· Integrates with most common web servers (apache, lighttpd).
· Different session-to-process mapping strategies.
· Hot deployment: new sessions use the new application version while older sessions may continue with their application version.
· Simultaneous handling of requests within and in between sessions (using multi-threading)
· Debug using gdb or valgrind.
· Available only for UNIX platforms.

Built-in httpd:
· Simple, high-performance web application server (multi-threaded, asynchronous I/O) based on the C++ asio library.
· Supports both HTTP and HTTPS using the OpenSSL library.
· Supports response chunking and compression
· Single process (convenient for development and debugging).
· Available for both UNIX and Win32 platforms.
· Supports deployment behind a ProxyPass`ing (and if needed, load-balancing) web server.

What`s New in This Release: [ read full changelog ]

· now converts the incoming type to the database
· field type (if possible), and also uses a transaction to persist the
· result (if not nested in another transaction)


 

Also See ...
ojAlgo 30.1

ojAlgo 30.1
ChessShell Pre-Alpha

ChessShell Pre-Alpha
Amethyst 2.0.0 Alpha 2.1

Amethyst 2.0.0 Alpha 2.1
Nsound 0.8.1

Nsound 0.8.1
Chilkat Perl Bounce Library 9.2.0

Chilkat Perl Bounce Library 9.2.0



More
Final SRT

Final SRT
Ghostlab

Ghostlab
Rest Areas

Rest Areas
Countly

Countly
Video Background

Video Background



Mac App
Final SRT

Final SRT
CSR Racing

CSR Racing
Glucose Tracker

Glucose Tracker
Adobe Photoshop SDK CS5

Adobe Photoshop SDK CS5
Source Viewer Tab 0.3.2010070401

Source Viewer Tab 0.3.2010070401