javascript Tag

JSONForms is an AngularJS-based framework to simplify the creation of forms for data entry and edit in web applications. It allows to declaratively define the content and layout of a form and to embed the form into your HTML with one simple <jsonforms> tag. If you would like to know more about JSONForms here is an introduction. Also the JSONForms homepage is a good starting...

Read More

Over two years ago, we started working on EMF Forms to ease the development of form-based UIs. During this time, it has become one of the most active and well-received projects in the Eclipse community. Instead of manually coding UIs, the framework allows to describe forms via a simple view model, which is interpreted by a rendering components. This approach worked particularly well, besides saving a...

Read More

Writing mobile applications is not only about the UI. Apps also need content. Often times they fetch dynamic content over the network. This post introduces the basic mechanism for network access in Tabris.js: XMLHttpRequest. The post also explains how higher level networking API can be used. Tabris.js supports a subset of the W3C browser APIs. Part of that API is the XMLHttpRequest. You can use it...

Read More

Warning! This article is outdated and might not represent the current state of Tabris.js. One goal most app developers pursue is to create a sexy and silky-smooth UI with an interface that adapts to different screen sizes and device types. This goal has mostly been reserved for native developers on mobile platforms. With Tabris.js, you get to use all-native widgets but with much simpler code and without...

Read More

Most Java developers stick up their nose if it comes to JavaScript. Today I would like to present you a way of dealing with JavaScript that is less alienating than learning prototype based inheritance and all the caveats about this. How does a JavaScript with class based inheritance, types, generics and modules sound? Let me introduce TypeScript to you. TypeScript syntax is a superset of Ecmascript 5...

Read More

Maybe you're familiar with Ralf Sternberg's d3 widget for RAP (it's part of the RAP Examples Demo). Like the name implies, it's a charting widget based on the d3 library, which uses SVG to render its elements. I was interested in doing the same with the other popular method used to draw freely in a modern browser, the HTML5 canvas element. The most promising project I...

Read More

[caption id="attachment_19508" align="alignright" width="160"] Copyright (c) Pivotal Labs[/caption]I recently started using Jasmine to write my JavaScript tests. I really like it - it made writing tests actually kind of fun. I especially love that you can write tests with mocks in a similar manner as you would using Mockito in the Java world. A mock is basically a lightweight object that imitates the API and (to...

Read More

Ever since the release of Internet Explorer 9 Microsoft has put a very noticeable effort into catching up to other browser (specifically Chrome and Firefox) in terms of compatibility and performance. The results haven't been half-bad, especially considering they added HTML5, CSS3 and SVG support seemingly overnight. Of course, MS easily has the resources to do such a thing - and then pay for a...

Read More

The first milestone of RAP 2.2 has been published last Friday. It's main attraction is the RWT Scripting feature which was formerly known as the incubator "ClientScripting" project. If you are currently using ClientScripting and wish to upgrade to RAP 2.2 (which will be released in December 2013), you should be aware of some breaking changes*: Namespace: The ClientListener has been...

Read More

RAP 2.0 introduced the JavaScriptLoader service to allow custom widgets to load their scripts dynamically. However, because this is based on an "eval"-like JavaScript feature, the scripts did not appear like all other in the browser developer tools, and setting break points was not possible. The same exact same issue always existed for ClientListener. For the JavaScriptLoader this will be fixed in RAP 2.2M1, but...

Read More