forked from rojo-rbx/rojo
Expose two-way sync.
- Convert plugin DevSettings flag to settings panel feature - Remove server feature, always enable write API
This commit is contained in:
@@ -114,6 +114,7 @@ function App:startSession(address, port, sessionOptions)
|
||||
self.serveSession = ServeSession.new({
|
||||
apiContext = ApiContext.new(baseUrl),
|
||||
openScriptsExternally = sessionOptions.openScriptsExternally,
|
||||
twoWaySync = sessionOptions.twoWaySync,
|
||||
})
|
||||
|
||||
self.serveSession:onStatusChanged(function(status, details)
|
||||
|
||||
@@ -167,6 +167,7 @@ function ConnectPanel:render()
|
||||
|
||||
local sessionOptions = {
|
||||
openScriptsExternally = settings:get("openScriptsExternally"),
|
||||
twoWaySync = settings:get("twoWaySync"),
|
||||
}
|
||||
|
||||
startSession(address, port, sessionOptions)
|
||||
|
||||
@@ -8,6 +8,7 @@ local Roact = require(Rojo.Roact)
|
||||
|
||||
local defaultSettings = {
|
||||
openScriptsExternally = false,
|
||||
twoWaySync = false,
|
||||
}
|
||||
|
||||
local Settings = {}
|
||||
|
||||
@@ -24,10 +24,10 @@ function SettingsPanel:render()
|
||||
HorizontalAlignment = Enum.HorizontalAlignment.Center,
|
||||
VerticalAlignment = Enum.VerticalAlignment.Center,
|
||||
SortOrder = Enum.SortOrder.LayoutOrder,
|
||||
Padding = UDim.new(0, 8),
|
||||
Padding = UDim.new(0, 16),
|
||||
}),
|
||||
|
||||
Address = e(FitList, {
|
||||
OpenScriptsExternally = e(FitList, {
|
||||
containerProps = {
|
||||
LayoutOrder = 1,
|
||||
BackgroundTransparency = 1,
|
||||
@@ -65,8 +65,46 @@ function SettingsPanel:render()
|
||||
}),
|
||||
}),
|
||||
|
||||
TwoWaySync = e(FitList, {
|
||||
containerProps = {
|
||||
LayoutOrder = 2,
|
||||
BackgroundTransparency = 1,
|
||||
},
|
||||
layoutProps = {
|
||||
Padding = UDim.new(0, 4),
|
||||
FillDirection = Enum.FillDirection.Horizontal,
|
||||
HorizontalAlignment = Enum.HorizontalAlignment.Left,
|
||||
VerticalAlignment = Enum.VerticalAlignment.Center,
|
||||
},
|
||||
}, {
|
||||
Label = e(FitText, {
|
||||
Kind = "TextLabel",
|
||||
LayoutOrder = 1,
|
||||
BackgroundTransparency = 1,
|
||||
TextXAlignment = Enum.TextXAlignment.Left,
|
||||
Font = theme.MainFont,
|
||||
TextSize = 16,
|
||||
Text = "Two-Way Sync (Experimental!)",
|
||||
TextColor3 = theme.Text1,
|
||||
}),
|
||||
|
||||
Padding = e("Frame", {
|
||||
Size = UDim2.new(0, 8, 0, 0),
|
||||
BackgroundTransparency = 1,
|
||||
LayoutOrder = 2,
|
||||
}),
|
||||
|
||||
Input = e(Checkbox, {
|
||||
layoutOrder = 3,
|
||||
checked = settings:get("twoWaySync"),
|
||||
onChange = function(newValue)
|
||||
settings:set("twoWaySync", not settings:get("twoWaySync"))
|
||||
end,
|
||||
}),
|
||||
}),
|
||||
|
||||
BackButton = e(FormButton, {
|
||||
layoutOrder = 2,
|
||||
layoutOrder = 4,
|
||||
text = "Okay",
|
||||
secondary = true,
|
||||
onClick = function()
|
||||
|
||||
Reference in New Issue
Block a user