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

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

Issue 1163673005: Refactoring: Remove StyledMarkupAccumulator::RangeFullySelectsNodes (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
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 enum RangeFullySelectsNode { DoesFullySelectNode, DoesNotFullySelectNode };
48
49 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 *);
50 48
51 void appendStartTag(Node&); 49 void appendStartTag(Node&);
52 void appendEndTag(const Element&); 50 void appendEndTag(const Element&);
53 void appendInterchangeNewline(); 51 void appendInterchangeNewline();
54 52
53 void appendText(Text&);
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 void setWrappingStyle(PassRefPtrWillBeRawPtr<EditingStyle> wrappingStyle) { m_wrappingStyle = wrappingStyle; } 59 void setWrappingStyle(PassRefPtrWillBeRawPtr<EditingStyle> wrappingStyle) { m_wrappingStyle = wrappingStyle; }
60 60
61 void wrapWithStyleNode(StylePropertySet*); 61 void wrapWithStyleNode(StylePropertySet*);
62 String takeResults(); 62 String takeResults();
63 63
64 void pushMarkup(const String&); 64 void pushMarkup(const String&);
65 void appendElement(StringBuilder&, Element&, bool addDisplayInline, RangeFul lySelectsNode); 65 RefPtrWillBeMember<EditingStyle> createInlineStyle(Element&, bool addDisplay Inline);
66
67 void appendElement(StringBuilder&, Element&, bool addDisplayInline, PassRefP trWillBeRawPtr<EditingStyle>);
66 void appendStartMarkup(StringBuilder&, Node&); 68 void appendStartMarkup(StringBuilder&, Node&);
67 69
68 private: 70 private:
69 void appendText(StringBuilder&, Text&); 71 void appendText(StringBuilder&, Text&);
70 72
71 String renderedText(Text&); 73 String renderedText(Text&);
72 String stringValueForRange(const Text&); 74 String stringValueForRange(const Text&);
73
74 bool shouldApplyWrappingStyle(const Node&) const; 75 bool shouldApplyWrappingStyle(const Node&) const;
75
76 bool shouldAnnotate() const; 76 bool shouldAnnotate() const;
77 77
78 void appendElement(StringBuilder&, Element&); 78 void appendElement(Element&, PassRefPtrWillBeRawPtr<EditingStyle>);
79 void appendEndMarkup(StringBuilder&, const Element&); 79 void appendEndMarkup(StringBuilder&, const Element&);
80 80
81 RefPtrWillBeRawPtr<EditingStyle> createInlineStyle(Element&, bool addDisplay Inline, RangeFullySelectsNode);
82
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') | Source/core/editing/StyledMarkupSerializer.h » ('J')

Powered by Google App Engine
This is Rietveld 408576698