Files
Sourcetrail/src/lib/component/view/GraphView.h
T
Eberhard Graether 01864b4d0c ui: Added custom tooltipping to code and graph (issue #195)
* Tooltips show node type with access specifier, reference count and fully qualified name
* Fields and global variables include the type name
* Methods and functinos show whole signature. Gets broken into multiple lines if too long.

Included changes:

* Upgraded to C++14
* fixed clang warnings
* Pass location of .srctrlprj file to build.sh script to load on launch
* Split off QtCodeField for showing highlighted and annotated code fom QtCodeArea
* removed TokenComponentSignature
* added TaskDecoratorDelay

bug id = 195
2017-07-31 12:45:22 +02:00

55 lines
1.1 KiB
C++

#ifndef GRAPH_VIEW_H
#define GRAPH_VIEW_H
#include <vector>
#include "utility/math/Vector2.h"
#include "utility/types.h"
#include "component/view/View.h"
struct DummyEdge;
struct DummyNode;
class Graph;
class GraphView
: public View
{
public:
static const char* VIEW_NAME;
struct GraphParams
{
bool animatedTransition;
bool centerActiveNode;
bool scrollToTop;
bool isIndexedList;
bool bezierEdges;
};
GraphView(ViewLayout* viewLayout);
virtual ~GraphView();
virtual std::string getName() const;
virtual void rebuildGraph(
std::shared_ptr<Graph> graph,
const std::vector<std::shared_ptr<DummyNode>>& nodes,
const std::vector<std::shared_ptr<DummyEdge>>& edges,
const GraphParams params) = 0;
virtual void clear() = 0;
virtual void focusTokenIds(const std::vector<Id>& focusedTokenIds) = 0;
virtual void defocusTokenIds(const std::vector<Id>& defocusedTokenIds) = 0;
virtual void resizeView() = 0;
virtual Vec2i getViewSize() const = 0;
virtual void scrollToValues(int xValue, int yValue) = 0;
virtual void activateEdge(Id edgeId, bool centerOrigin) = 0;
};
#endif // GRAPH_VIEW_H