Commit Graph

75 Commits

Author SHA1 Message Date
Gerald Combs 4921e55990 Qt: Initial VoIP Calls dialog.
Add Telephony menu items for VoIP Calls and SIP Flows. Put VoIP Calls at
the top, since that seems to be the primary item.

Add configure-time checks for QtMultimediaWidgets in anticipation of
adding a VoIP playback dialog.

Add an icon for the playback button. (Yes, I've been avoiding
GNOME-level gratuitous icons so far but this is one of the rare
occiasions where it makes sense.)

Add a help link define for the VoIP calls dialog.

Change-Id: I5d0799685c598ad9af76fe9667f8ea7d14b66050
Reviewed-on: https://code.wireshark.org/review/5674
Petri-Dish: Gerald Combs <gerald@wireshark.org>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Gerald Combs <gerald@wireshark.org>
2014-12-09 21:25:33 +00:00
Gerald Combs bcaa5d84b1 Qt: Update and rename the summary dialog.
Go back to a single view similar to the GTK+ UI. Apply layouts using Qt
Designer.

Rename the menu item and class to "Capture File Properties". It's not
really a summary if it contains details such as "marked average bits
per second". We might want to move this to a "Properties" item under
the "File" menu similar to other applications.

Add the GTK+ summary icon (for now) to the toolbar and open the
properties dialog on clicking.

Singleton dialogs delenda est[1]. Let the user open as many summaries on
as many capture files as he or she wishes. Also, global cfile delenda
est[2].

Don't blindly include QtGui. Add specific components instead.

Use consistent method names, variable names, and patterns. Try to
document what "consistent" means.

Adjust the way we display some statistics to match the summary bar, e.g.
displayed = captured if we don't have a filter applied.

[1] Not really.
[2] Yes, really.

Change-Id: I11793b1d79dd0c3f70414ac8592b86181da59916
Reviewed-on: https://code.wireshark.org/review/5274
Reviewed-by: Gerald Combs <gerald@wireshark.org>
2014-12-09 19:02:41 +00:00
Stephen Fisher 547323b0ba Allow the environment variable RCC to set before running configure to
allow for unusual paths for Qt's rcc program (FreeBSD ports puts it in
/usr/local/lib/qt5/bin).  This matches the existing functionality of the
MOC and UIC variables/programs.

Change-Id: I885d61bce54d9e893e0c2fc496a9ff767a096ae6
Reviewed-on: https://code.wireshark.org/review/5139
Petri-Dish: Stephen Fisher <stephenfisher@centurylink.net>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Stephen Fisher <stephenfisher@centurylink.net>
2014-11-05 19:24:30 +00:00
Gerald Combs 30f3d52441 Qt: Refactor ConversationDialog for endpoints.
Create a TrafficTableDialog (for lack of a better name) parent class
from the general parts of ConversationDialog. Use it to create
EndpointsDialog.

Move the contents of conversation_tree_widget.{cpp,h} to
conversation_dialog.{cpp,h} to match endpoint_dialog and
traffic_table_dialog.

Fill in GeoIP columns dynamically instead of using a hard-coded limit.

Use "endp_" and "ENDP_" prefixes for a lot of endpoint variables and
defines.

Try to make geoip_db_lookup_ipv4 and geoip_db_lookup_ipv6 more robust.

Clean up some includes. Fix a shadowed variable.

Change-Id: I23054816ac7f8c6edb3b1f01c8536db37ba4122d
Reviewed-on: https://code.wireshark.org/review/3462
Petri-Dish: Gerald Combs <gerald@wireshark.org>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Gerald Combs <gerald@wireshark.org>
2014-09-05 01:06:53 +00:00
Gerald Combs b7fb1167e3 Qt → wireshark. GTK+ → wireshark-gtk.
Make sure the Qt UI is named "Wireshark" and its executable is named
"wireshark" or "wireshark.exe". Make sure the GTK+ UI is named
"Wireshark 1" or "Wireshark (GTK+)" depending on how much the target
audience is likely to care about UI toolkits. Make sure the GTK+
executable is named "wireshark-gtk" or "wireshark-gtk.exe".

It looks like moving to Qt 5.3 (g978faf3) broke the PortableApps
package. It's likely even more broken now.

Autotools out-of-tree builds also broke on Ubuntu 12.02 (automake
1.11.3) at some point. The first attempt to compile in ui/qt returns
"error: source_file.cpp: No such file or directory". The second attempt
works. Out-of-tree builds work fine on Ubuntu 14.04 (automake 1.14.1).

Tested:

- Nmake builds

- NSIS packaging

- CMake builds (Windows, OS X)

- Autotools build and distcheck

- RPM packaging

To do:

- Test Debian packaging

- Fix PortableApps

Change-Id: I66429870e05fd2d6fc901942477959ed6164fce2
Reviewed-on: https://code.wireshark.org/review/3919
Reviewed-by: Gerald Combs <gerald@wireshark.org>
2014-09-02 15:39:17 +00:00
Роман Донченко 95cd6b76bd Remove make-tapreg-dotc and its uses, since Python is now mandatory
Change-Id: I13fd57a288be68d18819826bf566ed7b5688ebaa
Reviewed-on: https://code.wireshark.org/review/3926
Reviewed-by: Evan Huus <eapache@gmail.com>
Petri-Dish: Evan Huus <eapache@gmail.com>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Graham Bloice <graham.bloice@trihedral.com>
2014-08-31 22:14:15 +00:00
Irene Ruengeler f080b43933 Windows: Manage remote interfaces
Add remote interfaces to capture from a remote host.

Change-Id: I34e31d865304f3c6dd972ab9ab1c23829d564665
Reviewed-on: https://code.wireshark.org/review/3405
Petri-Dish: Jeff Morriss <jeff.morriss.ws@gmail.com>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Anders Broman <a.broman58@gmail.com>
2014-08-05 07:48:45 +00:00
Gerald Combs 59ef97dd65 [WIP] Add a conversation dialog.
Items are sorted by value.

Move common conversation code to ui/conversation_hash.[ch]. Add a
conversation_type_e enum along with convenience functions for fetching
titles, tap names, etc.

We have a single main dialog instead of a main dialog + individual
protocol dialogs. It de-clutters the statistics menu and results in
simpler code. Conversation type tabs can be added and removed within the
dialog itself. The tab list is sticky and saved with the current profile
when the dialog closes. Data can be copied as CSV or YAML.

Add a FilterAction class and a corresponding filterAction slot to
MainWindow. Use it for the Conversations context menu.

Add an addressResolutionChanged signal and related plumbing.

Get rid of the iterator members in the conversation item struct. Update
the GTK+ code accordingly.

Excercise for the reader:
- Update TShark to use the common hash code.

Ping-Bug: 9231
Ping-Bug: 8703
Ping-Bug: 6727
Change-Id: I8728d771fc5b1a85937bed9d898e53c3ecc3a544
Reviewed-on: https://code.wireshark.org/review/2987
Reviewed-by: Michael Mann <mmann78@netscape.net>
2014-07-21 23:19:09 +00:00
Irene Ruengeler f3c5f14bc4 Manage Interfaces
- Add dialog to manage interfaces
- Add and delete pipes
- Hide local interfaces

Change-Id: I08323c306c2ea736f99e57c28e2fe3170a0c2216
Reviewed-on: https://code.wireshark.org/review/2613
Tested-by: Anders Broman <a.broman58@gmail.com>
Reviewed-by: Anders Broman <a.broman58@gmail.com>
Reviewed-by: Alexis La Goutte <alexis.lagoutte@gmail.com>
Reviewed-by: Michael Tüxen <tuexen@wireshark.org>
2014-07-02 20:56:37 +00:00
Irene Ruengeler df8c4bf264 Capture Interfaces Dialog:
- allow to change the interface options in the table
- save the options to preferences when the dialog is left
- add a field for setting a capture filter for all selected interfaces
- add a "Compile BPF" button and a window to show the compiled filter output
- try to address Alexis' and Evan's comments

Change-Id: Ic1272e29183ec80e2d2f4b3e494c79dabe2c3b6f
Reviewed-on: https://code.wireshark.org/review/1946
Reviewed-by: Alexis La Goutte <alexis.lagoutte@gmail.com>
Tested-by: Alexis La Goutte <alexis.lagoutte@gmail.com>
Reviewed-by: Anders Broman <a.broman58@gmail.com>
2014-06-12 05:54:59 +00:00
David Ameiss bdfe17f12e GUI modules for LBM aka 29West dissectors.
bug:9718
Change-Id: I05330d8a2475ad0d238723d444f3d98bdbd7be39
Reviewed-on: https://code.wireshark.org/review/1041
Reviewed-by: Michael Mann <mmann78@netscape.net>
2014-05-04 02:55:45 +00:00
Stig Bjørlykke bd38b3152d Support out-of-source checkapi
Always call $(top_srcdir)/tools/checkAPIs.pl with -sourcedir=$(srcdir)
from Makefile.am to allow out-of-source 'make checkapi'.

Change-Id: I60d7e0079984a8ededdacf4517a0738486fa7973
Reviewed-on: https://code.wireshark.org/review/1294
Reviewed-by: Anders Broman <a.broman58@gmail.com>
2014-04-25 04:23:46 +00:00
Gerald Combs a5cb72fe9e Add a Qt I/O Graph dialog.
For each graph you can set:
- Its visibility
- A name
- A display filter
- Color, from a fixed list
- Plot style: Line, Impulse, Bar, Stacked Bar, Dot, Square, Diamond
- Basic Y Axes (packets/s, bytes/s, bits/s)
- Computed Y Axes (SUM, MIN, AVG, MAX)
- Smoothing

You can pan and zoom using the mouse and keyboard. Clicking on a graph
selects the last packet for that interval. If all graphs have the same Y
axis a single label is shown, otherwise a legend is shown.

The time scale (X axis) can be toggled between relative seconds and the
time of day.

Graphs can be saved as PDF, PNG, BMP, and JPEG. Settings are "sticky"
via the io_graphs UAT.

To do:
- Minimize graph drawing delays.
- Figure out why smoothing differs from GTK+
- Everything else at the top of io_graph_dialog.cpp
- Fix empty resets.

A fair amount of code was copied from TCPStreamDialog. We might want to
subclass QCustomPlot and place the shared code there.

Move common syntax checking to SyntaxLineEdit.

Move some common code from ui/gtk/io_stat.c to ui/io_graph_item.[ch] and
use it in both GTK+ and Qt.

Make the io_graph_item_t array allocation in io_stat.c static. The
behavior should be identical and this gives us additional compile-time
checks.

Change-Id: I9a3d544469b7048f0761fdbf7bcf20f44ae76577
Reviewed-on: https://code.wireshark.org/review/435
Reviewed-by: Gerald Combs <gerald@wireshark.org>
Tested-by: Gerald Combs <gerald@wireshark.org>
2014-04-07 20:56:42 +00:00
Alexis La Goutte 757aa33220 Continue to remove $Id$ from top of file
(Using sed : sed -i '/^\# \$Id\$/,+1 d') (start with dash)

Change-Id: Ia4b5a6c2302f6a531f6a86c1ec3a2f8205c8c2dd
Reviewed-on: https://code.wireshark.org/review/881
Reviewed-by: Anders Broman <a.broman58@gmail.com>
2014-03-31 18:48:06 +00:00
Michael Mann d8265cd8c6 Remove Visual Studio solution and project files (and their existence from Makefiles)
There have been discussions on -dev about removing this and I believe I was the last holdout. Finally convinced that I should just have a local copy (ignored by git)

Change-Id: Ic72a22baf58e3412023cf851f0fce16eb07113b0
Reviewed-on: https://code.wireshark.org/review/681
Reviewed-by: Michael Mann <mmann78@netscape.net>
Reviewed-by: Evan Huus <eapache@gmail.com>
Reviewed-by: Anders Broman <a.broman58@gmail.com>
2014-03-16 18:03:41 +00:00
Alexis La Goutte 2a9294356a Add Export PDU Dialog (Wireshark Qt)
Rebase with last change and add Logcat export

Change-Id: Idc9b444b1bf14b95ff60e8466e94f7eecd875b47
Reviewed-on: https://code.wireshark.org/review/14
Reviewed-by: Anders Broman <a.broman58@gmail.com>
2014-03-12 09:29:43 +00:00
Alexis La Goutte f5c6f39201 Add About window for Wireshark Qt
svn path=/trunk/; revision=54557
2014-01-02 17:04:10 +00:00
Irene Rüngeler 894bc27bd7 Fix typo
svn path=/trunk/; revision=54037
2013-12-13 11:20:21 +00:00
Irene Rüngeler a1da50b91e Add sctp files to Makefile.am
svn path=/trunk/; revision=54033
2013-12-13 10:39:13 +00:00
Alexis La Goutte e2f4b545d7 When clean remove also *.moc.cpp / *.rrc.ccp and ui_*.h ...
svn path=/trunk/; revision=53639
2013-11-29 08:02:19 +00:00
Alexis La Goutte 43b1f47695 From Thomas ERSFELD (GSoC13) : Add Capture interface dialog window
* Reuse sparkline from welcome
* Split settings in tab (!= GTK)
* No all feature work (Work In Progress...)
* ...

Comments (and review) are welcome !

svn path=/trunk/; revision=53563
2013-11-25 14:15:49 +00:00
Gerald Combs 78266fe17e Add an initial "Decode As" dialog. Currently read-only.
Fixup some of the Statistics menu items.

svn path=/trunk/; revision=53499
2013-11-22 01:07:36 +00:00
Gerald Combs daa8b5e046 Fix buildbing ui/qt/wireshark-tap-register.c with autotools.
svn path=/trunk/; revision=53467
2013-11-21 02:12:56 +00:00
Gerald Combs ea28298e96 Add a statistics tree dialog.
Add menu items for each corresponding item in gtk/main_menubar.c that
calls gtk_stats_tree_cb(). Hopefully that's everything. Note that we use
quite a bit less code than the GTK+ flavor and why we might not want to
do that. Change a few things in ui/qt/CMakeLists.txt to more closely
match the GTK+ version. Add plumbing for tap registrations in
CMakeLists.txt and Makefile.am. Add the ability to copy text as CSV or
YAML.

svn path=/trunk/; revision=53464
2013-11-21 01:28:17 +00:00
Jeff Morriss d07f872c90 From Peter Wu via https://bugs.wireshark.org/bugzilla/show_bug.cgi?id=9341 :
SVN rev 50525 tried to fix out-of-source-tree builds, but did so by
writing the .rcc.cpp files to the source tree. This was noticed when
running `make distcheck`. This patch reverts that behavior, and creates
the image/ directory to fix out-of-tree builds.

In other words, fix things so "make distcheck" with Qt works in out-of-tree
builds too.

svn path=/trunk/; revision=52926
2013-10-28 18:01:09 +00:00
Gerald Combs cb3cfd1cf9 Add a missing dependency.
svn path=/trunk/; revision=52825
2013-10-24 23:01:30 +00:00
Jeff Morriss d69a93f70e Simplify a bit (in a way which will hopefully actually work): just don't add -Wshorten-64-to-32 to CXXFLAGS. Also, add AM_CLEAN_FLAGS to AM_CXXFLAGS, not AM_CPPFLAGS.
svn path=/trunk/; revision=52676
2013-10-18 18:28:57 +00:00
Jeff Morriss 2ac63d7a44 Add -Wno-shorten-64-to-32 (if we can) when compiling the Qt UI.
svn path=/trunk/; revision=52674
2013-10-18 17:42:32 +00:00
Jeff Morriss db68b808dd Add AM_CLEAN_CFLAGS (-Werror) to AM_CPPFLAGS so we get notified of warnings in
the C++ stuff.

ui/qt/CMakeLists.txt adds -Wno-shorten-64-to-32 on 64-bit systems but it
doesn't seem necessary on Fedora 18 (64-bit).  Leaving it out for now--let's
see what others say...

svn path=/trunk/; revision=52673
2013-10-18 16:56:27 +00:00
Gerald Combs a6f406ac5a Strip out references to PortAudio. Qt has its own audio module (Phonon).
We'll presumably use that.

svn path=/trunk/; revision=52282
2013-09-30 07:55:11 +00:00
Guy Harris 0f849713dc Another "this depends on a ui_XXX.h" required to force the ui_XXX.h to
be built.

svn path=/trunk/; revision=51897
2013-09-09 21:09:03 +00:00
Guy Harris abfc95ba40 QCustomPlot is C++, not C.
Additional changes needed for the TCP stream UI code.

svn path=/trunk/; revision=51544
2013-08-27 20:31:22 +00:00
Evan Huus a934ff953f Add missing ui_uat_dialog.h dependency.
The fact that we're listing these manually is kind of ugly...

svn path=/trunk/; revision=50898
2013-07-26 00:23:09 +00:00
Evan Huus 1c50729f9f Use PIE_CFLAGS when building qt-shark, since otherwise I get errors like:
/usr/include/qt5/QtCore/qglobal.h:1079:4: error: #error "You must build your
code with position independent code if Qt was built with -reduce-relocations. "
"Compile your code with -fPIC or -fPIE."

There is almost certainly a better way to do this: I'm cheating here because I
don't know enough about autofoo, and it seems to work. I suspect we should be
checking PIE for the C++ compiler separately (since presumably they're not
guaranteed to be related like gcc/g++ are). I also suspect we should only be
building with it in the first place if Qt really needs it, though I have no idea
how to check that. The qt docs I've found suggest that qt5's cmake module has a
flag for it, but autofoo is never mentioned...


svn path=/trunk/; revision=50645
2013-07-15 23:50:43 +00:00
Alexis La Goutte 43c3cb4884 From Thomas ERSFELD (GSOC13) via https://bugs.wireshark.org/bugzilla/show_bug.cgi?id=8710 QtShark doesn't have a statistics summary window
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
2013-07-09 18:08:40 +00:00
Guy Harris 6532f50bd9 main_window_slots.cpp includes ui_main_window.h, so make sure we build
ui_main_window.h before doing anything with main_window_slots.cpp.

svn path=/trunk/; revision=47659
2013-02-14 19:56:21 +00:00
Guy Harris a13d58a509 Put NODIST_ at the beginning of macro names, as was done for the plugins
directory.

svn path=/trunk/; revision=47599
2013-02-09 23:35:30 +00:00
Gerald Combs dcd8e9df5a Add module_preferences_scroll_area.*.
svn path=/trunk/; revision=47546
2013-02-08 01:30:31 +00:00
Gerald Combs 4f59c586d2 Remove some unnecessary definitions.
svn path=/trunk/; revision=47526
2013-02-06 21:55:58 +00:00
Gerald Combs 248310e3a7 Add filter expressions frame entries.
svn path=/trunk/; revision=47523
2013-02-06 19:03:23 +00:00
Gerald Combs 7f398a97af Prettify Qt build output.
svn path=/trunk/; revision=47484
2013-02-05 05:17:16 +00:00
Guy Harris 02da11d645 Sigh. At least on my Fedora 16 with KDE, the Qt 4 versions of uic and
moc are called uic-qt4 and moc-qt4.  Look for them by names, plural.

svn path=/trunk/; revision=47457
2013-02-03 21:39:11 +00:00
Gerald Combs 89c5066f67 Add interface prefs. Adjust some spacing and resize behavior.
svn path=/trunk/; revision=47403
2013-02-01 00:14:15 +00:00
Gerald Combs 2dff8d7605 Add font and color preferences. Unfortunately Qt doesn't have a color
picker widget so we're back to popping up dialogs. Move the contents of
monospace_font.{cpp,h} to wireshark_application.{cpp,h}.

Pango and Qt use completely different string representations for fonts.
Add a separate gui.qt.font_name preference so that they don't clobber
each other.

svn path=/trunk/; revision=47240
2013-01-24 01:10:12 +00:00
Gerald Combs 21e66f0c6f Add column preferences.
svn path=/trunk/; revision=47231
2013-01-23 19:04:36 +00:00
Alexis La Goutte 980edc7034 Add UI_FILES list (more easy to use when add a new ui files...)
svn path=/trunk/; revision=47198
2013-01-21 16:58:51 +00:00
Gerald Combs 5143a55a7a Add layout_preferences_frame.ui.
svn path=/trunk/; revision=47191
2013-01-21 06:51:07 +00:00
Gerald Combs 5fcf513161 Add an initial layout preference pane. Set SVN properties.
svn path=/trunk/; revision=47190
2013-01-21 05:29:14 +00:00
Gerald Combs 2c5ce01f33 Add an "Appearance" (aka "User Interface") preference pane. Having an
"Advanced" pane gives us the luxury of omitting some items in favor of
simplicity so do that.

svn path=/trunk/; revision=47158
2013-01-19 00:57:57 +00:00
Gerald Combs 4a3342e4ba Break out preference type names, type descriptions, string
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
2013-01-05 02:30:58 +00:00