Foros del Web » Programando para Internet » PHP »

Ayuda con php-gtk2 y Glade

Estas en el tema de Ayuda con php-gtk2 y Glade en el foro de PHP en Foros del Web. Hola gente un saludo, tengo un problema al utilizar estas dos aplicaciones. Tengo instalado el php-gtk2, lo instale con Gnope-1.5.1, el php-gtk2 funciona perfectamente debido ...
  #1 (permalink)  
Antiguo 15/07/2009, 09:21
 
Fecha de Ingreso: enero-2008
Mensajes: 40
Antigüedad: 16 años, 10 meses
Puntos: 0
Ayuda con php-gtk2 y Glade

Hola gente un saludo, tengo un problema al utilizar estas dos aplicaciones.
Tengo instalado el php-gtk2, lo instale con Gnope-1.5.1, el php-gtk2 funciona perfectamente debido a que ya realice algunas aplicaciones de practica.

Tambien tengo el Glade3-3.6.1 instalado.

Lo que e echo es crear una GUI en Glade, guardo el archivo *.glade (hasta aqui todo bien), el problema surge cuando intento utilizar la clase GladeXML
Código PHP:
$glade = new GladeXML(dirname__FILE__)."/hellowg.glade"); 
Y me marca los siguientes errores:
Código:
(apli2_glade.php:2472): libglade-WARNING **: Expected <glade-interface>. Got <GTK-Interface>.

(apli2_glade.php:2472): libglade-WARNING **: did not finish in PARSER_FINISH state 
PHP Fatal error: Encaught exception 'PhpGtkConstructException' whith message 'could not construct GladeXML object' in c:\php-gtk2\test\apli2_glade.php:14
Stack trace:
#0 c:\php-gtk2\test\apli2_glade.php(14): GladeXML->_construct('c:\php-gtk2\tes...')
#1 {main}
thrown in c:\php-gtk2\test\apli2_glade.php on line 14
Yo creo que el XML que esta generando el Glade no es compatible con la clase GladeXML, ya que buscando me encontré un XML de un archivo Glade y con ese si se crea la ventana y un boton, que es lo que trae el XML. La estructura de ambos archivos son diferentes.

XML encontrado en Internet
Código:
<?xml version="1.0" standalone="no"?><!--*- mode: xml -*-->
<!DOCTYPE glade-interface SYSTEM "http://glade.gnome.org/glade-2.0.dtd">
<glade-interface>
    <requires lib="gnome"/>
    <widget class="GtkWindow" id="main">
        <property name="visible">True</property>
        <property name="title" translatable="yes">Hello</property>
        <property name="type">GTK_WINDOW_TOPLEVEL</property>
        <property name="window_position">GTK_WIN_POS_CENTER</property>
        <property name="modal">False</property>
        <property name="resizable">False</property>
        <property name="destroy_with_parent">False</property>
        <child>
            <widget class="GtkVBox" id="vbox1">
                <property name="border_width">15</property>
                <property name="visible">True</property>
                <property name="homogeneous">True</property>
                <property name="spacing">0</property>
                <child>
                    <widget class="GtkLabel" id="label1">
                        <property name="visible">True</property>
                        <property name="label" translatable="yes">Hello libGlade!</property>
                        <property name="use_underline">False</property>
                        <property name="use_markup">False</property>
                        <property name="justify">GTK_JUSTIFY_LEFT</property>
                        <property name="wrap">False</property>
                        <property name="selectable">False</property>
                        <property name="xalign">0.5</property>
                        <property name="yalign">0.5</property>
                        <property name="xpad">0</property>
                        <property name="ypad">0</property>
                    </widget>
                    <packing>
                        <property name="padding">0</property>
                        <property name="expand">False</property>
                        <property name="fill">False</property>
                    </packing>
                </child>
                <child>
                    <widget class="GtkButton" id="button_close">
                        <property name="visible">True</property>
                        <property name="can_default">True</property>
                        <property name="has_default">True</property>
                        <property name="can_focus">True</property>
                        <property name="label">gtk-close</property>
                        <property name="use_stock">True</property>
                        <property name="relief">GTK_RELIEF_NORMAL</property>
                    </widget>
                    <packing>
                        <property name="padding">0</property>
                        <property name="expand">False</property>
                        <property name="fill">False</property>
                    </packing>
                </child>
            </widget>
        </child>
    </widget>
</glade-interface>
XML generado con el Glade
Código:
<?xml version="1.0"?>           
<GTK-Interface>

<project>
  <name>example-gladexml.constructor</name>
  <program_name>example-gladexml.constructor</program_name>
  <directory></directory>
  <source_directory>src</source_directory>
  <pixmaps_directory>pixmaps</pixmaps_directory>
  <language>C</language>
  <gnome_support>False</gnome_support>
  <gettext_support>False</gettext_support>
</project>

<widget>
  <class>GtkWindow</class>
  <name>dlgHellow</name>
  <title>Hello World!</title>
  <type>GTK_WINDOW_TOPLEVEL</type>
  <position>GTK_WIN_POS_NONE</position>
  <modal>False</modal>
  <allow_shrink>False</allow_shrink>
  <allow_grow>True</allow_grow>
  <auto_shrink>False</auto_shrink>

  <widget>
    <class>GtkVBox</class>
    <name>vbox1</name>
    <homogeneous>False</homogeneous>
    <spacing>0</spacing>

    <widget>
      <class>GtkLabel</class>
      <name>lblHello</name>
      <label>Hello world!
This is the example program
for the GladeXML class</label>
      <justify>GTK_JUSTIFY_CENTER</justify>
      <wrap>False</wrap>
      <xalign>0.5</xalign>
      <yalign>0.5</yalign>
      <xpad>0</xpad>
      <ypad>0</ypad>
      <child>
	<padding>0</padding>
	<expand>True</expand>
	<fill>True</fill>
      </child>
    </widget>

    <widget>
      <class>GtkButton</class>
      <name>btnClose</name>
      <can_focus>True</can_focus>
      <signal>
	<name>clicked</name>
	<handler>test</handler>
	<last_modification_time>Sun, 29 Aug 2004 10:33:10 GMT</last_modification_time>
      </signal>
      <label>Close this window</label>
      <relief>GTK_RELIEF_NORMAL</relief>
      <child>
	<padding>0</padding>
	<expand>False</expand>
	<fill>False</fill>
      </child>
    </widget>
  </widget>
</widget>

</GTK-Interface>
No se como hacerlos compatibles o alomejor es otro el problema, Ojala me puedan ayudar.

un saludo.
  #2 (permalink)  
Antiguo 15/07/2009, 09:51
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 18 años, 5 meses
Puntos: 2135
Respuesta: Ayuda con php-gtk2 y Glade

Pues de hecho el XML es muy diferente, según recuerdo la clase Glade solo es compatible con Glade2, prueba bajar ese editor y verifica.

Saludos.
  #3 (permalink)  
Antiguo 15/07/2009, 19:06
Avatar de jam1138
/** @package Moderador */
 
Fecha de Ingreso: julio-2004
Ubicación: sèveR led onieR lE
Mensajes: 9.368
Antigüedad: 20 años, 3 meses
Puntos: 102
Respuesta: Ayuda con php-gtk2 y Glade

Pues según he visto, sí se puede utilizar Glade3 con PHP-GTK ... podría ser un "problema" con la instalación, Gnope menciona explícitamente utilizar Glade2 ...
__________________
٩(͡๏̯͡๏)۶
» Cómo hacer preguntas de manera inteligente «

"100 años después, la revolución no es con armas, es intelectual y digital"
  #4 (permalink)  
Antiguo 16/07/2009, 07:22
 
Fecha de Ingreso: enero-2008
Mensajes: 40
Antigüedad: 16 años, 10 meses
Puntos: 0
Respuesta: Ayuda con php-gtk2 y Glade

ok, muchas gracias por contestar probare con Glade 2.
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 21:13.