GDB/MI (Was: Embedded development)
ghost at cs.msu.su
Wed Sep 14 11:55:57 UTC 2005
> On Wednesday 14 September 2005 11:21, Vladimir Prus wrote:
> > As a side question: say I want to completely change visualization of a
> > certain item in frame view. Instead of text, I want a combobox saying
> > "More frames follows" and allowing to select a number of additional
> > frames to show.
> > How do I do that with Qt4 views architecture? It looks like I'd need
> > QListView::setItemDelegate and that "special" item, which somewhat breaks
> yes! the Delegate provides exactly this feature. Actually it provides only
> this feature.
> > separation. I would prefer it if QAbstractItemModel could specify
> > specifing rendering code.
> then all the views will look the same. You will be forced to subclass the
> View to show the data differetly. Remember the model doesn't store data.
> The model is just a mapping from data to indexes(== unique
Yes, but even if I implement delegates on the view side, I'd much prefer if
the (imaginary) ThreadsAndFrameModel class provided a clean way to find out
if an item should use this special rendering. Or I should not try to fit
everything into QAbstractItemModel and just use
bool isFrameStackContinuation(const QModelIndex& index);
For a bit of context: when program goes into infinite recursion, it generates
more and more stack frames *much* faster that gdb can display then. So if a
programs runs for several seconds, gdb can take minutes to display the
frames. So, I want to limit the number of frames shown by adding such special
element with a combobox to show more frames.
> > Let's see. First of all, I need to finish some work on current debugger
> > (memory and register views). That goes to KDevelop 3.4 branch.
> > Then I'd look at bugs -- some really better fixed. And then, I'll start
> > playing with MI. That all is going to happen on KDevelop 3.4 branch,
> > I don't know yet when I'll port this to Qt4.
> we have a lot of time. KDevelop 4 is scheduled in 6-12 months :-)
Ok, good then.
More information about the KDevelop-devel