plug-ins/imagemap/imap_grid.c plug-ins/imagemap/imap_main.c fixed problem

2006-07-14  Maurits  <m.rijk@chello.nl>

	* plug-ins/imagemap/imap_grid.c
	* plug-ins/imagemap/imap_main.c
	* plug-ins/imagemap/imap_menu.c: fixed problem with zoom menu
This commit is contained in:
Maurits 2006-07-14 13:37:56 +00:00 committed by Maurits Rijk
parent 2711e79a93
commit 4f2b4681c5
5 changed files with 167 additions and 144 deletions

View File

@ -1,3 +1,9 @@
2006-07-14 Maurits <m.rijk@chello.nl>
* plug-ins/imagemap/imap_grid.c
* plug-ins/imagemap/imap_main.c
* plug-ins/imagemap/imap_menu.c: fixed problem with zoom menu
2006-07-14 Mukund Sivaraman <muks@mukund.org>
* app/config/gimpbaseconfig.c: if possible, detect the number of

View File

@ -24,12 +24,12 @@
#ifndef _IMAP_GRID_H
#define _IMAP_GRID_H
void do_grid_settings_dialog();
void draw_grid(GtkWidget *preview);
void toggle_grid();
void round_to_grid(gint *x, gint *y);
void do_grid_settings_dialog (void);
void draw_grid (GtkWidget *preview);
void toggle_grid (void);
void round_to_grid (gint *x, gint *y);
gboolean grid_near_x(gint x);
gboolean grid_near_y(gint y);
gboolean grid_near_x (gint x);
gboolean grid_near_y (gint y);
#endif /* _IMAP_GRID_H */

View File

@ -3,7 +3,7 @@
*
* Generates clickable image maps.
*
* Copyright (C) 1998-2005 Maurits Rijk m.rijk@chello.nl
* Copyright (C) 1998-2006 Maurits Rijk m.rijk@chello.nl
*
* 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
@ -72,7 +72,7 @@ FALSE, TRUE, DEFAULT_UNDO_LEVELS, DEFAULT_MRU_SIZE};
static MRU_t *_mru;
static GimpDrawable *_drawable;
static GdkCursorType _cursor;
static GdkCursorType _cursor = GDK_TOP_LEFT_ARROW;
static gboolean _show_url = TRUE;
static gchar *_filename = NULL;
static char *_image_name;
@ -382,21 +382,21 @@ redraw_preview(void)
preview_redraw(_preview);
}
#ifdef _NOT_READY_YET
static void
set_preview_gray(void)
void
set_preview_color (GtkRadioAction *action, GtkRadioAction *current,
gpointer user_data)
{
_map_info.show_gray = TRUE;
_map_info.show_gray = (gtk_radio_action_get_current_value (current) == 1);
set_zoom(_zoom_factor);
}
static void
set_preview_color(void)
void
set_zoom_factor (GtkRadioAction *action, GtkRadioAction *current,
gpointer user_data)
{
_map_info.show_gray = FALSE;
set_zoom(_zoom_factor);
gint factor = gtk_radio_action_get_current_value (current);
set_zoom (factor + 1);
}
#endif
const char*
get_image_name(void)
@ -652,13 +652,14 @@ clear_map_info(void)
static void
do_data_changed_dialog(void (*continue_cb)(gpointer), gpointer param)
{
GtkWidget *dialog = gtk_message_dialog_new_with_markup
GtkWidget *dialog = gtk_message_dialog_new
(NULL,
GTK_DIALOG_DESTROY_WITH_PARENT,
GTK_MESSAGE_QUESTION,
GTK_BUTTONS_YES_NO,
"<span weight=\"bold\" size=\"larger\">%s</span>\n\n%s",
_("Some data has been changed!"),
_("Some data has been changed!"));
gtk_message_dialog_format_secondary_text
(GTK_DIALOG (dialog),
_("Do you really want to discard your changes?"));
if (gtk_dialog_run (GTK_DIALOG (dialog)) == GTK_RESPONSE_YES)
@ -945,13 +946,11 @@ load(const gchar *filename)
check_if_changed(really_load, (gpointer) tmp_filename);
}
#ifdef _NOT_READY_YET_
static void
void
toggle_area_list(void)
{
selection_toggle_visibility(_selection);
}
#endif
static gboolean
close_callback(GtkWidget *widget, gpointer data)
@ -1210,29 +1209,6 @@ do_create_guides_dialog(void)
command_execute (guides_command_new (_shapes));
}
#ifdef _NOT_READY_YET_
static Command_t*
factory_toggle_area_list(void)
{
return command_new(toggle_area_list);
}
static Command_t*
factory_preview_color(void)
{
return command_new(set_preview_color);
}
static Command_t*
factory_preview_gray(void)
{
return command_new(set_preview_gray);
}
#endif
static Command_t*
factory_move_up(void)
{
@ -1256,6 +1232,8 @@ dialog(GimpDrawable *drawable)
gimp_ui_init ("imagemap", TRUE);
set_arrow_func ();
_shapes = make_object_list();
_dlg = dlg = gtk_window_new(GTK_WINDOW_TOPLEVEL);

View File

@ -3,7 +3,7 @@
*
* Generates clickable image maps.
*
* Copyright (C) 1998-2005 Maurits Rijk m.rijk@chello.nl
* Copyright (C) 1998-2006 Maurits Rijk m.rijk@chello.nl
*
* 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
@ -64,6 +64,9 @@ void do_use_gimp_guides_dialog();
void imap_help();
void set_func(int func);
void set_preview_color();
void set_zoom_factor();
void toggle_area_list();
static Menu_t _menu;
static GtkUIManager *ui_manager;
@ -103,6 +106,12 @@ menu_set_zoom_sensitivity(gint factor)
set_sensitive ("/MainMenu/ViewMenu/ZoomOut", factor > 1);
}
void
menu_set_zoom(gint factor)
{
menu_set_zoom_sensitivity (factor);
}
void
menu_shapes_selected(gint count)
{
@ -291,7 +300,6 @@ static const char *ui_description =
" <separator/>"
" <menuitem action='ZoomIn'/>"
" <menuitem action='ZoomOut'/>"
#if 0
" <menu action='ZoomToMenu'>"
" <menuitem action='Zoom1:1'/>"
" <menuitem action='Zoom1:2'/>"
@ -302,7 +310,6 @@ static const char *ui_description =
" <menuitem action='Zoom1:7'/>"
" <menuitem action='Zoom1:8'/>"
" </menu>"
#endif
" </menu>"
" <menu action='MappingMenu'>"
" <menuitem action='Arrow'/>"
@ -417,12 +424,13 @@ make_menu(GtkWidget *main_vbox, GtkWidget *window)
window);
gtk_action_group_add_toggle_actions (action_group, toggle_entries,
G_N_ELEMENTS (toggle_entries), window);
gtk_action_group_add_radio_actions (action_group, color_entries,
G_N_ELEMENTS (color_entries), 0,
NULL, window);
gtk_action_group_add_radio_actions (action_group, zoom_entries,
G_N_ELEMENTS (zoom_entries), 0,
NULL, window);
gtk_action_group_add_radio_actions (action_group, color_entries,
G_N_ELEMENTS (color_entries), 0,
G_CALLBACK (set_preview_color), NULL);
gtk_action_group_add_radio_actions (action_group, zoom_entries,
G_N_ELEMENTS (zoom_entries), 0,
G_CALLBACK (set_zoom_factor), NULL);
gtk_action_group_add_radio_actions (action_group, mapping_entries,
G_N_ELEMENTS (mapping_entries), 0,
G_CALLBACK (set_func), window);
@ -452,6 +460,8 @@ make_menu(GtkWidget *main_vbox, GtkWidget *window)
set_sensitive ("/MainMenu/EditMenu/Paste", FALSE);
menu_shapes_selected (0);
menu_set_zoom_sensitivity (1);
return &_menu;
}
@ -504,12 +514,6 @@ menu_check_grid(gboolean check)
gtk_toggle_action_set_active (GTK_TOGGLE_ACTION (action), check);
}
void
menu_set_zoom(gint factor)
{
menu_set_zoom_sensitivity (factor);
}
GtkWidget*
make_toolbar(GtkWidget *main_vbox, GtkWidget *window)
{

View File

@ -11,17 +11,13 @@
#
# - Modified by jacob berkman <jacob@ximian.com> to install
# Makefile.in.in and po2tbl.sed.in for use with glib-gettextize
#
# - Modified by Rodney Dawes <dobey@novell.com> for use with intltool
#
# We have the following line for use by intltoolize:
# INTLTOOL_MAKEFILE
GETTEXT_PACKAGE = @GETTEXT_PACKAGE@
PACKAGE = @PACKAGE@
VERSION = @VERSION@
SHELL = /bin/sh
@SET_MAKE@
srcdir = @srcdir@
top_srcdir = @top_srcdir@
@ -31,19 +27,20 @@ VPATH = @srcdir@
prefix = @prefix@
exec_prefix = @exec_prefix@
datadir = @datadir@
datarootdir = @datarootdir@
libdir = @libdir@
DATADIRNAME = @DATADIRNAME@
itlocaledir = $(prefix)/$(DATADIRNAME)/locale
localedir = $(libdir)/locale
gnulocaledir = $(datadir)/locale
gettextsrcdir = $(datadir)/glib-2.0/gettext/po
subdir = po
install_sh = @install_sh@
# Automake >= 1.8 provides @mkdir_p@.
# Until it can be supposed, use the safe fallback:
mkdir_p = $(install_sh) -d
mkdir_p = @mkdir_p@
mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
INSTALL = @INSTALL@
INSTALL_DATA = @INSTALL_DATA@
CC = @CC@
GENCAT = @GENCAT@
GMSGFMT = @GMSGFMT@
MSGFMT = @MSGFMT@
XGETTEXT = @XGETTEXT@
@ -52,26 +49,35 @@ INTLTOOL_EXTRACT = @INTLTOOL_EXTRACT@
MSGMERGE = INTLTOOL_EXTRACT=$(INTLTOOL_EXTRACT) srcdir=$(srcdir) $(INTLTOOL_UPDATE) --gettext-package $(GETTEXT_PACKAGE) --dist
GENPOT = INTLTOOL_EXTRACT=$(INTLTOOL_EXTRACT) srcdir=$(srcdir) $(INTLTOOL_UPDATE) --gettext-package $(GETTEXT_PACKAGE) --pot
ALL_LINGUAS = @ALL_LINGUAS@
DEFS = @DEFS@
CFLAGS = @CFLAGS@
CPPFLAGS = @CPPFLAGS@
PO_LINGUAS=$(shell if test -r $(srcdir)/LINGUAS; then grep -v "^\#" $(srcdir)/LINGUAS; fi)
INCLUDES = -I.. -I$(top_srcdir)/intl
POFILES=$(shell if test -n "$(PO_LINGUAS)"; then LINGUAS="$(PO_LINGUAS)"; else LINGUAS="$(ALL_LINGUAS)"; fi; for lang in $$LINGUAS; do printf "$$lang.po "; done)
COMPILE = $(CC) -c $(DEFS) $(INCLUDES) $(CPPFLAGS) $(CFLAGS) $(XCFLAGS)
DISTFILES = ChangeLog Makefile.in.in POTFILES.in $(POFILES)
EXTRA_DISTFILES = POTFILES.skip Makevars LINGUAS
SOURCES =
POFILES = @POFILES@
GMOFILES = @GMOFILES@
DISTFILES = ChangeLog Makefile.in.in POTFILES.in \
$(POFILES) $(GMOFILES) $(SOURCES)
POTFILES = \
#This Gets Replace for some reason
CATALOGS=$(shell if test -n "$(PO_LINGUAS)"; then LINGUAS="$(PO_LINGUAS)"; else LINGUAS="$(ALL_LINGUAS)"; fi; for lang in $$LINGUAS; do printf "$$lang.gmo "; done)
CATALOGS = @CATALOGS@
CATOBJEXT = @CATOBJEXT@
INSTOBJEXT = @INSTOBJEXT@
.SUFFIXES:
.SUFFIXES: .po .pox .gmo .mo .msg .cat
.SUFFIXES: .c .o .po .pox .gmo .mo .msg .cat
.c.o:
$(COMPILE) $<
.po.pox:
$(MAKE) $(GETTEXT_PACKAGE).pot
$(MSGMERGE) $< $(GETTEXT_PACKAGE).pot -o $*.pox
$(MSGMERGE) $< $(top_builddir)/po/$(GETTEXT_PACKAGE).pot -o $*pox
.po.mo:
$(MSGFMT) -o $@ $<
@ -82,7 +88,7 @@ CATALOGS=$(shell if test -n "$(PO_LINGUAS)"; then LINGUAS="$(PO_LINGUAS)"; else
.po.cat:
sed -f ../intl/po2msg.sed < $< > $*.msg \
&& rm -f $@ && gencat $@ $*.msg
&& rm -f $@ && $(GENCAT) $@ $*.msg
all: all-@USE_NLS@
@ -93,98 +99,115 @@ all-no:
$(GETTEXT_PACKAGE).pot: $(POTFILES)
$(GENPOT)
install: install-data
install: install-exec install-data
install-exec:
install-data: install-data-@USE_NLS@
install-data-no: all
install-data-yes: all
$(mkdir_p) $(DESTDIR)$(itlocaledir)
if test -n "$(PO_LINGUAS)"; then \
linguas="$(PO_LINGUAS)"; \
if test -n "$(MKINSTALLDIRS)"; then \
$(MKINSTALLDIRS) $(DESTDIR)$(datadir); \
else \
linguas="$(ALL_LINGUAS)"; \
fi; \
for lang in $$linguas; do \
dir=$(DESTDIR)$(itlocaledir)/$$lang/LC_MESSAGES; \
$(mkdir_p) $$dir; \
if test -r $$lang.gmo; then \
$(INSTALL_DATA) $$lang.gmo $$dir/$(GETTEXT_PACKAGE).mo; \
echo "installing $$lang.gmo as $$dir/$(GETTEXT_PACKAGE).mo"; \
$(SHELL) $(top_srcdir)/mkinstalldirs $(DESTDIR)$(datadir); \
fi
@catalogs='$(CATALOGS)'; \
for cat in $$catalogs; do \
cat=`basename $$cat`; \
case "$$cat" in \
*.gmo) destdir=$(gnulocaledir);; \
*) destdir=$(localedir);; \
esac; \
lang=`echo $$cat | sed 's/\$(CATOBJEXT)$$//'`; \
dir=$(DESTDIR)$$destdir/$$lang/LC_MESSAGES; \
if test -n "$(MKINSTALLDIRS)"; then \
$(MKINSTALLDIRS) $$dir; \
else \
$(INSTALL_DATA) $(srcdir)/$$lang.gmo $$dir/$(GETTEXT_PACKAGE).mo; \
echo "installing $(srcdir)/$$lang.gmo as" \
"$$dir/$(GETTEXT_PACKAGE).mo"; \
$(SHELL) $(top_srcdir)/mkinstalldirs $$dir; \
fi; \
if test -r $$lang.gmo.m; then \
$(INSTALL_DATA) $$lang.gmo.m $$dir/$(GETTEXT_PACKAGE).mo.m; \
echo "installing $$lang.gmo.m as $$dir/$(GETTEXT_PACKAGE).mo.m"; \
if test -r $$cat; then \
$(INSTALL_DATA) $$cat $$dir/$(GETTEXT_PACKAGE)$(INSTOBJEXT); \
echo "installing $$cat as $$dir/$(GETTEXT_PACKAGE)$(INSTOBJEXT)"; \
else \
if test -r $(srcdir)/$$lang.gmo.m ; then \
$(INSTALL_DATA) $(srcdir)/$$lang.gmo.m \
$$dir/$(GETTEXT_PACKAGE).mo.m; \
echo "installing $(srcdir)/$$lang.gmo.m as" \
"$$dir/$(GETTEXT_PACKAGE).mo.m"; \
$(INSTALL_DATA) $(srcdir)/$$cat $$dir/$(GETTEXT_PACKAGE)$(INSTOBJEXT); \
echo "installing $(srcdir)/$$cat as" \
"$$dir/$(GETTEXT_PACKAGE)$(INSTOBJEXT)"; \
fi; \
if test -r $$cat.m; then \
$(INSTALL_DATA) $$cat.m $$dir/$(GETTEXT_PACKAGE)$(INSTOBJEXT).m; \
echo "installing $$cat.m as $$dir/$(GETTEXT_PACKAGE)$(INSTOBJEXT).m"; \
else \
if test -r $(srcdir)/$$cat.m ; then \
$(INSTALL_DATA) $(srcdir)/$$cat.m \
$$dir/$(GETTEXT_PACKAGE)$(INSTOBJEXT).m; \
echo "installing $(srcdir)/$$cat as" \
"$$dir/$(GETTEXT_PACKAGE)$(INSTOBJEXT).m"; \
else \
true; \
fi; \
fi; \
done
# Empty stubs to satisfy archaic automake needs
dvi info tags TAGS ID:
if test "$(PACKAGE)" = "glib"; then \
if test -n "$(MKINSTALLDIRS)"; then \
$(MKINSTALLDIRS) $(DESTDIR)$(gettextsrcdir); \
else \
$(SHELL) $(top_srcdir)/mkinstalldirs $(DESTDIR)$(gettextsrcdir); \
fi; \
$(INSTALL_DATA) $(srcdir)/Makefile.in.in \
$(DESTDIR)$(gettextsrcdir)/Makefile.in.in; \
else \
: ; \
fi
# Define this as empty until I found a useful application.
installcheck:
uninstall:
if test -n "$(PO_LINGUAS)"; then \
linguas="$(PO_LINGUAS)"; \
else \
linguas="$(ALL_LINGUAS)"; \
fi; \
for lang in $$linguas; do \
rm -f $(DESTDIR)$(itlocaledir)/$$lang/LC_MESSAGES/$(GETTEXT_PACKAGE).mo; \
rm -f $(DESTDIR)$(itlocaledir)/$$lang/LC_MESSAGES/$(GETTEXT_PACKAGE).mo.m; \
catalogs='$(CATALOGS)'; \
for cat in $$catalogs; do \
cat=`basename $$cat`; \
lang=`echo $$cat | sed 's/\$(CATOBJEXT)$$//'`; \
rm -f $(DESTDIR)$(localedir)/$$lang/LC_MESSAGES/$(GETTEXT_PACKAGE)$(INSTOBJEXT); \
rm -f $(DESTDIR)$(localedir)/$$lang/LC_MESSAGES/$(GETTEXT_PACKAGE)$(INSTOBJEXT).m; \
rm -f $(DESTDIR)$(gnulocaledir)/$$lang/LC_MESSAGES/$(GETTEXT_PACKAGE)$(INSTOBJEXT); \
rm -f $(DESTDIR)$(gnulocaledir)/$$lang/LC_MESSAGES/$(GETTEXT_PACKAGE)$(INSTOBJEXT).m; \
done
if test "$(PACKAGE)" = "glib"; then \
rm -f $(DESTDIR)$(gettextsrcdir)/Makefile.in.in; \
fi
check: all $(GETTEXT_PACKAGE).pot
check: all
dvi info tags TAGS ID:
mostlyclean:
rm -f *.pox $(GETTEXT_PACKAGE).pot *.old.po cat-id-tbl.tmp
rm -f core core.* *.pox $(GETTEXT_PACKAGE).pot *.old.po cat-id-tbl.tmp
rm -fr *.o
rm -f .intltool-merge-cache
clean: mostlyclean
distclean: clean
rm -f Makefile Makefile.in POTFILES stamp-it
rm -f *.mo *.msg *.cat *.cat.m *.gmo
rm -f Makefile Makefile.in POTFILES *.mo *.msg *.cat *.cat.m
maintainer-clean: distclean
@echo "This command is intended for maintainers to use;"
@echo "it deletes files that may require special tools to rebuild."
rm -f Makefile.in.in
rm -f $(GMOFILES)
distdir = ../$(PACKAGE)-$(VERSION)/$(subdir)
dist distdir: $(DISTFILES)
distdir = ../$(GETTEXT_PACKAGE)-$(VERSION)/$(subdir)
dist distdir: $(DISTFILES) $(GETTEXT_PACKAGE).pot
dists="$(DISTFILES)"; \
extra_dists="$(EXTRA_DISTFILES)"; \
for file in $$extra_dists; do \
test -f $(srcdir)/$$file && dists="$$dists $(srcdir)/$$file"; \
done; \
for file in $$dists; do \
test -f $$file || file="$(srcdir)/$$file"; \
ln $$file $(distdir) 2> /dev/null \
|| cp -p $$file $(distdir); \
ln $(srcdir)/$$file $(distdir) 2> /dev/null \
|| cp -p $(srcdir)/$$file $(distdir); \
done
update-po: Makefile
$(MAKE) $(GETTEXT_PACKAGE).pot
tmpdir=`pwd`; \
if test -n "$(PO_LINGUAS)"; then \
linguas="$(PO_LINGUAS)"; \
else \
linguas="$(ALL_LINGUAS)"; \
fi; \
for lang in $$linguas; do \
catalogs='$(CATALOGS)'; \
for cat in $$catalogs; do \
cat=`basename $$cat`; \
lang=`echo $$cat | sed 's/\$(CATOBJEXT)$$//'`; \
echo "$$lang:"; \
result="`$(MSGMERGE) -o $$tmpdir/$$lang.new.po $$lang`"; \
if $$result; then \
@ -200,20 +223,32 @@ update-po: Makefile
fi; \
fi; \
else \
echo "msgmerge for $$lang.gmo failed!"; \
echo "msgmerge for $$cat failed!"; \
rm -f $$tmpdir/$$lang.new.po; \
fi; \
done
Makefile POTFILES: stamp-it
@if test ! -f $@; then \
rm -f stamp-it; \
$(MAKE) stamp-it; \
fi
# POTFILES is created from POTFILES.in by stripping comments, empty lines
# and Intltool tags (enclosed in square brackets), and appending a full
# relative path to them
POTFILES: POTFILES.in
( if test 'x$(srcdir)' != 'x.'; then \
posrcprefix='$(top_srcdir)/'; \
else \
posrcprefix="../"; \
fi; \
rm -f $@-t $@ \
&& (sed -e '/^#/d' \
-e "s/^\[.*\] +//" \
-e '/^[ ]*$$/d' \
-e "s@.*@ $$posrcprefix& \\\\@" < $(srcdir)/$@.in \
| sed -e '$$s/\\$$//') > $@-t \
&& chmod a-w $@-t \
&& mv $@-t $@ )
stamp-it: Makefile.in.in ../config.status POTFILES.in
Makefile: Makefile.in.in ../config.status POTFILES
cd .. \
&& CONFIG_FILES=$(subdir)/Makefile.in CONFIG_HEADERS= CONFIG_LINKS= \
&& CONFIG_FILES=$(subdir)/$@.in CONFIG_HEADERS= \
$(SHELL) ./config.status
# Tell versions [3.59,3.63) of GNU make not to export all variables.