Improved support for detecting missing dependencies:
- Added libpaper-dev package checking. - Previously, SDL_Pango's bug forced Tux Paint to include a customized version of SDL_Pango.h in its distribution, so we couldn't tell if SDL_Pango was installed in the system by including SDL_Pango.h. We made a new workaround for SDL_Pango's bug that does not require Tux Paint to include SDL_Pango.h, so now we can check for SDL_Pango installation. - Makefile now includes a check for gettext installation and will not fail when attempting to generate .mo files or install .mo files. Instead, Makefile will now display a warning and skip the .mo file generation and installation steps. Many thanks to Arunodai Vudem for the patches.
This commit is contained in:
parent
0e49f7bc82
commit
4cabed88a6
6 changed files with 85 additions and 170 deletions
168
src/SDL_Pango.h
168
src/SDL_Pango.h
|
|
@ -1,168 +0,0 @@
|
|||
/* SDL_Pango.h -- A companion library to SDL for working with Pango.
|
||||
Copyright (C) 2004 NAKAMURA Ken'ichi
|
||||
|
||||
This library is free software; you can redistribute it and/or
|
||||
modify it under the terms of the GNU Lesser General Public
|
||||
License as published by the Free Software Foundation; either
|
||||
version 2.1 of the License, or (at your option) any later version.
|
||||
|
||||
This library is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
Lesser General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU Lesser General Public
|
||||
License along with this library; if not, write to the Free Software
|
||||
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
|
||||
*/
|
||||
|
||||
/*! @file
|
||||
@brief Header file of SDL_Pango
|
||||
|
||||
@author NAKAMURA Ken'ichi
|
||||
@date 2004/08/26
|
||||
$Revision$
|
||||
*/
|
||||
|
||||
#ifndef SDL_PANGO_H
|
||||
#define SDL_PANGO_H
|
||||
|
||||
#include "SDL.h"
|
||||
|
||||
#include "begin_code.h"
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
|
||||
|
||||
typedef struct _contextImpl SDLPango_Context;
|
||||
|
||||
/*!
|
||||
General 4 X 4 matrix struct.
|
||||
*/
|
||||
typedef struct _SDLPango_Matrix {
|
||||
Uint8 m[4][4]; /*! Matrix variables */
|
||||
} SDLPango_Matrix;
|
||||
|
||||
|
||||
/*!
|
||||
Specifies direction of text. See Pango reference for detail
|
||||
*/
|
||||
typedef enum {
|
||||
SDLPANGO_DIRECTION_LTR, /*! Left to right */
|
||||
SDLPANGO_DIRECTION_RTL, /*! Right to left */
|
||||
SDLPANGO_DIRECTION_WEAK_LTR, /*! Left to right (weak) */
|
||||
SDLPANGO_DIRECTION_WEAK_RTL, /*! Right to left (weak) */
|
||||
SDLPANGO_DIRECTION_NEUTRAL /*! Neutral */
|
||||
} SDLPango_Direction;
|
||||
|
||||
/*!
|
||||
Specifies alignment of text. See Pango reference for detail
|
||||
*/
|
||||
typedef enum {
|
||||
SDLPANGO_ALIGN_LEFT,
|
||||
SDLPANGO_ALIGN_CENTER,
|
||||
SDLPANGO_ALIGN_RIGHT
|
||||
} SDLPango_Alignment;
|
||||
|
||||
extern DECLSPEC int SDLCALL SDLPango_Init(void);
|
||||
|
||||
extern DECLSPEC int SDLCALL SDLPango_WasInit(void);
|
||||
|
||||
extern DECLSPEC SDLPango_Context* SDLCALL SDLPango_CreateContext_GivenFontDesc(const char* font_desc);
|
||||
extern DECLSPEC SDLPango_Context* SDLCALL SDLPango_CreateContext(void);
|
||||
|
||||
extern DECLSPEC void SDLCALL SDLPango_FreeContext(
|
||||
SDLPango_Context *context);
|
||||
|
||||
extern DECLSPEC void SDLCALL SDLPango_SetSurfaceCreateArgs(
|
||||
SDLPango_Context *context,
|
||||
Uint32 flags,
|
||||
int depth,
|
||||
Uint32 Rmask, Uint32 Gmask, Uint32 Bmask, Uint32 Amask);
|
||||
|
||||
extern DECLSPEC SDL_Surface * SDLCALL SDLPango_CreateSurfaceDraw(
|
||||
SDLPango_Context *context);
|
||||
|
||||
extern DECLSPEC void SDLCALL SDLPango_Draw(
|
||||
SDLPango_Context *context,
|
||||
SDL_Surface *surface,
|
||||
int x, int y);
|
||||
|
||||
extern DECLSPEC void SDLCALL SDLPango_SetDpi(
|
||||
SDLPango_Context *context,
|
||||
double dpi_x, double dpi_y);
|
||||
|
||||
extern DECLSPEC void SDLCALL SDLPango_SetMinimumSize(
|
||||
SDLPango_Context *context,
|
||||
int width, int height);
|
||||
|
||||
extern DECLSPEC void SDLCALL SDLPango_SetDefaultColor(
|
||||
SDLPango_Context *context,
|
||||
const SDLPango_Matrix *color_matrix);
|
||||
|
||||
extern DECLSPEC int SDLCALL SDLPango_GetLayoutWidth(
|
||||
SDLPango_Context *context);
|
||||
|
||||
extern DECLSPEC int SDLCALL SDLPango_GetLayoutHeight(
|
||||
SDLPango_Context *context);
|
||||
|
||||
extern DECLSPEC void SDLCALL SDLPango_SetMarkup(
|
||||
SDLPango_Context *context,
|
||||
const char *markup,
|
||||
int length);
|
||||
|
||||
extern DECLSPEC void SDLCALL SDLPango_SetText_GivenAlignment(
|
||||
SDLPango_Context *context,
|
||||
const char *text,
|
||||
int length,
|
||||
SDLPango_Alignment alignment);
|
||||
|
||||
extern DECLSPEC void SDLCALL SDLPango_SetText(
|
||||
SDLPango_Context *context,
|
||||
const char *markup,
|
||||
int length);
|
||||
|
||||
extern DECLSPEC void SDLCALL SDLPango_SetLanguage(
|
||||
SDLPango_Context *context,
|
||||
const char *language_tag);
|
||||
|
||||
extern DECLSPEC void SDLCALL SDLPango_SetBaseDirection(
|
||||
SDLPango_Context *context,
|
||||
SDLPango_Direction direction);
|
||||
|
||||
|
||||
#ifdef __FT2_BUILD_UNIX_H__
|
||||
|
||||
extern DECLSPEC void SDLCALL SDLPango_CopyFTBitmapToSurface(
|
||||
const FT_Bitmap *bitmap,
|
||||
SDL_Surface *surface,
|
||||
const SDLPango_Matrix *matrix,
|
||||
SDL_Rect *rect);
|
||||
|
||||
#endif /* __FT2_BUILD_UNIX_H__ */
|
||||
|
||||
|
||||
#ifdef __PANGO_H__
|
||||
|
||||
extern DECLSPEC PangoFontMap* SDLCALL SDLPango_GetPangoFontMap(
|
||||
SDLPango_Context *context);
|
||||
|
||||
extern DECLSPEC PangoFontDescription* SDLCALL SDLPango_GetPangoFontDescription(
|
||||
SDLPango_Context *context);
|
||||
|
||||
extern DECLSPEC PangoLayout* SDLCALL SDLPango_GetPangoLayout(
|
||||
SDLPango_Context *context);
|
||||
|
||||
#endif /* __PANGO_H__ */
|
||||
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
||||
#include "close_code.h"
|
||||
|
||||
#endif /* SDL_PANGO_H */
|
||||
|
|
@ -19,6 +19,26 @@
|
|||
|
||||
#include "dirwalk.h"
|
||||
#include "progressbar.h"
|
||||
|
||||
/*
|
||||
The following section renames global variables defined in SDL_Pango.h to avoid errors during linking.
|
||||
It is okay to rename these variables because they are constants.
|
||||
SDL_Pang.h is included by fonts.h.
|
||||
*/
|
||||
#define _MATRIX_WHITE_BACK _MATRIX_WHITE_BACK1
|
||||
#define MATRIX_WHITE_BACK MATRIX_WHITE_BACK1
|
||||
#define _MATRIX_BLACK_BACK _MATRIX_BLACK_BACK1
|
||||
#define MATRIX_BLACK_BACK MATRIX_BLACK_BACK1
|
||||
#define _MATRIX_TRANSPARENT_BACK_BLACK_LETTER _MATRIX_TRANSPARENT_BACK_BLACK_LETTER1
|
||||
#define MATRIX_TRANSPARENT_BACK_BLACK_LETTER MATRIX_TRANSPARENT_BACK_BLACK_LETTER1
|
||||
#define _MATRIX_TRANSPARENT_BACK_WHITE_LETTER _MATRIX_TRANSPARENT_BACK_WHITE_LETTER1
|
||||
#define MATRIX_TRANSPARENT_BACK_WHITE_LETTER MATRIX_TRANSPARENT_BACK_WHITE_LETTER1
|
||||
#define _MATRIX_TRANSPARENT_BACK_TRANSPARENT_LETTER _MATRIX_TRANSPARENT_BACK_TRANSPARENT_LETTER1
|
||||
#define MATRIX_TRANSPARENT_BACK_TRANSPARENT_LETTER MATRIX_TRANSPARENT_BACK_TRANSPARENT_LETTER1
|
||||
/*
|
||||
The renaming ends here.
|
||||
*/
|
||||
|
||||
#include "fonts.h"
|
||||
|
||||
#include "debug.h"
|
||||
|
|
|
|||
19
src/fonts.c
19
src/fonts.c
|
|
@ -17,6 +17,25 @@
|
|||
#define gettext_noop(String) String
|
||||
#endif
|
||||
|
||||
/*
|
||||
The following section renames global variables defined in SDL_Pango.h to avoid errors during linking.
|
||||
It is okay to rename these variables because they are constants.
|
||||
SDL_Pang.h is included by fonts.h.
|
||||
*/
|
||||
#define _MATRIX_WHITE_BACK _MATRIX_WHITE_BACK2
|
||||
#define MATRIX_WHITE_BACK MATRIX_WHITE_BACK2
|
||||
#define _MATRIX_BLACK_BACK _MATRIX_BLACK_BACK2
|
||||
#define MATRIX_BLACK_BACK MATRIX_BLACK_BACK2
|
||||
#define _MATRIX_TRANSPARENT_BACK_BLACK_LETTER _MATRIX_TRANSPARENT_BACK_BLACK_LETTER2
|
||||
#define MATRIX_TRANSPARENT_BACK_BLACK_LETTER MATRIX_TRANSPARENT_BACK_BLACK_LETTER2
|
||||
#define _MATRIX_TRANSPARENT_BACK_WHITE_LETTER _MATRIX_TRANSPARENT_BACK_WHITE_LETTER2
|
||||
#define MATRIX_TRANSPARENT_BACK_WHITE_LETTER MATRIX_TRANSPARENT_BACK_WHITE_LETTER2
|
||||
#define _MATRIX_TRANSPARENT_BACK_TRANSPARENT_LETTER _MATRIX_TRANSPARENT_BACK_TRANSPARENT_LETTER2
|
||||
#define MATRIX_TRANSPARENT_BACK_TRANSPARENT_LETTER MATRIX_TRANSPARENT_BACK_TRANSPARENT_LETTER2
|
||||
/*
|
||||
The renaming ends here.
|
||||
*/
|
||||
|
||||
#include "fonts.h"
|
||||
#include "i18n.h"
|
||||
#include "progressbar.h"
|
||||
|
|
|
|||
|
|
@ -339,7 +339,7 @@ extern WrapperData macosx;
|
|||
#error "---------------------------------------------------"
|
||||
#endif
|
||||
|
||||
/*
|
||||
|
||||
#ifndef NO_SDLPANGO
|
||||
|
||||
#include "SDL_Pango.h"
|
||||
|
|
@ -352,7 +352,7 @@ extern WrapperData macosx;
|
|||
#endif
|
||||
|
||||
#endif
|
||||
*/
|
||||
|
||||
|
||||
#ifndef NOSOUND
|
||||
#include "SDL_mixer.h"
|
||||
|
|
@ -919,6 +919,13 @@ magic_api *magic_api_struct; // Pointer to our internal functions; passed to sha
|
|||
|
||||
#if !defined(WIN32) && !defined(__APPLE__) && !defined(__BEOS__)
|
||||
#include <paper.h>
|
||||
#if !defined(PAPER_H)
|
||||
#error "---------------------------------------------------"
|
||||
#error "If you installed libpaper from a package, be sure"
|
||||
#error "to get the development package, as well!"
|
||||
#error "(eg., 'libpaper-dev_1.1.21.deb')"
|
||||
#error "---------------------------------------------------"
|
||||
#endif
|
||||
static const char *printcommand = PRINTCOMMAND;
|
||||
static const char *altprintcommand = ALTPRINTCOMMAND;
|
||||
char *papersize = NULL;
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue