Collect packet numbers when following streams so that we can correlate
text positions with packets. Add a FollowStreamText class so that we can
track mouse events. Add a hint label that shows the packet under the
cursor along with packet counts and the number of "turns".
Add the packet number to the C array dump. Note that dumping to YAML
might be useful for Scapy users.
svn path=/trunk/; revision=53314
Create a new dialog each time the user follows a stream. A lot of the
follow code seems to assume one and only one dialog so there are likely
outstanding bugs.
Don't use the global cfile (should we deprecate its usage?). We want to
move closer to multiple documents, not further away.
Clean up after ourselves. Free our payload list and unlink our temp
file. Make a bunch of gchar*s QStrings. Make sure our destructor gets
called and use it.
Make member variable and method names more consistent.
svn path=/trunk/; revision=53306
In the current Qt startup sequence the main window + splash screen is
displayed before the main preferences are loaded which means we can't
immediately apply the correct geometry. For now, use an animation to
morph from the default to the saved geometry after the prefs are loaded.
Get rid of main_do_quit() (Qt) and main_window_exit() (Qt+GTK). It looks
like they were unused.
Add wsApp->isInitialized() and use it to see if we should exit() when
the main window is closed. Otherwise we won't shut the application down
and clean up properly.
svn path=/trunk/; revision=52988
Copy common code from ui/gtk/flow_graph.c and ui/gtk/graph_analysis.[ch]
to ui/tap-sequence-analysis.[ch]. Start using the name "sequence" in
places.
svn path=/trunk/; revision=52824
resizable. Get rid of the group box -- the OS X and Windows HIGs
discourage its use and I'm not sure if it fits the GNOME HIG in this
case either. Make the stream contents monospace. Set the cursor to the
beginning of the text when we follow a stream.
Continue the War On Unnecessary Dialogs. Move "Find"ing from a pop-up
window to the main Follow dialog. Wrap back to the beginning as needed.
Add a "Cancel" button. Make sure it and the escape key work as expected.
svn path=/trunk/; revision=52607
Make extra_split_ a member variable again. Make it and master_split_
full-on values. Set various parent/child relationships at startup
so that each widget is associated with a layout (which appears to be
the actual fix).
Make the throttled startup delay huge so that it's easier to browse
using GammaRay.
[1] https://github.com/KDAB/GammaRay
svn path=/trunk/; revision=52386
Scan our segment list (and the capture file) once per stream. Switch the
stream selection control to a QSpinBox. Add graph type selection
actions. The context menu + shortcuts should now be complete. Add the
intitial tcptrace graph. Only ACKs and RWINs so far. A bunch of other
updates and fixes.
svn path=/trunk/; revision=52027
Add TCP/UDP/SSL Follow feature to QtShark
Known issue :
* Duplicate code with GTK (function need follow_info_t struct but in GTK there is some GWidget variable in struct)
* Sometimes TCP Follow fail...
svn path=/trunk/; revision=51883
Rename some methods. Add the ability to toggle time and sequence number
origins. Add more keyboard shortcuts. Comment out abs_secs abs_usecs in
the segment struct since it looks like we aren't using them. Make sure
we stay in the same TCP stream.
svn path=/trunk/; revision=51856
Show the time values in ms instead of s. Add a button and keyboard
shortcut to switch the connection direction. Move more code to
tap-tcp-stream.c. Update our axis labels.
svn path=/trunk/; revision=51832
Make the stream graph dialog modeless and let the user open multiple
instances. The dangling dialog behaves similar to the GTK+ version. Add
a setDissectedCaptureFile signal to MainWindow (currently unused).
Properly transform yAxis2 and simplify resetAxes while we're at it.
Other bug fixes.
svn path=/trunk/; revision=51795
GTK+: Fix what appears to be an off-by-one error in the MA period (21
segments instead of 20). Throw away our initial segment length instead
of subtracting it from the moving sum, which skews the sum.
Qt: Add the througput graph. Use bits/s for the throughput y axis. Let
the user switch between graph types. The dialog hangs when doing this. I
haven't been able to track down the cause. Remove some unused code.
Both: Tell the user that we're using a 20 segment moving average. Move
more routines to tap-tcp-stream.[ch].
svn path=/trunk/; revision=51759
panes, not yet which data goes in which pane).
You currently have to restart for the change to take effect. I also had to move
the preferences-reading (and thus the epan_init) call to before the main window
instantiation so that the preference was actually available for use. This means
that the progress-bar doesn't show up for very long any more, since most of the
work is already done by the time it appears.
I'm sure there is a way to delay just the layout setup until later, but I kept
getting slot errors I couldn't figure out...
svn path=/trunk/; revision=51647
QCustomPlot data sets are made up of keys (x axis by default) and values
(y axis). It looks like we can have multiple values for a given key
(i.e. we can show multiple sequence numbers for a given timestamp) but
QCPItemTracers can only be positioned by a key and not a key+value pair.
This makes our graph selection behavior a bit different compared to the
GTK+ version. We can only select one segment for a give timestamp but
our selection targets are much larger (the height of the graph).
Add a map for segment data so we don't have to iterate to find them. Use
UTF8_RIGHTWARDS_ARROW where appropriate. Set a window title. Tell the
user what will happen if he or she clicks. Disable graph selection.
svn path=/trunk/; revision=51604
Add the QCustomPlot widget. Thanks to Emanuel Eichhammer for granting a
license change. Move some common code from ui/gtk/tcp_graph.c to
ui/tap-tcp-stream.[ch]. Get rid of tcp_graph_selected_packet_enabled().
It was only used in the menu code and didn't match what we were doing
elsewhere.
Still quite a bit of work to do but it's a promising start.
svn path=/trunk/; revision=51538
Add CaptureFilterCombo and CaptureFilterEdit classes, similar to their
display filter counterparts. Add a CaptureFilterSyntaxWorker class which
runs a syntax check in a background thread similar to the threaded code
in capture_dlg.c. Add a bunch of related signal and slot plumbing. Other
minor fixups.
svn path=/trunk/; revision=51200
actionEditConfigurationProfiles. This keeps it from being converted to
the default preferences item on OS X.
Remove a hack where we stored the text for
actionEditConfigurationProfiles in its iconText in order to keep it from
clobbering actionEditPreferences. It doesn't seem to be necessary.
svn path=/trunk/; revision=50636
Add Summary Statistics to qtshark (Statistics => Summary)
Now, use tabs to split summary display (File Capture details, Capture Statistics)
Add also Comment Summary tab (to replace Statistics => Comments Summary)
From me :
Fix order of summary files in Qtshark.pro
svn path=/trunk/; revision=50470
is in this epan_dissect_t contain the field whose name is passed as an
argument" routine in libwireshark, and use it where we used
packet_is_ssl(). (We should check to see if anything *else* could use
it.)
svn path=/trunk/; revision=49530
Detail about this issue :
Bug is reproduced when accessing Preferences Dialog before QtShark start-up is finished,
specifically before preferences loading is completed which comes very late in the initialization process.
Fix from Richard Turner :
Patch to fix problems arising from users interacting with main interface before initialization is complete
Introduced a new slot function in main window for the locking of features before
init complete and for the unlocking of features after all systems good to go.
svn path=/trunk/; revision=49453
it affects more than just the file name, it also affects whatever "you
have unsaved changes" indicator the UI provides.
Put a comment in the Qt code as a reminder of how to set the "you have
unsaved changes" indicator.
svn path=/trunk/; revision=48680
Hex Dump", to clarify that it's not some sort of "generic" import
function, just one that can read a hex dump file. ("Import from Hex
Dump Text" is another possibility.) Use that string in the dialog title
as well.
svn path=/trunk/; revision=48665
Add comments noting that
- We might want to do something different when the bookmark button is
pressed.
- The display filters (dfilters file) and gui.filter_expressions
preferences should be merged.
- Many buttons on Qt4 + OS X + unifiedTitleAndToolBarOnMac makes the
main window really wide.
Add a qstring_strdup convenience routine. Add "disabled" display filter
edit icons. Fix up whitespace and descriptions in a couple of places.
svn path=/trunk/; revision=47522
representations, and default status out of write_prefs and into their
own routines. Split the corresponding custom preference write callbacks.
Fix an apparent memory leak in the hidden column callback.
Add an initial preferences dialog to the Qt port. Use the new preference
routines to implement an "Adavanced" page similar to the "about:config"
page available in many web browsers. Standard pages will hopefully follow
soon.
Remove some QDebug includes and make sure our QTreeWidgets have uniform
row heights set.
svn path=/trunk/; revision=46942
ui/gtk/profile_dialog.c. Use the correct profile list in
profile_dialog.c so that deletion works.
Add a profile dialog to the Qt port. For some reason it crashes when
changing configuration profiles, which might be related to bug 7722.
Move the Qt configuration profile initialization from main.cpp to
wireshark_application.cpp. Make sure QMenuBar doesn't grab the
configuration profiles action on OS X. Add more role color names to
tango_colors.h.
svn path=/trunk/; revision=46834
GTK+: Shorten the packet comment menu item name. Remove a couple of
unneeded includes.
Both: Add an arbitrary 20 MB limit when fetching all packet comments.
Use a color from the Tango palette for comments.
svn path=/trunk/; revision=46709
shifting routines to return an error message on failure or NULL on
success. Prettify and simplify the layout of the GTK+ time shift
dialog. Make the cancel button work as expected.
Add a time shift dialog to the Qt port. I used a Mad Lib (sentence)
layout. Hopefully that won't make translation too difficult. For some
reason time shifts aren't immediately shown in the packet detail. This
appears to be a bug in the packet list / packet detail code.
Add warning role color definitions to tango_colors.h and use them.
svn path=/trunk/; revision=46680
when we detect a remote connection). Use it for the "go to" and search
frames. Properly detect remote connections in the splash overlay.
svn path=/trunk/; revision=46591