Buenos días Aibert.

En este caso tiene que trabajar con el propio árbol (no hay métodos para hacer dicha selección):

  LayerNamePanel layerNamePanel =
            JUMPWorkbench.getFrameInstance().getContext().getLayerNamePanel();

  if (layerNamePanel != null && layerNamePanel instanceof TreeLayerNamePanel) {
    JTree tree = ((TreeLayerNamePanel)layerNamePanel).getTree();

    // Buscar la rama del árbol que contiene la categoría que desea seleccionar y, usando el modelo de selección del árbol, seleccionarla
    ....
  }


Saludos,


PD: Algunos enlaces de interés:

http://download.oracle.com/javase/tutorial/uiswing/components/tree.html
http://www.coderanch.com/t/543214/GUI/java/Select-node-Jtree
http://www.coderanch.com/t/544262/GUI/java/Help-needed-selecting-multiple-nodes


El 07/07/2011 15:54, Aibert Garriga escribió:

Esto funciona perfectamente. Gracias.

 

Como puedo hacer para seleccionar una categoría del arbol de capas.

 

Ahora tengo que seleccionar la categoría, i darle al plugin i cada vez que se ejecuta el plugin la categoría esta deseleccionada. El plugin mira la seleccionada, la borra i la añade a un nivel de prioridad distinto, ahora solo faltaria volver a seleccionar la categoría a partir del nombre por ejemplo. ¿Como puedo acceder aqui?

 

 

Muchas gracias

 

Aibert Garriga Feixat

Enginyer Tècnic en Topografia (num. col. 5235)

Enginyer en Geodèsia i Cartografia  

 

GARFEI Enginyeria

C/ Prat de la Riba, 1A

25430 JUNEDA

Tel i FAX: 973.15.12.43

mail: [email protected]

web: www.garfei.com

 ______________________________

Este mensaje y sus archivos son confidenciales. No esta permitida su reproducción o distribución sin autorización expresa de Topografia Garfei S.L. Si usted no es el destinatario previsto, cualquier uso, acceso o copia de este mensaje queda desautorizada. Si ha recibido este mensaje por error, por favor bórrelo e infórmenos por esta misma vía.
De acuerdo con la LSSICE y a LOPD, le comunicamos que sus datos personales y dirección de correo electrónico forman parte de un fichero automatizado, cuyo responsable es Topografia Garfei S.L, siendo la finalidad del fichero la gestión de carácter comercial y administrativo, así como el envio de comunicados de carácter comercial sobre nuestros productos. Si desea puede ejercer los derechos de acceso, rectificación, cancelación y oposición de sus datos, enviando un mensaje de correo electrónico a [email protected] indicando en el asunto que desea ejercitar. Gracias por su colaboración.

 


De: [email protected] [mailto:[email protected]] En nombre de Sergio Baños Calvo
Enviado el: miércoles, 06 de julio de 2011 16:16
Para: Lista de Kosmo
Asunto: Re: [Kosmo] Como actualizar el arbol de capas

 

Buenas Aibert.

Prueba con lo siguiente (aunque el propio método moveCategory debería hacerlo por sí mismo, tomamos nota para corregirlo):

LayerManager layerManager = context.getLayerNamePanel().getLayerManager();
Object[] listCategories = context.getLayerNamePanel().getSelectedCategories().toArray();

Object catSel = listCategories[0];

int i = layerManager.indexOf(context.getLayerManager().getCategory(catSel.getName())); // Usa el getName() para recuperar la categoría seleccionada


if (i>0) {
    layerManager.remove(catSel);
    layerManager.addCategory(catSel, i-1);
}


// No es necesario realizar el updateUI posterior
//context.getWorkbenchFrame().getActiveInternalFrame().updateUI();


De hecho, la funcionalidad que arrastra una categoría en el árbol lo hace en estos dos pasos.

Saludos,

El 06/07/2011 10:30, Aibert Garriga escribió:

Buenos dias,

 

Estoy implementando un PlugIn que permite dar una prioridad mayor a la categoría seleccionada.

            LayerManager layerManager = context.getLayerNamePanel().getLayerManager();

           

            Object[] listCategories = context.getLayerNamePanel().getSelectedCategories().toArray();

            Object CatSel = listCategories[0];

            int i =      layerManager.indexOf(context.getLayerManager().getCategory(CatSel.toString()));

            if (i>0)

                  layerManager.moveCategory(i, i-1);

            context.getWorkbenchFrame().getActiveInternalFrame().updateUI();

Funciona correctamente pero no se actualiza el arbol de capas.

 

No se como se controla este elemento. ¿Pueden ayudarme?

 

Saludos.

 

Aibert Garriga Feixat

Enginyer Tècnic en Topografia (num. col. 5235)

Enginyer en Geodèsia i Cartografia  

 

GARFEI Enginyeria

C/ Prat de la Riba, 1A

25430 JUNEDA

Tel i FAX: 973.15.12.43

mail: [email protected]

web: www.garfei.com

 ______________________________

Este mensaje y sus archivos son confidenciales. No esta permitida su reproducción o distribución sin autorización expresa de Topografia Garfei S.L. Si usted no es el destinatario previsto, cualquier uso, acceso o copia de este mensaje queda desautorizada. Si ha recibido este mensaje por error, por favor bórrelo e infórmenos por esta misma vía.
De acuerdo con la LSSICE y a LOPD, le comunicamos que sus datos personales y dirección de correo electrónico forman parte de un fichero automatizado, cuyo responsable es Topografia Garfei S.L, siendo la finalidad del fichero la gestión de carácter comercial y administrativo, así como el envio de comunicados de carácter comercial sobre nuestros productos. Si desea puede ejercer los derechos de acceso, rectificación, cancelación y oposición de sus datos, enviando un mensaje de correo electrónico a [email protected] indicando en el asunto que desea ejercitar. Gracias por su colaboración.

 

 
 
_______________________________________________
Kosmo mailing list
[email protected]
http://lists.saig.es/mailman/listinfo/kosmo

 

--

Sergio Baños Calvo

Jefe de desarrollos
Sistemas Abiertos de Información Geográfica, S.L. (SAIG S.L.)
Tlfno. móvil: 685005960
Tlfno. fijo: (+34) 954788876

E-mail: [email protected]

_______________________________________________ Kosmo mailing list [email protected] http://lists.saig.es/mailman/listinfo/kosmo

--

Sergio Baños Calvo

Jefe de desarrollos
Sistemas Abiertos de Información Geográfica, S.L. (SAIG S.L.)
Tlfno. móvil: 685005960
Tlfno. fijo: (+34) 954788876

E-mail: [email protected]


_______________________________________________
Kosmo mailing list
[email protected]
http://lists.saig.es/mailman/listinfo/kosmo

Responder a