TypeView Class Reference

Public Member Functions

 TypeView (BinaryViewRef data, ViewFrame *view, TypesContainer *container, bool compact=false)
 
virtual ~TypeView ()
 
virtual bool findNextData (uint64_t start, uint64_t end, const BinaryNinja::DataBuffer &data, uint64_t &addr, BNFindFlag flags, const std::function< bool(size_t current, size_t total)> &cb) override
 
virtual bool findNextText (uint64_t start, uint64_t end, const std::string &text, uint64_t &addr, DisassemblySettingsRef settings, BNFindFlag flags, BNFunctionGraphType graph, const std::function< bool(size_t current, size_t total)> &cb) override
 
virtual BinaryViewRef getData () override
 
virtual uint64_t getCurrentOffset () override
 
virtual BNAddressRange getSelectionOffsets () override
 
virtual SelectionInfoForXref getSelectionForXref () override
 
virtual void setSelectionOffsets (BNAddressRange range) override
 
virtual bool navigate (uint64_t) override
 
virtual std::string getNavigationMode () override
 
virtual void setNavigationMode (std::string mode) override
 
virtual std::vector< std::string > getNavigationModes () override
 
uint64_t findMatchingLine (const BinaryNinja::QualifiedName &name, uint64_t offset, size_t &cursorOffset)
 
bool navigateToType (const std::string &name, uint64_t offset=0)
 
virtual void OnTypeDefined (BinaryNinja::BinaryView *view, const BinaryNinja::QualifiedName &name, BinaryNinja::Type *type) override
 
virtual void OnTypeUndefined (BinaryNinja::BinaryView *view, const BinaryNinja::QualifiedName &name, BinaryNinja::Type *type) override
 
virtual void OnTypeReferenceChanged (BinaryNinja::BinaryView *view, const BinaryNinja::QualifiedName &name, BinaryNinja::Type *type) override
 
virtual void OnTypeFieldReferenceChanged (BinaryNinja::BinaryView *view, const BinaryNinja::QualifiedName &name, uint64_t offset) override
 
void MarkFilterChanged ()
 
void MarkTypeChanged (const BinaryNinja::QualifiedName &typeName)
 
virtual void updateFonts () override
 
virtual StatusBarWidgetgetStatusBarWidget () override
 
virtual BinaryNinja::Ref< HistoryEntrygetHistoryEntry () override
 
virtual void navigateToHistoryEntry (BinaryNinja::Ref< HistoryEntry > entry) override
 
void lineNumberAreaPaintEvent (QPaintEvent *event)
 
int lineNumberAreaWidth ()
 
virtual bool canCut () override
 
virtual bool canCopy () override
 
virtual bool canCopyWithTransform () override
 
virtual bool canPaste () override
 
virtual bool canPasteWithTransform () override
 
virtual bool canTransform () override
 
virtual bool canCopyAddress () override
 
virtual void copy (TransformRef xform=nullptr) override
 
virtual QFont getFont () override
 
virtual HighlightTokenState getHighlightTokenState () override
 
virtual ArchitectureRef getOrAskForArchitecture ()
 
bool isTypeCollapsed (const std::string &name) const
 
void showContextMenu (Menu *source=nullptr)
 
void focusAtTopOfView ()
 
virtual bool canDisplayAs (const UIActionContext &context, const BNIntegerDisplayType) override
 
bool isTypeTextFiltered (const std::string &name) const
 
- Public Member Functions inherited from View
 View ()
 
virtual ~View ()
 
void setupView (QWidget *widget)
 
virtual bool canAssemble ()
 
virtual bool canCompile ()
 
virtual bool findNextData (uint64_t start, uint64_t end, const BinaryNinja::DataBuffer &data, uint64_t &addr, BNFindFlag flags, const std::function< bool(size_t current, size_t total)> &cb)
 
virtual bool findNextText (uint64_t start, uint64_t end, const std::string &text, uint64_t &addr, DisassemblySettingsRef settings, BNFindFlag flags, BNFunctionGraphType graph, const std::function< bool(size_t current, size_t total)> &cb)
 
virtual bool findNextConstant (uint64_t start, uint64_t end, uint64_t constant, uint64_t &addr, DisassemblySettingsRef settings, BNFunctionGraphType graph, const std::function< bool(size_t current, size_t total)> &cb)
 
virtual bool findAllData (uint64_t start, uint64_t end, const BinaryNinja::DataBuffer &data, BNFindFlag flags, const std::function< bool(size_t current, size_t total)> &cb, const std::function< bool(uint64_t addr, const BinaryNinja::DataBuffer &match)> &matchCallback)
 
virtual bool findAllText (uint64_t start, uint64_t end, const std::string &data, DisassemblySettingsRef settings, BNFindFlag flags, BNFunctionGraphType graph, const std::function< bool(size_t current, size_t total)> &cb, const std::function< bool(uint64_t addr, const std::string &match, const BinaryNinja::LinearDisassemblyLine &line)> &matchCallback)
 
virtual bool findAllConstant (uint64_t start, uint64_t end, uint64_t constant, DisassemblySettingsRef settings, BNFunctionGraphType graph, const std::function< bool(size_t current, size_t total)> &cb, const std::function< bool(uint64_t addr, const BinaryNinja::LinearDisassemblyLine &line)> &matchCallback)
 
virtual BinaryViewRef getData ()=0
 
virtual uint64_t getCurrentOffset ()=0
 
virtual BNAddressRange getSelectionOffsets ()
 
virtual SelectionInfoForXref getSelectionForXref ()
 
virtual void setSelectionOffsets (BNAddressRange range)=0
 
virtual bool navigate (uint64_t offset)=0
 
virtual bool navigateToFunction (FunctionRef func, uint64_t offset)
 
virtual bool goToReference (FunctionRef func, uint64_t source, uint64_t target)
 
virtual bool navigateToViewLocation (const ViewLocation &viewLocation, bool center=false)
 
bool navigateOnOtherPane (uint64_t offset)
 
bool navigateToFunctionOnOtherPane (FunctionRef func, uint64_t offset)
 
bool isBinaryDataNavigable ()
 
void setBinaryDataNavigable (bool navigable)
 
virtual bool closeRequest ()
 
virtual void closing ()
 
virtual void updateFonts ()
 
virtual void updateTheme ()
 
virtual void undo ()
 
virtual void redo ()
 
virtual bool canUndo ()
 
virtual bool canRedo ()
 
virtual void cut ()
 
virtual void copy (TransformRef xform=nullptr)
 
virtual void copyAddress ()
 
virtual void paste (TransformRef xform=nullptr)
 
virtual bool canCut ()
 
virtual bool canCopy ()
 
virtual bool canCopyWithTransform ()
 
virtual bool canCopyAddress ()
 
virtual bool canPaste ()
 
virtual bool canPasteWithTransform ()
 
virtual void transform (TransformRef xform, bool encode)
 
virtual bool canTransform ()
 
virtual void writeData (const BinaryNinja::DataBuffer &data, uint64_t addr)
 
virtual bool canDisplayAs (const UIActionContext &context, const BNIntegerDisplayType)
 
virtual void displayAs (const UIActionContext &context, BNIntegerDisplayType type)
 
virtual BinaryNinja::Ref< HistoryEntrygetHistoryEntry ()
 
virtual void navigateToHistoryEntry (BinaryNinja::Ref< HistoryEntry > entry)
 
virtual StatusBarWidgetgetStatusBarWidget ()
 
virtual ViewPaneHeaderSubtypeWidgetgetHeaderSubtypeWidget ()
 
virtual QWidget * getHeaderOptionsWidget ()
 
virtual FunctionRef getCurrentFunction ()
 
virtual BasicBlockRef getCurrentBasicBlock ()
 
virtual ArchitectureRef getCurrentArchitecture ()
 
virtual LowLevelILFunctionRef getCurrentLowLevelILFunction ()
 
virtual MediumLevelILFunctionRef getCurrentMediumLevelILFunction ()
 
virtual HighLevelILFunctionRef getCurrentHighLevelILFunction ()
 
virtual BNFunctionGraphType getILViewType ()
 
virtual void setILViewType (BNFunctionGraphType ilViewType)
 
virtual size_t getCurrentILInstructionIndex ()
 
virtual QFont getFont ()=0
 
virtual DisassemblySettingsRef getDisassemblySettings ()
 
virtual void setDisassemblySettings (DisassemblySettingsRef settings)
 
virtual HighlightTokenState getHighlightTokenState ()
 
virtual UIActionContext actionContext ()
 
MenucontextMenu ()
 
UIActionHandleractionHandler ()
 
QWidget * widget ()
 
QString viewType ()
 
void updateCrossReferenceSelection (ViewFrame *frame=nullptr)
 
void forceSyncFromView (ViewFrame *frame=nullptr)
 
virtual void clearRelatedHighlights ()
 
virtual void setRelatedIndexHighlights (FunctionRef func, const std::set< size_t > &related)
 
virtual void setRelatedInstructionHighlights (FunctionRef func, const std::set< uint64_t > &related)
 
- Public Member Functions inherited from BinaryNinja::BinaryDataNotification
 BinaryDataNotification ()
 
virtual ~BinaryDataNotification ()
 
BNBinaryDataNotificationGetCallbacks ()
 
virtual void OnBinaryDataWritten (BinaryView *view, uint64_t offset, size_t len)
 
virtual void OnBinaryDataInserted (BinaryView *view, uint64_t offset, size_t len)
 
virtual void OnBinaryDataRemoved (BinaryView *view, uint64_t offset, uint64_t len)
 
virtual void OnAnalysisFunctionAdded (BinaryView *view, Function *func)
 
virtual void OnAnalysisFunctionRemoved (BinaryView *view, Function *func)
 
virtual void OnAnalysisFunctionUpdated (BinaryView *view, Function *func)
 
virtual void OnAnalysisFunctionUpdateRequested (BinaryView *view, Function *func)
 
virtual void OnDataVariableAdded (BinaryView *view, const DataVariable &var)
 
virtual void OnDataVariableRemoved (BinaryView *view, const DataVariable &var)
 
virtual void OnDataVariableUpdated (BinaryView *view, const DataVariable &var)
 
virtual void OnDataMetadataUpdated (BinaryView *view, uint64_t offset)
 
virtual void OnTagTypeUpdated (BinaryView *view, Ref< TagType > tagTypeRef)
 
virtual void OnTagAdded (BinaryView *view, const TagReference &tagRef)
 
virtual void OnTagUpdated (BinaryView *view, const TagReference &tagRef)
 
virtual void OnTagRemoved (BinaryView *view, const TagReference &tagRef)
 
virtual void OnSymbolAdded (BinaryView *view, Symbol *sym)
 
virtual void OnSymbolUpdated (BinaryView *view, Symbol *sym)
 
virtual void OnSymbolRemoved (BinaryView *view, Symbol *sym)
 
virtual void OnStringFound (BinaryView *data, BNStringType type, uint64_t offset, size_t len)
 
virtual void OnStringRemoved (BinaryView *data, BNStringType type, uint64_t offset, size_t len)
 
virtual void OnTypeDefined (BinaryView *data, const QualifiedName &name, Type *type)
 
virtual void OnTypeUndefined (BinaryView *data, const QualifiedName &name, Type *type)
 
virtual void OnTypeReferenceChanged (BinaryView *data, const QualifiedName &name, Type *type)
 
virtual void OnTypeFieldReferenceChanged (BinaryView *data, const QualifiedName &name, uint64_t offset)
 

Static Public Member Functions

static void registerActions ()
 
- Static Public Member Functions inherited from View
static ViewgetViewFromWidget (QWidget *widget)
 
static void registerActions ()
 
static void registerLateActions ()
 

Protected Member Functions

virtual void resizeEvent (QResizeEvent *event) override
 
virtual void paintEvent (QPaintEvent *event) override
 
virtual void mousePressEvent (QMouseEvent *event) override
 
virtual void mouseMoveEvent (QMouseEvent *event) override
 
virtual void mouseDoubleClickEvent (QMouseEvent *event) override
 
virtual void scrollContentsBy (int dx, int dy) override
 
- Protected Member Functions inherited from View
bool writeDataToClipboard (const BinaryNinja::DataBuffer &data, bool binary, TransformRef xform)
 
BinaryNinja::DataBuffer readDataFromClipboard (TransformRef xform)
 
virtual std::string getNavigationMode ()
 
virtual void setNavigationMode (std::string mode)
 
virtual std::vector< std::string > getNavigationModes ()
 

Additional Inherited Members

- Protected Attributes inherited from View
Menu m_contextMenu
 
UIActionHandler m_actionHandler
 
bool m_binaryDataNavigable = false
 
QPointer< TransformParameterDialogm_transformParamDialog
 

Constructor & Destructor Documentation

◆ TypeView()

TypeView::TypeView ( BinaryViewRef  data,
ViewFrame view,
TypesContainer container,
bool  compact = false 
)
explicit

◆ ~TypeView()

virtual TypeView::~TypeView ( )
virtual

Member Function Documentation

◆ canCopy()

virtual bool TypeView::canCopy ( )
overridevirtual

Reimplemented from View.

◆ canCopyAddress()

virtual bool TypeView::canCopyAddress ( )
inlineoverridevirtual

Reimplemented from View.

◆ canCopyWithTransform()

virtual bool TypeView::canCopyWithTransform ( )
inlineoverridevirtual

Reimplemented from View.

◆ canCut()

virtual bool TypeView::canCut ( )
inlineoverridevirtual

Reimplemented from View.

◆ canDisplayAs()

virtual bool TypeView::canDisplayAs ( const UIActionContext context,
const  BNIntegerDisplayType 
)
inlineoverridevirtual

Reimplemented from View.

◆ canPaste()

virtual bool TypeView::canPaste ( )
inlineoverridevirtual

Reimplemented from View.

◆ canPasteWithTransform()

virtual bool TypeView::canPasteWithTransform ( )
inlineoverridevirtual

Reimplemented from View.

◆ canTransform()

virtual bool TypeView::canTransform ( )
inlineoverridevirtual

Reimplemented from View.

◆ copy()

virtual void TypeView::copy ( TransformRef  xform = nullptr)
overridevirtual

Reimplemented from View.

◆ findMatchingLine()

uint64_t TypeView::findMatchingLine ( const BinaryNinja::QualifiedName name,
uint64_t  offset,
size_t &  cursorOffset 
)

◆ findNextData()

virtual bool TypeView::findNextData ( uint64_t  start,
uint64_t  end,
const BinaryNinja::DataBuffer data,
uint64_t &  addr,
BNFindFlag  flags,
const std::function< bool(size_t current, size_t total)> &  cb 
)
overridevirtual

Reimplemented from View.

◆ findNextText()

virtual bool TypeView::findNextText ( uint64_t  start,
uint64_t  end,
const std::string &  text,
uint64_t &  addr,
DisassemblySettingsRef  settings,
BNFindFlag  flags,
BNFunctionGraphType  graph,
const std::function< bool(size_t current, size_t total)> &  cb 
)
overridevirtual

Reimplemented from View.

◆ focusAtTopOfView()

void TypeView::focusAtTopOfView ( )

◆ getCurrentOffset()

virtual uint64_t TypeView::getCurrentOffset ( )
overridevirtual

Implements View.

◆ getData()

virtual BinaryViewRef TypeView::getData ( )
inlineoverridevirtual

Implements View.

◆ getFont()

virtual QFont TypeView::getFont ( )
inlineoverridevirtual

Implements View.

◆ getHighlightTokenState()

virtual HighlightTokenState TypeView::getHighlightTokenState ( )
inlineoverridevirtual

Reimplemented from View.

◆ getHistoryEntry()

virtual BinaryNinja::Ref< HistoryEntry > TypeView::getHistoryEntry ( )
overridevirtual

Reimplemented from View.

◆ getNavigationMode()

virtual std::string TypeView::getNavigationMode ( )
overridevirtual

Reimplemented from View.

◆ getNavigationModes()

virtual std::vector< std::string > TypeView::getNavigationModes ( )
overridevirtual

Reimplemented from View.

◆ getOrAskForArchitecture()

virtual ArchitectureRef TypeView::getOrAskForArchitecture ( )
virtual

◆ getSelectionForXref()

virtual SelectionInfoForXref TypeView::getSelectionForXref ( )
overridevirtual

Reimplemented from View.

◆ getSelectionOffsets()

virtual BNAddressRange TypeView::getSelectionOffsets ( )
overridevirtual

Reimplemented from View.

◆ getStatusBarWidget()

virtual StatusBarWidget * TypeView::getStatusBarWidget ( )
overridevirtual

Reimplemented from View.

◆ isTypeCollapsed()

bool TypeView::isTypeCollapsed ( const std::string &  name) const
inline

◆ isTypeTextFiltered()

bool TypeView::isTypeTextFiltered ( const std::string &  name) const

◆ lineNumberAreaPaintEvent()

void TypeView::lineNumberAreaPaintEvent ( QPaintEvent *  event)

◆ lineNumberAreaWidth()

int TypeView::lineNumberAreaWidth ( )

◆ MarkFilterChanged()

void TypeView::MarkFilterChanged ( )
inline

◆ MarkTypeChanged()

void TypeView::MarkTypeChanged ( const BinaryNinja::QualifiedName typeName)

◆ mouseDoubleClickEvent()

virtual void TypeView::mouseDoubleClickEvent ( QMouseEvent *  event)
overrideprotectedvirtual

◆ mouseMoveEvent()

virtual void TypeView::mouseMoveEvent ( QMouseEvent *  event)
overrideprotectedvirtual

◆ mousePressEvent()

virtual void TypeView::mousePressEvent ( QMouseEvent *  event)
overrideprotectedvirtual

◆ navigate()

virtual bool TypeView::navigate ( uint64_t  )
overridevirtual

Implements View.

◆ navigateToHistoryEntry()

virtual void TypeView::navigateToHistoryEntry ( BinaryNinja::Ref< HistoryEntry entry)
overridevirtual

Reimplemented from View.

◆ navigateToType()

bool TypeView::navigateToType ( const std::string &  name,
uint64_t  offset = 0 
)

◆ OnTypeDefined()

virtual void TypeView::OnTypeDefined ( BinaryNinja::BinaryView view,
const BinaryNinja::QualifiedName name,
BinaryNinja::Type type 
)
overridevirtual

◆ OnTypeFieldReferenceChanged()

virtual void TypeView::OnTypeFieldReferenceChanged ( BinaryNinja::BinaryView view,
const BinaryNinja::QualifiedName name,
uint64_t  offset 
)
overridevirtual

◆ OnTypeReferenceChanged()

virtual void TypeView::OnTypeReferenceChanged ( BinaryNinja::BinaryView view,
const BinaryNinja::QualifiedName name,
BinaryNinja::Type type 
)
overridevirtual

◆ OnTypeUndefined()

virtual void TypeView::OnTypeUndefined ( BinaryNinja::BinaryView view,
const BinaryNinja::QualifiedName name,
BinaryNinja::Type type 
)
overridevirtual

◆ paintEvent()

virtual void TypeView::paintEvent ( QPaintEvent *  event)
overrideprotectedvirtual

◆ registerActions()

static void TypeView::registerActions ( )
static

◆ resizeEvent()

virtual void TypeView::resizeEvent ( QResizeEvent *  event)
overrideprotectedvirtual

◆ scrollContentsBy()

virtual void TypeView::scrollContentsBy ( int  dx,
int  dy 
)
overrideprotectedvirtual

◆ setNavigationMode()

virtual void TypeView::setNavigationMode ( std::string  mode)
overridevirtual

Reimplemented from View.

◆ setSelectionOffsets()

virtual void TypeView::setSelectionOffsets ( BNAddressRange  range)
overridevirtual

Implements View.

◆ showContextMenu()

void TypeView::showContextMenu ( Menu source = nullptr)

◆ updateFonts()

virtual void TypeView::updateFonts ( )
overridevirtual

Reimplemented from View.


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