plug-ins/common/blinds.c plug-ins/common/curve_bend.c
1999-12-20 Shirasaki Yasuhiro <yasuhiro@gnome.gr.jp> * plug-ins/common/blinds.c * plug-ins/common/curve_bend.c * plug-ins/common/deinterlace.c * plug-ins/common/despeckle.c * po-plug-ins/POTFILES.in: Added gettext support -- yasuhiro
This commit is contained in:

committed by
SHIRASAKI Yasuhiro

parent
4a7dc75580
commit
ae3f6ac6bf
@ -55,6 +55,7 @@
|
|||||||
|
|
||||||
#include "gtk/gtk.h"
|
#include "gtk/gtk.h"
|
||||||
#include "libgimp/gimp.h"
|
#include "libgimp/gimp.h"
|
||||||
|
#include "libgimp/stdplugins-intl.h"
|
||||||
|
|
||||||
/***** Magic numbers *****/
|
/***** Magic numbers *****/
|
||||||
|
|
||||||
@ -171,13 +172,15 @@ query ()
|
|||||||
static int nargs = sizeof (args) / sizeof (args[0]);
|
static int nargs = sizeof (args) / sizeof (args[0]);
|
||||||
static int nreturn_vals = 0;
|
static int nreturn_vals = 0;
|
||||||
|
|
||||||
|
INIT_I18N();
|
||||||
|
|
||||||
gimp_install_procedure ("plug_in_blinds",
|
gimp_install_procedure ("plug_in_blinds",
|
||||||
"Adds a blinds effect to the image. Rather like putting the image on a set of window blinds and the closing or opening the blinds",
|
_("Adds a blinds effect to the image. Rather like putting the image on a set of window blinds and the closing or opening the blinds"),
|
||||||
"More here later",
|
_("More here later"),
|
||||||
"Andy Thomas",
|
"Andy Thomas",
|
||||||
"Andy Thomas",
|
"Andy Thomas",
|
||||||
"1997",
|
"1997",
|
||||||
"<Image>/Filters/Distorts/Blinds...",
|
N_("<Image>/Filters/Distorts/Blinds..."),
|
||||||
"RGB*, GRAY*",
|
"RGB*, GRAY*",
|
||||||
PROC_PLUG_IN,
|
PROC_PLUG_IN,
|
||||||
nargs, nreturn_vals,
|
nargs, nreturn_vals,
|
||||||
@ -207,6 +210,12 @@ run (gchar *name,
|
|||||||
values[0].type = PARAM_STATUS;
|
values[0].type = PARAM_STATUS;
|
||||||
values[0].data.d_status = status;
|
values[0].data.d_status = status;
|
||||||
|
|
||||||
|
if (run_mode == RUN_INTERACTIVE) {
|
||||||
|
INIT_I18N_UI();
|
||||||
|
} else {
|
||||||
|
INIT_I18N();
|
||||||
|
}
|
||||||
|
|
||||||
blindsdrawable =
|
blindsdrawable =
|
||||||
drawable =
|
drawable =
|
||||||
gimp_drawable_get (param[2].data.d_drawable);
|
gimp_drawable_get (param[2].data.d_drawable);
|
||||||
@ -262,7 +271,7 @@ run (gchar *name,
|
|||||||
|
|
||||||
if (gimp_drawable_is_rgb (drawable->id) || gimp_drawable_is_gray (drawable->id))
|
if (gimp_drawable_is_rgb (drawable->id) || gimp_drawable_is_gray (drawable->id))
|
||||||
{
|
{
|
||||||
gimp_progress_init ("Adding Blinds ...");
|
gimp_progress_init ( _("Adding Blinds ..."));
|
||||||
|
|
||||||
apply_blinds();
|
apply_blinds();
|
||||||
|
|
||||||
@ -328,7 +337,7 @@ blinds_dialog ()
|
|||||||
cache_preview(); /* Get the preview image and store it also set has_alpha */
|
cache_preview(); /* Get the preview image and store it also set has_alpha */
|
||||||
|
|
||||||
dlg = gtk_dialog_new ();
|
dlg = gtk_dialog_new ();
|
||||||
gtk_window_set_title (GTK_WINDOW (dlg), "Blinds");
|
gtk_window_set_title (GTK_WINDOW (dlg), _("Blinds"));
|
||||||
gtk_window_position (GTK_WINDOW (dlg), GTK_WIN_POS_MOUSE);
|
gtk_window_position (GTK_WINDOW (dlg), GTK_WIN_POS_MOUSE);
|
||||||
gtk_signal_connect (GTK_OBJECT (dlg), "destroy",
|
gtk_signal_connect (GTK_OBJECT (dlg), "destroy",
|
||||||
(GtkSignalFunc) blinds_close_callback,
|
(GtkSignalFunc) blinds_close_callback,
|
||||||
@ -342,7 +351,7 @@ blinds_dialog ()
|
|||||||
gtk_box_pack_end (GTK_BOX (GTK_DIALOG (dlg)->action_area), hbbox, FALSE, FALSE, 0);
|
gtk_box_pack_end (GTK_BOX (GTK_DIALOG (dlg)->action_area), hbbox, FALSE, FALSE, 0);
|
||||||
gtk_widget_show (hbbox);
|
gtk_widget_show (hbbox);
|
||||||
|
|
||||||
button = gtk_button_new_with_label ("OK");
|
button = gtk_button_new_with_label ( _("OK"));
|
||||||
GTK_WIDGET_SET_FLAGS (button, GTK_CAN_DEFAULT);
|
GTK_WIDGET_SET_FLAGS (button, GTK_CAN_DEFAULT);
|
||||||
gtk_signal_connect (GTK_OBJECT (button), "clicked",
|
gtk_signal_connect (GTK_OBJECT (button), "clicked",
|
||||||
(GtkSignalFunc) blinds_ok_callback,
|
(GtkSignalFunc) blinds_ok_callback,
|
||||||
@ -351,7 +360,7 @@ blinds_dialog ()
|
|||||||
gtk_widget_grab_default (button);
|
gtk_widget_grab_default (button);
|
||||||
gtk_widget_show (button);
|
gtk_widget_show (button);
|
||||||
|
|
||||||
button = gtk_button_new_with_label ("Cancel");
|
button = gtk_button_new_with_label ( _("Cancel"));
|
||||||
GTK_WIDGET_SET_FLAGS (button, GTK_CAN_DEFAULT);
|
GTK_WIDGET_SET_FLAGS (button, GTK_CAN_DEFAULT);
|
||||||
gtk_signal_connect_object (GTK_OBJECT (button), "clicked",
|
gtk_signal_connect_object (GTK_OBJECT (button), "clicked",
|
||||||
(GtkSignalFunc) gtk_widget_destroy,
|
(GtkSignalFunc) gtk_widget_destroy,
|
||||||
@ -361,7 +370,7 @@ blinds_dialog ()
|
|||||||
|
|
||||||
/* Start building the frame for the preview area */
|
/* Start building the frame for the preview area */
|
||||||
|
|
||||||
frame = gtk_frame_new ("preview");
|
frame = gtk_frame_new ( _("Preview"));
|
||||||
gtk_frame_set_shadow_type (GTK_FRAME (frame), GTK_SHADOW_ETCHED_IN);
|
gtk_frame_set_shadow_type (GTK_FRAME (frame), GTK_SHADOW_ETCHED_IN);
|
||||||
gtk_container_border_width (GTK_CONTAINER (frame), 10);
|
gtk_container_border_width (GTK_CONTAINER (frame), 10);
|
||||||
table = gtk_table_new (5, 5, FALSE);
|
table = gtk_table_new (5, 5, FALSE);
|
||||||
@ -380,7 +389,7 @@ blinds_dialog ()
|
|||||||
gtk_widget_show(table);
|
gtk_widget_show(table);
|
||||||
gtk_widget_show(bint.preview);
|
gtk_widget_show(bint.preview);
|
||||||
|
|
||||||
frame = gtk_frame_new ("Orientation");
|
frame = gtk_frame_new ( _("Orientation"));
|
||||||
gtk_frame_set_shadow_type (GTK_FRAME (frame), GTK_SHADOW_ETCHED_IN);
|
gtk_frame_set_shadow_type (GTK_FRAME (frame), GTK_SHADOW_ETCHED_IN);
|
||||||
gtk_table_attach (GTK_TABLE (table), frame, 1, 2, 0, 1,
|
gtk_table_attach (GTK_TABLE (table), frame, 1, 2, 0, 1,
|
||||||
GTK_EXPAND | GTK_FILL, GTK_EXPAND | GTK_FILL, 5, 5);
|
GTK_EXPAND | GTK_FILL, GTK_EXPAND | GTK_FILL, 5, 5);
|
||||||
@ -388,7 +397,7 @@ blinds_dialog ()
|
|||||||
gtk_container_border_width (GTK_CONTAINER (toggle_vbox), 5);
|
gtk_container_border_width (GTK_CONTAINER (toggle_vbox), 5);
|
||||||
gtk_container_add (GTK_CONTAINER (frame), toggle_vbox);
|
gtk_container_add (GTK_CONTAINER (frame), toggle_vbox);
|
||||||
|
|
||||||
toggle = gtk_radio_button_new_with_label (orientation_group, "Horizontal");
|
toggle = gtk_radio_button_new_with_label (orientation_group, _("Horizontal"));
|
||||||
orientation_group = gtk_radio_button_group (GTK_RADIO_BUTTON (toggle));
|
orientation_group = gtk_radio_button_group (GTK_RADIO_BUTTON (toggle));
|
||||||
gtk_box_pack_start (GTK_BOX (toggle_vbox), toggle, FALSE, FALSE, 0);
|
gtk_box_pack_start (GTK_BOX (toggle_vbox), toggle, FALSE, FALSE, 0);
|
||||||
gtk_signal_connect (GTK_OBJECT (toggle), "toggled",
|
gtk_signal_connect (GTK_OBJECT (toggle), "toggled",
|
||||||
@ -397,7 +406,7 @@ blinds_dialog ()
|
|||||||
gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (toggle), do_horizontal);
|
gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (toggle), do_horizontal);
|
||||||
gtk_widget_show (toggle);
|
gtk_widget_show (toggle);
|
||||||
|
|
||||||
toggle = gtk_radio_button_new_with_label (orientation_group, "Vertical");
|
toggle = gtk_radio_button_new_with_label (orientation_group, _("Vertical"));
|
||||||
orientation_group = gtk_radio_button_group (GTK_RADIO_BUTTON (toggle));
|
orientation_group = gtk_radio_button_group (GTK_RADIO_BUTTON (toggle));
|
||||||
gtk_box_pack_start (GTK_BOX (toggle_vbox), toggle, FALSE, FALSE, 0);
|
gtk_box_pack_start (GTK_BOX (toggle_vbox), toggle, FALSE, FALSE, 0);
|
||||||
gtk_signal_connect (GTK_OBJECT (toggle), "toggled",
|
gtk_signal_connect (GTK_OBJECT (toggle), "toggled",
|
||||||
@ -409,7 +418,7 @@ blinds_dialog ()
|
|||||||
gtk_widget_show (toggle_vbox);
|
gtk_widget_show (toggle_vbox);
|
||||||
gtk_widget_show(frame);
|
gtk_widget_show(frame);
|
||||||
|
|
||||||
frame = gtk_frame_new ("Background");
|
frame = gtk_frame_new ( _("Background"));
|
||||||
gtk_frame_set_shadow_type (GTK_FRAME (frame), GTK_SHADOW_ETCHED_IN);
|
gtk_frame_set_shadow_type (GTK_FRAME (frame), GTK_SHADOW_ETCHED_IN);
|
||||||
gtk_table_attach (GTK_TABLE (table), frame, 1, 2, 1, 2,
|
gtk_table_attach (GTK_TABLE (table), frame, 1, 2, 1, 2,
|
||||||
GTK_EXPAND | GTK_FILL, GTK_EXPAND | GTK_FILL, 5, 5);
|
GTK_EXPAND | GTK_FILL, GTK_EXPAND | GTK_FILL, 5, 5);
|
||||||
@ -417,7 +426,7 @@ blinds_dialog ()
|
|||||||
gtk_container_border_width (GTK_CONTAINER (toggle_vbox), 5);
|
gtk_container_border_width (GTK_CONTAINER (toggle_vbox), 5);
|
||||||
gtk_container_add (GTK_CONTAINER (frame), toggle_vbox);
|
gtk_container_add (GTK_CONTAINER (frame), toggle_vbox);
|
||||||
|
|
||||||
toggle = gtk_check_button_new_with_label ("Transparent");
|
toggle = gtk_check_button_new_with_label ( _("Transparent"));
|
||||||
gtk_box_pack_start (GTK_BOX (toggle_vbox), toggle, FALSE, FALSE, 0);
|
gtk_box_pack_start (GTK_BOX (toggle_vbox), toggle, FALSE, FALSE, 0);
|
||||||
gtk_signal_connect (GTK_OBJECT (toggle), "toggled",
|
gtk_signal_connect (GTK_OBJECT (toggle), "toggled",
|
||||||
(GtkSignalFunc) blinds_button_update,
|
(GtkSignalFunc) blinds_button_update,
|
||||||
@ -435,7 +444,7 @@ blinds_dialog ()
|
|||||||
gtk_widget_show (toggle_vbox);
|
gtk_widget_show (toggle_vbox);
|
||||||
gtk_widget_show(frame);
|
gtk_widget_show(frame);
|
||||||
|
|
||||||
frame = gtk_frame_new ("Parameter Settings");
|
frame = gtk_frame_new ( _("Parameter Settings"));
|
||||||
gtk_frame_set_shadow_type (GTK_FRAME (frame), GTK_SHADOW_ETCHED_IN);
|
gtk_frame_set_shadow_type (GTK_FRAME (frame), GTK_SHADOW_ETCHED_IN);
|
||||||
gtk_container_border_width (GTK_CONTAINER (frame), 10);
|
gtk_container_border_width (GTK_CONTAINER (frame), 10);
|
||||||
table = gtk_table_new (5, 5, FALSE);
|
table = gtk_table_new (5, 5, FALSE);
|
||||||
@ -443,7 +452,7 @@ blinds_dialog ()
|
|||||||
gtk_container_add (GTK_CONTAINER (frame), table);
|
gtk_container_add (GTK_CONTAINER (frame), table);
|
||||||
gtk_box_pack_start (GTK_BOX (GTK_DIALOG (dlg)->vbox), frame, TRUE, TRUE, 0);
|
gtk_box_pack_start (GTK_BOX (GTK_DIALOG (dlg)->vbox), frame, TRUE, TRUE, 0);
|
||||||
|
|
||||||
label = gtk_label_new ("Displacement ");
|
label = gtk_label_new ( _("Displacement "));
|
||||||
gtk_misc_set_alignment (GTK_MISC (label), 0.0, 0.5);
|
gtk_misc_set_alignment (GTK_MISC (label), 0.0, 0.5);
|
||||||
gtk_table_attach (GTK_TABLE (table), label, 0, 1, 1, 2, GTK_FILL | GTK_EXPAND, GTK_FILL, 4, 0);
|
gtk_table_attach (GTK_TABLE (table), label, 0, 1, 1, 2, GTK_FILL | GTK_EXPAND, GTK_FILL, 4, 0);
|
||||||
gtk_widget_show (label);
|
gtk_widget_show (label);
|
||||||
@ -475,7 +484,7 @@ blinds_dialog ()
|
|||||||
gtk_widget_show(entry);
|
gtk_widget_show(entry);
|
||||||
|
|
||||||
|
|
||||||
label = gtk_label_new ("Num Segments ");
|
label = gtk_label_new ( _("Num Segments "));
|
||||||
gtk_misc_set_alignment (GTK_MISC (label), 0.0, 0.5);
|
gtk_misc_set_alignment (GTK_MISC (label), 0.0, 0.5);
|
||||||
gtk_table_attach (GTK_TABLE (table), label, 0, 1, 2, 3, GTK_FILL | GTK_EXPAND, GTK_FILL, 0, 0);
|
gtk_table_attach (GTK_TABLE (table), label, 0, 1, 2, 3, GTK_FILL | GTK_EXPAND, GTK_FILL, 0, 0);
|
||||||
gtk_widget_show (label);
|
gtk_widget_show (label);
|
||||||
|
@ -31,26 +31,17 @@
|
|||||||
#include <string.h>
|
#include <string.h>
|
||||||
#include <math.h>
|
#include <math.h>
|
||||||
|
|
||||||
|
#include "config.h"
|
||||||
|
|
||||||
#include <gtk/gtk.h>
|
#include <gtk/gtk.h>
|
||||||
#include <libgimp/gimp.h>
|
#include <libgimp/gimp.h>
|
||||||
#include <libgimp/gimpui.h>
|
#include <libgimp/gimpui.h>
|
||||||
|
#include "libgimp/stdplugins-intl.h"
|
||||||
/* internationalisation (nls-macros) is available since gimp 1.1.x */
|
|
||||||
#if (( GIMP_MAJOR_VERSION > 0 ) && ( GIMP_MINOR_VERSION > 0))
|
|
||||||
#include <libgimp/gimpintl.h>
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#ifndef __GIMPINTL_H__
|
|
||||||
/* for older gimp releases use dummys nls-macros */
|
|
||||||
#define N_(x) x
|
|
||||||
#define _(x) x
|
|
||||||
#endif
|
|
||||||
|
|
||||||
/* Defines */
|
/* Defines */
|
||||||
#define PLUG_IN_NAME "plug_in_curve_bend"
|
#define PLUG_IN_NAME "plug_in_curve_bend"
|
||||||
#define PLUG_IN_PRINT_NAME "CurveBend"
|
#define PLUG_IN_PRINT_NAME "CurveBend"
|
||||||
#define PLUG_IN_VERSION "v1.01 (1999/09/13)"
|
#define PLUG_IN_VERSION "v1.01 (1999/09/13)"
|
||||||
#define PLUG_IN_MENU_PATH "<Image>/Filters/Distorts/CurveBend..."
|
|
||||||
#define PLUG_IN_IMAGE_TYPES "RGB*, GRAY*"
|
#define PLUG_IN_IMAGE_TYPES "RGB*, GRAY*"
|
||||||
#define PLUG_IN_AUTHOR "Wolfgang Hofer (hof@hotbot.com)"
|
#define PLUG_IN_AUTHOR "Wolfgang Hofer (hof@hotbot.com)"
|
||||||
#define PLUG_IN_COPYRIGHT "Wolfgang Hofer"
|
#define PLUG_IN_COPYRIGHT "Wolfgang Hofer"
|
||||||
@ -711,7 +702,7 @@ static void query (void)
|
|||||||
PLUG_IN_AUTHOR,
|
PLUG_IN_AUTHOR,
|
||||||
PLUG_IN_COPYRIGHT,
|
PLUG_IN_COPYRIGHT,
|
||||||
PLUG_IN_VERSION,
|
PLUG_IN_VERSION,
|
||||||
PLUG_IN_MENU_PATH,
|
N_("<Image>/Filters/Distorts/CurveBend..."),
|
||||||
PLUG_IN_IMAGE_TYPES,
|
PLUG_IN_IMAGE_TYPES,
|
||||||
PROC_PLUG_IN,
|
PROC_PLUG_IN,
|
||||||
nargs,
|
nargs,
|
||||||
@ -762,6 +753,12 @@ run (char *name, /* name of plugin */
|
|||||||
static GParam values[2];
|
static GParam values[2];
|
||||||
|
|
||||||
|
|
||||||
|
if (run_mode == RUN_INTERACTIVE) {
|
||||||
|
INIT_I18N_UI();
|
||||||
|
} else {
|
||||||
|
INIT_I18N();
|
||||||
|
}
|
||||||
|
|
||||||
cd = NULL;
|
cd = NULL;
|
||||||
|
|
||||||
l_env = g_getenv("BEND_DEBUG");
|
l_env = g_getenv("BEND_DEBUG");
|
||||||
@ -2197,7 +2194,7 @@ bender_load_callback (GtkWidget *w,
|
|||||||
if(cd->filesel != NULL)
|
if(cd->filesel != NULL)
|
||||||
return; /* filesel is already open */
|
return; /* filesel is already open */
|
||||||
|
|
||||||
filesel = gtk_file_selection_new ("Load Curve Points from file");
|
filesel = gtk_file_selection_new ( _("Load Curve Points from file"));
|
||||||
cd->filesel = filesel;
|
cd->filesel = filesel;
|
||||||
|
|
||||||
gtk_window_position (GTK_WINDOW (filesel), GTK_WIN_POS_MOUSE);
|
gtk_window_position (GTK_WINDOW (filesel), GTK_WIN_POS_MOUSE);
|
||||||
@ -2227,7 +2224,7 @@ bender_save_callback (GtkWidget *w,
|
|||||||
if(cd->filesel != NULL)
|
if(cd->filesel != NULL)
|
||||||
return; /* filesel is already open */
|
return; /* filesel is already open */
|
||||||
|
|
||||||
filesel = gtk_file_selection_new ("Save Curve Points to file");
|
filesel = gtk_file_selection_new ( _("Save Curve Points to file"));
|
||||||
cd->filesel = filesel;
|
cd->filesel = filesel;
|
||||||
|
|
||||||
gtk_window_position (GTK_WINDOW (filesel), GTK_WIN_POS_MOUSE);
|
gtk_window_position (GTK_WINDOW (filesel), GTK_WIN_POS_MOUSE);
|
||||||
@ -2531,7 +2528,7 @@ p_buildmenu (MenuItem *items)
|
|||||||
|
|
||||||
while (items->label)
|
while (items->label)
|
||||||
{
|
{
|
||||||
menu_item = gtk_menu_item_new_with_label (items->label);
|
menu_item = gtk_menu_item_new_with_label ( gettext(items->label));
|
||||||
gtk_container_add (GTK_CONTAINER (menu), menu_item);
|
gtk_container_add (GTK_CONTAINER (menu), menu_item);
|
||||||
|
|
||||||
if (items->callback)
|
if (items->callback)
|
||||||
@ -2561,7 +2558,7 @@ build_action_area (GtkDialog * dlg,
|
|||||||
|
|
||||||
for (i = 0; i < num_actions; i++)
|
for (i = 0; i < num_actions; i++)
|
||||||
{
|
{
|
||||||
button = gtk_button_new_with_label (actions[i].label);
|
button = gtk_button_new_with_label ( gettext(actions[i].label));
|
||||||
GTK_WIDGET_SET_FLAGS (button, GTK_CAN_DEFAULT);
|
GTK_WIDGET_SET_FLAGS (button, GTK_CAN_DEFAULT);
|
||||||
gtk_box_pack_start (GTK_BOX (dlg->action_area), button, TRUE, TRUE, 0);
|
gtk_box_pack_start (GTK_BOX (dlg->action_area), button, TRUE, TRUE, 0);
|
||||||
|
|
||||||
@ -3346,7 +3343,7 @@ p_vertical_bend(BenderDialog *cd, t_GDRW *src_gdrw, t_GDRW *dst_gdrw)
|
|||||||
l_progress_max = (1 + l_last_row - l_first_row) * (1 + l_last_col - l_first_col);
|
l_progress_max = (1 + l_last_row - l_first_row) * (1 + l_last_col - l_first_col);
|
||||||
l_progress_step = 1.0 / l_progress_max;
|
l_progress_step = 1.0 / l_progress_max;
|
||||||
l_progress = 0.0;
|
l_progress = 0.0;
|
||||||
if(cd->show_progress) gimp_progress_init ("Curve Bend ...");
|
if(cd->show_progress) gimp_progress_init ( _("Curve Bend ..."));
|
||||||
|
|
||||||
for(l_row = l_first_row; l_row <= l_last_row; l_row++)
|
for(l_row = l_first_row; l_row <= l_last_row; l_row++)
|
||||||
{
|
{
|
||||||
|
@ -25,8 +25,10 @@
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
#include <stdlib.h>
|
#include <stdlib.h>
|
||||||
|
#include "config.h"
|
||||||
#include <libgimp/gimp.h>
|
#include <libgimp/gimp.h>
|
||||||
#include <gtk/gtk.h>
|
#include <gtk/gtk.h>
|
||||||
|
#include "libgimp/stdplugins-intl.h"
|
||||||
#include <plug-ins/megawidget/megawidget.h>
|
#include <plug-ins/megawidget/megawidget.h>
|
||||||
|
|
||||||
|
|
||||||
@ -69,13 +71,15 @@ query ()
|
|||||||
static int nargs = sizeof (args) / sizeof (args[0]);
|
static int nargs = sizeof (args) / sizeof (args[0]);
|
||||||
static int nreturn_vals = 0;
|
static int nreturn_vals = 0;
|
||||||
|
|
||||||
|
INIT_I18N();
|
||||||
|
|
||||||
gimp_install_procedure ("plug_in_deinterlace",
|
gimp_install_procedure ("plug_in_deinterlace",
|
||||||
"Deinterlace",
|
_("Deinterlace"),
|
||||||
"Deinterlace is useful for processing images from video capture cards. When only the odd or even fields get captured, deinterlace can be used to interpolate between the existing fields to correct this.",
|
_("Deinterlace is useful for processing images from video capture cards. When only the odd or even fields get captured, deinterlace can be used to interpolate between the existing fields to correct this."),
|
||||||
"Andrew Kieschnick",
|
"Andrew Kieschnick",
|
||||||
"Andrew Kieschnick",
|
"Andrew Kieschnick",
|
||||||
"1997",
|
"1997",
|
||||||
"<Image>/Filters/Enhance/Deinterlace...",
|
N_("<Image>/Filters/Enhance/Deinterlace..."),
|
||||||
"RGB*, GRAY*",
|
"RGB*, GRAY*",
|
||||||
PROC_PLUG_IN,
|
PROC_PLUG_IN,
|
||||||
nargs, nreturn_vals,
|
nargs, nreturn_vals,
|
||||||
@ -102,12 +106,14 @@ run (char *name,
|
|||||||
switch (run_mode)
|
switch (run_mode)
|
||||||
{
|
{
|
||||||
case RUN_INTERACTIVE:
|
case RUN_INTERACTIVE:
|
||||||
|
INIT_I18N_UI();
|
||||||
gimp_get_data("plug_in_deinterlace", &DeinterlaceValue);
|
gimp_get_data("plug_in_deinterlace", &DeinterlaceValue);
|
||||||
if (! deinterlace_dialog())
|
if (! deinterlace_dialog())
|
||||||
status = STATUS_EXECUTION_ERROR;
|
status = STATUS_EXECUTION_ERROR;
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case RUN_NONINTERACTIVE:
|
case RUN_NONINTERACTIVE:
|
||||||
|
INIT_I18N();
|
||||||
if (nparams != 4)
|
if (nparams != 4)
|
||||||
status = STATUS_CALLING_ERROR;
|
status = STATUS_CALLING_ERROR;
|
||||||
if (status == STATUS_SUCCESS)
|
if (status == STATUS_SUCCESS)
|
||||||
@ -116,6 +122,7 @@ run (char *name,
|
|||||||
break;
|
break;
|
||||||
|
|
||||||
case RUN_WITH_LAST_VALS:
|
case RUN_WITH_LAST_VALS:
|
||||||
|
INIT_I18N();
|
||||||
gimp_get_data("plug_in_deinterlace", &DeinterlaceValue);
|
gimp_get_data("plug_in_deinterlace", &DeinterlaceValue);
|
||||||
break;
|
break;
|
||||||
|
|
||||||
@ -128,7 +135,7 @@ run (char *name,
|
|||||||
/* Make sure that the drawable is gray or RGB color */
|
/* Make sure that the drawable is gray or RGB color */
|
||||||
if (gimp_drawable_is_rgb (drawable->id) || gimp_drawable_is_gray (drawable->id))
|
if (gimp_drawable_is_rgb (drawable->id) || gimp_drawable_is_gray (drawable->id))
|
||||||
{
|
{
|
||||||
gimp_progress_init ("deinterlace");
|
gimp_progress_init ( _("deinterlace"));
|
||||||
gimp_tile_cache_ntiles (2 * (drawable->width / gimp_tile_width () + 1));
|
gimp_tile_cache_ntiles (2 * (drawable->width / gimp_tile_width () + 1));
|
||||||
deinterlace (drawable);
|
deinterlace (drawable);
|
||||||
|
|
||||||
@ -227,11 +234,14 @@ static gint deinterlace_dialog()
|
|||||||
GtkWidget *vbox;
|
GtkWidget *vbox;
|
||||||
gint runp;
|
gint runp;
|
||||||
struct mwRadioGroup modes[] = {
|
struct mwRadioGroup modes[] = {
|
||||||
{ "Keep Odd Fields", 0},
|
{ N_("Keep Odd Fields"), 0},
|
||||||
{ "Keep Even Fields", 0},
|
{ N_("Keep Even Fields"), 0},
|
||||||
{ NULL, 0}};
|
{ NULL, 0}};
|
||||||
gchar **argv;
|
gchar **argv;
|
||||||
gint argc;
|
gint argc;
|
||||||
|
gint i;
|
||||||
|
for (i = 0; i < 2; i++)
|
||||||
|
modes[i].name = gettext(modes[i].name);
|
||||||
|
|
||||||
/* Set args */
|
/* Set args */
|
||||||
argc = 1;
|
argc = 1;
|
||||||
@ -241,14 +251,14 @@ static gint deinterlace_dialog()
|
|||||||
gtk_rc_parse(gimp_gtkrc());
|
gtk_rc_parse(gimp_gtkrc());
|
||||||
modes[DeinterlaceValue].var = 1;
|
modes[DeinterlaceValue].var = 1;
|
||||||
|
|
||||||
dlg = mw_app_new("plug_in_deinterlace", "Deinterlace", &runp);
|
dlg = mw_app_new("plug_in_deinterlace", _("Deinterlace"), &runp);
|
||||||
|
|
||||||
vbox = gtk_vbox_new(FALSE, 0);
|
vbox = gtk_vbox_new(FALSE, 0);
|
||||||
gtk_container_border_width(GTK_CONTAINER(vbox), 5);
|
gtk_container_border_width(GTK_CONTAINER(vbox), 5);
|
||||||
gtk_box_pack_start(GTK_BOX(GTK_DIALOG(dlg)->vbox), vbox, TRUE, TRUE, 0);
|
gtk_box_pack_start(GTK_BOX(GTK_DIALOG(dlg)->vbox), vbox, TRUE, TRUE, 0);
|
||||||
gtk_widget_show(vbox);
|
gtk_widget_show(vbox);
|
||||||
|
|
||||||
mw_radio_group_new(vbox, "Mode", modes);
|
mw_radio_group_new(vbox, _("Mode"), modes);
|
||||||
|
|
||||||
gtk_widget_show(dlg);
|
gtk_widget_show(dlg);
|
||||||
gtk_main();
|
gtk_main();
|
||||||
|
@ -43,6 +43,17 @@
|
|||||||
* Revision History:
|
* Revision History:
|
||||||
*
|
*
|
||||||
* $Log$
|
* $Log$
|
||||||
|
* Revision 1.19 1997/01/03 15:15:10 yasuhiro
|
||||||
|
* 1999-12-20 Shirasaki Yasuhiro <yasuhiro@gnome.gr.jp>
|
||||||
|
*
|
||||||
|
* * plug-ins/common/blinds.c
|
||||||
|
* * plug-ins/common/curve_bend.c
|
||||||
|
* * plug-ins/common/deinterlace.c
|
||||||
|
* * plug-ins/common/despeckle.c
|
||||||
|
* * po-plug-ins/POTFILES.in: Added gettext support
|
||||||
|
*
|
||||||
|
* -- yasuhiro
|
||||||
|
*
|
||||||
* Revision 1.18 1999/11/23 23:49:42 neo
|
* Revision 1.18 1999/11/23 23:49:42 neo
|
||||||
* added dots to all menu entries of interactive plug-ins and did the usual
|
* added dots to all menu entries of interactive plug-ins and did the usual
|
||||||
* action area fixes on lots of them
|
* action area fixes on lots of them
|
||||||
@ -156,6 +167,7 @@
|
|||||||
* Revision 1.1 1997/06/07 00:01:15 mike
|
* Revision 1.1 1997/06/07 00:01:15 mike
|
||||||
* Initial Revision.
|
* Initial Revision.
|
||||||
*/
|
*/
|
||||||
|
#include "config.h"
|
||||||
|
|
||||||
#include <stdio.h>
|
#include <stdio.h>
|
||||||
#include <stdlib.h>
|
#include <stdlib.h>
|
||||||
@ -163,7 +175,7 @@
|
|||||||
#include <gtk/gtk.h>
|
#include <gtk/gtk.h>
|
||||||
#include <libgimp/gimp.h>
|
#include <libgimp/gimp.h>
|
||||||
#include <libgimp/gimpui.h>
|
#include <libgimp/gimpui.h>
|
||||||
|
#include "libgimp/stdplugins-intl.h"
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Constants...
|
* Constants...
|
||||||
@ -275,14 +287,15 @@ query(void)
|
|||||||
static int nargs = sizeof(args) / sizeof(args[0]),
|
static int nargs = sizeof(args) / sizeof(args[0]),
|
||||||
nreturn_vals = 0;
|
nreturn_vals = 0;
|
||||||
|
|
||||||
|
INIT_I18N();
|
||||||
|
|
||||||
gimp_install_procedure(PLUG_IN_NAME,
|
gimp_install_procedure(PLUG_IN_NAME,
|
||||||
"Despeckle filter, typically used to \'despeckle\' a photographic image.",
|
_("Despeckle filter, typically used to \'despeckle\' a photographic image."),
|
||||||
"This plug-in selectively performs a median or adaptive box filter on an image.",
|
_("This plug-in selectively performs a median or adaptive box filter on an image."),
|
||||||
"Michael Sweet <mike@easysw.com>",
|
"Michael Sweet <mike@easysw.com>",
|
||||||
"Copyright 1997-1998 by Michael Sweet",
|
"Copyright 1997-1998 by Michael Sweet",
|
||||||
PLUG_IN_VERSION,
|
PLUG_IN_VERSION,
|
||||||
"<Image>/Filters/Enhance/Despeckle...",
|
N_("<Image>/Filters/Enhance/Despeckle..."),
|
||||||
"RGB*, GRAY*",
|
"RGB*, GRAY*",
|
||||||
PROC_PLUG_IN, nargs, nreturn_vals, args, return_vals);
|
PROC_PLUG_IN, nargs, nreturn_vals, args, return_vals);
|
||||||
}
|
}
|
||||||
@ -338,6 +351,7 @@ run(char *name, /* I - Name of filter program. */
|
|||||||
switch (run_mode)
|
switch (run_mode)
|
||||||
{
|
{
|
||||||
case RUN_INTERACTIVE :
|
case RUN_INTERACTIVE :
|
||||||
|
INIT_I18N_UI();
|
||||||
/*
|
/*
|
||||||
* Possibly retrieve data...
|
* Possibly retrieve data...
|
||||||
*/
|
*/
|
||||||
@ -357,6 +371,7 @@ run(char *name, /* I - Name of filter program. */
|
|||||||
* Make sure all the arguments are present...
|
* Make sure all the arguments are present...
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
INIT_I18N();
|
||||||
if (nparams < 4 || nparams > 7)
|
if (nparams < 4 || nparams > 7)
|
||||||
status = STATUS_CALLING_ERROR;
|
status = STATUS_CALLING_ERROR;
|
||||||
else if (nparams == 4)
|
else if (nparams == 4)
|
||||||
@ -394,6 +409,7 @@ run(char *name, /* I - Name of filter program. */
|
|||||||
* Possibly retrieve data...
|
* Possibly retrieve data...
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
INIT_I18N();
|
||||||
gimp_get_data(PLUG_IN_NAME, despeckle_vals);
|
gimp_get_data(PLUG_IN_NAME, despeckle_vals);
|
||||||
break;
|
break;
|
||||||
|
|
||||||
@ -500,7 +516,7 @@ despeckle(void)
|
|||||||
* Let the user know what we're doing...
|
* Let the user know what we're doing...
|
||||||
*/
|
*/
|
||||||
|
|
||||||
gimp_progress_init("Despeckling...");
|
gimp_progress_init( _("Despeckling..."));
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Setup for filter...
|
* Setup for filter...
|
||||||
@ -703,6 +719,7 @@ despeckle_dialog(void)
|
|||||||
gint argc; /* Fake argc for GUI */
|
gint argc; /* Fake argc for GUI */
|
||||||
gchar **argv; /* Fake argv for GUI */
|
gchar **argv; /* Fake argv for GUI */
|
||||||
guchar *color_cube; /* Preview color cube... */
|
guchar *color_cube; /* Preview color cube... */
|
||||||
|
gchar *plugin_name;
|
||||||
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
@ -730,7 +747,11 @@ despeckle_dialog(void)
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
dialog = gtk_dialog_new();
|
dialog = gtk_dialog_new();
|
||||||
gtk_window_set_title(GTK_WINDOW(dialog), "Despeckle " PLUG_IN_VERSION);
|
plugin_name = g_new(gchar,
|
||||||
|
strlen( _("Despeckle "))+strlen(PLUG_IN_VERSION)+1);
|
||||||
|
sprintf(plugin_name, "%s%s", _("Despeckle "), PLUG_IN_VERSION);
|
||||||
|
gtk_window_set_title(GTK_WINDOW(dialog), plugin_name);
|
||||||
|
g_free(plugin_name);
|
||||||
gtk_window_set_wmclass(GTK_WINDOW(dialog), "despeckle", "Gimp");
|
gtk_window_set_wmclass(GTK_WINDOW(dialog), "despeckle", "Gimp");
|
||||||
gtk_window_position(GTK_WINDOW(dialog), GTK_WIN_POS_MOUSE);
|
gtk_window_position(GTK_WINDOW(dialog), GTK_WIN_POS_MOUSE);
|
||||||
gtk_container_border_width(GTK_CONTAINER(dialog), 0);
|
gtk_container_border_width(GTK_CONTAINER(dialog), 0);
|
||||||
@ -810,7 +831,7 @@ despeckle_dialog(void)
|
|||||||
gtk_table_attach(GTK_TABLE(table), ftable, 2, 3, 0, 1, 0, 0, 0, 0);
|
gtk_table_attach(GTK_TABLE(table), ftable, 2, 3, 0, 1, 0, 0, 0, 0);
|
||||||
gtk_widget_show(ftable);
|
gtk_widget_show(ftable);
|
||||||
|
|
||||||
button = gtk_check_button_new_with_label("Adaptive");
|
button = gtk_check_button_new_with_label( _("Adaptive"));
|
||||||
gtk_table_attach(GTK_TABLE(ftable), button, 0, 1, 0, 1,
|
gtk_table_attach(GTK_TABLE(ftable), button, 0, 1, 0, 1,
|
||||||
GTK_EXPAND | GTK_FILL, GTK_EXPAND | GTK_FILL, 0, 0);
|
GTK_EXPAND | GTK_FILL, GTK_EXPAND | GTK_FILL, 0, 0);
|
||||||
gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(button),
|
gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(button),
|
||||||
@ -820,7 +841,7 @@ despeckle_dialog(void)
|
|||||||
NULL);
|
NULL);
|
||||||
gtk_widget_show(button);
|
gtk_widget_show(button);
|
||||||
|
|
||||||
button = gtk_check_button_new_with_label("Recursive");
|
button = gtk_check_button_new_with_label( _("Recursive"));
|
||||||
gtk_table_attach(GTK_TABLE(ftable), button, 0, 1, 1, 2,
|
gtk_table_attach(GTK_TABLE(ftable), button, 0, 1, 1, 2,
|
||||||
GTK_EXPAND | GTK_FILL, GTK_EXPAND | GTK_FILL, 0, 0);
|
GTK_EXPAND | GTK_FILL, GTK_EXPAND | GTK_FILL, 0, 0);
|
||||||
gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(button),
|
gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(button),
|
||||||
@ -834,19 +855,19 @@ despeckle_dialog(void)
|
|||||||
* Box size (radius) control...
|
* Box size (radius) control...
|
||||||
*/
|
*/
|
||||||
|
|
||||||
dialog_create_ivalue("Radius", GTK_TABLE(table), 2, &despeckle_radius, 1, MAX_RADIUS);
|
dialog_create_ivalue( _("Radius"), GTK_TABLE(table), 2, &despeckle_radius, 1, MAX_RADIUS);
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Black level control...
|
* Black level control...
|
||||||
*/
|
*/
|
||||||
|
|
||||||
dialog_create_ivalue("Black Level", GTK_TABLE(table), 3, &black_level, 0, 256);
|
dialog_create_ivalue( _("Black Level"), GTK_TABLE(table), 3, &black_level, 0, 256);
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* White level control...
|
* White level control...
|
||||||
*/
|
*/
|
||||||
|
|
||||||
dialog_create_ivalue("White Level", GTK_TABLE(table), 4, &white_level, 0, 256);
|
dialog_create_ivalue( _("White Level"), GTK_TABLE(table), 4, &white_level, 0, 256);
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* OK, cancel buttons...
|
* OK, cancel buttons...
|
||||||
@ -854,7 +875,7 @@ despeckle_dialog(void)
|
|||||||
|
|
||||||
gtk_container_border_width(GTK_CONTAINER(GTK_DIALOG(dialog)->action_area), 6);
|
gtk_container_border_width(GTK_CONTAINER(GTK_DIALOG(dialog)->action_area), 6);
|
||||||
|
|
||||||
button = gtk_button_new_with_label("OK");
|
button = gtk_button_new_with_label( _("OK"));
|
||||||
GTK_WIDGET_SET_FLAGS(button, GTK_CAN_DEFAULT);
|
GTK_WIDGET_SET_FLAGS(button, GTK_CAN_DEFAULT);
|
||||||
gtk_signal_connect(GTK_OBJECT(button), "clicked",
|
gtk_signal_connect(GTK_OBJECT(button), "clicked",
|
||||||
(GtkSignalFunc) dialog_ok_callback,
|
(GtkSignalFunc) dialog_ok_callback,
|
||||||
@ -863,7 +884,7 @@ despeckle_dialog(void)
|
|||||||
gtk_widget_grab_default(button);
|
gtk_widget_grab_default(button);
|
||||||
gtk_widget_show(button);
|
gtk_widget_show(button);
|
||||||
|
|
||||||
button = gtk_button_new_with_label("Cancel");
|
button = gtk_button_new_with_label( _("Cancel"));
|
||||||
GTK_WIDGET_SET_FLAGS(button, GTK_CAN_DEFAULT);
|
GTK_WIDGET_SET_FLAGS(button, GTK_CAN_DEFAULT);
|
||||||
gtk_signal_connect(GTK_OBJECT(button), "clicked",
|
gtk_signal_connect(GTK_OBJECT(button), "clicked",
|
||||||
(GtkSignalFunc) dialog_cancel_callback,
|
(GtkSignalFunc) dialog_cancel_callback,
|
||||||
|
Reference in New Issue
Block a user