You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@openoffice.apache.org by ar...@apache.org on 2012/01/27 02:29:58 UTC
svn commit: r1236486 [16/43] - in
/incubator/ooo/devtools/netbeansintegration: ./ build/
build/public-package-jars/ javahelp/ javahelp/org/ javahelp/org/openoffice/
javahelp/org/openoffice/extensions/
javahelp/org/openoffice/extensions/docs/ javahelp/o...
Added: incubator/ooo/devtools/netbeansintegration/src/org/openoffice/extensions/projecttemplates/actions/panel/PropsPanel.form
URL: http://svn.apache.org/viewvc/incubator/ooo/devtools/netbeansintegration/src/org/openoffice/extensions/projecttemplates/actions/panel/PropsPanel.form?rev=1236486&view=auto
==============================================================================
--- incubator/ooo/devtools/netbeansintegration/src/org/openoffice/extensions/projecttemplates/actions/panel/PropsPanel.form (added)
+++ incubator/ooo/devtools/netbeansintegration/src/org/openoffice/extensions/projecttemplates/actions/panel/PropsPanel.form Fri Jan 27 01:29:33 2012
@@ -0,0 +1,420 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+
+<Form version="1.5" maxVersion="1.6" type="org.netbeans.modules.form.forminfo.JPanelFormInfo">
+ <AuxValues>
+ <AuxValue name="FormSettings_autoResourcing" type="java.lang.Integer" value="1"/>
+ <AuxValue name="FormSettings_autoSetComponentName" type="java.lang.Boolean" value="false"/>
+ <AuxValue name="FormSettings_generateFQN" type="java.lang.Boolean" value="true"/>
+ <AuxValue name="FormSettings_generateMnemonicsCode" type="java.lang.Boolean" value="false"/>
+ <AuxValue name="FormSettings_i18nAutoMode" type="java.lang.Boolean" value="true"/>
+ <AuxValue name="FormSettings_layoutCodeTarget" type="java.lang.Integer" value="2"/>
+ <AuxValue name="FormSettings_listenerGenerationStyle" type="java.lang.Integer" value="0"/>
+ <AuxValue name="FormSettings_variablesLocal" type="java.lang.Boolean" value="false"/>
+ <AuxValue name="FormSettings_variablesModifier" type="java.lang.Integer" value="2"/>
+ </AuxValues>
+
+ <Layout>
+ <DimensionLayout dim="0">
+ <Group type="103" groupAlignment="0" attributes="0">
+ <Component id="jSeparator1" alignment="0" pref="558" max="32767" attributes="0"/>
+ <Group type="102" alignment="0" attributes="0">
+ <Group type="103" groupAlignment="0" attributes="0">
+ <Component id="jLabelIcon1" alignment="0" max="32767" attributes="1"/>
+ <Component id="jLabelIcon" alignment="0" pref="120" max="32767" attributes="1"/>
+ <Component id="jLabelDescription" alignment="0" pref="120" max="32767" attributes="1"/>
+ <Component id="jLabelLicense" alignment="0" pref="120" max="32767" attributes="1"/>
+ <Component id="jLabel1" alignment="0" pref="120" max="32767" attributes="1"/>
+ <Component id="jLabelPublisherLink" alignment="0" pref="120" max="32767" attributes="1"/>
+ <Component id="jLabelPublisherName" alignment="0" pref="120" max="32767" attributes="1"/>
+ <Component id="jLabelCurrentLocale" alignment="0" pref="120" max="32767" attributes="1"/>
+ <Component id="jLabelDisplayName" pref="120" max="32767" attributes="1"/>
+ </Group>
+ <EmptySpace max="-2" attributes="0"/>
+ <Group type="103" groupAlignment="1" attributes="0">
+ <Group type="102" alignment="0" attributes="0">
+ <Component id="jRadioButtonUser" min="-2" max="-2" attributes="0"/>
+ <EmptySpace max="-2" attributes="0"/>
+ </Group>
+ <Group type="102" alignment="1" attributes="0">
+ <Component id="jComboBoxCurrentLocale" min="-2" pref="110" max="-2" attributes="0"/>
+ <EmptySpace pref="90" max="32767" attributes="0"/>
+ <Component id="jLabelDefaultLocale" min="-2" pref="104" max="-2" attributes="0"/>
+ <EmptySpace max="-2" attributes="0"/>
+ <Component id="jComboBoxDefaultLocale" min="-2" pref="110" max="-2" attributes="0"/>
+ </Group>
+ <Group type="102" alignment="1" attributes="0">
+ <Group type="103" groupAlignment="1" attributes="0">
+ <Component id="jPanel1" pref="312" max="32767" attributes="0"/>
+ <Component id="jRadioButtonAdmin" alignment="1" min="-2" pref="146" max="-2" attributes="0"/>
+ <Component id="jPanel2" alignment="0" pref="312" max="32767" attributes="0"/>
+ <Component id="jPanel4" alignment="0" pref="312" max="32767" attributes="0"/>
+ <Component id="jPanel3" alignment="0" pref="312" max="32767" attributes="0"/>
+ <Component id="jPanelDisplayName" alignment="1" pref="312" max="32767" attributes="0"/>
+ <Component id="jPanelPublisherName" alignment="1" pref="312" max="32767" attributes="0"/>
+ <Component id="jPanelPublisherLink" alignment="1" pref="312" max="32767" attributes="1"/>
+ </Group>
+ <EmptySpace min="-2" pref="18" max="-2" attributes="0"/>
+ <Group type="103" groupAlignment="0" attributes="0">
+ <Component id="jButtonBrowseLicense" alignment="1" min="-2" max="-2" attributes="0"/>
+ <Component id="jButtonBrowseDescription" alignment="1" min="-2" max="-2" attributes="0"/>
+ <Component id="jButtonBrowseHiDefIcon" alignment="1" min="-2" max="-2" attributes="0"/>
+ <Component id="jButtonBrowseIcon" alignment="1" min="-2" max="-2" attributes="0"/>
+ </Group>
+ </Group>
+ </Group>
+ </Group>
+ <Component id="jErrorLabel" alignment="0" pref="558" max="32767" attributes="0"/>
+ </Group>
+ </DimensionLayout>
+ <DimensionLayout dim="1">
+ <Group type="103" groupAlignment="0" attributes="0">
+ <Group type="102" attributes="0">
+ <Group type="103" groupAlignment="3" attributes="0">
+ <Component id="jComboBoxDefaultLocale" alignment="3" min="-2" max="-2" attributes="0"/>
+ <Component id="jComboBoxCurrentLocale" alignment="3" min="-2" max="-2" attributes="0"/>
+ <Component id="jLabelCurrentLocale" alignment="3" min="-2" max="-2" attributes="0"/>
+ <Component id="jLabelDefaultLocale" alignment="3" min="-2" max="-2" attributes="0"/>
+ </Group>
+ <EmptySpace min="-2" pref="14" max="-2" attributes="0"/>
+ <Component id="jSeparator1" min="-2" max="-2" attributes="0"/>
+ <EmptySpace max="-2" attributes="0"/>
+ <Group type="103" groupAlignment="1" attributes="0">
+ <Component id="jPanelDisplayName" min="-2" pref="23" max="-2" attributes="0"/>
+ <Component id="jLabelDisplayName" min="-2" max="-2" attributes="0"/>
+ </Group>
+ <EmptySpace max="-2" attributes="0"/>
+ <Group type="103" groupAlignment="0" attributes="0">
+ <Group type="103" groupAlignment="3" attributes="0">
+ <Component id="jButtonBrowseDescription" alignment="3" min="-2" max="-2" attributes="0"/>
+ <Component id="jLabelDescription" alignment="3" min="-2" max="-2" attributes="1"/>
+ </Group>
+ <Component id="jPanel1" min="-2" pref="23" max="-2" attributes="0"/>
+ </Group>
+ <EmptySpace max="-2" attributes="0"/>
+ <Group type="103" groupAlignment="1" attributes="0">
+ <Component id="jLabelPublisherName" min="-2" max="-2" attributes="0"/>
+ <Component id="jPanelPublisherName" min="-2" max="-2" attributes="0"/>
+ </Group>
+ <EmptySpace max="-2" attributes="0"/>
+ <Group type="103" groupAlignment="1" attributes="0">
+ <Component id="jLabelPublisherLink" min="-2" max="-2" attributes="0"/>
+ <Component id="jPanelPublisherLink" min="-2" max="-2" attributes="0"/>
+ </Group>
+ <EmptySpace max="-2" attributes="0"/>
+ <Group type="103" groupAlignment="0" attributes="0">
+ <Group type="103" groupAlignment="3" attributes="0">
+ <Component id="jButtonBrowseLicense" alignment="3" min="-2" max="-2" attributes="0"/>
+ <Component id="jLabelLicense" alignment="3" min="-2" pref="24" max="-2" attributes="0"/>
+ </Group>
+ <Component id="jPanel2" min="-2" pref="23" max="-2" attributes="0"/>
+ </Group>
+ <EmptySpace max="-2" attributes="0"/>
+ <Group type="103" groupAlignment="3" attributes="0">
+ <Component id="jLabel1" alignment="3" min="-2" max="-2" attributes="0"/>
+ <Component id="jRadioButtonUser" alignment="3" min="-2" max="-2" attributes="0"/>
+ <Component id="jRadioButtonAdmin" alignment="3" min="-2" max="-2" attributes="0"/>
+ </Group>
+ <EmptySpace max="-2" attributes="0"/>
+ <Group type="103" groupAlignment="0" attributes="0">
+ <Group type="103" groupAlignment="3" attributes="0">
+ <Component id="jLabelIcon" alignment="3" min="-2" pref="21" max="-2" attributes="0"/>
+ <Component id="jButtonBrowseIcon" alignment="3" min="-2" max="-2" attributes="0"/>
+ </Group>
+ <Component id="jPanel3" min="-2" pref="23" max="-2" attributes="0"/>
+ </Group>
+ <EmptySpace max="-2" attributes="0"/>
+ <Group type="103" groupAlignment="0" attributes="0">
+ <Group type="103" groupAlignment="3" attributes="0">
+ <Component id="jLabelIcon1" alignment="3" min="-2" max="-2" attributes="0"/>
+ <Component id="jButtonBrowseHiDefIcon" alignment="3" min="-2" max="-2" attributes="0"/>
+ </Group>
+ <Component id="jPanel4" min="-2" pref="23" max="-2" attributes="0"/>
+ </Group>
+ <EmptySpace pref="49" max="32767" attributes="0"/>
+ <Component id="jErrorLabel" min="-2" max="-2" attributes="0"/>
+ </Group>
+ </Group>
+ </DimensionLayout>
+ </Layout>
+ <SubComponents>
+ <Component class="javax.swing.JLabel" name="jLabelCurrentLocale">
+ <Properties>
+ <Property name="labelFor" type="java.awt.Component" editor="org.netbeans.modules.form.ComponentChooserEditor">
+ <ComponentRef name="jComboBoxCurrentLocale"/>
+ </Property>
+ <Property name="text" type="java.lang.String" editor="org.netbeans.modules.i18n.form.FormI18nStringEditor">
+ <ResourceString bundle="org/openoffice/extensions/projecttemplates/actions/panel/Bundle.properties" key="PropsPanel.jLabelCurrentLocale.text" replaceFormat="org.openide.util.NbBundle.getMessage({sourceFileName}.class, "{key}")"/>
+ </Property>
+ </Properties>
+ <AuxValues>
+ <AuxValue name="generateMnemonicsCode" type="java.lang.Boolean" value="true"/>
+ </AuxValues>
+ </Component>
+ <Component class="javax.swing.JComboBox" name="jComboBoxCurrentLocale">
+ <Properties>
+ <Property name="model" type="javax.swing.ComboBoxModel" editor="org.netbeans.modules.form.RADConnectionPropertyEditor">
+ <Connection code="createComboBoxModel() " type="code"/>
+ </Property>
+ </Properties>
+ <Events>
+ <EventHandler event="actionPerformed" listener="java.awt.event.ActionListener" parameters="java.awt.event.ActionEvent" handler="jComboBoxCurrentLocaleActionPerformed"/>
+ </Events>
+ </Component>
+ <Component class="javax.swing.JComboBox" name="jComboBoxDefaultLocale">
+ <Properties>
+ <Property name="model" type="javax.swing.ComboBoxModel" editor="org.netbeans.modules.form.RADConnectionPropertyEditor">
+ <Connection code="createComboBoxModel()" type="code"/>
+ </Property>
+ </Properties>
+ <Events>
+ <EventHandler event="actionPerformed" listener="java.awt.event.ActionListener" parameters="java.awt.event.ActionEvent" handler="jComboBoxDefaultLocaleActionPerformed"/>
+ </Events>
+ </Component>
+ <Component class="javax.swing.JLabel" name="jLabelDefaultLocale">
+ <Properties>
+ <Property name="labelFor" type="java.awt.Component" editor="org.netbeans.modules.form.ComponentChooserEditor">
+ <ComponentRef name="jComboBoxDefaultLocale"/>
+ </Property>
+ <Property name="text" type="java.lang.String" editor="org.netbeans.modules.i18n.form.FormI18nStringEditor">
+ <ResourceString bundle="org/openoffice/extensions/projecttemplates/actions/panel/Bundle.properties" key="PropsPanel.jLabelDefaultLocale.text" replaceFormat="org.openide.util.NbBundle.getMessage({sourceFileName}.class, "{key}")"/>
+ </Property>
+ </Properties>
+ <AuxValues>
+ <AuxValue name="generateMnemonicsCode" type="java.lang.Boolean" value="true"/>
+ </AuxValues>
+ </Component>
+ <Component class="javax.swing.JLabel" name="jLabelDisplayName">
+ <Properties>
+ <Property name="labelFor" type="java.awt.Component" editor="org.netbeans.modules.form.ComponentChooserEditor">
+ <ComponentRef name="jPanelDisplayName"/>
+ </Property>
+ <Property name="text" type="java.lang.String" editor="org.netbeans.modules.i18n.form.FormI18nStringEditor">
+ <ResourceString bundle="org/openoffice/extensions/projecttemplates/actions/panel/Bundle.properties" key="PropsPanel.jLabelDisplayName.text" replaceFormat="org.openide.util.NbBundle.getMessage({sourceFileName}.class, "{key}")"/>
+ </Property>
+ </Properties>
+ <AuxValues>
+ <AuxValue name="generateMnemonicsCode" type="java.lang.Boolean" value="true"/>
+ </AuxValues>
+ </Component>
+ <Component class="javax.swing.JLabel" name="jLabelIcon">
+ <Properties>
+ <Property name="labelFor" type="java.awt.Component" editor="org.netbeans.modules.form.ComponentChooserEditor">
+ <ComponentRef name="jPanel3"/>
+ </Property>
+ <Property name="text" type="java.lang.String" editor="org.netbeans.modules.i18n.form.FormI18nStringEditor">
+ <ResourceString bundle="org/openoffice/extensions/projecttemplates/actions/panel/Bundle.properties" key="PropsPanel.jLabelIcon.text" replaceFormat="org.openide.util.NbBundle.getMessage({sourceFileName}.class, "{key}")"/>
+ </Property>
+ </Properties>
+ <AuxValues>
+ <AuxValue name="generateMnemonicsCode" type="java.lang.Boolean" value="true"/>
+ </AuxValues>
+ </Component>
+ <Component class="javax.swing.JLabel" name="jLabelDescription">
+ <Properties>
+ <Property name="labelFor" type="java.awt.Component" editor="org.netbeans.modules.form.ComponentChooserEditor">
+ <ComponentRef name="jPanel1"/>
+ </Property>
+ <Property name="text" type="java.lang.String" editor="org.netbeans.modules.i18n.form.FormI18nStringEditor">
+ <ResourceString bundle="org/openoffice/extensions/projecttemplates/actions/panel/Bundle.properties" key="PropsPanel.jLabelDescription.text" replaceFormat="org.openide.util.NbBundle.getMessage({sourceFileName}.class, "{key}")"/>
+ </Property>
+ </Properties>
+ <AuxValues>
+ <AuxValue name="generateMnemonicsCode" type="java.lang.Boolean" value="true"/>
+ </AuxValues>
+ </Component>
+ <Component class="javax.swing.JLabel" name="jLabelLicense">
+ <Properties>
+ <Property name="labelFor" type="java.awt.Component" editor="org.netbeans.modules.form.ComponentChooserEditor">
+ <ComponentRef name="jPanel2"/>
+ </Property>
+ <Property name="text" type="java.lang.String" editor="org.netbeans.modules.i18n.form.FormI18nStringEditor">
+ <ResourceString bundle="org/openoffice/extensions/projecttemplates/actions/panel/Bundle.properties" key="PropsPanel.jLabelLicense.text" replaceFormat="org.openide.util.NbBundle.getMessage({sourceFileName}.class, "{key}")"/>
+ </Property>
+ </Properties>
+ </Component>
+ <Component class="javax.swing.JSeparator" name="jSeparator1">
+ </Component>
+ <Component class="javax.swing.JLabel" name="jLabelPublisherName">
+ <Properties>
+ <Property name="labelFor" type="java.awt.Component" editor="org.netbeans.modules.form.ComponentChooserEditor">
+ <ComponentRef name="jPanelPublisherName"/>
+ </Property>
+ <Property name="text" type="java.lang.String" editor="org.netbeans.modules.i18n.form.FormI18nStringEditor">
+ <ResourceString bundle="org/openoffice/extensions/projecttemplates/actions/panel/Bundle.properties" key="PropsPanel.jLabelPublisherName.text" replaceFormat="org.openide.util.NbBundle.getMessage({sourceFileName}.class, "{key}")"/>
+ </Property>
+ </Properties>
+ <AuxValues>
+ <AuxValue name="generateMnemonicsCode" type="java.lang.Boolean" value="true"/>
+ </AuxValues>
+ </Component>
+ <Component class="javax.swing.JPanel" name="jPanelDisplayName">
+ <Properties>
+ <Property name="background" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor">
+ <Color blue="ff" green="ff" red="ff" type="rgb"/>
+ </Property>
+ </Properties>
+ <AuxValues>
+ <AuxValue name="JavaCodeGenerator_CreateCodeCustom" type="java.lang.String" value="createDisplayNamePanel()"/>
+ </AuxValues>
+ </Component>
+ <Component class="javax.swing.JButton" name="jButtonBrowseLicense">
+ <Properties>
+ <Property name="text" type="java.lang.String" editor="org.netbeans.modules.i18n.form.FormI18nStringEditor">
+ <ResourceString bundle="org/openoffice/extensions/projecttemplates/actions/panel/Bundle.properties" key="PropsPanel.Browse.text2" replaceFormat="org.openide.util.NbBundle.getMessage({sourceFileName}.class, "{key}")"/>
+ </Property>
+ </Properties>
+ <Events>
+ <EventHandler event="actionPerformed" listener="java.awt.event.ActionListener" parameters="java.awt.event.ActionEvent" handler="jButtonBrowseLicenseActionPerformed"/>
+ </Events>
+ <AuxValues>
+ <AuxValue name="generateMnemonicsCode" type="java.lang.Boolean" value="true"/>
+ </AuxValues>
+ </Component>
+ <Component class="javax.swing.JButton" name="jButtonBrowseIcon">
+ <Properties>
+ <Property name="text" type="java.lang.String" editor="org.netbeans.modules.i18n.form.FormI18nStringEditor">
+ <ResourceString bundle="org/openoffice/extensions/projecttemplates/actions/panel/Bundle.properties" key="PropsPanel.Browse.text3" replaceFormat="org.openide.util.NbBundle.getMessage({sourceFileName}.class, "{key}")"/>
+ </Property>
+ </Properties>
+ <Events>
+ <EventHandler event="actionPerformed" listener="java.awt.event.ActionListener" parameters="java.awt.event.ActionEvent" handler="jButtonBrowseIconActionPerformed"/>
+ </Events>
+ <AuxValues>
+ <AuxValue name="generateMnemonicsCode" type="java.lang.Boolean" value="true"/>
+ </AuxValues>
+ </Component>
+ <Component class="javax.swing.JLabel" name="jLabelPublisherLink">
+ <Properties>
+ <Property name="labelFor" type="java.awt.Component" editor="org.netbeans.modules.form.ComponentChooserEditor">
+ <ComponentRef name="jPanelPublisherLink"/>
+ </Property>
+ <Property name="text" type="java.lang.String" editor="org.netbeans.modules.i18n.form.FormI18nStringEditor">
+ <ResourceString bundle="org/openoffice/extensions/projecttemplates/actions/panel/Bundle.properties" key="PropsPanel.jLabelPublisherLink.text" replaceFormat="org.openide.util.NbBundle.getMessage({sourceFileName}.class, "{key}")"/>
+ </Property>
+ </Properties>
+ <AuxValues>
+ <AuxValue name="generateMnemonicsCode" type="java.lang.Boolean" value="true"/>
+ </AuxValues>
+ </Component>
+ <Component class="javax.swing.JButton" name="jButtonBrowseDescription">
+ <Properties>
+ <Property name="text" type="java.lang.String" editor="org.netbeans.modules.i18n.form.FormI18nStringEditor">
+ <ResourceString bundle="org/openoffice/extensions/projecttemplates/actions/panel/Bundle.properties" key="PropsPanel.Browse.text" replaceFormat="org.openide.util.NbBundle.getMessage({sourceFileName}.class, "{key}")"/>
+ </Property>
+ </Properties>
+ <Events>
+ <EventHandler event="actionPerformed" listener="java.awt.event.ActionListener" parameters="java.awt.event.ActionEvent" handler="jButtonBrowseDescriptionActionPerformed"/>
+ </Events>
+ <AuxValues>
+ <AuxValue name="generateMnemonicsCode" type="java.lang.Boolean" value="true"/>
+ </AuxValues>
+ </Component>
+ <Component class="javax.swing.JLabel" name="jLabel1">
+ <Properties>
+ <Property name="text" type="java.lang.String" editor="org.netbeans.modules.i18n.form.FormI18nStringEditor">
+ <ResourceString bundle="org/openoffice/extensions/projecttemplates/actions/panel/Bundle.properties" key="PropsPanel.jLabel1.text" replaceFormat="org.openide.util.NbBundle.getMessage({sourceFileName}.class, "{key}")"/>
+ </Property>
+ </Properties>
+ </Component>
+ <Component class="javax.swing.JRadioButton" name="jRadioButtonUser">
+ <Properties>
+ <Property name="text" type="java.lang.String" editor="org.netbeans.modules.i18n.form.FormI18nStringEditor">
+ <ResourceString bundle="org/openoffice/extensions/projecttemplates/actions/panel/Bundle.properties" key="PropsPanel.jRadioButtonUser.text" replaceFormat="org.openide.util.NbBundle.getMessage({sourceFileName}.class, "{key}")"/>
+ </Property>
+ </Properties>
+ <AuxValues>
+ <AuxValue name="generateMnemonicsCode" type="java.lang.Boolean" value="true"/>
+ </AuxValues>
+ </Component>
+ <Component class="javax.swing.JRadioButton" name="jRadioButtonAdmin">
+ <Properties>
+ <Property name="text" type="java.lang.String" editor="org.netbeans.modules.i18n.form.FormI18nStringEditor">
+ <ResourceString bundle="org/openoffice/extensions/projecttemplates/actions/panel/Bundle.properties" key="PropsPanel.jRadioButtonAdmin.text" replaceFormat="org.openide.util.NbBundle.getMessage({sourceFileName}.class, "{key}")"/>
+ </Property>
+ </Properties>
+ <AuxValues>
+ <AuxValue name="generateMnemonicsCode" type="java.lang.Boolean" value="true"/>
+ </AuxValues>
+ </Component>
+ <Container class="javax.swing.JPanel" name="jPanel1">
+ <Properties>
+ <Property name="background" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor">
+ <Color blue="ff" green="ff" red="ff" type="rgb"/>
+ </Property>
+ </Properties>
+ <AuxValues>
+ <AuxValue name="JavaCodeGenerator_CreateCodeCustom" type="java.lang.String" value="createDescriptionPanel()"/>
+ </AuxValues>
+
+ <Layout class="org.netbeans.modules.form.compat2.layouts.DesignFlowLayout"/>
+ </Container>
+ <Container class="javax.swing.JPanel" name="jPanel2">
+ <Properties>
+ <Property name="background" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor">
+ <Color blue="ff" green="ff" red="ff" type="rgb"/>
+ </Property>
+ </Properties>
+ <AuxValues>
+ <AuxValue name="JavaCodeGenerator_CreateCodeCustom" type="java.lang.String" value="createLicensePanel()"/>
+ </AuxValues>
+
+ <Layout class="org.netbeans.modules.form.compat2.layouts.DesignFlowLayout"/>
+ </Container>
+ <Container class="javax.swing.JPanel" name="jPanel3">
+ <Properties>
+ <Property name="background" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor">
+ <Color blue="ff" green="ff" red="ff" type="rgb"/>
+ </Property>
+ </Properties>
+ <AuxValues>
+ <AuxValue name="JavaCodeGenerator_CreateCodeCustom" type="java.lang.String" value="createDefaultIconPanel()"/>
+ </AuxValues>
+
+ <Layout class="org.netbeans.modules.form.compat2.layouts.DesignFlowLayout"/>
+ </Container>
+ <Container class="javax.swing.JPanel" name="jPanel4">
+ <Properties>
+ <Property name="background" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor">
+ <Color blue="ff" green="ff" red="ff" type="rgb"/>
+ </Property>
+ </Properties>
+ <AuxValues>
+ <AuxValue name="JavaCodeGenerator_CreateCodeCustom" type="java.lang.String" value="createHighDefinitionIconPanel()"/>
+ </AuxValues>
+
+ <Layout class="org.netbeans.modules.form.compat2.layouts.DesignFlowLayout"/>
+ </Container>
+ <Component class="javax.swing.JButton" name="jButtonBrowseHiDefIcon">
+ <Properties>
+ <Property name="text" type="java.lang.String" editor="org.netbeans.modules.i18n.form.FormI18nStringEditor">
+ <ResourceString bundle="org/openoffice/extensions/projecttemplates/actions/panel/Bundle.properties" key="PropsPanel.Browse.text4" replaceFormat="org.openide.util.NbBundle.getMessage({sourceFileName}.class, "{key}")"/>
+ </Property>
+ </Properties>
+ <Events>
+ <EventHandler event="actionPerformed" listener="java.awt.event.ActionListener" parameters="java.awt.event.ActionEvent" handler="jButtonBrowseHiDefIconActionPerformed"/>
+ </Events>
+ <AuxValues>
+ <AuxValue name="generateMnemonicsCode" type="java.lang.Boolean" value="true"/>
+ </AuxValues>
+ </Component>
+ <Component class="javax.swing.JLabel" name="jLabelIcon1">
+ <Properties>
+ <Property name="labelFor" type="java.awt.Component" editor="org.netbeans.modules.form.ComponentChooserEditor">
+ <ComponentRef name="jPanel4"/>
+ </Property>
+ <Property name="text" type="java.lang.String" editor="org.netbeans.modules.i18n.form.FormI18nStringEditor">
+ <ResourceString bundle="org/openoffice/extensions/projecttemplates/actions/panel/Bundle.properties" key="PropsPanel.jLabelIcon1.text" replaceFormat="org.openide.util.NbBundle.getMessage({sourceFileName}.class, "{key}")"/>
+ </Property>
+ </Properties>
+ <AuxValues>
+ <AuxValue name="generateMnemonicsCode" type="java.lang.Boolean" value="true"/>
+ </AuxValues>
+ </Component>
+ <Component class="javax.swing.JLabel" name="jErrorLabel">
+ </Component>
+ <Component class="org.openoffice.extensions.projecttemplates.actions.panel.SimpleEditPanel" name="jPanelPublisherName">
+ </Component>
+ <Component class="org.openoffice.extensions.projecttemplates.actions.panel.SimpleEditPanel" name="jPanelPublisherLink">
+ </Component>
+ </SubComponents>
+</Form>
Added: incubator/ooo/devtools/netbeansintegration/src/org/openoffice/extensions/projecttemplates/actions/panel/PropsPanel.java
URL: http://svn.apache.org/viewvc/incubator/ooo/devtools/netbeansintegration/src/org/openoffice/extensions/projecttemplates/actions/panel/PropsPanel.java?rev=1236486&view=auto
==============================================================================
--- incubator/ooo/devtools/netbeansintegration/src/org/openoffice/extensions/projecttemplates/actions/panel/PropsPanel.java (added)
+++ incubator/ooo/devtools/netbeansintegration/src/org/openoffice/extensions/projecttemplates/actions/panel/PropsPanel.java Fri Jan 27 01:29:33 2012
@@ -0,0 +1,1077 @@
+/*************************************************************************
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * $RCSfile: PropsPanel.java,v $
+ *
+ * $Revision: 1.6 $
+ *
+ * last change: $Author: sg $ $Date: 2009/10/26 08:01:12 $
+ *
+ * The Contents of this file are made available subject to
+ * the terms of GNU Lesser General Public License Version 2.1.
+ *
+ *
+ * GNU Lesser General Public License Version 2.1
+ * =============================================
+ * Copyright 2005 by Sun Microsystems, Inc.
+ * 901 San Antonio Road, Palo Alto, CA 94303, USA
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License version 2.1, as published by the Free Software Foundation.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston,
+ * MA 02111-1307 USA
+ *
+ ************************************************************************/
+package org.openoffice.extensions.projecttemplates.actions.panel;
+
+import java.awt.Color;
+import java.awt.Component;
+import java.awt.Dialog;
+import java.awt.Dimension;
+import java.awt.Font;
+import java.awt.event.ActionEvent;
+import java.awt.event.ActionListener;
+import java.io.BufferedReader;
+import java.io.File;
+import java.io.FileNotFoundException;
+import java.io.FileReader;
+import java.io.FileWriter;
+import java.io.IOException;
+import java.net.MalformedURLException;
+import java.net.URL;
+import javax.swing.ButtonGroup;
+import javax.swing.ComboBoxModel;
+import javax.swing.DefaultComboBoxModel;
+import javax.swing.ImageIcon;
+import javax.swing.JFileChooser;
+import javax.swing.JLabel;
+import javax.swing.JList;
+import javax.swing.JPanel;
+import javax.swing.JTextField;
+import javax.swing.ListCellRenderer;
+import javax.swing.border.Border;
+import javax.swing.event.DocumentEvent;
+import javax.swing.event.DocumentListener;
+import javax.swing.filechooser.FileFilter;
+import javax.swing.filechooser.FileSystemView;
+import javax.swing.text.Document;
+import org.openide.DialogDescriptor;
+import org.openide.DialogDisplayer;
+import org.openide.NotifyDescriptor;
+import org.openide.filesystems.FileObject;
+import org.openide.filesystems.FileUtil;
+import org.openide.util.HelpCtx;
+import org.openide.util.NbBundle;
+import org.openoffice.extensions.config.ConfigurationSettings;
+import org.openoffice.extensions.util.LogWriter;
+import org.openoffice.extensions.util.ProjectTypeHelper;
+import org.openoffice.extensions.util.datamodel.localization.LanguageDefinition;
+
+/**
+ *
+ * @author sg128468
+ */
+public class PropsPanel extends javax.swing.JPanel implements ActionListener, DocumentListener, HelpCtx.Provider {
+
+ private EditAndOpenPanel m_descriptionPanel;
+ private EditAndOpenPanel m_defaultIconPanel;
+ private EditAndOpenPanel m_highDefinitionIconPanel;
+ private EditAndOpenPanel m_licensePanel;
+ private SimpleEditPanel m_displayNamePanel;
+ private String m_CurrentLocale;
+ private FileObject m_projDir;
+ private DataHandler m_Handler;
+
+ private static final String DEF_ICON = "ICON";
+ private static final String HIGH_DEF_ICON = "HIGH_DEF_ICON";
+ private static final String LICENSE = "LICENSE";
+ private static final String DESCRIPTION = "DESCRIPTION";
+ private static final String USER = "USER";
+ private static final String ADMIN = "ADMIN";
+
+ /** Creates new form PropsPanel */
+ public PropsPanel(DataHandler handler) {
+ m_Handler = handler;
+ m_projDir = handler.getProjectDir();
+ initComponents();
+ jErrorLabel.setForeground(Color.RED);
+ ButtonGroup buttonGroup = new ButtonGroup();
+ buttonGroup.add(jRadioButtonUser);
+ buttonGroup.add(jRadioButtonAdmin);
+ initPanels();
+ jComboBoxCurrentLocale.setRenderer(new MyListCellRenderer());
+ jComboBoxDefaultLocale.setRenderer(new MyListCellRenderer());
+ jRadioButtonUser.setActionCommand(USER);
+ jRadioButtonAdmin.setActionCommand(ADMIN);
+ jRadioButtonAdmin.addActionListener(this);
+ jRadioButtonUser.addActionListener(this);
+ jPanelPublisherLink.getDocument().addDocumentListener(this);
+ jPanelPublisherName.getDocument().addDocumentListener(this);
+ m_displayNamePanel.getDocument().addDocumentListener(this);
+ m_descriptionPanel.getDocument().addDocumentListener(this);
+ m_defaultIconPanel.getDocument().addDocumentListener(this);
+ m_highDefinitionIconPanel.getDocument().addDocumentListener(this);
+ m_licensePanel.getDocument().addDocumentListener(this);
+ }
+
+ private ComboBoxModel createComboBoxModel() {
+ return new DefaultComboBoxModel(LanguageDefinition.getLanguages());
+ }
+
+ private void initPanels() {
+ // create empty text field to set the correct border around the
+ // components - border is platfrom dependent
+ JTextField borderTextField = new JTextField();
+ Border b = borderTextField.getBorder();
+
+ m_descriptionPanel.setBorder(b);
+ m_defaultIconPanel.setBorder(b);
+ m_highDefinitionIconPanel.setBorder(b);
+ m_licensePanel.setBorder(b);
+ m_displayNamePanel.setBorder(b);
+ jPanelPublisherLink.setBorder(b);
+ jPanelPublisherName.setBorder(b);
+
+ m_CurrentLocale = m_Handler.getDefaultShortLocale();
+ if (m_CurrentLocale == null) {
+ m_CurrentLocale = LanguageDefinition.getLanguageNameForId(LanguageDefinition.LANGUAGE_ID_en);
+ m_Handler.setDefaultShortLocale(LanguageDefinition.getLanguageShortNameForId(LanguageDefinition.LANGUAGE_ID_en));
+ } else { // make sure name is long...
+ m_CurrentLocale = LanguageDefinition.getLanguageNameForShortName(m_CurrentLocale);
+ }
+ jComboBoxDefaultLocale.setSelectedItem(m_CurrentLocale);
+ jComboBoxCurrentLocale.setSelectedItem(m_CurrentLocale);
+ loadData(""); // NOI18N
+ loadIconAndAcceptBy();
+ }
+
+ private JPanel createDescriptionPanel() {
+ m_descriptionPanel = new EditAndOpenPanel(); // NOI18N
+ m_descriptionPanel.initialize(DESCRIPTION, this);
+ return m_descriptionPanel;
+ }
+
+ private JPanel createDefaultIconPanel() {
+ m_defaultIconPanel = new EditAndOpenPanel(); // NOI18N
+ m_defaultIconPanel.initialize(DEF_ICON, this);
+ return m_defaultIconPanel;
+ }
+
+ private JPanel createHighDefinitionIconPanel() {
+ m_highDefinitionIconPanel = new EditAndOpenPanel(); // NOI18N
+ m_highDefinitionIconPanel.initialize(HIGH_DEF_ICON, this);
+ return m_highDefinitionIconPanel;
+ }
+
+ private JPanel createLicensePanel() {
+ m_licensePanel = new EditAndOpenPanel(); // NOI18N
+ m_licensePanel.initialize(LICENSE, this);
+ return m_licensePanel;
+ }
+
+ private JPanel createDisplayNamePanel() {
+ m_displayNamePanel = new SimpleEditPanel();
+ return m_displayNamePanel;
+ }
+
+ /** This method is called from within the constructor to
+ * initialize the form.
+ * WARNING: Do NOT modify this code. The content of this method is
+ * always regenerated by the Form Editor.
+ */
+ // <editor-fold defaultstate="collapsed" desc="Generated Code">//GEN-BEGIN:initComponents
+ private void initComponents() {
+
+ jLabelCurrentLocale = new javax.swing.JLabel();
+ jComboBoxCurrentLocale = new javax.swing.JComboBox();
+ jComboBoxDefaultLocale = new javax.swing.JComboBox();
+ jLabelDefaultLocale = new javax.swing.JLabel();
+ jLabelDisplayName = new javax.swing.JLabel();
+ jLabelIcon = new javax.swing.JLabel();
+ jLabelDescription = new javax.swing.JLabel();
+ jLabelLicense = new javax.swing.JLabel();
+ jSeparator1 = new javax.swing.JSeparator();
+ jLabelPublisherName = new javax.swing.JLabel();
+ jPanelDisplayName = createDisplayNamePanel();
+ jButtonBrowseLicense = new javax.swing.JButton();
+ jButtonBrowseIcon = new javax.swing.JButton();
+ jLabelPublisherLink = new javax.swing.JLabel();
+ jButtonBrowseDescription = new javax.swing.JButton();
+ jLabel1 = new javax.swing.JLabel();
+ jRadioButtonUser = new javax.swing.JRadioButton();
+ jRadioButtonAdmin = new javax.swing.JRadioButton();
+ jPanel1 = createDescriptionPanel();
+ jPanel2 = createLicensePanel();
+ jPanel3 = createDefaultIconPanel();
+ jPanel4 = createHighDefinitionIconPanel();
+ jButtonBrowseHiDefIcon = new javax.swing.JButton();
+ jLabelIcon1 = new javax.swing.JLabel();
+ jErrorLabel = new javax.swing.JLabel();
+ jPanelPublisherName = new org.openoffice.extensions.projecttemplates.actions.panel.SimpleEditPanel();
+ jPanelPublisherLink = new org.openoffice.extensions.projecttemplates.actions.panel.SimpleEditPanel();
+
+ jLabelCurrentLocale.setLabelFor(jComboBoxCurrentLocale);
+ org.openide.awt.Mnemonics.setLocalizedText(jLabelCurrentLocale, org.openide.util.NbBundle.getMessage(PropsPanel.class, "PropsPanel.jLabelCurrentLocale.text")); // NOI18N
+
+ jComboBoxCurrentLocale.setModel(createComboBoxModel() );
+ jComboBoxCurrentLocale.addActionListener(new java.awt.event.ActionListener() {
+ public void actionPerformed(java.awt.event.ActionEvent evt) {
+ jComboBoxCurrentLocaleActionPerformed(evt);
+ }
+ });
+
+ jComboBoxDefaultLocale.setModel(createComboBoxModel());
+ jComboBoxDefaultLocale.addActionListener(new java.awt.event.ActionListener() {
+ public void actionPerformed(java.awt.event.ActionEvent evt) {
+ jComboBoxDefaultLocaleActionPerformed(evt);
+ }
+ });
+
+ jLabelDefaultLocale.setLabelFor(jComboBoxDefaultLocale);
+ org.openide.awt.Mnemonics.setLocalizedText(jLabelDefaultLocale, org.openide.util.NbBundle.getMessage(PropsPanel.class, "PropsPanel.jLabelDefaultLocale.text")); // NOI18N
+
+ jLabelDisplayName.setLabelFor(jPanelDisplayName);
+ org.openide.awt.Mnemonics.setLocalizedText(jLabelDisplayName, org.openide.util.NbBundle.getMessage(PropsPanel.class, "PropsPanel.jLabelDisplayName.text")); // NOI18N
+
+ jLabelIcon.setLabelFor(jPanel3);
+ org.openide.awt.Mnemonics.setLocalizedText(jLabelIcon, org.openide.util.NbBundle.getMessage(PropsPanel.class, "PropsPanel.jLabelIcon.text")); // NOI18N
+
+ jLabelDescription.setLabelFor(jPanel1);
+ org.openide.awt.Mnemonics.setLocalizedText(jLabelDescription, org.openide.util.NbBundle.getMessage(PropsPanel.class, "PropsPanel.jLabelDescription.text")); // NOI18N
+
+ jLabelLicense.setLabelFor(jPanel2);
+ jLabelLicense.setText(org.openide.util.NbBundle.getMessage(PropsPanel.class, "PropsPanel.jLabelLicense.text")); // NOI18N
+
+ jLabelPublisherName.setLabelFor(jPanelPublisherName);
+ org.openide.awt.Mnemonics.setLocalizedText(jLabelPublisherName, org.openide.util.NbBundle.getMessage(PropsPanel.class, "PropsPanel.jLabelPublisherName.text")); // NOI18N
+
+ jPanelDisplayName.setBackground(new java.awt.Color(255, 255, 255));
+
+ org.openide.awt.Mnemonics.setLocalizedText(jButtonBrowseLicense, org.openide.util.NbBundle.getMessage(PropsPanel.class, "PropsPanel.Browse.text2")); // NOI18N
+ jButtonBrowseLicense.addActionListener(new java.awt.event.ActionListener() {
+ public void actionPerformed(java.awt.event.ActionEvent evt) {
+ jButtonBrowseLicenseActionPerformed(evt);
+ }
+ });
+
+ org.openide.awt.Mnemonics.setLocalizedText(jButtonBrowseIcon, org.openide.util.NbBundle.getMessage(PropsPanel.class, "PropsPanel.Browse.text3")); // NOI18N
+ jButtonBrowseIcon.addActionListener(new java.awt.event.ActionListener() {
+ public void actionPerformed(java.awt.event.ActionEvent evt) {
+ jButtonBrowseIconActionPerformed(evt);
+ }
+ });
+
+ jLabelPublisherLink.setLabelFor(jPanelPublisherLink);
+ org.openide.awt.Mnemonics.setLocalizedText(jLabelPublisherLink, org.openide.util.NbBundle.getMessage(PropsPanel.class, "PropsPanel.jLabelPublisherLink.text")); // NOI18N
+
+ org.openide.awt.Mnemonics.setLocalizedText(jButtonBrowseDescription, org.openide.util.NbBundle.getMessage(PropsPanel.class, "PropsPanel.Browse.text")); // NOI18N
+ jButtonBrowseDescription.addActionListener(new java.awt.event.ActionListener() {
+ public void actionPerformed(java.awt.event.ActionEvent evt) {
+ jButtonBrowseDescriptionActionPerformed(evt);
+ }
+ });
+
+ jLabel1.setText(org.openide.util.NbBundle.getMessage(PropsPanel.class, "PropsPanel.jLabel1.text")); // NOI18N
+
+ org.openide.awt.Mnemonics.setLocalizedText(jRadioButtonUser, org.openide.util.NbBundle.getMessage(PropsPanel.class, "PropsPanel.jRadioButtonUser.text")); // NOI18N
+
+ org.openide.awt.Mnemonics.setLocalizedText(jRadioButtonAdmin, org.openide.util.NbBundle.getMessage(PropsPanel.class, "PropsPanel.jRadioButtonAdmin.text")); // NOI18N
+
+ jPanel1.setBackground(new java.awt.Color(255, 255, 255));
+
+ jPanel2.setBackground(new java.awt.Color(255, 255, 255));
+
+ jPanel3.setBackground(new java.awt.Color(255, 255, 255));
+
+ jPanel4.setBackground(new java.awt.Color(255, 255, 255));
+
+ org.openide.awt.Mnemonics.setLocalizedText(jButtonBrowseHiDefIcon, org.openide.util.NbBundle.getMessage(PropsPanel.class, "PropsPanel.Browse.text4")); // NOI18N
+ jButtonBrowseHiDefIcon.addActionListener(new java.awt.event.ActionListener() {
+ public void actionPerformed(java.awt.event.ActionEvent evt) {
+ jButtonBrowseHiDefIconActionPerformed(evt);
+ }
+ });
+
+ jLabelIcon1.setLabelFor(jPanel4);
+ org.openide.awt.Mnemonics.setLocalizedText(jLabelIcon1, org.openide.util.NbBundle.getMessage(PropsPanel.class, "PropsPanel.jLabelIcon1.text")); // NOI18N
+
+ org.jdesktop.layout.GroupLayout layout = new org.jdesktop.layout.GroupLayout(this);
+ this.setLayout(layout);
+ layout.setHorizontalGroup(
+ layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
+ .add(jSeparator1, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, 558, Short.MAX_VALUE)
+ .add(layout.createSequentialGroup()
+ .add(layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
+ .add(jLabelIcon1, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
+ .add(jLabelIcon, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, 120, Short.MAX_VALUE)
+ .add(jLabelDescription, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, 120, Short.MAX_VALUE)
+ .add(jLabelLicense, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, 120, Short.MAX_VALUE)
+ .add(jLabel1, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, 120, Short.MAX_VALUE)
+ .add(jLabelPublisherLink, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, 120, Short.MAX_VALUE)
+ .add(jLabelPublisherName, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, 120, Short.MAX_VALUE)
+ .add(jLabelCurrentLocale, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, 120, Short.MAX_VALUE)
+ .add(jLabelDisplayName, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, 120, Short.MAX_VALUE))
+ .addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED)
+ .add(layout.createParallelGroup(org.jdesktop.layout.GroupLayout.TRAILING)
+ .add(org.jdesktop.layout.GroupLayout.LEADING, layout.createSequentialGroup()
+ .add(jRadioButtonUser)
+ .addContainerGap())
+ .add(layout.createSequentialGroup()
+ .add(jComboBoxCurrentLocale, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, 110, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE)
+ .addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED, 90, Short.MAX_VALUE)
+ .add(jLabelDefaultLocale, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, 104, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE)
+ .addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED)
+ .add(jComboBoxDefaultLocale, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, 110, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE))
+ .add(layout.createSequentialGroup()
+ .add(layout.createParallelGroup(org.jdesktop.layout.GroupLayout.TRAILING)
+ .add(jPanel1, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, 312, Short.MAX_VALUE)
+ .add(jRadioButtonAdmin, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, 146, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE)
+ .add(org.jdesktop.layout.GroupLayout.LEADING, jPanel2, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, 312, Short.MAX_VALUE)
+ .add(org.jdesktop.layout.GroupLayout.LEADING, jPanel4, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, 312, Short.MAX_VALUE)
+ .add(org.jdesktop.layout.GroupLayout.LEADING, jPanel3, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, 312, Short.MAX_VALUE)
+ .add(jPanelDisplayName, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, 312, Short.MAX_VALUE)
+ .add(jPanelPublisherName, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, 312, Short.MAX_VALUE)
+ .add(jPanelPublisherLink, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, 312, Short.MAX_VALUE))
+ .add(18, 18, 18)
+ .add(layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
+ .add(org.jdesktop.layout.GroupLayout.TRAILING, jButtonBrowseLicense)
+ .add(org.jdesktop.layout.GroupLayout.TRAILING, jButtonBrowseDescription)
+ .add(org.jdesktop.layout.GroupLayout.TRAILING, jButtonBrowseHiDefIcon)
+ .add(org.jdesktop.layout.GroupLayout.TRAILING, jButtonBrowseIcon)))))
+ .add(jErrorLabel, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, 558, Short.MAX_VALUE)
+ );
+ layout.setVerticalGroup(
+ layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
+ .add(layout.createSequentialGroup()
+ .add(layout.createParallelGroup(org.jdesktop.layout.GroupLayout.BASELINE)
+ .add(jComboBoxDefaultLocale, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE)
+ .add(jComboBoxCurrentLocale, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE)
+ .add(jLabelCurrentLocale)
+ .add(jLabelDefaultLocale))
+ .add(14, 14, 14)
+ .add(jSeparator1, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE)
+ .addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED)
+ .add(layout.createParallelGroup(org.jdesktop.layout.GroupLayout.TRAILING)
+ .add(jPanelDisplayName, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, 23, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE)
+ .add(jLabelDisplayName))
+ .addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED)
+ .add(layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
+ .add(layout.createParallelGroup(org.jdesktop.layout.GroupLayout.BASELINE)
+ .add(jButtonBrowseDescription)
+ .add(jLabelDescription))
+ .add(jPanel1, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, 23, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE))
+ .addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED)
+ .add(layout.createParallelGroup(org.jdesktop.layout.GroupLayout.TRAILING)
+ .add(jLabelPublisherName)
+ .add(jPanelPublisherName, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE))
+ .addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED)
+ .add(layout.createParallelGroup(org.jdesktop.layout.GroupLayout.TRAILING)
+ .add(jLabelPublisherLink)
+ .add(jPanelPublisherLink, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE))
+ .addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED)
+ .add(layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
+ .add(layout.createParallelGroup(org.jdesktop.layout.GroupLayout.BASELINE)
+ .add(jButtonBrowseLicense)
+ .add(jLabelLicense, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, 24, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE))
+ .add(jPanel2, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, 23, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE))
+ .addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED)
+ .add(layout.createParallelGroup(org.jdesktop.layout.GroupLayout.BASELINE)
+ .add(jLabel1)
+ .add(jRadioButtonUser)
+ .add(jRadioButtonAdmin))
+ .addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED)
+ .add(layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
+ .add(layout.createParallelGroup(org.jdesktop.layout.GroupLayout.BASELINE)
+ .add(jLabelIcon, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, 21, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE)
+ .add(jButtonBrowseIcon))
+ .add(jPanel3, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, 23, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE))
+ .addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED)
+ .add(layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
+ .add(layout.createParallelGroup(org.jdesktop.layout.GroupLayout.BASELINE)
+ .add(jLabelIcon1)
+ .add(jButtonBrowseHiDefIcon))
+ .add(jPanel4, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, 23, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE))
+ .addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED, 49, Short.MAX_VALUE)
+ .add(jErrorLabel))
+ );
+ }// </editor-fold>//GEN-END:initComponents
+
+ /**
+ * Open file browser for certain file types
+ * @return
+ */
+ private File openBrowseDialog(FileFilter filter) {
+ File selectedFile = null;
+ JFileChooser chooser = new JFileChooser(FileSystemView.getFileSystemView());
+ FileUtil.preventFileChooserSymlinkTraversal(chooser, ConfigurationSettings.getDefaultFileChooserStartingDir());
+ chooser.setDialogTitle(NbBundle.getMessage(PropsPanel.class, "PropsPanel.FileChooserTitle"));
+ chooser.setFileFilter(filter);
+ if (JFileChooser.APPROVE_OPTION == chooser.showOpenDialog(this)) {
+ selectedFile = chooser.getSelectedFile();
+ ConfigurationSettings.storeDefaultFileChooserStartingDir(selectedFile.getParentFile());
+ }
+ return selectedFile;
+ }
+
+private void jButtonBrowseIconActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jButtonBrowseIconActionPerformed
+ File icon = openBrowseDialog(new FileFilter() {
+ @Override
+ public boolean accept(File f) {
+ if (f.isDirectory()) { // always accept dirs
+ return true;
+ }
+ else {
+ String name = f.getName();
+ int index = name.length() - 4;
+ if (index > 0) {
+ String ext = name.substring(index);
+ if (ext.equalsIgnoreCase(".ico") ||
+ ext.equalsIgnoreCase(".bmp") ||
+ ext.equalsIgnoreCase(".png") ||
+ ext.equalsIgnoreCase(".jpg") ||
+ ext.equalsIgnoreCase(".jpeg") ||
+ ext.equalsIgnoreCase(".gif")) { // NOI18N
+ return true;
+ }
+ }
+ }
+ return false;
+ }
+ @Override
+ public String getDescription() {
+ return "*.ico *.bmp *.png *.jpeg *.gif"; // NOI18N
+ }
+ });
+ if (icon != null) {
+// m_Handler.setIconFile(icon);
+ m_defaultIconPanel.setText(icon.getPath());
+ }
+
+}//GEN-LAST:event_jButtonBrowseIconActionPerformed
+
+private void jButtonBrowseDescriptionActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jButtonBrowseDescriptionActionPerformed
+// TODO add your handling code here:
+ File description = openBrowseDialog(new FileFilter() {
+ @Override
+ public boolean accept(File f) {
+ if (f.isDirectory()) { // always accept dirs
+ return true;
+ }
+ else {
+ String name = f.getName();
+ int index = name.length() - 4;
+ if (index > 0) {
+ String ext = name.substring(index);
+ if (ext.equalsIgnoreCase(".txt")) { // NOI18N
+ return true;
+ }
+ }
+ }
+ return false;
+ }
+ @Override
+ public String getDescription() {
+ return "*.txt"; // NOI18N
+ }
+ });
+ if (description != null) {
+// try {
+// GenericDescriptionProperty<String[]> descriptionData = m_Handler.getDescriptionData();
+ // write the simple name out: that one will appear in the panel; complete name is stored for later copying
+// descriptionData.setPropertyAndLocale(m_CurrentLocale, new String[]{description.getName(), description.getCanonicalPath()});
+ m_descriptionPanel.setText(description.getPath());
+// } catch (IOException ex) {
+// LogWriter.getLogWriter().printStackTrace(ex);
+// }
+ }
+
+}//GEN-LAST:event_jButtonBrowseDescriptionActionPerformed
+
+private void jButtonBrowseLicenseActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jButtonBrowseLicenseActionPerformed
+// TODO add your handling code here:
+ File license = openBrowseDialog(new FileFilter() {
+ @Override
+ public boolean accept(File f) {
+ if (f.isDirectory()) { // always accept dirs
+ return true;
+ }
+ else {
+ String name = f.getName();
+ int index = name.length() - 4;
+ if (index > 0) {
+ String ext = name.substring(index);
+ if (ext.equalsIgnoreCase(".txt")) { // NOI18N
+ return true;
+ }
+ }
+ }
+ return false;
+ }
+ @Override
+ public String getDescription() {
+ return "*.txt"; // NOI18N
+ }
+ });
+ if (license != null) {
+// try {
+// GenericDescriptionProperty<String[]> descriptionData = m_Handler.getDescriptionData();
+ // write the simple name out: that one will appear in the panel; complete name is stored for later copying
+// descriptionData.setPropertyAndLocale(m_CurrentLocale, new String[]{license.getName(), license.getCanonicalPath()});
+ m_licensePanel.setText(license.getPath());
+// } catch (IOException ex) {
+// LogWriter.getLogWriter().printStackTrace(ex);
+// }
+ }
+
+}//GEN-LAST:event_jButtonBrowseLicenseActionPerformed
+
+private void jComboBoxCurrentLocaleActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jComboBoxCurrentLocaleActionPerformed
+ // keep publisher link as service
+ String defaultLocale = m_Handler.getDefaultShortLocale();
+ GenericDescriptionProperty<String[]> publisherData = m_Handler.getPublisherData();
+ String[] object = publisherData.getPropertyForLocale(defaultLocale);
+ String publisherLink = null;
+ if (object != null && object.length == 2) {
+ publisherLink = object[1];
+ }
+ else {
+ publisherLink = jPanelPublisherLink.getText();
+ }
+
+ // load all data of new locale
+ m_CurrentLocale = jComboBoxCurrentLocale.getSelectedItem().toString();
+ loadData(publisherLink);
+}//GEN-LAST:event_jComboBoxCurrentLocaleActionPerformed
+
+private void jButtonBrowseHiDefIconActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jButtonBrowseHiDefIconActionPerformed
+
+ File icon = openBrowseDialog(new FileFilter() {
+ @Override
+ public boolean accept(File f) {
+ if (f.isDirectory()) { // always accept dirs
+ return true;
+ }
+ else {
+ String name = f.getName();
+ int index = name.length() - 4;
+ if (index > 0) {
+ String ext = name.substring(index);
+ if (ext.equalsIgnoreCase(".ico") ||
+ ext.equalsIgnoreCase(".bmp") ||
+ ext.equalsIgnoreCase(".png") ||
+ ext.equalsIgnoreCase(".jpg") ||
+ ext.equalsIgnoreCase(".jpeg") ||
+ ext.equalsIgnoreCase(".gif")) { // NOI18N
+ return true;
+ }
+ }
+ }
+ return false;
+ }
+ @Override
+ public String getDescription() {
+ return "*.ico *.bmp *.png *.jpeg *.gif"; // NOI18N
+ }
+ });
+ if (icon != null) {
+// m_Handler.setIconFile(icon);
+ m_highDefinitionIconPanel.setText(icon.getPath());
+ }
+
+}//GEN-LAST:event_jButtonBrowseHiDefIconActionPerformed
+
+private void jComboBoxDefaultLocaleActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jComboBoxDefaultLocaleActionPerformed
+
+ // store new default locale
+ String longLocale = jComboBoxDefaultLocale.getSelectedItem().toString();
+ String shortLocale = LanguageDefinition.getLanguageShortNameForName(longLocale);
+ if (shortLocale != null) {
+ m_Handler.setDefaultShortLocale(shortLocale);
+ }
+
+}//GEN-LAST:event_jComboBoxDefaultLocaleActionPerformed
+
+ // Variables declaration - do not modify//GEN-BEGIN:variables
+ private javax.swing.JButton jButtonBrowseDescription;
+ private javax.swing.JButton jButtonBrowseHiDefIcon;
+ private javax.swing.JButton jButtonBrowseIcon;
+ private javax.swing.JButton jButtonBrowseLicense;
+ private javax.swing.JComboBox jComboBoxCurrentLocale;
+ private javax.swing.JComboBox jComboBoxDefaultLocale;
+ private javax.swing.JLabel jErrorLabel;
+ private javax.swing.JLabel jLabel1;
+ private javax.swing.JLabel jLabelCurrentLocale;
+ private javax.swing.JLabel jLabelDefaultLocale;
+ private javax.swing.JLabel jLabelDescription;
+ private javax.swing.JLabel jLabelDisplayName;
+ private javax.swing.JLabel jLabelIcon;
+ private javax.swing.JLabel jLabelIcon1;
+ private javax.swing.JLabel jLabelLicense;
+ private javax.swing.JLabel jLabelPublisherLink;
+ private javax.swing.JLabel jLabelPublisherName;
+ private javax.swing.JPanel jPanel1;
+ private javax.swing.JPanel jPanel2;
+ private javax.swing.JPanel jPanel3;
+ private javax.swing.JPanel jPanel4;
+ private javax.swing.JPanel jPanelDisplayName;
+ private org.openoffice.extensions.projecttemplates.actions.panel.SimpleEditPanel jPanelPublisherLink;
+ private org.openoffice.extensions.projecttemplates.actions.panel.SimpleEditPanel jPanelPublisherName;
+ private javax.swing.JRadioButton jRadioButtonAdmin;
+ private javax.swing.JRadioButton jRadioButtonUser;
+ private javax.swing.JSeparator jSeparator1;
+ // End of variables declaration//GEN-END:variables
+
+ /**
+ * load data for a locale and display it
+ */
+ private void loadData(String oldPublisherLink) {
+ GenericDescriptionProperty<String> displayName = m_Handler.getDisplayData();
+ if (displayName != null && displayName.getSize() > 0) {
+ String prop = displayName.getPropertyForLocale(m_CurrentLocale);
+ if (prop != null) {
+ m_displayNamePanel.setText(prop);
+ } else {
+ m_displayNamePanel.setText(""); // NOI18N
+ }
+ }
+
+ GenericDescriptionProperty<String> description = m_Handler.getDescriptionData();
+ if (description != null && description.getSize() > 0) {
+ String prop = description.getPropertyForLocale(m_CurrentLocale);
+ if (prop != null) {
+ m_descriptionPanel.setText(prop);
+ } else {
+ m_descriptionPanel.setText(""); // NOI18N
+ }
+ }
+
+ GenericDescriptionProperty<String[]> publisherData = m_Handler.getPublisherData();
+ if (publisherData != null && publisherData.getSize() > 0) {
+ String[] props = publisherData.getPropertyForLocale(m_CurrentLocale);
+ if (props != null) {
+ jPanelPublisherName.setText(props[0]);
+ // select if the link already exists or the existing one is kept
+ if (props[1].length() == 0) { // keep the old one
+ jPanelPublisherLink.setText(oldPublisherLink);
+ }
+ else {
+ jPanelPublisherLink.setText(props[1]);
+ }
+ } else {
+ jPanelPublisherName.setText(""); // NOI18N
+ // no further editing necessary: either the old link exists or
+ // it's empty anyway
+ jPanelPublisherLink.setText(oldPublisherLink);
+ }
+ }
+
+ GenericDescriptionProperty<String> license = m_Handler.getLicenseFiles();
+ if (license != null && license.getSize() > 0) {
+ String props = license.getPropertyForLocale(m_CurrentLocale);
+ if (props != null) {
+ m_licensePanel.setText(props);
+ } else {
+ m_licensePanel.setText("");
+ }
+ }
+ VerifyData verifyer = VerifyData.getVerifyer();
+ if (!verifyer.verifyLocalizedData(m_Handler)) {
+ String message = verifyer.getErrorMessage();
+ jErrorLabel.setText(message);
+ jErrorLabel.setIcon(verifyer.getErrorIcon());
+ }
+ else {
+ jErrorLabel.setText("");
+ jErrorLabel.setIcon(null);
+ }
+ }
+
+ /**
+ * Icon is not depending on locale, so set it once
+ */
+ private void loadIconAndAcceptBy() {
+ // icon
+ String icon = m_Handler.getIconFile();
+ if (icon != null) {
+ m_defaultIconPanel.setText(icon);
+ }
+ else {
+ m_defaultIconPanel.setText(""); // NOI18N
+ }
+ String highdefIcon = m_Handler.getHighDefIconFile();
+ if (highdefIcon != null) {
+ m_highDefinitionIconPanel.setText(highdefIcon);
+ }
+ else {
+ m_highDefinitionIconPanel.setText(""); // NOI18N
+ }
+ // accept by
+ if (m_Handler.getLicenseAcceptByUser()) {
+ jRadioButtonUser.setSelected(true);
+ }
+ else {
+ jRadioButtonAdmin.setSelected(true);
+ }
+ if (!m_Handler.hasLicenseFiles()) {
+ jRadioButtonAdmin.setEnabled(false);
+ jRadioButtonUser.setEnabled(false);
+ }
+ }
+
+ public HelpCtx getHelpCtx() {
+ return new HelpCtx("org.openoffice.extensions.actions.display.properties"); // NOI18N
+ }
+
+ /**
+ * update the text fields when the content of one has changed
+ * @param e
+ */
+ private void storeDataFromUserEntry(DocumentEvent e) {
+ Document doc = e.getDocument();
+ if (doc.equals(m_displayNamePanel.getDocument())) {
+ GenericDescriptionProperty<String> displayName = m_Handler.getDisplayData();
+ String text = m_displayNamePanel.getText();
+ if (text.length() > 0) {
+ displayName.setPropertyAndLocale(m_CurrentLocale, text);
+ } else {
+ displayName.deletePropertyAndLocale(m_CurrentLocale);
+ }
+ }
+ else if (doc.equals(jPanelPublisherLink.getDocument())) {
+ GenericDescriptionProperty<String[]> publisherData = m_Handler.getPublisherData();
+ String link = jPanelPublisherLink.getText();
+ String[] prop = publisherData.getPropertyForLocale(m_CurrentLocale);
+ if (link.length() > 0) {
+ if (prop == null) {
+ prop = new String[2];
+ }
+ prop[1] = link;
+ publisherData.setPropertyAndLocale(m_CurrentLocale, prop);
+ } else {
+ if (prop == null || prop[0] == null || prop[0].length() == 0) {
+ publisherData.deletePropertyAndLocale(m_CurrentLocale);
+ }
+ }
+ }
+ else if (doc.equals(jPanelPublisherName.getDocument())) {
+ GenericDescriptionProperty<String[]> publisherData = m_Handler.getPublisherData();
+ String text = jPanelPublisherName.getText();
+ String[] prop = publisherData.getPropertyForLocale(m_CurrentLocale);
+ if (text.length() > 0) {
+ if (prop == null) {
+ prop = new String[2];
+ }
+ prop[0] = text;
+ publisherData.setPropertyAndLocale(m_CurrentLocale, prop);
+ } else {
+ if (prop == null || prop[1] == null || prop[1].length() == 0) {
+ publisherData.deletePropertyAndLocale(m_CurrentLocale);
+ }
+ }
+ }
+ else if (doc.equals(m_descriptionPanel.getDocument())) {
+ GenericDescriptionProperty<String> description = m_Handler.getDescriptionData();
+ String text = m_descriptionPanel.getText();
+ if (text.length() > 0) {
+ description.setPropertyAndLocale(m_CurrentLocale, text);
+ } else {
+ description.deletePropertyAndLocale(m_CurrentLocale);
+ }
+ }
+ else if (doc.equals(m_licensePanel.getDocument())){
+ GenericDescriptionProperty<String> license = m_Handler.getLicenseFiles();
+ String text = m_licensePanel.getText();
+ if (text.length() > 0) {
+ license.setPropertyAndLocale(m_CurrentLocale, text);
+ } else {
+ license.deletePropertyAndLocale(m_CurrentLocale);
+ }
+ if (m_Handler.hasLicenseFiles()) { // first license file entry: enable user/admin buttons
+ jRadioButtonAdmin.setEnabled(true);
+ jRadioButtonUser.setEnabled(true);
+ m_Handler.setLicenseAcceptByUser(jRadioButtonUser.isSelected());
+ }
+ else {
+ jRadioButtonAdmin.setEnabled(false);
+ jRadioButtonUser.setEnabled(false);
+ }
+ }
+ else if (doc.equals(m_defaultIconPanel.getDocument())) {
+ String file = m_defaultIconPanel.getText();
+ File iconFile = new File(file);
+ if (!iconFile.canRead()) {
+ String imagesDir = (String)ProjectTypeHelper.getObjectFromUnoProperties(m_projDir, "images.dir"); // NOI18N
+ if (imagesDir != null) {
+ FileObject imagesFileObject = m_projDir.getFileObject(imagesDir);
+ if (imagesFileObject != null) {
+ FileObject iconFileObject = imagesFileObject.getFileObject(file);
+ if (iconFileObject != null)
+ iconFile = FileUtil.toFile(iconFileObject);
+ }
+ }
+ }
+ if (iconFile.canRead()) {
+ m_Handler.setIconFile(iconFile.getPath());
+ }
+ }
+ else if (doc.equals(m_highDefinitionIconPanel.getDocument())) {
+ String file = m_highDefinitionIconPanel.getText();
+ File iconFile = new File(file);
+ if (!iconFile.canRead()) {
+ String imagesDir = (String)ProjectTypeHelper.getObjectFromUnoProperties(m_projDir, "images.dir"); // NOI18N
+ if (imagesDir != null) {
+ FileObject imagesFileObject = m_projDir.getFileObject(imagesDir);
+ if (imagesFileObject != null) {
+ FileObject iconFileObject = imagesFileObject.getFileObject(file);
+ if (iconFileObject != null)
+ iconFile = FileUtil.toFile(iconFileObject);
+ }
+ }
+ }
+ if (iconFile.canRead()) {
+ m_Handler.setHighDefIconFile(iconFile.getPath());
+ }
+ }
+ else {
+ // error
+ LogWriter.getLogWriter().log(LogWriter.LEVEL_CRITICAL, "No known document on sheet");
+ }
+ VerifyData verifyer = VerifyData.getVerifyer();
+ if (!verifyer.verifyLocalizedData(m_Handler)) {
+ String message = verifyer.getErrorMessage();
+ jErrorLabel.setText(message);
+ jErrorLabel.setIcon(verifyer.getErrorIcon());
+ }
+ else {
+ jErrorLabel.setText("");
+ jErrorLabel.setIcon(null);
+ }
+ }
+
+// private class MyComboBoxModel extends DefaultComboBoxModel {
+// public MyComboBoxModel(Object[] items) {
+// super(items);
+// }
+// @Override
+// public Object getSelectedItem() {
+// String locale = super.getSelectedItem().toString();
+// Font f = getFont();
+// Font newFont = null;
+// if (GenericDescriptionProperty.hasDataForLocale(locale)) {
+// newFont = new Font(f.getName(), Font.BOLD, f.getSize());
+// } else {
+// newFont = new Font(f.getName(), Font.PLAIN, f.getSize());
+// }
+// setFont(newFont);
+// return locale;
+// }
+// }
+
+ /**
+ * Own Cell Renderer implementation: locales with entries are bold
+ */
+ private class MyListCellRenderer extends JLabel implements ListCellRenderer {
+ public Component getListCellRendererComponent(JList list, Object value, int index, boolean isSelected, boolean cellHasFocus) {
+ String locale = value.toString();
+ setText(locale);
+ Font f = this.getFont();
+ Font newFont = null;
+ if (m_Handler.hasDataForLocale(locale)) {
+ newFont = new Font(f.getName(), Font.BOLD, f.getSize());
+ } else {
+ newFont = new Font(f.getName(), Font.PLAIN, f.getSize());
+ }
+ setFont(newFont);
+ return this;
+ }
+ }
+
+ /**
+ * ActionListener method for reacting on clicks:
+ * Click "..." button in
+ * description, license and icon: display/edit file.
+ * Click on
+ * @param e The Action Event
+ */
+ public void actionPerformed(ActionEvent e) {
+ String command = e.getActionCommand();
+ if (command.equals(DEF_ICON) || command.equals(HIGH_DEF_ICON)) { // NOI18N
+ String icon = null;
+ if (command.equals(DEF_ICON)) {
+ icon = m_Handler.getIconFile();
+ }
+ else {
+ icon = m_Handler.getHighDefIconFile();
+ }
+ String title = NbBundle.getMessage(PropsPanel.class, "PropsPanel.ShowIcon.Title"); // NOI18N
+ File iconFile = m_Handler.getProjectOrSystemPath(icon);
+ URL url = null;
+ if (iconFile != null) {
+ try {
+ url = iconFile.toURI().toURL();
+ } catch (MalformedURLException ex) {
+ LogWriter.getLogWriter().printStackTrace(ex);
+ }
+ }
+ if (url != null && iconFile.canRead()) {
+ // these width and height look good with standard icon size
+ final int PREFERRED_WIDTH = 200;
+ final int PREFERRED_HEIGHT = 80;
+ ImageIcon iImage = new ImageIcon(url);
+ int width = iImage.getIconWidth();
+ int height = iImage.getIconHeight();
+ JLabel iconLabel = new JLabel(iImage);
+ JPanel jPanel = new JPanel();
+ jPanel.add(iconLabel);
+ if (width < PREFERRED_WIDTH) {
+ width = PREFERRED_WIDTH;
+ }
+ if (height < PREFERRED_HEIGHT) {
+ height = PREFERRED_HEIGHT;
+ }
+ jPanel.setPreferredSize(new Dimension(width, height));
+ NotifyDescriptor ddscr = new NotifyDescriptor.Message(jPanel, NotifyDescriptor.PLAIN_MESSAGE);
+ ddscr.setTitle(title);
+ DialogDisplayer.getDefault().notify(ddscr);
+ }
+ else { // show error dialog: no reaction on button is bad interaction
+ String error = NbBundle.getMessage(PropsPanel.class, "PropsPanel.ShowIcon.ErrorMessage"); // NOI18N
+ NotifyDescriptor ddscr = new NotifyDescriptor.Message(error);
+ ddscr.setTitle(title);
+ DialogDisplayer.getDefault().notify(ddscr);
+ }
+ }
+ else if (command.equals(DESCRIPTION)) { // NOI18N
+ GenericDescriptionProperty<String> descriptionData = m_Handler.getDescriptionData();
+ String prop = descriptionData.getPropertyForLocale(m_CurrentLocale);
+ String title = NbBundle.getMessage(PropsPanel.class, "PropsPanel.EditDescription.Title"); // NOI18N
+ editDescriptionOrLicenseFile(prop, title); // NOI18N
+ }
+ else if (command.equals(LICENSE)) { // NOI18N
+ GenericDescriptionProperty<String> licenseData = m_Handler.getLicenseFiles();
+ String prop = licenseData.getPropertyForLocale(m_CurrentLocale);
+ String title = NbBundle.getMessage(PropsPanel.class, "PropsPanel.EditLicense.Title"); // NOI18N
+ editDescriptionOrLicenseFile(prop, title); // NOI18N
+ }
+ else if (command.equals(USER)) {
+ m_Handler.setLicenseAcceptByUser(true);
+ }
+ else if (command.equals(ADMIN)) {
+ m_Handler.setLicenseAcceptByUser(false);
+ }
+ }
+
+ /**
+ * Show dialog for editing license or dialog files. Since both are text
+ * files, use just one method.
+ * @param prop String array containing the license file
+ * @param baseProjectPropName name for reading the directory where licenses or descriptions are stored
+ * @param title string for the title of the editing panel
+ */
+ private void editDescriptionOrLicenseFile(String prop, String dialogTitle) {
+ final File textFile = m_Handler.getProjectOrSystemPath(prop);
+ StringBuffer content = new StringBuffer();
+ String filePath = NbBundle.getMessage(PropsPanel.class, "EditTextContentPanel.jFileLabel.text"); // NOI18N
+ if (textFile != null && textFile.isFile()) {
+ char[] cbuf = new char[256];
+ if (textFile.canRead()) {
+ BufferedReader read = null;
+ try {
+ read = new BufferedReader(new FileReader(textFile));
+ while (read.ready()) {
+ int bytesRead = read.read(cbuf);
+ content.append(cbuf, 0, bytesRead);
+ }
+ } catch (FileNotFoundException ex) {
+ LogWriter.getLogWriter().printStackTrace(ex);
+ } catch (IOException ex) {
+ LogWriter.getLogWriter().printStackTrace(ex);
+ } finally {
+ try {
+ if (read != null) {
+ read.close();
+ }
+ } catch (IOException ex) {
+ LogWriter.getLogWriter().printStackTrace(ex);
+ }
+ }
+ }
+ try {
+ filePath = filePath.concat(textFile.getCanonicalPath());
+ } catch (IOException ex) {
+ LogWriter.getLogWriter().printStackTrace(ex);
+ filePath = filePath.concat(textFile.getPath());
+ }
+ }
+ final EditTextContentPanel panel = new EditTextContentPanel(filePath);
+ panel.setTextContent(content.toString());
+ DialogDescriptor ddscr = new DialogDescriptor(panel, dialogTitle, true,
+ DialogDescriptor.OK_CANCEL_OPTION, DialogDescriptor.OK_OPTION, null);
+ // complicated writing: either (file can write) or (file does not exist and parent can write)
+ boolean enableOK = false;
+ if (textFile != null && textFile.getParentFile() != null) {
+ enableOK = textFile.canWrite() || (!textFile.exists() && textFile.getParentFile().canWrite());
+ }
+ ddscr.setValid(enableOK);
+ ddscr.setButtonListener(new ActionListener() {
+ public void actionPerformed(ActionEvent e) {
+ if (e.getActionCommand().equals("OK")) { // NOI18N
+ FileWriter writer = null;
+ try {
+ // NOI18N
+ String text = panel.getTextContent();
+ writer = new FileWriter(textFile);
+ writer.write(text);
+ } catch (IOException ex) {
+ LogWriter.getLogWriter().printStackTrace(ex);
+ } finally {
+ try {
+ if (writer != null) {
+ writer.close();
+ }
+ } catch (IOException ex) {
+ LogWriter.getLogWriter().printStackTrace(ex);
+ }
+ }
+ }
+ }
+ });
+ Dialog d = DialogDisplayer.getDefault().createDialog(ddscr);
+ d.setVisible(true);
+ }
+
+ /**
+ * DocumentListener impelentation
+ * @param e The Event
+ */
+ public void insertUpdate(DocumentEvent e) {
+ storeDataFromUserEntry(e);
+ }
+
+ /**
+ * DocumentListener impelentation
+ * @param e The Event
+ */
+ public void removeUpdate(DocumentEvent e) {
+ storeDataFromUserEntry(e);
+ }
+
+ /**
+ * DocumentListener impelentation
+ * @param e The Event
+ */
+ public void changedUpdate(DocumentEvent e) {
+ storeDataFromUserEntry(e);
+ }
+
+}
Added: incubator/ooo/devtools/netbeansintegration/src/org/openoffice/extensions/projecttemplates/actions/panel/SimpleEditPanel.form
URL: http://svn.apache.org/viewvc/incubator/ooo/devtools/netbeansintegration/src/org/openoffice/extensions/projecttemplates/actions/panel/SimpleEditPanel.form?rev=1236486&view=auto
==============================================================================
--- incubator/ooo/devtools/netbeansintegration/src/org/openoffice/extensions/projecttemplates/actions/panel/SimpleEditPanel.form (added)
+++ incubator/ooo/devtools/netbeansintegration/src/org/openoffice/extensions/projecttemplates/actions/panel/SimpleEditPanel.form Fri Jan 27 01:29:33 2012
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+
+<Form version="1.5" maxVersion="1.6" type="org.netbeans.modules.form.forminfo.JPanelFormInfo">
+ <Properties>
+ <Property name="background" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor">
+ <Color blue="ff" green="ff" red="ff" type="rgb"/>
+ </Property>
+ </Properties>
+ <AuxValues>
+ <AuxValue name="FormSettings_autoResourcing" type="java.lang.Integer" value="1"/>
+ <AuxValue name="FormSettings_autoSetComponentName" type="java.lang.Boolean" value="false"/>
+ <AuxValue name="FormSettings_generateMnemonicsCode" type="java.lang.Boolean" value="false"/>
+ <AuxValue name="FormSettings_i18nAutoMode" type="java.lang.Boolean" value="true"/>
+ <AuxValue name="FormSettings_layoutCodeTarget" type="java.lang.Integer" value="2"/>
+ <AuxValue name="FormSettings_listenerGenerationStyle" type="java.lang.Integer" value="0"/>
+ <AuxValue name="FormSettings_variablesLocal" type="java.lang.Boolean" value="false"/>
+ <AuxValue name="FormSettings_variablesModifier" type="java.lang.Integer" value="2"/>
+ </AuxValues>
+
+ <Layout>
+ <DimensionLayout dim="0">
+ <Group type="103" groupAlignment="0" attributes="0">
+ <Component id="jTextField1" alignment="0" pref="410" max="32767" attributes="0"/>
+ </Group>
+ </DimensionLayout>
+ <DimensionLayout dim="1">
+ <Group type="103" groupAlignment="0" attributes="0">
+ <Component id="jTextField1" alignment="0" pref="20" max="32767" attributes="0"/>
+ </Group>
+ </DimensionLayout>
+ </Layout>
+ <SubComponents>
+ <Component class="javax.swing.JTextField" name="jTextField1">
+ <Properties>
+ <Property name="border" type="javax.swing.border.Border" editor="org.netbeans.modules.form.editors2.BorderEditor">
+ <Border info="null"/>
+ </Property>
+ <Property name="opaque" type="boolean" value="false"/>
+ </Properties>
+ </Component>
+ </SubComponents>
+</Form>
Added: incubator/ooo/devtools/netbeansintegration/src/org/openoffice/extensions/projecttemplates/actions/panel/SimpleEditPanel.java
URL: http://svn.apache.org/viewvc/incubator/ooo/devtools/netbeansintegration/src/org/openoffice/extensions/projecttemplates/actions/panel/SimpleEditPanel.java?rev=1236486&view=auto
==============================================================================
--- incubator/ooo/devtools/netbeansintegration/src/org/openoffice/extensions/projecttemplates/actions/panel/SimpleEditPanel.java (added)
+++ incubator/ooo/devtools/netbeansintegration/src/org/openoffice/extensions/projecttemplates/actions/panel/SimpleEditPanel.java Fri Jan 27 01:29:33 2012
@@ -0,0 +1,100 @@
+/*************************************************************************
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * $RCSfile: SimpleEditPanel.java,v $
+ *
+ * $Revision: 1.3 $
+ *
+ * last change: $Author: sg $ $Date: 2009/07/06 14:51:28 $
+ *
+ * The Contents of this file are made available subject to
+ * the terms of GNU Lesser General Public License Version 2.1.
+ *
+ *
+ * GNU Lesser General Public License Version 2.1
+ * =============================================
+ * Copyright 2005 by Sun Microsystems, Inc.
+ * 901 San Antonio Road, Palo Alto, CA 94303, USA
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License version 2.1, as published by the Free Software Foundation.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston,
+ * MA 02111-1307 USA
+ *
+ ************************************************************************/
+package org.openoffice.extensions.projecttemplates.actions.panel;
+
+import javax.swing.text.Document;
+
+/**
+ *
+ * @author sg128468
+ */
+public class SimpleEditPanel extends javax.swing.JPanel {
+
+ /** Creates new form EditAndOpenPanel */
+ public SimpleEditPanel() {
+ initComponents();
+ }
+
+// public void setButtonHight(int height) {
+// Dimension d = jButton1.getSize();
+// d.height = height;
+// jButton1.setSize(d);
+// }
+
+ public void setText(String text) {
+ this.jTextField1.setText(text);
+ }
+
+ public String getText() {
+ return this.jTextField1.getText();
+ }
+
+ public Document getDocument() {
+ return this.jTextField1.getDocument();
+ }
+
+ /** This method is called from within the constructor to
+ * initialize the form.
+ * WARNING: Do NOT modify this code. The content of this method is
+ * always regenerated by the Form Editor.
+ */
+ // <editor-fold defaultstate="collapsed" desc="Generated Code">//GEN-BEGIN:initComponents
+ private void initComponents() {
+
+ jTextField1 = new javax.swing.JTextField();
+
+ setBackground(new java.awt.Color(255, 255, 255));
+
+ jTextField1.setBorder(null);
+ jTextField1.setOpaque(false);
+
+ org.jdesktop.layout.GroupLayout layout = new org.jdesktop.layout.GroupLayout(this);
+ this.setLayout(layout);
+ layout.setHorizontalGroup(
+ layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
+ .add(jTextField1, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, 410, Short.MAX_VALUE)
+ );
+ layout.setVerticalGroup(
+ layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
+ .add(jTextField1, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, 20, Short.MAX_VALUE)
+ );
+ }// </editor-fold>//GEN-END:initComponents
+
+
+ // Variables declaration - do not modify//GEN-BEGIN:variables
+ private javax.swing.JTextField jTextField1;
+ // End of variables declaration//GEN-END:variables
+
+}