Added more padding to TrueType glyphs.

Updated dr_libs libraries.
URI now uses implicit constructors.
Improved documentation.

--HG--
branch : dev
This commit is contained in:
Martín Lucas Golini
2020-01-12 22:37:43 -03:00
parent 6fc8f92a8e
commit 9c7837bc01
10 changed files with 4858 additions and 2371 deletions

View File

@@ -1,4 +1,4 @@
SPHINXOPTS = -c .
SPHINXOPTS = -j auto -c .
SPHINXBUILD = sphinx-build
SOURCEDIR = ../rst
BUILDDIR = ../html

View File

@@ -93,7 +93,7 @@ a {
body,
.wy-body-for-nav {
background: #45494d;
background: #1a1d1f;
}
.wy-nav-content {
@@ -101,6 +101,10 @@ body,
}
@media screen and (min-width: 1100px) {
.wy-nav-top {
background: transparent;
}
.wy-nav-content {
background: #272b30;
}
@@ -154,29 +158,33 @@ pre.doxyrest-title-code-block {
#cfcfcf;
}
.wy-menu-vertical li.on a:hover, .wy-menu-vertical li.current > a:hover {
background: #5c5d5e;
.wy-menu-vertical li.on a:hover,
.wy-menu-vertical li.current > a:hover {
background: #434a50;
}
.wy-menu-vertical li.on a, .wy-menu-vertical li.current > a {
color: #e6e5e5;
background: #5c5d5e;
background: #2e3337;
}
.wy-menu-vertical li.toctree-l2.current > a {
background: #5f6264;
background: #2e3337;
}
.wy-menu-vertical li.toctree-l2 a, .wy-menu-vertical li.toctree-l3 a, .wy-menu-vertical li.toctree-l4 a {
.wy-menu-vertical li.toctree-l2 a,
.wy-menu-vertical li.toctree-l3 a,
.wy-menu-vertical li.toctree-l4 a {
color: #dedede;
}
.wy-menu-vertical li.toctree-l2.current li.toctree-l3 > a {
background: #575a5c;
background: #2b3033;
}
.wy-menu-vertical li.toctree-l3.current li.toctree-l4 > a {
background: #5a5c5e;
.wy-menu-vertical li.toctree-l3.current li.toctree-l4 > a,
.wy-menu-vertical li.current a {
background: #2e3337;
}
.wy-menu-vertical li.current a {
@@ -188,18 +196,26 @@ pre.doxyrest-title-code-block {
}
.wy-nav-side {
background: #45494d;
background: #2b3033;
}
.wy-menu-vertical a:hover {
background-color: #5c5f62;
background-color: #434a50;
}
.wy-menu-vertical li.on a:hover span.toctree-expand, .wy-menu-vertical li.current > a:hover span.toctree-expand {
.wy-menu-vertical li.toctree-l2.current li.toctree-l3 > a:hover,
.wy-menu-vertical li.toctree-l3.current li.toctree-l4 > a:hover,
.wy-menu-vertical li.current a:hover {
background-color: #434a50;
}
.wy-menu-vertical li.on a:hover span.toctree-expand,
.wy-menu-vertical li.current > a:hover span.toctree-expand {
color: white;
}
.wy-menu-vertical li.on a span.toctree-expand, .wy-menu-vertical li.current > a span.toctree-expand {
.wy-menu-vertical li.on a span.toctree-expand,
.wy-menu-vertical li.current > a span.toctree-expand {
color: #ccc;
}
@@ -212,7 +228,7 @@ pre.doxyrest-title-code-block {
}
.wy-menu-vertical li.current a:hover {
background: #676a6c;
background: #434a50;
}
.highlight .err {
@@ -242,6 +258,12 @@ code, .rst-content tt, .rst-content code {
color: white;
}
.wy-side-nav-search input[type="text"] {
box-shadow: none;
border-radius: 0px;
border-color: #999;
}
.rst-content .highlighted {
background: #0F87F130;
}
@@ -249,3 +271,8 @@ code, .rst-content tt, .rst-content code {
.wy-nav-content {
max-width: 1280px;
}
.wy-menu-vertical li.toctree-l1.current > a {
border-bottom: solid 1px #666;
border-top: solid 1px #666;
}

View File

@@ -541,7 +541,7 @@ class EE_API Http : NonCopyable {
std::map<std::string, std::string> mParams;
};
/** HTTP Client Pool
/** HTTP Client Pool.
* Will keep the instances of the HTTP clients until the Pool is destroyed.
* Acts as a host client cache.
*/
@@ -741,20 +741,42 @@ Usage example:
Http http;
// We'll work on http://www.google.com
http.setHost("http://www.google.com");
http.setHost( "http://www.google.com" );
// Prepare a request to get the 'features.php' page
Http::Request request("features.php");
Http::Request request( "features.php" );
// Send the request
Http::Response response = http.sendRequest(request);
// Check the status code and display the result
Http::Response::Status status = response.getStatus();
if (status == Http::Response::Ok) {
if ( status == Http::Response::Ok ) {
std::cout << response.getBody() << std::endl;
} else {
std::cout << "Error " << status << std::endl;
}
@endcode
Shorthand methods are also provided:
@code
Http::Response response = Http::get( "http://www.google.com" );
if ( response.getStatus() == Http::Response::Ok ) {
std::cout << response.getBody() << std::endl;
} else {
std::cout << "Error " << response.getStatus() << std::endl;
}
@endcode
You can also use the shorthand async alternative method:
@code
Http::getAsync(
[=]( const Http&, Http::Request&, Http::Response& response ) {
if ( response.getStatus() == Http::Response::Ok) {
std::cout << response.getBody() << std::endl;
} else {
std::cout << "Error " << response.getStatus() << std::endl;
}
}, "http://www.google.com" );
@endcode
*/

View File

@@ -7,8 +7,16 @@ namespace EE { namespace Network { namespace SSL {
class SSLSocketImpl;
/** TLS over TCP socket implementation. **/
class EE_API SSLSocket : public TcpSocket {
public:
/** @brief This is the certificate location in the file system.
** If no certificate path is provided it will try to use the default CA bundle
** provided in most OSes. If no CA bundle is found on the current OS it will fallback to
** "assets/ca-bundle.pem".
** The path can be inside of any open EE::System::Pack.
** This should be set before using any SSLSocket connection.
*/
static std::string CertificatesPath;
static bool init();

View File

@@ -56,10 +56,10 @@ class EE_API URI {
URI();
/** Parses an URI from the given string. */
explicit URI( const std::string& uri );
URI( const std::string& uri );
/** Parses an URI from the given string. */
explicit URI( const char* uri );
URI( const char* uri );
/** Creates an URI from its parts. */
URI( const std::string& scheme, const std::string& pathEtc );

View File

@@ -44,7 +44,7 @@ bool SoundFileReaderMp3::open( IOStream& stream, Info& info ) {
stream.seek( 0 );
if ( drmp3_init( mMp3, drmp3_func_read, drmp3_func_seek, &stream, NULL ) ) {
if ( drmp3_init( mMp3, drmp3_func_read, drmp3_func_seek, &stream, NULL, NULL ) ) {
info.channelCount = mChannelCount = mMp3->channels;
info.sampleRate = mMp3->sampleRate;
info.sampleCount = mp3info.frames * DRMP3_MAX_SAMPLES_PER_FRAME;

View File

@@ -530,7 +530,7 @@ Glyph FontTrueType::loadGlyph( Uint32 codePoint, unsigned int characterSize, boo
if ( ( width > 0 ) && ( height > 0 ) ) {
// Leave a small padding around characters, so that filtering doesn't
// pollute them with pixels from neighbors
const int padding = 1;
const int padding = 2;
width += 2 * padding;
height += 2 * padding;

View File

@@ -1127,15 +1127,16 @@ void Text::addLine( std::vector<VertexCoords>& vertices, Float lineLength, Float
void Text::addGlyphQuad( std::vector<VertexCoords>& vertices, Vector2f position,
const EE::Graphics::Glyph& glyph, Float italic, Float outlineThickness,
Int32 centerDiffX ) {
Float left = glyph.bounds.Left;
Float top = glyph.bounds.Top;
Float right = glyph.bounds.Left + glyph.bounds.Right;
Float bottom = glyph.bounds.Top + glyph.bounds.Bottom;
Float padding = 1.0;
Float left = glyph.bounds.Left - padding;
Float top = glyph.bounds.Top - padding;
Float right = glyph.bounds.Left + glyph.bounds.Right + padding;
Float bottom = glyph.bounds.Top + glyph.bounds.Bottom + padding;
Float u1 = static_cast<Float>( glyph.textureRect.Left );
Float v1 = static_cast<Float>( glyph.textureRect.Top );
Float u2 = static_cast<Float>( glyph.textureRect.Left + glyph.textureRect.Right );
Float v2 = static_cast<Float>( glyph.textureRect.Top + glyph.textureRect.Bottom );
Float u1 = static_cast<Float>( glyph.textureRect.Left - padding );
Float v1 = static_cast<Float>( glyph.textureRect.Top - padding );
Float u2 = static_cast<Float>( glyph.textureRect.Left + glyph.textureRect.Right + padding );
Float v2 = static_cast<Float>( glyph.textureRect.Top + glyph.textureRect.Bottom + padding );
VertexCoords vc;
if ( GLi->quadsSupported() ) {

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff