The Birdfont Source Code


All Repositories / birdfont.git / blob – RSS feed

ExportCallback.vala in /libbirdfont

This file is a part of the Birdfont project.

Contributing

Send patches or pull requests to johan.mattsson.m@gmail.com.
Clone this repository: git clone https://github.com/johanmattssonm/birdfont.git
Circle boundaries heads/master
1 /* 2 Copyright (C) 2014 Johan Mattsson 3 4 This library is free software; you can redistribute it and/or modify 5 it under the terms of the GNU Lesser General Public License as 6 published by the Free Software Foundation; either version 3 of the 7 License, or (at your option) any later version. 8 9 This library is distributed in the hope that it will be useful, but 10 WITHOUT ANY WARRANTY; without even the implied warranty of 11 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 12 Lesser General Public License for more details. 13 */ 14 15 namespace BirdFont { 16 17 public class ExportCallback : GLib.Object { 18 19 public signal void file_exported (); 20 public bool preview = false; 21 22 public ExportCallback () { 23 } 24 25 public void export_fonts_in_background () { 26 Font font = BirdFont.get_current_font (); 27 28 if (!MainWindow.native_window.can_export ()) { 29 return; 30 } 31 32 if (font.font_file == null) { 33 MenuTab.set_save_callback (new SaveCallback ()); 34 MenuTab.save_callback.file_saved.connect (() => { 35 MainWindow.native_window.export_font (); 36 }); 37 MenuTab.save_callback.save (); 38 } else { 39 MainWindow.native_window.export_font (); 40 } 41 } 42 43 /** Export TTF, EOT and SVG fonts. */ 44 public static void export_fonts () { 45 Font font = BirdFont.get_current_font (); 46 47 if (ExportSettings.export_ttf_setting (font) || ExportSettings.export_eot_setting (font)) { 48 ExportTool.export_ttf_font (); 49 } 50 51 if (ExportSettings.export_svg_setting (font)) { 52 ExportTool.export_svg_font (); 53 } 54 } 55 } 56 57 } 58