mirror of
https://gitlab.gnome.org/GNOME/gimp
synced 2024-10-22 04:22:29 +00:00
fb0da885f4
2007-11-22 Michael Natterer <mitch@gimp.org> * app/tools/gimplevelstool.[ch]: use a GimpHandleBar also for the input frame, added a second adjustment for gamma and map between the linear and logarithmic gamma values in the adjustment callbacks, get rid of one GtkFrame just as in the histogram dialog. Still not finished since mouse events on the color bars are currently not handled. svn path=/trunk/; revision=24214
83 lines
2.7 KiB
C
83 lines
2.7 KiB
C
/* GIMP - The GNU Image Manipulation Program
|
|
* Copyright (C) 1995 Spencer Kimball and Peter Mattis
|
|
*
|
|
* 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., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
|
|
*/
|
|
|
|
#ifndef __GIMP_LEVELS_TOOL_H__
|
|
#define __GIMP_LEVELS_TOOL_H__
|
|
|
|
|
|
#include "gimpimagemaptool.h"
|
|
|
|
|
|
#define GIMP_TYPE_LEVELS_TOOL (gimp_levels_tool_get_type ())
|
|
#define GIMP_LEVELS_TOOL(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GIMP_TYPE_LEVELS_TOOL, GimpLevelsTool))
|
|
#define GIMP_LEVELS_TOOL_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GIMP_TYPE_LEVELS_TOOL, GimpLevelsToolClass))
|
|
#define GIMP_IS_LEVELS_TOOL(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GIMP_TYPE_LEVELS_TOOL))
|
|
#define GIMP_IS_LEVELS_TOOL_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_LEVELS_TOOL))
|
|
#define GIMP_LEVELS_TOOL_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), GIMP_TYPE_LEVELS_TOOL, GimpLevelsToolClass))
|
|
|
|
|
|
typedef struct _GimpLevelsTool GimpLevelsTool;
|
|
typedef struct _GimpLevelsToolClass GimpLevelsToolClass;
|
|
|
|
struct _GimpLevelsTool
|
|
{
|
|
GimpImageMapTool parent_instance;
|
|
|
|
GimpLut *lut;
|
|
Levels *levels;
|
|
|
|
/* dialog */
|
|
gboolean color;
|
|
gboolean alpha;
|
|
GimpHistogramChannel channel;
|
|
|
|
GimpHistogram *hist;
|
|
|
|
GtkWidget *channel_menu;
|
|
|
|
GtkWidget *hist_view;
|
|
|
|
GtkWidget *input_bar;
|
|
GtkWidget *input_sliders;
|
|
GtkAdjustment *low_input;
|
|
GtkAdjustment *gamma;
|
|
GtkAdjustment *gamma_linear;
|
|
GtkAdjustment *high_input;
|
|
|
|
GtkWidget *output_bar;
|
|
GtkWidget *output_sliders;
|
|
GtkAdjustment *low_output;
|
|
GtkAdjustment *high_output;
|
|
|
|
GtkWidget *active_picker;
|
|
};
|
|
|
|
struct _GimpLevelsToolClass
|
|
{
|
|
GimpImageMapToolClass parent_class;
|
|
};
|
|
|
|
|
|
void gimp_levels_tool_register (GimpToolRegisterCallback callback,
|
|
gpointer data);
|
|
|
|
GType gimp_levels_tool_get_type (void) G_GNUC_CONST;
|
|
|
|
|
|
#endif /* __GIMP_LEVELS_TOOL_H__ */
|