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.
506 lines
15 KiB
506 lines
15 KiB
15 years ago
|
/***************************************************************************
|
||
|
kreplacements.h - description
|
||
|
-------------------
|
||
|
begin : Sat Aug 3 2002
|
||
|
copyright : (C) 2002-2007 by Joachim Eibl
|
||
|
email : joachim.eibl at gmx.de
|
||
|
***************************************************************************/
|
||
|
|
||
|
/***************************************************************************
|
||
|
* *
|
||
|
* 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. *
|
||
|
* *
|
||
|
***************************************************************************/
|
||
|
|
||
|
#ifndef KREPLACEMENTS_H
|
||
|
#define KREPLACEMENTS_H
|
||
|
|
||
|
#include "common.h"
|
||
|
|
||
|
#include <qobject.h>
|
||
|
#include <qtabdialog.h>
|
||
|
#include <qmainwindow.h>
|
||
|
#include <qaction.h>
|
||
|
#include <qfiledialog.h>
|
||
|
#include <qapplication.h>
|
||
|
#include <qvbox.h>
|
||
|
#include <qpushbutton.h>
|
||
|
#include <qstatusbar.h>
|
||
|
#include <qtoolbar.h>
|
||
|
#include <qprogressbar.h>
|
||
|
#include <qpopupmenu.h>
|
||
|
#include <qstringlist.h>
|
||
|
#include <qprinter.h>
|
||
|
|
||
|
#include <map>
|
||
|
#include <list>
|
||
|
|
||
|
QString getTranslationDir();
|
||
|
|
||
|
class KMainWindow;
|
||
|
|
||
|
class KURL
|
||
|
{
|
||
|
public:
|
||
|
KURL(){}
|
||
|
KURL(const QString& s){ m_s = s; }
|
||
|
static KURL fromPathOrURL( const QString& s ){ return KURL(s); }
|
||
|
QString url() const { return m_s; }
|
||
|
bool isEmpty() const { return m_s.isEmpty(); }
|
||
|
QString prettyURL() const { return m_s; }
|
||
|
bool isLocalFile() const { return true; }
|
||
|
bool isValid() const { return true; }
|
||
|
QString path() const { return m_s; }
|
||
|
void setPath( const QString& s ){ m_s=s; }
|
||
|
QString fileName() const { return m_s; } // not really needed
|
||
|
void addPath( const QString& s ){ m_s += "/" + s; }
|
||
|
private:
|
||
|
QString m_s;
|
||
|
};
|
||
|
|
||
|
class KMessageBox
|
||
|
{
|
||
|
public:
|
||
|
static void error( QWidget* parent, const QString& text, const QString& caption=QString() );
|
||
|
static int warningContinueCancel( QWidget* parent, const QString& text, const QString& caption=QString(),
|
||
|
const QString& button1=QString("Continue") );
|
||
|
static void sorry( QWidget* parent, const QString& text, const QString& caption=QString() );
|
||
|
static void information( QWidget* parent, const QString& text, const QString& caption=QString() );
|
||
|
static int warningYesNo( QWidget* parent, const QString& text, const QString& caption,
|
||
|
const QString& button1, const QString& button2 );
|
||
|
static int warningYesNoCancel(
|
||
|
QWidget* parent, const QString& text, const QString& caption,
|
||
|
const QString& button1, const QString& button2 );
|
||
|
|
||
|
enum {Cancel=-1, No=0, Yes=1, Continue=1};
|
||
|
};
|
||
|
|
||
|
#define i18n(x) QObject::tr(x)
|
||
|
#define I18N_NOOP(x) x
|
||
|
#define RESTORE(x)
|
||
|
#define _UNLOAD(x)
|
||
|
|
||
|
typedef QPopupMenu KPopupMenu;
|
||
|
|
||
|
class KDialogBase : public QTabDialog
|
||
|
{
|
||
|
Q_OBJECT
|
||
|
public:
|
||
|
KDialogBase( int, const QString& caption, int, int, QWidget* parent, const char* name,
|
||
|
bool /*modal*/, bool );
|
||
|
~KDialogBase();
|
||
|
|
||
|
void incInitialSize ( const QSize& );
|
||
|
void setHelp(const QString& helpfilename, const QString& );
|
||
|
enum {IconList, Help, Default, Apply, Ok, Cancel };
|
||
|
|
||
|
int BarIcon(const QString& iconName, int );
|
||
|
|
||
|
QVBox* addVBoxPage( const QString& name, const QString& info, int );
|
||
|
QFrame* addPage( const QString& name, const QString& info, int );
|
||
|
int spacingHint();
|
||
|
|
||
|
virtual void accept();
|
||
|
signals:
|
||
|
void applyClicked();
|
||
|
|
||
|
protected slots:
|
||
|
virtual void slotOk( void );
|
||
|
virtual void slotApply( void );
|
||
|
virtual void slotHelp( void );
|
||
|
virtual void slotCancel( void );
|
||
|
virtual void slotDefault( void );
|
||
|
};
|
||
|
|
||
|
class KFileDialog : public QFileDialog
|
||
|
{
|
||
|
public:
|
||
|
static KURL getSaveURL( const QString &startDir=QString::null,
|
||
|
const QString &filter=QString::null,
|
||
|
QWidget *parent=0, const QString &caption=QString::null);
|
||
|
static KURL getOpenURL( const QString & startDir = QString::null,
|
||
|
const QString & filter = QString::null,
|
||
|
QWidget * parent = 0,
|
||
|
const QString & caption = QString::null );
|
||
|
static KURL getExistingURL( const QString & startDir = QString::null,
|
||
|
QWidget * parent = 0,
|
||
|
const QString & caption = QString::null );
|
||
|
static QString getSaveFileName (const QString &startDir=QString::null,
|
||
|
const QString &filter=QString::null,
|
||
|
QWidget *parent=0,
|
||
|
const QString &caption=QString::null);
|
||
|
};
|
||
|
|
||
|
typedef QStatusBar KStatusBar;
|
||
|
|
||
|
class KToolBar : public QToolBar
|
||
|
{
|
||
|
public:
|
||
|
KToolBar(QMainWindow* parent);
|
||
|
|
||
|
enum BarPosition {Top, Bottom, Left, Right};
|
||
|
BarPosition barPos();
|
||
|
void setBarPos(BarPosition);
|
||
|
private:
|
||
|
QMainWindow* m_pMainWindow;
|
||
|
};
|
||
|
|
||
|
class KActionCollection
|
||
|
{
|
||
|
public:
|
||
|
KMainWindow* m_pMainWindow;
|
||
|
KActionCollection( KMainWindow* p){ m_pMainWindow=p; }
|
||
|
};
|
||
|
|
||
|
class KKeyDialog
|
||
|
{
|
||
|
public:
|
||
|
static void configure(void*, QWidget*){}
|
||
|
static void configureKeys(KActionCollection*, const QString&){}
|
||
|
static void configure(KActionCollection*, const QString&){}
|
||
|
};
|
||
|
|
||
|
namespace KParts
|
||
|
{
|
||
|
class ReadWritePart;
|
||
|
}
|
||
|
|
||
|
class KMainWindow : public QMainWindow
|
||
|
{
|
||
|
Q_OBJECT
|
||
|
private:
|
||
|
KStatusBar m_statusBar;
|
||
|
KActionCollection m_actionCollection;
|
||
|
protected:
|
||
|
virtual bool queryClose() = 0;
|
||
|
virtual bool queryExit() = 0;
|
||
|
public:
|
||
|
QPopupMenu* fileMenu;
|
||
|
QPopupMenu* editMenu;
|
||
|
QPopupMenu* directoryMenu;
|
||
|
QPopupMenu* dirCurrentItemMenu;
|
||
|
QPopupMenu* dirCurrentSyncItemMenu;
|
||
|
QPopupMenu* movementMenu;
|
||
|
QPopupMenu* mergeMenu;
|
||
|
QPopupMenu* diffMenu;
|
||
|
QPopupMenu* windowsMenu;
|
||
|
QPopupMenu* settingsMenu;
|
||
|
QPopupMenu* helpMenu;
|
||
|
|
||
|
KToolBar* m_pToolBar;
|
||
|
|
||
|
KMainWindow( QWidget* parent, const char* name );
|
||
|
KToolBar* toolBar(const QString& s = QString::null);
|
||
|
KActionCollection* actionCollection();
|
||
|
void createGUI();
|
||
|
void createGUI(KParts::ReadWritePart*){createGUI();}
|
||
|
|
||
|
QList<KMainWindow>* memberList;
|
||
|
public slots:
|
||
|
void slotHelp();
|
||
|
void slotAbout();
|
||
|
};
|
||
|
|
||
|
class KConfig : public ValueMap
|
||
|
{
|
||
|
QString m_fileName;
|
||
|
public:
|
||
|
KConfig();
|
||
|
~KConfig();
|
||
|
void readConfigFile(const QString& configFileName);
|
||
|
|
||
|
void setGroup(const QString&);
|
||
|
};
|
||
|
|
||
|
class KAction : public QAction
|
||
|
{
|
||
|
Q_OBJECT
|
||
|
public:
|
||
|
KAction(const QString& text, const QIconSet& icon, int accel, QObject* receiver, const char* slot, KActionCollection* actionCollection, const char* name, bool bToggle=false, bool bMenu=true);
|
||
|
KAction(const QString& text, int accel, QObject* receiver, const char* slot, KActionCollection* actionCollection, const char* name, bool bToggle=false, bool bMenu=true);
|
||
|
void init(QObject* receiver, const char* slot, KActionCollection* actionCollection,
|
||
|
const char* name, bool bToggle, bool bMenu);
|
||
|
void setStatusText(const QString&);
|
||
|
void plug(QPopupMenu*);
|
||
|
};
|
||
|
|
||
|
class KToggleAction : public KAction
|
||
|
{
|
||
|
public:
|
||
|
KToggleAction(const QString& text, const QIconSet& icon, int accel, QObject* receiver, const char* slot, KActionCollection* actionCollection, const char* name, bool bMenu=true);
|
||
|
KToggleAction(const QString& text, int accel, QObject* receiver, const char* slot, KActionCollection* actionCollection, const char* name, bool bMenu=true);
|
||
|
KToggleAction(const QString& text, const QIconSet& icon, int accel, KActionCollection* actionCollection, const char* name, bool bMenu=true);
|
||
|
void setChecked(bool);
|
||
|
bool isChecked();
|
||
|
};
|
||
|
|
||
|
|
||
|
class KStdAction
|
||
|
{
|
||
|
public:
|
||
|
static KAction* open( QWidget* parent, const char* slot, KActionCollection* );
|
||
|
static KAction* save( QWidget* parent, const char* slot, KActionCollection* );
|
||
|
static KAction* saveAs( QWidget* parent, const char* slot, KActionCollection* );
|
||
|
static KAction* print( QWidget* parent, const char* slot, KActionCollection* );
|
||
|
static KAction* quit( QWidget* parent, const char* slot, KActionCollection* );
|
||
|
static KAction* cut( QWidget* parent, const char* slot, KActionCollection* );
|
||
|
static KAction* copy( QWidget* parent, const char* slot, KActionCollection* );
|
||
|
static KAction* paste( QWidget* parent, const char* slot, KActionCollection* );
|
||
|
static KAction* selectAll( QWidget* parent, const char* slot, KActionCollection* );
|
||
|
static KToggleAction* showToolbar( QWidget* parent, const char* slot, KActionCollection* );
|
||
|
static KToggleAction* showStatusbar( QWidget* parent, const char* slot, KActionCollection* );
|
||
|
static KAction* preferences( QWidget* parent, const char* slot, KActionCollection* );
|
||
|
static KAction* about( QWidget* parent, const char* slot, KActionCollection* );
|
||
|
static KAction* aboutQt( KActionCollection* );
|
||
|
static KAction* help( QWidget* parent, const char* slot, KActionCollection* );
|
||
|
static KAction* find( QWidget* parent, const char* slot, KActionCollection* );
|
||
|
static KAction* findNext( QWidget* parent, const char* slot, KActionCollection* );
|
||
|
static KAction* keyBindings( QWidget* parent, const char* slot, KActionCollection* );
|
||
|
};
|
||
|
|
||
|
class KIcon
|
||
|
{
|
||
|
public:
|
||
|
enum {SizeMedium,Small};
|
||
|
};
|
||
|
|
||
|
class KFontChooser : public QWidget
|
||
|
{
|
||
|
Q_OBJECT
|
||
|
QFont m_font;
|
||
|
QPushButton* m_pSelectFont;
|
||
|
QLabel* m_pLabel;
|
||
|
QWidget* m_pParent;
|
||
|
public:
|
||
|
KFontChooser( QWidget* pParent, const QString& name, bool, const QStringList&, bool, int );
|
||
|
QFont font();
|
||
|
void setFont( const QFont&, bool );
|
||
|
private slots:
|
||
|
void slotSelectFont();
|
||
|
};
|
||
|
|
||
|
class KColorButton : public QPushButton
|
||
|
{
|
||
|
Q_OBJECT
|
||
|
QColor m_color;
|
||
|
public:
|
||
|
KColorButton(QWidget* parent);
|
||
|
QColor color();
|
||
|
void setColor(const QColor&);
|
||
|
virtual void paintEvent(QPaintEvent* e);
|
||
|
public slots:
|
||
|
void slotClicked();
|
||
|
};
|
||
|
|
||
|
class KPrinter : public QPrinter
|
||
|
{
|
||
|
public:
|
||
|
KPrinter();
|
||
|
enum e_PageSelection {ApplicationSide};
|
||
|
QValueList<int> pageList();
|
||
|
void setCurrentPage(int);
|
||
|
void setPageSelection(e_PageSelection);
|
||
|
};
|
||
|
|
||
|
class KStandardDirs
|
||
|
{
|
||
|
public:
|
||
|
QString findResource(const QString& resource, const QString& appName);
|
||
|
};
|
||
|
|
||
|
struct KCmdLineOptions
|
||
|
{
|
||
|
const char* name;
|
||
|
const char* description;
|
||
|
int def;
|
||
|
};
|
||
|
|
||
|
#define KCmdLineLastOption {0,0,0}
|
||
|
|
||
|
class KAboutData
|
||
|
{
|
||
|
public:
|
||
|
KAboutData( const QString& name, const QString& appName, const QString& version,
|
||
|
const QString& description, int licence,
|
||
|
const QString& copyright, int w, const QString& homepage, const QString& email);
|
||
|
KAboutData( const QString& name, const QString& appName, const QString& version );
|
||
|
void addAuthor(const char* name=0, const char* task=0, const char* email=0, const char* weblink=0);
|
||
|
void addCredit(const char* name=0, const char* task=0, const char* email=0, const char* weblink=0);
|
||
|
enum { License_GPL };
|
||
|
|
||
|
struct AboutDataEntry
|
||
|
{
|
||
|
AboutDataEntry(const QString& name, const QString& task, const QString& email, const QString& weblink)
|
||
|
: m_name(name), m_task(task), m_email(email), m_weblink(weblink)
|
||
|
{}
|
||
|
QString m_name;
|
||
|
QString m_task;
|
||
|
QString m_email;
|
||
|
QString m_weblink;
|
||
|
};
|
||
|
|
||
|
std::list<AboutDataEntry> m_authorList;
|
||
|
std::list<AboutDataEntry> m_creditList;
|
||
|
};
|
||
|
|
||
|
typedef QValueList<QCString> QCStringList;
|
||
|
|
||
|
class KCmdLineArgs
|
||
|
{
|
||
|
public:
|
||
|
static KCmdLineArgs* parsedArgs();
|
||
|
static void init( int argc, char**argv, KAboutData* );
|
||
|
static void addCmdLineOptions( KCmdLineOptions* options ); // Add our own options.
|
||
|
|
||
|
int count();
|
||
|
QString arg(int);
|
||
|
KURL url(int i){ return KURL(arg(i)); }
|
||
|
void clear();
|
||
|
QString getOption(const QString&);
|
||
|
QCStringList getOptionList( const QString& );
|
||
|
bool isSet(const QString&);
|
||
|
};
|
||
|
|
||
|
class KIconLoader
|
||
|
{
|
||
|
public:
|
||
|
QPixmap loadIcon(const QString& name, int);
|
||
|
};
|
||
|
|
||
|
class KApplication : public QApplication
|
||
|
{
|
||
|
KConfig m_config;
|
||
|
KIconLoader m_iconLoader;
|
||
|
public:
|
||
|
KApplication();
|
||
|
static KApplication* kApplication();
|
||
|
KIconLoader* iconLoader();
|
||
|
KConfig* config();
|
||
|
bool isRestored();
|
||
|
};
|
||
|
|
||
|
extern KApplication* kapp;
|
||
|
|
||
|
class KLibFactory : public QObject
|
||
|
{
|
||
|
Q_OBJECT
|
||
|
public:
|
||
|
QObject* create(QObject*,const QString&,const QString&);
|
||
|
};
|
||
|
|
||
|
class KLibLoader
|
||
|
{
|
||
|
public:
|
||
|
static KLibLoader* self();
|
||
|
KLibFactory* factory(const QString&);
|
||
|
};
|
||
|
|
||
|
class KEditToolbar : public QDialog
|
||
|
{
|
||
|
public:
|
||
|
KEditToolbar( int ){}
|
||
|
};
|
||
|
|
||
|
class KGlobal
|
||
|
{
|
||
|
public:
|
||
|
static KConfig* config() { return 0; }
|
||
|
};
|
||
|
|
||
|
namespace KIO
|
||
|
{
|
||
|
enum UDSEntry {};
|
||
|
typedef QValueList<UDSEntry> UDSEntryList;
|
||
|
class Job : public QObject
|
||
|
{
|
||
|
public:
|
||
|
void kill(bool){}
|
||
|
bool error() {return false;}
|
||
|
void showErrorDialog( QWidget* ) {}
|
||
|
};
|
||
|
class SimpleJob : public Job {};
|
||
|
SimpleJob* mkdir( KURL );
|
||
|
SimpleJob* rmdir( KURL );
|
||
|
SimpleJob* file_delete( KURL, bool );
|
||
|
class FileCopyJob : public Job {};
|
||
|
FileCopyJob* file_move( KURL, KURL, int, bool, bool, bool );
|
||
|
FileCopyJob* file_copy( KURL, KURL, int, bool, bool, bool );
|
||
|
class CopyJob : public Job {};
|
||
|
CopyJob* link( KURL, KURL, bool );
|
||
|
class ListJob : public Job {};
|
||
|
ListJob* listRecursive( KURL, bool, bool );
|
||
|
ListJob* listDir( KURL, bool, bool );
|
||
|
class StatJob : public Job {
|
||
|
public: UDSEntry statResult(){ return (UDSEntry)0; }
|
||
|
};
|
||
|
StatJob* stat( KURL, bool, int, bool );
|
||
|
class TransferJob : public Job {};
|
||
|
TransferJob* get( KURL, bool, bool );
|
||
|
TransferJob* put( KURL, int, bool, bool, bool );
|
||
|
};
|
||
|
|
||
|
typedef QProgressBar KProgress;
|
||
|
|
||
|
class KInstance : public QObject
|
||
|
{
|
||
|
public:
|
||
|
KInstance(KAboutData*){}
|
||
|
};
|
||
|
|
||
|
namespace KParts
|
||
|
{
|
||
|
class MainWindow : public KMainWindow
|
||
|
{
|
||
|
public:
|
||
|
MainWindow( QWidget* parent, const char* name ) : KMainWindow(parent,name) {}
|
||
|
void setXMLFile(const QString&){}
|
||
|
void setAutoSaveSettings(){}
|
||
|
void saveMainWindowSettings(KConfig*){}
|
||
|
void applyMainWindowSettings(KConfig*){}
|
||
|
int factory(){return 0;}
|
||
|
};
|
||
|
|
||
|
class Part : public QObject
|
||
|
{
|
||
|
public:
|
||
|
KActionCollection* actionCollection();
|
||
|
KApplication* instance();
|
||
|
void setWidget( QWidget* w ){ m_pWidget=w; }
|
||
|
QWidget* widget(){return m_pWidget;}
|
||
|
void setXMLFile(const QString&){}
|
||
|
private:
|
||
|
QWidget* m_pWidget;
|
||
|
};
|
||
|
|
||
|
class ReadOnlyPart : public Part
|
||
|
{
|
||
|
public:
|
||
|
ReadOnlyPart(){}
|
||
|
ReadOnlyPart(QObject*,const QCString&){}
|
||
|
void setInstance( KInstance* ){}
|
||
|
QString m_file;
|
||
|
};
|
||
|
|
||
|
class ReadWritePart : public ReadOnlyPart
|
||
|
{
|
||
|
public:
|
||
|
ReadWritePart(QObject*,const QCString&){}
|
||
|
void setReadWrite(bool){}
|
||
|
};
|
||
|
|
||
|
class Factory : public KLibFactory
|
||
|
{
|
||
|
Q_OBJECT
|
||
|
public:
|
||
|
virtual KParts::Part* createPartObject( QWidget *parentWidget, const char *widgetName,
|
||
|
QObject *parent, const char *name,
|
||
|
const char *classname, const QStringList &args )=0;
|
||
|
};
|
||
|
};
|
||
|
#endif
|
||
|
|
||
|
|