mirror of
git://xwords.git.sourceforge.net/gitroot/xwords/xwords
synced 2025-01-04 23:02:02 +01:00
New fields in drawCtxt for pango-based text layout; other tweaks for
switch to GTK 2.n.
This commit is contained in:
parent
7c206d6d16
commit
d9e203fd6d
1 changed files with 22 additions and 7 deletions
|
@ -1,4 +1,5 @@
|
||||||
/* Copyright 1997 - 2002 by Eric House (fixin@peak.org) (fixin@peak.org). All rights reserved.
|
/* -*- mode: C; fill-column: 78; c-basic-offset: 4; -*- */
|
||||||
|
/* Copyright 1997 - 2005 by Eric House (fixin@peak.org) (fixin@peak.org). All rights reserved.
|
||||||
* This program is free software; you can redistribute it and/or
|
* This program is free software; you can redistribute it and/or
|
||||||
* modify it under the terms of the GNU General Public License
|
* modify it under the terms of the GNU General Public License
|
||||||
* as published by the Free Software Foundation; either version 2
|
* as published by the Free Software Foundation; either version 2
|
||||||
|
@ -20,17 +21,25 @@
|
||||||
#ifdef PLATFORM_GTK
|
#ifdef PLATFORM_GTK
|
||||||
#include <gtk/gtk.h>
|
#include <gtk/gtk.h>
|
||||||
#include <sys/time.h>
|
#include <sys/time.h>
|
||||||
|
#include <pango/pango-font.h>
|
||||||
|
|
||||||
#include "draw.h"
|
#include "draw.h"
|
||||||
#include "main.h"
|
#include "main.h"
|
||||||
#include "game.h"
|
#include "game.h"
|
||||||
#include "dictnry.h"
|
#include "dictnry.h"
|
||||||
|
|
||||||
|
enum {
|
||||||
|
LAYOUT_BOARD
|
||||||
|
,LAYOUT_SMALL
|
||||||
|
,LAYOUT_LARGE
|
||||||
|
,LAYOUT_NLAYOUTS
|
||||||
|
};
|
||||||
|
|
||||||
typedef struct GtkDrawCtx {
|
typedef struct GtkDrawCtx {
|
||||||
DrawCtxVTable* vtable;
|
DrawCtxVTable* vtable;
|
||||||
|
|
||||||
/* GdkDrawable* pixmap; */
|
/* GdkDrawable* pixmap; */
|
||||||
GtkWidget* widget;
|
GtkWidget* drawing_area;
|
||||||
struct GtkAppGlobals* globals;
|
struct GtkAppGlobals* globals;
|
||||||
|
|
||||||
GdkGC* drawGC;
|
GdkGC* drawGC;
|
||||||
|
@ -38,13 +47,16 @@ typedef struct GtkDrawCtx {
|
||||||
GdkColor black;
|
GdkColor black;
|
||||||
GdkColor white;
|
GdkColor white;
|
||||||
GdkColor red; /* for pending tiles */
|
GdkColor red; /* for pending tiles */
|
||||||
|
GdkColor tileBack; /* for pending tiles */
|
||||||
GdkColor bonusColors[4];
|
GdkColor bonusColors[4];
|
||||||
GdkColor playerColors[MAX_NUM_PLAYERS];
|
GdkColor playerColors[MAX_NUM_PLAYERS];
|
||||||
GdkFont *gdkFont;
|
|
||||||
GdkFont *gdkBoldFont;
|
|
||||||
GdkFont *gdkTrayFont;
|
|
||||||
|
|
||||||
gint trayFontHeight;
|
/* new for gtk 2.0 */
|
||||||
|
PangoContext* pangoContext;
|
||||||
|
PangoFontDescription* fontdesc[LAYOUT_NLAYOUTS];
|
||||||
|
PangoLayout* layout[LAYOUT_NLAYOUTS];
|
||||||
|
|
||||||
|
XP_U16 trayOwner;
|
||||||
} GtkDrawCtx;
|
} GtkDrawCtx;
|
||||||
|
|
||||||
typedef struct ClientStreamRec {
|
typedef struct ClientStreamRec {
|
||||||
|
@ -58,6 +70,9 @@ typedef struct GtkAppGlobals {
|
||||||
GtkWidget* window;
|
GtkWidget* window;
|
||||||
GtkDrawCtx* draw;
|
GtkDrawCtx* draw;
|
||||||
|
|
||||||
|
/* GdkPixmap* pixmap; */
|
||||||
|
GtkWidget* drawing_area;
|
||||||
|
|
||||||
EngineCtxt* engine;
|
EngineCtxt* engine;
|
||||||
|
|
||||||
guint idleID;
|
guint idleID;
|
||||||
|
@ -95,7 +110,7 @@ int gtkmain( XP_Bool isServer, LaunchParams* params, int argc, char *argv[] );
|
||||||
#define SCORE_BOARD_PADDING 0
|
#define SCORE_BOARD_PADDING 0
|
||||||
|
|
||||||
#define HOR_SCORE_LEFT (BOARD_LEFT_MARGIN)
|
#define HOR_SCORE_LEFT (BOARD_LEFT_MARGIN)
|
||||||
#define HOR_SCORE_HEIGHT 8
|
#define HOR_SCORE_HEIGHT 12
|
||||||
#define TIMER_HEIGHT HOR_SCORE_HEIGHT
|
#define TIMER_HEIGHT HOR_SCORE_HEIGHT
|
||||||
#define HOR_SCORE_TOP (TOP_MARGIN)
|
#define HOR_SCORE_TOP (TOP_MARGIN)
|
||||||
#define TIMER_PAD 10
|
#define TIMER_PAD 10
|
||||||
|
|
Loading…
Reference in a new issue