Tuesday 6 April 2010

Propiedades de sistema en Java

Estoy creando una funcionalidad para crear un TrayIcon de manera descriptiva y agregarlo en la nueva versión de Viewa. Para empezar los señores de Sun (Ahora Oracle) no se lo curraron mucho a la hora de darle a la cabeza, pero bueno eso será otra historia.

El caso es que dependiendo del sistema operativo y también del gestor de ventanas (linux entre gnome y kde), el menu contextual que aparezca deberá aparecer por encima o por debajo de la barra de tareas.

He estado mirando por ahi y he visto una tabla con las propiedades más comunes (no se si todas) que puedes sacar del sistema operativo, además de un código para sacar dichas propiedades.

Para sacar el tipo de sistema operativo me valía con esto, pero para saber que tipo de gestor de ventanas se utiliza necesito algo más. Esto solo lo necesitaba para saber si en linux se estaba utilizando Gnome o KDE.

Investigando he descubierto que hay una variable de entorno que se llama DESKTOP_SESSION que te dice el tipo de gestor que se está utilizando. Una vez sabes la variable de sistema que necesitas la puedes recuperar a través de la llamada System.getenv(nombredelavariable) que devuelve un String con el valor de la variable.

No comments:

Post a Comment