Hello community, here is the log from the commit of package kdbg for openSUSE:Factory checked in at 2017-08-16 16:21:55 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/kdbg (Old) and /work/SRC/openSUSE:Factory/.kdbg.new (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "kdbg" Wed Aug 16 16:21:55 2017 rev:34 rq:517089 version:2.9.1 Changes: -------- --- /work/SRC/openSUSE:Factory/kdbg/kdbg.changes 2017-01-23 11:40:47.896873191 +0100 +++ /work/SRC/openSUSE:Factory/.kdbg.new/kdbg.changes 2017-08-16 16:26:18.951246582 +0200 @@ -1,0 +2,10 @@ +Tue Aug 15 18:39:53 UTC 2017 - [email protected] + +- Update to 2.9.1: + * Enhancements + - Display QString values in programs based on Qt5. + - Show truncated structure values in the popup of the Expression window. + * Bug fixes + - Fix that the View menu entries can show and hide docking windows. + +------------------------------------------------------------------- Old: ---- kdbg-2.9.0.tar.gz New: ---- kdbg-2.9.1.tar.gz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ kdbg.spec ++++++ --- /var/tmp/diff_new_pack.4FBveU/_old 2017-08-16 16:26:33.837157059 +0200 +++ /var/tmp/diff_new_pack.4FBveU/_new 2017-08-16 16:26:33.849155375 +0200 @@ -17,7 +17,7 @@ Name: kdbg -Version: 2.9.0 +Version: 2.9.1 Release: 0 Summary: Graphical User Interface for GDB License: GPL-2.0+ ++++++ kdbg-2.9.0.tar.gz -> kdbg-2.9.1.tar.gz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kdbg-2.9.0/CMakeLists.txt new/kdbg-2.9.1/CMakeLists.txt --- old/kdbg-2.9.0/CMakeLists.txt 2017-01-12 15:49:32.000000000 +0100 +++ new/kdbg-2.9.1/CMakeLists.txt 2017-08-15 18:27:05.000000000 +0200 @@ -1,6 +1,6 @@ cmake_minimum_required(VERSION 2.6) -set(KDBG_VERSION 2.9.0) +set(KDBG_VERSION 2.9.1) configure_file(${CMAKE_CURRENT_SOURCE_DIR}/kdbg/version.h.cmake ${CMAKE_CURRENT_BINARY_DIR}/kdbg/version.h) find_package(KDE4 REQUIRED) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kdbg-2.9.0/ReleaseNotes-2.9.1 new/kdbg-2.9.1/ReleaseNotes-2.9.1 --- old/kdbg-2.9.0/ReleaseNotes-2.9.1 1970-01-01 01:00:00.000000000 +0100 +++ new/kdbg-2.9.1/ReleaseNotes-2.9.1 2017-08-15 18:27:05.000000000 +0200 @@ -0,0 +1,15 @@ +KDbg Release Notes for version 2.9.1 +==================================== + +Changes since 2.9.0 +------------------- + +Enhancements + +- Display QString values in programs based on Qt5. + +- Show truncated structure values in the popup of the Expression window. + +Bug fixes + +- Fix that the View menu entries can show and hide docking windows. diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kdbg-2.9.0/kdbg/dbgmainwnd.cpp new/kdbg-2.9.1/kdbg/dbgmainwnd.cpp --- old/kdbg-2.9.0/kdbg/dbgmainwnd.cpp 2017-01-12 15:49:32.000000000 +0100 +++ new/kdbg-2.9.1/kdbg/dbgmainwnd.cpp 2017-08-15 18:27:05.000000000 +0200 @@ -15,7 +15,6 @@ #include <kaction.h> #include <kactioncollection.h> #include <krecentfilesaction.h> -#include <ktoggleaction.h> #include <kfiledialog.h> #include <kshortcutsdialog.h> #include <kanimatedbutton.h> @@ -80,7 +79,7 @@ QDockWidget* dw2 = createDockWidget("Locals", i18n("Locals")); m_localVariables = new ExprWnd(dw2, i18n("Variable")); dw2->setWidget(m_localVariables); - QDockWidget* dw3 = createDockWidget("Watches", i18n("Watches")); + QDockWidget* dw3 = createDockWidget("Watches", i18n("Watched Expressions")); m_watches = new WatchWindow(dw3); dw3->setWidget(m_watches); QDockWidget* dw4 = createDockWidget("Registers", i18n("Registers")); @@ -276,21 +275,21 @@ KStandardAction::findPrev(m_filesWindow, SLOT(slotFindBackward()), actionCollection()); i18n("Source &code"); - struct { QString text; QWidget* w; QString id; QAction** act; } dw[] = { - { i18n("Stac&k"), m_btWindow, "view_stack", &m_btWindowAction }, - { i18n("&Locals"), m_localVariables, "view_locals", &m_localVariablesAction }, - { i18n("&Watched expressions"), m_watches, "view_watched_expressions", &m_watchesAction }, - { i18n("&Registers"), m_registers, "view_registers", &m_registersAction }, - { i18n("&Breakpoints"), m_bpTable, "view_breakpoints", &m_bpTableAction }, - { i18n("T&hreads"), m_threads, "view_threads", &m_threadsAction }, - { i18n("&Output"), m_ttyWindow, "view_output", &m_ttyWindowAction }, - { i18n("&Memory"), m_memoryWindow, "view_memory", &m_memoryWindowAction } + struct { QWidget* w; QString id; QAction** act; } dw[] = { + { m_btWindow, "view_stack", &m_btWindowAction }, + { m_localVariables, "view_locals", &m_localVariablesAction }, + { m_watches, "view_watched_expressions", &m_watchesAction }, + { m_registers, "view_registers", &m_registersAction }, + { m_bpTable, "view_breakpoints", &m_bpTableAction }, + { m_threads, "view_threads", &m_threadsAction }, + { m_ttyWindow, "view_output", &m_ttyWindowAction }, + { m_memoryWindow, "view_memory", &m_memoryWindowAction } }; for (unsigned i = 0; i < sizeof(dw)/sizeof(dw[0]); i++) { QDockWidget* d = dockParent(dw[i].w); - *dw[i].act = new KToggleAction(dw[i].text, actionCollection()); - actionCollection()->addAction(dw[i].id, *dw[i].act); - connect(*dw[i].act, SIGNAL(triggered()), d, SLOT(show())); + QAction* action = d->toggleViewAction(); + actionCollection()->addAction(dw[i].id, action); + *dw[i].act = action; } // execution menu @@ -502,14 +501,6 @@ m_bpSetAction->setEnabled(m_debugger->canChangeBreakpoints()); m_bpSetTempAction->setEnabled(m_debugger->canChangeBreakpoints()); m_bpEnableAction->setEnabled(m_debugger->canChangeBreakpoints()); - m_bpTableAction->setChecked(isDockVisible(m_bpTable)); - m_btWindowAction->setChecked(isDockVisible(m_btWindow)); - m_localVariablesAction->setChecked(isDockVisible(m_localVariables)); - m_watchesAction->setChecked(isDockVisible(m_watches)); - m_registersAction->setChecked(isDockVisible(m_registers)); - m_threadsAction->setChecked(isDockVisible(m_threads)); - m_memoryWindowAction->setChecked(isDockVisible(m_memoryWindow)); - m_ttyWindowAction->setChecked(isDockVisible(m_ttyWindow)); m_fileExecAction->setEnabled(m_debugger->isIdle()); m_settingsAction->setEnabled(m_debugger->haveExecutable()); @@ -591,12 +582,6 @@ return 0; } -bool DebuggerMainWnd::isDockVisible(QWidget* w) -{ - QDockWidget* d = dockParent(w); - return d != 0 && d->isVisible(); -} - void DebuggerMainWnd::makeDefaultLayout() { // +---------------+---------+ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kdbg-2.9.0/kdbg/dbgmainwnd.h new/kdbg-2.9.1/kdbg/dbgmainwnd.h --- old/kdbg-2.9.0/kdbg/dbgmainwnd.h 2017-01-12 15:49:32.000000000 +0100 +++ new/kdbg-2.9.1/kdbg/dbgmainwnd.h 2017-08-15 18:27:05.000000000 +0200 @@ -157,7 +157,6 @@ QDockWidget* createDockWidget(const char* name, const QString& title); QDockWidget* dockParent(QWidget* w); - bool isDockVisible(QWidget* w); void makeDefaultLayout(); QString makeSourceFilter(); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kdbg-2.9.0/kdbg/exprwnd.cpp new/kdbg-2.9.1/kdbg/exprwnd.cpp --- old/kdbg-2.9.0/kdbg/exprwnd.cpp 2017-01-12 15:49:32.000000000 +0100 +++ new/kdbg-2.9.1/kdbg/exprwnd.cpp 2017-08-15 18:27:05.000000000 +0200 @@ -165,15 +165,19 @@ return m_structChanged || prevValueChanged; } +QString VarTree::displayedValue() const +{ + QString text = m_baseValue; + if (text.isEmpty()) + text = m_structValue; + else if (!m_structValue.isEmpty()) + text += QLatin1String(" ") + m_structValue; + return text; +} + void VarTree::updateValueText() { - if (m_baseValue.isEmpty()) { - setText(1, m_structValue); - } else if (m_structValue.isEmpty()) { - setText(1, m_baseValue); - } else { - setText(1, m_baseValue + " " + m_structValue); - } + setText(1, displayedValue()); } void VarTree::inferTypesOfChildren(ProgramTypeTable& typeTable) @@ -266,7 +270,7 @@ { if (role != Qt::ToolTipRole || column != 1) return QTreeWidgetItem::data(column, role); - return QVariant(value()); + return QVariant(displayedValue()); } ExprValue::ExprValue(const QString& name, VarTree::NameKind aKind) : diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kdbg-2.9.0/kdbg/exprwnd.h new/kdbg-2.9.1/kdbg/exprwnd.h --- old/kdbg-2.9.0/kdbg/exprwnd.h 2017-01-12 15:49:32.000000000 +0100 +++ new/kdbg-2.9.1/kdbg/exprwnd.h 2017-08-15 18:27:05.000000000 +0200 @@ -60,6 +60,7 @@ void setText(const QString& t) { QTreeWidgetItem::setText(0, t); } void setPixmap(const QPixmap& p) { QTreeWidgetItem::setIcon(0, QIcon(p)); } QString value() const { return m_baseValue; } + QString displayedValue() const; VarTree* child(int i) const { return static_cast<VarTree*>(QTreeWidgetItem::child(i)); } virtual QVariant data(int column, int role) const; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kdbg-2.9.0/kdbg/typetables/CMakeLists.txt new/kdbg-2.9.1/kdbg/typetables/CMakeLists.txt --- old/kdbg-2.9.0/kdbg/typetables/CMakeLists.txt 2017-01-12 15:49:32.000000000 +0100 +++ new/kdbg-2.9.1/kdbg/typetables/CMakeLists.txt 2017-08-15 18:27:05.000000000 +0200 @@ -3,6 +3,7 @@ qt2.kdbgtt qt3.kdbgtt qt4core.kdbgtt + qt5core.kdbgtt kdecore.kdbgtt kdecore3.kdbgtt glib.kdbgtt diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kdbg-2.9.0/kdbg/typetables/qt5core.kdbgtt new/kdbg-2.9.1/kdbg/typetables/qt5core.kdbgtt --- old/kdbg-2.9.0/kdbg/typetables/qt5core.kdbgtt 1970-01-01 01:00:00.000000000 +0100 +++ new/kdbg-2.9.1/kdbg/typetables/qt5core.kdbgtt 2017-08-15 18:27:05.000000000 +0200 @@ -0,0 +1,9 @@ +[Type Table] +Types1=QString +LibDisplayName=libQt5Core 5.x +ShlibRE=libQt5Core\\.so\\.5$ +EnableBuiltin=QString::Data,QCharIsShort +PrintQStringCmd=print *(unsigned short*)((char*)($qstrdata=(%s))+$qstrdata->offset)@(($qstrlen=($qstrdata->size))>100?100:$qstrlen)\n +[QString] +Display={ % } +Expr1=/QString::Data (%s).d
