altosui: Add multi-sized icons to all windows
[fw/altos] / altosui / AltosFrame.java
index cdbfe7d32d5427213c2440f1e3644a96efbf5900..338b363ed0bc099dd107e5eaed27c8389bbf4f35 100644 (file)
@@ -15,7 +15,7 @@
  * 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
  */
 
-package AltosUI;
+package altosui;
 
 import java.awt.*;
 import java.awt.event.*;
@@ -44,14 +44,37 @@ public class AltosFrame extends JFrame implements AltosUIListener {
                this.pack();
        }
 
+       static final String[] icon_names = {
+               "/altus-metrum-16.png",
+               "/altus-metrum-32.png",
+               "/altus-metrum-48.png",
+               "/altus-metrum-64.png",
+               "/altus-metrum-128.png",
+               "/altus-metrum-256.png"
+       };
+
+       public void set_icon() {
+               ArrayList<Image> icons = new ArrayList<Image>();
+               
+               for (int i = 0; i < icon_names.length; i++) {
+                       java.net.URL imgURL = AltosUI.class.getResource(icon_names[i]);
+                       if (imgURL != null)
+                               icons.add(new ImageIcon(imgURL).getImage());
+               }
+
+               setIconImages(icons);
+       }
+                       
        public AltosFrame() {
                AltosUIPreferences.register_ui_listener(this);
                addWindowListener(new AltosFrameListener());
+               set_icon();
        }
 
        public AltosFrame(String name) {
                super(name);
                AltosUIPreferences.register_ui_listener(this);
                addWindowListener(new AltosFrameListener());
+               set_icon();
        }
 }