Hello community, here is the log from the commit of package gtkwave for openSUSE:Factory checked in at 2012-11-02 17:36:33 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/gtkwave (Old) and /work/SRC/openSUSE:Factory/.gtkwave.new (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "gtkwave", Maintainer is "" Changes: -------- --- /work/SRC/openSUSE:Factory/gtkwave/gtkwave.changes 2012-10-04 19:39:58.000000000 +0200 +++ /work/SRC/openSUSE:Factory/.gtkwave.new/gtkwave.changes 2012-11-02 17:36:35.000000000 +0100 @@ -1,0 +2,13 @@ +Wed Oct 31 18:33:11 UTC 2012 - dmi...@roshchin.org + +- Update to version 3.3.41 + * Fix for gtkwave::addSignalsFromList when encountering + signals of form a.b.MyBus[7:0] and a.b.MyBus[15:8] such + that brackets aren't stripped. + * Added experimental highlight_wavewindow rc variable which + allows signals also to be highlighted in the wave window + using the value for color_grid. + * Added use_standard_trace_select rc variable and related + menu option. + +------------------------------------------------------------------- Old: ---- gtkwave-3.3.40.tar.gz New: ---- gtkwave-3.3.41.tar.gz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ gtkwave.spec ++++++ --- /var/tmp/diff_new_pack.A6ojtk/_old 2012-11-02 17:36:38.000000000 +0100 +++ /var/tmp/diff_new_pack.A6ojtk/_new 2012-11-02 17:36:38.000000000 +0100 @@ -11,31 +11,32 @@ # case the license is the MIT License). An "Open Source License" is a # license that conforms to the Open Source Definition (Version 1.9) # published by the Open Source Initiative. -# + # Please submit bugfixes or comments via http://bugs.opensuse.org/ # + Name: gtkwave -Version: 3.3.40 +Version: 3.3.41 Release: 0 -License: GPL-2.0+ Summary: Waveform viewer for Ditital Signals +License: GPL-2.0+ Group: Productivity/Scientific/Electronics Url: http://sourceforge.net/projects/gtkwave/ Source0: %{name}-%{version}.tar.gz -BuildRequires: flex BuildRequires: fdupes +BuildRequires: flex BuildRequires: gcc-c++ BuildRequires: gperf BuildRequires: gtk2-devel BuildRequires: judy-devel BuildRequires: tcl-devel BuildRequires: tk-devel +BuildRequires: update-desktop-files BuildRequires: xz-devel BuildRequires: zlib-devel -BuildRequires: update-desktop-files BuildRoot: %{_tmppath}/%{name}-%{version}-build ++++++ gtkwave-3.3.40.tar.gz -> gtkwave-3.3.41.tar.gz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/gtkwave-3.3.40/CHANGELOG.TXT new/gtkwave-3.3.41/CHANGELOG.TXT --- old/gtkwave-3.3.40/CHANGELOG.TXT 2012-09-10 22:39:19.000000000 +0200 +++ new/gtkwave-3.3.41/CHANGELOG.TXT 2012-10-30 19:37:45.000000000 +0100 @@ -1253,3 +1253,11 @@ of GTK2 (as it could be verified on that version). Fixed off-by-one buffer string allocation write overflow in calloc_2() call in maketraces(). +3.3.41 30sep12 Fix for gtkwave::addSignalsFromList when encountering + signals of form a.b.MyBus[7:0] and a.b.MyBus[15:8] such + that brackets aren't stripped. + Added experimental highlight_wavewindow rc variable which + allows signals also to be highlighted in the wave window + using the value for color_grid. + Added use_standard_trace_select rc variable and related + menu option. diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/gtkwave-3.3.40/LICENSE.TXT new/gtkwave-3.3.41/LICENSE.TXT --- old/gtkwave-3.3.40/LICENSE.TXT 2012-08-16 02:33:19.000000000 +0200 +++ new/gtkwave-3.3.41/LICENSE.TXT 2012-10-30 19:37:45.000000000 +0100 @@ -1,6 +1,6 @@ ########################################################################## -GTKWave 3.3.40 Wave Viewer is Copyright (C) 1999-2012 Tony Bybell. +GTKWave 3.3.41 Wave Viewer is Copyright (C) 1999-2012 Tony Bybell. Portions of GTKWave are Copyright (C) 1999-2012 Udi Finkelstein. Context support is Copyright (C) 2007-2012 Kermin Elliott Fleming. Trace group support is Copyright (C) 2009-2012 Donald Baltus. diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/gtkwave-3.3.40/configure new/gtkwave-3.3.41/configure --- old/gtkwave-3.3.40/configure 2012-08-16 02:33:19.000000000 +0200 +++ new/gtkwave-3.3.41/configure 2012-10-30 19:37:45.000000000 +0100 @@ -1,6 +1,6 @@ #! /bin/sh # Guess values for system-dependent variables and create Makefiles. -# Generated by GNU Autoconf 2.63 for gtkwave 3.3.40. +# Generated by GNU Autoconf 2.63 for gtkwave 3.3.41. # # Report bugs to <byb...@rocketmail.com>. # @@ -596,8 +596,8 @@ # Identity of this package. PACKAGE_NAME='gtkwave' PACKAGE_TARNAME='gtkwave' -PACKAGE_VERSION='3.3.40' -PACKAGE_STRING='gtkwave 3.3.40' +PACKAGE_VERSION='3.3.41' +PACKAGE_STRING='gtkwave 3.3.41' PACKAGE_BUGREPORT='byb...@rocketmail.com' ac_unique_file="src/vcd.c" @@ -1386,7 +1386,7 @@ # Omit some internal or obsolete options to make the list less imposing. # This message is too long to be a string in the A/UX 3.1 sh. cat <<_ACEOF -\`configure' configures gtkwave 3.3.40 to adapt to many kinds of systems. +\`configure' configures gtkwave 3.3.41 to adapt to many kinds of systems. Usage: $0 [OPTION]... [VAR=VALUE]... @@ -1452,7 +1452,7 @@ if test -n "$ac_init_help"; then case $ac_init_help in - short | recursive ) echo "Configuration of gtkwave 3.3.40:";; + short | recursive ) echo "Configuration of gtkwave 3.3.41:";; esac cat <<\_ACEOF @@ -1589,7 +1589,7 @@ test -n "$ac_init_help" && exit $ac_status if $ac_init_version; then cat <<\_ACEOF -gtkwave configure 3.3.40 +gtkwave configure 3.3.41 generated by GNU Autoconf 2.63 Copyright (C) 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001, @@ -1603,7 +1603,7 @@ This file contains any messages produced by compilers while running configure, to aid debugging if configure makes a mistake. -It was created by gtkwave $as_me 3.3.40, which was +It was created by gtkwave $as_me 3.3.41, which was generated by GNU Autoconf 2.63. Invocation command line was $ $0 $@ @@ -2453,7 +2453,7 @@ # Define the identity of the package. PACKAGE='gtkwave' - VERSION='3.3.40' + VERSION='3.3.41' cat >>confdefs.h <<_ACEOF @@ -14297,7 +14297,7 @@ # report actual input values of CONFIG_FILES etc. instead of their # values after options handling. ac_log=" -This file was extended by gtkwave $as_me 3.3.40, which was +This file was extended by gtkwave $as_me 3.3.41, which was generated by GNU Autoconf 2.63. Invocation command line was CONFIG_FILES = $CONFIG_FILES @@ -14360,7 +14360,7 @@ _ACEOF cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 ac_cs_version="\\ -gtkwave config.status 3.3.40 +gtkwave config.status 3.3.41 configured by $0, generated by GNU Autoconf 2.63, with options \\"`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`\\" diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/gtkwave-3.3.40/configure.ac new/gtkwave-3.3.41/configure.ac --- old/gtkwave-3.3.40/configure.ac 2012-08-16 02:33:19.000000000 +0200 +++ new/gtkwave-3.3.41/configure.ac 2012-10-30 19:37:45.000000000 +0100 @@ -2,7 +2,7 @@ # Process this file with autoconf to produce a configure script. AC_PREREQ(2.59) -AC_INIT(gtkwave, 3.3.40, byb...@rocketmail.com) +AC_INIT(gtkwave, 3.3.41, byb...@rocketmail.com) AC_CONFIG_SRCDIR([src/vcd.c]) AM_INIT_AUTOMAKE AC_CONFIG_HEADER([config.h]) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/gtkwave-3.3.40/contrib/bundle_for_osx/Info-gtkwave.plist new/gtkwave-3.3.41/contrib/bundle_for_osx/Info-gtkwave.plist --- old/gtkwave-3.3.40/contrib/bundle_for_osx/Info-gtkwave.plist 2011-12-12 18:35:20.000000000 +0100 +++ new/gtkwave-3.3.41/contrib/bundle_for_osx/Info-gtkwave.plist 2012-10-30 19:37:36.000000000 +0100 @@ -8,7 +8,7 @@ <key>CFBundleExecutable</key> <string>gtkwave</string> <key>CFBundleGetInfoString</key> - <string>3.3.29, (C) 1999-2012 Tony Bybell http://gtkwave.sourceforge.net</string> + <string>3.3.41, (C) 1999-2012 Tony Bybell http://gtkwave.sourceforge.net</string> <key>CFBundleIconFile</key> <string>gtkwave.icns</string> <key>CFBundleIdentifier</key> @@ -18,11 +18,11 @@ <key>CFBundlePackageType</key> <string>APPL</string> <key>CFBundleShortVersionString</key> - <string>3.3.29</string> + <string>3.3.41</string> <key>CFBundleSignature</key> <string>????</string> <key>CFBundleVersion</key> - <string>3.3.29</string> + <string>3.3.41</string> <key>NSHumanReadableCopyright</key> <string>Copyright 1999 - 2012 Tony Bybell, GNU General Public License.</string> <key>LSMinimumSystemVersion</key> Files old/gtkwave-3.3.40/doc/gtkwave.odt and new/gtkwave-3.3.41/doc/gtkwave.odt differ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/gtkwave-3.3.40/examples/gtkwaverc new/gtkwave-3.3.41/examples/gtkwaverc --- old/gtkwave-3.3.40/examples/gtkwaverc 2012-03-15 06:48:40.000000000 +0100 +++ new/gtkwave-3.3.41/examples/gtkwaverc 2012-10-30 19:37:45.000000000 +0100 @@ -3,6 +3,8 @@ # (rename to .gtkwaverc and copy # to home directory to be loaded automatically) # +use_standard_trace_select no +highlight_wavewindow no alt_wheel_mode yes vcd_preserve_glitches no vcd_preserve_glitches_real no diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/gtkwave-3.3.40/man/gtkwaverc.5 new/gtkwave-3.3.41/man/gtkwaverc.5 --- old/gtkwave-3.3.40/man/gtkwaverc.5 2012-03-24 20:47:01.000000000 +0100 +++ new/gtkwave-3.3.41/man/gtkwaverc.5 2012-10-30 19:37:45.000000000 +0100 @@ -79,7 +79,7 @@ color value for trace groupings. .TP \fBcolor_grid\fR <\fIvalue\fP> -grid color (use Alt-G/Shift-Alt-G to show/hide grid). +grid color (use Alt-G/Shift-Alt-G to show/hide grid). This is also the color used for \fBhighlight_wavewindow\fR when enabled. .TP \fBcolor_grid2\fR <\fIvalue\fP> grid color for secondary pattern search. @@ -220,6 +220,9 @@ \fBhier_max_level\fR <\fIvalue\fP> Sets the maximum hierarchy depth (from the right side) to display for trace names. Note that a value of zero displays the full hierarchy name. .TP +\fBhighlight_wavewindow\fR <\fIvalue\fP> +When enabled, this causes traces highlighted in the signal window also to be highlighted in the wave window. +.TP \fBhpane_pack\fR <\fIvalue\fP> A nonzero value indicates that the horizontal pane should be constructed using the gtk_paned_pack functions (default and recommended). A zero value indicates that gtk_paned_add will be used instead. .TP @@ -321,6 +324,9 @@ \fBuse_standard_clicking\fR <\fIvalue\fP> This option no longer has any effect in gtkwave: normal GTK click semantics are used in the signalwindow. .TP +\fBuse_standard_trace_select\fR <\fIvalue\fP> +A nonzero value keeps the currently selected traces from deselecting on mouse button press. This allows drag and drop to function more smoothly. As this behavior is not how GTK normally functions, it is by default disabled. +.TP \fBuse_toolbutton_interface\fR <\fIvalue\fP> A nonzero value indicates that a toolbar with buttons should be at the top of the screen instead of the traditional style gtkwave button groups. Default is on. .TP diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/gtkwave-3.3.40/src/globals.c new/gtkwave-3.3.41/src/globals.c --- old/gtkwave-3.3.40/src/globals.c 2012-08-09 03:25:05.000000000 +0200 +++ new/gtkwave-3.3.41/src/globals.c 2012-10-30 19:37:34.000000000 +0100 @@ -811,6 +811,8 @@ NULL, /* shift_click_trace 383 */ 0, /* trtarget_signalwindow_c_1 384 */ NULL, /* starting_unshifted_trace */ +0, /* standard_trace_dnd_degate */ +0, /* use_standard_trace_select */ 1, /* use_standard_clicking */ 0, /* std_collapse_pressed */ 0, /* std_dnd_tgt_on_signalarea */ @@ -1218,6 +1220,7 @@ /* * wavewindow.c */ +0, /* highlight_wavewindow */ 1, /* alt_wheel_mode */ 0, /* use_scrollwheel_as_y */ 0, /* enable_slider_zoom */ @@ -1802,6 +1805,8 @@ new_globals->ps_maxveclen = GLOBALS->ps_maxveclen; new_globals->show_base = GLOBALS->show_base; new_globals->display_grid = GLOBALS->display_grid; + new_globals->highlight_wavewindow = GLOBALS->highlight_wavewindow; + new_globals->use_standard_trace_select = GLOBALS->use_standard_trace_select; new_globals->use_big_fonts = GLOBALS->use_big_fonts; new_globals->use_full_precision = GLOBALS->use_full_precision; new_globals->use_frequency_delta = GLOBALS->use_frequency_delta; @@ -2661,6 +2666,8 @@ GLOBALS->use_full_precision = g_old->use_full_precision; GLOBALS->show_base = g_old->show_base; GLOBALS->display_grid = g_old->display_grid; + GLOBALS->highlight_wavewindow = g_old->highlight_wavewindow; + GLOBALS->use_standard_trace_select = g_old->use_standard_trace_select; GLOBALS->disable_mouseover = g_old->disable_mouseover; GLOBALS->keep_xz_colors = g_old->keep_xz_colors; GLOBALS->zoom_pow10_snap = g_old->zoom_pow10_snap; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/gtkwave-3.3.40/src/globals.h new/gtkwave-3.3.41/src/globals.h --- old/gtkwave-3.3.40/src/globals.h 2012-08-09 03:25:05.000000000 +0200 +++ new/gtkwave-3.3.41/src/globals.h 2012-10-30 19:37:34.000000000 +0100 @@ -810,6 +810,8 @@ struct TraceEnt *shift_click_trace; /* from signalwindow.c 411 */ int trtarget_signalwindow_c_1; /* from signalwindow.c 412 */ Trptr starting_unshifted_trace; /* from signalwindow.c */ +unsigned char standard_trace_dnd_degate; /* from signalwindow.c */ +unsigned char use_standard_trace_select; /* from signalwindow.c */ unsigned char use_standard_clicking; /* from signalwindow.c */ unsigned char std_collapse_pressed; /* from signalwindow.c */ unsigned char std_dnd_tgt_on_signalarea; /* from signalwindow.c */ @@ -1203,6 +1205,7 @@ /* * wavewindow.c */ +char highlight_wavewindow; /* from wavewindow.c */ char alt_wheel_mode; /* from wavewindow.c */ char use_scrollwheel_as_y; /* from wavewindow.c */ char enable_slider_zoom; /* from wavewindow.c */ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/gtkwave-3.3.40/src/main.c new/gtkwave-3.3.41/src/main.c --- old/gtkwave-3.3.40/src/main.c 2012-07-31 22:56:15.000000000 +0200 +++ new/gtkwave-3.3.41/src/main.c 2012-10-30 19:37:34.000000000 +0100 @@ -107,6 +107,8 @@ GLOBALS->use_full_precision = g_old->use_full_precision; GLOBALS->show_base = g_old->show_base; GLOBALS->display_grid = g_old->display_grid; +GLOBALS->highlight_wavewindow = g_old->highlight_wavewindow; +GLOBALS->use_standard_trace_select = g_old->use_standard_trace_select; GLOBALS->disable_mouseover = g_old->disable_mouseover; GLOBALS->keep_xz_colors = g_old->keep_xz_colors; GLOBALS->zoom_pow10_snap = g_old->zoom_pow10_snap; @@ -589,6 +591,8 @@ GLOBALS->ps_maxveclen = old_g->ps_maxveclen; GLOBALS->show_base = old_g->show_base; GLOBALS->display_grid = old_g->display_grid; + GLOBALS->highlight_wavewindow = old_g->highlight_wavewindow; + GLOBALS->use_standard_trace_select = old_g->use_standard_trace_select; GLOBALS->use_big_fonts = old_g->use_big_fonts; GLOBALS->use_full_precision = old_g->use_full_precision; GLOBALS->use_frequency_delta = old_g->use_frequency_delta; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/gtkwave-3.3.40/src/menu.c new/gtkwave-3.3.41/src/menu.c --- old/gtkwave-3.3.40/src/menu.c 2012-08-03 22:36:12.000000000 +0200 +++ new/gtkwave-3.3.41/src/menu.c 2012-10-30 19:37:34.000000000 +0100 @@ -1802,6 +1802,49 @@ #endif } /**/ +void menu_enable_standard_trace_select(gpointer null_data, guint callback_action, GtkWidget *widget) +{ +if(GLOBALS->helpbox_is_active) + { + help_text_bold("\n\nStandard Trace Select"); + help_text( + " when enabled," + " keeps the currently selected traces from deselecting on mouse button press." + " This allows drag and drop to function more smoothly. As this behavior is not" + " how GTK normally functions, it is by default disabled." + ); + } + else + { +#ifndef WAVE_USE_MLIST_T + if(!GLOBALS->use_standard_trace_select) + { + status_text("Standard Trace Select enabled.\n"); + GLOBALS->use_standard_trace_select=~0; + } + else + { + status_text("Standard Trace Select disabled.\n"); + GLOBALS->use_standard_trace_select=0; + } +#else + GLOBALS->use_standard_trace_select = gtk_check_menu_item_get_active(GTK_CHECK_MENU_ITEM(menu_wlist[WV_MENU_ESTS])); + if(GLOBALS->use_standard_trace_select) + { + status_text("Standard Trace Select enabled.\n"); + } + else + { + status_text("Standard Trace Select disabled.\n"); + } +#endif + } + +#ifndef WAVE_USE_MLIST_T +GTK_CHECK_MENU_ITEM(gtk_item_factory_get_widget(GLOBALS->item_factory_menu_c_1, menu_items[WV_MENU_ESTS].path))->active=(GLOBALS->use_standard_trace_select)?TRUE:FALSE; +#endif +} +/**/ void menu_enable_dynamic_resize(gpointer null_data, guint callback_action, GtkWidget *widget) { if(GLOBALS->helpbox_is_active) @@ -5847,6 +5890,36 @@ } /**/ +void menu_show_wave_highlight(gpointer null_data, guint callback_action, GtkWidget *widget) +{ +if(GLOBALS->helpbox_is_active) + { + help_text_bold("\n\nShow Wave Highlight"); + help_text( + " toggles the drawing of highlighted waveforms (instead of gridlines) in the waveform display." + ); + } + else + { +#ifndef WAVE_USE_MLIST_T + GLOBALS->highlight_wavewindow=(GLOBALS->highlight_wavewindow)?0:~0; +#else + GLOBALS->highlight_wavewindow = gtk_check_menu_item_get_active(GTK_CHECK_MENU_ITEM(menu_wlist[WV_MENU_SHW])); +#endif + if(GLOBALS->wave_hslider) + { + gtk_signal_emit_by_name (GTK_OBJECT (GTK_ADJUSTMENT(GLOBALS->wave_hslider)),"changed"); + gtk_signal_emit_by_name (GTK_OBJECT (GTK_ADJUSTMENT(GLOBALS->wave_hslider)),"value_changed"); + } + DEBUG(printf("Show Wave Highlight\n")); + } + +#ifndef WAVE_USE_MLIST_T +GTK_CHECK_MENU_ITEM(gtk_item_factory_get_widget(GLOBALS->item_factory_menu_c_1, menu_items[WV_MENU_SHW].path))->active=(GLOBALS->highlight_wavewindow)?TRUE:FALSE; +#endif +} + +/**/ void menu_show_mouseover(gpointer null_data, guint callback_action, GtkWidget *widget) { if(GLOBALS->helpbox_is_active) @@ -6109,11 +6182,15 @@ WAVE_GTKIFE("/View/Show Grid", "<Alt>G", menu_show_grid, WV_MENU_VSG, "<ToggleItem>"), WAVE_GTKIFE("/View/<separator>", NULL, NULL, WV_MENU_SEP9, "<Separator>"), + WAVE_GTKIFE("/View/Show Wave Highlight", NULL, menu_show_wave_highlight, WV_MENU_SHW, "<ToggleItem>"), + WAVE_GTKIFE("/View/<separator>", NULL, NULL, WV_MENU_SEP9B, "<Separator>"), WAVE_GTKIFE("/View/Show Mouseover", NULL, menu_show_mouseover, WV_MENU_VSMO, "<ToggleItem>"), WAVE_GTKIFE("/View/<separator>", NULL, NULL, WV_MENU_SEP9A, "<Separator>"), WAVE_GTKIFE("/View/Show Base Symbols", "<Alt>F1", menu_show_base, WV_MENU_VSBS, "<ToggleItem>"), WAVE_GTKIFE("/View/<separator>", NULL, NULL, WV_MENU_SEP10, "<Separator>"), /* 110 */ + WAVE_GTKIFE("/View/Standard Trace Select", NULL, menu_enable_standard_trace_select, WV_MENU_ESTS, "<ToggleItem>"), + WAVE_GTKIFE("/View/<separator>", NULL, NULL, WV_MENU_SEP10A, "<Separator>"), WAVE_GTKIFE("/View/Dynamic Resize", "<Alt>9", menu_enable_dynamic_resize, WV_MENU_VDR, "<ToggleItem>"), WAVE_GTKIFE("/View/<separator>", NULL, NULL, WV_MENU_SEP11, "<Separator>"), WAVE_GTKIFE("/View/Center Zooms", "F8", menu_center_zooms, WV_MENU_VCZ, "<ToggleItem>"), @@ -6230,6 +6307,8 @@ GTK_CHECK_MENU_ITEM(gtk_item_factory_get_widget(GLOBALS->item_factory_menu_c_1, menu_items[WV_MENU_VSG].path))->active=(GLOBALS->display_grid)?TRUE:FALSE; +GTK_CHECK_MENU_ITEM(gtk_item_factory_get_widget(GLOBALS->item_factory_menu_c_1, menu_items[WV_MENU_SHW].path))->active=(GLOBALS->highlight_wavewindow)?TRUE:FALSE; + GTK_CHECK_MENU_ITEM(gtk_item_factory_get_widget(GLOBALS->item_factory_menu_c_1, menu_items[WV_MENU_HSWM].path))->active=(GLOBALS->alt_wheel_mode)?TRUE:FALSE; GTK_CHECK_MENU_ITEM(gtk_item_factory_get_widget(GLOBALS->item_factory_menu_c_1,menu_items[WV_MENU_VSMO].path))->active=(GLOBALS->disable_mouseover)?FALSE:TRUE; @@ -6238,6 +6317,8 @@ GTK_CHECK_MENU_ITEM(gtk_item_factory_get_widget(GLOBALS->item_factory_menu_c_1, menu_items[WV_MENU_VDR].path))->active=(GLOBALS->do_resize_signals)?TRUE:FALSE; +GTK_CHECK_MENU_ITEM(gtk_item_factory_get_widget(GLOBALS->item_factory_menu_c_1, menu_items[WV_MENU_ESTS].path))->active=(GLOBALS->use_standard_trace_select)?TRUE:FALSE; + GTK_CHECK_MENU_ITEM(gtk_item_factory_get_widget(GLOBALS->item_factory_menu_c_1, menu_items[WV_MENU_VCMU].path))->active=(GLOBALS->constant_marker_update)?TRUE:FALSE; GTK_CHECK_MENU_ITEM(gtk_item_factory_get_widget(GLOBALS->item_factory_menu_c_1, menu_items[WV_MENU_VCZ].path))->active=(GLOBALS->do_zoom_center)?TRUE:FALSE; @@ -6278,12 +6359,14 @@ gtk_check_menu_item_set_active(GTK_CHECK_MENU_ITEM(menu_wlist[WV_MENU_VZPS]), GLOBALS->zoom_pow10_snap); gtk_check_menu_item_set_active(GTK_CHECK_MENU_ITEM(menu_wlist[WV_MENU_VSG]), GLOBALS->display_grid); +gtk_check_menu_item_set_active(GTK_CHECK_MENU_ITEM(menu_wlist[WV_MENU_SHW]), GLOBALS->highlight_wavewindow); gtk_check_menu_item_set_active(GTK_CHECK_MENU_ITEM(menu_wlist[WV_MENU_HSWM]), GLOBALS->alt_wheel_mode); gtk_check_menu_item_set_active(GTK_CHECK_MENU_ITEM(menu_wlist[WV_MENU_VSMO]), !GLOBALS->disable_mouseover); gtk_check_menu_item_set_active(GTK_CHECK_MENU_ITEM(menu_wlist[WV_MENU_VSBS]), GLOBALS->show_base); gtk_check_menu_item_set_active(GTK_CHECK_MENU_ITEM(menu_wlist[WV_MENU_VDR]), GLOBALS->do_resize_signals); +gtk_check_menu_item_set_active(GTK_CHECK_MENU_ITEM(menu_wlist[WV_MENU_ESTS]), GLOBALS->use_standard_trace_select); gtk_check_menu_item_set_active(GTK_CHECK_MENU_ITEM(menu_wlist[WV_MENU_VCMU]), GLOBALS->constant_marker_update); gtk_check_menu_item_set_active(GTK_CHECK_MENU_ITEM(menu_wlist[WV_MENU_VCZ]), GLOBALS->do_zoom_center); gtk_check_menu_item_set_active(GTK_CHECK_MENU_ITEM(menu_wlist[WV_MENU_VDRV]), GLOBALS->use_roundcaps); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/gtkwave-3.3.40/src/menu.h new/gtkwave-3.3.41/src/menu.h --- old/gtkwave-3.3.40/src/menu.h 2012-08-01 00:00:43.000000000 +0200 +++ new/gtkwave-3.3.41/src/menu.h 2012-10-30 19:37:34.000000000 +0100 @@ -242,10 +242,14 @@ WV_MENU_MLKOFF, WV_MENU_VSG, WV_MENU_SEP9, +WV_MENU_SHW, +WV_MENU_SEP9B, WV_MENU_VSMO, WV_MENU_SEP9A, WV_MENU_VSBS, WV_MENU_SEP10, +WV_MENU_ESTS, +WV_MENU_SEP10A, WV_MENU_VDR, WV_MENU_SEP11, WV_MENU_VCZ, diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/gtkwave-3.3.40/src/rc.c new/gtkwave-3.3.41/src/rc.c --- old/gtkwave-3.3.40/src/rc.c 2012-08-01 00:00:43.000000000 +0200 +++ new/gtkwave-3.3.41/src/rc.c 2012-10-30 19:37:34.000000000 +0100 @@ -319,6 +319,13 @@ return(0); } +int f_highlight_wavewindow(char *str) +{ +DEBUG(printf("f_highlight_wavewindow(\"%s\")\n",str)); +GLOBALS->highlight_wavewindow=atoi_64(str)?1:0; +return(0); +} + int f_ignore_savefile_pane_pos(char *str) { DEBUG(printf("f_ignore_savefile_pane_pos(\"%s\")\n",str)); @@ -488,17 +495,17 @@ return(0); } -int f_use_full_precision(char *str) +int f_use_frequency_display(char *str) { -DEBUG(printf("f_use_full_precision(\"%s\")\n",str)); -GLOBALS->use_full_precision=atoi_64(str)?1:0; +DEBUG(printf("f_use_frequency_display(\"%s\")\n",str)); +GLOBALS->use_frequency_delta=atoi_64(str)?1:0; return(0); } -int f_use_frequency_display(char *str) +int f_use_full_precision(char *str) { -DEBUG(printf("f_use_frequency_display(\"%s\")\n",str)); -GLOBALS->use_frequency_delta=atoi_64(str)?1:0; +DEBUG(printf("f_use_full_precision(\"%s\")\n",str)); +GLOBALS->use_full_precision=atoi_64(str)?1:0; return(0); } @@ -565,6 +572,13 @@ return(0); } +int f_use_standard_trace_select(char *str) +{ +DEBUG(printf("f_f_use_standard_trace_select(\"%s\")\n",str)); +GLOBALS->use_standard_trace_select=atoi_64(str)?1:0; +return(0); +} + int f_use_toolbutton_interface(char *str) { DEBUG(printf("f_use_toolbutton_interface(\"%s\")\n",str)); @@ -815,6 +829,7 @@ { "hier_delimeter", f_hier_delimeter }, { "hier_grouping", f_hier_grouping }, { "hier_max_level", f_hier_max_level }, +{ "highlight_wavewindow", f_highlight_wavewindow }, { "hpane_pack", f_hpane_pack }, { "ignore_savefile_pane_pos", f_ignore_savefile_pane_pos }, { "ignore_savefile_pos", f_ignore_savefile_pos }, @@ -848,6 +863,7 @@ { "use_scrollbar_only", f_use_scrollbar_only }, { "use_scrollwheel_as_y", f_use_scrollwheel_as_y }, { "use_standard_clicking", f_use_standard_clicking }, +{ "use_standard_trace_select", f_use_standard_trace_select }, { "use_toolbutton_interface", f_use_toolbutton_interface }, { "vcd_explicit_zero_subscripts", f_vcd_explicit_zero_subscripts }, { "vcd_preserve_glitches", f_vcd_preserve_glitches }, diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/gtkwave-3.3.40/src/signalwindow.c new/gtkwave-3.3.41/src/signalwindow.c --- old/gtkwave-3.3.40/src/signalwindow.c 2012-08-09 03:25:05.000000000 +0200 +++ new/gtkwave-3.3.41/src/signalwindow.c 2012-10-30 19:37:34.000000000 +0100 @@ -203,6 +203,7 @@ GLOBALS->dnd_cursor_timer = 0; GLOBALS->dnd_state = 0; +GLOBALS->standard_trace_dnd_degate = 1; } /* @@ -1136,8 +1137,9 @@ if(t) { t->flags |= TR_HIGHLIGHT; } /* scan-build */ } } - /* else if(!(t->flags & TR_HIGHLIGHT)) Ben Sferrazza suggested fix rather than a regular "else" */ -else + /* else if(!(t->flags & TR_HIGHLIGHT)) Ben Sferrazza suggested fix rather than a regular "else" 11aug08 */ + /* changed to add use_standard_trace_select below to make this selectable, Sophana K request 08oct12 */ +else if( (!GLOBALS->use_standard_trace_select) || (GLOBALS->standard_trace_dnd_degate) || ((t)&&(!(t->flags & TR_HIGHLIGHT))) ) { GLOBALS->starting_unshifted_trace = t; @@ -1151,6 +1153,8 @@ if(t) { t->flags |= TR_HIGHLIGHT; } /* scan-build */ } + GLOBALS->standard_trace_dnd_degate = 0; + if(event->type == GDK_2BUTTON_PRESS) { menu_toggle_group(NULL, 0, widget); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/gtkwave-3.3.40/src/tcl_commands.c new/gtkwave-3.3.41/src/tcl_commands.c --- old/gtkwave-3.3.40/src/tcl_commands.c 2012-02-23 22:42:57.000000000 +0100 +++ new/gtkwave-3.3.41/src/tcl_commands.c 2012-10-30 19:37:34.000000000 +0100 @@ -1,5 +1,5 @@ /* - * Copyright (c) Tony Bybell 2008-2009. + * Copyright (c) Tony Bybell 2008-2012. * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License @@ -1012,7 +1012,7 @@ { for(i=0;i<l;i++) { - one_entry = make_single_tcl_list_name(elem[i], NULL, 0); + one_entry = make_single_tcl_list_name(elem[i], NULL, 0, 1); /* keep range */ WAVE_OE_ME } free_2(elem); @@ -1847,6 +1847,7 @@ GLOBALS->use_full_precision = g_old->use_full_precision; GLOBALS->show_base = g_old->show_base; GLOBALS->display_grid = g_old->display_grid; + GLOBALS->highlight_wavewindow = g_old->highlight_wavewindow; GLOBALS->disable_mouseover = g_old->disable_mouseover; GLOBALS->zoom_pow10_snap = g_old->zoom_pow10_snap; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/gtkwave-3.3.40/src/tcl_helper.c new/gtkwave-3.3.41/src/tcl_helper.c --- old/gtkwave-3.3.40/src/tcl_helper.c 2012-03-09 22:50:21.000000000 +0100 +++ new/gtkwave-3.3.41/src/tcl_helper.c 2012-10-30 19:37:34.000000000 +0100 @@ -1306,7 +1306,7 @@ * ---------------------------------------------------------------------------- */ -char *make_single_tcl_list_name(char *s, char *opt_value, int promote_to_bus) +char *make_single_tcl_list_name(char *s, char *opt_value, int promote_to_bus, int preserve_range) { char *rpnt = NULL; char *pnt, *pnt2; @@ -1336,6 +1336,7 @@ } pnt = s2; + while(*pnt) { if(*pnt == GLOBALS->hier_delimeter) @@ -1345,15 +1346,18 @@ else if(*pnt == '[') { lbrack = pnt; } else if(*pnt == ':') { colon = pnt; } else if(*pnt == ']') { rbrack = pnt; } - + pnt++; } - - if((lbrack && colon && rbrack && ((colon-lbrack)>0) && ((rbrack - colon)>0) && ((rbrack-lbrack)>0)) || (lbrack && promote_to_bus)) + + if(!preserve_range) /* added for gtkwave::addSignalsFromList */ { - is_bus = 1; - *lbrack = 0; - /* len = lbrack - s2; */ /* scan-build */ + if((lbrack && colon && rbrack && ((colon-lbrack)>0) && ((rbrack - colon)>0) && ((rbrack-lbrack)>0)) || (lbrack && promote_to_bus)) + { + is_bus = 1; + *lbrack = 0; + /* len = lbrack - s2; */ /* scan-build */ + } } names = calloc_2(delim_cnt+1, sizeof(char *)); @@ -1561,7 +1565,7 @@ { if((!s->vec_root)||(!GLOBALS->autocoalesce)) { - one_entry = make_single_tcl_list_name(s->n->nname, NULL, 0); + one_entry = make_single_tcl_list_name(s->n->nname, NULL, 0, 0); WAVE_OE_ME } else @@ -1570,7 +1574,7 @@ t=s->vec_root; while(t) { - one_entry = make_single_tcl_list_name(t->n->nname, NULL, 1); + one_entry = make_single_tcl_list_name(t->n->nname, NULL, 1, 0); WAVE_OE_ME if(get_s_selected(t)) @@ -1688,14 +1692,14 @@ sprintf(newname, "%s[%d:%d]", first_str, lidx, ridx); /* this disappears in make_single_tcl_list_name() but might be used in future code */ if(!mult_entry) { one_entry = make_gtkwave_pid(); WAVE_OE_ME one_entry = strdup_2(netoff); WAVE_OE_ME} - one_entry = is_from_tcl_command ? strdup_2s(newname) : make_single_tcl_list_name(newname, NULL, 0); + one_entry = is_from_tcl_command ? strdup_2s(newname) : make_single_tcl_list_name(newname, NULL, 0, 0); WAVE_OE_ME if(!is_from_tcl_command) { trace_val = give_value_string(t); if(trace_val) { - one_entry = make_single_tcl_list_name(newname, trace_val, 0); + one_entry = make_single_tcl_list_name(newname, trace_val, 0, 0); WAVE_OE_ME free_2(trace_val); } @@ -1737,7 +1741,7 @@ sprintf(str+strlen(str), "[%d]", which); if(!mult_entry) { one_entry = make_gtkwave_pid(); WAVE_OE_ME one_entry = strdup_2(netoff); WAVE_OE_ME } - one_entry = is_from_tcl_command ? strdup_2s(str) : make_single_tcl_list_name(str, NULL, 0); + one_entry = is_from_tcl_command ? strdup_2s(str) : make_single_tcl_list_name(str, NULL, 0, 0); WAVE_OE_ME if((bits)&&(!is_from_tcl_command)) @@ -1748,21 +1752,21 @@ else if(bitnum >= AN_COUNT) bitnum = AN_DASH; trace_val_vec_single[0] = AN_STR[(int)xfwd[bitnum]]; - one_entry = make_single_tcl_list_name(str, trace_val_vec_single, 0); + one_entry = make_single_tcl_list_name(str, trace_val_vec_single, 0, 0); WAVE_OE_ME } } else { if(!mult_entry) { one_entry = make_gtkwave_pid(); WAVE_OE_ME one_entry = strdup_2(netoff); WAVE_OE_ME} - one_entry = is_from_tcl_command ? strdup_2s(append_array_row(nodes[i])) : make_single_tcl_list_name(append_array_row(nodes[i]), NULL, 0); + one_entry = is_from_tcl_command ? strdup_2s(append_array_row(nodes[i])) : make_single_tcl_list_name(append_array_row(nodes[i]), NULL, 0, 0); WAVE_OE_ME if(!is_from_tcl_command) { trace_val = give_value_string(t); if(trace_val) { - one_entry = make_single_tcl_list_name(append_array_row(nodes[i]), trace_val, 0); + one_entry = make_single_tcl_list_name(append_array_row(nodes[i]), trace_val, 0, 0); WAVE_OE_ME free_2(trace_val); } @@ -1798,14 +1802,14 @@ sprintf(str+strlen(str), "[%d]", which); if(!mult_entry) { one_entry = make_gtkwave_pid(); WAVE_OE_ME one_entry = strdup_2(netoff); WAVE_OE_ME} - one_entry = is_from_tcl_command ? strdup_2s(str) : make_single_tcl_list_name(str, NULL, 0); + one_entry = is_from_tcl_command ? strdup_2s(str) : make_single_tcl_list_name(str, NULL, 0, 0); WAVE_OE_ME if(!is_from_tcl_command) { trace_val = give_value_string(t); if(trace_val) { - one_entry = make_single_tcl_list_name(str, trace_val, 0); + one_entry = make_single_tcl_list_name(str, trace_val, 0, 0); WAVE_OE_ME free_2(trace_val); } @@ -1814,14 +1818,14 @@ else { if(!mult_entry) { one_entry = make_gtkwave_pid(); WAVE_OE_ME one_entry = strdup_2(netoff); WAVE_OE_ME} - one_entry = is_from_tcl_command ? strdup_2s(append_array_row(t->n.nd)) : make_single_tcl_list_name(append_array_row(t->n.nd), NULL, 0); + one_entry = is_from_tcl_command ? strdup_2s(append_array_row(t->n.nd)) : make_single_tcl_list_name(append_array_row(t->n.nd), NULL, 0, 0); WAVE_OE_ME if(!is_from_tcl_command) { trace_val = give_value_string(t); if(trace_val) { - one_entry = make_single_tcl_list_name(append_array_row(t->n.nd), trace_val, 0); + one_entry = make_single_tcl_list_name(append_array_row(t->n.nd), trace_val, 0, 0); WAVE_OE_ME free_2(trace_val); } @@ -1890,14 +1894,14 @@ struct symbol *t = s->vec_root; while(t) { - one_entry = make_single_tcl_list_name(t->n->nname, NULL, 1); + one_entry = make_single_tcl_list_name(t->n->nname, NULL, 1, 0); WAVE_OE_ME break; /* t=t->vec_chain; ...no longer needed as this is resolved in process_tcl_list() */ } } else { - one_entry = make_single_tcl_list_name(s->n->nname, NULL, 0); + one_entry = make_single_tcl_list_name(s->n->nname, NULL, 0, 0); WAVE_OE_ME } } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/gtkwave-3.3.40/src/tcl_helper.h new/gtkwave-3.3.41/src/tcl_helper.h --- old/gtkwave-3.3.40/src/tcl_helper.h 2011-05-30 04:19:08.000000000 +0200 +++ new/gtkwave-3.3.41/src/tcl_helper.h 2012-10-30 19:37:34.000000000 +0100 @@ -92,7 +92,7 @@ char* zMergeTclList(int argc, const char** argv); char** zSplitTclList(const char* list, int* argcPtr); -char *make_single_tcl_list_name(char *s, char *opt_value, int promote_to_bus); +char *make_single_tcl_list_name(char *s, char *opt_value, int promote_to_bus, int preserve_range); void make_tcl_interpreter(char *argv[]); const char *gtkwavetcl_setvar(const char *name1, const char *val, int flags); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/gtkwave-3.3.40/src/wavewindow.c new/gtkwave-3.3.41/src/wavewindow.c --- old/gtkwave-3.3.40/src/wavewindow.c 2012-08-09 03:25:05.000000000 +0200 +++ new/gtkwave-3.3.41/src/wavewindow.c 2012-10-30 19:37:34.000000000 +0100 @@ -3168,10 +3168,19 @@ yu=(_y0+_y1)/2; ytext=yu-(GLOBALS->wavefont->ascent/2)+GLOBALS->wavefont->ascent; - if((GLOBALS->display_grid)&&(GLOBALS->enable_horiz_grid)&&(!kill_grid)) { - gdk_draw_line(GLOBALS->wavepixmap_wavewindow_c_1, GLOBALS->gc.gc_grid_wavewindow_c_1,(GLOBALS->tims.start<GLOBALS->tims.first)?(GLOBALS->tims.first-GLOBALS->tims.start)*GLOBALS->pxns:0, liney,(GLOBALS->tims.last<=GLOBALS->tims.end)?(GLOBALS->tims.last-GLOBALS->tims.start)*GLOBALS->pxns:GLOBALS->wavewidth-1, liney); + if((GLOBALS->highlight_wavewindow) && (t) && (t->flags & TR_HIGHLIGHT) && (!GLOBALS->black_and_white)) + { + gdk_draw_rectangle(GLOBALS->wavepixmap_wavewindow_c_1, GLOBALS->gc.gc_grid_wavewindow_c_1, + TRUE,0, liney - GLOBALS->fontheight, + GLOBALS->wavewidth, GLOBALS->fontheight); + } + else + { + gdk_draw_line(GLOBALS->wavepixmap_wavewindow_c_1, GLOBALS->gc.gc_grid_wavewindow_c_1, + (GLOBALS->tims.start<GLOBALS->tims.first)?(GLOBALS->tims.first-GLOBALS->tims.start)*GLOBALS->pxns:0, liney,(GLOBALS->tims.last<=GLOBALS->tims.end)?(GLOBALS->tims.last-GLOBALS->tims.start)*GLOBALS->pxns:GLOBALS->wavewidth-1, liney); + } } if((h)&&(GLOBALS->tims.start==h->time)) @@ -3898,10 +3907,26 @@ Trptr tn = GiveNextTrace(t); if((t->flags & TR_ANALOGMASK) && (tn) && (tn->flags & TR_ANALOG_BLANK_STRETCH)) { + if((GLOBALS->highlight_wavewindow) && (t) && (t->flags & TR_HIGHLIGHT) && (!GLOBALS->black_and_white)) + { + gdk_draw_rectangle(GLOBALS->wavepixmap_wavewindow_c_1, GLOBALS->gc.gc_grid_wavewindow_c_1, + TRUE,0, liney - GLOBALS->fontheight, + GLOBALS->wavewidth, GLOBALS->fontheight); + } } else { - gdk_draw_line(GLOBALS->wavepixmap_wavewindow_c_1, GLOBALS->gc.gc_grid_wavewindow_c_1,(GLOBALS->tims.start<GLOBALS->tims.first)?(GLOBALS->tims.first-GLOBALS->tims.start)*GLOBALS->pxns:0, liney,(GLOBALS->tims.last<=GLOBALS->tims.end)?(GLOBALS->tims.last-GLOBALS->tims.start)*GLOBALS->pxns:GLOBALS->wavewidth-1, liney); + if((GLOBALS->highlight_wavewindow) && (t) && (t->flags & TR_HIGHLIGHT) && (!GLOBALS->black_and_white)) + { + gdk_draw_rectangle(GLOBALS->wavepixmap_wavewindow_c_1, GLOBALS->gc.gc_grid_wavewindow_c_1, + TRUE,0, liney - GLOBALS->fontheight, + GLOBALS->wavewidth, GLOBALS->fontheight); + } + else + { + gdk_draw_line(GLOBALS->wavepixmap_wavewindow_c_1, GLOBALS->gc.gc_grid_wavewindow_c_1, + (GLOBALS->tims.start<GLOBALS->tims.first)?(GLOBALS->tims.first-GLOBALS->tims.start)*GLOBALS->pxns:0, liney,(GLOBALS->tims.last<=GLOBALS->tims.end)?(GLOBALS->tims.last-GLOBALS->tims.start)*GLOBALS->pxns:GLOBALS->wavewidth-1, liney); + } } } @@ -3923,6 +3948,13 @@ } } + if((ext) && (GLOBALS->highlight_wavewindow) && (t) && (t->flags & TR_HIGHLIGHT) && (!GLOBALS->black_and_white)) + { + gdk_draw_rectangle(GLOBALS->wavepixmap_wavewindow_c_1, GLOBALS->gc.gc_grid_wavewindow_c_1, + TRUE,0, liney, + GLOBALS->wavewidth, GLOBALS->fontheight * ext); + } + draw_hptr_trace_vector_analog(t, h, which, ext); GLOBALS->tims.start+=GLOBALS->shift_timebase; GLOBALS->tims.end+=GLOBALS->shift_timebase; @@ -4678,10 +4710,26 @@ Trptr tn = GiveNextTrace(t); if((t->flags & TR_ANALOGMASK) && (tn) && (tn->flags & TR_ANALOG_BLANK_STRETCH)) { + if((GLOBALS->highlight_wavewindow) && (t) && (t->flags & TR_HIGHLIGHT) && (!GLOBALS->black_and_white)) + { + gdk_draw_rectangle(GLOBALS->wavepixmap_wavewindow_c_1, GLOBALS->gc.gc_grid_wavewindow_c_1, + TRUE,0, liney - GLOBALS->fontheight, + GLOBALS->wavewidth, GLOBALS->fontheight); + } } else { - gdk_draw_line(GLOBALS->wavepixmap_wavewindow_c_1, GLOBALS->gc.gc_grid_wavewindow_c_1,(GLOBALS->tims.start<GLOBALS->tims.first)?(GLOBALS->tims.first-GLOBALS->tims.start)*GLOBALS->pxns:0, liney,(GLOBALS->tims.last<=GLOBALS->tims.end)?(GLOBALS->tims.last-GLOBALS->tims.start)*GLOBALS->pxns:GLOBALS->wavewidth-1, liney); + if((GLOBALS->highlight_wavewindow) && (t) && (t->flags & TR_HIGHLIGHT) && (!GLOBALS->black_and_white)) + { + gdk_draw_rectangle(GLOBALS->wavepixmap_wavewindow_c_1, GLOBALS->gc.gc_grid_wavewindow_c_1, + TRUE,0, liney - GLOBALS->fontheight, + GLOBALS->wavewidth, GLOBALS->fontheight); + } + else + { + gdk_draw_line(GLOBALS->wavepixmap_wavewindow_c_1, GLOBALS->gc.gc_grid_wavewindow_c_1, + (GLOBALS->tims.start<GLOBALS->tims.first)?(GLOBALS->tims.first-GLOBALS->tims.start)*GLOBALS->pxns:0, liney,(GLOBALS->tims.last<=GLOBALS->tims.end)?(GLOBALS->tims.last-GLOBALS->tims.start)*GLOBALS->pxns:GLOBALS->wavewidth-1, liney); + } } } @@ -4716,6 +4764,13 @@ } } + if((ext) && (GLOBALS->highlight_wavewindow) && (t) && (t->flags & TR_HIGHLIGHT) && (!GLOBALS->black_and_white)) + { + gdk_draw_rectangle(GLOBALS->wavepixmap_wavewindow_c_1, GLOBALS->gc.gc_grid_wavewindow_c_1, + TRUE,0, liney, + GLOBALS->wavewidth, GLOBALS->fontheight * ext); + } + draw_vptr_trace_analog(t, v, which, ext); GLOBALS->tims.start+=GLOBALS->shift_timebase; -- To unsubscribe, e-mail: opensuse-commit+unsubscr...@opensuse.org For additional commands, e-mail: opensuse-commit+h...@opensuse.org