The Battle for Wesnoth  1.13.10+dev
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules Pages
hyperlink.hpp
Go to the documentation of this file.
1 /*
2  Copyright (C) 2015 - 2017 by Chris Beck<render787@gmail.com>
3  Part of the Battle for Wesnoth Project http://www.wesnoth.org/
4 
5  This program is free software; you can redistribute it and/or modify
6  it under the terms of the GNU General Public License as published by
7  the Free Software Foundation; either version 2 of the License, or
8  (at your option) any later version.
9  This program is distributed in the hope that it will be useful,
10  but WITHOUT ANY WARRANTY.
11 
12  See the COPYING file for more details.
13 */
14 
15 #pragma once
16 
17 #include "color.hpp"
19 
20 #include <string>
21 
22 namespace font {
23 
24 // Helper functions for link-aware text feature
25 
27 {
28  return (str.size() >= 8) && ((str.substr(0,7) == "http://") || (str.substr(0,8) == "https://"));
29 }
30 
31 inline std::string format_as_link(const std::string & link, color_t color) {
32  return "<span underline=\'single\' color=\'" + color.to_hex_string() + "\'>" + link + "</span>";
33 }
34 
35 } // end namespace font
std::vector< char_t > string
bool looks_like_url(utils::string_view str)
Definition: hyperlink.hpp:26
Note: Specific to sdl_ttf.
std::string to_hex_string() const
Returns the stored color in rrggbb hex format.
Definition: color.cpp:97
BOOST_CONSTEXPR size_type size() const BOOST_NOEXCEPT
std::string format_as_link(const std::string &link, color_t color)
Definition: hyperlink.hpp:31
BOOST_CXX14_CONSTEXPR basic_string_view substr(size_type pos, size_type n=npos) const