Loading...
Searching...
No Matches
LinearView

Detailed Description

Classes

struct  LinearViewLine
 
struct  LinearViewCursorPosition
 
class  LinearViewHistoryEntry
 
class  LinearView
 
class  LinearViewType
 

Class Documentation

◆ LinearViewLine

struct LinearViewLine

Public Attributes

BinaryNinja::Ref< BinaryNinja::LinearViewCursorcursor
 
size_t cursorSize
 
size_t lineIndex
 
- Public Attributes inherited from BinaryNinja::LinearDisassemblyLine
BNLinearDisassemblyLineType type
 
Ref< Functionfunction
 
Ref< BasicBlockblock
 
DisassemblyTextLine contents
 

Additional Inherited Members

- Static Public Member Functions inherited from BinaryNinja::LinearDisassemblyLine
static LinearDisassemblyLine FromAPIObject (BNLinearDisassemblyLine *line)
 

Member Data Documentation

◆ cursor

◆ cursorSize

size_t LinearViewLine::cursorSize

◆ lineIndex

size_t LinearViewLine::lineIndex

◆ LinearViewCursorPosition

struct LinearViewCursorPosition

Public Member Functions

 LinearViewCursorPosition ()
 
 LinearViewCursorPosition (const LinearViewCursorPosition &pos)
 
 LinearViewCursorPosition (const LinearViewLine &line)
 
LinearViewCursorPositionoperator= (const LinearViewCursorPosition &pos)
 
bool operator== (const LinearViewCursorPosition &other) const
 
bool operator!= (const LinearViewCursorPosition &other) const
 
bool operator< (const LinearViewCursorPosition &other) const
 
bool operator<= (const LinearViewCursorPosition &other) const
 
bool operator>= (const LinearViewCursorPosition &other) const
 
bool operator> (const LinearViewCursorPosition &other) const
 
LinearViewCursorPosition AsLine () const
 

Public Attributes

FunctionRef function
 
BasicBlockRef block
 
uint64_t address
 
size_t instrIndex
 
BinaryNinja::Ref< BinaryNinja::LinearViewCursorcursor
 
size_t lineIndex
 
size_t tokenIndex
 
size_t characterIndex
 
int cursorX
 
int cursorY
 

Constructor & Destructor Documentation

◆ LinearViewCursorPosition() [1/3]

LinearViewCursorPosition::LinearViewCursorPosition ( )

◆ LinearViewCursorPosition() [2/3]

LinearViewCursorPosition::LinearViewCursorPosition ( const LinearViewCursorPosition & pos)

◆ LinearViewCursorPosition() [3/3]

LinearViewCursorPosition::LinearViewCursorPosition ( const LinearViewLine & line)

Member Function Documentation

◆ operator=()

LinearViewCursorPosition & LinearViewCursorPosition::operator= ( const LinearViewCursorPosition & pos)

◆ operator==()

bool LinearViewCursorPosition::operator== ( const LinearViewCursorPosition & other) const

◆ operator!=()

bool LinearViewCursorPosition::operator!= ( const LinearViewCursorPosition & other) const

◆ operator<()

bool LinearViewCursorPosition::operator< ( const LinearViewCursorPosition & other) const

◆ operator<=()

bool LinearViewCursorPosition::operator<= ( const LinearViewCursorPosition & other) const

◆ operator>=()

bool LinearViewCursorPosition::operator>= ( const LinearViewCursorPosition & other) const

◆ operator>()

bool LinearViewCursorPosition::operator> ( const LinearViewCursorPosition & other) const

◆ AsLine()

LinearViewCursorPosition LinearViewCursorPosition::AsLine ( ) const

Member Data Documentation

◆ function

FunctionRef LinearViewCursorPosition::function

◆ block

BasicBlockRef LinearViewCursorPosition::block

◆ address

uint64_t LinearViewCursorPosition::address

◆ instrIndex

size_t LinearViewCursorPosition::instrIndex

◆ cursor

BinaryNinja::Ref<BinaryNinja::LinearViewCursor> LinearViewCursorPosition::cursor

◆ lineIndex

size_t LinearViewCursorPosition::lineIndex

◆ tokenIndex

size_t LinearViewCursorPosition::tokenIndex

◆ characterIndex

size_t LinearViewCursorPosition::characterIndex

◆ cursorX

int LinearViewCursorPosition::cursorX

◆ cursorY

int LinearViewCursorPosition::cursorY

◆ LinearViewHistoryEntry

class LinearViewHistoryEntry

Public Member Functions

const std::vector< BinaryNinja::LinearViewObjectIdentifier > & getTopPath () const
 
size_t getTopLineIndex () const
 
uint64_t getTopAddress () const
 
const std::vector< BinaryNinja::LinearViewObjectIdentifier > & getCursorPath () const
 
size_t getCursorLineIndex () const
 
uint64_t getCursorAddress () const
 
PlatformRef getPlatform () const
 
uint64_t getFunction () const
 
bool inFunction () const
 
const HighlightTokenStategetHighlightTokenState () const
 
void setTopPath (const std::vector< BinaryNinja::LinearViewObjectIdentifier > &path)
 
void setTopLineIndex (size_t offset)
 
void setTopAddress (uint64_t addr)
 
void setCursorPath (const std::vector< BinaryNinja::LinearViewObjectIdentifier > &path)
 
void setCursorLineIndex (size_t offset)
 
void setCursorAddress (uint64_t addr)
 
void setPlatform (PlatformRef platform)
 
void setFunction (uint64_t f)
 
void setInFunction (bool inFunc)
 
void setHighlightTokenState (const HighlightTokenState &state)
 
virtual Json::Value serialize () const override
 Serialize to json representation.
 
virtual bool deserialize (const Json::Value &value) override
 Deserialize from json representation.
 
- Public Member Functions inherited from HistoryEntry
virtual ~HistoryEntry ()
 
QString getViewType () const
 
void setViewType (const QString &type)
 
- Public Member Functions inherited from BinaryNinja::RefCountObject
 RefCountObject ()
 
virtual ~RefCountObject ()
 
RefCountObjectGetObject ()
 
void AddRef ()
 
void Release ()
 

Additional Inherited Members

- Static Public Member Functions inherited from BinaryNinja::RefCountObject
static RefCountObjectGetObject (RefCountObject *obj)
 
- Public Attributes inherited from BinaryNinja::RefCountObject
std::atomic< int > m_refs
 

Member Function Documentation

◆ getTopPath()

const std::vector< BinaryNinja::LinearViewObjectIdentifier > & LinearViewHistoryEntry::getTopPath ( ) const
inline

◆ getTopLineIndex()

size_t LinearViewHistoryEntry::getTopLineIndex ( ) const
inline

◆ getTopAddress()

uint64_t LinearViewHistoryEntry::getTopAddress ( ) const
inline

◆ getCursorPath()

const std::vector< BinaryNinja::LinearViewObjectIdentifier > & LinearViewHistoryEntry::getCursorPath ( ) const
inline

◆ getCursorLineIndex()

size_t LinearViewHistoryEntry::getCursorLineIndex ( ) const
inline

◆ getCursorAddress()

uint64_t LinearViewHistoryEntry::getCursorAddress ( ) const
inline

◆ getPlatform()

PlatformRef LinearViewHistoryEntry::getPlatform ( ) const
inline

◆ getFunction()

uint64_t LinearViewHistoryEntry::getFunction ( ) const
inline

◆ inFunction()

bool LinearViewHistoryEntry::inFunction ( ) const
inline

◆ getHighlightTokenState()

const HighlightTokenState & LinearViewHistoryEntry::getHighlightTokenState ( ) const
inline

◆ setTopPath()

void LinearViewHistoryEntry::setTopPath ( const std::vector< BinaryNinja::LinearViewObjectIdentifier > & path)
inline

◆ setTopLineIndex()

void LinearViewHistoryEntry::setTopLineIndex ( size_t offset)
inline

◆ setTopAddress()

void LinearViewHistoryEntry::setTopAddress ( uint64_t addr)
inline

◆ setCursorPath()

void LinearViewHistoryEntry::setCursorPath ( const std::vector< BinaryNinja::LinearViewObjectIdentifier > & path)
inline

◆ setCursorLineIndex()

void LinearViewHistoryEntry::setCursorLineIndex ( size_t offset)
inline

◆ setCursorAddress()

void LinearViewHistoryEntry::setCursorAddress ( uint64_t addr)
inline

◆ setPlatform()

void LinearViewHistoryEntry::setPlatform ( PlatformRef platform)
inline

◆ setFunction()

void LinearViewHistoryEntry::setFunction ( uint64_t f)
inline

◆ setInFunction()

void LinearViewHistoryEntry::setInFunction ( bool inFunc)
inline

◆ setHighlightTokenState()

void LinearViewHistoryEntry::setHighlightTokenState ( const HighlightTokenState & state)
inline

◆ serialize()

virtual Json::Value LinearViewHistoryEntry::serialize ( ) const
overridevirtual

Serialize to json representation.

Returns
Json representation of history entry. In the Python api, this must be a dict.

Reimplemented from HistoryEntry.

◆ deserialize()

virtual bool LinearViewHistoryEntry::deserialize ( const Json::Value & value)
overridevirtual

Deserialize from json representation.

This method should clear any previously entered data on the HistoryEntry as if it were newly created.

Parameters
valueJson representation of history entry. In the Python api, this will be a dict.
Returns
If deserialization was successful

Reimplemented from HistoryEntry.

◆ LinearView

class LinearView

Signals

void notifyResizeEvent (int width, int height)
 

Public Member Functions

 LinearView (BinaryViewRef data, ViewFrame *view)
 
virtual ~LinearView ()
 
virtual void notifyRefresh () override
 
virtual bool canAssemble () override
 
virtual bool canCompile () override
 
virtual BinaryViewRef getData () override
 
void getCurrentOffsetByType (TypeRef resType, uint64_t baseAddr, uint64_t &begin, uint64_t &end, bool singleLine)
 
virtual DisassemblySettingsRef getDisassemblySettings () override
 
virtual void setDisassemblySettings (DisassemblySettingsRef settings) override
 
virtual uint64_t getCurrentOffset () override
 
virtual UIActionContext actionContext () override
 
virtual BNAddressRange getSelectionOffsets () override
 
virtual SelectionInfoForXref getSelectionForXref () override
 
virtual void setSelectionOffsets (BNAddressRange range) override
 
virtual FunctionRef getCurrentFunction () override
 
virtual LowLevelILFunctionRef getCurrentLowLevelILFunction () override
 
virtual MediumLevelILFunctionRef getCurrentMediumLevelILFunction () override
 
virtual HighLevelILFunctionRef getCurrentHighLevelILFunction () override
 
virtual BasicBlockRef getCurrentBasicBlock () override
 
virtual ArchitectureRef getCurrentArchitecture () override
 
virtual size_t getCurrentILInstructionIndex () override
 
virtual size_t getSelectionStartILInstructionIndex () override
 
virtual BNILIndexRange getILIndexRange () override
 
virtual bool navigate (uint64_t offset) override
 
virtual bool navigateToFunction (FunctionRef func, uint64_t offset) override
 
virtual bool navigateToViewLocation (const ViewLocation &viewLocation, bool center=false) override
 
virtual BinaryNinja::Ref< HistoryEntrygetHistoryEntry () override
 
virtual void navigateToHistoryEntry (BinaryNinja::Ref< HistoryEntry > entry) override
 
virtual void OnBinaryDataWritten (BinaryNinja::BinaryView *data, uint64_t offset, size_t len) override
 
virtual void OnBinaryDataInserted (BinaryNinja::BinaryView *data, uint64_t offset, size_t len) override
 
virtual void OnBinaryDataRemoved (BinaryNinja::BinaryView *data, uint64_t offset, uint64_t len) override
 
virtual void OnAnalysisFunctionAdded (BinaryNinja::BinaryView *view, BinaryNinja::Function *func) override
 
virtual void OnAnalysisFunctionRemoved (BinaryNinja::BinaryView *view, BinaryNinja::Function *func) override
 
virtual void OnAnalysisFunctionUpdated (BinaryNinja::BinaryView *view, BinaryNinja::Function *func) override
 
virtual void OnDataVariableAdded (BinaryNinja::BinaryView *view, const BinaryNinja::DataVariable &var) override
 
virtual void OnDataVariableRemoved (BinaryNinja::BinaryView *view, const BinaryNinja::DataVariable &var) override
 
virtual void OnDataVariableUpdated (BinaryNinja::BinaryView *view, const BinaryNinja::DataVariable &var) override
 
virtual void OnDataMetadataUpdated (BinaryNinja::BinaryView *view, uint64_t offset) override
 
virtual void OnSymbolAdded (BinaryNinja::BinaryView *view, BinaryNinja::Symbol *var) override
 
virtual void OnSymbolRemoved (BinaryNinja::BinaryView *view, BinaryNinja::Symbol *var) override
 
virtual void OnSymbolUpdated (BinaryNinja::BinaryView *view, BinaryNinja::Symbol *var) override
 
virtual void OnTagAdded (BinaryNinja::BinaryView *view, const BinaryNinja::TagReference &tagRef) override
 
virtual void OnTagUpdated (BinaryNinja::BinaryView *view, const BinaryNinja::TagReference &tagRef) override
 
virtual void OnTagRemoved (BinaryNinja::BinaryView *view, const BinaryNinja::TagReference &tagRef) override
 
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 MarkUpdatesForRegion (uint64_t start, uint64_t end)
 
virtual void MarkUpdatesForFunction (BinaryNinja::Function *func)
 
virtual void MarkUpdatesForType (BinaryNinja::BinaryView *view, const BinaryNinja::QualifiedName &name, BinaryNinja::Type *type)
 
virtual void MarkUpdatesForDataVariable (BinaryNinja::BinaryView *view, const BinaryNinja::DataVariable &var)
 
virtual void updateFonts () override
 
virtual StatusBarWidgetgetStatusBarWidget () override
 
virtual ViewPaneHeaderSubtypeWidgetgetHeaderSubtypeWidget () override
 
virtual QWidget * getHeaderOptionsWidget () override
 
virtual void followPointer ()
 
virtual bool canCopyWithTransform () override
 
virtual void cut () override
 
virtual void copy (TransformRef xform=nullptr) override
 
virtual void paste (TransformRef xform=nullptr) override
 
virtual void copyAddress () override
 
virtual HighlightTokenState getHighlightTokenState () override
 
void setHighlightTokenState (const HighlightTokenState &hts)
 
virtual BinaryNinja::FunctionViewType getILViewType () override
 
virtual void setILViewType (const BinaryNinja::FunctionViewType &ilViewType) override
 
void setHighlightMode (HexEditorHighlightMode mode)
 
void setColorMode (HexEditorColorMode mode)
 
void setContrast (HexEditorHighlightContrast mode)
 
void toggleOption (BNDisassemblyOption option)
 
void setAddressMode (std::optional< BNDisassemblyAddressMode > mode, std::optional< bool > hex, std::optional< bool > withName)
 
void setCallParamHints (BNDisassemblyCallParameterHints hints)
 
void setDisplayedFileName ()
 
void setAddressBaseOffset (bool toHere)
 
virtual bool goToReference (FunctionRef func, uint64_t source, uint64_t target) override
 
QFont getFont () override
 
virtual void clearRelatedHighlights () override
 
virtual void setRelatedIndexHighlights (FunctionRef func, const std::set< size_t > &related) override
 
virtual void setRelatedInstructionHighlights (FunctionRef func, const std::set< uint64_t > &related) override
 
bool singleFunctionView () const
 
void setSingleFunctionView (bool singleFunctionView)
 
- Public Member Functions inherited from View
 View ()
 
virtual ~View ()
 
void enableRefreshTimer (QWidget *owner, int interval)
 
void setRefreshQuiesce (bool enable)
 
bool isQuiesced () const
 
virtual void notifyQuiesce (bool)
 
void setupView (QWidget *widget)
 
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, const BinaryNinja::FunctionViewType &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, const BinaryNinja::FunctionViewType &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, const BinaryNinja::FunctionViewType &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, const BinaryNinja::FunctionViewType &graph, const std::function< bool(size_t current, size_t total)> &cb, const std::function< bool(uint64_t addr, const BinaryNinja::LinearDisassemblyLine &line)> &matchCallback)
 
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 updateTheme ()
 
virtual void undo ()
 
virtual void redo ()
 
virtual bool canUndo ()
 
virtual bool canRedo ()
 
virtual bool canCut ()
 
virtual bool canCopy ()
 
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)
 
MenucontextMenu ()
 
UIActionHandleractionHandler ()
 
QWidget * widget ()
 
QString viewType ()
 
void updateCrossReferenceSelection (ViewFrame *frame=nullptr)
 
void forceSyncFromView (ViewFrame *frame=nullptr)
 
void notifyContextMenuCreated ()
 
- Public Member Functions inherited from BinaryNinja::BinaryDataNotification
 BinaryDataNotification ()
 
 BinaryDataNotification (NotificationTypes notifications)
 
virtual ~BinaryDataNotification ()
 
BNBinaryDataNotificationGetCallbacks ()
 
virtual uint64_t OnNotificationBarrier (BinaryView *view)
 
virtual void OnAnalysisFunctionUpdateRequested (BinaryView *view, Function *func)
 
virtual void OnTagTypeUpdated (BinaryView *view, Ref< TagType > tagTypeRef)
 
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 OnTypeReferenceChanged (BinaryView *data, const QualifiedName &name, Type *type)
 
virtual void OnTypeFieldReferenceChanged (BinaryView *data, const QualifiedName &name, uint64_t offset)
 
virtual void OnSegmentAdded (BinaryView *data, Segment *segment)
 
virtual void OnSegmentRemoved (BinaryView *data, Segment *segment)
 
virtual void OnSegmentUpdated (BinaryView *data, Segment *segment)
 
virtual void OnSectionAdded (BinaryView *data, Section *section)
 
virtual void OnSectionRemoved (BinaryView *data, Section *section)
 
virtual void OnSectionUpdated (BinaryView *data, Section *section)
 
virtual void OnComponentNameUpdated (BinaryView *data, std::string &previousName, Component *component)
 This notification is posted after the display name for a component is updated.
 
virtual void OnComponentAdded (BinaryView *data, Component *component)
 This notification is posted after a Component is added to the tree.
 
virtual void OnComponentRemoved (BinaryView *data, Component *formerParent, Component *component)
 This notification is posted after a Component is removed from the tree.
 
virtual void OnComponentMoved (BinaryView *data, Component *formerParent, Component *newParent, Component *component)
 This notification is posted whenever a component is moved from one component to another.
 
virtual void OnComponentFunctionAdded (BinaryView *data, Component *component, Function *function)
 This notification is posted whenever a Function is added to a Component.
 
virtual void OnComponentFunctionRemoved (BinaryView *data, Component *component, Function *function)
 This notification is posted whenever a Function is removed from a Component.
 
virtual void OnComponentDataVariableAdded (BinaryView *data, Component *component, const DataVariable &var)
 This notification is posted whenever a DataVariable is added to a Component.
 
virtual void OnComponentDataVariableRemoved (BinaryView *data, Component *component, const DataVariable &var)
 This notification is posted whenever a DataVariable is removed from a Component.
 
virtual void OnExternalLibraryAdded (BinaryView *data, ExternalLibrary *library)
 
virtual void OnExternalLibraryRemoved (BinaryView *data, ExternalLibrary *library)
 
virtual void OnExternalLibraryUpdated (BinaryView *data, ExternalLibrary *library)
 
virtual void OnExternalLocationAdded (BinaryView *data, ExternalLocation *location)
 
virtual void OnExternalLocationRemoved (BinaryView *data, ExternalLocation *location)
 
virtual void OnExternalLocationUpdated (BinaryView *data, ExternalLocation *location)
 
virtual void OnTypeArchiveAttached (BinaryView *data, const std::string &id, const std::string &path)
 This notification is posted whenever a Type Archive is attached to a Binary View.
 
virtual void OnTypeArchiveDetached (BinaryView *data, const std::string &id, const std::string &path)
 This notification is posted whenever a Type Archive is detached to a Binary View.
 
virtual void OnTypeArchiveConnected (BinaryView *data, TypeArchive *archive)
 This notification is posted whenever a previously disconnected Type Archive attached to the Binary View is connected.
 
virtual void OnTypeArchiveDisconnected (BinaryView *data, TypeArchive *archive)
 This notification is posted whenever a previously connected Type Archive attached to the Binary View is disconnected.
 
virtual void OnUndoEntryAdded (BinaryView *data, UndoEntry *entry)
 This notification is posted whenever an entry is added to undo history.
 
virtual void OnUndoEntryTaken (BinaryView *data, UndoEntry *entry)
 This notification is posted whenever an action is undone.
 
virtual void OnRedoEntryTaken (BinaryView *data, UndoEntry *entry)
 This notification is posted whenever an action is redone.
 
virtual void OnRebased (BinaryView *oldView, BinaryView *newView)
 This notification is posted whenever a binary view is rebased.
 

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 wheelEvent (QWheelEvent *event) override
 
virtual void mousePressEvent (QMouseEvent *event) override
 
virtual void mouseMoveEvent (QMouseEvent *event) override
 
virtual void mouseDoubleClickEvent (QMouseEvent *event) override
 
void up (bool selecting, size_t count=1)
 
void down (bool selecting, size_t count=1)
 
void left (bool selecting)
 
void right (bool selecting)
 
void leftToSymbol (bool selecting)
 
void rightToSymbol (bool selecting)
 
void moveToStartOfLine (bool selecting)
 
void moveToEndOfLine (bool selecting)
 
void moveToStartOfView ()
 
void moveToEndOfView ()
 
void selectNone ()
 
void navigateToHighlightedToken ()
 
void splitToNewTabAndNavigateFromCursorPosition ()
 
void splitToNewWindowAndNavigateFromCursorPosition ()
 
void splitToNewPaneAndNavigateFromCursorPosition ()
 
void extendSelectionToStartOfBinary ()
 
void extendSelectionToEndOfBinary ()
 
void extendSelectionToStartOfSection ()
 
void extendSelectionToEndOfSection ()
 
void extendSelectionToStartOfSegment ()
 
void extendSelectionToEndOfSegment ()
 
void extendSelectionToStartOfDataVariable ()
 
void extendSelectionToEndOfDataVariable ()
 
void extendSelectionByBytes ()
 
void extendSelectionToAddress ()
 
void setSelectionSizeTo ()
 
void saveSelectionTo ()
 
bool canExtendSelectionToStartOfSection ()
 
bool canExtendSelectionToEndOfSection ()
 
bool canExtendSelectionToStartOfSegment ()
 
bool canExtendSelectionToEndOfSegment ()
 
bool canExtendSelectionToStartOfDataVariable ()
 
bool canExtendSelectionToEndOfDataVariable ()
 
- 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

- Public Types inherited from BinaryNinja::BinaryDataNotification
enum  NotificationType : uint64_t {
  NotificationBarrier = 1ULL << 0 , DataWritten = 1ULL << 1 , DataInserted = 1ULL << 2 , DataRemoved = 1ULL << 3 ,
  FunctionAdded = 1ULL << 4 , FunctionRemoved = 1ULL << 5 , FunctionUpdated = 1ULL << 6 , FunctionUpdateRequested = 1ULL << 7 ,
  DataVariableAdded = 1ULL << 8 , DataVariableRemoved = 1ULL << 9 , DataVariableUpdated = 1ULL << 10 , DataMetadataUpdated = 1ULL << 11 ,
  TagTypeUpdated = 1ULL << 12 , TagAdded = 1ULL << 13 , TagRemoved = 1ULL << 14 , TagUpdated = 1ULL << 15 ,
  SymbolAdded = 1ULL << 16 , SymbolRemoved = 1ULL << 17 , SymbolUpdated = 1ULL << 18 , StringFound = 1ULL << 19 ,
  StringRemoved = 1ULL << 20 , TypeDefined = 1ULL << 21 , TypeUndefined = 1ULL << 22 , TypeReferenceChanged = 1ULL << 23 ,
  TypeFieldReferenceChanged = 1ULL << 24 , SegmentAdded = 1ULL << 25 , SegmentRemoved = 1ULL << 26 , SegmentUpdated = 1ULL << 27 ,
  SectionAdded = 1ULL << 28 , SectionRemoved = 1ULL << 29 , SectionUpdated = 1ULL << 30 , ComponentNameUpdated = 1ULL << 31 ,
  ComponentAdded = 1ULL << 32 , ComponentRemoved = 1ULL << 33 , ComponentMoved = 1ULL << 34 , ComponentFunctionAdded = 1ULL << 35 ,
  ComponentFunctionRemoved = 1ULL << 36 , ComponentDataVariableAdded = 1ULL << 37 , ComponentDataVariableRemoved = 1ULL << 38 , ExternalLibraryAdded = 1ULL << 39 ,
  ExternalLibraryRemoved = 1ULL << 40 , ExternalLibraryUpdated = 1ULL << 41 , ExternalLocationAdded = 1ULL << 42 , ExternalLocationRemoved = 1ULL << 43 ,
  ExternalLocationUpdated = 1ULL << 44 , TypeArchiveAttached = 1ULL << 45 , TypeArchiveDetached = 1ULL << 46 , TypeArchiveConnected = 1ULL << 47 ,
  TypeArchiveDisconnected = 1ULL << 48 , UndoEntryAdded = 1ULL << 49 , UndoEntryTaken = 1ULL << 50 , RedoEntryTaken = 1ULL << 51 ,
  Rebased = 1ULL << 52 , BinaryDataUpdates = DataWritten | DataInserted | DataRemoved , FunctionLifetime = FunctionAdded | FunctionRemoved , FunctionUpdates = FunctionLifetime | FunctionUpdated ,
  DataVariableLifetime = DataVariableAdded | DataVariableRemoved , DataVariableUpdates = DataVariableLifetime | DataVariableUpdated , TagLifetime = TagAdded | TagRemoved , TagUpdates = TagLifetime | TagUpdated ,
  SymbolLifetime = SymbolAdded | SymbolRemoved , SymbolUpdates = SymbolLifetime | SymbolUpdated , StringUpdates = StringFound | StringRemoved , TypeLifetime = TypeDefined | TypeUndefined ,
  TypeUpdates = TypeLifetime | TypeReferenceChanged | TypeFieldReferenceChanged , SegmentLifetime = SegmentAdded | SegmentRemoved , SegmentUpdates = SegmentLifetime | SegmentUpdated , SectionLifetime = SectionAdded | SectionRemoved ,
  SectionUpdates = SectionLifetime | SectionUpdated , ComponentUpdates = ComponentNameUpdated | ComponentAdded | ComponentRemoved | ComponentMoved | ComponentFunctionAdded | ComponentFunctionRemoved | ComponentDataVariableAdded | ComponentDataVariableRemoved , ExternalLibraryLifetime = ExternalLibraryAdded | ExternalLibraryRemoved , ExternalLibraryUpdates = ExternalLibraryLifetime | ExternalLibraryUpdated ,
  ExternalLocationLifetime = ExternalLocationAdded | ExternalLocationRemoved , ExternalLocationUpdates = ExternalLocationLifetime | ExternalLocationUpdated , TypeArchiveUpdates = TypeArchiveAttached | TypeArchiveDetached | TypeArchiveConnected | TypeArchiveDisconnected , UndoUpdates = UndoEntryAdded | UndoEntryTaken | RedoEntryTaken
}
 
using NotificationTypes = uint64_t
 
- Protected Attributes inherited from View
Menu m_contextMenu
 
UIActionHandler m_actionHandler
 
bool m_binaryDataNavigable = false
 
QPointer< TransformParameterDialogm_transformParamDialog
 
bool m_quiesceState = true
 
QTimer * m_updateTimer = nullptr
 

Constructor & Destructor Documentation

◆ LinearView()

LinearView::LinearView ( BinaryViewRef data,
ViewFrame * view )
explicit

◆ ~LinearView()

virtual LinearView::~LinearView ( )
virtual

Member Function Documentation

◆ notifyResizeEvent

void LinearView::notifyResizeEvent ( int width,
int height )
signal

◆ notifyRefresh()

virtual void LinearView::notifyRefresh ( )
overridevirtual

Reimplemented from View.

◆ canAssemble()

virtual bool LinearView::canAssemble ( )
inlineoverridevirtual

Reimplemented from View.

◆ canCompile()

virtual bool LinearView::canCompile ( )
inlineoverridevirtual

Reimplemented from View.

◆ getData()

virtual BinaryViewRef LinearView::getData ( )
inlineoverridevirtual

Implements View.

◆ getCurrentOffsetByType()

void LinearView::getCurrentOffsetByType ( TypeRef resType,
uint64_t baseAddr,
uint64_t & begin,
uint64_t & end,
bool singleLine )

◆ getDisassemblySettings()

virtual DisassemblySettingsRef LinearView::getDisassemblySettings ( )
overridevirtual

Reimplemented from View.

◆ setDisassemblySettings()

virtual void LinearView::setDisassemblySettings ( DisassemblySettingsRef settings)
overridevirtual

Reimplemented from View.

◆ getCurrentOffset()

virtual uint64_t LinearView::getCurrentOffset ( )
overridevirtual

Implements View.

◆ actionContext()

virtual UIActionContext LinearView::actionContext ( )
overridevirtual

Reimplemented from View.

◆ getSelectionOffsets()

virtual BNAddressRange LinearView::getSelectionOffsets ( )
overridevirtual

Reimplemented from View.

◆ getSelectionForXref()

virtual SelectionInfoForXref LinearView::getSelectionForXref ( )
overridevirtual

Reimplemented from View.

◆ setSelectionOffsets()

virtual void LinearView::setSelectionOffsets ( BNAddressRange range)
overridevirtual

Implements View.

◆ getCurrentFunction()

virtual FunctionRef LinearView::getCurrentFunction ( )
overridevirtual

Reimplemented from View.

◆ getCurrentLowLevelILFunction()

virtual LowLevelILFunctionRef LinearView::getCurrentLowLevelILFunction ( )
overridevirtual

Reimplemented from View.

◆ getCurrentMediumLevelILFunction()

virtual MediumLevelILFunctionRef LinearView::getCurrentMediumLevelILFunction ( )
overridevirtual

Reimplemented from View.

◆ getCurrentHighLevelILFunction()

virtual HighLevelILFunctionRef LinearView::getCurrentHighLevelILFunction ( )
overridevirtual

Reimplemented from View.

◆ getCurrentBasicBlock()

virtual BasicBlockRef LinearView::getCurrentBasicBlock ( )
overridevirtual

Reimplemented from View.

◆ getCurrentArchitecture()

virtual ArchitectureRef LinearView::getCurrentArchitecture ( )
overridevirtual

Reimplemented from View.

◆ getCurrentILInstructionIndex()

virtual size_t LinearView::getCurrentILInstructionIndex ( )
overridevirtual

Reimplemented from View.

◆ getSelectionStartILInstructionIndex()

virtual size_t LinearView::getSelectionStartILInstructionIndex ( )
overridevirtual

Reimplemented from View.

◆ getILIndexRange()

virtual BNILIndexRange LinearView::getILIndexRange ( )
overridevirtual

Reimplemented from View.

◆ navigate()

virtual bool LinearView::navigate ( uint64_t offset)
overridevirtual

Implements View.

◆ navigateToFunction()

virtual bool LinearView::navigateToFunction ( FunctionRef func,
uint64_t offset )
overridevirtual

Reimplemented from View.

◆ navigateToViewLocation()

virtual bool LinearView::navigateToViewLocation ( const ViewLocation & viewLocation,
bool center = false )
overridevirtual

Reimplemented from View.

◆ getHistoryEntry()

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

Reimplemented from View.

◆ navigateToHistoryEntry()

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

Reimplemented from View.

◆ OnBinaryDataWritten()

virtual void LinearView::OnBinaryDataWritten ( BinaryNinja::BinaryView * data,
uint64_t offset,
size_t len )
overridevirtual

◆ OnBinaryDataInserted()

virtual void LinearView::OnBinaryDataInserted ( BinaryNinja::BinaryView * data,
uint64_t offset,
size_t len )
overridevirtual

◆ OnBinaryDataRemoved()

virtual void LinearView::OnBinaryDataRemoved ( BinaryNinja::BinaryView * data,
uint64_t offset,
uint64_t len )
overridevirtual

◆ OnAnalysisFunctionAdded()

virtual void LinearView::OnAnalysisFunctionAdded ( BinaryNinja::BinaryView * view,
BinaryNinja::Function * func )
overridevirtual

◆ OnAnalysisFunctionRemoved()

virtual void LinearView::OnAnalysisFunctionRemoved ( BinaryNinja::BinaryView * view,
BinaryNinja::Function * func )
overridevirtual

◆ OnAnalysisFunctionUpdated()

virtual void LinearView::OnAnalysisFunctionUpdated ( BinaryNinja::BinaryView * view,
BinaryNinja::Function * func )
overridevirtual

◆ OnDataVariableAdded()

virtual void LinearView::OnDataVariableAdded ( BinaryNinja::BinaryView * view,
const BinaryNinja::DataVariable & var )
overridevirtual

◆ OnDataVariableRemoved()

virtual void LinearView::OnDataVariableRemoved ( BinaryNinja::BinaryView * view,
const BinaryNinja::DataVariable & var )
overridevirtual

◆ OnDataVariableUpdated()

virtual void LinearView::OnDataVariableUpdated ( BinaryNinja::BinaryView * view,
const BinaryNinja::DataVariable & var )
overridevirtual

◆ OnDataMetadataUpdated()

virtual void LinearView::OnDataMetadataUpdated ( BinaryNinja::BinaryView * view,
uint64_t offset )
overridevirtual

◆ OnSymbolAdded()

virtual void LinearView::OnSymbolAdded ( BinaryNinja::BinaryView * view,
BinaryNinja::Symbol * var )
overridevirtual

◆ OnSymbolRemoved()

virtual void LinearView::OnSymbolRemoved ( BinaryNinja::BinaryView * view,
BinaryNinja::Symbol * var )
overridevirtual

◆ OnSymbolUpdated()

virtual void LinearView::OnSymbolUpdated ( BinaryNinja::BinaryView * view,
BinaryNinja::Symbol * var )
overridevirtual

◆ OnTagAdded()

virtual void LinearView::OnTagAdded ( BinaryNinja::BinaryView * view,
const BinaryNinja::TagReference & tagRef )
overridevirtual

◆ OnTagUpdated()

virtual void LinearView::OnTagUpdated ( BinaryNinja::BinaryView * view,
const BinaryNinja::TagReference & tagRef )
overridevirtual

◆ OnTagRemoved()

virtual void LinearView::OnTagRemoved ( BinaryNinja::BinaryView * view,
const BinaryNinja::TagReference & tagRef )
overridevirtual

◆ OnTypeDefined()

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

◆ OnTypeUndefined()

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

◆ MarkUpdatesForRegion()

virtual void LinearView::MarkUpdatesForRegion ( uint64_t start,
uint64_t end )
virtual

◆ MarkUpdatesForFunction()

virtual void LinearView::MarkUpdatesForFunction ( BinaryNinja::Function * func)
virtual

◆ MarkUpdatesForType()

virtual void LinearView::MarkUpdatesForType ( BinaryNinja::BinaryView * view,
const BinaryNinja::QualifiedName & name,
BinaryNinja::Type * type )
virtual

◆ MarkUpdatesForDataVariable()

virtual void LinearView::MarkUpdatesForDataVariable ( BinaryNinja::BinaryView * view,
const BinaryNinja::DataVariable & var )
virtual

◆ updateFonts()

virtual void LinearView::updateFonts ( )
overridevirtual

Reimplemented from View.

◆ getStatusBarWidget()

virtual StatusBarWidget * LinearView::getStatusBarWidget ( )
overridevirtual

Reimplemented from View.

◆ getHeaderSubtypeWidget()

virtual ViewPaneHeaderSubtypeWidget * LinearView::getHeaderSubtypeWidget ( )
overridevirtual

Reimplemented from View.

◆ getHeaderOptionsWidget()

virtual QWidget * LinearView::getHeaderOptionsWidget ( )
overridevirtual

Reimplemented from View.

◆ followPointer()

virtual void LinearView::followPointer ( )
virtual

◆ canCopyWithTransform()

virtual bool LinearView::canCopyWithTransform ( )
overridevirtual

Reimplemented from View.

◆ cut()

virtual void LinearView::cut ( )
overridevirtual

Reimplemented from View.

◆ copy()

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

Reimplemented from View.

◆ paste()

virtual void LinearView::paste ( TransformRef xform = nullptr)
overridevirtual

Reimplemented from View.

◆ copyAddress()

virtual void LinearView::copyAddress ( )
overridevirtual

Reimplemented from View.

◆ getHighlightTokenState()

virtual HighlightTokenState LinearView::getHighlightTokenState ( )
inlineoverridevirtual

Reimplemented from View.

◆ setHighlightTokenState()

void LinearView::setHighlightTokenState ( const HighlightTokenState & hts)

◆ getILViewType()

virtual BinaryNinja::FunctionViewType LinearView::getILViewType ( )
inlineoverridevirtual

Reimplemented from View.

◆ setILViewType()

virtual void LinearView::setILViewType ( const BinaryNinja::FunctionViewType & ilViewType)
overridevirtual

Reimplemented from View.

◆ setHighlightMode()

void LinearView::setHighlightMode ( HexEditorHighlightMode mode)

◆ setColorMode()

void LinearView::setColorMode ( HexEditorColorMode mode)

◆ setContrast()

void LinearView::setContrast ( HexEditorHighlightContrast mode)

◆ toggleOption()

void LinearView::toggleOption ( BNDisassemblyOption option)

◆ setAddressMode()

void LinearView::setAddressMode ( std::optional< BNDisassemblyAddressMode > mode,
std::optional< bool > hex,
std::optional< bool > withName )

◆ setCallParamHints()

void LinearView::setCallParamHints ( BNDisassemblyCallParameterHints hints)

◆ setDisplayedFileName()

void LinearView::setDisplayedFileName ( )

◆ setAddressBaseOffset()

void LinearView::setAddressBaseOffset ( bool toHere)

◆ goToReference()

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

Reimplemented from View.

◆ getFont()

QFont LinearView::getFont ( )
inlineoverridevirtual

Implements View.

◆ clearRelatedHighlights()

virtual void LinearView::clearRelatedHighlights ( )
overridevirtual

Reimplemented from View.

◆ setRelatedIndexHighlights()

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

Reimplemented from View.

◆ setRelatedInstructionHighlights()

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

Reimplemented from View.

◆ singleFunctionView()

bool LinearView::singleFunctionView ( ) const
inline

◆ setSingleFunctionView()

void LinearView::setSingleFunctionView ( bool singleFunctionView)

◆ registerActions()

static void LinearView::registerActions ( )
static

◆ resizeEvent()

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

◆ paintEvent()

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

◆ wheelEvent()

virtual void LinearView::wheelEvent ( QWheelEvent * event)
overrideprotectedvirtual

◆ mousePressEvent()

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

◆ mouseMoveEvent()

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

◆ mouseDoubleClickEvent()

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

◆ up()

void LinearView::up ( bool selecting,
size_t count = 1 )
protected

◆ down()

void LinearView::down ( bool selecting,
size_t count = 1 )
protected

◆ left()

void LinearView::left ( bool selecting)
protected

◆ right()

void LinearView::right ( bool selecting)
protected

◆ leftToSymbol()

void LinearView::leftToSymbol ( bool selecting)
protected

◆ rightToSymbol()

void LinearView::rightToSymbol ( bool selecting)
protected

◆ moveToStartOfLine()

void LinearView::moveToStartOfLine ( bool selecting)
protected

◆ moveToEndOfLine()

void LinearView::moveToEndOfLine ( bool selecting)
protected

◆ moveToStartOfView()

void LinearView::moveToStartOfView ( )
protected

◆ moveToEndOfView()

void LinearView::moveToEndOfView ( )
protected

◆ selectNone()

void LinearView::selectNone ( )
protected

◆ navigateToHighlightedToken()

void LinearView::navigateToHighlightedToken ( )
protected

◆ splitToNewTabAndNavigateFromCursorPosition()

void LinearView::splitToNewTabAndNavigateFromCursorPosition ( )
protected

◆ splitToNewWindowAndNavigateFromCursorPosition()

void LinearView::splitToNewWindowAndNavigateFromCursorPosition ( )
protected

◆ splitToNewPaneAndNavigateFromCursorPosition()

void LinearView::splitToNewPaneAndNavigateFromCursorPosition ( )
protected

◆ extendSelectionToStartOfBinary()

void LinearView::extendSelectionToStartOfBinary ( )
protected

◆ extendSelectionToEndOfBinary()

void LinearView::extendSelectionToEndOfBinary ( )
protected

◆ extendSelectionToStartOfSection()

void LinearView::extendSelectionToStartOfSection ( )
protected

◆ extendSelectionToEndOfSection()

void LinearView::extendSelectionToEndOfSection ( )
protected

◆ extendSelectionToStartOfSegment()

void LinearView::extendSelectionToStartOfSegment ( )
protected

◆ extendSelectionToEndOfSegment()

void LinearView::extendSelectionToEndOfSegment ( )
protected

◆ extendSelectionToStartOfDataVariable()

void LinearView::extendSelectionToStartOfDataVariable ( )
protected

◆ extendSelectionToEndOfDataVariable()

void LinearView::extendSelectionToEndOfDataVariable ( )
protected

◆ extendSelectionByBytes()

void LinearView::extendSelectionByBytes ( )
protected

◆ extendSelectionToAddress()

void LinearView::extendSelectionToAddress ( )
protected

◆ setSelectionSizeTo()

void LinearView::setSelectionSizeTo ( )
protected

◆ saveSelectionTo()

void LinearView::saveSelectionTo ( )
protected

◆ canExtendSelectionToStartOfSection()

bool LinearView::canExtendSelectionToStartOfSection ( )
protected

◆ canExtendSelectionToEndOfSection()

bool LinearView::canExtendSelectionToEndOfSection ( )
protected

◆ canExtendSelectionToStartOfSegment()

bool LinearView::canExtendSelectionToStartOfSegment ( )
protected

◆ canExtendSelectionToEndOfSegment()

bool LinearView::canExtendSelectionToEndOfSegment ( )
protected

◆ canExtendSelectionToStartOfDataVariable()

bool LinearView::canExtendSelectionToStartOfDataVariable ( )
protected

◆ canExtendSelectionToEndOfDataVariable()

bool LinearView::canExtendSelectionToEndOfDataVariable ( )
protected

◆ LinearViewType

class LinearViewType

Public Member Functions

 LinearViewType ()
 
virtual int getPriority (BinaryViewRef data, const QString &filename) override
 
virtual QWidget * create (BinaryViewRef data, ViewFrame *viewFrame) override
 
- Public Member Functions inherited from ViewType
 ViewType (const QString &name, const QString &longName)
 
virtual ~ViewType ()
 
const QString & getName ()
 
const QString & getLongName ()
 
virtual QString getDisplayName (BinaryViewTypeRef type)
 
virtual QString getDisplayLongName (BinaryViewTypeRef type)
 

Static Public Member Functions

static void init ()
 
- Static Public Member Functions inherited from ViewType
static ViewTypegetTypeByName (const QString &name)
 
static const std::vector< ViewType * > & getTypes ()
 
static void registerViewType (ViewType *type)
 

Constructor & Destructor Documentation

◆ LinearViewType()

LinearViewType::LinearViewType ( )

Member Function Documentation

◆ getPriority()

virtual int LinearViewType::getPriority ( BinaryViewRef data,
const QString & filename )
overridevirtual

Implements ViewType.

◆ create()

virtual QWidget * LinearViewType::create ( BinaryViewRef data,
ViewFrame * viewFrame )
overridevirtual

Implements ViewType.

◆ init()

static void LinearViewType::init ( )
static