projects
/
ardour.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Unhardcode and increase bindable Lua-script-action count
[ardour.git]
/
libs
/
canvas
/
canvas
/
lookup_table.h
diff --git
a/libs/canvas/canvas/lookup_table.h
b/libs/canvas/canvas/lookup_table.h
index 5be33c1bca0d9df555acae60ee52ae7bc87fe87d..2877f7a727b194121231a5d075a5bb55bf74bc35 100644
(file)
--- a/
libs/canvas/canvas/lookup_table.h
+++ b/
libs/canvas/canvas/lookup_table.h
@@
-31,28
+31,27
@@
class OptimizingLookupTableTest;
namespace ArdourCanvas {
class Item;
namespace ArdourCanvas {
class Item;
-class Group;
class LIBCANVAS_API LookupTable
{
public:
class LIBCANVAS_API LookupTable
{
public:
- LookupTable (
Group
const &);
+ LookupTable (
Item
const &);
virtual ~LookupTable ();
virtual ~LookupTable ();
-
+
virtual std::vector<Item*> get (Rect const &) = 0;
virtual std::vector<Item*> items_at_point (Duple const &) const = 0;
virtual bool has_item_at_point (Duple const & point) const = 0;
protected:
virtual std::vector<Item*> get (Rect const &) = 0;
virtual std::vector<Item*> items_at_point (Duple const &) const = 0;
virtual bool has_item_at_point (Duple const & point) const = 0;
protected:
-
-
Group const & _group
;
+
+
Item const & _item
;
};
class LIBCANVAS_API DumbLookupTable : public LookupTable
{
public:
};
class LIBCANVAS_API DumbLookupTable : public LookupTable
{
public:
-
DumbLookupTable (Group
const &);
-
+
DumbLookupTable (Item
const &);
+
std::vector<Item*> get (Rect const &);
std::vector<Item*> items_at_point (Duple const &) const;
bool has_item_at_point (Duple const & point) const;
std::vector<Item*> get (Rect const &);
std::vector<Item*> items_at_point (Duple const &) const;
bool has_item_at_point (Duple const & point) const;
@@
-61,21
+60,21
@@
public:
class LIBCANVAS_API OptimizingLookupTable : public LookupTable
{
public:
class LIBCANVAS_API OptimizingLookupTable : public LookupTable
{
public:
- OptimizingLookupTable (
Group
const &, int);
+ OptimizingLookupTable (
Item
const &, int);
~OptimizingLookupTable ();
std::vector<Item*> get (Rect const &);
std::vector<Item*> items_at_point (Duple const &) const;
bool has_item_at_point (Duple const & point) const;
~OptimizingLookupTable ();
std::vector<Item*> get (Rect const &);
std::vector<Item*> items_at_point (Duple const &) const;
bool has_item_at_point (Duple const & point) const;
-
+
static int default_items_per_cell;
static int default_items_per_cell;
-
+
private:
private:
-
+
void area_to_indices (Rect const &, int &, int &, int &, int &) const;
void point_to_indices (Duple, int &, int &) const;
void area_to_indices (Rect const &, int &, int &, int &, int &) const;
void point_to_indices (Duple, int &, int &) const;
-
+
friend class ::OptimizingLookupTableTest;
friend class ::OptimizingLookupTableTest;
-
+
typedef std::vector<Item*> Cell;
int _items_per_cell;
int _dimension;
typedef std::vector<Item*> Cell;
int _items_per_cell;
int _dimension;