Wireshark 4.7.0
The Wireshark network protocol analyzer
Loading...
Searching...
No Matches
Public Slots | Signals | Public Member Functions | Protected Member Functions | List of all members
DisplayFilterEdit Class Reference

A line edit widget specialized for entering, validating, and managing display filters. More...

#include <display_filter_edit.h>

Inheritance diagram for DisplayFilterEdit:
SyntaxLineEdit

Public Slots

bool checkFilter ()
 Validates the syntax of the current display filter.
 
void updateBookmarkMenu ()
 Updates the bookmark menu with current saved filters.
 
void applyDisplayFilter ()
 Applies the currently entered display filter.
 
void displayFilterSuccess (bool success)
 Updates the UI state indicating whether the display filter was successfully applied.
 
void setStyleSheet (const QString &style_sheet)
 Sets the widget's style sheet.
 
- Public Slots inherited from SyntaxLineEdit
void setStyleSheet (const QString &style_sheet)
 Sets the base style sheet; the state-driven style is composited on top.
 
void insertFilter (const QString &filter)
 Inserts filter text at the cursor position, adding surrounding spaces where necessary to keep the expression well-formed.
 
bool checkDisplayFilter (QString filter)
 Validates filter as a Wireshark display filter and updates the syntax state and error message accordingly.
 
void checkFieldName (QString field)
 Validates field as a protocol field name and updates the syntax state.
 
void checkCustomColumn (QString fields)
 Validates fields as a custom-column field expression and updates the syntax state.
 
void checkInteger (QString number)
 Validates number as a well-formed integer and updates the syntax state.
 

Signals

void pushFilterSyntaxStatus (const QString &msg)
 Signal emitted to push a status message regarding filter syntax.
 
void popFilterSyntaxStatus ()
 Signal emitted to pop (remove) the last filter syntax status message.
 
void filterPackets (QString new_filter, bool force)
 Signal emitted to request packet filtering with a new filter string.
 
void showPreferencesDialog (QString pane_name)
 Signal emitted to request displaying the preferences dialog.
 

Public Member Functions

 DisplayFilterEdit (QWidget *parent=0, DisplayFilterEditType type=DisplayFilterToEnter)
 Constructs a new DisplayFilterEdit widget.
 
void setType (DisplayFilterEditType type)
 Sets the type of the display filter edit widget.
 
- Public Member Functions inherited from SyntaxLineEdit
 SyntaxLineEdit (QWidget *parent=0)
 Constructs the SyntaxLineEdit in the Empty state with no completer.
 
SyntaxState syntaxState () const
 Returns the current syntax validation state.
 
void setSyntaxState (SyntaxState state=Empty)
 Sets the syntax state and updates the widget's style sheet to reflect it.
 
QString syntaxErrorMessage ()
 Returns a short, human-readable description of the current syntax error.
 
QString syntaxErrorMessageFull ()
 Returns a full error message that includes the filter expression and the location of the error within it.
 
QString styleSheet () const
 Returns the base style sheet, excluding any state-driven overrides.
 
QString deprecatedToken ()
 Returns the deprecated token string when the state is Deprecated.
 
void setCompleter (QCompleter *c)
 Installs a QCompleter for token-based autocompletion.
 
QCompleter * completer () const
 Returns the currently installed completer.
 
void allowCompletion (bool enabled)
 Enables or disables autocompletion without removing the completer.
 

Protected Member Functions

void paintEvent (QPaintEvent *evt)
 Handles paint events for the widget.
 
void resizeEvent (QResizeEvent *)
 Handles resize events for the widget.
 
void keyPressEvent (QKeyEvent *event)
 Handles key press events and forwards them to the completion logic.
 
void focusInEvent (QFocusEvent *event)
 Handles focus in events and forwards them to the completion logic.
 
void focusOutEvent (QFocusEvent *event)
 Handles focus out events for the widget.
 
virtual void dragEnterEvent (QDragEnterEvent *event)
 Handles drag enter events to accept valid drops.
 
virtual void dragMoveEvent (QDragMoveEvent *event)
 Handles drag move events for visual feedback.
 
virtual void dropEvent (QDropEvent *event)
 Handles drop events containing filter data.
 
virtual void contextMenuEvent (QContextMenuEvent *menu)
 Handles context menu events to display appropriate actions.
 
- Protected Member Functions inherited from SyntaxLineEdit
void setCompletionTokenChars (const QString &token_chars)
 Sets the characters that may appear in a completion token (e.g. letters, digits, underscores, dots). Must be called by subclasses before completion is used.
 
bool isComplexFilter (const QString &filter)
 Returns true if filter contains operators or structure that make it too complex for token-level autocompletion.
 
QPoint getTokenUnderCursor ()
 Returns the start position and length of the token under the cursor.
 
QStringList splitLineUnderCursor ()
 Splits the line at the cursor into the preamble and the current token.
 
virtual bool event (QEvent *event)
 Intercepts Tab and other keys to trigger or dismiss the completer.
 
void completionKeyPressEvent (QKeyEvent *event)
 Handles key press events while the completer popup is visible, forwarding navigation keys to the popup and committing on Enter/Tab.
 
void completionFocusInEvent (QFocusEvent *event)
 Triggers a completion refresh when the widget gains focus.
 

Additional Inherited Members

- Public Types inherited from SyntaxLineEdit
enum  SyntaxState {
  Empty , Busy , Invalid , Deprecated ,
  Valid
}
 Visual and semantic state of the text currently in the editor. More...
 
- Static Public Member Functions inherited from SyntaxLineEdit
static QString createSyntaxErrorMessageFull (const QString &filter, const QString &err_msg, qsizetype loc_start, size_t loc_length)
 Builds a full syntax error message string combining the filter expression with a location-annotated error description.
 
- Protected Attributes inherited from SyntaxLineEdit
QCompleter * completer_
 
QStringListModel * completion_model_
 
- Properties inherited from SyntaxLineEdit
SyntaxState syntaxState
 

Detailed Description

A line edit widget specialized for entering, validating, and managing display filters.

Constructor & Destructor Documentation

◆ DisplayFilterEdit()

DisplayFilterEdit::DisplayFilterEdit ( QWidget *  parent = 0,
DisplayFilterEditType  type = DisplayFilterToEnter 
)
explicit

Constructs a new DisplayFilterEdit widget.

Parameters
parentThe parent widget, defaults to 0.
typeThe display filter edit type, defaults to DisplayFilterToEnter.

Member Function Documentation

◆ checkFilter

bool DisplayFilterEdit::checkFilter ( )
slot

Validates the syntax of the current display filter.

Returns
True if the filter is valid, false otherwise.

◆ contextMenuEvent()

void DisplayFilterEdit::contextMenuEvent ( QContextMenuEvent *  menu)
protectedvirtual

Handles context menu events to display appropriate actions.

Parameters
menuThe context menu event details.

◆ displayFilterSuccess

void DisplayFilterEdit::displayFilterSuccess ( bool  success)
slot

Updates the UI state indicating whether the display filter was successfully applied.

Parameters
successTrue if the application succeeded, false otherwise.

◆ dragEnterEvent()

void DisplayFilterEdit::dragEnterEvent ( QDragEnterEvent *  event)
protectedvirtual

Handles drag enter events to accept valid drops.

Parameters
eventThe drag enter event details.

◆ dragMoveEvent()

void DisplayFilterEdit::dragMoveEvent ( QDragMoveEvent *  event)
protectedvirtual

Handles drag move events for visual feedback.

Parameters
eventThe drag move event details.

◆ dropEvent()

void DisplayFilterEdit::dropEvent ( QDropEvent *  event)
protectedvirtual

Handles drop events containing filter data.

Parameters
eventThe drop event details.

◆ filterPackets

void DisplayFilterEdit::filterPackets ( QString  new_filter,
bool  force 
)
signal

Signal emitted to request packet filtering with a new filter string.

Parameters
new_filterThe new filter string to apply.
forceTrue to force the application even if the string hasn't changed.

◆ focusInEvent()

void DisplayFilterEdit::focusInEvent ( QFocusEvent *  event)
inlineprotected

Handles focus in events and forwards them to the completion logic.

Parameters
eventThe focus event details.

◆ focusOutEvent()

void DisplayFilterEdit::focusOutEvent ( QFocusEvent *  event)
protectedvirtual

Handles focus out events for the widget.

Parameters
eventThe focus event details.

Reimplemented from SyntaxLineEdit.

◆ keyPressEvent()

void DisplayFilterEdit::keyPressEvent ( QKeyEvent *  event)
inlineprotected

Handles key press events and forwards them to the completion logic.

Parameters
eventThe key press event details.

◆ paintEvent()

void DisplayFilterEdit::paintEvent ( QPaintEvent *  evt)
protectedvirtual

Handles paint events for the widget.

Parameters
evtThe paint event details.

Reimplemented from SyntaxLineEdit.

◆ pushFilterSyntaxStatus

void DisplayFilterEdit::pushFilterSyntaxStatus ( const QString &  msg)
signal

Signal emitted to push a status message regarding filter syntax.

Parameters
msgThe status message string.

◆ setStyleSheet

void DisplayFilterEdit::setStyleSheet ( const QString &  style_sheet)
slot

Sets the widget's style sheet.

Parameters
style_sheetThe style sheet string to apply.

◆ setType()

void DisplayFilterEdit::setType ( DisplayFilterEditType  type)

Sets the type of the display filter edit widget.

Parameters
typeThe display filter edit type to set.

◆ showPreferencesDialog

void DisplayFilterEdit::showPreferencesDialog ( QString  pane_name)
signal

Signal emitted to request displaying the preferences dialog.

Parameters
pane_nameThe specific preference pane to open.

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