com.patrikdufresne.fontawesome.FontAwesome.java Source code

Java tutorial

Introduction

Here is the source code for com.patrikdufresne.fontawesome.FontAwesome.java

Source

/**
 * Copyright (c) 2015 Patrik Dufresne Service Logiciel <info@patrikdufresne.com>
 * All rights reserved. This program and the accompanying materials
 * are made available under the terms of the Eclipse Public License v1.0
 * which accompanies this distribution, and is available at
 * http://www.eclipse.org/legal/epl-v10.html
 *
 * Contributors:
 *     Patrik Dufresne - initial API and implementation
 */
package com.patrikdufresne.fontawesome;

import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;

import org.eclipse.jface.resource.JFaceResources;
import org.eclipse.swt.SWT;
import org.eclipse.swt.graphics.Font;
import org.eclipse.swt.graphics.FontData;
import org.eclipse.swt.widgets.Display;

/**
 * Utility class used to load the font awesome font.
 * 
 * @author Patrik Dufresne
 * 
 */
public class FontAwesome {

    public static final String adjust = "\uf042";

    public static final String adn = "\uf170";

    public static final String align_center = "\uf037";

    public static final String align_justify = "\uf039";

    public static final String align_left = "\uf036";
    public static final String align_right = "\uf038";
    public static final String ambulance = "\uf0f9";
    public static final String anchor = "\uf13d";
    public static final String android = "\uf17b";
    public static final String angellist = "\uf209";
    public static final String angle_double_down = "\uf103";
    public static final String angle_double_left = "\uf100";
    public static final String angle_double_right = "\uf101";
    public static final String angle_double_up = "\uf102";
    public static final String angle_down = "\uf107";
    public static final String angle_left = "\uf104";
    public static final String angle_right = "\uf105";
    public static final String angle_up = "\uf106";
    public static final String apple = "\uf179";
    public static final String archive = "\uf187";
    public static final String area_chart = "\uf1fe";
    public static final String arrow_circle_down = "\uf0ab";
    public static final String arrow_circle_left = "\uf0a8";
    public static final String arrow_circle_o_down = "\uf01a";
    public static final String arrow_circle_o_left = "\uf190";
    public static final String arrow_circle_o_right = "\uf18e";
    public static final String arrow_circle_o_up = "\uf01b";
    public static final String arrow_circle_right = "\uf0a9";
    public static final String arrow_circle_up = "\uf0aa";
    public static final String arrow_down = "\uf063";
    public static final String arrow_left = "\uf060";
    public static final String arrow_right = "\uf061";
    public static final String arrow_up = "\uf062";
    public static final String arrows = "\uf047";
    public static final String arrows_alt = "\uf0b2";
    public static final String arrows_h = "\uf07e";
    public static final String arrows_v = "\uf07d";
    public static final String asterisk = "\uf069";
    public static final String at = "\uf1fa";
    public static final String automobile = "\uf1b9";
    public static final String backward = "\uf04a";
    public static final String ban = "\uf05e";
    public static final String bank = "\uf19c";
    public static final String bar_chart = "\uf080";
    public static final String bar_chart_o = "\uf080";
    public static final String barcode = "\uf02a";
    public static final String bars = "\uf0c9";
    public static final String bed = "\uf236";
    public static final String beer = "\uf0fc";
    public static final String behance = "\uf1b4";
    public static final String behance_square = "\uf1b5";
    public static final String bell = "\uf0f3";
    public static final String bell_o = "\uf0a2";
    public static final String bell_slash = "\uf1f6";
    public static final String bell_slash_o = "\uf1f7";
    public static final String bicycle = "\uf206";
    public static final String binoculars = "\uf1e5";
    public static final String birthday_cake = "\uf1fd";
    public static final String bitbucket = "\uf171";
    public static final String bitbucket_square = "\uf172";
    public static final String bitcoin = "\uf15a";
    public static final String bold = "\uf032";
    public static final String bolt = "\uf0e7";
    public static final String bomb = "\uf1e2";
    public static final String book = "\uf02d";
    public static final String bookmark = "\uf02e";
    public static final String bookmark_o = "\uf097";
    public static final String briefcase = "\uf0b1";
    public static final String btc = "\uf15a";
    public static final String bug = "\uf188";
    public static final String building = "\uf1ad";
    public static final String building_o = "\uf0f7";
    public static final String bullhorn = "\uf0a1";
    public static final String bullseye = "\uf140";
    public static final String bus = "\uf207";
    public static final String buysellads = "\uf20d";
    public static final String cab = "\uf1ba";
    public static final String calculator = "\uf1ec";
    public static final String calendar = "\uf073";
    public static final String calendar_o = "\uf133";
    public static final String camera = "\uf030";
    public static final String camera_retro = "\uf083";
    public static final String car = "\uf1b9";
    public static final String caret_down = "\uf0d7";
    public static final String caret_left = "\uf0d9";
    public static final String caret_right = "\uf0da";
    public static final String caret_square_o_down = "\uf150";
    public static final String caret_square_o_left = "\uf191";
    public static final String caret_square_o_right = "\uf152";
    public static final String caret_square_o_up = "\uf151";
    public static final String caret_up = "\uf0d8";
    public static final String cart_arrow_down = "\uf218";
    public static final String cart_plus = "\uf217";
    public static final String cc = "\uf20a";
    public static final String cc_amex = "\uf1f3";
    public static final String cc_discover = "\uf1f2";
    public static final String cc_mastercard = "\uf1f1";
    public static final String cc_paypal = "\uf1f4";
    public static final String cc_stripe = "\uf1f5";
    public static final String cc_visa = "\uf1f0";
    public static final String certificate = "\uf0a3";
    public static final String chain = "\uf0c1";
    public static final String chain_broken = "\uf127";
    public static final String check = "\uf00c";
    public static final String check_circle = "\uf058";
    public static final String check_circle_o = "\uf05d";
    public static final String check_square = "\uf14a";
    public static final String check_square_o = "\uf046";
    public static final String chevron_circle_down = "\uf13a";
    public static final String chevron_circle_left = "\uf137";
    public static final String chevron_circle_right = "\uf138";
    public static final String chevron_circle_up = "\uf139";
    public static final String chevron_down = "\uf078";
    public static final String chevron_left = "\uf053";
    public static final String chevron_right = "\uf054";
    public static final String chevron_up = "\uf077";
    public static final String child = "\uf1ae";
    public static final String circle = "\uf111";
    public static final String circle_o = "\uf10c";
    public static final String circle_o_notch = "\uf1ce";
    public static final String circle_thin = "\uf1db";
    public static final String clipboard = "\uf0ea";
    public static final String clock_o = "\uf017";
    public static final String close = "\uf00d";
    public static final String cloud = "\uf0c2";
    public static final String cloud_download = "\uf0ed";
    public static final String cloud_upload = "\uf0ee";
    public static final String cny = "\uf157";
    public static final String code = "\uf121";
    public static final String code_fork = "\uf126";
    public static final String codepen = "\uf1cb";
    public static final String coffee = "\uf0f4";
    public static final String cog = "\uf013";
    public static final String cogs = "\uf085";
    public static final String columns = "\uf0db";
    public static final String comment = "\uf075";
    public static final String comment_o = "\uf0e5";
    public static final String comments = "\uf086";
    public static final String comments_o = "\uf0e6";
    public static final String compass = "\uf14e";
    public static final String compress = "\uf066";
    public static final String connectdevelop = "\uf20e";
    public static final String copy = "\uf0c5";
    public static final String copyright = "\uf1f9";
    public static final String credit_card = "\uf09d";
    public static final String crop = "\uf125";
    public static final String crosshairs = "\uf05b";
    public static final String css3 = "\uf13c";
    public static final String cube = "\uf1b2";
    public static final String cubes = "\uf1b3";
    public static final String cut = "\uf0c4";
    public static final String cutlery = "\uf0f5";
    public static final String dashboard = "\uf0e4";
    public static final String dashcube = "\uf210";
    public static final String database = "\uf1c0";
    public static final String dedent = "\uf03b";
    private static final int DEFAULT_BUFFER_SIZE = 1024 * 4;
    public static final String delicious = "\uf1a5";
    public static final String desktop = "\uf108";
    public static final String deviantart = "\uf1bd";
    public static final String diamond = "\uf219";
    public static final String digg = "\uf1a6";
    public static final String dollar = "\uf155";
    public static final String dot_circle_o = "\uf192";
    public static final String download = "\uf019";
    public static final String dribbble = "\uf17d";
    public static final String dropbox = "\uf16b";
    public static final String drupal = "\uf1a9";
    public static final String edit = "\uf044";
    public static final String eject = "\uf052";
    public static final String ellipsis_h = "\uf141";
    public static final String ellipsis_v = "\uf142";
    public static final String empire = "\uf1d1";
    public static final String envelope = "\uf0e0";
    public static final String envelope_o = "\uf003";
    public static final String envelope_square = "\uf199";
    private static final int EOF = -1;
    public static final String eraser = "\uf12d";
    public static final String eur = "\uf153";
    public static final String euro = "\uf153";
    public static final String exchange = "\uf0ec";
    public static final String exclamation = "\uf12a";
    public static final String exclamation_circle = "\uf06a";
    public static final String exclamation_triangle = "\uf071";
    public static final String expand = "\uf065";
    public static final String external_link = "\uf08e";
    public static final String external_link_square = "\uf14c";
    public static final String eye = "\uf06e";
    public static final String eye_slash = "\uf070";
    public static final String eyedropper = "\uf1fb";
    public static final String facebook = "\uf09a";
    public static final String facebook_f = "\uf09a";
    public static final String facebook_official = "\uf230";
    public static final String facebook_square = "\uf082";
    public static final String fast_backward = "\uf049";
    public static final String fast_forward = "\uf050";
    public static final String fax = "\uf1ac";
    public static final String female = "\uf182";
    public static final String fighter_jet = "\uf0fb";
    public static final String file = "\uf15b";
    public static final String file_archive_o = "\uf1c6";
    public static final String file_audio_o = "\uf1c7";
    public static final String file_code_o = "\uf1c9";
    public static final String file_excel_o = "\uf1c3";
    public static final String file_image_o = "\uf1c5";
    public static final String file_movie_o = "\uf1c8";
    public static final String file_o = "\uf016";
    public static final String file_pdf_o = "\uf1c1";
    public static final String file_photo_o = "\uf1c5";
    public static final String file_picture_o = "\uf1c5";
    public static final String file_powerpoint_o = "\uf1c4";
    public static final String file_sound_o = "\uf1c7";
    public static final String file_text = "\uf15c";
    public static final String file_text_o = "\uf0f6";
    public static final String file_video_o = "\uf1c8";
    public static final String file_word_o = "\uf1c2";
    public static final String file_zip_o = "\uf1c6";
    public static final String files_o = "\uf0c5";
    public static final String film = "\uf008";
    public static final String filter = "\uf0b0";
    public static final String fire = "\uf06d";
    public static final String fire_extinguisher = "\uf134";
    public static final String flag = "\uf024";
    public static final String flag_checkered = "\uf11e";
    public static final String flag_o = "\uf11d";
    public static final String flash = "\uf0e7";
    public static final String flask = "\uf0c3";
    public static final String flickr = "\uf16e";
    public static final String floppy_o = "\uf0c7";
    public static final String folder = "\uf07b";
    public static final String folder_o = "\uf114";
    public static final String folder_open = "\uf07c";
    public static final String folder_open_o = "\uf115";
    public static final String font = "\uf031";
    /**
     * Symbolic name used to store the font awesome.
     */
    private static final String FONTAWESOME = "FONTAWESOME";
    public static final String forumbee = "\uf211";
    public static final String forward = "\uf04e";
    public static final String foursquare = "\uf180";
    public static final String frown_o = "\uf119";
    public static final String futbol_o = "\uf1e3";
    public static final String gamepad = "\uf11b";
    public static final String gavel = "\uf0e3";
    public static final String gbp = "\uf154";
    public static final String ge = "\uf1d1";
    public static final String gear = "\uf013";
    public static final String gears = "\uf085";
    public static final String genderless = "\uf1db";
    public static final String gift = "\uf06b";
    public static final String git = "\uf1d3";
    public static final String git_square = "\uf1d2";
    public static final String github = "\uf09b";
    public static final String github_alt = "\uf113";
    public static final String github_square = "\uf092";
    public static final String gittip = "\uf184";
    public static final String glass = "\uf000";
    public static final String globe = "\uf0ac";
    public static final String google = "\uf1a0";
    public static final String google_plus = "\uf0d5";
    public static final String google_plus_square = "\uf0d4";
    public static final String google_wallet = "\uf1ee";
    public static final String graduation_cap = "\uf19d";
    public static final String gratipay = "\uf184";
    public static final String group = "\uf0c0";
    public static final String h_square = "\uf0fd";
    public static final String hacker_news = "\uf1d4";
    public static final String hand_o_down = "\uf0a7";
    public static final String hand_o_left = "\uf0a5";
    public static final String hand_o_right = "\uf0a4";
    public static final String hand_o_up = "\uf0a6";
    public static final String hdd_o = "\uf0a0";
    public static final String header = "\uf1dc";
    public static final String headphones = "\uf025";
    public static final String heart = "\uf004";
    public static final String heart_o = "\uf08a";
    public static final String heartbeat = "\uf21e";
    public static final String history = "\uf1da";
    public static final String home = "\uf015";
    public static final String hospital_o = "\uf0f8";
    public static final String hotel = "\uf236";
    public static final String html5 = "\uf13b";
    public static final String ils = "\uf20b";
    public static final String image = "\uf03e";
    public static final String inbox = "\uf01c";
    public static final String indent = "\uf03c";
    public static final String info = "\uf129";
    public static final String info_circle = "\uf05a";
    public static final String inr = "\uf156";
    public static final String instagram = "\uf16d";
    public static final String institution = "\uf19c";
    public static final String ioxhost = "\uf208";
    public static final String italic = "\uf033";
    public static final String joomla = "\uf1aa";
    public static final String jpy = "\uf157";
    public static final String jsfiddle = "\uf1cc";
    public static final String key = "\uf084";
    public static final String keyboard_o = "\uf11c";
    public static final String krw = "\uf159";
    public static final String language = "\uf1ab";
    public static final String laptop = "\uf109";
    public static final String lastfm = "\uf202";
    public static final String lastfm_square = "\uf203";
    public static final String leaf = "\uf06c";
    public static final String leanpub = "\uf212";
    public static final String legal = "\uf0e3";
    public static final String lemon_o = "\uf094";
    public static final String level_down = "\uf149";
    public static final String level_up = "\uf148";
    public static final String life_bouy = "\uf1cd";
    public static final String life_buoy = "\uf1cd";
    public static final String life_ring = "\uf1cd";
    public static final String life_saver = "\uf1cd";
    public static final String lightbulb_o = "\uf0eb";
    public static final String line_chart = "\uf201";
    public static final String link = "\uf0c1";
    public static final String linkedin = "\uf0e1";
    public static final String linkedin_square = "\uf08c";
    public static final String linux = "\uf17c";
    public static final String list = "\uf03a";
    public static final String list_alt = "\uf022";
    public static final String list_ol = "\uf0cb";
    public static final String list_ul = "\uf0ca";
    public static final String location_arrow = "\uf124";
    public static final String lock = "\uf023";
    public static final String long_arrow_down = "\uf175";
    public static final String long_arrow_left = "\uf177";
    public static final String long_arrow_right = "\uf178";
    public static final String long_arrow_up = "\uf176";
    public static final String magic = "\uf0d0";
    public static final String magnet = "\uf076";
    public static final String mail_forward = "\uf064";
    public static final String mail_reply = "\uf112";
    public static final String mail_reply_all = "\uf122";
    public static final String male = "\uf183";
    public static final String map_marker = "\uf041";
    public static final String mars = "\uf222";
    public static final String mars_double = "\uf227";
    public static final String mars_stroke = "\uf229";
    public static final String mars_stroke_h = "\uf22b";
    public static final String mars_stroke_v = "\uf22a";
    public static final String maxcdn = "\uf136";
    public static final String meanpath = "\uf20c";
    public static final String medium = "\uf23a";
    public static final String medkit = "\uf0fa";
    public static final String meh_o = "\uf11a";
    public static final String mercury = "\uf223";
    public static final String microphone = "\uf130";
    public static final String microphone_slash = "\uf131";
    public static final String minus = "\uf068";
    public static final String minus_circle = "\uf056";
    public static final String minus_square = "\uf146";
    public static final String minus_square_o = "\uf147";
    public static final String mobile = "\uf10b";
    public static final String mobile_phone = "\uf10b";
    public static final String money = "\uf0d6";
    public static final String moon_o = "\uf186";
    public static final String mortar_board = "\uf19d";
    public static final String motorcycle = "\uf21c";
    public static final String music = "\uf001";
    public static final String navicon = "\uf0c9";
    public static final String neuter = "\uf22c";
    public static final String newspaper_o = "\uf1ea";
    public static final String openid = "\uf19b";
    public static final String outdent = "\uf03b";
    public static final String pagelines = "\uf18c";
    public static final String paint_brush = "\uf1fc";
    public static final String paper_plane = "\uf1d8";
    public static final String paper_plane_o = "\uf1d9";
    public static final String paperclip = "\uf0c6";
    public static final String paragraph = "\uf1dd";
    public static final String paste = "\uf0ea";
    public static final String pause = "\uf04c";
    public static final String paw = "\uf1b0";
    public static final String paypal = "\uf1ed";
    public static final String pencil = "\uf040";
    public static final String pencil_square = "\uf14b";
    public static final String pencil_square_o = "\uf044";
    public static final String phone = "\uf095";
    public static final String phone_square = "\uf098";
    public static final String photo = "\uf03e";
    public static final String picture_o = "\uf03e";
    public static final String pie_chart = "\uf200";
    public static final String pied_piper = "\uf1a7";
    public static final String pied_piper_alt = "\uf1a8";
    public static final String pinterest = "\uf0d2";
    public static final String pinterest_p = "\uf231";
    public static final String pinterest_square = "\uf0d3";
    public static final String plane = "\uf072";
    public static final String play = "\uf04b";
    public static final String play_circle = "\uf144";
    public static final String play_circle_o = "\uf01d";
    public static final String plug = "\uf1e6";
    public static final String plus = "\uf067";
    public static final String plus_circle = "\uf055";
    public static final String plus_square = "\uf0fe";
    public static final String plus_square_o = "\uf196";
    public static final String power_off = "\uf011";
    public static final String print = "\uf02f";
    public static final String puzzle_piece = "\uf12e";
    public static final String qq = "\uf1d6";
    public static final String qrcode = "\uf029";
    public static final String question = "\uf128";
    public static final String question_circle = "\uf059";
    public static final String quote_left = "\uf10d";
    public static final String quote_right = "\uf10e";
    public static final String ra = "\uf1d0";
    public static final String random = "\uf074";
    public static final String rebel = "\uf1d0";
    public static final String recycle = "\uf1b8";
    public static final String reddit = "\uf1a1";
    public static final String reddit_square = "\uf1a2";
    public static final String refresh = "\uf021";
    public static final String remove = "\uf00d";
    public static final String renren = "\uf18b";
    public static final String reorder = "\uf0c9";
    public static final String repeat = "\uf01e";
    public static final String reply = "\uf112";
    public static final String reply_all = "\uf122";
    public static final String retweet = "\uf079";
    public static final String rmb = "\uf157";
    public static final String road = "\uf018";
    public static final String rocket = "\uf135";
    public static final String rotate_left = "\uf0e2";
    public static final String rotate_right = "\uf01e";
    public static final String rouble = "\uf158";
    public static final String rss = "\uf09e";
    public static final String rss_square = "\uf143";
    public static final String rub = "\uf158";
    public static final String ruble = "\uf158";
    public static final String rupee = "\uf156";
    public static final String save = "\uf0c7";
    public static final String scissors = "\uf0c4";
    public static final String search = "\uf002";
    public static final String search_minus = "\uf010";
    public static final String search_plus = "\uf00e";
    public static final String sellsy = "\uf213";
    public static final String send = "\uf1d8";
    public static final String send_o = "\uf1d9";
    public static final String server = "\uf233";
    public static final String share = "\uf064";
    public static final String share_alt = "\uf1e0";
    public static final String share_alt_square = "\uf1e1";
    public static final String share_square = "\uf14d";
    public static final String share_square_o = "\uf045";
    public static final String shekel = "\uf20b";
    public static final String sheqel = "\uf20b";
    public static final String shield = "\uf132";
    public static final String ship = "\uf21a";
    public static final String shirtsinbulk = "\uf214";
    public static final String shopping_cart = "\uf07a";
    public static final String sign_in = "\uf090";
    public static final String sign_out = "\uf08b";
    public static final String signal = "\uf012";
    public static final String simplybuilt = "\uf215";
    public static final String sitemap = "\uf0e8";
    public static final String skyatlas = "\uf216";
    public static final String skype = "\uf17e";
    public static final String slack = "\uf198";
    public static final String sliders = "\uf1de";
    public static final String slideshare = "\uf1e7";
    public static final String smile_o = "\uf118";
    public static final String soccer_ball_o = "\uf1e3";
    public static final String sort = "\uf0dc";
    public static final String sort_alpha_asc = "\uf15d";
    public static final String sort_alpha_desc = "\uf15e";
    public static final String sort_amount_asc = "\uf160";
    public static final String sort_amount_desc = "\uf161";
    public static final String sort_asc = "\uf0de";
    public static final String sort_desc = "\uf0dd";
    public static final String sort_down = "\uf0dd";
    public static final String sort_numeric_asc = "\uf162";
    public static final String sort_numeric_desc = "\uf163";
    public static final String sort_up = "\uf0de";
    public static final String soundcloud = "\uf1be";
    public static final String space_shuttle = "\uf197";
    public static final String spinner = "\uf110";
    public static final String spoon = "\uf1b1";
    public static final String spotify = "\uf1bc";
    public static final String square = "\uf0c8";
    public static final String square_o = "\uf096";
    public static final String stack_exchange = "\uf18d";
    public static final String stack_overflow = "\uf16c";
    public static final String star = "\uf005";
    public static final String star_half = "\uf089";
    public static final String star_half_empty = "\uf123";
    public static final String star_half_full = "\uf123";
    public static final String star_half_o = "\uf123";
    public static final String star_o = "\uf006";
    public static final String steam = "\uf1b6";
    public static final String steam_square = "\uf1b7";
    public static final String step_backward = "\uf048";
    public static final String step_forward = "\uf051";
    public static final String stethoscope = "\uf0f1";
    public static final String stop = "\uf04d";
    public static final String street_view = "\uf21d";
    public static final String strikethrough = "\uf0cc";
    public static final String stumbleupon = "\uf1a4";
    public static final String stumbleupon_circle = "\uf1a3";
    public static final String subscript = "\uf12c";
    public static final String subway = "\uf239";
    public static final String suitcase = "\uf0f2";
    public static final String sun_o = "\uf185";
    public static final String superscript = "\uf12b";
    public static final String support = "\uf1cd";
    public static final String table = "\uf0ce";
    public static final String tablet = "\uf10a";
    public static final String tachometer = "\uf0e4";
    public static final String tag = "\uf02b";
    public static final String tags = "\uf02c";
    public static final String tasks = "\uf0ae";
    public static final String taxi = "\uf1ba";
    public static final String tencent_weibo = "\uf1d5";
    public static final String terminal = "\uf120";
    public static final String text_height = "\uf034";
    public static final String text_width = "\uf035";
    public static final String th = "\uf00a";
    public static final String th_large = "\uf009";
    public static final String th_list = "\uf00b";
    public static final String thumb_tack = "\uf08d";
    public static final String thumbs_down = "\uf165";
    public static final String thumbs_o_down = "\uf088";
    public static final String thumbs_o_up = "\uf087";
    public static final String thumbs_up = "\uf164";
    public static final String ticket = "\uf145";
    public static final String times = "\uf00d";
    public static final String times_circle = "\uf057";
    public static final String times_circle_o = "\uf05c";
    public static final String tint = "\uf043";
    public static final String toggle_down = "\uf150";
    public static final String toggle_left = "\uf191";
    public static final String toggle_off = "\uf204";
    public static final String toggle_on = "\uf205";
    public static final String toggle_right = "\uf152";
    public static final String toggle_up = "\uf151";
    public static final String train = "\uf238";
    public static final String transgender = "\uf224";
    public static final String transgender_alt = "\uf225";
    public static final String trash = "\uf1f8";
    public static final String trash_o = "\uf014";
    public static final String tree = "\uf1bb";
    public static final String trello = "\uf181";
    public static final String trophy = "\uf091";
    public static final String truck = "\uf0d1";
    public static final String TRY = "\uf195";
    public static final String tty = "\uf1e4";
    public static final String tumblr = "\uf173";
    public static final String tumblr_square = "\uf174";
    public static final String turkish_lira = "\uf195";
    public static final String twitch = "\uf1e8";
    public static final String twitter = "\uf099";
    public static final String twitter_square = "\uf081";
    public static final String umbrella = "\uf0e9";
    public static final String underline = "\uf0cd";
    public static final String undo = "\uf0e2";
    public static final String university = "\uf19c";
    public static final String unlink = "\uf127";
    public static final String unlock = "\uf09c";
    public static final String unlock_alt = "\uf13e";
    public static final String unsorted = "\uf0dc";
    public static final String upload = "\uf093";
    public static final String usd = "\uf155";
    public static final String user = "\uf007";
    public static final String user_md = "\uf0f0";
    public static final String user_plus = "\uf234";
    public static final String user_secret = "\uf21b";
    public static final String user_times = "\uf235";
    public static final String users = "\uf0c0";
    public static final String venus = "\uf221";
    public static final String venus_double = "\uf226";
    public static final String venus_mars = "\uf228";
    /**
     * Version used when developing.
     */
    private static final String VERSION_DEV = "DEV";
    public static final String viacoin = "\uf237";
    public static final String video_camera = "\uf03d";
    public static final String vimeo_square = "\uf194";
    public static final String vine = "\uf1ca";
    public static final String vk = "\uf189";
    public static final String volume_down = "\uf027";
    public static final String volume_off = "\uf026";
    public static final String volume_up = "\uf028";
    public static final String warning = "\uf071";
    public static final String wechat = "\uf1d7";
    public static final String weibo = "\uf18a";
    public static final String weixin = "\uf1d7";
    public static final String whatsapp = "\uf232";
    public static final String wheelchair = "\uf193";
    public static final String wifi = "\uf1eb";
    public static final String windows = "\uf17a";
    public static final String won = "\uf159";
    public static final String wordpress = "\uf19a";
    public static final String wrench = "\uf0ad";
    public static final String xing = "\uf168";
    public static final String xing_square = "\uf169";
    public static final String yahoo = "\uf19e";
    public static final String yelp = "\uf1e9";
    public static final String yen = "\uf157";
    public static final String youtube = "\uf167";
    public static final String youtube_play = "\uf16a";
    public static final String youtube_square = "\uf166";

    private static long copy(InputStream input, OutputStream output, byte[] buffer) throws IOException {
        long count = 0;
        int n = 0;
        while (EOF != (n = input.read(buffer))) {
            output.write(buffer, 0, n);
            count += n;
        }
        return count;
    }

    /**
     * Return the current version.
     * 
     * @return
     */
    private static String getCurrentVersion() {
        // Get the version from the package manifest
        String version = FontAwesome.class.getPackage().getImplementationVersion();
        if (version == null) {
            return VERSION_DEV;
        }
        return version;
    }

    /**
     * Return a FontAwesome font for SWT.
     * 
     * @return the font or null.
     */
    public static Font getFont() {
        if (JFaceResources.getFontRegistry().hasValueFor(FONTAWESOME)) {
            return JFaceResources.getFontRegistry().get(FONTAWESOME);
        }
        if (!loadFont()) {
            return null;
        }
        FontData[] data = new FontData[] { new FontData("fontawesome", 14, SWT.NORMAL) };
        JFaceResources.getFontRegistry().put(FONTAWESOME, data);
        return JFaceResources.getFontRegistry().get(FONTAWESOME);
    }

    /**
     * Return a FontAwesome font for SWT.
     * 
     * @param size
     * @return
     */
    public static Font getFont(int size) {
        String name = FONTAWESOME + size;
        if (!JFaceResources.getFontRegistry().hasValueFor(FONTAWESOME)) {
            // GetFont() may return null, so handle this case.
            Font font = getFont();
            if (font == null) {
                return null;
            }
            FontData[] data = font.getFontData();
            for (FontData d : data) {
                d.setHeight(size);
            }
            JFaceResources.getFontRegistry().put(name, data);
        }
        return JFaceResources.getFontRegistry().get(name);
    }

    /**
     * Load the font from resources.
     * 
     * @return
     */
    private static boolean loadFont() {
        // Get file from classpath.
        InputStream in = FontAwesome.class.getResourceAsStream("fontawesome-webfont.ttf");
        if (in == null) {
            return false;
        }

        try {
            // Copy file to temp diretory.
            String temp = System.getProperty("java.io.tmpdir");
            final File tempfile = new File(temp, "fontawesome-webfont-" + getCurrentVersion() + ".ttf");
            tempfile.deleteOnExit();
            FileOutputStream out = new FileOutputStream(tempfile);
            try {
                copy(in, out, new byte[DEFAULT_BUFFER_SIZE]);
            } finally {
                out.close();
            }
            // Load the font.
            return Display.getDefault().loadFont(tempfile.getAbsolutePath());
        } catch (IOException e) {
            // This should rarely happen, but clearly, when this happen we need
            // to print something to a log file. Otherwise there is no way to debug this.
            e.printStackTrace();
            return false;
        }
    }
}