1
0
mirror of https://github.com/vcmi/vcmi.git synced 2024-11-24 08:32:34 +02:00
vcmi/client/windows/CMessage.h
Johannes Schauer Marin Rodrigues a1a5bc28c2
convert line endings from CRLF (Windows) to LF (Linux/Unix)
Mixed line endings cause problems when exporting patches with
git-format-patch and then trying to "git am" a patch with mixed and
non-matching line endings. In such a situation git will fail to apply
the patch.

This commit runs the dos2unix tools on the remaining files with CRLF
(\r\n) line endings to convert them to line-feeds (\n) only.

Files that are Windows specific like *.vcxproj and *.props files were
not converted.

Closes: #3073
2023-10-19 16:23:21 +02:00

51 lines
1.3 KiB
C++

/*
* CMessage.h, part of VCMI engine
*
* Authors: listed in file AUTHORS in main folder
*
* License: GNU General Public License v2.0 or later
* Full text of license available in license.txt file, in main folder
*
*/
#pragma once
#include "../render/EFont.h"
#include "../../lib/GameConstants.h"
struct SDL_Surface;
class CInfoWindow;
class CComponent;
VCMI_LIB_NAMESPACE_BEGIN
class ColorRGBA;
VCMI_LIB_NAMESPACE_END
/// Class which draws formatted text messages and generates chat windows
class CMessage
{
/// Draw simple dialog box (borders and background only)
static SDL_Surface * drawDialogBox(int w, int h, PlayerColor playerColor = PlayerColor(1));
public:
/// Draw border on exiting surface
static void drawBorder(PlayerColor playerColor, SDL_Surface * ret, int w, int h, int x=0, int y=0);
static void drawIWindow(CInfoWindow * ret, std::string text, PlayerColor player);
/// split text in lines
static std::vector<std::string> breakText(std::string text, size_t maxLineWidth, EFonts font);
/// Try to guess a header of a message
static std::string guessHeader(const std::string & msg);
/// For convenience
static int guessHeight(const std::string & string, int width, EFonts fnt);
static int getEstimatedComponentHeight(int numComps);
/// constructor
static void init();
/// destructor
static void dispose();
};