Diff for /Amaya/amaya/styleparser.c between versions 1.41 and 1.42

version 1.41, 2000/01/17 15:48:00 version 1.42, 2000/01/24 10:53:24
Line 471  CSSInfoPtr          css; Line 471  CSSInfoPtr          css;
 ThotBool            isHTML;  ThotBool            isHTML;
 #endif  #endif
 {  {
   STRING            ptr;    STRING            ptrT, ptrR, ptrB, ptrL;
   
   ptr = cssRule;    ptrT = SkipBlanksAndComments (cssRule);
   ParseCSSBorderTopWidth (element, tsch, context, cssRule, css, isHTML);    /* First parse Border-Top */
   ParseCSSBorderBottomWidth (element, tsch, context, ptr, css, isHTML);    ptrR = ParseCSSBorderTopWidth (element, tsch, context, ptrT, css, isHTML);
   ParseCSSBorderLeftWidth (element, tsch, context, ptr, css, isHTML);    ptrR = SkipBlanksAndComments (ptrR);
   ParseCSSBorderRightWidth (element, tsch, context, ptr, css, isHTML);    if (*ptrR == ';' || *ptrR == EOS || *ptrR == ',')
   cssRule = SkipProperty (cssRule);      {
         cssRule = ptrR;
         /* apply the Border-Top to all */
         ptrR = ParseCSSBorderRightWidth (element, tsch, context, ptrT, css, isHTML);
         ptrR = ParseCSSBorderBottomWidth (element, tsch, context, ptrT, css, isHTML);
         ptrR = ParseCSSBorderLeftWidth (element, tsch, context, ptrT, css, isHTML);
       }
     else
       {
         /* parse Border-Right */
         ptrB = ParseCSSBorderRightWidth (element, tsch, context, ptrR, css, isHTML);
         ptrB = SkipBlanksAndComments (ptrB);
         if (*ptrB == ';' || *ptrB == EOS || *ptrB == ',')
           {
             cssRule = ptrB;
             /* apply the Border-Top to Border-Bottom */
             ptrB = ParseCSSBorderBottomWidth (element, tsch, context, ptrT, css, isHTML);
             /* apply the Border-Right to Border-Left */
             ptrB = ParseCSSBorderLeftWidth (element, tsch, context, ptrR, css, isHTML);
           }
         else
           {
             /* parse Border-Bottom */
             ptrL = ParseCSSBorderBottomWidth (element, tsch, context, ptrB, css, isHTML);
             ptrL = SkipBlanksAndComments (ptrL);
             if (*ptrL == ';' || *ptrL == EOS || *ptrL == ',')
               {
                 cssRule = ptrL;
                 /* apply the Border-Right to Border-Left */
                 ptrL = ParseCSSBorderLeftWidth (element, tsch, context, ptrR, css, isHTML);
               }
             else
               /* parse Border-Left */
               cssRule = ParseCSSBorderLeftWidth (element, tsch, context, ptrL, css, isHTML);
             cssRule = SkipBlanksAndComments (cssRule);
           }
       }
   return (cssRule);    return (cssRule);
 }  }
   
Line 504  ThotBool            isHTML; Line 540  ThotBool            isHTML;
 }  }
   
 /*----------------------------------------------------------------------  /*----------------------------------------------------------------------
    ParseCSSBorderRight : parse a CSS BorderRight     ParseCSSBorderLeft : parse a CSS BorderLeft
    attribute string.                                               attribute string.                                          
   ----------------------------------------------------------------------*/    ----------------------------------------------------------------------*/
 #ifdef __STDC__  #ifdef __STDC__
 static STRING       ParseCSSBorderRight (Element element, PSchema tsch,  static STRING       ParseCSSBorderLeft (Element element, PSchema tsch,
                                  PresentationContext context, STRING cssRule, CSSInfoPtr css, ThotBool isHTML)                                   PresentationContext context, STRING cssRule, CSSInfoPtr css, ThotBool isHTML)
 #else  #else
 static STRING       ParseCSSBorderRight (element, tsch, context, cssRule, css, isHTML)  static STRING       ParseCSSBorderLeft (element, tsch, context, cssRule, css, isHTML)
 Element             element;  Element             element;
 PSchema             tsch;  PSchema             tsch;
 PresentationContext context;  PresentationContext context;
Line 546  ThotBool            isHTML; Line 582  ThotBool            isHTML;
 }  }
   
 /*----------------------------------------------------------------------  /*----------------------------------------------------------------------
    ParseCSSBorderLeft : parse a CSS BorderLeft     ParseCSSBorderRight : parse a CSS BorderRight
    attribute string.                                               attribute string.                                          
   ----------------------------------------------------------------------*/    ----------------------------------------------------------------------*/
 #ifdef __STDC__  #ifdef __STDC__
 static STRING       ParseCSSBorderLeft (Element element, PSchema tsch,  static STRING       ParseCSSBorderRight (Element element, PSchema tsch,
                                  PresentationContext context, STRING cssRule, CSSInfoPtr css, ThotBool isHTML)                                   PresentationContext context, STRING cssRule, CSSInfoPtr css, ThotBool isHTML)
 #else  #else
 static STRING       ParseCSSBorderLeft (element, tsch, context, cssRule, css, isHTML)  static STRING       ParseCSSBorderRight (element, tsch, context, cssRule, css, isHTML)
   Element             element;
   PSchema             tsch;
   PresentationContext context;
   STRING              cssRule;
   CSSInfoPtr          css;
   ThotBool            isHTML;
   #endif
   {
     cssRule = SkipProperty (cssRule);
     return (cssRule);
   }
   
   /*----------------------------------------------------------------------
      ParseCSSBorder : parse a CSS border        
      attribute string.                                          
     ----------------------------------------------------------------------*/
   #ifdef __STDC__
   static STRING       ParseCSSBorder (Element element, PSchema tsch,
                                    PresentationContext context, STRING cssRule, CSSInfoPtr css, ThotBool isHTML)
   #else
   static STRING       ParseCSSBorder (element, tsch, context, cssRule, css, isHTML)
   Element             element;
   PSchema             tsch;
   PresentationContext context;
   STRING              cssRule;
   CSSInfoPtr          css;
   ThotBool            isHTML;
   #endif
   {
     STRING            ptrT, ptrR, ptrB, ptrL;
   
     ptrT = SkipBlanksAndComments (cssRule);
     /* First parse Border-Top */
     ptrR = ParseCSSBorderTop (element, tsch, context, ptrT, css, isHTML);
     ptrR = SkipBlanksAndComments (ptrR);
     if (*ptrR == ';' || *ptrR == EOS || *ptrR == ',')
       {
         cssRule = ptrR;
         /* apply the Border-Top to all */
         ptrR = ParseCSSBorderRight (element, tsch, context, ptrT, css, isHTML);
         ptrR = ParseCSSBorderBottom (element, tsch, context, ptrT, css, isHTML);
         ptrR = ParseCSSBorderLeft (element, tsch, context, ptrT, css, isHTML);
       }
     else
       {
         /* parse Border-Right */
         ptrB = ParseCSSBorderRight (element, tsch, context, ptrR, css, isHTML);
         ptrB = SkipBlanksAndComments (ptrB);
         if (*ptrB == ';' || *ptrB == EOS || *ptrB == ',')
           {
             cssRule = ptrB;
             /* apply the Border-Top to Border-Bottom */
             ptrB = ParseCSSBorderBottom (element, tsch, context, ptrT, css, isHTML);
             /* apply the Border-Right to Border-Left */
             ptrB = ParseCSSBorderLeft (element, tsch, context, ptrR, css, isHTML);
           }
         else
           {
             /* parse Border-Bottom */
             ptrL = ParseCSSBorderBottom (element, tsch, context, ptrB, css, isHTML);
             ptrL = SkipBlanksAndComments (ptrL);
             if (*ptrL == ';' || *ptrL == EOS || *ptrL == ',')
               {
                 cssRule = ptrL;
                 /* apply the Border-Right to Border-Left */
                 ptrL = ParseCSSBorderLeft (element, tsch, context, ptrR, css, isHTML);
               }
             else
               /* parse Border-Left */
               cssRule = ParseCSSBorderLeft (element, tsch, context, ptrL, css, isHTML);
             cssRule = SkipBlanksAndComments (cssRule);
           }
       }
     return (cssRule);
   }
   
   /*----------------------------------------------------------------------
      ParseCSSBorderColorTop : parse a CSS BorderColorTop
      attribute string.                                          
     ----------------------------------------------------------------------*/
   #ifdef __STDC__
   static STRING       ParseCSSBorderColorTop (Element element, PSchema tsch,
                                    PresentationContext context, STRING cssRule, CSSInfoPtr css, ThotBool isHTML)
   #else
   static STRING       ParseCSSBorderColorTop (element, tsch, context, cssRule, css, isHTML)
   Element             element;
   PSchema             tsch;
   PresentationContext context;
   STRING              cssRule;
   CSSInfoPtr          css;
   ThotBool            isHTML;
   #endif
   {
     cssRule = SkipProperty (cssRule);
     return (cssRule);
   }
   
   /*----------------------------------------------------------------------
      ParseCSSBorderColorLeft : parse a CSS BorderColorLeft
      attribute string.                                          
     ----------------------------------------------------------------------*/
   #ifdef __STDC__
   static STRING       ParseCSSBorderColorLeft (Element element, PSchema tsch,
                                    PresentationContext context, STRING cssRule, CSSInfoPtr css, ThotBool isHTML)
   #else
   static STRING       ParseCSSBorderColorLeft (element, tsch, context, cssRule, css, isHTML)
   Element             element;
   PSchema             tsch;
   PresentationContext context;
   STRING              cssRule;
   CSSInfoPtr          css;
   ThotBool            isHTML;
   #endif
   {
     cssRule = SkipProperty (cssRule);
     return (cssRule);
   }
   
   /*----------------------------------------------------------------------
      ParseCSSBorderColorBottom : parse a CSS BorderColorBottom
      attribute string.                                          
     ----------------------------------------------------------------------*/
   #ifdef __STDC__
   static STRING       ParseCSSBorderColorBottom (Element element, PSchema tsch,
                                    PresentationContext context, STRING cssRule, CSSInfoPtr css, ThotBool isHTML)
   #else
   static STRING       ParseCSSBorderColorBottom (element, tsch, context, cssRule, css, isHTML)
   Element             element;
   PSchema             tsch;
   PresentationContext context;
   STRING              cssRule;
   CSSInfoPtr          css;
   ThotBool            isHTML;
   #endif
   {
     cssRule = SkipProperty (cssRule);
     return (cssRule);
   }
   
   /*----------------------------------------------------------------------
      ParseCSSBorderColorRight : parse a CSS BorderColorRight
      attribute string.                                          
     ----------------------------------------------------------------------*/
   #ifdef __STDC__
   static STRING       ParseCSSBorderColorRight (Element element, PSchema tsch,
                                    PresentationContext context, STRING cssRule, CSSInfoPtr css, ThotBool isHTML)
   #else
   static STRING       ParseCSSBorderColorRight (element, tsch, context, cssRule, css, isHTML)
 Element             element;  Element             element;
 PSchema             tsch;  PSchema             tsch;
 PresentationContext context;  PresentationContext context;
Line 583  CSSInfoPtr          css; Line 767  CSSInfoPtr          css;
 ThotBool            isHTML;  ThotBool            isHTML;
 #endif  #endif
 {  {
     STRING            ptrT, ptrR, ptrB, ptrL;
   
     ptrT = SkipBlanksAndComments (cssRule);
     /* First parse Border-Top */
     ptrR = ParseCSSBorderTop (element, tsch, context, ptrT, css, isHTML);
     ptrR = SkipBlanksAndComments (ptrR);
     if (*ptrR == ';' || *ptrR == EOS || *ptrR == ',')
       {
         cssRule = ptrR;
         /* apply the Border-Top to all */
         ptrR = ParseCSSBorderRight (element, tsch, context, ptrT, css, isHTML);
         ptrR = ParseCSSBorderBottom (element, tsch, context, ptrT, css, isHTML);
         ptrR = ParseCSSBorderLeft (element, tsch, context, ptrT, css, isHTML);
       }
     else
       {
         /* parse Border-Right */
         ptrB = ParseCSSBorderRight (element, tsch, context, ptrR, css, isHTML);
         ptrB = SkipBlanksAndComments (ptrB);
         if (*ptrB == ';' || *ptrB == EOS || *ptrB == ',')
           {
             cssRule = ptrB;
             /* apply the Border-Top to Border-Bottom */
             ptrB = ParseCSSBorderBottom (element, tsch, context, ptrT, css, isHTML);
             /* apply the Border-Right to Border-Left */
             ptrB = ParseCSSBorderLeft (element, tsch, context, ptrR, css, isHTML);
           }
         else
           {
             /* parse Border-Bottom */
             ptrL = ParseCSSBorderBottom (element, tsch, context, ptrB, css, isHTML);
             ptrL = SkipBlanksAndComments (ptrL);
             if (*ptrL == ';' || *ptrL == EOS || *ptrL == ',')
               {
                 cssRule = ptrL;
                 /* apply the Border-Right to Border-Left */
                 ptrL = ParseCSSBorderLeft (element, tsch, context, ptrR, css, isHTML);
               }
             else
               /* parse Border-Left */
               cssRule = ParseCSSBorderLeft (element, tsch, context, ptrL, css, isHTML);
             cssRule = SkipBlanksAndComments (cssRule);
           }
       }
     return (cssRule);
   }
   
   /*----------------------------------------------------------------------
      ParseCSSBorderStyleTop : parse a CSS BorderStyleTop
      attribute string.                                          
     ----------------------------------------------------------------------*/
   #ifdef __STDC__
   static STRING       ParseCSSBorderStyleTop (Element element, PSchema tsch,
                                    PresentationContext context, STRING cssRule, CSSInfoPtr css, ThotBool isHTML)
   #else
   static STRING       ParseCSSBorderStyleTop (element, tsch, context, cssRule, css, isHTML)
   Element             element;
   PSchema             tsch;
   PresentationContext context;
   STRING              cssRule;
   CSSInfoPtr          css;
   ThotBool            isHTML;
   #endif
   {
   cssRule = SkipProperty (cssRule);    cssRule = SkipProperty (cssRule);
   return (cssRule);    return (cssRule);
 }  }
   
 /*----------------------------------------------------------------------  /*----------------------------------------------------------------------
    ParseCSSBorderStyle : parse a CSS border-style             ParseCSSBorderStyleLeft : parse a CSS BorderStyleLeft
    attribute string.                                               attribute string.                                          
   ----------------------------------------------------------------------*/    ----------------------------------------------------------------------*/
 #ifdef __STDC__  #ifdef __STDC__
 static STRING       ParseCSSBorderStyle (Element element, PSchema tsch,  static STRING       ParseCSSBorderStyleLeft (Element element, PSchema tsch,
                                  PresentationContext context, STRING cssRule, CSSInfoPtr css, ThotBool isHTML)                                   PresentationContext context, STRING cssRule, CSSInfoPtr css, ThotBool isHTML)
 #else  #else
 static STRING       ParseCSSBorderStyle (element, tsch, context, cssRule, css, isHTML)  static STRING       ParseCSSBorderStyleLeft (element, tsch, context, cssRule, css, isHTML)
 Element             element;  Element             element;
 PSchema             tsch;  PSchema             tsch;
 PresentationContext context;  PresentationContext context;
Line 609  ThotBool            isHTML; Line 857  ThotBool            isHTML;
 }  }
   
 /*----------------------------------------------------------------------  /*----------------------------------------------------------------------
    ParseCSSBorder : parse a CSS border             ParseCSSBorderStyleBottom : parse a CSS BorderStyleBottom
    attribute string.                                               attribute string.                                          
   ----------------------------------------------------------------------*/    ----------------------------------------------------------------------*/
 #ifdef __STDC__  #ifdef __STDC__
 static STRING       ParseCSSBorder (Element element, PSchema tsch,  static STRING       ParseCSSBorderStyleBottom (Element element, PSchema tsch,
                                  PresentationContext context, STRING cssRule, CSSInfoPtr css, ThotBool isHTML)                                   PresentationContext context, STRING cssRule, CSSInfoPtr css, ThotBool isHTML)
 #else  #else
 static STRING       ParseCSSBorder (element, tsch, context, cssRule, css, isHTML)  static STRING       ParseCSSBorderStyleBottom (element, tsch, context, cssRule, css, isHTML)
   Element             element;
   PSchema             tsch;
   PresentationContext context;
   STRING              cssRule;
   CSSInfoPtr          css;
   ThotBool            isHTML;
   #endif
   {
     cssRule = SkipProperty (cssRule);
     return (cssRule);
   }
   
   /*----------------------------------------------------------------------
      ParseCSSBorderStyleRight : parse a CSS BorderStyleRight
      attribute string.                                          
     ----------------------------------------------------------------------*/
   #ifdef __STDC__
   static STRING       ParseCSSBorderStyleRight (Element element, PSchema tsch,
                                    PresentationContext context, STRING cssRule, CSSInfoPtr css, ThotBool isHTML)
   #else
   static STRING       ParseCSSBorderStyleRight (element, tsch, context, cssRule, css, isHTML)
 Element             element;  Element             element;
 PSchema             tsch;  PSchema             tsch;
 PresentationContext context;  PresentationContext context;
Line 630  ThotBool            isHTML; Line 899  ThotBool            isHTML;
 }  }
   
 /*----------------------------------------------------------------------  /*----------------------------------------------------------------------
      ParseCSSBorderStyleStyle : parse a CSS border-style        
      attribute string.                                          
     ----------------------------------------------------------------------*/
   #ifdef __STDC__
   static STRING       ParseCSSBorderStyle (Element element, PSchema tsch,
                                    PresentationContext context, STRING cssRule, CSSInfoPtr css, ThotBool isHTML)
   #else
   static STRING       ParseCSSBorderStyle (element, tsch, context, cssRule, css, isHTML)
   Element             element;
   PSchema             tsch;
   PresentationContext context;
   STRING              cssRule;
   CSSInfoPtr          css;
   ThotBool            isHTML;
   #endif
   {
     STRING            ptrT, ptrR, ptrB, ptrL;
   
     ptrT = SkipBlanksAndComments (cssRule);
     /* First parse Border-Top */
     ptrR = ParseCSSBorderTop (element, tsch, context, ptrT, css, isHTML);
     ptrR = SkipBlanksAndComments (ptrR);
     if (*ptrR == ';' || *ptrR == EOS || *ptrR == ',')
       {
         cssRule = ptrR;
         /* apply the Border-Top to all */
         ptrR = ParseCSSBorderRight (element, tsch, context, ptrT, css, isHTML);
         ptrR = ParseCSSBorderBottom (element, tsch, context, ptrT, css, isHTML);
         ptrR = ParseCSSBorderLeft (element, tsch, context, ptrT, css, isHTML);
       }
     else
       {
         /* parse Border-Right */
         ptrB = ParseCSSBorderRight (element, tsch, context, ptrR, css, isHTML);
         ptrB = SkipBlanksAndComments (ptrB);
         if (*ptrB == ';' || *ptrB == EOS || *ptrB == ',')
           {
             cssRule = ptrB;
             /* apply the Border-Top to Border-Bottom */
             ptrB = ParseCSSBorderBottom (element, tsch, context, ptrT, css, isHTML);
             /* apply the Border-Right to Border-Left */
             ptrB = ParseCSSBorderLeft (element, tsch, context, ptrR, css, isHTML);
           }
         else
           {
             /* parse Border-Bottom */
             ptrL = ParseCSSBorderBottom (element, tsch, context, ptrB, css, isHTML);
             ptrL = SkipBlanksAndComments (ptrL);
             if (*ptrL == ';' || *ptrL == EOS || *ptrL == ',')
               {
                 cssRule = ptrL;
                 /* apply the Border-Right to Border-Left */
                 ptrL = ParseCSSBorderLeft (element, tsch, context, ptrR, css, isHTML);
               }
             else
               /* parse Border-Left */
               cssRule = ParseCSSBorderLeft (element, tsch, context, ptrL, css, isHTML);
             cssRule = SkipBlanksAndComments (cssRule);
           }
       }
     return (cssRule);
   }
   
   /*----------------------------------------------------------------------
    ParseCSSClear : parse a CSS clear attribute string         ParseCSSClear : parse a CSS clear attribute string    
   ----------------------------------------------------------------------*/    ----------------------------------------------------------------------*/
 #ifdef __STDC__  #ifdef __STDC__
Line 2739  static CSSProperty CSSProperties[] = Line 3072  static CSSProperty CSSProperties[] =
    {TEXT ("border-bottom-width"), ParseCSSBorderBottomWidth},     {TEXT ("border-bottom-width"), ParseCSSBorderBottomWidth},
    {TEXT ("border-left-width"), ParseCSSBorderLeftWidth},     {TEXT ("border-left-width"), ParseCSSBorderLeftWidth},
    {TEXT ("border-width"), ParseCSSBorderWidth},     {TEXT ("border-width"), ParseCSSBorderWidth},
      {TEXT ("border-top-color"), ParseCSSBorderColorTop},
      {TEXT ("border-right-color"), ParseCSSBorderColorRight},
      {TEXT ("border-bottom-color"), ParseCSSBorderColorBottom},
      {TEXT ("border-left-color"), ParseCSSBorderColorLeft},
    {TEXT ("border-color"), ParseCSSBorderColor},     {TEXT ("border-color"), ParseCSSBorderColor},
      {TEXT ("border-top-style"), ParseCSSBorderStyleTop},
      {TEXT ("border-right-style"), ParseCSSBorderStyleRight},
      {TEXT ("border-bottom-style"), ParseCSSBorderStyleBottom},
      {TEXT ("border-left-style"), ParseCSSBorderStyleLeft},
    {TEXT ("border-style"), ParseCSSBorderStyle},     {TEXT ("border-style"), ParseCSSBorderStyle},
    {TEXT ("border-top"), ParseCSSBorderTop},     {TEXT ("border-top"), ParseCSSBorderTop},
    {TEXT ("border-right"), ParseCSSBorderRight},     {TEXT ("border-right"), ParseCSSBorderRight},

Removed from v.1.41  
changed lines
  Added in v.1.42


Webmaster