module Types where import Graphics.UI.Gtk {-| This type contains the variables associated with both the rows in the directory 'ListStore' and the file 'ListStore'. -} data StoreRow = StoreRow { name :: String, -- ^ The name of the file\/directory. icon :: Pixbuf, -- ^ The icon associated with the file\/directory. size :: String, -- ^ The string representation of the size of the file\/directory. lastAccess :: String, -- ^ The string representation of the last access time of the file\/directory. permissions :: String -- ^ The string representation of the user permission associated with the file\/directory. } {-| This type represents the core components of the browser, all the important parts, the toggle button, the scrolled windows, the tree views and the list stores. -} data FileBrowser = FileBrowser { switch :: ToggleButton, -- ^ The toggle button used to determine which store is selected. location :: Entry, -- ^ The entry used to display\/changing the current directory location. treeScroll :: ScrolledWindow, -- ^ The scrolled window containing the expanding tree. dirScroll :: ScrolledWindow, -- ^ The scrolled window containing the directories. fileScroll :: ScrolledWindow, -- ^ The scrolled window containing the files. treeTree :: TreeView, -- ^ The TreeView containing the expanding tree. dirTree :: TreeView, -- ^ The TreeView containing the directories. fileTree :: TreeView, -- ^ The TreeView containing the files. treeStore :: TreeStore String, -- ^ TreeStore with the elements from the expanding tree. dirStore :: ListStore StoreRow, -- ^ ListStore containing the directory elements. fileStore :: ListStore StoreRow -- ^ ListStore containing the file elements. }