|
|
|
/***************************************************************************
|
|
|
|
instance.h - description
|
|
|
|
-------------------
|
|
|
|
begin : Tue Aug 13 2002
|
|
|
|
copyright : (C) 2002 by Marc Britton <consume@optushome.com.au>
|
|
|
|
(C) 2004 by Andras Mantia <amantia@kde.org>
|
|
|
|
(C) 2004 by Michal Rudolf <mrudolf@kdewebdev.org>
|
|
|
|
***************************************************************************/
|
|
|
|
|
|
|
|
/***************************************************************************
|
|
|
|
* *
|
|
|
|
* 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 INSTANCE_H
|
|
|
|
#define INSTANCE_H
|
|
|
|
|
|
|
|
/* QT INCLUDES */
|
|
|
|
#include <tqstring.h>
|
|
|
|
#include <tqstringlist.h>
|
|
|
|
#include <tqobject.h>
|
|
|
|
#include <tqmap.h>
|
|
|
|
#include <tqguardedptr.h>
|
|
|
|
|
|
|
|
/* KDE INCLUDES */
|
|
|
|
#include <kurl.h>
|
|
|
|
|
|
|
|
/* OTHER INCLUDES */
|
|
|
|
#include "dcopkommanderif.h"
|
|
|
|
|
|
|
|
/* FORWARD DECLARATIONS */
|
|
|
|
class TQWidget;
|
|
|
|
class TQDialog;
|
|
|
|
class TQFile;
|
|
|
|
class KommanderWidget;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
class Instance : public TQObject, virtual public DCOPKommanderIf
|
|
|
|
{
|
|
|
|
Q_OBJECT
|
|
|
|
TQ_OBJECT
|
|
|
|
|
|
|
|
public:
|
|
|
|
Instance();
|
|
|
|
Instance(TQWidget*);
|
|
|
|
~Instance();
|
|
|
|
/* passing global variables: two forms are accepted.
|
|
|
|
kdmr-executor file.kmdr COUNT=45 PATH=/tmp - this adds global variables 45 and PATH
|
|
|
|
kmdr-executor file.kmdr 45 /tmp - this adds global variables ARG1 and ARG2
|
|
|
|
ARGS holds space-separated list of all second-type variables (like Bash $@)
|
|
|
|
ARGCOUNT holds number of second-type arguments
|
|
|
|
*/
|
|
|
|
virtual void addCmdlineArguments(const TQStringList& args);
|
|
|
|
|
|
|
|
//DCOP methods. The documentation is in the widgets/specials.cpp file.
|
|
|
|
virtual void setEnabled(const TQString& widgetName, bool enable);
|
|
|
|
virtual void enableWidget(const TQString& widgetName, bool enable); /* DEPRECATED */
|
|
|
|
virtual void setVisible(const TQString& widgetName, bool enable);
|
|
|
|
virtual void setText(const TQString& widgetName, const TQString& text);
|
|
|
|
virtual void changeWidgetText(const TQString& widgetName, const TQString& text); /* DEPRECATED */
|
|
|
|
virtual TQString text(const TQString& widgetName);
|
|
|
|
virtual void setSelection(const TQString& widgetName, const TQString& text);
|
|
|
|
virtual void setCurrentListItem(const TQString& widgetName, const TQString& text); /* DEPRECATED */
|
|
|
|
virtual TQString selection(const TQString& widgetName);
|
|
|
|
virtual int currentItem(const TQString &widgetName);
|
|
|
|
virtual TQString item(const TQString &widgetName, int index);
|
|
|
|
virtual int itemDepth(const TQString &widgetName, int index);
|
|
|
|
virtual TQString itemPath(const TQString &widgetName, int index);
|
|
|
|
virtual void removeItem(const TQString &widgetName, int index);
|
|
|
|
virtual void removeListItem(const TQString &widgetName, int index); /* DEPRECATED */
|
|
|
|
virtual void insertItem(const TQString &widgetName, const TQString &item, int index);
|
|
|
|
virtual void addListItem(const TQString &widgetName, const TQString &item, int index); /* DEPRECATED */
|
|
|
|
virtual void setPixmap(const TQString &widgetName, const TQString &iconName, int index);
|
|
|
|
virtual void insertItems(const TQString &widgetName, const TQStringList &items, int index);
|
|
|
|
virtual void addListItems(const TQString &widgetName, const TQStringList &items, int index);/*DEPRECATED*/
|
|
|
|
virtual void addUniqueItem(const TQString &widgetName, const TQString &item);
|
|
|
|
virtual int findItem(const TQString &widgetName, const TQString &item);
|
|
|
|
virtual void clear(const TQString &widgetName);
|
|
|
|
virtual void clearList(const TQString &widgetName); /* DEPRECATED */
|
|
|
|
virtual void setCurrentItem(const TQString &widgetName, int index);
|
|
|
|
virtual void setCurrentTab(const TQString &widgetName, int index); /* DEPRECATED */
|
|
|
|
virtual void insertTab(const TQString &widgetName, const TQString &label, int index);
|
|
|
|
virtual void setChecked(const TQString &widgetName, bool checked);
|
|
|
|
virtual bool checked(const TQString &widgetName);
|
|
|
|
virtual void setAssociatedText(const TQString &widgetName, const TQString &text);
|
|
|
|
virtual TQStringList associatedText(const TQString &widgetName);
|
|
|
|
virtual TQString type(const TQString& widget);
|
|
|
|
virtual TQStringList tqchildren(const TQString& tqparent, bool recursive);
|
|
|
|
virtual TQString global(const TQString& variableName);
|
|
|
|
virtual void setGlobal(const TQString& variableName, const TQString& value);
|
|
|
|
virtual void setMaximum(const TQString &widgetName, int value);
|
|
|
|
virtual TQString execute(const TQString &widgetName);
|
|
|
|
virtual void cancel(const TQString &widgetName);
|
|
|
|
virtual int count(const TQString &widgetName);
|
|
|
|
virtual int currentColumn(const TQString &widgetName);
|
|
|
|
virtual int currentRow(const TQString &widgetName);
|
|
|
|
virtual void insertRow(const TQString &widgetName, int row, int count);
|
|
|
|
virtual void insertColumn(const TQString &widgetName, int column, int count);
|
|
|
|
virtual void setCellText(const TQString &widgetName, int row, int column, const TQString& text);
|
|
|
|
virtual TQString cellText(const TQString &widgetName, int row, int column);
|
|
|
|
virtual void removeRow(const TQString &widgetName, int row, int count);
|
|
|
|
virtual void removeColumn(const TQString &widgetName, int column, int count);
|
|
|
|
virtual void setRowCaption(const TQString &widgetName, int row, const TQString& text);
|
|
|
|
virtual void setColumnCaption(const TQString &widgetName, int column, const TQString& text);
|
|
|
|
virtual int getWinID();
|
|
|
|
virtual void setBusyCursor(bool busy);
|
|
|
|
TQWidget *widget() { return m_instance;}
|
|
|
|
|
|
|
|
public slots:
|
|
|
|
/** Sets the instance's tqparent */
|
|
|
|
void setParent(TQWidget*);
|
|
|
|
/** Returns whether the instance is built */
|
|
|
|
bool isBuilt() const;
|
|
|
|
/** Builds the instance. Uses stdin if no filename is given */
|
|
|
|
bool build(const KURL& fname);
|
|
|
|
/** Executes the instance which was built before */
|
|
|
|
bool run();
|
|
|
|
private:
|
|
|
|
/** Check if the file exists, has correct extension and is not in a temporary (insecure) directory */
|
|
|
|
bool isFileValid(const KURL& fname) const;
|
|
|
|
/* Dialog Instance */
|
|
|
|
TQGuardedPtr<TQWidget> m_instance;
|
|
|
|
/* Associated Text Instance */
|
|
|
|
KommanderWidget *m_textInstance;
|
|
|
|
/** The tqparent widget */
|
|
|
|
TQWidget *m_parent;
|
|
|
|
/* Get object by name */
|
|
|
|
TQObject* stringToWidget(const TQString& name);
|
|
|
|
/* Cast to Kommander widget if possible */
|
|
|
|
KommanderWidget* kommanderWidget(TQObject* object);
|
|
|
|
};
|
|
|
|
|
|
|
|
#endif
|