Program.fs
Description: Binary data
Controller.fs
Description: Binary data
AssemblyInfo.fs
Description: Binary data
Hello,I have now managed to rewrite the ToolbarSample using F# and it seems to work perfectly.
There is however an issue with member fields and F#: F# compiles "fields" to IL-fields with an prefix underscore. In order to complete the rewrite I added a new constructor to ObjectiveCFieldAttribute that takes the name of the field to bind:
public ObjectiveCFieldAttribute(String name) { this.name = name; } So to translate the following (member field-)snippet from C#: [ObjectiveCField] public NSWindow theWindow; to F#: [<DefaultValue>] [<ObjectiveCField("theWindow")> val mutable theWindow:NSWindow(I think it is generally a good thing to be able to explicitly bind a .Net-field to any ObjC field you like so I believe this addition is useful even outside the scope of F#.)
This was the only change I had to make to the Monobjc code.I do not mind sharing the code as it is right now but will spend some time cleaning it up and make it more F#-ish - as it is now it is a plain translation of the C#-code. The current state of the code is attached - if the list manager let it through.
Regards, Johan Kullbom