[chocolate-doom] 12/29: Add application icon to running program

Jonathan Dowland jmtd at moszumanska.debian.org
Mon Jan 30 15:06:42 UTC 2017


This is an automated email from the git hooks/post-receive script.

jmtd pushed a commit to annotated tag chocolate-doom-0.0.4
in repository chocolate-doom.

commit fb63887447b18d2f12dbae6518c5210f90623a02
Author: Simon Howard <fraggle at gmail.com>
Date:   Sat Sep 24 22:04:03 2005 +0000

    Add application icon to running program
    
    Subversion-branch: /trunk/chocolate-doom
    Subversion-revision: 126
---
 src/Makefile.am  | 12 ++++++----
 src/convert-icon | 71 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 src/i_video.c    | 29 +++++++++++++++++++++--
 3 files changed, 105 insertions(+), 7 deletions(-)

diff --git a/src/Makefile.am b/src/Makefile.am
index 83bc4e1..163eb5b 100644
--- a/src/Makefile.am
+++ b/src/Makefile.am
@@ -1,11 +1,10 @@
 
 bindir = $(prefix)/bin
 
+bin_PROGRAMS = chocolate-doom
+
 CFLAGS = @CFLAGS@ @SDL_CFLAGS@ @SDLMIXER_CFLAGS@ @SDLNET_CFLAGS@ -Wall
-chocolate_doom_LDADD = @LDFLAGS@                \
-                       @SDL_LIBS@               \
-                       @SDLMIXER_LIBS@          \
-                       @SDLNET_LIBS@ 
+chocolate_doom_LDADD = @LDFLAGS@ @SDL_LIBS@ @SDLMIXER_LIBS@ @SDLNET_LIBS@ 
 
 SOURCE_FILES=\
 am_map.c    d_think.h   i_video.c   p_floor.c   p_tick.c    r_things.h	\
@@ -36,8 +35,11 @@ else
 chocolate_doom_SOURCES=$(SOURCE_FILES)
 endif
 
-bin_PROGRAMS = chocolate-doom
+EXTRA_DIST = convert-icon chocolate_doom_icon.c
 
 .rc.o:
 	windres $^ -o $@
 
+chocolate_doom_icon.c : ../data/chocolate-doom.png
+	./convert-icon $^ > $@
+
diff --git a/src/convert-icon b/src/convert-icon
new file mode 100755
index 0000000..a55d813
--- /dev/null
+++ b/src/convert-icon
@@ -0,0 +1,71 @@
+#!/usr/bin/python
+#
+# $Id: convert-icon 126 2005-09-24 22:04:03Z fraggle $
+#
+# Copyright(C) 2005 Simon Howard
+#
+# This program is free software; you can redistribute it and/or
+# modify it under the terms of the GNU General Public License
+# as published by the Free Software Foundation; either version 2
+# of the License, or (at your option) any later version.
+#
+# This program 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 General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
+# 02111-1307, USA.
+#
+# Converts images into C structures to be inserted in programs
+#
+# $Log$
+# Revision 1.1  2005/09/24 22:04:03  fraggle
+# Add application icon to running program
+#
+
+import Image
+import sys
+import os
+import re
+
+def convert_image(filename):
+
+    im = Image.open(filename).convert("RGB")
+
+    size = im.size
+
+    struct_name = os.path.basename(filename)
+    struct_name = re.sub(re.compile("\\..*$"), "", struct_name)
+    struct_name = re.sub(re.compile("\W"), "_", struct_name)
+
+    print "static int %s_w = %i;" % (struct_name, size[0])
+    print "static int %s_h = %i;" % (struct_name, size[1])
+
+    print
+    print "static unsigned char %s_data[] = {" % (struct_name)
+
+    elements_on_line = 0
+
+    print "    ",
+
+    for y in range(size[1]):
+        for x in range(size[0]):
+            val = im.getpixel((x, y))
+            print "%i,%i,%i,  " % val,
+            elements_on_line += 1
+
+            if elements_on_line > 4:
+                elements_on_line = 0
+                print 
+                print "    ",
+
+    print 
+    print "};\n"
+
+for filename in sys.argv[1:len(sys.argv)]:
+    convert_image(filename)
+
+
diff --git a/src/i_video.c b/src/i_video.c
index 50c95e9..8e337db 100644
--- a/src/i_video.c
+++ b/src/i_video.c
@@ -1,7 +1,7 @@
 // Emacs style mode select   -*- C++ -*- 
 //-----------------------------------------------------------------------------
 //
-// $Id: i_video.c 111 2005-09-17 20:50:46Z fraggle $
+// $Id: i_video.c 126 2005-09-24 22:04:03Z fraggle $
 //
 // Copyright(C) 1993-1996 Id Software, Inc.
 // Copyright(C) 2005 Simon Howard
@@ -22,6 +22,9 @@
 // 02111-1307, USA.
 //
 // $Log$
+// Revision 1.28  2005/09/24 22:04:03  fraggle
+// Add application icon to running program
+//
 // Revision 1.27  2005/09/17 20:50:46  fraggle
 // Mouse acceleration code to emulate old DOS drivers
 //
@@ -121,12 +124,14 @@
 //-----------------------------------------------------------------------------
 
 static const char
-rcsid[] = "$Id: i_video.c 111 2005-09-17 20:50:46Z fraggle $";
+rcsid[] = "$Id: i_video.c 126 2005-09-24 22:04:03Z fraggle $";
 
 #include <SDL.h>
 #include <ctype.h>
 #include <math.h>
 
+#include "chocolate_doom_icon.c"
+
 #include "config.h"
 #include "doomdef.h"
 #include "doomstat.h"
@@ -694,6 +699,25 @@ static void SetCaption(void)
     Z_Free(buf);
 }
 
+// Set the application icon
+
+static void SetIcon(void)
+{
+    SDL_Surface *surface;
+
+    surface = SDL_CreateRGBSurfaceFrom(chocolate_doom_data,
+                                       chocolate_doom_w,
+                                       chocolate_doom_h,
+                                       24,
+                                       chocolate_doom_w * 3,
+                                       0xff << 0,
+                                       0xff << 8,
+                                       0xff << 16,
+                                       0);
+
+    SDL_WM_SetIcon(surface, NULL);
+    SDL_FreeSurface(surface);
+}
 
 void I_InitGraphics(void)
 {
@@ -754,6 +778,7 @@ void I_InitGraphics(void)
     }
 
     SetCaption();
+    SetIcon();
 
     UpdateFocus();
     UpdateGrab();

-- 
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/pkg-games/chocolate-doom.git



More information about the Pkg-games-commits mailing list