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 LX(x)   (canvas->ox + (+(x) - canvas->sizex / 2) * canvas->sx)
#define LY(y)   (canvas->oy + (-(y) + canvas->sizey / 2) * canvas->sy)
#define DX(x)   (canvas->sizex / 2 + ((x) - canvas->ox) / canvas->sx)
#define DY(y)   (canvas->sizey / 2 - ((y) - canvas->oy) / 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)
stg_rtk_canvas_tstg_rtk_canvas_create (stg_rtk_app_t *app)
void stg_rtk_canvas_destroy (stg_rtk_canvas_t *canvas)
int stg_rtk_canvas_isclosed (stg_rtk_canvas_t *canvas)
void stg_rtk_canvas_title (stg_rtk_canvas_t *canvas, const char *title)
void stg_rtk_canvas_size (stg_rtk_canvas_t *canvas, int sizex, int sizey)
void stg_rtk_canvas_get_size (stg_rtk_canvas_t *canvas, int *sizex, int *sizey)
void stg_rtk_canvas_origin (stg_rtk_canvas_t *canvas, double ox, double oy)
void stg_rtk_canvas_get_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_get_scale (stg_rtk_canvas_t *canvas, double *sx, double *sy)
void stg_rtk_canvas_movemask (stg_rtk_canvas_t *canvas, int mask)
void stg_rtk_canvas_font (stg_rtk_canvas_t *canvas, const char *fontname)
void stg_rtk_canvas_bgcolor (stg_rtk_canvas_t *canvas, double r, double g, double b)
void stg_rtk_canvas_linewidth (stg_rtk_canvas_t *canvas, int width)
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_layer_show (stg_rtk_canvas_t *canvas, int layer, char show)
void stg_rtk_canvas_calc (stg_rtk_canvas_t *canvas)
void stg_rtk_canvas_render (stg_rtk_canvas_t *canvas)
void stg_rtk_canvas_export_image (stg_rtk_canvas_t *canvas, const char *filename, int format)
stg_rtk_fig_tstg_rtk_canvas_pick_fig (stg_rtk_canvas_t *canvas, int x, int y)

Define Documentation

#define _GNU_SOURCE
 

#define DEBUG
 

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

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

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

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

#define TOL_MOVE   15
 


Enumeration Type Documentation

anonymous enum
 

Enumeration values:
MOUSE_NONE 
MOUSE_PAN 
MOUSE_ZOOM 
MOUSE_TRANS 
MOUSE_ROT 
MOUSE_SCALE 

anonymous enum
 

Enumeration values:
EVENT_PRESS 
EVENT_MOTION 
EVENT_RELEASE 

Function Documentation

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

stg_rtk_canvas_t* stg_rtk_canvas_create stg_rtk_app_t app  ) 
 

void stg_rtk_canvas_destroy stg_rtk_canvas_t canvas  ) 
 

int stg_rtk_canvas_isclosed stg_rtk_canvas_t canvas  ) 
 

void stg_rtk_canvas_title stg_rtk_canvas_t canvas,
const char *  title
 

void stg_rtk_canvas_size stg_rtk_canvas_t canvas,
int  sizex,
int  sizey
 

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

void stg_rtk_canvas_origin stg_rtk_canvas_t canvas,
double  ox,
double  oy
 

void stg_rtk_canvas_get_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_get_scale stg_rtk_canvas_t canvas,
double *  sx,
double *  sy
 

void stg_rtk_canvas_movemask stg_rtk_canvas_t canvas,
int  mask
 

void stg_rtk_canvas_font stg_rtk_canvas_t canvas,
const char *  fontname
 

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

void stg_rtk_canvas_linewidth stg_rtk_canvas_t canvas,
int  width
 

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_layer_show stg_rtk_canvas_t canvas,
int  layer,
char  show
 

void stg_rtk_canvas_calc stg_rtk_canvas_t canvas  ) 
 

void stg_rtk_canvas_render stg_rtk_canvas_t canvas  ) 
 

void stg_rtk_canvas_export_image stg_rtk_canvas_t canvas,
const char *  filename,
int  format
 

stg_rtk_fig_t* stg_rtk_canvas_pick_fig stg_rtk_canvas_t canvas,
int  x,
int  y
 


Generated on Thu Aug 11 13:08:10 2005 for Stage by  doxygen 1.4.0