text: remove old font definitions
All font definitions have been moved to font.h so remove the old definitions and include font.h instead. Signed-off-by: David Herrmann <dh.herrmann@googlemail.com>
This commit is contained in:
parent
e97c71fea1
commit
e6fa020937
@ -30,9 +30,9 @@
|
||||
|
||||
#include <errno.h>
|
||||
#include <stdlib.h>
|
||||
#include "font.h"
|
||||
#include "kmscon_module_interface.h"
|
||||
#include "log.h"
|
||||
#include "text.h"
|
||||
|
||||
#define LOG_SUBSYSTEM "mod_pango"
|
||||
|
||||
|
86
src/text.h
86
src/text.h
@ -1,7 +1,7 @@
|
||||
/*
|
||||
* kmscon - Text Renderer
|
||||
*
|
||||
* Copyright (c) 2012 David Herrmann <dh.herrmann@googlemail.com>
|
||||
* Copyright (c) 2012-2013 David Herrmann <dh.herrmann@googlemail.com>
|
||||
*
|
||||
* Permission is hereby granted, free of charge, to any person obtaining
|
||||
* a copy of this software and associated documentation files
|
||||
@ -28,11 +28,6 @@
|
||||
* The Text-Renderer subsystem provides a simple way to draw text into a
|
||||
* framebuffer. The system is modular and several different backends are
|
||||
* available that can be used.
|
||||
* The system is split into:
|
||||
* - Font renderer: The font renderer allows selecting fonts and rendering
|
||||
* single glyphs into memory-buffers
|
||||
* - Text renderer: The text renderer uses the font renderer to draw a whole
|
||||
* console into a framebuffer.
|
||||
*/
|
||||
|
||||
#ifndef KMSCON_TEXT_H
|
||||
@ -40,82 +35,10 @@
|
||||
|
||||
#include <errno.h>
|
||||
#include <stdlib.h>
|
||||
#include "kmscon_module.h"
|
||||
#include "font.h"
|
||||
#include "tsm_screen.h"
|
||||
#include "uterm.h"
|
||||
|
||||
/* fonts */
|
||||
|
||||
struct kmscon_font_attr;
|
||||
struct kmscon_glyph;
|
||||
struct kmscon_font;
|
||||
struct kmscon_font_ops;
|
||||
|
||||
#define KMSCON_FONT_MAX_NAME 128
|
||||
#define KMSCON_FONT_DEFAULT_NAME "monospace"
|
||||
#define KMSCON_FONT_DEFAULT_PPI 72
|
||||
|
||||
struct kmscon_font_attr {
|
||||
char name[KMSCON_FONT_MAX_NAME];
|
||||
unsigned int ppi;
|
||||
unsigned int points;
|
||||
bool bold;
|
||||
bool italic;
|
||||
unsigned int height;
|
||||
unsigned int width;
|
||||
};
|
||||
|
||||
void kmscon_font_attr_normalize(struct kmscon_font_attr *attr);
|
||||
bool kmscon_font_attr_match(const struct kmscon_font_attr *a1,
|
||||
const struct kmscon_font_attr *a2);
|
||||
|
||||
struct kmscon_glyph {
|
||||
struct uterm_video_buffer buf;
|
||||
unsigned int width;
|
||||
void *data;
|
||||
};
|
||||
|
||||
struct kmscon_font {
|
||||
unsigned long ref;
|
||||
struct shl_register_record *record;
|
||||
const struct kmscon_font_ops *ops;
|
||||
struct kmscon_font_attr attr;
|
||||
unsigned int baseline;
|
||||
void *data;
|
||||
};
|
||||
|
||||
struct kmscon_font_ops {
|
||||
const char *name;
|
||||
struct kmscon_module *owner;
|
||||
int (*init) (struct kmscon_font *out,
|
||||
const struct kmscon_font_attr *attr);
|
||||
void (*destroy) (struct kmscon_font *font);
|
||||
int (*render) (struct kmscon_font *font,
|
||||
uint32_t id, const uint32_t *ch, size_t len,
|
||||
const struct kmscon_glyph **out);
|
||||
int (*render_empty) (struct kmscon_font *font,
|
||||
const struct kmscon_glyph **out);
|
||||
int (*render_inval) (struct kmscon_font *font,
|
||||
const struct kmscon_glyph **out);
|
||||
};
|
||||
|
||||
int kmscon_font_register(const struct kmscon_font_ops *ops);
|
||||
void kmscon_font_unregister(const char *name);
|
||||
|
||||
int kmscon_font_find(struct kmscon_font **out,
|
||||
const struct kmscon_font_attr *attr,
|
||||
const char *backend);
|
||||
void kmscon_font_ref(struct kmscon_font *font);
|
||||
void kmscon_font_unref(struct kmscon_font *font);
|
||||
|
||||
int kmscon_font_render(struct kmscon_font *font,
|
||||
uint32_t id, const uint32_t *ch, size_t len,
|
||||
const struct kmscon_glyph **out);
|
||||
int kmscon_font_render_empty(struct kmscon_font *font,
|
||||
const struct kmscon_glyph **out);
|
||||
int kmscon_font_render_inval(struct kmscon_font *font,
|
||||
const struct kmscon_glyph **out);
|
||||
|
||||
/* text renderer */
|
||||
|
||||
struct kmscon_text;
|
||||
@ -185,11 +108,6 @@ int kmscon_text_render_cb(struct tsm_screen *con, void *data);
|
||||
|
||||
/* modularized backends */
|
||||
|
||||
extern struct kmscon_font_ops kmscon_font_8x16_ops;
|
||||
extern struct kmscon_font_ops kmscon_font_unifont_ops;
|
||||
extern struct kmscon_font_ops kmscon_font_freetype2_ops;
|
||||
extern struct kmscon_font_ops kmscon_font_pango_ops;
|
||||
|
||||
#ifdef BUILD_ENABLE_RENDERER_BBLIT
|
||||
|
||||
int kmscon_text_bblit_load(void);
|
||||
|
Loading…
x
Reference in New Issue
Block a user