Forum > Carbon

Access violation on TOpenDialog.Execute on Mac sandboxed app.

<< < (2/2)

Phil:

--- Quote from: cobata on February 15, 2017, 04:29:54 pm ---The Carbon is the default (you know) and does not use additional dylibs

--- End quote ---

The Cocoa frameworks obviously are standard on all Macs. You won't need any additional .dylibs.

You need to use the Cocoa widgetset, ideally from trunk, if you want to use the NS common dialogs.

cobata:
Phil,

It is right,

But, you know that but - release, means release, I investigate a lot of time for testing, and then I release. Release, means to work with (subjectively) the most tested and qualitative software, tools, etc.

That is :)

I think that as default and the only working released (Mac native) widgetset Carbon, with some workarounds (those I am searching for), have to play with Apple App Store. The problem I am wailing for dates since 2012...

Best

felipemdc:

--- Quote from: cobata on February 15, 2017, 04:29:54 pm ---The Carbon is the default (you know)
--- End quote ---

It is the default because the default is used for building the IDE, and the Cocoa interface is still inferior for running the IDE, which is a very complex project which uses nearly all LCL functionality.

But being the default is not the same as "being recommended for user apps", I'd say that the Cocoa interface is recommended, unless you hit some kind of limitation that is fixed by switching to the Carbon interface.


--- Quote --- and does not use additional dylibs
--- End quote ---

LCL-Cocoa does not use additional dylibs


--- Quote ---I have to investigate time to test with Lazarus 1.6.2 (or the latest version) with Cocoa.
--- End quote ---

I would use lazarus SVN trunk for Cocoa. Laz 1.4.4 is too old for Cocoa. I'm not sure about 1.6.2 with Cocoa.

cobata:
It's my tribute to the community:

http://www.COBATA.com/download.php?file=nsdialogs

cobata:
Update:
- On the latest FPC/ Lazarus (3.0.4/ 1.8.4), on compiling nsdialogs.pas:

 - nsdialogs.pas(83,103) Error: Incompatible type for arg no. 1: Got "CFARRAY.CFArrayRef", expected "MACOSALL.CFArrayRef"

- Fixed by changing the uses clause:
 - from "SysUtils, Classes, AppKit, MacTypes, CFString;"
 - to "SysUtils, Classes, AppKit, MacOSAll;"

- The download is updated (above).

Navigation

[0] Message Index

[*] Previous page

Go to full version