/** * Create and setup QListBox lstQueryNode * @param string $strControlId optional ControlId to use * @param QQCondition $objConditions override the default condition of QQ::All() to the query, itself * @param QQClause[] $objOptionalClauses additional optional QQClause object or array of QQClause objects for the query * @return QListBox */ public function lstQueryNode_Create($strControlId = null, QQCondition $objCondition = null, $objOptionalClauses = null) { $this->lstQueryNode = new QListBox($this->objParentObject, $strControlId); $this->lstQueryNode->Name = QApplication::Translate('Query Node'); $this->lstQueryNode->Required = true; if (!$this->blnEditMode) { $this->lstQueryNode->AddItem(QApplication::Translate('- Select One -'), null); } // Setup and perform the Query if (is_null($objCondition)) { $objCondition = QQ::All(); } $objQueryNodeCursor = QueryNode::QueryCursor($objCondition, $objOptionalClauses); // Iterate through the Cursor while ($objQueryNode = QueryNode::InstantiateCursor($objQueryNodeCursor)) { $objListItem = new QListItem($objQueryNode->__toString(), $objQueryNode->Id); if ($this->objQueryCondition->QueryNode && $this->objQueryCondition->QueryNode->Id == $objQueryNode->Id) { $objListItem->Selected = true; } $this->lstQueryNode->AddItem($objListItem); } // Return the QListBox return $this->lstQueryNode; }