Como utilizar o GtkComboBoxEntry facilmente

Explicação

A classe GtkComboBoxEntry, nos ajuda quando precisamos dar opções de preenchimento ao ComboBox. Com esta classe, é possível simular as funcionalidades de um ComboBox e de um Entry ao mesmo tempo, e conta com um visual melhor que o ComboBox.. É possível criar o GtkComboBoxEntry diretamente do método new_text(), facilitando muito na criação. Para recuperar os dados, facilmente pegamos o filho do objeto, que é um Entry, e pegamos o texto.

Solução

Criar o objeto diretamente do método new_text() da classe GtkComboBoxEntry.
Manipular somente o GtkEntry filho

Exemplo

widgets['cmbTeste'] = &GtkComboBoxEntry::new_text();
			$this->widgets['cmbTeste']->set_size_request(284, 25);
			$fixed->put($this->widgets['cmbTeste'], 8, 8);
			
			// Cria o Botão inserir
			$this->widgets['btnInserir'] = new GtkButton("Inserir");
			$this->widgets['btnInserir']->set_size_request(80, 28);
			$fixed->put($this->widgets['btnInserir'], 8, 40);
			$this->widgets['btnInserir']->connect_simple("clicked", array($this, "btnInserir_onClick"));
			
			// Cria o Botão Buscar
			$this->widgets['btnBuscar'] = new GtkButton("Buscar");
			$this->widgets['btnBuscar']->set_size_request(80, 28);
			$fixed->put($this->widgets['btnBuscar'], 88, 40);
			$this->widgets['btnBuscar']->connect_simple("clicked", array($this, "btnBuscar_onClick"));
			
			// Cria o Label
			$this->widgets['lblTeste'] = new GtkLabel("");
			$this->widgets['lblTeste']->set_size_request(80, 28);
			$fixed->put($this->widgets['lblTeste'], 174, 40);
			
			// Cria a janela
			$this->widgets['frmTeste'] = new GtkWindow();
			$this->widgets['frmTeste']->set_size_request(300, 75);
			$this->widgets['frmTeste']->set_resizable(FALSE);
			$this->widgets['frmTeste']->set_title("Teste");
			$this->widgets['frmTeste']->add($fixed);
			$this->widgets['frmTeste']->set_position(GTK::WIN_POS_CENTER);
			$this->widgets['frmTeste']->show_all();
			
			// Conecta o destroy
			$this->widgets['frmTeste']->connect_simple(
				"destroy", 
				array("Gtk", "main_quit")
			);
		}
		
		// Método do evento onClick do btnInsert
		public function btnInserir_onClick()
		{
			static $total;
			$this->widgets['cmbTeste']->append_text("Opcao " . ++$total);
		}
		
		// Método do evento onClick do btnBuscar
		public function btnBuscar_onClick()
		{
			$value = $this->widgets['cmbTeste']->get_child()->get_text();
			$this->widgets['lblTeste']->set_label($value);
		}
	}

	// Inicia a aplicação
	$teste = new Teste();
	gtk::main();

Referências

http://gtk.php.net/manual/en/gtk.gtkcomboboxentry.constructor.new_text.php