Anjuta Developers Reference Manual

### Naba Kumar

Copyright © 2004 Naba Kumar

This document may be distributed subject to the terms and conditions set forth in the Open Publication License, v1.0 or later (the latest version is presently available at http://www.opencontent.org/openpub/ )

Abstract

libanjuta is Anjuta IDE framework for developing Anjuta plugins.

Anjuta Architecture
  Plugins
Writing plugins
  Hello world plugin description, icon and UI files
  Hello world plugin
  Hello world advanced plugin
  Build setup
Plugin description file
New Project Wizard format
  Overview
  Wizard header
  Wizard pages
  Wizard content
  Wizard actions
libanjuta API
  AnjutaShell — Application shell interface
  AnjutaPreferences — Anjuta Prefereces system.
  AnjutaPreferencesDialog — Preferences dialog
  AnjutaUI — User Interface manager
  AnjutaStatus — Program status such as status message, progress etc.
  AnjutaPlugin — Anjuta plugin base class from which all plugins are derived.
  AnjutaPluginDescription — Plugin description from .plugin file
  AnjutaPluginHandle — Handle used by plugin manager to keep track of plugins.
  AnjutaPluginManager — Plugins management and activation
  AnjutaProfile — Profile is a collection of plugins
  AnjutaProfileManager — Managers a stack of plugins profiles
  Children management — Children management in Anjuta
  AnjutaLauncher — External process launcher with async input/output
  AnjutaSavePrompt — Save dialog prompt for unsaved data
  AnjutaSerializer — Data serializer
  AnjutaSession — Program session
  Utilities — Utility functions
  anjuta-marshal
  anjuta-enum-types
  Program resources — Application resource management
  AnjutaEncoding — Text encoding and decoding
  Debugging — Debug functions
libanjuta internal API
  glue-factory
  GluePlugin
  glue-cpp
  ESplash — Splash screen
  AnjutaCellRendererCaptionedImage — Captioned image cell renderer
Plugin interfaces
  IAnjutaBookmark — Bookmark interface
  IAnjutaBuildable — Implemented by plugins that can build
  IAnjutaCpuDebugger — CPU specific debugger interface
  IAnjutaDebugger — Debugger interface
  IAnjutaDebugManager — Interface for plugin that manages debuggers
  IAnjutaDocumentManager — Interface for plugin that manages all the editors
  IAnjutaEditorAssist — Editor assistance framework
  IAnjutaEditorCell — Text editor character cell
  IAnjutaEditorCellStyle — Text editor cell style interface
  IAnjutaEditorComment — Text editor comment interface
  IAnjutaEditorConvert — Text editor convert interface
  IAnjutaEditorFactory — Text editor factory that creates IAnjutaEditor objects
  IAnjutaEditorFolds — Text editor folds inteface
  IAnjutaEditorGoto — Text editor navigation interface
  IAnjutaEditor — Text editor interface
  IAnjutaEditorHover — Text editor hover interface
  IAnjutaEditorLanguage — Text editor language interface
  IAnjutaEditorLineMode — Text editor line mode
  IAnjutaEditorSelection — Text editor selection interface
  IAnjutaEditorView — Text editor view interface
  IAnjutaEditorZoom — Text editor zoom interface
  IAnjutaFile — Implemented by plugins that can open files.
  IAnjutaFileLoader — Loader to load files
  IAnjutaFileManager — File manager plugin
  IAnjutaFileSavable — Implemented by plugins that can save files.
  IAnjutaHelp — Implemented by plugins that can provide help support
  IAnjutaIndicable — Implemented by indicate that indicate a range
  IAnjutaIterable — Implemented by objects that can iterate
  IAnjutaIterableTree — Implemented by tree objects that can iterate
  IAnjutaLanguageSupport — Programming language specific supports from plugins
  IAnjutaLoader — Interface to load file or stream
  IAnjutaMacro — Macro processor interface
  IAnjutaMarkable — Implemented by editors (or views) with markers support
  IAnjutaMessageManager — The plugin that managers all message views
  IAnjutaMessageView — A view where messages of different kind can be shown
  IAnjutaPreferences — Preferences interface
  IAnjutaPrint — Print interface
  IAnjutaProjectManager — Interface for project managers
  IAnjutaStream — Implemented by plugins that can open file streams
  IAnjutaStreamLoader — Loader to load streams
  IAnjutaStreamSavable — Implemented by plugins that can save file streams
  IAnjutaSymbol — Source code symbol interface
  IAnjutaSymbolManager — Source code symbols manager inteface
  IAnjutaTerminal — Interface for command line terminals
  IAnjutaTodo — Task manager interface
  IAnjutaVariableDebugger — Variables interface for debuggers
  IAnjutaVcs — Version control system interface
  IAnjutaWizard — Interface for wizards that can create new stuffs
  libanjuta-iface-marshallers
Object Hierarchy