Commit Graph

68 Commits

Author SHA1 Message Date
Ulf Lamping 801e9dd35e from Stefano Pettini: add CSV export function, similar to PSML export
svn path=/trunk/; revision=13724
2005-03-11 20:56:31 +00:00
Guy Harris 1041ccdbe5 Don't have "set_menus_for_captured_packets()" call
"main_set_for_capture_file()"; it should only deal with menus, not
anything else - and it gets called while the menus are being set up,
which is before the main window has been completely created, so
"main_widgets_show_or_hide()", which is called by
"main_set_for_capture_file()", gets errors trying to show or hide
widgets the pointers to which are null.

svn path=/trunk/; revision=13328
2005-02-06 23:16:05 +00:00
Ulf Lamping fe7e1ec13c completely hide the main window panes, if we currently don't have a capture file.
svn path=/trunk/; revision=13312
2005-02-05 17:53:39 +00:00
Ulf Lamping 7b16126cd8 fixed the dnd_init declaration
(we have to do something about the non existing win32 compile dependencies, this is just a pain)

svn path=/trunk/; revision=13309
2005-02-05 15:40:44 +00:00
Ulf Lamping a1a2ae3180 rename kill_capture_child to capture_kill_child to have a common prefix
split drag and drop support out of main.c into new file drag_and_drop.c, to reduce the size of main.c a bit.

Hopefully this won't break unix builds because of missing #include's, I will keep an eye on the buildbot

svn path=/trunk/; revision=13308
2005-02-05 15:35:25 +00:00
Ulf Lamping 0861927ce3 huge cleanup of capture file API (functions in file.c/file.h).
This includes: all functions in file.h now have a cf_ prefix, will have doxygen tags, will have the capture_file *cf as the first parameter and I tried to generalize the return values for non trivial functions.

Hopefully, I didn't introduced any new bugs, as I had to change a lot of files...

svn path=/trunk/; revision=13289
2005-02-04 18:44:44 +00:00
Ulf Lamping 5c19161dc2 if context menu item "Print" is clicked from the packet list context menu, it should use the selected range setting as default. As we currently have only one packet selectable, this will print only this one.
If we would allow selecting multiple packets in the packet list in the future, this option would print all selected packets.

svn path=/trunk/; revision=13169
2005-01-24 19:33:47 +00:00
Ulf Lamping 5b84b7e764 while I'm at it, add another packet details context menu item, which will link to the specific display filter reference page (just try it out :-)
svn path=/trunk/; revision=13117
2005-01-19 01:12:45 +00:00
Ulf Lamping 421737d210 add first implementation of context relevant calls to the protocol specific wiki pages. I've commented out the items in menu.c, so this (hopefully) won't break the current release run. We might think about further steps after the release is out.
However, if someone (already) want's to try out right now, you simply have to remove the comments in menu.c around line 430

svn path=/trunk/; revision=13091
2005-01-17 21:48:51 +00:00
Ulf Lamping 2ed93e96bd Don't use a global capture_opts in the capturing engine (this isn't a good idea). Do some more "housekeeping" in the capturing part.
Hopefully the unspecified forward declaration of capture_options_t in main.h is portable, but buildbot will tell me. This way I need the internals of that struct only at the places I really use it.

svn path=/trunk/; revision=12853
2004-12-29 09:09:35 +00:00
Ulf Lamping e0bbf855d9 fix doxygen tags
svn path=/trunk/; revision=12404
2004-10-27 04:45:00 +00:00
Guy Harris 8a8b883450 Set the svn:eol-style property on all text files to "native", so that
they have LF at the end of the line on UN*X and CR/LF on Windows;
hopefully this means that if a CR/LF version is checked in on Windows,
the CRs will be stripped so that they show up only when checked out on
Windows, not on UN*X.

svn path=/trunk/; revision=11400
2004-07-18 00:24:25 +00:00
Guy Harris aacb8bc9b6 Add "gtk/webbrowser.h" to declare functions from "gtk/webbrowser.c".
Rename "browser_open_program_file()" to "browser_open_data_file()", and
make it open files relative to the application's data directory, as
that's where data files such as HTMLized man pages would be put.  (That
happens to be the program directory on Windows, but it's a different
directory on UN*X - and you aren't guaranteed to be able to find the
program directory on UN*X by looking at argv[0] in any case.)  Move it
to "gtk/webbrowser.c".

Fix "filename2url()" to put "file://", not just "file:", in front of
pathnames on UN*X.

svn path=/trunk/; revision=11216
2004-06-23 01:38:39 +00:00
Michael Tüxen 388af2fccb Change type of argument of dnd_open_file_cmd to get ethereal compiled.
svn path=/trunk/; revision=11207
2004-06-21 20:12:45 +00:00
Ulf Lamping 2a6da1361c Add experimental feature of opening a webbrowser, to show some of the
webpages from http://www.ethereal.com. This functionality is copied from
the Gimp.
Win32 will use ShellExecute to use the system registered webbrowser.
On unix builds, currently the mozilla browser is hardcoded, we still need a
preference setting for this (I will add this later).

svn path=/trunk/; revision=11206
2004-06-21 17:27:35 +00:00
Jörg Mayer 2a08db4349 Remove trailing comma at end of enum
svn path=/trunk/; revision=11203
2004-06-21 10:53:35 +00:00
Ulf Lamping 25e6749eb4 move font related stuff to new file font_utils.c/.h
do some font related renaming/code cleanup

svn path=/trunk/; revision=11166
2004-06-17 16:35:26 +00:00
Ulf Lamping fa7a022db3 add more details for doxygen
svn path=/trunk/; revision=11107
2004-06-04 17:19:01 +00:00
Ulf Lamping 14bf83c340 add details for doxygen, various code cleanups as a result of this
svn path=/trunk/; revision=11052
2004-06-01 17:33:37 +00:00
Guy Harris 466ffc8977 Now that the "About" dialog box's code is in "gtk/about_dlg.c", move the
"create an About dialog" function's declaration to "gtk/about_dlg.h".

svn path=/trunk/; revision=10941
2004-05-21 08:44:45 +00:00
Ulf Lamping ad85db871f moved the about dialog from main.c to it's own new about_dlg.c,
added a notebook tab with some directory infos (still incomplete and ugly)
cleaned up #includes in main.c (hoping this didn't break the build on unix)

svn path=/trunk/; revision=10925
2004-05-20 12:01:13 +00:00
Ulf Lamping e1fef4b5ca Win32 only: Preference setting to open a console window, one of:
never (default), automatic (like before), always

svn path=/trunk/; revision=10870
2004-05-13 15:28:02 +00:00
Guy Harris 76574b554b If all we're doing is changing the visibility of a pane, we don't have
to re-lay-out the main window, we just need to change the visibility of
the appropriate widgets - that reduces the amount of drawing done,
speeding things up a little and reducing flicker.

svn path=/trunk/; revision=10795
2004-05-04 20:49:33 +00:00
Ulf Lamping 014052caf9 created new "export" dialogs for the current export file formats
svn path=/trunk/; revision=10694
2004-04-25 16:04:13 +00:00
Guy Harris e59b9abbb4 From Tomas Kukosa: add a new "Expand Tree" context menu item, which
expands the selected item and all items below it.

svn path=/trunk/; revision=10407
2004-03-19 06:23:38 +00:00
Guy Harris 6064ef84c2 Add a "force" argument to "filter_packets()" and
"main_filter_packets()", to force the filtering to be done even if the
filter is the same as the current one; this is necessary in order to
make sure "Follow TCP Stream" gets the packets processed even if you're
filtering the stream that's currently filtered in.

svn path=/trunk/; revision=10209
2004-02-23 22:48:52 +00:00
Ulf Lamping 3f2f2929eb added some more info to the statusbar (filesize, packet count, ..),
fixed a minor bug in the cfile handling (file length in summary dialog)

svn path=/trunk/; revision=9961
2004-02-03 00:16:59 +00:00
Ulf Lamping 5b38a022e4 Implemented rudimentary Drag and Drop support.
svn path=/trunk/; revision=9926
2004-01-31 18:32:37 +00:00
Ulf Lamping 3c76ec1aa2 every GUI action, which will erease a currently unsaved capture file,
will now raise a dialog "Save xy before z?" with Yes/No/Cancel buttons.

svn path=/trunk/; revision=9908
2004-01-29 23:11:38 +00:00
Ulf Lamping c890e29a99 apply automatically generated filters strings to the recent dropdown list,
e.g. when applying a "Follow TCP stream",
fix a bug in the recent function, discarding the newest entries when
saving a full list (now discarding the oldest).

svn path=/trunk/; revision=9849
2004-01-25 18:51:26 +00:00
Guy Harris 89c529db8e Have "font_apply()" return an indication as to whether it succeeded or
failed and, if it failed, how it failed.  Have it leave up to its caller
the job of reporting that it couldn't load the requested font; have its
callers do that, and have them set the zoom level on failure so that we
have a zoom level that is at least more likely to work.  Make the alert
boxes for "font_apply()" failures be error boxes, not warning boxes.

svn path=/trunk/; revision=9818
2004-01-24 01:02:54 +00:00
Ulf Lamping ef57df088f a.) saving GTK1 and GTK2 fontnames in different preference setting, to prevent problems when switching between GTK1 and GTK2 ethereal versions
b.) added new feature "Edit->Go To First Packet" "Edit->Go To Last Packet" with corresponding menu and toolbar items
c.) added new feature "View->Zoom In" / "View->Zoom Out" / View->Normal Size" with corresponding menu and toolbar items
This feature will act as a "size offset" to the current fontsize, so that the packet list/tree view/... will have a larger/smaller font size.
The value is stored inside the recent file.
d.) Win32 only: Try to get the win32 system font and fontsize at program startup and show the menus/dialogs and such with the same font and fontsize like other win32 windows.
This makes the program make a *lot* more feel like a normal win32 program.

svn path=/trunk/; revision=9753
2004-01-20 18:47:25 +00:00
Ulf Lamping 453309c0c6 added some menuitems "View->Show" including show/hide of all main widgets,
saving the states in the recent file

svn path=/trunk/; revision=9726
2004-01-19 00:42:12 +00:00
Guy Harris 563f423d76 Turn the GTK+ 1.2.10 clist code into our own widget; that lets us modify it
to add functionality or improve performance, although, until we make it
work on GTK+ 1.3[.x] and 2.x, we shouldn't count on the performance
improvements, or make its API different from that of the GtkClist API
(other than names).

Move all the code that knows about the packet list into
gtk/packet_list.c, so that the GtkClist vs. EthClist stuff is
encapsulated inside it.

svn path=/trunk/; revision=9608
2004-01-09 08:36:23 +00:00
Ulf Lamping 156be8aa9f added "most recently used" lists for
"opened capture files" and "display filter used",
the settings will be saved in the file "recent" in the users config path

svn path=/trunk/; revision=9275
2003-12-13 18:01:30 +00:00
Ulf Lamping 4b890b83fd print system enhanced, more print ranges and expanded states
svn path=/trunk/; revision=9223
2003-12-09 22:41:07 +00:00
Ronnie Sahlberg 3d32354336 Updates to TimeReference Frames
Add a Goto Next/Previous  time reference menu option

svn path=/trunk/; revision=8657
2003-10-10 08:39:24 +00:00
Ronnie Sahlberg 007d873671 Added TimeReference frames.
One can now select a packet and mark it as a TimeReference packet using the menu.
A TimeReference packet will be indicated by having all timestamp related column entries replaced by the string *REF*
A TimeReference packet will always be displayed in the packet pane, and overrides any display filters.

When a frame is a TimeReference frame, all later frames will calculate the TimeRelativeToFirstPacket  relative to the timestamp of the TimeReference frame instead of the first frame of the capture.

You can have any number of TimeReference frames you like.

svn path=/trunk/; revision=8459
2003-09-12 02:48:23 +00:00
Guy Harris a97b83a7f4 Add a new field type FT_FRAMENUM; an FT_FRAMENUM is a 32-bit unsigned
frame number, which is always decimal.  If you select an FT_FRAMENUM
field, there are menu items that let you go to the frame whose frame
number appears in that field.

Add FT_FRAMENUM fields for the ONC RPC "matching request is in this
frame" and "matching reply is in this frame" protocol tree items.

svn path=/trunk/; revision=6802
2002-12-19 02:58:53 +00:00
Olivier Abad 05ef1fc475 Merge gtk and gtk2 directories.
svn path=/trunk/; revision=6552
2002-11-03 17:38:45 +00:00
Jörg Mayer 7c4176d868 Removed trailing whitespaces from .h and .c files using the
winapi_cleanup tool written by Patrik Stridvall for the wine
project.

svn path=/trunk/; revision=6117
2002-08-28 21:04:11 +00:00
Guy Harris d6d0a33cf7 Give the routines that implement the "Match" and "Prepare" menu items
more meaningful names, indicating whether they look at something in the
protocol tree or the packet list.

svn path=/trunk/; revision=6077
2002-08-24 01:17:09 +00:00
Guy Harris 30a043931e From Jirka Novak:
Support for generating filter expressions based on packet list
	    column values
	Support for adding filter expressions generated from column or
	    protocol tree field values to the current expression rather
	    than replacing the current expression

svn path=/trunk/; revision=4522
2002-01-11 08:21:02 +00:00
Gerald Combs 30c5551caa Add preferences to save the main window size and position. If enabled,
the geometry is saved at exit.  Should we save the main window pane
sizes as well?

Move the DEF_WIDTH and DEF_HEIGHT #defines from gtk/main.h to prefs.h.
Remove the reference to DEF_WIDTH from proto_hier_stats_dlg.c.

svn path=/trunk/; revision=4462
2001-12-31 04:41:50 +00:00
Gilbert Ramirez 8743a4a8a7 Remove the global packet_info called "pi". Dissectors now only
access their own "pinfo". A packet_info is stored in epan_dissect_t,
which is created for the dissection of a single packet.

GUI functions which need to access the packet_info of the currently
selected packet used to use "pi"; now they use cfile.edt->pi. cfile's
"edt" member is the epan_dissect_t of the currently-selected packet.

The functionality of blank_packetinfo() was moved into
dissect_packet(), as that's the only place that called blank_packetinfo(),
after a spurious call to blank_packetinfo() was removed from
packet_list_select_cb().

svn path=/trunk/; revision=4246
2001-11-21 23:16:26 +00:00
Guy Harris e4db9c4b64 Add a routine to get the directory in which personal configuration files
reside.  Use it, rather than concatenating the user's home directory and
".ethereal" in a number of files.

Fix up some additional places to use G_DIR_SEPARATOR_S as the pathname
separator.

svn path=/trunk/; revision=4061
2001-10-22 22:59:26 +00:00
Gilbert Ramirez 8ea93329a8 last_open_dir needs a trailing slash in order for the GTK+
file-selection dialogue to open the directory and show its
contents, otherwise it opens the parent directory and shows *its*
contents.

svn path=/trunk/; revision=3279
2001-04-09 22:35:23 +00:00
Gilbert Ramirez 540f564993 Calculate the height and width of m_r_font globally, since various
routines need it.

When a user clicks on a hex digit or on the corresponding character
(the "text dump" portion) in the hex dump, find the field in the
proto_tree that the byte corresponds to, expand the GtkCTree so that
the field is viewable, select the field, and center it vertically.
LanAlyzer has this feature, and I've missed it in Ethereal.

svn path=/trunk/; revision=3096
2001-03-02 23:10:12 +00:00
Guy Harris e91341e3c3 Redraw:
the text in all "Follow TCP Stream" windows;

	the text in the help window if we have one up;

	all hex dump windows;

when GUI preference changes are to be applied, so that font changes and
"Follow TCP Stream" color changes show up.

Update both the Roman and bold font when the font is changed.

Don't decrement the reference counts on the old Roman and bold fonts
until that's all done.

svn path=/trunk/; revision=2401
2000-09-08 10:59:21 +00:00
Laurent Deniel d56c56cf88 Add "Colors..." button in GUI preferences.
Currently, it allows the selection of the foreground and
background colors of the marked frames but it could be
extended further (e.g. color of normal frames).

Add update_marked_frames() in main.c to update the
display (e.g. colors) of marked frames.

svn path=/trunk/; revision=2339
2000-08-22 14:04:52 +00:00