Eeek, are you crazy?

--Sven
This commit is contained in:
Sven Neumann
2000-02-23 00:15:12 +00:00
parent 82758de8bf
commit 89177db5ed
2 changed files with 37 additions and 4 deletions

View File

@ -1,3 +1,8 @@
Wed Feb 23 01:15:12 CET 2000 Sven Neumann <sven@gimp.org>
* plug-ins/common/gtm.c: added a warning in the case the user
tries to save a large image as an HTML table
Tue Feb 22 22:25:29 CET 2000 Sven Neumann <sven@gimp.org> Tue Feb 22 22:25:29 CET 2000 Sven Neumann <sven@gimp.org>
* plug-ins/common/grid.c: added support for indexed images and * plug-ins/common/grid.c: added support for indexed images and

View File

@ -40,7 +40,7 @@
* had potential to be a useful plugin, so I started adding features and * had potential to be a useful plugin, so I started adding features and
* and making a nice UI. * and making a nice UI.
* *
* It's still not very usefull, but I did manage to significantly improve my * It's still not very useful, but I did manage to significantly improve my
* C programming skills in the process, so it was worth it. * C programming skills in the process, so it was worth it.
* *
* If you happen to find it usefull I would appreciate any email about it. * If you happen to find it usefull I would appreciate any email about it.
@ -61,6 +61,8 @@
#include "libgimp/stdplugins-intl.h" #include "libgimp/stdplugins-intl.h"
#include "pixmaps/eek.xpm"
/* Typedefs */ /* Typedefs */
typedef struct typedef struct
@ -116,7 +118,7 @@ static void run (gchar *name,
static gint save_image (gchar *filename, static gint save_image (gchar *filename,
GDrawable *drawable); GDrawable *drawable);
static gint save_dialog (void); static gint save_dialog (gint32 image_ID);
static gint color_comp (guchar *buffer, static gint color_comp (guchar *buffer,
guchar *buf2); guchar *buf2);
@ -196,7 +198,7 @@ run (gchar *name,
gimp_get_data ("file_GTM_save", &gtmvals); gimp_get_data ("file_GTM_save", &gtmvals);
if (save_dialog ()) if (save_dialog (param[1].data.d_int32))
{ {
if (save_image (param[3].data.d_string, drawable)) if (save_image (param[3].data.d_string, drawable))
{ {
@ -350,7 +352,7 @@ save_image (gchar *filename,
} }
static gint static gint
save_dialog (void) save_dialog (image_ID)
{ {
GtkWidget *dlg; GtkWidget *dlg;
GtkWidget *main_vbox; GtkWidget *main_vbox;
@ -397,6 +399,32 @@ save_dialog (void)
gtk_box_pack_start (GTK_BOX (GTK_DIALOG (dlg)->vbox), main_vbox, gtk_box_pack_start (GTK_BOX (GTK_DIALOG (dlg)->vbox), main_vbox,
TRUE, TRUE, 0); TRUE, TRUE, 0);
if (gimp_image_width (image_ID) * gimp_image_height (image_ID) > 4096)
{
GtkWidget *eek;
GtkWidget *label;
GtkWidget *hbox;
frame = gtk_frame_new (_("Warning"));
gtk_frame_set_shadow_type (GTK_FRAME (frame), GTK_SHADOW_IN);
gtk_box_pack_start (GTK_BOX (main_vbox), frame, FALSE, FALSE, 0);
hbox = gtk_hbox_new (FALSE, 4);
gtk_container_set_border_width (GTK_CONTAINER (hbox), 4);
gtk_container_add (GTK_CONTAINER (frame), hbox);
eek = gimp_pixmap_new (eek_xpm);
gtk_box_pack_start (GTK_BOX (hbox), eek, FALSE, FALSE, 4);
label = gtk_label_new (_("Are you crazy?\n\n"
"You are about to create a huge\n"
"HTML file which will most likely\n"
"crash your browser."));
gtk_box_pack_start (GTK_BOX (hbox), label, TRUE, TRUE, 0);
gtk_widget_show_all (frame);
}
/* HTML Page Options */ /* HTML Page Options */
frame = gtk_frame_new (_("HTML Page Options")); frame = gtk_frame_new (_("HTML Page Options"));
gtk_frame_set_shadow_type (GTK_FRAME (frame), GTK_SHADOW_ETCHED_IN); gtk_frame_set_shadow_type (GTK_FRAME (frame), GTK_SHADOW_ETCHED_IN);