OLD | NEW |
1 /* | 1 /* |
2 * Copyright (C) Research In Motion Limited 2010. All rights reserved. | 2 * Copyright (C) Research In Motion Limited 2010. All rights reserved. |
3 * | 3 * |
4 * This library is free software; you can redistribute it and/or | 4 * This library is free software; you can redistribute it and/or |
5 * modify it under the terms of the GNU Library General Public | 5 * modify it under the terms of the GNU Library General Public |
6 * License as published by the Free Software Foundation; either | 6 * License as published by the Free Software Foundation; either |
7 * version 2 of the License, or (at your option) any later version. | 7 * version 2 of the License, or (at your option) any later version. |
8 * | 8 * |
9 * This library is distributed in the hope that it will be useful, | 9 * This library is distributed in the hope that it will be useful, |
10 * but WITHOUT ANY WARRANTY; without even the implied warranty of | 10 * but WITHOUT ANY WARRANTY; without even the implied warranty of |
(...skipping 35 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
46 | 46 |
47 // Public helper struct. Private classes in SVGTextQuery inherit from it. | 47 // Public helper struct. Private classes in SVGTextQuery inherit from it. |
48 struct Data; | 48 struct Data; |
49 | 49 |
50 private: | 50 private: |
51 typedef bool (SVGTextQuery::*ProcessTextFragmentCallback)(Data*, const SVGTe
xtFragment&) const; | 51 typedef bool (SVGTextQuery::*ProcessTextFragmentCallback)(Data*, const SVGTe
xtFragment&) const; |
52 bool executeQuery(Data*, ProcessTextFragmentCallback) const; | 52 bool executeQuery(Data*, ProcessTextFragmentCallback) const; |
53 | 53 |
54 void collectTextBoxesInFlowBox(InlineFlowBox*); | 54 void collectTextBoxesInFlowBox(InlineFlowBox*); |
55 bool mapStartEndPositionsIntoFragmentCoordinates(Data*, const SVGTextFragmen
t&, int& startPosition, int& endPosition) const; | 55 bool mapStartEndPositionsIntoFragmentCoordinates(Data*, const SVGTextFragmen
t&, int& startPosition, int& endPosition) const; |
| 56 void modifyStartEndPositionsRespectingLigaturesCached(Data*, int& startPosit
ion, int& endPosition) const; |
56 void modifyStartEndPositionsRespectingLigatures(Data*, int& startPosition, i
nt& endPosition) const; | 57 void modifyStartEndPositionsRespectingLigatures(Data*, int& startPosition, i
nt& endPosition) const; |
57 | 58 |
58 private: | 59 private: |
59 bool numberOfCharactersCallback(Data*, const SVGTextFragment&) const; | 60 bool numberOfCharactersCallback(Data*, const SVGTextFragment&) const; |
60 bool textLengthCallback(Data*, const SVGTextFragment&) const; | 61 bool textLengthCallback(Data*, const SVGTextFragment&) const; |
61 bool subStringLengthCallback(Data*, const SVGTextFragment&) const; | 62 bool subStringLengthCallback(Data*, const SVGTextFragment&) const; |
62 bool startPositionOfCharacterCallback(Data*, const SVGTextFragment&) const; | 63 bool startPositionOfCharacterCallback(Data*, const SVGTextFragment&) const; |
63 bool endPositionOfCharacterCallback(Data*, const SVGTextFragment&) const; | 64 bool endPositionOfCharacterCallback(Data*, const SVGTextFragment&) const; |
64 bool rotationOfCharacterCallback(Data*, const SVGTextFragment&) const; | 65 bool rotationOfCharacterCallback(Data*, const SVGTextFragment&) const; |
65 bool extentOfCharacterCallback(Data*, const SVGTextFragment&) const; | 66 bool extentOfCharacterCallback(Data*, const SVGTextFragment&) const; |
66 bool characterNumberAtPositionCallback(Data*, const SVGTextFragment&) const; | 67 bool characterNumberAtPositionCallback(Data*, const SVGTextFragment&) const; |
67 | 68 |
68 private: | 69 private: |
69 Vector<SVGInlineTextBox*> m_textBoxes; | 70 Vector<SVGInlineTextBox*> m_textBoxes; |
70 }; | 71 }; |
71 | 72 |
72 } | 73 } |
73 | 74 |
74 #endif | 75 #endif |
OLD | NEW |