4.8 KiB
4.8 KiB
Button-Based Frame Type Filter Layout
✅ New Design Implemented
Completely redesigned the interface with filter buttons above the grid view as requested.
🎯 Layout Structure
┌─────────────────────────────────────────────────────────────┐
│ Progress Bar (when loading) │
├─────────────────────────────────────────────────────────────┤
│ Metrics: Flows | Pkts/s | Vol/s | Enhanced | Outliers │
├─────────────────────────────────────────────────────────────┤
│ [1. Overview] [2. CH10-Data] [3. UDP] [4. PTP-Sync]... │ <- Filter Buttons
├─────────────────────────────────────────────────────────────┤
│ │ │
│ Flow Grid (70%) │ Flow │
│ - Shows filtered flows │ Details │
│ - Frame-type specific columns │ (30%) │
│ - One row per flow │ │
│ │ │
└─────────────────────────────────────────────────────────────┘
🔧 Key Features
Filter Button Bar
- 1. Overview - Shows all flows with frame type summary
- 2-9, 0 - Frame type specific filters (dynamically created)
- Active button highlighted in blue
- Button counts show number of flows for each frame type
Grid View Modes
Overview Mode (Key: 1)
- Shows ALL flows (one row per flow)
- Columns: #, Source, Destination, Protocol, Packets, Volume, Frame Types, Status
- Frame Types column shows top 3 frame types per flow
Frame Type Mode (Keys: 2-9, 0)
- Shows ONLY flows containing that frame type
- Columns: #, Source, Destination, Protocol, [FrameType] Packets, Avg ΔT, Std ΔT, Min ΔT, Max ΔT, Outliers, Quality
- Frame-type specific timing statistics
⌨️ Keyboard Controls
Frame Type Selection
1- Overview (all flows)2- First detected frame type (e.g., CH10-Data)3- Second detected frame type (e.g., UDP)4-9, 0- Additional frame types as detected
Other Controls
p- Pause/Resume updatesd- Show detailsr- Generate reporto- Copy outliersv- Toggle view mode (reserved for future use)q- Quit
📊 Frame Type Examples
Based on your PCAP data, buttons would show:
[1. Overview] [2. CH10-Data(1)] [3. UDP(6)] [4. PTP-Signaling(2)] [5. TMATS(1)]
Pressing "2" shows CH10-Data filtered view:
# Source Dest Proto CH10-Data Packets Avg ΔT Std ΔT Outliers Quality
1 192.168.4.89:... 239.1.2.10:... UDP 1,105 102.2ms 5.1ms 2 99%
Pressing "3" shows UDP filtered view:
# Source Dest Proto UDP Packets Avg ΔT Std ΔT Outliers Quality
1 192.168.4.89:... 239.1.2.10:... UDP 228 492.9ms 125.3ms 0 100%
2 11.59.19.202:... 239.0.1.133:... UDP 113 999.4ms 45.2ms 0 100%
3 192.168.43.111:. 192.168.255:... UDP 48 2248.9ms 567.1ms 0 95%
...
🎨 Visual Styling
- Active button: Blue background (#0080ff) with bold white text
- Inactive buttons: Dark background (#262626) with gray text
- Hover effect: Lighter background on mouse over
- Button counts: Show number of flows for each frame type
- Quality colors: Green (>90%), Yellow (70-90%), Red (<70%)
⚡ Performance
- Dynamic buttons: Only creates buttons for detected frame types
- Efficient filtering: Reuses existing flow data structures
- Real-time updates: Buttons and counts update as new data loads
- Memory efficient: Single grid view, just changes columns/filtering
🎯 User Workflow
- Start with Overview (default) - see all flows
- Press number key to filter by frame type
- View frame-specific timing statistics in filtered mode
- Switch between filters to analyze different protocols
- All keyboard shortcuts work in any mode
This matches exactly what you requested: buttons above the grid, number key selection, and filtered views showing frame-type specific statistics!