001/*
002 *  Copyright 2012 GWT-Bootstrap
003 *
004 *  Licensed under the Apache License, Version 2.0 (the "License");
005 *  you may not use this file except in compliance with the License.
006 *  You may obtain a copy of the License at
007 *
008 *      http://www.apache.org/licenses/LICENSE-2.0
009 *
010 *  Unless required by applicable law or agreed to in writing, software
011 *  distributed under the License is distributed on an "AS IS" BASIS,
012 *  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
013 *  See the License for the specific language governing permissions and
014 *  limitations under the License.
015 */
016package com.github.gwtbootstrap.client.ui.constants;
017
018import com.github.gwtbootstrap.client.ui.base.Style;
019
020//@formatter:off
021
022/**
023 * Type of the <a href="http://glyphicons.com/">Glyphicon</a>
024 * and <a href="http://fortawesome.github.com/Font-Awesome/">Font Awesome</a>.
025 *
026 * @author Carlos Alexandro Becker
027 * @author Dominik Mayer
028 * @see <a href="http://twitter.github.com/bootstrap/base-css.html#icons">Bootstrap documentation</a>
029 * @see <a href="http://fortawesome.github.com/Font-Awesome/">Font Awesome docs</a>
030 * @since 2.0.4.0
031 */
032//@formatter:on
033public enum IconType implements Style {
034
035    // font awesome icons
036    ADJUST("adjust"),
037    ALIGN_CENTER("align-center"),
038    ALIGN_JUSTIFY("align-justify"),
039    ALIGN_LEFT("align-left"),
040    ALIGN_RIGHT("align-right"),
041    ARROW_DOWN("arrow-down"),
042    ARROW_LEFT("arrow-left"),
043    ARROW_RIGHT("arrow-right"),
044    ARROW_UP("arrow-up"),
045    ASTERISK("asterisk"),
046    BACKWARD("backward"),
047    BAN_CIRCLE("ban-circle"),
048    BAR_CHART("bar-chart"),
049    BARCODE("barcode"),
050    BEAKER("beaker"),
051    BELL("bell"),
052    BOLD("bold"),
053    BOLT("bolt"),
054    BOOK("book"),
055    BOOKMARK("bookmark"),
056    BOOKMARK_EMPTY("bookmark-empty"),
057    BRIEFCASE("briefcase"),
058    BULLHORN("bullhorn"),
059    CALENDAR("calendar"),
060    CAMERA("camera"),
061    CAMERA_RETRO("camera-retro"),
062    CARET_DOWN("caret-down"),
063    CARET_LEFT("caret-left"),
064    CARET_RIGHT("caret-right"),
065    CARET_UP("caret-up"),
066    CERTIFICATE("certificate"),
067    CHECK("check"),
068    CHECK_EMPTY("check-empty"),
069    CHEVRON_DOWN("chevron-down"),
070    CHEVRON_LEFT("chevron-left"),
071    CHEVRON_RIGHT("chevron-right"),
072    CHEVRON_UP("chevron-up"),
073    CIRCLE_ARROW_DOWN("circle-arrow-down"),
074    CIRCLE_ARROW_LEFT("circle-arrow-left"),
075    CIRCLE_ARROW_RIGHT("circle-arrow-right"),
076    CIRCLE_ARROW_UP("circle-arrow-up"),
077    CLOUD("cloud"),
078    COG("cog"),
079    COGS("cogs"),
080    COLUMNS("columns"),
081    COMMENT("comment"),
082    COMMENT_ALT("comment-alt"),
083    COMMENTS("comments"),
084    COMMENTS_ALT("comments-alt"),
085    COPY("copy"),
086    CREDIT_CARD("credit-card"),
087    CUT("cut"),
088    DASHBOARD("dashboard"),
089    DOWNLOAD("download"),
090    DOWNLOAD_ALT("download-alt"),
091    EDIT("edit"),
092    EJECT("eject"),
093    ENVELOPE("envelope"),
094    ENVELOPE_ALT("envelope-alt"),
095    EXCLAMATION_SIGN("exclamation-sign"),
096    EXTERNAL_LINK("external-link"),
097    EYE_CLOSE("eye-close"),
098    EYE_OPEN("eye-open"),
099    FACEBOOK("facebook"),
100    FACEBOOK_SIGN("facebook-sign"),
101    FACETIME_VIDEO("facetime-video"),
102    FAST_BACKWARD("fast-backward"),
103    FAST_FORWARD("fast-forward"),
104    FILE("file"),
105    FILM("film"),
106    FILTER("filter"),
107    FIRE("fire"),
108    FLAG("flag"),
109    FOLDER_CLOSE("folder-close"),
110    FOLDER_OPEN("folder-open"),
111    FONT("font"),
112    FORWARD("forward"),
113    FULLSCREEN("fullscreen"),
114    GIFT("gift"),
115    GITHUB("github"),
116    GITHUB_SIGN("github-sign"),
117    GLASS("glass"),
118    GLOBE("globe"),
119    GOOGLE_PLUS("google-plus"),
120    GOOGLE_PLUS_SIGN("google-plus-sign"),
121    GROUP("group"),
122    HAND_DOWN("hand-down"),
123    HAND_LEFT("hand-left"),
124    HAND_RIGHT("hand-right"),
125    HAND_UP("hand-up"),
126    HDD("hdd"),
127    HEADPHONES("headphones"),
128    HEART("heart"),
129    HEART_EMPTY("heart-empty"),
130    HOME("home"),
131    INBOX("inbox"),
132    INDENT_LEFT("indent-left"),
133    INDENT_RIGHT("indent-right"),
134    INFO_SIGN("info-sign"),
135    ITALIC("italic"),
136    KEY("key"),
137    LEAF("leaf"),
138    LEGAL("legal"),
139    LEMON("lemon"),
140    LINK("link"),
141    LINKEDIN("linkedin"),
142    LINKEDIN_SIGN("linkedin-sign"),
143    LIST("list"),
144    LIST_ALT("list-alt"),
145    LIST_OL("list-ol"),
146    LIST_UL("list-ul"),
147    LOCK("lock"),
148    MAGIC("magic"),
149    MAGNET("magnet"),
150    MAP_MARKER("map-marker"),
151    MINUS("minus"),
152    MINUS_SIGN("minus-sign"),
153    MONEY("money"),
154    MOVE("move"),
155    MUSIC("music"),
156    OFF("off"),
157    OK("ok"),
158    OK_CIRCLE("ok-circle"),
159    OK_SIGN("ok-sign"),
160    PAPER_CLIP("paper-clip"),
161    PASTE("paste"),
162    PAUSE("pause"),
163    PENCIL("pencil"),
164    PHONE("phone"),
165    PHONE_SIGN("phone-sign"),
166    PICTURE("picture"),
167    PINTEREST("pinterest"),
168    PINTEREST_SIGN("pinterest-sign"),
169    PLANE("plane"),
170    PLAY("play"),
171    PLAY_CIRCLE("play-circle"),
172    PLUS("plus"),
173    PLUS_SIGN("plus-sign"),
174    PRINT("print"),
175    PUSHPIN("pushpin"),
176    QRCODE("qrcode"),
177    QUESTION_SIGN("question-sign"),
178    RANDOM("random"),
179    REFRESH("refresh"),
180    REMOVE("remove"),
181    REMOVE_CIRCLE("remove-circle"),
182    REMOVE_SIGN("remove-sign"),
183    REORDER("reorder"),
184    REPEAT("repeat"),
185    RESIZE_FULL("resize-full"),
186    RESIZE_HORIZONTAL("resize-horizontal"),
187    RESIZE_SMALL("resize-small"),
188    RESIZE_VERTICAL("resize-vertical"),
189    RETWEET("retweet"),
190    ROAD("road"),
191    RSS("rss"),
192    SAVE("save"),
193    SCREENSHOT("screenshot"),
194    SEARCH("search"),
195    SHARE("share"),
196    SHARE_ALT("share-alt"),
197    SHOPPING_CART("shopping-cart"),
198    SIGN_BLANK("sign-blank"),
199    SIGNAL("signal"),
200    SIGNIN("signin"),
201    SIGNOUT("signout"),
202    SITEMAP("sitemap"),
203    SORT("sort"),
204    SORT_DOWN("sort-down"),
205    SORT_UP("sort-up"),
206    STAR("star"),
207    STAR_EMPTY("star-empty"),
208    STAR_HALF("star-half"),
209    STEP_BACKWARD("step-backward"),
210    STEP_FORWARD("step-forward"),
211    STOP("stop"),
212    STRIKETHROUGH("strikethrough"),
213    TABLE("table"),
214    TAG("tag"),
215    TAGS("tags"),
216    TASKS("tasks"),
217    TEXT_HEIGHT("text-height"),
218    TEXT_WIDTH("text-width"),
219    TH("th"),
220    TH_LARGE("th-large"),
221    TH_LIST("th-list"),
222    THUMBS_DOWN("thumbs-down"),
223    THUMBS_UP("thumbs-up"),
224    TIME("time"),
225    TINT("tint"),
226    TRASH("trash"),
227    TROPHY("trophy"),
228    TRUCK("truck"),
229    TWITTER("twitter"),
230    TWITTER_SIGN("twitter-sign"),
231    UMBRELLA("umbrella"),
232    UNDERLINE("underline"),
233    UNDO("undo"),
234    UNLOCK("unlock"),
235    UPLOAD("upload"),
236    UPLOAD_ALT("upload-alt"),
237    USER("user"),
238    USER_MD("user-md"),
239    VOLUME_DOWN("volume-down"),
240    VOLUME_OFF("volume-off"),
241    VOLUME_UP("volume-up"),
242    WARNING_SIGN("warning-sign"),
243    WRENCH("wrench"),
244    ZOOM_IN("zoom-in"),
245    ZOOM_OUT("zoom-out"),
246
247    // original icons from bootstrap, that not exist in font awesome page, but 'exists'
248    BAR("bar");
249
250    private static final String PREFIX = "icon-";
251
252    private String className;
253
254    private IconType(String className) {
255        this.className = className;
256    }
257
258    /**
259     * {@inheritDoc}
260     */
261    @Override
262    public String get() {
263        return PREFIX + className;
264    }
265}