2015-10-03 Dimitar Zhekov * docs/scope.html: Small documentation fixes. * src/prefs.c, src/prefs.h: Cleanup the obsolete gdb_send_interval and gdb_wait_death. * src/debug.c, src/debug.h, src/parse.c: Don't say "GDB died unexpectedly" if the user types -gdb-exit. * src/debug.c: Don't display possible binary zeros received from gdb stderr. Fix line read error message for non-MI lines. 2015-10-02 Dimitar Zhekov * src/scope.c: Removed the unused saved_id variable. * src/plugme.h: Removed the #ifndef checks, they don't work with Geany 1.25. * src/common.h, src/plugme.c, src/scope.c: Removed geany_functions, obsolete in Geany 1.25. 2015-10-01 Dimitar Zhekov * src/debug.c: Switched gdb I/O to Geany spawn. No more attempts to send the commands at 50 ms and permanent console under Windows. The gdb buffer size is now 1 MB (no performance penalty for large buffer sizes either), longer lines or ones with '\0' are not parsed. * src/debug.c, src/prefs.c, src/prefs.h, docs/scope.html: Removed gdb_buffer_length, gdb_send_interval and gdb_wait_death preferences. Obsoleted by the new gdb I/O and the fact that spawn sends SIGTERM under *nix, not SIGKILL (though _death was unneeded anyway). * docs/scope.html, src/scope.c: Increased version to 0.94. 2015-04-24 Dimitar Zhekov * data/scope.glade, src/Makefile.am, src/common.h, src/scope.c: Removed support for gtk+ 2.16. * src/gtk216.c, src/gtk216.h: Removed. 2015-04-19 Dimitar Zhekov * README, src/store/scptreestore.c: Removed support for gtk+ 2.16. 2014-06-12 Dimitar Zhekov * docs/scope.html: Small changes in the "Temporary breakpoint on load" description. * src/menu.c, src/scope.c, src/scope.h: Replaced scope find_widget() with Geany ui_lookup_widget(). * src/scope.c: Insert the Debug menu after Build if possible, instead of using a fixed position. * src/scope.c, src/utils.c, src/utils.h: Sync Geany "Document -> [ ] Read only" state of the current document if possible when locking/unlocking it on Run/Terminate. 2014-04-27 Dimitar Zhekov * src/conterm.c: Declare unlockpt() and grantpt() prototypes instead of detecting N kinds of *nix. Taken from the debugger plugin. * src/program.c: Define PATH_MAX if none (for example GNU/Hurd), by Evgeni Golov. 2014-02-17 Dimitar Zhekov * src/store/scptreestore.c: Fixed warning generated by emitting "rows-reordered" for empty brances (g_new() returns NULL for 0 elements). * docs/scope.html, src/scope.c: Increased version to 0.93.2. 2014-02-13 Dimitar Zhekov * data/scope.glade, docs/codes.html, docs/scope.html, src/break.c, src/views.c, src/views.h: Remember the total (initial) breakpoint ignore count and restore it on each run. * docs/codes.html, docs/scope.html: Small changes and clarifications. 2014-01-08 Dimitar Zhekov * src/utils.c: Check whether file from a thread/breakpoint/stack location exists before attempting to open it (gdb 7.6+ includes "fullname" for missing files). 2014-01-06 Dimitar Zhekov * data/scope.glade, src/break.c: Show breakpoint origin in the type column, with tooltip. * data/scope.glade, docs/scope.html: "Temporary breakpoint at" -> "Temporary breakpoint on load at". * docs/scope.html: Some improvements and clarifications. * src/break.c: Remove the "Temporary breakpoint on load" only on unload, not on hit or when resetting the program state. Show catchpoint condition (depends on the gdb version). Support filenames and watch expressions with spaces. * src/break.c, src/debug.c, src/inspect.c: Apply any unapplied breakpoints/inspects marked as "Apply on run" on each run (only important if "Auto run/exit" is off). * src/gtk216.c: Make sort_column_ids[] const. * src/scope.c, src/watch.c: Unify GPOINTER_TO_INT(FALSE) handling. * src/scope.c: Emit a message to Geany log if scope.glade can't be loaded, by Enrico Tröger. Removed static last_statusbar_state, unused since ScpTreeStore dynamic registration. * docs/scope.html, src/scope.c: Increased version to 0.93.1. 2013-10-26 Dimitar Zhekov * src/memory.c: Handle offset (although it seems that gdb just adds it to start). Fix counting for memory block with holes. sscanf() -> g_ascii_strtoull(). * src/prefs.c: Removed an unused structure. 2013-10-12 Dimitar Zhekov * src/debug.c: Fixed a lapsus which prevented gdb stdout resync on overflow. * src/memory.c: Improved re-selection of the current line. * src/memory.c, src/pref.c: Decreased the maximum memory block size to 15.5K and increased the default gdb stdout buffer size to 32K to match each other. 2013-09-25 Dimitar Zhekov * src/scope.c: Register ScpTreeStore dynamically, making Scope unloadable again. * src/break.c, src/conterm.c, src/debug.c, src/inspect.c, src/memory.c, src/menu.c, src/parse.c, src/program.c, src/register.c, src/scope.c, src/stack.c, src/thread.c, src/tooltip.c, src/tooltip.h, src/views.c: Reverted the startup variable initialization from 2013-07-25. * src/conterm.c, src/inspect.c, src/prefs.c, src/watch.c: Small startup changes. * docs/scope.html, src/scope.c: Increased version to 0.93. 2013-09-07 Dimitar Zhekov * data/scope.glade: Removed "Program Terminal", "Breakpoints" and "Debug Console" panel tab names - they are always initialized explicitly now. * src/conterm.c, src/conterm.h, src/prefs.c, src/scope.c: Apply VTE settings immediately after Edit -> Preferences. * src/prefs.c, src/prefs.h, src/scope.c, src/scope.h: Apply pref_panel_tab_pos immediately after scope.conf save. Automatically switch to short panel tab names if Geany message window is on right. * docs/scope.html, src/scope.c: Increased version to 0.92. 2013-08-31 Dimitar Zhekov * data/scope.glade: Set Debug Panel tabs to "scrollable", so that Geany message window is not extended if it's not wide/tall enough to fit the tab names. * src/break.c: No async break messages only: don't disable a "dis" breakpoint on hit, it may have a count (which is not available ATM). * docs/scope.html, src/scope.c: Increased version to 0.91.4. 2013-08-25 Dimitar Zhekov * docs/codes.html, docs/scope.html, src/inspect.c, src/prefs.c, src/prefs.h, src/views.c: Fixed Inspect Refresh. Added an option to disable Inspect Refresh/update in Hang mode (causes internal gdb error). * wscript_build: Fixed the path handling when building with Waf under win32: Geany does not change to it's own directory any more. * src/register.c, src/scope.c: Fixed unused variable warnings. * docs/scope.html, src/scope.c: Increased version to 0.91.3. 2013-07-30 Dimitar Zhekov * src/views.c: Use map signal to pre-change contents when editing tree cells, since map-event is not received under Windows. * Windows panel defaults to THREADS view, not PROGRAM. 2013-07-25 Dimitar Zhekov * src/break.c, src/conterm.c, src/debug.c, src/inspect.c, src/memory.c, src/menu.c, src/parse.c, src/program.c, src/register.c, src/scope.c, src/stack.c, src/thread.c, src/tooltip.c, src/tooltip.h, src/views.c: Explicitly initialize all sensitive global and static variables on startup, since reactivating a resident plugin will not do that. * src/store/scptreestore.c: Fixed indentation. * docs/scope.html, src/scope.c: Increased version to 0.91.2. 2013-07-11 Dimitar Zhekov * src/scope.c: Update toolbar state when saving a document or switching to another document, and properly cache the last state. * src/utils.c: Recognize F77 as gdb-supported file type (was only Fortran). * docs/scope.html, src/scope.c: Increased version to 0.91.1. 2013-07-05 Dimitar Zhekov * src/codes.html: Documented the new Inspect commands. * src/scope.html: Explained the unified Watches/Memory/Inspect update policy. * src/debug.c, src/debug.h, src/inspect.c, src/memory.c, src/views.c, src/watch.c: Unified the Watches/Memory/Inspect update policy. * src/inspect.c, src/parse.c: Added full Refresh instead of -var-update. Fixed "new_numchild" -> "new_num_children". Full update on an external changelist with >=1 elements. Better support for float frame Inspect variables. Support for out-of-scope assignments ignored by changelist. * src/register.c: Full update only if an external changed-registers contains at least one element. Disallow Format if no threads. * docs/scope.html, src/scope.c: Increased version to 0.91. * TODO: Inlined into scope.html. 2013-07-02 Dimitar Zhekov * src/views.c: Fixed shutdown sequence error when destroying Inspect or Registers switches to the other page and causes refresh. Fixed the page number to refresh when switching to Inspect or Registers. 2013-06-24 Dimitar Zhekov * data/scope.glade, docs/codes.html, docs/scope.html, src/Makefile.am, src/break.c, src/common.h, src/debug.c, src/inspect.c, src/inspect.h, src/parse.c, src/program.c, src/register.c, src/register.h, src/scope.c, src/stack.c, src/thread.c, src/views.c, src/views.h: Added Registers next to Inspect. * docs/codes.html: Small syntax changes, explanation about the <> values. * docs/scope.html, src/break.c, src/debug.c, src/debug.h, src/local.c, src/stack.c, src/views.c, src/thread.c, src/views.c, src/views.h: Small syntax changes/fixes. * src/conterm.c: Clear the console with a single function call. * src/inspect.c: Fixed hexadecimal format. Only set "editable" if an eleemnt is selected. * src/common.h, src/local.src/utils.c, src/utils.h: A (mostly) common mechanism to send/receive thread+frame. * src/utils.c: Display win32 error texts instead of codes. * src/views.c: Changing the thread/frame honours "Update all views". Fixed the automatic text selection when the command dialog is invoked. * docs/scope.html, src/scope.c: Increased version to 0.90. 2013-05-23 Dimitar Zhekov * scope/src/inspect.c: Fixed new value receiving after Format change. 2013-05-17 Dimitar Zhekov * scope/src/prefs.c: Fixed config reload when a file other than scope.conf is saved. * src/program.c: Use scp_tree_store_traverse() to search recent programs. * docs/scope.html, src/scope.c: Increased version to 0.89. 2013-05-16 Dimitar Zhekov * src/store/ChangeLog: Separate change log for ScpTreeStore - initial release. 2013-05-08 Dimitar Zhekov * src/conterm.c: Insert or typing into console brings up the command dialog only if gdb is loaded. * src/store/scptreestore.html: Note that ScpTreeStore can not be currently used with Glade. * src/view.c: Small improvements. * docs/scope.html, src/scope.c: Increased version to 0.88. 2013-05-04 Dimitar Zhekov * data/scope.glade, src/break.c, src/gtk216.c, src/gtk216.h, src/inspect.c, src/local.c, src/memory.c, src/menu.c, src/parse.c, src/parse.h, src/program.c, src/scope.c, src/stack.c, src/thread.c, src/tooltip.c, src/utils.c, src/utils.h, src/watch.c: GArray parse_modes -> ScpTreeStore. GArray recent_programs -> ScpTreeStore. Removed get array element size emulation. Removed all array utility functions. 2013-05-02 Dimitar Zhekov * data/scope.glade, src/thread.c: GArray thread_groups -> ScpTreeStore. 2013-04-25 Dimitar Zhekov * src/break.c, src/utils.c: Small improvements. * src/store/scptreestore.c: Added i18n for gtk+ >= 2.18. * src/store/scptreestore.html: ScpTreeStore documentation fixes. 2013-04-04 Dimitar Zhekov * data/scope.glade, src/Makefile.am, src/break.c, src/common.h, src/inspect.c, src/local.c, src/memory.c, src/menu.c, src/scope.c, src/stack.c, src/store.h, src/store/scptreedata.c, src/store/scptreedata.h, src/store/scptreestore.c, src/store/scptreestore.h, src/thread.c, src/utils.c, src/utils.h, src/views.c, src/views.h, src/watch.c, wscript_build: Switched from GtkList/TreeStore to ScpTreeStore. * src/stack.c, src/watch.c: Removed search optimizations, ScpTreeStore is fast enough. * src/menu.c, src/menu.h, src/scope.c: PLUGIN_KEY_GROUP() -> plugin_set_key_group(). * src/prefs.c: Removed the stash_tree based plugin_configure(). Looked nice, but there is no indication that stash_tree will be included in the plugin API. * src/scope.c, src/tooltip.c, src/views.c: Changes to support GTK+ 3. * docs/scope.html, src/scope.c: Increased version to 0.87. 2013-03-07 Enrico Tröger * wscript_build: Fixed the path handling when building with Waf. 2013-03-07 Dimitar Zhekov * src/gtk216.c: Fixed a bug in array size emulation. 2013-02-21 Dimitar Zhekov * docs/scope.html: Explained the "signal `project-before-save' is invalid" warning. 2013-02-21 Dimitar Zhekov * src/inspect.c: Unified inspect display, fixing empty "value" looking identical to unapplied variable. * src/prefs.c: Fixed the default value for tooltips_fail_action. * scope.glade: Inspect -> Format -> s/binary/Binary/. * scope.html: Small fixes. * docs/scope.html, src/scope.c: Increased version to 0.84. 2013-01-31 Enrico Tröger * src/gtk216.c: Fixed typo in get array element size emulation. 2013-01-29 Dimitar Zhekov * src/gtk216.c, src/gtk216.h: Enable g_array_get_element_size() emulation for glib < 2.22 instead of glib < 2.20. 2013-01-26 YosefOr * src/debug.c: Reverted glibconfig.h include for win32 waitpid()/kill() emulation to glib.h - the new glib versions don't allow individual includes. 2013-01-22 Dimitar Zhekov * src/debug.c: Win32 waitpid()/kill() emulation depends on glibconfig.h only and sets errno = EINVAL on error. * wscript_build: Define empty libraries for win32 only. 2013-01-22 Vadim Kochan * wscript_build: Define default empty libriaries. 2013-01-20 Dimitar Zhekov * src/debug.c: Reduced dependency of win32 waitpid()/kill() emulation on glib. * src/thread.c: Change frame id to 0 or none immediately after thread change. * src/stack.c: Select frame 0 instead of the first available if the current frame is no longer valid. * src/local.c, src/views.c, src/views.h, src/watch.c: Skip stack update if frame 0 for watches only. * src/stack.c: Select and focus only if the current frame is not valid any more. * docs/scope.html: Added tips about Memory. * src/memory.c: Distinguish between memory Clear and auto clear. Fixed menu extra state bug. * src/views.c: Mark memory as auto clear. * src/break.c, src/inspect.c, src/local.c, src/menu.c, src/stack.c, src/thread.c, src/views.c, src/utils.c, src/watch.c: Free string values returned by gtk_tree_model_get(). * docs/scope.html, src/scope.c: Increased version to 0.83. 2013-01-15 Dimitar Zhekov * data/scope.glade, docs/codes.html, docs/scope.html, src/common.h, src/Makefile.am, src/memory.c, src/memory.h, src/parse.c, src/prefs.c, src/prefs.h, src/scope.c, src/views.c, src/views.h: Added Memory subpage. * data/scope.glade, src/conterm.c: GtkTextView "debug_console" -> "debug_context". * src/break.c, src/gtk216.c, src/scope.h, src/stack.c, src/thread.c, src/views.c: GTK_TREE_COLUMN(get_object(name)) -> get_column(name). * src/conterm.c, src/menu.c, src/views.c: Handle GDK_KP_Insert/GDK_KP_Delete/GTK_ISO_Space. * src/conterm.c: Don't invoke console on Ctrl/Alt/Mod ASCII characters. Don't set debug_context properties already defined in scope.glade. * src/conterm.h: Properly declare dc_output/dc_output_nl as extern. * src/debug.c, src/scope.c: Invoke finalizers in (hopefully) proper order instead of processing pending gtk+ events on finalize. * src/debug.c: Small initial wait for gdb kill in finalize instead of waiting gdb_wait_death + 1. * src/gtk216.c, src/gtk216.h, src/scope.c: Emulate g_array_get_element_size() under glib 2.20. * src/menu.c, src/plugme.c, src/utils.c, src/utils.h, src/views.c: utils_str_replace_all() -> utils_strchrepl(). * src/scope.c: Properly initialize inspects state. * src/stack.c: Select and focus the current frame instead of simply selecting. * src/tooltip.c: Unlimited toolbar length on pref_tooltips_length = 0, as described in scope.html. * src/utils.c: Invoke g_array_get_element_size() only once in array_save(). * docs/scope.html, src/scope.c: Increased version to 0.82. 2013-01-03 Dimitar Zhekov * src/debug.c, src/scope.c: Ask user whether to terminate debugging on build actions. * src/debug.c: Ignore "Auto run/exit" on Terminate if neither an executable nor a load script is specified. * docs/codes.html, src/inspect.c, src/inspect.h, src/local.c, src/local.h, src/menu.c, src/menu.h, src/parse.c, src/views.c, src/views.h, src/watch.c, src/watch.h: Unified/simplified all "modified" tokens. The original version was an overkill, and did not update all possible value references. * src/thread.c: Small "modified" tokens unification related changes. * docs/scope.html, src/scope.c: Increased version to 0.80. 2012-12-30 Dimitar Zhekov * src/break.c, src/inspect.c, src/stack.c, src/thread.c, src/utils.c, src/utils.h, src/watch.c: Select, focus and align tree elements instead of simply selecting. 2012-12-28 Dimitar Zhekov * src/break.c, src/inspect.c, src/parse.c, src/program.c, src/watch.c: g_key_file_get_*() -> utils_get_setting_*(), provide reasonable defaults for some settings on load error. * src/conterm.c: gtk_widget_modify_font() -> ui_widget_modify_font_from_string(). 2012-12-27 Dimitar Zhekov * data/scope.glade, docs/codes.html, docs/scope.html, src/parse.c, src/stack.c, src/stack.h, src/thread.c, src/thread.h, src/views.c: Easier sync between GDB/Scope thread/frame. * docs/scope.html, src/scope.c: Increased version to 0.79. 2012-12-26 Dimitar Zhekov * data/scope.glade, docs/codes.html, src/break.c, src/inspect.c, src/local.c, src/menu.c, src/stack.c, src/thread.c, src/views.h, src/watch.c: Small fixes, simplified menu action debug states. 2012-12-24 Dimitar Zhekov * src/thread.c: Limit TerminateProcess() exit code to UINT_MAX, not NSIG. 2012-12-23 Dimitar Zhekov * docs/scope.html, src/prefs.c, src/prefs.h, src/thread.c: Added option "keep_exec_point" to keep the execution point marker and Threads location columns when a thread execution is resumed. * docs/scope.html, src/scope.c: Increased version to 0.78. 2012-12-22 Dimitar Zhekov * NEWS: Real NEWS. * docs/scope.html: Small clarification. * src/parse.c: Fixed breakpoint-deleted id format. * src/parse.h: Removed parse_lead_locale(), not used. * src/program.c, src/scope.c: Unified error message format. 2012-12-18 Dimitar Zhekov * build/scope.m4, scope/src/Makefile.am: No -lutil under win32. 2012-12-16 Dimitar Zhekov * src/common.h, src/menu.h: Fixed forward declarations (though my gcc accepts them). * src/menu.c, src/tooltip.c, src/views.c, src/views.h: Clear scid_gen on program exit. No real risk of overflow, but smaller values look better in Debug Console. * src/menu.c: Position cursor in modify dialog after " = ". * src/tooltip.c: Reset internal variables on program exit. * src/debug.c: Escape "\ in evaluate expressions. * docs/scope.html, src/scope.c: Increased version to 0.77. 2012-12-13 Dimitar Zhekov * data/scope.glade, src/local.c, src/parse.c, src/parse.h, src/stack.c, src/stack.h: Per-function display of @entry arguments. * src/inspect.c, src/menu.c: Small per-function @entry arguments related changes. * src/inspect.c, src/local.c (int) strlen(...) to avoid format warnings. * docs/scope.html, src/scope.c: Increased version to 0.76, small fixes and clarifications.