#ifndef CODE_CONTROLLER_H #define CODE_CONTROLLER_H #include #include "component/controller/Controller.h" #include "component/view/CodeView.h" #include "utility/messaging/MessageListener.h" #include "utility/messaging/type/MessageActivateTokenLocation.h" #include "utility/messaging/type/MessageActivateTokens.h" #include "utility/messaging/type/MessageFinishedParsing.h" #include "utility/messaging/type/MessageRefresh.h" #include "utility/messaging/type/MessageShowFile.h" #include "utility/types.h" class StorageAccess; class TokenLocationFile; class CodeController : public Controller , public MessageListener , public MessageListener , public MessageListener , public MessageListener , public MessageListener { public: CodeController(StorageAccess* storageAccess); ~CodeController(); private: static const uint s_lineRadius; virtual void handleMessage(MessageActivateTokenLocation* message); virtual void handleMessage(MessageActivateTokens* message); virtual void handleMessage(MessageFinishedParsing* message); virtual void handleMessage(MessageRefresh* message); virtual void handleMessage(MessageShowFile* message); CodeView* getView(); std::vector getSnippetsForActiveTokenIds( const std::vector& ids, Id declarationId) const; std::vector getSnippetsForFile(const TokenLocationFile* file) const; std::vector> getSnippetRangesForFile(const TokenLocationFile* file) const; StorageAccess* m_storageAccess; }; #endif // CODE_CONTROLLER_H