Commit Graph

231 Commits

Author SHA1 Message Date
Ell d37fb8aa5c app: split sanity check into early/late stages, to fix gegl translation
The GEGL ops sanity check causes all ops to be initialized.  The
strings used by their properties will pick the translation selected
at the time of the check.  It must therefore run after language
intiailization, otherwise the selected translation would correspond
to the system locale, even if the user selected a different language
in the preferences.

Split the sanity check into early and late stages.  The early stage
is run before the call to app_run(), as it did before, while the
late stage is run during app_run(), after the configuration has been
loaded.  Currently, the GEGL ops check is the only late-stage check;
all other checks are performed during the early stage.
2017-06-15 09:51:25 -04:00
Jehan bc344a9991 Bug 750180 - Fix different ways of writing Plug-in Plug-In Plugin.
It was agreed that we should write "plug-in" consistently. Only possibly
user-visible strings were updated.
Thanks to scootergrisen for a first patch which could not make it
after changing decision on the canonical writing.
2017-03-21 17:52:22 +01:00
Michael Natterer 20a32d970d Bug 599573 - Remember dialog defaults between Gimp sessions
Add GimpFillOptions and GimpStrokeOptions to GimpDialogConfig and use
them in the Fill/Stroke Selection/Path dialogs and for the "with last
values" commands. Add GUI for them to Preferences -> Dialog Defaults.

This requires most of the stuff in my last few commits, and some
more changes:

GimpFillOptions is a GimpContext which has all sorts of connections to
everything, including a Gimp pointer. Hack around in GimpDialogConfig
to add a Gimp property, and add "gimp" parameters to quite some GimpRC
functions. Treat the Gimp* as a GObject* in all public API because
core/ stuff is not known in config/.
2016-09-14 01:27:42 +02:00
Michael Natterer 6fe900f7a7 app: always call gimp_load_config() on a newly created Gimp instance
Simply creating and destroying a Gimp now creates and destroys more
members, and some of them always need a gimp->config object.
2016-09-13 12:55:17 +02:00
Michael Natterer 631110e061 app: merge units.[ch] into core/gimp-units.[ch]
and initialize units in gimp_init(). This was completely
over-engineered but in the end boils down to a bad hack that needs a
static "the_unit_gimp" pointer anyway, so let's at least have the hacks
in one file.
2016-09-12 23:51:29 +02:00
Jehan 6edc9380f3 app: fix warnings for win32 builds.
Eliminates some "assignment from incompatible pointer type" warnings,
on calls to GetProcAddress().
2016-05-29 18:27:58 +02:00
Jehan 48b8df2f14 Indentation (tabs) cleanup. 2016-05-29 02:37:32 +02:00
Jehan 2bb0f1b1c9 app: fix "_WIN32_WINNT" redefined when cross-compiling with mingw-w64.
It was already defined in _mingw.h, provided with mingw-w64 headers.
2016-05-29 02:26:04 +02:00
Massimo Valentini 062cf1a5ab Bug 766895: The --dump-pdb-procedures-deprecated...
argument triggers a segmentation fault

Initialize babl so that, when gimp is unreffed,
using a babl_format to destroy a std brush does
not crash.
2016-05-27 19:30:49 +02:00
Mukund Sivaraman 6a6604871f windows: Add support for generating crash backtraces using Dr. MingW 2016-01-02 18:55:37 +05:30
Michael Natterer d5255dc133 app: derive GimpProcedure from GimpViewable
and remove redundant icon managing code from GimpPlugInProcedure
2016-01-01 20:05:32 +01:00
Jehan cd2b395194 app: batch commands won't run on existing instance. 2015-09-28 22:31:21 +02:00
Michael Henning 3e0d10d860 win: Group gimp windows together on the taskbar.
The plug-ins and the main window used to be separate.
2015-08-10 22:27:45 -04:00
Mukund Sivaraman 60197c227d windows: Call SetDLLDirectory() in the app
With this patch, there should be no more need to set PATH on Windows
before running GIMP.

This patch was tested by me and drawoc, but there could be some
undetected issues lurking. Revert if any problems arise.
2015-04-13 15:45:58 +05:30
Michael Natterer 0bf1f22b01 app: add a "Playground" perfs page and a --show-playground command line option
The page is shown by default in unstable but needs --show-playground
in stable versions. There is nothing yet on that page. Also, the icon
needs improvement...
2014-09-14 01:08:25 +02:00
Michael Natterer 4d15f219a7 app: don't use GLIB_CHECK_VERSION (2, 39, 90) for win32 argv parsing
Instead, use the new APIs unconditionally.
2014-08-12 15:37:46 +02:00
Michael Natterer 3e85deefb5 app: manage the system and user gimprc paths as GFiles 2014-07-28 15:03:06 +02:00
Michael Natterer 774e064fbf Bug 691169 - Gimp fails to open files with UTF8 characters as filenames...
...when started via Windows Explorer (e.g. the file context menu)

When built against GLib >= 2.39.90, use g_win32_get_command_line()
and g_option_context_parse_strv() which handle all sorts of windows
filename encodings properly.
2014-03-08 22:39:47 +01:00
Michael Natterer 697572ccc0 app,libgimp*: fix includes to follow our include policy
- don't include <gdk-pixbuf/gdk-pixbuf.h> in headers in app/
- instead, include it in many .c files instead of <glib-object.h>,
  finally acknowledging the fact that app/ depends on gdk-pixbuf almost
  globally
- fix up includes as if libgimpbase depended in GIO, which it soon will
2013-10-15 01:58:39 +02:00
Michael Natterer fa05f2ab11 app: need to call babl_init() in gimp_option_dump_gimprc() 2012-11-20 08:21:33 +01:00
Michael Natterer 373a4e7469 app: completely remove TileManager and friends (base/ and paint-funcs/)
And along with it a lot of stuff like the drawable preview cache, the
gegl tile manager backend, temporary gimp_gegl_buffer_foo() stuff, and
the remaining bits of performance.

The projection is in an evil semi-ported state which makes it work
ok-ish for stuff like layer moving, but absolutely unbearable for
painting, there is also an off-by-one rendering glitch at some zoom
levels.
2012-06-20 21:44:09 +02:00
Michael Muré 9966bcfd13 remove now useless and deprecated g_thread_init
Warning

g_thread_init has been deprecated since version 2.32 and should not be used in newly-written code. This function is no longer necessary. The GLib threading system is automatically initialized at the start of your program.
2012-05-03 20:44:07 +09:00
Martin Nordholts dfc11599d1 app: Small --dump-pdb-procedures-deprecated cleanup 2011-05-06 07:29:01 +02:00
Martin Nordholts ed01101429 app: Add hidden --dump-pdb-procedures-deprecated option
Allow to dump the names of all internal deprecated PDB
procedures. This enables us to do static analysis on *.scm files and
look for usage of deprecated procedures.
2011-05-05 01:01:17 +02:00
Mikael Magnusson b81276ca83 app: fix goption warning
Using G_OPTION_FLAG_NO_ARG with G_OPTION_ARG_NONE is not a valid combination,
glib 2.28.2 warns about it.

(gimp:20379): GLib-WARNING **: goption.c:2132: ignoring no-arg, optional-arg or filename flags (8) on option "debug-handlers" of type 0
2011-03-09 15:37:18 +01:00
Tor Lillqvist 24386abb3b Increase safety on Windows
Call SetDllDirectory() to reduce risk of DLL hijacking, and call
SetProcessDEPPolicy() to reduce risk of rogue code execution.
2010-09-02 18:40:50 +03:00
Martin Nordholts fa441e8d5f app: Refer to splash screen as splash screen, not startup window 2010-08-17 18:59:04 +02:00
Sven Neumann a56de78b01 app: add "language" gimprc option and set the language accordingly 2010-01-05 22:30:16 +01:00
Michael Natterer d9b5207aa2 Change licence to GPLv3 (and to LGPLv3 for libgimp).
2009-01-17  Michael Natterer  <mitch@gimp.org>

	* all files with a GPL header and all COPYING files:

	Change licence to GPLv3 (and to LGPLv3 for libgimp).

	Cleaned up some copyright headers and regenerated the parsers in
	the ImageMap plugin.


svn path=/trunk/; revision=27913
2009-01-17 22:28:01 +00:00
Sven Neumann 3f256652e6 removed prototype for gimp_sigfatal_handler()
svn path=/trunk/; revision=27271
2008-10-13 19:49:51 +00:00
Sven Neumann f6e08757a1 app/Makefile.am new files with code split out of main.c.
2008-10-13  Sven Neumann  <sven@gimp.org>

	* app/Makefile.am
	* app/signals.[ch]: new files with code split out of main.c.

	* app/main.c: changed accordingly.


svn path=/trunk/; revision=27270
2008-10-13 19:32:33 +00:00
Tor Lillqvist c1d3d25ef2 Code built by the still unstable mingw-w64 toolchain gets bogus argc and
2008-08-07  Tor Lillqvist  <tml@novell.com>

	* app/main.c: Code built by the still unstable mingw-w64 toolchain
	gets bogus argc and argv when built as subsystem:windows, so use
	__argc and __argv instead, which seem to be OK.

	* libgimp/gimp.h: Similar change here.


svn path=/trunk/; revision=26420
2008-08-07 15:45:33 +00:00
Sven Neumann 0cf63ba421 moved some common code back to main.c
svn path=/trunk/; revision=26118
2008-07-11 09:16:23 +00:00
Sven Neumann 30cc37c5fe app/Makefile.am new files containing functionality to check for an already
2008-07-11  Sven Neumann  <sven@gimp.org>

	* app/Makefile.am 
	* app/unique.[ch]: new files containing functionality to check 
for
	an already running instance of GIMP of notifying it about files 
to
	open. Code split out of main.c.

	* app/main.c: changed accordingly.


svn path=/trunk/; revision=26117
2008-07-11 09:08:07 +00:00
Sven Neumann c6260c55f2 removed misleading comment.
2008-07-11  Sven Neumann  <sven@gimp.org>

	* app/main.c (gimp_init_malloc): removed misleading comment.


svn path=/trunk/; revision=26116
2008-07-11 08:22:53 +00:00
Tor Lillqvist 131aa16e7a New files. Rename gimp_show_version() to gimp_version_show() and move
2008-02-26  Tor Lillqvist  <tml@novell.com>

	* app/version.[ch]: New files. Rename gimp_show_version() to
	gimp_version_show() and move here. When given both --version and
	--verbose, print build-time and run-time versions of the most
	important dependencies.

	* app/Makefile.am: Add them.

	* app/main.c: Call gimp_version_show().

	* app/Makefile.am: Use -mwindows only for the GUI gimp, not for
	gimp-console.


svn path=/trunk/; revision=24968
2008-02-26 14:02:44 +00:00
Michael Natterer 479a649898 Some cleanup...
2007-12-29  Michael Natterer  <mitch@gimp.org>

	Some cleanup...

	* app/Makefile.am: change linking order.

	* app/main.c: move gegl initialization from here...

	* app/app.c: ...to here.

	* app/gegl/gimpops.c: removed.

	* app/gegl/gimp-gegl.[ch]
	* app/gegl/gegl-types.h: added.

	* app/gegl/Makefile.am: changed accordingly.

	* app/gegl/gimpoptilesink.[ch]
	* app/gegl/gimpoptilesource.[ch]: made more gimpish.


svn path=/trunk/; revision=24459
2007-12-29 01:35:04 +00:00
Øyvind Kolås b06afdec24 Added adapter GEGL operations for reading and writing to TileManagers.
2007-12-29  Øyvind Kolås  <pippin@gimp.org>

	Added adapter GEGL operations for reading and writing to TileManagers.

	* configure.in:
	* app/Makefile.am: added gegl subdir.
	* app/gegl/Makefile.am: added.
	* app/gegl/gimpops.c: (gimp_gegl_ops_init):
	* app/gegl/gimpoptilesink.[ch]: adapter GEGL operation for writing to
	GIMP tile managers.
	* app/gegl/gimpoptilesource.[ch]: adapter GEGL operation for reading
	from GIMP tile managers.
	* app/main.c: (main): call gimp_gegl_ops_init()
	* app/gegl/gegl/: added some headers from GEGL that are not installed
	since they are not public API yet.

svn path=/trunk/; revision=24458
2007-12-29 00:57:51 +00:00
Michael Natterer 3229e67f64 app/Makefile.am new files implementing a log facility which can be enabled
2007-11-15  Michael Natterer  <mitch@gimp.org>

	* app/Makefile.am
	* app/gimp-log.[ch]: new files implementing a log facility which
	can be enabled using the GIMP_LOG environment variable.

	* app/main.c: initialize it.

	* app/display/gimpdisplayshell-callbacks.c: use it instead of
	private debugging macros that need to be enabled at compile time.


svn path=/trunk/; revision=24160
2007-11-15 10:57:53 +00:00
Sven Neumann 3963c27fe4 added back short versions of --gimprc option and --console-messages
2007-10-17  Sven Neumann  <sven@gimp.org>

	* app/main.c: added back short versions of --gimprc option and
	--console-messages command-line options.

svn path=/trunk/; revision=23861
2007-10-17 18:43:23 +00:00
Sven Neumann c58c5e9659 added back short version of --gimprc option.
2007-10-17  Sven Neumann  <sven@gimp.org>

	* app/main.c: added back short version of --gimprc option.


svn path=/trunk/; revision=23860
2007-10-17 17:25:07 +00:00
Hans Breuer aface5c12a updated msvc build include <io.h> for get_osfhandle() prototype
2007-08-26  Hans Breuer  <hans@breuer.org>

	* **/makefile.msc : updated msvc build
	* app/main.c : include <io.h> for get_osfhandle()
	* plug-ins/jpeg/jpeg-settings.h : prototype
	jpeg_swap_original_settings


svn path=/trunk/; revision=23377
2007-08-26 18:59:34 +00:00
Sven Neumann 09578ea070 removed extra check for gthread and fold it into the GLIB and GTK checks.
2007-06-25  Sven Neumann  <sven@gimp.org>

	* configure.in: removed extra check for gthread and fold it into
	the GLIB and GTK checks.

	* */Makefile.am: changed accordingly.

	* app/main.c (main): always call g_thread_init().

svn path=/trunk/; revision=22832
2007-06-25 12:41:59 +00:00
Michael Natterer 3679ac69e8 initialize "uri" to NULL. #include "file/file-utils.h"
2007-05-22  Michael Natterer  <mitch@gimp.org>

	* app/main.c (gimp_dbus_open): initialize "uri" to NULL.
	#include "file/file-utils.h"


svn path=/trunk/; revision=22560
2007-05-22 11:24:23 +00:00
Michael Natterer 88ac187c84 new function, fixed and factored out of file_utils_filename_to_uri().
2007-05-14  Michael Natterer  <mitch@gimp.org>

	* app/file/file-utils.[ch] (file_utils_filename_is_uri): new function,
	fixed and factored out of file_utils_filename_to_uri().

	* app/main.c (gimp_dbus_open): use it here instead of a simple
	strstr(filename, "://").


svn path=/trunk/; revision=22484
2007-05-13 23:15:34 +00:00
Sven Neumann 0619846aef minor cleanup
svn path=/trunk/; revision=22471
2007-05-11 09:39:54 +00:00
Sven Neumann ea4becaca4 don't attempt the conversion if the argument is already an URI.
2007-05-11  Sven Neumann  <sven@gimp.org>

	* app/main.c (gimp_dbus_open): don't attempt the conversion if the
	argument is already an URI.


svn path=/trunk/; revision=22470
2007-05-11 09:31:26 +00:00
Sven Neumann 05d2b9a475 convert filenames to absolute file URIs before passing them to
2007-05-11  Sven Neumann  <sven@gimp.org>

	* app/main.c (gimp_dbus_open): convert filenames to absolute 
file
	URIs before passing them to dbus_g_proxy_call().


svn path=/trunk/; revision=22469
2007-05-11 07:12:05 +00:00
Sven Neumann 49b8176aa5 Allow other applications to open images in GIMP as if they were new images
2007-04-17  Sven Neumann  <sven@gimp.org>

	Allow other applications to open images in GIMP as if they were
	new images (without associating a filename). Fixes bug #423118.

	* app/file/file-open.[ch]: added parameter 'as_new' to
	file_open_image() and its variants.

	* app/actions/data-commands.c
	* app/actions/documents-commands.c
	* app/actions/file-commands.c
	* app/core/gimpimagefile.c
	* app/dialogs/file-open-dialog.c
	* app/dialogs/file-open-location-dialog.c
	* app/widgets/gimptoolbox.c
	* app/widgets/gimptoolbox-dnd.c: changed accordingly.

	* app/app.[ch]
	* app/main.c: added new command-line option '--as-new'.

	* app/widgets/gimpdbusservice.[ch]
	* app/widgets/dbus-service.xml: added new method "OpenAsNew" to the
	D-Bus interface.

	* docs/gimp.1.in: document the new command-line option.


svn path=/trunk/; revision=22264
2007-04-17 15:54:01 +00:00
Sven Neumann fe0b95b6bc app/widgets/gimpdbusservice.[ch] added a boolean return value to the D-Bus
2007-03-27  Sven Neumann  <sven@gimp.org>

	* app/widgets/gimpdbusservice.[ch]
	* app/widgets/dbus-service.xml: added a boolean return value to
	the D-Bus Open method.


svn path=/trunk/; revision=22182
2007-03-27 20:12:44 +00:00