Ajout de Jolt Physics + 1ere version des factory entitecomposants - camera, transform, rigidbody, collider, renderer
This commit is contained in:
50
lib/All/JoltPhysics/TestFramework/UI/UIStaticText.h
Normal file
50
lib/All/JoltPhysics/TestFramework/UI/UIStaticText.h
Normal file
@@ -0,0 +1,50 @@
|
||||
// Jolt Physics Library (https://github.com/jrouwe/JoltPhysics)
|
||||
// SPDX-FileCopyrightText: 2021 Jorrit Rouwe
|
||||
// SPDX-License-Identifier: MIT
|
||||
|
||||
#pragma once
|
||||
|
||||
#include <UI/UIElement.h>
|
||||
#include <Renderer/Font.h>
|
||||
|
||||
/// Static text string
|
||||
class UIStaticText : public UIElement
|
||||
{
|
||||
public:
|
||||
JPH_DECLARE_RTTI_VIRTUAL(JPH_NO_EXPORT, UIStaticText)
|
||||
|
||||
/// Cloning / copying
|
||||
virtual void CopyTo(UIElement *ioElement) const override;
|
||||
|
||||
/// Set properties
|
||||
void SetTextColor(ColorArg inColor) { mTextColor = inColor; }
|
||||
void SetDisabledTextColor(ColorArg inColor) { mDisabledTextColor = inColor; }
|
||||
void SetFont(const Font *inFont) { mFont = inFont; }
|
||||
void SetText(const string_view &inText) { mText = inText; }
|
||||
void SetTextPadding(int inTop, int inLeft, int inBottom, int inRight) { mTextPadTop = inTop; mTextPadLeft = inLeft; mTextPadBottom = inBottom; mTextPadRight = inRight; }
|
||||
void SetTextAlignment(EAlignment inAlignment) { JPH_ASSERT(inAlignment == LEFT || inAlignment == RIGHT || inAlignment == CENTER); mTextAlignment = inAlignment; }
|
||||
void SetWrap(bool inWrap) { mWrap = inWrap; }
|
||||
|
||||
/// Draw element
|
||||
virtual void Draw() const override;
|
||||
|
||||
/// Calculate auto layout
|
||||
virtual void AutoLayout() override;
|
||||
|
||||
protected:
|
||||
/// Draw element custom
|
||||
void DrawCustom(ColorArg inColor) const;
|
||||
|
||||
String GetWrappedText() const;
|
||||
|
||||
RefConst<Font> mFont;
|
||||
String mText;
|
||||
Color mTextColor { Color(220, 220, 200) };
|
||||
Color mDisabledTextColor { Color::sGrey };
|
||||
int mTextPadLeft = 0;
|
||||
int mTextPadRight = 0;
|
||||
int mTextPadTop = 0;
|
||||
int mTextPadBottom = 0;
|
||||
EAlignment mTextAlignment = LEFT;
|
||||
bool mWrap = false;
|
||||
};
|
||||
Reference in New Issue
Block a user