aboutsummaryrefslogtreecommitdiffstats
path: root/ui/qt/wireshark_application.h
AgeCommit message (Collapse)AuthorFilesLines
2018-01-31Qt: Write recent before applying profile changesStig Bjørlykke1-0/+1
The selected profile may be renamed in apply_profile_changes() so write the recent file before renaming the directory to ensure that we reload the latest changes. Change-Id: I8988a00647926d93b0a1903090aadc8c61f1a34e Reviewed-on: https://code.wireshark.org/review/25516 Petri-Dish: Stig Bjørlykke <stig@bjorlykke.org> Tested-by: Petri Dish Buildbot Reviewed-by: Anders Broman <a.broman58@gmail.com>
2018-01-21Qt: Create byte views at the proper zoom level.Gerald Combs1-1/+2
Add a zoomed argument to WiresharkApplication::monospaceFont so that we can easily fetch the font at its current zoom level. Set the zoomed font when we create new ByteViewTexts. Change-Id: I1293f206e37bb798247b1ac4b314fdfe88d4c55c Reviewed-on: https://code.wireshark.org/review/25371 Reviewed-by: Gerald Combs <gerald@wireshark.org> Petri-Dish: Gerald Combs <gerald@wireshark.org> Tested-by: Petri Dish Buildbot Reviewed-by: Anders Broman <a.broman58@gmail.com>
2017-12-23Qt: Redesign signal/slot concept of capture_fileRoland Knall1-4/+6
This is in preparation to make it easier for other classes to get the right signals from the capture file. Also the decision on what signals to listen to now resides with the final classes, not main window, and it no longer needs to be changed if the statusbar or wsapp needs additional signals. Change-Id: If366d42b07dc822636404ac44ba2306ec4418b4e Reviewed-on: https://code.wireshark.org/review/24941 Petri-Dish: Roland Knall <rknall@gmail.com> Tested-by: Petri Dish Buildbot Reviewed-by: Roland Knall <rknall@gmail.com>
2017-12-17Qt: Update our recent status sooner at startup.Gerald Combs1-15/+3
Update our recent file status as soon as we read recent_common. Run recent stats updates in the global thread pool. Revert 15a97b5986 since it's no longer needed. Change-Id: If1b08ea640dfcad26affab5d20c80c90fbf133f2 Reviewed-on: https://code.wireshark.org/review/24862 Reviewed-by: Gerald Combs <gerald@wireshark.org> Petri-Dish: Gerald Combs <gerald@wireshark.org> Tested-by: Petri Dish Buildbot Reviewed-by: Anders Broman <a.broman58@gmail.com>
2017-12-14Qt: Add and use qUtf8Printable.Gerald Combs1-1/+1
Qt 5.4 introduced qUtf8Printable, a convenience macro for converting QString to a UTF-8 const char *. Add a compatibility definition and start using it. Change-Id: I3cf88611b1ed1a34082cb2ba82394954e2e6c461 Reviewed-on: https://code.wireshark.org/review/24828 Petri-Dish: Gerald Combs <gerald@wireshark.org> Tested-by: Petri Dish Buildbot Reviewed-by: Gerald Combs <gerald@wireshark.org>
2017-11-21Move the protocol registration routines back into libwiresharkJoão Valverde1-1/+1
Follow-up to b695b3e2f72998d66ca4b7a6826d4ce1688060c8. Change-Id: I7e36519f2c3806c1205d05437671325080974257 Reviewed-on: https://code.wireshark.org/review/24524 Petri-Dish: João Valverde <j@v6e.pt> Tested-by: Petri Dish Buildbot Reviewed-by: João Valverde <j@v6e.pt>
2017-11-17Qt: Initialize QMimeDatabase in a worker thread.Gerald Combs1-2/+3
As part of its initialization, QMimeDatabase parses the freedesktop.org shared-mime-info database, which is a large-ish (2 - 4 MB) XML file. This takes about 85 - 90 ms here. We first access QMimeDatabase in our startup sequence when we load the normal and capture application icons. Create a worker thread that initializes QMimeDatabase as early as possible and load load the normal and capture icons as late as possible. Change-Id: I27e3d65d8ee1308a62d12d3ff7e1b95f82c2e75a Reviewed-on: https://code.wireshark.org/review/24471 Petri-Dish: Gerald Combs <gerald@wireshark.org> Tested-by: Petri Dish Buildbot Reviewed-by: Gerald Combs <gerald@wireshark.org>
2017-11-08Qt: Further cleanup ByteViewRoland Knall1-0/+4
This further separates ByteView and the rest of the system. Using FieldInformation and DataPrinter, this is the final cleanup of the ByteViewTab Change-Id: If41521167527cf5664c2564cdd0d45fea0f3f612 Reviewed-on: https://code.wireshark.org/review/22783 Petri-Dish: Roland Knall <rknall@gmail.com> Tested-by: Petri Dish Buildbot Reviewed-by: Roland Knall <rknall@gmail.com>
2017-10-05Qt: Free dynamic menu actions at shutdownMikael Kanstrup1-0/+1
Some menu actions registered at startup are not freed at shutdown making Valgrind complain. Fix by clearing the lists holding them and making sure all actions have a parent to free them. Bug: 14071 Change-Id: I8d99d062d394a7262b0f9b7ddea4ed71049636ac Reviewed-on: https://code.wireshark.org/review/23793 Petri-Dish: Anders Broman <a.broman58@gmail.com> Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org> Reviewed-by: Anders Broman <a.broman58@gmail.com>
2017-07-27Qt: SimpleDialog fixes and updates.Gerald Combs1-0/+1
Add WiresharkApplication::mainWindow and use it to move the C simple_dialog routines to simple_dialog.cpp. In SimpleDialog, make sure our checkbox is initialized. Don't store our parent widget (which might go away) in a static variable, just use wsApp->mainWindow(). Make sure we use check boxes only in Qt 5.2 or later. Bug: 13275 Change-Id: I72a9715c59f2efd50f722197f416179e87bb6a8b Reviewed-on: https://code.wireshark.org/review/22805 Reviewed-by: Gerald Combs <gerald@wireshark.org> Petri-Dish: Gerald Combs <gerald@wireshark.org> Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org> Reviewed-by: Michael Mann <mmann78@netscape.net>
2017-04-08Clean up handling of enabled/disabled protocols/heuristic dissectors.Guy Harris1-1/+1
Add a "report a warning message" routine to the "report_err" code in libwsutil, and rename files and routines appropriately, as they don't only handle errors any more. Have a routine read_enabled_and_disabled_protos() that reads all the files that enable or disable protocols or heuristic dissectors, enables and disables them based on the contents of those files, and reports errors itself (as warnings) using the new "report a warning message" routine. Fix that error reporting to report separately on the disabled protocols, enabled protocols, and heuristic dissectors files. Have a routine to set up the enabled and disabled protocols and heuristic dissectors from the command-line arguments, so it's done the same way in all programs. If we try to enable or disable an unknown heuristic dissector via a command-line argument, report an error. Update a bunch of comments. Update the name of disabled_protos_cleanup(), as it cleans up information for disabled *and* enabled protocols and for heuristic dissectors. Support the command-line flags to enable and disable protocols and heuristic dissectors in tfshark. Change-Id: I9b8bd29947cccdf6dc34a0540b5509ef941391df Reviewed-on: https://code.wireshark.org/review/20966 Reviewed-by: Guy Harris <guy@alum.mit.edu>
2017-04-05A bunch of "{Mac} OS X" -> "macOS" changes.Guy Harris1-1/+1
Avoid anachronisms, however; there was no "macOS 10.0" or even "OS X 10.0", for example. It was "Mac OS X" until 10.8 (although 10.7 was sometimes called "OS X" and sometimes called "Mac OS X"), and it was "OS X" from 10.8 to 10.11. Change-Id: Ie4a848997dcc6c45c2245c1fb84ec526032375c3 Reviewed-on: https://code.wireshark.org/review/20933 Reviewed-by: Guy Harris <guy@alum.mit.edu>
2017-02-16Qt: Warn the user about DBAR 1.8 on Windows.Gerald Combs1-0/+4
At startup, dig through the registry looking for shell extensions. If any of them match known Dell Backup and Recovery DLL names and the DLL version matches 1.8.*.*, show the user a warning dialog. This is a bit extreme but I'm not sure what else to do. Dell is a popular computer manufacturer and bug reports keep trickling in. Change-Id: I6d1bd6c56850279356570154d231b07facb30cff Bug: 12036 Ping-bug: 12701 Ping-bug: 13414 Reviewed-on: https://code.wireshark.org/review/16861 Petri-Dish: Gerald Combs <gerald@wireshark.org> Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org> Reviewed-by: Alexis La Goutte <alexis.lagoutte@gmail.com> Reviewed-by: Gerald Combs <gerald@wireshark.org>
2017-02-14Qt: Reset Default profile supportStig Bjørlykke1-1/+1
Add support for resetting the Default profile by deleting it in the Profile Dialog. All profile files will be deleted and all other files will be kept. Change-Id: I795a6db3ee7b2c29e7aba461183e6cc411798b75 Reviewed-on: https://code.wireshark.org/review/20097 Petri-Dish: Stig Bjørlykke <stig@bjorlykke.org> Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org> Reviewed-by: Stig Bjørlykke <stig@bjorlykke.org>
2017-02-10filter_list: add cleanup function and call it on exit.Dario Lombardo1-0/+1
Change-Id: I51d8074cc5a63d4fd3af8852df120d6b4163217f Reviewed-on: https://code.wireshark.org/review/19942 Reviewed-by: Michael Mann <mmann78@netscape.net>
2017-01-26Qt: Signal number of active capturesRoland Knall1-2/+5
Adds a signal, which emits the number of active captures Change-Id: I637106294e331e7fc7607f6fd7704492e22fa7ac Reviewed-on: https://code.wireshark.org/review/19799 Reviewed-by: Roland Knall <rknall@gmail.com>
2016-12-20Qt+Win32: Make software updates more friendly.Gerald Combs1-0/+15
Add WinSparkle can_shutdown and shutdown_request callbacks which are called prior to running the installer. Reject updates when we have unsaved information. Add notes about possible improvements. Ping-Bug: 9687 Ping-Bug: 12989 Change-Id: Ia126244b311417aa3105ea8136f186adc2745445 Reviewed-on: https://code.wireshark.org/review/19244 Reviewed-by: Gerald Combs <gerald@wireshark.org> Petri-Dish: Gerald Combs <gerald@wireshark.org> Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org> Reviewed-by: Anders Broman <a.broman58@gmail.com>
2016-11-10Qt: Handle retranslation events in the main window.Gerald Combs1-7/+8
Update most (but not all) of the main status bar text when the user changes the language setting. Try to distinguish between recent preferences and recent captures more clearly. Change-Id: I5278a503178fe3620a25b185742688f957dc30f4 Ping-Bug: 11307 Reviewed-on: https://code.wireshark.org/review/9575 Reviewed-by: Gerald Combs <gerald@wireshark.org> Petri-Dish: Gerald Combs <gerald@wireshark.org> Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org> Reviewed-by: Michael Mann <mmann78@netscape.net>
2016-10-20WelcomeUI: Make Open and Capture clickableRoland Knall1-0/+8
Make the texts "Open" and "Capture" clickable, and have them open the FileOpen and CaptureOptions dialogs respectively Change-Id: I2a3efbc4cdf160aa0b4efc6496d09228affbff46 Reviewed-on: https://code.wireshark.org/review/18303 Reviewed-by: Jaap Keuter <jaap.keuter@xs4all.nl> Petri-Dish: Jaap Keuter <jaap.keuter@xs4all.nl> Reviewed-by: Anders Broman <a.broman58@gmail.com>
2016-10-18WiresharkApplication: Add signal emitter for Interface ChangesRoland Knall1-0/+1
Change-Id: I468ef9462aa91d02c5568cec0d08081a2b3840bb Reviewed-on: https://code.wireshark.org/review/18269 Petri-Dish: Roland Knall <rknall@gmail.com> Reviewed-by: Roland Knall <rknall@gmail.com>
2016-09-19Qt: Added option to Remove from recent files listStig Bjørlykke1-0/+1
Change-Id: If87e1bf4796d45582bc2490720683e4072971f56 Reviewed-on: https://code.wireshark.org/review/17804 Petri-Dish: Stig Bjørlykke <stig@bjorlykke.org> Reviewed-by: Gerald Combs <gerald@wireshark.org> Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org> Reviewed-by: Stig Bjørlykke <stig@bjorlykke.org>
2016-06-26Qt: Conversation and Endpoint dialog performance tweaks.Gerald Combs1-0/+1
Generate column text dynamically. This keeps us from having to iterate over our tree items each time we receive updates. Set the uniformRowHeights property. Stop automatically resizing columns after 200 items. Fixup name resolution behavior. Disable the checkbox if host name resolution is disabled. Change-Id: Ib2fef604d6ee9e39a8b1edd72d58d0cb02d3bb64 Reviewed-on: https://code.wireshark.org/review/16110 Reviewed-by: Gerald Combs <gerald@wireshark.org> Petri-Dish: Gerald Combs <gerald@wireshark.org> Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org> Reviewed-by: Anders Broman <a.broman58@gmail.com>
2016-06-25Minor UI locale updates.Gerald Combs1-1/+1
Qt: Call setlocale before commandline_early_options so that we get proper "-v" output, similar to the GTK+ UI. GTK+: Call setlocale once at startup. Bug: 11960 Change-Id: I3c3a196b9d94fc768e1085200891bc8d67e21a08 Reviewed-on: https://code.wireshark.org/review/16132 Reviewed-by: Gerald Combs <gerald@wireshark.org> Petri-Dish: Gerald Combs <gerald@wireshark.org> Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org> Reviewed-by: João Valverde <j@v6e.pt>
2016-06-19Refactor command-line handling of GUI options.Michael Mann1-3/+3
Both GTK and Qt both use the same command-line options, so refactor the parsing and (possibly) applying of those arguments to a single location. Ping-Bug: 12546 Change-Id: Ib31e576c509c5d3d21c33d3247640d9f9c68661b Reviewed-on: https://code.wireshark.org/review/16006 Reviewed-by: Michael Mann <mmann78@netscape.net> Petri-Dish: Michael Mann <mmann78@netscape.net> Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org> Reviewed-by: Anders Broman <a.broman58@gmail.com>
2016-01-28Qt: Enable capture filter bookmarksStig Bjørlykke1-0/+2
Update the code handling capture filter bookmarks and enable the bookmark button and clear button in CaptureFilterEdit(). Disable the apply button (which starts a capture) for now. Bug: 11836 Change-Id: Ia33cbb8c9bb839be037112eef26daf744c4ea8f8 Reviewed-on: https://code.wireshark.org/review/13568 Reviewed-by: Stig Bjørlykke <stig@bjorlykke.org>
2016-01-28Qt: Update display filter bookmarks when list changedStig Bjørlykke1-0/+2
Recreate the display filter bookmarks menu only when the list has changed, not every time the display filter changes. The list changes when removing an entry from the menu and when changing the list in the "Manage Display Filters" dialog. Save the list when removing an entry from the menu. Change-Id: Icd08e0a80085cca55c0e63177d45abe4902c7c3e Reviewed-on: https://code.wireshark.org/review/13567 Petri-Dish: Stig Bjørlykke <stig@bjorlykke.org> Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org> Reviewed-by: Gerald Combs <gerald@wireshark.org> Reviewed-by: Stig Bjørlykke <stig@bjorlykke.org>
2016-01-11Lua: Added reload_lua_pluginsStig Bjørlykke1-0/+2
This makes it possible to trigger reloading Lua plugins from within a Lua plugin. This can be used when having a plugin to update local plugins from a external source. Renamed reload() to reload_packets() to clarify what's reloaded, and added a alias (marked as obsoleted) from reload(). Change-Id: I4e529992af5f651613950329e73718dbda317d2e Reviewed-on: https://code.wireshark.org/review/13024 Petri-Dish: Stig Bjørlykke <stig@bjorlykke.org> Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org> Reviewed-by: Stig Bjørlykke <stig@bjorlykke.org>
2015-12-16Qt: save custom colors in recent_common filePascal Quantin1-0/+2
This allows to save colors across sessions for systems other than OSX that do not provide a system wide color picker While we are at it, let's stop reading the recent file twice at startup Bug: 11888 Change-Id: I69ff14d699d8111fe6a8bdac0157fcd115a60c2b Reviewed-on: https://code.wireshark.org/review/12659 Reviewed-by: Pascal Quantin <pascal.quantin@gmail.com> Petri-Dish: Pascal Quantin <pascal.quantin@gmail.com> Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org> Reviewed-by: Stig Bjørlykke <stig@bjorlykke.org>
2015-12-10Qt: Reset preferences when reloading Lua pluginsStig Bjørlykke1-1/+1
Reading configuration files may duplicate some entries, so ensure we reset preferences before reloading. Change-Id: I746414cbc10c206ddf47669856f329b9e0202a0d Reviewed-on: https://code.wireshark.org/review/12496 Petri-Dish: Stig Bjørlykke <stig@bjorlykke.org> Reviewed-by: Alexis La Goutte <alexis.lagoutte@gmail.com> Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org> Reviewed-by: Stig Bjørlykke <stig@bjorlykke.org>
2015-12-03Qt: Check display filter when changing profileStig Bjørlykke1-0/+1
The Display Filter Macros may have changed and if a macro is currently used in the display filter then cf_redissect_packets() will bail out in an assert if trying to apply an invalid filter. Change-Id: I842016360672d76d190454ce80ccc7604f2075b3 Reviewed-on: https://code.wireshark.org/review/12388 Petri-Dish: Stig Bjørlykke <stig@bjorlykke.org> Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org> Reviewed-by: Anders Broman <a.broman58@gmail.com>
2015-10-05Qt: Don't update the recent list while capturing.Gerald Combs1-0/+3
If a recent file is on a network share we'll create traffic which can show up in the capture. This doesn't fix the issue entirely, e.g. if you're capturing in one instance of Wireshark and have another one open. The proper fix in that case is to switch to QFileSystemWatcher as described at the top of ::WiresharkApplication. Ping-Bug: 11546 Change-Id: If21f1bb213fe1d862c09b1b2edd78c8baf983461 Reviewed-on: https://code.wireshark.org/review/10774 Reviewed-by: Alexis La Goutte <alexis.lagoutte@gmail.com> Petri-Dish: Alexis La Goutte <alexis.lagoutte@gmail.com> Reviewed-by: Gerald Combs <gerald@wireshark.org> Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
2015-09-11Fix a bunch of leaks found by Valgrind.Gerald Combs1-2/+2
Change-Id: I8862ed15d354aee487bacd80ab5fb4918423287e Reviewed-on: https://code.wireshark.org/review/10487 Petri-Dish: Gerald Combs <gerald@wireshark.org> Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org> Reviewed-by: Gerald Combs <gerald@wireshark.org>
2015-08-26Don't emit app signals from dialogs.Gerald Combs1-0/+8
Emitting PacketDissectionChanged from a dialog on can render the main window unusable on OS X. A workaround for this was added to the preferences dialog in g8fc2327. Generalize the workaround and use it elsewhere. Fix the "Enabled Protocols" action name while we're here. Bug: 11361 Bug: 11448 Change-Id: I89e98daaaedc877d3b13b0d33b6f3be033e323d7 Reviewed-on: https://code.wireshark.org/review/10271 Petri-Dish: Gerald Combs <gerald@wireshark.org> Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org> Reviewed-by: Gerald Combs <gerald@wireshark.org>
2015-08-11Added Reload Lua plugins.Stig Bjørlykke1-0/+9
This is initial support for reloading Lua plugins without restarting the application. Still todo: - Deregister FileHandlers - Support deregister ProtoField with existing abbrev (same_name_hfinfo) - Add a progress dialog when reloading many plugins - Search for memory leakages in wslua functions Change-Id: I48870d8741251705ca15ffe1068613fcb0cb18c1 Reviewed-on: https://code.wireshark.org/review/5028 Reviewed-by: Stig Bjørlykke <stig@bjorlykke.org>
2015-07-09Qt: Add dynamic menu support.Gerald Combs1-5/+2
Generalize the dynamic menu code and make it possible to connect multiple types of actions to their corresponding slots. Change-Id: Ib915ad5a666310e2a6e366fada006336820d1653 Reviewed-on: https://code.wireshark.org/review/9568 Reviewed-by: Gerald Combs <gerald@wireshark.org>
2015-07-07Qt: Add initial Lua support.Gerald Combs1-0/+2
Add a FunnelStatistics class, which is the main interface between the Qt UI and the Funnel API. Add FunnelTextDialog, which implements the text_window, ProgDlg, menu, and other routines. Add FunnelStringDialog, which implements dlg_new. We currently only support "Tools" menu items (MENU_TOOLS_UNSORTED, aka REGISTER_TOOLS_GROUP_UNSORTED). Add a disabled placeholder to the "Tools" menu in case we don't load any scripts. Use "struct progdlg" instead of needlessly casting to funnel_progress_window_t. To do: - Add support for MENU_STAT_UNSORTED, MENU_STAT_GENERIC, etc. - Make the firewall config generator a Lua script? - Add FunnelGraphDialog? It seems like it would be useful to make QCustomPlot accessible to Lua scripts. Ping-Bug: 9845 Change-Id: Iefff02e9032ed1853666f7902509ed08b431e7a7 Reviewed-on: https://code.wireshark.org/review/9523 Petri-Dish: Gerald Combs <gerald@wireshark.org> Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org> Reviewed-by: Gerald Combs <gerald@wireshark.org>
2015-07-03Add ServiceResponseTimeDialog.Gerald Combs1-0/+7
Add ServiceResponseTimeDialog as a subclass of TapParameterDialog, similar to StatsTreeDialog. Add initial plumbing for statistics menu items and command line invocation. Don't append "..." to menu item names. Don't add menu icons. In each case this avoids repetitive UI clutter. Change-Id: I463b95c93090160bb81d2e80b16aad389dc0bd6c Reviewed-on: https://code.wireshark.org/review/8864 Reviewed-by: Gerald Combs <gerald@wireshark.org> Reviewed-by: Michael Mann <mmann78@netscape.net>
2015-02-24Qt: Apply recent settings.Gerald Combs1-2/+3
Add PacketList::applyRecentColumnWidths which set the packet list column widths from our recent settings. Make sure it gets called at startup and when we change profiles. Save the packet list header state so that we can restore it when we reset the model (i.e. freezing and thawing) and load a new capture file. Save the state when the user resizes a column. As a side effect this works around a weird bug that adjusts the width of column 1 at an inopportune time. Add a profileChanging signal so that we can save the main window geometry in each profile. Get rid of MainWindow::configurationProfileChanged. It was unused. Apply saved pane widths and heights. Note that we might want to add a separate pair of recent settings for the Qt panes. Use the last opened directory in the capture file dialog. Git rid of some unneeded Q_UNUSEDs while we're here. Bug: 10953 Change-Id: I812aff59818cf0b4d1598b580627d32728d2e9d7 Reviewed-on: https://code.wireshark.org/review/7247 Reviewed-by: Michal Labedzki <michal.labedzki@tieto.com> Tested-by: Michal Labedzki <michal.labedzki@tieto.com> Petri-Dish: Michal Labedzki <michal.labedzki@tieto.com> Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org> Reviewed-by: Anders Broman <a.broman58@gmail.com>
2015-02-13Qt: More #include → forward declarations.Gerald Combs1-6/+3
Change-Id: Ib6de71f801cd3053374b6c867370acd594dcd396 Reviewed-on: https://code.wireshark.org/review/7089 Petri-Dish: Gerald Combs <gerald@wireshark.org> Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org> Reviewed-by: Gerald Combs <gerald@wireshark.org>
2015-02-10Qt/C++: Change a bunch of includes to forward declarations.Gerald Combs1-4/+2
In theory this this should reduce compilation times. On my particular system it makes no difference but hopefully it will elsewhere. Change-Id: I570177d3ca4eec691c82d46b4dbbce74092aac1d Reviewed-on: https://code.wireshark.org/review/7060 Petri-Dish: Gerald Combs <gerald@wireshark.org> Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org> Reviewed-by: Gerald Combs <gerald@wireshark.org>
2015-01-04Fix out-of-tree build includes of config.hGraham Bloice1-1/+1
If a file in the same directory as config.h, e.g. wireshark-qt.cpp has a #include "config.h", or another header it includes also has a #include "config.h", then an out-of-tree build, e.g. CMake will pick up any in-tree config.h and odd things may happen. The correct form is #include <config.h> which will pick up the out-of-tree version. To find this, introduce a deliberate error and then make an out-of-tree build, noting where it fails and fix that file. If that file includes other files that still cause the build to fail, set the compiler to emit the pre-processed version so you can locate the include with the next errant "config.h". Repeat ad nauseum. Possibly all includes of "config.h" should be changed to <config.h> Revert "CMake: Clobber the top-level config.h before we build." This reverts commit 1f3849ce614aeae5fda742beffe5558e7c2a8b71. Ping-Bug: 10301 Change-Id: Ie567e7cc696fd48f3e730fc27032c5d2a7d8f341 Reviewed-on: https://code.wireshark.org/review/6285 Reviewed-by: Graham Bloice <graham.bloice@trihedral.com> Petri-Dish: Graham Bloice <graham.bloice@trihedral.com> Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org> Reviewed-by: Gerald Combs <gerald@wireshark.org>
2014-12-30Qt: Convert more dialogs to WiresharkDialog.Gerald Combs1-2/+0
Make the Sequence, IO Graph, Statistics Tree, and VoIP Calls dialogs subclasses of WiresharkDialog. Remove "Stats Tree" from Statistics Tree dialog titles. Don't complain if the user opens more than one instance of the dialog. Use the applicationName property in WiresharkApplication instead of a separate variable. Add a preexisting item to the IO Graph bug list (hovering when the file is closed clears the graph). Change-Id: I8411a25305d00b16e0d4a82fa50a9bad5c85b239 Reviewed-on: https://code.wireshark.org/review/6125 Reviewed-by: Gerald Combs <gerald@wireshark.org>
2014-12-29Qt: Add a WiresharkDialog convenience class.Gerald Combs1-2/+2
Add WiresharkDialog, a common base class for dialogs centered around capture files. Make it a parent of Capture File Properties, Traffic Table, Conversations, and Endpoints. Rename CaptureFile::read_only_ to file_closed_. Add methods to WiresharkApplication for generating consistent window titles. Change-Id: Idc771556d8192e60f85dddc08fc4757698dee257 Reviewed-on: https://code.wireshark.org/review/6097 Reviewed-by: Gerald Combs <gerald@wireshark.org>
2014-12-22Qt: Add methods to CaptureFile and WiresharkApplication.Gerald Combs1-19/+6
Add isValid, fileTitle, and retapPackets methods to CaptureFile. Add application name and title separator convenience methods to WiresharkApplication. Convert traffic tables, conversations, and endpoints to use CaptureFile directly and to let the user know when the capture file is closed. Set the file dialog titles while we're here. Change-Id: I990392786d3833e1e0b3638aa2d34a5ada39fa13 Reviewed-on: https://code.wireshark.org/review/5957 Petri-Dish: Gerald Combs <gerald@wireshark.org> Reviewed-by: Gerald Combs <gerald@wireshark.org>
2014-12-20Qt: Add a CaptureFile class.Gerald Combs1-4/+6
Wrap the capture_file struct in a QObject which translates cf_cb_* and capture_cb_* events into signals. Move the global cfile to capture_file.cpp. Don't use a void pointer for the capture file struct. Change-Id: Ic5d5efb4bb1db64aa0247245890e5669b1da723a Reviewed-on: https://code.wireshark.org/review/5885 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-11-10Improved deregistering fields.Stig Bjørlykke1-1/+3
This improvement avoids use of deallocated memory (crash) if using a deregistered field in display filter, color filter, custom column and other cases when the field is used as "interesting field". This functionality is currently used in http, imf and ldap preferences. Also removed unused proto_registrar_n() as this does not work correctly after deregistering fields. Change-Id: I043e3bf7a98bd773c9801e712a012d1eab8a7f94 Reviewed-on: https://code.wireshark.org/review/5161 Reviewed-by: Stig Bjørlykke <stig@bjorlykke.org> Tested-by: Stig Bjørlykke <stig@bjorlykke.org>
2014-11-04Qt: Dynamic languagesMichal Labedzki1-0/+6
- get language as soon as possible (before creating any Qt objects) to make all translations working - dynamic list of supported languages - runtime change of GUI language (no need to restart application) - add flags icons support - search for *.qm languages in buildin resources, then data dir called "languages" (main directory in sources or /usr/share/wireshark/languages), then user directory (UNIX: ~/.wireshark/languages); "languages" directory should contains files wireshark_xx.qm where xx is language code (en, en_GB, etc.), and optional xx.svg for flag icon - try to fix some untranslated manually-created UI items (need manual reset text of those components) Change-Id: I62ca8a8cddce47cec9dbcad6b0bd68b6cfd92229 Reviewed-on: https://code.wireshark.org/review/5041 Tested-by: Michal Labedzki <michal.labedzki@tieto.com> Reviewed-by: Michal Labedzki <michal.labedzki@tieto.com>
2014-09-23Qt: Add zoom and column resize actions.Gerald Combs1-4/+3
Plumb signals and slots for changing the text size in the main window. Remove the bold font code from WiresharkApplication. It was only used in ByteViewText. Adjust the icons a bit. Bug: When we change the font preferences the packet list stops drawing cached strings. I haven't been able to track down the cause. Change-Id: I609d740c9f26265628fa4b7de1b75b0e56651387 Reviewed-on: https://code.wireshark.org/review/4269 Reviewed-by: Gerald Combs <gerald@wireshark.org>
2014-09-22Qt: Use wsiconcap while we're capturing.Gerald Combs1-0/+5
Set the main window icon to the "wsiconcap" version while we're capturing similar to the GTK+ version. Verified on Windows. Not sure if this will do anything on other platforms. Change-Id: I9b082601a2c47e5f52cc38ac8d9b4d9f5fb9a4d9 Reviewed-on: https://code.wireshark.org/review/4230 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-07-25Make Capture -> Refresh Interfaces work.Guy Harris1-0/+1
Add a "refresh the local interfaces" method to WiresharkApplication, which reloads the interface list and emits the "interface list changed" signal, and invoke it from the Capture -> Refresh Interfaces menu item. Change-Id: I9641e4b341eb44d773c556691d8bb9dac776ea9d Reviewed-on: https://code.wireshark.org/review/3195 Reviewed-by: Guy Harris <guy@alum.mit.edu>