Esempio n. 1
0
        public static new SubRecord Read(Stream stream)
        {
            SubRecord record = SubRecord.ReadBase(stream);

            switch (record.Type)
            {
            case SubRecordType.CommonObjectData:
                return(new CommonObjectData(record));

            case SubRecordType.End:
                return(new End(record));

            case SubRecordType.GroupMarker:
                return(new GroupMarker(record));

            case SubRecordType.ClipboardFormat:
                return(new ClipboardFormat(record));

            case SubRecordType.PictureOption:
                return(new PictureOption(record));

            default:
                return(record);
            }
        }
Esempio n. 2
0
        public new static SubRecord Read(Stream stream)
        {
            SubRecord subRecord = SubRecord.ReadBase(stream);
            ushort    type      = subRecord.Type;
            SubRecord result;

            if (type != 0)
            {
                switch (type)
                {
                case 6:
                    result = new GroupMarker(subRecord);
                    break;

                case 7:
                    result = new ClipboardFormat(subRecord);
                    break;

                case 8:
                    result = new PictureOption(subRecord);
                    break;

                default:
                    if (type != 21)
                    {
                        result = subRecord;
                    }
                    else
                    {
                        result = new CommonObjectData(subRecord);
                    }
                    break;
                }
            }
            else
            {
                result = new End(subRecord);
            }
            return(result);
        }