Exemple #1
0
 /// <summary>
 /// Creates a new instance of the UserPermission class.
 /// </summary>
 /// <param name="actionKind">The action kind to consider.</param>
 /// <param name="valueScript">The value script to consider.</param>
 public UserPermission(ActionKinds actionKind, String valueScript) : this(actionKind.ToString(), valueScript)
 {
 }
        public void ReadFrom( GMBinaryReader aReader )
        {
            int version = aReader.ReadInt32();
              if ( version != FormatConstants.GMVersion50 && version != FormatConstants.GMVersion52 )
            throw new Exceptions.UnsupportedVersion( aReader.BaseStream.Position, version );

              Name = aReader.ReadString();
              ID = aReader.ReadInt32();
              IconData = aReader.ReadChunk();
              Hidden = aReader.ReadInt32AsBool();
              Advanced = aReader.ReadInt32AsBool();

              if ( version == FormatConstants.GMVersion52 )
            RegisteredOnly = aReader.ReadInt32AsBool();
              else
            RegisteredOnly = false;

              Description = aReader.ReadString();
              ListText = aReader.ReadString();
              HintText = aReader.ReadString();
              Kind = (ActionKinds) aReader.ReadInt32();
              InterfaceKind = (InterfaceKinds) aReader.ReadInt32();
              IsQuestion = aReader.ReadInt32AsBool();
              IsApplyable = aReader.ReadInt32AsBool();
              CanBeRelative = aReader.ReadInt32AsBool();

              {
            int count = aReader.ReadInt32();
            aReader.BaseStream.Position += 4;

            Arguments = new List<Argument>( count );

            for ( int i = 0; i < count; i++ )
              Arguments.Add( new Argument() {
            Caption = aReader.ReadString(),
            Kind = (ArgumentKinds) aReader.ReadInt32(),
            DefaultValue = aReader.ReadString(),
            Menu = aReader.ReadString()
              } );

            for ( int i = 0; i < 8 - count; i++ ) {
              aReader.BaseStream.Position += aReader.ReadInt32() + 8;
              aReader.BaseStream.Position += aReader.ReadInt32() + 4;
              aReader.BaseStream.Position += aReader.ReadInt32() + 4;
            }
              }

              ExecutionType = (ActionTypes) aReader.ReadInt32();
              Code = aReader.ReadString();

              aReader.BaseStream.Position += 4;
        }
Exemple #3
0
 /// <summary>
 /// Creates a new instance of the UserPermission class.
 /// </summary>
 /// <param name="actionKind">The action kind to consider.</param>
 /// <param name="value">The boolean value to consider.</param>
 public UserPermission(ActionKinds actionKind, Boolean?value) : this(actionKind.ToString(), value)
 {
 }