/soc/2015/mmcc/main: e83f409e347e: initial removal of Pidgin The...

Michael McConville mmcconville at mykolab.com
Thu Jul 16 13:45:29 EDT 2015


Changeset: e83f409e347e50b1f4028dd35257ab0391cadb31
Author:	 Michael McConville <mmcconville at mykolab.com>
Date:	 2015-07-16 13:45 -0400
Branch:	 default
URL: https://hg.pidgin.im/soc/2015/mmcc/main/rev/e83f409e347e

Description:

initial removal of Pidgin Theme Editor plugin

diffstat:

 pidgin/plugins/Makefile.am             |    4 -
 pidgin/plugins/Makefile.mingw          |    7 -
 pidgin/plugins/themeedit-icon.c        |  326 -------------------------------
 pidgin/plugins/themeedit-icon.h        |   28 --
 pidgin/plugins/themeedit.c             |  338 ---------------------------------
 pidgin/win32/nsis/pidgin-installer.nsi |    1 -
 po/af.po                               |   31 ---
 po/am.po                               |   30 --
 po/ar.po                               |   33 ---
 po/as.po                               |   34 ---
 po/ast.po                              |   28 --
 po/az.po                               |   33 ---
 po/be at latin.po                         |   33 ---
 po/bg.po                               |   33 ---
 po/bn.po                               |   28 --
 po/bn_IN.po                            |   28 --
 po/br.po                               |   34 ---
 po/brx.po                              |   34 ---
 po/bs.po                               |   31 ---
 po/ca.po                               |   28 --
 po/ca at valencia.po                      |   28 --
 po/cs.po                               |   28 --
 po/da.po                               |   28 --
 po/de.po                               |   28 --
 po/dz.po                               |   33 ---
 po/el.po                               |   28 --
 po/en_AU.po                            |   33 ---
 po/en_CA.po                            |   28 --
 po/en_GB.po                            |   28 --
 po/eo.po                               |   28 --
 po/es.po                               |   28 --
 po/es_AR.po                            |   34 ---
 po/et.po                               |   28 --
 po/eu.po                               |   28 --
 po/fa.po                               |   28 --
 po/fi.po                               |   28 --
 po/fr.po                               |   28 --
 po/ga.po                               |   28 --
 po/gl.po                               |   28 --
 po/gu.po                               |   28 --
 po/he.po                               |   28 --
 po/hi.po                               |   28 --
 po/hr.po                               |   28 --
 po/hu.po                               |   28 --
 po/hy.po                               |   34 ---
 po/id.po                               |   33 ---
 po/it.po                               |   28 --
 po/ja.po                               |   33 ---
 po/ka.po                               |   31 ---
 po/kk.po                               |   34 ---
 po/km.po                               |   28 --
 po/kn.po                               |   28 --
 po/ko.po                               |   33 ---
 po/ks.po                               |   34 ---
 po/ku.po                               |   33 ---
 po/ku_IQ.po                            |   28 --
 po/lt.po                               |   28 --
 po/lv.po                               |   34 ---
 po/mai.po                              |   28 --
 po/mhr.po                              |   28 --
 po/mk.po                               |   33 ---
 po/ml.po                               |   28 --
 po/mn.po                               |   30 --
 po/mr.po                               |   28 --
 po/ms_MY.po                            |   34 ---
 po/my_MM.po                            |   28 --
 po/nb.po                               |   28 --
 po/ne.po                               |   31 ---
 po/nl.po                               |   28 --
 po/nn.po                               |   28 --
 po/oc.po                               |   28 --
 po/or.po                               |   28 --
 po/pa.po                               |   28 --
 po/pl.po                               |   34 ---
 po/ps.po                               |   31 ---
 po/pt.po                               |   28 --
 po/pt_BR.po                            |   28 --
 po/ro.po                               |   28 --
 po/ru.po                               |   28 --
 po/sd.po                               |   34 ---
 po/si.po                               |   30 --
 po/sk.po                               |   28 --
 po/sl.po                               |   28 --
 po/sq.po                               |   28 --
 po/sr.po                               |   33 ---
 po/sr at latin.po                         |   33 ---
 po/sv.po                               |   28 --
 po/sw.po                               |   28 --
 po/ta.po                               |   28 --
 po/te.po                               |   28 --
 po/th.po                               |   30 --
 po/tr.po                               |   33 ---
 po/tt.po                               |   34 ---
 po/uk.po                               |   28 --
 po/ur.po                               |   33 ---
 po/uz.po                               |   34 ---
 po/vi.po                               |   28 --
 po/xh.po                               |   33 ---
 po/zh_CN.po                            |   28 --
 po/zh_HK.po                            |   28 --
 po/zh_TW.po                            |   28 --
 101 files changed, 0 insertions(+), 3545 deletions(-)

diffs (truncated from 4878 to 300 lines):

diff --git a/pidgin/plugins/Makefile.am b/pidgin/plugins/Makefile.am
--- a/pidgin/plugins/Makefile.am
+++ b/pidgin/plugins/Makefile.am
@@ -45,7 +45,6 @@ relnot_la_LDFLAGS           = -module @P
 screencap_la_LDFLAGS        = -module @PLUGIN_LDFLAGS@
 sendbutton_la_LDFLAGS       = -module @PLUGIN_LDFLAGS@
 spellchk_la_LDFLAGS         = -module @PLUGIN_LDFLAGS@
-themeedit_la_LDFLAGS        = -module @PLUGIN_LDFLAGS@
 unity_la_LDFLAGS            = -module @PLUGIN_LDFLAGS@
 webkit_la_LDFLAGS           = -module @PLUGIN_LDFLAGS@
 xmppconsole_la_LDFLAGS      = -module @PLUGIN_LDFLAGS@
@@ -64,7 +63,6 @@ plugin_LTLIBRARIES = \
 	screencap.la        \
 	sendbutton.la       \
 	spellchk.la         \
-	themeedit.la        \
 	webkit.la           \
 	xmppconsole.la
 
@@ -89,7 +87,6 @@ relnot_la_SOURCES           = relnot.c
 screencap_la_SOURCES        = screencap.c
 sendbutton_la_SOURCES       = sendbutton.c
 spellchk_la_SOURCES         = spellchk.c
-themeedit_la_SOURCES        = themeedit.c themeedit-icon.c themeedit-icon.h
 unity_la_SOURCES            = unity.c
 webkit_la_SOURCES           = webkit.c
 xmppconsole_la_SOURCES      = xmppconsole.c
@@ -107,7 +104,6 @@ relnot_la_LIBADD            = @PIDGIN_LI
 screencap_la_LIBADD         = @PIDGIN_LIBS@
 sendbutton_la_LIBADD        = @PIDGIN_LIBS@
 spellchk_la_LIBADD          = @PIDGIN_LIBS@
-themeedit_la_LIBADD         = @PIDGIN_LIBS@
 unity_la_LIBADD             = @PIDGIN_LIBS@ $(UNITY_LIBS)
 webkit_la_LIBADD            = @PIDGIN_LIBS@ $(WEBKIT_LIBS)
 xmppconsole_la_LIBADD       = @PIDGIN_LIBS@
diff --git a/pidgin/plugins/Makefile.mingw b/pidgin/plugins/Makefile.mingw
--- a/pidgin/plugins/Makefile.mingw
+++ b/pidgin/plugins/Makefile.mingw
@@ -79,12 +79,6 @@ install: all $(PIDGIN_INSTALL_PLUGINS_DI
 	$(MAKE_at) $(MAKE) -C $(WINPREFS_PLUGIN) -f $(MINGW_MAKEFILE) install
 	cp *.dll $(PIDGIN_INSTALL_PLUGINS_DIR)
 
-THEMEEDIT_SRC = themeedit.c themeedit-icon.c
-THEMEEDIT_OBJECTS = $(THEMEEDIT_SRC:%.c=%.o)
-
-themeedit.dll: $(THEMEEDIT_OBJECTS)
-	$(CC) -shared $(THEMEEDIT_OBJECTS) $(LIB_PATHS) $(LIBS) $(DLL_LD_FLAGS) -o $@
-
 %.dll: %.c $(PURPLE_CONFIG_H) $(PURPLE_VERSION_H)
 	$(CC) $(CFLAGS) $(DEFINES) $(INCLUDE_PATHS) -o $@.o -c $<
 	$(CC) -shared $@.o $(LIB_PATHS) $(LIBS) $(DLL_LD_FLAGS) -o $@
@@ -103,7 +97,6 @@ plugins: \
 		relnot.dll \
 		sendbutton.dll \
 		spellchk.dll \
-		themeedit.dll \
 		webkit.dll \
 		xmppconsole.dll
 
diff --git a/pidgin/plugins/themeedit-icon.c b/pidgin/plugins/themeedit-icon.c
deleted file mode 100644
--- a/pidgin/plugins/themeedit-icon.c
+++ /dev/null
@@ -1,326 +0,0 @@
-/* Pidgin
- *
- * Pidgin is the legal property of its developers, whose names are too numerous
- * to list here.  Please refer to the COPYRIGHT file distributed with this
- * source distribution.
- *
- * 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., 51 Franklin Street, Fifth Floor, Boston, MA  02111-1301  USA
- */
-#include "internal.h"
-#include "pidgin.h"
-#include "debug.h"
-#include "version.h"
-
-#include "theme-manager.h"
-
-#include "gtk3compat.h"
-#include "gtkblist.h"
-#include "gtkblist-theme.h"
-#include "gtkutils.h"
-#include "gtkplugin.h"
-
-#include "pidginstock.h"
-#include "themeedit-icon.h"
-
-typedef enum
-{
-	FLAG_SIZE_MICROSOPIC = 0,
-	FLAG_SIZE_EXTRA_SMALL,
-	FLAG_SIZE_SMALL,
-	FLAG_SIZE_MEDIUM,
-	FLAG_SIZE_LARGE,
-	FLAG_SIZE_HUGE,
-	FLAG_SIZE_NONE,
-} SectionFlags;
-
-#define SECTION_FLAGS_ALL (0x3f)
-
-static const char *stocksizes [] = {
-	[FLAG_SIZE_MICROSOPIC] = PIDGIN_ICON_SIZE_TANGO_MICROSCOPIC,
-	[FLAG_SIZE_EXTRA_SMALL] = PIDGIN_ICON_SIZE_TANGO_EXTRA_SMALL,
-	[FLAG_SIZE_SMALL] = PIDGIN_ICON_SIZE_TANGO_SMALL,
-	[FLAG_SIZE_MEDIUM] = PIDGIN_ICON_SIZE_TANGO_MEDIUM,
-	[FLAG_SIZE_LARGE] = PIDGIN_ICON_SIZE_TANGO_LARGE,
-	[FLAG_SIZE_HUGE] = PIDGIN_ICON_SIZE_TANGO_HUGE,
-	[FLAG_SIZE_NONE] = NULL,
-};
-
-static const struct options {
-	const char *stockid;
-	const char *text;
-} statuses[] = {
-	{PIDGIN_STOCK_STATUS_AVAILABLE, N_("Available")},
-	{PIDGIN_STOCK_STATUS_AWAY, N_("Away")},
-	{PIDGIN_STOCK_STATUS_XA, N_("Extended Away")},
-	{PIDGIN_STOCK_STATUS_BUSY, N_("Busy")},
-	{PIDGIN_STOCK_STATUS_OFFLINE, N_("Offline")},
-	{PIDGIN_STOCK_STATUS_LOGIN, N_("Just logged in")},
-	{PIDGIN_STOCK_STATUS_LOGOUT, N_("Just logged out")},
-	{PIDGIN_STOCK_STATUS_PERSON, N_("Icon for Contact/\nIcon for Unknown person")},
-	{PIDGIN_STOCK_STATUS_CHAT, N_("Icon for Chat")},
-	{NULL, NULL}
-}, chatemblems[] = {
-	{PIDGIN_STOCK_STATUS_IGNORED, N_("Ignored")},
-	{PIDGIN_STOCK_STATUS_FOUNDER, N_("Founder")},
-	/* A user in a chat room who has special privileges. */
-	{PIDGIN_STOCK_STATUS_OPERATOR, N_("Operator")},
-	/* A half operator is someone who has a subset of the privileges
-	   that an operator has. */
-	{PIDGIN_STOCK_STATUS_HALFOP, N_("Half Operator")},
-	{PIDGIN_STOCK_STATUS_VOICE, N_("Voice")},
-	{NULL, NULL}
-}, dialogicons[] = {
-	{PIDGIN_STOCK_DIALOG_AUTH, N_("Authorization dialog")},
-	{PIDGIN_STOCK_DIALOG_ERROR, N_("Error dialog")},
-	{PIDGIN_STOCK_DIALOG_INFO, N_("Information dialog")},
-	{PIDGIN_STOCK_DIALOG_MAIL, N_("Mail dialog")},
-	{PIDGIN_STOCK_DIALOG_QUESTION, N_("Question dialog")},
-	{PIDGIN_STOCK_DIALOG_WARNING, N_("Warning dialog")},
-	{NULL, NULL},
-	{PIDGIN_STOCK_DIALOG_COOL, N_("What kind of dialog is this?")},
-};
-
-static const struct {
-	const char *heading;
-	const struct options *options;
-	SectionFlags flags;
-} sections[] = {
-	{N_("Status Icons"), statuses, SECTION_FLAGS_ALL ^ (1 << FLAG_SIZE_HUGE)},
-	{N_("Chatroom Emblems"), chatemblems, FLAG_SIZE_SMALL},
-	{N_("Dialog Icons"), dialogicons, (1 << FLAG_SIZE_EXTRA_SMALL) | (1 << FLAG_SIZE_HUGE)},
-	{NULL, NULL, 0}
-};
-
-static PidginStatusIconTheme *
-create_icon_theme(GtkWidget *window)
-{
-	int s, i, j;
-	const char *dirname = g_get_tmp_dir();
-	PidginStatusIconTheme *theme;
-	const char *author;
-#ifndef _WIN32
-	author = getlogin();
-#else
-	author = "user";
-#endif
-	theme = g_object_new(PIDGIN_TYPE_STATUS_ICON_THEME, "type", "status-icon",
-				"author", author,
-				"directory", dirname,
-				NULL);
-
-	for (s = 0; sections[s].heading; s++) {
-		GtkWidget *vbox = g_object_get_data(G_OBJECT(window), sections[s].heading);
-		for (i = 0; sections[s].options[i].stockid; i++) {
-			GtkWidget *image = g_object_get_data(G_OBJECT(vbox), sections[s].options[i].stockid);
-			GdkPixbuf *pixbuf = g_object_get_data(G_OBJECT(image), "pixbuf");
-			if (!pixbuf)
-				continue;
-			pidgin_icon_theme_set_icon(PIDGIN_ICON_THEME(theme), sections[s].options[i].stockid,
-					sections[s].options[i].stockid);
-			for (j = 0; stocksizes[j]; j++) {
-				int width, height;
-				GtkIconSize iconsize;
-				char size[8];
-				char *name;
-				GdkPixbuf *scale;
-				GError *error = NULL;
-
-				if (!(sections[s].flags & (1 << j)))
-					continue;
-
-				iconsize = gtk_icon_size_from_name(stocksizes[j]);
-				gtk_icon_size_lookup(iconsize, &width, &height);
-				g_snprintf(size, sizeof(size), "%d", width);
-
-				if (i == 0) {
-					name = g_build_filename(dirname, size, NULL);
-					purple_build_dir(name, S_IRUSR | S_IWUSR | S_IXUSR);
-					g_free(name);
-				}
-
-				name = g_build_filename(dirname, size, sections[s].options[i].stockid, NULL);
-				scale = gdk_pixbuf_scale_simple(pixbuf, width, height, GDK_INTERP_BILINEAR);
-				gdk_pixbuf_save(scale, name, "png", &error, "compression", "9", NULL);
-				g_free(name);
-				g_object_unref(G_OBJECT(scale));
-				if (error)
-					g_error_free(error);
-			}
-		}
-	}
-	return theme;
-}
-
-static void
-use_icon_theme(GtkWidget *w, GtkWidget *window)
-{
-	/* I don't quite understand the icon-theme stuff. For example, I don't
-	 * know why PidginIconTheme needs to be abstract, or how PidginStatusIconTheme
-	 * would be different from other PidginIconTheme's (e.g. PidginStockIconTheme)
-	 * etc., but anyway, this works for now.
-	 *
-	 * Here's an interesting note: A PidginStatusIconTheme can be used for both
-	 * stock and status icons. Like I said, I don't quite know how they could be
-	 * different. So I am going to just keep it as it is, for now anyway, until I
-	 * have the time to dig through this, or someone explains this stuff to me
-	 * clearly.
-	 *		-- Sad
-	 */
-	PidginStatusIconTheme *theme = create_icon_theme(window);
-	pidgin_stock_load_status_icon_theme(PIDGIN_STATUS_ICON_THEME(theme));
-	pidgin_stock_load_stock_icon_theme((PidginStockIconTheme *)theme);
-	pidgin_blist_refresh(purple_blist_get_buddy_list());
-	g_object_unref(theme);
-}
-
-#ifdef NOT_SADRUL
-static void
-save_icon_theme(GtkWidget *w, GtkWidget *window)
-{
-	/* TODO: SAVE! */
-	gtk_widget_destroy(window);
-}
-#endif
-
-static void
-close_icon_theme(GtkWidget *w, GtkWidget *window)
-{
-	gtk_widget_destroy(window);
-}
-
-static void
-stock_icon_selected(const char *filename, gpointer image)
-{
-	GError *error = NULL;
-	GdkPixbuf *scale;
-	int i;
-	GdkPixbuf *pixbuf;
-
-	if (!filename)
-		return;
-
-	pixbuf = gdk_pixbuf_new_from_file(filename, &error);
-	if (error || !pixbuf) {
-		purple_debug_error("theme-editor-icon", "Unable to load icon file '%s' (%s)\n",
-				filename, error ? error->message : "Reason unknown");
-		if (error)
-			g_error_free(error);
-		return;
-	}
-
-	scale = gdk_pixbuf_scale_simple(pixbuf, 16, 16, GDK_INTERP_BILINEAR);
-	gtk_image_set_from_pixbuf(GTK_IMAGE(image), scale);
-	g_object_unref(G_OBJECT(scale));
-
-	/* Update the size previews */
-	for (i = 0; stocksizes[i]; i++) {
-		int width, height;
-		GtkIconSize iconsize;
-		GtkWidget *prev = g_object_get_data(G_OBJECT(image), stocksizes[i]);
-		if (!prev)
-			continue;
-		iconsize = gtk_icon_size_from_name(stocksizes[i]);
-		gtk_icon_size_lookup(iconsize, &width, &height);
-		scale = gdk_pixbuf_scale_simple(pixbuf, width, height, GDK_INTERP_BILINEAR);



More information about the Commits mailing list