Commit Graph

22 Commits

Author SHA1 Message Date
Michael Natterer b53aa45a76 Changed GimpViewable preview rendering to have a context to get
2006-08-29  Michael Natterer  <mitch@gimp.org>

	Changed GimpViewable preview rendering to have a context to get
	FG/BG/whatever from. Use the context to enable dynamic FG/BG
	colors in gradients. Fixes bug #127676 and bug #352214. Addresses
	bug #128367 (doesn't fix it because there's no loading/saving and
	no GUI yet).

	* app/core/core-enums.[ch]: added enum GimpGradientColor to enable
	specifying gradient colors in terms of foreground and background.

	* app/core/gimpgradient.[ch]: added color_type members to the
	GimpGradientSegment struct and honor them in
	gimp_gradient_get_color_at(). Added GimpContext parameters to all
	functions which finally call get_color_at().

	* app/core/gimp-gradients.c: use the new method to implement the
	builtin gradients.

	* app/core/gimpviewable.[ch]: added GimpContext parameters to all
	get_preview() and get_pixbuf() functions.

	* app/core/gimpbrush.c
	* app/core/gimpbuffer.c
	* app/core/gimpdrawable-preview.[ch]
	* app/core/gimpgradient.c
	* app/core/gimpimage-preview.[ch]
	* app/core/gimpimagefile.c
	* app/core/gimppalette.c
	* app/core/gimppattern.c
	* app/core/gimpundo.[ch]
	* app/text/gimpfont.c
	* app/vectors/gimpvectors-preview.[ch]: changed ::get_preview()
	and ::get_pixbuf() implementations accordingly.

	* app/core/gimpdrawable-blend.c
	* app/core/gimppalette-import.[ch]
	* app/dialogs/dialogs-constructors.c
	* app/dialogs/palette-import-dialog.c
	* app/dialogs/resize-dialog.c
	* app/display/gimpdisplayshell-layer-select.c
	* app/display/gimpdisplayshell.c
	* app/display/gimpnavigationeditor.c
	* app/paint/gimppaintoptions.c
	* app/tools/gimpeditselectiontool.c
	* app/tools/gimptexttool.c
	* app/actions/gradient-editor-commands.c
	* app/widgets/gimpaction.c
	* app/widgets/gimpbrusheditor.[ch]
	* app/widgets/gimpbufferview.c
	* app/widgets/gimpcellrendererviewable.c
	* app/widgets/gimpchanneltreeview.c
	* app/widgets/gimpclipboard.c
	* app/widgets/gimpcoloreditor.c
	* app/widgets/gimpcomponenteditor.c
	* app/widgets/gimpcontainerbox.c
	* app/widgets/gimpcontainercombobox.c
	* app/widgets/gimpcontainereditor.c
	* app/widgets/gimpcontainerentry.c
	* app/widgets/gimpcontainergridview.c
	* app/widgets/gimpcontainertreeview.[ch]
	* app/widgets/gimpdataeditor.[ch]
	* app/widgets/gimpdevicestatus.c
	* app/widgets/gimpdnd.[ch]
	* app/widgets/gimpdrawabletreeview.c
	* app/widgets/gimpfiledialog.c
	* app/widgets/gimpgradienteditor.[ch]
	* app/widgets/gimpgradientselect.c
	* app/widgets/gimpitemtreeview.c
	* app/widgets/gimplayertreeview.c
	* app/widgets/gimppaletteeditor.[ch]
	* app/widgets/gimppropwidgets.[ch]
	* app/widgets/gimpselectioneditor.c
	* app/widgets/gimpthumbbox.[ch]
	* app/widgets/gimptoolbox-image-area.c
	* app/widgets/gimptoolbox-indicator-area.c
	* app/widgets/gimptooloptionseditor.c
	* app/widgets/gimpundoeditor.c
	* app/widgets/gimpvectorstreeview.c
	* app/widgets/gimpview-popup.[ch]
	* app/widgets/gimpview.[ch]
	* app/widgets/gimpviewablebutton.c
	* app/widgets/gimpviewabledialog.c
	* app/widgets/gimpviewrenderer.[ch]
	* app/widgets/gimpviewrenderer-frame.c
	* app/widgets/gimpviewrendererbrush.c
	* app/widgets/gimpviewrendererbuffer.c
	* app/widgets/gimpviewrendererdrawable.c
	* app/widgets/gimpviewrenderergradient.c
	* app/widgets/gimpviewrendererimage.c
	* tools/pdbgen/pdb/drawable.pdb
	* tools/pdbgen/pdb/gradient.pdb
	* tools/pdbgen/pdb/gradients.pdb
	* tools/pdbgen/pdb/image.pdb: added tons of GimpContext members
	and parameters, implement GimpDocked::set_context() in many
	widgets. Pass these locally remembered contexts to GimpViewable
	functions. Did some minor cleanups on the way. There are still
	some minor FIXMEs around where the code uses a NULL context (which
	is allowed by the APIs)

	* app/pdb/drawable_cmds.c
	* app/pdb/gradient_cmds.c
	* app/pdb/gradients_cmds.c
	* app/pdb/image_cmds.c: regenerated.
2006-08-29 21:44:51 +00:00
Sven Neumann 6ebcf700d1 removed erroneous semicolon after G_DEFINE_TYPE macros.
2006-05-15  Sven Neumann  <sven@gimp.org>

	* app/*/*.c:
	* lib*/*.c: removed erroneous semicolon after G_DEFINE_TYPE macros.
2006-05-15 09:46:31 +00:00
Sven Neumann 645edc9cdc moved new code to a utility function. Avoid use of deprecated Pango API.
2006-04-04  Sven Neumann  <sven@gimp.org>

	* app/text/gimpfont.c: moved new code to a utility function. Avoid
	use of deprecated Pango API. Removed tabs and trailing whitespace.
2006-04-04 07:36:02 +00:00
Tor Lillqvist 0cd9648a49 Provide script-specific short sample strings instead of "Aa" for fonts
2006-04-04  Tor Lillqvist  <tml@novell.com>

	* app/text/gimpfont.c (gimp_font_get_new_preview): Provide
	script-specific short sample strings instead of "Aa" for fonts
	that seem to be designed for some specific non-Latin
	script. Pending a complete redesign and reimplementation of
	font selection, this is at least an improvement, and a partial
	solution to #137624.
2006-04-03 22:56:43 +00:00
Michael Natterer e1ceed5147 define GIMP_PARAM_STATIC_STRINGS which is G_PARAM_STATIC_NAME|NICK|BLURB.
2006-01-18  Michael Natterer  <mitch@gimp.org>

	* app/config/config-types.c: define GIMP_PARAM_STATIC_STRINGS
	which is G_PARAM_STATIC_NAME|NICK|BLURB. Also define
	GIMP_PARAM_READABLE, _WRITABLE and _READWRITE which include
	GIMP_PARAM_STATIC_STRINGS.

	* app/*/*.c: use them for all object properties so their
	strings are not copied.
2006-01-18 20:29:40 +00:00
Michael Natterer 0d4a10fee4 app/config/*.c app/core/*.c app/display/*.c app/text/*.c port to
2005-12-10  Michael Natterer  <mitch@gimp.org>

	* app/config/*.c
	* app/core/*.c
	* app/display/*.c
	* app/text/*.c
	* app/vectors/*.c: port to G_DEFINE_TYPE() and friends. Some related
	core reordering and cleanup.
2005-12-10 19:24:36 +00:00
Michael Natterer 0c46cef04d code cleanup, untabified.
2005-11-02  Michael Natterer  <mitch@gimp.org>

	* app/text/gimptext.c: code cleanup, untabified.
2005-11-02 19:41:29 +00:00
Manish Singh 4bfb3e26a5 new function to workaround pango bug #166540, by tacking on a ',' to font
2005-02-09  Manish Singh  <yosh@gimp.org>

        * app/text/gimpfont-utils.[ch]: new function to workaround pango
        bug #166540, by tacking on a ',' to font names that end in numbers,
        so pango_font_description_from_string doesn't interpret it as a size.

        * app/text/Makefile.am: add above files.

        * app/text/gimpfontlist.c
        * app/text/gimptext-compat.c: use new function.

        * app/text/gimptext-xlfd.c: also make sure font names pulled out
        from XLFD don't end in numbers.

        * app/text/gimpfont.c
        * app/text/gimptextlayout.c: remove some redundant checks.
2005-02-10 05:33:01 +00:00
Michael Natterer 281eac1ddb take both logical and ink rectangle into account to avoid clipping away
2004-05-28  Michael Natterer  <mitch@gimp.org>

	* app/text/gimpfont.c (gimp_font_get_popup_size)
	(gimp_font_get_new_preview): take both logical and ink rectangle
	into account to avoid clipping away parts of the font preview.
	Fixes bug #142277.
2004-05-28 12:46:54 +00:00
Sven Neumann 0c68062afe use GTK_STOCK_SELECT_FONT stock icon instead of text tool icon.
2003-11-05  Sven Neumann  <sven@gimp.org>

	* app/tools/gimptextoptions.c (gimp_text_options_gui): use
	GTK_STOCK_SELECT_FONT stock icon instead of text tool icon.

	* app/text/gimpfont.c: fixed default stock id.

	* app/text/gimp-fonts.c (gimp_fonts_load): don't leave gimp busy
	and the fonts container frozen in case of error.
2003-11-05 01:07:56 +00:00
Sven Neumann ec22027964 register a log handler for the Gimp-Text domain.
2003-11-05  Sven Neumann  <sven@gimp.org>

	* app/app_procs.c: register a log handler for the Gimp-Text domain.

	* app/text/gimpfont.c: code cosmetics.

	* app/text/gimptext-compat.c: removed debugging output.

	Let GIMP work w/o any fonts. Of course you won't get any text
	functionality then:

	* app/text/gimpfontlist.c: don't install any font aliases if no
	fonts were found.

	* app/text/gimptextlayer.c: refuse to render any text layers when
	the GIMP fonts list is empty.

	* app/tools/gimptexttool.c: removed redundant includes.

	* app/tools/gimptextoptions.c: removed the font selection widget.
	This is a temporary regression that will be cured by improving the
	GimpFontView widget.

	* app/widgets/Makefile.am
	* app/widgets/gimpfontselection-dialog.[ch]
	* app/widgets/gimpfontselection.[ch]
	* app/widgets/gimppropwidgets.[ch]: removed the font selection and
	all references to it. Fixes bug #119267.
2003-11-04 23:59:58 +00:00
Michael Natterer 482aa11bfb added GIMP_VIEWABLE_MAX_BUTTON_SIZE GIMP_VIEWABLE_MAX_MENU_SIZE.
2003-10-09  Michael Natterer  <mitch@gimp.org>

	* app/core/gimpviewable.h: added GIMP_VIEWABLE_MAX_BUTTON_SIZE
	GIMP_VIEWABLE_MAX_MENU_SIZE.

	* app/core/gimpviewable.c (gimp_viewable_get_popup_size): smarter
	popup size limitation: limit each axis to 2 * MAX_POPUP_SIZE
	and the area to MAX_POPUP_SIZE ^ 2.

	* app/core/gimpbuffer.c
	* app/core/gimpimage-preview.c
	* app/core/gimpitem-preview.c
	* app/text/gimpfont.c (GimpViewable::get_popup_size): removed
	all limitations.

	* app/widgets/gimpcontainermenu.c
	* app/widgets/gimpcontainermenuimpl.c
	* app/widgets/gimpmenuitem.c
	* app/widgets/gimpviewablebutton.c: use the new button and menu
	size defines.
2003-10-09 12:26:46 +00:00
Sven Neumann 8240ef1ccc constrain popup size to GIMP_VIEWABLE_MAX_POPUP_SIZE but keep the aspect
2003-09-22  Sven Neumann  <sven@gimp.org>

	* app/core/gimpviewable.c (gimp_viewable_get_popup_size):
	constrain popup size to GIMP_VIEWABLE_MAX_POPUP_SIZE but keep the
	aspect ratio intact. Fixes bug #122923.

	* app/text/gimpfont.c: use a smaller font size for popups so we
	don't exceed the maximum size.
2003-09-22 14:23:03 +00:00
Michael Natterer fdb7265a7c #define GIMP_VIEWABLE_MAX_PREVIEW_SIZE here.
2003-04-01  Michael Natterer  <mitch@gimp.org>

	* app/core/gimpviewable.h: #define GIMP_VIEWABLE_MAX_PREVIEW_SIZE
	here.

	* app/widgets/gimppreview.h
	* app/widgets/gimppreviewrenderer.h: removed the #defines here.

	* app/core/gimpviewable.c (gimp_preview_get[_popup]_size): check
	the return values to be within bounds.

	* app/text/gimpfont.c
	* app/display/gimpdisplayshell-render.c: use the new constant
	instead of the magic "1024".

	* app/core/gimpdrawable-preview.c: #include our own header file.

	* app/widgets/gimpbrushfactoryview.c
	* app/widgets/gimpcomponenteditor.c
	* app/widgets/gimpcontainereditor.c
	* app/widgets/gimpcontainergridview.c
	* app/widgets/gimpcontainermenu.c
	* app/widgets/gimpcontainermenuimpl.c
	* app/widgets/gimpcontainertreeview.c
	* app/widgets/gimpcontainerview.c
	* app/widgets/gimpdatafactoryview.c
	* app/widgets/gimpitemtreeview.c
	* app/widgets/gimppreview.c
	* app/widgets/gimppreviewrenderer.c: changed accordingly.
2003-04-01 13:53:47 +00:00
Sven Neumann 0dad41aec4 use a fixed size for the popup and clamp to a maximum size (should
2003-04-01  Sven Neumann  <sven@gimp.org>

	* app/text/gimpfont.c: use a fixed size for the popup and clamp to
	a maximum size (should actually use GIMP_PREVIEW_MAX_SIZE here).

	* app/text/gimptext.c
	* app/tools/gimptextoptions.c: minor string changes.
2003-04-01 00:35:38 +00:00
Sven Neumann 8f4c74e62a added an upper limit for the popup size to avoid a crash when
2003-03-26  Sven Neumann  <sven@gimp.org>

	* app/text/gimpfont.c (gimp_font_get_popup_size): added an upper
	limit for the popup size to avoid a crash when GIMP_PREVIEW_MAX_SIZE
	is exceeded.
2003-03-26 22:17:37 +00:00
Michael Natterer 75eb793b99 a nicer popup preview featuring five dozen liquor jugs.
2003-03-26  Michael Natterer  <mitch@gimp.org>

	* app/text/gimpfont.c: a nicer popup preview featuring five
	dozen liquor jugs.
2003-03-26 00:30:10 +00:00
Sven Neumann 537e8606c3 sort of works now.
2003-03-26  Sven Neumann  <sven@gimp.org>

	* app/text/gimpfont.c (gimp_font_get_new_preview): sort of works now.
2003-03-25 23:10:50 +00:00
Sven Neumann b4dc1579e9 made the PangoContext an object property of GimpFont.
2003-03-25  Sven Neumann  <sven@gimp.org>

	* app/text/gimpfont.c: made the PangoContext an object property of
	GimpFont.
2003-03-25 22:48:59 +00:00
Sven Neumann fab72973a2 require gtk+ >= 2.2.
2003-03-25  Sven Neumann  <sven@gimp.org>

	* gimpui-1.3.pc.in: require gtk+ >= 2.2.

	* app/text/gimpfont.[ch]: implemented basic preview functionality.

	* app/text/gimptextlayout.c: changed a comment.
2003-03-25 22:13:10 +00:00
Michael Natterer bc9676e462 app/text/Makefile.am app/text/text-types.h new GimpList subclass.
2003-03-25  Michael Natterer  <mitch@gimp.org>

	* app/text/Makefile.am
	* app/text/text-types.h
	* app/text/gimpfontlist.[ch]: new GimpList subclass. Unused...

	* app/text/gimpfont.[ch]: added gimp_font_get_standard().
2003-03-25 22:00:59 +00:00
Michael Natterer f4364f1a1f app/text/Makefile.am app/text/text-types.h new object. Does nothing yet.
2003-03-25  Michael Natterer  <mitch@gimp.org>

	* app/text/Makefile.am
	* app/text/text-types.h
	* app/text/gimpfont.[ch]: new object. Does nothing yet.
2003-03-25 20:29:46 +00:00