[KDev4] VCS interfaces draft
dukju ahn
dukjuahn at gmail.com
Fri Mar 23 16:02:34 UTC 2007
> > >What if we have more methods in IVersionControl? Something
> > >along these lines:
> > >
> > >bool commit(KUrl::List &);
> >
> > I don't feel the need of these user-invoked action interfaces.
> > The only case these commit/add actions start is via menubar or context
> > menu. I personaly think that these context menu should be filled out
> > by each plugin. So other component can forget about other actions.
> > Rather, IVersionControl::fillContextMenu(KUrl&, QMenu&) seems
> > to be appropriate.
>
> I understand that, but I'd like to have some scripting via QtScript so
> that not only plugins with popup menus but also scripts could use
> the vcs functionality. For example, one might write a script alike
> svnmerge.py but with user interaction in kdevelop.
>
> Also there're appwizard needs. Basically, to create a project in repository,
> appwizard needs to add files there and fetch them back.
> Maybe there will be need for committing.
>
I didn't know these plans. I will include these interfaces.
Can you let me know where can I find the samples of these scripts?
But now, we should design how the user-invokation will happen.
By default, menubar and editor context menu will be used. Other than these,
I sugguest using project treeview in PROJECT MANAGER widget.
This is necessary because VCS actions should be able to be invoked
on directories.
Ultimately, project treeview can show the status of files.
So, interface that fills VCS context menu is also needed.
Hence, I suggest including IVersionControl::fillContextMenu(KUrl&, QMenu&)
along with the commit/add/delete and etc interfaces.
Then, VCS plugins will be accessed via any convenient ways.
More information about the KDevelop-devel
mailing list