Qt5: expose form calculate order
diff --git a/qt5/src/poppler-document.cc b/qt5/src/poppler-document.cc
index 98959a1..741a1b7 100644
--- a/qt5/src/poppler-document.cc
+++ b/qt5/src/poppler-document.cc
@@ -1,7 +1,7 @@
 /* poppler-document.cc: qt interface to poppler
  * Copyright (C) 2005, Net Integration Technologies, Inc.
  * Copyright (C) 2005, 2008, Brad Hards <bradh@frogmouth.net>
- * Copyright (C) 2005-2010, 2012, 2013, 2015, Albert Astals Cid <aacid@kde.org>
+ * Copyright (C) 2005-2010, 2012, 2013, 2015, 2017, Albert Astals Cid <aacid@kde.org>
  * Copyright (C) 2006-2010, Pino Toscano <pino@kde.org>
  * Copyright (C) 2010, 2011 Hib Eris <hib@hiberis.nl>
  * Copyright (C) 2012 Koji Otani <sho@bbr.jp>
@@ -784,6 +784,22 @@
         return Document::NoForm; // make gcc happy
     }
 
+    QVector<int> Document::formCalculateOrder() const
+    {
+        QVector<int> result;
+
+        Form *form = m_doc->doc->getCatalog()->getForm();
+        const std::vector<Ref> &calculateOrder = form->getCalculateOrder();
+        for (uint i = 0; i < calculateOrder.size(); ++i) {
+            FormWidget *w = form->findWidgetByRef(calculateOrder[i]);
+            if (w) {
+                result << w->getID();
+            }
+        }
+
+        return result;
+    }
+
     QDateTime convertDate( char *dateString )
     {
         int year, mon, day, hour, min, sec, tzHours, tzMins;
diff --git a/qt5/src/poppler-qt5.h b/qt5/src/poppler-qt5.h
index 562507e..45cc6ff 100644
--- a/qt5/src/poppler-qt5.h
+++ b/qt5/src/poppler-qt5.h
@@ -1,7 +1,7 @@
 /* poppler-qt.h: qt interface to poppler
  * Copyright (C) 2005, Net Integration Technologies, Inc.
  * Copyright (C) 2005, 2007, Brad Hards <bradh@frogmouth.net>
- * Copyright (C) 2005-2015, Albert Astals Cid <aacid@kde.org>
+ * Copyright (C) 2005-2015, 2017, Albert Astals Cid <aacid@kde.org>
  * Copyright (C) 2005, Stefan Kebekus <stefan.kebekus@math.uni-koeln.de>
  * Copyright (C) 2006-2011, Pino Toscano <pino@kde.org>
  * Copyright (C) 2009 Shawn Rutledge <shawn.t.rutledge@gmail.com>
@@ -1523,6 +1523,13 @@
 	FormType formType() const;
 
 	/**
+	   Returns the calculate order for forms (using their id)
+
+	   \since 0.53
+	*/
+	QVector<int> formCalculateOrder() const;
+
+	/**
 	   Destructor.
 	*/
 	~Document();