Move XFA_ItemLayoutProcessorStages into CXFA_ItemLayoutProcessor.

Rename it to CXFA_ItemLayoutProcessor::Stage. Also rename the enum
values to kFoo.

Change-Id: I56686abd41db3e9ca39725055705277ae66f7cbe
Reviewed-on: https://pdfium-review.googlesource.com/c/50610
Commit-Queue: Lei Zhang <thestig@chromium.org>
Reviewed-by: Tom Sepez <tsepez@chromium.org>
diff --git a/xfa/fxfa/layout/cxfa_itemlayoutprocessor.cpp b/xfa/fxfa/layout/cxfa_itemlayoutprocessor.cpp
index 27e8df2..7327010 100644
--- a/xfa/fxfa/layout/cxfa_itemlayoutprocessor.cpp
+++ b/xfa/fxfa/layout/cxfa_itemlayoutprocessor.cpp
@@ -390,7 +390,7 @@
   return false;
 }
 
-Optional<XFA_ItemLayoutProcessorStages> FindBreakNode(
+Optional<CXFA_ItemLayoutProcessor::Stage> FindBreakNode(
     CXFA_Node* pContainerNode,
     bool bBreakBefore,
     CXFA_Node** pCurActionNode) {
@@ -405,14 +405,14 @@
           break;
 
         *pCurActionNode = pBreakNode;
-        return XFA_ItemLayoutProcessorStages::BreakBefore;
+        return CXFA_ItemLayoutProcessor::Stage::kBreakBefore;
       }
       case XFA_Element::BreakAfter: {
         if (bBreakBefore)
           break;
 
         *pCurActionNode = pBreakNode;
-        return XFA_ItemLayoutProcessorStages::BreakAfter;
+        return CXFA_ItemLayoutProcessor::Stage::kBreakAfter;
       }
       case XFA_Element::Break:
         if (pBreakNode->JSObject()->GetEnum(eAttributeType) ==
@@ -421,8 +421,8 @@
         }
 
         *pCurActionNode = pBreakNode;
-        return bBreakBefore ? XFA_ItemLayoutProcessorStages::BreakBefore
-                            : XFA_ItemLayoutProcessorStages::BreakAfter;
+        return bBreakBefore ? CXFA_ItemLayoutProcessor::Stage::kBreakBefore
+                            : CXFA_ItemLayoutProcessor::Stage::kBreakAfter;
       default:
         break;
     }
@@ -801,7 +801,7 @@
     pLayoutItem->m_pNextSibling = nullptr;
   }
 
-  if (m_nCurChildNodeStage != XFA_ItemLayoutProcessorStages::Done ||
+  if (m_nCurChildNodeStage != Stage::kDone ||
       !ToContentLayoutItem(m_pOldLayoutItem)) {
     return pLayoutItem;
   }
@@ -829,20 +829,20 @@
       m_nCurChildNodeStage, bUsePageBreak, GetFormNode(), &m_pCurChildNode);
 }
 
-XFA_ItemLayoutProcessorStages CXFA_ItemLayoutProcessor::GotoNextContainerNode(
-    XFA_ItemLayoutProcessorStages nCurStage,
+CXFA_ItemLayoutProcessor::Stage CXFA_ItemLayoutProcessor::GotoNextContainerNode(
+    Stage nCurStage,
     bool bUsePageBreak,
     CXFA_Node* pParentContainer,
     CXFA_Node** pCurActionNode) {
   CXFA_Node* pChildContainer = nullptr;
   switch (nCurStage) {
-    case XFA_ItemLayoutProcessorStages::BreakBefore:
-    case XFA_ItemLayoutProcessorStages::BreakAfter: {
+    case Stage::kBreakBefore:
+    case Stage::kBreakAfter: {
       pChildContainer = (*pCurActionNode)->GetParent();
       break;
     }
-    case XFA_ItemLayoutProcessorStages::Keep:
-    case XFA_ItemLayoutProcessorStages::Container:
+    case Stage::kKeep:
+    case Stage::kContainer:
       pChildContainer = *pCurActionNode;
       break;
     default:
@@ -850,19 +850,19 @@
       break;
   }
 
-  Optional<XFA_ItemLayoutProcessorStages> ret;
+  Optional<Stage> ret;
   switch (nCurStage) {
-    case XFA_ItemLayoutProcessorStages::Keep:
+    case Stage::kKeep:
       ret = HandleKeep(pChildContainer->GetFirstChild(), pCurActionNode);
       if (ret.has_value())
         return ret.value();
       goto CheckNextChildContainer;
 
-    case XFA_ItemLayoutProcessorStages::None:
+    case Stage::kNone:
       *pCurActionNode = nullptr;
       FALLTHROUGH;
 
-    case XFA_ItemLayoutProcessorStages::BookendLeader:
+    case Stage::kBookendLeader:
       ret = HandleBookendLeader(pParentContainer, pCurActionNode);
       if (ret.has_value())
         return ret.value();
@@ -870,7 +870,7 @@
       *pCurActionNode = nullptr;
       FALLTHROUGH;
 
-    case XFA_ItemLayoutProcessorStages::BreakBefore:
+    case Stage::kBreakBefore:
       if (*pCurActionNode) {
         CXFA_Node* pBreakBeforeNode = (*pCurActionNode)->GetNextSibling();
         if (!m_bKeepBreakFinish) {
@@ -885,15 +885,15 @@
           goto CheckNextChildContainer;
         }
         *pCurActionNode = pChildContainer;
-        return XFA_ItemLayoutProcessorStages::Container;
+        return Stage::kContainer;
       }
       goto CheckNextChildContainer;
 
-    case XFA_ItemLayoutProcessorStages::Container:
+    case Stage::kContainer:
       *pCurActionNode = nullptr;
       FALLTHROUGH;
 
-    case XFA_ItemLayoutProcessorStages::BreakAfter:
+    case Stage::kBreakAfter:
       ret = HandleBreakAfter(pChildContainer, pCurActionNode);
       if (ret.has_value())
         return ret.value();
@@ -924,14 +924,13 @@
           return ret.value();
       }
       *pCurActionNode = pNextChildContainer;
-      return m_bIsProcessKeep ? XFA_ItemLayoutProcessorStages::Keep
-                              : XFA_ItemLayoutProcessorStages::Container;
+      return m_bIsProcessKeep ? Stage::kKeep : Stage::kContainer;
     }
 
     NoMoreChildContainer : {
       *pCurActionNode = nullptr;
       FALLTHROUGH;
-      case XFA_ItemLayoutProcessorStages::BookendTrailer:
+      case Stage::kBookendTrailer:
         ret = HandleBookendTrailer(pParentContainer, pCurActionNode);
         if (ret.has_value())
           return ret.value();
@@ -939,11 +938,11 @@
       FALLTHROUGH;
     default:
       *pCurActionNode = nullptr;
-      return XFA_ItemLayoutProcessorStages::Done;
+      return Stage::kDone;
   }
 }
 
-Optional<XFA_ItemLayoutProcessorStages>
+Optional<CXFA_ItemLayoutProcessor::Stage>
 CXFA_ItemLayoutProcessor::ProcessKeepNodesForCheckNext(
     CXFA_Node** pCurActionNode,
     CXFA_Node** pNextContainer,
@@ -974,7 +973,7 @@
     return {};
   }
 
-  Optional<XFA_ItemLayoutProcessorStages> ret =
+  Optional<Stage> ret =
       FindBreakNode((*pNextContainer)->GetFirstChild(), true, pCurActionNode);
   if (!ret.has_value()) {
     *pNextContainer = m_pKeepHeadNode;
@@ -985,14 +984,14 @@
   return ret;
 }
 
-Optional<XFA_ItemLayoutProcessorStages>
+Optional<CXFA_ItemLayoutProcessor::Stage>
 CXFA_ItemLayoutProcessor::ProcessKeepNodesForBreakBefore(
     CXFA_Node** pCurActionNode,
     CXFA_Node* pContainerNode) {
   if (m_pKeepTailNode == pContainerNode) {
     *pCurActionNode = m_pKeepHeadNode;
     ProcessKeepNodesEnd();
-    return XFA_ItemLayoutProcessorStages::Container;
+    return Stage::kContainer;
   }
 
   CXFA_Node* pBreakAfterNode = pContainerNode->GetFirstChild();
@@ -1004,13 +1003,12 @@
   CXFA_Node* pFormNode = pPageAreaLayoutItem->GetFormNode();
   CXFA_Node* pCurChildNode = nullptr;
   CXFA_LayoutItem* pBeforeItem = nullptr;
-  for (XFA_ItemLayoutProcessorStages nCurChildNodeStage =
-           GotoNextContainerNode(XFA_ItemLayoutProcessorStages::None, false,
-                                 pFormNode, &pCurChildNode);
+  for (Stage nCurChildNodeStage = GotoNextContainerNode(
+           Stage::kNone, false, pFormNode, &pCurChildNode);
        pCurChildNode;
        nCurChildNodeStage = GotoNextContainerNode(nCurChildNodeStage, false,
                                                   pFormNode, &pCurChildNode)) {
-    if (nCurChildNodeStage != XFA_ItemLayoutProcessorStages::Container)
+    if (nCurChildNodeStage != Stage::kContainer)
       continue;
     if (pCurChildNode->GetElementType() == XFA_Element::Variables)
       continue;
@@ -1078,7 +1076,7 @@
 
   int32_t iColIndex = 0;
   for (; m_pCurChildNode; GotoNextContainerNodeSimple(false)) {
-    if (m_nCurChildNodeStage != XFA_ItemLayoutProcessorStages::Container)
+    if (m_nCurChildNodeStage != Stage::kContainer)
       continue;
     if (m_pCurChildNode->GetElementType() == XFA_Element::Variables)
       continue;
@@ -1216,7 +1214,7 @@
 
   for (; m_pCurChildNode; GotoNextContainerNodeSimple(false)) {
     layoutContext.m_fCurColumnWidth.reset();
-    if (m_nCurChildNodeStage != XFA_ItemLayoutProcessorStages::Container)
+    if (m_nCurChildNodeStage != Stage::kContainer)
       continue;
 
     auto pProcessor = pdfium::MakeUnique<CXFA_ItemLayoutProcessor>(
@@ -1600,7 +1598,7 @@
   float fContentCurRowY = 0;
   CXFA_ContentLayoutItem* pLayoutChild = nullptr;
   if (m_pLayoutItem) {
-    if (m_nCurChildNodeStage != XFA_ItemLayoutProcessorStages::Done &&
+    if (m_nCurChildNodeStage != Stage::kDone &&
         eFlowStrategy != XFA_AttributeValue::Tb) {
       pLayoutChild = ToContentLayoutItem(m_pLayoutItem->m_pFirstChild);
       for (CXFA_LayoutItem* pLayoutNext = pLayoutChild; pLayoutNext;
@@ -1639,20 +1637,19 @@
   }
 
   fContentCurRowY += InsertKeepLayoutItems();
-  if (m_nCurChildNodeStage == XFA_ItemLayoutProcessorStages::None)
+  if (m_nCurChildNodeStage == Stage::kNone)
     GotoNextContainerNodeSimple(true);
 
   fContentCurRowY += InsertPendingItems(GetFormNode());
-  if (m_pCurChildPreprocessor &&
-      m_nCurChildNodeStage == XFA_ItemLayoutProcessorStages::Container) {
+  if (m_pCurChildPreprocessor && m_nCurChildNodeStage == Stage::kContainer) {
     if (ExistContainerKeep(m_pCurChildPreprocessor->GetFormNode(), false)) {
       m_pKeepHeadNode = m_pCurChildNode;
       m_bIsProcessKeep = true;
-      m_nCurChildNodeStage = XFA_ItemLayoutProcessorStages::Keep;
+      m_nCurChildNodeStage = Stage::kKeep;
     }
   }
 
-  while (m_nCurChildNodeStage != XFA_ItemLayoutProcessorStages::Done) {
+  while (m_nCurChildNodeStage != Stage::kDone) {
     float fContentCurRowHeight = 0;
     float fContentCurRowAvailWidth = fContentWidthLimit;
     m_fWidthLimite = fContentCurRowAvailWidth;
@@ -1720,10 +1717,10 @@
       bool bAddedItemInRow = false;
       fContentCurRowY += InsertPendingItems(GetFormNode());
       switch (m_nCurChildNodeStage) {
-        case XFA_ItemLayoutProcessorStages::Keep:
-        case XFA_ItemLayoutProcessorStages::None:
+        case Stage::kKeep:
+        case Stage::kNone:
           break;
-        case XFA_ItemLayoutProcessorStages::BreakBefore: {
+        case Stage::kBreakBefore: {
           for (auto* item : m_arrayKeepItems) {
             m_pLayoutItem->RemoveChild(item);
             fContentCalculatedHeight -= item->m_sSize.height;
@@ -1767,7 +1764,7 @@
           bIsManualBreak = true;
           goto SuspendAndCreateNewRow;
         }
-        case XFA_ItemLayoutProcessorStages::BreakAfter: {
+        case Stage::kBreakAfter: {
           CXFA_Node* pLeaderNode = nullptr;
           CXFA_Node* pTrailerNode = nullptr;
           bool bCreatePage = false;
@@ -1818,12 +1815,12 @@
           if (bCreatePage) {
             bForceEndPage = true;
             bIsManualBreak = true;
-            if (m_nCurChildNodeStage == XFA_ItemLayoutProcessorStages::Done)
+            if (m_nCurChildNodeStage == Stage::kDone)
               bBreakDone = true;
           }
           goto SuspendAndCreateNewRow;
         }
-        case XFA_ItemLayoutProcessorStages::BookendLeader: {
+        case Stage::kBookendLeader: {
           CXFA_Node* pLeaderNode = nullptr;
           if (m_pCurChildPreprocessor) {
             pProcessor.reset(m_pCurChildPreprocessor);
@@ -1851,7 +1848,7 @@
           }
           break;
         }
-        case XFA_ItemLayoutProcessorStages::BookendTrailer: {
+        case Stage::kBookendTrailer: {
           CXFA_Node* pTrailerNode = nullptr;
           if (m_pCurChildPreprocessor) {
             pProcessor.reset(m_pCurChildPreprocessor);
@@ -1878,7 +1875,7 @@
           }
           break;
         }
-        case XFA_ItemLayoutProcessorStages::Container: {
+        case Stage::kContainer: {
           ASSERT(m_pCurChildNode->IsContainerNode());
           if (m_pCurChildNode->GetElementType() == XFA_Element::Variables)
             break;
@@ -1926,7 +1923,7 @@
           }
           break;
         }
-        case XFA_ItemLayoutProcessorStages::Done:
+        case Stage::kDone:
           break;
         default:
           break;
@@ -1952,8 +1949,7 @@
   }
 
   bool bRetValue =
-      m_nCurChildNodeStage == XFA_ItemLayoutProcessorStages::Done &&
-      m_PendingNodes.empty();
+      m_nCurChildNodeStage == Stage::kDone && m_PendingNodes.empty();
   if (bBreakDone)
     bRetValue = false;
 
@@ -2175,18 +2171,18 @@
         case XFA_AttributeValue::Rl_row:
         default:
           DoLayoutPositionedContainer(pContext);
-          m_nCurChildNodeStage = XFA_ItemLayoutProcessorStages::Done;
+          m_nCurChildNodeStage = Stage::kDone;
           return XFA_ItemLayoutProcessorResult::Done;
         case XFA_AttributeValue::Table:
           DoLayoutTableContainer(pLayoutNode);
-          m_nCurChildNodeStage = XFA_ItemLayoutProcessorStages::Done;
+          m_nCurChildNodeStage = Stage::kDone;
           return XFA_ItemLayoutProcessorResult::Done;
       }
     }
     case XFA_Element::Draw:
     case XFA_Element::Field:
       DoLayoutField();
-      m_nCurChildNodeStage = XFA_ItemLayoutProcessorStages::Done;
+      m_nCurChildNodeStage = Stage::kDone;
       return XFA_ItemLayoutProcessorResult::Done;
     case XFA_Element::ContentArea:
       return XFA_ItemLayoutProcessorResult::Done;
@@ -2735,7 +2731,7 @@
   return XFA_ItemLayoutProcessorResult::PageFullBreak;
 }
 
-Optional<XFA_ItemLayoutProcessorStages> CXFA_ItemLayoutProcessor::HandleKeep(
+Optional<CXFA_ItemLayoutProcessor::Stage> CXFA_ItemLayoutProcessor::HandleKeep(
     CXFA_Node* pBreakAfterNode,
     CXFA_Node** pCurActionNode) {
   if (m_bKeepBreakFinish)
@@ -2743,7 +2739,7 @@
   return FindBreakNode(pBreakAfterNode, false, pCurActionNode);
 }
 
-Optional<XFA_ItemLayoutProcessorStages>
+Optional<CXFA_ItemLayoutProcessor::Stage>
 CXFA_ItemLayoutProcessor::HandleBookendLeader(CXFA_Node* pParentContainer,
                                               CXFA_Node** pCurActionNode) {
   for (CXFA_Node* pBookendNode = *pCurActionNode
@@ -2754,7 +2750,7 @@
       case XFA_Element::Bookend:
       case XFA_Element::Break:
         *pCurActionNode = pBookendNode;
-        return XFA_ItemLayoutProcessorStages::BookendLeader;
+        return Stage::kBookendLeader;
       default:
         break;
     }
@@ -2762,7 +2758,7 @@
   return {};
 }
 
-Optional<XFA_ItemLayoutProcessorStages>
+Optional<CXFA_ItemLayoutProcessor::Stage>
 CXFA_ItemLayoutProcessor::HandleBreakAfter(CXFA_Node* pChildContainer,
                                            CXFA_Node** pCurActionNode) {
   if (*pCurActionNode) {
@@ -2774,7 +2770,7 @@
   return HandleKeep(pBreakAfterNode, pCurActionNode);
 }
 
-Optional<XFA_ItemLayoutProcessorStages>
+Optional<CXFA_ItemLayoutProcessor::Stage>
 CXFA_ItemLayoutProcessor::HandleBookendTrailer(CXFA_Node* pParentContainer,
                                                CXFA_Node** pCurActionNode) {
   for (CXFA_Node* pBookendNode = *pCurActionNode
@@ -2785,7 +2781,7 @@
       case XFA_Element::Bookend:
       case XFA_Element::Break:
         *pCurActionNode = pBookendNode;
-        return XFA_ItemLayoutProcessorStages::BookendTrailer;
+        return Stage::kBookendTrailer;
       default:
         break;
     }
diff --git a/xfa/fxfa/layout/cxfa_itemlayoutprocessor.h b/xfa/fxfa/layout/cxfa_itemlayoutprocessor.h
index 019d1b1..53cd71d 100644
--- a/xfa/fxfa/layout/cxfa_itemlayoutprocessor.h
+++ b/xfa/fxfa/layout/cxfa_itemlayoutprocessor.h
@@ -35,19 +35,19 @@
   ManualBreak,
 };
 
-enum class XFA_ItemLayoutProcessorStages {
-  None,
-  BookendLeader,
-  BreakBefore,
-  Keep,
-  Container,
-  BreakAfter,
-  BookendTrailer,
-  Done,
-};
-
 class CXFA_ItemLayoutProcessor {
  public:
+  enum class Stage {
+    kNone,
+    kBookendLeader,
+    kBreakBefore,
+    kKeep,
+    kContainer,
+    kBreakAfter,
+    kBookendTrailer,
+    kDone,
+  };
+
   CXFA_ItemLayoutProcessor(CXFA_Node* pNode, CXFA_LayoutPageMgr* pPageMgr);
   ~CXFA_ItemLayoutProcessor();
 
@@ -121,20 +121,17 @@
   void DoLayoutField();
 
   void GotoNextContainerNodeSimple(bool bUsePageBreak);
-  XFA_ItemLayoutProcessorStages GotoNextContainerNode(
-      XFA_ItemLayoutProcessorStages nCurStage,
-      bool bUsePageBreak,
-      CXFA_Node* pParentContainer,
-      CXFA_Node** pCurActionNode);
+  Stage GotoNextContainerNode(Stage nCurStage,
+                              bool bUsePageBreak,
+                              CXFA_Node* pParentContainer,
+                              CXFA_Node** pCurActionNode);
 
-  Optional<XFA_ItemLayoutProcessorStages> ProcessKeepNodesForCheckNext(
-      CXFA_Node** pCurActionNode,
-      CXFA_Node** pNextContainer,
-      bool* pLastKeepNode);
+  Optional<Stage> ProcessKeepNodesForCheckNext(CXFA_Node** pCurActionNode,
+                                               CXFA_Node** pNextContainer,
+                                               bool* pLastKeepNode);
 
-  Optional<XFA_ItemLayoutProcessorStages> ProcessKeepNodesForBreakBefore(
-      CXFA_Node** pCurActionNode,
-      CXFA_Node* pContainerNode);
+  Optional<Stage> ProcessKeepNodesForBreakBefore(CXFA_Node** pCurActionNode,
+                                                 CXFA_Node* pContainerNode);
 
   CXFA_Node* GetSubformSetParent(CXFA_Node* pSubformSet);
 
@@ -165,18 +162,14 @@
       CXFA_LayoutContext* pLayoutContext,
       bool bNewRow);
 
-  Optional<XFA_ItemLayoutProcessorStages> HandleKeep(
-      CXFA_Node* pBreakAfterNode,
-      CXFA_Node** pCurActionNode);
-  Optional<XFA_ItemLayoutProcessorStages> HandleBookendLeader(
-      CXFA_Node* pParentContainer,
-      CXFA_Node** pCurActionNode);
-  Optional<XFA_ItemLayoutProcessorStages> HandleBreakAfter(
-      CXFA_Node* pChildContainer,
-      CXFA_Node** pCurActionNode);
-  Optional<XFA_ItemLayoutProcessorStages> HandleBookendTrailer(
-      CXFA_Node* pParentContainer,
-      CXFA_Node** pCurActionNode);
+  Optional<Stage> HandleKeep(CXFA_Node* pBreakAfterNode,
+                             CXFA_Node** pCurActionNode);
+  Optional<Stage> HandleBookendLeader(CXFA_Node* pParentContainer,
+                                      CXFA_Node** pCurActionNode);
+  Optional<Stage> HandleBreakAfter(CXFA_Node* pChildContainer,
+                                   CXFA_Node** pCurActionNode);
+  Optional<Stage> HandleBookendTrailer(CXFA_Node* pParentContainer,
+                                       CXFA_Node** pCurActionNode);
   void ProcessKeepNodesEnd();
 
   CXFA_Node* m_pFormNode;
@@ -199,8 +192,7 @@
   CXFA_Node* m_pKeepTailNode = nullptr;
   CXFA_ContentLayoutItem* m_pOldLayoutItem = nullptr;
   CXFA_ItemLayoutProcessor* m_pCurChildPreprocessor = nullptr;
-  XFA_ItemLayoutProcessorStages m_nCurChildNodeStage =
-      XFA_ItemLayoutProcessorStages::None;
+  Stage m_nCurChildNodeStage = Stage::kNone;
   std::map<CXFA_Node*, int32_t> m_PendingNodesCount;
   float m_fWidthLimite = 0;
   bool m_bHasAvailHeight = true;