gampachel   28-02-2025, 11:49
#1
Buenas,

Estoy tratando de compilar para después ejecutar un programa ya antiguo que era pata catalogar una base de datos de películas y series. El programa en cuestión se llama Openmedia Manager. Hace mucho tiempo que el autor lo abandonó.

El caso es que al tratar de compilarlo me sale el mensaje: "Algunos controles no se han cargado porque faltaban componentes". El control problemático se llama "EdtEditor".  Adjunto una captura de pantalla de la jerarquía dentro del formulario problemático.
Y otra captura con la definición de "EdtEditor As Editor".

Y el mensaje del compilador , en otra captura.

A ver si alguien me puede iluminar con pistas para solucionar este tema.

un saludo
Archivos adjuntos
Última modificación: 28-02-2025, 11:53 por gampachel.
Shordi   28-02-2025, 12:52
#2
Comprueba primero si la aplicación contiene un control propio llamado Editor porque, que yo recuerde, Gambas no lo tiene.
En gambas existe el TextEditor del componente gb.Form.Editor que es un editor con resaltado de sintaxis de código y el TextEdit de los componentes gb.qt4.ext (o gbqt5.ext según tu S.O.) que es un editor de RichText.

Saludos

No podemos regresar
gampachel   28-02-2025, 13:35
#3
(28-02-2025, 12:52)Shordi escribió: Comprueba primero si la aplicación contiene un control propio llamado Editor porque, que yo recuerde, Gambas no lo tiene.
En gambas existe el TextEditor del componente gb.Form.Editor que es un editor con resaltado de sintaxis de código y el TextEdit de los componentes gb.qt4.ext (o gbqt5.ext según tu S.O.) que es un editor de RichText.

Saludos

El programa tiene las siguientes dependencias:

gambas3-runtime (>= 2.90.0)
gambas3-gb-image (>= 2.90.0)
gambas3-gb-qt4 (>= 2.90.0)
gambas3-gb-form (>= 2.98.0)
gambas3-gb-db (>= 2.90.0)
gambas3-gb-db-form (>= 2.98.0)
gambas3-gb-db-sqlite3 (>= 2.90.0)
gambas3-gb-desktop (>= 2.98.0)
gambas3-gb-settings (>= 2.98.0)
gambas3-gb-qt4-ext (>= 2.90.0)
gambas3-gb-qt4-webkit (>= 2.90.0)
gambas3-gb-web (>= 2.98.0)
gambas3-script (>= 2.90.0)
gambas3-gb-form-stock (>= 2.90.0)

Gracias por la respuesta
Al entrar en el IDE no se queja de que le falte ningún componente. Al principio sí porque está escrito para qt4 y yo tengo qt5. Pero eso ya lo resolví. ¿Cómo puedo comprobar si la aplicación usa un control propio?
Shordi   28-02-2025, 19:16
#4
Cita:¿Cómo puedo comprobar si la aplicación usa un control propio?


Eso es fácil. Si hay algún control propio llamado Editor, dentro de los fuentes del programa debe haber un Editor.class.

Si no lo hay, con las dependencias que muestras aquí yo probaría a cambiar eso de "as Editor" por por "as TextEdit". TextEdit está dentro de gb.qt4.ext y ese componente sí lo tienes enlazado.

Por otra parte no sé qué es lo que se intenta cargar en el editor, según lo que envías parecen ser scripts (no sé de qué clase son los .gbs) pero si es código de gambas o de Shell, prueba con "as TextEditor" y enlaza el módulo gb.form.Editor también.
Si ninguno de los dos funciona... pues no tengo ni pajolera idea, oiga.

Saludos
Última modificación: 28-02-2025, 19:17 por Shordi.

No podemos regresar
gampachel   10-03-2025, 12:43
#5
Buenos días
Gracias a Shordi he hecho progresos. He cambiado As Editor, por  TextEditor y eso ya funciona casi al completo. Editor, por lo visto, es un control que ya está obsoleto.

Para afinar, sólo necesito arreglar un par de cosas más:

1) El SW usa la instrucción:
                                    edtEditor.Styles[Highlight.Comment].Background = Color.Default
          La tengo que adaptar al nuevo control (tipo TextEditor) pero no sé cómo modificar la instrucción para que compile.

2) Para que muestre una ficha tipo Webview, usa el método .url:

            frmPrincipal.ficha.url = User.Home & ".omediamanager/moviecards/"Indian"/index2.html
Pero esto no muestra nada.

Esto otro, sí lo hace:
                      frmPrincipal.ficha.url = "file:///home/pachel/.omediamanager/moviecards/Indian/index2.html"



Sin poner el file://  , tampoco muestra nada.

Estos son los componentes que cargo:

Component=gb.image
Component=gb.gui.qt
Component=gb.form
Component=gb.compress
Component=gb.db
Component=gb.db.form
Component=gb.db.sqlite3
Component=gb.desktop
Component=gb.settings
Component=gb.gui.qt.ext
Component=gb.gui.qt.webkit
Component=gb.util.web
Component=gb.web
Alguna idea??

un saludo
Última modificación: 10-03-2025, 12:48 por gampachel.
Shordi   10-03-2025, 14:08
#6
Cita:1) El SW usa la instrucción:
edtEditor.Styles[Highlight.Comment].Background = Color.Default
La tengo que adaptar al nuevo control (tipo TextEditor) pero no sé cómo modificar la instrucción para que compile.

2) Para que muestre una ficha tipo Webview, usa el método .url:

frmPrincipal.ficha.url = User.Home & ".omediamanager/moviecards/"Indian"/index2.html
Pero esto no muestra nada.
Para lo primero en lugar de color.default prueba con Color.Background.

Para lo segundo en lugar de & utiliza &/ . Ese conector se asegura de poner la barra en la cadena. Si con ello apareciesen dos barras seguidas las deja en una sola. La sentencia sería así:

frmPrincipal.ficha.url = User.Home &/  ".omediamanager/moviecards/Indian/index2.html"

(Las comillas eran impares en tu código. He eliminado las comillas de Indian y las he cerrado al final)

Espero que con esto se solucione.

No podemos regresar
gampachel   10-03-2025, 14:43
#7
Nada, sólo funciona con frmPrincipal.ficha.url = "file:///home/pachel/.omediamanager/moviecards/Indian/index2.html"
Es decir, incluyendo file:// y con /home/pachel , no vale User.Home.

Y para lo de edtEditor.Styles[Highlight.Comment].Background = Color.Default, el compilador no se queja de Color.default sino de Highlight como identificador desconocido.
Shordi   10-03-2025, 19:55
#8
Bueno... user.home devuelve el path del home del usuario, es decir: "/home/pachel". Si tu programa necesita el file:// antes entonces
"file://" &/ user.home &/ ".omedia...etc" debería funcionar.
Respecto al Highlight, El fallo se debe a que hay cosas que han cambiado. Highlight como clase ha sido sustituída por la clase Theme. etc
Solución exacta no te doy porque ignoro el contexto donde esa línea falla, pero aquí te he hecho una pequeña aplicación que te muestra el nombre de los estilos del tema "Gambas" y el color asignado a cada uno. Con eso deberías ser capaz de extraer el color asignado a "Comment" sin problemas.[Imagen: onRVUhyl.png]

Saludos
Archivos adjuntos
.zip
Highlighter-0.0.1.zip (Tamaño: 12.42 KB Descargas: 2)

No podemos regresar
gampachel   11-03-2025, 10:54
#9
Buenas

Ya he conseguido que cargue bien el  fichero html:

                        frmPrincipal.ficha.Url = "file:///" & User.home & "/.omediamanager/moviecards/Indian/index2.html"

En vez de
                        frmPrincipal.ficha.Url = "file:///" & User.home &/ ".omediamanager/moviecards/Indian/index2.html"

El detalle estaba en la segunda &y el / ,  & "/.omediamanager en vez de &/ ".omediamanager/


Sobre el tema del Highlight, voy consiguiendo cosas pero se me antoja más complicado para el nivel de Gambas y de programación que tengo.

Muchísimas gracias a Shordi por su gran ayuda que ha conseguido que vuelva a tener el programa funcional. Tengo un montón de películas catalogadas a través de él y me habría supuesto un incordio no poder usarlo.

un saludo
Última modificación: 11-03-2025, 11:01 por gampachel.
  
Usuarios navegando en este tema: 1 invitado(s)
Powered By MyBB, © 2002-2025 MyBB Group.
Made with by Curves UI.