-- Hoogle documentation, generated by Haddock
-- See Hoogle, http://www.haskell.org/hoogle/


-- | Haskell IDE written in Haskell
--   
--   An Integrated Development Environment for Haskell written in Haskell.
@package leksah
@version 0.12.1.3

module IDE.YiConfig
defaultYiConfig :: Config
data Config
data Control
data ControlM a
data YiM a
start :: Config -> (Control -> IO a) -> IO a
runControl :: ControlM a -> Control -> IO a
liftYi :: YiM a -> ControlM a


-- | The core state of ide. This module is imported from every other
--   module, | and all data structures of the state are declared here, to
--   avoid circular | module dependencies.
module IDE.Core.Types

-- | The IDE state
data IDE
IDE :: FrameState IDEM -> [PaneName] -> SpecialKeyTable IDERef -> SpecialKeyCons IDERef -> CandyTable -> Prefs -> Maybe Workspace -> Maybe IDEPackage -> Map FilePath (Maybe IDEPackage) -> [LogRef] -> (Maybe LogRef, Maybe LogRef, Maybe LogRef) -> Int -> (Maybe GenScope) -> (Maybe (GenScope, GenScope)) -> (Maybe (GenScope, GenScope)) -> PackageDescrCache -> Map String [(Unique, IDEEvent -> IDEM IDEEvent)] -> IDEState -> (Bool, [GUIHistory], Int) -> (Bool, Maybe (Toolbar, ListStore String)) -> (Bool, Maybe Toolbar) -> [FilePath] -> [FilePath] -> Maybe ProcessHandle -> Maybe (IDEPackage, ToolState) -> ((Int, Int), Maybe CompletionWindow) -> Control -> Maybe Handle -> IDE

-- | state of the windows framework
frameState :: IDE -> FrameState IDEM

-- | a list of panes which were selected last
recentPanes :: IDE -> [PaneName]

-- | a structure for emacs like keystrokes
specialKeys :: IDE -> SpecialKeyTable IDERef

-- | the first of a double keystroke
specialKey :: IDE -> SpecialKeyCons IDERef

-- | table for source candy
candy :: IDE -> CandyTable

-- | configuration preferences
prefs :: IDE -> Prefs

-- | may be a workspace (set of packages)
workspace :: IDE -> Maybe Workspace
activePack :: IDE -> Maybe IDEPackage
bufferProjCache :: IDE -> Map FilePath (Maybe IDEPackage)
allLogRefs :: IDE -> [LogRef]
currentEBC :: IDE -> (Maybe LogRef, Maybe LogRef, Maybe LogRef)
currentHist :: IDE -> Int

-- | the system scope
systemInfo :: IDE -> (Maybe GenScope)

-- | the second are the imports
packageInfo :: IDE -> (Maybe (GenScope, GenScope))

-- | the second are the imports
workspaceInfo :: IDE -> (Maybe (GenScope, GenScope))
workspInfoCache :: IDE -> PackageDescrCache

-- | event handling table
handlers :: IDE -> Map String [(Unique, IDEEvent -> IDEM IDEEvent)]
currentState :: IDE -> IDEState
guiHistory :: IDE -> (Bool, [GUIHistory], Int)
findbar :: IDE -> (Bool, Maybe (Toolbar, ListStore String))
toolbar :: IDE -> (Bool, Maybe Toolbar)
recentFiles :: IDE -> [FilePath]
recentWorkspaces :: IDE -> [FilePath]
runningTool :: IDE -> Maybe ProcessHandle
debugState :: IDE -> Maybe (IDEPackage, ToolState)
completion :: IDE -> ((Int, Int), Maybe CompletionWindow)
yiControl :: IDE -> Control
server :: IDE -> Maybe Handle
data IDEState

-- | Leksah is in startup mode
IsStartingUp :: IDEState

-- | Leksah is about to go down
IsShuttingDown :: IDEState

-- | Leksah is running
IsRunning :: IDEState

-- | The flipper is used to switch between sources
IsFlipping :: TreeView -> IDEState

-- | The completion feature is used
IsCompleting :: Connections -> IDEState

-- | A mutable reference to the IDE state
type IDERef = IORef IDE

-- | The IDE Monad
type IDEM = ReaderT IDERef IO

-- | A shorthand for a reader monad for a mutable reference to the IDE
--   state which does not return a value
type IDEAction = IDEM ()
data IDEEvent
InfoChanged :: Bool -> IDEEvent
UpdateWorkspaceInfo :: IDEEvent
SelectInfo :: String -> Bool -> IDEEvent
SelectIdent :: Descr -> IDEEvent
LogMessage :: String -> LogTag -> IDEEvent
RecordHistory :: GUIHistory -> IDEEvent
Sensitivity :: [(SensitivityMask, Bool)] -> IDEEvent
SearchMeta :: String -> IDEEvent
StartFindInitial :: IDEEvent
GotoDefinition :: Descr -> IDEEvent
LoadSession :: FilePath -> IDEEvent
SaveSession :: FilePath -> IDEEvent
UpdateRecent :: IDEEvent
VariablesChanged :: IDEEvent
ErrorChanged :: IDEEvent
CurrentErrorChanged :: (Maybe LogRef) -> IDEEvent
BreakpointChanged :: IDEEvent
CurrentBreakChanged :: (Maybe LogRef) -> IDEEvent
TraceChanged :: IDEEvent
GetTextPopup :: (Maybe (IDERef -> Menu -> IO ())) -> IDEEvent
StatusbarChanged :: [StatusbarCompartment] -> IDEEvent

-- | showPane updateFileCache
WorkspaceChanged :: Bool -> Bool -> IDEEvent
liftIDE :: IDEM a -> WorkspaceM a
(?>>=) :: Monad m => (m (Maybe a)) -> (a -> m ()) -> m ()
type WorkspaceM = ReaderT Workspace IDEM
type WorkspaceAction = WorkspaceM ()
runWorkspace :: WorkspaceM a -> Workspace -> IDEM a
type PackageM = ReaderT IDEPackage IDEM
type PackageAction = PackageM ()
runPackage :: PackageM a -> IDEPackage -> IDEM a
type DebugM = ReaderT (IDEPackage, ToolState) IDEM
type DebugAction = DebugM ()
runDebug :: DebugM a -> (IDEPackage, ToolState) -> IDEM a
data IDEPackage
IDEPackage :: PackageIdentifier -> FilePath -> [Dependency] -> Map ModuleName BuildInfo -> Bool -> [String] -> [(FilePath, BuildInfo, Bool)] -> Set FilePath -> [FilePath] -> [Extension] -> [String] -> [String] -> [String] -> [String] -> [String] -> [String] -> [String] -> [String] -> [String] -> IDEPackage
ipdPackageId :: IDEPackage -> PackageIdentifier
ipdCabalFile :: IDEPackage -> FilePath
ipdDepends :: IDEPackage -> [Dependency]
ipdModules :: IDEPackage -> Map ModuleName BuildInfo
ipdHasLibs :: IDEPackage -> Bool
ipdTests :: IDEPackage -> [String]
ipdMain :: IDEPackage -> [(FilePath, BuildInfo, Bool)]
ipdExtraSrcs :: IDEPackage -> Set FilePath
ipdSrcDirs :: IDEPackage -> [FilePath]
ipdExtensions :: IDEPackage -> [Extension]
ipdConfigFlags :: IDEPackage -> [String]
ipdBuildFlags :: IDEPackage -> [String]
ipdTestFlags :: IDEPackage -> [String]
ipdHaddockFlags :: IDEPackage -> [String]
ipdExeFlags :: IDEPackage -> [String]
ipdInstallFlags :: IDEPackage -> [String]
ipdRegisterFlags :: IDEPackage -> [String]
ipdUnregisterFlags :: IDEPackage -> [String]
ipdSdistFlags :: IDEPackage -> [String]
data Workspace
Workspace :: Int -> String -> String -> FilePath -> [IDEPackage] -> [FilePath] -> Maybe FilePath -> [IDEPackage] -> Workspace
wsVersion :: Workspace -> Int
wsSaveTime :: Workspace -> String
wsName :: Workspace -> String
wsFile :: Workspace -> FilePath
wsPackages :: Workspace -> [IDEPackage]
wsPackagesFiles :: Workspace -> [FilePath]
wsActivePackFile :: Workspace -> Maybe FilePath
wsNobuildPack :: Workspace -> [IDEPackage]

-- | ActionDescr is a data structure from which GtkActions are build, which
--   are used for menus, toolbars, and accelerator keystrokes
data ActionDescr alpha
AD :: ActionString -> String -> Maybe String -> Maybe String -> ReaderT alpha IO () -> [KeyString] -> Bool -> ActionDescr alpha
name :: ActionDescr alpha -> ActionString
label :: ActionDescr alpha -> String
tooltip :: ActionDescr alpha -> Maybe String
stockID :: ActionDescr alpha -> Maybe String
action :: ActionDescr alpha -> ReaderT alpha IO ()
accelerator :: ActionDescr alpha -> [KeyString]
isToggle :: ActionDescr alpha -> Bool
type ActionString = String
type KeyString = String

-- | Preferences is a data structure to hold configuration data
data Prefs
Prefs :: Int -> String -> Bool -> (Bool, Int) -> Int -> Bool -> (Bool, String) -> String -> Bool -> Bool -> Maybe String -> (Bool, String) -> Color -> Color -> Color -> Bool -> Bool -> Maybe String -> (Int, Int) -> String -> [(String, PanePath)] -> PanePath -> [(String, String)] -> [Dependency] -> Bool -> Bool -> String -> Bool -> Bool -> Bool -> Bool -> Bool -> Bool -> Bool -> Bool -> Bool -> Bool -> Bool -> Bool -> String -> Int -> [FilePath] -> Maybe FilePath -> String -> RetrieveStrategy -> Bool -> Prefs
prefsFormat :: Prefs -> Int
prefsSaveTime :: Prefs -> String
showLineNumbers :: Prefs -> Bool
rightMargin :: Prefs -> (Bool, Int)
tabWidth :: Prefs -> Int
wrapLines :: Prefs -> Bool
sourceCandy :: Prefs -> (Bool, String)
keymapName :: Prefs -> String
forceLineEnds :: Prefs -> Bool
removeTBlanks :: Prefs -> Bool
textviewFont :: Prefs -> Maybe String
sourceStyle :: Prefs -> (Bool, String)
foundBackground :: Prefs -> Color
contextBackground :: Prefs -> Color
breakpointBackground :: Prefs -> Color
autoLoad :: Prefs -> Bool
useYi :: Prefs -> Bool
logviewFont :: Prefs -> Maybe String
defaultSize :: Prefs -> (Int, Int)
browser :: Prefs -> String
pathForCategory :: Prefs -> [(String, PanePath)]
defaultPath :: Prefs -> PanePath
categoryForPane :: Prefs -> [(String, String)]
packageBlacklist :: Prefs -> [Dependency]
collectAtStart :: Prefs -> Bool
useCtrlTabFlipping :: Prefs -> Bool
docuSearchURL :: Prefs -> String
completeRestricted :: Prefs -> Bool
saveAllBeforeBuild :: Prefs -> Bool
jumpToWarnings :: Prefs -> Bool
backgroundBuild :: Prefs -> Bool
runUnitTests :: Prefs -> Bool
makeMode :: Prefs -> Bool
singleBuildWithoutLinking :: Prefs -> Bool
dontInstallLast :: Prefs -> Bool
printEvldWithShow :: Prefs -> Bool
breakOnException :: Prefs -> Bool
breakOnError :: Prefs -> Bool
printBindResult :: Prefs -> Bool
serverIP :: Prefs -> String
serverPort :: Prefs -> Int
sourceDirectories :: Prefs -> [FilePath]
unpackDirectory :: Prefs -> Maybe FilePath
retrieveURL :: Prefs -> String
retrieveStrategy :: Prefs -> RetrieveStrategy
endWithLastConn :: Prefs -> Bool

-- | Other types
data LogRefType
WarningRef :: LogRefType
ErrorRef :: LogRefType
BreakpointRef :: LogRefType
ContextRef :: LogRefType
data LogRef
LogRef :: SrcSpan -> IDEPackage -> String -> (Int, Int) -> LogRefType -> LogRef
logRefSrcSpan :: LogRef -> SrcSpan
logRefPackage :: LogRef -> IDEPackage
refDescription :: LogRef -> String
logLines :: LogRef -> (Int, Int)
logRefType :: LogRef -> LogRefType
logRefFilePath :: LogRef -> FilePath
logRefFullFilePath :: LogRef -> FilePath
isError :: LogRef -> Bool
isBreakpoint :: LogRef -> Bool
displaySrcSpan :: SrcSpan -> [Char]
colorHexString :: Color -> [Char]
data SearchHint
Forward :: SearchHint
Backward :: SearchHint
Insert :: SearchHint
Delete :: SearchHint
Initial :: SearchHint
newtype CandyTable
CT :: (CandyTableForth, CandyTableBack) -> CandyTable
type CandyTableForth = [(Bool, String, String)]
type CandyTableBack = [(String, String, Int)]
newtype KeymapI
KM :: (Map ActionString [(Maybe (Either KeyString (KeyString, KeyString)), Maybe String)]) -> KeymapI
type SpecialKeyTable alpha = Map (KeyVal, [Modifier]) (Map (KeyVal, [Modifier]) (ActionDescr alpha))
type SpecialKeyCons alpha = Maybe (Map (KeyVal, [Modifier]) (ActionDescr alpha), String)
type PackageDescrCache = Map PackageIdentifier ModuleDescrCache
type ModuleDescrCache = Map ModuleName (ClockTime, Maybe FilePath, ModuleDescr)
data CompletionWindow
CompletionWindow :: Window -> TreeView -> ListStore String -> CompletionWindow
cwWindow :: CompletionWindow -> Window
cwTreeView :: CompletionWindow -> TreeView
cwListStore :: CompletionWindow -> ListStore String
data LogTag
LogTag :: LogTag
ErrorTag :: LogTag
FrameTag :: LogTag
InputTag :: LogTag
InfoTag :: LogTag

-- | the first one is the new and the second the old state
type GUIHistory = (GUIHistory', GUIHistory')
data GUIHistory'
ModuleSelected :: Maybe ModuleName -> Maybe String -> GUIHistory'
moduleS :: GUIHistory' -> Maybe ModuleName
facetS :: GUIHistory' -> Maybe String
ScopeSelected :: Scope -> Bool -> GUIHistory'
scope :: GUIHistory' -> Scope
blacklist :: GUIHistory' -> Bool
InfoElementSelected :: Maybe Descr -> GUIHistory'
mbInfo :: GUIHistory' -> Maybe Descr
PaneSelected :: Maybe (String) -> GUIHistory'
paneN :: GUIHistory' -> Maybe (String)
data SensitivityMask
SensitivityForwardHist :: SensitivityMask
SensitivityBackwardHist :: SensitivityMask
SensitivityProjectActive :: SensitivityMask
SensitivityWorkspaceOpen :: SensitivityMask
SensitivityError :: SensitivityMask
SensitivityEditor :: SensitivityMask
SensitivityInterpreting :: SensitivityMask
data SearchMode
Exact :: Bool -> SearchMode
caseSense :: SearchMode -> Bool
Prefix :: Bool -> SearchMode
caseSense :: SearchMode -> Bool
Regex :: Bool -> SearchMode
caseSense :: SearchMode -> Bool
data StatusbarCompartment
CompartmentCommand :: String -> StatusbarCompartment
CompartmentPane :: (Maybe (IDEPane IDEM)) -> StatusbarCompartment
CompartmentPackage :: String -> StatusbarCompartment
CompartmentState :: String -> StatusbarCompartment
CompartmentOverlay :: Bool -> StatusbarCompartment
CompartmentBufferPos :: (Int, Int) -> StatusbarCompartment
CompartmentBuild :: Bool -> StatusbarCompartment
CompartmentCollect :: Bool -> StatusbarCompartment
instance Eq IDEPackage
instance Show Workspace
instance Eq Prefs
instance Show Prefs
instance Eq SearchHint
instance Eq LogRefType
instance Show LogRefType
instance Eq LogRef
instance Eq GUIHistory'
instance Ord GUIHistory'
instance Show GUIHistory'
instance Eq SensitivityMask
instance Ord SensitivityMask
instance Show SensitivityMask
instance Eq SearchMode
instance Ord SearchMode
instance Read SearchMode
instance Show SearchMode
instance Show LogRef
instance Ord Modifier
instance Ord IDEPackage
instance Show IDEPackage
instance EventSelector String
instance EventSource IDERef IDEEvent IDEM String
instance Event IDEEvent String


-- | The core state of ide. This module is imported from every other
--   module, | and all data structures of the state are declared here, to
--   avoid circular | module dependencies.
module IDE.Core.State
window :: FrameState delta -> Window
errorRefs :: IDE -> [LogRef]
breakpointRefs :: IDE -> [LogRef]
contextRefs :: IDE -> [LogRef]
currentError :: IDE -> Maybe LogRef
currentBreak :: IDE -> Maybe LogRef
currentContext :: IDE -> Maybe LogRef
setCurrentError :: Maybe LogRef -> ReaderT IDERef IO ()
setCurrentBreak :: Maybe LogRef -> ReaderT IDERef IO ()
setCurrentContext :: Maybe LogRef -> IDEM ()
isInterpreting :: IDEM Bool
isStartingOrClosing :: IDEState -> Bool
triggerEventIDE :: IDEEvent -> IDEM IDEEvent
deactivatePane :: IDEAction

-- | Read an attribute of the contents
readIDE :: (IDE -> beta) -> IDEM beta

-- | Variation on modifyIDE_ that lets you return a value
modifyIDE :: (IDE -> (IDE, beta)) -> IDEM beta

-- | Modify the contents, without returning a value
modifyIDE_ :: (IDE -> IDE) -> IDEM ()
withIDE :: (IDE -> IO alpha) -> IDEM alpha
getIDE :: IDEM (IDE)
throwIDE :: String -> a

-- | A reader monad for a mutable reference to the IDE state
reifyIDE :: (IDERef -> IO a) -> IDEM a
reflectIDE :: IDEM a -> IDERef -> IO a
reflectIDEI :: Iteratee a IDEM b -> IDERef -> Iteratee a IO b
catchIDE :: Exception e => IDEM a -> (e -> IO a) -> IDEM a
postSyncIDE :: IDEM a -> IDEM a
postAsyncIDE :: IDEM () -> IDEM ()
forkIDE :: IDEAction -> IDEAction
sysMessage :: MonadIO m => MessageLevel -> String -> m ()
data MessageLevel
Silent :: MessageLevel
Normal :: MessageLevel
High :: MessageLevel
ideMessage :: MessageLevel -> String -> IDEAction
logMessage :: String -> LogTag -> IDEAction
withoutRecordingDo :: IDEAction -> IDEAction
activeProjectDir :: IDEM FilePath
changePackage :: IDEPackage -> IDEAction
liftYiControl :: ControlM a -> IDEM a
liftYi :: YiM a -> IDEM a
instance Typeable IDEException
instance Eq MessageLevel
instance Ord MessageLevel
instance Show MessageLevel
instance Exception IDEException
instance Show IDEException
instance PaneMonad IDEM


-- | Module for handling keymaps, | deals with gtk accelerators and double
--   (emacs-like) keystrokes
module IDE.Keymap
class Keymap alpha
parseKeymap :: Keymap alpha => FilePath -> IO alpha
setKeymap :: Keymap alpha => alpha -> [ActionDescr IDERef] -> [ActionDescr IDERef]
buildSpecialKeys :: Keymap alpha => alpha -> [ActionDescr IDERef] -> IO (SpecialKeyTable IDERef)
instance Keymap KeymapI


module IDE.Utils.GUIUtils
chooseFile :: Window -> String -> Maybe FilePath -> IO (Maybe FilePath)
chooseDir :: Window -> String -> Maybe FilePath -> IO (Maybe FilePath)
chooseSaveFile :: Window -> String -> Maybe FilePath -> IO (Maybe FilePath)
openBrowser :: String -> IDEAction
getCandyState :: PaneMonad alpha => alpha Bool
setCandyState :: PaneMonad alpha => Bool -> alpha ()
getForgetSession :: PaneMonad alpha => alpha (Bool)
getBackgroundBuildToggled :: PaneMonad alpha => alpha (Bool)
setBackgroundBuildToggled :: PaneMonad alpha => Bool -> alpha ()
getRunUnitTests :: PaneMonad alpha => alpha (Bool)
setRunUnitTests :: PaneMonad alpha => Bool -> alpha ()
getMakeModeToggled :: PaneMonad alpha => alpha (Bool)
setMakeModeToggled :: PaneMonad alpha => Bool -> alpha ()
getDebugToggled :: PaneMonad alpha => alpha (Bool)
setDebugToggled :: PaneMonad alpha => Bool -> alpha ()
getRecentFiles, getRecentWorkspaces :: IDEM MenuItem
controlIsPressed :: Event -> Bool
stockIdFromType :: DescrType -> StockId
mapControlCommand :: t -> t


module IDE.TextEditor
data EditorBuffer
GtkEditorBuffer :: SourceBuffer -> EditorBuffer
data EditorView
GtkEditorView :: SourceView -> EditorView
data EditorMark
GtkEditorMark :: TextMark -> EditorMark
data EditorIter
GtkEditorIter :: TextIter -> EditorIter
data EditorTagTable
GtkEditorTagTable :: TextTagTable -> EditorTagTable
data EditorTag
GtkEditorTag :: TextTag -> EditorTag
newGtkBuffer :: Maybe FilePath -> String -> IDEM EditorBuffer
newYiBuffer :: Maybe FilePath -> String -> IDEM EditorBuffer
simpleGtkBuffer :: String -> IDEM EditorBuffer
applyTagByName :: EditorBuffer -> String -> EditorIter -> EditorIter -> IDEM ()
beginNotUndoableAction :: EditorBuffer -> IDEM ()
beginUserAction :: EditorBuffer -> IDEM ()
canRedo :: EditorBuffer -> IDEM Bool
canUndo :: EditorBuffer -> IDEM Bool
copyClipboard :: EditorBuffer -> Clipboard -> IDEM ()
createMark :: EditorBuffer -> EditorIter -> Bool -> IDEM EditorMark
cutClipboard :: EditorBuffer -> Clipboard -> Bool -> IDEM ()
delete :: EditorBuffer -> EditorIter -> EditorIter -> IDEM ()
deleteSelection :: EditorBuffer -> Bool -> Bool -> IDEM ()
endNotUndoableAction :: EditorBuffer -> IDEM ()
endUserAction :: EditorBuffer -> IDEM ()
getEndIter :: EditorBuffer -> IDEM EditorIter
getInsertMark :: EditorBuffer -> IDEM EditorMark
getInsertIter :: EditorBuffer -> IDEM EditorIter
getIterAtLine :: EditorBuffer -> Int -> IDEM EditorIter
getIterAtMark :: EditorBuffer -> EditorMark -> IDEM EditorIter
getIterAtOffset :: EditorBuffer -> Int -> IDEM EditorIter
getLineCount :: EditorBuffer -> IDEM Int
getModified :: EditorBuffer -> IDEM Bool
getSelectionBoundMark :: EditorBuffer -> IDEM EditorMark
getSelectionBounds :: EditorBuffer -> IDEM (EditorIter, EditorIter)
getSlice :: EditorBuffer -> EditorIter -> EditorIter -> Bool -> IDEM String
getStartIter :: EditorBuffer -> IDEM EditorIter
getTagTable :: EditorBuffer -> IDEM EditorTagTable
getText :: EditorBuffer -> EditorIter -> EditorIter -> Bool -> IDEM String
hasSelection :: EditorBuffer -> IDEM Bool
insert :: EditorBuffer -> EditorIter -> String -> IDEM ()
moveMark :: EditorBuffer -> EditorMark -> EditorIter -> IDEM ()
newView :: EditorBuffer -> Maybe String -> IDEM EditorView
pasteClipboard :: EditorBuffer -> Clipboard -> EditorIter -> Bool -> IDEM ()
placeCursor :: EditorBuffer -> EditorIter -> IDEM ()
redo :: EditorBuffer -> IDEM ()
removeTagByName :: EditorBuffer -> String -> EditorIter -> EditorIter -> IDEM ()
selectRange :: EditorBuffer -> EditorIter -> EditorIter -> IDEM ()
setModified :: EditorBuffer -> Bool -> IDEM ()
setStyle :: EditorBuffer -> Maybe String -> IDEM ()
setText :: EditorBuffer -> String -> IDEM ()
undo :: EditorBuffer -> IDEM ()
bufferToWindowCoords :: EditorView -> (Int, Int) -> IDEM (Int, Int)
drawTabs :: EditorView -> IDEM ()
getBuffer :: EditorView -> IDEM EditorBuffer
getDrawWindow :: EditorView -> IDEM DrawWindow
getIterLocation :: EditorView -> EditorIter -> IDEM Rectangle
getOverwrite :: EditorView -> IDEM Bool
getScrolledWindow :: EditorView -> IDEM ScrolledWindow
grabFocus :: EditorView -> IDEM ()
scrollToMark :: EditorView -> EditorMark -> Double -> Maybe (Double, Double) -> IDEM ()
scrollToIter :: EditorView -> EditorIter -> Double -> Maybe (Double, Double) -> IDEM ()
setFont :: EditorView -> Maybe String -> IDEM ()
setIndentWidth :: EditorView -> Int -> IDEM ()
setWrapMode :: EditorView -> Bool -> IDEM ()
setRightMargin :: EditorView -> Maybe Int -> IDEM ()
setShowLineNumbers :: EditorView -> Bool -> IDEM ()
setTabWidth :: EditorView -> Int -> IDEM ()
backwardCharC :: EditorIter -> IDEM EditorIter
backwardFindCharC :: EditorIter -> (Char -> Bool) -> Maybe EditorIter -> IDEM (Maybe EditorIter)
backwardWordStartC :: EditorIter -> IDEM (Maybe EditorIter)
backwardToLineStartC :: EditorIter -> IDEM EditorIter
endsWord :: EditorIter -> IDEM Bool
forwardCharC :: EditorIter -> IDEM EditorIter
forwardCharsC :: EditorIter -> Int -> IDEM EditorIter
forwardFindCharC :: EditorIter -> (Char -> Bool) -> Maybe EditorIter -> IDEM (Maybe EditorIter)
forwardToLineEndC :: EditorIter -> IDEM EditorIter
forwardWordEndC :: EditorIter -> IDEM (Maybe EditorIter)
forwardSearch :: EditorIter -> String -> [TextSearchFlags] -> Maybe EditorIter -> IDEM (Maybe (EditorIter, EditorIter))
getChar :: EditorIter -> IDEM (Maybe Char)
getCharsInLine :: EditorIter -> IDEM Int
getLine :: EditorIter -> IDEM Int
getLineOffset :: EditorIter -> IDEM Int
getOffset :: EditorIter -> IDEM Int
isStart :: EditorIter -> IDEM Bool
isEnd :: EditorIter -> IDEM Bool
iterEqual :: EditorIter -> EditorIter -> IDEM Bool
startsLine :: EditorIter -> IDEM Bool
atEnd :: EditorIter -> IDEM EditorIter
atLine :: EditorIter -> Int -> IDEM EditorIter
atLineOffset :: EditorIter -> Int -> IDEM EditorIter
atOffset :: EditorIter -> Int -> IDEM EditorIter
atStart :: EditorIter -> IDEM EditorIter
newTag :: EditorTagTable -> String -> IDEM EditorTag
lookupTag :: EditorTagTable -> String -> IDEM (Maybe EditorTag)
background :: EditorTag -> Color -> IDEM ()
underline :: EditorTag -> Underline -> IDEM ()
afterFocusIn :: EditorView -> IDEM () -> IDEM [Connection]
afterModifiedChanged :: EditorBuffer -> IDEM () -> IDEM [Connection]
afterMoveCursor :: EditorView -> IDEM () -> IDEM [Connection]
afterToggleOverwrite :: EditorView -> IDEM () -> IDEM [Connection]
onButtonPress :: EditorView -> (Event -> IDEM Bool) -> IDEM [Connection]
onButtonRelease :: EditorView -> (Event -> IDEM Bool) -> IDEM [Connection]
onCompletion :: EditorView -> IDEM () -> IDEM () -> IDEM [Connection]
onKeyPress :: EditorView -> (String -> [Modifier] -> KeyVal -> IDEM Bool) -> IDEM [Connection]
onKeyRelease :: EditorView -> (String -> [Modifier] -> KeyVal -> IDEM Bool) -> IDEM [Connection]
onLookupInfo :: EditorView -> IDEM () -> IDEM [Connection]
onMotionNotify :: EditorView -> (Double -> Double -> [Modifier] -> IDEM Bool) -> IDEM [Connection]
onLeaveNotify :: EditorView -> (IDEM Bool) -> IDEM [Connection]
onPopulatePopup :: EditorView -> (Menu -> IDEM ()) -> IDEM [Connection]


module IDE.SourceCandy
parseCandy :: FilePath -> IO CandyTable
transformToCandy :: CandyTable -> EditorBuffer -> (String -> Bool) -> IDEM ()
transformFromCandy :: CandyTable -> EditorBuffer -> IDEM ()
keystrokeCandy :: CandyTable -> Maybe Char -> EditorBuffer -> (String -> Bool) -> IDEM ()
getCandylessText :: CandyTable -> EditorBuffer -> IDEM String
getCandylessPart :: CandyTable -> EditorBuffer -> EditorIter -> EditorIter -> IDEM String
stringToCandy :: CandyTable -> String -> IDEM String
positionToCandy :: CandyTable -> EditorBuffer -> (Int, Int) -> IDEM (Int, Int)
positionFromCandy :: CandyTable -> EditorBuffer -> (Int, Int) -> IDEM (Int, Int)


-- | Server functionality
module IDE.Utils.ServerConnection
doServerCommand :: ServerCommand -> (ServerAnswer -> IDEM alpha) -> IDEAction


-- | This module provides the infos collected by the server before
module IDE.Metainfo.Provider

-- | Lookup of an identifier description
getIdentifierDescr :: (SymbolTable alpha, SymbolTable beta) => String -> alpha -> beta -> [Descr]

-- | Lookup of an identifiers starting with the specified prefix and return
--   a list.
getIdentifiersStartingWith :: (SymbolTable alpha, SymbolTable beta) => String -> alpha -> beta -> [String]
getCompletionOptions :: String -> IDEM [String]
getDescription :: String -> IDEM String
getActivePackageDescr :: IDEM (Maybe PackageDescr)

-- | Searching of metadata
searchMeta :: Scope -> String -> SearchMode -> IDEM [Descr]

-- | Update and initialize metadata for the world -- Called at startup
initInfo :: IDEAction -> IDEAction
updateSystemInfo :: IDEAction
rebuildSystemInfo :: IDEAction
updateWorkspaceInfo :: IDEAction
rebuildWorkspaceInfo :: IDEAction
getPackageInfo :: IDEM (Maybe (GenScope, GenScope))
getWorkspaceInfo :: IDEM (Maybe (GenScope, GenScope))
getSystemInfo :: IDEM (Maybe GenScope)

-- | Only exported items
getPackageImportInfo :: IDEPackage -> IDEM (Maybe (GenScope, GenScope))


module IDE.Completion
complete :: EditorView -> Bool -> IDEAction
cancel :: IDEAction
setCompletionSize :: (Int, Int) -> IDEAction


module IDE.BufferMode

-- | A text editor pane description
data IDEBuffer
IDEBuffer :: Maybe FilePath -> String -> Int -> EditorView -> ScrolledWindow -> IORef (Maybe (ClockTime)) -> Mode -> IDEBuffer
fileName :: IDEBuffer -> Maybe FilePath
bufferName :: IDEBuffer -> String
addedIndex :: IDEBuffer -> Int
sourceView :: IDEBuffer -> EditorView
scrolledWindow :: IDEBuffer -> ScrolledWindow
modTime :: IDEBuffer -> IORef (Maybe (ClockTime))
mode :: IDEBuffer -> Mode
data BufferState
BufferState :: FilePath -> Int -> BufferState
BufferStateTrans :: String -> String -> Int -> BufferState
maybeActiveBuf :: IDEM (Maybe IDEBuffer)
lastActiveBufferPane :: IDEM (Maybe PaneName)
recentSourceBuffers :: IDEM [PaneName]
getStartAndEndLineOfSelection :: EditorBuffer -> IDEM (Int, Int)
inBufContext :: alpha -> IDEBuffer -> (Notebook -> EditorBuffer -> IDEBuffer -> Int -> IDEM alpha) -> IDEM alpha
inActiveBufContext :: alpha -> (Notebook -> EditorBuffer -> IDEBuffer -> Int -> IDEM alpha) -> IDEM alpha
doForSelectedLines :: [a] -> (EditorBuffer -> Int -> IDEM a) -> IDEM [a]
data Mode
Mode :: String -> IDEAction -> IDEAction -> IDEM (Maybe String) -> ((String -> Bool) -> IDEAction) -> ((String -> Bool) -> EditorBuffer -> IDEAction) -> IDEAction -> (Maybe Char -> (String -> Bool) -> IDEAction) -> (String -> EditorIter -> EditorBuffer -> IDEAction) -> (String -> Bool) -> Mode
modeName :: Mode -> String
modeEditComment :: Mode -> IDEAction
modeEditUncomment :: Mode -> IDEAction
modeSelectedModuleName :: Mode -> IDEM (Maybe String)
modeEditToCandy :: Mode -> (String -> Bool) -> IDEAction
modeTransformToCandy :: Mode -> (String -> Bool) -> EditorBuffer -> IDEAction
modeEditFromCandy :: Mode -> IDEAction
modeEditKeystrokeCandy :: Mode -> Maybe Char -> (String -> Bool) -> IDEAction
modeEditInsertCode :: Mode -> String -> EditorIter -> EditorBuffer -> IDEAction
modeEditInCommentOrString :: Mode -> String -> Bool

-- | Assumes
modFromFileName :: Maybe FilePath -> Mode
haskellMode :: Mode
literalHaskellMode :: Mode
cabalMode :: Mode
otherMode :: Mode
isHaskellMode :: Mode -> Bool
withCurrentMode :: alpha -> (Mode -> IDEM alpha) -> IDEM alpha
editComment :: IDEAction
editUncomment :: IDEAction
selectedModuleName :: IDEM (Maybe String)
editToCandy :: IDEAction
editFromCandy :: IDEAction
editKeystrokeCandy :: Maybe Char -> IDEAction
editInsertCode :: EditorBuffer -> EditorIter -> String -> IDEAction
instance Typeable BufferState
instance Typeable IDEBuffer
instance Eq BufferState
instance Ord BufferState
instance Read BufferState
instance Show BufferState
instance Pane IDEBuffer IDEM


-- | Module for saving, restoring and editing projectFlags
module IDE.Pane.PackageFlags
readFlags :: FilePath -> IDEPackage -> IO IDEPackage
writeFlags :: FilePath -> IDEPackage -> IO ()
data IDEFlags
IDEFlags :: VBox -> IDEFlags
flagsBox :: IDEFlags -> VBox
data FlagsState
getFlags :: Maybe PanePath -> IDEM IDEFlags
instance Typeable IDEFlags
instance Typeable FlagsState
instance Eq FlagsState
instance Ord FlagsState
instance Read FlagsState
instance Show FlagsState
instance RecoverablePane IDEFlags FlagsState IDEM
instance Pane IDEFlags IDEM


-- | The pane of ide where metadata searches can be done
module IDE.Pane.Search

-- | A search pane description
data IDESearch
IDESearch :: ScrolledWindow -> TreeView -> ListStore Descr -> IORef Scope -> IORef SearchMode -> VBox -> Entry -> (Scope -> IDEAction) -> (SearchMode -> IDEAction) -> (String -> IDEAction) -> ([Descr] -> IDEAction) -> IDESearch
scrolledView :: IDESearch -> ScrolledWindow
treeView :: IDESearch -> TreeView
searchStore :: IDESearch -> ListStore Descr
searchScopeRef :: IDESearch -> IORef Scope
searchModeRef :: IDESearch -> IORef SearchMode
topBox :: IDESearch -> VBox
entry :: IDESearch -> Entry
scopeSelection :: IDESearch -> Scope -> IDEAction
modeSelection :: IDESearch -> SearchMode -> IDEAction
searchMetaGUI :: IDESearch -> String -> IDEAction
setChoices :: IDESearch -> [Descr] -> IDEAction
data SearchState
buildSearchPane :: IDEM (Maybe IDESearch, Connections)
getSearch :: Maybe PanePath -> IDEM IDESearch
instance Typeable IDESearch
instance Typeable SearchState
instance Eq SearchState
instance Ord SearchState
instance Read SearchState
instance Show SearchState
instance RecoverablePane IDESearch SearchState IDEM
instance Pane IDESearch IDEM


-- | Builds and updates the Statusbar, To update the bar triiger the
--   Statusbar changed event.
module IDE.Statusbar
changeStatusbar :: [StatusbarCompartment] -> IDEAction
buildStatusbar :: IO HBox


-- | The source editor part of Leksah
module IDE.SymbolNavigation
createHyperLinkSupport :: SourceView -> ScrolledWindow -> (Bool -> Bool -> TextIter -> IO (TextIter, TextIter)) -> (Bool -> Bool -> String -> IO ()) -> IO [Connection]
mapControlCommand :: t -> t
instance Ord Locality
instance Eq Locality
instance Show Locality


-- | The source editor part of Leksah
module IDE.Pane.SourceBuffer

-- | A text editor pane description
data IDEBuffer
IDEBuffer :: Maybe FilePath -> String -> Int -> EditorView -> ScrolledWindow -> IORef (Maybe (ClockTime)) -> Mode -> IDEBuffer
fileName :: IDEBuffer -> Maybe FilePath
bufferName :: IDEBuffer -> String
addedIndex :: IDEBuffer -> Int
sourceView :: IDEBuffer -> EditorView
scrolledWindow :: IDEBuffer -> ScrolledWindow
modTime :: IDEBuffer -> IORef (Maybe (ClockTime))
mode :: IDEBuffer -> Mode
data BufferState
BufferState :: FilePath -> Int -> BufferState
BufferStateTrans :: String -> String -> Int -> BufferState
allBuffers :: IDEM [IDEBuffer]
maybeActiveBuf :: IDEM (Maybe IDEBuffer)
selectSourceBuf :: FilePath -> IDEM (Maybe IDEBuffer)
goToSourceDefinition :: FilePath -> Maybe Location -> IDEM (Maybe IDEBuffer)
goToDefinition :: Descr -> IDEAction
insertInBuffer :: Descr -> IDEAction
fileNew :: IDEAction
fileOpenThis :: FilePath -> IDEAction
fileOpen :: IDEAction
fileRevert :: IDEAction
fileClose :: IDEM Bool
fileCloseAll :: (IDEBuffer -> IDEM Bool) -> IDEM Bool
fileCloseAllButPackage :: IDEAction
fileCloseAllButWorkspace :: IDEAction
fileSave :: Bool -> IDEM Bool
fileSaveAll :: (IDEBuffer -> IDEM Bool) -> IDEM Bool
fileSaveBuffer :: Bool -> Notebook -> EditorBuffer -> IDEBuffer -> Int -> IDEM Bool
fileCheckAll :: (IDEBuffer -> IDEM (Maybe alpha)) -> IDEM [alpha]
editUndo :: IDEAction
editRedo :: IDEAction
editCut :: IDEAction
editCopy :: IDEAction
editPaste :: IDEAction
editDelete :: IDEAction
editSelectAll :: IDEAction
editComment :: IDEAction
editUncomment :: IDEAction
editShiftRight :: IDEAction
editShiftLeft :: IDEAction
editToCandy :: IDEAction
editFromCandy :: IDEAction
editKeystrokeCandy :: Maybe Char -> IDEAction
editCandy :: ReaderT IDERef IO ()
markRefInSourceBuf :: Int -> IDEBuffer -> LogRef -> Bool -> IDEAction
inBufContext :: alpha -> IDEBuffer -> (Notebook -> EditorBuffer -> IDEBuffer -> Int -> IDEM alpha) -> IDEM alpha
inActiveBufContext :: alpha -> (Notebook -> EditorBuffer -> IDEBuffer -> Int -> IDEM alpha) -> IDEM alpha
align :: Char -> IDEAction
startComplete :: IDEAction
selectedText :: IDEM (Maybe String)
selectedTextOrCurrentLine :: IDEM (Maybe String)
insertTextAfterSelection :: String -> IDEAction
selectedModuleName :: IDEM (Maybe String)
selectedLocation :: IDEM (Maybe (Int, Int))
recentSourceBuffers :: IDEM [PaneName]
newTextBuffer :: PanePath -> String -> Maybe FilePath -> IDEM (Maybe IDEBuffer)

-- | Returns the package, to which this buffer belongs, if possible
belongsToPackage :: IDEBuffer -> IDEM (Maybe IDEPackage)
belongsToWorkspace :: IDEBuffer -> ReaderT IDERef IO Bool
getIdentifierUnderCursorFromIter :: (EditorIter, EditorIter) -> IDEM (EditorIter, EditorIter)
instance Eq CharacterCategory
instance RecoverablePane IDEBuffer BufferState IDEM


-- | Module for editing of cabal packages and build infos
module IDE.Pane.PackageEditor
packageNew' :: Maybe FilePath -> (Bool -> FilePath -> IDEAction) -> IDEAction
packageEdit :: PackageAction
choosePackageDir :: Window -> Maybe FilePath -> IO (Maybe FilePath)
choosePackageFile :: Window -> Maybe FilePath -> IO (Maybe FilePath)
hasConfigs :: GenericPackageDescription -> Bool
standardSetup :: [Char]
instance Typeable PackagePane
instance Typeable PackageState
instance Read PackageState
instance Show PackageState
instance Show Library'
instance Eq Library'
instance Show Executable'
instance Eq Executable'
instance Show Test'
instance Eq Test'
instance Eq PackageDescriptionEd
instance Default BuildType
instance Default SourceRepo
instance Default RepoKind
instance Default RepoType
instance Default Executable
instance Default Library
instance Default BuildInfo
instance Default CompilerFlavor
instance Default Test'
instance Default Executable'
instance Default Library'
instance RecoverablePane PackagePane PackageState IDEM
instance Pane PackagePane IDEM


-- | Help for constructing import statements
module IDE.ImportTool

-- | Add all imports which gave error messages ...
resolveErrors :: IDEAction

-- | Add import for current error ...
addOneImport :: IDEAction

-- | Add one missing import Returns a boolean, if the process should be
--   stopped in case of multiple addition Returns a list of already added
--   descrs, so that it will not be added two times and can be used for
--   default selection
addImport :: LogRef -> [Descr] -> ((Bool, [Descr]) -> IDEAction) -> IDEAction
addPackage :: LogRef -> IDEM Bool
parseNotInScope :: String -> (Maybe NotInScopeParseResult)
parseHiddenModule :: String -> (Maybe HiddenModuleResult)
data HiddenModuleResult
HiddenModuleResult :: String -> PackageId -> HiddenModuleResult
hiddenModule :: HiddenModuleResult -> String
missingPackage :: HiddenModuleResult -> PackageId
instance Eq NotInScopeParseResult
instance Eq HiddenModuleResult
instance Show HiddenModuleResult


-- | Log pane
module IDE.Pane.Log

-- | The Log pane
data IDELog
IDELog :: TextView -> ScrolledWindow -> IDELog
textView :: IDELog -> TextView
scrolledWindowL :: IDELog -> ScrolledWindow
data LogState
data LogTag
LogTag :: LogTag
ErrorTag :: LogTag
FrameTag :: LogTag
InputTag :: LogTag
InfoTag :: LogTag
showLog :: IDEAction
clearLog :: IDEAction
getLog :: IDEM IDELog
appendLog :: IDELog -> String -> LogTag -> IO Int
markErrorInLog :: IDELog -> (Int, Int) -> IO ()
readOut :: IDELog -> Handle -> IO ()
readErr :: IDELog -> Handle -> IO ()
runExternal :: FilePath -> [String] -> IO (Handle, Handle, Handle, ProcessHandle)
instance Typeable IDELog
instance Typeable LogState
instance Eq LogState
instance Ord LogState
instance Read LogState
instance Show LogState
instance RecoverablePane IDELog LogState IDEM
instance Pane IDELog IDEM


-- | The pane of ide that shows a list of all the files in the workspace
module IDE.Pane.Files

-- | A files pane description
data IDEFiles
IDEFiles :: ScrolledWindow -> TreeView -> TreeStore FileRecord -> IDEFiles
scrolledView :: IDEFiles -> ScrolledWindow
treeView :: IDEFiles -> TreeView
fileStore :: IDEFiles -> TreeStore FileRecord
data FilesState
FilesState :: FilesState
getFiles :: Maybe PanePath -> IDEM IDEFiles
refreshFiles :: IDEAction
instance Typeable IDEFiles
instance Typeable FilesState
instance Eq FileRecord
instance Eq FilesState
instance Ord FilesState
instance Read FilesState
instance Show FilesState
instance RecoverablePane IDEFiles FilesState IDEM
instance Pane IDEFiles IDEM


module IDE.NotebookFlipper
flipDown :: IDEAction
flipUp :: IDEAction


module IDE.LogRef
nextError :: IDEAction
previousError :: IDEAction
nextBreakpoint :: IDEAction
previousBreakpoint :: IDEAction
markLogRefs :: IDEAction
unmarkLogRefs :: IDEAction
defaultLineLogger :: IDELog -> ToolOutput -> IDEM Int
defaultLineLogger' :: IDELog -> ToolOutput -> IO Int
logOutputLines :: (IDELog -> ToolOutput -> IDEM a) -> Iteratee ToolOutput IDEM [a]
logOutputLines_ :: (IDELog -> ToolOutput -> IDEM a) -> Iteratee ToolOutput IDEM ()
logOutput :: Iteratee ToolOutput IDEM ()
logOutputForBuild :: IDEPackage -> Bool -> Bool -> Iteratee ToolOutput IDEM ()
logOutputForBreakpoints :: IDEPackage -> Iteratee ToolOutput IDEM ()
logOutputForSetBreakpoint :: IDEPackage -> Iteratee ToolOutput IDEM ()
logOutputForLiveContext :: IDEPackage -> Iteratee ToolOutput IDEM ()
logOutputForHistoricContext :: IDEPackage -> Iteratee ToolOutput IDEM ()
selectRef :: Maybe LogRef -> IDEAction
setBreakpointList :: [LogRef] -> IDEAction
showSourceSpan :: LogRef -> String
srcSpanParser :: CharParser () SrcSpan


-- | The pane of ide where grep results are displayed
module IDE.Pane.Grep

-- | A grep pane description
data IDEGrep
IDEGrep :: ScrolledWindow -> TreeView -> TreeStore GrepRecord -> MVar Bool -> MVar Bool -> IDEGrep
scrolledView :: IDEGrep -> ScrolledWindow
treeView :: IDEGrep -> TreeView
grepStore :: IDEGrep -> TreeStore GrepRecord
waitingGrep :: IDEGrep -> MVar Bool
activeGrep :: IDEGrep -> MVar Bool
grepWorkspace :: String -> Bool -> WorkspaceAction
data GrepState
GrepState :: GrepState
getGrep :: Maybe PanePath -> IDEM IDEGrep
instance Typeable IDEGrep
instance Typeable GrepState
instance Eq GrepState
instance Ord GrepState
instance Read GrepState
instance Show GrepState
instance RecoverablePane IDEGrep GrepState IDEM
instance Pane IDEGrep IDEM


-- | The packages methods of ide.
module IDE.Package
packageConfig :: PackageAction
packageConfig' :: IDEPackage -> (Bool -> IDEAction) -> IDEAction
buildPackage :: Bool -> Bool -> Bool -> IDEPackage -> (Bool -> IDEAction) -> IDEAction
packageDoc :: PackageAction
packageClean :: PackageAction
packageClean' :: IDEPackage -> (Bool -> IDEAction) -> IDEAction
packageCopy :: PackageAction
packageCopy' :: IDEPackage -> (Bool -> IDEAction) -> IDEAction
packageRun :: PackageAction
activatePackage :: Maybe IDEPackage -> IDEM ()
deactivatePackage :: IDEAction
packageInstallDependencies :: PackageAction
packageRegister :: PackageAction
packageRegister' :: IDEPackage -> (Bool -> IDEAction) -> IDEAction
packageTest :: PackageAction
packageTest' :: IDEPackage -> (Bool -> IDEAction) -> IDEAction
packageSdist :: PackageAction
packageOpenDoc :: PackageAction

-- | <ul>
--   <li>Utility functions/procedures, that have to do with packages</li>
--   </ul>
getPackageDescriptionAndPath :: IDEM (Maybe (PackageDescription, FilePath))
getEmptyModuleTemplate :: PackageDescription -> String -> IO String
getModuleTemplate :: String -> PackageDescription -> String -> String -> String -> IO String
addModuleToPackageDescr :: ModuleName -> Bool -> PackageAction
delModuleFromPackageDescr :: ModuleName -> PackageAction
backgroundBuildToggled :: IDEAction
runUnitTestsToggled :: IDEAction
makeModeToggled :: IDEAction
debugStart :: PackageAction
printBindResultFlag :: Bool -> String
breakOnErrorFlag :: Bool -> String
breakOnExceptionFlag :: Bool -> String
printEvldWithShowFlag :: Bool -> String
tryDebug :: DebugAction -> PackageAction
tryDebugQuiet :: DebugAction -> PackageAction
executeDebugCommand :: String -> (Iteratee ToolOutput IDEM ()) -> DebugAction
choosePackageFile :: Window -> Maybe FilePath -> IO (Maybe FilePath)
idePackageFromPath :: FilePath -> IDEM (Maybe IDEPackage)


-- | A pane which displays a list of errors
module IDE.Pane.Errors

-- | A breakpoints pane description
data IDEErrors
data ErrorsState
fillErrorList :: IDEAction
selectError :: Maybe LogRef -> IDEAction
getErrors :: Maybe PanePath -> IDEM IDEErrors
instance Typeable IDEErrors
instance Typeable ErrorsState
instance Eq ErrorsState
instance Ord ErrorsState
instance Read ErrorsState
instance Show ErrorsState
instance RecoverablePane IDEErrors ErrorsState IDEM
instance Pane IDEErrors IDEM


-- | The GUI stuff for infos
module IDE.Pane.Info

-- | An info pane description
data IDEInfo
data InfoState
setInfo :: Descr -> IDEAction
replayInfoHistory :: Maybe Descr -> IDEAction
openDocu :: IDEAction
instance Typeable IDEInfo
instance Typeable InfoState
instance Eq InfoState
instance Ord InfoState
instance Read InfoState
instance Show InfoState
instance RecoverablePane IDEInfo InfoState IDEM
instance Pane IDEInfo IDEM


-- | Simple build system for packages
module IDE.Build
data MakeSettings
MakeSettings :: Bool -> Bool -> Bool -> Bool -> Bool -> Bool -> Bool -> MakeSettings
msMakeMode :: MakeSettings -> Bool
msSingleBuildWithoutLinking :: MakeSettings -> Bool
msSaveAllBeforeBuild :: MakeSettings -> Bool
msBackgroundBuild :: MakeSettings -> Bool
msRunUnitTests :: MakeSettings -> Bool
msJumpToWarnings :: MakeSettings -> Bool
msDontInstallLast :: MakeSettings -> Bool

-- | a make operation
data MakeOp
MoConfigure :: MakeOp
MoBuild :: MakeOp
MoTest :: MakeOp
MoCopy :: MakeOp
MoRegister :: MakeOp
MoClean :: MakeOp
MoDocu :: MakeOp
MoOther :: String -> MakeOp
MoMetaInfo :: MakeOp
MoComposed :: [MakeOp] -> MakeOp
moNoOp :: MakeOp

-- | The interface to the build system Consumes settings, a list of targets
--   and a the operation to perform. The firstOp will be applied to the
--   first target The restOp will be applied to all other targets The
--   finishOp will be applied to the last target after any op succeeded,
--   but it is applied after restOp has been tried on the last target
makePackages :: MakeSettings -> [IDEPackage] -> MakeOp -> MakeOp -> MakeOp -> WorkspaceAction

-- | Take make settings from preferences
defaultMakeSettings :: Prefs -> MakeSettings
instance Eq MakeOp
instance Ord MakeOp
instance Show MakeOp
instance (Show alpha, Show beta) => Show (Chain alpha beta)


-- | Represents a workspace, a work unit, which can be composed of multiple
--   packages
module IDE.Workspaces

-- | Constructs a new workspace and makes it the current workspace
workspaceNew :: IDEAction
workspaceOpen :: IDEAction
workspaceTry :: WorkspaceAction -> IDEAction
workspaceOpenThis :: Bool -> Maybe FilePath -> IDEAction

-- | Closes a workspace
workspaceClose :: IDEAction
workspaceClean :: WorkspaceAction
workspaceMake :: WorkspaceAction
workspaceActivatePackage :: IDEPackage -> WorkspaceAction
workspaceAddPackage :: WorkspaceAction
workspaceAddPackage' :: FilePath -> WorkspaceM (Maybe IDEPackage)
workspaceRemovePackage :: IDEPackage -> WorkspaceAction
workspacePackageNew :: WorkspaceAction
workspaceTryQuiet :: WorkspaceAction -> IDEAction
workspaceNewHere :: FilePath -> IDEAction
packageTry :: PackageAction -> IDEAction
packageTryQuiet :: PackageAction -> IDEAction
backgroundMake :: IDEAction
makePackage :: PackageAction


-- | The toolbar for searching and replacing in a text buffer
module IDE.Find
toggleFindbar :: IDEAction
constructFindReplace :: IDEM Toolbar
hideFindbar :: IDEAction
showFindbar :: IDEAction
focusFindEntry :: IDEAction
editFindInc :: SearchHint -> IDEAction
editGotoLine :: IDEAction
data FindState
FindState :: String -> [String] -> String -> [String] -> Bool -> Bool -> Bool -> Bool -> Int -> FindState
entryStr :: FindState -> String
entryHist :: FindState -> [String]
replaceStr :: FindState -> String
replaceHist :: FindState -> [String]
caseSensitive :: FindState -> Bool
entireWord :: FindState -> Bool
wrapAround :: FindState -> Bool
regex :: FindState -> Bool
lineNr :: FindState -> Int
getFindState :: IDEM FindState
setFindState :: FindState -> IDEAction
editFind :: Bool -> Bool -> Bool -> Bool -> String -> String -> SearchHint -> IDEM Bool
showToolbar :: IDEAction
hideToolbar :: IDEAction
toggleToolbar :: IDEAction
instance Eq FindState
instance Ord FindState
instance Show FindState
instance Read FindState


-- | The pane of ide where modules are presented in tree form with their
--   packages and exports
module IDE.Pane.Modules

-- | A modules pane description
data IDEModules
IDEModules :: VBox -> HPaned -> TreeView -> TreeStore (String, Maybe (ModuleDescr, PackageDescr)) -> TreeView -> TreeStore Descr -> RadioButton -> RadioButton -> RadioButton -> CheckButton -> CheckButton -> IORef SelectionState -> IORef ExpanderState -> IDEModules
outer :: IDEModules -> VBox
paned :: IDEModules -> HPaned
treeView :: IDEModules -> TreeView
treeStore :: IDEModules -> TreeStore (String, Maybe (ModuleDescr, PackageDescr))
descrView :: IDEModules -> TreeView
descrStore :: IDEModules -> TreeStore Descr
packageScopeB :: IDEModules -> RadioButton
workspaceScopeB :: IDEModules -> RadioButton
systemScopeB :: IDEModules -> RadioButton
dependsB :: IDEModules -> CheckButton
blacklistB :: IDEModules -> CheckButton
oldSelection :: IDEModules -> IORef SelectionState
expanderState :: IDEModules -> IORef ExpanderState
data ModulesState
ModulesState :: Int -> (Scope, Bool) -> (Maybe ModuleName, Maybe String) -> ExpanderState -> ModulesState
selectIdentifier :: Descr -> Bool -> IDEAction
reloadKeepSelection :: Bool -> IDEAction
replaySelHistory :: Maybe ModuleName -> Maybe String -> IDEAction
replayScopeHistory :: Scope -> Bool -> IDEAction
addModule :: [([Char], b)] -> ReaderT IDEPackage (ReaderT IDERef IO) ()
instance Typeable ModulesState
instance Typeable IDEModules
instance Eq ExpanderState
instance Ord ExpanderState
instance Show ExpanderState
instance Read ExpanderState
instance Eq ModulesState
instance Ord ModulesState
instance Read ModulesState
instance Show ModulesState
instance Eq SelectionState
instance Ord SelectionState
instance Show SelectionState
instance Ord a => Ord (Tree a)
instance RecoverablePane IDEModules ModulesState IDEM
instance Pane IDEModules IDEM


-- | Recording the history for going back and forth
module IDE.GUIHistory
recordHistory :: GUIHistory -> IDEAction
historyBack :: IDEAction
historyForward :: IDEAction
withoutRecordingDo :: IDEAction -> IDEAction


module IDE.Pane.Workspace

-- | Nothing to remember here, everything comes from the IDE state
data WorkspaceState

-- | Workspace pane state
data IDEWorkspace
updateWorkspace :: Bool -> Bool -> IDEAction
getWorkspace :: Maybe PanePath -> IDEM IDEWorkspace
showWorkspace :: IDEAction
instance Typeable IDEWorkspace
instance Typeable WorkspaceState
instance Eq WorkspaceState
instance Ord WorkspaceState
instance Read WorkspaceState
instance Show WorkspaceState
instance RecoverablePane IDEWorkspace WorkspaceState IDEM
instance Pane IDEWorkspace IDEM


-- | The debug methods of ide.
module IDE.Debug
debugCommand :: String -> Iteratee ToolOutput IDEM () -> DebugAction
debugCommand' :: String -> Iteratee ToolOutput IDEM () -> DebugAction
debugToggled :: IDEAction
debugQuit :: IDEAction
debugExecuteSelection :: IDEAction
debugExecuteAndShowSelection :: IDEAction
debugSetBreakpoint :: IDEAction
debugDeleteAllBreakpoints :: IDEAction
debugDeleteBreakpoint :: String -> LogRef -> IDEAction
debugContinue :: IDEAction
debugAbandon :: IDEAction
debugStop :: IDEAction
debugStep :: IDEAction
debugStepExpression :: IDEAction
debugStepExpr :: Maybe String -> DebugAction
debugStepLocal :: IDEAction
debugStepModule :: IDEAction
debugTrace :: IDEAction
debugTraceExpression :: IDEAction
debugTraceExpr :: Maybe String -> DebugAction
debugHistory :: IDEAction
debugBack :: IDEAction
debugForward :: IDEAction
debugForce :: IDEAction
debugPrint :: IDEAction
debugSimplePrint :: IDEAction
debugShowBindings :: IDEAction
debugShowBreakpoints :: IDEAction
debugShowContext :: IDEAction
debugShowModules :: IDEAction
debugShowPackages :: IDEAction
debugShowLanguages :: IDEAction
debugInformation :: IDEAction
debugKind :: IDEAction
debugType :: IDEAction
debugSetPrintEvldWithShow :: Bool -> IDEAction
debugSetBreakOnException :: Bool -> IDEAction
debugSetBreakOnError :: Bool -> IDEAction
debugSetPrintBindResult :: Bool -> IDEAction


-- | Module for saving, restoring and editing preferences
module IDE.Pane.Preferences

-- | The Preferences Pane
data IDEPrefs
IDEPrefs :: VBox -> IDEPrefs
prefsBox :: IDEPrefs -> VBox
data PrefsState
readPrefs :: FilePath -> IO Prefs
writePrefs :: FilePath -> Prefs -> IO ()
defaultPrefs :: Prefs
prefsDescription :: FilePath -> [PackageIdentifier] -> FieldDescriptionPP Prefs IDEM
getPrefs :: Maybe PanePath -> IDEM IDEPrefs
instance Typeable IDEPrefs
instance Typeable PrefsState
instance Eq PrefsState
instance Ord PrefsState
instance Read PrefsState
instance Show PrefsState
instance RecoverablePane IDEPrefs PrefsState IDEM
instance Pane IDEPrefs IDEM


module IDE.Pane.Breakpoints

-- | A breakpoints pane description
data IDEBreakpoints
data BreakpointsState
fillBreakpointList :: IDEAction
selectBreak :: Maybe LogRef -> IDEAction
instance Typeable IDEBreakpoints
instance Typeable BreakpointsState
instance Eq BreakpointsState
instance Ord BreakpointsState
instance Read BreakpointsState
instance Show BreakpointsState
instance RecoverablePane IDEBreakpoints BreakpointsState IDEM
instance Pane IDEBreakpoints IDEM


module IDE.Pane.Trace

-- | A debugger pane description
data IDETrace
data TraceState
fillTraceList :: IDEAction
instance Typeable TraceState
instance Typeable IDETrace
instance Eq TraceState
instance Ord TraceState
instance Read TraceState
instance Show TraceState
instance RecoverablePane IDETrace TraceState IDEM
instance Pane IDETrace IDEM


module IDE.Pane.Variables

-- | A variables pane description
data IDEVariables
data VariablesState
fillVariablesList :: IDEAction
fillVariablesListQuiet :: IDEAction
instance Typeable IDEVariables
instance Typeable VariablesState
instance Eq VariablesState
instance Ord VariablesState
instance Read VariablesState
instance Show VariablesState
instance RecoverablePane IDEVariables VariablesState IDEM
instance Pane IDEVariables IDEM


-- | Module for saving and recovering the layout
module IDE.Session

-- | Get and save the current session
saveSession :: IDEAction
saveSessionAs :: FilePath -> Maybe FilePath -> IDEAction
saveSessionAsPrompt :: IDEAction

-- | Read and apply the saved layout
recoverSession :: FilePath -> IDEM (Bool, Bool)

-- | <ul>
--   <li>Implementation</li>
--   </ul>
sessionClosePane :: IDEAction
loadSession :: FilePath -> IDEAction
loadSessionPrompt :: IDEAction
instance Eq PaneState
instance Ord PaneState
instance Read PaneState
instance Show PaneState


module IDE.PaneGroups
showBrowser :: IDEAction
setSensitivityDebugger :: Bool -> IDEAction
showDebugger :: IDEAction


-- | Module for actions, menus and toolbars and the rest ...
module IDE.Command

-- | The Actions known to the system (they can be activated by keystrokes
--   or menus)
mkActions :: [ActionDescr IDERef]

-- | The menu description in XML Syntax as defined by GTK
menuDescription :: IO String

-- | Building the Menu
makeMenu :: UIManager -> [ActionDescr IDERef] -> String -> IDEAction
canQuit :: IDEM Bool

-- | Quit ide
quit :: IDEAction

-- | Show the about dialog
aboutDialog :: IO ()
buildStatusbar :: IO HBox
newIcons :: IO ()
setSensitivity :: [(SensitivityMask, Bool)] -> IDEAction
updateRecentEntries :: IDEAction

-- | Callback function for onKeyPress of the main window, so
--   <tt>preprocess</tt> any key
handleSpecialKeystrokes :: Event -> IDEM Bool

-- | Register handlers for IDE events
registerLeksahEvents :: IDEAction
instrumentWindow :: Window -> Prefs -> Widget -> IDEAction
instrumentSecWindow :: Window -> IDEAction

module IDE.OSX
applicationNew :: IO Application
updateMenu :: Application -> UIManager -> IDEM ()
applicationReady :: Application -> IO ()

module IDE.Leksah

-- | Main function
leksah :: Config -> IO ()
instance Show Flag
instance Eq Flag
