Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(351)

Side by Side Diff: Source/core/editing/StyledMarkupAccumulator.h

Issue 1177323005: Move StyledMarkupAccumulator::shouldApplyWrappingStyle to its serializer (Closed) Base URL: svn://svn.chromium.org/blink/trunk
Patch Set: yosin's review Created 5 years, 6 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
« no previous file with comments | « no previous file | Source/core/editing/StyledMarkupAccumulator.cpp » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 /* 1 /*
2 * Copyright (C) 2004, 2005, 2006, 2007, 2008, 2009 Apple Inc. All rights reserv ed. 2 * Copyright (C) 2004, 2005, 2006, 2007, 2008, 2009 Apple Inc. All rights reserv ed.
3 * Copyright (C) 2008, 2009, 2010, 2011 Google Inc. All rights reserved. 3 * Copyright (C) 2008, 2009, 2010, 2011 Google Inc. All rights reserved.
4 * Copyright (C) 2011 Igalia S.L. 4 * Copyright (C) 2011 Igalia S.L.
5 * Copyright (C) 2011 Motorola Mobility. All rights reserved. 5 * Copyright (C) 2011 Motorola Mobility. All rights reserved.
6 * 6 *
7 * Redistribution and use in source and binary forms, with or without 7 * Redistribution and use in source and binary forms, with or without
8 * modification, are permitted provided that the following conditions 8 * modification, are permitted provided that the following conditions
9 * are met: 9 * are met:
10 * 1. Redistributions of source code must retain the above copyright 10 * 1. Redistributions of source code must retain the above copyright
(...skipping 26 matching lines...) Expand all
37 namespace blink { 37 namespace blink {
38 38
39 class Document; 39 class Document;
40 class StylePropertySet; 40 class StylePropertySet;
41 class Text; 41 class Text;
42 42
43 class StyledMarkupAccumulator final { 43 class StyledMarkupAccumulator final {
44 WTF_MAKE_NONCOPYABLE(StyledMarkupAccumulator); 44 WTF_MAKE_NONCOPYABLE(StyledMarkupAccumulator);
45 STACK_ALLOCATED(); 45 STACK_ALLOCATED();
46 public: 46 public:
47 StyledMarkupAccumulator(EAbsoluteURLs, const TextOffset& start, const TextOf fset& end, const PassRefPtrWillBeRawPtr<Document>, EAnnotateForInterchange, Node *); 47 StyledMarkupAccumulator(EAbsoluteURLs, const TextOffset& start, const TextOf fset& end, const PassRefPtrWillBeRawPtr<Document>, EAnnotateForInterchange);
48 48
49 void appendEndTag(const Element&); 49 void appendEndTag(const Element&);
50 void appendInterchangeNewline(); 50 void appendInterchangeNewline();
51 51
52 void appendText(Text&); 52 void appendText(Text&);
53 void appendTextWithInlineStyle(Text&); 53 void appendTextWithInlineStyle(Text&, PassRefPtrWillBeRawPtr<EditingStyle>);
54
55 // TODO(hajimehoshi): These functions are called from the serializer, but
56 // should not.
57 Node* highestNodeToBeSerialized() { return m_highestNodeToBeSerialized.get() ; }
58 void setHighestNodeToBeSerialized(Node* highestNodeToBeSerialized) { m_highe stNodeToBeSerialized = highestNodeToBeSerialized; }
59 EditingStyle* wrappingStyle() const { return m_wrappingStyle.get(); }
60 void setWrappingStyle(PassRefPtrWillBeRawPtr<EditingStyle> wrappingStyle) { m_wrappingStyle = wrappingStyle; }
61 54
62 void wrapWithStyleNode(StylePropertySet*); 55 void wrapWithStyleNode(StylePropertySet*);
63 String takeResults(); 56 String takeResults();
64 57
65 void pushMarkup(const String&); 58 void pushMarkup(const String&);
66 59
67 void appendElement(const Element&, PassRefPtrWillBeRawPtr<EditingStyle>); 60 void appendElement(const Element&);
68 void appendElement(StringBuilder&, const Element&); 61 void appendElement(StringBuilder&, const Element&);
62 void appendElementWithInlineStyle(const Element&, PassRefPtrWillBeRawPtr<Edi tingStyle>);
69 void appendElementWithInlineStyle(StringBuilder&, const Element&, PassRefPtr WillBeRawPtr<EditingStyle>); 63 void appendElementWithInlineStyle(StringBuilder&, const Element&, PassRefPtr WillBeRawPtr<EditingStyle>);
70 void appendStartMarkup(Node&); 64 void appendStartMarkup(Node&);
71 65
72 bool shouldApplyWrappingStyle(const Node&) const;
73
74 private: 66 private:
75 String renderedText(Text&); 67 String renderedText(Text&);
76 String stringValueForRange(const Text&); 68 String stringValueForRange(const Text&);
77 bool shouldAnnotate() const; 69 bool shouldAnnotate() const;
78 70
79 void appendEndMarkup(StringBuilder&, const Element&); 71 void appendEndMarkup(StringBuilder&, const Element&);
80 72
81 MarkupFormatter m_formatter; 73 MarkupFormatter m_formatter;
82 const TextOffset m_start; 74 const TextOffset m_start;
83 const TextOffset m_end; 75 const TextOffset m_end;
84 const RefPtrWillBeMember<Document> m_document; 76 const RefPtrWillBeMember<Document> m_document;
85 const EAnnotateForInterchange m_shouldAnnotate; 77 const EAnnotateForInterchange m_shouldAnnotate;
86 RawPtrWillBeMember<Node> m_highestNodeToBeSerialized;
87 RefPtrWillBeMember<EditingStyle> m_wrappingStyle;
88 StringBuilder m_result; 78 StringBuilder m_result;
89 Vector<String> m_reversedPrecedingMarkup; 79 Vector<String> m_reversedPrecedingMarkup;
90 }; 80 };
91 81
92 } // namespace blink 82 } // namespace blink
93 83
94 #endif // StyledMarkupAccumulator_h 84 #endif // StyledMarkupAccumulator_h
OLDNEW
« no previous file with comments | « no previous file | Source/core/editing/StyledMarkupAccumulator.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698