Safe Haskell | Safe-Infered |
---|
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.
- data IDE = IDE {
- frameState :: FrameState IDEM
- recentPanes :: [PaneName]
- specialKeys :: SpecialKeyTable IDERef
- specialKey :: SpecialKeyCons IDERef
- candy :: CandyTable
- prefs :: Prefs
- workspace :: Maybe Workspace
- activePack :: Maybe IDEPackage
- bufferProjCache :: Map FilePath (Maybe IDEPackage)
- allLogRefs :: [LogRef]
- currentEBC :: (Maybe LogRef, Maybe LogRef, Maybe LogRef)
- currentHist :: Int
- systemInfo :: Maybe GenScope
- packageInfo :: Maybe (GenScope, GenScope)
- workspaceInfo :: Maybe (GenScope, GenScope)
- workspInfoCache :: PackageDescrCache
- handlers :: Map String [(Unique, IDEEvent -> IDEM IDEEvent)]
- 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
- type IDERef = IORef IDE
- type IDEM = ReaderT IDERef IO
- type IDEAction = IDEM ()
- data IDEEvent
- = InfoChanged Bool
- | UpdateWorkspaceInfo
- | SelectInfo String Bool
- | SelectIdent Descr
- | LogMessage String LogTag
- | RecordHistory GUIHistory
- | Sensitivity [(SensitivityMask, Bool)]
- | SearchMeta String
- | StartFindInitial
- | GotoDefinition Descr
- | LoadSession FilePath
- | SaveSession FilePath
- | UpdateRecent
- | VariablesChanged
- | ErrorChanged
- | CurrentErrorChanged (Maybe LogRef)
- | BreakpointChanged
- | CurrentBreakChanged (Maybe LogRef)
- | TraceChanged
- | GetTextPopup (Maybe (IDERef -> Menu -> IO ()))
- | StatusbarChanged [StatusbarCompartment]
- | WorkspaceChanged Bool Bool
- 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 {
- ipdPackageId :: PackageIdentifier
- ipdCabalFile :: FilePath
- ipdDepends :: [Dependency]
- ipdModules :: Map ModuleName BuildInfo
- ipdHasLibs :: Bool
- ipdTests :: [String]
- ipdMain :: [(FilePath, BuildInfo, Bool)]
- ipdExtraSrcs :: Set FilePath
- ipdSrcDirs :: [FilePath]
- ipdExtensions :: [Extension]
- ipdConfigFlags :: [String]
- ipdBuildFlags :: [String]
- ipdTestFlags :: [String]
- ipdHaddockFlags :: [String]
- ipdExeFlags :: [String]
- ipdInstallFlags :: [String]
- ipdRegisterFlags :: [String]
- ipdUnregisterFlags :: [String]
- ipdSdistFlags :: [String]
- data Workspace = Workspace {
- wsVersion :: Int
- wsSaveTime :: String
- wsName :: String
- wsFile :: FilePath
- wsPackages :: [IDEPackage]
- wsPackagesFiles :: [FilePath]
- wsActivePackFile :: Maybe FilePath
- wsNobuildPack :: [IDEPackage]
- data ActionDescr alpha = AD {}
- type ActionString = String
- type KeyString = String
- data Prefs = Prefs {
- prefsFormat :: Int
- prefsSaveTime :: String
- showLineNumbers :: Bool
- rightMargin :: (Bool, Int)
- tabWidth :: Int
- wrapLines :: Bool
- sourceCandy :: (Bool, String)
- keymapName :: String
- forceLineEnds :: Bool
- removeTBlanks :: Bool
- textviewFont :: Maybe String
- sourceStyle :: (Bool, String)
- foundBackground :: Color
- contextBackground :: Color
- breakpointBackground :: Color
- autoLoad :: Bool
- useYi :: Bool
- logviewFont :: Maybe String
- defaultSize :: (Int, Int)
- browser :: String
- pathForCategory :: [(String, PanePath)]
- defaultPath :: PanePath
- categoryForPane :: [(String, String)]
- packageBlacklist :: [Dependency]
- collectAtStart :: Bool
- useCtrlTabFlipping :: Bool
- docuSearchURL :: String
- completeRestricted :: Bool
- saveAllBeforeBuild :: Bool
- jumpToWarnings :: Bool
- backgroundBuild :: Bool
- runUnitTests :: Bool
- makeMode :: Bool
- singleBuildWithoutLinking :: Bool
- dontInstallLast :: Bool
- printEvldWithShow :: Bool
- breakOnException :: Bool
- breakOnError :: Bool
- printBindResult :: Bool
- serverIP :: String
- serverPort :: Int
- sourceDirectories :: [FilePath]
- unpackDirectory :: Maybe FilePath
- retrieveURL :: String
- retrieveStrategy :: RetrieveStrategy
- endWithLastConn :: Bool
- data LogRefType
- = WarningRef
- | ErrorRef
- | BreakpointRef
- | ContextRef
- data LogRef = LogRef {}
- logRefFilePath :: LogRef -> FilePath
- logRefFullFilePath :: LogRef -> FilePath
- isError :: LogRef -> Bool
- isBreakpoint :: LogRef -> Bool
- displaySrcSpan :: SrcSpan -> [Char]
- colorHexString :: Color -> [Char]
- data SearchHint
- newtype CandyTable = CT (CandyTableForth, CandyTableBack)
- type CandyTableForth = [(Bool, String, String)]
- type CandyTableBack = [(String, String, Int)]
- newtype KeymapI = KM (Map ActionString [(Maybe (Either KeyString (KeyString, KeyString)), Maybe String)])
- 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 {}
- data LogTag
- type GUIHistory = (GUIHistory', GUIHistory')
- data GUIHistory'
- = ModuleSelected { }
- | ScopeSelected { }
- | InfoElementSelected { }
- | PaneSelected { }
- data SensitivityMask
- data SearchMode
- data StatusbarCompartment
Documentation
The IDE state
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 IDEAction = IDEM ()Source
A shorthand for a reader monad for a mutable reference to the IDE state which does not return a value
liftIDE :: IDEM a -> WorkspaceM aSource
type WorkspaceM = ReaderT Workspace IDEMSource
type WorkspaceAction = WorkspaceM ()Source
runWorkspace :: WorkspaceM a -> Workspace -> IDEM aSource
type PackageM = ReaderT IDEPackage IDEMSource
type PackageAction = PackageM ()Source
runPackage :: PackageM a -> IDEPackage -> IDEM aSource
type DebugAction = DebugM ()Source
data IDEPackage Source
IDEPackage | |
|
Workspace | |
|
data ActionDescr alpha Source
ActionDescr is a data structure from which GtkActions are build, which are used for menus, toolbars, and accelerator keystrokes
type ActionString = StringSource
Preferences is a data structure to hold configuration data
data LogRefType Source
Other types
LogRef | |
|
isBreakpoint :: LogRef -> BoolSource
displaySrcSpan :: SrcSpan -> [Char]Source
colorHexString :: Color -> [Char]Source
newtype CandyTable Source
type CandyTableForth = [(Bool, String, String)]Source
type CandyTableBack = [(String, String, Int)]Source
type SpecialKeyTable alpha = Map (KeyVal, [Modifier]) (Map (KeyVal, [Modifier]) (ActionDescr alpha))Source
type SpecialKeyCons alpha = Maybe (Map (KeyVal, [Modifier]) (ActionDescr alpha), String)Source
type ModuleDescrCache = Map ModuleName (ClockTime, Maybe FilePath, ModuleDescr)Source
data CompletionWindow Source
type GUIHistory = (GUIHistory', GUIHistory')Source
the first one is the new and the second the old state
data SensitivityMask Source
data SearchMode Source