Java tutorial
/** * * Copyright 2015 levigo holding gmbh * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ package org.jadice.web.gwt.fontawesome.client; import com.google.gwt.dom.client.Document; import com.google.gwt.dom.client.Element; import com.google.gwt.safehtml.shared.SafeHtml; import com.google.gwt.safehtml.shared.SafeHtmlBuilder; public enum FontAwesome { /* Font Awesome uses the Unicode Private Use Area (PUA) to ensure screen readers do not read off random characters that represent icons */ GLASS("glass"), MUSIC("music"), SEARCH("search"), ENVELOPE_O("envelope-o"), HEART("heart"), STAR( "star"), STAR_O("star-o"), USER("user"), FILM("film"), TH_LARGE("th-large"), TH("th"), TH_LIST( "th-list"), CHECK("check"), REMOVE("remove"), CLOSE("close"), TIMES("times"), SEARCH_PLUS( "search-plus"), SEARCH_MINUS("search-minus"), POWER_OFF("power-off"), SIGNAL( "signal"), GEAR("gear"), COG("cog"), TRASH_O("trash-o"), HOME( "home"), FILE_O("file-o"), CLOCK_O("clock-o"), ROAD("road"), DOWNLOAD( "download"), ARROW_CIRCLE_O_DOWN( "arrow-circle-o-down"), ARROW_CIRCLE_O_UP( "arrow-circle-o-up"), INBOX( "inbox"), PLAY_CIRCLE_O( "play-circle-o"), ROTATE_RIGHT( "rotate-right"), REPEAT( "repeat"), REFRESH( "refresh"), LIST_ALT( "list-alt"), LOCK( "lock"), FLAG( "flag"), HEADPHONES( "headphones"), VOLUME_OFF( "volume-off"), VOLUME_DOWN( "volume-down"), VOLUME_UP( "volume-up"), QRCODE( "qrcode"), BARCODE( "barcode"), TAG( "tag"), TAGS( "tags"), BOOK( "book"), BOOKMARK( "bookmark"), PRINT( "print"), CAMERA( "camera"), FONT( "font"), BOLD( "bold"), ITALIC( "italic"), TEXT_HEIGHT( "text-height"), TEXT_WIDTH( "text-width"), ALIGN_LEFT( "align-left"), ALIGN_CENTER( "align-center"), ALIGN_RIGHT( "align-right"), ALIGN_JUSTIFY( "align-justify"), LIST( "list"), DEDENT( "dedent"), OUTDENT( "outdent"), INDENT( "indent"), VIDEO_CAMERA( "video-camera"), PHOTO( "photo"), IMAGE( "image"), PICTURE_O( "picture-o"), PENCIL( "pencil"), MAP_MARKER( "map-marker"), ADJUST( "adjust"), TINT( "tint"), EDIT( "edit"), PENCIL_SQUARE_O( "pencil-square-o"), SHARE_SQUARE_O( "share-square-o"), CHECK_SQUARE_O( "check-square-o"), ARROWS( "arrows"), STEP_BACKWARD( "step-backward"), FAST_BACKWARD( "fast-backward"), BACKWARD( "backward"), PLAY( "play"), PAUSE( "pause"), STOP( "stop"), FORWARD( "forward"), FAST_FORWARD( "fast-forward"), STEP_FORWARD( "step-forward"), EJECT( "eject"), CHEVRON_LEFT( "chevron-left"), CHEVRON_RIGHT( "chevron-right"), PLUS_CIRCLE( "plus-circle"), MINUS_CIRCLE( "minus-circle"), TIMES_CIRCLE( "times-circle"), CHECK_CIRCLE( "check-circle"), QUESTION_CIRCLE( "question-circle"), INFO_CIRCLE( "info-circle"), CROSSHAIRS( "crosshairs"), TIMES_CIRCLE_O( "times-circle-o"), CHECK_CIRCLE_O( "check-circle-o"), BAN( "ban"), ARROW_LEFT( "arrow-left"), ARROW_RIGHT( "arrow-right"), ARROW_UP( "arrow-up"), ARROW_DOWN( "arrow-down"), MAIL_FORWARD( "mail-forward"), SHARE( "share"), EXPAND( "expand"), COMPRESS( "compress"), PLUS( "plus"), MINUS( "minus"), ASTERISK( "asterisk"), EXCLAMATION_CIRCLE( "exclamation-circle"), GIFT( "gift"), LEAF( "leaf"), FIRE( "fire"), EYE( "eye"), EYE_SLASH( "eye-slash"), WARNING( "warning"), EXCLAMATION_TRIANGLE( "exclamation-triangle"), PLANE( "plane"), CALENDAR( "calendar"), RANDOM( "random"), COMMENT( "comment"), MAGNET( "magnet"), CHEVRON_UP( "chevron-up"), CHEVRON_DOWN( "chevron-down"), RETWEET( "retweet"), SHOPPING_CART( "shopping-cart"), FOLDER( "folder"), FOLDER_OPEN( "folder-open"), ARROWS_V( "arrows-v"), ARROWS_H( "arrows-h"), BAR_CHART_O( "bar-chart-o"), BAR_CHART( "bar-chart"), TWITTER_SQUARE( "twitter-square"), FACEBOOK_SQUARE( "facebook-square"), CAMERA_RETRO( "camera-retro"), KEY( "key"), GEARS( "gears"), COGS( "cogs"), COMMENTS( "comments"), THUMBS_O_UP( "thumbs-o-up"), THUMBS_O_DOWN( "thumbs-o-down"), STAR_HALF( "star-half"), HEART_O( "heart-o"), SIGN_OUT( "sign-out"), LINKEDIN_SQUARE( "linkedin-square"), THUMB_TACK( "thumb-tack"), EXTERNAL_LINK( "external-link"), SIGN_IN( "sign-in"), TROPHY( "trophy"), GITHUB_SQUARE( "github-square"), UPLOAD( "upload"), LEMON_O( "lemon-o"), PHONE( "phone"), SQUARE_O( "square-o"), BOOKMARK_O( "bookmark-o"), PHONE_SQUARE( "phone-square"), TWITTER( "twitter"), FACEBOOK_F( "facebook-f"), FACEBOOK( "facebook"), GITHUB( "github"), UNLOCK( "unlock"), CREDIT_CARD( "credit-card"), RSS( "rss"), HDD_O( "hdd-o"), BULLHORN( "bullhorn"), BELL( "bell"), CERTIFICATE( "certificate"), HAND_O_RIGHT( "hand-o-right"), HAND_O_LEFT( "hand-o-left"), HAND_O_UP( "hand-o-up"), HAND_O_DOWN( "hand-o-down"), ARROW_CIRCLE_LEFT( "arrow-circle-left"), ARROW_CIRCLE_RIGHT( "arrow-circle-right"), ARROW_CIRCLE_UP( "arrow-circle-up"), ARROW_CIRCLE_DOWN( "arrow-circle-down"), GLOBE( "globe"), WRENCH( "wrench"), TASKS( "tasks"), FILTER( "filter"), BRIEFCASE( "briefcase"), ARROWS_ALT( "arrows-alt"), GROUP( "group"), USERS( "users"), CHAIN( "chain"), LINK( "link"), CLOUD( "cloud"), FLASK( "flask"), CUT( "cut"), SCISSORS( "scissors"), COPY( "copy"), FILES_O( "files-o"), PAPERCLIP( "paperclip"), SAVE( "save"), FLOPPY_O( "floppy-o"), SQUARE( "square"), NAVICON( "navicon"), REORDER( "reorder"), BARS( "bars"), LIST_UL( "list-ul"), LIST_OL( "list-ol"), STRIKETHROUGH( "strikethrough"), UNDERLINE( "underline"), TABLE( "table"), MAGIC( "magic"), TRUCK( "truck"), PINTEREST( "pinterest"), PINTEREST_SQUARE( "pinterest-square"), GOOGLE_PLUS_SQUARE( "google-plus-square"), GOOGLE_PLUS( "google-plus"), MONEY( "money"), CARET_DOWN( "caret-down"), CARET_UP( "caret-up"), CARET_LEFT( "caret-left"), CARET_RIGHT( "caret-right"), COLUMNS( "columns"), UNSORTED( "unsorted"), SORT( "sort"), SORT_DOWN( "sort-down"), SORT_DESC( "sort-desc"), SORT_UP( "sort-up"), SORT_ASC( "sort-asc"), ENVELOPE( "envelope"), LINKEDIN( "linkedin"), ROTATE_LEFT( "rotate-left"), UNDO( "undo"), LEGAL( "legal"), GAVEL( "gavel"), DASHBOARD( "dashboard"), TACHOMETER( "tachometer"), COMMENT_O( "comment-o"), COMMENTS_O( "comments-o"), FLASH( "flash"), BOLT( "bolt"), SITEMAP( "sitemap"), UMBRELLA( "umbrella"), PASTE( "paste"), CLIPBOARD( "clipboard"), LIGHTBULB_O( "lightbulb-o"), EXCHANGE( "exchange"), CLOUD_DOWNLOAD( "cloud-download"), CLOUD_UPLOAD( "cloud-upload"), USER_MD( "user-md"), STETHOSCOPE( "stethoscope"), SUITCASE( "suitcase"), BELL_O( "bell-o"), COFFEE( "coffee"), CUTLERY( "cutlery"), FILE_TEXT_O( "file-text-o"), BUILDING_O( "building-o"), HOSPITAL_O( "hospital-o"), AMBULANCE( "ambulance"), MEDKIT( "medkit"), FIGHTER_JET( "fighter-jet"), BEER( "beer"), H_SQUARE( "h-square"), PLUS_SQUARE( "plus-square"), ANGLE_DOUBLE_LEFT( "angle-double-left"), ANGLE_DOUBLE_RIGHT( "angle-double-right"), ANGLE_DOUBLE_UP( "angle-double-up"), ANGLE_DOUBLE_DOWN( "angle-double-down"), ANGLE_LEFT( "angle-left"), ANGLE_RIGHT( "angle-right"), ANGLE_UP( "angle-up"), ANGLE_DOWN( "angle-down"), DESKTOP( "desktop"), LAPTOP( "laptop"), TABLET( "tablet"), MOBILE_PHONE( "mobile-phone"), MOBILE( "mobile"), CIRCLE_O( "circle-o"), QUOTE_LEFT( "quote-left"), QUOTE_RIGHT( "quote-right"), SPINNER( "spinner"), CIRCLE( "circle"), MAIL_REPLY( "mail-reply"), REPLY( "reply"), GITHUB_ALT( "github-alt"), FOLDER_O( "folder-o"), FOLDER_OPEN_O( "folder-open-o"), SMILE_O( "smile-o"), FROWN_O( "frown-o"), MEH_O( "meh-o"), GAMEPAD( "gamepad"), KEYBOARD_O( "keyboard-o"), FLAG_O( "flag-o"), FLAG_CHECKERED( "flag-checkered"), TERMINAL( "terminal"), CODE( "code"), MAIL_REPLY_ALL( "mail-reply-all"), REPLY_ALL( "reply-all"), STAR_HALF_EMPTY( "star-half-empty"), STAR_HALF_FULL( "star-half-full"), STAR_HALF_O( "star-half-o"), LOCATION_ARROW( "location-arrow"), CROP( "crop"), CODE_FORK( "code-fork"), UNLINK( "unlink"), CHAIN_BROKEN( "chain-broken"), QUESTION( "question"), INFO( "info"), EXCLAMATION( "exclamation"), SUPERSCRIPT( "superscript"), SUBSCRIPT( "subscript"), ERASER( "eraser"), PUZZLE_PIECE( "puzzle-piece"), MICROPHONE( "microphone"), MICROPHONE_SLASH( "microphone-slash"), SHIELD( "shield"), CALENDAR_O( "calendar-o"), FIRE_EXTINGUISHER( "fire-extinguisher"), ROCKET( "rocket"), MAXCDN( "maxcdn"), CHEVRON_CIRCLE_LEFT( "chevron-circle-left"), CHEVRON_CIRCLE_RIGHT( "chevron-circle-right"), CHEVRON_CIRCLE_UP( "chevron-circle-up"), CHEVRON_CIRCLE_DOWN( "chevron-circle-down"), HTML5( "html5"), CSS3( "css3"), ANCHOR( "anchor"), UNLOCK_ALT( "unlock-alt"), BULLSEYE( "bullseye"), ELLIPSIS_H( "ellipsis-h"), ELLIPSIS_V( "ellipsis-v"), RSS_SQUARE( "rss-square"), PLAY_CIRCLE( "play-circle"), TICKET( "ticket"), MINUS_SQUARE( "minus-square"), MINUS_SQUARE_O( "minus-square-o"), LEVEL_UP( "level-up"), LEVEL_DOWN( "level-down"), CHECK_SQUARE( "check-square"), PENCIL_SQUARE( "pencil-square"), EXTERNAL_LINK_SQUARE( "external-link-square"), SHARE_SQUARE( "share-square"), COMPASS( "compass"), TOGGLE_DOWN( "toggle-down"), CARET_SQUARE_O_DOWN( "caret-square-o-down"), TOGGLE_UP( "toggle-up"), CARET_SQUARE_O_UP( "caret-square-o-up"), TOGGLE_RIGHT( "toggle-right"), CARET_SQUARE_O_RIGHT( "caret-square-o-right"), EURO( "euro"), EUR( "eur"), GBP( "gbp"), DOLLAR( "dollar"), USD( "usd"), RUPEE( "rupee"), INR( "inr"), CNY( "cny"), RMB( "rmb"), YEN( "yen"), JPY( "jpy"), RUBLE( "ruble"), ROUBLE( "rouble"), RUB( "rub"), WON( "won"), KRW( "krw"), BITCOIN( "bitcoin"), BTC( "btc"), FILE( "file"), FILE_TEXT( "file-text"), SORT_ALPHA_ASC( "sort-alpha-asc"), SORT_ALPHA_DESC( "sort-alpha-desc"), SORT_AMOUNT_ASC( "sort-amount-asc"), SORT_AMOUNT_DESC( "sort-amount-desc"), SORT_NUMERIC_ASC( "sort-numeric-asc"), SORT_NUMERIC_DESC( "sort-numeric-desc"), THUMBS_UP( "thumbs-up"), THUMBS_DOWN( "thumbs-down"), YOUTUBE_SQUARE( "youtube-square"), YOUTUBE( "youtube"), XING( "xing"), XING_SQUARE( "xing-square"), YOUTUBE_PLAY( "youtube-play"), DROPBOX( "dropbox"), STACK_OVERFLOW( "stack-overflow"), INSTAGRAM( "instagram"), FLICKR( "flickr"), ADN( "adn"), BITBUCKET( "bitbucket"), BITBUCKET_SQUARE( "bitbucket-square"), TUMBLR( "tumblr"), TUMBLR_SQUARE( "tumblr-square"), LONG_ARROW_DOWN( "long-arrow-down"), LONG_ARROW_UP( "long-arrow-up"), LONG_ARROW_LEFT( "long-arrow-left"), LONG_ARROW_RIGHT( "long-arrow-right"), APPLE( "apple"), WINDOWS( "windows"), ANDROID( "android"), LINUX( "linux"), DRIBBBLE( "dribbble"), SKYPE( "skype"), FOURSQUARE( "foursquare"), TRELLO( "trello"), FEMALE( "female"), MALE( "male"), GITTIP( "gittip"), GRATIPAY( "gratipay"), SUN_O( "sun-o"), MOON_O( "moon-o"), ARCHIVE( "archive"), BUG( "bug"), VK( "vk"), WEIBO( "weibo"), RENREN( "renren"), PAGELINES( "pagelines"), STACK_EXCHANGE( "stack-exchange"), ARROW_CIRCLE_O_RIGHT( "arrow-circle-o-right"), ARROW_CIRCLE_O_LEFT( "arrow-circle-o-left"), TOGGLE_LEFT( "toggle-left"), CARET_SQUARE_O_LEFT( "caret-square-o-left"), DOT_CIRCLE_O( "dot-circle-o"), WHEELCHAIR( "wheelchair"), VIMEO_SQUARE( "vimeo-square"), TURKISH_LIRA( "turkish-lira"), TRY( "try"), PLUS_SQUARE_O( "plus-square-o"), SPACE_SHUTTLE( "space-shuttle"), SLACK( "slack"), ENVELOPE_SQUARE( "envelope-square"), WORDPRESS( "wordpress"), OPENID( "openid"), INSTITUTION( "institution"), BANK( "bank"), UNIVERSITY( "university"), MORTAR_BOARD( "mortar-board"), GRADUATION_CAP( "graduation-cap"), YAHOO( "yahoo"), GOOGLE( "google"), REDDIT( "reddit"), REDDIT_SQUARE( "reddit-square"), STUMBLEUPON_CIRCLE( "stumbleupon-circle"), STUMBLEUPON( "stumbleupon"), DELICIOUS( "delicious"), DIGG( "digg"), PIED_PIPER( "pied-piper"), PIED_PIPER_ALT( "pied-piper-alt"), DRUPAL( "drupal"), JOOMLA( "joomla"), LANGUAGE( "language"), FAX( "fax"), BUILDING( "building"), CHILD( "child"), PAW( "paw"), SPOON( "spoon"), CUBE( "cube"), CUBES( "cubes"), BEHANCE( "behance"), BEHANCE_SQUARE( "behance-square"), STEAM( "steam"), STEAM_SQUARE( "steam-square"), RECYCLE( "recycle"), AUTOMOBILE( "automobile"), CAR( "car"), CAB( "cab"), TAXI( "taxi"), TREE( "tree"), SPOTIFY( "spotify"), DEVIANTART( "deviantart"), SOUNDCLOUD( "soundcloud"), DATABASE( "database"), FILE_PDF_O( "file-pdf-o"), FILE_WORD_O( "file-word-o"), FILE_EXCEL_O( "file-excel-o"), FILE_POWERPOINT_O( "file-powerpoint-o"), FILE_PHOTO_O( "file-photo-o"), FILE_PICTURE_O( "file-picture-o"), FILE_IMAGE_O( "file-image-o"), FILE_ZIP_O( "file-zip-o"), FILE_ARCHIVE_O( "file-archive-o"), FILE_SOUND_O( "file-sound-o"), FILE_AUDIO_O( "file-audio-o"), FILE_MOVIE_O( "file-movie-o"), FILE_VIDEO_O( "file-video-o"), FILE_CODE_O( "file-code-o"), VINE( "vine"), CODEPEN( "codepen"), JSFIDDLE( "jsfiddle"), LIFE_BOUY( "life-bouy"), LIFE_BUOY( "life-buoy"), LIFE_SAVER( "life-saver"), SUPPORT( "support"), LIFE_RING( "life-ring"), CIRCLE_O_NOTCH( "circle-o-notch"), RA( "ra"), REBEL( "rebel"), GE( "ge"), EMPIRE( "empire"), GIT_SQUARE( "git-square"), GIT( "git"), HACKER_NEWS( "hacker-news"), TENCENT_WEIBO( "tencent-weibo"), QQ( "qq"), WECHAT( "wechat"), WEIXIN( "weixin"), SEND( "send"), PAPER_PLANE( "paper-plane"), SEND_O( "send-o"), PAPER_PLANE_O( "paper-plane-o"), HISTORY( "history"), GENDERLESS( "genderless"), CIRCLE_THIN( "circle-thin"), HEADER( "header"), PARAGRAPH( "paragraph"), SLIDERS( "sliders"), SHARE_ALT( "share-alt"), SHARE_ALT_SQUARE( "share-alt-square"), BOMB( "bomb"), SOCCER_BALL_O( "soccer-ball-o"), FUTBOL_O( "futbol-o"), TTY( "tty"), BINOCULARS( "binoculars"), PLUG( "plug"), SLIDESHARE( "slideshare"), TWITCH( "twitch"), YELP( "yelp"), NEWSPAPER_O( "newspaper-o"), WIFI( "wifi"), CALCULATOR( "calculator"), PAYPAL( "paypal"), GOOGLE_WALLET( "google-wallet"), CC_VISA( "cc-visa"), CC_MASTERCARD( "cc-mastercard"), CC_DISCOVER( "cc-discover"), CC_AMEX( "cc-amex"), CC_PAYPAL( "cc-paypal"), CC_STRIPE( "cc-stripe"), BELL_SLASH( "bell-slash"), BELL_SLASH_O( "bell-slash-o"), TRASH( "trash"), COPYRIGHT( "copyright"), AT( "at"), EYEDROPPER( "eyedropper"), PAINT_BRUSH( "paint-brush"), BIRTHDAY_CAKE( "birthday-cake"), AREA_CHART( "area-chart"), PIE_CHART( "pie-chart"), LINE_CHART( "line-chart"), LASTFM( "lastfm"), LASTFM_SQUARE( "lastfm-square"), TOGGLE_OFF( "toggle-off"), TOGGLE_ON( "toggle-on"), BICYCLE( "bicycle"), BUS( "bus"), IOXHOST( "ioxhost"), ANGELLIST( "angellist"), CC( "cc"), SHEKEL( "shekel"), SHEQEL( "sheqel"), ILS( "ils"), MEANPATH( "meanpath"), BUYSELLADS( "buysellads"), CONNECTDEVELOP( "connectdevelop"), DASHCUBE( "dashcube"), FORUMBEE( "forumbee"), LEANPUB( "leanpub"), SELLSY( "sellsy"), SHIRTSINBULK( "shirtsinbulk"), SIMPLYBUILT( "simplybuilt"), SKYATLAS( "skyatlas"), CART_PLUS( "cart-plus"), CART_ARROW_DOWN( "cart-arrow-down"), DIAMOND( "diamond"), SHIP( "ship"), USER_SECRET( "user-secret"), MOTORCYCLE( "motorcycle"), STREET_VIEW( "street-view"), HEARTBEAT( "heartbeat"), VENUS( "venus"), MARS( "mars"), MERCURY( "mercury"), TRANSGENDER( "transgender"), TRANSGENDER_ALT( "transgender-alt"), VENUS_DOUBLE( "venus-double"), MARS_DOUBLE( "mars-double"), VENUS_MARS( "venus-mars"), MARS_STROKE( "mars-stroke"), MARS_STROKE_V( "mars-stroke-v"), MARS_STROKE_H( "mars-stroke-h"), NEUTER( "neuter"), FACEBOOK_OFFICIAL( "facebook-official"), PINTEREST_P( "pinterest-p"), WHATSAPP( "whatsapp"), SERVER( "server"), USER_PLUS( "user-plus"), USER_TIMES( "user-times"), HOTEL( "hotel"), BED( "bed"), VIACOIN( "viacoin"), TRAIN( "train"), SUBWAY( "subway"), MEDIUM( "medium"),; private final String styleClass; FontAwesome(String styleClass) { this.styleClass = styleClass; } public String getStyleClass() { return styleClass; } public SafeHtml toSafeHtml() { return new SafeHtmlBuilder().appendHtmlConstant("<i class=\"fa fa-" + styleClass + "\"></i>").toSafeHtml(); } public Element createElement(Document document) { final Element element = document.createElement("i"); element.addClassName("fa"); element.addClassName("fa-" + styleClass); return element; } }