Skip to content
LeviMC
English
AutoLightDark
LeviLamina
Loading...
Searching...
No Matches
SpriteComponent.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/client/gui/ClipDirection.h"
7#include "mc/client/gui/SliceSize.h"
8#include "mc/client/gui/TileDirection.h"
9#include "mc/client/gui/UITextureInfoPtr.h"
10#include "mc/client/gui/controls/RenderableComponent.h"
11#include "mc/client/gui/controls/UIMaterialType.h"
12#include "mc/deps/core/file/PathBuffer.h"
13#include "mc/deps/core/math/Color.h"
14#include "mc/deps/core/resource/BackwardsCompatTextureInfo.h"
15#include "mc/deps/core/resource/ResourceLocation.h"
16#include "mc/deps/core_graphics/ImageDescription.h"
17#include "mc/deps/minecraft_renderer/renderer/TexturePtr.h"
18
19// auto generated forward declare list
20// clang-format off
21class UIComponent;
22class UIControl;
23class UIRenderContext;
24namespace Core { class PathView; }
25// clang-format on
26
28public:
29 // member variables
30 // NOLINTBEGIN
31 ::ll::TypedStorage<8, 56, ::ResourceLocation> mResourceLocation;
32 ::ll::TypedStorage<8, 96, ::UITextureInfoPtr> mUITextureInfo;
33 ::ll::TypedStorage<8, 96, ::UITextureInfoPtr> mBackCompatUITexture;
34 ::ll::TypedStorage<8, 32, ::mce::TexturePtr> mTexture;
35 ::ll::TypedStorage<4, 20, ::cg::ImageDescription> mCachedImageDescription;
36 ::ll::TypedStorage<8, 64, ::BackwardsCompatTextureInfo> mCachedBackwardsCompatTextureInfo;
37 ::ll::TypedStorage<4, 4, ::UIMaterialType> mUIMaterialType;
38 ::ll::TypedStorage<4, 8, ::glm::vec2> mUV;
39 ::ll::TypedStorage<4, 8, ::glm::vec2> mUVSize;
40 ::ll::TypedStorage<4, 16, ::mce::Color> mColor;
41 ::ll::TypedStorage<4, 16, ::ui::SliceSize> mNineSliceSize;
42 ::ll::TypedStorage<1, 1, ::ui::ClipDirection> mClipDirection;
43 ::ll::TypedStorage<4, 8, ::glm::vec2> mTiledScale;
44 ::ll::TypedStorage<4, 8, ::glm::vec2> mInvTextureSize;
45 ::ll::TypedStorage<4, 4, ::ui::TileDirection> mTiled;
46 ::ll::TypedStorage<4, 4, float> mClipRatio;
47 bool mClipPixelPerfect : 1;
48 bool mHasNineSlice : 1;
49 bool mPixelPerfect : 1;
50 bool mKeepRatio : 1;
51 bool mFilled : 1;
52 bool mEnableGrayscale : 1;
53 bool mEnableBilinear : 1;
54 bool mTriggerDebugLog : 1;
55 bool mForceReloadTexture : 1;
56 bool mTextureHasChanged : 1;
57 bool mAllowDebugTextureReplacement : 1;
58 bool mColorCorrected : 1;
59 ::ll::TypedStorage<8, 32, ::Core::PathBuffer<::std::string>> mZipFolder;
60 // NOLINTEND
61
62public:
63 // prevent constructor by default
64 SpriteComponent();
65
66public:
67 // virtual functions
68 // NOLINTBEGIN
69 virtual ~SpriteComponent() /*override*/ = default;
70
71 virtual ::std::unique_ptr<::UIComponent> clone(::UIControl& cloneOwner) const /*override*/;
72
73 virtual void reset() /*override*/;
74 // NOLINTEND
75
76public:
77 // member functions
78 // NOLINTBEGIN
79 MCNAPI explicit SpriteComponent(::UIControl& owner);
80
81 MCNAPI void _drawClipped(
82 ::glm::vec2 const& pos,
83 ::glm::vec2 const& size,
84 ::glm::vec2 const& startUV,
85 ::glm::vec2 const& uvSize,
86 ::std::function<void(::glm::vec2 const&, ::glm::vec2 const&, ::glm::vec2 const&, ::glm::vec2 const&)> callback
87 ) const;
88
89 MCNAPI void _drawFilled(
91 ::glm::vec2 const& startPos,
92 ::glm::vec2 const& size,
93 ::glm::vec2 const& startUV,
94 ::glm::vec2 const& uvSize
95 ) const;
96
97 MCNAPI void _drawKeepRatio(
99 ::glm::vec2 const& startPos,
100 ::glm::vec2 const& size,
101 ::glm::vec2 const& startUV,
102 ::glm::vec2 const& uvSize
103 ) const;
104
105 MCNAPI void _drawTiled(
106 ::glm::vec2 const& startPos,
107 ::glm::vec2 const& size,
108 ::glm::vec2 const& startUV,
109 ::glm::vec2 const& uvSize,
110 ::std::function<void(::glm::vec2 const&, ::glm::vec2 const&, ::glm::vec2 const&, ::glm::vec2 const&)> callback
111 ) const;
112
113 MCNAPI void _drawTiledClipped(
114 ::glm::vec2 const& startPos,
115 ::glm::vec2 const& size,
116 ::glm::vec2 const& startUV,
117 ::glm::vec2 const& uvSize,
118 ::std::function<void(::glm::vec2 const&, ::glm::vec2 const&, ::glm::vec2 const&, ::glm::vec2 const&)> callback
119 );
120
121 MCNAPI void
122 _getClippedInfo(::glm::vec2& clipPos, ::glm::vec2& clipSize, ::glm::vec2& clipUV, ::glm::vec2& clipUVSize) const;
123
124 MCAPI void render(::UIRenderContext& context);
125
126 MCNAPI void setResourceLocation(::ResourceLocation const& resourceLocation);
127
128 MCNAPI void setZipFolder(::Core::PathView zipFolder);
129 // NOLINTEND
130
131public:
132 // constructor thunks
133 // NOLINTBEGIN
134 MCNAPI void* $ctor(::UIControl& owner);
135 // NOLINTEND
136
137public:
138 // virtual function thunks
139 // NOLINTBEGIN
140 MCNAPI ::std::unique_ptr<::UIComponent> $clone(::UIControl& cloneOwner) const;
141
142 MCNAPI void $reset();
143 // NOLINTEND
144};
Definition PathView.h:19
Definition RenderableComponent.h:5
Definition ResourceLocation.h:15
Definition SpriteComponent.h:5
MCAPI void _drawClipped(::glm::vec2 const &pos, ::glm::vec2 const &size, ::glm::vec2 const &startUV, ::glm::vec2 const &uvSize, ::std::function< void(::glm::vec2 const &, ::glm::vec2 const &, ::glm::vec2 const &, ::glm::vec2 const &)> callback) const
MCAPI void $reset()
MCAPI void setResourceLocation(::ResourceLocation const &resourceLocation)
MCAPI SpriteComponent(::UIControl &owner)
MCAPI void _drawKeepRatio(::UIRenderContext &context, ::glm::vec2 const &startPos, ::glm::vec2 const &size, ::glm::vec2 const &startUV, ::glm::vec2 const &uvSize) const
MCAPI void * $ctor(::UIControl &owner)
MCAPI void _drawTiled(::glm::vec2 const &startPos, ::glm::vec2 const &size, ::glm::vec2 const &startUV, ::glm::vec2 const &uvSize, ::std::function< void(::glm::vec2 const &, ::glm::vec2 const &, ::glm::vec2 const &, ::glm::vec2 const &)> callback) const
MCAPI void _getClippedInfo(::glm::vec2 &clipPos, ::glm::vec2 &clipSize, ::glm::vec2 &clipUV, ::glm::vec2 &clipUVSize) const
MCAPI void setZipFolder(::Core::PathView zipFolder)
MCAPI void _drawTiledClipped(::glm::vec2 const &startPos, ::glm::vec2 const &size, ::glm::vec2 const &startUV, ::glm::vec2 const &uvSize, ::std::function< void(::glm::vec2 const &, ::glm::vec2 const &, ::glm::vec2 const &, ::glm::vec2 const &)> callback)
MCAPI void _drawFilled(::UIRenderContext &context, ::glm::vec2 const &startPos, ::glm::vec2 const &size, ::glm::vec2 const &startUV, ::glm::vec2 const &uvSize) const
MCAPI ::std::unique_ptr<::UIComponent > $clone(::UIControl &cloneOwner) const
Definition UIComponent.h:5
Definition UIControl.h:5
Definition UIRenderContext.h:5
Definition context.h:5