Platforms to show: All Mac Windows Linux Cross-Platform
/MacCocoa/Drop file to see icon parts
Required plugins for this example: MBS MacBase Plugin, MBS Picture Plugin, MBS MacCocoa Plugin, MBS Main Plugin
You find this example project in your Plugins Download as a Xojo project file within the examples folder: /MacCocoa/Drop file to see icon parts
This example is the version from Tue, 21th Jan 2019.
Project "Drop file to see icon parts.xojo_binary_project"
FileTypes
Filetype special/any
End FileTypes
Class Window1 Inherits Window
Control i128 Inherits Canvas
ControlInstance i128 Inherits Canvas
End Control
Control i48 Inherits Canvas
ControlInstance i48 Inherits Canvas
End Control
Control i32 Inherits Canvas
ControlInstance i32 Inherits Canvas
End Control
Control i16 Inherits Canvas
ControlInstance i16 Inherits Canvas
End Control
Control StaticText1 Inherits Label
ControlInstance StaticText1 Inherits Label
End Control
Control i256 Inherits Canvas
ControlInstance i256 Inherits Canvas
End Control
Control i512 Inherits Canvas
ControlInstance i512 Inherits Canvas
End Control
Control List Inherits Listbox
ControlInstance List Inherits Listbox
End Control
EventHandler Sub DropObject(obj As DragItem, action As Integer)
do
if obj.folderItemavailable then
dim n as NSImageMBS = NSWorkspaceMBS.iconForFile(obj.FolderItem)
if n<>Nil then
i16.Backdrop = GetIcon(n, 16)
i32.Backdrop = GetIcon(n, 32)
i48.Backdrop = GetIcon(n, 48)
i128.Backdrop = GetIcon(n, 128)
i256.Backdrop = GetIcon(n, 256)
i512.Backdrop = GetIcon(n, 512)
List.DeleteAllRows
for each rep as NSImageRepMBS in n.representations
List.AddRow str(rep.width)
List.cell(List.LastIndex,1) = str(rep.height)
List.cell(List.LastIndex,2) = str(rep.bitsPerSample)
'if rep.width = size then
'n.size = NSMakeSizeMBS(size,size)
'Return n.CopyPictureWithMask
'end if
'
next
end if
end if
loop until not obj.nextItem
End EventHandler
EventHandler Sub Open()
acceptfileDrop "special/any"
End EventHandler
Function GetIcon(n as NSImageMBS, size as integer) As Picture
n.setsize(size,size)
' = NSMakeSizeMBS(size,size)
Return n.CopyPictureWithMask
End Function
Property Protected i As iconMBS
End Class
MenuBar Menu
MenuItem UntitledMenu3 = ""
MenuItem UntitledMenu2 = "File"
MenuItem FileQuit = "Quit"
MenuItem UntitledMenu0 = "Edit"
MenuItem EditUndo = "Undo"
MenuItem UntitledMenu1 = "-"
MenuItem EditCut = "Cut"
MenuItem EditCopy = "Copy"
MenuItem EditPaste = "Paste"
MenuItem EditClear = "Clear"
End MenuBar
Class App Inherits Application
End Class
End Project
The items on this page are in the following plugins: MBS MacCocoa Plugin.