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

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

Issue 1181703003: Refactoring: Move StyledMarkupAccumulator::createInlineStyle to the serializer (Closed) Base URL: svn://svn.chromium.org/blink/trunk
Patch Set: bug fix: rebasing failed 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 28 matching lines...) Expand all
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, Node *);
48 48
49 void appendStartTag(Node&);
50 void appendEndTag(const Element&); 49 void appendEndTag(const Element&);
51 void appendInterchangeNewline(); 50 void appendInterchangeNewline();
52 51
53 void appendText(Text&); 52 void appendText(Text&);
53 void appendTextWithInlineStyle(Text&);
54 54
55 // TODO(hajimehoshi): These functions are called from the serializer, but 55 // TODO(hajimehoshi): These functions are called from the serializer, but
56 // should not. 56 // should not.
57 Node* highestNodeToBeSerialized() { return m_highestNodeToBeSerialized.get() ; } 57 Node* highestNodeToBeSerialized() { return m_highestNodeToBeSerialized.get() ; }
58 void setHighestNodeToBeSerialized(Node* highestNodeToBeSerialized) { m_highe stNodeToBeSerialized = highestNodeToBeSerialized; } 58 void setHighestNodeToBeSerialized(Node* highestNodeToBeSerialized) { m_highe stNodeToBeSerialized = highestNodeToBeSerialized; }
59 EditingStyle* wrappingStyle() const { return m_wrappingStyle.get(); }
59 void setWrappingStyle(PassRefPtrWillBeRawPtr<EditingStyle> wrappingStyle) { m_wrappingStyle = wrappingStyle; } 60 void setWrappingStyle(PassRefPtrWillBeRawPtr<EditingStyle> wrappingStyle) { m_wrappingStyle = wrappingStyle; }
60 61
61 void wrapWithStyleNode(StylePropertySet*); 62 void wrapWithStyleNode(StylePropertySet*);
62 String takeResults(); 63 String takeResults();
63 64
64 void pushMarkup(const String&); 65 void pushMarkup(const String&);
65 RefPtrWillBeRawPtr<EditingStyle> createInlineStyle(Element&);
66 66
67 void appendElement(const Element&, PassRefPtrWillBeRawPtr<EditingStyle>);
67 void appendElement(StringBuilder&, const Element&); 68 void appendElement(StringBuilder&, const Element&);
68 void appendElementWithInlineStyle(StringBuilder&, const Element&, PassRefPtr WillBeRawPtr<EditingStyle>); 69 void appendElementWithInlineStyle(StringBuilder&, const Element&, PassRefPtr WillBeRawPtr<EditingStyle>);
69 void appendStartMarkup(Node&); 70 void appendStartMarkup(Node&);
70 71
71 bool shouldApplyWrappingStyle(const Node&) const; 72 bool shouldApplyWrappingStyle(const Node&) const;
72 73
73 private: 74 private:
74 void appendTextWithInlineStyle(Text&);
75
76 String renderedText(Text&); 75 String renderedText(Text&);
77 String stringValueForRange(const Text&); 76 String stringValueForRange(const Text&);
78 bool shouldAnnotate() const; 77 bool shouldAnnotate() const;
79 78
80 void appendElement(const Element&, PassRefPtrWillBeRawPtr<EditingStyle>);
81 void appendEndMarkup(StringBuilder&, const Element&); 79 void appendEndMarkup(StringBuilder&, const Element&);
82 80
83 MarkupFormatter m_formatter; 81 MarkupFormatter m_formatter;
84 const TextOffset m_start; 82 const TextOffset m_start;
85 const TextOffset m_end; 83 const TextOffset m_end;
86 const RefPtrWillBeMember<Document> m_document; 84 const RefPtrWillBeMember<Document> m_document;
87 const EAnnotateForInterchange m_shouldAnnotate; 85 const EAnnotateForInterchange m_shouldAnnotate;
88 RawPtrWillBeMember<Node> m_highestNodeToBeSerialized; 86 RawPtrWillBeMember<Node> m_highestNodeToBeSerialized;
89 RefPtrWillBeMember<EditingStyle> m_wrappingStyle; 87 RefPtrWillBeMember<EditingStyle> m_wrappingStyle;
90 StringBuilder m_result; 88 StringBuilder m_result;
91 Vector<String> m_reversedPrecedingMarkup; 89 Vector<String> m_reversedPrecedingMarkup;
92 }; 90 };
93 91
94 } // namespace blink 92 } // namespace blink
95 93
96 #endif // StyledMarkupAccumulator_h 94 #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