René Stadler
8e2000a3e2
models: store line offsets in arrays
2014-09-11 20:51:48 +02:00
René Stadler
66ed3bb258
Use pango markup instead of attributes
...
Attributes don't work from introspection, so this blocks porting to gtk3.
In MessageColumn, admit that multiple highlighters don't actually work.
2014-09-11 20:51:48 +02:00
René Stadler
634f17ed7d
findbar: highlight multiple matches in a message
2014-09-11 20:51:48 +02:00
René Stadler
6cfca1c322
timeline: only redraw updated parts of the graph
...
Improves rendering performance a lot.
2014-09-11 20:51:48 +02:00
René Stadler
af308379b4
timeline: fix position rectangle missing on first click
...
Regression caused by previous commit.
2014-09-11 20:51:48 +02:00
René Stadler
985ef29bb3
timeline: only redraw required areas when updating position rectangle
2014-09-11 20:51:48 +02:00
René Stadler
bf28e9464e
Fix crash when range filtering
...
Regression from 25cfe9 (timeline: make log level calculation a lot faster).
2014-09-11 20:51:48 +02:00
René Stadler
ca6aee7388
timeline: clean up widget drawing
2014-09-11 20:51:48 +02:00
René Stadler
2d508773cc
timeline: make log level calculation a lot faster
...
This is the step where the timeline graph gets colored with the individual log
level colors. It's roughly 4.5 times faster now. Probably can be made even
better, the code also needs a cleanup.
2014-09-11 20:51:48 +02:00
René Stadler
103700a254
Data: improve stripped log file loading performance
...
A ~9% improvement for files without colors. This now slightly outperforms the
code before color support was added.
2014-09-11 20:51:48 +02:00
René Stadler
6061f34506
Data: also yield while loading unparseable files
...
Otherwise, the UI would be blocked while loading something big that is not a
log file at all.
2014-09-11 20:51:48 +02:00
René Stadler
fb032c177f
Remove color stripping script
2014-09-11 20:51:48 +02:00
René Stadler
9474886d85
Data: add support for colored log files
...
Adds a ~5% penalty for loading stripped files.
2014-09-11 20:51:47 +02:00
René Stadler
409ae7e522
timeline: remove broken actions from context menu
...
Hide lines before/after doesn't work as expected in this case.
2014-09-11 20:51:47 +02:00
René Stadler
33a8efa93d
Data: fix parsing of lines missing filename or function name
...
E.g. ffmpeg.
2014-09-11 20:51:47 +02:00
René Stadler
c8dc50da40
timeline: grab when scrolling in TimelineWidget
...
Also use gdk_event_request_motions.
2014-09-11 20:51:47 +02:00
René Stadler
bff238279d
timeline: move mouse handling into TimelineWidget
2014-09-11 20:51:47 +02:00
René Stadler
039f5a1d7b
timeline: replace self.connect calls with vmethod overrides
2014-09-11 20:51:47 +02:00
Andrzej Bieniek
ec31b51f85
setup: fix build
2014-09-11 20:51:47 +02:00
René Stadler
980aca88cf
timeline: don't select row when changing position in the timeline
...
Behaves just like the scrollbar now.
2014-09-11 20:51:47 +02:00
René Stadler
ad959763af
timeline: stop scanning the file while filtering
2014-09-11 20:51:47 +02:00
René Stadler
6d6f71049f
timeline: small cleanup
2014-09-11 20:51:47 +02:00
René Stadler
fb9d9ca4cf
Modernize menus a little
...
A bit in preparation to gtk3 app menus.
2014-09-11 20:51:47 +02:00
René Stadler
9864042ff8
Simplify and optimize filtered model implementation
...
RangeFilteredLogModel is gone. The functionality is trivially implemented in
FilteredLogModel now. Changing the range is now O(log n) at worst (was O(n) at
best, for rewriting the arrays). Stacking filtered models is not supported
anymore, which simplifies the code.
2014-09-11 20:51:47 +02:00
René Stadler
3caf64118b
Make RangeFilteredLogModel internal to GUI.models
2014-09-11 20:51:47 +02:00
René Stadler
f47260fbc4
Always use a filtered log model in the log view
...
Preparing to phase out RangeFilteredLogModel.
2014-09-11 20:51:47 +02:00
René Stadler
01ce89639e
models: cleanup dead code
2014-09-11 20:51:47 +02:00
René Stadler
bcfc4197d8
window: prevent default handler for delete-event from running
2014-09-11 20:51:47 +02:00
René Stadler
9829e2bec1
window: set to insensitive during load/filter operations
2014-09-11 20:51:47 +02:00
René Stadler
c84185ca48
window: show error for unparseable files
2014-09-11 20:51:47 +02:00
René Stadler
9fda3730a0
window: replace progress and error dialogs with InfoBars
2014-09-11 20:51:47 +02:00
René Stadler
bfb3b242c7
window: set wmclass, to have a nicer app name when running uninstalled
2014-09-11 20:51:47 +02:00
René Stadler
66e87f752a
Data: fix up out-of-order log lines
...
This is important because we rely on monotonically increasing timestamps for
binary searches in various places.
Overhead for an already sorted file with 1 million lines is less than 5%.
2014-09-11 20:51:47 +02:00
René Stadler
50dd570f3a
window: connect action handlers using a function decorator
...
A bit esoteric, but better than maintaining the list of action names.
2014-09-11 20:51:47 +02:00
René Stadler
421b437167
GUI: use 'with' statement
2014-09-11 20:51:47 +02:00
René Stadler
7a05a716d2
Switch to new try..except syntax
...
This is forward compatible to Python 3.
2014-09-11 20:51:47 +02:00
René Stadler
ca9a31ddd9
columns: auto size time column when setting base time
...
Base time formatting adds + or - in front of the timestamp, so the column has
to grow a little to not hide the last digit.
Also fixes a crash when setting the base time while the time column is hidden.
2014-09-11 20:51:47 +02:00
René Stadler
265cc8afdf
columns: also auto size thread and pid column on zoom change
2014-09-11 20:51:47 +02:00
René Stadler
c2eddd8db4
columns: cleanup default size calculation
...
Some unused parameters here.
2014-09-11 20:51:46 +02:00
René Stadler
ae75acd50d
Timeline: small cleanup
2014-09-11 20:51:46 +02:00
René Stadler
dab5357986
Data: remove log line serialization
...
This is incomplete and prone to error. Move it out into the utility script
(which is the only user).
2014-09-11 20:51:46 +02:00
René Stadler
836d10bc58
Remove odd-even row colors from log level column
...
This is more of visual clutter than aid. People also seem to be less likely to
spot the connection between the column and the timeline graph colors.
2014-09-11 20:51:46 +02:00
René Stadler
200c732056
Resize time and log level columns after zoom change
2014-09-11 20:51:46 +02:00
René Stadler
d7c5942403
Store zoom level in state
2014-09-11 20:51:46 +02:00
René Stadler
5b07a1fc39
Add zoom reset action
2014-09-11 20:51:46 +02:00
René Stadler
b7654532ba
Clean up context menu
...
These actions are not so commonly used, and also are not depending on the
context at all.
2014-09-11 20:51:46 +02:00
René Stadler
b866669ae1
Refactor and fix zoom handling
...
ColumnManager has to apply the zoom factor to newly added columns. Otherwise,
showing a previously hidden column appears with scale 1.0.
This also drops the value-changed signal emission for the vadjustment, as it is
apparently not needed.
2014-09-11 20:51:46 +02:00
Stefan Kost
4e334e0e00
Add 'fixme' and 'trace' log levels
2014-09-11 20:51:46 +02:00
Stefan Kost
5fae4aa235
timeline: add tooltip to histogram as well
2014-09-11 20:51:46 +02:00
Stefan Kost
aa9db8ef8e
Add zoom in/out actions, reduce vertical row padding
...
Add two actions to shrink and enlarge the text in the log pane. Add a theme
overide to set expander size to 1 (see bug #615985 ) and also turn focus lines
off. Remove extra ypadding on cells.
2014-09-11 20:51:46 +02:00