wxsSourceDbPlugin - implements wxsSourceInfoPlugin interface. Implementation is based on b-tree database. Internally uses "SourceInfoDb" and "SourceChangeManager" classes, which are independent of wxStudio. The plugin can be setup to use parser for custom language, currently it instantiates C++/Java parser by default. Subscribes itself as wxsWorkplaceListener to receive notifications about changes in source files, and updates source-information database accordingly.

wxsProjectTree - derivative of wxTreeCtrl. Provides functionality, which is common to file/class/resource browsers. It reacts to addition/removal of subprojects by updating corresponding nodes in the tree. Provides hooks for the derived classes, which implement delayed-loading of items in the given project. E.g. class browser overrides it to loads class nodes when project node is expanded, and method nodes when class node is expanded.

Note: wxsProjectTree is not a plugin, but servers as functional (reusable) base class for implementing project-information browsers.

wxsClassViewPlugin - implements wxsComponent, wxsWorkplaceListener and  wxsSourceInfoListener interfaces. Controls instance wxsClassTree which is derivative of wxsProjectTree.

wxsFileViewPlugin - implements wxsComponent, wxsWorkplaceListener. Controls instance wxsFileTree which is derivative of wxsProjectTree. Receives commands from context-menu for inserting/removing files from selected project or subproject, requests are passed on to wxsWorkplace.

wxsWindowManagerPlugin - derivative of wxsPluginBase, implements wxsWorkplaceListener to receive notifications when file is opened for editinig. Hooks an instance wxsWMP_KeyMonitor onto a window of each opened file to intercept "Ctrl-Tab", "Ctrl-Enter" and Ctr+W" keystrokes. Implements switching of editor-windows in a stacked order, shows "Select window" dialog.

wxsContextLookupPlugin - derivative of wxsPluginBase, implements wxsWorkplaceListener to receive notifications when file is opened for editing. Hooks an instance wxsCLP_KeyMonitor onto a window of each opened file to intercept "Ctrl-L" and "Ctrl-Q" keystorke. Implements context-lookup dialog, definition<->declaration switching and generation of empty definitions from selected declarations. Retrieves necessary source-information by querying instance of wxsSourceInfoPlugin provided by workplace object.

wxsAutoCompletionPlugin - derivative of wxsPluginBase, implements wxsWorkplaceListener to receive notifications when file is opened for editing. Hooks an instance wxsTypingMonitor onto a window of every opened file to intercept ".", ">", ":" keys and "Ctrl-M" keystroke. Detects -> . :: operators and attempts to resolve the surrounding context by issuing queries to wxsSourceInfoPlugin.

wxsNativeEditorPlugin - implements wxsSourceEditorPlugin interface by wrapping functionality of wxTextCtrl.

wxsLSEditorPlugin - yet another implementation of wxsSourceEditorPlugin.

Document prepared by Aleksandras Gluchovas


SourceForge Logo