How to get the Project Dashboard right

Aleix Pol aleixpol at kde.org
Wed Apr 28 22:20:00 UTC 2010


Hi,
As you will probably have seen, I got the community integration proposal
into this year's GSoC. Great. We decided with my mentor (Andreas :) that we
would discuss the ideas here on the list, so here I am exposing some first
step: the Project Dashboard.

One of the most important parts of this project is the Project Dashboard
which will be some page that will offer some information to the user about
the project he just opened. Of course, we want to make it available for any
plugin to put their information there. My idea for that would go something
like this: http://proli.net/meu/kdevelop/kdev_dashboard_mockup.html.
I want first of all the logo and the description that should take all the
width and then a list with all the elements that initially I think 2
elements per row would be fine but we might want to make that configurable,
shouldn't be a problem.

To use it, we would add a signal to the Project controller that would pass
the ProjectDashboard instance to any file that was connected to the signal
(emulating the observer pattern) and then it should be filled. Any addition
would have some weight to make it possible to provide some importance to
each element.

here's a mockup for the API:
class IProjectController
{
    //...
    signals:
        void elementsRequested(IProject* project, ProjectDashboard*
dashboard);
};

class ProjectDashboard
{
    public:
        addElement(DashboardElement* element, int weight);
};

//here the methods would be needed for configuration more than for the main
display
class ProjectDashboardElement : public QGraphicsWidget
{
    public:
        KIcon icon() const;
        QString name() const;
};

Last but not least, we should decide what technology to use to present all
this information. I thing QGraphicsView would be great but also we could
consider using Plasma or maybe just HTML. In my opinion QGV would be just
great, I'd have to talk to the plasma guys to know what can we get from
using it (probably just theming and integration, but it's not that bad since
we always lack artwork).

Thoughts? Ideas? Opinions? :D
This is going to be fun!! ^^

Aleix
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.kde.org/pipermail/kdevelop-devel/attachments/20100429/36593a34/attachment.html>


More information about the KDevelop-devel mailing list