コード例 #1
0
ファイル: MHText.cs プロジェクト: mcgoober/mheg-dotnet
 public MHText(MHText reference) : base(reference)
 {
     m_OrigFont.Copy(reference.m_OrigFont);
     m_OriginalFontAttrs.Copy(reference.m_OriginalFontAttrs);
     m_OriginalTextColour.Copy(reference.m_OriginalTextColour);
     m_OriginalBgColour.Copy(reference.m_OriginalBgColour);
     m_nCharSet        = reference.m_nCharSet;
     m_HorizJ          = reference.m_HorizJ;
     m_VertJ           = reference.m_VertJ;
     m_LineOrientation = reference.m_LineOrientation;
     m_StartCorner     = reference.m_StartCorner;
     m_fTextWrap       = reference.m_fTextWrap;
     m_pDisplay        = null;
 }
コード例 #2
0
ファイル: MHText.cs プロジェクト: mcgoober/mheg-dotnet
 public MHText()
 {
     m_nCharSet           = -1;
     m_HorizJ             = m_VertJ = Start;
     m_LineOrientation    = Horizontal;
     m_StartCorner        = UpperLeft;
     m_fTextWrap          = false;
     m_pDisplay           = null;
     m_OrigFont           = new MHFontBody();
     m_OriginalFontAttrs  = new MHOctetString();
     m_OriginalTextColour = new MHColour();
     m_OriginalBgColour   = new MHColour();
     m_textColour         = new MHColour();
     m_bgColour           = new MHColour();
     m_fontAttrs          = new MHOctetString();
     m_Content            = new MHOctetString();
 }
コード例 #3
0
ファイル: MHText.cs プロジェクト: mcgoober/mheg-dotnet
        public override void Initialise(MHParseNode p, MHEngine engine)
        {
            base.Initialise(p, engine);
            // Font and attributes.
            MHParseNode pFontBody = p.GetNamedArg(ASN1Codes.C_ORIGINAL_FONT);

            if (pFontBody != null)
            {
                m_OrigFont.Initialise(pFontBody.GetArgN(0), engine);
            }
            MHParseNode pFontAttrs = p.GetNamedArg(ASN1Codes.C_FONT_ATTRIBUTES);

            if (pFontAttrs != null)
            {
                pFontAttrs.GetArgN(0).GetStringValue(m_OriginalFontAttrs);
            }
            // Colours
            MHParseNode pTextColour = p.GetNamedArg(ASN1Codes.C_TEXT_COLOUR);

            if (pTextColour != null)
            {
                m_OriginalTextColour.Initialise(pTextColour.GetArgN(0), engine);
            }
            MHParseNode pBGColour = p.GetNamedArg(ASN1Codes.C_BACKGROUND_COLOUR);

            if (pBGColour != null)
            {
                m_OriginalBgColour.Initialise(pBGColour.GetArgN(0), engine);
            }
            // Character set
            MHParseNode pChset = p.GetNamedArg(ASN1Codes.C_CHARACTER_SET);

            if (pChset != null)
            {
                m_nCharSet = pChset.GetArgN(0).GetIntValue();
            }
            // Justification
            MHParseNode pHJust = p.GetNamedArg(ASN1Codes.C_HORIZONTAL_JUSTIFICATION);

            if (pHJust != null)
            {
                m_HorizJ = pHJust.GetArgN(0).GetEnumValue();
            }
            MHParseNode pVJust = p.GetNamedArg(ASN1Codes.C_VERTICAL_JUSTIFICATION);

            if (pVJust != null)
            {
                m_VertJ = pVJust.GetArgN(0).GetEnumValue();
            }
            // Line orientation
            MHParseNode pLineO = p.GetNamedArg(ASN1Codes.C_LINE_ORIENTATION);

            if (pLineO != null)
            {
                m_LineOrientation = pLineO.GetArgN(0).GetEnumValue();
            }
            // Start corner
            MHParseNode pStartC = p.GetNamedArg(ASN1Codes.C_START_CORNER);

            if (pStartC != null)
            {
                m_StartCorner = pStartC.GetArgN(0).GetEnumValue();
            }
            // Text wrapping
            MHParseNode pTextWrap = p.GetNamedArg(ASN1Codes.C_TEXT_WRAPPING);

            if (pTextWrap != null)
            {
                m_fTextWrap = pTextWrap.GetArgN(0).GetBoolValue();
            }

            m_pDisplay    = engine.GetContext().CreateText();
            m_NeedsRedraw = true;
        }