#ifndef __KDEVHTMLPART_H__ #define __KDEVHTMLPART_H__ #include #include #include /** @file kdevhtmlpart.h Customized KHTML part for KDevelop. */ class KAction; class KToolBarPopupAction; struct DocumentationHistoryEntry { KURL url; int id; DocumentationHistoryEntry() {} DocumentationHistoryEntry( const KURL& u ): url( u ) { id = abs( TQTime::currentTime().msecsTo( TQTime() ) ); // nasty, but should provide a reasonably unique number } }; /** Customized KHTML part for KDevelop. Used as HTML documentation and file viewer. Represents customized BrowserViewGUI mode of KHTMLPart. Provides also actions for: - reload; - stop; - duplicate; - print; - copy text; - back; - forward. . It has it's own popup menu and font/zoom settings. */ class KDevHTMLPart : public KHTMLPart { Q_OBJECT TQ_OBJECT public: enum Options { CanDuplicate=1, CanOpenInNewWindow=2 }; KDevHTMLPart(); void setContext(const TQString &context); TQString context() const; virtual bool openURL(const KURL &url); static TQString resolveEnvVarsInURL(const TQString& url); void setOptions(int options) { m_options = options; } signals: void fileNameChanged(KParts::ReadOnlyPart *part); protected slots: void slotStarted(KIO::Job *); void slotCompleted(); void slotCancelled(const TQString &errMsg); void openURLRequest(const KURL &url); void popup( const TQString & url, const TQPoint & p ); void slotReload(); void slotStop(); virtual void slotDuplicate() = 0; virtual void slotOpenInNewWindow(const KURL &url) = 0; void slotPrint(); void slotCopy(); void slotSelectionChanged(); void slotBack(); void slotForward(); void slotBackAboutToShow(); void slotForwardAboutToShow(); void slotPopupActivated( int id ); void addHistoryEntry(); private: TQValueList< DocumentationHistoryEntry > m_history; TQValueList< DocumentationHistoryEntry >::Iterator m_Current; KToolBarPopupAction* m_backAction; KToolBarPopupAction* m_forwardAction; bool m_restoring; TQString m_context; KAction *stopAction; KAction *reloadAction; KAction *duplicateAction; KAction *printAction; KAction *copyAction; int m_options; }; #endif