add media bulk editor see #4730
[taxeditor.git] / eu.etaxonomy.taxeditor.store / src / main / java / eu / etaxonomy / taxeditor / ui / section / media / MediaMetaElement.java
index 361f149e2fc1841db317afc6c129e365345edbf5..706ceb4bcf76cf61b70674f352e7e86f992acd17 100644 (file)
@@ -3,11 +3,15 @@
  */
 package eu.etaxonomy.taxeditor.ui.section.media;
 
+import org.apache.commons.lang.StringUtils;
 import org.eclipse.jface.action.IAction;
+import org.eclipse.swt.SWT;
 import org.eclipse.swt.events.SelectionAdapter;
 import org.eclipse.swt.events.SelectionEvent;
 import org.eclipse.swt.events.SelectionListener;
 import org.eclipse.swt.widgets.Button;
+import org.eclipse.swt.widgets.Event;
+import org.eclipse.swt.widgets.Listener;
 
 import eu.etaxonomy.cdm.hibernate.HibernateProxyHelper;
 import eu.etaxonomy.cdm.model.agent.AgentBase;
@@ -25,6 +29,7 @@ import eu.etaxonomy.taxeditor.ui.element.LanguageStringWithLabelElement;
 import eu.etaxonomy.taxeditor.ui.element.SelectionArbitrator;
 import eu.etaxonomy.taxeditor.ui.section.AbstractCdmDetailSection;
 import eu.etaxonomy.taxeditor.ui.section.AbstractEntityCollectionElement;
+import eu.etaxonomy.taxeditor.ui.section.AbstractEntityCollectionSection;
 import eu.etaxonomy.taxeditor.ui.selection.EntitySelectionElement;
 
 /**
@@ -48,6 +53,8 @@ public class MediaMetaElement extends AbstractEntityCollectionElement<Media> imp
         if(cdmFormFactory.getSelectionProvider() != null){
             selectionArbitrator = cdmFormFactory.createSelectionArbitrator(this);
         }
+       
+       
     }
 
     /** {@inheritDoc} */
@@ -65,8 +72,10 @@ public class MediaMetaElement extends AbstractEntityCollectionElement<Media> imp
         });
         text_title = formFactory.createLanguageStringWithLabelElement(element, "Title", null, style);
         selection_artist = formFactory.createSelectionElement(AgentBase.class, getConversationHolder(), element, "Artist", null, EntitySelectionElement.ALL, style);
+        addElement(selection_artist);
         text_description = formFactory.createLanguageStringWithLabelElement(element, "Description", null, 100, true, style);
         mediaDetailElement = formFactory.createMediaDetailElement(element);
+        addElement(mediaDetailElement);
     }
 
     /** {@inheritDoc} */
@@ -84,15 +93,18 @@ public class MediaMetaElement extends AbstractEntityCollectionElement<Media> imp
         LanguageString title = element.getTitle(CdmStore.getDefaultLanguage());
 
         if (title == null) {
-            title = LanguageString.NewInstance("", CdmStore.getDefaultLanguage());
+            title = LanguageString.NewInstance(element.getTitleCache(), CdmStore.getDefaultLanguage());
         }
 
         text_title.setLanguageString(title);
+        
     }
 
     @Override
     protected Media selectFromDialog() {
-        return MediaSelectionDialog.select(AbstractUtility.getShell(), null, null);
+       
+       setEntity(MediaSelectionDialog.select(AbstractUtility.getShell(), null, null));
+        return entity;
     }
 
     @Override
@@ -101,7 +113,7 @@ public class MediaMetaElement extends AbstractEntityCollectionElement<Media> imp
     }
 
     /** {@inheritDoc} */
-    @Override
+   @Override
     public void handleEvent(Object eventSource) {
         if (eventSource == selection_artist) {
             getEntity().setArtist(selection_artist.getSelection());