示例#1
0
 public SpActionMessage(string message, int x, int y, ActionMessageType messageType, TextColor color)
 {
     msg.Write((int)OpCode.SendPacket[GetType()]);
     msg.Write(message);
     msg.Write(x);
     msg.Write(y);
     msg.Write((int)messageType);
     msg.Write((int)color);
 }
示例#2
0
 internal RowActionDefinition GetDefinition()
 {
     return(new RowActionDefinition
     {
         ActionMessage = ActionMessage,
         ActionMessageType = ActionMessageType.ToString(),
         ActionName = ActionName,
         AvailabilityPolicy = AvailabilityPolicy != null ? AvailabilityPolicy.ID : null,
         CloseAfterAction = CloseAfterAction,
         Procedure = Procedure,
         BasicProcedure = BasicProcedure != null ? BasicProcedure.ID : null
     });
 }
示例#3
0
        internal ClassInfo(string?package, string messageName, IEnumerable <IElement> newElements,
                           string?actionRoot, ActionMessageType actionMessageType)
        {
            if (package == null)
            {
                throw new ArgumentNullException(nameof(package));
            }

            int lastSlash = messageName.LastIndexOf('/');

            if (lastSlash != -1)
            {
                if (!string.IsNullOrEmpty(package))
                {
                    throw new ArgumentException(
                              "messageName contains a package, but package is not null. Only one of both must be set!");
                }

                package     = messageName.Substring(0, lastSlash);
                messageName = messageName.Substring(lastSlash + 1);
            }

            if (messageName == null)
            {
                throw new ArgumentNullException(nameof(messageName));
            }

            if (newElements == null)
            {
                throw new ArgumentNullException(nameof(newElements));
            }

            Console.WriteLine($"-- Parsing synthetic '{package}/{messageName}'");

            RosPackage = package;
            CsPackage  = MsgParser.CsIfy(package);
            Name       = messageName;

            elements = newElements.ToArray();
            Elements = new ReadOnlyCollection <IElement>(elements);

            ForceStruct     = false;
            fullMessageText = string.Join("\n", elements.Select(elem => elem.ToRosString()));

            variables = elements.OfType <VariableElement>().ToArray();

            this.actionRoot        = actionRoot;
            this.actionMessageType = actionMessageType;
        }
示例#4
0
 public void SetActionMessage(string message, ActionMessageType messageType)
 {
     SetActionMessage(ActionMessageLabel, message, messageType);
 }
示例#5
0
    public void SetActionMessage(PolytexControls.Label label, string message, ActionMessageType messageType)
    {
        try
        {
            label.Visible = true;
            label.Trans = message;
            label.CssClass = "Action" + messageType.ToString();
        }
        catch
        {
            throw new Exception("Add ActionMessageLabel to your aspx file!");
        }

    }