kontact

sidepanebase.h

00001 /*
00002   This file is part of the KDE Kontact.
00003 
00004   Copyright (C) 2003 Cornelius Schumacher <schumacher@kde.org>
00005 
00006   This program is free software; you can redistribute it and/or
00007   modify it under the terms of the GNU General Public
00008   License as published by the Free Software Foundation; either
00009   version 2 of the License, or (at your option) any later version.
00010 
00011   This program is distributed in the hope that it will be useful,
00012   but WITHOUT ANY WARRANTY; without even the implied warranty of
00013   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
00014   General Public License for more details.
00015 
00016   You should have received a copy of the GNU General Public License
00017   along with this program; see the file COPYING.  If not, write to
00018   the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
00019   Boston, MA 02110-1301, USA.
00020 */
00021 #ifndef KONTACT_SIDEPANEBASE_H
00022 #define KONTACT_SIDEPANEBASE_H
00023 
00024 #include <tqvbox.h>
00025 
00026 namespace KParts { class Part; }
00027 
00028 namespace Kontact
00029 {
00030 
00031 class Core;
00032 class Plugin;
00033 
00034 class SidePaneBase : public TQVBox
00035 {
00036     Q_OBJECT
00037   TQ_OBJECT
00038   public:
00039     SidePaneBase( Core *core, TQWidget *parent, const char *name = 0 );
00040     virtual ~SidePaneBase();
00041 
00042   signals:
00043     void pluginSelected( Kontact::Plugin* );
00044 
00045   public slots:
00050     virtual void updatePlugins() = 0;
00051 
00052 
00053     virtual void indicateForegrunding( Kontact::Plugin* ) = 0;
00054   protected:
00055     Core* core() const;
00056 
00057   private:
00058     Core* mCore;
00059     KActionCollection *mActionCollection;
00060 };
00061 
00062 }
00063 
00064 #endif