After learning quite a bit about Swift, nibs, xibs, nib-less coding, AppKit, Foundation, NSObjects of various capabilities, and a metric crap-ton of new stuff, TClient 0.1 is up and running.

TClient About Window

Whew…

While there are still quite a few more things to learn, at least I’ve run down enough leads on various websites that my productivity is increasing in momentum.

The next major development milestone is the actual game playing window, a resizable window with a tabbed interface, each tab containing a zoomable, scalable, layered playing surface.

There’s still quite a bit to do, but the knowledge base is expanding. The work is becoming less daunting by the day.

Update:

If you’re reading this post and wondering if the posted graphic looks fuzzy, you’re right. After working on things a bit, I discovered that the app was running in Low Resolution Mode and was locked into doing so. After digging around the Internet and Apple’s documentation, I discovered that a key was missing in the Info.plist file, namely NSHighResolutionCapable. Adding this key to the Info.plist file allowed the application to run in high resolution mode on my Retina MacBook.

Note that we’re not building our macOS app using XCode. While it may make things easier, it forces the developer into a certain mindset. Our ultimate goal is to provide apps on Windows and Linux systems and relying on the magic UI design capabilities, and nib/xib files, would impede our ability to port the UI controls, in my humble opinion.