Faq and documentation                                
Customer Information
    Licensing
     
Partners
    PaxScript
     
Product Information
    Downloads
    Features
    Screenshots
    Documents
     
Product Tutorials
    Overview
    How to Install
    How to embed
    Code Repository
   
   
   
   
   
   
   

PaxDebugger overview.

The philosophy under PaxDebugger is not to produce stand-alone projects; it means that with PaxDebugger you can't create full programs. The base idea under PaxDebugger is to create a VBA like environment, where script extends application, and make it customizable by the end-user, without deploy the whole developer environment (ex: Delphi).
PaxDebugger works on project. A project consists of code modules. Each module can be of any language supported by the instance of PaxDebugger that will use that module. Modules can be grouped into (logical) folders; each group contain zero or more modules. Each module can be deleted, moved from one group to another, moved up and down within the same group and so on. Each group can be renamed and deleted.
When a project is created, two groups and one module are created too. They are default items, and cannot be removed.
Code editor features Search&Replace, Undo/Redo, syntax highlight, much more. Each module can be setted as readonly, so checked and full working code can be protected from accidental errors.

PaxDebugger is a Delphi/Kylix component, that encapsulates PaxScripter and implements debugging facilities like breakpoints, watches and so on.
Once installed you can see PaxDebugger icon in the same tab where PaxScripter is in.
Lets have a look at the published properties, and their behavior.

ConfigFileName: is the filename where IDE settings will be saved and loaded. If filename hasn't got a path the application path is choosen. If this property will be left blank, a default filename (PaxDebugger.cfg) will be used. This file is a pure XML file, that contains all PaxDebugger environment visual settings.

DebugMode: PaxDebugger can be used in debugmode (property value TRUE) or in pure-execution mode (property value FALSE). When the component is in debugmode, the correspondent IDE can be visualized and all tools and facilities can be used. In pure-execution mode the IDE form can't be visible, breakpoints are ignored and user interaction is pretty absent. Pure-execution mode is usefull when all code has been debugged and script procedures can be safety called; this working mode may be used for industrial applications, where visuals are not usefull.

DefaultLanguage: is the default language used by debugger. There are several points where a language is to be specified; when a language option is not given, the default language will be choosen.

MenuOptions: they are a set of options used by debugger component to make menu items visible or invisible. These options are very usefull to make 'trial' versions of applications that use PaxDebugger. An example can be an application where 'Save Project' item is not enabled, so that kind of application can create projects but cannot save them.

ScreenParent: this is the TWinControl where the debugger IDE will be displayed. If blank, a separate form will be shown.

ShowMouseEvaluationHint: if TRUE, during debugging sessions, a tooltip will be shown. The expression under the mouse will be evaluated, and the tooltip text will be evaluation result (a la VBScript). Very usefull to quickly inspect local and global variables.

ShowToolbar: if TRUE, a toolbar under the IDE main menu will be present (visible). Thi toolbar contains shortcuts to the most used action (Compile, Toggle breakpoint, Step over, Trace into, etc).

Visible: if TRUE, the IDE will become visible. If FALSE, the IDE will hide. This property works only in debugmode. In pure-execution mode the IDE is always invisible.

PaxDebugger supports every (TPax)language. To make debugger support a language, just put the correspondent TPaxLanguage component in the same form where you putted PaxDebugger component. This is the same method used by PaxScripter component.
Now lets go on how to embed debugger into application.

 

 

 
  24 Nov 2004: PaxDebugger 1.3 is out ...
  8 Apr 2004: PaxDebugger 1.0 is out