Newer
Older
adjustgpx-gui / src / main / java / osm / jp / gpx / matchtime / gui / ImageFileView.java
@haya4 haya4 on 2 Feb 2020 3 KB version 5.2
  1. /*
  2. * Copyright (c) 1995, 2008, Oracle and/or its affiliates. All rights reserved.
  3. *
  4. * Redistribution and use in source and binary forms, with or without
  5. * modification, are permitted provided that the following conditions
  6. * are met:
  7. *
  8. * - Redistributions of source code must retain the above copyright
  9. * notice, this list of conditions and the following disclaimer.
  10. *
  11. * - Redistributions in binary form must reproduce the above copyright
  12. * notice, this list of conditions and the following disclaimer in the
  13. * documentation and/or other materials provided with the distribution.
  14. *
  15. * - Neither the name of Oracle or the names of its
  16. * contributors may be used to endorse or promote products derived
  17. * from this software without specific prior written permission.
  18. *
  19. * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS
  20. * IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
  21. * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
  22. * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
  23. * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
  24. * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
  25. * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
  26. * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
  27. * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
  28. * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
  29. * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  30. */
  31.  
  32. package osm.jp.gpx.matchtime.gui;
  33.  
  34. import java.io.File;
  35. import javax.swing.*;
  36. import javax.swing.filechooser.*;
  37.  
  38. /* ImageFileView.java is used by FileChooserDemo2.java. */
  39. public class ImageFileView extends FileView {
  40. ImageIcon jpgIcon = Utils.createImageIcon("/images/jpgIcon.gif");
  41. ImageIcon gifIcon = Utils.createImageIcon("/images/gifIcon.gif");
  42. ImageIcon tiffIcon = Utils.createImageIcon("/images/tiffIcon.gif");
  43. ImageIcon pngIcon = Utils.createImageIcon("/images/pngIcon.png");
  44.  
  45. @Override
  46. public String getName(File f) {
  47. return null; //let the L&F FileView figure this out
  48. }
  49.  
  50. @Override
  51. public String getDescription(File f) {
  52. return null; //let the L&F FileView figure this out
  53. }
  54.  
  55. @Override
  56. public Boolean isTraversable(File f) {
  57. return null; //let the L&F FileView figure this out
  58. }
  59.  
  60. @Override
  61. public String getTypeDescription(File f) {
  62. String extension = Utils.getExtension(f);
  63. String type = null;
  64.  
  65. if (extension != null) {
  66. switch (extension) {
  67. case Utils.JPEG:
  68. case Utils.JPG:
  69. type = "JPEG Image";
  70. break;
  71. case Utils.GIF:
  72. type = "GIF Image";
  73. break;
  74. case Utils.TIFF:
  75. case Utils.TIF:
  76. type = "TIFF Image";
  77. break;
  78. case Utils.PNG:
  79. type = "PNG Image";
  80. break;
  81. default:
  82. break;
  83. }
  84. }
  85. return type;
  86. }
  87.  
  88. @Override
  89. public Icon getIcon(File f) {
  90. String extension = Utils.getExtension(f);
  91. Icon icon = null;
  92.  
  93. if (extension != null) {
  94. switch (extension) {
  95. case Utils.JPEG:
  96. case Utils.JPG:
  97. icon = jpgIcon;
  98. break;
  99. case Utils.GIF:
  100. icon = gifIcon;
  101. break;
  102. case Utils.TIFF:
  103. case Utils.TIF:
  104. icon = tiffIcon;
  105. break;
  106. case Utils.PNG:
  107. icon = pngIcon;
  108. break;
  109. default:
  110. break;
  111. }
  112. }
  113. return icon;
  114. }
  115. }