One thing that I’ve wanted to try for quite a while is doing something when an app gets put in the background (user hits the home button for example). An example of this is a game that my kids play - when they leave the game, the character yells out something like "Don’t leave!", "Come back!", "Hope you enjoy your day without me!" and other random fun stuff.

Sometimes it also schedules a notification to fire at a later date. Let’s say the kids forget to play the game for a few days… All of a sudden out of nowhere the iPad will scream at you "Come back and play NOW! I’m bored!"

How is this done? Let’s not waste anymore time… Here is the complete form source code for the simplest case - scheduling a notification upon entering the background.

Above you can see a screen shot of the app as it starts up. By default it uses "normal drive" - the second hand moves once per second and the minute hand moves once per minute.

The app is a Universal app (supports iPhone and iPad). The main clock screen uses a TScaledLayout to ensure proper scaling down to the iPhone (the app was designed for the iPad).

If you hit the Info button it will take you to the setup tab, where you can select "Flame" (or FireMonkey second hand) as well as "Smooth drive" - the second and minute hands move smoothly.

The setup screen uses a combination of items that scale and items that don’t scale. For instance, the toolbar, the back button, and the listbox with its items are not supposed to scale, but still be aligned properly. The clock faces, however, do scale inside of a TScaledLayout.

Above you can see what the FireMonkey second hand looks like.

Below is a screen shot of my Structure Pane where you can see how I designed the app:

I also wanted to mention performance. The previous version of the app was created in XE2 where I got about 2-3 frames per second in smooth mode - not very smooth. However, this version created with our upcoming product gets a blazing 60 frames per second on the iPad 3 using iOS 6.1.3 and almost the same fps rate on iPhone 4 (iOS 5.1) and iPad 2 (iOS 6.1) at about 55+ frames per second.

Enjoy!

PS: The screen shots above are actually from the *next* update I will be pushing soon… The current one looks almost the same, except for a few changes in layout.

This session will cover differences between the Embacadero Win32 and Win64 C++ compilers, comparing keywords, macros, extensions and standards conformance of bcc32 and bcc64. The focus will be on strategies to port existing C++ Projects (ActiveX, WebBroker, SOAP, etc) and writing new code in a way that works for both Platforms.

The C++ language standard provides a naming convention to identify language extensions using the double underbar (__) in front of any extensions. This session will discuss the language and runtime extensions added to the new C++Builder 64-bit Windows compiler to support Delphi language, types, components and enhanced RTTI.

Eli Boling - Embarcadero

1pm PST - Using the C++ Standard and Boost Libraries in your 32-bit & 64-bit Applications
The C++ Standard library is a set of classes and functions that are part of the ISO standard for C++. The Boost C++ libraries include a collection of portable C++ source libraries created by Boost community members (http://www.boost.org), some of which are now included as part of the C++ Standard library. In this session you will learn how you can use the C++ Standard and Boost libraries in your C++ applications for Windows and Mac OS X.

If you’re a software developer, this is your kind of conference. It’s technical. It’s flexible. It’s free!
CodeRage serves up real-world technical sessions designed to provide you with information you can put to work immediately in your projects, in your environment.

CodeRage brings you top industry speakers and technologists presenting on a wide variety of topics, all geared toward maximizing your productivity. Session and presenter highlights include: