Como impedir movimentação das visões no Eclipse?

1 resposta
fsfnit

Bom pessoal, como faço para impedir movimentação das visões no Eclipse ?

Tipo arrastar, resize e essas coisas ?
Tem como criar um plugin que restrinja isso ?

1 Resposta

fsfnit

Consegui achar um método que é acionado ao mover uma visão.
Tentei (no Sysout "1") parar a ação usando o event.doit =false, mas não adiantou.

Queria agora, ao detectar que o evento drag fosse acionado, nada fosse feito.

Alguém saberia uma forma ?

PlatformUI.getWorkbench().getDisplay().addFilter(SWT.DragDetect, new Listener()
		{
		  public void handleEvent(Event event)
		  {
		 

		   if (  ( event.widget instanceof CTabFolder ) ) {
			System.out.println( "1" );
			event.doit = false;
    	 	        return;
		    }

		    CTabFolder draggedFolder = (CTabFolder)event.widget;

		    int operations = DND.DROP_COPY | DND.DROP_DEFAULT;
		    final DragSource dragSource = new DragSource(draggedFolder, operations);

		    Transfer[] transferTypes = new Transfer[] {EditorInputTransfer.getInstance()};
		    dragSource.setTransfer(transferTypes);

		    dragSource.addDragListener(new DragSourceListener()
		    {

		      public void dragStart(DragSourceEvent dsEvent) {
		    	  System.out.println("2");
		    	  dsEvent.doit = false;
		    	  return;
		      }
		      public void dragSetData(DragSourceEvent dsEvent)
		      {
		    	  System.out.println("3");
		       
		      }
		      public void dragFinished(DragSourceEvent dsEvent)
		      {
                        System.out.println("4");
		        dragSource.dispose();
		      }
		    });
		  }
		});
Criado 5 de fevereiro de 2010
Ultima resposta 8 de fev. de 2010
Respostas 1
Participantes 1