data: showing local symbols

- added local symbols to storage
- added tests for local symbol parsing
- added MessageActivateLocalSymbols to activate local symbols in code view
- TokenLocations now store their LocationType instead of a plain bool "isScope"
- moved LocationType from TokenLocation to separate file, since it is also used in Annotations now.
- added local_symbol in stylesheet to define a style for hovering and activating these elements
- renamed location to token in stylesheet
This commit is contained in:
malte_langkabel
2016-04-12 13:28:37 +02:00
parent a448485b35
commit b9c4bd05cd
38 changed files with 767 additions and 299 deletions
+5 -2
View File
@@ -7,6 +7,7 @@
#include <QPlainTextEdit>
#include "data/location/LocationType.h"
#include "utility/types.h"
class QDragMoveEvent;
@@ -124,7 +125,7 @@ private:
Id tokenId;
Id locationId;
bool isScope;
LocationType locationType;
bool isError;
bool isActive;
@@ -137,7 +138,9 @@ private:
std::string fill;
};
std::vector<const Annotation*> getAnnotationsForPosition(int pos) const;
std::vector<const Annotation*> getNonScopeAnnotationsForPosition(int pos) const;
void activateTokenLocations(const std::vector<const Annotation*>& annotations);
void activateLocalSymbols(const std::vector<const Annotation*>& annotations);
void createAnnotations(std::shared_ptr<TokenLocationFile> locationFile);
void annotateText();