Hello,

If you are overriding a property, the attribute must be placed on the
"getter"/"setter", as it is a method:

        public NSData Model
        {
            [ObjectiveCMessage("model")]
            get
            {
            }
            [ObjectiveCMessage("setModel:")]
            set
            {
            }
        }


Regards, Laurent Etiemble.

2010/12/20 Steven Spencer <steven.spen...@linn.co.uk>

> Ok,
>
> I have identified the problem and can see there is a potential source of
> confusion in using the monobjc bindings. The root of the problem is that
> the borderless windows was not the key window. In objective-c, this can
> be achieved by adding:
>
> -(BOOL)canBecomeKeyWindow
> {
>    return YES;
> }
>
> to the custom window class i.e. this objective-c message has been
> overridden in the subclass of NSWindow.
>
> Now, the monobjc guide to subclassing
> (http://www.monobjc.net/index.php?page=subclassing), gives an outline of
> using the ObjectiveCMessage attribute for C# methods. However, the
> "canBecomeKeyWindow" property is implemented in Monobjc.Cocoa.NSWindow
> as a C# virtual property - the ObjectiveCMessage attribute does not
> compile with properties.
>
> So, in my original code, my NSWindow subclass had overridden the
> CanBecomeKeyWindow property but had not applied any attributes to it. I
> believe this was like, in objective-C, having an NSWindow derived class
> without the "canBecomeKeyWindow" message overridden - the visible result
> is the same.
>
> So, to get my C# code to work, I have added a new method to my C#
> NSWindow derived class:
>
> [ObjectiveCMessage("canBecomeKeyWindow")]
> public bool CanBecomeKeyWindowMethod()
> {
>    return true;
> }
>
> So, this bypasses the CanBecomeKeyWindow property in the base class but
> it does work.
>
> Can anyone give me some comments or feedback as to whether I am doing
> the right thing here?
>
> Thanks,
> Steven
>
>
>
>
>
> -----Original Message-----
> From: Steven Spencer
> Sent: 20 December 2010 16:33
> To: users@lists.monobjc.net
> Subject: RE: [us...@lists.monobjc.net] IKImageBrowserView view options
> keys
>
> Ok,
>
> After further investigation, I have tracked this down to a problem with
> Cocoa, not Monobjc. The problem is that I have a borderless window
> (initialised with the NSBorderlessWindowMask style) - this seems to be
> causing the issues with the IKImageBrowserView. I have recreated this
> using Objective-C and XCode.
>
> Steven
>
>
>
>
>

Reply via email to