Author: lemovice
Date: Fri Dec  6 22:51:40 2013
New Revision: 4703

Log:
Add Individual image in individiual editor

Modified:
   
trunk/AncestrisExtensions/editors.genealogyeditor/src/ancestris/modules/editors/genealogyeditor/panels/IndividualEditorPanel.form
   
trunk/AncestrisExtensions/editors.genealogyeditor/src/ancestris/modules/editors/genealogyeditor/panels/IndividualEditorPanel.java

Modified: 
trunk/AncestrisExtensions/editors.genealogyeditor/src/ancestris/modules/editors/genealogyeditor/panels/IndividualEditorPanel.form
==============================================================================
--- 
trunk/AncestrisExtensions/editors.genealogyeditor/src/ancestris/modules/editors/genealogyeditor/panels/IndividualEditorPanel.form
   (original)
+++ 
trunk/AncestrisExtensions/editors.genealogyeditor/src/ancestris/modules/editors/genealogyeditor/panels/IndividualEditorPanel.form
   Fri Dec  6 22:51:40 2013
@@ -19,8 +19,8 @@
           <Group type="102" attributes="0">
               <EmptySpace max="-2" attributes="0"/>
               <Group type="103" groupAlignment="0" attributes="0">
-                  <Component id="generalPanel" max="32767" attributes="0"/>
-                  <Component id="individualInformationTabbedPane" 
alignment="0" pref="0" max="32767" attributes="0"/>
+                  <Component id="individualInformationTabbedPane" max="32767" 
attributes="0"/>
+                  <Component id="generalPanel" alignment="0" max="32767" 
attributes="0"/>
               </Group>
               <EmptySpace max="-2" attributes="0"/>
           </Group>
@@ -33,7 +33,7 @@
               <Component id="generalPanel" min="-2" max="-2" attributes="0"/>
               <EmptySpace max="-2" attributes="0"/>
               <Component id="individualInformationTabbedPane" max="32767" 
attributes="0"/>
-              <EmptySpace min="-2" max="-2" attributes="0"/>
+              <EmptySpace max="-2" attributes="0"/>
           </Group>
       </Group>
     </DimensionLayout>
@@ -45,35 +45,42 @@
         <DimensionLayout dim="0">
           <Group type="103" groupAlignment="0" attributes="0">
               <Group type="102" attributes="0">
+                  <Component id="jXImagePanel1" min="-2" max="-2" 
attributes="0"/>
                   <EmptySpace max="-2" attributes="0"/>
                   <Group type="103" groupAlignment="0" attributes="0">
-                      <Component id="simpleNameEditorPanel" alignment="0" 
max="32767" attributes="0"/>
-                      <Group type="102" alignment="0" attributes="0">
+                      <Group type="102" attributes="0">
                           <Component id="sexBeanPanel" min="-2" max="-2" 
attributes="0"/>
                           <EmptySpace max="32767" attributes="0"/>
                           <Component id="individualIDLabel" min="-2" max="-2" 
attributes="0"/>
                           <EmptySpace max="-2" attributes="0"/>
                           <Component id="individualIDTextField" min="-2" 
max="-2" attributes="0"/>
                       </Group>
+                      <Component id="simpleNameEditorPanel" max="32767" 
attributes="0"/>
                   </Group>
-                  <EmptySpace min="-2" pref="8" max="-2" attributes="0"/>
               </Group>
           </Group>
         </DimensionLayout>
         <DimensionLayout dim="1">
           <Group type="103" groupAlignment="0" attributes="0">
-              <Group type="102" alignment="0" attributes="0">
-                  <EmptySpace min="-2" pref="12" max="-2" attributes="0"/>
+              <Group type="102" attributes="0">
                   <Group type="103" groupAlignment="0" attributes="0">
-                      <Group type="103" groupAlignment="3" attributes="0">
-                          <Component id="individualIDLabel" alignment="3" 
min="-2" max="-2" attributes="0"/>
-                          <Component id="individualIDTextField" alignment="3" 
min="-2" max="-2" attributes="0"/>
+                      <Group type="102" attributes="0">
+                          <Group type="103" groupAlignment="0" attributes="0">
+                              <Group type="103" alignment="0" 
groupAlignment="3" attributes="0">
+                                  <Component id="individualIDTextField" 
alignment="3" min="-2" max="-2" attributes="0"/>
+                                  <Component id="individualIDLabel" 
alignment="3" min="-2" max="-2" attributes="0"/>
+                              </Group>
+                              <Component id="sexBeanPanel" alignment="0" 
min="-2" max="-2" attributes="0"/>
+                          </Group>
+                          <EmptySpace max="32767" attributes="0"/>
+                          <Component id="simpleNameEditorPanel" min="-2" 
max="-2" attributes="0"/>
+                      </Group>
+                      <Group type="102" attributes="0">
+                          <EmptySpace min="0" pref="0" max="32767" 
attributes="0"/>
+                          <Component id="jXImagePanel1" min="-2" max="-2" 
attributes="0"/>
                       </Group>
-                      <Component id="sexBeanPanel" min="-2" max="-2" 
attributes="0"/>
                   </Group>
                   <EmptySpace max="-2" attributes="0"/>
-                  <Component id="simpleNameEditorPanel" min="-2" max="-2" 
attributes="0"/>
-                  <EmptySpace max="32767" attributes="0"/>
               </Group>
           </Group>
         </DimensionLayout>
@@ -101,6 +108,26 @@
         </Component>
         <Component 
class="ancestris.modules.editors.genealogyeditor.beans.SexBean" 
name="sexBeanPanel">
         </Component>
+        <Container class="org.jdesktop.swingx.JXImagePanel" 
name="jXImagePanel1">
+          <Properties>
+            <Property name="background" type="java.awt.Color" 
editor="org.netbeans.beaninfo.editors.ColorEditor">
+              <Color blue="ff" green="ff" id="white" palette="1" red="ff" 
type="palette"/>
+            </Property>
+          </Properties>
+
+          <Layout>
+            <DimensionLayout dim="0">
+              <Group type="103" groupAlignment="0" attributes="0">
+                  <EmptySpace min="0" pref="135" max="32767" attributes="0"/>
+              </Group>
+            </DimensionLayout>
+            <DimensionLayout dim="1">
+              <Group type="103" groupAlignment="0" attributes="0">
+                  <EmptySpace min="0" pref="159" max="32767" attributes="0"/>
+              </Group>
+            </DimensionLayout>
+          </Layout>
+        </Container>
       </SubComponents>
     </Container>
     <Container class="javax.swing.JTabbedPane" 
name="individualInformationTabbedPane">
@@ -127,13 +154,13 @@
           <Layout>
             <DimensionLayout dim="0">
               <Group type="103" groupAlignment="0" attributes="0">
-                  <Component id="eventsListPanel" alignment="0" pref="675" 
max="32767" attributes="0"/>
+                  <Component id="eventsListPanel" alignment="0" pref="815" 
max="32767" attributes="0"/>
               </Group>
             </DimensionLayout>
             <DimensionLayout dim="1">
               <Group type="103" groupAlignment="0" attributes="0">
                   <Group type="102" alignment="0" attributes="0">
-                      <Component id="eventsListPanel" max="32767" 
attributes="0"/>
+                      <Component id="eventsListPanel" pref="211" max="32767" 
attributes="0"/>
                       <EmptySpace min="-2" pref="0" max="-2" attributes="0"/>
                   </Group>
               </Group>
@@ -144,15 +171,15 @@
             </Component>
           </SubComponents>
         </Container>
-        <Container class="javax.swing.JPanel" name="namesPanel">
+        <Container class="javax.swing.JPanel" name="sourcesPanel">
           <Constraints>
             <Constraint 
layoutClass="org.netbeans.modules.form.compat2.layouts.support.JTabbedPaneSupportLayout"
 
value="org.netbeans.modules.form.compat2.layouts.support.JTabbedPaneSupportLayout$JTabbedPaneConstraintsDescription">
-              <JTabbedPaneConstraints tabName="Names">
+              <JTabbedPaneConstraints tabName="Sources">
                 <Property name="tabTitle" type="java.lang.String" 
editor="org.netbeans.modules.i18n.form.FormI18nStringEditor">
-                  <ResourceString 
bundle="ancestris/modules/editors/genealogyeditor/panels/Bundle.properties" 
key="IndividualEditorPanel.namesPanel.TabConstraints.tabTitle" 
replaceFormat="java.text.MessageFormat.format(java.util.ResourceBundle.getBundle(&quot;{bundleNameSlashes}&quot;).getString(&quot;{key}&quot;),
 {arguments})"/>
+                  <ResourceString 
bundle="ancestris/modules/editors/genealogyeditor/panels/Bundle.properties" 
key="IndividualEditorPanel.sourcesPanel.TabConstraints.tabTitle" 
replaceFormat="java.text.MessageFormat.format(java.util.ResourceBundle.getBundle(&quot;{bundleNameSlashes}&quot;).getString(&quot;{key}&quot;),
 {arguments})"/>
                 </Property>
                 <Property name="tabIcon" type="javax.swing.Icon" 
editor="org.netbeans.modules.form.editors2.IconEditor">
-                  <Image iconType="3" 
name="/ancestris/modules/editors/genealogyeditor/resources/Name.png"/>
+                  <Image iconType="3" 
name="/ancestris/modules/editors/genealogyeditor/resources/Source.png"/>
                 </Property>
               </JTabbedPaneConstraints>
             </Constraint>
@@ -161,32 +188,32 @@
           <Layout>
             <DimensionLayout dim="0">
               <Group type="103" groupAlignment="0" attributes="0">
-                  <Component id="namesListPanel" alignment="0" pref="675" 
max="32767" attributes="0"/>
+                  <Component id="sourcesListPanel" alignment="0" pref="815" 
max="32767" attributes="0"/>
               </Group>
             </DimensionLayout>
             <DimensionLayout dim="1">
               <Group type="103" groupAlignment="0" attributes="0">
                   <Group type="102" alignment="1" attributes="0">
                       <EmptySpace min="-2" pref="0" max="-2" attributes="0"/>
-                      <Component id="namesListPanel" max="32767" 
attributes="0"/>
+                      <Component id="sourcesListPanel" pref="211" max="32767" 
attributes="0"/>
                   </Group>
               </Group>
             </DimensionLayout>
           </Layout>
           <SubComponents>
-            <Component 
class="ancestris.modules.editors.genealogyeditor.panels.NamesListPanel" 
name="namesListPanel">
+            <Component 
class="ancestris.modules.editors.genealogyeditor.panels.SourcesListPanel" 
name="sourcesListPanel">
             </Component>
           </SubComponents>
         </Container>
-        <Container class="javax.swing.JPanel" name="sourcesPanel">
+        <Container class="javax.swing.JPanel" name="namesPanel">
           <Constraints>
             <Constraint 
layoutClass="org.netbeans.modules.form.compat2.layouts.support.JTabbedPaneSupportLayout"
 
value="org.netbeans.modules.form.compat2.layouts.support.JTabbedPaneSupportLayout$JTabbedPaneConstraintsDescription">
-              <JTabbedPaneConstraints tabName="Sources">
+              <JTabbedPaneConstraints tabName="Names">
                 <Property name="tabTitle" type="java.lang.String" 
editor="org.netbeans.modules.i18n.form.FormI18nStringEditor">
-                  <ResourceString 
bundle="ancestris/modules/editors/genealogyeditor/panels/Bundle.properties" 
key="IndividualEditorPanel.sourcesPanel.TabConstraints.tabTitle" 
replaceFormat="java.text.MessageFormat.format(java.util.ResourceBundle.getBundle(&quot;{bundleNameSlashes}&quot;).getString(&quot;{key}&quot;),
 {arguments})"/>
+                  <ResourceString 
bundle="ancestris/modules/editors/genealogyeditor/panels/Bundle.properties" 
key="IndividualEditorPanel.namesPanel.TabConstraints.tabTitle" 
replaceFormat="java.text.MessageFormat.format(java.util.ResourceBundle.getBundle(&quot;{bundleNameSlashes}&quot;).getString(&quot;{key}&quot;),
 {arguments})"/>
                 </Property>
                 <Property name="tabIcon" type="javax.swing.Icon" 
editor="org.netbeans.modules.form.editors2.IconEditor">
-                  <Image iconType="3" 
name="/ancestris/modules/editors/genealogyeditor/resources/Source.png"/>
+                  <Image iconType="3" 
name="/ancestris/modules/editors/genealogyeditor/resources/Name.png"/>
                 </Property>
               </JTabbedPaneConstraints>
             </Constraint>
@@ -195,20 +222,20 @@
           <Layout>
             <DimensionLayout dim="0">
               <Group type="103" groupAlignment="0" attributes="0">
-                  <Component id="sourcesListPanel" alignment="0" pref="675" 
max="32767" attributes="0"/>
+                  <Component id="namesListPanel" alignment="0" pref="815" 
max="32767" attributes="0"/>
               </Group>
             </DimensionLayout>
             <DimensionLayout dim="1">
               <Group type="103" groupAlignment="0" attributes="0">
                   <Group type="102" alignment="1" attributes="0">
                       <EmptySpace min="-2" pref="0" max="-2" attributes="0"/>
-                      <Component id="sourcesListPanel" max="32767" 
attributes="0"/>
+                      <Component id="namesListPanel" pref="211" max="32767" 
attributes="0"/>
                   </Group>
               </Group>
             </DimensionLayout>
           </Layout>
           <SubComponents>
-            <Component 
class="ancestris.modules.editors.genealogyeditor.panels.SourcesListPanel" 
name="sourcesListPanel">
+            <Component 
class="ancestris.modules.editors.genealogyeditor.panels.NamesListPanel" 
name="namesListPanel">
             </Component>
           </SubComponents>
         </Container>
@@ -229,14 +256,14 @@
           <Layout>
             <DimensionLayout dim="0">
               <Group type="103" groupAlignment="0" attributes="0">
-                  <Component id="notesListPanel" alignment="0" pref="675" 
max="32767" attributes="0"/>
+                  <Component id="notesListPanel" alignment="0" pref="815" 
max="32767" attributes="0"/>
               </Group>
             </DimensionLayout>
             <DimensionLayout dim="1">
               <Group type="103" groupAlignment="0" attributes="0">
                   <Group type="102" alignment="1" attributes="0">
                       <EmptySpace min="-2" pref="0" max="-2" attributes="0"/>
-                      <Component id="notesListPanel" max="32767" 
attributes="0"/>
+                      <Component id="notesListPanel" pref="211" max="32767" 
attributes="0"/>
                   </Group>
               </Group>
             </DimensionLayout>
@@ -263,14 +290,14 @@
           <Layout>
             <DimensionLayout dim="0">
               <Group type="103" groupAlignment="0" attributes="0">
-                  <Component id="associationsListPanel" alignment="0" 
pref="675" max="32767" attributes="0"/>
+                  <Component id="associationsListPanel" alignment="0" 
pref="815" max="32767" attributes="0"/>
               </Group>
             </DimensionLayout>
             <DimensionLayout dim="1">
               <Group type="103" groupAlignment="0" attributes="0">
                   <Group type="102" alignment="1" attributes="0">
                       <EmptySpace min="-2" pref="0" max="-2" attributes="0"/>
-                      <Component id="associationsListPanel" max="32767" 
attributes="0"/>
+                      <Component id="associationsListPanel" pref="211" 
max="32767" attributes="0"/>
                   </Group>
               </Group>
             </DimensionLayout>
@@ -295,14 +322,14 @@
           <Layout>
             <DimensionLayout dim="0">
               <Group type="103" groupAlignment="0" attributes="0">
-                  <Component id="multimediaObjectsListPanel" alignment="0" 
pref="675" max="32767" attributes="0"/>
+                  <Component id="multimediaObjectsListPanel" alignment="0" 
pref="815" max="32767" attributes="0"/>
               </Group>
             </DimensionLayout>
             <DimensionLayout dim="1">
               <Group type="103" groupAlignment="0" attributes="0">
                   <Group type="102" alignment="1" attributes="0">
                       <EmptySpace min="-2" pref="0" max="-2" attributes="0"/>
-                      <Component id="multimediaObjectsListPanel" max="32767" 
attributes="0"/>
+                      <Component id="multimediaObjectsListPanel" pref="211" 
max="32767" attributes="0"/>
                   </Group>
               </Group>
             </DimensionLayout>

Modified: 
trunk/AncestrisExtensions/editors.genealogyeditor/src/ancestris/modules/editors/genealogyeditor/panels/IndividualEditorPanel.java
==============================================================================
--- 
trunk/AncestrisExtensions/editors.genealogyeditor/src/ancestris/modules/editors/genealogyeditor/panels/IndividualEditorPanel.java
   (original)
+++ 
trunk/AncestrisExtensions/editors.genealogyeditor/src/ancestris/modules/editors/genealogyeditor/panels/IndividualEditorPanel.java
   Fri Dec  6 22:51:40 2013
@@ -1,8 +1,23 @@
 package ancestris.modules.editors.genealogyeditor.panels;
 
 import genj.gedcom.*;
+import genj.io.InputSource;
+import genj.io.InputSource.FileInput;
+import java.awt.Graphics2D;
+import java.awt.Image;
+import java.awt.RenderingHints;
+import java.awt.geom.AffineTransform;
+import java.awt.image.BufferedImage;
+import java.io.File;
+import java.io.IOException;
+import java.net.MalformedURLException;
+import java.net.URL;
 import java.util.ArrayList;
 import java.util.List;
+import javax.imageio.ImageIO;
+import javax.swing.ImageIcon;
+import org.jdesktop.swingx.JXImagePanel;
+import org.openide.util.Exceptions;
 
 /**
  *
@@ -33,13 +48,14 @@
         individualIDTextField = new javax.swing.JTextField();
         simpleNameEditorPanel = new 
ancestris.modules.editors.genealogyeditor.panels.NameSimpleEditorPanel();
         sexBeanPanel = new 
ancestris.modules.editors.genealogyeditor.beans.SexBean();
+        jXImagePanel1 = new org.jdesktop.swingx.JXImagePanel();
         individualInformationTabbedPane = new javax.swing.JTabbedPane();
         eventsPanel = new javax.swing.JPanel();
         eventsListPanel = new 
ancestris.modules.editors.genealogyeditor.panels.EventsListPanel();
-        namesPanel = new javax.swing.JPanel();
-        namesListPanel = new 
ancestris.modules.editors.genealogyeditor.panels.NamesListPanel();
         sourcesPanel = new javax.swing.JPanel();
         sourcesListPanel = new 
ancestris.modules.editors.genealogyeditor.panels.SourcesListPanel();
+        namesPanel = new javax.swing.JPanel();
+        namesListPanel = new 
ancestris.modules.editors.genealogyeditor.panels.NamesListPanel();
         notesPanel = new javax.swing.JPanel();
         notesListPanel = new 
ancestris.modules.editors.genealogyeditor.panels.NotesListPanel();
         referencesPanel = new javax.swing.JPanel();
@@ -53,34 +69,51 @@
         
individualIDTextField.setText(java.text.MessageFormat.format(java.util.ResourceBundle.getBundle("ancestris/modules/editors/genealogyeditor/panels/Bundle").getString("IndividualEditorPanel.individualIDTextField.text"),
 new Object[] {})); // NOI18N
         
individualIDTextField.setToolTipText(java.text.MessageFormat.format(java.util.ResourceBundle.getBundle("ancestris/modules/editors/genealogyeditor/panels/Bundle").getString("IndividualEditorPanel.individualIDTextField.toolTipText"),
 new Object[] {})); // NOI18N
 
+        jXImagePanel1.setBackground(java.awt.Color.white);
+
+        javax.swing.GroupLayout jXImagePanel1Layout = new 
javax.swing.GroupLayout(jXImagePanel1);
+        jXImagePanel1.setLayout(jXImagePanel1Layout);
+        jXImagePanel1Layout.setHorizontalGroup(
+            
jXImagePanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
+            .addGap(0, 135, Short.MAX_VALUE)
+        );
+        jXImagePanel1Layout.setVerticalGroup(
+            
jXImagePanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
+            .addGap(0, 159, Short.MAX_VALUE)
+        );
+
         javax.swing.GroupLayout generalPanelLayout = new 
javax.swing.GroupLayout(generalPanel);
         generalPanel.setLayout(generalPanelLayout);
         generalPanelLayout.setHorizontalGroup(
             
generalPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
             .addGroup(generalPanelLayout.createSequentialGroup()
-                .addContainerGap()
+                .addComponent(jXImagePanel1, 
javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, 
javax.swing.GroupLayout.PREFERRED_SIZE)
+                
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                 
.addGroup(generalPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
-                    .addComponent(simpleNameEditorPanel, 
javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, 
Short.MAX_VALUE)
                     .addGroup(generalPanelLayout.createSequentialGroup()
                         .addComponent(sexBeanPanel, 
javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, 
javax.swing.GroupLayout.PREFERRED_SIZE)
                         
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, 
javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                         .addComponent(individualIDLabel)
                         
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
-                        .addComponent(individualIDTextField, 
javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, 
javax.swing.GroupLayout.PREFERRED_SIZE)))
-                .addGap(8, 8, 8))
+                        .addComponent(individualIDTextField, 
javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, 
javax.swing.GroupLayout.PREFERRED_SIZE))
+                    .addComponent(simpleNameEditorPanel, 
javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, 
Short.MAX_VALUE)))
         );
         generalPanelLayout.setVerticalGroup(
             
generalPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
             .addGroup(generalPanelLayout.createSequentialGroup()
-                .addGap(12, 12, 12)
                 
.addGroup(generalPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
-                    
.addGroup(generalPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
-                        .addComponent(individualIDLabel)
-                        .addComponent(individualIDTextField, 
javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, 
javax.swing.GroupLayout.PREFERRED_SIZE))
-                    .addComponent(sexBeanPanel, 
javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, 
javax.swing.GroupLayout.PREFERRED_SIZE))
-                
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
-                .addComponent(simpleNameEditorPanel, 
javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, 
javax.swing.GroupLayout.PREFERRED_SIZE)
-                .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, 
Short.MAX_VALUE))
+                    .addGroup(generalPanelLayout.createSequentialGroup()
+                        
.addGroup(generalPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
+                            
.addGroup(generalPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
+                                .addComponent(individualIDTextField, 
javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, 
javax.swing.GroupLayout.PREFERRED_SIZE)
+                                .addComponent(individualIDLabel))
+                            .addComponent(sexBeanPanel, 
javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, 
javax.swing.GroupLayout.PREFERRED_SIZE))
+                        
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, 
javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
+                        .addComponent(simpleNameEditorPanel, 
javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, 
javax.swing.GroupLayout.PREFERRED_SIZE))
+                    .addGroup(generalPanelLayout.createSequentialGroup()
+                        .addGap(0, 0, Short.MAX_VALUE)
+                        .addComponent(jXImagePanel1, 
javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, 
javax.swing.GroupLayout.PREFERRED_SIZE)))
+                .addContainerGap())
         );
 
         
individualInformationTabbedPane.setTabLayoutPolicy(javax.swing.JTabbedPane.SCROLL_TAB_LAYOUT);
@@ -89,58 +122,58 @@
         eventsPanel.setLayout(eventsPanelLayout);
         eventsPanelLayout.setHorizontalGroup(
             
eventsPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
-            .addComponent(eventsListPanel, 
javax.swing.GroupLayout.DEFAULT_SIZE, 675, Short.MAX_VALUE)
+            .addComponent(eventsListPanel, 
javax.swing.GroupLayout.DEFAULT_SIZE, 815, Short.MAX_VALUE)
         );
         eventsPanelLayout.setVerticalGroup(
             
eventsPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
             .addGroup(eventsPanelLayout.createSequentialGroup()
-                .addComponent(eventsListPanel, 
javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, 
Short.MAX_VALUE)
+                .addComponent(eventsListPanel, 
javax.swing.GroupLayout.DEFAULT_SIZE, 211, Short.MAX_VALUE)
                 .addGap(0, 0, 0))
         );
 
         
individualInformationTabbedPane.addTab(java.text.MessageFormat.format(java.util.ResourceBundle.getBundle("ancestris/modules/editors/genealogyeditor/panels/Bundle").getString("IndividualEditorPanel.eventsPanel.TabConstraints.tabTitle"),
 new Object[] {}), new 
javax.swing.ImageIcon(getClass().getResource("/ancestris/modules/editors/genealogyeditor/resources/Event.png")),
 eventsPanel); // NOI18N
 
-        javax.swing.GroupLayout namesPanelLayout = new 
javax.swing.GroupLayout(namesPanel);
-        namesPanel.setLayout(namesPanelLayout);
-        namesPanelLayout.setHorizontalGroup(
-            
namesPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
-            .addComponent(namesListPanel, 
javax.swing.GroupLayout.DEFAULT_SIZE, 675, Short.MAX_VALUE)
-        );
-        namesPanelLayout.setVerticalGroup(
-            
namesPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
-            .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, 
namesPanelLayout.createSequentialGroup()
-                .addGap(0, 0, 0)
-                .addComponent(namesListPanel, 
javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, 
Short.MAX_VALUE))
-        );
-
-        
individualInformationTabbedPane.addTab(java.text.MessageFormat.format(java.util.ResourceBundle.getBundle("ancestris/modules/editors/genealogyeditor/panels/Bundle").getString("IndividualEditorPanel.namesPanel.TabConstraints.tabTitle"),
 new Object[] {}), new 
javax.swing.ImageIcon(getClass().getResource("/ancestris/modules/editors/genealogyeditor/resources/Name.png")),
 namesPanel); // NOI18N
-
         javax.swing.GroupLayout sourcesPanelLayout = new 
javax.swing.GroupLayout(sourcesPanel);
         sourcesPanel.setLayout(sourcesPanelLayout);
         sourcesPanelLayout.setHorizontalGroup(
             
sourcesPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
-            .addComponent(sourcesListPanel, 
javax.swing.GroupLayout.DEFAULT_SIZE, 675, Short.MAX_VALUE)
+            .addComponent(sourcesListPanel, 
javax.swing.GroupLayout.DEFAULT_SIZE, 815, Short.MAX_VALUE)
         );
         sourcesPanelLayout.setVerticalGroup(
             
sourcesPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
             .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, 
sourcesPanelLayout.createSequentialGroup()
                 .addGap(0, 0, 0)
-                .addComponent(sourcesListPanel, 
javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, 
Short.MAX_VALUE))
+                .addComponent(sourcesListPanel, 
javax.swing.GroupLayout.DEFAULT_SIZE, 211, Short.MAX_VALUE))
         );
 
         
individualInformationTabbedPane.addTab(java.text.MessageFormat.format(java.util.ResourceBundle.getBundle("ancestris/modules/editors/genealogyeditor/panels/Bundle").getString("IndividualEditorPanel.sourcesPanel.TabConstraints.tabTitle"),
 new Object[] {}), new 
javax.swing.ImageIcon(getClass().getResource("/ancestris/modules/editors/genealogyeditor/resources/Source.png")),
 sourcesPanel); // NOI18N
 
+        javax.swing.GroupLayout namesPanelLayout = new 
javax.swing.GroupLayout(namesPanel);
+        namesPanel.setLayout(namesPanelLayout);
+        namesPanelLayout.setHorizontalGroup(
+            
namesPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
+            .addComponent(namesListPanel, 
javax.swing.GroupLayout.DEFAULT_SIZE, 815, Short.MAX_VALUE)
+        );
+        namesPanelLayout.setVerticalGroup(
+            
namesPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
+            .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, 
namesPanelLayout.createSequentialGroup()
+                .addGap(0, 0, 0)
+                .addComponent(namesListPanel, 
javax.swing.GroupLayout.DEFAULT_SIZE, 211, Short.MAX_VALUE))
+        );
+
+        
individualInformationTabbedPane.addTab(java.text.MessageFormat.format(java.util.ResourceBundle.getBundle("ancestris/modules/editors/genealogyeditor/panels/Bundle").getString("IndividualEditorPanel.namesPanel.TabConstraints.tabTitle"),
 new Object[] {}), new 
javax.swing.ImageIcon(getClass().getResource("/ancestris/modules/editors/genealogyeditor/resources/Name.png")),
 namesPanel); // NOI18N
+
         javax.swing.GroupLayout notesPanelLayout = new 
javax.swing.GroupLayout(notesPanel);
         notesPanel.setLayout(notesPanelLayout);
         notesPanelLayout.setHorizontalGroup(
             
notesPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
-            .addComponent(notesListPanel, 
javax.swing.GroupLayout.DEFAULT_SIZE, 675, Short.MAX_VALUE)
+            .addComponent(notesListPanel, 
javax.swing.GroupLayout.DEFAULT_SIZE, 815, Short.MAX_VALUE)
         );
         notesPanelLayout.setVerticalGroup(
             
notesPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
             .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, 
notesPanelLayout.createSequentialGroup()
                 .addGap(0, 0, 0)
-                .addComponent(notesListPanel, 
javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, 
Short.MAX_VALUE))
+                .addComponent(notesListPanel, 
javax.swing.GroupLayout.DEFAULT_SIZE, 211, Short.MAX_VALUE))
         );
 
         
individualInformationTabbedPane.addTab(java.text.MessageFormat.format(java.util.ResourceBundle.getBundle("ancestris/modules/editors/genealogyeditor/panels/Bundle").getString("IndividualEditorPanel.notesPanel.TabConstraints.tabTitle"),
 new Object[] {}), new 
javax.swing.ImageIcon(getClass().getResource("/ancestris/modules/editors/genealogyeditor/resources/Note.png")),
 notesPanel); // NOI18N
@@ -149,13 +182,13 @@
         referencesPanel.setLayout(referencesPanelLayout);
         referencesPanelLayout.setHorizontalGroup(
             
referencesPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
-            .addComponent(associationsListPanel, 
javax.swing.GroupLayout.DEFAULT_SIZE, 675, Short.MAX_VALUE)
+            .addComponent(associationsListPanel, 
javax.swing.GroupLayout.DEFAULT_SIZE, 815, Short.MAX_VALUE)
         );
         referencesPanelLayout.setVerticalGroup(
             
referencesPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
             .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, 
referencesPanelLayout.createSequentialGroup()
                 .addGap(0, 0, 0)
-                .addComponent(associationsListPanel, 
javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, 
Short.MAX_VALUE))
+                .addComponent(associationsListPanel, 
javax.swing.GroupLayout.DEFAULT_SIZE, 211, Short.MAX_VALUE))
         );
 
         
individualInformationTabbedPane.addTab(java.text.MessageFormat.format(java.util.ResourceBundle.getBundle("ancestris/modules/editors/genealogyeditor/panels/Bundle").getString("IndividualEditorPanel.referencesPanel.TabConstraints.tabTitle"),
 new Object[] {}), new 
javax.swing.ImageIcon(getClass().getResource("/ancestris/modules/editors/genealogyeditor/resources/Association.png")),
 referencesPanel); // NOI18N
@@ -164,13 +197,13 @@
         galleryPanel.setLayout(galleryPanelLayout);
         galleryPanelLayout.setHorizontalGroup(
             
galleryPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
-            .addComponent(multimediaObjectsListPanel, 
javax.swing.GroupLayout.DEFAULT_SIZE, 675, Short.MAX_VALUE)
+            .addComponent(multimediaObjectsListPanel, 
javax.swing.GroupLayout.DEFAULT_SIZE, 815, Short.MAX_VALUE)
         );
         galleryPanelLayout.setVerticalGroup(
             
galleryPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
             .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, 
galleryPanelLayout.createSequentialGroup()
                 .addGap(0, 0, 0)
-                .addComponent(multimediaObjectsListPanel, 
javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, 
Short.MAX_VALUE))
+                .addComponent(multimediaObjectsListPanel, 
javax.swing.GroupLayout.DEFAULT_SIZE, 211, Short.MAX_VALUE))
         );
 
         individualInformationTabbedPane.addTab("Gallery", new 
javax.swing.ImageIcon(getClass().getResource("/ancestris/modules/editors/genealogyeditor/resources/Media.png")),
 galleryPanel); // NOI18N
@@ -182,8 +215,8 @@
             .addGroup(layout.createSequentialGroup()
                 .addContainerGap()
                 
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
-                    .addComponent(generalPanel, 
javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, 
Short.MAX_VALUE)
-                    .addComponent(individualInformationTabbedPane, 
javax.swing.GroupLayout.PREFERRED_SIZE, 0, Short.MAX_VALUE))
+                    .addComponent(individualInformationTabbedPane)
+                    .addComponent(generalPanel, 
javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, 
Short.MAX_VALUE))
                 .addContainerGap())
         );
         layout.setVerticalGroup(
@@ -205,6 +238,7 @@
     private javax.swing.JLabel individualIDLabel;
     private javax.swing.JTextField individualIDTextField;
     private javax.swing.JTabbedPane individualInformationTabbedPane;
+    private org.jdesktop.swingx.JXImagePanel jXImagePanel1;
     private 
ancestris.modules.editors.genealogyeditor.panels.MultimediaObjectsListPanel 
multimediaObjectsListPanel;
     private ancestris.modules.editors.genealogyeditor.panels.NamesListPanel 
namesListPanel;
     private javax.swing.JPanel namesPanel;
@@ -271,6 +305,34 @@
             mediasList.add((Media) mediaRef.getTargetEntity());
         }
         multimediaObjectsListPanel.set(individual, mediasList);
+
+        Property multimediaObject = individual.getProperty("OBJE");
+        if (multimediaObject != null) {
+            Property file = multimediaObject.getProperty("FILE", true);
+            URL url;
+            BufferedImage img = null;
+            if (file instanceof PropertyFile) {
+                try {
+                    url = ((PropertyFile) file).getFile().toURI().toURL();
+                    img = ImageIO.read(url);
+                    int w = img.getWidth();
+                    int h = img.getHeight();
+                    BufferedImage dimg = new BufferedImage(123, 147, 
img.getType());
+                    Graphics2D g = dimg.createGraphics();
+                    g.setRenderingHint(RenderingHints.KEY_INTERPOLATION,
+                            RenderingHints.VALUE_INTERPOLATION_BILINEAR);
+                    g.drawImage(img, 0, 0, 123, 147, 0, 0, w, h, null);
+                    g.dispose();
+                    
jXImagePanel1.setStyle(JXImagePanel.Style.SCALED_KEEP_ASPECT_RATIO);
+                    jXImagePanel1.setImage(dimg);
+                } catch (MalformedURLException ex) {
+                    Exceptions.printStackTrace(ex);
+                } catch (IOException ex) {
+                    Exceptions.printStackTrace(ex);
+                }
+
+            }
+        }
     }
 
     public void commit() {

---------------------------------------------------------------------
Site Web Ancestris : http://www.ancestris.org

<*> Pour vous desinscrire de cette liste, envoyez un mail a :
              [email protected]
<*> Pour obtenir de l'aide sur les commandes de la liste :
              [email protected]

Pour obtenir tous les messages lies a ce fil de discussion, cliquez sur le 
lien ci-dessous, cela ouvrira votre logiciel de messagerie. Il vous suffira 
d'envoyer le message :
              [email protected]

Reply via email to