Commit Graph

1868 Commits

Author SHA1 Message Date
ea4fe02a6d libgimpwidgets: some docs fixes 2019-08-18 14:07:17 +02:00
f22290e0a2 libgimpwidgets: fix a warning. 2019-08-17 10:53:45 +02:00
284ba5c870 libgimpconfig: Prevent GIR conflicts in GimpConfigWriter
GimpConfigWriter contains several constructors with the convention
`gimp_config_writer_new_* ()`. This will lead to problems however with
languages like Vala, where it cannot disambiguate the following:

```
// calls config_writer_new_string()
Gimp.ConfigWriter w = new ConfigWriter.string("xxx");
// calls config_writer_string()
w.string("xxx")
```

Using `from_` in constructors is general practice in GObject-bsed
libraries because of this.

This also fixes an error when trying to use vapigen on the GIMP .GIR
file.
2019-08-16 10:04:39 +00:00
7e99aa59f5 Add other misc. typo fixes 2019-08-13 11:50:51 -04:00
ae7dfba2c4 libgimpwidgets: fix some typos.
s/logharithmic/logarithmic/
2019-08-09 23:40:07 +02:00
31b8ea4a90 libgimpbase: add lots of const to GimpEnumDesc and GimpFlagsDesc APIs 2019-08-09 13:29:34 +02:00
55940b733b libgimpwidgets: add a GDestroyNotify for gimp_help_connect()'s user_data 2019-08-09 13:11:30 +02:00
ebddecd696 libgimpwidgets: more docs and annotations 2019-08-09 12:59:41 +02:00
d3d621b502 libgimpconfig: add a GimpScanner typedef and make it a boxed type
Replace _destroy() by _ref() and _unref().
2019-08-09 12:42:52 +02:00
8cfef5e60d libgimpwidgets: more docs and annotations 2019-08-09 12:32:09 +02:00
2dde79b3e7 libgimp*: move GObject Introspection into libgimp/.
libgimp is anyway processed at the very end after all other libgimp*
were built. This way, it also fixes #3746, by removing the $(top_srcdir)
everywhere from introspected files, hence making the build work again
with older automake.
2019-08-08 15:59:44 +02:00
00bf76752c libgimpwidgets: more docs and annotations for GimpUnitComboBox 2019-08-08 00:40:03 +02:00
169f98f915 libgimpwidgets: add GDestroyNotify to gimp_int_combo_box_connect() 2019-08-08 00:22:15 +02:00
67455a4ea7 libgimpwidgets: add GDestroyNotify to all enum widgets callback_data 2019-08-08 00:01:10 +02:00
1afb7a8b32 libgimpwidgets: add GDestroyNotify to gimp_widget_track_monitor() 2019-08-07 23:44:18 +02:00
cbefd8e5bb libgimpwidgets: add GDestroyNotify for gimp_query_foo_box() user_data
This is ugly shit that should go down the canal but let's just fix
these GI warnings.
2019-08-07 22:48:06 +02:00
c08186e6fe libgimp*: fix some parameter inconsistencies to silence GI warnings 2019-08-07 22:05:12 +02:00
ddd726e253 libgimpwidgets: add some annotations.
Fix some (transfer) warnings.
2019-08-05 17:13:59 +02:00
4a6b58507b libgimp, libgimpmath, libgimpwidgets: update def files.
So many things moved in the last few days, and we just didn't think of
updating these.
2019-08-05 16:55:35 +02:00
cc8fc0f90f libgimp*: add GI's .dirstamp to .gitigore 2019-08-03 19:50:17 +02:00
5f92ced1f3 Add (nullable) if applicable
Basically this commit makes sure that all return values that are marked
as "Returns:" also have a `(nullable)` annotation if it is mentioned on
the same line that NULL can also be returned.

This will prevent a few problems in GObject-introspection.
2019-08-03 07:53:47 +00:00
1dda60154c Use "Returns:" to annotate return values
To be able to annotate return values through GObject-introspection, you
need to make sure it is tagged with `Returns:` and not something else.
2019-08-03 07:53:47 +00:00
746a72b956 Make sure to use % for constants
Documentation-wise in C, this doesn't matter a lot, but it allows
GObject-Introspection based bindings to use their built-in versions when
they want to render any kind of documentation (for example, docs for
Python plugins can render `%NULL` as `None`).
2019-08-03 07:53:47 +00:00
6a1df5be31 libgimpwidgets: fix a copy-paste bug in function docs. 2019-08-03 09:38:46 +02:00
19fbb1d9a8 libgimpwidgets: add documentation for many functions and fix...
... an annotation.
s/(transfer-none)/(transfer none)/
For the "Since:" value, I did some git log archeology. Hopefully I got
these right.
2019-08-02 11:46:39 +02:00
c12c031f2d pdb, libgimp*: add (out caller-allocates) to all GimpRGB* return values 2019-08-01 15:39:13 +02:00
bdac38a854 libgimpwidgets: add and fix some annotations 2019-08-01 14:10:50 +02:00
ea53089545 libgimpwidgets: add a bunch of missing (transfer) annotations. 2019-08-01 13:10:39 +02:00
e7f041492a libgimpwidgets: fix a doc glitch in GimpStringComboBox 2019-08-01 12:23:05 +02:00
83ecbc8e39 libgimpwidgets: fix GimpScaleEntry annotations 2019-08-01 10:22:20 +02:00
3016dfb347 libgimpwidgets: add many missing (transfer) annotations. 2019-08-01 02:04:28 +02:00
f7fbdc89b1 libgimpwidgets: add a bunch of (transfer) values. 2019-07-31 23:48:32 +02:00
63695b4b21 libgimbase: merge gimpparam.h into gimpparamspecs.h
which means that it's now included normally via gimpbase.h
and not any longer via gimpbasetypes.h which we only did out
of lazyness. A *lot* of files in libgimp* and app/ now need to
2019-07-31 10:16:21 +02:00
a198b5a948 libgimpwidgets: fix annotation.
Fixes:
> Warning: Gimp: missing ":" at column 36:
2019-07-31 01:53:55 +02:00
82cfa9c25f libgimpwidgets: fix annotations in GimpDialog.
(skip) various variable length functions (va_list functions are not
introspectable anyway, but adding manual annotations shows we've have
been through them).

Also (skip) gimp_dialogs_show_help_button even though it could be
introspected without any problem. Yet it's written that's an
internal-only function, so let's forbid bindings from using it.

Finally fix gimp_dialog_add_button() introspection by properly including
Gtk-3.0 introspected library so that g-ir-* knows the GtkWidget type.
2019-07-30 15:37:42 +02:00
9691d73058 libgimpwidgets: make a proper function out of the macro...
... gimp_dialog_set_alternative_button_order_from_array()
Macros are not introspectable, which means this call would not be
available for non-C plug-ins. Also adding a "Since: 3.0" since these
macros were added in commit 3be0d13be3.

Note that I don't do the same for the macro
gimp_dialog_set_alternative_button_order() because varargs functions
won't be introspected anyway. So this one can just stay a macro for C
plug-ins only.
2019-07-30 14:05:08 +02:00
afe0bcbc58 libgimpwidgets: introspect libgimpwidgets.
Only leave behind gimpcolorscale, gimpcolorscales and gimpcolorselect
for now. There are some GI compilation errors and I don't have the time
right now to look into it. Most of libgimpwidgets is available to GI
bindings now anyway.
2019-07-30 12:53:15 +02:00
c144cf69de libgimp*: use more g_clear_pointer() 2019-07-25 12:37:52 +02:00
fe75ef28ad libgimpwidgets: fix docs for GimpBusyBox:message 2019-07-25 10:24:30 +02:00
9e88105ee6 libgimpwidgets: add more docs 2019-07-24 19:11:58 +02:00
f67e607395 libgimpwidgets: declare GimpHintBox with public instance and class
like all other objects, so gtk-doc doesn't cripple its docs.
2019-07-24 15:11:51 +02:00
aca5f806c4 libgimp*: lots of doc fixes and new docs for structs and enums 2019-07-24 01:18:30 +02:00
8b22b3ab35 libgimpwidgets: fix some glitches noticed when updating docs 2019-07-23 19:33:48 +02:00
88188cba0c libgimpwidgets: don't use g_type_class_add_private() in GimpColorButton
and switch to using G_DEFINE_TYPE_WITH_CODE().
2019-06-29 16:14:53 +02:00
e512f0f1b7 libgimpwidgets: fix "warning: excess elements in array initializer".
Just fixing stupid bugs in my previous commit. These are fixed array
sizes.
2019-06-23 19:07:32 +02:00
2b22dffc49 Issue #230: ruler subdivision is wrong for inches.
Make better subvision, as well as ruler steps, based on what seems to be
the common trends for rulers of these 3 units (inch, foot and yard), but
also based on common conversion needs.

Main changes are:
- Always subdivide inches by 2, down to 1/256, and get rid of the gap
  where inches division jumped from 1/16 to 1/192 (which is not even a
  multiple of 2).
- Add the 72 steps to inch ruler (1 fathom).
- Replace the 2 feet by a 3 feet (1 yard) step.
- Use base-10 steps for yard (there don't seem to be bigger units in the
  imperial/US measurement system which needs specific steps).
- Add the 1/36 yard (= 1 inch) division.
- Below 1/12 feet and 1/36 yard, divide by multiples of 2 (inch-style).
2019-06-23 16:40:34 +02:00
57b2ba9c48 libgimpwidgets: enable inch/feet/yard binary subdivisions.
It looks like it's not perfect yet. Nevertheless if we leave it disabled
forever, it won't ever get better! For now at least enabled on master
only.
2019-06-23 15:11:34 +02:00
Ell
3a4a00c71e Issue #40 - Layer offset tool
Add a new Offset filter tool, as a front-end to gimp:offset.  The
tool replaces, and provides the same interface as, the drawable-
offset dialog, while also providing live preview and on-canvas
interaction.

Note that we don't simply use a custom propgui constructor for
gimp:offset, since we need a little more control.
2019-06-05 19:06:56 -04:00
2f925e7277 libgimpwidgets: keep gimpwidgetsenums.h in alphabetical order 2019-06-01 16:41:59 +02:00
b29d1ea6ff Issue 1878: Eyedrop tool doesn't work when screen composing (KWin)...
... is enabled.
2019-05-07 18:49:35 +09:00