mirror of
				https://gitlab.com/freepascal.org/lazarus/lazarus.git
				synced 2025-10-31 02:42:33 +01:00 
			
		
		
		
	small fixes for htmllite
git-svn-id: trunk@3772 -
This commit is contained in:
		
							parent
							
								
									b37432d3e7
								
							
						
					
					
						commit
						43623c4fbb
					
				| @ -858,7 +858,9 @@ try | |||||||
|     end; |     end; | ||||||
|   hlParser.ParseThread := ParseThread; |   hlParser.ParseThread := ParseThread; | ||||||
|   hlParser.AllowSuspend := True; |   hlParser.AllowSuspend := True; | ||||||
|  |   {$IFNDEF NoThreads} | ||||||
|   ParseThread.Resume; |   ParseThread.Resume; | ||||||
|  |   {$ENDIF} | ||||||
| except | except | ||||||
|   SetProcessing(False); |   SetProcessing(False); | ||||||
|   Raise; |   Raise; | ||||||
| @ -2722,8 +2724,16 @@ var | |||||||
|   ABitmap: HBitmap; |   ABitmap: HBitmap; | ||||||
|   ARect: TRect; |   ARect: TRect; | ||||||
|   OldPal: HPalette; |   OldPal: HPalette; | ||||||
|  |   p: TPoint; | ||||||
| begin | begin | ||||||
| if (FViewer as ThtmlLite).DontDraw then Exit; | if (FViewer as ThtmlLite).DontDraw then Exit; | ||||||
|  | GetWindowOrgEx(Canvas.Handle,@p); | ||||||
|  | writeln('TPaintPanel.PaintA Canvas.Handle=',HexStr(Cardinal(Canvas.Handle),8), | ||||||
|  | ' ',Width,',',Height,' ',ClientWidth,',',ClientHeight,' ', | ||||||
|  | ' ',p.x,',',p.y,' ',Visible); | ||||||
|  |   Canvas.Brush.Color:=clGreen; | ||||||
|  |   Canvas.FillRect(Rect(0,0,200,200)); | ||||||
|  |   exit; | ||||||
| ThtmlLite(FViewer).DrawBorder; | ThtmlLite(FViewer).DrawBorder; | ||||||
| OldPal := 0; | OldPal := 0; | ||||||
| Canvas.Font := Font; | Canvas.Font := Font; | ||||||
| @ -2747,8 +2757,10 @@ try | |||||||
|         SetWindowOrgEx(memDC, Left, Top, Nil); |         SetWindowOrgEx(memDC, Left, Top, Nil); | ||||||
|         Canvas2.Handle := MemDC; |         Canvas2.Handle := MemDC; | ||||||
|   {$ENDIF} |   {$ENDIF} | ||||||
|         DoBackground(Canvas2, False); |         //DoBackground(Canvas2, False); | ||||||
|         if Assigned(FOnPaint) then FOnPaint(Self); |   Canvas2.Brush.Color:=clBlue; | ||||||
|  |   Canvas2.FillRect(Rect(0,0,200,200)); | ||||||
|  |         //if Assigned(FOnPaint) then FOnPaint(Self); | ||||||
|   {$IFDEF HL_LAZARUS} |   {$IFDEF HL_LAZARUS} | ||||||
|   {$ELSE} |   {$ELSE} | ||||||
|         OldPal := SelectPalette(Canvas.Handle, ThePalette, False); |         OldPal := SelectPalette(Canvas.Handle, ThePalette, False); | ||||||
| @ -2766,6 +2778,10 @@ try | |||||||
|   end; |   end; | ||||||
|   {$ENDIF} |   {$ENDIF} | ||||||
| finally | finally | ||||||
|  | writeln('TPaintPanel.Paint B Canvas.Handle=',HexStr(Cardinal(Canvas.Handle),8)); | ||||||
|  |   {$IFDEF HL_LAZARUS} | ||||||
|  |   Canvas2.Handle:=0; | ||||||
|  |   {$ENDIF} | ||||||
|   Canvas2.Free; |   Canvas2.Free; | ||||||
|   end; |   end; | ||||||
| end; | end; | ||||||
| @ -2781,6 +2797,7 @@ var | |||||||
|   DC: HDC; |   DC: HDC; | ||||||
|   CopyFromDC: boolean; |   CopyFromDC: boolean; | ||||||
| begin | begin | ||||||
|  | writeln('TPaintPanel.DoBackground A ',HexStr(Cardinal(ACanvas),8)); | ||||||
| DC := ACanvas.handle; | DC := ACanvas.handle; | ||||||
| if DC <> 0 then | if DC <> 0 then | ||||||
|   begin |   begin | ||||||
|  | |||||||
| @ -1798,9 +1798,11 @@ var | |||||||
|   end; |   end; | ||||||
| 
 | 
 | ||||||
| begin | begin | ||||||
|  | writeln('ThlParser.DoCommonSy A ',SymbNames[Sy]); | ||||||
| case Sy of | case Sy of | ||||||
|   TextSy : |   TextSy : | ||||||
|     begin |     begin | ||||||
|  | writeln('ThlParser.DoCommonSy B ',Assigned(Section),' ',LCToken.S); | ||||||
|     if not Assigned(Section) then |     if not Assigned(Section) then | ||||||
|       Section := TSection.Create(MasterList, Lev, FontStack[StackIndex], |       Section := TSection.Create(MasterList, Lev, FontStack[StackIndex], | ||||||
|                  CurrentUrlTarget, Justify); |                  CurrentUrlTarget, Justify); | ||||||
| @ -2277,6 +2279,7 @@ var | |||||||
| 
 | 
 | ||||||
| begin | begin | ||||||
| repeat | repeat | ||||||
|  | writeln('ThlParser.DoBody ',SymbNames[Sy]); | ||||||
|   case Sy of |   case Sy of | ||||||
|     TextSy, BRSy, PSy, PEndSy, |     TextSy, BRSy, PSy, PEndSy, | ||||||
|     NameSy, HRefSy, ASy, AEndSy, |     NameSy, HRefSy, ASy, AEndSy, | ||||||
| @ -2293,6 +2296,7 @@ repeat | |||||||
|       begin |       begin | ||||||
|       if SectionList.Count = 0 then   {make sure we're at beginning} |       if SectionList.Count = 0 then   {make sure we're at beginning} | ||||||
|         begin |         begin | ||||||
|  | writeln('ThlParser.DoBody B ',SymbNames[Sy],' '); | ||||||
|         Section.Free;   {Will start with a new section} |         Section.Free;   {Will start with a new section} | ||||||
|         for I := 0 to Attributes.Count-1 do |         for I := 0 to Attributes.Count-1 do | ||||||
|           with TAttribute(Attributes[I]) do |           with TAttribute(Attributes[I]) do | ||||||
|  | |||||||
| @ -125,7 +125,7 @@ end; | |||||||
| 
 | 
 | ||||||
| procedure TFakeThread.CallOnTerminate; | procedure TFakeThread.CallOnTerminate; | ||||||
| begin | begin | ||||||
| 
 |   if Assigned(OnTerminate) then OnTerminate(Self); | ||||||
| end; | end; | ||||||
| 
 | 
 | ||||||
| function TFakeThread.GetPriority: TThreadPriority; | function TFakeThread.GetPriority: TThreadPriority; | ||||||
| @ -153,25 +153,29 @@ end; | |||||||
| 
 | 
 | ||||||
| procedure TFakeThread.DoTerminate; | procedure TFakeThread.DoTerminate; | ||||||
| begin | begin | ||||||
|   if Assigned(FOnTerminate) then | writeln('TFakeThread.DoTerminate ',HexStr(Cardinal(Self),8)); | ||||||
|     FOnTerminate(Self); |   CallOnTerminate; | ||||||
|   FFinished:=true; |   FFinished:=true; | ||||||
|   if FFreeOnTerminate then Free; |   if FFreeOnTerminate then Free; | ||||||
|  |   FTerminated:=true; | ||||||
| end; | end; | ||||||
| 
 | 
 | ||||||
| procedure TFakeThread.Synchronize(Method: TThreadMethod); | procedure TFakeThread.Synchronize(Method: TThreadMethod); | ||||||
| begin | begin | ||||||
| 
 | writeln('TFakeThread.Synchronize ',HexStr(Cardinal(Self),8)); | ||||||
|  |   Method(); | ||||||
| end; | end; | ||||||
| 
 | 
 | ||||||
| constructor TFakeThread.Create(CreateSuspended: Boolean); | constructor TFakeThread.Create(CreateSuspended: Boolean); | ||||||
| begin | begin | ||||||
|  | writeln('TFakeThread.Create CreateSuspended=',CreateSuspended,' ',HexStr(Cardinal(Self),8)); | ||||||
|   inherited Create; |   inherited Create; | ||||||
|   if CreateSuspended then Suspend else DoExecute; |   if CreateSuspended then Suspend else DoExecute; | ||||||
| end; | end; | ||||||
| 
 | 
 | ||||||
| destructor TFakeThread.Destroy; | destructor TFakeThread.Destroy; | ||||||
| begin | begin | ||||||
|  | writeln('TFakeThread.Destroy ',HexStr(Cardinal(Self),8)); | ||||||
|   if not FFinished and not Suspended then |   if not FFinished and not Suspended then | ||||||
|    begin |    begin | ||||||
|      Terminate; |      Terminate; | ||||||
| @ -182,21 +186,25 @@ end; | |||||||
| 
 | 
 | ||||||
| procedure TFakeThread.Resume; | procedure TFakeThread.Resume; | ||||||
| begin | begin | ||||||
|   if not FFinished then DoExecute; | writeln('TFakeThread.Resume Self=',HexStr(Cardinal(Self),8)); | ||||||
|  |   DoExecute; | ||||||
| end; | end; | ||||||
| 
 | 
 | ||||||
| procedure TFakeThread.Suspend; | procedure TFakeThread.Suspend; | ||||||
| begin | begin | ||||||
|   FSuspended := true; | writeln('TFakeThread.Suspend Self=',HexStr(Cardinal(Self),8)); | ||||||
|  |   FSuspended:=true; | ||||||
| end; | end; | ||||||
| 
 | 
 | ||||||
| procedure TFakeThread.Terminate; | procedure TFakeThread.Terminate; | ||||||
| begin | begin | ||||||
|   FTerminated := True; | writeln('TFakeThread.Terminate Self=',HexStr(Cardinal(Self),8)); | ||||||
|  |   DoTerminate; | ||||||
| end; | end; | ||||||
| 
 | 
 | ||||||
| function TFakeThread.WaitFor: Integer; | function TFakeThread.WaitFor: Integer; | ||||||
| begin | begin | ||||||
|  | writeln('TFakeThread.WaitFor Self=',HexStr(Cardinal(Self),8)); | ||||||
|   Result:=0; |   Result:=0; | ||||||
| end; | end; | ||||||
| 
 | 
 | ||||||
|  | |||||||
| @ -2189,6 +2189,7 @@ begin | |||||||
|       end; |       end; | ||||||
|     end; |     end; | ||||||
|   Len := Curs - StartCurs; |   Len := Curs - StartCurs; | ||||||
|  | writeln('TCell.DoLogic ',HexStr(Cardinal(Self),8),' ',Curs,' ',StartCurs,' Len=',Len); | ||||||
|   Result := H; |   Result := H; | ||||||
|   IB := IMgr.ImageBottom - YValue;   {check for image overhang} |   IB := IMgr.ImageBottom - YValue;   {check for image overhang} | ||||||
|   if IB > Result then |   if IB > Result then | ||||||
| @ -2225,6 +2226,7 @@ begin | |||||||
|   H := Y; |   H := Y; | ||||||
|   for I := 0 to Count-1 do |   for I := 0 to Count-1 do | ||||||
|     begin |     begin | ||||||
|  | writeln('TCell.Draw ',HexStr(Cardinal(Self),8),' ',I,' ',TSectionBase(Items[I]).ClassName); | ||||||
|     H := TSectionBase(Items[I]).Draw(Canvas, ARect, IMgr, X, H); |     H := TSectionBase(Items[I]).Draw(Canvas, ARect, IMgr, X, H); | ||||||
|     end; |     end; | ||||||
|   Result := H; |   Result := H; | ||||||
| @ -2494,6 +2496,7 @@ for I := 0 to AGifList.Count-1 do | |||||||
| OldPal := SelectPalette(Canvas.Handle, ThePalette, True); | OldPal := SelectPalette(Canvas.Handle, ThePalette, True); | ||||||
| RealizePalette(Canvas.Handle); | RealizePalette(Canvas.Handle); | ||||||
| try | try | ||||||
|  | writeln('TSectionList.Draw '); | ||||||
|   Result := inherited Draw(Canvas, ARect, ClipWidth, X, Y); |   Result := inherited Draw(Canvas, ARect, ClipWidth, X, Y); | ||||||
| finally | finally | ||||||
|   SelectPalette(Canvas.Handle, OldPal, True); |   SelectPalette(Canvas.Handle, OldPal, True); | ||||||
| @ -3929,6 +3932,7 @@ Inc(CaptionIndent, IMgr.LeftIndent(YValue)); | |||||||
| Indent := CaptionIndent + (CaptionWidth-TableWidth) div 2; {table indent} | Indent := CaptionIndent + (CaptionWidth-TableWidth) div 2; {table indent} | ||||||
| 
 | 
 | ||||||
| Len := Curs-StartCurs; | Len := Curs-StartCurs; | ||||||
|  | writeln('ThtmlTable.DrawLogic ',HexStr(Cardinal(Self),8),' ',Curs,' ',StartCurs,' Len=',Len); | ||||||
| MaxWidth := CaptionWidth; | MaxWidth := CaptionWidth; | ||||||
| if Float then              | if Float then              | ||||||
|   begin |   begin | ||||||
| @ -4375,6 +4379,7 @@ inherited Create(AMasterList); | |||||||
| Parser := ThlParser(ParentSectionList.Parser); | Parser := ThlParser(ParentSectionList.Parser); | ||||||
| Buff := Nil; | Buff := Nil; | ||||||
| Len := 0; | Len := 0; | ||||||
|  | writeln('TSection.Create ',HexStr(Cardinal(Self),8),' Len=',Len); | ||||||
| BuffSize := 0; | BuffSize := 0; | ||||||
| Parser.CurrentSScript := Normal; | Parser.CurrentSScript := Normal; | ||||||
| Fonts := TFontList.Create; | Fonts := TFontList.Create; | ||||||
| @ -4404,6 +4409,7 @@ end; | |||||||
| {----------------TSection.Destroy} | {----------------TSection.Destroy} | ||||||
| destructor TSection.Destroy; | destructor TSection.Destroy; | ||||||
| begin | begin | ||||||
|  | writeln('TSection.Destroy ',HexStr(Cardinal(Self),8)); | ||||||
| if Assigned(Buff) then FreeMem(Buff, BuffSize); | if Assigned(Buff) then FreeMem(Buff, BuffSize); | ||||||
| if Assigned(XP) then | if Assigned(XP) then | ||||||
|   FreeMem(XP);        |   FreeMem(XP);        | ||||||
| @ -4549,6 +4555,7 @@ if BuffSize < L+1 then Allocate(L + 100);  {L+1 so there is always extra for fon | |||||||
| Move(S.S[1], (Buff+Len)^, Length(S.S)); | Move(S.S[1], (Buff+Len)^, Length(S.S)); | ||||||
| Move(S.I[1], XP^[Len], Length(S.S)*Sizeof(integer));     | Move(S.I[1], XP^[Len], Length(S.S)*Sizeof(integer));     | ||||||
| Len := L; | Len := L; | ||||||
|  | writeln('TSection.AddTokenObj ',HexStr(Cardinal(Self),8),' Len=',Len); | ||||||
| end; | end; | ||||||
| 
 | 
 | ||||||
| function TSection.BreakInfo(Index: integer; NoBreak: boolean): JustifyType;  {called when <br> encountered} | function TSection.BreakInfo(Index: integer; NoBreak: boolean): JustifyType;  {called when <br> encountered} | ||||||
| @ -5310,6 +5317,7 @@ var | |||||||
|     end; |     end; | ||||||
| 
 | 
 | ||||||
|   begin  {Y is at bottom of line here} |   begin  {Y is at bottom of line here} | ||||||
|  |   writeln('DrawTheText A Cnt=',Cnt); | ||||||
|   ImageAtStart := True; |   ImageAtStart := True; | ||||||
|   XX := X + LR.LineIndent; |   XX := X + LR.LineIndent; | ||||||
|   LR.DrawY := Y-LR.LineHt; |   LR.DrawY := Y-LR.LineHt; | ||||||
| @ -5377,6 +5385,7 @@ var | |||||||
|       end |       end | ||||||
|     else |     else | ||||||
|       begin |       begin | ||||||
|  |   writeln('DrawTheText B '); | ||||||
|       J := IntMin(J1, J2); |       J := IntMin(J1, J2); | ||||||
|       J := IntMin(J, J4); |       J := IntMin(J, J4); | ||||||
|       Inverted := ChkInversion(Start-Buff, J3); |       Inverted := ChkInversion(Start-Buff, J3); | ||||||
| @ -5400,6 +5409,7 @@ var | |||||||
|         S[J] := ' '; |         S[J] := ' '; | ||||||
|         J := Pos(#160, S); |         J := Pos(#160, S); | ||||||
|         end; |         end; | ||||||
|  |   writeln('DrawTheText C ',Self is TPreformated); | ||||||
|       if Self is TPreformated then |       if Self is TPreformated then | ||||||
|         begin   {so will clip in Table cells} |         begin   {so will clip in Table cells} | ||||||
|         ARect := Rect(X, Y-LR.LineHt-LR.SpaceBefore-YOffset, X+IMgr.ClipWidth, Y-YOffset+1); |         ARect := Rect(X, Y-LR.LineHt-LR.SpaceBefore-YOffset, X+IMgr.ClipWidth, Y-YOffset+1); | ||||||
| @ -5413,6 +5423,9 @@ var | |||||||
|           if SScript = Normal then Addon := 0 |           if SScript = Normal then Addon := 0 | ||||||
|             else if SScript = SupSc then Addon := -(FontHeight div 3) |             else if SScript = SupSc then Addon := -(FontHeight div 3) | ||||||
|             else Addon := Descent div 2 +1; |             else Addon := Descent div 2 +1; | ||||||
|  |   writeln('DrawTheText D ',S,' ',HexStr(Cardinal(Canvas.Font.Color),8)); | ||||||
|  |         Canvas.Brush.Color:=clRed; | ||||||
|  |         Canvas.FillRect(Rect(0,0,200,200)); | ||||||
|         TextOut(Canvas.Handle, XX-OHang div 2, Y - Descent + Addon - YOffset, PChar(S), I); |         TextOut(Canvas.Handle, XX-OHang div 2, Y - Descent + Addon - YOffset, PChar(S), I); | ||||||
|         end; |         end; | ||||||
|       {Put in a dummy caret to show character position} |       {Put in a dummy caret to show character position} | ||||||
| @ -5458,6 +5471,7 @@ var | |||||||
|     begin |     begin | ||||||
|     Inc(Y, LineHt+SpaceBefore); |     Inc(Y, LineHt+SpaceBefore); | ||||||
|     XS := LevelIndent + X; |     XS := LevelIndent + X; | ||||||
|  | writeln('DoDraw ',I,' ',ListType <> None); | ||||||
|     if (I = 0) and (ListType <> None) then |     if (I = 0) and (ListType <> None) then | ||||||
|       if ListType = Definition then  {definition list, do nothing} |       if ListType = Definition then  {definition list, do nothing} | ||||||
|       else if ListType = Ordered then   {ordered list} |       else if ListType = Ordered then   {ordered list} | ||||||
| @ -5507,6 +5521,9 @@ begin | |||||||
| Result := Y + SectionHeight; | Result := Y + SectionHeight; | ||||||
| YOffset := ParentSectionList.YOff; | YOffset := ParentSectionList.YOff; | ||||||
| 
 | 
 | ||||||
|  | writeln('TSection.Draw A ',HexStr(Cardinal(Self),8),' Lines.Count=',Lines.Count, | ||||||
|  | ' Len=',Len,' Y=',Y,' YOffset=',YOffset, | ||||||
|  | ' DrawHeight=',DrawHeight,' ARect.Top=',ARect.Top,' ARect.Bottom=',ARect.Bottom); | ||||||
| if (Len > 0) and (Y-YOffset+DrawHeight >= ARect.Top) and (Y-YOffset < ARect.Bottom) then | if (Len > 0) and (Y-YOffset+DrawHeight >= ARect.Top) and (Y-YOffset < ARect.Bottom) then | ||||||
|   begin |   begin | ||||||
|   DC := Canvas.Handle; |   DC := Canvas.Handle; | ||||||
| @ -5514,12 +5531,19 @@ if (Len > 0) and (Y-YOffset+DrawHeight >= ARect.Top) and (Y-YOffset < ARect.Bott | |||||||
| 
 | 
 | ||||||
|   MySelB := ParentSectionList.SelB-StartCurs; |   MySelB := ParentSectionList.SelB-StartCurs; | ||||||
|   MySelE := ParentSectionList.SelE-StartCurs; |   MySelE := ParentSectionList.SelE-StartCurs; | ||||||
|  | writeln('TSection.Draw Lines.Count=',Lines.Count); | ||||||
|  | Canvas.Brush.Color:=clMaroon; | ||||||
|  | Canvas.FillRect(Rect(0,0,200,200)); | ||||||
|   for I := 0 to Lines.Count-1 do |   for I := 0 to Lines.Count-1 do | ||||||
|     with LineRec(Lines[I]) do |     with LineRec(Lines[I]) do | ||||||
|  |       begin | ||||||
|  |       writeln('TSection.Draw ',I,' ',Y-YOffset+LineImgHt,' >= ',ARect.Top, | ||||||
|  |         ' and ',Y-YOffset,' < ',ARect.Bottom); | ||||||
|       if (Y-YOffset+LineImgHt >= ARect.Top) and (Y-YOffset < ARect.Bottom) then |       if (Y-YOffset+LineImgHt >= ARect.Top) and (Y-YOffset < ARect.Bottom) then | ||||||
|         DoDraw(I) |         DoDraw(I) | ||||||
|       else  {do not completely draw extremely long paragraphs} |       else  {do not completely draw extremely long paragraphs} | ||||||
|         Inc(Y, SpaceBefore + LineHt + SpaceAfter); |         Inc(Y, SpaceBefore + LineHt + SpaceAfter); | ||||||
|  |       end; | ||||||
|   end; |   end; | ||||||
| end; | end; | ||||||
| 
 | 
 | ||||||
|  | |||||||
| @ -267,6 +267,40 @@ procedure FreeAndNil(var Obj); | |||||||
| {$endif} | {$endif} | ||||||
| {$endif} | {$endif} | ||||||
| 
 | 
 | ||||||
|  | {$IFDEF HL_LAZARUS} | ||||||
|  | const | ||||||
|  |   SymbNames: array[Symb] of string = ( | ||||||
|  |     'HtmlSy', 'TitleSy', 'BodySy', 'HeadSy', 'PSy', 'PEndSy', 'BSy', 'BEndSy', 'ISy', 'IEndSy', | ||||||
|  |     'HtmlEndSy', 'TitleEndSy', 'BodyEndSy', 'HeadEndSy', 'BRSy', 'HeadingSy', 'HeadingEndSy', | ||||||
|  |     'EmSy', 'EmEndSy', 'StrongSy', 'StrongEndSy', 'USy', 'UEndSy', 'HRSy', | ||||||
|  |     'CiteSy', 'VarSy', 'CiteEndSy', 'VarEndSy', 'BaseSy', | ||||||
|  |        {Keep order} | ||||||
|  |     'TTSy', 'CodeSy', 'KbdSy', 'SampSy', ' TTEndSy', 'CodeEndSy', 'KbdEndSy', 'SampEndSy', | ||||||
|  |        {end order} | ||||||
|  |     'OLSy', 'OLEndSy', 'LISy', 'ULSy', 'ULEndSy', 'DirSy', 'DirEndSy', 'MenuSy', 'MenuEndSy', | ||||||
|  |     'DLSy', 'DLEndSy', 'DDSy', 'DTSy', 'AddressSy', 'AddressEndSy', 'BlockQuoteSy', 'BlockQuoteEndSy', | ||||||
|  |     'PreSy', 'PreEndSy', 'ImageSy', 'Centersy', 'CenterEndSy', | ||||||
|  |     'OtherAttribute', 'ASy', 'AEndSy', 'HrefSy', 'NameSy', 'SrcSy', 'AltSy', 'AlignSy', | ||||||
|  |     'OtherChar', 'OtherSy', 'CommandSy', 'TextSy', 'EofSy', 'LinkSy', 'BGColorSy', | ||||||
|  |     'BackgroundSy', 'TableSy', 'TableEndSy', 'TDSy', 'TDEndSy', 'TRSy', 'TREndSy', 'THSy', 'THEndSy', | ||||||
|  |     'ColSpanSy', 'RowSpanSy', 'BorderSy', 'CellPaddingSy', 'CellSpacingSy', 'VAlignSy', | ||||||
|  |     'WidthSy', 'CaptionSy', 'CaptionEndSy', 'StartSy', 'ButtonSy', 'InputSy', 'ValueSy', | ||||||
|  |     'TypeSy', 'CheckBoxSy', 'RadioSy', 'FormSy', 'FormEndSy', 'MethodSy', 'ActionSy', | ||||||
|  |     'CheckedSy', 'SizeSy', 'MaxLengthSy', 'TextAreaSy', 'TextAreaEndSy', 'ColsSy', | ||||||
|  |     'RowsSy', 'SelectSy', 'SelectEndSy', 'OptionSy', 'OptionEndSy', 'SelectedSy', | ||||||
|  |     'MultipleSy', 'FontSy', 'FontEndSy', 'ColorSy', 'FaceSy', 'BaseFontSy', | ||||||
|  |     'TranspSy', 'SubSy', 'SubEndSy', 'SupSy', 'SupEndSy', 'ClearSy', 'IsMapSy', | ||||||
|  |     'BigSy', 'BigEndSy', 'SmallSy', 'SmallEndSy', 'BorderColorSy', 'MapSy', 'MapEndSy', | ||||||
|  |     'AreaSy', 'ShapeSy', 'CoordsSy', 'NoHrefSy', 'UseMapSy', 'HeightSy', 'PlainSy', | ||||||
|  |     'FrameSetSy', 'FrameSetEndSy', 'FrameSy', 'TargetSy', 'NoFramesSy', 'NoFramesEndSy', | ||||||
|  |     'NoResizeSy', 'ScrollingSy', 'HSpaceSy', 'VSpaceSy', 'ScriptSy', 'ScriptEndSy', | ||||||
|  |     'LanguageSy', 'DivSy', 'DivEndSy', 'SSy', 'SEndSy', 'StrikeSy', 'StrikeEndSy', | ||||||
|  |     'FrameBorderSy', 'MarginWidthSy', 'MarginHeightSy', 'BgSoundSy', 'LoopSy', | ||||||
|  |     'OnClickSy', 'WrapSy', 'NoShadeSy', 'MetaSy', 'HttpEqSy', 'ContentSy', 'EncTypeSy', | ||||||
|  |     'VLinkSy', 'OLinkSy', 'ActiveSy', 'NoBrSy', 'NoBrEndSy', 'WbrSy', | ||||||
|  |     'NoWrapSy', 'EolSy'); | ||||||
|  | {$ENDIF} | ||||||
|  | 
 | ||||||
| implementation | implementation | ||||||
| 
 | 
 | ||||||
| uses | uses | ||||||
|  | |||||||
		Loading…
	
		Reference in New Issue
	
	Block a user
	 mattias
						mattias