46 enum SummaryCopyType {
52 Q_ENUM(SummaryCopyType)
54 virtual void scrollTo(
const QModelIndex &index, QAbstractItemView::ScrollHint hint = EnsureVisible)
override;
55 QMenu *conversationMenu() {
return &conv_menu_; }
56 QMenu *colorizeMenu() {
return &colorize_menu_; }
65 bool freeze(
bool keep_current_frame =
false);
73 bool thaw(
bool restore_selection =
false);
75 void writeRecent(FILE *rf);
76 bool contextMenuActive();
77 QString getFilterFromRowAndColumn(QModelIndex idx);
78 void resetColorized();
79 QString getPacketComment(
unsigned c_number);
80 void addPacketComment(QString new_comment);
81 void setPacketComment(
unsigned c_number, QString new_comment);
82 QString allPacketComments();
83 void deleteCommentsFromPackets();
84 void deleteAllPacketComments();
85 void setVerticalAutoScroll(
bool enabled =
true);
86 void setCaptureInProgress(
bool in_progress =
false,
bool auto_scroll =
true) { capture_in_progress_ = in_progress; tail_at_end_ = in_progress && auto_scroll; }
87 void captureFileReadFinished();
89 bool haveNextHistory(
bool update_cur =
false);
90 bool havePreviousHistory(
bool update_cur =
false);
93 frame_data * getFDataForRow(
int row)
const;
95 bool uniqueSelectActive();
96 bool multiSelectActive();
97 QList<int> selectedRows(
bool useFrameNum =
false);
99 QString createSummaryText(QModelIndex idx, SummaryCopyType type);
100 QString createHeaderSummaryText(SummaryCopyType type);
102 QStringList createHeaderPartsForAligned();
103 QList<int> createAlignmentPartsForAligned();
104 QList<int> createSizePartsForAligned(
bool useHeader, QStringList hdr_parts, QList<int> rows);
105 QString createHeaderSummaryForAligned(QStringList hdr_parts, QList<int> align_parts, QList<int> size_parts);
106 QString createSummaryForAligned(QModelIndex idx, QList<int> align_parts, QList<int> size_parts);
108 QString createDefaultStyleForHtml();
109 QString createOpeningTagForHtml();
110 QString createHeaderSummaryForHtml();
111 QString createSummaryForHtml(QModelIndex idx);
112 QString createClosingTagForHtml();
114 void resizeAllColumns(
bool onlyTimeFormatted =
false);
118 void selectionChanged(
const QItemSelection & selected,
const QItemSelection & deselected)
override;
119 virtual void contextMenuEvent(QContextMenuEvent *event)
override;
120 void timerEvent(QTimerEvent *event)
override;
121 void paintEvent(QPaintEvent *event)
override;
122 virtual void mousePressEvent (QMouseEvent *event)
override;
123 virtual void mouseReleaseEvent (QMouseEvent *event)
override;
124 virtual void mouseMoveEvent (QMouseEvent *event)
override;
125 virtual void resizeEvent(QResizeEvent *event)
override;
126 virtual void keyPressEvent(QKeyEvent *event)
override;
129 void rowsInserted(
const QModelIndex &parent,
int start,
int end)
override;
130 virtual void drawRow(QPainter *painter,
const QStyleOptionViewItem &option,
131 const QModelIndex &index)
const override;
139 QMenu colorize_menu_;
141 QByteArray column_state_;
143 int overlay_timer_id_;
144 bool create_near_overlay_;
145 bool create_far_overlay_;
146 QVector<QRgb> overlay_colors_;
147 bool changing_profile_;
149 QModelIndex mouse_pressed_at_;
152 QAction *show_hide_separator_;
153 QList<QAction *>show_hide_actions_;
154 bool capture_in_progress_;
156 bool columns_changed_;
157 bool set_column_visibility_;
158 bool set_style_sheet_;
159 QModelIndex frozen_current_row_;
160 QModelIndexList frozen_selected_rows_;
161 QVector<int> selection_history_;
164 GPtrArray *finfo_array;
167 void setFrameReftime(
bool set, frame_data *fdata);
168 void setColumnVisibility();
169 int sizeHintForColumn(
int column)
const override;
170 void setRecentColumnWidth(
int column);
171 void drawCurrentPacket();
172 void applyRecentColumnWidths();
173 void scrollViewChanged(
bool at_end);
174 QString joinSummaryRow(QStringList col_parts,
int row, SummaryCopyType type);
177 void packetDissectionChanged();
178 void showColumnPreferences(QString pane_name);
179 void editColumn(
int column);
180 void packetListScrolled(
bool at_end);
181 void showProtocolPreferences(
const QString module_name);
184 void framesSelected(QList<int>);
189 void setMonospaceFont(
const QFont &mono_font);
190 void setRegularFont(
const QFont ®ular_font);
192 void goPreviousPacket();
193 void goFirstPacket();
195 void goToPacket(
int packet,
int hf_id = -1);
196 void goNextHistoryPacket();
197 void goPreviousHistoryPacket();
199 void markAllDisplayedFrames(
bool set);
201 void ignoreAllDisplayedFrames(
bool set);
202 void setTimeReference();
203 void unsetAllTimeReferences();
204 void applyTimeShift();
205 void recolorPackets();
206 void redrawVisiblePackets();
207 void redrawVisiblePacketsDontSelectCurrent();
208 void colorsChanged();
209 void columnsChanged();
211 void preferencesChanged();
212 void freezePacketList(
bool changing_profile);
215 void columnVisibilityTriggered();
216 void sectionResized(
int col,
int,
int new_width);
217 void sectionMoved(
int,
int,
int);
218 void updateRowHeights(
const QModelIndex &ih_index);
220 void vScrollBarActionTriggered(
int);
221 void drawFarOverlay();
222 void drawNearOverlay();
223 void updatePackets(
bool redraw);
224 void ctxDecodeAsDialog();