Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- public class Ui_Connection : MonoBehaviour,IConnectionUi
- {
- [Header("Dependencies - Ui")]
- public TMP_InputField HostInput;
- public TMP_InputField PortInput;
- public TMP_Text StatusLabel;
- public Image Image;
- public Button Btn;
- public TMP_Text BtnText;
- public string Host => HostInput.text;
- public string Port => PortInput.text;
- public void Connecting()
- {
- Status = "Connecting";
- Color = Color.yellow;
- Busy = true;
- }
- public void Connected()
- {
- Status = "Connected!";
- TextInputActive = false;
- BtnActive = true;
- ButtonLabel = "Disconnect";
- }
- public void Disconnecting()
- {
- Status = "Disconnecting";
- TextInputActive = false;
- Busy = true;
- }
- public void Disconnected()
- {
- BtnText.text = "Connect";
- Status = "Disconnected!";
- Color = Color.gray;
- Busy = false;
- }
- public void FailedValidation(string message)
- {
- Status = message;
- Busy = false;
- }
- public void ErrorOccured(string message)
- {
- Status = message;
- Color = Color.red;
- Busy = true;
- }
- public void FailedToConnect()
- {
- Status = "Failed to Connect";
- Busy = false;
- }
- #region Plumbing
- async void Clicked_Connect() => await Ctrl.ToggleConnect();
- void Start()
- {
- Color = Color.grey;
- ButtonLabel = "Connect";
- }
- string Status
- {
- set => StatusLabel.text = value;
- }
- bool TextInputActive
- {
- set => HostInput.interactable = PortInput.interactable = value;
- }
- bool BtnActive
- {
- set => Btn.interactable = value;
- }
- Color Color
- {
- set => Image.color = value;
- }
- string ButtonLabel
- {
- set => BtnText.text = value;
- }
- bool Busy
- {
- set => TextInputActive = BtnActive = value;
- }
- public void SetController(UrlConnectionController ctrl) => Ctrl = ctrl;
- UrlConnectionController Ctrl;
- #endregion
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement