Index: buix/src/java/org/codelutin/buix/Buix.java diff -u buix/src/java/org/codelutin/buix/Buix.java:1.45 buix/src/java/org/codelutin/buix/Buix.java:1.46 --- buix/src/java/org/codelutin/buix/Buix.java:1.45 Wed Aug 11 07:58:17 2004 +++ buix/src/java/org/codelutin/buix/Buix.java Wed Aug 11 14:47:17 2004 @@ -23,10 +23,10 @@ * * @author Benjamin Poussin * Copyright Code Lutin -* @version $Revision: 1.45 $ +* @version $Revision: 1.46 $ * -* Mise a jour: $Date: 2004/08/11 07:58:17 $ -* par : $Author: mazelier $ +* Mise a jour: $Date: 2004/08/11 14:47:17 $ +* par : $Author: bpoussin $ */ package org.codelutin.buix; @@ -92,7 +92,9 @@ import java.net.URLClassLoader; import java.net.URL; - +import java.beans.BeanInfo; +import com.l2fprod.common.model.DefaultBeanInfoResolver; +import java.beans.PropertyDescriptor; /** * Classe principale. Elle represente l'application @@ -119,11 +121,16 @@ URLClassLoader classLoader = null; static public void main(String [] args){ - System.out.println(System.getProperties()); - Buix buix = new Buix(args); - buix.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); - buix.setSize(700,500); - buix.show(); + try{ + Buix buix = new Buix(args); + buix.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + if(buix.getSize().height <= 1 || buix.getSize().width <= 1){ + buix.setSize(700,500); + } + buix.show(); + }catch(Throwable eee){ + eee.printStackTrace(); + } } protected ArgumentsParser getArgumentsParser(){ @@ -817,6 +824,32 @@ */ public void selectionChanged(BuixSelectionEvent e){ this.bean = e.getComponent(); + /* BB */ + try{ +// DefaultBeanInfoResolver resolver = new DefaultBeanInfoResolver(); +// BeanInfo beanInfo = resolver.getBeanInfo(bean); + + PropertyDescriptor [] props = null; + if(bean instanceof LayoutManager){ + LayoutInfo layoutInfo = LayoutIntrospector.getLayoutInfo(bean.getClass()); + props = layoutInfo.getPropertyDescriptors(); + }else{ + BeanInfo beanInfo = Introspector.getBeanInfo(bean.getClass()); + props = beanInfo.getPropertyDescriptors(); + } + ArrayList filteredProps = new ArrayList(); + for(int i=0; i * Copyright Code Lutin - * @version $Revision: 1.18 $ + * @version $Revision: 1.19 $ * - * Mise a jour: $Date: 2004/08/11 07:58:17 $ - * par : $Author: mazelier $ + * Mise a jour: $Date: 2004/08/11 14:47:17 $ + * par : $Author: bpoussin $ */ package org.codelutin.buix; @@ -67,30 +67,37 @@ import javax.swing.WindowConstants; +import com.l2fprod.common.propertysheet.PropertySheet; +import com.l2fprod.common.propertysheet.PropertySheetPanel; +import com.l2fprod.common.swing.UserPreferences; + /** * Classe qui represente une partie de l'interface graphique de buix */ public abstract class BuixUI extends JFrame implements BuixUICallback{ // BuixUI - WidgetManager widgetManager = new WidgetManager(); + protected WidgetManager widgetManager = new WidgetManager(); - WidgetShelves widgetShelves = null; - JTree tree = null; - JTable allProperties = null; - JTable selectionProperties = null; - JList eventList = null; - JPanel beanEventPanel = null; - JTextField callbackTextField = null; - JCheckBox callbackArgumentCheckBox = null; - JTextField callbackArgumentTextField = null; - JList activateEventList = null; - JTable layoutProperties = null; - JCheckBoxMenuItem menuSelect = null; + protected WidgetShelves widgetShelves = null; + protected JTree tree = null; + /* BB */ + protected PropertySheetPanel propertiesPanel; + /* BB */ + protected JTable allProperties = null; + protected JTable selectionProperties = null; + protected JList eventList = null; + protected JPanel beanEventPanel = null; + protected JTextField callbackTextField = null; + protected JCheckBox callbackArgumentCheckBox = null; + protected JTextField callbackArgumentTextField = null; + protected JList activateEventList = null; + protected JTable layoutProperties = null; + protected JCheckBoxMenuItem menuSelect = null; // clipBoard - JFrame clipBoard = null; - JPanel panelClipBoard = null; - JTree clipBoardTree = null; + protected JFrame clipBoard = null; + protected JPanel panelClipBoard = null; + protected JTree clipBoardTree = null; protected BuixUI(){ super("Buix"); @@ -105,6 +112,11 @@ public JTree getTree() { return tree; } + /* BB */ + public PropertySheetPanel getPropertiesPanel() { + return propertiesPanel; + } + /* BB */ public JTable getAllProperties() { return allProperties; } @@ -296,6 +308,14 @@ clipBoard.getContentPane().add(panelClipBoard); clipBoard.pack(); + /* BB */ + /* creation de la nouvelle table de toutes les proprietes*/ + propertiesPanel = new PropertySheetPanel(); + propertiesPanel.setDescriptionVisible(true); + propertiesPanel.setSortingProperties(true); + propertiesPanel.setSortingCategories(true); + /* BB */ + /* creation de la table de toutes les proprietes*/ allProperties = new JTable(); allProperties.setName("allProperties"); @@ -321,6 +341,7 @@ /* creation de l'ensemble des onglets de la sous fenetre de droite */ JTabbedPane propPane = new JTabbedPane(); propPane.setName("propPane"); + propPane.add(I18n._("Properties"), propertiesPanel); propPane.add(I18n._("Selected Properties"), new JScrollPane(selectionProperties)); propPane.add(I18n._("All Properties"), @@ -425,6 +446,11 @@ menuSelect = new JCheckBoxMenuItem("Selection"); menuConfig.add(menuSelect); + // Sauvegarde automatique + UserPreferences.track(this); + UserPreferences.track(split1); + UserPreferences.track(split2); + UserPreferences.track(split3); } } // BuixUI