Esempio n. 1
0
        public override bool Equals(System.Object object_Renamed)
        {
            bool isEqual = false;

            if (object_Renamed is TextRecord)
            {
                TextRecord textRecord = (TextRecord)object_Renamed;

                if ((textRecord.flags == this.flags) && (textRecord.color == this.color) && (textRecord.xOffset == this.xOffset) && (textRecord.yOffset == this.yOffset) && (textRecord.height == this.height) && (textRecord.font == this.font) && (ArrayUtil.equals(textRecord.entries, this.entries)))
                {
                    isEqual = true;
                }
            }

            return(isEqual);
        }
		private TextRecord decodeTextRecord(int defineText, int flags, int glyphBits, int advanceBits)
		{
			TextRecord t = new TextRecord();
			
			t.flags = flags;
			
			if (t.hasFont())
			{
				int idref = r.readUI16();
				t.font = (DefineFont) dict.getTag(idref);
			}
			
			if (t.hasColor())
			{
				switch (defineText)
				{
					
					case Flash.Swf.TagValues.stagDefineText: 
						t.color = decodeRGB(r);
						break;
					
					case Flash.Swf.TagValues.stagDefineText2: 
						t.color = decodeRGBA(r);
						break;
					
					default:
						System.Diagnostics.Debug.Assert(false);
						break;
					
				}
			}
			
			if (t.hasX())
			{
				t.xOffset = r.readSI16();
			}
			
			if (t.hasY())
			{
				t.yOffset = r.readSI16();
			}
			
			if (t.hasHeight())
			{
				t.height = r.readUI16();
			}
			
			int count = r.readUI8();
			t.entries = decodeGlyphEntries(glyphBits, advanceBits, count);
			
			return t;
		}