public function getConfigAsObject($code)
 {
     $xml = $this->getConfigAsXml($code);
     $object = new Varien_Object();
     if ($xml === null) {
         return $object;
     }
     // Save all nodes to object data
     $object->setCode($code);
     $object->setData($xml->asCanonicalArray());
     // Set module for translations etc..
     $module = $object->getData('@/module');
     $object->setModule($module ? $module : 'customgrid');
     // Set type
     $type = $object->getData('@/type');
     $object->setType($type);
     // Translate name, description and help
     $helper = Mage::helper($object->getModule());
     if ($object->hasName()) {
         $object->setName($helper->__((string) $object->getName()));
     }
     if ($object->hasDescription()) {
         $object->setDescription($helper->__((string) $object->getDescription()));
     }
     if ($object->hasHelp()) {
         $object->setHelp($helper->__((string) $object->getHelp()));
     }
     if ($this->_acceptParameters) {
         // Correct element parameters and convert its data to objects if needed
         $params = $object->getData('parameters');
         $newParams = array();
         if (is_array($params)) {
             $sortOrder = 0;
             foreach ($params as $key => $data) {
                 if (is_array($data)) {
                     $data['key'] = $key;
                     $data['sort_order'] = isset($data['sort_order']) ? (int) $data['sort_order'] : $sortOrder;
                     // Prepare values (for dropdowns) specified directly in configuration
                     $values = array();
                     if (isset($data['values']) && is_array($data['values'])) {
                         foreach ($data['values'] as $value) {
                             if (isset($value['label']) && isset($value['value'])) {
                                 $values[] = $value;
                             }
                         }
                     }
                     $data['values'] = $values;
                     // Prepare helper block object
                     if (isset($data['helper_block'])) {
                         $helper = new Varien_Object();
                         if (isset($data['helper_block']['data']) && is_array($data['helper_block']['data'])) {
                             $helper->addData($data['helper_block']['data']);
                         }
                         if (isset($data['helper_block']['type'])) {
                             $helper->setType($data['helper_block']['type']);
                         }
                         $data['helper_block'] = $helper;
                     }
                     $newParams[$key] = new Varien_Object($data);
                     $sortOrder++;
                 }
             }
         }
         uasort($newParams, array($this, '_sortParameters'));
         $object->setData('parameters', $newParams);
     }
     return $object;
 }