ui: Added custom trail dialog (issue #249)

* open custom trail dialg via button in top of trail controls
* search from symbol to symbol or all referenced/referencing of symbol
* define search depth with slider
* define horizontal/vertical layout
* define node and edge types
* renamed depth graph to trail in graph ui
* added custom trail UI tests

fortune cookie message = A happy surprise is waiting for you.
This commit is contained in:
Eberhard Graether
2019-07-29 11:25:34 +02:00
parent 6a2c59f3e5
commit 68c9782e33
54 changed files with 1740 additions and 130 deletions
@@ -2,19 +2,48 @@
#define MESSAGE_ACTIVATE_TRAIL_H
#include "Message.h"
#include "types.h"
#include "MessageActivateBase.h"
#include "NodeType.h"
#include "TabId.h"
#include "types.h"
class MessageActivateTrail
: public Message<MessageActivateTrail>
, public MessageActivateBase
{
public:
MessageActivateTrail(Id originId, Id targetId, Edge::TypeMask trailType, size_t depth, bool horizontalLayout)
MessageActivateTrail(
Id originId, Id targetId, Edge::TypeMask edgeTypes, size_t depth, bool horizontalLayout
)
: originId(originId)
, targetId(targetId)
, trailType(trailType)
, nodeTypes(0)
, edgeTypes(edgeTypes)
, nodeNonIndexed(false)
, depth(depth)
, horizontalLayout(horizontalLayout)
, custom(false)
{
setSchedulerId(TabId::currentTab());
}
MessageActivateTrail(
Id originId,
Id targetId,
NodeType::TypeMask nodeTypes,
Edge::TypeMask edgeTypes,
bool nodeNonIndexed,
size_t depth,
bool horizontalLayout
)
: originId(originId)
, targetId(targetId)
, nodeTypes(nodeTypes)
, edgeTypes(edgeTypes)
, nodeNonIndexed(nodeNonIndexed)
, depth(depth)
, horizontalLayout(horizontalLayout)
, custom(true)
{
setSchedulerId(TabId::currentTab());
}
@@ -24,11 +53,21 @@ public:
return "MessageActivateTrail";
}
std::vector<SearchMatch> getSearchMatches() const override
{
return searchMatches;
}
std::vector<SearchMatch> searchMatches;
const Id originId;
const Id targetId;
const Edge::TypeMask trailType;
const NodeType::TypeMask nodeTypes;
const Edge::TypeMask edgeTypes;
const bool nodeNonIndexed;
const size_t depth;
const bool horizontalLayout;
const bool custom;
};
#endif // MESSAGE_ACTIVATE_TRAIL_H
@@ -0,0 +1,20 @@
#ifndef MESSAGE_CUSTOM_TRAIL_SHOW_H
#define MESSAGE_CUSTOM_TRAIL_SHOW_H
#include "Message.h"
class MessageCustomTrailShow
: public Message<MessageCustomTrailShow>
{
public:
MessageCustomTrailShow()
{
}
static const std::string getStaticType()
{
return "MessageCustomTrailShow";
}
};
#endif // MESSAGE_CUSTOM_TRAIL_SHOW_H