View Class Referenceabstract

Public Member Functions

 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)
 

Static Public Member Functions

static ViewgetViewFromWidget (QWidget *widget)
 
static void registerActions ()
 
static void registerLateActions ()
 

Protected Member Functions

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 ()
 

Protected Attributes

Menu m_contextMenu
 
UIActionHandler m_actionHandler
 
bool m_binaryDataNavigable = false
 
QPointer< TransformParameterDialogm_transformParamDialog
 

Friends

class ViewNavigationMode
 

Constructor & Destructor Documentation

◆ View()

View::View ( )

◆ ~View()

virtual View::~View ( )
inlinevirtual

Member Function Documentation

◆ actionContext()

virtual UIActionContext View::actionContext ( )
virtual

Reimplemented in LinearView.

◆ actionHandler()

UIActionHandler * View::actionHandler ( )
inline

◆ canAssemble()

virtual bool View::canAssemble ( )
inlinevirtual

Reimplemented in FlowGraphWidget, HexEditor, and LinearView.

◆ canCompile()

virtual bool View::canCompile ( )
inlinevirtual

Reimplemented in FlowGraphWidget, HexEditor, and LinearView.

◆ canCopy()

virtual bool View::canCopy ( )
virtual

Reimplemented in TypeView.

◆ canCopyAddress()

virtual bool View::canCopyAddress ( )
virtual

Reimplemented in StackView, and TypeView.

◆ canCopyWithTransform()

virtual bool View::canCopyWithTransform ( )
virtual

Reimplemented in TypeView.

◆ canCut()

virtual bool View::canCut ( )
virtual

Reimplemented in TypeView.

◆ canDisplayAs()

virtual bool View::canDisplayAs ( const UIActionContext context,
const  BNIntegerDisplayType 
)
virtual

Reimplemented in TypeView.

◆ canPaste()

virtual bool View::canPaste ( )
virtual

Reimplemented in FlowGraphWidget, StackView, and TypeView.

◆ canPasteWithTransform()

virtual bool View::canPasteWithTransform ( )
virtual

Reimplemented in TypeView.

◆ canRedo()

virtual bool View::canRedo ( )
virtual

◆ canTransform()

virtual bool View::canTransform ( )
virtual

Reimplemented in TypeView.

◆ canUndo()

virtual bool View::canUndo ( )
virtual

◆ clearRelatedHighlights()

virtual void View::clearRelatedHighlights ( )
inlinevirtual

Reimplemented in FlowGraphWidget, and LinearView.

◆ closeRequest()

virtual bool View::closeRequest ( )
inlinevirtual

◆ closing()

virtual void View::closing ( )
inlinevirtual

Reimplemented in FlowGraphWidget.

◆ contextMenu()

Menu & View::contextMenu ( )
inline

◆ copy()

virtual void View::copy ( TransformRef  xform = nullptr)
virtual

◆ copyAddress()

virtual void View::copyAddress ( )
virtual

Reimplemented in LinearView, and TokenizedTextView.

◆ cut()

virtual void View::cut ( )
virtual

Reimplemented in FlowGraphWidget, LinearView, and TokenizedTextView.

◆ displayAs()

virtual void View::displayAs ( const UIActionContext context,
BNIntegerDisplayType  type 
)
virtual

◆ findAllConstant()

virtual bool View::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

◆ findAllData()

virtual bool View::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

◆ findAllText()

virtual bool View::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

◆ findNextConstant()

virtual bool View::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

◆ findNextData()

virtual bool View::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

Reimplemented in TypeView.

◆ findNextText()

virtual bool View::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

Reimplemented in TypeView.

◆ forceSyncFromView()

void View::forceSyncFromView ( ViewFrame frame = nullptr)

◆ getCurrentArchitecture()

virtual ArchitectureRef View::getCurrentArchitecture ( )
inlinevirtual

Reimplemented in FlowGraphWidget, LinearView, and TokenizedTextView.

◆ getCurrentBasicBlock()

virtual BasicBlockRef View::getCurrentBasicBlock ( )
inlinevirtual

Reimplemented in FlowGraphWidget, LinearView, and TokenizedTextView.

◆ getCurrentFunction()

virtual FunctionRef View::getCurrentFunction ( )
inlinevirtual

Reimplemented in FlowGraphWidget, LinearView, and TokenizedTextView.

◆ getCurrentHighLevelILFunction()

virtual HighLevelILFunctionRef View::getCurrentHighLevelILFunction ( )
inlinevirtual

Reimplemented in FlowGraphWidget, and LinearView.

◆ getCurrentILInstructionIndex()

virtual size_t View::getCurrentILInstructionIndex ( )
inlinevirtual

Reimplemented in FlowGraphWidget, and LinearView.

◆ getCurrentLowLevelILFunction()

virtual LowLevelILFunctionRef View::getCurrentLowLevelILFunction ( )
inlinevirtual

Reimplemented in FlowGraphWidget, and LinearView.

◆ getCurrentMediumLevelILFunction()

virtual MediumLevelILFunctionRef View::getCurrentMediumLevelILFunction ( )
inlinevirtual

Reimplemented in FlowGraphWidget, and LinearView.

◆ getCurrentOffset()

virtual uint64_t View::getCurrentOffset ( )
pure virtual

◆ getData()

virtual BinaryViewRef View::getData ( )
pure virtual

◆ getDisassemblySettings()

virtual DisassemblySettingsRef View::getDisassemblySettings ( )
virtual

Reimplemented in DisassemblyView, and LinearView.

◆ getFont()

virtual QFont View::getFont ( )
pure virtual

◆ getHeaderOptionsWidget()

virtual QWidget * View::getHeaderOptionsWidget ( )
inlinevirtual

Reimplemented in DisassemblyView, HexEditor, and LinearView.

◆ getHeaderSubtypeWidget()

virtual ViewPaneHeaderSubtypeWidget * View::getHeaderSubtypeWidget ( )
inlinevirtual

Reimplemented in DisassemblyView, and LinearView.

◆ getHighlightTokenState()

virtual HighlightTokenState View::getHighlightTokenState ( )
virtual

◆ getHistoryEntry()

virtual BinaryNinja::Ref< HistoryEntry > View::getHistoryEntry ( )
virtual

◆ getILViewType()

virtual BNFunctionGraphType View::getILViewType ( )
inlinevirtual

Reimplemented in DisassemblyView, and LinearView.

◆ getNavigationMode()

virtual std::string View::getNavigationMode ( )
inlineprotectedvirtual

Reimplemented in LinearView, and TypeView.

◆ getNavigationModes()

virtual std::vector< std::string > View::getNavigationModes ( )
inlineprotectedvirtual

Reimplemented in LinearView, and TypeView.

◆ getSelectionForXref()

virtual SelectionInfoForXref View::getSelectionForXref ( )
virtual

◆ getSelectionOffsets()

virtual BNAddressRange View::getSelectionOffsets ( )
virtual

◆ getStatusBarWidget()

virtual StatusBarWidget * View::getStatusBarWidget ( )
inlinevirtual

◆ getViewFromWidget()

static View * View::getViewFromWidget ( QWidget *  widget)
static

◆ goToReference()

virtual bool View::goToReference ( FunctionRef  func,
uint64_t  source,
uint64_t  target 
)
virtual

Reimplemented in FlowGraphWidget, LinearView, and TokenizedTextView.

◆ isBinaryDataNavigable()

bool View::isBinaryDataNavigable ( )
inline

◆ navigate()

virtual bool View::navigate ( uint64_t  offset)
pure virtual

◆ navigateOnOtherPane()

bool View::navigateOnOtherPane ( uint64_t  offset)

◆ navigateToFunction()

virtual bool View::navigateToFunction ( FunctionRef  func,
uint64_t  offset 
)
virtual

Reimplemented in LinearView, DisassemblyView, and FlowGraphWidget.

◆ navigateToFunctionOnOtherPane()

bool View::navigateToFunctionOnOtherPane ( FunctionRef  func,
uint64_t  offset 
)

◆ navigateToHistoryEntry()

virtual void View::navigateToHistoryEntry ( BinaryNinja::Ref< HistoryEntry entry)
virtual

◆ navigateToViewLocation()

virtual bool View::navigateToViewLocation ( const ViewLocation viewLocation,
bool  center = false 
)
virtual

Reimplemented in DisassemblyView, FlowGraphWidget, and LinearView.

◆ paste()

virtual void View::paste ( TransformRef  xform = nullptr)
virtual

Reimplemented in FlowGraphWidget, LinearView, and TokenizedTextView.

◆ readDataFromClipboard()

BinaryNinja::DataBuffer View::readDataFromClipboard ( TransformRef  xform)
protected

◆ redo()

virtual void View::redo ( )
virtual

◆ registerActions()

static void View::registerActions ( )
static

◆ registerLateActions()

static void View::registerLateActions ( )
static

◆ setBinaryDataNavigable()

void View::setBinaryDataNavigable ( bool  navigable)
inline

◆ setDisassemblySettings()

virtual void View::setDisassemblySettings ( DisassemblySettingsRef  settings)
inlinevirtual

Reimplemented in DisassemblyView, and LinearView.

◆ setILViewType()

virtual void View::setILViewType ( BNFunctionGraphType  ilViewType)
inlinevirtual

Reimplemented in DisassemblyView, and LinearView.

◆ setNavigationMode()

virtual void View::setNavigationMode ( std::string  mode)
inlineprotectedvirtual

Reimplemented in LinearView, and TypeView.

◆ setRelatedIndexHighlights()

virtual void View::setRelatedIndexHighlights ( FunctionRef  func,
const std::set< size_t > &  related 
)
inlinevirtual

Reimplemented in FlowGraphWidget, and LinearView.

◆ setRelatedInstructionHighlights()

virtual void View::setRelatedInstructionHighlights ( FunctionRef  func,
const std::set< uint64_t > &  related 
)
inlinevirtual

Reimplemented in FlowGraphWidget, and LinearView.

◆ setSelectionOffsets()

virtual void View::setSelectionOffsets ( BNAddressRange  range)
pure virtual

◆ setupView()

void View::setupView ( QWidget *  widget)

◆ transform()

virtual void View::transform ( TransformRef  xform,
bool  encode 
)
virtual

◆ undo()

virtual void View::undo ( )
virtual

◆ updateCrossReferenceSelection()

void View::updateCrossReferenceSelection ( ViewFrame frame = nullptr)

◆ updateFonts()

virtual void View::updateFonts ( )
inlinevirtual

◆ updateTheme()

virtual void View::updateTheme ( )
inlinevirtual

◆ viewType()

QString View::viewType ( )

◆ widget()

QWidget * View::widget ( )
inline

◆ writeData()

virtual void View::writeData ( const BinaryNinja::DataBuffer data,
uint64_t  addr 
)
virtual

Reimplemented in HexEditor.

◆ writeDataToClipboard()

bool View::writeDataToClipboard ( const BinaryNinja::DataBuffer data,
bool  binary,
TransformRef  xform 
)
protected

Friends And Related Function Documentation

◆ ViewNavigationMode

friend class ViewNavigationMode
friend

Member Data Documentation

◆ m_actionHandler

UIActionHandler View::m_actionHandler
protected

◆ m_binaryDataNavigable

bool View::m_binaryDataNavigable = false
protected

◆ m_contextMenu

Menu View::m_contextMenu
protected

◆ m_transformParamDialog

QPointer<TransformParameterDialog> View::m_transformParamDialog
protected

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