Files
hsfm/hsfm.haddock

97 lines
49 KiB
Plaintext
Raw Normal View History

<0C><><00><><00><><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!"$9;brTurns 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!"$9;bSafe!"$9;b !"#$


 !"#$
None!"$9;b 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!"$9;bAtomically write a TVar.Atomically modify a TVar.Safe!"$9;b'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!"$9;bBrowsing 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!"$9;b!"#$%&'()*+,-./0123456789:!"#$%&'()*+,-./0123456789::9876543210/.-,+*)('&%$#"!!"#$%&'()*+,-./0123456789: Safe!"$9;b;MCollision modes that describe the behavior in case a file collision
happens.<!fail if the target already existsA=Data type describing partial or complete file move operation.D=Data type describing partial or complete file copy operation.GcData type describing file operations.
Useful to build up a list of operations or delay operations.;<=>?@ABCDEFGHIJKLM;<?=>@ACBDFEGMHIJKLGHIJKLMDEFABC;<=>?@;<=>?@ABCDEFGHIJKLM
None!"$9;bNOPNOPNONOP None!"$9;bQLow-level file information.a<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.k6symlink madness,
we need to know where it points tom<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.n1Matches on symlinks pointing to directories only.o<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.p!Matches on broken symbolic links.q5Matches on symlinks pointing to file-like files only.rPMatches a list of any non-directory kind of files or symlinks
pointing to such.sBMatches a list of directories or symlinks pointing to directories.t?Matches on any non-directory kind of files, excluding symlinks.{'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 a5. 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 a constructorsAQRSTUVWXYZ[\]^_`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><00>@QRSTUVWXYZ[\]^_`abhcdefgijklmnopqrstuvwxyz{|}~<00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00>MabcdefghijijijklijijijijQRSTUVWXYZ[\]^_`uvwtsrxyzqponm<00>{|}~<00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00>'QRSTUVWXYZ[\]^_`abcdefghijijijklijijijijmnopqrstuvwxyz{|}~<00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00> None!"$9;b<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!"$9;b<00>8Set up the GUI. This only creates the permanent widgets.<00><00><00><00>None!"$9;b<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!"$9;b <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!"$9;b<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 !"$9;Tb<00><02>Carries out a file operation with the appropriate error handling
allowing the user to react to various exceptions with further input.;Helper that is invoked for any directory change operations.<00>whether to update the history<00><00><00>None!"$9;b!Where to start inserting plugins.>A list of plugins to add to the right-click menu at position
.<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. None!"$9;Lb<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!"$9;b( !"#$%&'()*+,--./0123456789:;<=>?@ABCDEFGHIJKLMN O P Q R S T U V U W X W Y Z [ \ ] ^ _
`
a
b c 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> 
             ! " # $ % & ' ( ) * + , -./0123456789:;<=>mainHSFM.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$fExceptionGtkException$fShowGtkExceptionversion getBinDir getLibDir getDynLibDir
getDataDir getLibexecDir getSysconfDirgetDataFileNameGtkIconIFolderSymLIFileIErrorgetIcongetSymlinkIcon writeTVarIO modifyTVarIOterminalCommandhomeBrowsingHistorybackwardsHistory
currentDirforwardHistorymaxSizehistoryNewPath historyBackhistoryForwardOpenTerminalKeyOpenTerminalModifier CloseTabKeyCloseTabModifier NewTabKeyNewTabModifierPasteKey PasteModifierMoveKey MoveModifierCopyKey CopyModifierOpenKey OpenModifier DeleteKeyDeleteModifierHistoryForwardKeyHistoryForwardModifierHistoryBackKeyHistoryBackModifierUpDirKey UpDirModifier ShowHiddenKeyShowHiddenModifierQuitKey QuitModifier FCollisonModeStrict Overwrite OverwriteAllSkipRenameMove PartialMoveCopy PartialCopy FileOperationFCopyFMoveFDeleteFOpenFExecuteNonec_strlen
noNullPtrs$fGlibStringByteStringFileInfodeviceIDfileIDfileMode linkCount fileOwner fileGroupspecialDeviceIDfileSize
accessTimemodificationTimestatusChangeTimeaccessTimeHiResmodificationTimeHiResstatusChangeTimeHiResFileDirRegFileSymLinkBlockDevCharDev NamedPipeSocketpathfvarsdestrawdest FileLikeOrSymDirSymDirOrSym BrokenSymlink FileLikeSym FileLikeListDirListFileLike sfileLikefileLikesdir brokenSymlink fileLikeSymdirSymreadFilereadDirectoryContents getContentsgoUpgoUp'comparingConstrisFileCisDirCisSymCisBlockCisCharCisNamedC isSocketC getFileInfoisBrokenSymlink packModTimepackAccessTime epochToStringpackPermissions packFileTypepackLinkDestination
getFPasStr $fOrdFile
$fShowFile$fEqFile$fShowFileInfo $fEqFileInfo $fOrdFileInfoItemFMView
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
sysconfdir unix-2.7.2.0System.Posix.Process.ByteString executeFile"gtk3-0.14.6-6C4RHjkKNnuAojAagYFLtD#Graphics.UI.Gtk.ModelView.ListStore ListStorebaseGHC.IO.Exception userError