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     */
016    package com.github.gwtbootstrap.client.ui.constants;
017    
018    import 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
033    public 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    }