Building MAxure
Figuring out how to build MAxure was definitely a challenge given our two main criteria:
1. MAxure has to share a majority of its code with Axure RP for Windows
2. MAxure has to be able to deliver a Mac experience
The first is important to reduce development time, but also to keep future development efficient. Having to maintain separate code for each new feature or fix going forward would not be good. And the second is… well… you know why the second is important.
Axure RP is built mostly in C# on the Microsoft .Net 2.0 Framework. Thanks to the wonderful folks at the Mono project, we were able to run the non-UI related code from Axure RP on Mac with minimal effort.
As for the UI, that was a whole other ballgame. Getting a UI element as complex as the wireframe pane to work on both platforms from a single code base was not an easy task. We first removed all Windows-specific controls and replaced them with custom “Windowless” controls. Then a (magic) drawing layer was developed so that the same C# code could render and function on both Windows and Mac. This layer also handles themes so a control can look and behave different on each platform. Very cool stuff and amazing to see it come to life.
The added flexibility from creating custom controls is also giving us an opportunity to make enhancements while we convert, which will work on both Windows and Mac. How great is that?
We’re going to make sure that MAxure is built well and is architected so that Axure RP on both Windows and Mac can and will continue to improve together.
- Victor, PM
P.S. A quick thanks to Aaron at Big Nerd Ranch for providing great Mac OS training.
-
gangbangsextremetoys liked this
-
don-fisger1 liked this
-
vlc-iphone-skin liked this
-
france-mutuelle-sant-- liked this
-
dastilda liked this
-
axureformac posted this




