Files
hsfm/hsfm.haddock

97 lines
48 KiB
Plaintext
Raw Normal View History

<0C><><00>2<00>p<EFBFBD> 
    !"#$%&'()*+,-./0123456789: ; < = > ? @ A B C D E F G H I J K L M
N
O
P Q R S T U V W X Y Z [ \ ] ^ _ ` a b c d e f g h i j k l m n 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><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00>         
            Safe 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]Safe 35ZSafe 35Z



None 35Z Icon type we use in our GUI.<02>Gets an icon from the default icon theme and falls back to project-icons
if not found. The requested icon size is not guaranteed.  icon we want%which icon theme to get the icon fromrequested icon size    Safe 35ZAtomically write a TVar.Atomically modify a TVar.Safe 35Z'The terminal command. This should call , in the end
with the appropriate arguments.LThe home directory. If you want to set it explicitly, you might
want to do: home = return "/home/wurst"
current directory of the FMSafe 35ZBrowsing history. For  and (
the first item is the most recent one.This is meant to be called after e.g. a new path is entered
(not navigated to via the history) and the history needs updating. Go back one step in the history.#Go forward one step in the history.   None 35Z !"#$%&'()*+,-./0123456789 !"#$%&'()*+,-./0123456789 !"#$%&'()*+,-./0123456789 !"#$%&'()*+,-./0123456789 Safe 35Z:MCollision 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.C=Data type describing partial or complete file copy operation.FcData type describing file operations.
Useful to build up a list of operations or delay operations.:;<=>?@ABCDEFGHIJKL:;<=>?@ABCDEFGHIJKLFGHIJKLCDE@AB:;<=>?:;<=>?@ABCDEFGHIJKL
None 35ZMNOMNOMNMNO None 35ZPLow-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.f6symlink madness,
we need to know where it points tol?Matches on any non-directory kind of files, excluding symlinks.mBMatches a list of directories or symlinks pointing to directories.nPMatches a list of any non-directory kind of files or symlinks
pointing to such.o5Matches on symlinks pointing to file-like files only.p!Matches on broken symbolic links.q<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.r1Matches on symlinks pointing to directories only.s<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.z'Reads a file or directory Path into an  AnchoredFile5, filling the free
variables via the given function.{DGet the contents of a given directory and return them as a list
of  AnchoredFile.| A variant of {! where the second argument
is a `5. If a non-directory is passed returns an empty list.}0Go up one directory in the filesystem hierarchy.~0Go up one directory in the filesystem hierarchy.<00>Gets all file information.<00>WChecks if a symlink is broken by examining the constructor of the
symlink destination.,When called on a non-symlink, returns False.<00>)Pack the modification time into a string.<00>)Pack the modification time into a string.<00>APack the permissions into a string, similar to what "ls -l" does.<00>AFirst compare constructors: Failed < Dir < File...
2016-06-01 19:32:51 +02:00
Then compare name-...
Then compare free variable parameter of ` constructorsAPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{fills free a variable path to read|}~<00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00>@PQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~<00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00>M`adehijkbcbcbcfgbcbcbcbcPQRSTUVWXYZ[\]^_tuvlmnwxyopqrs<00>z{|}~<00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00>'PQRSTUVWXYZ[\]^_`adehijkbcbcbcfgbcbcbcbclmnopqrstuvwxyz{|}~<00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00> None 35Z<00>FM-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 WindowK<00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00>K<00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00>K<00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00> <00><00><00><00><00><00><00><00><00><00>
<00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><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  <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><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>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
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:! 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>!Where to start inserting plugins.<00>>A list of plugins to add to the right-click menu at position
<00>.<02>The left part of the triple is a function that returns the menuitem.
The middle part of the triple is a filter function that
decides whether the item is shown.
The right part of the triple is the callback, which is invoked
when the menu item is clicked.(Plugins are added in order of this list.<00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00> None 35FZ<00>ESet callbacks specific to a given view, on hotkeys, events and stuff.>Set callbacks for the whole gui, on hotkeys, events and stuff.?Closes the current tab, but only if there is more than one tab.Supposed to be used with withRows. Deletes a file or directory."Initializes a file move operation.Supposed to be used with withRows$. Initializes a file copy operation. 1Finalizes a file operation, such as copy or move.
Create a new file. Create a new directory. Go to the url given at the <00>) and visualize it in the given
treeView.$If the url is invalid, does nothing.Execute a given file.Supposed to be used with withRows. Opens a file or directory.5Go up one directory and visualize it in the treeView.Go "back" in the history.Go "forward" in the history.CShow backwards history in a drop-down menu, depending on the input.AShow forward history in a drop-down menu, depending on the input."TODO: hopefully this does not leak<00> 
   <00> 
   <00> 
   <00> 
   None 35Z" !"#$%&'()*+,,-./0123456789:;<=>?@ABCDEFGHIJKLM N O P Q R S T U T V W V X Y Z [ \ ] ^
_
`
a b b c d e f g h i j k l m n 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> <00> <00> <00> <00> <00> <00> <00> <00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00> 
                   ! " # $ % & '()*+,-./012345678mainHSFM.Utils.MyPreludeHSFM.GUI.Gtk.Errors
Paths_hsfmHSFM.GUI.Gtk.Icons HSFM.Utils.IO HSFM.Settings HSFM.HistoryHSFM.GUI.Gtk.SettingsHSFM.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.UtilsHSFM.GUI.Gtk.PluginsMain listIndices GtkExceptionUnknownDialogButton$fExceptionGtkExceptionversion getBinDir getLibDir getDynLibDir
getDataDir getLibexecDir getSysconfDirgetDataFileNameGtkIconIFolderSymLIFileIErrorgetIcongetSymlinkIcon writeTVarIO modifyTVarIOterminalCommandhomeBrowsingHistorybackwardsHistory
currentDirforwardHistorymaxSizehistoryNewPath historyBackhistoryForward QuitModifierQuitKeyShowHiddenModifier ShowHiddenKey UpDirModifierUpDirKeyHistoryBackModifierHistoryBackKeyHistoryForwardModifierHistoryForwardKeyDeleteModifier DeleteKey OpenModifierOpenKey CopyModifierCopyKey MoveModifierMoveKey PasteModifierPasteKeyNewTabModifier NewTabKeyCloseTabModifier CloseTabKeyOpenTerminalModifierOpenTerminalKey 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
getFPasStr $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 rcFileNewTab rcFileNewTerm rcFileCut
rcFileCopy rcFileRename rcFilePaste rcFileDeletercFilePropertyrcFileIconViewrcFileTreeViewMenuBar MkMenuBarmenubarFileQuitmenubarHelpAboutMyViewMkMyViewviewcwdrawModel sortedModel filteredModelinotifynotebookhistoryscrollviewBox backViewBupViewB forwardViewB homeViewB refreshViewBurlBarMyGUIMkMyGUIrootWinmenubar statusBarclearStatusBar notebook1 leftNbBtn
leftNbIcon notebook2
rightNbBtn rightNbIconfpropsettingsoperationBufferfmViewToContainersetViewCallbacks createMyGUIshowErrorDialogshowConfirmationDialogfileCollisionDialog renameDialogshowAboutDialogwithConfirmationDialogwithErrorDialogtextInputDialogshowFilePropertyDialoggetSelectedTreePathsgetSelectedItems withItems fileListStore getFirstItem getCurrentDir pushStatusBar popStatusbar rawPathToIter rawPathToItemnewTab createMyView
switchView destroyViewcreateIconViewcreateTreeView refreshView constructViewdoFileOperation_doFileOperationgoDir insertPos mypluginsdiffItem
diffFilter diffCallbacksetGUICallbacksopenTerminalHerecloseTabnewTab' opeInNewTabdelmoveInitcopyInitoperationFinalnewFilenewDirrenameFurlGoTogoHomeexecuteopenupDir goHistoryBackgoHistoryForwardmkHistoryMenuBmkHistoryMenuF showPopupcatchIObindirlibdir dynlibdirdatadir
2016-06-01 19:32:51 +02:00
libexecdir
sysconfdirunix_A3WgcI5QiHK4PDo4jSYdwQSystem.Posix.Process.ByteString executeFileE2qi0dnHhTO3i6zuj7fcBy#Graphics.UI.Gtk.ModelView.ListStore ListStorebaseGHC.IO.Exception userError