kexi

metaobject.h
1/***************************************************************************
2 * This file is part of the KDE project
3 * copyright (C) 2005 by Sebastian Sauer (mail@dipe.org)
4 * copyright (C) 2005 by Tobi Krebs (tobi.krebs@gmail.com)
5 *
6 * This program is free software; you can redistribute it and/or
7 * modify it under the terms of the GNU Library General Public
8 * License as published by the Free Software Foundation; either
9 * version 2 of the License, or (at your option) any later version.
10 * This program is distributed in the hope that it will be useful,
11 * but WITHOUT ANY WARRANTY; without even the implied warranty of
12 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
13 * Library General Public License for more details.
14 * You should have received a copy of the GNU Library General Public License
15 * along with this program; see the file COPYING. If not, write to
16 * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
17 * Boston, MA 02110-1301, USA.
18 ***************************************************************************/
19
20#ifndef KOMACRO_METAOBJECT_H
21#define KOMACRO_METAOBJECT_H
22
23#include <tqobject.h>
24#include <ksharedptr.h>
25
26#include "komacro_export.h"
27
28namespace KoMacro {
29
30 // forward declarations.
31 class Variable;
32 class MetaMethod;
33
41 class KOMACRO_EXPORT MetaObject : public TDEShared
42 {
43 public:
44
51 explicit MetaObject(TQObject* const object);
52
57
62 TQObject* const object() const;
63
64 //TQStrList signalNames() const;
65 //TQStrList slotNames() const;
66
70 int indexOfSignal(const char* signal) const;
71
75 int indexOfSlot(const char* slot) const;
76
81 TDESharedPtr<MetaMethod> method(int index);
82
86 TDESharedPtr<MetaMethod> signal(const char* signal);
87
91 TDESharedPtr<MetaMethod> slot(const char* slot);
92
93//TDESharedPtr<MetaMethod> addSlot(const char* slot);
94//void connectSignal(TQObject* obj, const char* signal);
95
107 TDESharedPtr<Variable> invokeMethod(int index, TQValueList< TDESharedPtr<Variable> > arguments);
108
109 private:
111 class Private;
113 Private* const d;
114 };
115
116}
117
118#endif
Class to provide abstract methods for the undocumented TQt3 TQUObject-API functionality.
Definition metamethod.h:47
int indexOfSlot(const char *slot) const
TDESharedPtr< MetaMethod > slot(const char *slot)
TDESharedPtr< MetaMethod > signal(const char *signal)
TDESharedPtr< MetaMethod > method(int index)
TQObject *const object() const
MetaObject(TQObject *const object)
Constructor.
int indexOfSignal(const char *signal) const
TDESharedPtr< Variable > invokeMethod(int index, TQValueList< TDESharedPtr< Variable > > arguments)
Invoke the MetaMethod that has the index index .
A variable value used to provide abstract access to variables.
Definition variable.h:39