Post Image

Threadsafe SQLite

One of the main reasons for the thread API I discussed yesterday is a new threadsafe Database API. This new API allows you to wrap your `Database` instance with a thread that will hide all access to the database and implicitly make it threadsafe by serializing all requests to a single database thread.

Read More
Post Image

Easy Thread

Working with threads is usually ranked as one of the least intuitive and painful tasks in programming. This is such an error prone task that some platforms/languages took the route of avoiding threads entirely. I needed to convert some code to work on a separate thread but I still wanted the ability to communicate and transfer data from that thread.

Read More
Post Image

TIP: Listen on All Radios

Using toggle buttons in touch interfaces is very intuitive for many use cases. We implement them via RadioButton or CheckBox to indicate inclusive or exclusive selection. As a result I find myself using RadioButton quite a lot and ran into an ommission that frankly should have been there from day 1.

Read More
Post Image

Questions of the Week 50

I've been back from the bootcamp this past week and while I have committed many new changes I'm still taking things relatively easy after the hard work of the bootcamp. This will be the last Q&A Friday segment in the blog. Starting next week I'll replace this segment with "tutorial of the week" which will focus on publishing/updating a "How do I?" video tutorial on a weekly basis.

Read More
Post Image

Fingerprint/TouchID Support

Fingerprint scanners are pretty common in modern hardware both from Apple and some Android vendors. The problem is that the iOS and Android API's for accessing them are a world apart. However, it's possible to find some low level common ground which is exactly what our cn1lib for fingerprint scanning accomplished.

Read More
Post Image

Braintree (PayPal) cn1lib

As part of the bootcamp we wrote a couple of cn1libs and the first one is the Braintree cn1lib which allows us to do credit card payments within an app. If you aren't familiar with Braintree it's a PayPal company that provides payment integration for mobile devices.

Read More
Post Image

TIP: Use the Native EDT

The bootcamp is winding down and I'm finally back to our usual scheduled posts. I'd like to open with a common practice that isn't nearly documented enough: use the native main/EDT threads. Our EDT serves many purposes but one of it's biggest roles is portability. By having an EDT we get consistent behavior across platforms.

Read More
Post Image

Questions of the Week 49

Next week we'll resume the bootcamp so I might publish one last blog post after this and that's it for another two weeks. It's been ages since our last plugin update so we'll take this opportunity to release a new plugin release for all the IDE's together with the other fixes and enhancements coming in this update.

Read More
Post Image

Properties are Amazing

I wrote about properties before but I got a sense most people didn't understand how amazing they truly are. In this post I would like to show you something they can do that's incredibly cool and practical for your every day usage.

Read More
Post Image

Edit Styles in Simulator

One of the biggest pain points in Codename One is theming, there are several things we did to alleviate the problem but it's an inherently complex problem. One difficulty people have is in the disconnect between what we see in the UI and the styling in the designer. This creates a disconnect that is often hard to bridge.

Read More