Post Image

TIP: Auto Complete Renderer

I'm a bit conflicted about this tip. The AutoCompleteTextField is a problematic class that is in dire need of a rewrite. When we created it we still didn't accept that lists "need to go". It also predated features like the InteractionDialog which would have made this component much easier to use.

Read More
Post Image

Tutorial - Create a Gorgeous Sidemenu

One of the biggest challenges facing new Codename One developers is the challenge of creating an elegant looking UI. This isn't trivial in any tool but we don't make it easy enough in some cases. In the tutorial below I'm focusing on one of the most important UI elements: the side menu.

Read More
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