Index: README.txt
===================================================================
RCS file: /cvs/drupal-contrib/contributions/modules/nodequeue/README.txt,v
retrieving revision 1.1.6.1.2.1
diff -u -r1.1.6.1.2.1 README.txt
--- README.txt	26 Feb 2008 20:00:18 -0000	1.1.6.1.2.1
+++ README.txt	9 Apr 2009 21:39:13 -0000
@@ -81,6 +81,13 @@
     Display a title list of the queue. If backward is true (the default) the
     list will be from back (newest) to front (oldest).
 
+nodequeue_load_nodes($qid, $backward = true, $from = 0, $count = 0)
+    Fetches and loads an array of nodes from the given queue. If
+    backward is true (the default) the list will be from back (newest)
+    to front (oldest). If $count is set to non-zero, it will use a
+    range. For example, passing $from = 2 and $count = 2 will show the
+    3rd and 4th elements of the queue. ($count starts at 0, not 1.)
+
 nodequeue_nodes($qid, $backward = true, $teasers = true, $links = true, 
          $from = 0, $count = 0) 
     Display the nodes of a queue. If backward is true (the default) the
Index: nodequeue.module
===================================================================
RCS file: /cvs/drupal-contrib/contributions/modules/nodequeue/nodequeue.module,v
retrieving revision 1.39.2.28.2.52
diff -u -r1.39.2.28.2.52 nodequeue.module
--- nodequeue.module	2 Feb 2009 17:54:22 -0000	1.39.2.28.2.52
+++ nodequeue.module	9 Apr 2009 21:39:14 -0000
@@ -2181,7 +2181,10 @@
   return node_title_list($result, $title);
 }
 
-function nodequeue_nodes($sqid, $backward = true, $teaser = true, $links = true, $from = 0, $count = 0) {
+/**
+ * Load an array of node objects belonging to a particular nodequeue.
+ */
+function nodequeue_load_nodes($sqid, $backward = true, $from = 0, $count = 0) {
   $orderby = ($backward ? "DESC" : "ASC");
   $sql = db_rewrite_sql("SELECT n.nid FROM {node} n INNER JOIN {nodequeue_nodes} nn ON n.nid = nn.nid WHERE nn.sqid = %d AND n.status = 1 ORDER BY nn.position $orderby");
   if ($count) {
@@ -2191,9 +2194,21 @@
     $result = db_query($sql, $sqid);
   }
 
+  $nodes = array();
   while ($nid = db_fetch_object($result)) {
-    $node = node_load($nid->nid);
-    $output .= node_view($node, $teaser, false, $links);
+    $nodes[] = node_load($nid->nid);
+  }
+  return $nodes;
+}
+
+/**
+ * Get node_view output from a nodequeue
+ */
+function nodequeue_nodes($sqid, $backward = true, $teaser = true, $links = true, $from = 0, $count = 0) {
+  $nodes = nodequeue_load_nodes($sqid, $backward, $from, $count);
+  $output = '';
+  foreach ($nodes as $node) {
+    $output .= node_view($node, $teaser, FALSE, $links);
   }
   return $output;
 }
