Skip to content
Dominique Lasserre edited this page Sep 2, 2013 · 1 revision

There are two basic parts of the project. Valama is the actual IDE, Guanako is a reusable Vala auto-completion engine.

Valama

The IDE code is located in src/.

General

Directory Purpose
Main files. Program entry point, build up user interface.
buildsystem/ Build system plugins.
common/ Reusable components/functions for several program parts.
dialogs/ Application dialogs.
project/ Valama project related code.
ui/ User interface plugins.

UI components

Sources located in src/ui/.

File Purpose
app_output.vala Handle output of started applications.
breakpoints.vala Manage breakpoints/stepping.
build_output.vala Handle output of build system.
project_browser.vala GUI component for displaying and modifying a project's structure (files and packages).
reports.vala List syntax errors in source code.
search.vala Search text in source files.
source_viewer.vala Display of source file.
super_source_view.vala Source viewer abstraction.
symbol_browser.vala Show all available symbols (namespaces, classes, etc.).
ui_elements.vala Abstract UiElement class which all major UI components are based on (allows multithreaded GUI building)
welcome_screen.vala Initial screen.

Guanako

Sources located in guanako/.

guanako/data/syntax contains the syntax rules Guanako uses to generate completion proposals.

File / directory Purpose
guanako_frankenstein.vala Provides stepping through code.
guanako_helpers.vala Various smaller helper functions.
guanako_iterators.vala Provides functions for recursively iterating through a symbol's child symbols or a subroutine's statements.
guanako.vala Contains the actual completion logic and provides the Guanako project class.
reporter.vala Vala error interface.
scanner/ Upstream import from libvala to extend functionality (tracking of defines).
Clone this wiki locally