private void buttonSendAbs_Click(object sender, EventArgs e)
        {
            PTZMoveAbsoluteCommandData adata = new PTZMoveAbsoluteCommandData();

            Double.TryParse(textBoxGetAbsPan.Text, System.Globalization.NumberStyles.Any, System.Globalization.CultureInfo.InvariantCulture, out adata.Pan);
            Double.TryParse(textBoxGetAbsTilt.Text, System.Globalization.NumberStyles.Any, System.Globalization.CultureInfo.InvariantCulture, out adata.Tilt);
            Double.TryParse(textBoxGetAbsZoom.Text, System.Globalization.NumberStyles.Any, System.Globalization.CultureInfo.InvariantCulture, out adata.Zoom);

            EnvironmentManager.Instance.SendMessage(
                new VideoOS.Platform.Messaging.Message(MessageId.Control.PTZMoveAbsoluteCommand, adata), _camera.FQID);
        }
        void OnFirePTZ(object sender, EventArgs e)
        {
            PTZMoveAbsoluteCommandData data = new PTZMoveAbsoluteCommandData();

            Double.TryParse(maskedTextBoxPan.Text, out data.Pan);
            Double.TryParse(maskedTextBoxTilt.Text, out data.Tilt);
            Double.TryParse(maskedTextBoxZoom.Text, out data.Zoom);
            data.AllowRepeats = _allowRepeatsCheckBox.Checked;
            data.Speed        = 1.0;
            EnvironmentManager.Instance.SendMessage(new VideoOS.Platform.Messaging.Message(MessageId.Control.PTZMoveAbsoluteCommand, data));
        }