Platforms to show: All Mac Windows Linux Cross-Platform

LaunchServicesCanApplicationAcceptItemMBS(item as folderitem, targetapp as folderitem, role as Integer, flags as Integer) as boolean

Type Topic Plugin Version macOS Windows Linux iOS Targets
global method Launch Services MBS MacOSX Plugin 3.2 ✅ Yes ❌ No ❌ No ✅ Yes All
Determine whether an item can accept another item.
Example
Dim file As FolderItem = SpecialFolder.Desktop.Child("Test.xojo_binary_project")
Dim a As FolderItem = LaunchServicesOpenMBS(file)

Const kLSRolesNone = 1 // no claim Is made about support For this type/scheme
Const kLSRolesViewer = 2 // claim To be able To view this type/scheme
Const kLSRolesEditor = 4 // claim To be able To edit this type/scheme
Const kLSRolesAll = -1 // claim To Do it all

Dim accept As Boolean = LaunchServicesCanApplicationAcceptItemMBS(file, a, kLSRolesEditor, 0)

MsgBox "accept by Xojo: "+Str(accept)

Returns whether TargetApp can accept this folderitem as in a drag and drop operation. If role is other than kLSRolesAll then make sure TargetApp claims to fulfill the requested role.

Constants you can use for the role parameter:
kLSRolesNone = 1no claim is made about support for this type/scheme
kLSRolesViewer= 2claim to be able to view this type/scheme
kLSRolesEditor= 4claim to be able to edit this type/scheme
kLSRolesAll = -1claim to do it all

Values for the flags:
kLSAcceptDefault = 1
kLSAcceptAllowLoginUI= 2show UI to log in if necessary


Upgraded in version 19.5 to use CFURL instead of FSRef APIs.

Blog Entries

The items on this page are in the following plugins: MBS MacOSX Plugin.


The biggest plugin in space...