summaryrefslogtreecommitdiff
path: root/amiga/font.c
diff options
context:
space:
mode:
authorVincent Sanders <vince@kyllikki.org>2016-05-05 22:28:51 +0100
committerVincent Sanders <vince@kyllikki.org>2016-05-15 13:44:34 +0100
commitd21447d096a320a08b3efb2b8768fad0dcdcfd64 (patch)
tree1a83814b7c9e94b2f13c473261f23dd3a17dee64 /amiga/font.c
parent2cbb337756d9af5bda4d594964d446439f602551 (diff)
downloadnetsurf-d21447d096a320a08b3efb2b8768fad0dcdcfd64.tar.gz
netsurf-d21447d096a320a08b3efb2b8768fad0dcdcfd64.tar.bz2
move frontends into sub directory
Diffstat (limited to 'amiga/font.c')
-rw-r--r--amiga/font.c152
1 files changed, 0 insertions, 152 deletions
diff --git a/amiga/font.c b/amiga/font.c
deleted file mode 100644
index 1c9702af2..000000000
--- a/amiga/font.c
+++ /dev/null
@@ -1,152 +0,0 @@
-/*
- * Copyright 2008 - 2016 Chris Young <chris@unsatisfactorysoftware.co.uk>
- *
- * This file is part of NetSurf, http://www.netsurf-browser.org/
- *
- * NetSurf is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; version 2 of the License.
- *
- * NetSurf 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 General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-#include "amiga/os3support.h"
-
-#include <proto/diskfont.h>
-#include <proto/exec.h>
-#include <proto/graphics.h>
-
-#include "utils/log.h"
-#include "utils/nsoption.h"
-#include "desktop/browser.h"
-#include "desktop/gui_layout.h"
-
-#include "amiga/font.h"
-#include "amiga/font_bullet.h"
-#include "amiga/font_diskfont.h"
-#include "amiga/font_scan.h"
-
-static ULONG ami_devicedpi = 72;
-static ULONG ami_xdpi = 72;
-
-ULONG ami_font_dpi_get_devicedpi(void)
-{
- return ami_devicedpi;
-}
-
-ULONG ami_font_dpi_get_xdpi(void)
-{
- return ami_xdpi;
-}
-
-void ami_font_setdevicedpi(int id)
-{
- DisplayInfoHandle dih;
- struct DisplayInfo dinfo;
-
- if(nsoption_bool(bitmap_fonts) == true) {
- LOG("WARNING: Using diskfont.library for text. Forcing DPI to 72.");
- nsoption_set_int(screen_ydpi, 72);
- }
-
- ULONG ydpi = nsoption_int(screen_ydpi);
- ULONG xdpi = nsoption_int(screen_ydpi);
- browser_set_dpi(nsoption_int(screen_ydpi));
-
- if(id && (nsoption_int(monitor_aspect_x) != 0) && (nsoption_int(monitor_aspect_y) != 0))
- {
- if((dih = FindDisplayInfo(id)))
- {
- if(GetDisplayInfoData(dih, &dinfo, sizeof(struct DisplayInfo),
- DTAG_DISP, 0))
- {
- int xres = dinfo.Resolution.x;
- int yres = dinfo.Resolution.y;
-
- if((nsoption_int(monitor_aspect_x) != 4) || (nsoption_int(monitor_aspect_y) != 3))
- {
- /* AmigaOS sees 4:3 modes as square in the DisplayInfo database,
- * so we correct other modes to "4:3 equiv" here. */
- xres = (xres * nsoption_int(monitor_aspect_x)) / 4;
- yres = (yres * nsoption_int(monitor_aspect_y)) / 3;
- }
-
- xdpi = (yres * ydpi) / xres;
-
- LOG("XDPI = %ld, YDPI = %ld (DisplayInfo resolution %d x %d, corrected %d x %d)", xdpi, ydpi, dinfo.Resolution.x, dinfo.Resolution.y, xres, yres);
- }
- }
- }
-
- ami_xdpi = xdpi;
- ami_devicedpi = (xdpi << 16) | ydpi;
-}
-
-/* The below are simple font routines which should not be used for page rendering */
-
-struct TextFont *ami_font_open_disk_font(struct TextAttr *tattr)
-{
- struct TextFont *tfont = OpenDiskFont(tattr);
- return tfont;
-}
-
-void ami_font_close_disk_font(struct TextFont *tfont)
-{
- CloseFont(tfont);
-}
-
-/* Font initialisation */
-void ami_font_init(void)
-{
- if(nsoption_bool(bitmap_fonts) == false) {
- ami_font_bullet_init();
- } else {
- ami_font_diskfont_init();
- }
-}
-
-void ami_font_fini(void)
-{
- if(nsoption_bool(bitmap_fonts) == false) {
- ami_font_bullet_fini();
- }
-}
-
-/* Stub entry points */
-static nserror ami_font_width(const plot_font_style_t *fstyle,
- const char *string, size_t length,
- int *width)
-{
- if(__builtin_expect(ami_nsfont == NULL, 0)) return false;
- return ami_nsfont->width(fstyle, string, length, width);
-}
-
-static nserror ami_font_position(const plot_font_style_t *fstyle,
- const char *string, size_t length,
- int x, size_t *char_offset, int *actual_x)
-{
- if(__builtin_expect(ami_nsfont == NULL, 0)) return false;
- return ami_nsfont->posn(fstyle, string, length, x, char_offset, actual_x);
-}
-
-static nserror ami_font_split(const plot_font_style_t *fstyle,
- const char *string, size_t length,
- int x, size_t *char_offset, int *actual_x)
-{
- if(__builtin_expect(ami_nsfont == NULL, 0)) return false;
- return ami_nsfont->split(fstyle, string, length, x, char_offset, actual_x);
-}
-
-static struct gui_layout_table layout_table = {
- .width = ami_font_width,
- .position = ami_font_position,
- .split = ami_font_split,
-};
-
-struct gui_layout_table *ami_layout_table = &layout_table;