Rework our icon management

They are now all stored in a directory structure similar to the final
installation target, so no more copying of images during build is needed.
Both Makefile.am and CMakelists.txt behave the same now.

Some additional cleanups:
- move stock_move related images to art; they aren't used so don't need to be installed
- clean up icon loading

There is one harmless warning still at run time about not all requested image
sizes being found. This is odd because they are all installed. I suspect gtk
no longer searches for these resolutions. Perhaps we just shouldn't run the
check on them. The application works fine even without the images in the
requested resolution.
This commit is contained in:
Geert Janssens 2017-07-09 21:48:36 +02:00
parent 2020bee03b
commit ff93071608
28 changed files with 1271 additions and 410 deletions

View File

Before

Width:  |  Height:  |  Size: 2.8 KiB

After

Width:  |  Height:  |  Size: 2.8 KiB

View File

Before

Width:  |  Height:  |  Size: 62 KiB

After

Width:  |  Height:  |  Size: 62 KiB

View File

Before

Width:  |  Height:  |  Size: 27 KiB

After

Width:  |  Height:  |  Size: 27 KiB

View File

Before

Width:  |  Height:  |  Size: 29 KiB

After

Width:  |  Height:  |  Size: 29 KiB

View File

Before

Width:  |  Height:  |  Size: 36 KiB

After

Width:  |  Height:  |  Size: 36 KiB

View File

Before

Width:  |  Height:  |  Size: 45 KiB

After

Width:  |  Height:  |  Size: 45 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.5 KiB

View File

@ -1,4 +1,4 @@
# This file implements the process of making source distributio tarballs. It expects to find list in
# This file implements the process of making source distribution tarballs. It expects to find list in
# 'dist_manifest.txt' of all of the files to be included in the distribution, EXCEPT those
# files that are generated. The list of generated files is specified in MakeDistFiles.cmake in the
# COPY_FROM_BUILD and COPY_FROM_BUILD_2 variables.

View File

@ -106,19 +106,7 @@ SET(COPY_FROM_BUILD_2
po/gnucash.pot
src/doc/design/stamp-vti
src/doc/design/version.texi
src/pixmaps/128x128/gnucash-icon.png
src/pixmaps/16x16/gnucash-icon.png
src/pixmaps/22x22/gnucash-icon.png
src/pixmaps/24x24/gnucash-icon.png
src/pixmaps/256x256/gnucash-icon.png
src/pixmaps/32x32/gnucash-icon.png
src/pixmaps/48x48/gnucash-icon.png
src/pixmaps/64x64/gnucash-icon.png
src/pixmaps/96x96/gnucash-icon.png
src/pixmaps/gnucash-icon-16x16.png
src/pixmaps/gnucash-icon-32x32.png
src/pixmaps/scalable/gnucash-icon.svg
src/optional/python-bindings/gnucash_core_c.py
src/test-core/unittest_support.py
)
)

View File

@ -51,6 +51,16 @@ gchar *gnc_path_get_libdir()
return gnc_gbr_find_lib_dir (LIBDIR);
}
/** Returns the libdir path, usually
* "$prefix/lib".
*
* @returns A newly allocated string. */
gchar *gnc_path_get_datadir()
{
//printf("Returning libdir %s\n", gnc_gbr_find_lib_dir (LIBDIR));
return gnc_gbr_find_data_dir (DATADIR);
}
/** Returns the datadir path, usually
* "$prefix/share/gnucash". Needed for gnc_gnome_locate_*().
*

View File

@ -43,6 +43,12 @@ gchar *gnc_path_get_bindir(void);
* @returns A newly allocated string. */
gchar *gnc_path_get_libdir(void);
/** Returns the datadir path, usually
* "$prefix/share".
*
* @returns A newly allocated string. */
gchar *gnc_path_get_datadir(void);
/** Returns the pkgdatadir path, usually
* "$prefix/share/gnucash". Needed for gnc_gnome_locate_*().
*

View File

@ -1,21 +1,21 @@
<!DOCTYPE RCC>
<RCC version="1.0">
<qresource>
<file>../pixmaps/gnc-account-delete.png</file>
<file>../pixmaps/gnc-account-edit.png</file>
<file>../pixmaps/gnc-account-new.png</file>
<file>../pixmaps/gnc-account-open.png</file>
<file>../pixmaps/gnc-account.png</file>
<file>../pixmaps/gnc-invoice-edit.png</file>
<file>../pixmaps/gnc-invoice.png</file>
<file>../pixmaps/gnc-invoice-post.png</file>
<file>../pixmaps/gnc-invoice-unpost.png</file>
<file>../pixmaps/gnc-jumpto.png</file>
<file>../pixmaps/gnc-split-trans.png</file>
<file>../pixmaps/gnc-sx-new.png</file>
<file>../pixmaps/gnc-transfer.png</file>
<file>../pixmaps/gnucash-icon-48x48.png</file>
<file>../pixmaps/gnucash-icon-64x64.png</file>
<file>../pixmaps/gnucash_splash.png</file>
<qresource prefix="/pixmaps">
<file alias="gnc-account-delete.png">../pixmaps/hicolor/24x24/actions/gnc-account-delete.png</file>
<file alias="gnc-account-edit.png">../pixmaps/hicolor/24x24/actions/gnc-account-edit.png</file>
<file alias="gnc-account-new.png">../pixmaps/hicolor/24x24/actions/gnc-account-new.png</file>
<file alias="gnc-account-open.png">../pixmaps/hicolor/24x24/actions/gnc-account-open.png</file>
<file alias="gnc-account.png">../pixmaps/hicolor/24x24/actions/gnc-account.png</file>
<file alias="gnc-invoice-edit.png">../pixmaps/hicolor/24x24/actions/gnc-invoice-edit.png</file>
<file alias="gnc-invoice.png">../pixmaps/hicolor/24x24/actions/gnc-invoice.png</file>
<file alias="gnc-invoice-post.png">../pixmaps/hicolor/24x24/actions/gnc-invoice-post.png</file>
<file alias="gnc-invoice-unpost.png">../pixmaps/hicolor/24x24/actions/gnc-invoice-unpost.png</file>
<file alias="gnc-jumpto.png">../pixmaps/hicolor/24x24/actions/gnc-jumpto.png</file>
<file alias="gnc-split-trans.png">../pixmaps/hicolor/24x24/actions/gnc-split-trans.png</file>
<file alias="gnc-sx-new.png">../pixmaps/hicolor/24x24/actions/gnc-sx-new.png</file>
<file alias="gnc-transfer.png">../pixmaps/hicolor/24x24/actions/gnc-transfer.png</file>
<file alias="gnucash-icon-48x48.png">../pixmaps/hicolor/24x24/actions/gnucash-icon.png</file>
<file alias="gnucash-icon-64x64.png">../pixmaps/hicolor/24x24/actions/gnucash-icon.png</file>
<file alias="gnucash_splash.png">../pixmaps/gnucash_splash.png</file>
</qresource>
</RCC>

View File

@ -648,13 +648,9 @@ gnc_gui_init(void)
gchar *data_dir;
#endif
int idx;
char *icon_filenames[] = {"gnucash-icon-16x16.png",
"gnucash-icon-32x32.png",
"gnucash-icon-48x48.png",
NULL
};
int icon_sizes[] = { 16, 32, 48, 0 };
GList *icons = NULL;
char *fullname;
GtkIconTheme *icon_theme = gtk_icon_theme_get_default ();
ENTER ("");
@ -662,26 +658,18 @@ gnc_gui_init(void)
return main_window;
/* use custom icon */
for (idx = 0; icon_filenames[idx] != NULL; idx++)
gnc_load_app_icons();
for (idx = 0; icon_sizes[idx] != 0; idx++)
{
GdkPixbuf *buf = NULL;
fullname = gnc_filepath_locate_pixmap(icon_filenames[idx]);
if (fullname == NULL)
{
g_warning("couldn't find icon file [%s]", icon_filenames[idx]);
continue;
}
buf = gnc_gnome_get_gdkpixbuf(fullname);
if (buf == NULL)
{
g_warning("error loading image from [%s]", fullname);
g_free(fullname);
continue;
}
g_free(fullname);
icons = g_list_append(icons, buf);
GdkPixbuf *pixbuf = gtk_icon_theme_load_icon (icon_theme,
GNC_ICON_APP,
icon_sizes[idx],
GTK_ICON_LOOKUP_USE_BUILTIN,
NULL);
if (!pixbuf)
g_warning("error loading application icon of size [%i]", icon_sizes[idx]);
else
icons = g_list_append(icons, pixbuf);
}
gtk_window_set_default_icon_list(icons);
@ -747,7 +735,6 @@ gnc_gui_init(void)
/* Load css configuration file */
gnc_add_css_file ();
gnc_load_app_icons();
gnc_totd_dialog(GTK_WINDOW(main_window), TRUE);
LEAVE ("");

View File

@ -34,83 +34,72 @@
#include "gnc-gnome-utils.h"
#include "gnc-path.h"
typedef struct _item_file
typedef enum {
APP_ICON,
ACTION_ICON
} IconFileType;
typedef struct _icon_file
{
const gchar *icon_name;
const gchar *filename;
} item_file;
const IconFileType icon_type;
} icon_file;
static item_file item_files[] =
static icon_file icon_files[] =
{
{ GNC_ICON_ACCOUNT, "gnc-account.png"},
{ GNC_ICON_ACCOUNT_REPORT, "gnc-account-report.png"},
{ GNC_ICON_DELETE_ACCOUNT, "gnc-account-delete.png"},
{ GNC_ICON_EDIT_ACCOUNT, "gnc-account-edit.png"},
{ GNC_ICON_NEW_ACCOUNT, "gnc-account-new.png"},
{ GNC_ICON_OPEN_ACCOUNT, "gnc-account-open.png"},
{ GNC_ICON_TRANSFER, "gnc-transfer.png"},
{ GNC_ICON_SCHEDULE, "gnc-sx-new.png"},
{ GNC_ICON_SPLIT_TRANS, "gnc-split-trans.png"},
{ GNC_ICON_JUMP_TO, "gnc-jumpto.png"},
{ GNC_ICON_INVOICE, "gnc-invoice.png"},
{ GNC_ICON_INVOICE_PAY, "gnc-invoice-pay.png"},
{ GNC_ICON_INVOICE_POST, "gnc-invoice-post.png"},
{ GNC_ICON_INVOICE_UNPOST, "gnc-invoice-unpost.png"},
{ GNC_ICON_INVOICE_NEW, "gnc-invoice-new.png"},
{ GNC_ICON_INVOICE_EDIT, "gnc-invoice-edit.png"},
{ GNC_ICON_INVOICE_DUPLICATE, "gnc-invoice-duplicate.png"},
{ GNC_ICON_PDF_EXPORT, "gnc-gnome-pdf.png"},
{ GNC_ICON_APP, "gnucash-icon.png", APP_ICON},
{ GNC_ICON_ACCOUNT, "gnc-account.png", ACTION_ICON},
{ GNC_ICON_ACCOUNT_REPORT, "gnc-account-report.png", ACTION_ICON},
{ GNC_ICON_DELETE_ACCOUNT, "gnc-account-delete.png", ACTION_ICON},
{ GNC_ICON_EDIT_ACCOUNT, "gnc-account-edit.png", ACTION_ICON},
{ GNC_ICON_NEW_ACCOUNT, "gnc-account-new.png", ACTION_ICON},
{ GNC_ICON_OPEN_ACCOUNT, "gnc-account-open.png", ACTION_ICON},
{ GNC_ICON_TRANSFER, "gnc-transfer.png", ACTION_ICON},
{ GNC_ICON_SCHEDULE, "gnc-sx-new.png", ACTION_ICON},
{ GNC_ICON_SPLIT_TRANS, "gnc-split-trans.png", ACTION_ICON},
{ GNC_ICON_JUMP_TO, "gnc-jumpto.png", ACTION_ICON},
{ GNC_ICON_INVOICE, "gnc-invoice.png", ACTION_ICON},
{ GNC_ICON_INVOICE_PAY, "gnc-invoice-pay.png", ACTION_ICON},
{ GNC_ICON_INVOICE_POST, "gnc-invoice-post.png", ACTION_ICON},
{ GNC_ICON_INVOICE_UNPOST, "gnc-invoice-unpost.png", ACTION_ICON},
{ GNC_ICON_INVOICE_NEW, "gnc-invoice-new.png", ACTION_ICON},
{ GNC_ICON_INVOICE_EDIT, "gnc-invoice-edit.png", ACTION_ICON},
{ GNC_ICON_INVOICE_DUPLICATE, "gnc-invoice-duplicate.png", ACTION_ICON},
{ GNC_ICON_PDF_EXPORT, "gnc-gnome-pdf.png", ACTION_ICON},
{ GNC_ICON_PDF_EXPORT, "gnc-gnome-pdf.png", ACTION_ICON},
{ 0 },
};
void
gnc_load_app_icons (void)
{
#if GTK_CHECK_VERSION(3,14,0)
GtkIconTheme *icon_theme = gtk_icon_theme_get_default ();
#endif
item_file *file;
icon_file *file;
const gchar *default_path;
gchar* pkgdatadir = gnc_path_get_pkgdatadir ();
gchar* datadir = gnc_path_get_datadir ();
default_path = g_build_filename (pkgdatadir, "icons", NULL);
g_free (pkgdatadir);
#if GTK_CHECK_VERSION(3,14,0)
gtk_icon_theme_append_search_path (icon_theme, default_path);
#endif
default_path = g_build_filename (datadir, "icons", NULL);
g_free (datadir);
gtk_icon_theme_append_search_path (icon_theme, default_path);
for (file = item_files; file->icon_name; file++)
for (file = icon_files; file->icon_name; file++)
{
#if GTK_CHECK_VERSION(3,14,0)
gint *icon_sizes = gtk_icon_theme_get_icon_sizes (icon_theme, file->icon_name);
if ((icon_sizes[0] != 16) && (icon_sizes[1] != 24))
if ((file->icon_type == ACTION_ICON) &&
(icon_sizes[0] != 16) && (icon_sizes[1] != 24))
g_warning ("Required icon size for icon name '%s' not found", file->icon_name);
else if ((icon_sizes[0] != 16) && (icon_sizes[3] != 32) && (icon_sizes[4] != 48))
g_warning ("Required icon size for icon name '%s' not found", file->icon_name);
g_free (icon_sizes);
// check to see if we have at least one size for the named icons loaded
g_assert (gtk_icon_theme_has_icon (icon_theme, file->icon_name));
#else
GdkPixbuf *pixbuf_sm, *pixbuf_lg;
char *fullname_sm, *fullname_lg;
fullname_sm = g_strconcat (default_path, "/hicolor/16x16/actions/", file->filename, NULL);
fullname_lg = g_strconcat (default_path, "/hicolor/24x24/actions/", file->filename, NULL);
g_assert (fullname_sm && fullname_lg);
pixbuf_sm = gnc_gnome_get_gdkpixbuf (fullname_sm);
pixbuf_lg = gnc_gnome_get_gdkpixbuf (fullname_lg);
g_assert (pixbuf_sm && pixbuf_lg);
gtk_icon_theme_add_builtin_icon (file->icon_name, 16, pixbuf_sm);
gtk_icon_theme_add_builtin_icon (file->icon_name, 24, pixbuf_lg);
g_object_unref(pixbuf_sm);
g_object_unref(pixbuf_lg);
g_free (fullname_sm);
g_free (fullname_lg);
#endif
}
}

View File

@ -55,6 +55,7 @@ G_BEGIN_DECLS
//#define GNC_ICON_CLOSE_BUDGET "gnc-close-account"
//#define GNC_ICON_EDIT_BUDGET "gnc-edit-account"
#define GNC_ICON_DELETE_BUDGET "gnc-account-delete"
#define GNC_ICON_APP "gnucash-icon"
void gnc_load_app_icons (void);

View File

@ -35,6 +35,7 @@
#include "config.h"
#include <glib/gi18n.h>
#include <gtk/gtk.h>
#include <gdk/gdk.h>
#include <gdk/gdkkeysyms.h>
@ -57,6 +58,7 @@
#include "gnc-gobject-utils.h"
#include "gnc-gui-query.h"
#include "gnc-hooks.h"
#include "gnc-icons.h"
#include "gnc-session.h"
#include "gnc-state.h"
#include "gnc-ui.h"
@ -4455,7 +4457,13 @@ gnc_main_window_cmd_help_about (GtkAction *action, GncMainWindow *window)
gchar **documenters = get_file_strsplit("DOCUMENTERS");
gchar *license = get_file("LICENSE");
gchar *message;
GdkPixbuf *logo = gnc_gnome_get_gdkpixbuf ("gnucash-icon-48x48.png");
GtkIconTheme *icon_theme = gtk_icon_theme_get_default ();
GdkPixbuf *logo = gtk_icon_theme_load_icon (icon_theme,
GNC_ICON_APP,
48,
GTK_ICON_LOOKUP_USE_BUILTIN,
NULL);
#ifdef GNUCASH_SCM
/* Development version */

View File

@ -4,203 +4,74 @@ INSTALL(DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR} DESTINATION share/gnucash
PATTERN CMakeLists.txt EXCLUDE
PATTERN hicolor EXCLUDE
)
INSTALL(DIRECTORY ${DATADIR_BUILD}/gnucash/icons DESTINATION share/gnucash
PATTERN Makefile.* EXCLUDE
PATTERN CMakeLists.txt EXCLUDE
)
FILE(COPY .
DESTINATION ${DATADIR_BUILD}/gnucash/pixmaps
PATTERN Makefile.* EXCLUDE
PATTERN CMakeLists.txt EXCLUDE
PATTERN hicolor EXCLUDE
)
FILE(COPY hicolor
DESTINATION ${DATADIR_BUILD}/gnucash/icons
)
FOREACH(dir 256x256 128x128 96x96 64x64 48x48)
INSTALL(
FILES ${CMAKE_CURRENT_SOURCE_DIR}/gnucash-icon-${dir}.png
RENAME gnucash-icon.png
DESTINATION share/icons/hicolor/${dir}/apps)
FILE(COPY ${CMAKE_CURRENT_SOURCE_DIR}/gnucash-icon-${dir}.png
DESTINATION ${DATADIR_BUILD}/icons/hicolor/${dir}/apps/gnucash-icon-${dir}.png)
IF (BUILDING_FROM_VCS)
FILE(MAKE_DIRECTORY ${dir})
FILE(COPY gnucash-icon-${dir}.png DESTINATION ${dir})
FILE(RENAME ${CMAKE_CURRENT_BINARY_DIR}/${dir}/gnucash-icon-${dir}.png
${CMAKE_CURRENT_BINARY_DIR}/${dir}/gnucash-icon.png)
ENDIF()
ENDFOREACH(dir)
IF (BUILDING_FROM_VCS)
FILE(MAKE_DIRECTORY 16x16 22x22 24x24 32x32 scalable)
# 16x16
FILE(COPY ${CMAKE_SOURCE_DIR}/art/tango/16x16/gnucash.png DESTINATION 16x16)
FILE(RENAME ${CMAKE_CURRENT_BINARY_DIR}/16x16/gnucash.png
${CMAKE_CURRENT_BINARY_DIR}/16x16/gnucash-icon.png)
FILE(COPY ${CMAKE_SOURCE_DIR}/art/tango/16x16/gnucash.png DESTINATION .)
FILE(RENAME ${CMAKE_CURRENT_BINARY_DIR}/gnucash.png
${CMAKE_CURRENT_BINARY_DIR}/gnucash-icon-16x16.png)
# 22x22
FILE(COPY ${CMAKE_SOURCE_DIR}/art/tango/22x22/gnucash-22x22.png DESTINATION 22x22)
FILE(RENAME ${CMAKE_CURRENT_BINARY_DIR}/22x22/gnucash-22x22.png
${CMAKE_CURRENT_BINARY_DIR}/22x22/gnucash-icon.png)
# 24x24
FILE(COPY ${CMAKE_SOURCE_DIR}/art/tango/22x22/gnucash-24x24.png DESTINATION 24x24)
FILE(RENAME ${CMAKE_CURRENT_BINARY_DIR}/24x24/gnucash-24x24.png
${CMAKE_CURRENT_BINARY_DIR}/24x24/gnucash-icon.png)
# 32x32
FILE(COPY ${CMAKE_SOURCE_DIR}/art/tango/32x32/gnucash.png DESTINATION 32x32)
FILE(RENAME ${CMAKE_CURRENT_BINARY_DIR}/32x32/gnucash.png
${CMAKE_CURRENT_BINARY_DIR}/32x32/gnucash-icon.png)
FILE(COPY ${CMAKE_SOURCE_DIR}/art/tango/32x32/gnucash.png DESTINATION .)
FILE(RENAME ${CMAKE_CURRENT_BINARY_DIR}/gnucash.png
${CMAKE_CURRENT_BINARY_DIR}/gnucash-icon-32x32.png)
# scalable
FILE(COPY ${CMAKE_SOURCE_DIR}/art/tango/scalable/gnucash.svg DESTINATION scalable)
FILE(RENAME ${CMAKE_CURRENT_BINARY_DIR}/scalable/gnucash.svg
${CMAKE_CURRENT_BINARY_DIR}/scalable/gnucash-icon.svg)
ELSE()
FILE(MAKE_DIRECTORY 16x16 22x22 24x24 32x32 scalable)
FILE(COPY 16x16/gnucash-icon.png DESTINATION 16x16)
FILE(COPY 22x22/gnucash-icon.png DESTINATION 22x22)
FILE(COPY 24x24/gnucash-icon.png DESTINATION 24x24)
FILE(COPY 32x32/gnucash-icon.png DESTINATION 32x32)
FILE(COPY 32x32/gnucash-icon.png DESTINATION .)
FILE(RENAME ${CMAKE_CURRENT_BINARY_DIR}/gnucash-icon.png ${CMAKE_CURRENT_BINARY_DIR}/gnucash-icon-32x32.png)
FILE(COPY 16x16/gnucash-icon.png DESTINATION .)
FILE(RENAME ${CMAKE_CURRENT_BINARY_DIR}/gnucash-icon.png ${CMAKE_CURRENT_BINARY_DIR}/gnucash-icon-16x16.png)
FILE(COPY scalable/gnucash-icon.svg DESTINATION scalable)
ENDIF()
#-------
FILE(COPY ${CMAKE_CURRENT_BINARY_DIR}/32x32/gnucash-icon.png
DESTINATION ${DATADIR_BUILD}/icons/hicolor/32x32/apps)
FILE(COPY ${CMAKE_CURRENT_BINARY_DIR}/22x22/gnucash-icon.png
DESTINATION ${DATADIR_BUILD}/icons/hicolor/22x22/apps)
FILE(COPY ${CMAKE_CURRENT_BINARY_DIR}/24x24/gnucash-icon.png
DESTINATION ${DATADIR_BUILD}/icons/hicolor/24x24/apps)
FILE(COPY ${CMAKE_CURRENT_BINARY_DIR}/16x16/gnucash-icon.png
DESTINATION ${DATADIR_BUILD}/icons/hicolor/16x16/apps)
FILE(COPY ${CMAKE_CURRENT_BINARY_DIR}/scalable/gnucash-icon.svg
DESTINATION ${DATADIR_BUILD}/icons/hicolor/scalable/apps)
FILE(COPY ${CMAKE_CURRENT_BINARY_DIR}/16x16/gnucash-icon.png
DESTINATION ${DATADIR_BUILD}/gnucash/pixmaps)
FILE(RENAME ${DATADIR_BUILD}/gnucash/pixmaps/gnucash-icon.png
${DATADIR_BUILD}/gnucash/pixmaps/gnucash-icon-16x16.png)
FILE(COPY ${CMAKE_CURRENT_BINARY_DIR}/32x32/gnucash-icon.png
DESTINATION ${DATADIR_BUILD}/gnucash/pixmaps)
FILE(RENAME ${DATADIR_BUILD}/gnucash/pixmaps/gnucash-icon.png
${DATADIR_BUILD}/gnucash/pixmaps/gnucash-icon-32x32.png)
#------------------------
INSTALL(
FILES ${CMAKE_CURRENT_BINARY_DIR}/32x32/gnucash-icon.png
DESTINATION share/icons/hicolor/32x32/apps
DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}/hicolor DESTINATION share/gnucash/icons
REGEX ".*/actions.*" EXCLUDE
)
INSTALL(
FILES ${CMAKE_CURRENT_BINARY_DIR}/22x22/gnucash-icon.png
DESTINATION share/icons/hicolor/22x22/apps
)
INSTALL(
FILES ${CMAKE_CURRENT_BINARY_DIR}/24x24/gnucash-icon.png
DESTINATION share/icons/hicolor/24x24/apps
)
INSTALL(
FILES ${CMAKE_CURRENT_BINARY_DIR}/16x16/gnucash-icon.png
DESTINATION share/icons/hicolor/16x16/apps
)
INSTALL(
FILES ${CMAKE_CURRENT_BINARY_DIR}/scalable/gnucash-icon.svg
DESTINATION share/icons/hicolor/scalable/apps
)
INSTALL(
FILES ${CMAKE_CURRENT_BINARY_DIR}/gnucash-icon-16x16.png
DESTINATION share/gnucash/pixmaps
)
INSTALL(
FILES ${CMAKE_CURRENT_BINARY_DIR}/gnucash-icon-32x32.png
DESTINATION share/gnucash/pixmaps
DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}/hicolor DESTINATION share/icons
REGEX ".*/apps.*" EXCLUDE
)
SET(gncpixmap_DATA
gnc-account-16.png
gnc-account-delete-16.png
gnc-account-delete.png
gnc-account-edit-16.png
gnc-account-edit.png
gnc-account-new-16.png
gnc-account-new.png
gnc-account-open-16.png
gnc-account-open.png
gnc-account.png
gnc-account-report-16.png
gnc-account-report.png
gnc-gnome-pdf-16.png
gnc-gnome-pdf-24.png
gnc-invoice-16.png
gnc-invoice-duplicate-16.png
gnc-invoice-duplicate.png
gnc-invoice-edit-16.png
gnc-invoice-edit.png
gnc-invoice-new-16.png
gnc-invoice-new.png
gnc-invoice-pay-16.png
gnc-invoice-pay.png
gnc-invoice.png
gnc-invoice-post-16.png
gnc-invoice-post.png
gnc-invoice-unpost-16.png
gnc-invoice-unpost.png
gnc-jumpto-16.png
gnc-jumpto.png
gnc-split-trans-16.png
gnc-split-trans.png
gnc-sx-new-16.png
gnc-sx-new.png
gnc-transfer-16.png
gnc-transfer.png
gnucash-icon-128x128.png
gnucash-icon-256x256.png
gnucash-icon-48x48.png
gnucash-icon-48x48.bmp
gnucash-icon-64x64.png
gnucash-icon-96x96.png
gnucash-icon.ico
gnucash_splash.png
stock_split_title.png
stock_split_watermark.png
hicolor/16x16/actions/gnc-account.png
hicolor/24x24/actions/gnc-account.png
hicolor/16x16/actions/gnc-account-delete.png
hicolor/24x24/actions/gnc-account-delete.png
hicolor/16x16/actions/gnc-account-edit.png
hicolor/24x24/actions/gnc-account-edit.png
hicolor/16x16/actions/gnc-account-new.png
hicolor/24x24/actions/gnc-account-new.png
hicolor/16x16/actions/gnc-account-open.png
hicolor/24x24/actions/gnc-account-open.png
hicolor/16x16/actions/gnc-account-report.png
hicolor/24x24/actions/gnc-account-report.png
hicolor/16x16/actions/gnc-gnome-pdf.png
hicolor/24x24/actions/gnc-gnome-pdf.png
hicolor/16x16/actions/gnc-invoice.png
hicolor/24x24/actions/gnc-invoice.png
hicolor/16x16/actions/gnc-invoice-duplicate.png
hicolor/24x24/actions/gnc-invoice-duplicate.png
hicolor/16x16/actions/gnc-invoice-edit.png
hicolor/24x24/actions/gnc-invoice-edit.png
hicolor/16x16/actions/gnc-invoice-new.png
hicolor/24x24/actions/gnc-invoice-new.png
hicolor/16x16/actions/gnc-invoice-pay.png
hicolor/24x24/actions/gnc-invoice-pay.png
hicolor/16x16/actions/gnc-invoice-post.png
hicolor/24x24/actions/gnc-invoice-post.png
hicolor/16x16/actions/gnc-invoice-unpost.png
hicolor/24x24/actions/gnc-invoice-unpost.png
hicolor/16x16/actions/gnc-jumpto.png
hicolor/24x24/actions/gnc-jumpto.png
hicolor/16x16/actions/gnc-split-trans.png
hicolor/24x24/actions/gnc-split-trans.png
hicolor/16x16/actions/gnc-sx-new.png
hicolor/24x24/actions/gnc-sx-new.png
hicolor/16x16/actions/gnc-transfer.png
hicolor/24x24/actions/gnc-transfer.png
gnucash-icon.ico
gnucash-icon-48x48.bmp
gnucash_splash.png
)
SET_LOCAL_DIST(pixmaps_DIST_local CMakeLists.txt Makefile.am ${gncpixmap_DATA})
SET(gncicon_DATA
hicolor/16x16/apps/gnucash-icon.png
hicolor/22x22/apps/gnucash-icon.png
hicolor/24x24/apps/gnucash-icon.png
hicolor/32x32/apps/gnucash-icon.png
hicolor/48x48/apps/gnucash-icon.png
hicolor/64x64/apps/gnucash-icon.png
hicolor/96x96/apps/gnucash-icon.png
hicolor/128x128/apps/gnucash-icon.png
hicolor/256x256/apps/gnucash-icon.png
)
SET(gncscalableicon_DATA
hicolor/scalable/apps/gnucash-icon.svg
)
SET_LOCAL_DIST(pixmaps_DIST_local CMakeLists.txt Makefile.am ${gncpixmap_DATA}
${gncicon_DATA} ${gncscalableicon_DATA})
SET(pixmaps_DIST ${pixmaps_DIST_local} PARENT_SCOPE)

View File

@ -1,132 +1,80 @@
gncpixmapdir = ${GNC_PIXMAP_DIR}
gncpixmap_DATA = \
hicolor/16x16/actions/gnc-account.png \
hicolor/24x24/actions/gnc-account.png \
hicolor/16x16/actions/gnc-account-delete.png \
hicolor/24x24/actions/gnc-account-delete.png \
hicolor/16x16/actions/gnc-account-edit.png \
hicolor/24x24/actions/gnc-account-edit.png \
hicolor/16x16/actions/gnc-account-new.png \
hicolor/24x24/actions/gnc-account-new.png \
hicolor/16x16/actions/gnc-account-open.png \
hicolor/24x24/actions/gnc-account-open.png \
hicolor/16x16/actions/gnc-account-report.png \
hicolor/24x24/actions/gnc-account-report.png \
hicolor/16x16/actions/gnc-gnome-pdf.png \
hicolor/24x24/actions/gnc-gnome-pdf.png \
hicolor/16x16/actions/gnc-invoice.png \
hicolor/24x24/actions/gnc-invoice.png \
hicolor/16x16/actions/gnc-invoice-duplicate.png \
hicolor/24x24/actions/gnc-invoice-duplicate.png \
hicolor/16x16/actions/gnc-invoice-edit.png \
hicolor/24x24/actions/gnc-invoice-edit.png \
hicolor/16x16/actions/gnc-invoice-new.png \
hicolor/24x24/actions/gnc-invoice-new.png \
hicolor/16x16/actions/gnc-invoice-pay.png \
hicolor/24x24/actions/gnc-invoice-pay.png \
hicolor/16x16/actions/gnc-invoice-post.png \
hicolor/24x24/actions/gnc-invoice-post.png \
hicolor/16x16/actions/gnc-invoice-unpost.png \
hicolor/24x24/actions/gnc-invoice-unpost.png \
hicolor/16x16/actions/gnc-jumpto.png \
hicolor/24x24/actions/gnc-jumpto.png \
hicolor/16x16/actions/gnc-split-trans.png \
hicolor/24x24/actions/gnc-split-trans.png \
hicolor/16x16/actions/gnc-sx-new.png \
hicolor/24x24/actions/gnc-sx-new.png \
hicolor/16x16/actions/gnc-transfer.png \
hicolor/24x24/actions/gnc-transfer.png \
gnucash-icon.ico \
gnucash-icon-16x16.png \
gnucash-icon-32x32.png \
gnucash-icon-48x48.bmp \
gnucash-icon-48x48.png \
gnucash-icon-64x64.png \
gnucash-icon-96x96.png \
gnucash-icon-128x128.png \
gnucash-icon-256x256.png \
gnucash_splash.png \
stock_split_title.png \
stock_split_watermark.png
gnucash_splash.png
gncicon16dir = ${pkgdatadir}/icons/hicolor/16x16/actions
gncicon16_DATA = \
hicolor/16x16/actions/gnc-account.png \
hicolor/16x16/actions/gnc-account-delete.png \
hicolor/16x16/actions/gnc-account-edit.png \
hicolor/16x16/actions/gnc-account-new.png \
hicolor/16x16/actions/gnc-account-open.png \
hicolor/16x16/actions/gnc-account-report.png \
hicolor/16x16/actions/gnc-gnome-pdf.png \
hicolor/16x16/actions/gnc-invoice.png \
hicolor/16x16/actions/gnc-invoice-duplicate.png \
hicolor/16x16/actions/gnc-invoice-edit.png \
hicolor/16x16/actions/gnc-invoice-new.png \
hicolor/16x16/actions/gnc-invoice-pay.png \
hicolor/16x16/actions/gnc-invoice-post.png \
hicolor/16x16/actions/gnc-invoice-unpost.png \
hicolor/16x16/actions/gnc-jumpto.png \
hicolor/16x16/actions/gnc-split-trans.png \
hicolor/16x16/actions/gnc-sx-new.png \
hicolor/16x16/actions/gnc-transfer.png
gncicon24dir = ${pkgdatadir}/icons/hicolor/24x24/actions
gncicon24_DATA = \
hicolor/24x24/actions/gnc-account.png \
hicolor/24x24/actions/gnc-account-delete.png \
hicolor/24x24/actions/gnc-account-edit.png \
hicolor/24x24/actions/gnc-account-new.png \
hicolor/24x24/actions/gnc-account-open.png \
hicolor/24x24/actions/gnc-account-report.png \
hicolor/24x24/actions/gnc-gnome-pdf.png \
hicolor/24x24/actions/gnc-invoice.png \
hicolor/24x24/actions/gnc-invoice-duplicate.png \
hicolor/24x24/actions/gnc-invoice-edit.png \
hicolor/24x24/actions/gnc-invoice-new.png \
hicolor/24x24/actions/gnc-invoice-pay.png \
hicolor/24x24/actions/gnc-invoice-post.png \
hicolor/24x24/actions/gnc-invoice-unpost.png \
hicolor/24x24/actions/gnc-jumpto.png \
hicolor/24x24/actions/gnc-split-trans.png \
hicolor/24x24/actions/gnc-sx-new.png \
hicolor/24x24/actions/gnc-transfer.png
gnchuge256icondir = ${datadir}/icons/hicolor/256x256/apps
gnchuge256icon_DATA = 256x256/gnucash-icon.png
gnchuge256icon_DATA = hicolor/256x256/apps/gnucash-icon.png
gnchuge128icondir = ${datadir}/icons/hicolor/128x128/apps
gnchuge128icon_DATA = 128x128/gnucash-icon.png
gnchuge128icon_DATA = hicolor/128x128/apps/gnucash-icon.png
gnclarge96icondir = ${datadir}/icons/hicolor/96x96/apps
gnclarge96icon_DATA = 96x96/gnucash-icon.png
gnclarge96icon_DATA = hicolor/96x96/apps/gnucash-icon.png
gnclarge64icondir = ${datadir}/icons/hicolor/64x64/apps
gnclarge64icon_DATA = 64x64/gnucash-icon.png
gnclarge64icon_DATA = hicolor/64x64/apps/gnucash-icon.png
gnclarge48icondir = ${datadir}/icons/hicolor/48x48/apps
gnclarge48icon_DATA = 48x48/gnucash-icon.png
gnclarge48icon_DATA = hicolor/48x48/apps/gnucash-icon.png
gncmediumicondir = ${datadir}/icons/hicolor/32x32/apps
gncmediumicon_DATA = 32x32/gnucash-icon.png
gncmediumicon_DATA = hicolor/32x32/apps/gnucash-icon.png
gncsmalltwfouricondir = ${datadir}/icons/hicolor/24x24/apps
gncsmalltwfouricon_DATA = 24x24/gnucash-icon.png
gncsmalltwfouricon_DATA = hicolor/24x24/apps/gnucash-icon.png
gncsmalltwtwoicondir = ${datadir}/icons/hicolor/22x22/apps
gncsmalltwtwoicon_DATA = 22x22/gnucash-icon.png
gncsmalltwtwoicon_DATA = hicolor/22x22/apps/gnucash-icon.png
gncextrasmallicondir = ${datadir}/icons/hicolor/16x16/apps
gncextrasmallicon_DATA = 16x16/gnucash-icon.png
gncextrasmallicon_DATA = hicolor/16x16/apps/gnucash-icon.png
gncscalableicondir = ${datadir}/icons/hicolor/scalable/apps
gncscalableicon_DATA = scalable/gnucash-icon.svg
if BUILDING_FROM_VCS
256x256/gnucash-icon.png: gnucash-icon-256x256.png
-mkdir -p 256x256
cp ${srcdir}/gnucash-icon-256x256.png 256x256/gnucash-icon.png
128x128/gnucash-icon.png: gnucash-icon-128x128.png
-mkdir -p 128x128
cp ${srcdir}/gnucash-icon-128x128.png 128x128/gnucash-icon.png
96x96/gnucash-icon.png: gnucash-icon-96x96.png
-mkdir -p 96x96
cp ${srcdir}/gnucash-icon-96x96.png 96x96/gnucash-icon.png
64x64/gnucash-icon.png: gnucash-icon-64x64.png
-mkdir -p 64x64
cp ${srcdir}/gnucash-icon-64x64.png 64x64/gnucash-icon.png
48x48/gnucash-icon.png: gnucash-icon-48x48.png
-mkdir -p 48x48
cp ${srcdir}/gnucash-icon-48x48.png 48x48/gnucash-icon.png
32x32/gnucash-icon.png: ${top_srcdir}/art/tango/32x32/gnucash.png
-mkdir -p 32x32
cp ${top_srcdir}/art/tango/32x32/gnucash.png 32x32/gnucash-icon.png
24x24/gnucash-icon.png: ${top_srcdir}/art/tango/22x22/gnucash-24x24.png
-mkdir -p 24x24
cp ${top_srcdir}/art/tango/22x22/gnucash-24x24.png 24x24/gnucash-icon.png
22x22/gnucash-icon.png: ${top_srcdir}/art/tango/22x22/gnucash-22x22.png
-mkdir -p 22x22
cp ${top_srcdir}/art/tango/22x22/gnucash-22x22.png 22x22/gnucash-icon.png
16x16/gnucash-icon.png: ${top_srcdir}/art/tango/16x16/gnucash.png
-mkdir -p 16x16
cp ${top_srcdir}/art/tango/16x16/gnucash.png 16x16/gnucash-icon.png
scalable/gnucash-icon.svg: ${top_srcdir}/art/tango/scalable/gnucash.svg
-mkdir -p scalable
cp ${top_srcdir}/art/tango/scalable/gnucash.svg scalable/gnucash-icon.svg
gnucash-icon-16x16.png:
cp ${top_srcdir}/art/tango/16x16/gnucash.png gnucash-icon-16x16.png
gnucash-icon-32x32.png:
cp ${top_srcdir}/art/tango/32x32/gnucash.png gnucash-icon-32x32.png
endif
gncscalableicon_DATA = hicolor/scalable/apps/gnucash-icon.svg
# As suggested by <http://live.gnome.org/GnomeGoals/AppIcon>
if !OS_WIN32
@ -158,16 +106,12 @@ ico_files_lr = \
EXTRA_DIST = \
${gncpixmap_DATA} \
${gncicon16_DATA} \
${gncicon24_DATA} \
${ico_files_hr} \
${ico_files_lr} \
${gncscalableicon_DATA}
# Only clean up if we're building from svn/svk/git/bzr
if BUILDING_FROM_VCS
clean-local:
-rm -rf 256x256 128x128 96x96 64x64 48x48 32x32 24x24 22x22 16x16 scalable
endif
# Create gnucash-icon.ico
.PHONY: ico
ico: ${ico_files_hr} ${ico_files_lr}

View File

Before

Width:  |  Height:  |  Size: 15 KiB

After

Width:  |  Height:  |  Size: 15 KiB

View File

Before

Width:  |  Height:  |  Size: 713 B

After

Width:  |  Height:  |  Size: 713 B

View File

Before

Width:  |  Height:  |  Size: 1.2 KiB

After

Width:  |  Height:  |  Size: 1.2 KiB

View File

Before

Width:  |  Height:  |  Size: 1.3 KiB

After

Width:  |  Height:  |  Size: 1.3 KiB

View File

Before

Width:  |  Height:  |  Size: 33 KiB

After

Width:  |  Height:  |  Size: 33 KiB

View File

Before

Width:  |  Height:  |  Size: 2.0 KiB

After

Width:  |  Height:  |  Size: 2.0 KiB

View File

Before

Width:  |  Height:  |  Size: 3.6 KiB

After

Width:  |  Height:  |  Size: 3.6 KiB

View File

Before

Width:  |  Height:  |  Size: 5.9 KiB

After

Width:  |  Height:  |  Size: 5.9 KiB

View File

Before

Width:  |  Height:  |  Size: 9.0 KiB

After

Width:  |  Height:  |  Size: 9.0 KiB

File diff suppressed because it is too large Load Diff

After

Width:  |  Height:  |  Size: 45 KiB