Werner Almesberger
672228148d
eeshow/gui.c: replace {curr,last}_hist with {new,old}_hist
...
Since we already change the UI paradigm, this greatly simplifies the code.
2016-08-09 19:01:05 -03:00
Werner Almesberger
2bd452d3b3
eeshow/gui.c: redesign selection history to use old/new paradigm (WIP)
...
Also improved visual representation.
2016-08-09 18:28:59 -03:00
Werner Almesberger
f973abd98c
eeshow/gui-over.c: move styles to gui-style.c
2016-08-09 15:30:30 -03:00
Werner Almesberger
29f4db55ed
eeshow/gui.c: newer revision is on top and in diffs it's green
2016-08-09 14:16:05 -03:00
Werner Almesberger
afe744c63e
eeshow/gui.c: clicking outside the history list now closes it
2016-08-09 13:28:27 -03:00
Werner Almesberger
bbb375ce26
eeshow/gui.c: show clickable overlay boxes also for parents of current sheet
2016-08-09 12:55:29 -03:00
Werner Almesberger
d4e3018c12
eeshow/gui.c (go_to_sheet): don't try to access history if we have none
2016-08-09 12:03:36 -03:00
Werner Almesberger
20c821f0ba
eeshow/gui.c (curr_sheet_size): also support diff mode
2016-08-09 11:20:54 -03:00
Werner Almesberger
eff0ad4860
eeshow/gui.c (zoom_to_extents): abstract obtaining the sheet size
2016-08-09 10:58:29 -03:00
Werner Almesberger
4988736351
eeshow/gui.c: experimentally use pixel differences (WIP)
...
This still has a number of bugs but the basics work.
The most glaring issues:
- AoI coordinates are wrong, so AoIs don't really work
- "center and zoom to extents" is all wrong
2016-08-09 10:16:31 -03:00
Werner Almesberger
f8cc8ba598
eeshow/gui.c (gui): set default size to 640 x 480 pixels
2016-08-07 22:34:01 -03:00
Werner Almesberger
24422a7721
eeshow/gui.c: show either revisions or history, never both at the same time
...
Also move the revisions to the left edge, to ease navigation.
2016-08-07 21:47:50 -03:00
Werner Almesberger
f40f012a1e
eeshow/: add color overriding; basic infrastructure for viewing deltas
2016-08-07 14:06:50 -03:00
Werner Almesberger
c2c58f6892
eeshow/: selection of 2nd history entry (for comparisons, WIP)
2016-08-07 07:51:56 -03:00
Werner Almesberger
cb7902fcb2
eeshow/gui.c (struct gui_ctx.vcs_overlays): rename to hist_overlays
...
We use "hist" everywhere else to refer to the history in the GUI context.
2016-08-07 06:23:04 -03:00
Werner Almesberger
bd7149ba0b
eeshow/gui.c (setup_styles): present history "ragged right"
2016-08-07 06:16:41 -03:00
Werner Almesberger
56e36b7e9d
eeshow/: move sheet overlays to right screen edge; move history left
2016-08-07 06:13:26 -03:00
Werner Almesberger
c908e4de0e
eeshow/gui.c: show details also on hover in history list
2016-08-07 05:22:55 -03:00
Werner Almesberger
3c71bf7b05
eeshow/: hovering over the revision shows more details
2016-08-07 05:09:34 -03:00
Werner Almesberger
cb4ee6d5b9
eeshow/: work around the ink_rect.y bug more elegantly
...
Still have no clue what causes this.
2016-08-06 23:02:42 -03:00
Werner Almesberger
51f6852bf9
eeshow/: overlays can now have different styles (WIP)
2016-08-06 20:46:03 -03:00
Werner Almesberger
18c3b6e476
eeshow/: use printf-style formatting for overlay text; test mode -F fmt string
2016-08-06 19:14:31 -03:00
Werner Almesberger
3b5daecbd6
eeshow/gui.c (go_to_sheet): don't "render" (record) sheets before shown
2016-08-06 10:19:16 -03:00
Werner Almesberger
acbce9a214
eeshow/gui.c: add navigation in history
2016-08-06 10:00:29 -03:00
Werner Almesberger
b067cf9a38
eeshow/gui.c: parse sheets for each revision
...
We currenly make no effort to avoid duplicate work, so this is slow.
Also, we don't actually do anything with the revision information, yet.
2016-08-06 09:27:22 -03:00
Werner Almesberger
ce5111ae07
eeshow/gui.c (gui): quit if we couldn't parse (and don't segfault)
2016-08-05 21:28:45 -03:00
Werner Almesberger
f4944a5da9
eeshow/ (file_open, *_parse): return 0 on error (may still exit)
2016-08-05 21:02:57 -03:00
Werner Almesberger
5f0678097f
eeshow/gui.c: get only list of file names from main, parse on its own
2016-08-05 10:24:39 -03:00
Werner Almesberger
dc2b477cf8
eeshow/gui.c: show commit on sheet (if available); click to go to history
2016-08-05 08:31:50 -03:00
Werner Almesberger
17e70172bf
eeshow/: if sheet is in repo, retrieve history, display in GUI on Up/Down (WIP)
...
This isn't useful yet.
2016-08-04 20:35:41 -03:00
Werner Almesberger
1c6116a8d6
eeshow/: fix some whitespace issues
...
- trailing space
- space before semicolon
- indentation with spaces instead of tabs (copy & paste)
2016-08-04 19:25:31 -03:00
Werner Almesberger
8abea1b890
eeshow/gui.c, README: PgUp/PgDn iterate through sheets in sequence
2016-08-04 09:02:33 -03:00
Werner Almesberger
ff17f0e492
eeshow/gui.c: replace ugly and fragile "prev" logic with a simple search
2016-08-04 08:49:54 -03:00
Werner Almesberger
258876ef2c
eeshow/: retrieve title from *.sch; prefer over subsheet name when displaying
2016-08-04 08:42:36 -03:00
Werner Almesberger
064a561285
eeshow/: add AOI to overlays; clicking on sheet name returns to previous sheet
2016-08-04 07:55:42 -03:00
Werner Almesberger
849b8f33e5
eeshow/gui-aoi.c, gui-aoi.h: split areas of interest from gui.c; abstract better
2016-08-04 07:19:18 -03:00
Werner Almesberger
69497551dd
eeshow/gui-over.h, gui-over.c: split overlays from gui.c
2016-08-03 20:55:51 -03:00
Werner Almesberger
2e909029bc
eeshow/gui.c: add overlays; use to show sheet name (WIP)
2016-08-03 19:21:38 -03:00
Werner Almesberger
27b217d062
eeshow/gui.c (redraw): abstract gtk_widget_queue_draw()
2016-08-03 18:49:16 -03:00
Werner Almesberger
d07a5b8d8b
eeshow/gui.c (key_press_event): Home returns to the topmost sheet
2016-08-03 16:00:51 -03:00
Werner Almesberger
9b81d08525
eeshow/gui.c: also zoom to extents when resizing the window
2016-08-03 13:15:25 -03:00
Werner Almesberger
92a0cfab4b
eeshow/gui.c: zoom to extents on [*] and when showing a new sheet
2016-08-03 13:05:30 -03:00
Werner Almesberger
7630325ae6
eeshow/gui.c: delete/backspace return to previous sheet
2016-08-03 12:34:33 -03:00
Werner Almesberger
2135f8ffc9
eeshow/gui.c: add "areas of interest" and selection of sub-sheets
2016-08-03 12:26:22 -03:00
Werner Almesberger
1771c635b0
eeshow/: separate sheet context from GUI ctx; record all sheets we have
...
"record" as in "render with record_*"
2016-08-03 10:54:06 -03:00
Werner Almesberger
2775b5cb8d
eeshow/gui.c: add zoom in/out with + (or =) and -
2016-08-03 10:05:01 -03:00
Werner Almesberger
c8b8dbd174
eeshow/: add panning (middle mouse button)
2016-08-03 09:57:58 -03:00
Werner Almesberger
e2ff07457c
eeshow/: scroll wheel zooms
2016-08-03 09:33:16 -03:00
Werner Almesberger
76c1f916df
eeshow/: add rendering on Gtk canvas
2016-08-03 07:38:57 -03:00