IDA SDK
Public Attributes | List of all members
cli_t Struct Reference

Detailed Description

Command line interpreter.

Provides functionality for the command line (located at the bottom of the main window). Only GUI version of IDA supports CLIs.

Public Attributes

size_t size
 size of this structure
 
int32 flags
 CLI attributes
 
const char * sname
 short name (displayed on the button)
 
const char * lname
 long name (displayed in the menu)
 
const char * hint
 hint for the input line
 
bool(idaapiexecute_line )(const char *line)
 Callback: the user pressed Enter. More...
 
bool(idaapicomplete_line )(qstring *completion, const char *prefix, int n, const char *line, int x)
 Callback: the user pressed Tab. More...
 
bool(idaapikeydown )(qstring *line, int *p_x, int *p_sellen, int *p_vk_key, int shift)
 Callback: a keyboard key has been pressed. More...
 

Member Data Documentation

bool(idaapi * cli_t::execute_line) (const char *line)

Callback: the user pressed Enter.

CLI is free to execute the line immediately or ask for more lines.

Parameters
linecommand to execute (utf-8-encoded)
Return values
trueexecuted line
falseask for more lines
bool(idaapi * cli_t::complete_line) (qstring *completion, const char *prefix, int n, const char *line, int x)

Callback: the user pressed Tab.

This callback is optional.

Parameters
[out]completionresult of completion
prefixtext to complete
ncompletion number
lineentire command line, given as context information
xindex where 'prefix' starts in 'line'
Return values
truegenerated a new completion
falseotherwise
bool(idaapi * cli_t::keydown) (qstring *line, int *p_x, int *p_sellen, int *p_vk_key, int shift)

Callback: a keyboard key has been pressed.

This callback is optional. It is a generic callback and the CLI is free to do whatever it wants.

Parameters
linecurrent input line (in/out argument)
p_xpointer to current x coordinate of the cursor (in/out)
p_sellenpointer to current selection length (usually 0)
p_vk_keypointer to virtual key code (in/out). if the key has been handled, it should be reset to 0 by CLI
shiftshift state
Return values
truemodified input line or x coordinate or selection length
falseotherwise

The documentation for this struct was generated from the following file: