source: other-projects/FileTransfer-WebSocketPair/testGXTWithGreenstone/src/org/greenstone/gatherer/feedback/CompListener.java@ 33053

Last change on this file since 33053 was 33053, checked in by ak19, 5 years ago

I still had some stuff of Nathan Kelly's (FileTransfer-WebSocketPair) sitting on my USB. Had already commited the Themes folder at the time, 2 years back. Not sure if he wanted this additional folder commited. But I didn't want to delete it and decided it will be better off on SVN. When we use his project, if we find we didn't need this test folder, we can remove it from svn then.

File size: 22.5 KB
Line 
1package org.greenstone.gatherer.feedback;
2
3import org.omg.IOP.ComponentIdHelper;
4import java.awt.*;
5import java.io.*;
6import java.util.*;
7import javax.swing.*;
8import javax.swing.tree.*;
9import javax.swing.table.*;
10import javax.swing.text.*;
11import java.awt.image.*;
12import javax.imageio.ImageIO;
13import javax.swing.plaf.*;
14import javax.swing.plaf.basic.*;
15import javax.swing.colorchooser.*;
16import java.awt.event.*;
17import javax.swing.event.*;
18import java.text.MessageFormat;
19import javax.swing.plaf.metal.MetalIconFactory.*;
20import javax.swing.plaf.metal.MetalIconFactory;
21import javax.swing.plaf.basic.BasicInternalFrameTitlePane;
22import javax.swing.plaf.metal.MetalInternalFrameTitlePane;
23
24/**
25 * In general, this class will get add special listener
26 * to a Container and of all the components inside it.
27 * <p>This class will also add special listener to the Container and each of the components inside
28 * the Container. So, it will allows special listener to record and listen each of the actions
29 * the user do to the Container or any of the components inside it. The special listener
30 * is an instance of ActionRecorderDialog.</p>
31 * <p>This class will only recognized all the components that is belongs to the javax.swing package
32 * which are all the implementing classes of RootPaneContainer interface and all the direct known
33 * subclasses of JComponent. All the other components will be stated simply as Container
34 * and user cannot really get much information out of it.</p>
35 * <p>The added special listener to this component is as what its allowed in API, if the component
36 * have some modified listener added to it then that action will not be known and recorded by
37 * the special listener.</p>
38 *
39 * @author Veronica Liesaputra
40 */
41public class CompListener
42{
43 /**
44 * This variable will hold the special listener that will listen and record any of the
45 * actions user do to the Container and any of the components inside it.
46 */
47 private ActionRecorderDialog m;
48
49 /**
50 * This variable will hold the pair of the component and the model of the component.
51 * With this variable allows ActionRecorderDialog listener to know which component the model that fires an action
52 * belongs to. In this HashMap the model is the key and the component where the model belongs to is
53 * the value.
54 */
55 private HashMap hash;
56
57 /**
58 * This constructor will set the special listener, the locale and the hashmap to be used in
59 * this Container.
60 * (Precondition: dialog != null)
61 * @param dialog its the special listener that will listen and record all the action
62 * user do to any of the component inside the Container.
63 * @param h its the HashMap that will hold the pair of model with the component it belongs.
64 */
65 public CompListener
66 (ActionRecorderDialog dialog,HashMap h)
67 {
68 m = dialog;
69 hash = h;
70 }
71
72 /**
73 * If the JTextComponent is a JTextField then it will add the special action listener to it.
74 * (Precondition: txt != null)
75 * @param txt its the JTextComponent we want to get all the information from.
76 */
77 public void getTextAreaInfo(JTextComponent txt)
78 {
79 if (txt instanceof JTextField)
80 {
81 ((JTextField)txt).removeActionListener(m);
82 ((JTextField)txt).addActionListener(m);
83 }
84 }
85
86 /**
87 * This method will add the special action listener to the JButton.
88 * (Precondition: button != null)
89 * @param button its the JButton we want to get the information from.
90 */
91 public void getButtonInfo (JButton button)
92 {
93 button.removeActionListener(m);
94 button.addActionListener(m);
95 }
96
97 /**
98 * This method will get add the special change listener to the JProgressBar.
99 * (Precondition: bar != null)
100 * @param bar its the JProgressBar we want to get information from.
101 */
102 public void getProgressBarInfo (JProgressBar bar)
103 {
104 bar.removeChangeListener(m);
105 bar.addChangeListener(m);
106 }
107
108 /**
109 * This method will add the special change listener to the JSlider.
110 * (Precondition: slider != null)
111 * @param slider its the JSlider we want to get information from.
112 */
113 public void getSliderInfo (JSlider slider)
114 {
115 slider.removeChangeListener(m);
116 slider.addChangeListener(m);
117 }
118
119 /**
120 * This method will add the special change listener to the JSpinner.
121 * (Precondition: spinner != null)
122 * @param spinner its the JSpinner we want to the information from.
123 */
124 public void getSpinnerInfo (JSpinner spinner)
125 {
126 spinner.removeChangeListener(m);
127 spinner.addChangeListener(m);
128 }
129
130 /**
131 * Dummy method to get JLabel.
132 */
133 public void getLabelInfo(JLabel lbl)
134 {}
135
136 /**
137 * This method will add the special action listener to the JComboBox.
138 * (Precondition: box != null)
139 * @param box its the JComboBox we want to get information from.
140 */
141 public void getComboBoxInfo(JComboBox box)
142 {
143 ComboBoxModel cm;
144 cm = box.getModel();
145
146 box.removeActionListener(m);
147 box.addActionListener(m);
148 }
149
150 /**
151 * This method will add the special action listener to the JToggleButton.
152 * (Precondition: button != null)
153 * @param button its a JToggleButton inside the window.
154 */
155 public void getToggleButtonInfo (JToggleButton button)
156 {
157 button.removeActionListener(m);
158 button.addActionListener(m);
159 }
160
161 /**
162 * This method will add the special action listener to the JMenuItem.
163 * (Precondition: menuitem != null)
164 * @param menuitem its the JMenuItem we want to get the information from.
165 */
166 public void getMenuItemInfo (JMenuItem menuitem)
167 {
168 menuitem.removeActionListener(m);
169 menuitem.addActionListener(m);
170 }
171
172 /**
173 * This method will get all the components inside JMenuBar.
174 * (Precondition: menubar != null)
175 * @param menubar its the JMenuBar we want to get the information from.
176 */
177 public void getMenuBarInfo (JMenuBar menubar)
178 {
179 int i;
180 for (i= 0 ; i < menubar.getMenuCount() ; i++)
181 {
182 getInside(menubar.getMenu(i));
183 }
184 }
185
186 /**
187 * This method will add the special action and menu listener to the JMenu and
188 * get the components inside JMenu.
189 * (Precondition: menu != null)
190 * @param menu its the JMenu we want to the the information from.
191 */
192 public void getMenuInfo (JMenu menu)
193 {
194 menu.removeActionListener(m);
195 menu.removeMenuListener(m);
196 menu.addActionListener(m);
197 menu.addMenuListener(m);
198
199 int i;
200 for (i= 0 ; i < menu.getMenuComponentCount() ; i++)
201 {
202 getInside((Container)menu.getMenuComponent(i));
203 }
204 }
205
206 /**
207 * This method will get all the components inside the JApplet.
208 * (Precondition: applet != null)
209 * @param applet its the JApplet we want to get the information from.
210 */
211 public void getAppletInfo (JApplet applet)
212 {
213 Component[] group;
214 group = applet.getComponents();
215 int i;
216
217 if (group != null)
218 {
219 for (i = 0; i < group.length ; i++)
220 {
221 getInside((Container)applet.getComponent(i));
222 }
223 }
224 }
225
226 /**
227 * This method will get all the components inside the JWindow.
228 * (Precondition: window != null)
229 * @param window its the JWindow we want to get the information from.
230 */
231 public void getWindowInfo (JWindow window)
232 {
233 Component[] group;
234 group = window.getComponents();
235 int i;
236
237 if (group != null)
238 {
239 for (i = 0; i < group.length ; i++)
240 {
241 getInside((Container)window.getComponent(i));
242 }
243 }
244 }
245
246 /**
247 * This method will get all the components inside the JDialog.
248 * (Precondition: dialog != null)
249 * @param dialog its the JDialog we want to get the information from.
250 */
251 public void getDialogInfo (JDialog dialog)
252 {
253 Component[] group;
254 group = dialog.getComponents();
255 int i;
256
257 if (group != null)
258 {
259 for (i = 0; i < group.length ; i++)
260 {
261 getInside((Container)dialog.getComponent(i));
262 }
263 }
264 }
265
266 /**
267 * This method will get all the components inside the JInternalFrame.
268 * (Precondition: frame != null)
269 * @param frame its the JInternalFrame we want to get the information from.
270 */
271 public void getInternalFrameInfo (JInternalFrame frame)
272 {
273 Component[] group;
274 group = frame.getComponents();
275 int i;
276
277 if (group != null)
278 {
279 for (i = 0; i < group.length ; i++)
280 {
281 getInside((Container)frame.getComponent(i));
282 }
283 }
284 }
285
286 /**
287 * This method will get all the components inside the JFrame.
288 * (Precondition: frame != null)
289 * @param frame its the JFrame we want to get the information from.
290 */
291 public void getFrameInfo (JFrame frame)
292 {
293 Component[] group;
294 group = frame.getComponents();
295 int i;
296
297 if (group != null)
298 {
299 for (i = 0; i < group.length ; i++)
300 {
301 getInside((Container)frame.getComponent(i));
302 }
303 }
304 }
305
306 /**
307 * This method will get all the components inside the JPanel.
308 * (Precondition: pane != null)
309 * @param pane its the JPanel we want to get the information from.
310 */
311 public void getPanelInfo (JPanel pane)
312 {
313 Component[] group;
314 group = pane.getComponents();
315 int i;
316
317 if (group != null)
318 {
319 for (i = 0; i < group.length ; i++)
320 {
321 getInside((Container)pane.getComponent(i));
322 }
323 }
324 }
325
326 /**
327 * This method will get all the components inside the JScrollPane.
328 * (Precondition: scroll != null)
329 * @param scroll its the JScrollPane we want to get the information from.
330 */
331 public void getScrollInfo (JScrollPane scroll)
332 {
333 Component[] group;
334 group = scroll.getComponents();
335 int i;
336
337 if (group != null)
338 {
339 for (i = 0; i < group.length ; i++)
340 {
341 getInside((Container)group[i]);
342 }
343 }
344 }
345
346 /**
347 * This method will add special change listener to the JTabbedPane and get all
348 * the components inside it.
349 * (Precondition: tab != null)
350 * @param tab its the JTabbedPane we want to get the information from.
351 */
352 public void getTabbedPaneInfo (JTabbedPane tab)
353 {
354 int j;
355
356 tab.removeChangeListener(m);
357 tab.addChangeListener(m);
358
359 for (j = 0 ; j < tab.getTabCount(); j++)
360 {
361
362 Component group = tab.getComponentAt(j);
363 getInside((Container)group);
364
365 }
366 }
367
368 /**
369 * This is the dummy method to ge the option pane info.
370 */
371 public void getOptionPaneInfo (JOptionPane op)
372 {}
373
374 /**
375 * This method will get components inside the JViewPort.
376 * (Precondition: vp != null)
377 * @param vp its the JViewPort we want to get the information from.
378 */
379 public void getViewPortInfo (JViewport vp)
380 {
381 Component[] group;
382 group = vp.getComponents();
383 int i;
384
385 if (group != null)
386 {
387 for (i = 0; i < group.length ; i++)
388 {
389 getInside((Container)group[i]);
390 }
391 }
392 }
393
394 /**
395 * This method will get components inside the Box.
396 * (Precondition: box != null)
397 * @param box its the Box we want to get the information from.
398 */
399 public void getBoxInfo (Box box)
400 {
401 Component[] group;
402 group = box.getComponents();
403 int i;
404
405 if (group != null)
406 {
407 for (i = 0; i < group.length ; i++)
408 {
409 getInside((Container)group[i]);
410 }
411 }
412 }
413
414 /**
415 * This method will get components inside the JSplitPane.
416 * (Precondition: split != null)
417 * @param split its the JSplitPane we want to get the information from.
418 */
419 public void getSplitPaneInfo (JSplitPane split)
420 {
421 Component[] group;
422 group = split.getComponents();
423 int i;
424
425 if (group != null)
426 {
427 for (i = 0; i < group.length ; i++)
428 {
429 getInside((Container)group[i]);
430 }
431 }
432 }
433
434 /**
435 * This method will get add special list selection listener to the JList.
436 * (Precondition: list != null)
437 * @param list its the JList we want to get the information from.
438 */
439 public void getListInfo (JList list)
440 {
441 ListModel ls;
442 ls = list.getModel();
443
444 list.removeListSelectionListener(m);
445 list.addListSelectionListener(m);
446
447 if (ls != null)
448 {
449 if (hash.containsKey(ls) == false)
450 hash.put(ls,list);
451 ls.removeListDataListener(m);
452 ls.addListDataListener(m);
453 }
454 }
455
456 /**
457 * This method will add special change listener to the JColorChooser.
458 * (Precondition: color != null)
459 * @param color its the JColorChooser we want to get the information from.
460 */
461 public void getColorInfo (JColorChooser color)
462 {
463 ColorSelectionModel cm;
464 cm = color.getSelectionModel();
465
466 if (cm != null)
467 {
468 if (hash.containsKey(cm) == false)
469 hash.put(cm,color);
470 cm.removeChangeListener(m);
471 cm.addChangeListener(m);
472 }
473
474 getInside((Container) color.getPreviewPanel());
475 }
476
477 /**
478 * This method will add special action listener to the JFileChooser.
479 * (Precondition: fc != null)
480 * @param fc its the JFileChooser we want to get the information from.
481 */
482 public void getFileChooserInfo (JFileChooser fc)
483 {
484 fc.removeActionListener(m);
485 fc.addActionListener(m);
486 }
487
488 /**
489 * This method will add special list selection and column model listener
490 * to the JTable.
491 * (Precondition: table != null)
492 * @param table its the JTable we want to get the information from.
493 */
494 public void getTableInfo (JTable table)
495 {
496 TableModel tm;
497 tm = table.getModel();
498
499 TableColumnModel tcm;
500 tcm = table.getColumnModel();
501 ListSelectionModel lm;
502 lm = table.getSelectionModel();
503
504 if (lm != null)
505 {
506 if (hash.containsKey(lm) == false)
507 hash.put(lm,table);
508 lm.removeListSelectionListener(m);
509 lm.addListSelectionListener(m);
510 }
511
512 if (tcm != null)
513 {
514 if (hash.containsKey(tcm) == false)
515 hash.put(tcm,table);
516 tcm.removeColumnModelListener(m);
517 tcm.addColumnModelListener(m);
518 }
519 }
520
521 /**
522 * This is a dummy method to get the JScrollBar.
523 */
524 public void getScrollBarInfo (JScrollBar scroll)
525 {
526 }
527
528 /**
529 * This method will add special tree selection listener to the JTree.
530 * (Precondition: tree != null)
531 * @param tree its the JTree we want to get the information from.
532 */
533 public void getTreeInfo (JTree tree)
534 {
535 TreeModel tm;
536 tm = tree.getModel();
537
538 tree.removeTreeSelectionListener(m);
539 tree.addTreeSelectionListener(m);
540
541 if (tm != null)
542 {
543 if (hash.containsKey(tm) == false)
544 hash.put(tm,tree);
545 tm.removeTreeModelListener(m);
546 tm.addTreeModelListener(m);
547 }
548 }
549
550 /**
551 * This method is a dummy method to get Container.
552 */
553 public void getCompInfo (Container pane)
554 {
555 }
556
557 /**
558 * This method will get all components inside the JPopupMenu.
559 * (Precondition: popup != null)
560 * @param popup its the JPopUpMenu we want to get the information from.
561 */
562 public void getPopUpMenuInfo (JPopupMenu popup)
563 {
564 Component[] group;
565 group = popup.getComponents();
566 SingleSelectionModel sm;
567 sm = popup.getSelectionModel();
568 int i;
569
570 if (group != null)
571 {
572 for (i = 0; i < group.length ; i++)
573 {
574 getInside((Container)popup.getComponent(i));
575 }
576 }
577 }
578
579 /**
580 * This method will get all the components inside the JRootPane.
581 * (Precondition: pane != null)
582 * @param pane its the JRootPane we want to get the information from.
583 */
584 public void getRootPaneInfo (JRootPane pane)
585 {
586 Component[] group;
587 group = pane.getComponents();
588 int i;
589
590 if (group != null)
591 {
592 for (i = 0; i < group.length ; i++)
593 {
594
595 getInside((Container)pane.getComponent(i));
596 }
597 }
598 }
599
600 /**
601 * This method will get all the components inside the JLayeredPane.
602 * (Precondition: pane != null)
603 * @param pane its the JLayeredPane we want to get the information from.
604 */
605 public void getLayeredPaneInfo (JLayeredPane pane)
606 {
607 Component[] group;
608 group = pane.getComponents();
609 int i;
610
611 if (group != null)
612 {
613 for (i = 0; i < group.length ; i++)
614 {
615 getInside((Container)pane.getComponent(i));
616 }
617 }
618 }
619
620 /**
621 * This is a dummy method to get BasicInternalFrameTitlePane.
622 */
623 public void getInternalFrameTitleInfo (BasicInternalFrameTitlePane pane)
624 {
625 }
626
627 /**
628 * This method will add special column model and list selection
629 * listener to JTableHeader.
630 * (Precondition: header != null)
631 * @param header its the JTableHeader we want to get the information from.
632 */
633 public void getTableHeaderInfo (JTableHeader header)
634 {
635 TableColumnModel tcm;
636 tcm = header.getColumnModel();
637 ListSelectionModel lm;
638 lm = tcm.getSelectionModel();
639
640 if (tcm != null)
641 {
642 if (hash.containsKey(tcm) == false)
643 hash.put(tcm,header);
644 tcm.removeColumnModelListener(m);
645 tcm.addColumnModelListener(m);
646 }
647
648 if (lm != null)
649 {
650 if (hash.containsKey(lm) == false)
651 hash.put(lm,header);
652 lm.removeListSelectionListener(m);
653 lm.addListSelectionListener(m);
654 }
655 }
656
657 /**
658 * This method will get all components inside the JToolBar.
659 * (Precondition: tool != null)
660 * @param tool its the JToolBar we want to get the information from.
661 */
662 public void getToolBarInfo (JToolBar tool)
663 {
664 Component[] group;
665 group = tool.getComponents();
666 int i;
667
668 if (group != null)
669 {
670 for (i = 0; i < group.length ; i++)
671 {
672 getInside((Container)tool.getComponent(i));
673 }
674 }
675 }
676
677 /**
678 * This method will get all the components inside the JToolTip.
679 * (Precondition: tip != null)
680 * @param tip its the JToolTip we want to get the information from.
681 */
682 public void getToolTipInfo (JToolTip tip)
683 {
684 Component group;
685 group = tip.getComponent();
686 int i;
687
688 if (group != null)
689 {
690 getInside((Container) group);
691 }
692 }
693
694 /**
695 * This is the dummy method to get JSeparator.
696 */
697 public void getSeparatorInfo (JSeparator sept)
698 {
699 }
700
701 /**
702 * This method will get all the components inside the JDesktopPane.
703 * (Precondition: pane != null)
704 * @param pane its the JDesktopPane we want to get the information from.
705 */
706 public void getDesktopPaneInfo (JDesktopPane pane)
707 {
708 JInternalFrame[] group;
709 group = pane.getAllFrames();
710
711 if (group != null)
712 {
713 int i;
714
715 for ( i = 0 ; i < group.length ; i++ )
716 {
717 getInside((Container) group[i]);
718 }
719 }
720 }
721
722 /**
723 * This is a dummy method to catch null components.
724 */
725 public void getNullInfo ()
726 {
727 }
728
729 /**
730 * This method will add a special listener to a container and components inside it.
731 * This method is the gateway to all other methods in this class.
732 * @param comp its the Container we want to get the information from.
733 */
734 public void getInside(Container comp)
735 {
736 if (comp == null)
737 {
738 getNullInfo();
739 return;
740 }
741 else if (comp instanceof JApplet)
742 {
743 getAppletInfo ((JApplet) comp);
744 return;
745 }
746 else if (comp instanceof JSeparator)
747 {
748 getSeparatorInfo ((JSeparator) comp);
749 return;
750 }
751 else if (comp instanceof JWindow)
752 {
753 getWindowInfo((JWindow) comp);
754 return;
755 }
756 else if (comp instanceof JDialog)
757 {
758 getDialogInfo((JDialog) comp);
759 return;
760 }
761 else if (comp instanceof JComboBox)
762 {
763 getComboBoxInfo((JComboBox) comp);
764 return;
765 }
766 else if (comp instanceof JLabel)
767 {
768 getLabelInfo((JLabel) comp);
769 return;
770 }
771 else if (comp instanceof JTextComponent)
772 {
773 getTextAreaInfo((JTextComponent) comp);
774 return;
775 }
776 else if (comp instanceof JFrame)
777 {
778 getFrameInfo((JFrame) comp);
779 return;
780 }
781 else if (comp instanceof JPanel)
782 {
783 getPanelInfo((JPanel) comp);
784 return;
785 }
786 else if (comp instanceof JScrollPane)
787 {
788 getScrollInfo((JScrollPane) comp);
789 return;
790 }
791 else if (comp instanceof JScrollBar)
792 {
793 getScrollBarInfo ((JScrollBar) comp);
794 return;
795 }
796 else if (comp instanceof JViewport)
797 {
798 getViewPortInfo((JViewport) comp);
799 return;
800 }
801 else if (comp instanceof JTabbedPane)
802 {
803 getTabbedPaneInfo((JTabbedPane) comp);
804 return;
805 }
806 else if (comp instanceof Box)
807 {
808 getBoxInfo((Box) comp);
809 return;
810 }
811 else if (comp instanceof JToggleButton)
812 {
813 getToggleButtonInfo((JToggleButton) comp);
814 return;
815 }
816 else if (comp instanceof JSplitPane)
817 {
818 getSplitPaneInfo ((JSplitPane) comp);
819 return;
820 }
821 else if (comp instanceof JList)
822 {
823 getListInfo ((JList) comp);
824 return;
825 }
826 else if (comp instanceof JTree)
827 {
828 getTreeInfo ((JTree) comp);
829 return;
830 }
831 else if (comp instanceof JTable)
832 {
833 getTableInfo ((JTable) comp);
834 return;
835 }
836 else if (comp instanceof JSlider)
837 {
838 getSliderInfo ((JSlider) comp);
839 return;
840 }
841 else if (comp instanceof JSpinner)
842 {
843 getSpinnerInfo ((JSpinner) comp);
844 return;
845 }
846 else if (comp instanceof JProgressBar)
847 {
848 getProgressBarInfo ((JProgressBar) comp);
849 return;
850 }
851 else if (comp instanceof JButton)
852 {
853 getButtonInfo ((JButton) comp);
854 return;
855 }
856 else if (comp instanceof JMenu)
857 {
858 getMenuInfo ((JMenu) comp);
859 return;
860 }
861 else if (comp instanceof JMenuBar)
862 {
863 getMenuBarInfo ((JMenuBar) comp);
864 return;
865 }
866 else if (comp instanceof JMenuItem)
867 {
868 getMenuItemInfo ((JMenuItem) comp);
869 return;
870 }
871 else if (comp instanceof JOptionPane)
872 {
873 getOptionPaneInfo ((JOptionPane) comp);
874 return;
875 }
876 else if (comp instanceof BasicInternalFrameTitlePane)
877 {
878 getInternalFrameTitleInfo ((BasicInternalFrameTitlePane) comp);
879 return;
880 }
881 else if (comp instanceof JColorChooser)
882 {
883 getColorInfo ((JColorChooser) comp);
884 return;
885 }
886 else if (comp instanceof JFileChooser)
887 {
888 getFileChooserInfo ((JFileChooser) comp);
889 return;
890 }
891 else if (comp instanceof JDesktopPane)
892 {
893 getDesktopPaneInfo ((JDesktopPane) comp);
894 return;
895 }
896 else if (comp instanceof JInternalFrame)
897 {
898 getInternalFrameInfo ((JInternalFrame) comp);
899 return;
900 }
901 else if (comp instanceof JLayeredPane)
902 {
903 getLayeredPaneInfo ((JLayeredPane) comp);
904 return;
905 }
906 else if (comp instanceof JPopupMenu)
907 {
908 getPopUpMenuInfo ((JPopupMenu) comp);
909 return;
910 }
911 else if (comp instanceof JRootPane)
912 {
913 getRootPaneInfo ((JRootPane) comp);
914 return;
915 }
916 else if (comp instanceof JTableHeader)
917 {
918 getTableHeaderInfo ((JTableHeader) comp);
919 return;
920 }
921 else if (comp instanceof JToolBar)
922 {
923 getToolBarInfo ((JToolBar) comp);
924 return;
925 }
926 else if (comp instanceof JToolTip)
927 {
928 getToolTipInfo ((JToolTip) comp);
929 return;
930 }
931 else
932 {
933 getCompInfo (comp);
934 return;
935 }
936 }
937}
938
939
940
941
942
943
944
Note: See TracBrowser for help on using the repository browser.