Monthly Archives: December 2015

Storyboards and Document-based OSX Apps

December 29, 2015 12 Comments

Storyboards appear to be a very good way of laying out a UI. After playing around a bit with them I created a new Document-based OSX app that uses storyboards.
Everything came to a

NSCollectionView Bindings with Core Data

December 25, 2015 12 Comments

Previously I wrote a blog about using an NSCollectionView with bindings. Today I did the same thing but used Core Data for the data storage.
As before, the underlying data is a “Channel”. In

NSMatrix and NSCollectionView Bindings

December 24, 2015 12 Comments

After days of struggle I finally gave up on using bindings with an NSMatrix comprised of Checkboxes. There is no good (well, at least complete) info on how to do this on the web.

Swift Function Lists

December 20, 2015 12 Comments

I’m going to need to make heavy use of Swift function lists for what I intend to do with MIDI. I’m very familiar with C proc ptrs so the basics of this don’t scare me,

IB – User Defined Runtime Attributes

December 20, 2015 12 Comments

Working on my MIDIChimes application, adding a piano-type keyboard UI, I happened to notice a section in the Interface Builder Identity Inspector I’d always glossed over before — the “User Defined Runtime Attributes” section (I’m

CoreMIDI and Memory Leaks

December 18, 2015 12 Comments

I recently wrote a “MIDIChimes” app that sends note-on and off somewhat randomly for a given set of notes. I noticed a memory leak, investigated, and after many hours of poking at it finally plugged

GCD – Accurate Enough for MIDI?

December 6, 2015 12 Comments

I’m not familiar with either GCD or high precision timers on the Mac (I don’t currently write code for iOS but I’m sure it’s similar). Since I’m working on MIDI code, this means I’m going

Linear Mapping Between Two Triangles

December 6, 2015 12 Comments

Here is unoptimized Swift code for generating the linear transformation between two triangles. It’s extremely easy to miss dealing with some corner cases. I’m pretty sure this is correct. I’ve used it to generate dozens