MBS Xojo Developer Conference and Training
Join us from 3rd to 6th May 2017 in Berlin, Germany.

MBS Real Studio Plugin Tutorial Videos

DiscRecording Source

Note: The function DesktopFolder is deprecated in Real Studio. You can replace it with SpecialFolder.desktop.

Class App
Inherits Application
// Constants
Const kFileQuitShortcut = Ctrl+Q
Const kFileQuit = E&xit
Const kEditClear = &Delete

// Event implementations
Sub Open()
dim track as DRTrackMBS
dim bsp as MyBurnSetupPanel
dim bpp as MyBurnProgressPanel


if track<>nil then
bsp=new MyBurnSetupPanel

bsp.setCanSelectAppendableMedia true
bsp.setCanSelectTestBurn true

if bsp.runSetupPanel=bsp.NSOKButton then
bpp=new MyBurnProgressPanel

bpp.beginProgressPanelForBurn bsp.burnObject, track
// cancel
end if
end if

End Sub

// Methods
Function CreateTrack() As DRTrackMBS
dim f as FolderItem
dim fo as DRFolderMBS
dim virtualFolder as DRFolderMBS
dim virtualFile as DRFileMBS
dim MacFile, WinFile as DRFileMBS

if f<>Nil and f.Exists then
if fo<>Nil then

virtualFolder=DRFolderMBS.virtualFolderWithName("A test folder")

virtualFile=DRFileMBS.virtualFileWithName("Test File","Content of test file.")
virtualFolder.addChild virtualFile

MacFile=DRFileMBS.virtualFileWithName("Test File","Content of test file.")
virtualFolder.addChild MacFile

winFile=DRFileMBS.virtualFileWithName("Test File","Content of test file.")
virtualFolder.addChild winFile


fo.addChild virtualFolder

Return DRTrackMBS.trackForRootFolder(fo)
end if
end if

End Function
End Class

Class Window1
Inherits Window
// Controls
End ControlInstance
End Class

Class MyBurnSetupPanel
Inherits DRBurnSetupPanelMBS
// Event implementations
Sub DeviceSelectionChanged(device as DRDeviceMBS)
window1.ListBox1.AddRow "device: "+device.displayName
End Sub
End Class

Class MyBurnProgressPanel
Inherits DRBurnProgressPanelMBS
// Event implementations
Function burnProgressPanelBurnDidFinish(burn as DRBurnMBS) As boolean
window1.ListBox1.AddRow "CD finished."
End Function
Sub burnProgressPanelWillBegin()
window1.ListBox1.AddRow "Panel is visible"
End Sub
Sub burnProgressPanelDidFinish()
window1.ListBox1.AddRow "panel closed"
End Sub
End Class

All movies

MBS Xojo Plugins