Review of output view interface
Matt Rogers
mattr at kde.org
Mon May 28 02:18:00 UTC 2007
On Sunday 27 May 2007 21:00, Andreas Pakulat wrote:
> On 27.05.07 20:41:32, Matt Rogers wrote:
> > I took some time and reviewed the output view interface.
>
> Thanks for doing that.
>
> > General Questions and comments:
> >
> > - Why are we still using K3Process?
>
> See my recent mails on the commit list, last time I tested a
> QProcess/Qt4 application wasn't debuggable in KDevelop3.4. I just
> retried and now it works (wether QProcess/Qt4 changed or KProcess/KDE3
> or it was something else earlier I don't know). I just asked whats
> better to use on k-c-d, because at some point K3Process might be deleted
> and brought back as KProcess derived from QProcess. Currently the only
> real reason I see to use KProcess then is to be able to add command and
> arguments using the << operator.
>
> Unless I see a mail stating otherwise I'm going to port to QProcess
> (including proclinemaker) tomorrow evening.
>
Awesome. I'm glad it's working now. No objections from me on porting to
QProcess. I have other questions about proclinemaker, see below.
> > - Outputviews should only be a display mechanism. We need to come up with
> > something different to use to run external processes and capture the
> > output.
> >
> > IOutputView:
> >
> > - Remove the reference to a new tab in the API docs for the queueCommand
> > function. The view doesn't necessarily have to be created within a tab.
> > Tabs are an implementation detail of the view plugin.
> >
> > - Remove queueCommand. See above.
>
> I'll see if I can come up with an interface or class for that tomorrow.
> Now its really too late ;)
>
> In that case I guess IOutputView would just allow to create a view using
> a model, a title and possibly and id. Right? Or do you want to have a
> model for all outputviews together?
>
Right, a model, a title, and possibly and id is all that I would see us
needing.
My idea for the output view functionality was that a plugin would provide a
model that contains the data for the view to display. We would have another
interface that would provide the process execution functionality and the
ability to capture the output. ATM, I think we should capture stdout and
stderr separately, but I'm not totally convinced that's the way to go. Then
the plugin responsible for providing the model to the view would also do some
filtering on it, if needed before passing it to the view. Maybe we have the
ability to provide a custom view too.
I'm a bit confused about ProcLineMaker. What exactly does it do, and will we
need it once we refactor the output view stuff a bit?
--
Matt
More information about the KDevelop-devel
mailing list