leksah-0.12.1.2: Haskell IDE written in Haskell

Safe HaskellSafe-Infered

IDE.Core.Types

Description

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.

Synopsis

Documentation

data IDE Source

The IDE state

Constructors

IDE 

Fields

frameState :: FrameState IDEM

state of the windows framework

recentPanes :: [PaneName]

a list of panes which were selected last

specialKeys :: SpecialKeyTable IDERef

a structure for emacs like keystrokes

specialKey :: SpecialKeyCons IDERef

the first of a double keystroke

candy :: CandyTable

table for source candy

prefs :: Prefs

configuration preferences

workspace :: Maybe Workspace

may be a workspace (set of packages)

activePack :: Maybe IDEPackage
 
bufferProjCache :: Map FilePath (Maybe IDEPackage)
 
allLogRefs :: [LogRef]
 
currentEBC :: (Maybe LogRef, Maybe LogRef, Maybe LogRef)
 
currentHist :: Int
 
systemInfo :: Maybe GenScope

the system scope

packageInfo :: Maybe (GenScope, GenScope)

the second are the imports

workspaceInfo :: Maybe (GenScope, GenScope)

the second are the imports

workspInfoCache :: PackageDescrCache
 
handlers :: Map String [(Unique, IDEEvent -> IDEM IDEEvent)]

event handling table

currentState :: IDEState
 
guiHistory :: (Bool, [GUIHistory], Int)
 
findbar :: (Bool, Maybe (Toolbar, ListStore String))
 
toolbar :: (Bool, Maybe Toolbar)
 
recentFiles :: [FilePath]
 
recentWorkspaces :: [FilePath]
 
runningTool :: Maybe ProcessHandle
 
debugState :: Maybe (IDEPackage, ToolState)
 
completion :: ((Int, Int), Maybe CompletionWindow)
 
yiControl :: Control
 
server :: Maybe Handle
 

data IDEState Source

Constructors

IsStartingUp

Leksah is in startup mode

IsShuttingDown

Leksah is about to go down

IsRunning

Leksah is running

IsFlipping TreeView

The flipper is used to switch between sources

IsCompleting Connections

The completion feature is used

type IDERef = IORef IDESource

A mutable reference to the IDE state

type IDEM = ReaderT IDERef IOSource

The IDE Monad

type IDEAction = IDEM ()Source

A shorthand for a reader monad for a mutable reference to the IDE state which does not return a value

(?>>=) :: Monad m => m (Maybe a) -> (a -> m ()) -> m ()Source

data ActionDescr alpha Source

ActionDescr is a data structure from which GtkActions are build, which are used for menus, toolbars, and accelerator keystrokes

logRefFullFilePathSource

Arguments

:: LogRef

The log ref

-> FilePath

the result

type GUIHistory = (GUIHistory', GUIHistory')Source

the first one is the new and the second the old state