Revision: 14807
http://gate.svn.sourceforge.net/gate/?rev=14807&view=rev
Author: markagreenwood
Date: 2011-12-19 10:17:42 +0000 (Mon, 19 Dec 2011)
Log Message:
-----------
reused the Icon table cell renderer from the available plugins pane for the
update sites table to fix a weird L&F bug that stops the dialog being created
at all under GTK+ or Nimbus
Modified Paths:
--------------
gate/trunk/src/gate/gui/creole/manager/AvailablePlugins.java
gate/trunk/src/gate/gui/creole/manager/PluginUpdateManager.java
Added Paths:
-----------
gate/trunk/src/gate/swing/IconTableCellRenderer.java
Modified: gate/trunk/src/gate/gui/creole/manager/AvailablePlugins.java
===================================================================
--- gate/trunk/src/gate/gui/creole/manager/AvailablePlugins.java
2011-12-19 02:28:54 UTC (rev 14806)
+++ gate/trunk/src/gate/gui/creole/manager/AvailablePlugins.java
2011-12-19 10:17:42 UTC (rev 14807)
@@ -30,6 +30,7 @@
import gate.resources.img.svg.ResetIcon;
import gate.resources.img.svg.UserPluginIcon;
import gate.swing.CheckBoxTableCellRenderer;
+import gate.swing.IconTableCellRenderer;
import gate.swing.XJFileChooser;
import gate.swing.XJTable;
import gate.util.GateException;
@@ -85,7 +86,6 @@
import javax.swing.event.ListSelectionEvent;
import javax.swing.event.ListSelectionListener;
import javax.swing.table.AbstractTableModel;
-import javax.swing.table.DefaultTableCellRenderer;
@SuppressWarnings("serial")
public class AvailablePlugins extends JPanel {
@@ -508,23 +508,6 @@
}
}
- private class IconTableCellRenderer extends DefaultTableCellRenderer {
-
- @Override
- public Component getTableCellRendererComponent(JTable table, Object value,
- boolean isSelected, boolean hasFocus, int row, int column) {
- if(value instanceof Icon) {
- super.getTableCellRendererComponent(table, "", isSelected, hasFocus,
- row, column);
- setIcon((Icon)value);
- return this;
- } else {
- return super.getTableCellRendererComponent(table, value, isSelected,
- hasFocus, row, column);
- }
- }
- }
-
private class ResourcesListCellRenderer extends DefaultListCellRenderer {
@Override
Modified: gate/trunk/src/gate/gui/creole/manager/PluginUpdateManager.java
===================================================================
--- gate/trunk/src/gate/gui/creole/manager/PluginUpdateManager.java
2011-12-19 02:28:54 UTC (rev 14806)
+++ gate/trunk/src/gate/gui/creole/manager/PluginUpdateManager.java
2011-12-19 10:17:42 UTC (rev 14807)
@@ -31,6 +31,7 @@
import gate.resources.img.svg.UpdatesIcon;
import gate.resources.img.svg.UserPluginIcon;
import gate.swing.CheckBoxTableCellRenderer;
+import gate.swing.IconTableCellRenderer;
import gate.swing.SpringUtilities;
import gate.swing.XJFileChooser;
import gate.swing.XJTable;
@@ -604,13 +605,13 @@
tblUpdates.getColumnModel().getColumn(0).setMaxWidth(100);
tblUpdates.getColumnModel().getColumn(2).setMaxWidth(100);
tblUpdates.getColumnModel().getColumn(3).setMaxWidth(100);
-
+
tblUpdates.setSortable(true);
tblUpdates.setSortedColumn(1);
Collator collator = Collator.getInstance(Locale.ENGLISH);
collator.setStrength(Collator.TERTIARY);
- tblUpdates.setComparator(1, collator);
-
+ tblUpdates.setComparator(1, collator);
+
JScrollPane scroller = new JScrollPane(tblUpdates);
scroller.setVerticalScrollBarPolicy(JScrollPane.VERTICAL_SCROLLBAR_ALWAYS);
return scroller;
@@ -619,21 +620,20 @@
private Component buildAvailable() {
XJTable tblAvailable = new XJTable();
tblAvailable.setModel(availableModel);
-
-
+
tblAvailable.getColumnModel().getColumn(0)
.setCellRenderer(new CheckBoxTableCellRenderer());
tblAvailable.setSortable(false);
tblAvailable.setSelectionMode(ListSelectionModel.SINGLE_SELECTION);
tblAvailable.getColumnModel().getColumn(0).setMaxWidth(100);
tblAvailable.getColumnModel().getColumn(2).setMaxWidth(100);
-
+
tblAvailable.setSortable(true);
tblAvailable.setSortedColumn(1);
Collator collator = Collator.getInstance(Locale.ENGLISH);
collator.setStrength(Collator.TERTIARY);
tblAvailable.setComparator(1, collator);
-
+
JScrollPane scroller = new JScrollPane(tblAvailable);
scroller.setVerticalScrollBarPolicy(JScrollPane.VERTICAL_SCROLLBAR_ALWAYS);
return scroller;
@@ -646,6 +646,8 @@
pnlUpdateSites.setBorder(BorderFactory
.createTitledBorder("Plugin Repositories:"));
final XJTable tblSites = new XJTable(sitesModel);
+ tblSites.getColumnModel().getColumn(0)
+ .setCellRenderer(new IconTableCellRenderer());
tblSites.setSelectionMode(ListSelectionModel.SINGLE_SELECTION);
JScrollPane scroller = new JScrollPane(tblSites);
Added: gate/trunk/src/gate/swing/IconTableCellRenderer.java
===================================================================
--- gate/trunk/src/gate/swing/IconTableCellRenderer.java
(rev 0)
+++ gate/trunk/src/gate/swing/IconTableCellRenderer.java 2011-12-19
10:17:42 UTC (rev 14807)
@@ -0,0 +1,24 @@
+package gate.swing;
+
+import java.awt.Component;
+
+import javax.swing.Icon;
+import javax.swing.JTable;
+import javax.swing.table.DefaultTableCellRenderer;
+
+public class IconTableCellRenderer extends DefaultTableCellRenderer {
+
+ @Override
+ public Component getTableCellRendererComponent(JTable table, Object value,
+ boolean isSelected, boolean hasFocus, int row, int column) {
+ if(value instanceof Icon) {
+ super.getTableCellRendererComponent(table, "", isSelected, hasFocus,
+ row, column);
+ setIcon((Icon)value);
+ return this;
+ } else {
+ return super.getTableCellRendererComponent(table, value, isSelected,
+ hasFocus, row, column);
+ }
+ }
+}
\ No newline at end of file
This was sent by the SourceForge.net collaborative development platform, the
world's largest Open Source development site.
------------------------------------------------------------------------------
Learn Windows Azure Live! Tuesday, Dec 13, 2011
Microsoft is holding a special Learn Windows Azure training event for
developers. It will provide a great way to learn Windows Azure and what it
provides. You can attend the event by watching it streamed LIVE online.
Learn more at http://p.sf.net/sfu/ms-windowsazure
_______________________________________________
GATE-cvs mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/gate-cvs