From 43053b8b1ed8dade310703b08358b1b702897eaf Mon Sep 17 00:00:00 2001 From: "N.N." Date: Thu, 20 Sep 2007 08:25:26 +0000 Subject: new gui external: tracker svn path=/trunk/externals/ffext/; revision=8739 --- tracker/tracker.h | 61 +++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 61 insertions(+) create mode 100644 tracker/tracker.h (limited to 'tracker/tracker.h') diff --git a/tracker/tracker.h b/tracker/tracker.h new file mode 100644 index 0000000..7df761c --- /dev/null +++ b/tracker/tracker.h @@ -0,0 +1,61 @@ +/* Copyright (c) 2007 Federico Ferri + * For information on usage and redistribution, and for a DISCLAIMER OF ALL + * WARRANTIES, see the file, "LICENSE.txt," in this distribution. */ + +#ifndef __G_GRID_H +#define __G_GRID_H + +#include +#include "m_pd.h" +#include "m_imp.h" +#include "g_canvas.h" +#include "s_stuff.h" +#include "t_tk.h" +#include +#include + +#define MAX_BUF 10 + +typedef struct _tracker +{ + t_object x_obj; + t_glist *x_glist; + t_int x_selected; // selected flag (in edit mode) + t_int x_columns; // # of cols + t_int x_rows; // # of rows + t_int x_active_row; // selected item row + t_int x_active_column; // selected item col + t_int x_ndigits; // cell width (+1 of margin added automatically) + t_int x_cursor_pos; // visual cursor position (row indicator) + char x_buf[MAX_BUF+1]; // edit buffer + t_int x_cell_width; // cell width in pixels (auto computed) + t_int x_cell_height; // cell height in pixels (auto computed) + t_float** x_data; // data (2d matrix) + t_outlet* outlet0; // outlet +} t_tracker; + +static void tracker_draw_new(t_tracker* x, t_glist* glist); +static void tracker_draw_update(t_tracker* x); +static void tracker_draw_move(t_tracker* x, t_glist* glist); +static void tracker_draw_erase(t_tracker* x, t_glist* glist); +static void tracker_draw_select(t_tracker* x, t_glist* glist); +static void tracker_getrect(t_gobj* z, t_glist* owner, int* xp1, int* yp1, int* xp2, int* yp2); +static void tracker_save(t_gobj* z, t_binbuf* b); +static void tracker_properties(t_gobj* z, t_glist* owner); +static void tracker_dialog(t_tracker* x, t_symbol* s, int argc, t_atom* argv); +static void tracker_select(t_gobj* z, t_glist* glist, int selected); +static void tracker_vis(t_gobj* z, t_glist* glist, int vis); +static void tracker_delete(t_gobj* z, t_glist* glist); +static void tracker_displace(t_gobj* z, t_glist* glist, int dx, int dy); +static void tracker_resize(t_tracker* x, int newrows, int newcols); +static void tracker_free(t_tracker* x); +static void tracker_getrow(t_tracker* x, t_float row); +static void tracker_setrow(t_tracker* x, t_symbol* s, int argc, t_atom* argv); +static void tracker_getitem(t_tracker* x, t_float row, t_float col); +static void tracker_setitem(t_tracker* x, t_float row, t_float col, t_float val); +static void tracker_motion(t_tracker* x, t_floatarg dx, t_floatarg dy); +static void tracker_select_item(t_tracker* x, int r, int c); +static void tracker_select_movecur(t_tracker* x, int dx, int dy); +void tracker_setup(void); + +#endif // __G_GRID_H -- cgit v1.2.1