diff options
Diffstat (limited to 'languages/ruby/rubysupport_part.h')
-rw-r--r-- | languages/ruby/rubysupport_part.h | 74 |
1 files changed, 74 insertions, 0 deletions
diff --git a/languages/ruby/rubysupport_part.h b/languages/ruby/rubysupport_part.h new file mode 100644 index 00000000..0d420cff --- /dev/null +++ b/languages/ruby/rubysupport_part.h @@ -0,0 +1,74 @@ +/* + * Copyright (C) 2003 Marek Janukowicz <[email protected]> + */ + + +#ifndef __KDEVPART_RUBYSUPPORT_H__ +#define __KDEVPART_RUBYSUPPORT_H__ + +#include <qguardedptr.h> + +#include "kdevlanguagesupport.h" + +class KDialogBase; +class QPopupMenu; +class Context; +class KDevShellWidget; + +class RubySupportPart : public KDevLanguageSupport +{ + Q_OBJECT + +public: + + RubySupportPart(QObject *parent, const char *name, const QStringList &); + virtual ~RubySupportPart(); + + virtual KDevDesignerIntegration *designer(KInterfaceDesigner::DesignerType type); + +protected: + virtual Features features(); + virtual KMimeType::List mimeTypes(); + +private slots: + void projectConfigWidget(KDialogBase *dlg); + void projectOpened(); + void projectClosed(); + void savedFile(const KURL &fileName); + void addedFilesToProject(const QStringList &fileList); + void removedFilesFromProject(const QStringList &fileList); + void slotRun(); + void slotRunTestUnderCursor(); + void slotCreateSubclass(); + void contextMenu(QPopupMenu *popup, const Context *context); + void slotBrowse(); + + void initialParse(); + + void slotSwitchToController(); + void slotSwitchToView(); + void slotSwitchToModel(); + void slotSwitchToTest(); + +private: + void startApplication(const QString &program); + QString interpreter(); + QString shell(); + QString mainProgram(); + QString runDirectory(); + QString programArgs(); + QString characterCoding(); + + void maybeParse(const QString fileName); + void parse(const QString &fileName); + + QMap<KInterfaceDesigner::DesignerType, KDevDesignerIntegration*> m_designers; + + QString m_contextFileName; + QCString m_shell; + + QGuardedPtr<KDevShellWidget> m_shellWidget; +}; + + +#endif |