rtk_canvas.c File Reference

#include <assert.h>
#include <errno.h>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <math.h>
#include <gdk/gdkkeysyms.h>
#include "rtk.h"
#include "rtkprivate.h"

Defines

#define _GNU_SOURCE
#define DEBUG
#define DX(x)   (canvas->sizex / 2 + ((x) - canvas->ox) / canvas->sx)
#define DY(y)   (canvas->sizey / 2 - ((y) - canvas->oy) / canvas->sy)
#define LX(x)   (canvas->ox + (+(x) - canvas->sizex / 2) * canvas->sx)
#define LY(y)   (canvas->oy + (-(y) + canvas->sizey / 2) * canvas->sy)
#define TOL_MOVE   15

Enumerations

enum  {
  MOUSE_NONE, MOUSE_PAN, MOUSE_ZOOM, MOUSE_TRANS,
  MOUSE_ROT, MOUSE_SCALE
}
enum  { EVENT_PRESS, EVENT_MOTION, EVENT_RELEASE }

Functions

gboolean stest (GtkWidget *widget, GdkEventConfigure *event, gpointer user_data)
void stg_rtk_canvas_bgcolor (stg_rtk_canvas_t *canvas, double r, double g, double b)
void stg_rtk_canvas_calc (stg_rtk_canvas_t *canvas)
stg_rtk_canvas_tstg_rtk_canvas_create (stg_rtk_app_t *app)
void stg_rtk_canvas_destroy (stg_rtk_canvas_t *canvas)
void stg_rtk_canvas_export_image (stg_rtk_canvas_t *canvas, const char *filename, int format)
void stg_rtk_canvas_flash (stg_rtk_canvas_t *canvas, stg_rtk_fig_t *fig, int duration, int kill)
void stg_rtk_canvas_flash_update (stg_rtk_canvas_t *canvas)
void stg_rtk_canvas_get_origin (stg_rtk_canvas_t *canvas, double *ox, double *oy)
void stg_rtk_canvas_get_scale (stg_rtk_canvas_t *canvas, double *sx, double *sy)
void stg_rtk_canvas_get_size (stg_rtk_canvas_t *canvas, int *sizex, int *sizey)
int stg_rtk_canvas_isclosed (stg_rtk_canvas_t *canvas)
void stg_rtk_canvas_layer_show (stg_rtk_canvas_t *canvas, int layer, char show)
void stg_rtk_canvas_linewidth (stg_rtk_canvas_t *canvas, int width)
void stg_rtk_canvas_movemask (stg_rtk_canvas_t *canvas, int mask)
void stg_rtk_canvas_origin (stg_rtk_canvas_t *canvas, double ox, double oy)
stg_rtk_fig_tstg_rtk_canvas_pick_fig (stg_rtk_canvas_t *canvas, int x, int y)
void stg_rtk_canvas_render (stg_rtk_canvas_t *canvas)
void stg_rtk_canvas_scale (stg_rtk_canvas_t *canvas, double sx, double sy)
void stg_rtk_canvas_size (stg_rtk_canvas_t *canvas, int sizex, int sizey)
void stg_rtk_canvas_title (stg_rtk_canvas_t *canvas, const char *title)

Define Documentation

#define _GNU_SOURCE

#define DEBUG

#define DX (  )     (canvas->sizex / 2 + ((x) - canvas->ox) / canvas->sx)

#define DY (  )     (canvas->sizey / 2 - ((y) - canvas->oy) / canvas->sy)

#define LX (  )     (canvas->ox + (+(x) - canvas->sizex / 2) * canvas->sx)

#define LY (  )     (canvas->oy + (-(y) + canvas->sizey / 2) * canvas->sy)

#define TOL_MOVE   15


Enumeration Type Documentation

anonymous enum

Enumerator:
MOUSE_NONE 
MOUSE_PAN 
MOUSE_ZOOM 
MOUSE_TRANS 
MOUSE_ROT 
MOUSE_SCALE 

anonymous enum

Enumerator:
EVENT_PRESS 
EVENT_MOTION 
EVENT_RELEASE 


Function Documentation

gboolean stest ( GtkWidget *  widget,
GdkEventConfigure *  event,
gpointer  user_data 
)

References FALSE.

void stg_rtk_canvas_bgcolor ( stg_rtk_canvas_t canvas,
double  r,
double  g,
double  b 
)

References _stg_rtk_canvas_t::bgcolor.

Referenced by gui_window_create().

void stg_rtk_canvas_flash ( stg_rtk_canvas_t canvas,
stg_rtk_fig_t fig,
int  duration,
int  kill 
)

void stg_rtk_canvas_get_origin ( stg_rtk_canvas_t canvas,
double *  ox,
double *  oy 
)

void stg_rtk_canvas_get_scale ( stg_rtk_canvas_t canvas,
double *  sx,
double *  sy 
)

void stg_rtk_canvas_get_size ( stg_rtk_canvas_t canvas,
int *  sizex,
int *  sizey 
)

int stg_rtk_canvas_isclosed ( stg_rtk_canvas_t canvas  ) 

void stg_rtk_canvas_layer_show ( stg_rtk_canvas_t canvas,
int  layer,
char  show 
)

void stg_rtk_canvas_linewidth ( stg_rtk_canvas_t canvas,
int  width 
)

void stg_rtk_canvas_movemask ( stg_rtk_canvas_t canvas,
int  mask 
)

void stg_rtk_canvas_origin ( stg_rtk_canvas_t canvas,
double  ox,
double  oy 
)

void stg_rtk_canvas_scale ( stg_rtk_canvas_t canvas,
double  sx,
double  sy 
)

void stg_rtk_canvas_size ( stg_rtk_canvas_t canvas,
int  sizex,
int  sizey 
)

void stg_rtk_canvas_title ( stg_rtk_canvas_t canvas,
const char *  title 
)


Generated on Wed Jun 3 23:12:29 2009 for Stage by  doxygen 1.5.9