|
|
|
/*
|
|
|
|
** Copyright (C) 1999,2000 Toivo Pedaste <toivo@ucs.uwa.edu.au>
|
|
|
|
**
|
|
|
|
*/
|
|
|
|
|
|
|
|
/*
|
|
|
|
** 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 OPTIONS_H
|
|
|
|
#define OPTIONS_H
|
|
|
|
|
|
|
|
#include "../config.h"
|
|
|
|
|
|
|
|
// Standard Headers
|
|
|
|
#include <stdio.h>
|
|
|
|
|
|
|
|
// TQt Headers
|
|
|
|
#include <tqdir.h>
|
|
|
|
#include <tqwidget.h>
|
|
|
|
#include <tqfiledialog.h>
|
|
|
|
#include <tqgroupbox.h>
|
|
|
|
|
|
|
|
// KDE headers
|
|
|
|
#include <kapplication.h>
|
|
|
|
#include <kfiledialog.h>
|
|
|
|
|
|
|
|
#include <kpackage.h>
|
|
|
|
|
|
|
|
class KURLRequester;
|
|
|
|
|
|
|
|
|
|
|
|
class TQVBoxLayout;
|
|
|
|
class TQGroupBox;
|
|
|
|
class TQCheckBox;
|
|
|
|
class TQPushButton;
|
|
|
|
class KComboBox;
|
|
|
|
class TQButtonGroup;
|
|
|
|
class TQRadioButton;
|
|
|
|
|
|
|
|
//////////////////////////////////////////////////////////////////////////////
|
|
|
|
//////////////////////////////////////////////////////////////////////////////
|
|
|
|
class Options : public KDialogBase
|
|
|
|
{
|
|
|
|
Q_OBJECT
|
|
|
|
TQ_OBJECT
|
|
|
|
|
|
|
|
public:
|
|
|
|
|
|
|
|
Options ( TQWidget *tqparent = 0);
|
|
|
|
~Options();
|
|
|
|
|
|
|
|
void restore();
|
|
|
|
// show window, setting the buttons
|
|
|
|
|
|
|
|
void setValues();
|
|
|
|
// set the dialog to match options values
|
|
|
|
|
|
|
|
private:
|
|
|
|
|
|
|
|
bool verifyFL;
|
|
|
|
bool PkgRead;
|
|
|
|
bool fRemote;
|
|
|
|
int DCache, dc, PCache, pc, privCmd, prc;
|
|
|
|
TQString CacheDir;
|
|
|
|
|
|
|
|
TQVBoxLayout* vl;
|
|
|
|
|
|
|
|
TQVBoxLayout* vt;
|
|
|
|
TQGroupBox *framet;
|
|
|
|
TQGroupBox *packageBox[kpinterfaceN];
|
|
|
|
TQCheckBox *packageHandle[kpinterfaceN];
|
|
|
|
TQPushButton *locate[kpinterfaceN];
|
|
|
|
|
|
|
|
TQGroupBox *hh;
|
|
|
|
TQCheckBox *huse;
|
|
|
|
KComboBox *hosts;
|
|
|
|
|
|
|
|
TQVBoxLayout* vb;
|
|
|
|
TQButtonGroup *bg;
|
|
|
|
TQRadioButton *disp[4];
|
|
|
|
|
|
|
|
TQVBoxLayout* vc;
|
|
|
|
TQButtonGroup *bc;
|
|
|
|
TQRadioButton *dcache[3];
|
|
|
|
|
|
|
|
TQVBoxLayout* vp;
|
|
|
|
TQButtonGroup *bp;
|
|
|
|
TQRadioButton *pcache[3];
|
|
|
|
|
|
|
|
TQVBoxLayout* vs;
|
|
|
|
TQButtonGroup *bs;
|
|
|
|
TQRadioButton *privs[3];
|
|
|
|
|
|
|
|
KURLRequester *cachedir;
|
|
|
|
|
|
|
|
TQVBoxLayout* vr;
|
|
|
|
TQGroupBox *framer;
|
|
|
|
TQCheckBox *pkgRead;
|
|
|
|
|
|
|
|
TQVBoxLayout* vf;
|
|
|
|
TQGroupBox *framem;
|
|
|
|
TQCheckBox *valid;
|
|
|
|
|
|
|
|
|
|
|
|
public slots:
|
|
|
|
void scanLocates();
|
|
|
|
void apply_slot();
|
|
|
|
void cancel_slot();
|
|
|
|
void PDCache(int);
|
|
|
|
void PPCache(int);
|
|
|
|
void PPrivs(int);
|
|
|
|
|
|
|
|
private slots:
|
|
|
|
void insHosts();
|
|
|
|
void useRemote();
|
|
|
|
};
|
|
|
|
|
|
|
|
//////////////////////////////////////////////////////////////////////////////
|
|
|
|
//////////////////////////////////////////////////////////////////////////////
|
|
|
|
|
|
|
|
class Opts
|
|
|
|
{
|
|
|
|
public:
|
|
|
|
void readSettings(const TQString &initHost = "");
|
|
|
|
void writeSettings();
|
|
|
|
|
|
|
|
void readLaterSettings();
|
|
|
|
// options to be setup after package interfaces setup
|
|
|
|
|
|
|
|
TQStringList hostList;
|
|
|
|
// list of hosts to choose from
|
|
|
|
|
|
|
|
bool VerifyFL;
|
|
|
|
// config: verify the file list
|
|
|
|
|
|
|
|
bool PkgRead;
|
|
|
|
// read information about uninstalled packages from each RPM file itself
|
|
|
|
|
|
|
|
bool handlePackage[kpinterfaceN];
|
|
|
|
|
|
|
|
enum {INSTALLED, UPDATED, NEW, ALL};
|
|
|
|
enum {ALWAYS, SESSION, NEVER};
|
|
|
|
|
|
|
|
int DCache;
|
|
|
|
// how much to cache uninstall package directories
|
|
|
|
|
|
|
|
int PCache;
|
|
|
|
// how much to cache uninstall packages
|
|
|
|
|
|
|
|
int privCmd;
|
|
|
|
// which command to use to execute priveliged commands
|
|
|
|
enum {SUcmd=0, SUDOcmd=1, SSHcmd=2};
|
|
|
|
|
|
|
|
TQString CacheDir;
|
|
|
|
// cache directory
|
|
|
|
|
|
|
|
Opts(const TQString &initHost);
|
|
|
|
~Opts();
|
|
|
|
};
|
|
|
|
//////////////////////////////////////////////////////////////////////////////
|
|
|
|
//////////////////////////////////////////////////////////////////////////////
|
|
|
|
#endif
|