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.
kdiff3/src/kreplacements/kreplacements.h

513 lines
15 KiB

/***************************************************************************
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 <tqobject.h>
#include <tqtabdialog.h>
#include <tqmainwindow.h>
#include <tqaction.h>
#include <tqfiledialog.h>
#include <tqapplication.h>
#include <tqvbox.h>
#include <tqpushbutton.h>
#include <statusbar.h>
#include <tqtoolbar.h>
#include <tqprogressbar.h>
#include <tqpopupmenu.h>
#include <tqstringlist.h>
#include <tqprinter.h>
#include <map>
#include <list>
TQString getTranslationDir();
class TDEMainWindow;
class KURL
{
public:
KURL(){}
KURL(const TQString& s){ m_s = s; }
static KURL fromPathOrURL( const TQString& s ){ return KURL(s); }
TQString url() const { return m_s; }
bool isEmpty() const { return m_s.isEmpty(); }
TQString prettyURL() const { return m_s; }
bool isLocalFile() const { return true; }
bool isValid() const { return true; }
TQString path() const { return m_s; }
void setPath( const TQString& s ){ m_s=s; }
TQString fileName() const { return m_s; } // not really needed
void addPath( const TQString& s ){ m_s += "/" + s; }
private:
TQString m_s;
};
class KMessageBox
{
public:
static void error( TQWidget* parent, const TQString& text, const TQString& caption=TQString() );
static int warningContinueCancel( TQWidget* parent, const TQString& text, const TQString& caption=TQString(),
const TQString& button1=TQString("Continue") );
static void sorry( TQWidget* parent, const TQString& text, const TQString& caption=TQString() );
static void information( TQWidget* parent, const TQString& text, const TQString& caption=TQString() );
static int warningYesNo( TQWidget* parent, const TQString& text, const TQString& caption,
const TQString& button1, const TQString& button2 );
static int warningYesNoCancel(
TQWidget* parent, const TQString& text, const TQString& caption,
const TQString& button1, const TQString& button2 );
enum {Cancel=-1, No=0, Yes=1, Continue=1};
};
#define i18n(x) TQObject::tr(x)
#define I18N_NOOP(x) x
#define RESTORE(x)
#define _UNLOAD(x)
typedef TQPopupMenu TDEPopupMenu;
class KDialogBase : public TQTabDialog
{
Q_OBJECT
public:
KDialogBase( int, const TQString& caption, int, int, TQWidget* parent, const char* name,
bool /*modal*/, bool );
~KDialogBase();
void incInitialSize ( const TQSize& );
void setHelp(const TQString& helpfilename, const TQString& );
enum {IconList, Help, Default, Apply, Ok, Cancel };
int BarIcon(const TQString& iconName, int );
TQVBox* addVBoxPage( const TQString& name, const TQString& info, int );
TQFrame* addPage( const TQString& name, const TQString& 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 TQFileDialog
{
public:
static KURL getSaveURL( const TQString &startDir=TQString(),
const TQString &filter=TQString(),
TQWidget *parent=0, const TQString &caption=TQString());
static KURL getOpenURL( const TQString & startDir = TQString(),
const TQString & filter = TQString(),
TQWidget * parent = 0,
const TQString & caption = TQString() );
static KURL getExistingURL( const TQString & startDir = TQString(),
TQWidget * parent = 0,
const TQString & caption = TQString() );
static TQString getSaveFileName (const TQString &startDir=TQString(),
const TQString &filter=TQString(),
TQWidget *parent=0,
const TQString &caption=TQString());
};
typedef TQStatusBar KStatusBar;
class TDEToolBar : public TQToolBar
{
public:
TDEToolBar(TQMainWindow* parent);
enum BarPosition {Top, Bottom, Left, Right};
BarPosition barPos();
void setBarPos(BarPosition);
private:
TQMainWindow* m_pMainWindow;
};
class TDEActionCollection
{
public:
TDEMainWindow* m_pMainWindow;
TDEActionCollection( TDEMainWindow* p){ m_pMainWindow=p; }
};
class KKeyDialog
{
public:
static void configure(void*, TQWidget*){}
static void configureKeys(TDEActionCollection*, const TQString&){}
static void configure(TDEActionCollection*, const TQString&){}
};
namespace KParts
{
class ReadWritePart;
}
class TDEMainWindow : public TQMainWindow
{
Q_OBJECT
private:
KStatusBar m_statusBar;
TDEActionCollection m_actionCollection;
protected:
virtual bool queryClose() = 0;
virtual bool queryExit() = 0;
public:
TQPopupMenu* fileMenu;
TQPopupMenu* editMenu;
TQPopupMenu* directoryMenu;
TQPopupMenu* dirCurrentItemMenu;
TQPopupMenu* dirCurrentSyncItemMenu;
TQPopupMenu* movementMenu;
TQPopupMenu* mergeMenu;
TQPopupMenu* diffMenu;
TQPopupMenu* windowsMenu;
TQPopupMenu* settingsMenu;
TQPopupMenu* helpMenu;
TDEToolBar* m_pToolBar;
TDEMainWindow( TQWidget* parent, const char* name );
TDEToolBar* toolBar(const TQString& s = TQString());
TDEActionCollection* actionCollection();
void createGUI();
void createGUI(KParts::ReadWritePart*){createGUI();}
TQList<TDEMainWindow>* memberList;
public slots:
void slotHelp();
void slotAbout();
};
class TDEConfig : public ValueMap
{
TQString m_fileName;
public:
TDEConfig();
~TDEConfig();
void readConfigFile(const TQString& configFileName);
void setGroup(const TQString&);
};
class TDEAction : public TQAction
{
Q_OBJECT
public:
TDEAction(const TQString& text, const TQIconSet& icon, int accel, TQObject* receiver, const char* slot, TDEActionCollection* actionCollection, const char* name, bool bToggle=false, bool bMenu=true);
TDEAction(const TQString& text, int accel, TQObject* receiver, const char* slot, TDEActionCollection* actionCollection, const char* name, bool bToggle=false, bool bMenu=true);
void init(TQObject* receiver, const char* slot, TDEActionCollection* actionCollection,
const char* name, bool bToggle, bool bMenu);
void setStatusText(const TQString&);
void plug(TQPopupMenu*);
};
class TDEToggleAction : public TDEAction
{
public:
TDEToggleAction(const TQString& text, const TQIconSet& icon, int accel, TQObject* receiver, const char* slot, TDEActionCollection* actionCollection, const char* name, bool bMenu=true);
TDEToggleAction(const TQString& text, int accel, TQObject* receiver, const char* slot, TDEActionCollection* actionCollection, const char* name, bool bMenu=true);
TDEToggleAction(const TQString& text, const TQIconSet& icon, int accel, TDEActionCollection* actionCollection, const char* name, bool bMenu=true);
void setChecked(bool);
bool isChecked();
};
class KStdAction
{
public:
static TDEAction* open( TQWidget* parent, const char* slot, TDEActionCollection* );
static TDEAction* save( TQWidget* parent, const char* slot, TDEActionCollection* );
static TDEAction* saveAs( TQWidget* parent, const char* slot, TDEActionCollection* );
static TDEAction* print( TQWidget* parent, const char* slot, TDEActionCollection* );
static TDEAction* quit( TQWidget* parent, const char* slot, TDEActionCollection* );
static TDEAction* cut( TQWidget* parent, const char* slot, TDEActionCollection* );
static TDEAction* copy( TQWidget* parent, const char* slot, TDEActionCollection* );
static TDEAction* paste( TQWidget* parent, const char* slot, TDEActionCollection* );
static TDEAction* selectAll( TQWidget* parent, const char* slot, TDEActionCollection* );
static TDEToggleAction* showToolbar( TQWidget* parent, const char* slot, TDEActionCollection* );
static TDEToggleAction* showStatusbar( TQWidget* parent, const char* slot, TDEActionCollection* );
static TDEAction* preferences( TQWidget* parent, const char* slot, TDEActionCollection* );
static TDEAction* about( TQWidget* parent, const char* slot, TDEActionCollection* );
static TDEAction* aboutTQt( TDEActionCollection* );
static TDEAction* help( TQWidget* parent, const char* slot, TDEActionCollection* );
static TDEAction* find( TQWidget* parent, const char* slot, TDEActionCollection* );
static TDEAction* findNext( TQWidget* parent, const char* slot, TDEActionCollection* );
static TDEAction* keyBindings( TQWidget* parent, const char* slot, TDEActionCollection* );
};
class KIcon
{
public:
enum {SizeMedium,Small};
};
class TDEFontChooser : public TQWidget
{
Q_OBJECT
TQFont m_font;
TQPushButton* m_pSelectFont;
TQLabel* m_pLabel;
TQWidget* m_pParent;
public:
TDEFontChooser( TQWidget* pParent, const TQString& name, bool, const TQStringList&, bool, int );
TQFont font();
void setFont( const TQFont&, bool );
private slots:
void slotSelectFont();
};
class KColorButton : public TQPushButton
{
Q_OBJECT
TQColor m_color;
public:
KColorButton(TQWidget* parent);
TQColor color();
void setColor(const TQColor&);
virtual void paintEvent(TQPaintEvent* e);
public slots:
void slotClicked();
};
class KPrinter : public TQPrinter
{
public:
KPrinter();
enum e_PageSelection {ApplicationSide};
TQValueList<int> pageList();
void setCurrentPage(int);
void setPageSelection(e_PageSelection);
};
class TDEStandardDirs
{
public:
TQString findResource(const TQString& resource, const TQString& appName);
};
struct KCmdLineOptions
{
const char* name;
const char* description;
int def;
};
#define KCmdLineLastOption {0,0,0}
class TDEAboutData
{
public:
TDEAboutData( const TQString& name, const TQString& appName, const TQString& version,
const TQString& description, int licence,
const TQString& copyright, int w, const TQString& homepage, const TQString& email);
TDEAboutData( const TQString& name, const TQString& appName, const TQString& 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 TQString& name, const TQString& task, const TQString& email, const TQString& weblink)
: m_name(name), m_task(task), m_email(email), m_weblink(weblink)
{}
TQString m_name;
TQString m_task;
TQString m_email;
TQString m_weblink;
};
std::list<AboutDataEntry> m_authorList;
std::list<AboutDataEntry> m_creditList;
};
typedef TQValueList<TQCString> QCStringList;
class TDECmdLineArgs
{
public:
static TDECmdLineArgs* parsedArgs();
static void init( int argc, char**argv, TDEAboutData* );
static void addCmdLineOptions( KCmdLineOptions* options ); // Add our own options.
int count();
TQString arg(int);
KURL url(int i){ return KURL(arg(i)); }
void clear();
TQString getOption(const TQString&);
QCStringList getOptionList( const TQString& );
bool isSet(const TQString&);
};
class KIconLoader
{
public:
TQPixmap loadIcon(const TQString& name, int);
};
class TDEApplication : public TQApplication
{
TDEConfig m_config;
KIconLoader m_iconLoader;
public:
TDEApplication();
static TDEApplication* kApplication();
KIconLoader* iconLoader();
TDEConfig* config();
bool isRestored();
};
extern TDEApplication* kapp;
class KLibFactory : public TQObject
{
Q_OBJECT
public:
TQObject* create(TQObject*,const TQString&,const TQString&);
};
class KLibLoader
{
public:
static KLibLoader* self();
KLibFactory* factory(const TQString&);
};
class KEditToolbar : public TQDialog
{
public:
KEditToolbar( int ){}
};
class TDEGlobal
{
public:
static TDEConfig* config() { return 0; }
};
namespace TDEIO
{
enum UDSEntry {};
typedef TQValueList<UDSEntry> UDSEntryList;
class Job : public TQObject
{
public:
void kill(bool){}
bool error() {return false;}
void showErrorDialog( TQWidget* ) {}
};
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 TQProgressBar KProgress;
class TDEInstance : public TQObject
{
public:
TDEInstance(TDEAboutData*){}
};
namespace KParts
{
class MainWindow : public TDEMainWindow
{
public:
MainWindow( TQWidget* parent, const char* name ) : TDEMainWindow(parent,name) {}
void setXMLFile(const TQString&){}
void setAutoSaveSettings(){}
void saveMainWindowSettings(TDEConfig*){}
void applyMainWindowSettings(TDEConfig*){}
int factory(){return 0;}
};
class Part : public TQObject
{
public:
TDEActionCollection* actionCollection();
TDEApplication* instance();
void setWidget( TQWidget* w ){ m_pWidget=w; }
TQWidget* widget(){return m_pWidget;}
void setXMLFile(const TQString&){}
private:
TQWidget* m_pWidget;
};
class ReadOnlyPart : public Part
{
public:
ReadOnlyPart(){}
ReadOnlyPart(TQObject*,const TQCString&){}
void setInstance( TDEInstance* ){}
TQString m_file;
};
class ReadWritePart : public ReadOnlyPart
{
public:
ReadWritePart(TQObject*,const TQCString&){}
void setReadWrite(bool){}
};
class Factory : public KLibFactory
{
Q_OBJECT
public:
virtual KParts::Part* createPartObject( TQWidget *parentWidget, const char *widgetName,
TQObject *parent, const char *name,
const char *classname, const TQStringList &args )=0;
};
};
#endif