Files
hsfm/hsfm.haddock

111 lines
42 KiB
Plaintext
Raw Normal View History

<0C><><00><00><><EFBFBD> 
    !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmn o p q r s t u v w x y z { | } ~  <00> <00> <00> <00> <00> <00> <00> <00> <00> <00> <00> <00> <00> <00> <00> <00> <00> <00> <00> <00> <00> <00> <00> <00> <00> <00> <00> <00> <00> <00> <00> <00> <00> <00> <00> <00> <00> <00> <00> <00> <00> <00> <00> <00> <00> <00> <00> <00> <00> <00> <00>
<00> <00> <00> <00> <00> <00> <00> <00> <00> <00> <00> <00> <00> <00> <00> <00> <00> <00> <00> <00> <00> <00><00><00><00><00><00><00><00><00><00><00><00>
<00>
<00>
<00>
<00>
<00>
<00>
<00>
<00>
<00>
<00>
<00>
<00>
<00>
<00>
<00>
<00>
<00>
<00>None 35ZrTurns any list into a list of the same length with the values
2016-06-01 19:32:51 +02:00
being the indices.
E.g.: "abdasd" -> [0,1,2,3,4,5]A <00> flavor using the <00> class.Safe 35Z <00><00><00><00><00><00> <00><00><00><00><00><00>None 35Z Icon type we use in our GUI.<02>Gets an icon from the default icon theme and falls back to project-icons
2016-06-01 19:32:51 +02:00
if not found. The requested icon size is not guaranteed.
 icon we want%which icon theme to get the icon fromrequested icon size

 
Safe 35ZSafe 35ZAtomically write a TVar.Atomically modify a TVar.Safe 35ZMCollision modes that describe the behavior in case a file collision
happens.!fail if the target already exists=Data type describing partial or complete file move operation.=Data type describing partial or complete file copy operation.!cData type describing file operations.
Useful to build up a list of operations or delay operations. !"#$%&' !"#$%&'!"#$%&'  !"#$%&'None 35Z()*()*()()*None 35Z+Low-level file information.;<02>The String in the path field is always a full path.
2016-06-01 19:32:51 +02:00
The free type variable is used in the File/Dir constructor and can hold
Handles, Strings representing a file's contents or anything else you can
think of.A6symlink madness,
we need to know where it points toG?Matches on any non-directory kind of files, excluding symlinks.HBMatches a list of directories or symlinks pointing to directories.IPMatches a list of any non-directory kind of files or symlinks
pointing to such.J5Matches on symlinks pointing to file-like files only.K!Matches on broken symbolic links.L<02>Matches on directories or symlinks pointing to directories.
If the symlink is pointing to a symlink pointing to a directory, then
it will return True, but also return the first element in the symlink-
chain, not the last.M1Matches on symlinks pointing to directories only.N<02>Matches on any non-directory kind of files or symlinks pointing to
2016-06-01 19:32:51 +02:00
such.
If the symlink is pointing to a symlink pointing to such a file, then
it will return True, but also return the first element in the symlink-
chain, not the last.U'Reads a file or directory Path into an  AnchoredFile5, filling the free
variables via the given function.VDGet the contents of a given directory and return them as a list
of  AnchoredFile.W A variant of V! where the second argument
is a ;5. If a non-directory is passed returns an empty list.X0Go up one directory in the filesystem hierarchy.Y0Go up one directory in the filesystem hierarchy.bGets all file information.cWChecks if a symlink is broken by examining the constructor of the
symlink destination.,When called on a non-symlink, returns False.d)Pack the modification time into a string.e)Pack the modification time into a string.gAPack the permissions into a string, similar to what "ls -l" does.jrApply a function on the free variable. If there is no free variable
for the given constructor the value from the <00> class is used.lAGets the free variable. Returns Nothing if the constructor is of Failed.mAFirst compare constructors: Failed < Dir < File...
2016-06-01 19:32:51 +02:00
Then compare name-...
Then compare free variable parameter of ; constructorsC+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVfills free a variable path to readWXYZ[\]^_`abcdefghijklmB+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklO;<?@CDEF=>=>=>AB=>=>=>=>+,-./0123456789:OPQGHIRSTJKLMNmUVWXYZ[\]^_`abcdefghijkl)+,-./0123456789:;<?@CDEF=>=>=>AB=>=>=>=>GHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklm None 35ZrFM-wide settings.<00>{This describes the contents of the current view and is separated from MyGUI,
because we might want to have multiple views.<00><02>Monolithic object passed to various GUI functions in order
2016-06-01 19:32:51 +02:00
to keep the API stable and not alter the parameters too much.
This only holds GUI widgets that are needed to be read during
runtime.<00> main WindowDnopqrstuvwxyz{|}~<00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00>Dnopqrstuvwxyz{|}~<00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00>D<00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00>wxyz{|}~<00><00>rstuvopqn<00> nopqrstuvw
xyz{|}~<00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00> <00><00><00><00><00><00><00><00><00><00> None 35Z<00>8Set up the GUI. This only creates the permanent widgets.<00><00><00><00> None 35Z<00>.Pops up an error Dialog with the given String.<00>6Asks the user for confirmation and returns True/False.<00>*Shows the about dialog from the help menu.<00>HCarry out an IO action with a confirmation dialog.
If the user presses No, then do nothing.<00>RExecute the given IO action. If the action throws exceptions,
visualize them via <00>.<00>OAsks the user which directory copy mode he wants via dialog popup
and returns  DirCopyMode. <00><00><00><00><00><00><00><00> window titleinitial text in input widget<00> <00><00><00><00><00><00><00><00><00> <00><00><00><00><00><00><00><00><00> <00><00><00><00><00><00><00><00><00> None 35Z
<00>9Gets the currently selected item of the treeView, if any.<00>3Carry out an action on the currently selected item.+If there is no item selected, does nothing.<00> Create the <00><02> of files/directories from the current directory.
2016-06-01 19:32:51 +02:00
This is the function which maps the Data.DirTree data structures
into the GTK+ data structures.<00>UCurrently unsafe. This is used to obtain any item, which will
fail if there is none.<00>(Reads the current directory from MyView.AThis reads the MVar and may block the main thread if it's
empty.<00>!Push a message to the status bar.<00>"Pop a message from the status bar.<00>VTurn a path on the rawModel into a path that we can
use at the outermost model layer.<00>fTurn a path on the rawModel into the corresponding item
that we can use at the outermost model layer.<00>uMakes sure the list is max 5. This is probably not very efficient
but we don't care, since it's a small list anyway. <00><00><00>action to carry out<00> current dir<00><00><00><00><00><00><00> <00><00><00><00><00><00><00><00><00><00><00> <00><00><00><00><00><00><00><00><00><00><00> <00><00><00><00><00><00><00><00><00><00><00>None 35Z<00>;Creates a new tab with its own view and refreshes the view.<00>aConstructs the initial MyView object with a few dummy models.
It also initializes the callbacks.<00>Switch the existing view in <00>* with the one that the
io action returns.<00>aDestroys the given view by disconnecting the watcher
2016-06-01 19:32:51 +02:00
and destroying the active FMView container.XEverything that needs to be done in order to forget about a
view needs to be done here.:Returns the page in the tab list this view corresponds to.<00>Createss an IconView.<00>Creates a TreeView.<00>0Refreshes the View based on the given directory.Throws:<00> on inappropriate type<00>bConstructs the visible View with the current underlying mutable models,
which are retrieved from <00>.TThis sort of merges the components mygui and myview and fires up
the actual models.<00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00>None  35NZ<00><02>Carries out a file operation with the appropriate error handling
allowing the user to react to various exceptions with further input.<00>;Helper that is invoked for any directory change operations.<00><00><00>whether to update the history<00><00><00><00><00><00><00><00><00>
None 35Z<00>ESet callbacks specific to a given view, on hotkeys, events and stuff.<00>>Set callbacks for the whole gui, on hotkeys, events and stuff.<00>?Closes the current tab, but only if there is more than one tab.<00>Supposed to be used with withRows. Deletes a file or directory.<00>"Initializes a file move operation.<00>Supposed to be used with withRows$. Initializes a file copy operation.<00>1Finalizes a file operation, such as copy or move.<00>Create a new file.<00>Create a new directory.<00>Go to the url given at the <00>) and visualize it in the given
treeView.$If the url is invalid, does nothing.<00>Execute a given file.<00>Supposed to be used with withRows. Opens a file or directory.<00>5Go up one directory and visualize it in the treeView.<00>Go "back" in the history.<00>Go "forth" in the history.<00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00>None 35Z<00><00><00><00><00> !"#$%&'()*+,-,./.0123456789::;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{ | } ~  <00> <00> <00> <00> <00> <00> <00> <00> <00> <00> <00> <00> <00> <00> <00> <00> <00> <00> <00> <00> <00> <00> <00> <00> <00> <00> <00> <00> <00> <00> <00> <00> <00> <00> <00> <00> <00> <00> <00> <00> <00> <00> <00> <00> <00> <00> <00> <00> <00> <00> <00> <00> <00> <00> <00> <00> <00> <00> <00> <00> <00> <00> <00> <00>
<00> <00> <00> <00> <00> <00> <00> <00> <00> <00> <00> <00> <00> <00> <00> <00> <00> <00> <00> <00> <00> <00><00><00><00><00><00><00><00><00><00><00><00>
<00>
<00>
<00>
<00>
<00>
<00>
<00>
<00>
<00>
<00>
<00>
<00>
<00>
<00>
<00>
<00>
<00>
<00><00><00><00><00><00><00><00><00><00><00><00><00><00><00>mainHSFM.Utils.MyPrelude
Paths_hsfmHSFM.GUI.Gtk.IconsHSFM.GUI.Gtk.Errors HSFM.Utils.IOHSFM.FileSystem.UtilTypesHSFM.GUI.Glib.GlibStringHSFM.FileSystem.FileTypeHSFM.GUI.Gtk.DataHSFM.GUI.Gtk.CallbacksHSFM.GUI.Gtk.MyGUIHSFM.GUI.Gtk.DialogsHSFM.GUI.Gtk.UtilsHSFM.GUI.Gtk.MyViewHSFM.GUI.Gtk.Callbacks.UtilsMain listIndicesmaybeDversion getBinDir getLibDir
getDataDir getLibexecDir getSysconfDirgetDataFileNameGtkIconIFolderSymLIFileIErrorgetIcongetSymlinkIcon GtkExceptionUnknownDialogButton$fExceptionGtkException writeTVarIO modifyTVarIO FCollisonModeStrict Overwrite OverwriteAllSkipRenameMove PartialMoveCopy PartialCopy FileOperationFCopyFMoveFDeleteFOpenFExecuteNonec_strlen
noNullPtrs$fGlibStringByteStringFileInfodeviceIDfileIDfileMode linkCount fileOwner fileGroupspecialDeviceIDfileSize
accessTimemodificationTimestatusChangeTimeaccessTimeHiResmodificationTimeHiResstatusChangeTimeHiResFileDirpathfvarRegFileSymLinksdestrawdestBlockDevCharDev NamedPipeSocketFileLikeDirList FileLikeList FileLikeSym BrokenSymlinkDirOrSymDirSym FileLikeOrSym sfileLikefileLikesdir brokenSymlink fileLikeSymdirSymreadFilereadDirectoryContents getContentsgoUpgoUp'comparingConstrisFileCisDirCisSymCisBlockCisCharCisNamedC isSocketC getFileInfoisBrokenSymlink packModTimepackAccessTime epochToStringpackPermissions packFileTypepackLinkDestination fromFreeVar
2016-06-01 19:32:51 +02:00
getFPasStr
getFreeVar $fOrdFileItemFMView
2016-06-01 19:32:51 +02:00
FMTreeView
FMIconView
FMSettings MkFMSettings
showHiddenisLazyiconSizeFilePropertyGridMkFilePropertyGrid fpropGrid fpropFnEntry fpropLocEntry fpropTsEntry fpropModEntry fpropAcEntry fpropFTEntryfpropPermEntry fpropLDEntryRightClickMenuMkRightClickMenurcMenu
rcFileOpen rcFileExecutercFileNewRegFile rcFileNewDir rcFileNewTabrcFileNewTabHere rcFileCut
rcFileCopy rcFileRename rcFilePaste rcFileDeletercFilePropertyrcFileIconViewrcFileTreeViewMenuBar MkMenuBarmenubarFileQuitmenubarHelpAboutMyViewMkMyViewviewcwdrawModel sortedModel filteredModelinotifyhistoryscrollviewBoxrcmenuupViewB homeViewB refreshViewBurlBarMyGUIMkMyGUIrootWinmenubar statusBarclearStatusBarnotebookfpropsettingsoperationBufferfmViewToContainersetViewCallbacks createMyGUIshowErrorDialogshowConfirmationDialogfileCollisionDialog renameDialogshowAboutDialogwithConfirmationDialogwithErrorDialogtextInputDialogshowFilePropertyDialoggetSelectedTreePathsgetSelectedItems withItems fileListStore getFirstItem getCurrentDir pushStatusBar popStatusbar rawPathToIter rawPathToItem
addHistorynewTab createMyView
switchView destroyViewcreateIconViewcreateTreeView refreshView constructViewdoFileOperation_doFileOperationgoDirsetGUICallbacksopenTerminalHerecloseTab
newTabHeredelmoveInitcopyInitoperationFinalnewFilenewDirrenameFurlGoTogoHomeexecuteopenupDir goHistoryPrev goHistoryNextbase
Data.MaybemaybeJP9jbBxsJhEESDy3dIrKSHData.Default.ClassDefaultcatchIObindirlibdirdatadir
2016-06-01 19:32:51 +02:00
libexecdir
sysconfdirHzfdl18tXfeBwxizKcgL0m#Graphics.UI.Gtk.ModelView.ListStore ListStoreGHC.IO.Exception userError