private void UpdateMenuState() { if (ptt != null) { // Disable/enable appropriate menu commands depending on Loudtalks Mesh network status ZelloPTTLib.NETWORK_STATUS Status = ptt.NetworkStatus; signInToolStripMenuItem.Enabled = Status == ZelloPTTLib.NETWORK_STATUS.NSOFFLINE; signOutToolStripMenuItem.Enabled = Status == ZelloPTTLib.NETWORK_STATUS.NSONLINE; } }
private void buttonSignIn_Click(object sender, EventArgs e) { // "Sign in/Cancel" button was pressed // Sign into network if control is offline, // cancel if control is signing in. if (ptt != null) { ZelloPTTLib.NETWORK_STATUS Status = ptt.NetworkStatus; if (ZelloPTTLib.NETWORK_STATUS.NSSIGNINGIN == Status) { ptt.Cancel(); } else { signInToolStripMenuItem_Click(sender, e); } } }
private void UpdateControlsState() { if (ptt != null) { // Query Loudtalks Mesh network status ZelloPTTLib.NETWORK_STATUS Status = ptt.NetworkStatus; bool bShow = Status == ZelloPTTLib.NETWORK_STATUS.NSOFFLINE || Status == ZelloPTTLib.NETWORK_STATUS.NSSIGNINGIN; bool bEnable = Status == ZelloPTTLib.NETWORK_STATUS.NSOFFLINE; if (false == bShow) { if (split.Panel2Collapsed) { split.Panel1Collapsed = true; split.Panel2Collapsed = false; //ClientSize = new Size(ClientSize.Width + 300, ClientSize.Height); //split.SplitterDistance = ClientSize.Width - 300; } } else { if (false == split.Panel2Collapsed) { //Size sz = new Size(ClientSize.Width - split.Panel2.Width - split.SplitterWidth, ClientSize.Height); split.Panel2Collapsed = true; split.Panel1Collapsed = false; //ClientSize = sz; } } // Controls' state labelUsername.Visible = bShow; comboUsername.Visible = bShow; labelPassword.Visible = bShow; textPassword.Visible = bShow; comboUsername.Enabled = bEnable; textPassword.Enabled = bEnable; // Switch between "Sign in" and "Cancel" button modes if (Status == ZelloPTTLib.NETWORK_STATUS.NSSIGNINGIN) { buttonSignIn.Text = "Cancel"; } else { buttonSignIn.Text = "Sign in"; } buttonSignIn.Visible = Status == ZelloPTTLib.NETWORK_STATUS.NSOFFLINE || Status == ZelloPTTLib.NETWORK_STATUS.NSSIGNINGIN; // Mesh control location Point pt = menu.Location; if (Status == ZelloPTTLib.NETWORK_STATUS.NSOFFLINE || Status == ZelloPTTLib.NETWORK_STATUS.NSSIGNINGIN) { pt.Y = buttonSignIn.Location.Y + buttonSignIn.Size.Height; } else { pt.Y = menu.Location.Y + menu.Size.Height; } //Size sz = ClientRectangle.Size; //sz.Height -= pt.Y; //ptt.Location = pt; //ptt.Size = sz; } }