[apaku at gmx.de: Re: KDE/kdevelop/lib/plugins/outputviews]

dukju ahn dukjuahn at gmail.com
Sun May 13 18:16:41 UTC 2007


Ok, I was wrong on model-outputview. The location of model will be
changed, and the case of registering same tab title will be reverted.

> > > On 13.05.07 07:31:06, Dukju Ahn wrote:
> > > > Porting ProcessLineMaker into KDev4. This wraps signal line-by-line, rather than emitting text whenever there is incomplete stdout/stderror.
> > >
> > > What does that class do? Can it process output of various types of
> > > processes or just make? Does it make sense to produce an interface for
> > > this so a buildmanager can hook up its own thing here.
> >
> > It processes every kind of K3Process outputs.
> > Regarding the filter thing, the concept of LineMaker is not filter. It
> > just emit signal
> > whenever a "completed" line was read.
> > If K3Process reads some output but that's an incomplete line,
> > normal K3Process would emit signal. But lineMaker
> > waits until a completed one-line is captured. Only after one complete
> > line is formed
> > it emits signal.
>
> Aaah, so this is not about filtering...
>
> > > Uhm, and now that we're reading line-by-line the outputview will be even
> > > slower. Before we had the opportunity to use our own model to insert
> > > multiple lines at once.
> >
> > If we don't use LineMaker the following hypotetic situation may happen.
> >
> > exec make
> > gcc -c        // KProcess emits "gcc -c"
> > somefile.c  // KProcess emits "somefile.c"
> >
> > Then there would be 2 line in outputview.
>
> Yes thats possible, but I think LineProcessMaker should still emit a
> QStringList instead of one line after the other and just buffer the last
> line if its not complete yet.

I can't understand this sentence. Do you mean that if there are
3 completed line and one incomplete word, emit completed 3 lines
with QStringList and bufferring the incomplete word?

> Or we can do all of this in our own model,
> when we replace QStandardItemModel.

The reason why I didn't do that inside OutputView Item is,
ProcessLineMaker was utility in KDev3 and KDev3's outputview uses it.
Also I hoped that other possible plugins may use ProcessLIneMaker.
That's why it's a util.




More information about the KDevelop-devel mailing list