Classes | |
class | VariableListItem |
An item part of VariableListModel. More... | |
class | VariableListModel |
The backing model for the variable list widget, holds VariableListItem. More... | |
class | VariableListItemDelegate |
class | VariableList |
The main variable list dock widget. More... | |
class | VariableListSidebarWidgetType |
The main variable list dock widget. More... | |
Enumerations | |
enum class | VariableListItemType { VariableListItemType::LocalVariable , VariableListItemType::DataVariable } |
A variable list item can represent either a function-local variable, or a data variable referenced by the current function. More... | |
class VariableListItem |
An item part of VariableListModel.
Public Member Functions | |
VariableListItem (FunctionRef func, BinaryNinja::Variable var, BinaryNinja::PossibleValueSet pvs, bool hasUidf, std::string name) | |
Create a new VariableListItem of the LocalVariable type. More... | |
VariableListItem (FunctionRef func, BinaryNinja::DataVariable dataVar, uint64_t refPoint, std::string name) | |
Create a new VariableListItem of the DataVariable type. More... | |
VariableListItemType | type () const |
Get the type of this list item. More... | |
std::string | name () const |
Get the represented variable's display name. More... | |
std::string | constantValue () const |
Get the data variable's value; use with data variable items only. More... | |
BinaryNinja::PossibleValueSet | possibleValueSet () const |
Get the variable possible value set; use with local variable items only. More... | |
bool | hasUidf () const |
Is the PVS user-provided? Use with local variable items only. More... | |
std::vector< BinaryNinja::InstructionTextToken > | tokensBeforeName () const |
std::vector< BinaryNinja::InstructionTextToken > | tokensAfterName () const |
std::vector< BinaryNinja::InstructionTextToken > | displayTokens () const |
Shorthand to get concatenated type, name, and value tokens. More... | |
BinaryNinja::Variable | variable () const |
Get the represented variable; use with variable items only. More... | |
BinaryNinja::DataVariable | dataVariable () const |
Get the represented data variable; use with data variable items only. More... | |
uint64_t | refPoint () const |
Get the first use of this variable; use with data variables items only. More... | |
bool | isUserDefined () const |
Is any part of this item user-defined? More... | |
VariableListItem::VariableListItem | ( | FunctionRef | func, |
BinaryNinja::Variable | var, | ||
BinaryNinja::PossibleValueSet | pvs, | ||
bool | hasUidf, | ||
std::string | name | ||
) |
Create a new VariableListItem of the LocalVariable type.
VariableListItem::VariableListItem | ( | FunctionRef | func, |
BinaryNinja::DataVariable | dataVar, | ||
uint64_t | refPoint, | ||
std::string | name | ||
) |
Create a new VariableListItem of the DataVariable type.
VariableListItemType VariableListItem::type | ( | ) | const |
Get the type of this list item.
std::string VariableListItem::name | ( | ) | const |
Get the represented variable's display name.
std::string VariableListItem::constantValue | ( | ) | const |
Get the data variable's value; use with data variable items only.
BinaryNinja::PossibleValueSet VariableListItem::possibleValueSet | ( | ) | const |
Get the variable possible value set; use with local variable items only.
bool VariableListItem::hasUidf | ( | ) | const |
Is the PVS user-provided? Use with local variable items only.
std::vector< BinaryNinja::InstructionTextToken > VariableListItem::tokensBeforeName | ( | ) | const |
std::vector< BinaryNinja::InstructionTextToken > VariableListItem::tokensAfterName | ( | ) | const |
std::vector< BinaryNinja::InstructionTextToken > VariableListItem::displayTokens | ( | ) | const |
Shorthand to get concatenated type, name, and value tokens.
BinaryNinja::Variable VariableListItem::variable | ( | ) | const |
Get the represented variable; use with variable items only.
BinaryNinja::DataVariable VariableListItem::dataVariable | ( | ) | const |
Get the represented data variable; use with data variable items only.
uint64_t VariableListItem::refPoint | ( | ) | const |
Get the first use of this variable; use with data variables items only.
bool VariableListItem::isUserDefined | ( | ) | const |
Is any part of this item user-defined?
class VariableListModel |
The backing model for the variable list widget, holds VariableListItem.
Public Member Functions | |
VariableListModel (QWidget *parent, ViewFrame *view, BinaryViewRef data) | |
void | clear () |
Clear the list's content. More... | |
FunctionRef | function () const |
Get the current function. More... | |
BNFunctionGraphType | functionType () const |
Get the current function type. More... | |
bool | functionExceedsComplexity () const |
Whether or not the function exceeds the set complexity threshold. More... | |
void | setFunction (FunctionRef func, BNFunctionGraphType il, const HighlightTokenState &hts) |
Set the focused function and update the content of the list. More... | |
void | setSelectionModel (QItemSelectionModel *model) |
Set the selection model, should correspond to the parent widget's. More... | |
virtual QVariant | data (const QModelIndex &i, int role) const override |
virtual QModelIndex | index (int row, int col, const QModelIndex &parent=QModelIndex()) const override |
virtual int | columnCount (const QModelIndex &parent=QModelIndex()) const override |
virtual int | rowCount (const QModelIndex &parent=QModelIndex()) const override |
Qt::ItemFlags | flags (const QModelIndex &index) const override |
virtual QVariant | headerData (int column, Qt::Orientation orientation, int role) const override |
void | linkActivatedEvent (const QString &link) |
VariableListModel::VariableListModel | ( | QWidget * | parent, |
ViewFrame * | view, | ||
BinaryViewRef | data | ||
) |
void VariableListModel::clear | ( | ) |
Clear the list's content.
FunctionRef VariableListModel::function | ( | ) | const |
Get the current function.
BNFunctionGraphType VariableListModel::functionType | ( | ) | const |
Get the current function type.
|
inline |
Whether or not the function exceeds the set complexity threshold.
void VariableListModel::setFunction | ( | FunctionRef | func, |
BNFunctionGraphType | il, | ||
const HighlightTokenState & | hts | ||
) |
Set the focused function and update the content of the list.
void VariableListModel::setSelectionModel | ( | QItemSelectionModel * | model | ) |
Set the selection model, should correspond to the parent widget's.
|
overridevirtual |
|
overridevirtual |
|
overridevirtual |
|
overridevirtual |
|
override |
|
overridevirtual |
void VariableListModel::linkActivatedEvent | ( | const QString & | link | ) |
class VariableListItemDelegate |
Public Member Functions | |
VariableListItemDelegate () | |
void | paint (QPainter *painter, const QStyleOptionViewItem &opt, const QModelIndex &index) const |
QSize | sizeHint (const QStyleOptionViewItem &opt, const QModelIndex &index) const |
VariableListItemDelegate::VariableListItemDelegate | ( | ) |
void VariableListItemDelegate::paint | ( | QPainter * | painter, |
const QStyleOptionViewItem & | opt, | ||
const QModelIndex & | index | ||
) | const |
QSize VariableListItemDelegate::sizeHint | ( | const QStyleOptionViewItem & | opt, |
const QModelIndex & | index | ||
) | const |
class VariableList |
The main variable list dock widget.
Public Member Functions | |
VariableList (ViewFrame *view, BinaryViewRef data) | |
QWidget * | headerWidget () override |
void | focus () override |
void | refresh () |
VariableListItem * | selectedItem () const |
Get the VariableListItem corresponding to the current selection. More... | |
void | changeSelectedVariableName () |
Show the rename dialog for the selected variable. More... | |
void | changeSelectedVariableType () |
Show the new type dialog for the selected variable. More... | |
void | mergeSelectedVariable () |
Show the "merge variables" dialog for the selected variable. More... | |
void | clearSelectedVariableName () |
Clear the selected variable's name. More... | |
void | clearSelectedVariableType () |
Clear the selected variable's type. More... | |
void | clearSelectedVariableNameAndType () |
Undefine the selected variable's user symbol. More... | |
void | showSelectedVariableFirstUsage () |
Navigate to the first usage of the selected variable. More... | |
void | showSelectedDataVariableDefinition () |
Navigate to the definition of the selected data variable. More... | |
void | setSelectedVariableDeadStoreElimination (BNDeadStoreElimination dse) |
Set the selected variable's DSE policy. More... | |
void | setSelectedVariableValue () |
Prompt the user to set the selected variable's value. More... | |
void | resetSelectedVariableValue () |
Remove UIDF for the selected variable. More... | |
virtual void | setFilter (const std::string &filter) override |
virtual void | scrollToFirstItem () override |
virtual void | scrollToCurrentItem () override |
virtual void | selectFirstItem () override |
virtual void | activateFirstItem () override |
Public Member Functions inherited from SidebarWidget | |
SidebarWidget (const QString &title) | |
~SidebarWidget () | |
const QString & | title () const |
void | enableRefreshTimer (int interval) |
void | setRefreshQuiesce (bool enable) |
bool | isQuiesced () const |
virtual void | notifyRefresh () |
virtual void | notifyQuiesce (bool) |
virtual void | notifyFontChanged () |
virtual void | notifyOffsetChanged (uint64_t) |
virtual void | notifyThemeChanged () |
virtual void | notifyViewChanged (ViewFrame *) |
virtual void | notifyViewLocationChanged (View *, const ViewLocation &) |
virtual void | focus () |
virtual void | closing () |
virtual void | setPrimaryOrientation (Qt::Orientation) |
virtual QWidget * | headerWidget () |
Public Member Functions inherited from FilterTarget | |
virtual | ~FilterTarget () |
virtual void | setFilter (const std::string &filter)=0 |
virtual void | scrollToFirstItem ()=0 |
virtual void | scrollToCurrentItem ()=0 |
virtual void | selectFirstItem ()=0 |
virtual void | activateFirstItem ()=0 |
virtual void | closeFilter () |
Additional Inherited Members | |
Protected Attributes inherited from SidebarWidget | |
QString | m_title |
UIActionHandler | m_actionHandler |
ContextMenuManager * | m_contextMenuManager = nullptr |
Menu * | m_menu = nullptr |
bool | m_quiesceState = true |
QTimer * | m_updateTimer = nullptr |
VariableList::VariableList | ( | ViewFrame * | view, |
BinaryViewRef | data | ||
) |
|
inlineoverridevirtual |
Reimplemented from SidebarWidget.
|
inlineoverridevirtual |
Reimplemented from SidebarWidget.
void VariableList::refresh | ( | ) |
VariableListItem * VariableList::selectedItem | ( | ) | const |
Get the VariableListItem corresponding to the current selection.
void VariableList::changeSelectedVariableName | ( | ) |
Show the rename dialog for the selected variable.
void VariableList::changeSelectedVariableType | ( | ) |
Show the new type dialog for the selected variable.
void VariableList::mergeSelectedVariable | ( | ) |
Show the "merge variables" dialog for the selected variable.
void VariableList::clearSelectedVariableName | ( | ) |
Clear the selected variable's name.
void VariableList::clearSelectedVariableType | ( | ) |
Clear the selected variable's type.
void VariableList::clearSelectedVariableNameAndType | ( | ) |
Undefine the selected variable's user symbol.
void VariableList::showSelectedVariableFirstUsage | ( | ) |
Navigate to the first usage of the selected variable.
void VariableList::showSelectedDataVariableDefinition | ( | ) |
Navigate to the definition of the selected data variable.
void VariableList::setSelectedVariableDeadStoreElimination | ( | BNDeadStoreElimination | dse | ) |
Set the selected variable's DSE policy.
void VariableList::setSelectedVariableValue | ( | ) |
Prompt the user to set the selected variable's value.
void VariableList::resetSelectedVariableValue | ( | ) |
Remove UIDF for the selected variable.
|
overridevirtual |
Implements FilterTarget.
|
overridevirtual |
Implements FilterTarget.
|
overridevirtual |
Implements FilterTarget.
|
overridevirtual |
Implements FilterTarget.
|
overridevirtual |
Implements FilterTarget.
class VariableListSidebarWidgetType |
The main variable list dock widget.
VariableListSidebarWidgetType::VariableListSidebarWidgetType | ( | ) |
|
overridevirtual |
Reimplemented from SidebarWidgetType.
|
inlineoverridevirtual |
Reimplemented from SidebarWidgetType.
|
strong |