Platforms to show: All Mac Windows Linux Cross-Platform

/Picture/Hierarchical Listbox with Icons


Required plugins for this example: MBS Picture Plugin

You find this example project in your Plugins Download as a Xojo project file within the examples folder: /Picture/Hierarchical Listbox with Icons

This example is the version from Tue, 7th Nov 2016.

Project "Hierarchical Listbox with Icons.xojo_binary_project"
Class App Inherits Application
Const kEditClear = "&Delete"
Const kFileQuit = "&Quit"
Const kFileQuitShortcut = ""
End Class
Class MainWindow Inherits Window
Control List Inherits Listbox
ControlInstance List Inherits Listbox
EventHandler Sub ExpandRow(row As Integer) dim it as FolderItem = me.RowTag(row) AddFolder it End EventHandler
End Control
EventHandler Sub Open() dim u as integer = VolumeCount for i as integer = 0 to u AddItem volume(i) next End EventHandler
Sub AddFolder(f as FolderItem) if f <> nil then dim c as integer = f.Count for i as integer = 1 to c dim it as FolderItem = f.TrueItem(i) AddItem it next end if End Sub
Sub AddItem(it as FolderItem) if it = nil then // ignore stuff we can't see elseif not it.Visible then // ignore invisible stuff else if it.Directory then List.AddFolder it.DisplayName else List.AddRow it.DisplayName end if List.RowTag(List.LastIndex) = it // get icon via MBS Plugin list.RowPicture(List.LastIndex) = it.IconMBS(16) end if End Sub
End Class
MenuBar MainMenuBar
MenuItem FileMenu = "&File"
MenuItem FileQuit = "#App.kFileQuit"
MenuItem EditMenu = "&Edit"
MenuItem EditUndo = "&Undo"
MenuItem EditSeparator1 = "-"
MenuItem EditCut = "Cu&t"
MenuItem EditCopy = "&Copy"
MenuItem EditPaste = "&Paste"
MenuItem EditClear = "#App.kEditClear"
MenuItem EditSeparator2 = "-"
MenuItem EditSelectAll = "Select &All"
End MenuBar
End Project

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


The biggest plugin in space...