You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
tdeadmin/kpackage/packageDisplay.h

167 lines
3.8 KiB

/*
** Copyright (C) 1999,2000 Toivo Pedaste <toivo@ucs.uwa.edu.au>
**
// This widget is used to display information and the file list of a
// package.
//
// Package information will be displayed using (another) sub-widget
// that is inherited from a TQTableView.
//
// The file list will be displayed using a tree list.
//
// The widget is mainly a TQTabDialog with two tabs: Info and FileList.
// The Info tab is the default one.
*/
/*
** This program is free software; you can redistribute it and/or modify
** it under the terms of the GNU General Public License as published by
** the Free Software Foundation; either version 2 of the License, or
** (at your option) any later version.
**
** This program is distributed in the hope that it will be useful,
** but WITHOUT ANY WARRANTY; without even the implied warranty of
** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
** GNU General Public License for more details.
**
** You should have received a copy of the GNU General Public License
** along with this program in a file called COPYING; if not, write to
** the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
** MA 02110-1301, USA.
*/
/*
** Bug reports and questions can be sent to kde-devel@kde.org
*/
#ifndef PACKAGEDISPLAY_H
#define PACKAGEDISPLAY_H
#include "../config.h"
// TQt Headers
#include <tqframe.h>
#include <tqtabbar.h>
#include <tqtabwidget.h>
#include <tqvbox.h>
#include <kpopupmenu.h>
#include <klistview.h>
class packagePropertiesWidget;
class packageInfo;
class TQListViewItem;
class TQTextEdit;
class packageDisplayWidget;
class kpFileList : public KListView
{
Q_OBJECT
TQ_OBJECT
public:
kpFileList(TQWidget* tqparent, packageDisplayWidget* tqparent2);
TQString item2Path(TQListViewItem *it);
public slots:
void openContext(KListView *, TQListViewItem *, const TQPoint &);
virtual void clear();
TQListViewItem* insert(const TQString &cur, const TQPixmap &pixmap);
private:
KPopupMenu *FileListMenu;
packageDisplayWidget* pkDisplay;
int openwith;
};
class packageDisplayWidget : public TQTabWidget
{
Q_OBJECT
TQ_OBJECT
friend class kpFileList;
///////////// METHODS ------------------------------------------------------
public:
packageDisplayWidget(TQWidget *tqparent=0);
// Constructor
~packageDisplayWidget();
// Destructor
void noPackage();
// clear package display in right panel
void changePackage(packageInfo *p);
// Set currently selected package
private:
void setupWidgets();
// This sets up the sub-widgets
void updateFileList();
// This updates the file list to match that found with the currently
// selected package
void updateChangeLog();
// This updates the change log to match that found with the currently
// selected package
void tabSet(TQWidget *);
// Set display for corresponding tab
///////////// SLOTS --------------------------------------------------------
public slots:
void tabSelected(TQWidget *);
void openBinding(TQListViewItem *);
void openBindingWith(TQListViewItem *);
void __openBindingWith();
///////////// SIGNALS ------------------------------------------------------
///////////// DATA ---------------------------------------------------------
public:
packageInfo *package;
// the currently selected package
private:
TQTabWidget *tabbar;
// The tab bar
TQVBox *proptab, *fltab, *cltab;
TQWidget *curTab;
// current active tab
kpFileList *fileList;
// This holds the file list (and is used as a page on the tab dialog)
TQTextEdit *changeLog;
// Holds changelog
TQPixmap tick, cross, question, *blank;
// The pixmaps for the filelist
packagePropertiesWidget *packageProperties;
// This displays the package properties (and is used as a page on the
// tab dialog)
bool initList;
// True is file list has been initialised
};
#endif