ソースを参照

* more coding style fixes.

tags/v0.99.beta14
Sam Hocevar sam 19年前
コミット
782b464878
1個のファイルの変更75行の追加66行の削除
  1. +75
    -66
      src/graphics.c

+ 75
- 66
src/graphics.c ファイルの表示

@@ -264,12 +264,16 @@ unsigned int gl_width, gl_height;
float gl_font_width, gl_font_height;
float gl_incx, gl_incy;
int id[94];
unsigned char gl_resized=0, gl_bit=0;
unsigned char gl_mouse_changed=0, gl_mouse_clicked=0;
unsigned char gl_resized = 0, gl_bit = 0;
unsigned char gl_mouse_changed = 0, gl_mouse_clicked = 0;
unsigned int gl_mouse_x, gl_mouse_y;
unsigned int gl_mouse_button=0, gl_mouse_state=0;
#endif
unsigned int gl_mouse_button = 0, gl_mouse_state = 0;

unsigned char gl_key = 0;
int gl_special_key = 0;
int gl_new_width;
int gl_new_height;
#endif

static char *_caca_empty_line;
static char *_caca_scratch_line;
@@ -301,50 +305,11 @@ static int x11_error_handler(Display *, XErrorEvent *);
#endif

#if defined(USE_GL)
unsigned char gl_key = 0;
int gl_special_key = 0;
int gl_new_width;
int gl_new_height;

static void gl_handle_keyboard(unsigned char key, int x, int y)
{
gl_key = key;
}

static void gl_handle_special_key(int key, int x, int y)
{
gl_special_key = key;
}

static void gl_handle_reshape(int w, int h)
{
if(gl_bit) /* Do not handle reshaping at the first time*/
{
gl_new_width = w;
gl_new_height = h;

gl_resized = 1;
}
else
gl_bit = 1;
}

static void gl_handle_mouse(int button, int state, int x, int y)
{
gl_mouse_clicked = 1;
gl_mouse_button = button;
gl_mouse_state = state;
gl_mouse_x = x / gl_font_width;
gl_mouse_y = y / gl_font_height;
gl_mouse_changed = 1;
}

static void gl_handle_mouse_motion(int x, int y)
{
gl_mouse_x = x / gl_font_width;
gl_mouse_y = y / gl_font_height;
gl_mouse_changed = 1;
}
static void gl_handle_keyboard(unsigned char, int, int);
static void gl_handle_special_key(int, int, int);
static void gl_handle_reshape(int, int);
static void gl_handle_mouse(int, int, int, int);
static void gl_handle_mouse_motion(int, int);
#endif

/** \brief Set the default colour pair.
@@ -1480,7 +1445,7 @@ void caca_refresh(void)

glClear(GL_COLOR_BUFFER_BIT);

offsety=0;
offsety = 0;
for(y = 0; y < gl_height; y += gl_font_height)
{
offsetx = 0;
@@ -1488,7 +1453,7 @@ void caca_refresh(void)
{
uint8_t *attr = cache_attr + offsetx + offsety * _caca_width;
int offset;
float br, bg, bb;
float br, bg, bb;
offset = attr[0] >> 4;

br = ((gl_bgpal[offset] & 0x00FF0000) >> 16) / 255.0f;
@@ -1498,10 +1463,10 @@ void caca_refresh(void)
glDisable(GL_TEXTURE_2D);
glColor3f(br, bg, bb);
glBegin(GL_QUADS);
glVertex2f(x, y);
glVertex2f(x + gl_font_width, y);
glVertex2f(x + gl_font_width, y + gl_font_height);
glVertex2f(x, y + gl_font_height);
glVertex2f(x, y);
glVertex2f(x + gl_font_width, y);
glVertex2f(x + gl_font_width, y + gl_font_height);
glVertex2f(x, y + gl_font_height);
glEnd();

offsetx++;
@@ -1535,14 +1500,14 @@ void caca_refresh(void)

glColor3f(fr, fg, fb);
glBegin(GL_QUADS);
glTexCoord2f(0, 1);
glVertex2f(x, y);
glTexCoord2f(0.5, 1);
glVertex2f(x + gl_font_width, y);
glTexCoord2f(0.5, 0);
glVertex2f(x + gl_font_width, y + gl_font_height);
glTexCoord2f(0, 0);
glVertex2f(x, y + gl_font_height);
glTexCoord2f(0, 1);
glVertex2f(x, y);
glTexCoord2f(0.5, 1);
glVertex2f(x + gl_font_width, y);
glTexCoord2f(0.5, 0);
glVertex2f(x + gl_font_width, y + gl_font_height);
glTexCoord2f(0, 0);
glVertex2f(x, y + gl_font_height);
glEnd();
}
offsetx++;
@@ -1595,7 +1560,7 @@ void caca_refresh(void)
}

/*
* XXX: following functions are loca
* XXX: following functions are local
*/
static void caca_handle_resize(void)
{
@@ -1636,6 +1601,7 @@ static void caca_handle_resize(void)
#if defined(USE_CONIO)
if(_caca_driver == CACA_DRIVER_CONIO)
{
/* Nothing to do here. */
}
else
#endif
@@ -1663,6 +1629,7 @@ static void caca_handle_resize(void)
#if defined(USE_WIN32)
if(_caca_driver == CACA_DRIVER_WIN32)
{
/* Nothing to do here. */
}
else
#endif
@@ -1784,6 +1751,48 @@ static RETSIGTYPE sigwinch_handler(int sig)
}
#endif

#if defined(USE_GL)
static void gl_handle_keyboard(unsigned char key, int x, int y)
{
gl_key = key;
}

static void gl_handle_special_key(int key, int x, int y)
{
gl_special_key = key;
}

static void gl_handle_reshape(int w, int h)
{
if(gl_bit) /* Do not handle reshaping at the first time*/
{
gl_new_width = w;
gl_new_height = h;

gl_resized = 1;
}
else
gl_bit = 1;
}

static void gl_handle_mouse(int button, int state, int x, int y)
{
gl_mouse_clicked = 1;
gl_mouse_button = button;
gl_mouse_state = state;
gl_mouse_x = x / gl_font_width;
gl_mouse_y = y / gl_font_height;
gl_mouse_changed = 1;
}

static void gl_handle_mouse_motion(int x, int y)
{
gl_mouse_x = x / gl_font_width;
gl_mouse_y = y / gl_font_height;
gl_mouse_changed = 1;
}
#endif

/* Exporters */

/* HTML */
@@ -2029,10 +2038,10 @@ char * caca_get_ansi(int trailing)
30, 34, 32, 36, 31, 35, 33, 37, /* Both lines (light and dark) are the same, */
30, 34, 32, 36, 31, 35, 33, 37, /* light colors handling is done later */
};
char *buffer, *cur;
unsigned int x, y;
/* 20 bytes assumed for max length per pixel.
* Add height*9 to that (zeroes color at the end and jump to next line) */
buffer = malloc(((_caca_height*9) + (_caca_width * _caca_height * 20)) * sizeof(char));
@@ -2058,7 +2067,7 @@ char * caca_get_ansi(int trailing)
cur += sprintf(cur, "\033[");
else
cur += sprintf(cur, "\\033[");
if(fg > 7)
cur += sprintf(cur, "1;%d;%dm",fg,bg);
else


読み込み中…
キャンセル
保存