Ethereal-dev: RE: [Ethereal-dev] RFC: add option to change main GUI layout like in Analyzer pr

Note: This archive is from the project's previous web site, ethereal.com. This list is no longer active.

From: Biot Olivier <Olivier.Biot@xxxxxxxxxxx>
Date: Wed, 28 Apr 2004 09:42:11 +0200
Let's try to summarize this:

L = packet list
D = packet dissection (or packet details)
B = packet (or reassembly) bytes

I'd propose we specify the lay-out of the window in 2 steps.

Step 1: Provide a "Window layout" option.

An end-user can toggle between the following options:

(o) Stacked   (.) Large left pane  (.) Large right pane
     +---+
     | 1 |          +---+---+          +---+---+
     +---+          |   | 2 |          | 1 |   |
     | 2 |          | 1 +---+          +---+ 3 |
     +---+          |   | 3 |          | 2 |   |
     | 3 |          +---+---+          +---+---+
     +---+


Step 2: Fill in the panes.

Here there are many options:

 1. Provide a fixed list of entries (6 possibilities)
	(o) L/D/B   (.) D/L/B   (.) B/L/D
	(.) L/B/D   (.) D/B/L   (.) B/D/L
    The defaults would be:
	- Stacked L/D/B
	- Large left pane L/D/B
	- Large right pane L/B/D

 2. Provide select boxes for the 3 panes, where the choices have
    to be made from the 3 possibilities L, D and B.

 3. Provide "progressive radio button choices" where the choice
    for 1 eliminates it in steps 2 and 3, and the choice for 2
    automatically determines the choice for 3.
    One must however provide a "reset" option in this scenario,
    as an end-user may want to remake his choice.

 4. A mix from 2 and 3 where the end-user is offered the
    possibility to set the pane type for the first 2 panes only
    by means of 2 select boxes; the 3rd panel is automatically
    filled in based on the end-user's input of the 2 first panes.

The lay-out of the panes and the mapping of pane number with pane
type must be stored in preferences.

Regards,

Olivier
|-----Original Message-----
|From: Gilbert Ramirez
|
|
|On Tuesday 27 April 2004 13:37, Ulf Lamping wrote:
|> Hi List!
|>
|> I'm currently thinking about Ethereals GUI layout in general.
|>
|> After having a look at the Analyzer program (from the same people as
|> WinPCap), I've got the idea to layout the three main panes 
|(packet list,
|> packet details, packet bytes) in a different way.
|>
|> Currently my Ethereal main window will typically look like (L: packet
|> list, D: packet details, B: packet bytes):
|>
|> LLLLLLL
|> LLLLLLL
|> DDD
|> DDD
|> BBB
|>
|> So a lot of screen space at the bottom right edge is usually 
|empty. The
|> Analyzer program puts the panes differently than Ethereal:
|>
|> LLLLLLL
|> LLLLLLL
|> DDDBBB
|> DDDBBB
|>
|> ...you hopefully get the idea.
|>
|> This results in much better usage of the screen space (although a bit
|> uncommon).
|>
|> I've implemented the change of the layout in my personal source tree
|> (changed only one single line of code in main.c, thanks to GTK :-),
|> and tried this for some days now. It seems to be very 
|useful, at least
|> for me.
|>
|> I would like to add a setting in the recent file, and change 
|between the
|> traditional and this new layout with the menu item 
|"View->Packet Details
|> and Bytes Side by Side" (does someone know a better name?).
|>
|> What do others think of this?
|
|yes, optional layouts would be nice. For a long time I've wanted:
|
|LLLLDDDD
|LLLLDDDD
|BBBBDDDD
|BBBBDDDD
|
|or
|
|LLLLDDDD
|LLLLDDDD
|LLLLBBBB
|LLLLBBBB
|
|Putting the packet list next to the protocol tree only makes 
|sense for big 
|screens, but I run my screen at 1600x1200. It makes a big 
|difference if what 
|you're interested in is looking at a long list of packets (the 
|L's) or a 
|long, fully opened protocol dissection (the D's).
|
|The point is, we could have more than 2 different layout options.