Skip to content

Xojo Blog Posts

Accessing the User Interface from a Thread

Perhaps you already knew, but with desktop apps it has always been considered bad form to directly access any part of your user interface from within a Thread. Alas, even though this was frowned upon, it generally worked in most of your desktop apps.

Starting with 2013r1, this no longer works with Xojo for Cocoa apps. If a Cocoa app tries to access the UI from a thread, a ThreadAccessingUIException is raised. But what exactly does “accessing the UI” mean? In the case of Cocoa, it means any access to a built-in property or method on any UI control or Window. You can access your own methods or properties added to control subclasses as long as they do not access the UI themselves.

Continue reading Accessing the User Interface from a Thread

Comments closed

Merging iCloud and Apple ID Accounts

iCloud.jpegIf you have been around the Mac community long enough, you may have ended up with two Apple IDs. I have one for iTunes and another one that came from MobileMe. This resulted in effectively having two iCloud accounts. This can be inconvenient and probably will become more so in the future. Apple doesn’t provide a means to merge Apple IDs. They know they need to provide this, but they do not yet do so. I, however, have found a way.

Since the introduction of iCloud, I have wanted to have a single Apple ID. When Apple recently added the two-step authentication for Apple IDs to make them more secure, I decided to sign in and update my Apple ID account. Part of the process is to verify a device you own which will be used, along with your password, to authenticate that you are who you say you are should you want to make changes (such as your password) to your Apple ID in the future. The webpage said it would list my devices, but none were listed. It didn’t take long to figure out why. The Apple ID I was updating was for iTunes, while the Apple ID Apple was using to find my devices was the one associated with my iCloud (MobileMe/mac.com) account.

Continue reading Merging iCloud and Apple ID Accounts

Comments closed

GUEST POST: Testing a Windows Service Application with Xojo

When working with Windows services you’ll want to debug the application while it’s running as a service. To do this, you can Select Run Paused from the project menu, then create the windows service and start it. Now you’re debugging your app while it runs in service mode.

All of this takes time, and having to create/start the service each time slows down debugging considerably.

I have written a little utility that allows me to right click on the debug executable and automate the service creation and startup. You can download this utility from https://dl.dropboxusercontent.com/u/18858366/DebugService.zip. The source for the Xojo project is included. The utility accepts the executable path as its argument, creates a service “_test” and starts the service.

Continue reading GUEST POST: Testing a Windows Service Application with Xojo

Comments closed

A Modern Alternative to Visual Basic

Xojo is a great alternative to Microsoft Visual Basic. If you have used VB in the past or are considering using it now, you might want to take a look at Xojo to see if it will fit your needs better.

At Xojo, we strive to keep things simple. A single language to build apps for Mac, Windows and Linux desktop, plus web, iOS and Raspberry Pi. With Xojo you simply develop faster.
Continue reading A Modern Alternative to Visual Basic

Comments closed

The iOS 7 UI Controversy

Unless you have been living under a rock for the past week, you know that Apple unvieled iOS 7 and its new user interface coming this fall to an iOS device near you. While there are some great new features, like the engine in a car, it’s not the first thing people notice. Most car shoppers are looking at the color of the paint, the sleekness of the design, the look of the interior and dashboard, etc. In other words, they look at the cars’ UI.

The new UI in iOS 7 is the most controversial thing about it by far. I’ll admit that when I first saw it, I thought they were changing it just to change it. I thought they hadn’t put enough thought into the reasons why or they were just bending to the pressure of change for change’s sake. In my role at Xojo, I think at a lot about UI design. Before long, I realized that of course Apple put a lot of thought into it. That’s what Apple does. It’s their culture. So why were they going with this new, simpler, non-skeumorphic design?

Continue reading The iOS 7 UI Controversy

Comments closed

Go Team!

In the past, our user database has not been great for teams. Now, having your own Xojo account is really important. You need your Xojo ID to activate your licenses in the Xojo IDE and to access the Xojo Forum. Feedback requires your Xojo ID to create bug reports and feature requests.

Continue reading Go Team!

Comments closed

Cross-platform: More Important Than Ever

There was a time when the idea of running the same code on different computers wasn’t even imagined. Programming languages were written specifically for a particular computer. And computers were purchased for very specific purposes so why would you even want to run a particular program on another type of computer?

It was the desktop computer revolution that changed that. By the mid-to-late 1980’s, there were more and more desktop computers and developers wanted to target all of them. Soon, however, Windows became so dominant that many developers chose to focus on that one OS. Some Mac developers, not wanting to miss out on the potentially enormous Windows market, either went to the trouble of writing two versions of their applications or used a tool/language that would allow them to target both Mac and Windows from a single code base. This was the beginning of cross-platform development.

Recently, I was asked by tech blogger Chris Pirillo if cross-platform was really important anymore. Cross-Platform is¬†actually more important than ever. Why? First of all, while the Windows PC market is seeing flat or declining sales, Apple’s Mac marketshare is growing. We are seeing this at Xojo. More and more Windows developers are coming to us because they can no longer ignore the Mac market. Linux is the predominant server OS. If you want to write server software that can run on some combination of Linux, Windows and OS X, you’ll want to be writing cross-platform code.

Continue reading Cross-platform: More Important Than Ever

Comments closed

Making A Difference With Xojo

We hear from our users regularly about the success they have with Xojo. They tell us about how much their users love the software they have created with Xojo and how it has helped, in some cases, to change lives. There are Alzheimer’s patients holding on to memories longer. There are police detectives tracking down Internet predators to help keep children safe. There are scientists who are able to study DNA faster than ever before. Xojo has enabled these users to create software that helps improve the human condition. There is nothing more gratifying for us to know that we played a part in that.

Continue reading Making A Difference With Xojo

Comments closed