mirror of
https://github.com/Ponce/slackbuilds
synced 2024-11-16 19:50:19 +01:00
e99d3b8224
Signed-off-by: Matteo Bernardini <ponce@slackbuilds.org> Signed-off-by: Willy Sudiarto Raharjo <willysr@slackbuilds.org>
103 lines
3.7 KiB
Diff
103 lines
3.7 KiB
Diff
--- UI/CombatReport/GraphicalSummary.cpp 2021-07-10 14:11:25.281161865 -0500
|
|
+++ UI/CombatReport/GraphicalSummary.cpp 2021-07-10 14:11:34.010981701 -0500
|
|
@@ -409,91 +409,6 @@
|
|
m_y_axis_label->MoveTo(GG::Pt(-m_y_axis_label->MinUsableSize().x / 2 - AXIS_WIDTH, Height()/2 - m_y_axis_label->Height()/2));
|
|
}
|
|
|
|
- void DrawArrow(GG::Pt begin, GG::Pt end) {
|
|
- double head_width = 5.0;
|
|
- // A vector (math) of the arrow we wish to draw
|
|
- GG::Pt direction = end - begin;
|
|
- double length = sqrt(1.0*(Value(direction.x)*Value(direction.x) +
|
|
- Value(direction.y)*Value(direction.y)));
|
|
- if (length == 0) {
|
|
- return;
|
|
- }
|
|
-
|
|
- // The point in the main line of the arrow,
|
|
- // paraller to which the head ends
|
|
- // \.
|
|
- // \.
|
|
- // --------h-->
|
|
- // /.
|
|
- // /.
|
|
- // h is at the handle
|
|
- GG::Pt handle;
|
|
- // How much to move off the handle to get to
|
|
- // the end point of one of the head lines
|
|
- GG::X delta_x;
|
|
- GG::Y delta_y;
|
|
-
|
|
- if (direction.x != 0 && direction.y != 0) {
|
|
- // In a skewed arrow we need
|
|
- // a bit of geometry to figure out the head
|
|
- double x = Value(direction.x);
|
|
- double y = Value(direction.y);
|
|
- double normalizer = head_width / sqrt(1 + x*x / (y*y));
|
|
- delta_x = GG::X(normalizer);
|
|
- delta_y = GG::Y(- x / y * normalizer);
|
|
-
|
|
- handle = end - GG::Pt((head_width / length) * direction.x, (head_width / length) * direction.y);
|
|
- } else if (direction.x == 0) {
|
|
- // Vertical arrow
|
|
- handle = end;
|
|
- handle.y -= boost::math::sign(Value(direction.y))*GG::Y(head_width);
|
|
- delta_x = GG::X(head_width);
|
|
- delta_y = GG::Y0;
|
|
- } else {
|
|
- //horizontal arrow
|
|
- handle = end;
|
|
- handle.x -= boost::math::sign(Value(direction.x)) * GG::X(head_width);
|
|
- delta_x = GG::X0;
|
|
- delta_y = GG::Y(head_width);
|
|
- }
|
|
-
|
|
- GG::Pt left_head = handle;
|
|
- GG::Pt right_head = handle;
|
|
-
|
|
- left_head.x += delta_x;
|
|
- left_head.y += delta_y;
|
|
- // The other line is on the opposite side of the handle
|
|
- right_head.x -= delta_x;
|
|
- right_head.y -= delta_y;
|
|
-
|
|
- GG::glColor(GG::CLR_WHITE);
|
|
- glLineWidth(2);
|
|
- glDisable(GL_TEXTURE_2D);
|
|
-
|
|
- GG::GL2DVertexBuffer verts;
|
|
- verts.reserve(6);
|
|
- verts.store(Value(begin.x), Value(begin.y));
|
|
- verts.store(Value(end.x), Value(end.y));
|
|
- verts.store(Value(end.x), Value(end.y));
|
|
- verts.store(Value(left_head.x), Value(left_head.y));
|
|
- verts.store(Value(end.x), Value(end.y));
|
|
- verts.store(Value(right_head.x),Value(right_head.y));
|
|
- verts.activate();
|
|
-
|
|
- glDrawArrays(GL_LINES, 0, verts.size());
|
|
-
|
|
- glEnable(GL_TEXTURE_2D);
|
|
- }
|
|
-
|
|
- void Render() override {
|
|
- // Draw the axes outside th3e client area
|
|
- GG::Pt begin(ClientUpperLeft().x - AXIS_WIDTH/2, ClientLowerRight().y + AXIS_HEIGHT/2);
|
|
- GG::Pt x_end(ClientLowerRight().x, begin.y);
|
|
- GG::Pt y_end(begin.x, ClientUpperLeft().y);
|
|
- DrawArrow(begin, x_end);
|
|
- DrawArrow(begin, y_end);
|
|
- }
|
|
-
|
|
void SizeMove(const GG::Pt& ul, const GG::Pt& lr) override {
|
|
GG::Wnd::SizeMove(ul, lr);
|
|
DoLayout();
|
|
--- universe/Conditions.cpp 2021-07-10 14:11:05.049579392 -0500
|
|
+++ universe/Conditions.cpp 2021-07-10 14:13:39.582389758 -0500
|
|
@@ -1,5 +1,6 @@
|
|
#include "Conditions.h"
|
|
|
|
+#include <cfloat>
|
|
#include "../util/Logger.h"
|
|
#include "../util/Random.h"
|
|
#include "../util/i18n.h"
|