iTunes Like Flex Search TextInput

While thinking about how to implement and style a slick text based filter for data shown in a Flex DataGrid I stumbled upon the solution when searching for some of my favorite songs in iTunes.

The search field in iTunes offers exactly the functionality I was looking for, packed in Apple’s usual understated style.

Well, this was definitely a challenging task for me in terms of skinning.

Prevent Google Apps Mail Service from Rewriting the Sender Address

I recently set up the mail service for my new smartcode domain using Google Apps. Subscription and setup of the Google Apps account with some mail addresses is a simple and straightforward process.

However, when I sent mails from my server (using sSMTP) with sender addresses like blog@smartcode.ch or wiki@smartcode.ch, they all arrived in my inbox with the sender address set in the ssmtp.conf file.

Read on for instructions to configure Google Apps mail service to allow some kind of alias addresses for a mail address.

Own Way, Own Name, New Pleasure

The circumstances forced me to go my own way. This is why my blog moved to the domain smartcode.ch.

Let me know whatever you want me to know – about the design, usability, name, etc.

How to add skin states to Flex 4 containers

There is an excellent article over at newtriks (referencing other excellent articles regarding this subject) on how to add skin states to Flex 4 Containers using ActionScript.

I implemented my custom SkinState using the information provided, but never succeeded. There was definitely something missing, which was not obvious to me.

Determine if an element is visible in a scrollable Spark DataGrid

By digging in the Flex 4.5 API docs I’ve found a way to determine if a certain element (object) of the spark.components.DataGrid.dataProvider is visible in the viewport of the spark.components.Scroller wrapping the DataGrid.

Spark DataGrid column with an itemRenderer and a labelFunction

Ever tried to use an ItemRender and a labelFunction for a Spark DataGrid GridColumn at the same time with the GridItemRenderer template provided by Flash Builder? If you run into problems as well, read on for a simple solution.

Flex 4.5 MySQL Query Browser

I was looking for a simple MySQL query browser to provide individuals who wish to learn SQL with a tool to get started. Since I couldn’t find a satisfactory software I decided to create one.

The result consists of a Flex interface using Zend AMF for remoting, therefore PHP as backend technology, and is available for cloning and other experiments on github.

Visit the demo page or watch the screencast to see it in action.

Create Flex 4.5.* API docs for offline view on Mac OS X

Even today it seems to be difficult to find a downloadable version of the Flex 4.5 SDK API docs. However, it turned out that it is not that difficult to create a local copy of the API docs using ant.

All you need is a copy of a Flex 4.5 SDKant and a bit of courage to deal with the Terminal.

If you are not in a do-it-yourself kind of mood, you can download the Flex 4.5.1 API docs.

miceminer – a data mining interface to study social behavior of house mice

I just handed in my master thesis in biology (animal behavior), which consists of a database of spatial position data of a house mice population, and a Flex interface named miceminer to access the database.

Unfortunately the application is on a server within the network of the University of Zurich. Therefore I can just offer you a screen-cast that introduces some features:

Flex 3 and Zend_Amf Class Mapping Hint

For my latest little Flex project, I used Zend Amf instead of amfphp for remoting. I had no trouble getting started with Zend Amf since I’m familiar with amfphp and there are good resources available on the web ( e.g. Zend Amf Wiki and Flex and PHP: remoting with Zend AMF ).

However, one thing really bugged me. Not all of the class mappings worked as expected. For some of the classes I got general objects back in my Flex application instead of the typed objects. I checked forth and back and couldn’t find any bug in my code. So I checked the web and found a solution to my problem.