cutter/src/widgets/GraphHorizontalAdapter.h

27 lines
755 B
C
Raw Normal View History

#ifndef GRAPH_HORIZONTAL_ADAPTER_H
#define GRAPH_HORIZONTAL_ADAPTER_H
#include "core/Cutter.h"
#include "GraphLayout.h"
#include <memory>
/**
* @brief Adapter for converting vertical graph layout into horizontal one.
*/
class GraphHorizontalAdapter : public GraphLayout
{
public:
GraphHorizontalAdapter(std::unique_ptr<GraphLayout> layout);
virtual void CalculateLayout(GraphLayout::Graph &blocks,
ut64 entry,
int &width,
int &height) const override;
void setLayoutConfig(const LayoutConfig &config) override;
private:
std::unique_ptr<GraphLayout> layout;
void swapLayoutConfigDirection();
};
#endif // GRAPH_HORIZONTAL_ADAPTER_H