add gs
This commit is contained in:
+114
@@ -0,0 +1,114 @@
|
||||
local CoreGui = game:GetService("CoreGui")
|
||||
|
||||
local Modules = CoreGui.RobloxGui.Modules
|
||||
local Common = Modules.Common
|
||||
local LuaChat = Modules.LuaChat
|
||||
|
||||
local Constants = require(LuaChat.Constants)
|
||||
local Create = require(LuaChat.Create)
|
||||
local Signal = require(Common.Signal)
|
||||
|
||||
local Text = require(LuaChat.Text)
|
||||
local getInputEvent = require(LuaChat.Utils.getInputEvent)
|
||||
|
||||
local PADDING_HEIGHT = 32
|
||||
local TEXT_FONT = Enum.Font.SourceSans
|
||||
local TEXT_FONT_SIZE = Constants.Font.FONT_SIZE_18
|
||||
|
||||
local ChatDisabledIndicator = {}
|
||||
|
||||
ChatDisabledIndicator.__index = ChatDisabledIndicator
|
||||
|
||||
function ChatDisabledIndicator.new(appState)
|
||||
local self = {}
|
||||
|
||||
local imageButtonText = appState.localization:Format("Feature.Chat.Label.PrivacySettings")
|
||||
local ibtWidth = Text.GetTextWidth(imageButtonText, Enum.Font.SourceSans, Constants.Font.FONT_SIZE_16)
|
||||
|
||||
local imageButton = Create.new "ImageButton" {
|
||||
Name = "PrivacySettings",
|
||||
AutoButtonColor = false,
|
||||
Size = UDim2.new(0, ibtWidth+6, 0, 36),
|
||||
BackgroundTransparency = 1,
|
||||
LayoutOrder = 3,
|
||||
BorderSizePixel = 0,
|
||||
ScaleType = "Slice",
|
||||
SliceCenter = Rect.new(3,3,4,4),
|
||||
Image = "rbxasset://textures/ui/LuaChat/9-slice/input-default.png",
|
||||
ImageColor3 = Constants.Color.GREEN_PRIMARY,
|
||||
|
||||
Create.new "TextLabel" {
|
||||
Name = "Title",
|
||||
Size = UDim2.new(1, 0, 1, 0),
|
||||
BackgroundTransparency = 1,
|
||||
Font = Enum.Font.SourceSans,
|
||||
TextSize = Constants.Font.FONT_SIZE_16,
|
||||
TextColor3 = Constants.Color.WHITE,
|
||||
Text = imageButtonText,
|
||||
TextXAlignment = Enum.TextXAlignment.Center,
|
||||
TextYAlignment = Enum.TextYAlignment.Center,
|
||||
}
|
||||
}
|
||||
|
||||
local textLabelText = appState.localization:Format("Feature.Chat.Message.TurnOnChat")
|
||||
|
||||
local textLabel = Create.new "TextLabel" {
|
||||
BackgroundTransparency = 1,
|
||||
LayoutOrder = 2,
|
||||
Font = TEXT_FONT,
|
||||
TextColor3 = Constants.Color.GRAY2,
|
||||
TextSize = TEXT_FONT_SIZE,
|
||||
Text = textLabelText,
|
||||
TextWrapped = true
|
||||
}
|
||||
|
||||
self.rbx = Create.new "Frame" {
|
||||
Name = "ChatDisabledIndicator",
|
||||
BackgroundTransparency = 1,
|
||||
Size = UDim2.new(1, 0, 0, 300),
|
||||
|
||||
Create.new "Frame" {
|
||||
Name = "IndicatorInner",
|
||||
BackgroundTransparency = 1,
|
||||
Size = UDim2.new(1, 0, 0, 160),
|
||||
Position = UDim2.new(0.5, 0, 0.5, 0),
|
||||
AnchorPoint = Vector2.new(0.5, 0.5),
|
||||
|
||||
Create.new "UIListLayout" {
|
||||
SortOrder = Enum.SortOrder.LayoutOrder,
|
||||
HorizontalAlignment = Enum.HorizontalAlignment.Center,
|
||||
},
|
||||
|
||||
Create.new "ImageLabel" {
|
||||
BackgroundTransparency = 1,
|
||||
Size = UDim2.new(0, 72, 0, 72),
|
||||
LayoutOrder = 1,
|
||||
Image = "rbxasset://textures/ui/LuaChat/icons/ic-friends.png",
|
||||
},
|
||||
|
||||
textLabel,
|
||||
|
||||
imageButton,
|
||||
},
|
||||
}
|
||||
|
||||
local function rescaleFromParentSize()
|
||||
local parentSize = self.rbx.AbsoluteSize
|
||||
local tltHeight = Text.GetTextHeight(textLabelText, TEXT_FONT, TEXT_FONT_SIZE, parentSize.X)
|
||||
textLabel.Size = UDim2.new(0,parentSize.X,0,tltHeight+PADDING_HEIGHT)
|
||||
end
|
||||
|
||||
self.rbx:GetPropertyChangedSignal("AbsoluteSize"):Connect(rescaleFromParentSize)
|
||||
rescaleFromParentSize()
|
||||
|
||||
self.openPrivacySettings = Signal.new()
|
||||
getInputEvent(self.rbx.IndicatorInner.PrivacySettings):Connect(function()
|
||||
self.openPrivacySettings:fire()
|
||||
end)
|
||||
|
||||
setmetatable(self, ChatDisabledIndicator)
|
||||
|
||||
return self
|
||||
end
|
||||
|
||||
return ChatDisabledIndicator
|
||||
Reference in New Issue
Block a user