mirror of
https://github.com/netsurf-browser/netsurf
synced 2024-12-24 13:06:49 +03:00
update amiga font layout handling to use table
This commit is contained in:
parent
6ddb66ccfb
commit
7677901edf
17
amiga/font.c
17
amiga/font.c
@ -25,7 +25,7 @@
|
|||||||
#include "utils/log.h"
|
#include "utils/log.h"
|
||||||
#include "utils/nsoption.h"
|
#include "utils/nsoption.h"
|
||||||
#include "desktop/browser.h"
|
#include "desktop/browser.h"
|
||||||
#include "desktop/font.h"
|
#include "desktop/gui_layout.h"
|
||||||
|
|
||||||
#include "amiga/font.h"
|
#include "amiga/font.h"
|
||||||
#include "amiga/font_bullet.h"
|
#include "amiga/font_bullet.h"
|
||||||
@ -119,7 +119,7 @@ void ami_font_fini(void)
|
|||||||
}
|
}
|
||||||
|
|
||||||
/* Stub entry points */
|
/* Stub entry points */
|
||||||
static bool nsfont_width(const plot_font_style_t *fstyle,
|
static nserror ami_font_width(const plot_font_style_t *fstyle,
|
||||||
const char *string, size_t length,
|
const char *string, size_t length,
|
||||||
int *width)
|
int *width)
|
||||||
{
|
{
|
||||||
@ -127,7 +127,7 @@ static bool nsfont_width(const plot_font_style_t *fstyle,
|
|||||||
return ami_nsfont->width(fstyle, string, length, width);
|
return ami_nsfont->width(fstyle, string, length, width);
|
||||||
}
|
}
|
||||||
|
|
||||||
static bool nsfont_position_in_string(const plot_font_style_t *fstyle,
|
static nserror ami_font_position(const plot_font_style_t *fstyle,
|
||||||
const char *string, size_t length,
|
const char *string, size_t length,
|
||||||
int x, size_t *char_offset, int *actual_x)
|
int x, size_t *char_offset, int *actual_x)
|
||||||
{
|
{
|
||||||
@ -135,7 +135,7 @@ static bool nsfont_position_in_string(const plot_font_style_t *fstyle,
|
|||||||
return ami_nsfont->posn(fstyle, string, length, x, char_offset, actual_x);
|
return ami_nsfont->posn(fstyle, string, length, x, char_offset, actual_x);
|
||||||
}
|
}
|
||||||
|
|
||||||
static bool nsfont_split(const plot_font_style_t *fstyle,
|
static nserror ami_font_split(const plot_font_style_t *fstyle,
|
||||||
const char *string, size_t length,
|
const char *string, size_t length,
|
||||||
int x, size_t *char_offset, int *actual_x)
|
int x, size_t *char_offset, int *actual_x)
|
||||||
{
|
{
|
||||||
@ -143,9 +143,10 @@ static bool nsfont_split(const plot_font_style_t *fstyle,
|
|||||||
return ami_nsfont->split(fstyle, string, length, x, char_offset, actual_x);
|
return ami_nsfont->split(fstyle, string, length, x, char_offset, actual_x);
|
||||||
}
|
}
|
||||||
|
|
||||||
const struct font_functions nsfont = {
|
static struct gui_layout_table layout_table = {
|
||||||
nsfont_width,
|
.width = ami_font_width,
|
||||||
nsfont_position_in_string,
|
.position = ami_font_position,
|
||||||
nsfont_split
|
.split = ami_font_split,
|
||||||
};
|
};
|
||||||
|
|
||||||
|
struct gui_layout_table *ami_layout_table = &layout_table;
|
||||||
|
@ -55,5 +55,8 @@ struct ami_font_functions {
|
|||||||
};
|
};
|
||||||
|
|
||||||
const struct ami_font_functions *ami_nsfont;
|
const struct ami_font_functions *ami_nsfont;
|
||||||
|
|
||||||
|
struct gui_layout_table *ami_layout_table;
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
@ -30,7 +30,6 @@
|
|||||||
#include "utils/log.h"
|
#include "utils/log.h"
|
||||||
#include "utils/utf8.h"
|
#include "utils/utf8.h"
|
||||||
#include "utils/nsoption.h"
|
#include "utils/nsoption.h"
|
||||||
#include "desktop/font.h"
|
|
||||||
|
|
||||||
#include "amiga/font.h"
|
#include "amiga/font.h"
|
||||||
#include "amiga/font_diskfont.h"
|
#include "amiga/font_diskfont.h"
|
||||||
|
@ -50,12 +50,13 @@
|
|||||||
#include "utils/messages.h"
|
#include "utils/messages.h"
|
||||||
#include "utils/utils.h"
|
#include "utils/utils.h"
|
||||||
#include "desktop/printer.h"
|
#include "desktop/printer.h"
|
||||||
#include "desktop/font.h"
|
#include "desktop/gui_layout.h"
|
||||||
#include "desktop/mouse.h"
|
#include "desktop/mouse.h"
|
||||||
#include "desktop/gui_window.h"
|
#include "desktop/gui_window.h"
|
||||||
#include "content/hlcache.h"
|
#include "content/hlcache.h"
|
||||||
|
|
||||||
#include "amiga/plotters.h"
|
#include "amiga/plotters.h"
|
||||||
|
#include "amiga/font.h"
|
||||||
#include "amiga/gui.h"
|
#include "amiga/gui.h"
|
||||||
#include "amiga/libs.h"
|
#include "amiga/libs.h"
|
||||||
#include "amiga/misc.h"
|
#include "amiga/misc.h"
|
||||||
@ -414,7 +415,7 @@ void ami_print(struct hlcache_handle *c, int copies)
|
|||||||
ami_print_info.PD = (struct PrinterData *)ami_print_info.PReq->io_Device;
|
ami_print_info.PD = (struct PrinterData *)ami_print_info.PReq->io_Device;
|
||||||
ami_print_info.PED = &ami_print_info.PD->pd_SegmentData->ps_PED;
|
ami_print_info.PED = &ami_print_info.PD->pd_SegmentData->ps_PED;
|
||||||
|
|
||||||
ami_print_info.ps = print_make_settings(PRINT_DEFAULT, nsurl_access(hlcache_handle_get_url(c)), &nsfont);
|
ami_print_info.ps = print_make_settings(PRINT_DEFAULT, nsurl_access(hlcache_handle_get_url(c)), ami_layout_table);
|
||||||
ami_print_info.ps->page_width = ami_print_info.PED->ped_MaxXDots;
|
ami_print_info.ps->page_width = ami_print_info.PED->ped_MaxXDots;
|
||||||
ami_print_info.ps->page_height = ami_print_info.PED->ped_MaxYDots;
|
ami_print_info.ps->page_height = ami_print_info.PED->ped_MaxYDots;
|
||||||
ami_print_info.ps->scale = scale;
|
ami_print_info.ps->scale = scale;
|
||||||
|
Loading…
Reference in New Issue
Block a user