- fix: Search dialog shouldn't have "confirm when replace".
- change: Default value for the debugger debugger panel "memory view's columns" is changed from 8 to 16. - change: Default value for the debugger debugger panel "memory view's rows" is changed from 8 to 16. - enhancement: Display hex value as ascii chars in the debugger panel memory view tab.
This commit is contained in:
parent
5d9ecea491
commit
5bef664106
4
NEWS.md
4
NEWS.md
|
@ -3,6 +3,10 @@ Red Panda C++ Version 2.15
|
||||||
- fix: Static class members is not correctly recognized as static.
|
- fix: Static class members is not correctly recognized as static.
|
||||||
- fix: Function with reference type return value is not correctly parsed.
|
- fix: Function with reference type return value is not correctly parsed.
|
||||||
- enhancement: Add descriptions for x86 registers in the cpu info dialog.
|
- enhancement: Add descriptions for x86 registers in the cpu info dialog.
|
||||||
|
- fix: Search dialog shouldn't have "confirm when replace".
|
||||||
|
- change: Default value for the debugger debugger panel "memory view's columns" is changed from 8 to 16.
|
||||||
|
- change: Default value for the debugger debugger panel "memory view's rows" is changed from 8 to 16.
|
||||||
|
- enhancement: Display hex value as ascii chars in the debugger panel memory view tab.
|
||||||
|
|
||||||
Red Panda C++ Version 2.14
|
Red Panda C++ Version 2.14
|
||||||
|
|
||||||
|
|
|
@ -44,7 +44,7 @@ Debugger::Debugger(QObject *parent) : QObject(parent),
|
||||||
mBacktraceModel = std::make_shared<BacktraceModel>(this);
|
mBacktraceModel = std::make_shared<BacktraceModel>(this);
|
||||||
mWatchModel = std::make_shared<WatchModel>(this);
|
mWatchModel = std::make_shared<WatchModel>(this);
|
||||||
mRegisterModel = std::make_shared<RegisterModel>(this);
|
mRegisterModel = std::make_shared<RegisterModel>(this);
|
||||||
mMemoryModel = std::make_shared<MemoryModel>(8,this);
|
mMemoryModel = std::make_shared<MemoryModel>(16,this);
|
||||||
|
|
||||||
connect(mMemoryModel.get(),&MemoryModel::setMemoryData,
|
connect(mMemoryModel.get(),&MemoryModel::setMemoryData,
|
||||||
this, &Debugger::setMemoryData);
|
this, &Debugger::setMemoryData);
|
||||||
|
@ -3089,7 +3089,7 @@ int MemoryModel::rowCount(const QModelIndex &/*parent*/) const
|
||||||
|
|
||||||
int MemoryModel::columnCount(const QModelIndex &/*parent*/) const
|
int MemoryModel::columnCount(const QModelIndex &/*parent*/) const
|
||||||
{
|
{
|
||||||
return mDataPerLine;
|
return mDataPerLine+1;
|
||||||
}
|
}
|
||||||
|
|
||||||
QVariant MemoryModel::data(const QModelIndex &index, int role) const
|
QVariant MemoryModel::data(const QModelIndex &index, int role) const
|
||||||
|
@ -3100,10 +3100,21 @@ QVariant MemoryModel::data(const QModelIndex &index, int role) const
|
||||||
return QVariant();
|
return QVariant();
|
||||||
PMemoryLine line = mLines[index.row()];
|
PMemoryLine line = mLines[index.row()];
|
||||||
int col = index.column();
|
int col = index.column();
|
||||||
if (col<0 || col>=line->datas.count())
|
if (col<0 || col>line->datas.count())
|
||||||
return QVariant();
|
return QVariant();
|
||||||
if (role == Qt::DisplayRole)
|
if (role == Qt::DisplayRole) {
|
||||||
return QString("%1").arg(line->datas[col],2,16,QChar('0'));
|
if (col==line->datas.count()) {
|
||||||
|
QString s;
|
||||||
|
foreach (unsigned char ch, line->datas) {
|
||||||
|
if (ch<' ' || ch>=128)
|
||||||
|
s+='.';
|
||||||
|
else
|
||||||
|
s+=ch;
|
||||||
|
}
|
||||||
|
return s;
|
||||||
|
} else
|
||||||
|
return QString("%1").arg(line->datas[col],2,16,QChar('0'));
|
||||||
|
}
|
||||||
return QVariant();
|
return QVariant();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -3961,8 +3961,8 @@ void Settings::Debugger::doLoad()
|
||||||
mUseGDBServer = boolValue("use_gdb_server", true);
|
mUseGDBServer = boolValue("use_gdb_server", true);
|
||||||
#endif
|
#endif
|
||||||
mGDBServerPort = intValue("gdb_server_port",41234);
|
mGDBServerPort = intValue("gdb_server_port",41234);
|
||||||
mMemoryViewRows = intValue("memory_view_rows",8);
|
mMemoryViewRows = intValue("memory_view_rows",16);
|
||||||
mMemoryViewColumns = intValue("memory_view_columns",8);
|
mMemoryViewColumns = intValue("memory_view_columns",16);
|
||||||
}
|
}
|
||||||
|
|
||||||
Settings::CodeCompletion::CodeCompletion(Settings *settings):_Base(settings, SETTING_CODE_COMPLETION)
|
Settings::CodeCompletion::CodeCompletion(Settings *settings):_Base(settings, SETTING_CODE_COMPLETION)
|
||||||
|
|
|
@ -7,7 +7,7 @@
|
||||||
<x>0</x>
|
<x>0</x>
|
||||||
<y>0</y>
|
<y>0</y>
|
||||||
<width>609</width>
|
<width>609</width>
|
||||||
<height>242</height>
|
<height>297</height>
|
||||||
</rect>
|
</rect>
|
||||||
</property>
|
</property>
|
||||||
<property name="windowTitle">
|
<property name="windowTitle">
|
||||||
|
@ -179,13 +179,6 @@
|
||||||
<property name="bottomMargin">
|
<property name="bottomMargin">
|
||||||
<number>7</number>
|
<number>7</number>
|
||||||
</property>
|
</property>
|
||||||
<item row="0" column="0">
|
|
||||||
<widget class="QCheckBox" name="chkCaseSensetive">
|
|
||||||
<property name="text">
|
|
||||||
<string>Case Sensitive</string>
|
|
||||||
</property>
|
|
||||||
</widget>
|
|
||||||
</item>
|
|
||||||
<item row="3" column="0">
|
<item row="3" column="0">
|
||||||
<widget class="QCheckBox" name="chkWrapAround">
|
<widget class="QCheckBox" name="chkWrapAround">
|
||||||
<property name="text">
|
<property name="text">
|
||||||
|
@ -196,16 +189,6 @@
|
||||||
</property>
|
</property>
|
||||||
</widget>
|
</widget>
|
||||||
</item>
|
</item>
|
||||||
<item row="4" column="0">
|
|
||||||
<widget class="QCheckBox" name="chkPrompt">
|
|
||||||
<property name="text">
|
|
||||||
<string>Prompt on replace</string>
|
|
||||||
</property>
|
|
||||||
<property name="checked">
|
|
||||||
<bool>true</bool>
|
|
||||||
</property>
|
|
||||||
</widget>
|
|
||||||
</item>
|
|
||||||
<item row="2" column="0">
|
<item row="2" column="0">
|
||||||
<widget class="QCheckBox" name="chkRegExp">
|
<widget class="QCheckBox" name="chkRegExp">
|
||||||
<property name="sizePolicy">
|
<property name="sizePolicy">
|
||||||
|
@ -226,6 +209,13 @@
|
||||||
</property>
|
</property>
|
||||||
</widget>
|
</widget>
|
||||||
</item>
|
</item>
|
||||||
|
<item row="0" column="0">
|
||||||
|
<widget class="QCheckBox" name="chkCaseSensetive">
|
||||||
|
<property name="text">
|
||||||
|
<string>Case Sensitive</string>
|
||||||
|
</property>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
<item row="2" column="1">
|
<item row="2" column="1">
|
||||||
<widget class="QLabel" name="txtRegExpHelp">
|
<widget class="QLabel" name="txtRegExpHelp">
|
||||||
<property name="sizePolicy">
|
<property name="sizePolicy">
|
||||||
|
@ -242,7 +232,7 @@
|
||||||
</property>
|
</property>
|
||||||
</widget>
|
</widget>
|
||||||
</item>
|
</item>
|
||||||
<item row="5" column="0">
|
<item row="4" column="0">
|
||||||
<widget class="QCheckBox" name="chkCloseAfterSearch">
|
<widget class="QCheckBox" name="chkCloseAfterSearch">
|
||||||
<property name="text">
|
<property name="text">
|
||||||
<string>Close after search</string>
|
<string>Close after search</string>
|
||||||
|
|
Loading…
Reference in New Issue