yup, you can't mix and match within one file.
@colinta colinta.com github.com/colinta On Oct 21, 2012, at 1:22 PM, Robert Carl Rice wrote: > Hi, > > Actually, I already have PBSerialPort m & h files by Paolo Bosetti dropped > into my project and it works fine. I was wondering is a class could have both > Objective C and Ruby code but from this discussion I gather the class must be > either MacRuby or ObjC. Is this correct? > > Thanks, > Bob Rice > > > On Oct 21, 2012, at 2:40 PM, Jim Getzen <j...@getzen.name> wrote: > >> You don't need to make a framework or bundle to add Obj-C code to your >> project. I've been able to just add a .h/.m files directly to the project >> and call the Obj-C classes contained therein from my MacRuby code, just as >> if those classes were part of a framework. >> >> What you can't do, of course, is call straight C functions or constants >> without a bridgesupport file. >> >> Jim >> >> >> On Oct 21, 2012, at 12:59 PM, Mark Rada <mr...@marketcircle.com> wrote: >> >> Adding some Objective-C code could be done with a framework as suggested, or >> by creating a bundle. The bundle process is essentially the same as creating >> a C extension for Ruby. Any MacRuby project with a C extension could be used >> as an example: >> >> https://github.com/pieter/macruby-bundle-example >> https://github.com/Marketcircle/AXElements/tree/master/ext/accessibility/key_coder >> https://github.com/alloy/ObjectiveBacon/tree/master/LanguageBindings/MacRuby/ext >> >> You can then simply "require 'bundle'" the bundle file that is compiled. >> >> >> On 2012-10-21, at 12:44 PM, Colin Thomas-Arnold <coli...@gmail.com> wrote: >> >>> You can certainly compile a group of stuff as a framework, and add that >>> framework to your project, but I've never tried to just toss in .h/.m files >>> and access them from macruby. >>> >>> Can anyone touch on that? I'm interested to hear what can be done there... >>> >>> >>> AFA translating your code into Obj-C... >>> >>> >>> Here's the short version: >>> >>> self.context = [[NSGraphics currentContext] graphicsPort]; >>> >>> >>> >>> And here's the long version! >>> >>> >>> // the header file, YourClass.h >>> >>> @interface YourClass : ParentClass >>> >>> @property (assign, nonatomic) CGContextRef context; >>> // or void* instead of CGContextRef, but graphicsPort returns a CGContextRef >>> >>> @end >>> >>> >>> >>> // the implementation file, YourClass.m >>> >>> #import "YourClass.h" >>> >>> @implementation YourClass >>> >>> @synthesize context; >>> >>> - drawRect:(CGRect)rect >>> { >>> self.context = [[NSGraphics currentContext] graphicsPort]; >>> } >>> >>> @end >>> >>> >>> >>> >>> @colinta >>> colinta.com >>> github.com/colinta >>> >>> >>> >>> >>> On Oct 21, 2012, at 10:19 AM, Robert Carl Rice wrote: >>> >>>> Hi Mark, >>>> >>>> Unfortunately, I am not very familiar with objective C syntax. Is it easy >>>> to mix objective C statements with MacRuby? >>>> For example, How would code the @context = >>>> NSGraphicsContext.currentContext.graphicsPort in objective C? >>>> >>>> Thanks, >>>> Bob Rice >>> >>> _______________________________________________ >>> MacRuby-devel mailing list >>> MacRuby-devel@lists.macosforge.org >>> http://lists.macosforge.org/mailman/listinfo/macruby-devel >> >> _______________________________________________ >> MacRuby-devel mailing list >> MacRuby-devel@lists.macosforge.org >> http://lists.macosforge.org/mailman/listinfo/macruby-devel >> >> _______________________________________________ >> MacRuby-devel mailing list >> MacRuby-devel@lists.macosforge.org >> http://lists.macosforge.org/mailman/listinfo/macruby-devel > > _______________________________________________ > MacRuby-devel mailing list > MacRuby-devel@lists.macosforge.org > http://lists.macosforge.org/mailman/listinfo/macruby-devel
_______________________________________________ MacRuby-devel mailing list MacRuby-devel@lists.macosforge.org http://lists.macosforge.org/mailman/listinfo/macruby-devel