Compare commits

...

1659 Commits

Author SHA1 Message Date
Matthias Clasen 6863194573 2.24.33
The final release off this branch.
2020-12-20 20:09:37 -05:00
Chun-wei Fan 53d0759d3e Merge branch 'msvc.cleanup.224' into 'gtk-2-24'
Visual Studio projects: Clean up generating gtk.def

See merge request GNOME/gtk!2606
2020-09-21 04:59:03 +00:00
Chun-wei Fan 61f871404c Visual Studio projects: Clean up generating gtk.def
It turns out that we do not need to have separate command lines for
running the Visual Studio preprocessor for 32-bit builds and 64-bit
builds as `_WIN64` is automatically defined by the 64-bit compilers.

This means that we can clean up the project files a bit.
2020-09-21 12:02:24 +08:00
John Ralls 5f104c9883 Include gdkquartz.h in gtkclipboard-quartz.c
to declare gdk_quartz_pasteboard_type_to_atom_libgtk_only.

Closes https://gitlab.gnome.org/GNOME/gtk/-/issues/3161
2020-09-14 13:19:09 -07:00
Matthias Clasen 2d88f6f501 Merge branch 'wip/lantw/build-Fix-out-of-source-make-dist' into 'gtk-2-24'
build: Fix out-of-source make dist

See merge request GNOME/gtk!2505
2020-08-31 16:44:06 +00:00
Ting-Wei Lan 56bdcfd7c6 build: Fix out-of-source make dist
These files are generated during the build.
2020-08-30 11:23:05 +08:00
Emmanuele Bassi 2b3d65895b Merge branch 'wip/lantw/build-Move-gtk.def-to-builddir' into 'gtk-2-24'
build: Move gtk.def to builddir

See merge request GNOME/gtk!2481
2020-08-26 15:14:45 +00:00
Ting-Wei Lan f203b1a751 build: Move gtk.def to builddir
GTK2 uses different gtk.def files on 32-bit and 64-bit Windows. GTK2
source tarballs ship pre-generated gtk.def for 32-bit Windows. If the
user wants to build for 64-bit Windows, the pre-generated gtk.def must
be deleted before the build to force regeneration, or it will fail to
link with 'symbol not defined' errors because the 32-bit Windows build
includes more legacy functions than the 64-bit Windows build.

While users who want to build for 64-bit Windows can delete gtk.def in
the build script, which is currently what most build scripts do, doing
so breaks out-of-source build. On AUR, MinGW packages are usually built
and packaged in the following order:

1. Run 'configure' and 'make' to build for i686-w64-mingw32.
2. Run 'configure' and 'make' to build for x86_64-w64-mingw32.
3. Run 'make install' for i686-w64-mingw32.
4. Run 'make install' for x86_64-w64-mingw32.

It fails because step 3 sees gtk.def left by step 2, which is generated
for a different build. In step 3, make sees the gtk.def change and runs
libtool to relink libgtk-win32-2.0-0.dll. libtool fails to find a lot of
necessary libraries, decides that it is not possible to build a DLL with
-no-undefined, and produces only the static library. It then tries to
relink executables with the static library, and fails with undefined
reference to 'IID_IUnknown' because -Wl,--start-group isn't used and
the use of -Wl,-luuid prevents libtool from using the correct order.

To resolve the problem, move gtk.def to builddir so different builds can
have different gtk.def files while sharing the same source tree. This
also means that the source tarball will no longer include pre-generated
gtk.def file, which should be acceptable because it is already broken on
64-bit Windows.

Fixes https://gitlab.gnome.org/GNOME/gtk/-/issues/3029
2020-08-26 23:02:51 +08:00
Matthias Clasen b4c52486f5 Merge branch 'fix-gtk2-build-on-msys2' into 'gtk-2-24'
Fix GTK2 build on MSYS2

See merge request GNOME/gtk!2305
2020-07-29 12:12:16 +00:00
Philip Zander aae860fe3e Change __declspec(dllexport) to extern __declspec(dllexport)
As of 28 July 2020, building on MSYS2 fails with "multiple definition"
errors unless exported variables are explicitly marked as "extern".

Closes #2958
2020-07-28 13:22:15 +02:00
Matthias Clasen fc1bd0cf2c Merge branch 'fix-pixbuf-out-of-bounds' into 'gtk-2-24'
Resolve GIMP segfault from accessing memory past end of pixbuf

See merge request GNOME/gtk!1813
2020-05-01 22:20:10 +00:00
Nam Nguyen d1b21ff159 Resolve GIMP segfault from accessing memory past end of pixbuf
Fixes https://gitlab.gnome.org/GNOME/gtk/-/issues/2684

GIMP segfaults while switching themes between dark and gray and inputting Ctrl-O
to open a file. This is because p advances past end of pixbuf in pixbuf-render.c
compute_hint() with num_channels = 3 (no alpha). This is resolved by fixing the
if statement to only check for alpha, thereby advancing p, if there is an alpha
channel.
2020-05-01 21:55:49 +00:00
Alex Samorukov 29103cdc3c Use bundle id instead of package name for the macOS preview as filename is now changed 2020-01-14 22:17:09 +00:00
Emmanuele Bassi ad5d360654 Merge branch 'issue-183-backport' into 'gtk-2-24'
Do not use VIQR input method for vi locale by default

See merge request GNOME/gtk!1193
2019-11-16 20:28:39 +00:00
Ming Hua 88ac9188a3 Do not use VIQR input method for vi locale by default
In the Vietnamese Quoted-Readable input method, punctuation following a
base letter is converted into diacritical marks, for example a( → ă.
(See <https://en.wikipedia.org/wiki/Vietnamese_Quoted-Readable>.)
A 2008 bug report in Ubuntu argued that this is a problematic default,
particularly when typing passwords, where the effect of the punctuation
is non-obvious.

According to the bug reporter, VIQR is popular with Vietnamese users
living elsewhere in the world, where Vietnamese keyboards are unlikely
to be readily available, but is not a popular choice within Vietnam,
where the Telex or VNI input modes are preferred.

Closes: #183

Bug-Debian: https://bugs.debian.org/895043
Bug-Ubuntu: https://bugs.launchpad.net/ubuntu/+source/gtk+2.0/+bug/191451

Signed-off-by: Emmanuele Bassi <ebassi@gnome.org>
2019-11-16 20:19:23 +00:00
Emmanuele Bassi e3cc5ebdd2 Merge branch 'fix-win32-build' into 'gtk-2-24'
win32: Remove extraneous changes

See merge request GNOME/gtk!1119
2019-10-07 15:26:53 +00:00
Emmanuele Bassi 0d44567669 Add CI for gtk-2-24
A little bit late, but probably for the best.
2019-10-07 15:41:30 +01:00
Emmanuele Bassi 8467850709 win32: Remove extraneous changes
Commit 6ae3082603 included some changes from the gtk-3-24 branch that
do not make sense in the context of the commit, and break the build of
GTK 2 on Windows. The delta_x and delta_y fields do not exist in the
GdkEventScroll in the gtk-2-24 branch.
2019-10-07 15:36:51 +01:00
Emmanuele Bassi 56c6970b02 Merge branch 'gtk-2-24-py3' into 'gtk-2-24'
Make gtk-builder-convert compatible with Python 3

See merge request GNOME/gtk!1080
2019-09-03 13:15:57 +00:00
Petr Viktorin b5ea5a0cf1 gtk-builder-convert: Update bug report URL
Also, use a newline instead of period at the end to make the
URL easy to copy
2019-09-03 14:57:40 +02:00
Petr Viktorin 4f8efe3ae0 gtk-builder-convert: Remove compat code for Python 2.3 and below 2019-09-03 14:57:36 +02:00
Petr Viktorin 3ff8f70b96 Make gtk-builder-convert compatible with Python 3
- Convert tabs to spaces
- Use print as a function, even on Python 2
- Output a binary file, or decode for stdout
2019-09-03 13:54:49 +02:00
Matthias Clasen 6672a23fb7 Merge branch 'gtk-2-24' into 'gtk-2-24'
Fix use-after-free due to unexpected unref of context->default_style.

See merge request GNOME/gtk!1045
2019-08-25 11:44:08 +00:00
John Lindgren 539a596e49 Fix use-after-free due to unexpected unref of context->default_style.
Segfault occurred when displaying two windows on different X11 displays.

valgrind said:

Invalid read of size 8
  at 0x4A20962: _gtk_style_init_for_settings (gtkstyle.c:398)
  by 0x49ED785: gtk_rc_get_style (gtkrc.c:2036)
  by 0x4AC39C2: gtk_widget_reset_rc_style (gtkwidget.c:6601)
Address 0x70b8e80 is 560 bytes inside a block of size 1,024 free'd
  at 0x48399AB: free (vg_replace_malloc.c:530)
  by 0x51180D6: g_type_free_instance (in /usr/lib/libgobject-2.0.so.0.6000.6)
  by 0x49E98CE: gtk_rc_reset_styles (gtkrc.c:1702)
  by 0x49E9A0C: _gtk_rc_context_get_default_font_name (gtkrc.c:1740)
  by 0x4A20961: _gtk_style_init_for_settings (gtkstyle.c:396)
  by 0x49ED785: gtk_rc_get_style (gtkrc.c:2036)
  by 0x4AC39C2: gtk_widget_reset_rc_style (gtkwidget.c:6601)
Block was alloc'd at
  at 0x483877F: malloc (vg_replace_malloc.c:299)
  by 0x51BD289: g_malloc (in /usr/lib/libglib-2.0.so.0.6000.6)
  by 0x519F673: g_slice_alloc (in /usr/lib/libglib-2.0.so.0.6000.6)
  by 0x51A62BA: g_slice_alloc0 (in /usr/lib/libglib-2.0.so.0.6000.6)
  by 0x5119141: g_type_create_instance (in /usr/lib/libgobject-2.0.so.0.6000.6)
  by 0x513563D: ??? (in /usr/lib/libgobject-2.0.so.0.6000.6)
  by 0x5136A54: g_object_new_with_properties (in /usr/lib/libgobject-2.0.so.0.6000.6)
  by 0x5136B51: g_object_new (in /usr/lib/libgobject-2.0.so.0.6000.6)
  by 0x49ED774: gtk_rc_get_style (gtkrc.c:2035)
  by 0x4AC39C2: gtk_widget_reset_rc_style (gtkwidget.c:6601)
2019-08-06 02:12:43 -04:00
Chun-wei Fan cd196c4f1d Visual Studio builds: Fix previous commit
I forgot to include configure.ac in the commit, which is needed.
2019-06-18 16:28:10 +08:00
Chun-wei Fan a63b70f1dc Visual Studio builds: "Add" Visual Studio 2019 projects
Copy and update the relevant fields from the Visual Studio 2010 projects
so that we can have project files that work out-of-the-box for Visual
Studio 2019, as we did for Visual Studio 2012 through 2017.

Also update the NMake Makefiles for building the introspection files
so that we properly detect that we are building with Visual Studio 2019.
2019-06-18 16:24:54 +08:00
John Ralls c505d3fcf8 Force redraw on Mojave and later when processing updates.
Fixes https://gitlab.gnome.org/GNOME/gtk/issues/1479
2019-03-14 21:47:37 -07:00
Руслан Ижбулатов 6ae3082603 Fix UAC manifest RC file
CREATEPROCESS_MANIFEST_RESOURCE_ID is a macro defined in winbase.h,
so we need an include to resolve that macro to its value, 1.

Without that it stays as a literal CREATEPROCESS_MANIFEST_RESOURCE_ID,
and ends up in the .exe file as-is, and Windows can't find it by that name,
resulting in UAC manifest not working and gtk-update-icon-cache bringing
up UAC prompt.
2019-03-14 09:18:09 +00:00
Matthias Clasen b9a39bf986 Merge branch 'control-enter-2' into 'gtk-2-24'
atk key: Always convert control character events into key names

See merge request GNOME/gtk!631
2019-03-12 18:12:14 +00:00
Samuel Thibault cf15c11429 atk key: Always convert control character events into key names
including when the control modifier is present, i.e. when one is typing
control-I for instance.

Orca would convert them back to the corresponding ASCII letter anyway, and
when pressing control-tab, we do want to pass "tab", not pass "\t" that Orca
would erroneously convert to "control-I".

Fixes #1743

(cherry picked from commit 728f6869cb)
2019-03-12 18:27:46 +01:00
Matthias Clasen 32c51eabc1 Merge branch 'gtk-2-24' into 'gtk-2-24'
icontheme: Fix annotations on array arguments

See merge request GNOME/gtk!620
2019-03-06 19:30:52 +00:00
Marco Trevisan (Treviño) 072d8546b0 icontheme: Fix annotations on array arguments
The extra ':' makes gir not to handle properly all the rest.
2019-03-06 19:54:49 +01:00
Chun-wei Fan 6b55898162 MSVC introspection: Make more robust and avoid confusion
This updates the introspection build process that we also check on
changes in the Makefiles when we generate the NMake Makefile snippets
and file lists, so that any changes to the source file list can be
reflected.  Also ensure that we build against the freshly-built
libraries.

Make the NMake Makefiles also output the built introspection items to
the output directories of the various Visual Studio versions, according
to the build configuration and architecture, so that we avoid confusion
for different Visual Studio build configs.
2019-01-21 12:53:37 +08:00
Emmanuele Bassi d681b538e3 Merge branch 'gtk-2-24' into 'gtk-2-24'
Revert "gdk: deactivation/activate window on keyboard grabs"

See merge request GNOME/gtk!483
2019-01-09 16:30:28 +00:00
Samuel Thibault 75a4eeb2f8 Revert "gdk: deactivation/activate window on keyboard grabs"
This reverts commits 853f786727 and
00b17063ac.

This reintroduces #85, but see discussion in
https://gitlab.gnome.org/GNOME/gtk/merge_requests/433 for the unforeseen
invasive consequences of these commits.
2019-01-04 17:06:17 +01:00
Chun-wei Fan 8042e07879 Merge branch 'gtk-2-24.win.fixes' into 'gtk-2-24'
gtk/gtkiconcache.c: Fix running on GLib-2.57.3 or later on Windows

See merge request GNOME/gtk!469
2018-12-21 09:56:25 +00:00
Chun-wei Fan 4612f0b3fe gtk/gtkiconcache.c: Fix running on GLib-2.57.3 or later on Windows
In GLib-2.57.3 and later, GStatBuf may not be a struct stat on Windows,
depending on the architecture and the compiler used, so we can't just
call fstat() on the GStatBuf.

Instead, we need to use the correct CRT function to call on the
GStatBuf, which is as follows:

-_fstat32() for Windows 32-bit builds on mingw-w64 and MSVC
-_fstat64() for Windows 64-bit builds on mingw-w64
-stat() for Windows 64-bit builds on MSVC, and on all other platforms.
2018-12-21 13:40:05 +08:00
Chun-wei Fan 16682dd237 MSVC builds: Fix pkg-config file generation
We are not passing in the correct architecture to the script that we use
to generate the pkg-config files for Release/x86 builds and Debug/x64
builds.  Fix this.
2018-12-21 13:25:14 +08:00
Chun-wei Fan 0b7ee9880a MSVC builds: Improve pkg-config files generation
Just link to Cairo instead of looking for the Cairo .pc file as the
Cairo build system for Visual Studio currently does not generate a
pkg-config file for us.  This will eliminate the need to hand-craft a
pkg-config file for Cairo to be able to use the pkg-config files that we
generate here.
2018-12-21 13:22:19 +08:00
Chun-wei Fan 639688d37e [gdk|gtk]/Makefile.am: Fix CFlags passed to introspecion on MSVC
Don't pass in G_LOG_DOMAIN=\"...\" to the CFlags that is passed into the
generation the NMake Makefiles.  This will avoid the introspection scanner
from choking because the resulting NMake Makefiles may not have that
CFlag escaped properly, and it is not really needed for building the
introspection binary.
2018-12-21 13:02:05 +08:00
Chun-wei Fan 417c4f9a5f MSVC projects: "Install" libwimp.pdb
Also "install" the libwimp's (Win32 theme engine) PDB file, for
completeness' sake, and to aid in debugging the item, if necessary.
2018-12-21 12:21:42 +08:00
John Ralls aca9558c6d Fix two mistakes in previous commit.
Failed to re-commit before pushing.
2018-11-01 15:36:19 -07:00
John Ralls 0388a321b4 Protect CGContext calls from null CGContextRefs.
To prevent invalid CGContext warnings.
2018-11-01 13:17:27 -07:00
John Ralls e6cfbb24b8 Return a default surface if the view has no currentContext.
Note that the resultind surface will not display on the screen.

Closes: https://gitlab.gnome.org/GNOME/gtk/issues/1411 for Gtk2.
2018-11-01 12:56:20 -07:00
John Ralls ac3ec98029 Use [NSGraphicsContext CGContext] instead of graphicsPort after Yosemite. 2018-10-29 15:42:22 -07:00
John Ralls 74d7148089 Update GDK_OSX versions to current MacOS release. 2018-10-29 15:41:27 -07:00
Matthias Clasen 664537d618 Merge branch 'lrn/gtk224-w32-monitor-enum' into 'gtk-2-24'
GDK W32: ensure that monitor enumeration matches up

See merge request GNOME/gtk!182
2018-08-30 17:20:06 +00:00
Christoph Reiter eec3ce0b4e Merge branch 'g_stat-and-GStatBuf' into 'gtk-2-24'
Consistently use g_stat and GStatBuf

See merge request GNOME/gtk!300
2018-08-19 14:30:26 +00:00
Eduard Braun 303858fa76 Consistently use g_stat and GStatBuf
Replace "stat struct" with "GStatBuf" and "stat" with "g_stat" where
appropriate to fix cross-platform issues, specifically on Windows.

Code should be identical on *nix but fixes some serious issues
on Windows:
- Field widths of "struct stat" are not constant on Windows.
  If the stat function does not match the stat struct used
  it will cause overwrites and undefined behavior
- The Windows stat function needs a properly encoded filename.
  In many places we pass an UTF-8 encoded value which breaks as soon
  as non-ASCII characters are involved.

https://bugzilla.gnome.org/show_bug.cgi?id=787772
2018-08-19 14:53:15 +02:00
Matthias Clasen 184b2cce72 Merge branch 'gtk-2-24' into 'gtk-2-24'
Fix some compiler warnings in modules/other/gail/gailtreeview.c

See merge request GNOME/gtk!239
2018-07-20 14:23:29 +00:00
Brady Minardi 8f8336cd94 modules/other/gail/gailtreeview.c: Incorporate review suggestions
Incorporate review suggestions by Emmanuele Bassi.
2018-07-14 14:45:28 +00:00
Brady Minardi 4d37ee2e79 modules/other/gail/gailtreeview.c: Fix -Wunused-but-set-variable warning 2018-07-14 08:00:56 +00:00
Brady Minardi 8715570f45 modules/other/gail/gailtreeview.c: Fix -Waddress warning 2018-07-14 07:56:39 +00:00
Matthias Clasen 0d8ba4cbf9 Merge branch 'window-activate-grab-2-again' into 'gtk-2-24'
gdk: activate window on keyboard grabs

See merge request GNOME/gtk!177
2018-07-02 17:19:27 +00:00
Matthias Clasen ad3d2218bf Merge branch 'dboles/gtk2-filechooser-bookmark-null-name' into 'gtk-2-24'
FileChooserDefault: Avoid printf()ing a NULL char*

See merge request GNOME/gtk!213
2018-06-23 20:44:18 +00:00
Daniel Boles 168434c4a1 FileChooserDefault: Avoid printf()ing a NULL char*
If the name of the bookmark is NULL, using it with the printf %s format
specifier is undefined behaviour per the C Standard. Besides, it would
result in a completely unhelpful tooltip even if it were well-defined.

We already have an else case for when nothing is selected, which avoids
trying to use the name, so ensure we go there if it's NULL or empty too.

https://gitlab.gnome.org/GNOME/gtk/issues/1169
2018-06-22 15:10:56 +01:00
Matthias Clasen 3c92c216a0 Merge branch 'window-activate-grab-2-again' into 'gtk-2-24'
gdk: activate window on keyboard grabs

See merge request GNOME/gtk!177
2018-06-18 12:20:51 +00:00
Samuel Thibault 853f786727 gdk: activate window on keyboard grabs
In 01455399e8 ("gdk: do not deactivate surface on keyboard grabs"), we
made gdk avoid deactivating surfaces when another application takes a
keyboard grab, by using has_focus_window instead of has_focus. That however
broke activating surfaces when the gdk application acquired a grab itself,
in which case has_focus_window is false but has_focus is true.

We thus actually need to use both: surfaces should be activated either
because we have normal keyboard focus, or because we grabbed the keyboard.

This also renames HAS_FOCUS to APPEARS_FOCUSED to better reflect its
role.

Fixes #85

(cherry picked from commit 3287ac96e02ff236d74db10164c5b0c1e7b2b0bf)
(cherry picked from commit 039285deb92b6baf6ef594b0d718e8f7a7e1d0ac)
2018-06-18 10:34:56 +02:00
Руслан Ижбулатов 2c13b00bc1 GDK W32: ensure that monitor enumeration matches up
In case something happens between monitor counting and monitor
enumeration, repeat until the count matches up.
enum_monitor is changed to ignore any monitors past _gdk_num_monitors
and just keep increasing the count past that number.
2018-06-06 19:15:32 +00:00
Benjamin Otte 48821a76c6 Merge branch 'gtk2-icon-fix' into 'gtk-2-24'
Fix incorrect optimization in find_builtin_icon().

See merge request GNOME/gtk!154
2018-05-16 12:54:32 +00:00
Benjamin Otte 9b218aff66 Merge branch 'gtk2-gcc-warning-fix' into 'gtk-2-24'
Fix compiler warnings with GCC 8.1.

See merge request GNOME/gtk!155
2018-05-16 12:45:44 +00:00
John Lindgren 889a63dffc Fix compiler warnings with GCC 8.1.
GCC 8.1 added some new warnings, including warning about parentheses
with no effect in variable declarations.  GTK2 headers have a few of
these, which produce a lot of warnings in projects using GTK2.

The warnings look like:
/usr/include/gtk-2.0/gtk/gtkfilechooserbutton.h:59:8: warning:
unnecessary parentheses in declaration of ‘__gtk_reserved1’ [-Wparentheses]
   void (*__gtk_reserved1);
        ^

Removing the parentheses is harmless and fixes the warnings.
2018-05-15 21:52:15 -04:00
John Lindgren 9ce6f8086e Fix incorrect optimization in find_builtin_icon().
When we found an icon with exactly the requested size, we'd stop
searching immediately (good), but we'd neglect to set the returned
min_difference to 0 (bad).  This caused theme_lookup_icon() to
prefer other, potentially much worse, matches over the exact one.

Cherry-picked from 5aa939dc (gtk-3-22)

https://bugzilla.gnome.org/show_bug.cgi?id=792738
2018-05-15 21:35:21 -04:00
Benjamin Otte 5edb37444b Merge branch 'window-activate-grab-2-3' into 'gtk-2-24'
gdk: do not deactivate window on keyboard grabs

See merge request GNOME/gtk!128
2018-04-30 09:36:11 +00:00
Samuel Thibault 00b17063ac gdk: do not deactivate surface on keyboard grabs
When pressing e.g. a window manager shortcut, which acquires keyboard grab,
Xorg would send FocusOut NotifyGrab then FocusIn NotifyUngrab.  Currently
gdk would then deactivate the current surface, which makes accessibility
screen readers think that we have switched to a non-accessible application
and came back again, and thus reannounce the application frame etc. which we
don't want when e.g. just raising volume.

And actually, receiving FocusOut NotifyGrab does not mean losing the
X focus, it only means an application aqcuired a grab, i.e. it is
temporarily stealing keyboard events. On Wayland, this isn't even
notified actually.

This commit makes gdk only deactivate surfaces when there was an actual
focus switch to another window, as determined by has_focus_window (instead
of just has_focus), which happens either normally through FocusOut with
NotifyNormal, or during grabs through FocusOut with NotifyWhileGrabbed.

Fixes #85

(cherry picked from commit 01455399e8)
2018-04-30 11:20:57 +02:00
Emmanuele Bassi c0ea27505c Merge branch 'fix/gtk-symbols-for-glib-2.54.3' into 'gtk-2-24'
Make gtk+-2.24.31 compatible with the changed API of glib-2.54.3

See merge request GNOME/gtk!67
2018-04-24 08:45:59 +00:00
Emmanuele Bassi e5c3b62ddd Merge branch 'm4macros-gtk2' into 'gtk-2-24'
[gtk2] m4macros: Set a serial number

See merge request GNOME/gtk!104
2018-04-17 15:19:18 +00:00
Simon McVittie acb78c9c60 m4macros: Set a serial number
When a project has a bundled copy of our macro included in tarball
source releases, typically in a m4/ or aclocal/ directory, aclocal
uses the serial number to determine whether the system copy in
/usr/share/aclocal is newer or older than the bundled copy. Without
a serial number, the bundled copy will always be used and will not
be overwritten, even if it is outdated.

Signed-off-by: Simon McVittie <smcv@debian.org>
2018-04-06 11:37:07 +01:00
Matthias Clasen 84a665f7f7 Merge branch 'gtk2-am116' into 'gtk-2-24'
build: support automake 1.16

See merge request GNOME/gtk!88
2018-03-30 20:43:17 +00:00
Dominique Leuenberger 2dbf31c0ea build: support automake 1.16 2018-03-27 16:43:23 +02:00
Dennis Schridde 88bb7ecc47 Make gtk+-2.24.31 compatible with the changed API of glib-2.54.3
glib-2.54.3 changed API, compared to glib-2.52.3 and gtk+-2.24.31's
 expectations.  This commit fixes the resulting issue in a backwards
 compatible way.

See-Also: https://bugs.gentoo.org/650536
2018-03-18 19:55:37 +01:00
Matthias Clasen 98687be562 Merge branch 'gtk-2-24' into 'gtk-2-24'
gtkprintbackendcups.c: fix \n at end of a debugging note

See merge request GNOME/gtk!23
2018-02-19 17:58:19 +00:00
Jeremy Tan 61162225f7 GDK W32: Ignore autorepeated key presses on modifier keys
The X11 backend does not send autorepeated messages for modifier keys,
and doing so prevents motion compression from working.

https://bugzilla.gnome.org/show_bug.cgi?id=771568
2018-02-17 17:55:22 +00:00
Jeremy Tan bfdac2f70e GDK W32: Always process all available messages
The GLib main loop blocks on MsgWaitForMultipleObjectsEx to
determine if there are any incoming messages while also allowing
for background tasks to run. If all available messages are not
processed after MsgWaitForMultipleObjectsEx has signaled that
there are available, CPU usage will skyrocket.

From my limited understanding (by inspection of profiling
under Visual Studio):
Key is pressed - MsgWaitForMultipleObjectsEx unblocks, and
sends message to GDK's event handler. Some event is now queued.

g_poll unblocks, calls the g_event_dispatch which finally
resolves to gdk_event_dispatch. This then calls
_gdk_win32_display_queue_events, but since a message is already
queued, it fails to call PeekMessage and returns immediately.

At the next iteration, g_poll again calls MsgWaitForMultipleObjectsEx
which queues yet another event and returns almost immediately, since
there are events available which haven't been processed by PeekMessage.

The dispatch function is then called and the process repeats.

https://bugzilla.gnome.org/show_bug.cgi?id=771568
2018-02-17 17:55:14 +00:00
Ivan Zakharyaschev 7461ceebe3 gtkprintbackendcups.c: fix \n at end of a debugging note 2018-02-17 20:19:33 +03:00
Matthias Clasen 61751e0e37 Merge branch 'gtk-2-24' into 'gtk-2-24'
calendar: Use the new "%OB" format if supported

See merge request GNOME/gtk!9
2018-02-15 03:06:58 +00:00
Rafal Luzynski 2ea743ab46 calendar: Use the new "%OB" format if supported
Due to the recent changes introduced in glibc 2.27 "%OB" is the
correct format to obtain a month name as used in the calendar
header.  The same rule has been working in BSD family (including
OS X) since 1990s.  This simple hack checks whether "%OB" is supported
at runtime and uses it if it is, falls back to the old "%B" otherwise.

Closes: #9
2018-02-13 23:02:28 +01:00
Emmanuele Bassi f14fbca645 Revert "Fix abicheck"
This reverts commit 331877fe36.

The newly visible symbols were the result of a bug in the Python port of
glib-genmarshal, which was fixed in GLib 2.54.

https://bugzilla.gnome.org/show_bug.cgi?id=793057
2018-02-10 18:55:59 +00:00
Chris Lamb 78c34e11c3 gtk/queryimmodules.c: Make the output deterministic.
Whilst working on the Reproducible Builds effort [0], we noticed that
queryimmodules generates non-reproducible output as it iterates over the
filesystem without sorting.

Patch attached.

 [0] https://reproducible-builds.org/

Signed-off-by: Chris Lamb <lamby@debian.org>

https://bugzilla.gnome.org/show_bug.cgi?id=786528
2018-01-22 19:59:59 +00:00
Ting-Wei Lan c3ededb119 configure: Move all includes to the first argument of AC_TRY_LINK
Putting includes in the second argument of AC_TRY_LINK is not safe. If
a header having inline functions is included inside the main function,
it becomes a nested function. This is not supported by clang.

https://bugzilla.gnome.org/show_bug.cgi?id=792720
2018-01-20 17:57:01 +08:00
Matthias Clasen ed7d3e25f8 2.24.32 2018-01-08 16:35:39 -05:00
Matthias Clasen 331877fe36 Fix abicheck
Update symbols files, and ignore marshallers that appear.
2018-01-08 16:35:39 -05:00
Colomban Wendling 61d5c82f5c Fix updating the widget accessible description when using its tooltip
We need to notify ATK the description changed when the tooltip text
associated with the widget changes and gail_widget_get_description()
would use it as the description.

https://bugzilla.gnome.org/show_bug.cgi?id=779009
2017-12-09 21:42:36 -05:00
Chun-wei Fan 5ce6f249d7 Fix introspection builds on Visual Studio 2017
Detect Visual Studio 2017 properly, so that we won't mistaken it for
2015.
2017-12-06 20:44:19 +08:00
Piotr Drąg a52af4303a Update Polish translation 2017-12-02 18:38:42 +01:00
Daniel Boles bc555cd64f imcontextxim: Fix showing glyph in status window
This custom drawing code was broken, which meant the current mode
indicator/character did not show, severely hindering XIM users.

Fix by simply removing the custom drawing and just being a GtkWindow, by
cherry-picking these two from GTK+ 3:
  commit 211ccb5c73
  commit c750cea4e57ed3bcb5ba7eada95d0be380aa2fe5t

https://bugzilla.gnome.org/show_bug.cgi?id=696624
2017-10-21 19:08:03 +01:00
Chun-wei Fan b7e5da4cd4 Visual Studio builds: Improve binary security
Ensure that the /DYNAMICBASE linker option (which is actually the
default option) is enabled, as we inadvertly disabled it in our
projects.

Also, for x64 builds on MSVC 2012 or later, use the /HIGHENTROPYVA
linker option to improve the security of the built bianries.

Pointed out by Ignacio Casal Quinteiro.
2017-10-20 17:11:46 +08:00
Daniel Boles 292e023c83 Fixed: If can’t add child, don’t add to child info
If the call to set_parent() failed, we were still adding the child to
the internal list of children, despite that it was not really added.
That meant we could later try to do invalid stuff with that non-child.

Fix that by asserting and giving up if the child that the user is
attempting to add is already parented.

https://bugzilla.gnome.org/show_bug.cgi?id=701296
2017-10-13 09:56:17 +01:00
Daniel Boles 6b4e050e15 ComboBox: Don’t let modes disconnect each other
…from priv->button. My refactor to g_signal_disconnect_by_data()
included this widget, when I shouldn’t have as both modes use it.
In GTK+ 3, this broke opening a CB by keyboard that was in menu mode,
if it had been in list mode initially (e.g. due to the theme).

Fix by moving to disconnect_by_func() and only removing in each mode’s
destroy() method the signals that it set on the button in its setup().

https://bugzilla.gnome.org/show_bug.cgi?id=788577
2017-10-06 01:43:06 +01:00
Colomban Wendling 687e4576eb Enter submenus when activating their parent item
This gives consistent behavior with e.g. Qt, Mozilla's suites and
LibreOffice (with non-truly native backends like "gen" and "gtk",
but unlike "gtk2" and "gtk3" ones that probably use true GTK menus).

This behavior is expected by at least some accessibility users, and
it seems good to behave like other common applications and toolkits
in this area.  There should be no issue in doing so either for current
users, as it only enters the submenu instead of not doing anything.

https://bugzilla.gnome.org/show_bug.cgi?id=778811
2017-10-05 19:47:14 +01:00
Daniel Boles c75c8d0bda ComboBox: Don’t pile up ::grab-broken handlers
It was connecting a new handler to do the same thing every time it
popped up, never disconnecting between. Just connect once in init().
2017-10-05 19:47:13 +01:00
Daniel Boles 2678cda50a testcombo: Test grid :row- and :column-span-column
Ditch two items that were white and so weren’t visible on our standard
theme anyway, and use the new space to test extra grid-mode properties.

Note if we do this then, as before, set the ListStore on the CB before
before appending to it, that (at least in GTK+ 3) gave warnings like:

Gtk-CRITICAL **: gtk_menu_attach: assertion 'left_attach < right_attach' failed

I didn’t look into that yet, but it may indicate that attaching items
vs. recognising their spans don’t occur in the correct order. For the
purposes of testing this, I just create the CB after filling its model.
2017-10-05 19:47:13 +01:00
Daniel Boles a10a2ebf19 testcombo: Fix generation of coloured pixbufs
We need floating-point division… Otherwise, only fully-on inputs can
produce any output. This fixes some of the colours wrongly being black.

While here, remove the unused rowstride variable, to shush a warning.
2017-10-05 19:47:13 +01:00
Matthias Clasen 9480f6649b Add a big combobox test case
I've seen many bugs about long combo box popups getting misplaced
or wrongly sized. Time to add a testcase.
2017-10-05 19:47:13 +01:00
Daniel Boles e46ac4dcba ComboBox: Clarify :row|column-span/wrap-width docs
ComboBox warned in the doc for :row-span-column that the value must not
exceed :wrap-width, but :wrap-width does not interact with the number of
rows; it’s the :column-span-column that’s relevant.

Also: Warn that spans must be > 0 for rows too, & that column spans <=
:wrap-width are also not useful for items at menu column positions > 0.
Rrefer to items having spans, not values, as we’re already talking about
values in the model (& rows in the menu). And clarify :wrap-width a bit.
2017-10-05 19:47:13 +01:00
Daniel Boles 111853d7da Entry: Fix leak of text in ensure_has_tooltip()
Thanks to Mohammed Sadiq for noticing this. I guess I got
Widget.get_tooltip_text() confused with Label.get_label().

https://bugzilla.gnome.org/show_bug.cgi?id=787410
2017-09-07 14:59:15 +01:00
Daniel Boles b51eea1881 Revert "ComboBox: Don’t redundantly show() scrolled_window"
This reverts commit 03ead0c824.

That was a real brainfart, which broke showing list-mode CBs on the 2nd
and subsequent popups.
2017-09-05 00:14:00 +01:00
Ingo Brückl c12dd8f0b9 Set translation domain for parameter_string in gtk_init_with_args
This was requested in bug 554926.

Backport of original commit e3bd926c1e by
Gabor Kelemen, kelemeng at gnome dot hu, applied to GTK+ 2.90.5 on Tue,
10 Aug 2010 04:13:22 +0000 (UTC).

https://bugzilla.gnome.org/show_bug.cgi?id=785165
2017-09-03 14:44:45 +01:00
Daniel Boles d57d105e11 Toolbar: Clarify how the arrow overflow menu works
The fact it affects the preferred size, and only works with ToolItems
that return a menu proxy item, was unclear unless deduced from other
sources, and this led to users thinking it was broken, for example:

https://stackoverflow.com/q/44644642/2757035

https://bugzilla.gnome.org/show_bug.cgi?id=787158
https://bugzilla.gnome.org/show_bug.cgi?id=787195
2017-09-03 11:22:58 +01:00
Daniel Boles 86d80b9d76 ToolItem: Add see-also from proxy setter to signal 2017-09-03 11:21:40 +01:00
Daniel Boles e0e2107f35 ComboBox: Add missing disconnect in menu_destroy()
We were not disconnecting the signals from the menu (popup_widget), so
they were leaked when e.g. the mode was changed or the CB was destroyed.
2017-09-01 16:34:14 +01:00
Daniel Boles 68e2f276f2 FileChooserDefault: Fix misleading indentation
which caused a compiler warning. Update to match 3.22’s indentation.
2017-09-01 15:12:15 +01:00
Daniel Boles e8f15a8d23 FileChooserDefault: Remove an unused #include 2017-09-01 14:23:22 +01:00
Andika Triwidada 104123df8c Update Indonesian translation 2017-08-29 10:18:25 +00:00
Daniel Boles 03ead0c824 ComboBox: Don’t redundantly show() scrolled_window
It and its child were already show()n in list_setup().
2017-08-28 19:59:39 +01:00
Daniel Boles fac72327f9 ComboBox: Fix wrongly matched signal disconnect()s
Various disconnections had the wrong flags and/or data, so we failed to
disconnect a pile of signals, shown by 0 returned by the disconnect_*()
functions. Fix this, and use the nicer disconnect_by_*() while here.
2017-08-28 19:59:39 +01:00
Daniel Boles 2759e89611 ComboBox: Really set list-mode popup transient-for
set_transient_for(toplevel) was only called in list_setup(). It was easy
to make a test showing a NULL :transient-for instead of the correct one.

So, move the call from list_setup() to real_popup(). Also do the same
for window_group_add_window(), which means not calling it redundantly.

(I tried using a ComboBox:parent-set handler, but the Inspector’s CB
didn’t like that: it calls popup_for_device() twice and closes on button
release. Anyway, using popup() is much more concise than a new handler.)
2017-08-28 19:59:27 +01:00
Daniel Boles faa69b3547 ComboBox: List-mode popup must open on CB’s screen
The screen for the list-mode popup_window was only being set in
set_popup_widget(), i.e. when changing modes, so if the ComboBox was
moved to a different screen later, the popup would appear on the
original one, which is wrong.

Worse, this broke opening some combos in the Inspector in GTK+ 3.

Fix this by moving the call to set_screen() to real_popup(), so
the popup_window is put on the correct screen each time around.

https://bugzilla.gnome.org/show_bug.cgi?id=468868
https://bugzilla.gnome.org/show_bug.cgi?id=786771
2017-08-28 19:02:59 +01:00
Andika Triwidada 1297710879 Update Indonesian translation 2017-08-28 15:20:56 +00:00
Daniel Boles 47bea2deaa ComboBox: Use iter before popdown() may invalidate
Bad actors, such as our very own FileChooserButton, may connect to the
:popped-up property and alter the model as the menu becomes in/visible.

We were getting an iter to the model while popped-up, then doing
popdown(), then using the iter, which may have just been invalidated by
the errant notify::popped-up handler. If so, we quickly crash fatally.

This is clearly bonkers, but until such patterns are removed, we have to
work around them. So, set_active() from the clicked item while it is
known to be valid, by moving the call to set_active() before popdown().

While here, change set_active_iter(iter) to set_active_internal(path) to
avoid pointlessly going through the iter to get the path we already have

https://bugzilla.gnome.org/show_bug.cgi?id=729651
2017-08-25 21:03:33 +01:00
Daniel Boles 2166e25f2e ComboBox: Clarify documentation of get_active_iter
https://bugzilla.gnome.org/show_bug.cgi?id=618160
2017-08-25 20:59:50 +01:00
Daniel Boles bf8c1c212e Container: Don’t scroll to unset focus child coord
In gtk_container_real_set_focus_child(), we try to scroll to the
position of the new :focus-child if we have h or v adjustments.

gtk_widget_translate_coordinates() returns FALSE if neither widget is
realized or in other situations that cause output parameters x and y not
to be set. Thus, if the caller did not initialise x/y and uses them even
if the function returns FALSE, they are using uninitialised variables.

In gtk_container_real_set_focus_child(), we did not check the return
value but merrily went ahead and used x and y regardless. This is UB, as
caught by Valgrind, as well as being pointless.

The trivial fix is to exit early if (!gtk_widget_translate_coordinates).

https://bugzilla.gnome.org/show_bug.cgi?id=776909
2017-08-07 19:20:51 +01:00
Matthias Clasen e6d2655e1e GtkLabel: make patterns work a little better
When a pattern has been set, we must not throw away
the attributes that contain it.

https://bugzilla.gnome.org/show_bug.cgi?id=658111
https://bugzilla.gnome.org/show_bug.cgi?id=676550
2017-08-06 19:07:24 +01:00
Jasper St. Pierre 491d79d540 recentchooserdefault: Clean up load_id when we have nothing left to do
Returning FALSE from a GSourceFunc will implicitly remove it, so we need
to do this in order to make the new g_source_remove happy.

https://bugzilla.gnome.org/show_bug.cgi?id=779605
2017-08-05 19:23:06 +01:00
Daniel Boles 277c8286a1 GtkFixed: Update documentation intro
• Add GtkLayout as a @See_also since it includes fixed-pos functionality
• Explain how to work around the problems with RTL text
2017-08-03 13:15:04 +01:00
Daniel Boles bb3b34af30 Layout: Add GtkFixed to docs as a See_Also 2017-08-03 13:15:04 +01:00
Daniel Boles fdb701837f Entry: Fix unset icon tooltip hiding Entry tooltip
Our ::query-tooltip handler first checks whether the pointer is over any
of the icons, returning their tooltip if so, and if not chains up to
Widget::query-tooltip in order to show the text for the widget overall.

But ensure_has_tooltip(), which exists to update :has-tooltip based on
whether ::query-tooltip is needed, only set :has-tooltip to TRUE if any
icon had a tooltip, without caring whether the widget as a whole does.

That is asymmetrical and meant that if the Entry had a tooltip, but
subsequently all icons had their tooltips unset, :has-tooltip would be
set to FALSE, and hence the tooltip for the widget would become lost.

The fix is to set :has-tooltip to TRUE if the widget has a tooltip of
its own, and we only need to check the icons if that is not the case.

https://bugzilla.gnome.org/show_bug.cgi?id=785672
2017-08-01 18:13:00 +01:00
Daniel Boles 8302b71381 Entry: Warn about corner case hiding icon tooltips
https://bugzilla.gnome.org/show_bug.cgi?id=785672#c4
2017-08-01 18:12:59 +01:00
Daniel Boles 28cc9735de Entry: Fix a misspelt method name in a doc comment 2017-08-01 18:12:52 +01:00
Chun-wei Fan ca2e62da22 build/win32/replace.py: Fix replacing items in files with UTF-8 content
Some files that this script will process might have UTF-8 items in
there, which can cause problems on Python 3.x as it is more strict and
careful on unicode issues.

Fix this by:
-Doing what we did before on Python 2.x
-Opening the file with encoding='utf-8' on Python 3.x
2017-05-09 18:37:58 -07:00
Balázs Úr 268e3ecc09 Update Hungarian translation 2017-05-05 18:49:47 +00:00
Daniel Boles 94929bc0e0 Scale: Explain how to round value when !draw-value
Scale:digits is (now, again) ineffective if Scale:draw-value is FALSE.
To get rounding in that case, the base Range:round-digits must be used.
2017-05-02 12:36:05 +01:00
Piotr Drąg 9ecbf966a4 Update Polish translation 2017-04-30 19:52:43 +02:00
Christoph Reiter aac544b742 Scale: Fix documentation of digits per last revert
Add a clarifying note that, under the original behaviour, :digits only
rounds the Adjustment if :draw-value is TRUE at the time of the change.

This is based on a similar commit made by Daniel Boles for the gtk3
branches like 1cd0a8de0b

https://bugzilla.gnome.org/show_bug.cgi?id=781605
https://bugzilla.gnome.org/show_bug.cgi?id=358970
2017-04-30 19:32:03 +02:00
Christoph Reiter 7191a048c1 Revert "Scale: Always sync ::digits to Range::round-digits"
This reverts commit fd218fee46.

https://bugzilla.gnome.org/show_bug.cgi?id=781605
2017-04-30 19:32:00 +02:00
Michael Schumacher bb39a1292c Use the actual mime type to determine if an icon is a SVG file.
https://bugzilla.gnome.org/show_bug.cgi?id=781020
2017-04-08 01:36:23 -04:00
Daniel Boles 4435fb3c61 TextView: Drop an unnecessary #include 2017-03-27 19:30:38 +01:00
Daniel Boles fd939f0052 TextView: Be const-correct when passing a pointer
The TextIter is passed by pointer for efficiency. We neither need to
modify it, nor should we leave it possible to accidentally do so. So,
it should be passed as a pointer-to-const.
2017-03-27 19:20:44 +01:00
Daniel Boles 4e14926153 TextView: Get line direction in more efficient way
We do not need to go through the heavyweight process of constructing a
TextLineDisplay just to get the direction out of it, when we can simply
use TextIter API to get the text and then get its direction using Pango.

Adapted from a patch by Mehdi Sadeghi for GtkSourceView:

https://bugzilla.gnome.org/show_bug.cgi?id=779081#c20
2017-03-26 16:28:20 +01:00
Daniel Boles 062983c057 TextBuffer: Add missing transfer full annotations 2017-03-26 16:26:41 +01:00
Piotr Drąg c6212761bd Update Polish translation 2017-03-25 23:06:24 +01:00
Colomban Wendling e6afe1165e GtkMenuShell: always 'activate' menu shells
Failing to do so can leave us with a stuck grab in some cases.
https://bugzilla.gnome.org/show_bug.cgi?id=554057

Cherry-picks f5eee56b56,
9833fbd77a and
4eac7f2417 from GTK3.
2017-03-16 22:30:40 -04:00
Balázs Úr 9f4b178d69 Update Hungarian translation 2017-03-15 16:57:10 +00:00
TingPing 1fb9e0390e Properly use GContentType
https://bugzilla.gnome.org/show_bug.cgi?id=734946
2017-03-08 22:44:27 -05:00
Chun-wei Fan cfc41158cd build/Makefile.msvcproj: Remove MSVC 2017 projects before re-generation
This ensures a fresh version from the 2010 projects are copied and
processed.
2017-03-03 17:37:20 +08:00
Daniel Boles 3e92a78332 TextView—Avoid pointless Pango in iter_line_is_rtl
Get the direction that was already worked out and stored in the
TextLineDisplay, rather than making Pango figure it out again.

https://bugzilla.gnome.org/show_bug.cgi?id=136059
2017-02-22 21:29:08 +00:00
Daniel Boles 8248a3f904 TextView—Plug a memory leak
Thanks to Nelson Benitez for pointing this out.

https://bugzilla.gnome.org/show_bug.cgi?id=136059
2017-02-22 21:29:07 +00:00
Piotr Drąg 0dd0ff05f5 Update Polish translation 2017-02-19 18:24:39 +01:00
Daniel Boles 4cc50bd2eb TextView: Fix build failure
as per previous commit
2017-02-19 14:44:48 +00:00
Daniel Boles 4577a35e1e Entry: Fix build failure
I hadn’t paid enough attention when cherry-picking
commit f7da9dba1d from GTK+ 3/4.

Thanks to Javier Jardón for letting me know.
2017-02-19 14:35:16 +00:00
Daniel Boles 5b0fd246a2 TextView—Fix inverted movements by arrows in RTL
Using Ctrl + left/right to skip between words, or left/right to cancel a
selection, were causing movement on the screen in the opposite direction
of the glyph on the key. This was surprising and awful UX for RTL users.

This is based on a patch covering the former case by:
Author:    Mehdi Sadeghi <mehdi@mehdix.org>
Date:      Sat Feb 18 02:16:00 2017 +0000

https://bugzilla.gnome.org/show_bug.cgi?id=136059
2017-02-19 12:38:42 +00:00
Daniel Boles f318a4f8db Entry: Add newlines to ease reading huge switches
These are monstrosities!
2017-02-19 12:38:42 +00:00
Daniel Boles f7da9dba1d Entry—Fix inverted movements by arrow keys in RTL
Using Ctrl + left/right to skip between words, or left/right to cancel a
selection, were causing movement on the screen in the opposite direction
of the glyph on the key. This was surprising and awful UX for RTL users.

This is based on a patch covering the former case by:
Author:    Ori Avtalion <ori@avtalion.name>
Date:      Tue Apr 20 08:06:23 2010 +0000

https://bugzilla.gnome.org/show_bug.cgi?id=136059
2017-02-19 12:38:42 +00:00
Daniel Boles 3cde425a22 Scale: Fix signal documentation syntax
Oops, sorry. Thanks to Cristoph Reiter for correcting me on this.
2017-02-19 10:12:37 +00:00
Daniel Boles 35744d1d9b Scale: Improve docs of format-value signal 2017-02-19 09:25:33 +00:00
Daniel Boles fd218fee46 Scale: Always sync ::digits to Range::round-digits
The documents state that gtk_scale_set_digits() “causes the value of the
adjustment to be rounded off to this number of digits, so the retrieved
value matches the value the user saw.” Note the lack of any condition.

But in fact, if draw-value was false, rounding was disabled on the base
Range, so values that weren’t displayed weren’t rounded. This made the
docs wrong and made an apparently cosmetic detail alter functionality.

Fix by ensuring the number of digits set on Scale is always propagated
along to gtk_range_set_round_digits(), thus rounding to it in all cases
when the value changes, regardless of whether the value is displayed.

This doesn’t address the other idea from Bugzilla: that changing the
number of digits should clamp the _existing_ value if it’s more precise.
This contradicts digits docs in the base Range, but the above from Scale
can be read as implying it’ll happen. For now, that’s an open question.

https://bugzilla.gnome.org/show_bug.cgi?id=358970
2017-02-19 09:25:31 +00:00
Nelson Benítez León f680ce1f43 textiter: fix bug in gtk_text_iter_backward_line()
gtk_text_iter_backward_line() checks the value of
real->line_char_offset without previously calling
ensure_char_offsets (real) to make sure the former
is up-to-date.

As a consequence of this, when gtk_text_iter_backward_line()
is called after a gtk_text_buffer_insert_range() in the
first line of buffer, the iter is not moved to the start of
the line, and the return value is wrong.

Fixed by adding the ensure_char_offsets() call.
2017-02-18 20:05:44 +00:00
Daniel Boles 7df629dccf tests: Remove executable bit from C files 2017-02-18 20:05:44 +00:00
Chun-wei Fan e3cd67d258 Visual Studio builds: Support Visual Studio 2017
Update the autotools scripts so that we can copy the Visual Studio
2010 and update items as necessary to obtain the Visual Studio 2017
projects.

Note that the toolset version string format has changed for Visual
Studio 2017, so a custom toolset version string is allowed and used
if specified, otherwise the toolset version string is generated as
we did before.

Note also that Visual Studio 2017 aims to be compatible with Visual
Studio 2015 on the CRT level, so it should be possible to use 2017-
compiled binaries with 2015-compiled binaries without problems.
2017-02-17 14:24:11 +08:00
Ingo Brückl c9aadabe83 Use UTF-8 encoding for tooltips on files in the "recently used" list
g_file_get_path() returns the local pathname and it is entirely possible
that this pathname isn't in UTF-8 encoding, but in a different one
defined by G_FILENAME_ENCODING. Using a string in GLib file name
encoding rather than UTF-8 encoding as tooltip text will produce an
erroneous output.

Use the parse name instead. This is a UTF-8 string that describes the
file suitable for use in the user interface.

https://bugzilla.gnome.org/show_bug.cgi?id=778542
2017-02-15 16:11:10 -05:00
James Clarke 9b111339eb Don't use guint32 with XChangeProperty
Fixes bug 777683.
2017-01-27 10:06:04 +01:00
Руслан Ижбулатов 516c1ba159 GDK W32: Handle CapsLock as part of the key shift level
Instead of using some kind of flawed logic about modifying a keypress result
when CapsLock is toggled, just add a CapsLock shift level (and all derived
shift levels, i.e. Shift+CapsLock and CapsLock+AltGr and Shift+CapsLock+AltGr)
and query Windows keyboard layout API about the result of keypresses involving
CapsLock.

Keysym table is going to be (roughly) twice as large now, but CapsLock'ed
keypresses will give correct results for some keyboard layouts (such as
Czech keyboard layout, which without this change produces lowercase letters
for CapsLock->[0,2,3,4...] instead of uppercase ones).

Keymap update time also increases accordingly.

This is a backport of commit ca79296061 from the gtk-3-22 branch.

https://bugzilla.gnome.org/show_bug.cgi?id=165385
2017-01-23 19:02:18 +00:00
Руслан Ижбулатов 79b2a92fe5 GDK W32: Replace wcscpy_s with wcsncpy for XP compatibility
https://bugzilla.gnome.org/show_bug.cgi?id=768722
2017-01-18 09:18:01 +00:00
Руслан Ижбулатов cc2d701289 W32: Ensure that gtkwin32keys.h is not needed by GTK+ users
Throw away the gdkwin32keys.h-must-not-be-included-by-itself check,
include gdkwin32keys.h directly instead of including gdkwin32.h,
remove gdkwin32keys.h inclusion from gdkwin32.h

https://bugzilla.gnome.org/show_bug.cgi?id=775163
2016-11-27 09:39:55 +00:00
Руслан Ижбулатов 962d3dffc1 GDK W32: Special handling for VK_PAUSE
Similar to VK_DIVIDE, this key can't be mapped to a scancode by
MapVirtualKeyEx(). Googling suggests that this is a known bug.

https://bugzilla.gnome.org/show_bug.cgi?id=769214
2016-11-25 16:34:46 +00:00
Руслан Ижбулатов 61de4e7b67 W32: Prefer the deadkey combinations that the OS uses
Pick the W32 API for possible deadkey+<something> combinations
and prefer these to other sources of deadkey combos.
Specifically, if W32 API supports at least one combo for a particular
deadkey, only use that data and do not attempt to do other, unsupported
combinations, even if they make sense otherwise.
This is needed to, for example, correctly support US-International
keyboard layout, which produces a combined character for <' + a>
combo, but not for <' + s>, for example.

This is achieved by stashing all the deadkeys that we find in
an array, then doing extra loop through all virtual key codes and
trying to combine them with each of these deadkeys. Any combinations
that produce a single character are cached for later use.

In GTK Simple IM context, call a new GDK W32 function to do a lookup
on that cached combination table early on, among the "special cases"
(which are now partially obsolete).

A limitation of this code is that combinations with more than
one deadkey are not supported, except for combinations that consist
entirely of 2 known deadkeys. The upshot is that lookups should
be relatively fast, as deadkey array stays small and the combination
tree stays shallow.

Note that the use of ToUnicodeEx() seems suboptimal, as it should
be possible to just load a keyboard library (KBD*.DLL) manually
and obtain and use its key table directly. However, that is much more
complicated and would result in a significant rewrite of gdkkeys-win32.
The code from this commit, though hacky, is a direct addition to
existing code and should cover vast majority of the use-cases.

https://bugzilla.gnome.org/show_bug.cgi?id=569581
2016-11-25 16:34:45 +00:00
Руслан Ижбулатов 0b06d40103 GDK W32: Cache multiple keyboard layouts simultaneously
This changes the group/level semantic.
Previously W32 backend used "group 0/1" to denote "AltGr OFF/ON"
and "level 0/1" to denote "Shift is OFF/ON".
Now "group" means "keyboard layout" and there can be up to 255 groups,
while AltGr and Shift are combined into a single level enum that
takes values between 0 and 4.
Unlike X, W32 doesn't do effective group overriding, meaning that
it will never tell the caller that a different group was actually
used (even for universal keys, such as Enter), because key symbol
table is completely fabricated and there's no point in trying to
save a few of kilobytes of RAM by not duplicating universal key
records for all groups.

Also contains many whitespace changes (tab elimination, fixed
indentation) and cleanup (axed a few global variables, these are
now accessed via the default keymap).

https://bugzilla.gnome.org/show_bug.cgi?id=768722
2016-11-25 16:34:44 +00:00
Руслан Ижбулатов 92e6c45756 Backport some of the GTK3 changes to win32/gdkkeys
This lays the foundation for backporting more invasive gdkkeys commits
from GTK3.

https://bugzilla.gnome.org/show_bug.cgi?id=768722
2016-11-25 16:34:43 +00:00
Chun-wei Fan ea7159dc87 Visual Studio 201x builds: "Install" gtk-update-icon-cache.exe
Most people should be on GTK+-3.x by now, but in case they don't and are
using GTK+-2.24.x, we ought to "install" the gtk-update-icon-cache tool,
like we did for the 2008 builds, as it is still much used, and is already
built by the projects.
2016-11-16 16:46:06 +08:00
Chun-wei Fan 07e5a32d62 Visual Studio builds: Fix 201x property sheet
One closing tag was missed, fix that.
2016-11-16 03:14:10 +08:00
Chun-wei Fan 4cd65c7c5b Visual Studio builds: Make .pc generation optional
Generate the .pc files when a Python installation can be found at the
location specified by PythonPath (32-bit) or PythonPathX64 (64-bit), which
is found in gtk-version-paths.[vsprops|props].
2016-11-15 18:29:42 +08:00
Chun-wei Fan ad7597415f Visual Studio builds: Add support scripts to generate .pc files 2016-11-15 18:24:16 +08:00
Chun-wei Fan 7e5d11f9d4 Visual Studio builds: Generate .pc files
Like the 3.x and 4.x builds, generate the .pc files for GTK+-2.x, for
the convenience of people, and copy them during "install".
2016-11-15 17:10:08 +08:00
Lauri Kasanen 35871edb31 recent-manager: Fix a memory leak caused by "recent-manager: Add a limit to the list's size"
Signed-off-by: Lauri Kasanen <curaga@operamail.com>

https://bugzilla.gnome.org/show_bug.cgi?id=773587
2016-11-14 14:27:37 -05:00
Lauri Kasanen a3b2d6a65b recent-manager: Add a limit to the list's size
This fixes a DOS where any app can cause all running gtk apps
to use arbitrary amounts of memory.

Originally reported against mate-panel, where running a big slideshow
in eye-of-mate caused increasing RAM usage in mate-panel.

v2: Hardcode the value
Signed-off-by: Lauri Kasanen <curaga@operamail.com>

https://bugzilla.gnome.org/show_bug.cgi?id=773587
2016-11-10 17:13:10 -05:00
Chun-wei Fan 479372c068 Remove gtk-install.props's during re-generation
This is to ensure the changes in the generated
build/win32/vs10/gtk-install.props are applied in
build/win32/vs[11|12|14] as well.
2016-10-19 18:54:19 +08:00
Chun-wei Fan 45fd538b9b build/: Force MSVC project file generation on Makefile.am changes
Make the Makefile.am targets for generating the Visual Studio projects re-generate the
project files and the header listings whenever the Makefile.am's that include
build/Makefile.msvcproj changes, so that whenever a source/header is added, they will
be reflected in the projects and in the property sheets that are used to copy the
headers.

Also ensure that these are applied to the vs11, vs12 and vs14 projects when this
happens, as they are copied and processed from the Visual Studio 2010 projects.
2016-10-19 18:51:17 +08:00
Jouke Witteveen c5872e2ab9 Validate the return value of XListInputDevices
Since libxi 1.7.7 XListInputDevices returns NULL when it fails while num_devices will not be set to 0.

https://bugzilla.gnome.org/show_bug.cgi?id=772794
2016-10-14 11:47:45 -04:00
Piotr Drąg d2ffa92caf Update Polish translation 2016-10-12 19:24:54 +02:00
Matthias Clasen debba4d141 entry: Fix a corner case of overwrite mode
We currently beep when a character is appended at the end in
overwrite mode. That is obviously not right. Patch based on
a patch by Ian MacDonald.

https://bugzilla.gnome.org/show_bug.cgi?id=772389
2016-10-05 12:37:08 -04:00
Matthias Clasen 09c0b9c8a0 2.24.31 2016-09-09 15:32:31 -04:00
Matthias Clasen dd0d4da4b1 Update NEWS for 2.24.31 2016-09-07 13:14:26 -04:00
Jeremy Tan a4af2dd246 GDK W32: Fix bounding rect calculation on window creation
This is a backport of commit 260d521.

The bounding rect specifies the top left and bottom right corners - the
bottom right corner must account for the current window position.

https://bugzilla.gnome.org/show_bug.cgi?id=764996
2016-09-02 05:02:04 +00:00
Kristian Rietveld 899147d6d0 imquartz: fix regression introduced by commit 4ba1fb
In the preceding fix, the checks involving GDK_IS_QUARTZ_WINDOW macros
were left out. These checks are in fact crucial, because these functions
are sometimes called with non-quartz functions as the original comments
in the code do indicate. Therefore, reintroduce these checks. This
fixes a crash in GIMP.
2016-08-07 16:53:57 +02:00
Kristian Rietveld 6b8e20a05c quartz: introduce gdk_quartz_window_is_quartz function
This function can be used to check whether a GdkWindow is a quartz
window. It is equivalent to it's win32 counterpart. The function
is necessary because the macro necessary for this check is private.
2016-07-31 08:41:33 +02:00
Руслан Ижбулатов b7c92fb1fb GDK W32: Support UTF-16 surrogate pairs passed via VK_PACKET
This is, essentially, a piece of g_utf16_to_ucs4() built into GDK
W32 keyboard message processing.

https://bugzilla.gnome.org/show_bug.cgi?id=769126
2016-07-28 15:52:06 +00:00
Руслан Ижбулатов 0e9e0bdcf3 Try to delete any existing W32 status icons when DPI changes
Fixes some or all of the issues reported in
https://github.com/hexchat/hexchat/issues/1423
2016-07-18 10:37:52 +00:00
Paul Davis 876b5f75fa Improve fullscreen behavior on recent OS X
Avoid windows getting "stuck" (be undraggable) and/or have a locked lower
right corner after exiting fullscreen mode.

https://bugzilla.gnome.org/show_bug.cgi?id=768163
2016-07-03 14:03:10 -04:00
Chun-wei Fan 9dbee22630 MSVC builds: Add experimental introspection support
This adds a set of NMake Makefiles to enable introspection building
under Visual Studio builds.  As the status of introspection of GTK+-2.24.x
is considered experimental, this support is also considered experimental.

https://bugzilla.gnome.org/show_bug.cgi?id=765193
2016-04-18 15:30:04 +08:00
Kristian Rietveld 70124c7e46 quartz: handle didMove and didResize in the same way
This fixes bugs with applications that try to allocate large windows,
but are not allocated the full requested size. See for example
GNOME Bugzilla #765120.
2016-04-16 18:44:13 +01:00
Chun-wei Fan 00b30f5b79 MSVC builds: Look for headers in include/gio-win32-2.0
At some point we are going to include headers from there for gio.h, so
make sure everything needed can be found.
2016-04-12 14:07:06 +08:00
Matthias Clasen 2811221d70 GtkEntry: Explicitly disconnect keymap signals
Might fix https://bugzilla.gnome.org/show_bug.cgi?id=648419

(cherry picked from commit 7d3693b82b)
2016-03-27 20:39:28 +02:00
Federico Mena Quintero bd9ede091a entrycompletion: Don't reconnect signals all the time
Backport of commit dc331ccb17

Needed some massaging as that code has moved to gtkentrycompletion.c in gtk3;
here it is still in gtkentry.c.
2016-03-15 19:42:01 -06:00
Matthias Clasen 2479f13a07 Fix signal parameters in GtkEntryCompletion
The ::match-selected and ::cursor-on-match signal were emitted
with the internal filter model instead of the user-provided model.

Fixes bug #555087.
2016-03-15 19:42:01 -06:00
Matthias Clasen 4eeef28b4f Make GtkEntryCompletion::match-selected arguments consistent
For keynav, we were still passing it the filter model.
https://bugzilla.gnome.org/show_bug.cgi?id=640698
2016-03-15 19:42:01 -06:00
Matthias Clasen 21e48c9ac0 GtkEntry: don't forget to disconnect idles
As pointed out by John Lindgren in bug 650114, GtkEntry forgets
to disconnect an idle source when the completion is set to NULL.
2016-03-15 19:42:01 -06:00
Matthias Clasen 87e0582f03 Fix up signal ordering issues in GtkEntry
Ensure that text and selection boundaries are in a
consistent state when we emit notifications, that ::insert-text
and ::delete-text are emitted before any changes, and that
::changed is emitted after property notifications when inserting
or deleting text.

Conflicts:
	gtk/gtkentry.c
2016-03-15 19:41:55 -06:00
Benjamin Otte fb9a63f9d0 entry: Move freeze/thaw into begin/end_change
Conflicts:
	gtk/gtkentry.c
2016-03-11 19:07:39 -06:00
Benjamin Otte 71b20bd105 entry: Don't try to handle Tab in entry completions
Instead, fall through to the default handler after closing the
completion. This has the advantage of letting the file chooser entry
capture the tab key properly, so one can't accidentally move out of the
entry by pressing tab while the completion is popped up.

I also suspect it fixes bugs with weird tab keys and shift/ctrl
oddities. But who knows...

Conflicts:
	gtk/gtkentry.c
2016-03-11 19:05:53 -06:00
Federico Mena Quintero 8f9487fca7 GtkFileChooserEntry: move the cursor after the user chooses a completion from the list
https://bugzilla.gnome.org/show_bug.cgi?id=756450
2016-03-10 16:02:56 -06:00
Federico Mena Quintero bab1c39ec2 GtkFileChooserEntry: Oops, free the temporary dir_part 2016-03-10 15:35:34 -06:00
Federico Mena Quintero 92d45e12f8 GtkFileChooserEntry: regenerate the completions if the dir_part changes
Consider this bug:

1. Open a file chooser; switch it to $HOME

2. Start typing "~/Dow" with some file that *does* exist in your $HOME

3. Delete the inline-completion selection (e.g. the "nloads" after "~/Down").

4. While you are at "~/Dow_" hit Tab.  No completion will occur.

This happens because of the following.

Say the GtkFileChooserEntry is in the process of loading $HOME,
because _set_base_folder() was called.  If the entry contains no text,
then the FULL_PATH_COLUMN of the file system model will be set to
unprefixed filenames from $HOME, like

  .ssh/
  Documents/
  Downloads/
  somefile.txt

Later we avoid reloading the folder if g_file_equal(old_folder, new_folder).

However, the FULL_PATH_COLUMN gets populated in completion_store_set()
out of the actual filenames that GIO returned, plus the chooser_entry->dir_part.

If the user starts typing "~/Dow" then dir_part changes to "~/", *but*
the folder won't be reloaded since it is also $HOME.  However, the completion
machinery assumes that FULL_PATH_COLUMN will contain prefixed entries like

  ~/.ssh/
  ~/Documents/
  ~/Downloads/
  ~/somefile.txt

So, we add an invariant that chooser_entry->dir_part and
chooser_entry->current_folder_file must change at the same time, and
must not get out of sync:  If any of them changes, then the
completions are regenerated.
2016-03-10 15:15:39 -06:00
Federico Mena Quintero a99752239d Ref/sink the GtkFileFilter used for GtkEntryCompletion; it's a GtkObject here 2016-03-10 15:15:39 -06:00
Matthias Clasen d5a7fbc2a7 GtkFileChooser: Don't crash if invisible files are deleted
This is a crash that has been around for a long time, as
can be seen here:
https://bugzilla.redhat.com/show_bug.cgi?id=1048388
https://bugzilla.redhat.com/show_bug.cgi?id=984375
https://bugzilla.redhat.com/show_bug.cgi?id=1159015
https://bugzilla.redhat.com/show_bug.cgi?id=1059187
https://bugzilla.redhat.com/show_bug.cgi?id=1122172
https://bugzilla.redhat.com/show_bug.cgi?id=1016895
https://bugzilla.redhat.com/show_bug.cgi?id=1133235
https://bugzilla.redhat.com/show_bug.cgi?id=1077500
https://bugzilla.redhat.com/show_bug.cgi?id=1054378
https://bugzilla.redhat.com/show_bug.cgi?id=1173212

Fix suggested by Benjamin Otte.
2016-03-10 15:15:39 -06:00
Emmanuele Bassi c7e3531f7a Freeze file system model during editing
If a file system event arrives while GtkFileChooserWidget is asking the
user to edit the name of a newly created folder, the file system model
will drop the row with the editable cell, and the user will have to
start from scratch.

This makes creating new directories impossible inside a directory with a
file currently being downloaded, for instance, and it's really unhelpful
to the user because the editable row simply disappears.

We already have a mechanism in place to freeze the file system model, so
we can reuse it between the add_editable() and the remove_editable()
calls.

https://bugzilla.gnome.org/show_bug.cgi?id=729927

Conflicts:
	gtk/gtkfilesystemmodel.c
2016-03-10 15:15:39 -06:00
Federico Mena Quintero 191d1cd90f Cherry-pick e709c965a4 - don't leak queried file info 2016-03-10 15:15:39 -06:00
Federico Mena Quintero d6c0c948b1 bgo#687196 - Fix model corruption during file removal
The main problem is that we were emitting the row-deleted signal for the model in the middle
of the process that actually deletes the row from the model (remove the row from the array,
update the model->file_lookup hash table, etc.).  In the model's caller, one of the row-deleted
callbacks was requesting an iter, which caused the model to revalidate itself - but it did
this while it was in an inconsistent state.  This led to an assertion failure later when the
model resorted itself.

The fix in remove_file() is like this:

* The filteredness/visibility of the deleted node is not updated.  The
  node will simply be gone; we don't need to update those values at
  all.

* We invalidate just the node that is being deleted.

* The model->file_lookup hash table is not completely nuked; instead,
  we carefully adjust its indices.

* The row-deleted signal is only emitted at the very end, when
  deletion is complete and the model is consistent.

Many thanks to William Hua for doing the detective work on this bug!

Signed-off-by: Federico Mena Quintero <federico@gnome.org>
2016-03-10 15:15:39 -06:00
Federico Mena Quintero 39f91be4de Make freeze_updates() and thaw_updates() static functions
They were in the semi-public API of GtkFileSystemModel, but never actually used outside of it.

Signed-off-by: Federico Mena Quintero <federico@gnome.org>
2016-03-10 15:15:39 -06:00
Federico Mena Quintero 63df6ccf93 Comments on how the filtering and sorting processes work
Signed-off-by: Federico Mena Quintero <federico@gnome.org>
2016-03-10 15:15:39 -06:00
Federico Mena Quintero d8d51036f5 Remove argument to _gtk_file_system_model_update_file() that should not be part of the internal API
Signed-off-by: Federico Mena Quintero <federico@gnome.org>
2016-03-10 15:15:39 -06:00
Federico Mena Quintero a7968e783c Rename gtk_tree_path_new_from_node() to tree_path_new_from_node()
This is a function internal to the file system model; let's not pollute the gtk_tree_path namespace.

Also, make the 'i' variable into 'r' as it refers to a row index, not a file-array index (for
consistency with the docs and the rest of the code).

Signed-off-by: Federico Mena Quintero <federico@gnome.org>
2016-03-10 15:15:39 -06:00
Matthias Clasen 469c9a4da3 Emit row-changed notification
Emit row-changed when the filteredness of a visible row
changes in GtkFileSystemModel.
2016-03-10 15:15:39 -06:00
Federico Mena Quintero 5c78a27a8b Make computing and setting the visibility/filters atomic operations
This way we remove paired function calls (compute/set pairs), and also make
it possible to avoid computing a filter twice, as setting the visibility
depends on filteredness.

Signed-off-by: Federico Mena Quintero <federico@gnome.org>
2016-03-10 15:15:39 -06:00
Federico Mena Quintero 2d1c7e1258 Make it clear that 'filtered' means 'filtered_out'
It bothers me that we call gtk_file_filter_filter(), then negate the result,
and the return *that* from node_should_be_filtered().  So, rename 'filtered'
throughout GtkFileSystemModel to 'filtered_out' to mean things that didn't
pass the filter.

Signed-off-by: Federico Mena Quintero <federico@gnome.org>
2016-03-10 15:15:39 -06:00
Federico Mena Quintero 400f7ec194 Remove superfluous check in node_set_filtered()
This was a copy-paste leftover from node_set_visible().  Filters are not
concerned with model freezes, so node_set_filtered() does not
need to handle freezes, either.

Signed-off-by: Federico Mena Quintero <federico@gnome.org>
2016-03-10 15:15:39 -06:00
William Jon McCann 5c03d6a943 Desensitize filtered folders when in folder selection mode
https://bugzilla.gnome.org/show_bug.cgi?id=679333
2016-03-10 15:15:39 -06:00
Benjamin Otte 545df1a742 filesystemmodel: Add a toggle for whether directories are filtered 2016-03-10 15:15:38 -06:00
Benjamin Otte 0f4e67df68 filesystemmodel: Add a missing check
Paths with depth > 1 should return FALSE instead of pretending the depth
is 1.
2016-03-10 15:15:38 -06:00
Federico Mena Quintero 55764dddcf Make _gtk_entry_completion_compute_prefix() public-internal 2016-03-10 15:15:38 -06:00
Federico Mena Quintero c1f8305622 Sync missing comment 2016-03-10 15:15:38 -06:00
Matthias Clasen 05adbbbc01 Remove debug spew 2016-03-10 15:15:38 -06:00
Matthias Clasen a17e23b8ca file chooser entry: Special-case ., .. and ~
Make sure entering the three special strings ".", ".." or "~" in
the location entry works as expected. They already worked correctly
if you append a '/' to force them to be recognized as the 'folder'
part, but that should not be necessary.

https://bugzilla.gnome.org/show_bug.cgi?id=752707
2016-03-10 15:15:38 -06:00
Matthias Clasen 2f9ea1c444 Formatting fix 2016-03-10 15:15:38 -06:00
Matthias Clasen b7fa0f2193 Avoid a critical in the file chooser
Hiding the location entry was causing criticals, because
the completion was updated after the widget has already
been disposed.
https://bugzilla.gnome.org/show_bug.cgi?id=720330
2016-03-10 15:15:38 -06:00
Federico Mena Quintero f27c1f45b7 GtkFileChooserEntry: don't inline-complete if the entry doesn't have the focus
When the file chooser changes directories, it tells the GtkFileChooserEntry to
change its base folder (i.e. the folder from which relative pathnames are resolved).
GtkFileChooserEntry then starts loading a GtkFileSystemModel asynchronously.
In the finished_loading_cb(), however, it would always ask the GtkEntryCompletion
to insert the completion prefix, since that finished_loading_cb() is what is also used
while the user is typing *in the entry*.

But when the entry doesn't have the focus (e.g. the user changed directories by double-clicking
on the file list in the file chooser), there's no reason to insert completions at all.

https://bugzilla.gnome.org/show_bug.cgi?id=672271
Signed-off-by: Federico Mena Quintero <federico@gnome.org>
2016-03-10 15:15:38 -06:00
Timothy Arceri 616172d133 filechooser: Show FUSE mounted locations in shortcuts
Since FUSE locations can be handled safely by applications show these mounted locations regardless of whether gtk_file_chooser_set_local_only()
is set to TRUE

https://bugzilla.gnome.org/show_bug.cgi?id=586367

Conflicts:
	gtk/gtkfilechooser.c
	gtk/gtkfilechooserdefault.c
	gtk/gtkfilesystem.c
	gtk/gtkfilesystem.h
2016-03-10 15:15:38 -06:00
Matthias Clasen 5fe689ace8 filechooser: Fix entry completion
Inserting the selected completion did not actually work. Oops.

https://bugzilla.gnome.org/show_bug.cgi?id=673090
2016-03-10 15:15:38 -06:00
Benjamin Otte b65de86fe8 filechooserentry: Catch tab key earlier
Instead of in the key_press handler, use a signal handler. The signal
handler runs before the default handler, and before other signal
handlers. In particular it runs before the signal handler installed via
gtk_entry_set_completion() which pops down the entry completion, and we
don't want that to happen.

The code does not change the code of the handler in any significant way,
it just refacotrs it to not call the parent anymore.

https://bugzilla.gnome.org/show_bug.cgi?id=663573

Conflicts:
	gtk/gtkfilechooserentry.c
2016-03-10 15:15:38 -06:00
Benjamin Otte dd255913f3 filechooserentry: Do inline completion only when opening files
When saving files, using <tab> is required. We don't want the UI
randomly changing filenames from below us.

https://bugzilla.gnome.org/show_bug.cgi?id=663573
2016-03-10 15:15:38 -06:00
Benjamin Otte fae77435e5 filechooserentry: Remove unused enum 2016-03-10 15:15:38 -06:00
Benjamin Otte 7e65600118 filechooserentry: Allow NULL as base folder again
This was removed previously, but is necessary to support the case where
no base folder is in use, which should cause an error. This can be
experienced in save mode in the recent files list.

https://bugzilla.gnome.org/show_bug.cgi?id=663573
2016-03-10 15:15:38 -06:00
Benjamin Otte ca22beb670 filechooserentry: Don't show files when selecting directory
We don't want to complete on files when they're not supposed to be
selectable.
2016-03-10 15:15:37 -06:00
Benjamin Otte 4d33adc132 filechooserentry: Remove beep function
There's only 2 places left where we potentially beep. We can call
gtk_widget_error_bell() directly there.
2016-03-10 15:15:37 -06:00
Benjamin Otte 4d59042b68 filechooserentry: Simplify load completion
Most importantly, consistently trigger a beep when we abort a pending
completion.
2016-03-10 15:15:37 -06:00
Benjamin Otte 6a94cedee3 filechooserentry: Use a GtkFileFilter for filtering
That way, we can use the regular filtering features of the
filesystemmodel instead of having our own filtering function that
duplicates much of the matching code.

This also removes the broken-on-windows feature where files strting with
a dot were not autocompleted.

Conflicts:
	gtk/gtkfilechooserentry.c
2016-03-10 15:15:37 -06:00
Benjamin Otte ea2129fda1 filechooserentry: Remove the file column
It is not needed anymore.
2016-03-10 15:15:37 -06:00
Benjamin Otte af39ce608b filechooserentry: Simplify code
Use all the clever functions we invented in recent refactorings to
compute the file and dir part and the current folder.

This also fixes the bug where "./" was not taken as the current
directory but interpreted as a file named "./".
2016-03-10 15:15:37 -06:00
Benjamin Otte c351227a9d filechooserentry: Refactor function
Name the function set_completion_folder() and make it accept NULL, so it
behaves like a regular setter function.
2016-03-10 15:15:37 -06:00
Benjamin Otte 1945577a61 filechooserentry: Set minimum key length to 0
We want the empty chooser to show possible completions, too.
2016-03-10 15:15:37 -06:00
Benjamin Otte 83dd275d21 filechooserentry: Simplify refresh_current_folder_and_file_part()
The function can get the text it's refreshing from itself, as there is
only one possible value. And it doesn't need to return a value anymore.
2016-03-10 15:15:37 -06:00
Benjamin Otte dbb59f3dc4 filechooserentry: Get rid of unused member variable
in_change isn't set anymore.
2016-03-10 15:15:37 -06:00
Benjamin Otte 33fffa727a filechooserentry: Remove _gtk_file_chooser_entry_set_file_part()
gtk_entry_set_text() is fine.
2016-03-10 15:15:37 -06:00
Benjamin Otte ef5088f879 filechooserentry: Use completion for completion
Reduce the amount of code even more by using the entry completion to
query the prefix.
2016-03-10 15:15:37 -06:00
Benjamin Otte 87a67aa0e3 filechooserentry: Add gtk_file_chooser_entry_get_completion_text()
This returns the text that should be completed on. As this is somewhat
tricky to compute (and in fact one place did it wrong), let's make it a
function.
2016-03-10 15:15:37 -06:00
Benjamin Otte 8a4dda06fe filechooserentry: Don't update the folder when completing
The folder is always up to date, there's no need to update it. (If the
folder is not up to date, that is a bug and needs to be fixed
elsewhere.)
2016-03-10 15:15:37 -06:00
Benjamin Otte 6ae5aa7429 filechooserentry: Don't override activate
The code is no longer necessary, because the relevant parts for inline
completion are now handled by GtkEntry.
2016-03-10 15:15:37 -06:00
Benjamin Otte 310b484eee filechooserentry: Simplify append_common_prefix()
Now that we don't need to know anymore why insertion failed, we can
simplify the append function quite a lot.

A simple rule now: If we did not insert anything, beep.
2016-03-10 15:15:37 -06:00
Benjamin Otte 75be2cca58 filechooserentry: Remove completion feedback
Too much special code for no gain.

I did a totally unscientific questionnaire on GNOME IRC (assuming
autocompletion is for advanced users) and nobody even knew what this is.
So I suspect it's useless. Also, it's positioned completely wrong anyway
and nobody noticed so far. Last but not least, I'm trying to imitate
bash here and bash doesn't show feedback.

Conflicts:
	gtk/gtkfilechooserentry.c
2016-03-10 15:15:37 -06:00
Benjamin Otte 8a9a377527 filechooserentry: Redo completion popup trigger
Use dispatch_properties_changed() instead of GtkEditable to watch for
changes to the to-be-completed text. This is necessary because various
functions in GtkEntry don't use the interface vfuncs and one only
becomes aware of them via notifications. I'm not sure this is intended
behavior, but it's how it works today.
Also, use the same code for triggering in all situations.

What the code does is this: It looks at the part of the text in front of
the cursor (or selection) and completes for it. Once the directory has
been enumerated, inline completion is activated. Note that popping up of
the completion popup is completely handled by GtkEntry.

Conflicts:
	gtk/gtkfilechooserentry.c
2016-03-10 15:15:37 -06:00
Benjamin Otte 7570e54212 filechooserentry: Get rid of RefreshMode
Instead, pass the text to use to refresh_current_folder_and_file_part().
This also gets rid of the problem introduced earlier that the position
is not properly updated in do_insert_text() and therefor the completion
is wrong.
2016-03-10 15:15:37 -06:00
Benjamin Otte 46adc18c1d filechooserentry: Use inline completion
... from GtkEntryCompletion instead of implementing a poor copy
ourselves. This also makes the file chooser entry behave a lot closer to
normal entries.

Conflicts:
	gtk/gtkfilechooserentry.c
2016-03-10 15:15:36 -06:00
Benjamin Otte ad88e6d5c6 filechooserentry: Merge function 2016-03-10 15:15:36 -06:00
Benjamin Otte 3bf9b56234 filechooserentry: Set the text column of the entry completion
I want to use it in the next commits, but am doing this in a separate
commit so we can find side effects causing bugs easier when bisecting.
2016-03-10 15:15:36 -06:00
Benjamin Otte 755d8163ea filechooserentry: Simplify match_selected function
Conflicts:
	gtk/gtkfilechooserentry.c
2016-03-10 15:15:36 -06:00
Benjamin Otte 83421a5f8e filechooserentry: Keep an extra column for the full path
This is identical to the display name when not having a path that
changes the folder. Otherwise it will have the full path that was
entered in the entry. Say when from your home dir, you type
"../../usr/li", the full path for "lib" and "lib64" will be
"../../usr/lib" and "../../usr/lib64" respectively. This value isn't
used yet, but will be soon.
2016-03-10 15:15:36 -06:00
Benjamin Otte a0ee779cc2 filechooserentry: Redo _gtk_file_chooser_entry_get_file_part()
The new version does not need to update any text, it just strips the
last part of the existing entry.
2016-03-10 15:15:36 -06:00
Benjamin Otte 877e238133 filechooserentry: Modify _gtk_file_chooser_entry_get_current_folder()
The new version does not need to muck with the entry, it just extracts
the required information. It returns a reference to the folder though,
as we extract the information now instead of returning something stored.
2016-03-10 15:15:36 -06:00
Benjamin Otte 143306a515 filechooserentry: Split out function
I want to use that function elsewhere, so split it out.
2016-03-10 15:15:36 -06:00
Benjamin Otte 623c3a6aec filechooserentry: Simplify code
Now that the base folder is always != NULL, we can remove the parts of
the code that check for NULL.
2016-03-10 15:15:36 -06:00
Benjamin Otte 39dbcbab97 filechooserentry: Ensure the base folder is always valid
If the base folder is set to NULL, then we just assume the home dir.
FIXME: Should we disallow a NULL folder?
2016-03-10 15:15:36 -06:00
Benjamin Otte 02705bce36 filechooserentry: Don't complain about incomplete hostnames
First of all, those hostnames may very well be complete, second of all,
smb:// is a valid uri to enter.
2016-03-10 15:15:36 -06:00
Benjamin Otte f0573f8b42 filechooserentry: Start autocomplete immediately
Don't do idle handlers for this.

Conflicts:
	gtk/gtkfilechooserentry.c
2016-03-10 15:15:36 -06:00
Benjamin Otte a8c766991a filechooserentry: Remove file_system argument
It's not needed anymore.
2016-03-10 15:15:36 -06:00
Benjamin Otte ce8d0599dc filechooserentry: Simplify code
Now that we've imported the function in the last commit, rename it and
omit useless arguments by instead passing in the entry directly.
2016-03-10 15:15:36 -06:00
Benjamin Otte c2978cc394 filechooserentry: Move _gtk_file_system_parse()
It's very specific to the file chooser entry, so it's better kept there.
It's also not used anywhere else in the code.

Also, remove _gtk_file_system_get_folder() as it's no longer used.

Conflicts:
	gtk/gtkfilesystem.h
2016-03-10 15:15:36 -06:00
Benjamin Otte 85563ccd35 filechooserentry: Use a GtkFileSystemModel
Replace the usage of a list store and a GtkFolder with a
GtkFileSystemModel. This improves performance and reduces code size.

Conflicts:
	gtk/gtkfilechooserentry.c
2016-03-10 15:15:30 -06:00
Benjamin Otte 88810509ca filechooserentry: Store the liststore as a treemodel
Just changes the type of the member variable. This way we can avoid a
lot of casts.
2016-03-08 20:45:31 -06:00
Benjamin Otte c94e902894 filechooserentry: Make appending / to directories simpler 2016-03-08 20:45:17 -06:00
Benjamin Otte 5280da05ee filechooserentry: Only append / to directory names once
Since 069d78ed31 the / is appended to
directories upon constructing the display name, so there is no need to
do it later.
2016-03-08 20:45:13 -06:00
Benjamin Otte 29d7464922 filechooserentry: Don't trim away the slash after directories
It's not necessary as the code appending the slashes checks for a slash
these days.
2016-03-08 20:45:04 -06:00
Benjamin Otte fc84c3e02e filechooserentry: Fold in start_loading_current_folder()
The function just did one thing, we can just fold it into the only
caller.

Conflicts:
	gtk/gtkfilechooserentry.c
2016-03-08 20:44:43 -06:00
Benjamin Otte 82a1d9fb18 filechooserentry: The file system cannot be NULL
Remove code that checked this.
2016-03-08 20:43:02 -06:00
Benjamin Otte 707aadf6b1 filechooserentry: Make the filesystem a construct-only argument
This allows simplifications in the code.
2016-03-08 20:42:30 -06:00
Benjamin Otte bdb4727f7f filechooserentry: Keep finished_loading variable ourselves
This will be useful in the next commits when the GtkFolder code
previously keeping that variable gets repalced.
2016-03-08 20:42:09 -06:00
Benjamin Otte 0e6d18eaef filechooserentry: force_reload is never TRUE
.. so remove it.
2016-03-08 20:42:03 -06:00
Benjamin Otte 9c5b7b7892 filechooserentry: Fold function into other
There's no need to discard the current folder's file without also
discarding the folder object.
2016-03-08 20:41:57 -06:00
Benjamin Otte aff9158d41 filechooserentry: Reorganize function
Setter functions the way I code it look like this (in order):
1) Figure out if the value changed. If not, exit early.
2) Clear the old value (ie unref stuff, disconnect signals
3) Copy the new value
4) Set up things about the new value

This reorganization does that.

And by doing that, it even reduces the amount of code and the amount of
branches (and with it, nesting) needed.
2016-03-08 20:41:49 -06:00
Benjamin Otte a82a166700 filechooserentry: Use the actual discarding function to discard a folder 2016-03-08 20:41:42 -06:00
Benjamin Otte 6d184e9707 filechooserentry: Don't use a magic number
... when we have a proper enum value for a column.
2016-03-08 20:41:34 -06:00
Ken VanDine 5fb443d236 Include <package/> tag in generated GIR
Specify pkg-config name when generating GIR files, used for mapping GIR
name to pkg-config names

https://bugzilla.gnome.org/show_bug.cgi?id=635287
2016-03-07 18:09:49 +01:00
Dariusz Gadomski 674d0eb7e9 printing: Properly initialize auth_info in gtkprintbackend.c
auth_info should be a NULL-terminated array as it is used in
e.g. g_strdupv invocations iterating over its elements until
a NULL element is encountered.

https://bugzilla.gnome.org/show_bug.cgi?id=737777

(cherry picked from commit 15dbadf389)
2016-03-07 17:56:41 +01:00
Matthias Clasen 407c89863d Avoid integer overflow
Use g_malloc_n in gdk_cairo_set_source_pixbuf when allocating
a large block of memory, to avoid integer overflow.

Pointed out by Bert Massop in
https://bugzilla.gnome.org/show_bug.cgi?id=703220

(cherry picked from commit 894b1ae76a)
2016-03-07 17:38:33 +01:00
Matthias Clasen ba91ab6604 2.34.30 2016-03-05 12:30:46 -05:00
Matthias Clasen 2289695b69 status icon: Prevent size dithering
We're seeing loops where the size of some status icons constantly
dithers between 24 and 25. Since I couldn't track down exactly
where the one extra pixel comes from, just stop reacting
to single-pixel size changes.

https://bugzilla.gnome.org/show_bug.cgi?id=758893
2016-03-05 12:16:08 -05:00
Matthias Clasen e7a1afc74d Fix the build against current gdk-pixbuf
The GdkPixdata APIs have been deprecated, lets not fail the build
due to that.
2016-03-05 10:59:55 -05:00
Chun-wei Fan 4db659552b gdk: Fix build of gdkkeyuni.c
In commit 4bf5290, there isn't a prototype for
_gdk_win32_keymap_get_decimal_mark(), causing a C4013 (implicit
declaration of...) warning/error.  Fix that by including the right
header for it.
2016-02-27 20:20:32 +08:00
Fredy Paquet 4bf5290a25 W32: Fix for commit 1f74f12d9, re-enabling decimal separator key
1f74f12d9 rendered entry of keypad decimal mark unuseable for
several national keyboard layouts, this commit amends that, at
least for W32, and makes GTK+ behave more or less the same way
W32 behaves.

The patch works like this:
- When typing the first character at the keyboard or when switching
  keyboard layouts, the decimal mark character will be cached in the
  static variable "decimal_mark" within gdkkeys-win32.c

- in case of WIN32, gdk_keyval_to_unicode() asks gdkkeys-win32.c for the
  current decimal_mark when converting GDK_KEY_KP_Decimal.
2016-02-26 19:40:20 +00:00
Allin Cottrell dd90d178cc Fix Quartz Full Screen Crash. 2016-02-23 10:01:24 -08:00
Theppitak Karoonboonyanan bbb8ac1caa Updated Thai translation 2016-02-23 14:58:01 +07:00
John Ralls ce05d6608c Fix typo. 2016-02-21 16:25:12 -08:00
Frederic Crozat 1ac15824c7 Revert "Translate GDK_KEY_KP_Decimal according to locale"
This reverts commit 3b65a6a42e.

Too much controversy for this minor improvement.
See https://bugzilla.gnome.org/show_bug.cgi?id=756751
2016-02-16 17:12:17 +01:00
Ignacio Casal Quinteiro 0517063d76 win32: properly handle show and focus
The first time a window is shown we should always call SW_SHOWNORMAL.
Understand whether to call SW_SHOW or SW_SHOWNORMAL and the specific
ones for the temporary windows depending on IsWindowVisible.
This also fixes the problem when calling gtk_window_present and
the window is snapped to the left or right of the screen.

This patch is based on the patches provided by Yevgen Muntyan
and Aleksander Morgado.

https://bugzilla.gnome.org/show_bug.cgi?id=698652
2016-02-15 09:00:03 +01:00
Yevgen Muntyan 2299a98a5d win32: on focus restore the window if iconified
If the window is iconified we want to restore the window
to get the proper size instead of showing it normal which
would change the size of the window.

https://bugzilla.gnome.org/show_bug.cgi?id=698652
2016-02-15 09:00:03 +01:00
John Ralls 99db4164bc Fix Quartz clipboard image retrieval.
It does no good to iterate through a series of mime types to call a
function when the eventually-called function,
_gtk_quartz_get_selection_data_from_pasteboard() in this case, gives the
wrong answer and stops the iteration on all but one especially if that
one isn't first.

The one is "image/tiff" and the quartz pasteboard function will return
any image type Quartz knows about for it, so lose the iteration and use
only "image/tiff".
2016-02-11 13:49:07 -08:00
Emmanuele Bassi 383673643b Avoid a false positive deprecation notice
The comment on the #endif is tripping the deprecation state inside
the gtk-doc parser for gtk_container_get_children().
2016-01-25 10:43:30 +00:00
Matthias Clasen 748900071e Fix interaction between scrolling menus and automatic mnemonics
https://bugzilla.gnome.org/show_bug.cgi?id=612611
2016-01-19 23:51:03 +01:00
Hans Breuer 679d2a45af Bug 722815 - Deliver GdkModifierType during 'drag-motion'
This bug was also found by clang:

gdkwindow-quartz.c:1956:11: warning: implicit conversion from enumeration type 'GdkEventMask' to
      different enumeration type 'GdkModifierType' [-Wenum-conversion]
  *mask = _gdk_quartz_events_get_current_event_mask ();
        ~ ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
1 warning generated.
2016-01-12 23:07:25 -05:00
Kiyotaka NISHIBORI 79da37b2c9 Updated Japanese translation
Change B series paper names in accordance with the Japanese standards.
2016-01-12 00:16:50 +09:00
Dave Airlie 8bbd765930 gtk2-24: add randr 1.5 monitor support [v3]
This patch introduces support for using the newly introduced
monitor objects in the XRandR protocol. These objects are meant
to be used to denote a set of rectangles representing a logical
monitor, and are used to hide details like monitor tiling and
virtual gpu outputs.

This uses the new objects instead of crtc/outputs objects when
they are available to create the monitor lists. X server 1.18
is required on the server side for randr 1.5.

This patch was cherry-picked and fixed from the gtk3 branch and
squashes the two following additional fixupes:

v2: Fix primary monitor determination with XRANDR 1.5
	Matthias Clasen <mclasen@redhat.com>
v3: Fix a typo in the previous patch
	Matthias Clasen <mclasen@redhat.com>

https://bugzilla.gnome.org/show_bug.cgi?id=759912
2015-12-28 10:43:18 -05:00
Chun-wei Fan 6de93df9a4 MSVC builds: Build gtk-update-icon-cache
As pointed out by  Paolo Borelli in bug 759436, we ought to build
gtk-update-icon-cache, "install" it and run it nowadays as it becomes more
and more common that we are going to use an external icon theme package,
so that gtk+ programs will run better and faster.
2015-12-15 16:54:00 +08:00
Chun-wei Fan c9899ca93f build: Add support for Visual Studio 2015
This adds support for building with Visual Studio 2015 out-of-the-box
by what we did before: copying the 2010 projects and updating items
in there to make those projects compatible with 2015, as the formats
of the project files are largely unchanged.
2015-12-15 16:46:11 +08:00
Chun-wei Fan 339fd3d3f6 Clean Up MSVC Project Generation
Use the common autotools module that was added in the last commit so that
we can clean up the various Makefile.am's in gdk/ and gtk/, and also
make more Visual Studio projects completed during 'make dist', by adding
minimal items to those other Makefile.am's.  This also allows us to make
the property sheets that does the copying of headers and built items
completed at 'make dist', so that we won't have to worry too much about
headers being added (although it would be unlikely for GTK+-2.x).
2015-12-15 16:44:47 +08:00
Chun-wei Fan d1c13ba580 build: Update Makefile-newvs.am
This updates the autotools module copying and generating the MSVC
2012-2015 projects by copying it from from GLib, which also has the
advantage of making things work better when doing 'make -jN dist', and
the Makefile.am's in bui;d/win32/vs[11|12] have been updated accordingly.
2015-12-15 16:38:11 +08:00
Chun-wei Fan 8b4e346a26 build/: Add common autotoold module to generate MSVC projects
This adds an autotools module that is copied from GLib, which is
included by the Makefile.am's to generate the complete Visual Studio
projects from their repsective templates, which:

-Cleans up those autotools files
-Make 'make -jN dist' work better
2015-12-15 16:37:45 +08:00
Matthias Clasen 89761b7271 2.28.29 2015-12-10 15:34:40 -05:00
Matthias Clasen 3b65a6a42e Translate GDK_KEY_KP_Decimal according to locale
It makes sense that you should be able to type numbers that are
correctly formatted and parsable according to the current locale,
using just the keypad. This patch makes it so by translating
GDK_KEY_KP_Decimal to the decimal separator for the current locale,
instead of hardcoding a '.'.

https://bugzilla.gnome.org/show_bug.cgi?id=756751
2015-10-25 14:09:03 -04:00
David Lechner 4ba1fbfdb1 Bug 753992 - im-quartz discard_preedit segmentation fault
Replace checking if the NSView is really a GdkWindow, which will crash
in the likely event it's not a GObject, with ensuring that the parent
GdkWindow is really a GdkWindowQuartz.
2015-10-08 21:36:11 -04:00
Piotr Drąg b3ff8bbe31 Add Language headers to po files
Future versions of gettext will fail if this header is missing.

GTK+ 2 is not going away anytime soon, and some projects (e.g. GIMP)
want to compile it with the latest gettext.

Based on a patch by Sven Claussner <sclaussner@src.gnome.org>.
2015-09-26 19:19:14 +02:00
Matthias Clasen c4d8fba455 Annotate GtkColorButton get_color
This is a backport of the corresponding change in gtk+ 3.

http://bugzilla.gnome.org/show_bug.cgi?id=754046
2015-08-25 23:46:58 -04:00
Ting-Wei Lan 46c28bd54d Makefiles: Fix parallel installation for MinGW
Make sure that the destination exists before installing files.

https://bugzilla.gnome.org/show_bug.cgi?id=753691
2015-08-19 10:38:39 +08:00
Matthias Clasen f3a34856c5 multipress: Only emit preedit signals if needed
When clearing the compose buffer, don't emit preedit-changed
unconditionally. This triggers a recursion which leads to
a crash.

https://bugzilla.gnome.org/show_bug.cgi?id=753644
2015-08-18 15:46:21 -04:00
Paolo Borelli 783afbd64f print operation: let subclasses use a custom paginate
GtkPrintOperation was emitting paginate only if a signal was
connected, this meant that subclassing and overriding the
paginate vfunc lead to the unexpected result that paginate did
not run.
Instead we always emit the signal and use a custom accumulator:
if there is a signal we just run that and avoid the default
handler, otherwise we run the default handler which can be the
one by the subclass or the default handler that just skips
pagination.

Patch by Yevgen Muntyan, fixes #345345
2015-08-18 15:46:21 -04:00
Matthias Clasen b2a79ef73c File chooser: Fix a crash on dnd in sidebar
We were crashing when reordering the sidebar by dnd.

https://bugzilla.gnome.org/show_bug.cgi?id=745127
2015-07-30 21:58:07 -04:00
Matthias Clasen 5c92821ace quartz: Implement NO_TARGET drag result
This is necessary to make notebook tab DND work.

https://bugzilla.gnome.org/show_bug.cgi?id=752638
2015-07-26 02:17:44 -04:00
Matthias Clasen 2ac4fe1b66 quartz: Check if a drag ends inside a known window
If a drag ends inside a known window, set the dest_window field
in the drag context. This information is needed to implemented
notebook tab dragging.

https://bugzilla.gnome.org/show_bug.cgi?id=752638
2015-07-26 02:15:31 -04:00
Matthias Clasen 50bd9dd9f3 Remove an unused variable
Pointed out by coverity.
2015-07-17 21:27:02 -04:00
Matthias Clasen 7ee8b1fd9a Fix a wrong function call
cairo_region_destroy can't handle GdkRegions. We need to call
gdk_region_destroy. Found by coverity.
2015-07-17 21:23:54 -04:00
Chun-wei Fan b2d60ff8cb MSVC Builds: Update GUID of "Install" Project
The GUID of the "Install" project files happen to be the same as Pango's
"install" projects, so we need to update the GUID here so that the projects
can cooperate with each other when used in an all-in-one build for the GTK+
stack.
2015-07-17 17:13:42 +08:00
Tom Schoonjans 93f9c220ab gdkwindow-quartz: partial aspect ratio support
Support was added for GDK_HINT_ASPECT in
gdk_quartz_window_set_geometry_hints though with one restriction:
min_aspect and max_aspect have to be equal, which I believe corresponds
to the most common usage. A warning will be printed if this condition is
not met but min_aspect will be used anyway.
2015-07-07 10:11:39 -07:00
Cédric Valmary 7d93d6f59a Updated Occitan translation 2015-05-29 20:56:52 +00:00
Kylie McClain 29da0d99aa Fix AM_PATH_GTK_2_0 for cross compilation
With the current code used in the m4 macro, gtk-2.0.m4 can't find
a prefixed pkg-config. This presents issue when cross compiling, as
pkg-config needs to be prefixed to work with the target being compiled
for.

Change the macro to use PKG_PROG_PKG_CONFIG rather than custom
detection code.

https://bugzilla.gnome.org/show_bug.cgi?id=749507
2015-05-22 00:11:46 -04:00
Cédric Valmary 8d907370a6 Updated Occitan translation 2015-05-15 16:33:27 +00:00
Matthias Clasen b5b0557213 Update NEWS 2015-05-13 08:53:48 -04:00
Matthias Clasen 86a9348dc4 2.24.28 2015-05-13 07:25:53 -04:00
Marek Kasik d63bee09e0 printing: Check connection to remote CUPS server on correct port
Add parameter for specification of port to gtk_cups_connection_cups_new().
Use default port returned by ippPort() if the given port is lower than 0.

https://bugzilla.gnome.org/show_bug.cgi?id=693738
2015-05-13 12:27:44 +02:00
Руслан Ижбулатов 1f74f12d9f Use GDK_KEY_KP_Decimal instead of GDK_KP_Decimal
Fixes the FTBFS introduced in cb3eb7cd77
2015-05-04 17:01:29 +00:00
Matthias Clasen cb3eb7cd77 win32: Support the decimal point on the keypad
Based on a patch by John Emmas.
2015-05-01 07:32:47 -04:00
Руслан Ижбулатов 92fb170917 W32: Support horizontal mouse wheel scrolling
https://bugzilla.gnome.org/show_bug.cgi?id=748014
(cherry picked from commit c0e0a1508b)
2015-04-28 00:42:35 -04:00
Matthias Clasen 3da748930f Avoid perl warnings
Apparently, defined is not cool anymore.
2015-04-11 20:23:11 -04:00
Ignacio Casal Quinteiro a4bffe01bb Fix missing field po file 2015-03-27 18:29:08 +01:00
Руслан Ижбулатов 0edc775d1a Revert "W32: correctly guess max window size from the size of the workarea of the screen it's on"
This is only needed for CSDs. GKT+-2.x has no CSDs, so this
code is completely unnecessary.

This reverts commit d9122d1379.
2015-03-26 17:12:01 +00:00
Руслан Ижбулатов 88f3b248d6 Revert "W32: Correctly set maximized window position"
This is only needed for CSDs. GKT+-2.x has no CSDs, so this
code is completely unnecessary.

This reverts commit 2fdd8627dd.
2015-03-26 17:11:13 +00:00
Руслан Ижбулатов 2fdd8627dd W32: Correctly set maximized window position
Use screen workarea to *also* set the position of a maximized window,
not just its size. Without this the window position defaults to 0:0
(the topleft corner), which is wrong when taskbar is position along the
top or left edge of the screen.

https://bugzilla.gnome.org/show_bug.cgi?id=746821
2015-03-26 16:09:13 +00:00
Руслан Ижбулатов d9122d1379 W32: correctly guess max window size from the size of the workarea of the screen it's on
Get monitor on which the most of the window is located (nearest monitor if
window is not on screen), get its work area (area not occupied by taskbar or
any other bars) and use that for maxsize.

Previous default of 30000 meant that windows maximized onto full screen,
even covering the area where taskbar is.

https://bugzilla.gnome.org/show_bug.cgi?id=726592
2015-03-26 16:09:13 +00:00
Matthias Clasen dd882f5b80 Fix a sporadic segfault in treeview keynav
If a a treeview has frequent periodic additions and removals of
rows, it is possible that a page down keypress moves the cursor
out of the height of the treeview. In some of these cases, we
can be tricked into dereferencing a  NULL pointer.

Bug 612919.

https://bugzilla.gnome.org/show_bug.cgi?id=746269
2015-03-16 12:34:44 -04:00
John Lindgren ba48b46574 Fix problems with sticky handling (backport of 01320e5773).
Reading a card32 property into a long may lead to undefined high bits, so mask
them off. Also, make the conditions for setting and unsetting the stick flag
opposites, to avoid unintended changes.

https://bugzilla.gnome.org/show_bug.cgi?id=746064
2015-03-12 17:30:39 -04:00
Chun-wei Fan df09ce5e87 MSVC Builds: Rename "Install" Projects
Rename the install projects as gtk-install, to ease the integration of the
projects in a grand solution that may be used to build, for example, the
entire GTK+ stack.
2015-03-06 16:56:19 +08:00
Chun-wei Fan bf92167b01 MSVC Builds: "Install" the .pdb Files
"Install" the .pdb files to help people use them to debug the GTK+ stack,
or for their GTK-using applications, as they are already generated for all
builds.

Also update the copying of the DLLs, LIBs and EXEs so that we ensure that
we only copy the items from GTK+-2.x, without accidently copying items that
are not meant to be copied, or make extra copies of items in the wrong
places, such as when the projects here are used in parts of grand solutions
used to build the entire GTK+ stack.
2015-03-06 15:21:52 +08:00
Chun-wei Fan e129c94171 MSVC 2010+ Builds: Fix .pdb Generation
The .pdb file name must be specified for Visual Studio 2010+ later in order
fo match the output filename if the output filename is different from the
project name.  Update the projects as necessary.
2015-03-06 15:16:39 +08:00
Chun-wei Fan 8995a3e19c MSVC 2010+ Builds: Clean up gtk-install.props
Remove empty lines, they aren't really necessary.
2015-03-06 11:17:39 +08:00
Matthias Clasen e6333a1a37 2.24.27 2015-03-03 11:40:38 -05:00
Colin Walters 22eb70adab gdkwindow: Fix event unref iteration
We were double looping previously which caused a NULL deref.

(cherry picked from commit d08ff485f2)
2015-03-03 17:13:49 +01:00
Christophe Fergeau 5efefdb655 gdk: Fix GdkWindowFilter internal refcounting
Running gnome-shell under valgrind, I saw the attached invalid write.
Basically we can destroy a window during event processing, and the old
window_remove_filters simply called g_free() on the filter, ignoring
the refcount.  Then later in event processing we call filter->refcount--,
which is writing to free()d memory.

Fix this by centralizing list mutation and refcount handling inside
a new shared _gdk_window_filter_unref() function, and using that
everywhere.

==13876== Invalid write of size 4
==13876==    at 0x446B181: gdk_event_apply_filters (gdkeventsource.c:86)
==13876==    by 0x446B411: _gdk_events_queue (gdkeventsource.c:188)
==13876==    by 0x44437EF: gdk_display_get_event (gdkdisplay.c:410)
==13876==    by 0x446B009: gdk_event_source_dispatch (gdkeventsource.c:317)
==13876==    by 0x4AB7159: g_main_context_dispatch (gmain.c:2436)
==13876==    by 0x4AB7957: g_main_context_iterate.clone.5 (gmain.c:3087)
==13876==    by 0x4AB806A: g_main_loop_run (gmain.c:3295)
==13876==    by 0x8084D6B: main (main.c:722)
==13876==  Address 0x1658bcac is 12 bytes inside a block of size 16 free'd
==13876==    at 0x4005EAD: free (vg_replace_malloc.c:366)
==13876==    by 0x4ABE515: g_free (gmem.c:263)
==13876==    by 0x444BCC9: window_remove_filters (gdkwindow.c:1873)
==13876==    by 0x4454BA3: _gdk_window_destroy_hierarchy (gdkwindow.c:2043)
==13876==    by 0x447BF6E: gdk_window_destroy_notify (gdkwindow-x11.c:1115)
==13876==    by 0x43588E2: _gtk_socket_windowing_filter_func (gtksocket-x11.c:518)
==13876==    by 0x446B170: gdk_event_apply_filters (gdkeventsource.c:79)
==13876==    by 0x446B411: _gdk_events_queue (gdkeventsource.c:188)
==13876==    by 0x44437EF: gdk_display_get_event (gdkdisplay.c:410)
==13876==    by 0x446B009: gdk_event_source_dispatch (gdkeventsource.c:317)
==13876==    by 0x4AB7159: g_main_context_dispatch (gmain.c:2436)
==13876==    by 0x4AB7957: g_main_context_iterate.clone.5 (gmain.c:3087)

https://bugzilla.gnome.org/show_bug.cgi?id=637464

Backport of 806c04411d to
the gtk-2-24 branch. 806c0441 was authored by Colin Walters
<walters@verbum.org>

Without this patch, the spotify linux client was crashing during
playback of some songs when using gtk+ 2.24.26

https://bugzilla.gnome.org/show_bug.cgi?id=745536
2015-03-03 17:13:49 +01:00
Chun-wei Fan de7ec7a0a9 MSVC 2008 Builds: Speed Up Release Builds
Use the /MP compiler option, where the build time for release builds can
be cut down by quite a bit.  This will however cause a brief warning with
debug builds due to the use of /Gm, but the code will otherwise build
normally.  Unlike the Visual Studio 2010+ builds, we can't use /d2Zi+ as
Visual Studio 2008 does not support that, so we can't get a better
debugging experience for release builds here.
2015-03-03 18:41:59 +08:00
Chun-wei Fan 639845d21e MSVC Builds: Improve Build Speed and Debugging
Use Multiprocessor compilation which can cut down build times by quite a
bit and use the /d2Zi+ flag to have better debugging info being logged to
the .pdb for release builds.

These are only applicable for Visual Studio 2010/2012 and later.
2015-03-03 14:11:18 +08:00
Daniel Drake c5afe319ad icontheme: allow directories with mtime 0
In order to provide a constant mtime between OS build and deploy time,
while also maintaining a hardlink content-addressed model independent of
timestamps, ostree sets all mtimes to 0.

The icon cache code currently ignores directories with mtime 0, assuming
they don't exist.

Track directory existence in a more precise way.

https://bugzilla.gnome.org/show_bug.cgi?id=745052
2015-02-23 16:51:23 -06:00
Arnav Singh e01cc5bf5f statusicon: fix crash storing pointer in UINT
https://bugzilla.gnome.org/show_bug.cgi?id=696505
2015-02-21 15:58:41 +01:00
Benjamin Otte 79c05314c6 gdkcairo: Don't leak pixel data
If we fail to attach pixel data to a cairo surface, free it immediately.
We still want to cairo_set_source() the surface to popagate the error.

Spotted by Christian Boxdörfer
2015-02-20 20:52:19 +01:00
Matthias Clasen eb0e67217e 2.24.26 2015-02-16 13:17:34 -05:00
Matthias Clasen 9169b6aa69 Fix distcheck 2015-02-16 10:31:46 -05:00
Ting-Wei Lan dea9eae3af Support automake 1.15
https://bugzilla.gnome.org/show_bug.cgi?id=743544
2015-02-16 09:26:18 -05:00
Matthias Clasen 5364ede826 gailbutton: Avoid a possible NULL dereference
We were using widget->window before checking widget for being NULL.

Pointed out by Sami Farin,
https://bugzilla.redhat.com/show_bug.cgi?id=1140414
2015-02-13 13:40:46 -05:00
Matthias Clasen 6931981114 label: Avoid a possible NULL dereference
We were setting attr->start before checking attr for being NULL.

Pointed out by Sami Farin,
https://bugzilla.redhat.com/show_bug.cgi?id=1140414
2015-02-13 13:39:47 -05:00
Matthias Clasen ee95f3d725 Make gdk_event_apply_filters safe against changes in filter list
An event filter may add or remove filters itself. This patch does
two things to address this case. The first is to take a temporary
reference to the filter while it is being used. The second is
to wait until after the filter function is run before determining
the next node in the list to process. This guards against
changes to the next node. It also does not run functions
that have been marked as removed. Though I'm not sure if this
case can arise.

https://bugzilla.gnome.org/show_bug.cgi?id=635380

Backport of 323df2b280 to
the gtk-2-24 branch by Wolfgang Ulbrich.
2015-02-13 13:12:39 -05:00
Lars Uebernickel 436fe38cae Add support for loading gtk2-only modules
Introduce GTK2_MODULES environment variable for modules that don't work
in gtk3. The list of modules is now $GTK2_MODULES:$GTK_MODULES.

https://bugzilla.gnome.org/show_bug.cgi?id=743917
2015-02-04 13:43:49 +01:00
Holin e48ae6f85b Bug 741959 - text input broken on OS X 10.5 from 2.24.19 onwards
Alias insertText:replacementRange: to insertText: for SDK > 10.6,
and implement insertText: for SDK < 10.6.
2015-01-04 18:16:29 -08:00
John Ralls 456f80a0cf Revert "Bug 741959 - text input broken on OS X 10.5 from 2.24.19 onwards"
This reverts commit 4d1c065 because with further testing it's found that
imquartz works on Leopard without it and is broken with it.
2015-01-04 12:06:57 -08:00
Holin 4d1c065ae8 Bug 741959 - text input broken on OS X 10.5 from 2.24.19 onwards
Alias insertText:replacementRange: to insertText: for SDK > 10.6,
and implement insertText: for SDK < 10.6.
2014-12-28 10:46:13 -08:00
John Lindgren ad6271eca9 gdk_window_begin_paint_region() - always reuse the same surface
When using the implicit paint pixmap, always draw to the same surface
(the standard one for the pixmap) each time rather than creating a new
one each time. This is both more effective and more natural.

It also fixes a redraw issue on win32, where using multiple surfaces
on the same HDC sometimes causes issues.  This seems to be due to
leftover state on the HDC from previous surfaces.

https://bugzilla.gnome.org/show_bug.cgi?id=741060
2014-12-05 11:05:48 +01:00
Matthias Clasen 5bafcca63f Ignore gdk-pixbuf deprecations
We're not going to start updating the 2.24 branch to newer
gdk-pixbuf APIs, so ignore deprecations.
2014-10-22 22:10:56 -04:00
Matthias Clasen aff976ef0d Do not leak a cairo region
This memory leak fix was present in GTK+ 3 since 3.10. We forgot
to backport it to GTK+ 2.

https://bugzilla.gnome.org/show_bug.cgi?id=738837
2014-10-20 06:17:56 -04:00
Matthias Clasen 7f99fdbe90 2.24.25 2014-10-10 11:46:36 -04:00
Matthias Clasen 43ece862f3 Disable deprecation warnings for tests
This is a change in newer GLib which breaks make check if we
don't disable it.
2014-10-10 11:46:36 -04:00
Matthias Clasen 1d0e2d5838 pixbuf engine: Avoid a crash if widget is NULL
Commit 85f2a721cf introduced an unconditional call to
gtk_widget_get_direction(). This does not work for 'foreign'
uses of the theme engine, e.g. in Qt, where widget is NULL.

This was reported as a crash in Fedora here:
https://bugzilla.redhat.com/show_bug.cgi?id=924683
2014-09-29 16:05:57 -04:00
Jehan 03c53357f6 win32: provide an implementation for gdk_test_simulate_key().
https://bugzilla.gnome.org/show_bug.cgi?id=734879
2014-09-22 21:23:31 -04:00
Emmanuele Bassi fbf38d16bc threads: Do not release the GDK lock if it hasn't been acquired yet
Since GLib ≥ 2.41, attempting to release an unlocked mutex will abort(),
as it happens on most systems already.

Given the lack of proper documentation on how to use GDK with threads,
there is code in the wild that does:

    gdk_threads_init ();
    gdk_init ();

    ...

    gtk_main ();

instead of the idiomatically correct:

    gdk_threads_init ();
    gdk_threads_enter ();

    gtk_init ();

    ...

    gtk_main ();

    ...

    gdk_threads_leave ();

Which means that gtk_main() will try to release the GDK lock, and thus
trigger an error from GLib.

we cannot really fix all the wrong code everywhere, and since it does
not cost us anything, we can work around the issue inside GDK itself, by
trying to acquire the GDK lock inside gdk_threads_leave() with
trylock().

https://bugzilla.gnome.org/show_bug.cgi?id=735428
2014-08-26 20:08:54 -04:00
Sebastian Gerhardt d9164e9c60 gdk_drawable_get_screen() used for mask, which is a pixmap, not a window
The function gtk_drag_set_icon_pixmap() triggered failing assertions. This was because it called the function gdk_window_get_screen(mask), where "mask" is a pixmap, but not a window.

https://bugzilla.gnome.org/show_bug.cgi?id=735005
2014-08-20 21:46:08 -04:00
Jehan ab3e3b1834 Makefiles: cross-compilation on Linux for Windows failing.
Missing linking information for some modules.
2014-08-13 20:59:30 +00:00
Matthias Clasen 267d004fd9 Fix a typo
$(bindir) starts with a slash, so no need to add an extra one in
$(DESTDIR)$(bindir)...

https://bugzilla.gnome.org/show_bug.cgi?id=734563
2014-08-10 07:58:05 -04:00
John Ralls 825e035833 Bug 729924 - Crash trying to print in OSX 2014-08-03 11:53:43 +02:00
Руслан Ижбулатов d0c0d657b4 Embed manifest into gtk-update-icon-cache.exe
https://bugzilla.gnome.org/show_bug.cgi?id=705054
2014-08-02 10:51:57 +00:00
Matthias Clasen 3c8f0c44e1 GtkEntry: Properly remove the completion timeout
There were some code paths where we removed the source, but
failed to reset the id to zero.

Pointed out by John Coppens in
https://bugzilla.gnome.org/show_bug.cgi?id=733689
2014-07-29 12:23:13 +02:00
Michał Górny f566f8811e Use AC_PATH_TOOL to find build tools.
This improves support for cross-compilation & multilib on Gentoo, where
tools proper for target arch/ABI are prefixed with CHOST.

https://bugzilla.gnome.org/show_bug.cgi?id=731582
2014-07-25 15:08:44 -04:00
Andreas Müller 0b5b2779a2 GtkButton: do not prelight in touchscreen mode
Code was copied from GtkToggleButton.

Signed-off-by: Andreas Müller <schnitzeltony@googlemail.com>

https://bugzilla.gnome.org/show_bug.cgi?id=689138
2014-07-20 02:33:22 -04:00
Balázs Úr 6a6885c5c0 Updated Hungarian translation 2014-07-08 15:04:53 +00:00
Chun-wei Fan 8e5f8440a6 Build: Provide Simple Support for MSVC 2012/2013
As the Visual Studio 2012/2013 are only slightly different from the Visual
Studio 2010 projects, we can provide support for them by using scripts to
copy the Visual Studio 2010 projects, and update the specific parts as
necessary.  This is being provided to help people still needing GTK+-2.x
and also to help them to transition to GTK+-3.x easier.

Thus, there would be little maintenance overhead for these as only the 2010
projects need to be kept up-to-date as a result.  This might change when we
do get the stack working with WinRT/Metro, but that's going to be another
totally different issue.
2014-07-01 16:39:32 +08:00
Chun-wei Fan 6e9781c32b Fix "Installation" for Visual Studio 2010+
We need to enclose paths containing $(BinDir) with double quotes as it
points to something like c:\foo\gtk+-x.yy.zz, which the copy command on
Windows does not like "+" in paths unless enclosed in quotes.
2014-07-01 16:36:26 +08:00
Matthias Clasen 9de65a11bb 2.24.24 2014-06-23 11:08:14 -04:00
Matthias Clasen 72c472287b Include image data in the builtin icon cache 2014-06-23 11:08:14 -04:00
Matthias Clasen f652982062 Fix a pixmap leak in the ms-windows engine
This was pointed out in https://bugzilla.gnome.org/show_bug.cgi?id=731967.
2014-06-22 13:11:50 -04:00
Yosef Or Boczko ff1f1d347d Updated Hebrew translation 2014-06-18 03:07:21 +03:00
Piotr Drąg b79cb3974c Updated Polish translation 2014-06-17 19:29:24 +02:00
Matthias Clasen 30f2428671 gtk-update-icon-cache: Add an --include-image-data option
Now that we don't include the image data by default anymore,
lets add an option that  does it.

Conflicts:
	docs/reference/gtk/gtk-update-icon-cache.xml
2014-06-17 12:59:37 -04:00
Jasper St. Pierre 85fe78ed21 updateiconcache: Don't include image data by default anymore
Since large images are in the icon cache, and apps don't tend to use that
many icons anymore, simply don't include image data and instead make apps
load files from disk. Additionally, since they're stored in GdkPixbuf data,
that means that we have to first convert them either to a cairo_surface_t,
which requires converting pixel data to be premulitplied, or an OpenGL
texture, which requires a whole GPU upload anyway.

So, even with the icon cache, the goal of icons through zero-copy, mmap()'d
data from disk just isn't doable with the icon cache format we have. The
icon cache on my disk is nearing 100MB, since we include a bunch of
high-resolution application icons, that I doubt would be used by apps at all.
Removing this inefficient pixel data makes memory usage for all applications
go down, with no speed loss.

The icon cache also, however, has an index of what icons are in each folder,
which prevents a readdir() and allows GTK+ to know what icon is where without
having to do a bunch of stat(); calls. Keeping this data is good for GTK+,
so we should still keep the index.

It doesn't make sense to remove any code for mapping pixel data from the icon
cache. There's a plan in the works to have a symbolic icon cache that does
pixel math on 16x16 icons to prevent slow SVG rendering. 16x16 pixels are
fairly small, and such images are flat colors, which should compress easily,
so the icon cache would be worthwhile here. So let's keep the code around
in preparation for that case.

https://bugzilla.gnome.org/show_bug.cgi?id=721895
2014-06-17 12:58:33 -04:00
Chun-wei Fan a3d672a415 MSVC 2010+ Projects: Update "Installation" Process
Currently, due to the way that Visual Studio 2010+ projects are handled,
the "install" project does not re-build upon changes to the sources, as it
does not believe that its dependencies have changed, although the changed
sources are automatically recompiled.  This means that if a part or more
of the solution does not build, or if the sources need some other fixes
or enhancements, the up-to-date build is not copied automatically, which
can be misleading.

Improve on the situation by forcing the "install" project to trigger its
rebuild, so that the updated binaries can be copied.  This does trigger an
MSBuild warning, but having that warning is way better than not having an
up-to-date build, especially during testing and development.
2014-06-09 12:21:55 +08:00
Kalev Lember 46b0c29382 pixbuf-engine: Fix the build with -Werror=format-security 2014-05-23 11:19:53 +02:00
Chun-wei Fan 7eb1c7701c gdkselection-win32.c: Declare Variables At Top Of Block
...so that builds on Visual C++ can be fixed.
2014-05-16 12:07:01 +08:00
Matthias Clasen c9da8bddca GtkMountOperation: Clean up a dangling signal handler
Based on a patch by Eugene Shatokhin,
https://bugzilla.gnome.org/show_bug.cgi?id=723366
2014-05-06 13:38:50 -04:00
Marc-André Lureau fd44b53a39 gdk/win32: VK_SNAPSHOT maps to GDK_Print
Also, I am not sure the above VK_PRINT -> GDK_Print mapping is
correct, but it doesn't hurt yet.

https://bugzilla.gnome.org/show_bug.cgi?id=686170
2014-04-24 16:29:10 +02:00
Marc-André Lureau ed081e30b6 win32: do not crash on invalid utf8 conversion
g_utf8_to_utf16() is not guaranteed to succeed. Check the error
and return if it failed.

https://bugzilla.gnome.org/show_bug.cgi?id=696232
2014-04-24 16:18:09 +02:00
Marc-André Lureau 10430feb8d gdk/win32: remove extra allocation for \r removal
Although I can't find explicit documentation for clipboard pointer, it
seems to be possible to modify clibpoard memory without side-effects.

According to MSDN,
http://msdn.microsoft.com/en-us/library/windows/desktop/aa366596%28v=vs.85%29.aspx

"The global and local functions are supported for porting from 16-bit
code, or for maintaining source code compatibility with 16-bit
Windows. Starting with 32-bit Windows, the global and local functions
are implemented as wrapper functions that call the corresponding heap
functions using a handle to the process's default heap."

"Memory objects allocated by GlobalAlloc and LocalAlloc are in private,
committed pages with read/write access that cannot be accessed by other
processes. Memory allocated by using GlobalAlloc with GMEM_DDESHARE is
not actually shared globally as it is in 16-bit Windows. This value has
no effect and is available only for compatibility. "

https://bugzilla.gnome.org/show_bug.cgi?id=711553
2014-04-24 16:16:19 +02:00
Marc-André Lureau dd37429b51 win32: add more clipboard data checks to avoid crash
It may happen that the received clipboard data is empty, but
if it's of type image/bmp, gtk+ will crash:

gdk_property_change: 00030AD4 GDK_SELECTION image/bmp REPLACE 8*0 bits:
... delayed rendering
gdk_selection_send_notify_for_display: 00030AD4 CLIPBOARD image/bmp
GDK_SELECTION (no-op)
_gdk_win32_selection_convert_to_dib: 1252003C image/bmp

Program received signal SIGSEGV, Segmentation fault.
0x749a9f40 in msvcrt!memmove () from C:\Windows\syswow64\msvcrt.dll

Thread 1 (Thread 2248.0x1b34):
target=0xc07b) at gdkselection-win32.c:1292
at gdkevents-win32.c:3498
wparam=8, lparam=0) at gdkevents-win32.c:232
message=773, wparam=8, lparam=0)
    at gdkevents-win32.c:263
C:\Windows\syswow64\user32.dll
C:\Users\rugoosse\AppData\Local\virt-viewer\bin\libpangocairo-1.0-0.dll
wparam=0, lparam=-1687549457)
    at gdkevents-win32.c:248
C:\Users\rugoosse\AppData\Local\virt-viewer\bin\libpangocairo-1.0-0.dll

https://bugzilla.gnome.org/show_bug.cgi?id=728745
2014-04-24 16:07:58 +02:00
Chun-wei Fan a533c83e8d Visual Studio 2010 Projects: Revamp the Projects
As we are likely to have GTK+-2.x around for some time, revamp the Visual
Studio 2010 projects like what was done for rest of the GTK+ stack, namely:

-Split the property sheets, in a way like what was done for the rest of the
 stack.  Also clean up the resulting property sheets a bit, and update the
 projects to use these property sheets.
-Use UNIX line endings for all projects and property sheets, to ease future
 application of patches.
-Make the copying of config.h.win32 and gdkconfig.h.win32 into custom build
 rules, so that they may be removed properly and re-copied during change
 and update.
-Add a PlatformToolset tag, so if we want to support building with Visual
 Studio 2012/2013, the transition can be done quite easily with a script,
 such as what is now being done for the Visual Studio 2012 projects for
 GLib.
2014-04-02 22:05:03 +08:00
Chun-wei Fan 8ef1cff3bb Visual Studio 2008 Projects: Revamp the Projects
As we are likely to have GTK+-2.x around for some time, revamp the Visual
Studio 2008 projects like what was done for rest of the GTK+ stack, namely:

-Split the property sheets, in a way like what was done for the rest of the
 stack.  Also clean up the resulting property sheets a bit, and update the
 projects to use these property sheets.
-Use UNIX line endings for all projects and property sheets, to ease future
 application of patches.
-Make the copying of config.h.win32 and gdkconfig.h.win32 into custom build
 rules, so that they may be removed properly and re-copied during change
 and update.

Similar updates will be applied for the Visual Studio 2010 projects ASAP.
2014-04-02 17:57:13 +08:00
Michael Natterer 1f8d021d30 treeview: properly remove the timeout in expand_collapse_timeout()
or it will later warn about removing a source that doesn't exist.
2014-04-02 00:04:50 +02:00
Mike Gorse 60189143a4 Print to a file in the current directory by default
When printing to a file, the filename was not being propagated if a
directory was not specified.

https://bugzilla.gnome.org/show_bug.cgi?id=711177
2014-03-18 10:34:21 -05:00
Marek Kasik 378ea9029f printing: Fail nicely when /tmp is not writable
Don't crash when /tmp is not writable when printing to file.
Show that getting of printer details failed for CUPS printers.

https://bugzilla.gnome.org/show_bug.cgi?id=693200
2014-03-18 16:02:04 +01:00
Matthias Clasen 03014aa9c7 2.24.23 2014-03-17 21:34:01 -04:00
Hans Breuer 82310d48a8 Bug 634146 - Check g_win32_get_package_installation_directory_of_module() return value
Remaining part of patch from Joshua Element Green.

https://bugzilla.gnome.org/show_bug.cgi?id=634146
2014-03-16 13:59:06 +01:00
Marc-André Lureau 95985a2181 win32: free allocated gdi objects in 16bpp
In 16bpp, Gdk is creating hbitmap with CreateDIBSection() and a hdc with
CreateCompatibleDC(). Those 2 objects need to be released when the
pixmap is finalized.

https://bugzilla.gnome.org/show_bug.cgi?id=671538

Signed-off-by: Hans Breuer <hans@breuer.org>
2014-03-16 13:46:32 +01:00
Pavel 7ff6e601c3 exstyle changed after the window size adjustment
Originaly the size of the window based on the client area size has
been calculated first and then variables dwStyle and dwExStyle have
been changed. Thus the window size has been calculated for different
windows type then eventually used when calling CreateWindowEx. This
caused for example the Gimp tool windows to have different size than
formerly saved in session. The whole code calculating the window size
is moved after the last adjustment of dwExStyle variable in this patch.

Signed-off-by: Hans Breuer <hans@breuer.org>
2014-03-16 13:46:30 +01:00
Hans Breuer 6d329406ae Bug 665507 - Pixmap via cairo DIB breaks gdk_gc_set_stipple() use
Only one bitmap can be selected into a device context. Using the
DIB created by cairo consumes the one opportunity, so every further
SelectObject into the same DC in GDK code will fail.
2014-03-16 13:46:29 +01:00
Hans Breuer 479bc6e550 win32: restore effect of _gdk_selection_property_delete
Can not find in the changelog entry why it was disabled at all,
see: http://git.gnome.org/browse/gtk+/commit/?id=3f4c73

The ill effect is somewhat hidden: if you try to copy images
via clipboard only the first one is pastable, i.e. Gdk keeps
the reference to the first image and provides it for later
paste.
2014-03-16 13:46:27 +01:00
Marek Kasik e84bb08ded printing: Don't crash because of missing g_clear_pointer()
g_clear_pointer() is not available in glib-2.28 which is minimal
required version for gtk+-2.24.

https://bugzilla.gnome.org/show_bug.cgi?id=708783
2014-03-12 23:47:28 -04:00
John Ralls c5561f7e8c Bug 711298 - "Edit Scheduled Transaction" window way too modal
Put dialogs and utility windows in the same level as normal and
toolbar windows so that Gtk can control their stacking instead of
forcing them, rather unnaturally, to be on top of all other windows,
even other application windows, even when another application has
focus.
2014-01-24 14:00:26 -08:00
Matthias Clasen ba2dc98760 Update docs for GtkEntry::activate
Remove the 'you shall not connect' message from this signal.
While it is a keybinding signal, using it from applications is
fine and, in fact, expected.
2014-01-22 01:39:27 -05:00
William Jon McCann 8e721922f1 docs: Fix gdk_pixmap_new arguments in tutorial
https://bugzilla.gnome.org/show_bug.cgi?id=708119
2014-01-22 01:08:39 -05:00
Giovanni Campagna b7c6954f6f GtkFileChooser: fix documentation
https://bugzilla.gnome.org/show_bug.cgi?id=722496
2014-01-18 16:14:17 +01:00
Federico Mena Quintero a0a005def7 filechooser: Document the settings keys
This is so people can modify gnome-tweak-tool or whatever without directly diving into
the source.
2014-01-06 15:05:44 -06:00
Luis Menina 4a61ca28b1 Fixed GtkLabel documentation on links
An escaped '&lt;' wasn't complete, the 'lt' part was missing.
2013-12-21 15:54:29 +01:00
Marek Kasik 090159cec9 gdkwindow: Don't add the same window to "update_windows" twice
This prevents passing of such window to another GMainLoop.

https://bugzilla.gnome.org/show_bug.cgi?id=711552
2013-12-18 18:29:33 +01:00
Marek Kasik c212cb8f32 gdkwindow: Handle references in "update_windows" list correctly
Since update_windows list is a static variable in GdkWindow.c which
contains pointers to windows which needs to be updated, it can happen
that it contains a pointer to a window even after quit from a gtk_main().
If another gtk_main() is called in the same process it tries to process
windows in the list which leads to a crash.
Correct reference count handling of added windows prevents such applications
from crash.

https://bugzilla.gnome.org/show_bug.cgi?id=711552
2013-12-16 18:15:50 +01:00
John Ralls 2c01e7e78d Bug 651224 - Potential NULL display ptr from quartz gtk_clipboard_wait_for_contents 2013-12-09 11:38:51 -06:00
Benjamin Otte b7ab0ed129 iconfactory: Initialize varibale to NULL in failure path
Otherwise we use random memory and that is not good.
2013-12-06 12:02:22 -05:00
Carlos Garnacho e048de9cab ime: Add builtin handling of dead keys
The IME input method has been both ignoring keypresses of
non-spacing characters (ditching these as non displayable),
and not letting IME do anything about those.

Even though, the sparse documentation on IMM/IME seems to
hint that applications can't pipe non-spacing characters to
the input method manager, and experimentation shown that
those characters are indeed handled differently than how
it'd be expected.

Then, add basic handling of dead keys on the IME input method
itself , as it's not mutually exclusive with regular keymaps
with dead keys.

https://bugzilla.gnome.org/show_bug.cgi?id=704937
2013-12-05 10:12:24 -06:00
Jehan aa8704aa9f Bug 712536 - Themes with gap_(start|end)_file but no actual file crash
Code factorization in commit 34fd123 reintroduced bug fixed in 0d396ab
with non-equivalent factorized tests.
2013-12-05 01:08:18 +13:00
Matthias Clasen 4f47aa6ef5 GtkFileChooser: avoid a memory leak
The directory enumeration code was leaking references to
GtkFolder objects.

https://bugzilla.gnome.org/show_bug.cgi?id=705367
2013-12-01 17:13:01 -05:00
Matthias Clasen 9559c707d5 Avoid a crash in the pixbuf engine
This is fallout from e4c83bbfdb,
which removed a necessary check.
2013-12-01 17:12:08 -05:00
Matthias Clasen 3d0abd5cb0 Remove an unused struct member
AsyncFuncData.folder was entirely unused. Drop it.
2013-12-01 16:56:54 -05:00
Emmanuele Bassi e4c83bbfdb pixbuf-engine: Clean up error conditions and destructors
Simplify the error checks and move all common behaviour into a utility
function.

https://bugzilla.gnome.org/show_bug.cgi?id=712536
2013-11-22 22:19:58 -05:00
Emmanuele Bassi e2aabc016a pixbuf-engine: Improve ThemePixbuf clean up functions
Make theme_pixbuf_destroy() NULL-safe like g_free(), and add a clear
function in the spirit of the g_clear_* family of functions.

https://bugzilla.gnome.org/show_bug.cgi?id=712536
2013-11-22 22:19:58 -05:00
Jehan c988a258cc Themes with specified gap images but no actual file crash.
https://bugzilla.gnome.org/show_bug.cgi?id=712536
2013-11-22 22:19:58 -05:00
Matthias Clasen e09719b12d Prevent a possible warning
When doing updates, gtk_progress_bar_real_update can calculate
compute a negative value for activity_pos.

If the allocation width is smaller than (xthickness + size),
pbar->activity_pos will be set to a negative value and this will
cause the drawing code to emit a warning about coordinates being
out of bounds.

Prevent this by keeping the value at least 0.

https://bugzilla.gnome.org/show_bug.cgi?id=701751
2013-11-09 23:51:50 -05:00
Cody Russell 280fc402be Win32: Honor the geometry when GDK_HINT_MAX_SIZE is set.
The MINMAXINFO struct was being populated based upon geometry hints when
GDK_HINT_MAX_SIZE flag was enabled, then promptly having its values blown
away with default values.

https://bugzilla.gnome.org/show_bug.cgi?id=711110
2013-10-31 15:58:41 -05:00
Federico Mena Quintero 352257a9c1 bgo#710936 - Fix typo in Japanese translation 2013-10-28 15:00:23 -06:00
Matthias Clasen fc201ba87c Bump version 2013-10-11 08:43:20 -04:00
Matthias Clasen d4538cf96c 2.24.22 2013-10-11 05:57:31 -04:00
Matthias Clasen b1813c9c79 Fix build 2013-10-06 00:48:50 -04:00
Dominique Leuenberger 71560f2b55 Support automake 1.14
https://bugzilla.gnome.org/show_bug.cgi?id=709293
2013-10-05 23:25:59 -04:00
Matthias Clasen 1b8d3b9210 Actually look in /usr/share/gtk-2.0 for default rc files
I managed to forget the 'share' component of the path.
2013-09-30 12:51:39 -04:00
Balázs Úr 88da0ce47f Updated Hungarian translation 2013-09-22 11:39:26 +02:00
Matthias Clasen 13ffc6c71d Post-release version bump 2013-09-17 11:47:02 -04:00
Matthias Clasen 51f4e42591 2.24.21 2013-09-17 10:45:29 -04:00
Matthias Clasen c915afe98c Disable filechooser test
It does't work in make distcheck.
2013-09-17 10:45:29 -04:00
Matthias Clasen b81e8de3ff Make filechooser test pass 2013-09-17 10:21:58 -04:00
Theppitak Karoonboonyanan 4437ccb89f Updated Thai translation. 2013-09-11 17:32:28 +07:00
Behdad Esfahbod 2eade26e68 [gdkcairo] Fix color premultiplication
https://bugzilla.gnome.org/show_bug.cgi?id=513812
2013-09-09 12:08:26 -04:00
Matthias Clasen 956f5e3f6b Fix config dir <> data dir confusion
We added code to look for gtkrc in system config dirs,
and then proceeded to move it to /usr/share/gtk-2.0 :-(.
So, look in that location as well.
2013-09-06 09:49:54 -04:00
Ek Kato 541aa72f86 Fix missing return from quartz_filter_keypress
(cherry picked from commit 0ae728e242)
2013-08-29 14:13:31 -07:00
David King eb3d9dc3dd combobox: Add missing Since tags for entry constructors 2013-08-22 20:26:39 +01:00
Ek Kato a2149a671a Bug 705750 Quartz input method doesn't work correctly for Chinese characters 2013-08-16 10:25:25 -07:00
Cody Russell 36e26c8a03 Fix a crasher that was introduced by 9ca802161e
due to preedit_str being initialized as an empty string rather than NULL.
2013-08-15 15:11:50 -05:00
Michael Hutchison 5af66c3f0d Bug 705182 Reset Cocoa IME state when immodule is reset
Commits the pre-edit string on receipt of focus_out and reset
commands.
Patch refinements by Cody Russell <bratsche@gnome.org> and
Ek Kato <ek.kato@gmail.com>
2013-08-15 10:06:13 -07:00
Aleksander Morgado cc2d29771d win32: avoid assertion when creating a GdkPixmap fails
If gdk_pixmap_new() fails (e.g. CreateDIBSection() failure) we end up
g_object_unref()-ing the temporary GdkPixmap, and we do this before having set
the drawable_impl->hdc and drawable_impl->hdc_count. Now, this could have just
been a couple of warnings being dumped, but instead it really crashes the
application because in win32-specific GdkDrawable's finalize() we assert if
drawable_impl->hdc_count is not zero:

Gdk:ERROR:gdkdrawable-win32.c:2047:_gdk_win32_drawable_finish: assertion failed: (impl->hdc_count == 0)

In order to avoid this crash, we make sure we don't decrement the hdc_count in
the GdkPixmap's finalize() unless we have it set first (i.e. we avoid hdc_count
going down to -1).

https://bugzilla.gnome.org/show_bug.cgi?id=699236
2013-08-14 10:31:36 +02:00
Ek Kato 8fa5cf0554 Bug 705181 Annoying beep on arrow keys
Original patch was a bit excessive, just needed to not forward the command.
2013-08-13 11:14:29 -07:00
John Ralls 49fd2b2b46 Bug 701571 NSApp doesn't notice NSWindow destruction
Part 1 of the fix; part 2 awaits Glib developer approval (see
https://bugzilla.gnome.org/show_bug.cgi?id=704374) and is more
correctly associated with
https://bugzilla.gnome.org/show_bug.cgi?id=674108
2013-08-11 11:02:14 -07:00
Daniel Sabo 80aabf4f1c Reset cursor when mouse leaves a toplevel window.
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=692548
2013-08-08 09:36:28 -05:00
Michael Hutchinson 91bcca6f39 Bug 705181: Fix annoying beeping introduced by Mac IME
NSTextInputClient should not chain unhandled commands to super
2013-07-30 17:17:29 -07:00
Aleksander Morgado 4ecbef0791 win32: always recreate the cairo surface if requested to do so
When _gdk_windowing_create_cairo_surface() gets called, we should always create
a fully new cairo surface, instead of just referencing the available one, which
may already be finished (i.e. in CAIRO_STATUS_SURFACE_FINISHED state).

A new user_data key is added to the surface to explicitly release the acquired
DC when the surface is destroyed, independent to the user_data key added to
clear the impl->user_data pointer.

https://bugzilla.gnome.org/show_bug.cgi?id=695636
2013-07-30 00:10:53 -04:00
Matthias Clasen d33c1cf412 Limit includes in gtksignal.h
https://bugzilla.gnome.org/show_bug.cgi?id=536767
2013-07-29 22:34:53 -04:00
Matthias Clasen 280cf4ca94 X11: Fix the cut-off for too large windows
We can only handle 2^15-1 pixels, not 2^16-1.
Pointed out by Morten Welinder.

http://bugzilla.gnome.org/show_bug.cgi?id=698758
2013-07-29 20:57:00 -04:00
John Ralls 12fe6a9a1a Bug Bug 703789 - gtk.immodules still referenced
After switch to immodules.cache
2013-07-28 13:59:55 -07:00
Ek Kato 43ed68aa33 Bug 701332 - Patch for minor glitch in NSTextInput 2013-07-27 13:55:39 -07:00
Takuro Ashie c064e18894 imquartz: Fallback to slave IM context if no NSEvent exists.
When an application translates a key event and drop its native event
before passing to imquartz, it can't recognize the NSEvent. On this
case imquartz doesn't emit any signals such as "commit" signal so
that the application doesn't insert any text. To avoid no response,
at least imquartz should fallback to slave GtkIMContextSimple.

https://bugzilla.gnome.org/show_bug.cgi?id=694273#c27
2013-07-27 13:52:39 -07:00
Marc-Antoine Perennou 71b73e04d5 build: fix --disable-man
The third argument to AC_ARG_ENABLE is the action done when
the argument is specified, not when it is enabled.
This resulted in --disable-man enabling those.

Signed-off-by: Marc-Antoine Perennou <Marc-Antoine@Perennou.com>
2013-07-26 13:58:21 +02:00
Michael Natterer bbcde7e380 quartz: fix crashes that sometimes happened on the first key press
because nobody has called gdk_keymap_get_for_display() before.
Now we simply make sure the default display's keymap exists
if somebody calls any gdk_keymap_*() function with a NULL
keymap (which is an allowed value).
2013-07-25 16:44:21 +02:00
Jehan 561d1c6358 gtkdialog - more informative warning when ordering unexisting response_id
(cherry picked from commit 0e4d9b7793)
2013-07-21 21:59:03 +09:00
Hib Eris c8d52c018b Define INITGUID only for mingw.org compiler
Defining INITGUID causes a build failure with mingw-w64 > r5589.

https://bugzilla.gnome.org/show_bug.cgi?id=699673

(cherry picked from commit 6a71820ff3)
2013-07-13 16:13:08 +02:00
Matthias Clasen 158fc5d9e0 2.24.20 2013-07-04 10:02:29 -04:00
Matthias Clasen 54c020204f Let query utilities update the cache file directly
This is much more convenient for packagers than having to
redirect the output into the cache file, and much less error-prone.
2013-07-04 09:34:25 -04:00
Matthias Clasen c884904686 Move the module cache files below libdir
These files contain architecture-dependent paths, and thus placing
them into sysconfdir causes unnecessary hassle. Now the immodule cache
file is looked for in libdir/gtk-2.0/2.10.0/immodules.cache.

Belated backport of a change that was done in the run-up to 3.0.
2013-07-04 09:34:18 -04:00
Matthias Clasen 602b44020a Look for rc files in system config dirs as well
This will allow us to ship package defaults in /usr instead
of /etc.
2013-07-04 09:06:29 -04:00
Piotr Drąg 4c6cd0fa12 Updated Polish translation 2013-06-26 16:38:58 +02:00
Marek Kasik a057ed26dc printing: List Avahi printers
Show printers advertised by avahi on local network. CUPS
backend now looks for _ipps._tcp and _ipp._tcp services
offered by avahi. If it finds such a service (printer)
it requests its attributes through IPP_GET_PRINTER_ATTRIBUTES
ipp request and adds it to the list of printers. Such printer
behaves like a remote printer then.
If an avahi printer is a default printer then it is considered
default by the backend only if there is no local or remote
default printer.
This functionality is enabled when building Gtk+ with CUPS 1.6
or later because it replaces browsing protocol removed in CUPS 1.6.

https://bugzilla.gnome.org/show_bug.cgi?id=702455
2013-06-25 14:43:43 +02:00
Valerio Messina 4292fb433c GtkFileChooser: Missing hour on today's files for it&hu locales on Win32
The file chooser does not show the hours for files modified today
when using it & hu locales on Win32.  This is due to the %k format conversion
for strftime() that is in Olson's Timezone Package, which msvcrt.dll doesn't have.
Cygwin has it, though.

So for now, we just use a %H format.  While %k would render
six-in-the-morning as " 6" (6 preceded by a space), %H will render it
as "06".

https://bugzilla.gnome.org/show_bug.cgi?id=560337
2013-06-20 15:16:29 -05:00
Michael Natterer e62709da2e quartz: remove check for keymap changes from update_keymap()
The function is now only called when the keymap has actually
changed. bug #698183.
2013-06-20 17:22:43 +02:00
Michael Natterer c2919a6e91 quartz: update the keymap only if the input method changed
and not on each keystroke, which for some IMs apparently caused a full
update on each keystroke, not just a check for changes. Patch from
Takuro Ashie, bug #698183.
2013-06-20 16:59:03 +02:00
Aleksander Morgado 99e3d072d6 win32: don't convert '\n' to '\r\n' when copying if it already is '\r\n'
https://bugzilla.gnome.org/show_bug.cgi?id=649390
2013-06-18 09:24:06 +02:00
Matthias Clasen 0828a34333 2.24.19 2013-06-16 11:04:03 -04:00
Emmanuele Bassi 162430fe5a settings: Move setting property registration in gtksettings.c
Some GtkSettings property are registered by other classes. This leads
to the "interesting" issue that setting GtkSettings:gtk-button-images
requires that the GtkButton class is referenced first - or that a
GtkButton is created.

https://bugzilla.gnome.org/show_bug.cgi?id=632538

This commit is a cherry-pick from master which (sadly) fixed the issue
only after we started the 2.9x work, and I completely forgot to backport
it. This is needed because GTK 2.x started tripping the warning added in
GObject by this bug:

https://bugzilla.gnome.org/show_bug.cgi?id=698614

Cherry-picked-from: 9f9edb662e
Signed-off-by: Emmanuele Bassi <ebassi@gnome.org>
2013-06-10 16:05:27 +01:00
Michael Natterer 59d49e1566 quartz: move dialogs to the same window level as utility windows
window_type_hint_to_level(): applied patch from Paul Davis which moves
dialogs to NSFloatingWindowLevel. This is not quite the perfect
solution, but it's a pragmatic fix that makes apps which have both
window types much more usable, and prevents dialog from disappearing
under an application's main window.
2013-06-06 15:39:53 +02:00
Marek Kasik 7b5e7a72fc printing: Show correct status of a job
"job-state" is IPP_TAG_ENUM not IPP_TAG_INTEGER.
2013-06-06 11:14:21 +02:00
Michael Natterer 1a4132a72e gtk: queue_resize() the GtkCellView when its cells change
in pack_start(), pack_end(), clear(), also queue_resize() in
set_model().  Remove calls to queue_draw() in other functions that
already call queue_resize().
2013-06-03 16:33:57 +02:00
Hendrik Knackstedt efa63c5970 Updated German translation 2013-05-30 23:37:10 +02:00
Wolfgang Stoeggl c9aec6da02 Updated German translation 2013-05-30 23:35:33 +02:00
Tilman Sauerbek 3b82c12d3e filechooser: Fix leak when a shortcut disappears from the filesystem
https://bugzilla.gnome.org/show_bug.cgi?id=432386
2013-05-30 10:21:55 -05:00
Michael Natterer 9754c51349 quartz: honor more source image properties in _gdk_quartz_image_copy_to_image()
Particularly look at the source image's byte order when making a
screenshot of the "root window" (which is the window stack). Make
the code more generic so it can handle all sorts of pixel formats.
2013-05-28 16:03:13 +02:00
Jehan 8368de2bc3 Bug 575767: fix crashes when XInput device disappears.
Ignore X11 errors from querying state of unplugged input devices.
GTK+ 3 handle this better with hotplugging support in XInput 2, but
this is working workaround for avoiding ugly crashes and data loss
with GTK+ 2.
2013-05-23 05:50:01 +09:00
Colin Walters 28ac40f0f9 modules/input: Only build quartz module if we're targeting quartz
Otherwise the build is broken on GNU/Linux and Win32.
2013-05-20 14:06:32 -04:00
E K Kato 21c775a2c8 Bug 694273 - Support for NSTextInputClient in text widgets 2013-05-20 10:03:17 -07:00
Matthias Clasen 1e96603577 Fix drawing of treeview grid lines
In the presence of invisible columns, the grid line drawing
code was malfunctioning.

https://bugzilla.gnome.org/show_bug.cgi?id=700578
2013-05-18 19:09:39 -04:00
Matthias Clasen 8fe6659eb6 Bump version 2013-05-13 09:16:07 -04:00
Matthias Clasen 9f16fc1b00 2.24.18 2013-05-13 08:02:50 -04:00
Rémi Cardona 8b719abcbb Remove dangling weak-refs to TreeModel object
When a tree view is detroyed, its GailTreeView is destroyed as well but the
weak references are kept and thus point to a freed memory block. A
segfault may arise when the model is destroyed in turn and the weak-ref
mechanism tries to clear the pointers in freed memory.

This patch removes the weak references either when the GailTreeView is
being freed or when a new model is attached to the underlying GtkTreeView.

https://bugzilla.gnome.org/show_bug.cgi?id=694711
2013-05-09 11:55:46 -04:00
Aleksander Morgado 0df60513cb win32: ensure proper error is reported when CreateDIBSection() fails
GetLastError() should be called immediately after the failure, so call
WIN32_GDI_FAILED() just after the CreateDIBSection() error, not after
ReleaseDC().

https://bugzilla.gnome.org/show_bug.cgi?id=698563
2013-04-29 14:27:33 +02:00
Nik Kalach 330b9635b0 [l10n] Update Interlingua translation 2013-04-24 16:00:03 +02:00
Michael Natterer ba5ac33cdc entry: unset the completion in dispose() not finalize()
Most likely fixes whatever evil gail interaction causing a crash I
could never reproduce but has been reported several times against GIMP.
The same fix is in GTK+ 3.x already (bug #683983).
2013-04-21 05:09:52 +02:00
Alexander Larsson 692a0e5906 gdkwindow: Handle updates created by outstanding moves in same update
If gdk_window_flush_outstanding_moves() creates new update area
we handle this directly in the same draw to avoid flashing.

This mainly affects win32 as X11 does its exposes from moves async.
However, its important for win32 since ScrollDC seems to sometimes
invalidate (and not copy) unexected regions.

http://bugzilla.gnome.org/show_bug.cgi?674051
2013-04-10 14:32:15 +02:00
Alexander Larsson ea66a8a580 win32: Report ScrollDC update region directly
Rather than set the window update region and repaint this region
when we get a WM_PAINT we just directly add it to the update
region. No need to roundtrip via win32.

This lets us also make sure we do this drawing in the same update
cycle. This seems especially important on Win7, because ScrollDC
seems to act kind of weird there, not using bitblt in areas where
it seemingly could, which makes scrolling look really flashy.

http://bugzilla.gnome.org/show_bug-cgi?id=674051
2013-04-10 14:25:26 +02:00
Alexander Larsson 4f27256306 Make gdk_flush_outstanding_moves "reentrant"
If the do_move_region_bits_on_impl causes updates they will
only be affected by the moves we haven't done yet.
We do this by making sure the outstanding_moves list is uptodate
on ever iteration of the loop.
2013-04-10 14:04:26 +02:00
Alexander Larsson f1921f8c2f win32: Fix build
gdkwindown-win32.c included windows.h directly rather than via gdkwin32.h
which broke the build for me at least. Instead rely on it being included in
gdkwin32.h and things work right.
2013-04-10 09:37:59 +02:00
Carlos Garnacho d7e3f6f9f8 quartz: Fix call to missing symbol
This patch can be considered a leftover of commit a269c2f8d2 ,
replace the no longer existing function with the GDK function
meant to replace it.

This was noticeable on regular clipboard operations in quartz
2013-04-09 12:33:13 +02:00
Christophe Fergeau 3acacc0384 Sanitize memory handling in cups_request_printer_list_cb
gtk+ was trying to display already freed strings, leaking memory,
...I noticed this because I was getting weird blinking characters
as the status of my cups printers, and valgrind confirmed something
was wrong.

https://bugzilla.gnome.org/show_bug.cgi?id=683072
2013-04-08 11:15:50 +02:00
Balázs Úr 8f3a3403ff Updated Hungarian translation 2013-04-04 21:58:15 +02:00
Michael Natterer 0909d7cee6 Revert "gdk: merge all 3.x changes to gdk_keysym_to_unicode_tab[] in gdkkeyuni.c"
This reverts commit 67438e0e49.

There must be some other change in 3.x that goes along with these
table changes, they completely break e.g. GtkEntry.
2013-03-30 08:42:58 +01:00
Michael Natterer 67438e0e49 gdk: merge all 3.x changes to gdk_keysym_to_unicode_tab[] in gdkkeyuni.c 2013-03-28 14:33:59 +01:00
Kristian Rietveld a269c2f8d2 quartz: move atom/pasteboard type conversions functions to GDK 2013-03-28 13:00:33 +01:00
Kristian Rietveld e6cf7a8d81 quartz: define GDK_NATIVE_WINDOW_POINTER 2013-03-28 12:06:41 +01:00
Balázs Úr 9582638a6b Updated Hungarian translation 2013-03-20 22:20:43 +01:00
Chun-wei Fan 7674fc9683 Visual Studio builds: Fix the Debug configs
The debug builds must link to the Debug version of the CRT, otherwise
trouble will arise due to the mixing of different CRTs
2013-03-18 17:27:21 +08:00
Chun-wei Fan 011bb7ccdc VS2008 Projects: Drop gdk-pixbuf Projects
The GDK-Pixbuf Visual Studio 2008 project files have long been moved and
maintain in the gdk-pixbuf project, soon after that was made independent
from the GTK+ project, so these files should no longer exist in the GTK+
git repo, especially as they are no longer distributed for a long time.
2013-03-18 17:27:20 +08:00
Federico Mena Quintero e11b1943c7 filechooserbutton: Duh, remove all the timeouts after tests
Otherwise tests may start failing if they start after an old timeout triggers.

Signed-off-by: Federico Mena Quintero <federico@gnome.org>
2013-03-12 18:29:30 -06:00
Federico Mena Quintero 1dee58ba87 filechooserbutton: Add a description string to assertions about emitted signals
On failed tests, this lets us more easily see see which assertion failed.

Signed-off-by: Federico Mena Quintero <federico@gnome.org>
2013-03-12 18:29:26 -06:00
Federico Mena Quintero ca7fe8417a filechooserbutton: Give proper names to the SELECT_FOLDER tests with cancelled dialog
Signed-off-by: Federico Mena Quintero <federico@gnome.org>
2013-03-12 18:29:22 -06:00
Federico Mena Quintero 852c2f06f0 filechooserbutton: Don't duplicate tests for GTK_RESPONSE_DELETE_EVENT
Instead, re-run tests made for GTK_RESPONSE_CANCEL with the delete-event response.

Signed-off-by: Federico Mena Quintero <federico@gnome.org>
2013-03-12 18:29:18 -06:00
Federico Mena Quintero aaa922bedb filechooserbutton: Do not propagate state from the dialog unless it is active
Change of plans to match the tests from the previous commit.

The state of the underlying dialog is never reflected by GtkFileChooserButton's API,
as the dialog is a transient thing.  The file chooser button only updates its state from the dialog,
and reflects the dialog's state, when the dialog has been confirmed and dismissed by the user.

Signed-off-by: Federico Mena Quintero <federico@gnome.org>
2013-03-12 18:29:15 -06:00
Federico Mena Quintero aa958f089d filechooserbutton: whitespace fixes 2013-03-12 18:29:11 -06:00
Federico Mena Quintero 29ed8d781e filechooserbutton: For the open-dialog-cancel-* tests, add a real nomenclature and test all the combinations
We used to have numeric names, which are a pain to maintain when new tests are added.
Now we have a real nomenclature (see the comment at the beginning of the open-dialog-cancel-* tests),
which lets us see easily if we have tested all the combinations.

Also, added all the combinations that were missing and removed redundant tests.
Not all the tests pass currently.

Signed-off-by: Federico Mena Quintero <federico@gnome.org>
2013-03-12 18:29:06 -06:00
Federico Mena Quintero 9cfec7d3db filechooserbutton: Update the button's state only on programmatic changes to the filechooser's state
The idea is that the button will only update its state of the selection and current folder
when changes to those are done either by the calling program (with the filechooser's API)
or when the user actually confirms and dismisses the underlying GtkFileChooserDialog.

If the user makes changes to the dialog but has not dismissed it yet, those changes
will not be reflected in the button (as one would expect).

This commit also makes sure the current-folder-changed and selection-changed signals
are emitted at the right times.

Signed-off-by: Federico Mena Quintero <federico@gnome.org>
2013-03-12 18:29:02 -06:00
Federico Mena Quintero f9f76a3a0f filechooserbutton: Emit 'selection-changed' when changing the selection programmatically
We only emitted that signal when the selection changed through the underlying GtkFileChooserDialog.

To do this when the dialog is not active and the selection is changed by the calling program
(instead of by the user), we need to wait until the GtkFileChooserButton's UI has been updated
via an async callback from GIO.  So, we keep track of whether an entry point into the
button's API caused a programmatic change in the selection.

Signed-off-by: Federico Mena Quintero <federico@gnome.org>
2013-03-12 18:28:59 -06:00
Federico Mena Quintero 2b6db9fb31 filechooserbutton: For tests, wait for signals instead of just sleeping
This should let tests complete faster.  Also, this will let us test
that the correct signals are actually being emitted.

The tests now fail, as the signals are not being emitted when they
should.

Signed-off-by: Federico Mena Quintero <federico@gnome.org>
2013-03-12 18:28:55 -06:00
Federico Mena Quintero bc604fe9f0 filechooserbutton: whitespace fixes 2013-03-12 18:28:50 -06:00
Federico Mena Quintero d09b75b9ed filechooserbutton: During unselect_all(), update the widgets in all situations
Not just if we thought we had a selection.

Signed-off-by: Federico Mena Quintero <federico@gnome.org>
2013-03-12 18:28:41 -06:00
Federico Mena Quintero 2368a31984 filechooserbutton: Add tests for unselect_all()
These all pass except one.
2013-03-12 18:28:37 -06:00
Federico Mena Quintero 15f9422adf filechooserbutton: HACK: Set a reasonable size for the dialog in the tests' second iteration
Something is causing the GtkFileChooserDialog to be resized really small on the second time it is run
during each test for GtkFileChooserButton.  So as a temporary hack we set it to 500x500 pixels on
the second run, so the size allocation code doesn't bomb on us.
2013-03-12 18:28:29 -06:00
Federico Mena Quintero a37a8158bb gtkfilechooserbutton: In tests, allow the possibility of doing unselect_all 2013-03-12 18:28:23 -06:00
Federico Mena Quintero 82a5a0240c filechooserbutton: When the combo box changes, set the *file*, not the current folder
The currently-selected file *is* the selection even in SELECT_FOLDER mode.  Do not confuse this
with the current folder.

Signed-off-by: Federico Mena Quintero <federico@gnome.org>
2013-03-12 18:28:13 -06:00
Aleksander Morgado b994bcd4f2 combobox: popdown the combobox when on 'grab-broken-event'
And also explicitly remove pointer/keyboard grabs from the display.

Whenever the grab is reported lost, we should popdown the combobox, so that the
GDK_WINDOW_TEMP window is hidden and removed from the toplevel, as done with
the menu for example.

Leaving the GDK_WINDOW_TEMP window open when re-activating the application
triggers several issues in the win32 backend, due to restacking windows of the
non-toplevel group into the toplevel group:

https://bugzilla.gnome.org/show_bug.cgi?id=695200
2013-03-12 12:42:21 +01:00
Federico Mena Quintero 979e8bd9ec filechooserbutton: Update the combo box even after the dialog is cancelled
We assumed that we didn't have to update the combo box if the dialog got cancelled,
as it should simply retain its previous contents.  But this assumption doesn't work
as the dialog is brought up with the 'Other...' item - we don't want the
combo box to keep showing 'Other...' if the dialog is cancelled.

The test from the previous commit now passes.

Signed-off-by: Federico Mena Quintero <federico@gnome.org>
2013-03-08 12:58:02 -06:00
Federico Mena Quintero e16591780d filechooserbutton: New test for opening the Other item in the combo box and then canceling the dialog
There is this bug:

1. Start with a file chooser button in SELECT_FOLDER mode, and select a folder from the combo box.

2. Click on the button's combo box, select 'Other...'

3. You get the file chooser dialog. Cancel the dialog.

4. The file chooser button's combo box still shows 'Other...' instead of
   showing the selection from (1).

This is a test to ensure that the original selection is restored.
The test fails right now.

Signed-off-by: Federico Mena Quintero <federico@gnome.org>
2013-03-08 12:57:58 -06:00
Federico Mena Quintero dc5c12b437 filechooserbutton: Sync the tests a bit with the master branch
The tests fail right now in gtk-2-24 because accessibility is not available out of the box.
2013-03-08 11:13:12 -06:00
Federico Mena Quintero 6dc11c26a8 filechooserbutton: Don't show the (None) item when the combo box is popped up
This is surprisingly tricky, since the (None) item *has* to be a visible item while
the combo box is *not* popped up, so that it can show its contents.  But the item
has to be *not* visible when the combo box is popped up.

Also, update the whole button's selection, not just the underlying dialog's, when
the combo box changes its selection - based on a patch by Paul Davis in
https://bugzilla.gnome.org/show_bug.cgi?id=691040#c20

Signed-off-by: Federico Mena Quintero <federico@gnome.org>
2013-03-08 10:56:49 -06:00
Federico Mena Quintero b714446fd8 filechooserbutton: In SELECT_FOLDER, when the selection is empty, show (None) in the combo box
We do this by adding a new row type, ROW_TYPE_EMPTY_SELECTION.

Signed-off-by: Federico Mena Quintero <federico@gnome.org>
2013-03-08 10:54:43 -06:00
Federico Mena Quintero a72b31bac1 filechooserbutton: Update the button/combo at construction time
This way the internal labels will show the correct selection even if nothing
has been selected programmatically.

Signed-off-by: Federico Mena Quintero <federico@gnome.org>
2013-03-08 10:54:39 -06:00
Federico Mena Quintero 6fb7087758 filechooserbutton: Update the button/combo whenever the selection is changed programmatically
We didn't change it when the file chooser button's dialog was inactive, and so
the actual file chooser button would not visually reflect the current selection.

Signed-off-by: Federico Mena Quintero <federico@gnome.org>
2013-03-08 10:54:32 -06:00
Federico Mena Quintero c4b47464a2 filechooserbutton: Test that the expected filename is shown
We do some gymnastics to pull the string out of the GtkButton or the GtkComboBox that is
being used in GtkFileChooserButton to show the current selection when the dialog
is inactive - namely, we look for the subwidget with the correct ATK role, and pull its
accessible name.

Currently the test fails; this is https://bugzilla.gnome.org/show_bug.cgi?id=691040#c18

Signed-off-by: Federico Mena Quintero <federico@gnome.org>
2013-03-08 10:54:08 -06:00
Aleksander Morgado b2a65ebfb6 spinbutton: don't override initial text in non-numeric-only spin buttons
https://bugzilla.gnome.org/show_bug.cgi?id=695312
2013-03-08 11:23:58 +01:00
Federico Mena Quintero 461c1a547e Remove some unused variables 2013-03-06 12:42:24 -06:00
Federico Mena Quintero 3c993547a4 filechooser: Use _gtk_file_has_native_path() throughout when testing for local_only
In the case of checking for local_only, g_file_is_native() is not useful, since it
will return FALSE for something in a FUSE mount.

Signed-off-by: Federico Mena Quintero <federico@gnome.org>
2013-03-06 12:25:43 -06:00
Federico Mena Quintero 7a93355977 filechooser: Also convert get_uris() to returning native paths
It was only being done in gtk_file_chooser_get_uri().

Signed-off-by: Federico Mena Quintero <federico@gnome.org>
2013-03-06 12:08:03 -06:00
Federico Mena Quintero f907d16329 filechooser: Rename _gtk_file_is_path_not_local() to _gtk_file_has_native_path()
Negatives in names of boolean functions are confusing.

Signed-off-by: Federico Mena Quintero <federico@gnome.org>
2013-03-06 12:07:12 -06:00
Timothy Arceri 5d32c05578 filechooser: Show FUSE mounted locations in shortcuts
Since FUSE locations can be handled safely by applications show these mounted locations regardless of whether gtk_file_chooser_set_local_only()
is set to TRUE

https://bugzilla.gnome.org/show_bug.cgi?id=586367
2013-03-06 12:05:37 -06:00
Alan McGovern 776fc82bd5 quartz: Null check title before setting it
This avoids a crash in objective-c.

https://bugzilla.gnome.org/show_bug.cgi?id=695278
2013-03-06 12:40:23 +01:00
Cosimo Cecchi 3087e8b74e Revert "entry: never use GTK_STATE_ACTIVE to paint the background"
This reverts commit 87115e00a8.

https://bugzilla.gnome.org/show_bug.cgi?id=695003
2013-03-05 17:50:01 -05:00
Matthias Clasen eb89bf1729 Bump version 2013-03-04 11:10:33 -05:00
Matthias Clasen ed543bdccf 2.24.17 2013-03-04 08:50:35 -05:00
Changwoo Ryu b01f90b8d1 immodule: Fix context ID lookup on module with multiple contexts
https://bugzilla.gnome.org/show_bug.cgi?id=690247
2013-03-04 13:07:10 +09:00
Aleksander Morgado 461c3835aa win32: fix possible memleak if GlobalAlloc() fails
Also remove the unused 'buf' variable.

https://bugzilla.gnome.org/show_bug.cgi?id=694742
2013-02-26 15:14:35 +01:00
Federico Mena Quintero 8eb2278f6a filechooserbutton: Don't ever use gtk_file_chooser_get_files()
The file chooser button only supports single-selection modes, so
switch the code to a simpler gtk_file_chooser_get_file() to avoid
dealing with GSLists of a single file.

Signed-off-by: Federico Mena Quintero <federico@gnome.org>
2013-02-21 18:44:38 -06:00
Руслан Ижбулатов d9f87ff098 Make sure icon cache has /-separated subdirs only (v2 - use g_build_path)
https://bugzilla.gnome.org/show_bug.cgi?id=692955
(cherry picked from commit 8e80fd1ab9)

Conflicts:
	gtk/updateiconcache.c
2013-02-21 19:44:47 +01:00
Federico Mena Quintero 2cc67fc109 filechooserbutton: In tests, sleep after opening the dialog
This may ensure that the dialog is actually done initializing.  We need to kill this
sleeping business and really use signals, sigh...

Signed-off-by: Federico Mena Quintero <federico@gnome.org>
2013-02-20 18:52:23 -06:00
Federico Mena Quintero f8de7b1757 filechooserbutton: Don't emit file-set signal when the change is not the result of a user action
We only emit that signal when the user confirms the button's internal GtkFileChooserDialog,
or when he drags-and-drops stuff into the button.

Signed-off-by: Federico Mena Quintero <federico@gnome.org>
2013-02-20 18:30:30 -06:00
Federico Mena Quintero a05d51e7ab filechooserbutton: In the tests, run through the dialog more than one time
This ensures that data maintained by the button while the dialog opens/closes remains consistent.

Signed-off-by: Federico Mena Quintero <federico@gnome.org>
2013-02-20 18:29:04 -06:00
Federico Mena Quintero 2f396a74f3 filechooserbutton: Add tests for cancelling the dialog via closing it (delete-event), instead of by simulating the Cancel button (response cancel)
Signed-off-by: Federico Mena Quintero <federico@gnome.org>
2013-02-20 18:14:15 -06:00
Federico Mena Quintero 65cf6295f7 filechooser: When stopping/clearing BROWSE model, really ensure that we end up in LOAD_EMPTY state
Previously we could end up in a situation where browse_list_model==NULL, and yet load_state==LOAD_FINISHED.
This is not a valid state.  So, when we get rid of the list model, really ensure that we end up
in LOAD_EMPTY so nothing assumes that there is a valid list model around.

Signed-off-by: Federico Mena Quintero <federico@gnome.org>
2013-02-20 18:02:24 -06:00
Federico Mena Quintero a070d75a2f filechooser: Tighten up some assertions when actually selecting files in the treeview
The model must be fully loaded, and it must be inserted in the treeview.

Signed-off-by: Federico Mena Quintero <federico@gnome.org>
2013-02-20 17:29:05 -06:00
Cosimo Cecchi c56f508993 release: post-release version bump 2013-02-18 14:36:04 -05:00
Cosimo Cecchi 67771adfd0 release: doc updates for 2.24.16 2013-02-18 14:31:23 -05:00
Cosimo Cecchi e99827cb19 release: update NEWS for 2.24.16 2013-02-18 13:58:50 -05:00
Cosimo Cecchi c25c2f0a41 Comment out a file chooser test that doesn't pass 2013-02-18 13:58:50 -05:00
William Hua 950084ae18 Make GtkItemFactory produce GtkSeparatorMenuItems.
https://bugzilla.gnome.org/show_bug.cgi?id=694077
2013-02-18 13:40:00 -05:00
Federico Mena Quintero 0004fe6cd4 filechooser: Remove test directory from testfilechooserbutton 2013-02-13 17:44:38 -06:00
Federico Mena Quintero 81df0059cb filechooserbutton: Add tests for SELECT_FOLDER mode with the dialog active
Signed-off-by: Federico Mena Quintero <federico@gnome.org>
2013-02-13 15:21:12 -06:00
Federico Mena Quintero 747a514cfb filechooser: Oops, cancel a file operation that was missing
In addition, remove a list of pending_cancellables that was no longer being used.

Signed-off-by: Federico Mena Quintero <federico@gnome.org>
2013-02-13 15:10:08 -06:00
Federico Mena Quintero 670fcf2c41 filechooserbutton: Add a battery of tests for GtkFileChooserButton
These are generic tests that can test the button in all of its modes,
instead of hand-written tests for each combination.

Some tests fail currently.

Signed-off-by: Federico Mena Quintero <federico@gnome.org>
2013-02-13 13:50:57 -06:00
Federico Mena Quintero 27eea79537 filechooserbutton: In SELECT_FOLDER mode, consider an empty selection to mean current_folder
If the user didn't explicitly select anything, BUT the file chooser button has
a current_folder set, do the same as what GtkFileChooserDefault would do:
return the current folder as the selection.

This makes the tests in tests/filechooser pass!

Signed-off-by: Federico Mena Quintero <federico@gnome.org>
2013-02-13 12:12:53 -06:00
Federico Mena Quintero ea3a1ecbd1 filechooserbutton: Keep track of the current_folder while the dialog is inactive
This is analogous to keeping the selection while the dialog is inactive.

Signed-off-by: Federico Mena Quintero <federico@gnome.org>
2013-02-13 11:47:35 -06:00
Federico Mena Quintero c7cae86568 filechooser: Fix cast 2013-02-13 11:14:36 -06:00
Federico Mena Quintero 97aaba8343 filechooserbutton: Remove unused function prototypes 2013-02-13 11:14:17 -06:00
Federico Mena Quintero bfcaa4228c filechooserbutton: Restore to an empty previous selection properly
If no file was originally selected in the GtkFileChooserButton, then its
internal dialog is brought up and cancelled, then we need to restore the
selection back to none.  GtkFileChooser, though, doesn't like to
select a NULL file, so call _unselect_all() in that condition.

Signed-off-by: Federico Mena Quintero <federico@gnome.org>
2013-02-13 11:01:50 -06:00
Michael Natterer 5de08612dc gtk: reliably stop spinning when a GtkSpinButton is hidden
Call stop_spinning() also in unrealize() because unmap() is not
reliably called in GTK+ 2.x. This is not an issue in GTK+ 3.x.
2013-02-13 14:37:11 +01:00
Federico Mena Quintero 30a2f8edcc filechooserbutton: Add test for setting/getting the current folder; currently fails
Signed-off-by: Federico Mena Quintero <federico@gnome.org>
2013-02-11 23:12:20 -06:00
Federico Mena Quintero 1cfd1f372a filechooserbutton: Fix preserving the selection after cancelling the dialog
The button's underlying file chooser dialog should not be used to store the file selection
while the dialog is unmapped.  Instead, the file chooser button now stores the
selection itself.

Signed-off-by: Federico Mena Quintero <federico@gnome.org>
2013-02-11 23:11:10 -06:00
Federico Mena Quintero e6f629f2bb filechooser: Remove some unused code
Signed-off-by: Federico Mena Quintero <federico@gnome.org>
2013-02-11 20:12:32 -06:00
Federico Mena Quintero 69bf331c98 filechooserbutton: Simplify the code to preserve the selection while the dialog is running
It used to fetch a possibly multiple selection from the GtkFileChooserDialog, and then
pick just the first item from the selection list.  But since GtkFileChooserButton
operates in single-selection mode only, it can simply use gtk_file_chooser_get_file()
instead.

Also, the right way to reset the selection for GTK_FILE_CHOOSER_ACTION_SELECT_FOLDER
is with gtk_file_chooser_select_file(), not with _set_current_folder_file().

Signed-off-by: Federico Mena Quintero <federico@gnome.org>
2013-02-11 19:33:17 -06:00
Federico Mena Quintero 0e79a04b66 filechooserbutton: Don't set a starting folder in the underlying dialog
Let the dialog decide by itself.
2013-02-11 19:13:38 -06:00
Federico Mena Quintero 2900fa9b62 filechooser: Test canceling the dialog inside a GtkFileChooserButton
Signed-off-by: Federico Mena Quintero <federico@gnome.org>
2013-02-11 19:13:38 -06:00
Federico Mena Quintero 1130a7c6f2 Remove unused variable 2013-02-11 19:13:38 -06:00
Sebastian Geiger 71505d982b [GtkFileChooserButton] bgo#645065 - Restore the previously-selected file when the button's GtkFileChooserDialog is canceled
The file chooser is asynchronous, so doing 'select_file (old_file)' and subsequently querying
the file for updating the labels is not going to work.  However, the underlying file chooser
will emit 'selection-changed' as appropriate when it finishes restoring the old file.  So,
we only need to update the labels when the file chooser dialog is confirmed, not cancelled.
2013-02-11 19:13:37 -06:00
Federico Mena Quintero e0cfc911fd filechooser: Add a couple of tests for GtkFileChooserButton; they fail now
Signed-off-by: Federico Mena Quintero <federico@gnome.org>
2013-02-11 19:13:37 -06:00
Federico Mena Quintero 5807a19031 filechooser: Do tests with g_assert_cmpstr(), not g_assert(passed)
This lets us see exactly what failed, instead of just seeing a boolean error value.

Signed-off-by: Federico Mena Quintero <federico@gnome.org>
2013-02-11 19:13:37 -06:00
Federico Mena Quintero 96602b29e2 filechooser: Move some of the tests to GTestDataFunc
This code came from a home-grown testing mechanism, which didn't aggregate tests
into a test suite; it just ran them one by one.  Here we move some of that machinery
to GTestDataFunc for more flexibility in running tests.

Signed-off-by: Federico Mena Quintero <federico@gnome.org>
2013-02-11 19:13:37 -06:00
Federico Mena Quintero e14808fdd3 filechooser: Get the filechooser tests to build
Some are ifdef-ed out with BROKEN_TESTS, but at least the tests will compile for now.
2013-02-11 19:13:16 -06:00
Matthias Clasen 2ffaa468e5 post-release version bump 2013-02-09 18:33:04 -05:00
Matthias Clasen 84e1e80839 Updates for 2.24.15 2013-02-06 07:46:34 -05:00
Emanuele Aina 65ea14d421 build: Fix building with the gold linker by referencing gmodule-2.0
With the binutils-gold linker the '--no-copy-dt-needed-entries' flag is
active by default and using any symbol from indirectly loaded libraries
will result in undefined reference errors.

https://bugzilla.gnome.org/show_bug.cgi?id=692810
2013-02-03 15:54:15 -05:00
William Hua 5ada51d3c7 Signalify (already existing) GtkMenuShell.insert()
gtk_menu_shell_insert() is a virtual function that was being directly
invoked from the class vtable.

Turn it into a proper signal and emit it in the usual way.

See https://bugzilla.gnome.org/show_bug.cgi?id=656565.

This is a backport of Ryan Lortie's commit
05aeaeef9e from the GTK+ 3 branch.
2013-01-28 18:23:08 -05:00
Cosimo Cecchi 55642822fe spinbutton: paint an additional slice of background
Normally, the xthickness in the style maps to the space on the sides of
the widget, to accommodate for its border - GtkEntry's text area
background width is calculated as (allocation->width - 2 * xthickness),
and the border is rendered in that area.
GtkSpinButton has an additional panel for the buttons though, which will
render the right-side (left-side for RTL) border itself, taking
xthickness into account. This results in the xthickness for that side
being applied twice, both to the spinbutton panel and to the entry's
text area.
Visually, a slice with no painted background can be seen in spinbuttons
on the right side (left side when RTL) of the text area, where the
border would be rendered by the entry, which looks bad.

This patch makes GtkSpinButton render the same background of the entry
in that slice, to compensate for the xthickness being allocated to the
button panel instead.

https://bugzilla.gnome.org/show_bug.cgi?id=683511
2013-01-25 17:19:52 -05:00
Cosimo Cecchi 87115e00a8 entry: never use GTK_STATE_ACTIVE to paint the background
When state-hint is TRUE, GTK_STATE_ACTIVE was used to paint the entry
background and frame, since commit
207f3f8685.

Given that everywhere else in GTK2 - including GtkEntry itself in
draw_text_with_color() - GTK_STATE_ACTIVE is used for non-toggleable
widgets to indicate selected but not focused text, this leads to the
entry painting itself with the wrong background color when focused.
This is unsolvable from the theme, as changing the ACTIVE background
color to be the same as NORMAL would give a wrong background to selected
but not focused text as per above.

This patch avoids using GTK_STATE_ACTIVE to paint GtkEntry's background,
changing the code so that the widget state is always used instead.

https://bugzilla.gnome.org/show_bug.cgi?id=692554
2013-01-25 15:02:42 -05:00
Federico Mena Quintero cfb09e5654 GtkFileChooserButton: return correct selection for SELECT_FOLDER mode
The old code to load the last_folder_uri state from the settings was not actually
ensuring that the settings were read from disk.  The result was this:

1. user chooses a folder in SELECT_FOLDER mode
2. user dismisses the file chooser dialog inside a GtkFileChooserButton
3. The dialog unmaps itself and saves the last_folder_uri with the user's selection
4. The file chooser button gets queried for the selection
5. GtkFileChooserDefault sees that it is unmapped, and falls back to the last_folder_uri
6. But since that key is not ensured as read by the temporary instance of GtkFileChooserSettings,
   it returns nothing.
7. The file chooser falls back to returning the user's home directory.

However, *we don't use the last_folder_uri* anymore, for anything!  So, removed
that code and now everything falls back to ->current_folder correctly.  This
is the correct selection value for SELECT_FOLDER mode anyway.

https://bugzilla.gnome.org/show_bug.cgi?id=674556
Signed-off-by: Federico Mena Quintero <federico@gnome.org>
2013-01-24 17:57:03 -06:00
Matthias Clasen 0c5877215b Fix a critical warning in notebook dnd with rgba colormaps
Pointed out by Nick Schermer in
https://bugzilla.gnome.org/show_bug.cgi?id=690788
2013-01-20 22:07:14 -05:00
Nuno Araujo adf68f977c Enable support for automake 1.13 in autogen.sh
https://bugzilla.gnome.org/show_bug.cgi?id=692099
2013-01-21 00:25:08 +01:00
Jan Rękorajski 85825ebaf2 print dialog: Fix authentication logic
Reset state of CUPS requests correctly during authentization and
check CUPS requests for errors.
Don't initialize variables holding password and username with empty
string (#664640).
2013-01-18 14:29:53 +01:00
Matthias Clasen f9e2130765 Rename configure.in to configure.ac
Its the new thing...
2013-01-15 18:24:54 -05:00
Michael Natterer bc3f1893aa quartz: really don't call a NULL function in gtk_clipboard_store()
Need to check targets and get_func in each loop iteration because
calling get_func the fist time might do whatever to the clipboard.
Re-fixes bug #626499. Also free the target table after we're done.
2013-01-15 11:56:22 +01:00
Kjartan Maraas f895cd44af Updated Norwegian bokmål translation 2013-01-10 13:39:33 +01:00
Marko Lindqvist 3bfc67f1c1 configure.in: fix autoreconf with automake-1.13
Replace long obsolete AM_CONFIG_HEADER with proper AC_CONFIG_HEADERS.
automake-1.13 errors out upon seeing former.
Similarly remove AM_PROG_CC_STDC. It's proper replacement, AC_PROG_CC,
is already present.

Signed-off-by: Marko Lindqvist <cazfi74@gmail.com>
2013-01-07 15:20:22 +00:00
Kristian Rietveld 184407309f quartz: retain content view when switching over toplevel. 2012-12-28 22:12:18 +01:00
Kristian Rietveld 30deba453a quartz: Make sure the old toplevel is closed on recreation 2012-12-28 22:12:18 +01:00
Kristian Rietveld a8008b796f quartz: make sure all old properties are set on the new toplevel
Apply patch by Paul Davies; part of bug 669808.
2012-12-28 22:12:18 +01:00
Kristian Rietveld 62f1d871b7 quartz: ensure window being (un)fullscreened is visible
Patch by Paul Davis; part of bug 669808.
2012-12-28 22:12:18 +01:00
Matthias Clasen 1f0f399469 Move single-include guards inside include guards
gcc has optimizations for include guards that only work
if they are outermost in the the header.
https://bugzilla.gnome.org/show_bug.cgi?id=689810
2012-12-28 11:26:46 -05:00
Chun-wei Fan 44402df7dd Fix gailutil Visual C++ projects
...so that we will include the correct gdkconfig.h, which would be
in $(srcroot)\gdk\ during the Visual C++ build.

Also prepare support for Visual Studio 2012 in this project, so it would
be easy to use a script to copy and replace the necessary items in the
Visual Studio 2010 project set to make it a Visual Studio 2012 set.
2012-12-28 15:10:34 +08:00
Michael Natterer f1c105b94f quartz: don't call a NULL get_func() in gtk_clipboard_store()
Assume the clipboard is not set and bail out silently (bug #626499).
2012-12-20 23:37:06 +01:00
Michael Natterer e3e055f855 quartz: make setting_same_owner member of GtkClipboardOwner @public
to fix the build, thanks to parafin for the patch.
2012-12-17 22:20:40 +01:00
Marek Kasik d9f9925878 printing: Add "Custom." prefix only once to paper size
Check whether "Custom." prefix is already present in the name
of selected paper size. (#679883)
(cherry picked from commit be7752183e)
2012-12-16 19:17:45 +01:00
Michael Natterer 31ae1a0b5b gtk: fix scrolling in modal dialogs when event_widget is insensitive
When checking for modal grabs in gtk_main_do_event(), forward
GDK_SCROLL events to event_widget, even if it is insensitive.
2012-12-14 14:30:31 +01:00
John Ralls e8535149e4 Bug 689982: Random Crash
Update Cairo_Win32 error handling to respond correctly to
cairo_win32_foo_create() functions returning a "nil" surface.
2012-12-10 09:32:00 -08:00
Michael Natterer 4a8df7a33c quartz: fix crash in the recent clipboard "fix", and really fix it
We must not release the GtkClipboardOwner in pasteboardChangedOwner
becaue we don't own a reference to ourselves (NSPasteboard does).
Instead, release the owner right after setting it, transferring
ownership to NSPasteboard

Also, fix repeated setting of the same owner by keeping the
owner around in GtkCLipboard, and re-use it if "user_data"
doesn't change. To avoid clipboard_unset()ting our own contents
in the process, add an ugly "setting_same_owner" boolean to
GtkClipboardOwner, set it during re-setting the same owner,
and avoid calling clipboard_unset() from pasteboardChangedOwner
if it's TRUE.
2012-12-07 12:28:05 +01:00
Chun-wei Fan b7c30152d0 Bug 687575: Update Visual C++ 2010 projects
The Visual C++ project files for GTK+-2.24.x need to be updated as the
Windows theme engine (libwimp) currently has to be built as a DLL.

This adds the Visual C++ 2010 project file to build libwimp as a
standalone module/DLL, and the property sheets, .sln file and
gtk.vcxprojin/gtk.vcxproj.filtersin/install.vcxproj are updated
accordingly so that the needed stuff get built properly and go
to the proper places for the Windows Themes to work correctly
with the Visual C++ builds.

Thanks to nus for pointing this out.
2012-12-06 12:20:26 +08:00
Matthias Clasen ad5a0dbb9d Post-release version bump 2012-12-05 23:10:22 -05:00
Matthias Clasen 8e4742cb00 2.24.14 2012-12-05 22:46:07 -05:00
Chun-wei Fan bad6675d74 gtk-demo.vcproj: Remove unneeded macros
We don't actually need the GtkPrefixDefine when building the gtk-demo demo
program on Windows.
2012-12-06 11:34:44 +08:00
Chun-wei Fan a441107979 Bug 687575: Update Visual C++ 2008 projects
The Visual C++ project files for GTK+-2.24.x need to be updated as the
Windows theme engine (libwimp) currently has to be built as a DLL.

This adds the Visual C++ 2008 project file to build libwimp as a standalone
module/DLL, and the property sheets, .sln file and gtk.vcprojin are updated
accordingly so that the needed stuff get built properly and go to the
proper places for the Windows Themes to work correctly with the Visual C++
builds.

Thanks to nus for pointing this out.  Visual C++ 2010 projects files will
be updated in the next 1-2 days.
2012-12-05 23:53:53 +08:00
Michael Natterer f2b74db5dc Bug 626499 - GtkClipboard unnotified on change of OS X pasteboard owner
pasteboardChangedOwner is not called as reliably as we'd want to get it,
so keep track of [pasteboard changeCount] and drop clipboard ownership
when a change happened. Also better unset the clipboard content redundantly
in a few places rather than missing one, and reorder the code in
gtk_clipboard_set_contents() so that the new aggressive unsetting
won't unset the clipboard under our feet when we call
[pasteboard declareTypes].
2012-12-04 14:31:13 +01:00
Federico Mena Quintero 6056f1855b Merge branch 'bgo658280-filechooser-recently-used-2-24' into gtk-2-24 2012-12-03 14:24:43 -06:00
Federico Mena Quintero f52befa7e7 Revert "Add items to the shortcuts bar's popup menu to configure the startup mode"
Per the gtk-devel meeting on 2012/11/29, we'll not have a UI in the file chooser dialog
to select between those modes.  Instead, we'll show that key in gtweaktool.

This reverts commit 7860500bc6.
2012-12-03 14:23:17 -06:00
Michael Natterer 1eb0d98d73 gtk: convert keyvals to unicode before committing to the imcontext 2012-11-30 15:06:48 +01:00
Michael Natterer c0102b3089 gtk: add more OSX special casing for the deadacute and deaddoubleacute keys
So " plus foo prduces foo-with-diaereses and ' plus c produces
c-with-cedilla.
2012-11-30 14:43:32 +01:00
Alan McGovern 5637ef1f97 Fix broken function pointer declarations on windows
Both flashing a window and setting the window opacity were using
incorrect declarations for function pointers. They were missing the
WINAPI annotation as defined in windows.h. As a result, the stack
could be corrupted when these functions were invoked.

Fixes https://bugzilla.gnome.org/show_bug.cgi?id=689235
2012-11-29 15:06:02 +01:00
Michael Natterer 9644e910a8 quartz: add mountain lion as version 8 to enum GdkOSXVersion
Also use GDK_OSX_UNSUPPORTED instead of 0 in gdk_quartz_osx_version().
2012-11-29 14:51:59 +01:00
Michael Natterer d6533ffc44 quartz: call Gestalt() only once per session in gdk_quartz_osx_version()
Thanks to Paul Davis for pointing this out.
2012-11-29 14:44:04 +01:00
Colin Walters b06d83f393 git.mk: Update
The old version had race conditions with srcdir != builddir that I hit
sometimes in gnome-ostree.
2012-11-28 16:37:52 -05:00
Federico Mena Quintero 7860500bc6 Add items to the shortcuts bar's popup menu to configure the startup mode
Signed-off-by: Federico Mena Quintero <federico@gnome.org>
2012-11-26 20:36:44 -06:00
Federico Mena Quintero a591a15382 Switch to Recent Files or $CWD at startup
Signed-off-by: Federico Mena Quintero <federico@gnome.org>
2012-11-26 18:42:18 -06:00
Federico Mena Quintero ebb2977a54 New settings key for the startup mode
Signed-off-by: Federico Mena Quintero <federico@gnome.org>
2012-11-26 18:13:05 -06:00
Chun-wei Fan 2d57ddd6ef gtkimcontexttime.c: Check context_ime->client_window is not NULL
Be a bit more careful in get_pango_attr_list() and
get_utf8_preedit_string() to ensure that the client_window is properly
created before proceeding, to avoid access violation/segfault crashes on
Windows with IME installed, especially when running the pickers demo.

https://bugzilla.gnome.org/show_bug.cgi?id=682919
(cherry picked from commit a866ed7378)
2012-11-26 16:31:44 +01:00
Daniel Sabo ffd949132a Bug 663990 - Tablet pressure is broken on MacOSX
Add extended input support to GDK Quartz.
2012-11-25 19:41:07 +01:00
Federico Mena Quintero 925147af70 New way to show $CWD in the shortcuts
Signed-off-by: Federico Mena Quintero <federico@gnome.org>
2012-11-24 14:01:55 -06:00
Michael Natterer f357151cc6 Bug 668239 - texts disappear when notebook switch page at zh_CN locate
In gtkimcontextime.c, use gdk_win32_window_get_impl_hwnd() to get to
the impl's existing native window instead of GDK_WINDOW_HWND() which
implicitly ensures a native window for the widget itself. This seems
to work around whatever GDK problem with native subwindows and fixes
the bug.
2012-11-23 15:42:13 +01:00
Camillo Lugaresi 0596f5591f Bug 688710 - splashscreen shouldn't be always on top on OS X
Activate the "hides on deactivate" behavior for splashscreens,
torn-off menus, utility windows, tooltips and notifications: when
another application is brought to the front, these windows are hidden
so as not to obscure it. This is the expected behavior for
application-specific floating windows on OS X.
2012-11-20 22:01:13 +01:00
Michael Natterer 27f3fcf12c quartz: fix the mapping of GDK_KP_Enter in known_numeric_keys[]
so it will actually be used, instead of delivering GDK_Return
when it should be GDK_KP_Enter.
2012-11-20 19:12:17 +01:00
Kazuki Iwamoto 2a24ee0756 Avoid a crash in gtk_im_context_ime_reset
When GTK+ runs with inputim-ime.dll module, there is NULL
pointer reference. Because "context_ime->client_window" may
be NULL in gtk_im_context_ime_reset.

https://bugzilla.gnome.org/show_bug.cgi?id=644906
(cherry picked from commit 74f57ee04d)
2012-11-20 12:32:37 +01:00
Michael Natterer 35a9322e45 quartz: always send GDK_NOTIFY_NONLINEAR crossing events
so GtkMenu works properly. This is not right, but not more
wrong than always sending GDK_NOTIFY_ANCESTOR either.
2012-11-20 10:02:02 +01:00
Michael Natterer 979e5061a0 Bug 672193 - windows (including menus) shown multiple times don't...
Based on a patch from Paul Davis, inject synthetic enter events directly
into the Quartz event stream, instead of trying to synthesize them in GDK.

This seems to magically fix most combo box popup weirdness, I guess
some code is relying on a specfic order of events, or any other state
imposed by the "proper" code path of events coming in the usual way.

The patch also removes _gdk_quartz_events_send_enter_notify_event()
which is now obsolete.
2012-11-20 10:01:08 +01:00
Matthias Clasen 53f3e5ee94 Avoid infinite recursion in the ime input module 2012-11-19 09:31:59 -05:00
Michael Natterer b4a30877a9 quartz: use the real current event time for generated motion events 2012-11-18 20:15:45 +01:00
Michael Natterer 1a2509a6ab quartz: move tooltips window to the topmost level
so they can appear on top of popup menus. Also, reorder the switch()
statement in window_type_hint_to_level() so it resembles the stacking
order, to avoid confision like this in the future.
2012-11-18 17:45:12 +01:00
Kristian Rietveld e982461ad6 quartz: correct deficiencies in the gdk_draw_drawable() implementation
The call to scrollRect: must be accompanied by a call to redraw the
newly exposed area, otherwise the scrollRect: will have no effect.
Secondly, compute the newly exposed area correctly.
Thirdly, also expose the lower window border or the area moved from
the lower window border if applicable, to make sure rounded corners
are properly drawn or don't leave garbage.
2012-11-15 14:59:11 +01:00
Kristian Rietveld 4d01c56d89 quartz: add _gdk_quartz_window_set_needs_display_in_region
It's needed for the next commit, which is an actual fix.
2012-11-15 14:49:25 +01:00
Michael Natterer 43e1354b71 quartz: filter out button press events on the window frame
Don't try to handle button press events on the window frame, they
have out-of-window coordinates. Also, break grabs on such events
so popup menus go away.
Patch from Kristian Rietveld, fixes bug 684419.
2012-11-15 11:34:15 +01:00
Michael Natterer 47f0e3f1e1 quartz: move SPLASHSCREEN-hinted windows to NSStatusWindowLevel
which does not really have a different effect than the previously
used NSPopUpMenuWindowLevel, but is what all code examples I found
are using, and it does make more sense.
2012-11-13 20:01:05 +01:00
Timothy Arceri 0239ee50be Remove bookmark duplicate of shortcut
Application code can set shortcut folders that are already bookmarks.
This code causes the bookmarks to be refreshed after the shortcut is
added removing any possible bookmark duplicates

https://bugzilla.gnome.org/show_bug.cgi?id=577806
2012-11-13 12:56:28 -06:00
Michael Natterer 5934ad2e22 quartz: _gdk_quartz_gc_update_cg_context(): the minimum line width is 1.0
not G_MINFLOAT. Patch from Kristian Rietveld.
2012-11-08 15:00:38 +01:00
Michael Natterer 376fc4d712 gtk: clean up properly in GtkFileChooserEntry's dispose() to fix crashes
Don't just unref the completion_store, call discard_completion_store()
instead which also unsets it as the GtkEntryCompletion's model.  Fixes
bug 681845 and probably some others, because the situation in this bug
is completely common.
2012-11-05 20:15:17 +01:00
Michael Natterer c5421263e4 gail: use connect_object() for connecting to GtkTextBuffer signals
because the user_data is the GtkTextView. This used to crash when the
text view got destroyed, and the buffer was used for another view.
Fixes bug #652204.
2012-11-05 03:19:50 +01:00
Cosimo Cecchi de89546e30 Use bookmarks file from gtk-3.0 XDG config dir if present
Will read from old location if new location isn't found, and will always
write back to the original location the file was read from.

Adapted from commit ceb3fecd11 on the
master branch, based on a patch from
William Jon McCann <jmccann@redhat.com>
2012-10-29 09:52:26 -04:00
Alexander Larsson bb867e9406 win32: Don't leak the pixmap cairo_surface
GdkPixmapWin32 allocates a cairo_surface manually for non-foreign
pixmaps, instead of letting GdkDrawableWin32 create on on-demand.
However, the pixmap created surface is a strong ref, rather than the
weak ref created by gdk_win32_ref_cairo_surface() so we can't rely
on _gdk_win32_drawable_finish to actually free it. So, we have to
manually free it when we finalize or we leak it.

https://bugzilla.gnome.org/show_bug.cgi?id=685959
2012-10-24 12:43:27 +02:00
Hendrik Knackstedt 85bb1a161c Updated German translation 2012-10-19 13:38:27 +02:00
Kristian Rietveld 0e42cf81f1 quartz: Actually use the window background PATTERN color
Before we used a window's background color, which resulted in corrupted
display in some cases, presumably because we didn't reset the active
pattern. This patch seems to eliminate the observed corruption.
2012-10-09 16:16:42 +02:00
Chun-wei Fan b9575dddfd gtk+.props: (VS2010) Update include paths
Correct the include paths for GDK-Pixbuf, as that update was somehow
forgotten :|

Thanks to Berke Viktor for pointing this out.
2012-10-07 22:53:39 +08:00
Kristian Rietveld 92ea94af5f Fix garbage content when windows are initially mapped
The garbage would be visible if any widget enabled the toplevel
NSView's CALayer in order to do custom native rendering.
2012-09-28 10:07:59 +02:00
Matthias Clasen 9b61330380 Really move the docs to a new location
It turns out that library.gnome.org is looking for DOC_MODULE
when deciding how to name the directory. So, we have to change
that to gtk2/.
2012-09-27 20:12:21 -04:00
Chun-wei Fan 6389671336 Update Visual C++ property sheets
"Install" the gtk-demo program and data files more like the way done by the
autotools build.
2012-09-26 18:57:13 +08:00
Matthias Clasen 81bb13510b 2.24.13 2012-09-23 16:42:08 -04:00
Matthias Clasen b8a49d1e87 Updates 2012-09-23 16:41:44 -04:00
Matthias Clasen 7336783e57 Change the location of the online docs
It is better to install these under gdk2/ and gtk2/, to make
it explicit what version they are about. Doing this will eventually
let us move the gtk3 docs to gtk/.
2012-09-23 15:04:06 -04:00
Chun-wei Fan 8f5ab02369 Visual C++ support: Add projeccts to build gailutil
This adds Visual C++ 2008/2010 projects to build the gailutil DLL, like
the 3.x releases.
2012-09-18 17:56:17 +08:00
Michael Natterer 79b3326eaa quartz: Bug 674108 - Hard crash due to wrong NSAutoreleasePool stacking
Apply patch from Kristian Rietveld which addresses two issues
in gdkeventloop-quartz.c:

This patch moves the autorelease pool drain and introduces protection against
the invalidated ufds. Basically, when we suspect ufds has been invalidated by a
recursive main loop instance, we refrain from calling the collect function.
2012-09-14 15:18:33 +02:00
Matthias Clasen c8aa94f7a8 immulticontext: Always check if the global context id changed
This makes sure that if the gtk-im-module setting changes we update
our internal state immediately on the next event whichever it is.
In particular this fixes the case of the gtk-im-module setting
changing while the user is typing and the slave context remaining
the same, effectively ignoring the setting change.

Backport of a0f155e839.

https://bugzilla.gnome.org/show_bug.cgi?id=675365
2012-09-09 20:06:38 -04:00
Matthias Clasen 1533e67ae4 Try harder to discriminate Shift-F10 and F10
A change in xkeyboard-config 2.4.1 made it so that function keys
now have a shift level which has the same symbol, but 'eats' the
shift modifier. This would ordinarily make it impossible for us
to discriminate between these key combinations.

This commit tries harder to discriminate in 2 ways:
- XKB has a mechanism to tell us when a modifier should not be
  consumed even though it was used in determining the level.
  We now respect such 'preserved' modifiers. This does not fix
  the Shift-F10 vs F10 problem yet, since xkeyboard-config does
  not currently mark Shift as preserved for function keys.
- Don't consume modifiers that do not change the symbol. For
  the function keys, the symbol on the shift level is the same
  as the base level, so we don't consider Shift consumed.

For more background on the xkeyboard-config change, see
https://bugs.freedesktop.org/show_bug.cgi?id=45008

https://bugzilla.gnome.org/show_bug.cgi?id=661973
2012-09-09 18:49:18 -04:00
Kristian Rietveld b4ddf24234 Implement gtk-primary-button-warps-slider GtkSetting
It replaces the recently added GtkRange:primary-button-warps-slider
style property. Implement the setting in the quartz backend,
it proxies the "click in the scroll bar to" property from the
OS X PrefPane.
2012-09-07 16:46:08 +02:00
Cosimo Cecchi 15999ec5f3 range: make condition consistent with GTK3
cc7abf6a1c introduced the
primary-button-warps-slider style property, but with a different
condition check than the GTK3 counterpart.
It turns out we really need to check for the mouse click location here,
or we'll warp the slider to pointer also in case we clicked on the
slider itself.

https://bugzilla.gnome.org/show_bug.cgi?id=683512
2012-09-06 12:03:17 -04:00
Piotr Drąg 1c401ea913 Updated Polish translation 2012-09-04 02:28:08 +02:00
Matthias Clasen 8b18b439af 2.24.12 2012-09-03 14:33:47 -04:00
Emmanuele Bassi 1070c5849e recent-manager: Coalesce multiple changes
Since the ::changed implementation of GtkRecentManager implies a
synchronous write operation, when we receive multiple requests to emit a
::changed signal we might end up blocking.

This change coalesces multiple ::changed emission requests using the
following sequence:

  • the first request will install a timeout in 250 ms, which will
    emit the ::changed signal

  • each further request while the timeout has not been emitted
    will increase a counter

      ‣ if the counter reaches 250 before the timeout has been
        emitted, then the RecentManager will remove the timeout
        source and force a signal emission and reset the counter

This sequence should guarantee that frequent ::changed emission requests
are coalesced, and also guarantee that we don't let them dangle for too
long.

https://bugzilla.gnome.org/show_bug.cgi?id=616997
2012-09-03 13:23:56 -04:00
Cosimo Cecchi cc7abf6a1c range: add a primary-button-warps-slider style property
Setting this to TRUE (it's FALSE by default) enables the behavior we
have in GTK3 for scrollbars.

https://bugzilla.gnome.org/show_bug.cgi?id=683279
2012-09-03 11:56:58 -04:00
Piotr Drąg 88bfb0f59e Updated Polish translation 2012-08-31 20:45:02 +02:00
Cosimo Cecchi af26ec6a73 tooltip: add tooltip-radius and tooltip-alpha style properties
This allows themes to change the tooltip opacity and radius. Based on a
downstream Fedora patch by Matthias Clasen.

https://bugzilla.gnome.org/show_bug.cgi?id=683070
2012-08-30 21:41:40 -04:00
Kristian Rietveld 3d5cd6e055 quartz: fix corruption during scrolling in some cases
A call to scrollRect must be followed by a call to set that the offset
rect needs display for the changes to "take effect". This was not
done prior to this patch which, in some cases, caused corruption during
scrolling.
2012-08-26 15:45:46 +02:00
Michael Natterer c0c3085128 quartz: add evil casting to make sure time wraps correctly on 32bit machines
get_time_from_ns_event(): apply patch from Michael Hutchinson which
makes sure the returned guint32 wraps correctly on 32 bit machines
when the uptime exceeds 2^32 ms.
(cherry picked from commit 78506bd604)
2012-08-23 09:32:20 +02:00
John Ralls 48547aadef Bug 681784 Colorspaces used in gtk+ and cairo quartz backends do not
match

Changes inspired by parafin <help@imtrappedininternet.com>
Replace colorspace creation calls to match those used by Cairo.
2012-08-21 16:21:28 -07:00
YunQiang Su fa98721182 fix an typo in zh_CN translation 2012-08-18 11:20:11 +08:00
Michael Natterer ebe50bbecb gtk: ref the action around gtk_action_emit_activate()
for the same reason we already ref the action's group in the function.
2012-08-03 23:24:39 +02:00
Matthias Clasen 1d07ef714d Allow building with automake 1.12 2012-08-01 08:47:58 +02:00
Funda Wang c2274c8912 fix bug#680901: translations of "even sheet" and "odd sheet" are wrong 2012-07-31 22:06:52 +00:00
Chun-wei Fan 3047719340 demos/gtk-demo/rotated_text.c: Remove C99ism 2012-07-26 17:15:23 +08:00
Matthias Clasen a9fb816a3f Fix a case of 'stuck grab'
This was showing up when using a combo box in list mode. After popping
up the list, the keyboard grab appeared stuck. What was stuck here is
only the client-side grab, since we forgot to clean up our grabs
when receiving an UnmapNotify.

This bug was introduced in 3f6592f60f.

[ Alexandre Rostovtsev <tetromino@gentoo.org>: backport to 2.24 ]

https://bugzilla.gnome.org/show_bug.cgi?id=680346
2012-07-20 20:02:33 -04:00
Matthias Clasen 9a0fcd0f41 Bump version 2012-07-15 15:49:50 -04:00
Matthias Clasen 2b67dc0e8d Updates 2012-07-15 15:10:41 -04:00
Cosimo Cecchi 85f2a721cf pixbuf-engine: add a GtkRC option for widget direction
Add a GtkRC option to select for an LTR/RTL widget direction in the
pixbuf engine; this will allow the engine to apply different theming
assets according to the text direction, which is useful when theming
e.g. a spinbutton or a combobox entry.
2012-07-05 10:08:10 -04:00
Daniel Sabo da324fa2d5 [Bug 676362] _gdk_quartz_image_copy_to_image always returns black for
the root window

Revised patch which doesn't depend upon NSRect being typdeffed from
CGRect (64-bit only).
2012-06-13 17:37:35 +01:00
Daniel Sabo 2f706868ff Bug 676362 - _gdk_quartz_image_copy_to_image always returns black...
Implement a special case for the root window, which has to be handled
differently on OS X.

Contains some bit fiddling corrections by Kristian Rietveld.
2012-06-11 21:10:19 +02:00
Kristian Rietveld 860499ce90 quartz: delay emission of EnterNotify until window position is known
Beforehand, the check whether or not emission is necessary was done
based on the "uninitialized" window position in the top left corner.
We now wait until the window size is set for the first time, to avoid
emitting EnterNotify when it is not necessary.
2012-06-11 21:10:19 +02:00
Matthias Clasen 0b59fbfb9d Allow fallback for input method modules
Accept a :-separated list of module names in GTK_IM_MODULE and
the corresponding setting, to deal a bit better with broken
situations.

https://bugzilla.gnome.org/show_bug.cgi?id=603559

Patch by Akira Tagoh, backported from GTK+ 3. The backport
is required because GTK+ 2 and 3 are listening to the same env
vars and settings for immodules.
2012-06-05 17:03:42 -04:00
Michael Natterer b32a9eb691 GtkTreeView: make tree expanding/collapsing more robust
gtk_grab_remove() *after* we did the expanding/collapsing, otherwise
grab_notify() might kick in and mess with our state. Fixes bug #675835.
2012-05-31 11:02:09 +02:00
Michael Natterer 8750833e61 gtk-demo: add semikolon to make it build again 2012-05-27 23:05:30 +02:00
Connor Behan 5b91e0d501 Make gtk2 demos comply with gseal
Demos in gtk-demo are supposed to be exemplary. However, if one were to
give them dummy main functions many of them would not compile with
-DGSEAL_ENABLE. This changes the demos to make them use accessor
functions whenever possible instead of direct changes to the struct
members.

http://bugzilla.gnome.org/show_bug.cgi?id=667155
2012-05-26 20:04:40 +00:00
Christian Kellner 43c9a702c7 quartz: Don't use compound text for selections
Explicitly return FALSE in selection_set_compound_text() to
indicate that we don't want to support compound text selections;
this will eliminate the "not implemented" warning for quartz.
2012-05-14 21:33:08 +02:00
Kristian Rietveld eb831590cd Implement _gtk_clipboard_store_all()
This pushes the clipboard contents to the OS X clipboard when the
application is quit. Without doing this, clipboard data set by a GTK+
application cannot be accessed after the clipboard has been quit.

Currently, we implement this the easy way because the clipboard
support is fully implemented in GTK+. In the future this might change.
2012-05-14 20:55:26 +02:00
Kristian Rietveld 194d5544b4 quartz: Ignore events from all mouse buttons past the resize boundary
Before, right click events were still let through into GDK. In this
case, also middle/right button events with x-coordinates in the range
[-3, 0] are processed, resulting in failures/crashes in the window
finding code because no GdkWindows are present in this range.
2012-05-13 18:00:47 +02:00
Michael Natterer 71164e57b9 quartz: add a special case to GtkIMContextSimply for entering '"'
Turn dead_doubleacute plus space into '"' and not into a double
acute because that's the way to enter double quotes on the
US-International keyboard layout.
2012-05-10 10:57:16 +02:00
Michael Natterer b738cf85d9 quartz: handle yet another dead tilde variant
which is delivered by the US-International keyboard layout.
2012-05-08 15:52:52 +02:00
Federico Mena Quintero 2b624f6f8f bgo#675421 - Set the wm_role on GtkFileChooserDialog
The window's role is 'GtkFileChooserDialog', so that window managers can match it
for positioning.

Signed-off-by: Federico Mena Quintero <federico@gnome.org>
2012-05-07 15:43:20 -05:00
Dumitru Mișu Moldovan fb2cbb3cde Updated Romanian translation 2012-05-05 11:26:08 +03:00
John Ralls 63f6e92001 modules/printing/cups/gtkprintbackendcups.c won't build with CUPS 1.6
Fix up accesses of ipp structures in gtkcupsutils.c
2012-04-23 14:50:01 -07:00
John Ralls 75103b62e5 modules/printing/cups/gtkprintbackendcups.c won't build with CUPS 1.6
Having refactored cups_request_printer_list_cb so that the cups
 version-dependent block size is small enough to be handled in a single
 ifdef, make the ifdef HAVE_CUPS_API_1_6 block
2012-04-23 14:49:47 -07:00
John Ralls 7d2725e400 Move some variable declarations into the scopes in which they're used. 2012-04-23 14:49:25 -07:00
John Ralls b7d59f73db Extract Function cups_create_printer 2012-04-23 14:48:52 -07:00
John Ralls 0d1edac55b Extract function cups_printer_handle_attribute 2012-04-23 14:48:39 -07:00
John Ralls 61dd746d51 Extract printer setup variables into a struct
So that it can be passed as a single parameter to functions as we
extract-function to make cups_request_printer_list_cb more manageable.

Note that not all of the affected variables are changed in this
changeset. Those are in extracted functions and will be addressed in the
next two changes.
2012-04-23 14:48:25 -07:00
John Ralls 399f31021c Create enum PrinterStateLevel
Fixes "magic number" in printer_state_reason_level.
2012-04-23 14:47:33 -07:00
John Ralls 3100279bf1 Extract reasons and reasons_desc arrays to file level
So that they can be used from more than one function. Rename them to
avoid naming conflicts.
2012-04-23 14:47:15 -07:00
John Ralls 0883b09086 modules/printing/cups/gtkprintbackendcups.c won't build with CUPS 1.6
The first, simple changes. Turns off the deprecation warnings and
 substitutes macros and short ifdef blocks where feasible.
2012-04-23 14:46:54 -07:00
Federico Mena Quintero 85c9b5c76a bgo#674556 - Save the file chooser's settings when the toplevel gets unmapped
In GTK+ 2, child widgets don't get unmapped, and yet, that is when we were trying to
save the settings of GtkFileChooserDefault.  Now we connect to the toplevel's
unmap signal and do the right thing there.

Signed-off-by: Federico Mena Quintero <federico@gnome.org>
2012-04-23 10:45:50 -05:00
Kristian Rietveld 698aba575c quartz: properly handle the given hotspot position 2012-04-22 17:15:06 +02:00
Kristian Rietveld f91c525fe2 quartz: fix coordinates for synthesized event
Of course, we must pass coordinates in the NSWindow coordinate system
when creating an NSEvent. This fixes drag icon positioning and makes
the icon slide back to the correct position when the drag is
canceled.
2012-04-22 17:11:38 +02:00
Kristian Rietveld 5f25687104 [quartz] Fix manual resizing of windows
In the Quartz backend, there are two methods by which windows are
resized. The first method is fully handled by Quartz and does not appear
in the event stream the application resizes. The second method is when
we resize windows by ourselves. In OS X this happens when a GTK+ resize
grip is used. This resize grip is larger than the Quartz resize grip.
When the resize is started outside the "Quartz area", we have to handle
it by ourselves.

This patch fixes this manual window resizing by ignoring events while we
are in the process of resizing (such that the events actually arrive at
the sendEvent handler of GdkQuartzWindow where this resize is handled).
When the resize has finished we break all grabs such that GDK is not
stuck thinking the cursor is still in the resize window.
2012-04-10 21:22:07 +02:00
Kristian Rietveld ac4f3be6a5 Export break_all_grabs() within Quartz backend
Function was renamed to _gdk_quartz_events_break_all_grabs().
2012-04-10 21:22:07 +02:00
Carlos Garcia Campos 9a0e81380b printing: Make sure destroy function is always called by gtk_enumerate_printers
When GtkPrinterFunc always returns FALSE, for example when looking for
a non existent printer, if print list is done for all backends or print
backend status is UNAVAILABLE, gtk_enumerate_printers() finishes with an
empty backend list and destroy function is never called. We need to
check the backend list again after calling list_printers_init for all
backends and finish the enumeration if it's empty.

https://bugzilla.gnome.org/show_bug.cgi?id=672125
2012-03-15 14:49:00 +01:00
Chun-wei Fan 51fb0419c2 Fix "install" paths in VS property sheets 2012-03-15 16:48:35 +08:00
Javier Jardón 339786f078 build: require glib 2.28
As dieterv said, gtk 2.24 win32 binaries have been frozen on
glib 2.28.x, and we dont have resources rigth now to ensure pygobject
static bindings still function correctly with newer glib versions
2012-03-14 19:28:55 +00:00
Javier Jardón 6eacdae613 configure.ac: require Glib 2.30
As we use g_format_size() now
See commit 2bedcd8863
2012-03-14 18:52:10 +00:00
Federico Mena Quintero 2bedcd8863 Use g_format_size() instead of g_format_size_for_display()
We do this like in commit 4ead7b69ea, so that apps which use the gtk2 file chooser
will show the same file sizes as gtk3 apps.
2012-03-05 17:21:55 -06:00
Benjamin Otte 4b1e2b08a7 iconview: Fix autoscroll
... when the iconview is not the only child in it's parent GdkWindow.
2012-03-03 21:12:19 +01:00
Mikael Magnusson 3f6592f60f Iconification using _NET_WM_STATE_HIDDEN hint if supported by WM
If the Window Manager supports the _NET_WM_STATE_HIDDEN, we use it to use
the _NET_WM_STATE protocol when de-iconifying windows (iconification is
unchanged, via XIconifyWindow). Additionally, we no longer interpret all
UnmapNotify events for our window as the result of iconification.

(Based on patch by Tomas Frydrych <tf@linux.intel.com>)
2012-03-02 20:37:32 +01:00
John Ralls 03b7195e64 Bug 655065 Build failure on OS X 10.7 Lion
Remove LDDADS and setting each object file's LDDAD to it; just set a global LDDAD.
2012-03-02 09:47:57 -08:00
Michael Natterer dca75f3b93 quartz: remove excess initializers in the new modifier_keys array 2012-02-23 13:53:51 +01:00
Michael Natterer 0b24f16241 quartz: make function keys work (again?)
The F keys have no unicode mapping, and UCKeyTranslate() returns
a bogus 0x10 as mapping to unicode. Instead of checking for this
random and undocumented return value, simply assign all function
keys explicitly. This patch also splits the ill-named "known_keys"
array into "modifier_keys" and "function_keys" which is much
more obvious.
2012-02-23 13:34:01 +01:00
Bastien Nocera 2ab1526467 x11: Fix first call to _gdk_x11_keymap_key_is_modifier()
_gdk_x11_keymap_key_is_modifier() never tries to set min/max_keycode
if they haven't been set before, meaning that until another function
sets those, all the keys will be seen as non-modifiers.

This causes GdkKeyEvents to be wrongly tagged with "->is_modifier = 0"
when in actual fact the key is a modifier. This fixes keyboard
shortcuts captured with GtkCellRendererAccel in "raw" mode thinking
a modifier without any actual keys is a valid shortcut.

https://bugzilla.gnome.org/show_bug.cgi?id=670400

Conflicts:

	gdk/x11/gdkkeys-x11.c
2012-02-19 17:42:19 +01:00
Matthias Clasen 8da54b8118 GtkTrayIcon: chain up in dispose
Pointed out in bug 643131 and bug 640308.
2012-02-15 15:16:30 +00:00
Javier Jardón 0b2fd066b9 gdk/gdkwindow: Add missins "Since:2.24"
Reported by Mike Massonnet in bug
https://bugzilla.gnome.org/show_bug.cgi?id=670093
2012-02-14 19:40:17 +00:00
Kalev Lember bbe8ba8aff win32: Don't crash when installed in a top-level directory
Avoid NULL-pointer dereference when package installation directory
doesn't contain any slashes.

Reported by Paweł Forysiuk.
2012-02-09 18:00:08 +02:00
John Ralls 14488e69c4 Remove stock_icons/*/text-x-generic.png from GENERATED_ICONS
It's not generated, and having it included removes it during
maintainer-clean so you have to retrieve it from the repo to build.
2012-02-07 16:03:28 -08:00
Matthias Clasen bfb50d563f bump version 2012-02-06 11:36:01 -05:00
Matthias Clasen 3319bcf033 Fix doc build 2012-02-06 09:44:09 -05:00
Matthias Clasen 2624136a99 Updates 2012-02-06 09:12:35 -05:00
Marek Kasik 66c99016d3 printing: Don't crash when printing
This commit fixes crash which occurs in Firefox, Thunderbird and Inkscape
during printing. This crash was caused because of wrong handling of Custom
CUPS options. (#543520)
2012-01-31 12:01:43 +01:00
Michael Natterer 5f48cfe491 Bug 667691 - implement gdk_window_restack() for Quartz
Apply patch from Paul Davis which implements this missing function.
2012-01-26 10:15:27 +01:00
LRN fc3cff11b5 win32: Draw arrows as polygons, not as rows of pixels
https://bugzilla.gnome.org/show_bug.cgi?id=665955
2012-01-25 16:51:28 +01:00
Dieter Verfaillie fb87d9c901 win32: fix gdk_win32_window_raise
When calling gtk_window_present(), gdk_win32_window_raise did not
actually raise the window anymore. Replacing BringWindowToTop() with
SetForegroundWindow() fixes this.

During testing, we also discovered that sometimes SetForeGroundWindow()
will (correctly) refuse to raise the window and fail(for example: sometimes
when dragging a different application at the time of a gtk_window_present()
call). To prevent a GdkWarning from being produced, usage of the API_CALL
macro has been removed for this case.

Additional goodies of SetForeGroundWindow:
- it brings the window to the front when the process owning the
  window to raise is the foreground process (for example when
  gtk_window_present is called from a GtkStatusIcon's activate
  signal handler)
- it limits itself to flashing the task bar button associated
  with the window if the process owning the window to raise
  is *not* the foreground process (for example when gtk_window_present
  is called from a g_timeout_add callback function)

https://bugzilla.gnome.org/show_bug.cgi?id=665760
2012-01-25 12:47:04 +01:00
Javier Jardón a3cbaa5956 Post release version bump 2012-01-24 20:29:12 +00:00
Javier Jardón 131f24a4f5 docs: Fix libgail-utils doc generation 2012-01-24 20:25:57 +00:00
Javier Jardón 745a9fc6fe Update NEWS 2012-01-24 19:23:25 +00:00
Benjamin Otte b96f423343 modules: Fix memleak
Modules would leak if they were specified twice in the same command,
so ie this would leak:
  GTK_MODULES=gail,gail
2012-01-24 17:46:22 +01:00
Benjamin Otte ab6007f052 modules: break when finding the right module
This way, we don't use the wrong module. In particular we don't screw up
refcounts that lead to crashes later on.
2012-01-24 17:46:14 +01:00
Stefan Sauer 308d195014 scale: Fix marks for inverted scales
This is a backport of the fix from gtk-3.
2012-01-20 21:57:21 +01:00
Stefan Sauer 9adc078e25 scale: remove the match argument from find_next_pos()
Using the 'pos' argument is enough.
2012-01-20 21:57:21 +01:00
Matthias Clasen 165d2c0ca2 Implement the editing-canceled property in GtkCellEditableEventBox
https://bugzilla.gnome.org/show_bug.cgi?id=639455
(cherry picked from commit 8f6a8441a2)
2012-01-20 11:47:50 +01:00
Michael Natterer 0488c28488 quartz: add virtual modifiers already in GDK, just as X11 does it
Key event states  will now always contain GDK_META_MASK in addition
to GDK_MOD2_MASK.
2012-01-19 16:17:13 +01:00
Benjamin Berg 85099bf6a6 Strip "Custom." prefix when getting default options from cups. 2012-01-17 20:34:42 +01:00
Carlos Garcia Campos 5123cfe5e6 printing: gtk_print_settings_load_key_file() ignores group_name 2012-01-11 15:46:15 +01:00
Stefan Sauer 03fae9086f scale: backport orientation fix for vertical scales 2012-01-09 18:39:13 +01:00
Stefan Sauer 92412d23b7 gtkscale: fix bogus compare func
The GtkScaleMark values are gdouble, a simple a-b compare func would fail for
values with the same integer value. This breaks the sorting and causes random
marker label placement.
2012-01-09 18:16:53 +01:00
Ryan Lortie 986072b361 introspection: Fix srcdir != builddir builds
https://bugzilla.gnome.org/show_bug.cgi?id=667458
2012-01-09 17:08:12 +01:00
Benjamin Berg 1e731a3400 Improve PICKONE_* handling in GtkPrinterOptionWidget (bug #543520)
This patch modifies GtkPrinterOptionWidget to support loading them
again. It also allows the user to enter values from the dropdown list
to select the item.
2012-01-06 00:18:38 +01:00
Benjamin Berg 8170436e61 Set cups Custom print options correctly (bug #543520, patch by Marek Kašík)
This patch fixes the cups print backend to pass Custom options with
the "Custom." prefix to cups if neccessary.
2012-01-06 00:18:37 +01:00
Matthias Clasen fcd01e9718 Use the right icon-name for missing images
Patch by Erik van Pienbroek, bug 629878.
2012-01-05 14:30:48 -05:00
Matthias Clasen 2a9bf2619a Fix problems with DND on some X servers
When the X server does not support the shape extension (as some
vnc implementations seem to), our DND code was always seeing
an empty input shape, so drops always missed their target.

http://bugzilla.gnome.org/show_bug.cgi?id=620240
2012-01-03 11:03:45 -05:00
Javier Jardón 8f3f5fab27 migrating-GtkComboBox.sgml: Do not use deprecated API in the examples 2012-01-02 02:49:20 +01:00
Alexander Larsson e9b0f9e81a [win32] Fix win32 theme crash on offscreen windows
We add _gdk_offscreen_window_get_real_drawable to get the real
pixmap impl for offscreen windows, then we use this
in gdkgc-win32.c:get_impl_drawable() for offscreen windows
This fixes a crash when rendering win32 theme parts on
offscreen windows (bug #623563)
2011-12-16 09:11:59 +01:00
Alexander Larsson f8170ee873 Move GdkOffscreenWindow basic type info to gdkinternals.h
This is needed to handle runtime checks for GdkOffscreenWindows
outside of gdkoffscreenwindow.c
2011-12-16 09:11:58 +01:00
Federico Mena Quintero 400e53c568 bgo#662814 - Don't print a g_warning() when GtkRecentManager can't find a file
Also, *do* add the file to the recently-used list, even if the file does not
exist yet.  This is used from the Save dialog, so even shitty apps which don't
add the file to GtkRecentManager, will get the file added from the Save dialog.

Signed-off-by: Federico Mena Quintero <federico@gnome.org>
2011-12-13 11:07:42 -06:00
Matthias Clasen 4eae58ab43 Revert be1eea612c
Calling gdk_keymap_add_virtual_modifiers causes _all_ virtual
modifiers to be added, which causes problem when they are co-located
on the same real modifier (as Super and Hyper often are). Effectively,
this made it impossible to enter key combinations involving Super,
since they all turn into Super+Hyper.
2011-12-08 12:46:55 -05:00
Matthias Clasen 7c9f317b64 Test some virtual modifiers
This adds some accelerators involving Super and Hyper to testmerge.
This helps in testing our accel matching for those.
2011-12-08 08:04:34 -05:00
Dieter Verfaillie 81955757bc win32: don't rely on GTK_IS_H* or GTK_IS_V_* macros
But use the orientable interface instead. This has already proven
usefull for GtkVolumeButton widgets (see previous commit) so apply
the same logic all over the place.
2011-12-07 20:01:18 +01:00
Dieter Verfaillie 60d471b2d0 win32: Fix vertical GtkVolumeButton widget rendering.
The trough was being rendered horizontal for vertical
GtkVolumeButton widgets. Not relying on GTK_IS_VSCALE
but using the orientable interface instead fixes this.
2011-12-07 20:01:12 +01:00
Dieter Verfaillie af309a50af win32: correct the notebook tab gap_side vs tab_pos comment 2011-12-07 20:01:06 +01:00
Dieter Verfaillie 7cfefd6e98 win32: fix expander rendering for horizontal GtkToolItemGroups
Expanders are usually drawn as little triangles and unfortunately
do not support rotated drawing modes. So a hack is applied (see
gtk_tool_item_group_header_expose_event_cb for details) when
drawing a GtkToolItemGroup's header for horizontal GtkToolShells,
forcing the triangle to point in the right direction. Except we
don't draw expanders as triangles on Windows. Usually, expanders
are represented as "+" and "-". It sucks for "+" to become "-" and
the inverse when we don't want to, so reverse the hack here.
2011-12-07 20:01:00 +01:00
Dieter Verfaillie d9906a9ac4 win32: clean up detail checks
By borrowing the DETAIL macro from clearlooks' clearlooks_style.c
2011-12-07 20:00:55 +01:00
Dieter Verfaillie 980133d732 win32: set msw-button child-displacement-x & y to 0 when XP theme is active
Active buttons have not had their contents (icon & label)
displaced ever since uxtheming became available in Windows XP.

We still care about this displacement for classic themes
though (even on Vista/7 where classic themes are used to
implement High Contrast support).
2011-12-07 20:00:41 +01:00
Dieter Verfaillie 3df3cafdbb win32: Make all GDK_WINDOW_TEMP always on top
This makes menus, popups and tooltips show above the windows
task bar.

Backported from commit 62b505174f
on master branch.
2011-12-07 20:00:35 +01:00
Dieter Verfaillie f7354da574 win32: remove unused (and commented out) combo_box_draw_arrow 2011-12-07 20:00:26 +01:00
Alexander Larsson ba8c4bb049 win32: Fix 16bit pixmaps
This reverts to the old dibsection creation code for 16bit depth.
This makes the non-cairo stuff work, we then access the bits as
a cairo image surface, which isn't 100% right, but might be good
enough.

Fixes bug 665013
2011-12-06 11:29:00 +01:00
Matthias Clasen 4fc684943b Fix gtk-demo drawingarea example
Patch by Martin Schlemmer, bug 665011.
2011-11-30 12:09:21 -05:00
Florian Müllner 26b749440b build: Add gmodule-2.0 dependency for gtk-query-immodules-2.0 2011-11-28 15:11:06 -05:00
John Ralls 7c77f9a69a [Bug 664238] GTK apps crash when dragging something
Corrects a bad condition in a test in fadc82ad.
2011-11-20 10:28:15 -08:00
Michael Natterer 2e06f63743 Bug 663856 - Make option-foo accelerators use the right symbol
If the keyboard group shifting modifier is *also* a normal
accelerator modifier, we need to special case it when calling
gdk_keymap_translate_keyboard_state(), so we get the right
key symbol for accelerators (for example we want Option-O,
not Option-Ø displayed in menu items). This patch should only
affect quartz where the Alt key both shifts the group and can
be used as accel modifier, and not X11 or Win32 where AltGr
is not used for accelerators.

- fix quartz' gdk_keymap_translate_keyboard_state() to return
  the right consumed_modifiers
- add _gtk_translate_keyboard_accel_state() which does the
  special casing
- use it everywhere instead of gdk_keymap_translate_keyboard_state()
2011-11-18 12:25:03 +01:00
Michael Natterer 4c35d987df notebook: don't leak the action widgets
The notebook owns them, so it must destroy them in destroy().
2011-11-17 00:53:29 +01:00
Cosimo Cecchi 5c3bb1839c Revert "iconview: layout items immediately when setting a GtkTreeModel"
It makes GtkIconView segfault on GTK 2.24.

gtk_icon_view_expose() calls gtk_icon_view_layout() first thing if
there's a layout queued anyway, so we wouldn't end up in the same
situation causing the crash the original patch is supposed to fix.

This reverts commit 5a03f4a6a5.

https://bugzilla.gnome.org/show_bug.cgi?id=663138
2011-11-16 17:39:18 -05:00
Michael Natterer 0729cdc9a1 quartz: fix a race condition when waking up the CGRunLoop
Wake up the run loop unconditionally (don't check if it is waiting) because
it might go into waiting state right after we checked for it. Fixes GIMP
startup (which has a lot of GIOChannel I/O but zero NSEvents) from several
minutes to a few seconds.
2011-11-11 23:54:23 +01:00
Alexander Larsson 7546eeaa62 Post release version bump 2011-11-10 19:54:38 +01:00
Alexander Larsson 758fec0a2d Update docs from release 2011-11-10 19:49:52 +01:00
Alexander Larsson 4edbdeff64 Update NEWS for release 2011-11-10 19:29:10 +01:00
Dieter Verfaillie 1b58117bbf win32: fix GDK_DEBUG="draw" crasher
When running with GDK_DUBUG="draw", gdk_win32_draw_rectangle
calls _gdk_win32_drawable_description, which calls
gdk_drawable_get_size for a GdkWindowImplWin32.

gdk_drawable_get_size then tries to call
GDK_DRAWABLE_GET_CLASS (drawable)->get_size, which points
to NULL for GdkWindowImplWin32.

Adding the missing drawable_class->get_size implementation
fixes this.
2011-11-09 14:52:04 +01:00
Dieter Verfaillie d8c2db3335 win32: plug leak when drawing handles
The cairo context was always created but only ever used
and destroyed(!) in the second if block (!GTK_IS_PANED (widget))
so moving around the gdk_cairo_create call would have
been the obvious fix.

However, said if block is not used at all, so clean
up draw_handle instead.

https://bugzilla.gnome.org/show_bug.cgi?id=663543
2011-11-09 14:51:55 +01:00
Alexander Larsson 2ae574ab6d win32: Let cairo create DIBs for GdkPixmap
The win32 code for GdkPixmap dib creation workes as such, but
when creating a cairo surface for it with cairo_win32_surface_create
from the HDC it fails for any bitmap format than RGB24, due to
assumptions in cairo.

In order to create a cairo surface for e.g. A1 formats we need
to let cairo create the surface via cairo_win32_surface_create_with_dib.
Additionally, we must then make sure to use this surface in
gdk_drawable_ref_cairo_surface, and to not create a new HDC for
it but reuse the cairo one (as only one HDC can write to a bitmap).

Even with this fixed there are some issues with current cairo, as
cairo A1 format isn't quite the same as win32 monochrome bitmaps.
Fixes for cairo will be submitted.
2011-11-09 13:33:19 +01:00
Alexander Larsson 36f2f822f2 win32: Make sure to set is_foreign for foreign pixmaps 2011-11-09 13:33:19 +01:00
Alexander Larsson a9b127660b win32: Fix up error message 2011-11-09 13:33:18 +01:00
Alexander Larsson b2f91bcb8f win32: GDIFlush before accessing pixmap bits 2011-11-09 13:33:18 +01:00
Kristian Rietveld 013c9169f6 Bug 661997 - Gtk crashes when changing the TreeView model while ...
Simply stopping rubber banding in gtk_tree_view_set_model() eliminates
the crash.  Reported by Thomas Perl.
(cherry picked from commit 91ae19768e)
2011-11-09 08:49:12 +01:00
Michael Natterer 3b5c5710da quartz: include all buttons' state in GdkEventMotion.state 2011-11-09 00:34:45 +01:00
Michael Natterer a381e8ea62 quartz: include all buttons' states in GdkEventButton.state 2011-11-09 00:25:01 +01:00
Michael Natterer d8cf87983e Bug 663605 - Fix event->state of many event types on quartz
Don't try to remember the current keyboard modifier and mouse button
states from the last event, because that isn't always right, and don't
set event.state = 0 for generated events. Instead, add private functions
to get the current states, and implement them with API that retrieves
these states independently from an event.
2011-11-08 21:46:30 +01:00
Matthias Clasen 7e1e5451d4 Don't use deprecated Pango api 2011-11-08 12:40:58 -05:00
Matthias Clasen e4cee92e22 Don't use deprecated Pango api 2011-11-08 12:40:48 -05:00
Cosimo Cecchi 5a03f4a6a5 iconview: layout items immediately when setting a GtkTreeModel
As the draw handler expects the items to be laid out already, we cannot
queue a layout here to avoid a race condition with the resize that is
queued immediately after, which in turn would lead to a segfault later
in the paint_item() implementation.

https://bugzilla.gnome.org/show_bug.cgi?id=663138
2011-11-08 12:40:31 -05:00
Matthias Clasen b424735a39 Print dialog: small keynav improvement
Mark the page range entry and the copies spin button as
activates-default.

https://bugzilla.gnome.org/show_bug.cgi?id=662670
2011-11-08 12:40:11 -05:00
Matthias Clasen 0f22ef3f31 GtkSearchEngineTracker: port to tracker 0.12
We simply use the Tracker DBus api here, caching and direct
access that come with libtracker-sparql are probably not needed
here. Based on a patch by Martyn Russell.

https://bugzilla.gnome.org/show_bug.cgi?id=658272
2011-11-08 12:36:23 -05:00
Antoine Jacoutot 4a22e2ceab gtkmountoperation-x11: unbreak compilation on OpenBSD.
Add missing header to prevent undeclared definitions.
Bug #659565
2011-11-08 12:31:46 -05:00
Richard Hughes 6a4a78d6a2 Fix a segfault if the GAppInfo does not have an icon
This fixes the following backtrace:

 0  g_logv (log_domain=0x7ffff60461a4 "GLib-GObject", log_level=<optimized out>,
    format=0x7ffff599c322 "%s: assertion `%s' failed", args1=0x7fffffffc418) at gmessages.c:577
 1  0x00007ffff59312d2 in g_log (log_domain=<optimized out>, log_level=<optimized out>,
    format=<optimized out>) at gmessages.c:591
 2  0x00007ffff601c3c7 in g_object_ref (_object=0x0) at gobject.c:2648
 3  0x00007ffff7721e22 in gdk_x11_app_launch_context_get_startup_notify_id (context=<optimized out>,
    info=0x7fffe8004b40, files=<optimized out>) at gdkapplaunchcontext-x11.c:331
 4  0x00007ffff62e60d0 in _g_desktop_app_info_launch_uris_internal (appinfo=0x7fffe8004b40, uris=0x0,
    launch_context=0x7fffe401c800, spawn_flags=G_SPAWN_SEARCH_PATH, user_setup=0, user_setup_data=0x0,
    pid_callback=0, pid_callback_data=0x0, error=0x7fffffffc848) at gdesktopappinfo.c:1269
 5  0x00007ffff62e630a in g_desktop_app_info_launch_uris (appinfo=<optimized out>, uris=<optimized out>,
    launch_context=<optimized out>, error=<optimized out>) at gdesktopappinfo.c:1341
 6  0x00007ffff62e636b in g_desktop_app_info_launch (appinfo=0x7fffe8004b40, files=<optimized out>,
    launch_context=0x7fffe401c800, error=0x7fffffffc848) at gdesktopappinfo.c:1388
2011-11-08 12:29:11 -05:00
Chun-wei Fan 278325f611 msw_style.c: Use G_PI rather than M_PI
M_PI is not universally available...
2011-11-08 12:37:15 +08:00
Chun-wei Fan 7e8d3aa812 Update GTK+ DLL Visual C++ projects
Include the MS-Windows themes engine into the main GTK+ DLL in the build
2011-11-08 11:09:56 +08:00
John Ralls fadc82ad26 [Quartz Bug 663182] NSImage throws an exception from _gtk_quartz_create_image_from_pixbuf()
If _gtk_quartz_create_image_from_pixbuf is given a pixbuf with size 0, 0
or which produces an NSImage with size 0.0, 0.0, it throws an exception
which Gtk doesn't handle.
2011-11-07 13:41:14 -08:00
Michael Natterer 32b70a56d1 gdk: exclude MOD1 from the virtual modifier mapping
which effectively nails down the MOD1 == ALT assumption that is valid
in all other parts of GTK+. After the modifier abstraction fixes for
OSX, the virtual mapping is now (correctly) used in more places, and
caused problems with the common default PC keyboard layout on X11 that
colocates ALT and META on the same key.
(cherry picked from commit ac943bf69a)
2011-11-07 20:19:05 +01:00
Alexander Larsson c3601481b7 Merge branch 'gtk-2-24-win32' into gtk-2-24 2011-11-07 15:07:01 +01:00
Dieter Verfaillie fe67f04a16 win32: fix scrolling artifacts
When scrolling a window partially obscured by another window,
artifacts of the obsuring window where being blitted into
the newly scrolled position. In other words, BitBlt copies
the covered region (basically garbage instead of what we want)
and does not cause a repaint (unlike how XCopyArea behaves).

Replacing BitBlt() with the old ScrollDC gymnastics (removed from
blit_inside_window() in commit e96a41be45)
when being passed a Window for blit_inside_drawable() makes these
artifacts go away.

Thanks to Alexander Larsson for figuring out the cause and
pointing out possible solutions.
2011-11-07 14:56:38 +01:00
Michael Natterer 6f4a6b4936 quartz: handle recursive CFRunLoops
Fixes e.g. crashs when dropping from finder.

Turn the "getting_events" boolean into a counter to handle poll_func()
being called recursively, and track the loop depth correctly by
changing its counter before bailing out in run_loop_observer_callback().
This way we reallocate our autorelease pool at the right time, and
don't kill memory that is still in use by outer run loops.

Also drain, not release the pool, just for some defensive forward
compatibility.
2011-11-06 23:12:57 +01:00
Kristian Rietveld 5123ad079e quartz: make gdk_quartz_osx_version conform to coding style 2011-11-06 09:34:39 +01:00
Kristian Rietveld ff75900b53 quartz: make test_resize () conform to coding style 2011-11-06 09:33:50 +01:00
Kristian Rietveld 6725dee3aa quartz: Process motion events within windows bounds without window set
When an NSEvent does not have the window field set, we already assumed
the event was not for us and discarded it.  But for NSMouseMoved events
we now make an exception, because such events generated after
using/clicking the main menu bar have the window field set to NULL while
the application window still has focus.

We used to experience a loss of motion events after using the menu bar,
this could be seen in buttons that stopped prelighting and first
clicks often being ignored unless you clicked somewhere else first.
These issues are fixed by this patch.
2011-11-06 09:25:16 +01:00
Kristian Rietveld d0e5025694 quartz: Factor out toplevel from NSEvent code into function 2011-11-05 22:53:22 +01:00
Kristian Rietveld cca1621e71 quartz: Separate out screen_point conversion in function
Reduces code duplication and confusion.
2011-11-05 22:45:05 +01:00
Kristian Rietveld 0f7c96b619 quartz: remove unused variable 2011-11-05 22:39:57 +01:00
Dieter Verfaillie a37c466698 win32: fix pasting screenshots taken with PrintScreen or Alt+PrintScreen
These are found on the clipboard in the biCompression == BI_BITFIELDS &&
biBitCount >= 16 format. In this case the BITMAPINFOHEADER is followed
by three DWORD specifying the masks of the red green and blue components,
but bfOffBits was not being adjusted accordingly.

Based on Massimo's comment on bug 631384 and verified on
http://msdn.microsoft.com/en-us/library/dd183386%28v=VS.85%29.aspx

https://bugzilla.gnome.org/show_bug.cgi?id=631384
2011-11-04 15:37:52 +01:00
Dieter Verfaillie a8e820aa75 win32: fix some typos 2011-11-04 15:37:51 +01:00
Chun-wei Fan b7d734bb30 Update VS property sheets
Don't use G_DISABLE_DEPRECATED, so that builds with newer stable GLib
versions would not be broken as a result.
2011-11-03 22:38:00 +08:00
Michael Natterer 0a0fd5af99 Bug 662633 - Scheduled transaction editor crashes with gtk+-2.24.7
Fix commit a516d2359c: check if
priv->arrow_button exists in forall().
2011-11-02 20:27:39 +01:00
Alexander Larsson 985fff354d win32: Fix some warnings 2011-11-02 16:49:55 +01:00
Alexander Larsson 6cb04372f0 win32: Hack to make statusbar menus show up visible: 2011-11-02 16:11:54 +01:00
Alexander Larsson e943d7d8e1 Don't show text in file selector bookmark toolbar
The text is empty anyway.
2011-11-02 14:48:21 +01:00
Alexander Larsson 3cd9920e14 win32: Ensure newly mapped toplevels are inside the workarea
This is what e.g. metacity does, and its needed to e.g. get the inital
position of the gimp dock window right.
2011-11-02 14:30:23 +01:00
Alexander Larsson f7438ce4e4 win32: Fix placement at initial position
Positioning windows at 0,0 post creation failed, because it
was mapped with CW_USEDFAULT, but private->x/y still said 0,
so moving it to 0,0 did nothing. We now always position the
window at the right place, even when not mapped, but we
create it at CW_USEDEFAULT initially and store that position
before moving it to the right place.

This fixes the window sizing test in testgtk and the inital
position for the gimp toolbar.
2011-11-02 12:15:53 +01:00
Alexander Larsson 1a624ea818 win32: Fix synaptics trackpad issues
The synaptics trackpad driver has some weird behaviour on scroll.
It pops up a window over the mouse pointer (looking like a scrollbar).
This has two problems:
* We get extra enter/leave events for the trackpad window
* We get back the trackpad window when we look for the window
  under the mouse to deliver the mousewheel message.

So, we add some trackpad specific hacks to avoid this (sigh) based
on the trackpad window window class.

This fixes bug #542777 and was partially based on a patch there
from Peter Clifton.
2011-11-01 22:25:26 +01:00
Egon Elbre 718af6870f fix: win32 tilt axis range 2011-11-01 21:25:14 +01:00
Alexander Larsson c88ccc632a Make print-editor test use double buffering in preview
This makes preview work on win32
2011-11-01 21:07:14 +01:00
Alexander Larsson 49d017dcb9 win32: Default to MS-Windows theme
It really makes little sense to not look like windows apps on windows.
If you really want you can change this via a .gtkrc-2.0 file
2011-11-01 14:23:44 +01:00
Alexander Larsson 8f6f64fe10 win32: Make WINTAB support work
Lots of rework to make input events work in the csw world
2011-11-01 12:38:15 +01:00
Martin Renold 2cd09a6653 win32: fix invalid cast 2011-10-28 11:16:57 +02:00
Alexander Larsson 2090e37ffb win32: Fix ms-windows theme to not create native subwindows
GDK_WINDOW_HWND() calls from outside gdk calls ensure_native_window,
but we really want the HWND of the impl window, so call
the new gdk_win32_window_get_impl_hwnd() instead.
2011-10-28 11:06:59 +02:00
Alexander Larsson 26b97f63c9 win32: Add gdk_win32_window_get_impl_hwnd
This is needed to fix the ms-windows theme not to create
native windows for all child windows.
2011-10-28 11:05:53 +02:00
Michael Natterer e81b6971d8 gtkrc.key.mac: add '"' missing from last commit 2011-10-28 10:19:24 +02:00
Morten Welinder afce8c7341 win32: Actually check for IPrintDialogCallback in configure 2011-10-28 09:10:40 +02:00
Alexander Larsson 4b5b28b64f win32: Fix modal_hint handling
Modal hints are not really a stack. All windows that are modal
are allowed to get input, not just the top one.

This fixes bug #604156
2011-10-27 22:13:54 +02:00
Alexander Larsson 6d1b818560 win32: Don't use API_CALL for SetWindowLong
This can return 0 without it being an error.
Should fix the last issue with bug #142874
2011-10-27 21:12:32 +02:00
Alexander Larsson 47095f97d2 win32: Make flush/sync work like in X
gdk_flush() should gdk_display_sync() on all open displays.

Both for display_flush and display_sync it seems useful to call
GdiFlush, but we don't have anything extra to do for display_sync,
as there is no inherent roundtrip on win32.

This should close bug #84314
2011-10-27 21:12:31 +02:00
Alexander Larsson 8588944cb9 win32: Add custom placements for some window types
Windows with transients: center on parent
Splash screens: center on monitor
Also properly ignores initial moves of unmapped
windows that are not override redirect or HINT_POS

Fixes bugs #324254 and #612359
2011-10-27 21:12:24 +02:00
Alexander Larsson ac00340d4c win32: More robust way to ensure we get a configure event after move/resize
There were still cases where we didn't get a WINDOWPOSCHANGED after
a SetWindowPos() call, like e.g. with a larger minimum size than
the set size (bug #574935)

So, we revert the previous fix and now just always manually emit
a configure notify after the move_resize call. Also, we inhibit
the WINDOWPOSCHANGED configure event during the move_resize operation
to avoid multiple Configures.
2011-10-27 10:42:07 +02:00
Alexander Larsson f44c6d66bf win32: Ensure we always send a configure event when changing size/pos
There are some cases where we don't get a WINDOWPOSCHANGE such that
we generate a configure event, even if we called gdk_window_move_resize()
or similar. For instance:
* The window is fullscreen
* The window is maximized
* The specified pos/size is the same as the current one

However, as per X11 ConfigureNotify semantics we *always* want one, or
we could run into issue like e.g. bug #537296 where we're waiting for
the CONFIGURE to call gdk_window_thaw_toplevel_updates_libgtk_only().
2011-10-26 21:46:19 +02:00
Alexander Larsson 4f9e1dd414 win32: By default, allow windows larger than the screen 2011-10-26 21:44:49 +02:00
Alexander Larsson 8c9963f9c3 win32: Fix size or style changes during fullscreen
When we're fullscreen we should update the cached hints, and we
should not apply the normal hints to the style.

This fixes bug #516822
2011-10-26 20:45:00 +02:00
Alexander Larsson 9c575532fd win32: Use WM_NCDESTROY instead of WM_DESTROY
WM_NCDESTROY gets called after children are destroyed, which is
the semantics DestroyNotify has in X11.
2011-10-26 12:45:09 +02:00
Alexander Larsson 9da34d0ec5 win32: Don't remove the window from the handle table on destroy
We always get the WM_DESTROY message anyway, and we remove it there.
Bug #336416 even claims this could be a leak if the WM_DESTROY
message was not seen before the DestroyWindow call returned, as
the WM_DESTROY message could not be handled later without the
window in the handle table. I'm not sure this can happen, but we
might as well remove it.
2011-10-26 12:45:06 +02:00
Alexander Larsson 0c0c741885 win32: don't input_window_destroy twice
The common code already calls input_window_destroy
2011-10-26 12:45:04 +02:00
Alexander Larsson 7b425eead7 win32: Make set_keep_above work also for non-mapped windows
This fixes bug #171456
2011-10-26 12:44:54 +02:00
Alexander Larsson d463030660 win32: Send window-state-changes before configure events
This is requires to that the state of the window is right when
you get the configure event (and to match what X does).

Fixes bug #169811
2011-10-26 10:26:38 +02:00
Michael Natterer ccf12f7b40 gtkrc.key.mac: add Command-cursor text navigation
and some emacs-ish Control bindings that work in native widgets.
Patch from Michael Hutchinson.
2011-10-25 22:19:11 +02:00
Michael Natterer 79a92f99a9 gtkrc.key.mac: remove half the file, it was an accidential double paste 2011-10-25 17:01:25 +02:00
Alexander Larsson cd7fa0385c win32: Send initial configure
We need to send a configure event when a window is shown.
2011-10-25 16:41:52 +02:00
Alexander Larsson 5bd8485a3d win32: Ignore client requested window move/size during SIZEMOVE
This will just be fighting the user like in e.g.
https://bugzilla.gnome.org/show_bug.cgi?id=64428
2011-10-25 16:13:47 +02:00
Alexander Larsson c87114cb14 win32: Remove most special casing of WINPOSCHANGED during modal ops
There is no particular reason to special case this, we want to handle all
sort of normal events. The only special thing we keep is that
as an optimization we pump the message loop extra during a WINPOSCHANGED
in a modal operation as that will cause us to repaint faster.

Also, bump the arbitrary number of mainloop iterations for the timer.
I don't see why we need it at all, but at least doing more than one
iteration if needed should be nice.
2011-10-25 15:36:13 +02:00
Alexander Larsson b0d108a5c4 win32: Fix missed resize exit message
When you start a window resize or move via the window menu and
don't actually change anything we're not getting an exitsizemove.
In order to work around this we also look for WM_CAPTURECHANGED.
2011-10-25 15:34:22 +02:00
Alexander Larsson 2dfd498fd8 win32: Handle all window changes in WINDOWPOSCHANGED
This moves all the code from WM_SIZE, WM_MOVE, and WM_SHOWWINDOW into
one place, cleans up the code and makes sure we only send a single
configure event even if both size and position changes.
2011-10-25 14:38:16 +02:00
Alexander Larsson e2d3bdf68c win32: Fix up window_show
We don't pass in raise anymore, but already_mapped.
Also, already_mapped must be used rather than MAPPED, as we already
synthesize the MAPPED in the generic code (and thus we don't have
to synthesize it again).
2011-10-25 14:26:22 +02:00
Michael Natterer c040b03c2e gtkquartz: don't free the string returned by get_bundle_path()
It's statically allocated.
2011-10-22 23:08:32 +02:00
Jerome Lambourg b85176789b win32: fix themed notebook tab renderering
The ms-windows engine incorrectly displays notebooks: the
tabs are not attached to the body, and look more like
regular buttons than actual notebook tabs. Also, the frame
around the notebooks is also incorrectly drawn.

https://bugzilla.gnome.org/show_bug.cgi?id=650300
2011-10-21 14:45:59 +02:00
Dieter Verfaillie 97a0234370 win32: correctly handle difference between tab_pos and gap_side when drawing an extension (notebook tab) 2011-10-21 14:45:54 +02:00
Dieter Verfaillie 900f39d595 win32: add TODO mentioning GtkButton::child-displacement-x & y should be 0 when XP theme is active 2011-10-21 14:45:50 +02:00
Arnaud Charlet 628093a4e1 win32: fix typo in msw_style.c
https://bugzilla.gnome.org/show_bug.cgi?id=647460
2011-10-21 14:45:42 +02:00
Dieter Verfaillie 12507a7cc2 win32: Call GetQueueStatus instead of PeekMessage PM_NOREMOVE
Calling PeekMessage can cause reentrant calls into the window procedure
for sent (as opposed to posted) messages, so its not safe to call
when we're not expecting reentrancy. Instead we call GetQueueStatus
when we're just looking for availible messages.

Fixes https://bugzilla.gnome.org/show_bug.cgi?id=552041
2011-10-21 11:38:31 +02:00
Chun-wei Fan 661cddb650 Update VS 2010 property sheet
Correct the DefDir property...
2011-10-20 17:00:48 +08:00
Chun-wei Fan 67c410d51b Update VS 2010 property sheet
Correct the DefDir property...
2011-10-20 16:59:36 +08:00
Alexander Larsson 039f5fdfb5 Better crossing events and grab destination reporting
We new report to the right window during !owner_event grabs, and
we send proper enter and leave events.
2011-10-19 22:41:14 +02:00
Alexander Larsson bfe27c0aef win32: Record the native event mask in use 2011-10-19 22:41:13 +02:00
Alexander Larsson c6cab74920 Use right native_window for implicit grabs
The native grab really is on the window that got the button press event.
2011-10-19 22:41:12 +02:00
Alexander Larsson b34ff7b3ea in window_at_pointer, ensure that we handle non-client areas correctly
We should not return a window if the pointer is in the non-client area,
like the titlebar.
2011-10-19 22:41:10 +02:00
Alexander Larsson a4288a88f4 Handle implicit grabs 2011-10-19 22:41:08 +02:00
Matthias Clasen 71e187b315 Post release version bump 2011-10-17 19:05:50 -04:00
Matthias Clasen 7299d70760 Fix make check 2011-10-17 18:42:12 -04:00
Matthias Clasen 6d7fe30698 Updates 2011-10-17 17:59:05 -04:00
Matthias Clasen 3a1ad288a6 Improve the deprecation note for GDK_DISPLAY
As pointed out in bug 653847.
2011-10-17 13:14:18 -04:00
John Ralls c34c302308 Bug 658772: Directory paths for resource directories are hard coded.
Corrected formatting to match coding standards; introduced local statics
to prevent leaking returned strings.
2011-10-15 12:49:12 -07:00
Javier Jardón fb99ca1979 gtkentrycompletion: check return value because It can be non-UTF8
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=624270
2011-10-13 14:01:08 +01:00
Alex Corrado fff25d3a3a Quartz, Bug 655057: Eliminate Compiler Warning
When compiled with older SDKs, the original change for this bug caused a
compiler warning about NSWindow not being able to handle a setStyleMask
message. This tricks the compiler into thinking that it can.
2011-10-09 09:52:14 -07:00
John Ralls 0d0412bcc9 Bug 658772: Directory paths for resource directories are hard coded.
Provide dynamic path discovery functions as are provided for win32.
2011-10-08 18:08:29 -07:00
Kristian Rietveld b3314acd97 quartz: also update window position on windowDidResize
When a window goes fullscreen, the resize also changes its size.
2011-10-08 11:28:44 +02:00
Michael Natterer 21e971b3cb gtk: also define the default *virtual* accel mod mask
and use it in stock items and GtkAccelGroup. Change the non-virtual
one to MOD2 on OSX, so hardcoded accelerators in the IM context and
the treeview work.
2011-10-07 20:13:09 +02:00
John Ralls aeae02d3e6 Bug 628396: Gtk build fails because of objective-c elements 2011-10-04 17:37:17 -07:00
Michael Natterer 5a5d6d28c2 quartz: my last commit had merge junk in it, sorry 2011-09-28 19:01:01 +02:00
Michael Natterer 931a228ce0 quartz: don't filter away directly encoded 24-bit UCS characters
gdk_unicode_to_keyval(uc) returning (uc | 0x01000000) is not an
error return value but simply the way to encode 24-bit unicode
characters directly as keyvals.
2011-09-28 13:56:36 +02:00
Dieter Verfaillie f333c9dc23 win32: Fix DnD when drag icon is below the pointer
By reverting gdk_drag_find_window_for_screen logic to what it was
before eb21a7df29.
The old logic knew how to ignore drag_window when searching
for dest_window, but that code was removed (I guess by accident).

https://bugzilla.gnome.org/show_bug.cgi?id=616544
2011-09-27 22:22:14 +02:00
Dieter Verfaillie c608ee0092 win32: dnd should not be registerd for offscreen windows
https://bugzilla.gnome.org/show_bug.cgi?id=616544
2011-09-27 22:22:01 +02:00
Peter Clifton 7ee5e4f2c6 Win32: Fix _gdk_windowing_window_at_pointer to correctly return a toplevel
Commit 5ebb32d1ff didn't add the correct
code to find the toplevel window. The WindowFromPoint() function does
not return the toplevel window in the hierarchy, it returns the deepest
non-disabled, non-invisible child. As we don't use invisible or disabled
windows, we don't actually need to use the ChildWindowFromPoint walk for
the non get_toplevel case, so we can remove that code path.

To find a toplevel, we need to start from the desktop and work up, using
ChildWindowFromPointEx (to ignore invisible and disabled windows). If we
don't ignore invisible and disabled windows (as is the case with the
ChildWindowFromPoint call, we are liable to get returns of hidden or
disabled children of the desktop which don't belong to us, but notionally
occupy the same area under the pointer.

An alternative might be to start our walk with one of the children of the
desktop owned by our process and thread - which we can enumerate using,
the EnumThreadWindows call, or (presumably) determine internally. This
would not work when we are inside a GtkSocket though, as the children of
the desktop would belong to the process owning the GtkPlug - we would
have to rely on our own list of windows.

For correctness, this commit adds tests to ensure that we don't try to
return either x or y window coordinates if that corresponding pointer is
NULL.

https://bugzilla.gnome.org/show_bug.cgi?id=658842
2011-09-27 09:18:37 +02:00
Peter Clifton fd01442c7e Win32: Ensure native back-end for windows where the user requests their handle
https://bugzilla.gnome.org/show_bug.cgi?id=658841
2011-09-27 09:15:36 +02:00
Chun-wei Fan c79d34263b Update VS property sheets
Separate intermediate folders for each project to avoid VS warnings/errors
during the build
2011-09-26 15:43:32 +08:00
John Ralls 81c2166eb9 Quartz: Fix a typo and a compilation warning 2011-09-25 14:44:54 -07:00
John Ralls d08d4507c9 Bug 658767 - Drag and Drop NSEvent capture is racy
Create a synthetic NSMouseLeftDown to store in the GtkQuartzDragSourceInfo
rather than relying on the NSWindow's latest event being the right one (or the
right kind).
2011-09-25 12:15:50 -07:00
Kristian Rietveld 4e64f6012f Bug 657770 - Write to released memory in gtkdnd-quartz.c
Clear the Drag paste board just before the info->context is released.
This way the GtkDragSourceOwner is released just before the drag context
is and thus can pasteboard:provideDataForType: not accidentally access
an already released drag context
2011-09-25 12:13:23 -07:00
John Ralls 94fc15ad95 Bug 653450 - gtkfilechooser crashes when added favorite
Ensure that display is set during drag-and-drop, and that string lists'
memory is zeroed after allocation to prevent g_strfreev() from
over-running.
2011-09-24 10:56:05 -07:00
John Ralls 10352d63af Fix typo in 24a7e798 2011-09-23 15:00:03 -07:00
John Ralls 224a7e798a (Backport acf1345) Fix refresh of static autorelease_pool so that it doesn't happen in gtk-nested loops. 2011-09-23 14:03:59 -07:00
Steffen Gutmann 33154e1c7d Bug 659907 - gdk_quartz_draw_opaque_stippled_pattern crashes 2011-09-23 09:03:36 +02:00
Michael Natterer 25227a715e GtkLinkButton: forgot to #include "gtkprivate.h" 2011-09-20 08:58:03 +02:00
Javier Jardón 5da4473e27 gtkcomboboxtext: Some documentation fixes
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=656053
2011-09-19 13:50:11 +02:00
Michael Natterer a516d2359c gtk: fix warning when finalizing a GtkToolbar
Move destruction of child widgets from finalize() to dispose()
because unparenting emits a signal with old_parent as object
parameter, which tries to ref the toolbar that is being
finalized.
2011-09-19 01:05:26 +02:00
Michael Natterer 7be2ea823d Bug 659406 - Abstract what triggers a context menu
Add _gtk_button_event_triggers_context_menu() and use it instead
of checking for event->button == 3, so context menus are invoked
correctly on the Mac.
2011-09-19 00:32:52 +02:00
Michael Natterer 2666c0e71f app: abstract which modifiers are used for extending and modifying selections
which are SHIFT and MOD2 on the Mac, and SHIFT and CONTROL otherwise.
Use the new define all over the place and rename variables and
members to not say "shift" or "control".
2011-09-17 20:05:33 +02:00
Michael Natterer 9ea7ae84fa gtk: never undo, save, commit :( sorry... 2011-09-17 19:37:08 +02:00
Michael Natterer b057a311e7 gtk: use GTK_NO_TEXT_INPUT_MOD_MASK also in gtkfilechooserdefault.c 2011-09-17 15:25:02 +02:00
Michael Natterer 1f6a921158 gtk: allow to specify accelerators in a platform-independent way
Introduce <Primary> in accelerator strings, which resolves to
GDK_CONTROL_MASK on X11/Win23, and to GDK_META_MASK on quartz.
Also serialize CONTROL/META as <Primary> depending on the platform.
2011-09-16 16:12:23 +02:00
Michael Natterer 812678a70c gtk: fix entering of Option-foo symbols on the Mac
and use it in the IM contexts, so Option-foo is no longer
filtered away.
2011-09-16 16:10:06 +02:00
Michael Natterer 659df720ca gtk: use GTK_DEFAULT_ACCEL_MOD_MASK instead of GDK_CONTROL_MASK in gtkstock.c 2011-09-16 15:56:29 +02:00
Michael Natterer 5e602ab0f2 quartz: resolve the modifier confusion on the Mac
- map Alt/Option to MOD1
- map Command to MOD2
- map MOD2 to the virtual Meta
- improve/fix (?) group handling in gdkkeys-quartz.c
2011-09-16 15:54:03 +02:00
Michael Natterer d83c86d42e gtk: disable mnemonics in gtkrc.key.mac, they don't exist on the Mac 2011-09-16 15:51:33 +02:00
Michael Natterer be1eea612c gtk: enable setting virtual modifiers in GtkCellRendererAccel
Call gdk_keymap_add_virtual_modifiers() on event->state,
so virtual modifiers get added at all.
2011-09-16 15:39:23 +02:00
Federico Mena Quintero a350b667c1 Merge branch 'filechooser-recent-folders-2-24' into gtk-2-24 2011-09-13 15:26:05 -05:00
Federico Mena Quintero 2a2edc9564 bgo#658600 - Don't try to focus the location entry in Recent-files mode
We don't ever start up in Search mode, so we don't need an extra check for that mode, yet.

Signed-off-by: Federico Mena Quintero <federico@gnome.org>
2011-09-13 15:25:52 -05:00
John Ralls 87ad09a8ee bgo#514843 - [filechooser] Deal with corrupted .gtk-bookmarks gracefully
We weren't checking for the lines in that file being valid UTF-8 strings.
2011-09-12 14:27:40 -05:00
Ihar Hrachyshka 9332c9f79f Updated Belarusian translation. 2011-09-11 21:49:31 +03:00
Javier Jardón 5aac419a38 Make maintiner mode enabled by default
See http://blogs.gnome.org/desrt/2011/09/08/am_maintainer_mode-is-not-cool/
2011-09-09 15:46:13 +01:00
John Ralls 45d61a5fd6 Bug 617583 - Dead accents keys don't work in GTK+ applications on OSX
Handle dead keys in special_ucs_table and have them converted by
UCKeyTranslate(), so all dead key combinations can be entered.
Later, this should be handled in the input method, just as it's
done for X11/Win32.
2011-09-09 10:12:40 +02:00
Tor Lillqvist d2d6caf00a Remove superfluous call to _gdk_event_button_generate()
Fixes bug #630962.
2011-09-05 01:33:29 +03:00
William Jon McCann dafc1eda80 Don't call object notify for something that isn't a property 2011-09-04 23:00:57 +02:00
Ihar Hrachyshka b50bb5b92a Updated Belarusian translation. 2011-09-04 19:47:24 +03:00
Micah Carrick bd37724faf Fix annotation for Gtk.TreeView.enable_model_drag_source
https://bugzilla.gnome.org/show_bug.cgi?id=649979
2011-09-01 11:49:20 -05:00
Federico Mena Quintero 425c2e93a8 Merge branch 'filechooser-recent-folders-2-24' into gtk-2-24 2011-09-01 11:42:00 -05:00
Federico Mena Quintero e0f3b18c37 bgo#657949 - [filechooser] Don't ellipsize filter names for 2.24
That only works well in 3.0, where the natural-sizing code works to get us a good default size
for the filters drop-down.
2011-09-01 11:41:54 -05:00
Federico Mena Quintero 1d94ae433a Merge branch 'filechooser-recent-folders-2-24' into gtk-2-24
This contains the fixes to centralize the handling of the pathbar, recent-files widgets,
and filename entry - the entry would sometimes be missing before these fixes.

This also contains a fix to the recently-used mode, so that the file list is indeed
sorted in newer-to-older order.
2011-09-01 11:25:47 -05:00
Chun-wei Fan 9a4405f376 Fix the VS9 property sheet
Made up for missed semicolon for the "installation" of the gdkprivate.h
header which caused the projects not to load properly
2011-08-31 15:15:08 +08:00
Chun-wei Fan 92e632d525 Update README.win32 and Visual C++ Readme.txt's
Tell people about the GNOME Live! page which gives a more
detailed outline on building the GTK+ stack with Visual C++.
2011-08-31 14:53:24 +08:00
Matthias Clasen 200d038883 Post-release version bump 2011-08-30 16:59:44 -04:00
Matthias Clasen 1e11448337 Update for 2.24.6 2011-08-30 16:22:14 -04:00
Matthias Clasen 7667f9330b Disable a nonworking test
Same as on GTK+ 3.x
2011-08-30 16:21:19 -04:00
Matthias Clasen 55e1b27c6f trayicon-x11: Fix warnings when visual is not available.
This fixes a regression introduced in commit
b1a1685a33eca16979e63d79915395af0b36. gdk_visual_get_*_pixel_details()
should not be called with a NULL visual.

https://bugzilla.gnome.org/show_bug.cgi?id=649588
2011-08-30 14:31:00 -04:00
Matthias Clasen 627af13e74 Make gtk_status_icon_set_name() work reliably 2011-08-30 14:23:59 -04:00
Matthias Clasen c07efad261 Explicitly link gdk and gtk against libm
We used to get an implicit -lm from gdk-pixbuf, but that has
recently been changed to not inject extraneous libraries into
link lines, so we have to do it ourselves now. This is more
correct, anyway.
2011-08-30 14:11:50 -04:00
Federico Mena Quintero b229df22c1 bgo#657186 - Sort the recent-files list in newest-to-oldest order
Otherwise it's not very useful... :)

Signed-off-by: Federico Mena Quintero <federico@gnome.org>
2011-08-30 11:21:13 -05:00
Federico Mena Quintero 6e31bc1128 Load and populate the recent-items in a single pass
There's no real asynchronicity going on, anyway, so let's do both within
a single iteration of the idle handler.

Signed-off-by: Federico Mena Quintero <federico@gnome.org>
2011-08-30 11:21:09 -05:00
Federico Mena Quintero 37f9feebd2 Don't sort the recent-items by hand
The mtime from GtkRecentManager may not the same as the file's actual
mtime, so the final result could appear unsorted to the user.  Instead,
we will let the view do the sorting.

Signed-off-by: Federico Mena Quintero <federico@gnome.org>
2011-08-30 11:21:04 -05:00
Federico Mena Quintero 79d16aab2b Set the location mode when changing the operation mode
Signed-off-by: Federico Mena Quintero <federico@gnome.org>
2011-08-30 11:20:45 -05:00
Federico Mena Quintero aa8f54b736 Switch to OPERATION_MODE_BROWSE when switching to volume or file shortcuts
Signed-off-by: Federico Mena Quintero <federico@gnome.org>
2011-08-30 11:20:39 -05:00
Federico Mena Quintero 70cc1add13 Remove the unused, initial-text logic from the location entry
Years ago, when the location entry only appeared in a popup window, it used to appear
populated with the current folder's path.  We had some logic to do this, but since now
the location entry appears in the main dialog, we can do away with that old code.

Signed-off-by: Federico Mena Quintero <federico@gnome.org>
2011-08-30 11:20:31 -05:00
Federico Mena Quintero 22d84f6277 Create the location_entry in a single function
We had duplicated code to create the entry in two cases, for Open and for Save modes.

Signed-off-by: Federico Mena Quintero <federico@gnome.org>
2011-08-30 11:20:24 -05:00
Federico Mena Quintero dfe7018284 Only unset the entry's contents if the entry exists
Signed-off-by: Federico Mena Quintero <federico@gnome.org>
2011-08-30 11:20:19 -05:00
Federico Mena Quintero 388143d563 Discard the search widgets in a separate function
Signed-off-by: Federico Mena Quintero <federico@gnome.org>
2011-08-30 11:20:13 -05:00
Federico Mena Quintero db9665ae08 Move the widgets above the hpaned to their own box
This way we can re-create the contents of that box easily without disrupting
the rest of the file chooser.

Signed-off-by: Federico Mena Quintero <federico@gnome.org>
2011-08-30 11:19:58 -05:00
Federico Mena Quintero ad82bc60ff Make operation_mode_set() handle SEARCH and RECENT modes as well
Signed-off-by: Federico Mena Quintero <federico@gnome.org>
2011-08-30 11:17:09 -05:00
Federico Mena Quintero f481458576 Centralize changing the operation mode in operation_mode_set()
This will be the central function to switch operation modes:  stop searches or the recent-files
process; switch widgets, etc.

We factor out the common code from recent_switch_to_browse_mode() and search_switch_to_browse_mode(),
and remove those functions.  All the code that switched modes by hand now calls
the central operation_mode_set().

Signed-off-by: Federico Mena Quintero <federico@gnome.org>
2011-08-30 11:17:03 -05:00
Federico Mena Quintero cb4b82e370 Remove duplicated code from *_switch_to_browse_mode()
That code indeed lives in operation_mode_stop(), so use it instead of
having inlined duplicates.

Signed-off-by: Federico Mena Quintero <federico@gnome.org>
2011-08-30 11:16:58 -05:00
Federico Mena Quintero 6c51b34597 Rename stop_operation() to operation_mode_stop()
We'll now prefix functions to change the impl->operation_mode with 'operation_mode',
for clarity.

Signed-off-by: Federico Mena Quintero <federico@gnome.org>
2011-08-30 11:16:53 -05:00
Matthias Clasen 89d217c90a GtkColorButton: Don't forget to close a cairo context
Patch by Jerome Lambourg, bug 655392.
2011-08-27 01:52:24 -04:00
Andika Triwidada dde74089f4 Revert "Updated Indonesian translation"
This reverts commit 37230e5cc9.
Commit to wrong branch, should have been to master
2011-08-18 16:27:19 +07:00
Andika Triwidada 37230e5cc9 Updated Indonesian translation 2011-08-18 15:14:04 +07:00
Michal Suchanek 5afa001a8d bgo#652045 - Initialize local_only in GtkFileChooserEntry
This has to be done also when we switch to the entry, otherwise completion for
non-local URIs won't work.
2011-08-17 11:01:43 -05:00
John Ralls a2a85a194c Bug 655122: Lion crashes during resize.
Move resizing detection to a separate function and detect resizes so that they don't result in grabs (which was causing the crash).
2011-08-13 14:11:29 -07:00
John Ralls 9edc6ca045 Bug 655122: Detect OSX version for handling version-dependent special cases (the one in question is resizing, which OSX 10.7 allows on all edges instead of the lower-right corner as on previous versions) 2011-08-13 13:55:08 -07:00
John Ralls a90d9da9e9 Bug 655087: Prevent drqwing when there are no rectangles in which to draw. 2011-08-13 13:20:22 -07:00
Kristian Rietveld 468deb67d5 quartz: Remove MAC_OS_X_VERSION_MIN_ALLOWED ifdef
I tried to suppress compiler warnings on pre-10.6 machines this way,
but it defeats its purpose when you compile for pre-10.6 machines on
a 10.6 machine.  For now, we have to live with the warnings when
compiling on/for pre-10.6 machines, there does not seem an easy and proper
way to suppress the warnings.
2011-08-12 23:22:03 -07:00
Benjamin Berg f0726904cb Fix polling for new data in cups print backend (bug #599664) 2011-08-06 10:40:36 +02:00
Kristian Rietveld 875e6f4bdb Bug 508601 - Copying from GTK+ applications causes crash
In GtkClipboardOwner pasteboard:provideDataForType do not call
_gtk_quartz_set_selection_data_for_pasteboard() is selection_data.length
is smaller than 0.  The function relies on having a positive length,
since it stores the length in a uint ...
2011-07-31 16:10:16 -07:00
Michael Hutchinson 5c73ebf54c Bug 655074 - Fix crash with undecorated windows on MacOS Lion 2011-07-25 09:21:09 -04:00
Chun-wei Fan 8f8da26c18 Update Visual C++ compilation items
-Added Visual C++ 2010 project files.  They are like the VS 2008 projects
 where the GDK and GTK+ projects are filled-in templates, which are filled-
 in during 'make dist', and added related README.txt file, and add them
 into distribution
-Updated the VS 2008 README.txt to reflect the latest situation regarding
 dependencies etc.
-Updated README.win32 to tell people about the now-available VS2010 projects
-Updated config.h.win32.in as VS 2010 ships with stdint.h
2011-07-25 12:20:21 +08:00
Federico Mena Quintero 119df7415e Save selection to recent-files in the asynchronous Save cases
Various paths in SAVE or CREATE_FOLDER return from ::should_respond() but
leave an asynchronous process running.  This process checks some things
in the user's selection, for example, 'does the file exist, and if so
do we need to bring up an overwrite-confirmation dialog?'.  When these
async processes complete *and* it is indeed time for the dialog to
be terminated (via the response-requested signal), we also need to
save the selection to the recently-used list - as ::should_respond() does
by itself in the cases when it can request a response immediately.

Signed-off-by: Federico Mena Quintero <federico@gnome.org>
2011-07-13 16:37:37 -05:00
Federico Mena Quintero 1a3605a23f Don't dereference a NULL
Signed-off-by: Federico Mena Quintero <federico@gnome.org>
2011-07-13 15:39:20 -05:00
Mario Blättermann 3822a334c5 [l10n] Updated German translation 2011-07-13 20:18:14 +02:00
Daniel Mustieles f9e77d7320 Updated Spanish translation 2011-07-13 10:48:17 +02:00
Piotr Drąg d14d18e371 Updated Polish translation 2011-07-13 08:44:11 +02:00
Federico Mena Quintero 6b0ab20bc7 Log to recent-files when confirming the file chooser
To make life easier for users, when apps don't properly update the recently-used list
after choosing a file, we now do that directly from the file chooser.

Signed-off-by: Federico Mena Quintero <federico@gnome.org>
2011-07-12 18:28:53 -05:00
Federico Mena Quintero 685a688470 No need to highlight the file's basename when setting the base folder
None of the cases where _gtk_file_chooser_entry_set_base_folder() appear to require
the entry highlighting the file's basename.  Doing the highlighting actually makes
things look weird in Save/Recent mode if you

  1. type a filename
  2. click on a recent-folder,

as right after (2) your filename would get its basename highlighted for
no apparent reason.

Signed-off-by: Federico Mena Quintero <federico@gnome.org>
2011-07-12 18:28:52 -05:00
Federico Mena Quintero d4b30f53d9 Hide the Create Folder button in recent-files mode when the pathbar is on
The create-folder machinery doesn't handle that case yet; we may enable it later
once we figure out the implications for the GUI.

Signed-off-by: Federico Mena Quintero <federico@gnome.org>
2011-07-12 18:28:52 -05:00
Federico Mena Quintero 18e27a24a0 Centralize the setting of the pathbar's widgets
It used to be that every part of the file chooser's code would show/hide the widgets
near the pathbar as needed.  Now we have two central functions:

  path_bar_update()
  path_bar_set_mode()

These take care of all the widget shuffling;  setting the visibility of the
pathbar, info bar, and Create Folder button as appropriate; setting the contents
of the info bar, etc. - based on the current operation_mode and action.

Signed-off-by: Federico Mena Quintero <federico@gnome.org>
2011-07-12 18:28:52 -05:00
Federico Mena Quintero 180774e948 Create the recently-used widgets and infobar from the pathbar widgets as well
Signed-off-by: Federico Mena Quintero <federico@gnome.org>
2011-07-12 18:28:52 -05:00
Federico Mena Quintero fef779f3b1 Move the pathbar creation to its own function
We will centralize the place where all the pathbar-related widgets are created:
the location button, the pathbar itself, the Create Folder button, and in
subsequent commits, the info bar as well.  We will deal with the pathbar/infobar
as a unit, instead of swapping them in and out in an ad-hoc fashion.

Signed-off-by: Federico Mena Quintero <federico@gnome.org>
2011-07-12 18:28:48 -05:00
Federico Mena Quintero cd82e5ceb6 Warn the user when he still needs to type a filename or choose a folder
Signed-off-by: Federico Mena Quintero <federico@gnome.org>
2011-07-12 17:52:53 -05:00
Federico Mena Quintero 673de40aed Return the recent-folder plus filename in Save mode from get_files()
Since the GtkFileChooserEntry already gets the recent-folder set upon it when a recent-folder
is selected, it already can give us the correct fully-formed path.

Signed-off-by: Federico Mena Quintero <federico@gnome.org>
2011-07-12 17:52:43 -05:00
Federico Mena Quintero 3449a4891a Allow resolving absolute paths even if there is no base_folder
This lets us do proper completion in GtkFileChooserEntry even when no base folder
has been set.  Completion for relative paths won't work, as usual, as expected.
2011-07-12 17:52:30 -05:00
Federico Mena Quintero 91b8043397 Set the filename entry's base folder when a recent-folder is selected
This lets the filename entry do completion relative to the selected recent-folder.

Signed-off-by: Federico Mena Quintero <federico@gnome.org>
2011-07-12 17:52:21 -05:00
Federico Mena Quintero 03b50bd9a9 Instruct the user to pick a folder when nothing is selected in the recent-folders list
Signed-off-by: Federico Mena Quintero <federico@gnome.org>
2011-07-12 17:52:08 -05:00
Federico Mena Quintero dacdb343db Put recently-used folders in the recently-used list
Signed-off-by: Federico Mena Quintero <federico@gnome.org>
2011-07-12 17:50:55 -05:00
Federico Mena Quintero e4ffea1173 Turn a struct field into a local variable
Signed-off-by: Federico Mena Quintero <federico@gnome.org>
2011-07-12 17:50:44 -05:00
Federico Mena Quintero dfdb51e324 Remove unused struct field
Signed-off-by: Federico Mena Quintero <federico@gnome.org>
2011-07-12 17:50:18 -05:00
Federico Mena Quintero b602220e2f Actually highlight the 'recently used' and 'search' items in the shortcuts bar
They weren't being selected in the shortcuts bar when those modes were
activated programmatically, instead of through the user selecting
them from the user interface.
2011-07-12 17:50:08 -05:00
Federico Mena Quintero ca74dc6a87 Start in recently-used mode when no folder is set
In RELOAD_EMPTY mode, when no folder has been selected by the calling app, we now
start showing the recently-used list.  The rationale is as follows:

  - In Open mode, the user is likely to pick a file he has used recently.

  - In Save mode, the user is likely to want a destination folder which
    he has used recently.

For the Save case, where we want to present the user with recent folders instead
of recent files, we will make the recent-list do so in subsequent commits.

Signed-off-by: Federico Mena Quintero <federico@gnome.org>
2011-07-12 17:49:47 -05:00
Stéphane Maniaci 76c24a4a81 Make GtkFileChoser remember the last directory opened
Introduces a 'LastFolderUri' settings key, where we remember the last-opened
folder from the previous instance of the file chooser.

The idea is that this works globally, across all applications, so it will be
easy to do things like

  1. Save an attachment from a mail (or some other file)
  2. Open another program
  3. Do File/Open and automatically get sent to the folder where (1) happened.

Signed-off-by: Federico Mena Quintero <federico@gnome.org>

https://bugzilla.gnome.org/show_bug.cgi?id=644426
2011-07-12 17:48:54 -05:00
Federico Mena Quintero dd0ce5dd1e Put the pathbar in the 'Save in folder:' row in Save mode
Now we reparent the browse_path_bar_hbox to that spot in Save mode,
or to be above the file lists in Open mode.  The pathbar makes for a very
clear indication of the location to save in.

Signed-off-by: Federico Mena Quintero <federico@gnome.org>
2011-07-12 17:38:32 -05:00
Federico Mena Quintero b9d00c42f8 Get rid of the save_folder_combo
And with this we get rid of the craziness of having a separate filter model
for the combobox's model.

Signed-off-by: Federico Mena Quintero <federico@gnome.org>
2011-07-12 17:36:22 -05:00
Federico Mena Quintero 0d02b8a681 Remove the expander in Save mode, and the configuration key
This effectively makes the file chooser always be in 'expanded' mode.
Later, we'll move the pathbar to the 'Save in folder:' line.

Signed-off-by: Federico Mena Quintero <federico@gnome.org>
2011-07-12 17:36:02 -05:00
Federico Mena Quintero d3e822882a Utility function to extract folders from the recently-used list
This extracts the parent folders from the items in the recently-used
list.  We'll use it in the file chooser to present a list of
recently-used folders.

Signed-off-by: Federico Mena Quintero <federico@gnome.org>
2011-07-12 17:27:00 -05:00
Federico Mena Quintero 1b605ee84b gtkfilechooserdefault.c update to 3.0 2011-07-12 15:00:15 -05:00
Federico Mena Quintero 0661008ebe gtkfilechooserentry.c update to 3.0 2011-07-12 13:48:57 -05:00
Federico Mena Quintero 032a7e50d8 gtkfilechooserprivate.h update to 3.0 2011-07-12 13:36:44 -05:00
Federico Mena Quintero 9858099f65 gtkfilechooser.c update to 3.0 2011-07-12 13:35:45 -05:00
Federico Mena Quintero 0bbee739d3 gtkfilechooserbutton.c update to 3.0 2011-07-12 13:32:41 -05:00
Federico Mena Quintero eec3cec225 gtkfilechooser.h update to 3.0 2011-07-12 13:23:10 -05:00
Federico Mena Quintero a0280d7f36 gtkfilechooserdialog.c update to 3.0 2011-07-12 13:21:40 -05:00
Juan Pablo Ugarte a5b92540d0 Make GtkBuilder do not delay construct properties that can be resolved
(so construct is respected when possible) and skip construct only props that
can not.
2011-06-29 11:48:18 -03:00
Mike Gorse 9f83204d48 bgo#653191 - fix uninitialized variable in gtk_file_chooser_entry.c 2011-06-27 15:05:25 -05:00
Colin Walters a068f575c8 introspection.m4: Update from g-i
This fixes substitution with dash.
2011-06-22 11:09:24 -04:00
Chun-wei Fan 5eda0da644 Update VS 2008 property sheet
It seems that gdkprivate.h is needed by gdkwin32.h
2011-06-21 10:13:56 +08:00
Matthias Clasen d7ac9cd71c Revert "gdk: Make background changes queue a repaint"
This reverts commit 254b9a4c54.
2011-06-20 08:10:49 -04:00
Chun-wei Fan d0aa7ffc61 Add G_ENABLE_DEBUG #ifdef check in gdkdisplay-win32.c
Commit 88707e6912 used
_gdk_win32_cf_to_string, which is only defined when G_ENABLE_DEBUG
is defined, so add G_ENABLE_DEBUG #ifdef around that part.
2011-06-16 13:48:56 +08:00
Chun-wei Fan 5f41ce5e16 Update VS 2008 projects
Use G_ENABLE_DEBUG for all debug builds
2011-06-16 13:34:54 +08:00
Matthias Clasen 59f5aa7d72 Bump version 2011-06-15 20:35:23 -04:00
Matthias Clasen 6351e8e134 Fix a forgotten instance of document-x-generic 2011-06-15 19:56:11 -04:00
Matthias Clasen 30e80efe3e Update NEWS 2011-06-15 19:56:11 -04:00
Javier Jardón ed9db7c3e5 Use 'const' instead G_CONST_RETURN 2011-06-16 00:51:17 +01:00
Javier Jardón 1516be6f69 gtk: Use 'const' instead G_RETURN_CONST 2011-06-15 19:03:44 +01:00
Javier Jardón bfe0193eaf gail: Use 'const' instead G_CONST_RETURN 2011-06-15 18:20:17 +01:00
Javier Jardón 9d393c1d53 gail/tests: Use 'const' instead G_CONST_RETURN 2011-06-15 14:54:10 +01:00
Javier Jardón 8d5d9e68ed gdk: Use 'const' instead deprecated G_CONST_RETURN 2011-06-15 14:47:19 +01:00
Daniel Drake 149750773e gtkdnd: Don't bind/unbind keycodes that couldn't be determined
At http://dev.laptop.org/ticket/10643 we are seeing that drag-and-drop
within the Sugar shell causes all of Sugar's custom keybindings to be
removed.

This is because gtkdnd tries to unbind XK_KP_Space, which (on my systems)
is resolved to NoSymbol by XKeycodeToKeysym(). NoSymbol has value 0,
the same as AnyKey, and XUngrabKey(AnyKey) is equivalent to unbinding
all possible keycodes.

Fix this by catching NoSymbol before binding/unbinding.

https://bugzilla.gnome.org/show_bug.cgi?id=652402
2011-06-13 15:10:11 +01:00
Marc-André Lureau 88707e6912 win32: resurect Windows clipboard selection notification
This is a rewrite of e6fa7394ba, with
misc fixes that should help with some bugs Tim was talking about.

https://bugzilla.gnome.org/show_bug.cgi?id=652239
2011-06-10 01:22:49 +02:00
Marc-André Lureau da746d5169 win32: fix gdk clipboard
https://bugzilla.gnome.org/show_bug.cgi?id=648931
2011-06-10 00:10:44 +02:00
Benjamin Otte 254b9a4c54 gdk: Make background changes queue a repaint
For client-side windows, we need to queue a repaint when the background
changes. For native windows, the windowing system does take care of it,
but client-side windows are our own, so we gotta do it manually.

https://bugzilla.gnome.org/show_bug.cgi?id=652102
2011-06-09 06:33:54 +02:00
Benjamin Otte 78ce7a4925 docs: Fix reference 2011-06-09 06:33:54 +02:00
Matthias Clasen 47e7d253c9 Fix a missing <SECTION>
This was causing GtkComboBoxText docs to appear on the
GtkContainer page.
2011-06-07 12:19:39 -04:00
Juan Pablo Ugarte 2e9e163bbf Fixed bug #576492 "GtkBuilder does not respect G_PARAM_CONSTRUCT properties"
Added G_PARAM_CONSTRUCT flag in gtk_builder_get_parameters() checks as suggested by Johan Dahlin.
2011-06-03 15:17:21 -03:00
Matthias Clasen 7a227b5806 Correct a deprecation note
https://bugzilla.gnome.org/show_bug.cgi?id=651048
2011-05-25 22:46:40 -04:00
Colin Walters c4b2d3a144 gtkrc.c: Use g_ascii_dtostr for formatting floats
We should be locale-independent.

https://bugzilla.gnome.org/show_bug.cgi?id=647908
2011-04-27 17:10:34 -04:00
Benjamin Otte 19c145570a tracker-search: Fix includes 2011-04-26 19:33:23 +02:00
Benjamin Otte 65c1419742 x11: #ifdef USE_SHM function where it belongs
Otherwise, we end up with an unused function warning without SHM
2011-04-22 01:08:12 +02:00
Jesse van den Kieboom baf8bf967d Added out annotations for gtk_icon_size_lookup/_for_settings
Backported from master commit e36ba3465.

https://bugzilla.gnome.org/show_bug.cgi?id=637606
2011-04-21 10:58:13 +02:00
Chun-wei Fan 2b7c3a2e66 Update build/win32/vs9/README.txt
Make the build instructions and information
more up-to-date and clearer to people.

Please let me know if I have missed any details
that are needed. Thank you!
2011-04-18 00:31:45 +08:00
Matthias Clasen c3a4f0f777 Document that gtk_container_propagate_expose is going away
Requested in https://bugzilla.gnome.org/show_bug.cgi?id=646913
2011-04-08 20:31:21 -04:00
Matthias Clasen d69cbfd374 Document some GtkEntry functions as going away in GTK+ 3
https://bugzilla.gnome.org/show_bug.cgi?id=646773
2011-04-06 00:44:13 -04:00
Matthias Clasen a06089a248 Document ::expose-event as deprecated
This doesn't really help that much, but better than nothing.
2011-04-05 14:58:20 -04:00
Matthias Clasen ac9e57127a Bump version 2011-04-01 18:31:25 -04:00
Matthias Clasen b0d55a3061 Updates 2011-04-01 17:40:39 -04:00
Matthias Clasen 7565bcd928 List all available icons in Makefile.am
This mismatch was causing e.g. gtk-caps-lock-warning.png to show
up as missing image in entries.

At the same time, sort the icon list alphabetically.
2011-04-01 16:44:12 -04:00
Matthias Clasen 174ad13a2f Use existing mime type for GTK_FILE stock icon
document-x-generic is not actually a mimetype. Using text-x-generic
instead lets us work out-of-the-box in a11y themes.
2011-04-01 16:44:12 -04:00
Alexander Larsson c9c23b0728 Ensure we always grab the gdk lock in async callbacks
Async callbacks are delivered in idles, so we need to make sure
we get the gdk lock before calling any gdk/gtk stuff. This was
missing in a few places.
2011-03-28 14:00:31 +02:00
Chun-wei Fan 7dec704421 Update VS Property sheet
Make GDK-Pixbuf include path consistant with autofiscated builds
2011-03-26 15:32:45 +08:00
Kjartan Maraas 7308b4f01b Updated Norwegian bokmål translation 2011-03-20 10:41:26 +01:00
Wouter Bolsterlee eb475e6056 Updated Dutch translation by Wouter Bolsterlee 2011-03-19 17:43:15 +01:00
Mike Gorse ddd632dfc6 Support GtkComboBoxEntry in GAIL again
GAIL now supports the has_entry property for combo boxes, but the old
GtkComboBoxEntry class does not use this property, so GAIL has not been
supporting it correctly in 2.24.

http://bugzilla.gnome.org/show_bug.cgi?id=637304
2011-03-16 13:42:46 -07:00
Pavel Holejsovsky 6e178a69fc [GI] Add missing (out) and (array) annotations
Backported from master commit 2fb1c064.
2011-03-16 10:45:35 +01:00
Chun-wei Fan 7039a30400 Update build/win32/vs9/README.txt
Make the information in that file more up-to-date.
2011-03-16 14:45:38 +08:00
Matthias Clasen 054625ab04 Bump version 2011-03-14 14:30:40 -04:00
Matthias Clasen 89331e8e66 Fix a stray + in configure.in 2011-03-14 12:04:16 -04:00
Matthias Clasen 298c256c37 Bump version 2011-03-14 11:53:45 -04:00
Matthias Clasen a87d84225b Update NEWS for 2.24.2 2011-03-14 10:35:47 -04:00
Matthias Clasen 4ddf2c6512 Use existing mime type for GTK_FILE stock icon
document-x-generic is not actually a mimetype. Using text-x-generic
instead lets us work out-of-the-box in a11y themes.
2011-03-14 10:21:54 -04:00
Matthias Clasen 9862894317 Don't use GDK_NONE when GDK_SELECTION_CLIPBOARD is meant 2011-03-14 10:18:35 -04:00
Matthias Clasen 5af547bf83 Add missing annotations
This adds missing annotations for gdk_window_get_position(),
gtk_window_get_position() and gtk_accelerator_parse().
Bug 644353, patch by Ulrik Sverdrup.
2011-03-12 21:36:18 -05:00
Chun-wei Fan cbe449dba4 Update README.win32
Make the information in README.win32 more up-to-date.
2011-03-11 12:19:27 +08:00
Martin Pitt 3b3faee6d2 Fix gdk_keyval_name() and gdk_keyval_from_name() annotations
Backport annotations from master (which fixes the keyval_name() crash due to
the wrong default transfer annotation), and ensure that the g-ir-scanner
includes them.

https://launchnpad.net/bugs/732484
2011-03-10 13:25:55 +01:00
Tristan Van Berkom f3cd3c3dd0 Fixed GtkTreeModel::row-deleted documentation
This documentation was in direct conflict with the documentation
of gtk_tree_model_row_deleted() docs, the function docs are TRUE,
the signal docs were FALSE, fixed.
2011-03-09 15:10:52 +09:00
Benjamin Otte 70715c377e gdk: when scrolling windows, use the correct source for copying from
Previously we were copying from the toplevel window unconditionally.
This is wrong in two cases:
1) composited windows
2) different visuals

So when encountering such a window in the hierarchy, we stop going up
and just use the latest window as the source.

https://bugzilla.gnome.org/show_bug.cgi?id=643416
2011-03-07 17:25:31 +01:00
Benjamin Otte 559cb5d8ab build: Fix generation of gtktypefuncs.c with -g3 in CFLAGS
With -g3, macros are included in the output, and that caused
gdk_window_get_type() to be included when it shouldn't be.
2011-03-07 17:11:26 +01:00
Benjamin Otte b18d4feaaf x11: Remove unused variable 2011-03-07 12:05:32 +01:00
Sebastian Pölsterl e229f2998b Fixed gtk_calendar_get_date annotations: Added missing (out)
Backported from master commit 34b573b07
2011-03-01 16:01:32 +01:00
Chun-wei Fan 931faeab12 Don't distribute GDK-Pixbuf VS 2008 Projects
Since GDK-Pixbuf is now in a package of its own, stop the distribution
of GDK-Pixbuf projects (those files are no longer referenced in the
GTK+ solution file already)
2011-02-25 13:46:39 +08:00
Federico Mena Quintero b6bf9112ad [GtkFileChooser] Fix initial selection when hidden files are shown
We were breaking prematurely out of the loop that goes through
each file that is pending selection; not only does that loop
disable filtering and show hidden files if needed, but it also
selects the files themselves.  So we need to walk the whole
list of files.

Signed-off-by: Federico Mena Quintero <federico@gnome.org>

https://bugzilla.gnome.org/show_bug.cgi?id=643170
2011-02-24 15:01:07 -06:00
Matthias Clasen e158b9b13a Make GtkRecentManager use standard icon names for themed icons 2011-02-24 14:16:24 -05:00
Alexander Larsson b0d0bf7f7d Avoid spurious emissions of monitors-changed
The monitor change detection code in _gdk_x11_screen_size_changed() and
process_monitors_change() goes to some length to make sure its only emitted
when there is an actual change to the data visible via the GdkScreen monitors
api.

However, commit 662e69ad added some code that always emits "monitors-changed"
in _gdk_x11_screen_size_changed when we have randr13 and get a ConfigureNotify
on the root window (even though we may already have emitted it in the
RRScreenChangesNotify event!).

As far as I can tell this is due to a comment in the bug referenced by the
commit (https://bugzilla.gnome.org/show_bug.cgi?id=601712#c4) where it says:

  This version of the patch changes GdkDisplay to emit "monitors-changed" when
  the primary monitor changes (see the change in _gdk_x11_screen_size_changed).

And, if you remove this part of the change the signal is not emitted when just
the primary is changed. However, this is not really the right approach. We
should just also check for if the primary changes in process_monitors_change()
to avoid spurious signal emissions.

https://bugzilla.gnome.org/show_bug.cgi?id=643216
(cherry picked from commit 0b0f110152)

Conflicts:

	gdk/x11/gdkscreen-x11.c
2011-02-24 20:05:45 +01:00
Matthias Clasen 20b794812f Fix duplicate 'new in 2.22' index
Spotted by Dieter Verfaillie,
https://bugzilla.gnome.org/show_bug.cgi?id=642905
2011-02-21 17:54:24 -05:00
Matthias Clasen b2f9a53c00 Post-release version bump 2011-02-21 13:01:22 -05:00
Matthias Clasen 661c0838b7 Update NEWS 2011-02-21 12:22:50 -05:00
Matthias Clasen 2baa2dc7f0 Remove annotation that breaks the introspection build 2011-02-20 18:47:40 -05:00
Gabor Kelemen 7ffc605ac2 Updated Hungarian translation 2011-02-20 12:23:02 +01:00
Gabor Kelemen ac093e25f6 Updated Hungarian translation 2011-02-20 01:38:32 +01:00
Tor Lillqvist af91746931 Handle emulated keyboard input that arrives as VK_PACKET
Fixes bug #642772. Thanks to the anonymous bug reporter for providing
a test program.
2011-02-20 01:33:00 +02:00
Matthias Clasen 44b2e88aef Make gtk_combo_box_text_get_active_text() behave as documented
If there is an entry, it is supposed to return the contents
of the entry. Pointed out by Allin Cottrell,
https://bugzilla.gnome.org/show_bug.cgi?id=642681
2011-02-19 13:30:02 -05:00
Matthias Clasen c14e9ee768 Fix doc comment syntax 2011-02-19 12:47:04 -05:00
Matthias Clasen b609bd1149 Fix doc comment 2011-02-19 10:16:58 -05:00
Matthias Clasen cb3f20ecbe GailEntry: remove idle if cell editing is canceled
This avoids warnings when cell editing is interrupted e.g. by
adding or removing a row.
2011-02-19 10:12:09 -05:00
Matthias Clasen 3998dd9563 gtk-demo: plug a memleak in the editable cells demo 2011-02-19 10:11:43 -05:00
Matthias Clasen 856a69936b Fix a memory leak with file chooser previews 2011-02-19 10:11:12 -05:00
Matthias Clasen 5813ccc700 Remove a leaking get_name implementation
This was leaking a lot of memory; just rely on atk_object_get_name.
2011-02-19 10:10:52 -05:00
Matthias Clasen 8a6bf12346 Don't leak the GDir in the iconview example 2011-02-19 10:10:33 -05:00
Matthias Clasen f7b7346f8d Check if the accessible is actually an AtkAction 2011-02-19 10:10:21 -05:00
Matthias Clasen db55058178 Remove a bunch of crazy code from gail
...and replace it with only slightly less crazy code.
No need to create an destroy hash tables for each key press.
2011-02-19 10:08:48 -05:00
Matthias Clasen 6fcb389975 gail: Fix the atk_add_key_event_listener implementation
Based on a patch by Alejandro Piñeiro Iglesias,
https://bugzilla.gnome.org/show_bug.cgi?id=599907
2011-02-19 10:08:39 -05:00
Matthias Clasen c26905747f gail: support indeterminate state of check menuitems
Patch by Szilárd Pfeiffer
https://bugzilla.gnome.org/show_bug.cgi?id=626730
2011-02-19 10:08:27 -05:00
Matthias Clasen fa007952ba Check the return value of gtk_tree_model_get_iter
Noticed in passing, didn't really see it crash there, but
better safe than sorry.
2011-02-19 10:07:40 -05:00
Matthias Clasen de7b27159d gtk_tree_model_filter_row_deleted: don't emit signals too early
gtk_tree_model_filter_row_deleted was emitting ::row-deleted while
the internal state of the model was still in disarray, causing
segfaults e.g. when mapping the file chooser with accessibility
turned on. This is just a bandaid fix, and doesn't try address
any of the deeper problems of the filter model code.

I did take the time to reduce rampant variable shadowing in that
function, though.
2011-02-19 10:07:30 -05:00
Matthias Clasen 9bc8ba7e5d Use standard icon names 2011-02-19 10:04:39 -05:00
Matthias Clasen 48342ad2bd Add warnings about environment variables
These variables all get read by GTK 3 as well, which makes
them dangerous at best.
2011-02-19 10:02:29 -05:00
Tristan Van Berkom 420f2fbddc Fixed gtk_recent_chooser_menu_set_current_filter to update the local pointer.
Before this patch, unsetting the filter manually before disposing
the recent chooser menu (or unsetting the filter twice), would cause
warnings (or invalid memory accesses).
2011-02-19 09:58:30 -05:00
Martin Pitt 45d05f52c2 [GI] Mark mis-detected constructors as such
constructors which take an object of the same class as its first argument are
mis-detected as method call with "self" argument by the GIR scanner. Using the
new (constructor) annotation from bug 561264, mark some of them as proper
constuctors, so that you can call them with NULL as first argument from
bindings; in particular, this fixes gdk_window_new() and the
gtk_radio_button_new_with*() constructors.
2011-02-19 09:56:53 -05:00
Matthias Clasen 0e47df0ee0 Add a missing include
https://bugzilla.gnome.org/show_bug.cgi?id=642642
2011-02-19 09:44:05 -05:00
Martin Nordholts fa2d05ab4e Bug 633291 - Handle Shift-keys in X11 gdk_test_simulate_key()
If a level 1 key maps to a key value passed to
gdk_test_simulate_key(), raise the GDK_SHIFT_MASK flag so the reqested
key value is generated. Also add a regression test for this fix.
2011-02-13 12:34:19 +01:00
Matthias Clasen e3185138ac Fix the build without the Composite headers
The code was already protected by #ifdef HAVE_XCOMPOSITE, but
we forgot the include.
https://bugzilla.gnome.org/show_bug.cgi?id=642137
2011-02-12 08:06:31 -05:00
Colin Walters 8e51a22707 docs: Link to all GTK+ 2 versions, add GTK+ 3 link
Now that we have both URLs on library.gnome.org, improve the links so
that we point at all versions of both.
2011-02-11 12:31:17 -05:00
Michael Natterer 28f82afd0e gtk: don't send BUTTON_RELEASE to unrealized widgets
which happened when the source widget was hidden or destroyed while a
drag was going on, like when dragging from a popup that got a grab
broken as result of the dnd operation.
2011-02-11 10:35:25 +01:00
Matthias Clasen 64adba6e3e Extend the mixed-dependency check to modules as well
This helps prevent accidents with GTK_PATH.
2011-02-08 18:02:48 -05:00
Piotr Drąg bd0f159b6c Updated Polish translation 2011-02-02 18:03:09 +01:00
Piotr Drąg 03bdae8dcc Updated Polish translation 2011-02-02 18:02:36 +01:00
Matthias Clasen 1d8bac64b2 Fix a segfault in gtk_statusbar_remove_all
https://bugzilla.gnome.org/show_bug.cgi?id=640487
2011-01-31 11:51:44 -05:00
Matthias Clasen 47b2868a08 Add missing return type
Pointed out by Chun-wei Fan
https://bugzilla.gnome.org/show_bug.cgi?id=640992
2011-01-30 23:58:44 -05:00
Matthias Clasen 66f55661ad Bump version to 2.24.1 2011-01-30 00:33:49 -05:00
Matthias Clasen 0b3710d762 Fix doc format problems 2011-01-30 00:04:04 -05:00
Matthias Clasen e8a0f3cfb8 Fix the build 2011-01-29 23:52:32 -05:00
Matthias Clasen 0b5a530ef1 More updates 2011-01-29 23:33:56 -05:00
Matthias Clasen bb8e1c67c6 Check if buffer is NULL after setting it to NULL, not before.
This catches cases when "notify::buffer" handler does not recreate
the buffer again, which could end in reference leak.

https://bugzilla.gnome.org/show_bug.cgi?id=634677
(cherry picked from commit d688343a31)
2011-01-29 23:33:56 -05:00
Luca Ferretti 840c9aa8d9 Updated Italian translation 2011-01-29 16:04:11 +01:00
Luca Ferretti f80f4f5ce3 Updated Italian translation 2011-01-29 16:04:11 +01:00
Matthias Clasen 6dd57dfe65 Updates for 2.24.0 2011-01-28 23:19:39 -05:00
Matthias Clasen 7cda5b54fb Bump version to 2.24.0 2011-01-28 23:19:14 -05:00
Ignacio Casal Quinteiro b08b4cccc5 Remove gtk_paste_point_override mark if we don't insert any text.
This patch fixes bug #590459.
2011-01-28 13:29:10 +01:00
Martin Pitt 461d71f6aa [GI] Fix gtk_tree_view_get_cursor() transfer annotation 2011-01-26 14:41:09 +01:00
Martin Pitt a33dceee4b [GI] Backport transfer annotations 2011-01-26 14:10:12 +01:00
Pavel Holejsovsky 5cded4d5e2 [GI] Add missing (transfer) annotations
Backported from master commit 2f0d40335b.
2011-01-26 12:49:08 +01:00
Pavel Holejsovsky 9b2457a671 [GI] Fixes of existing incorrect annotations
Backported from master commit 3c8fc21e9b.
2011-01-26 12:29:21 +01:00
Matthias Clasen 0455bcfda4 Expose gtk-auto-mnemonics as an Xsetting 2011-01-23 16:58:50 -05:00
Matthias Clasen a5d35b95f0 Default target version of gtk-builder-convert should be 2.0 2011-01-23 16:52:40 -05:00
Johan Dahlin c44fe0bc54 Add a couple of missing annotations
Backported from master commit 19cab17c.
2011-01-17 14:12:24 +01:00
Christian Persch 164149a8dc Add target version handling to gtk-builder-convert
When converting to gtk3, replace GtkComboBoxEntry with GtkComboxBox
has-entry=True, and remove the has-separator property from GtkDialogs.

Bug #639327.
2011-01-17 07:48:34 -05:00
Martin Pitt 78a4b090e2 Gtk{List,Tree}Store: Fix GI array annotations 2011-01-15 15:34:00 -06:00
Matthias Clasen dfa1ea8245 Add accessors for GtkRange::round-digits
Patch by Christian Dywan,
    https://bugzilla.gnome.org/show_bug.cgi?id=351755
2011-01-15 00:26:08 -05:00
Tomeu Vizoso f40a129e28 gtk_tree_model_iter_next's iter is (in), not (inout) 2011-01-10 15:51:22 -06:00
Martin Pitt e48f5b4073 Backport a lot of GI transfer annotations
This dramatically improves using GTK2 with g-i.

Taken from master commit e0aa12eb0a without the non-documentation changes.
2011-01-10 14:43:00 -06:00
Tristan Van Berkom cc44561b61 Added GtkBuildable support for specifying <items> in GtkComboBoxText.
Conflicts:

	gtk/gtkcomboboxtext.c
2011-01-10 22:43:57 +09:00
Tristan Van Berkom ff780aa35e Added GtkBuildable support to add "tag" children to GtkTextTagTable.
Conflicts:

	gtk/gtktexttagtable.c
2011-01-10 22:39:05 +09:00
Tristan Van Berkom 737941b333 Added GtkBuilder support for "menu" child type of GtkMenuToolButton
Conflicts:

	gtk/gtkmenutoolbutton.c
2011-01-10 22:31:25 +09:00
Martin Pitt e361e38e09 Fix GI annotation of GtkTreeModelFilter
Cherrypicked from master commit e0aa12eb.
2011-01-09 22:10:49 -06:00
John (J5) Palmieri 8253735ed1 Add GtkBuilder and GtkDialog annotations for tranfer and scope
Cherrypicked from master commit c78a23bd.
2011-01-09 21:56:49 -06:00
Martin Pitt caf389649a Fix GtkMessageDialog annotations
Cherrypicked from master commit e0aa12eb.
2011-01-09 21:39:15 -06:00
Tomeu Vizoso 1435dcc1cb The 'len' argument of gtk_text_buffer_insert and gtk_text_buffer_insert_at_cursor isn't really the length of the 'text' argument
(Cherrypicked from master commit 24d8c776d4)
2011-01-09 21:34:13 -06:00
Martin Pitt 4ea1f5e15e Fix gtk_icon_theme_load_icon annotation
Cherrypicked from master (e0aa12eb0a) to fix return value transfer annotation.
2011-01-09 13:04:09 -06:00
Alan Knowles a59f254fad Fix various gir annotations on tree API
Just add (out) tags where needed to generate valid gir.
2011-01-09 12:47:01 -06:00
Martin Pitt af45513d78 Add GtkRadioButton constructor GI annotations
Taken from GTK 3. This allows programs to sensibly use radio buttons with
either GTK2 or GTK3 with g-i.
2011-01-09 12:15:03 -06:00
Bruce Cowan 5ad3a3b440 Updated British English translation 2011-01-07 23:10:46 +00:00
Matthias Clasen f54ad24ec2 bump version 2011-01-06 17:29:24 -05:00
Matthias Clasen 832f1de519 Fix symbol lists 2011-01-06 17:27:05 -05:00
Matthias Clasen 9c1b0e4cc0 Update the NEWS 2011-01-06 14:19:09 -05:00
Matthias Clasen b9c9919fe2 Mention gvfs in the gtk_show_uri() docs
https://bugzilla.gnome.org/show_bug.cgi?id=622125
2011-01-06 13:00:07 -05:00
Matthias Clasen e00c9fbc18 Some documentation improvements for gtk_init/gtk_parse_args
https://bugzilla.gnome.org/show_bug.cgi?id=562182
2011-01-06 12:58:52 -05:00
Matthias Clasen fda6444216 Document DESKTOP_STARTUP_ID use
Closes https://bugzilla.gnome.org/show_bug.cgi?id=165987
2011-01-06 12:58:30 -05:00
Milan Bouchet-Valat 67d042f02b GtkComboBox(Text): Add documentation about the entry 2011-01-06 12:57:59 -05:00
Matthias Clasen ed4605e597 cups printbackend: create a pdf surface when appropriate
This should address bug 560177.
Based on a patch by Adrian Johnson.
2011-01-06 12:53:03 -05:00
Matthias Clasen 2cf66d39e4 Remove gtk_printer_new from gtkprintbackend.h
The function has been in gtkprinter.h forever.
2011-01-06 12:52:26 -05:00
Adrian Johnson 0c6d327a25 Set file GtkPrinter accepts_pdf/ps based on selected format 2011-01-06 12:52:17 -05:00
Adrian Johnson 7de568a2ae Set "accepts-pdf" property to true only if supported by the print backend 2011-01-06 12:52:09 -05:00
Matthias Clasen 3241efa11c Deprecated long-obsolete linux-fb related GtkWindow API 2011-01-06 12:48:23 -05:00
Matthias Clasen 472aeda2e0 Bump version to 2.23.90 2011-01-06 12:17:28 -05:00
Adel Gadllah 6490a22aaf GdkX11dnd: Fix build issue
I messed up while rebasing the window caches patch.
2011-01-05 17:54:29 +01:00
Matthias Clasen 644f25c497 Decouple GdkWindowCache life-cycle from GdkX11DragContext
By making window caches refcounted. This fixes problems with leaking
drag contexts, as experienced in
https://bugzilla.gnome.org/show_bug.cgi?id=637691
and
https://bugzilla.gnome.org/show_bug.cgi?id=144324

Based on a patch by drago01@gmail.com
2011-01-05 17:37:37 +01:00
Benjamin Otte 54a07580c0 range: Deprecate update policies.
They're gonna be removed from GTK3.
2011-01-05 14:53:15 +01:00
Murray Cumming 87285bc8bf gdk_spawn* deprecation docs: Mention actual replacement functions. 2011-01-05 01:34:49 +01:00
Benjamin Otte 882db1cf5f gdk: Remove GTK_COMPILATION checks from headers
Now that gtk doesn't compile with GDK_DISABLE_DEPRECATED anymore,
they're not needed.
2011-01-03 19:07:07 +01:00
Benjamin Otte 79b4c34a8f gtk: Remove GDK_DISABLE_DEPRECATED from compilation flags
With the recent deprecations going on, a lot of code doesn't compile
without warnings anymore. And instead of fixing maintenance-only code,
it's easier to just keep calling deprecated functions.
2011-01-03 19:07:07 +01:00
Benjamin Otte fb2eb5f1aa tests: Remove gtk_set_locale() calls
They are unnecessary and cause compilation warnings due to deprecations.
2011-01-03 19:07:07 +01:00
Benjamin Otte 9591369339 gdk: Deprecate gdk_display_set_pointer_hooks() 2011-01-03 19:07:07 +01:00
Benjamin Otte b225585844 gdk: Deprecated gdk_set_pointer_hooks() 2011-01-03 19:07:07 +01:00
Matthias Clasen 6f776f0814 Scale down print dialog size
Shrink the preview display a little to make the print dialog
fit on a typical netbook screen.

https://bugzilla.gnome.org/show_bug.cgi?id=637958
2011-01-03 12:54:48 -05:00
Matthias Clasen 171bac4626 GtkBuilder migration docs: remove reference to a fixed issue 2011-01-03 12:21:52 -05:00
Matthias Clasen f9dd531bc9 Don't use deprecated API
This should fix copy/paste problems observed with 2.23.3, as seen
eg in http://bugzilla.gnome.org/show_bug.cgi?id=637973
2010-12-27 19:06:18 -05:00
Matthias Clasen c76b247da5 Revert some over-eager deprecation removal
We can't replace drawable api with window api when the object
is actually a pixmap.
2010-12-27 18:16:14 -05:00
Murray Cumming e369d70dd6 Fix typos in 2 gobject-introspection annotations. 2010-12-27 20:57:14 +01:00
Alejandro Piñeiro 1e93d01d47 Clean the code to check the redundan object on the show watcher
The watcher doesn't add a window if is a redundant object. This
patch fixes two things:

 * The check was made twice.
 * It uses a check with the string "redundant object", when the
   defined role ATK_ROLE_REDUNDANT_OBJECT is available
2010-12-27 16:37:28 +01:00
Alejandro Piñeiro 1e196b39b8 Proper connection to a toplevel window destroy signal
Only connect to the destroy of a toplevel window if it was
really added to the toplevel list of windows.

The destroy callback was added to remove the window from
the toplevel list. The callback doesn't cause a error,
but would iterate on the toplevel list without success.
2010-12-27 16:37:09 +01:00
Tor Lillqvist be8c0e4734 No fsync on Windows 2010-12-27 11:31:37 +02:00
Tor Lillqvist 9fb03bb402 Export gdk_x11_ functions only on X11 2010-12-27 11:30:07 +02:00
Matthias Clasen 120915d6de Reinstate the implementation of gdk_window_foreign_new_for_display
This was accidentally dropped when introducing
gdk_x11_window_foreign_new_for_display().
2010-12-23 11:58:26 -05:00
Matthias Clasen e2361108f4 Document that keymap functions will stop accepting NULL 2010-12-23 10:15:59 -05:00
Matthias Clasen b447cd972e Fix a typo in GtkCombo
There is no GtkButton::depressed signal.
Reported by Nicolas Setton in bug 633089.
2010-12-22 14:53:13 -05:00
Matthias Clasen 8bccb1ecf1 Bump version 2010-12-21 23:19:09 -05:00
Matthias Clasen 5383f20c7e Update NEWS 2010-12-21 21:46:11 -05:00
Matthias Clasen 3e9dc75768 Fix another typo 2010-12-21 18:06:54 -05:00
Matthias Clasen 8ad1c959ef Fix a typo 2010-12-21 11:35:38 -05:00
Matthias Clasen dd05e41475 Deprecate gdk_xid_table* functions 2010-12-21 09:54:15 -05:00
Matthias Clasen 7b1c38b57c Deprecated gdk_drag_find_window and gdk_drag_get_protocol 2010-12-21 09:54:15 -05:00
Matthias Clasen a88f8e4c57 Deprecate gdk_drag_context_new 2010-12-21 09:54:15 -05:00
Matthias Clasen bad6d00966 Deprecate some gdk text conversion routines
And add x11-specific replacements for them
2010-12-21 09:54:15 -05:00
Matthias Clasen e65e208d40 Deprecate gdk_set_locale and gtk_set_locale 2010-12-21 09:54:14 -05:00
Matthias Clasen 6250c1dbe1 Deprecate gdk_net_wm_supports 2010-12-21 09:54:14 -05:00
Matthias Clasen dd1de27061 Deprecate gdkx_visual_get 2010-12-21 09:54:14 -05:00
Matthias Clasen 08e4a60de1 Deprecate gdk_spawn apis 2010-12-21 09:54:14 -05:00
Matthias Clasen 2f8c78ddc5 Deprecate foreign window apis
And add x11- and win32-specific apis for these at the same time
2010-12-21 09:54:14 -05:00
Matthias Clasen 0f8251da61 Deprecate gdk_set_sm_client_id
And add a gdk_x11_set_sm_client_id to replace it.
2010-12-21 09:54:13 -05:00
Matthias Clasen 3bdd56c928 Add some forgotten accessors for GdkDragContext
These fields are accessed in gtk.
2010-12-21 09:54:13 -05:00
Matthias Clasen b2bd11618f Don't access GdkDragContext fields directly
Instead use the accessors.
2010-12-21 09:54:13 -05:00
Carlos Garcia Campos 55cf284749 printing: Set new print operation settings before emitting custom-widget-apply signal
So that custom settings can be added from the custom-widget-apply
callback.

https://bugzilla.gnome.org/show_bug.cgi?id=637069
2010-12-20 21:09:16 +01:00
Tristan Van Berkom 53ff5679f7 Fixed gtk_entry_set_icon_tooltip_text & markup to not crash
Setting this property before the icon is actually set was
resulting in a crash (found by way of Glade bug 606103).
2010-12-17 18:17:45 +09:00
Matthias Clasen c282958fb4 Optimize gdk_window_set_shape_combine_region
When setting no shape on an unshaped window, nothing changes,
so return early instead of recomputing lots of visibility
information.

Pointed out by Owen Taylor in bug 637156.
2010-12-14 22:24:09 -05:00
Matthias Clasen 64f2460b7b Deprecate gtk_widget_reset_shapes
This function has been removed in GTK+ 3
2010-12-14 22:18:41 -05:00
Tristan Van Berkom fced380ec9 gtktoolitemgroup: don't use GTimeSpec
Use gint64 time instead.

Conflicts:

	gtk/gtktoolitemgroup.c
2010-12-15 01:07:06 +09:00
Martyn Russell 512d29e53a gtk-faq: Fix all information related to CVS
Fixes bug #636832, anoncvs.gnome.org does not exist
2010-12-09 23:47:31 +00:00
Matthias Clasen 098e02c29d Revert b3c5232a9b
This causes warning and breaks e.g. the mozilla build.
2010-12-04 18:35:03 -05:00
Matthias Clasen b2274ba08a Avoid delays in starting applications
Only query file info once, and don't do it for non-native files, since
that may cause sync network IO.

Bug http://bugzilla.gnome.org/show_bug.cgi?id=635588
2010-11-29 21:08:59 +01:00
Murray Cumming 6e2573fd76 gtk_combo_box_get_active_text(): Fix my docs typo. 2010-11-25 12:28:15 +01:00
Murray Cumming 36a1730bb8 gtk_combo_box_get_active_text(): Documentation: Restore old text.
Bring back the note about using this with GtkComboBoxEntry because
otherwise it is a change of behaviour in the stable branch. This does
apparently still work because the get_active_text vfunc is implemented
in GtkComboBoxEntry.
Also make the deprecation note more helpful, giving a hint about what
to do in both cases. Note that the advice is ugly for the
GtkComboBoxEntry case and I wish there was real API for that.
2010-11-25 11:58:47 +01:00
Michael Natterer b3c5232a9b Bug 565665 - GtkTargetEntry member target should be const char * 2010-11-24 21:01:10 +01:00
Michael Natterer d0f2b13309 gdk: add gdk_device_get_n_keys() to access the sealed num_keys member 2010-11-24 20:15:29 +01:00
Benjamin Otte 07c00b9969 gtk: Deprecate GtkRuler and subclasses.
They have been removed fom GTK 3.
2010-11-24 17:26:09 +01:00
Colin Walters 058ff14ac8 iconcache: Ensure we don't lose data on power loss
fsync() should ensure our data hits disk; since corrupt icon
caches break all apps, we need to ensure it's valid.

https://bugzilla.gnome.org/show_bug.cgi?id=635307
2010-11-22 13:46:10 -05:00
Michael Natterer 7f6b9ce7f5 gtk: draw the frame around the spinbutton's buttons conditionally
(depending on GtkEntry::has-frame)
2010-11-19 14:54:41 +01:00
Benjamin Otte 3024081928 tests: Remove broken ellipsise test 2010-11-18 17:47:43 +01:00
Benjamin Otte 516a6d8495 testgtk: Make it compile with warnings enabled
The code is pretty hairy, so it'll probably not work. But at least it
won't crash.
2010-11-18 17:47:43 +01:00
Benjamin Otte f27b33b40e tests: Don't clip in offscreenbox test
The clipping is unnecessary
2010-11-18 17:47:43 +01:00
Benjamin Otte b91b0ebbd7 tests: Remove unused variable 2010-11-18 17:47:43 +01:00
Benjamin Otte 931d93d9a4 tests: Define GTK_DISABLE_DEPRECATED in statusicon test
We support blinking in that test...
2010-11-18 17:47:43 +01:00
Benjamin Otte 5101c0d469 gail: Use non-deprecated gdk_pixmap_get_size() 2010-11-18 17:47:43 +01:00
Benjamin Otte b70f365c22 gail: Use gdk_window_get_screen() 2010-11-18 17:47:43 +01:00
Benjamin Otte 55b88f1779 tests: Add a hack to silence gcc 2010-11-18 17:47:43 +01:00
Benjamin Otte b38249b35c gtkrc: Crude hack to silence gcc 4.5 enum warnings 2010-11-18 17:47:43 +01:00
Benjamin Otte 02ae5c8cdf iconview: Correct type of enum variable
Thanks gcc!
2010-11-18 17:47:43 +01:00
Benjamin Otte f0ff8dfd0f bindings: Crude hack to silence gcc 4.5 enum warnings 2010-11-18 17:47:43 +01:00
Benjamin Otte adfcc91be6 iconfactory: Silence gcc warning 2010-11-18 17:47:42 +01:00
Benjamin Otte 3770f98e7b filechooser: Remove unused variables 2010-11-18 17:45:14 +01:00
Benjamin Otte 49b7cef2c3 aboutdialog: Remove unused function 2010-11-18 17:45:14 +01:00
Benjamin Otte 795e1b77e3 gtk-demo: offscreen examples use deprecated functions 2010-11-18 17:45:14 +01:00
Benjamin Otte 5f044d33ef gtk-demo: Remove unused functions 2010-11-18 17:45:14 +01:00
Benjamin Otte 9e91b6557a cups: Add hack to work around gcc warning
gcc warns if you switch on values that are not part of the enum you're
switching on. So handle those cases in the default handler by using if
statments.

PS: Someone file a bug against cups about this?
2010-11-18 17:45:14 +01:00
Benjamin Otte 176218c5a0 API: Add gdk_pixmap_get_size()
Allows querying a pixmap's size when compiling with deprecations.
2010-11-18 17:45:14 +01:00
Kjartan Maraas 174158bf9c Updated Norwegian bokmål translation 2010-11-18 14:09:35 +01:00
Michael Natterer 2ab90f5d65 gdk: cast impl to GdkWindow* when calling gdk_drawable_get_size() 2010-11-18 13:24:51 +01:00
Michael Natterer 95f588dc78 gtk: draw the progress only on the text area
so it doesn't extend under GtkSpinButton's buttons.
2010-11-16 19:28:12 +01:00
Federico Mena Quintero 10d541b8b6 bgo#634558 - filechooser - Actually focus the Search entry when selecting the Search shortcut
Signed-off-by: Federico Mena Quintero <federico@novell.com>
2010-11-16 11:01:37 -06:00
Javier Jardón 70929bc7ba Deprecate GtkCallbackMarshal and GtkFunction
As they're only used by already deprecated API

https://bugzilla.gnome.org/show_bug.cgi?id=629955
2010-11-16 07:24:22 +01:00
Bastien Nocera df08bc43ec gdk: Add XSetting for "gtk-cursor-blink-timeout"
Otherwise the blink timeout is the one used by default in GTK+.

https://bugzilla.gnome.org/show_bug.cgi?id=634697
2010-11-15 17:20:02 +00:00
Fan, Chun-wei f03eca7b1d gtktoolitemgroup: Update to new Glib api
Also, bump required Glib version to 2.27.3

Fixes https://bugzilla.gnome.org/show_bug.cgi?id=634882

Signed-off-by: Javier Jardón <jjardon@gnome.org>
2010-11-15 16:21:17 +01:00
Petr Kovar 513befc4f2 Update Czech translation 2010-11-15 06:21:23 +01:00
Matthias Clasen 7f85787916 Bump version 2010-11-10 10:22:47 -05:00
Matthias Clasen e01ae1ee12 Bump version to 2.32.2 2010-11-10 09:22:51 -05:00
Matthias Clasen 675cbdc163 Update NEWS for 2.32.2 2010-11-10 09:22:30 -05:00
Matthias Clasen 1fb94a8410 autogen: allow libtool 2.4
Proposed by Jürg Billeter
2010-11-10 09:21:10 -05:00
Jürg Billeter 4773148f1a Use more gdk_window_ accessors instead of gdk_drawable_ accessors
This fixes compile-time warnings and crashes on 64-bit systems.
2010-11-10 09:09:38 -05:00
Matthias Clasen 75a1102901 NEWS for 2.23.1 2010-11-10 09:00:20 -05:00
Cosimo Cecchi 6400a3281b icon-theme: always force icon sizes for emblems
https://bugzilla.gnome.org/show_bug.cgi?id=634060
2010-11-10 09:00:20 -05:00
Cosimo Cecchi bfa741bace icon-theme: support pixbufs implementing the GIcon interface
https://bugzilla.gnome.org/show_bug.cgi?id=634060
2010-11-10 09:00:20 -05:00
Matthias Clasen 779f4e10be GtkComboBox: Add a constructor that takes a model and adds an entry
https://bugzilla.gnome.org/show_bug.cgi?id=633050
2010-11-10 09:00:19 -05:00
Chun-wei Fan eb6cce1675 gtk-demo.vcproj: Fix linking options
-made up for missed libraries and wrong subsystem settings on non-Debug|win32 configs
2010-11-10 09:17:31 +08:00
Chun-wei Fan f9220cbd59 gdk.vcprojin: Fixed for coming 2.24 release
-Included .rc file
-made up for missed libraries in linking for configs other than Debug|Win32
2010-11-10 09:14:42 +08:00
Chun-wei Fan 6e93a0ae28 gtk+.vcprojin: Update for the coming 2.24 release
-update .def generation for Win64
-included .rc file for version info
-remove GDK-Pixbuf as they are now referenced in the property sheet
2010-11-10 09:10:11 +08:00
Chun-wei Fan e9393ed855 gtk+.sln: Remove all Gdk-Pixbuf compilation stuff for 2.24
Gdk-Pixbuf is now in a package of its own, so remove them here
2010-11-10 09:03:13 +08:00
Chun-wei Fan a0693b4c57 gtk+.vsprops: Update for the coming 2.24
-Removed installation of gdkprivate.h and gtkprivate.h
-purge GDK-Pixbuf compilation stuff and added it as a dependency
-install demo program and demo sources and data in bin\gtk-demo
-made up for missing headers
2010-11-10 09:00:23 +08:00
Benjamin Otte bf395263b2 gdk: Use the correct surface size when creating surfaces
Previously we used the size of the csw window, which could easily be
huge and cause CAIRO_SURFACE_INVALID_SIZE errors. If we use the real
size, we work around this problem. The surface can now potentially be
bigger than before but we should handle that when clipping in csw.

https://bugzilla.gnome.org/show_bug.cgi?id=633701
2010-11-08 16:14:14 -05:00
Hans Breuer 1050485a13 Prefer MessageBeep() over Beep()
Only the former respects the sound volume setting. If MessageBeep() fails fall back to the latter.
(cherry picked from commit 5e59db1554)
2010-11-07 22:38:20 +01:00
Hans Breuer 8a9d458baf Bug 609622 - disappearing statusicon
Windows 7 is managing status icon visibility across process lifetime,
which did not work with GTK+ create icons. Apparently the mechanism
does not require use of new API (like suggested by MSDN), but it is
enough to give a "unique" tooltip at creation time.
Formerly this initial tooltip was not set at all, later setting via
gtk_status_icon_set_tooltip_text() is not enough, but luckily
different follow-up tooltips don't disturb the intended behavior.
(cherry picked from commit ae0544c636)
2010-11-07 22:37:19 +01:00
Hans Breuer 230e3a3a99 win32: Update msvc build 2010-11-07 22:36:46 +01:00
Christian Dywan 6a80d40154 Only show Desktop in file chooser button if there is one
Fixes: https://bugzilla.gnome.org/show_bug.cgi?id=632894
2010-11-03 19:23:48 +01:00
Takayuki KUSANO 6e6b82abb9 Updated Japanese translation 2010-11-03 08:59:35 +09:00
Emmanuele Bassi 7825f01b2f recent-manager: Add migration to the new storage file location
The recently-used.xbel file location has been moved from $HOME to
$XDG_DATA_DIR, to be compliant with the desktop bookmark specification
and with other desktop environments following it.

The effective change was done in gtk+-3, but we need a migration path
for gtk+-2.

The possible cases are:

  • the old file is not present, so we just switch to the new one;
  • the old file is present, but the new one is not; in this case
    we rename the old file to the new one.
  • both the old file and the new file are present; in this case,
    we try a simple merge of the contents and remove the old file.

The merge is the (obviously) more expensive option, but it should only
happen once.

https://bugzilla.gnome.org/show_bug.cgi?id=633242
2010-10-31 14:30:59 +00:00
Martin Nordholts 78bb09c5a1 Handle NULL intp in test_increment_intp()
Support passing NULL for &int to gtk_test_display_button_window() so
we can use that function also when we are not interested in counting
clicks.
2010-10-31 00:08:16 +02:00
Kristian Rietveld 15eecb1645 quartz: release pattern in GC finalize 2010-10-24 14:39:52 +02:00
Kristian Rietveld dfd7e05123 quartz: Reset drawable on pattern callback info when gc is updated 2010-10-24 14:39:52 +02:00
Kristian Rietveld b0a17e5a37 Pass pixmap to _gdk_pixmap_get_cgimage() and not the impl 2010-10-24 14:39:52 +02:00
Javier Jardón 1d444d8def gtkwidget: Properly deprecate gtk_widget_hide_all
This really fixes commit 7b5b230ead
2010-10-20 18:33:51 +02:00
Javier Jardón 508f727665 gtkwidget: The deprecated function is gtk_widget_hide_all not gtk_widget_hide
This fixes commit 7b5b230ead
2010-10-19 20:21:13 +02:00
Cody Russell 7b5b230ead Deprecate gtk_widget_hide_all(). 2010-10-19 19:54:32 +02:00
Kristian Rietveld f62b56194b quartz: Always use generic color space
Switch all usage of device color spaces to generic color spaces.  Since
the former color spaces are no longer device-dependent as of Mac OS X
10.4, these yielded a very costly color space conversion when drawing
pixmaps to the screen.  We now avoid this by using the generic color
space.

Fixes https://bugzilla.gnome.org/show_bug.cgi?id=624025
2010-10-19 10:41:01 +02:00
Kristian Rietveld e6e9eef855 Rework GdkPixmapImplQuartz to create CGImage on-demand
If the data that backs a bitmap context changes, then the CGImage that
is backed by this data might not always update due to caching effects.
By creating the CGImage on-demand, we ascertain ourselves that the
CGImage is up to date.
2010-10-19 10:40:48 +02:00
Kristian Rietveld 3258af741e Use gdk_window_ accessors instead of gdk_drawable_ accessors if possible
The gdk_drawable_ accessors were deprecated.  Removes a lot of
compile-time warnings and eventually also makes things work again
on Mac (miscompile due to the missing prototypes).
2010-10-19 10:37:15 +02:00
Bastien Nocera 51dcd09950 testgtk: Fix build 2010-10-18 17:37:32 +01:00
Matthias Clasen b94372f199 Don't add a second cell renderer
When has-entry is TRUE, GtkComboBox already adds a cell renderer
for the text column, so avoid adding a second one in GtkComboBoxText.

https://bugzilla.gnome.org/show_bug.cgi?id=632381
(cherry picked from commit b613cc6478)
2010-10-18 08:19:59 -04:00
Matthias Clasen 5e94e36f9a Use new GtkComboBoxEntry in all tests
(cherry picked from commit 6db62c6617)
2010-10-18 08:17:50 -04:00
Christian Dywan 883835d17b Don't use old GtkComboBoxEntry in gail
Use gtk_combo_box_get_has_entry instead.
(cherry picked from commit f891c58432)
2010-10-18 08:16:18 -04:00
Matthias Clasen 3a90254369 Bump version to 2.23.1 2010-10-16 17:41:15 -04:00
Matthias Clasen 0200763126 Fix header inclusions for !srcdir builds 2010-10-16 16:53:44 -04:00
Matthias Clasen d14ecbeba9 Update NEWS for 2.23.0 2010-10-16 13:35:28 -04:00
Matthias Clasen d929bffd25 Fix some issues with GtkComboBoxText 2010-10-16 08:03:58 -04:00
Matthias Clasen ea0170250a Fix build 2010-10-16 01:11:45 -04:00
Marek Kasik 5045337162 Parse lpoptions correctly
Parse options job-sheets, job-hold-until and sides correctly.
Add get_lpoption_name() for translation of lpoption names to
gtk option names. Usable for options which values don't need
conversion (e.g. number-up, number-up-layout, job-billing
and job-priority).
Rename array option_names to ppd_option_names to reflect its
purpose better. Rename get_option_name() to get_ppd_option_name()
because of the same reason.
(cherry picked from commit 95e69afea8)
2010-10-16 01:11:44 -04:00
Christian Dywan d942045c10 Use property system to coerce model data to G_TYPE_STRING
Fixes: https://bugzilla.gnome.org/show_bug.cgi?id=423201
2010-10-16 01:11:44 -04:00
Matthias Clasen 009ea42112 Add docs for GtkComboBoxText
(cherry picked from commit 3e9bdf6fd9)
2010-10-16 01:11:44 -04:00
Matthias Clasen f76c62929a Deprecate the old combobox text convenience api
(cherry picked from commit 43250e8faf)
2010-10-16 01:11:44 -04:00
Matthias Clasen b68d58c0b1 Use the new GtkComboBoxText API
Also remove mentions of the old text convenience API from the docs,
and point to GtkComboBoxText instead.
(cherry picked from commit e7f51ef6a4)
2010-10-16 01:11:44 -04:00
Christian Dywan 406c9c9c68 Added GtkComboBoxText api
This is a derived class of GtkComboBox to replace the
gtk_combo_box_*_text() convenience API.

Fixes https://bugzilla.gnome.org/show_bug.cgi?id=612396

Signed-off-by: Javier Jardón <jjardon@gnome.org>
(cherry picked from commit 7a5a5e9c5d)
2010-10-16 01:11:44 -04:00
Javier Jardón 44e186658b docs: update OSX port project page 2010-10-16 01:11:44 -04:00
Christian Persch 2a646c1d21 Take cursor hotspot from pixbuf if available
Allow -1 for the hotspot coordinates in gdk_cursor_new_from_pixbuf,
if the pixbuf contains the x_hot/y_hot options with appropriate values.

Bug #632140.
2010-10-16 01:11:43 -04:00
Matthias Clasen 6a2524324f Deprecate gtk_init_add, gtk_remove_add and friends
This functions are going to be removed in GTK+ 3.

https://bugzilla.gnome.org/show_bug.cgi?id=629955
2010-10-16 01:11:43 -04:00
Federico Mena Quintero caf38fc213 Part of bgo#613728 - [GtkTreeView] Focus the list, not the headers, when Tab-focusing
The idea is that it is way more common to want to manipulate the
actual list, rather than the headers.  Once you Tab into the treeview
(and the list part gets the focus), you can use Shift-Tab to focus
the headers.

This means that some hysteresis is added to the focus chain, but
it makes the treeview a lot more convenient to focus with the keyboard.

Signed-off-by: Federico Mena Quintero <federico@novell.com>
2010-10-14 13:23:04 -05:00
Matthias Clasen 880c9d82ec Deprecate GtkComboBoxEntry in favor of added properties to GtkComboBox
GtkComboBox now sports a construct-only "has-entry" property which
decides if it uses a GtkEntry to allow additional user input. Also
it has a new "entry-text-column" to fetch strings for the entry
from the model.

This patch deprecates the GtkComboBoxEntry and updates the rest of GTK+
to use the new semantics on GtkComboBox instead.
(cherry picked from commit 9612c64817)
2010-10-13 22:43:40 -04:00
Matthias Clasen 9f08f69f4b Don't use newly deprecated gdk_drawable apis
https://bugzilla.gnome.org/show_bug.cgi?id=631697
2010-10-08 14:39:17 -04:00
Federico Mena Quintero 5350edbb2c Filechooser - In OPEN or SAVE mode, typing a plain folder name should switch to it
If you type 'subfolder/' and hit Enter, the file chooser will switch you to
it.  But if you type just 'subfolder' without the trailing slash, apps would
receive *that* filename (e.g. file:///foo/bar/subfolder) as the response, and
they would likely print an error that they can't open that file (as it is
a folder).  So, we change the file chooser's current folder to that subfolder
in this case.

Signed-off-by: Federico Mena Quintero <federico@novell.com>
2010-10-06 12:59:44 -05:00
Javier Jardón 463e6843b9 docs: Fix some docs in gdkrgb
Reported by Milan Bouchet-Valat in
https://bugzilla.gnome.org/show_bug.cgi?id=631473
2010-10-06 01:00:35 +02:00
Federico Mena Quintero 09cf709fe9 Handle the case where you type /blah/nonexistent in SELECT_FOLDER mode
Previously name_entry_get_parent_info_cb() would fail as it doesn't handle SELECT_FOLDER.
Now we just make that function act the same as for CREATE_FOLDER mode.  In either
case, if you type "/blah/nonexistent" and hit Enter, you want a folder
with that name to be created (under the already-existing /blah).

Signed-off-by: Federico Mena Quintero <federico@novell.com>
2010-10-05 15:19:50 -05:00
Stephen Shaw b6f4b7dbce Clarify the name of a callback
The old save_entry_get_info_cb() was misnamed; it is actually used
to see if a file's presumed parent *is* a folder.  So we rename
it to name_entry_get_parent_info_cb().

Signed-off-by: Federico Mena Quintero <federico@novell.com>
2010-10-05 15:19:50 -05:00
Stephen Shaw c9ea622fc6 bgo#629722 - file chooser should cope with typing a directory name and then Enter
file_exists_get_info_cb() used to let some actions fall through to
the code that checks for the file type of the selected file's parent
(e.g. to see if /foo/bar *is* indeed a folder if you type /foo/bar/baz).
However, we need to be more explicit for each file chooser action, as
in SELECT_FOLDER mode typing /foo/foldername and hitting Enter would not
give you an immediate selection, but rather the file chooser would
complain that it couldn't create that directory as it already exists.

Signed-off-by: Federico Mena Quintero <federico@novell.com>
2010-10-05 15:19:50 -05:00
Claudio Saavedra fac5167404 Fix maintainer-clean
gtkimcontextsimpleseqs.h is not really autogenerated but shipped

https://bugzilla.gnome.org/show_bug.cgi?id=630708
2010-09-28 11:16:38 +03:00
Matthias Clasen d1f256ac30 Backport some new GdkWindow api from 2.90
This commit adds
gdk_window_get_display
gdk_window_get_screen
gdk_window_get_visual
gdk_window_get_width
gdk_window_get_height
and deprecates the corresponding GdkDrawable APIs.
This will make it easier to prepare the port to GTK+ 3
2010-09-27 20:37:03 -04:00
Matthias Clasen 2e5251b405 Add gdk_cairo_set_source_window
And deprecate gdk_cairo_set_source_pixmap.
2010-09-27 19:00:10 -04:00
Matthias Clasen a2087c9095 Deprecate gtk_object_destroy 2010-09-26 22:33:18 -04:00
Matthias Clasen c4bc22d77b Backport the uri hook cleanup
This commit deprecates gtk_link_button_set_uri_hook(),
gtk_about_dialog_set_email_hook() and gtk_about_dialog_set_url_hook(),
and adds a GtkAboutDialog::activate-link signal.
2010-09-24 12:40:53 -04:00
Matthias Clasen ce6090b11e Add an index for 2.24 api additions 2010-09-24 11:53:05 -04:00
Matthias Clasen 74ad2e1e7e GtkNotebook: deprecate some tab-dnd-related functions
gtk_notebook_set_window_creation_hook has been removed in GTK+ 3,
deprecate it here. gtk_notebook_get/set_group has been deprecated
in favour of the new gtk_notebook_get/set_group_name.

http://bugzilla.gnome.org/show_bug.cgi?id=630521
2010-09-24 11:50:26 -04:00
Matthias Clasen f574305b17 Set version to 2.23.0 2010-09-23 23:36:53 -04:00
Matthias Clasen 71bec7e7ad Bump version 2010-09-23 13:36:46 -04:00
Takayuki KUSANO b7cd904fe3 Updated Japanese translation (symbolic link related) 2010-09-24 02:13:15 +09:00
Javier Jardón 537a2534b9 INSTALL.in: the Glib required version is 2.25.10 2010-09-23 17:05:46 +02:00
Matthias Clasen 6c95f0475f Update INSTALL information 2010-09-23 08:17:42 -04:00
Matthias Clasen 43bc74eae1 Update NEWS for 2.22.0 2010-09-22 23:06:21 -04:00
Kenneth Nielsen 2119046a1c Updated Danish translation 2010-09-22 22:59:24 +02:00
Sweta Kothari 530cf56f24 Updated Gujarati Translations 2010-09-22 16:50:01 +05:30
Jonh Wendell 990715e5db Updated Brazilian Portuguese translation 2010-09-21 21:25:41 -03:00
Jonh Wendell dd5cf4769a Updated Brazilian Portuguese translation 2010-09-21 21:09:07 -03:00
Inaki Larranaga Murgoitio 4272a6f1d8 Updated Basque language 2010-09-21 15:39:52 +02:00
Inaki Larranaga Murgoitio fb4ae28444 Updated Basque language 2010-09-21 15:32:54 +02:00
Aron Xu 6d9959b30c Add a ug.po for po-properties, re-enable ug in LINGUAS. 2010-09-20 20:12:26 +00:00
Kjartan Maraas f6e92685a6 Remove ug since it broke the build. Please add the translation to po-properties as well next time. 2010-09-20 21:04:25 +02:00
Bakaoukas Nikolaos fe5c6f29fe Updated Greek translation 2010-09-20 19:00:58 +03:00
Colin Walters 62c2b4f529 introspection: Only use 0.9.3 API 2010-09-20 10:00:30 -04:00
Takayuki KUSANO 2dd67663c8 Updated Japanese translation 2010-09-20 18:40:57 +09:00
Gheyret Kenji 1757426e86 Add Uighur UI translation. 2010-09-20 05:15:04 +00:00
Kenneth Nielsen d508b22228 Updated Danish translation 2010-09-19 17:41:15 +02:00
Wouter Bolsterlee efc03dd0ee Updated Dutch translation by Vincent van Adrighem 2010-09-19 16:37:50 +02:00
Matthias Clasen 4850fa57f9 Fix up a botched cherry-pick 2010-09-17 11:05:42 -04:00
Matthias Clasen d7cc714705 Add some element-type annotations to gtk apis 2010-09-17 09:50:57 -04:00
Matthias Clasen 0ebde0bbe5 Fix a doc comment
(cherry picked from commit 28c66ed9b0)
2010-09-17 09:49:54 -04:00
Matthias Clasen a3fa516c60 Scan gdk/x11 sources for Gdk-3.0.gir
The doc comments (with annotations) for some of the gdk api are down
in x11/ sources, so we need to scan those too, when building Gdk-3.0.gir.
2010-09-17 09:49:19 -04:00
Matthias Clasen 27970efd52 Add annotations
The goi scanner warns about these nowadays.
(cherry picked from commit 6aa8941b84)
2010-09-17 09:47:47 -04:00
Aron Xu 44b8334775 Update Simplified Chinese translation. 2010-09-16 17:22:27 +00:00
Aron Xu 3a634939a8 Update Simplified Chinese UI translation. 2010-09-16 15:45:51 +00:00
Christian Kirbach 7e0f13f678 [i18n] Updated German translation 2010-09-16 15:43:09 +02:00
Petr Kovar 2c6685355b Update Czech translation 2010-09-15 20:29:41 +02:00
Petr Kovar 42e2d014d0 Update Czech translation 2010-09-15 19:56:56 +02:00
Sebastian Dröge 285ab04c0c gdk: Only use XComposite if it is available
Fixes build if it isn't available. Bug #629748.
2010-09-15 16:41:41 +02:00
Aron Xu b9db80d62c Update Simplified Chinese translation. 2010-09-15 16:06:33 +08:00
Andika Triwidada 2ba282165e Updated Indonesian translation 2010-09-15 09:25:48 +07:00
Matthias Clasen 7c44678f53 Bump version after release 2010-09-14 07:53:19 -04:00
Matthias Clasen f9473472dd Change the initial value of GtkDialog::has-separator to match the default 2010-09-13 23:43:45 -04:00
Matthias Clasen 3cd5d1619c Update NEWS for 2.21.8 2010-09-13 23:43:45 -04:00
Milan Bouchet-Valat 2363cccd24 bgo#486839 - Fix path bar size group in the file chooser
Since the location button is hidden in save mode, we need to add the
path bar to the size group too. The location button still has to be in
the group though, because it's larger than the path bar (when
shown). Instead of using the recent/search icons, add their hboxes so
that themed widget spacings don't introduce variations.
2010-09-13 14:58:04 -05:00
Matthias Clasen 4394a972dc Fix a logic error in the gdk_display deprecation 2010-09-13 13:14:18 -04:00
Takayuki KUSANO 7cf1133d45 Updated Japanese translation. 2010-09-14 01:41:18 +09:00
Adel Gadllah 81ec8c7a1b [GdkWindowCache] Don't ignore the CompositeOverlayWindow
Add the composite overlay window to the cache, as this can be a reasonable Xdnd proxy as well.

This is only done when the screen is composited in order to avoid mapping
the COW. We assume that the CM is using the COW (which is true for pretty
much any CM currently in use).

https://bugzilla.gnome.org/show_bug.cgi?id=601731
2010-09-13 18:21:15 +02:00
Takayuki KUSANO dddeee0cb2 Updated Japanese translation. 2010-09-13 02:06:19 +09:00
Christian Kirbach 80c096ed6e [l10n] Updated German translation 2010-09-12 13:26:23 +02:00
Andika Triwidada 92235e2a58 Updated Indonesian translation 2010-09-11 15:21:46 +07:00
Matthias Clasen 9190497b4a Don't use g_idle_add to schedule idles in GDK
We need to use gdk_threads_add_idle, in order to keep GDK code
under the GDK lock.

Bug 629277
(cherry picked from commit 08dd02fe25)
2010-09-10 22:35:36 -04:00
Matthias Clasen a3c3031a0e Deprecate gdk_display and GDK_DISPLAY 2010-09-10 22:33:58 -04:00
Matthias Clasen ee14cc3160 Build fixes after GtkItem deprecation 2010-09-10 22:33:58 -04:00
Mike Gorse ecc6577a37 Gail: Deprecate gail_cell_type_add_action_interface 2010-09-10 09:44:41 -04:00
Mike Gorse e58f22a7ea Gail: Take fill/page size into account when returning a range's maximum value 2010-09-10 06:11:08 -04:00
Tor Lillqvist 88f54ea47d Avoid potential DLL hijacking in Wintab code
Load Wintab32.dll from an absolute path. A proper Wintab32.dll, if
present, should be in the Windows system directory, so load it from
there.
2010-09-09 20:21:03 +03:00
Changwoo Ryu fa1b57ca97 Updated Korean translation 2010-09-10 02:04:20 +09:00
Mike Gorse be0beb758e Remove g_print calls 2010-09-09 09:34:28 -04:00
Michael Meeks 1b05158db9 Fix build breakage in deprecation notes for gtkitem 2010-09-09 11:52:30 +01:00
Matthias Clasen 15df889204 Add deprecation notes for GtkItem 2010-09-09 00:02:18 -04:00
Matthias Clasen eb77f20c52 Change the default of GtkDialog::has-separator to FALSE
Otherwise, the removing deprecated API will force the appearance
of a dialog separators, which would be unfortunate.
2010-09-08 23:53:55 -04:00
Colin Walters 750c81f43d gdk: Prefix keys with _KEY by default
The keysyms create a lot of potential namespace conflicts for
C, and are especially problematic for introspection, where we take
constants into the namespace, so GDK_Display conflicts with GdkDisplay.

For C application compatiblity, add gdkkeysyms-compat.h which uses
the old names.  In GTK2, this header is included by default.

https://bugzilla.gnome.org/show_bug.cgi?id=629093
2010-09-08 19:07:23 -04:00
Colin Walters ae84810db5 gdk: Update gdkkeysyms.h
In preparation for adding a namespace prefix for introspection.
2010-09-08 18:56:59 -04:00
Mike Gorse 8ec4f184ab Remove a duplicate variable
Bug#628110: gtk_spinner_accessible_get_type always returns null
2010-09-08 17:54:17 -04:00
Colin Walters 8e75ddeac6 introspection: Update to new scanner API
* Add --warn-all
* Drop unnecessary  of --strip-prefix; for GdkX11, use --symbol-prefix

https://bugzilla.gnome.org/show_bug.cgi?id=628160

Conflicts:

	configure.in
	gdk/Makefile.am
	gtk/Makefile.am
2010-09-08 11:13:12 -04:00
Inaki Larranaga Murgoitio 373f2b8a0c Updated Basque language 2010-09-08 12:15:23 +02:00
Matthias Clasen 19ef533618 Fix the build after recent deprecations 2010-09-07 10:53:10 -04:00
Matthias Clasen bcdd895229 Avoid segfault on xkbless systems
This was reported in bug 628932 to cause problems on VNC.
(cherry picked from commit d5c2cb7bcb)
2010-09-07 00:11:55 -04:00
Benjamin Otte ba5ba3b022 gdk: Ensure flush of surface when cairo_t is destroyed
Add an ugly workaround because GTK does not ensure surfaces get flushed
before directly accessing the drawable backed by the surface. This is
not visible on X11 (where flushing is a no-op), but can be seen on
Windows.

https://bugzilla.gnome.org/show_bug.cgi?id=628291
2010-09-07 02:42:27 +02:00
Duarte Loreto ebc6238a0e Updated Portuguese translation 2010-09-07 00:46:51 +01:00
Duarte Loreto b6a733c9d2 Updated Portuguese translation 2010-09-07 00:41:30 +01:00
Luca Ferretti 522a2f0214 Updated Itlian translation 2010-09-07 00:10:38 +02:00
Luca Ferretti 7e9f7d7703 Fixed Italian translation, previously committed in wrong po directory 2010-09-07 00:06:36 +02:00
Luca Ferretti 1294e41449 Updated Italian translation 2010-09-06 23:51:24 +02:00
Matej Urbančič 7ea18bc4ee Updated Slovenian translation 2010-09-06 16:46:12 +02:00
Gabor Kelemen 4f6c63f0c9 Updated Hungarian translation 2010-09-06 15:41:36 +02:00
Daniel Nylander bbd68748bc Updated Swedish translation 2010-09-06 15:29:53 +02:00
Daniel Nylander 33fd9626eb Updated Swedish translation 2010-09-06 15:25:48 +02:00
Baurzhan Muftakhidinov 2ee665300b Updated Kazakh translation 2010-09-06 10:49:49 +06:00
Neil Roberts c3c5575fc1 Initialize more attributes in gdk_window_ensure_native
The attributes struct has some members that aren't covered by the
attributes_mask so they should always be filled in. The Win32 backend
was using the window type member when creating the window
implementation. Previously this was left uninitialized so it would end
up thinking the window is input_only and nothing would get painted.

https://bugzilla.gnome.org/show_bug.cgi?id=628049

Signed-off-by: Hans Breuer <hans@breuer.org>
2010-09-05 16:01:23 +02:00
Hans Breuer 5077d9cce8 msvc: No more fake folder.png and drive-harddisk.png 2010-09-05 16:01:22 +02:00
Khaled Hosny 007595b639 Updated Arabic translation 2010-09-05 15:55:36 +02:00
Chao-Hsiung Liao 727287b870 Updated Traditional Chinese translation (Hong Kong and Taiwan) 2010-09-05 19:36:46 +08:00
Claude Paroz ae98e7dd7a Updated French translation 2010-09-04 23:18:31 +02:00
Piotr Drąg 6db486993d Updated Polish translation 2010-09-04 17:50:12 +02:00
Piotr Drąg ca63fd71d7 Updated Polish translation 2010-09-04 17:49:38 +02:00
Philip Withnall 2e2431f353 Update British English translation 2010-09-04 15:09:20 +01:00
Jorge González ef06c92610 Updated Spanish translation 2010-09-04 09:40:58 +02:00
Matthew Barnes 1175e6b98c Don't leak display name
Bug 628656 - _gdk_windowing_get_startup_notify_id memory leak

get_display_name() returns a newly allocated string, which was being fed
directory info a g_strdup_printf() call.
(cherry picked from commit bf3b5f785e)
2010-09-03 12:51:24 -04:00
Matej Urbančič d72cfae56a Updated Slovenian translation 2010-09-03 18:34:59 +02:00
Tor Lillqvist 027380d33e Just use TrackMouseEvent directly
TrackMouseEvent is present in user32.dll in all Windows versions we
support. No need to look it up dynamically. No need to fallback to
_TrackMouseEvent from comctrl32.dll.
2010-09-03 00:49:02 +03:00
Luca Ferretti 20d8fbd90f Updated Italian translation 2010-09-02 23:33:59 +02:00
Matthias Clasen 9f9170e3aa Deprecate blinking status icons
Just a bad idea...
2010-09-02 11:28:18 -04:00
Matthias Clasen 6f6650e6cf Document separator-related api in GtkDialog as deprecated 2010-09-02 11:18:01 -04:00
Yaron Shahrabani b288284122 Updated Hebrew translation. 2010-09-02 18:09:12 +03:00
Yaron Shahrabani 7a1cf58934 Updated Hebrew translation. 2010-09-02 18:06:36 +03:00
Tor Lillqvist d6e11a97e3 Avoid potential DLL hijacking in ms-windows theme engine
Load uxtheme.dll from an absolute path. A proper uxtheme.dll, if
present, will always be in the Windows system directory, so load it
from there.
2010-09-02 14:44:34 +03:00
Kjartan Maraas 4bd9e3aecc Updated Norwegian bokmål translation 2010-09-02 12:16:37 +02:00
Kjartan Maraas 88a521862a Updated Norwegian bokmål translation 2010-09-02 12:02:03 +02:00
Fran Diéguez fc82963911 Updated Galician translations 2010-09-02 10:43:25 +02:00
Matthias Clasen 45ed34c78f Add new functions to the docs 2010-09-01 23:06:37 -04:00
Matthias Clasen 190b3c372a Deprecate GtkIconView::orientation
Rename the orientation property to item-orientation, since that is
closer to the meaning of the property and avoids confusion with
GtkOrientable::orientation. Also add getter and setter for the new
property, and deprecate the old property and getter/setter.
2010-09-01 22:39:33 -04:00
Matthias Clasen 49e18a29b2 Deprecate 'opt-in' style properties
The following style properties are there to let theme engines 'opt-in'
to more correct behaviour while maintaining compatibility with existing
themes. GTK+ 3 engines are expected to handle the more correct behaviour,
and these properties will no longer be there in GTK+ 3:
GtkEntry::state-hint
GtkTreeView::row-ending-details
GtkRange::trough-side-details
GtkRange::stepper-position-details
GtkRange::activate-slider
2010-09-01 22:19:20 -04:00
Carl-Anton Ingmarsson 7f2b4bb381 docs: Further fix GtkStock documentation
Some icons were left out from the
commit 9688665334

https://bugzilla.gnome.org/show_bug.cgi?id=628308

Signed-off-by: Javier Jardón <jjardon@gnome.org>
2010-09-01 17:47:51 +02:00
Stefan Kost e14bf989eb widget: more details on gtk_widget_grab_focus docs
Tell that widget needs to be mapped and realized.
2010-09-01 16:56:42 +03:00
Stefan Kost 076ae4f5ad container: clarify the docs
Hightlight more that focus_child is a container internal thing and suggest
what application developers most likely were looking for instead.
2010-09-01 16:56:42 +03:00
Stefan Kost d945a3cef4 container: don't leak the focus_child ref count
gtk_conatiner_set_focus_child() takes a ref. Release the ref in _destroy().
Fixes #414712.
2010-09-01 16:56:34 +03:00
Ivar Smolin a3268e29a1 [l10n] Updated Estonian translation 2010-09-01 11:24:39 +03:00
Mattias Põldaru 75fca2449f [l10n] Updated Estonian translation 2010-09-01 11:11:39 +03:00
Lionel Landwerlin 30a52271e5 directfb: implement draw_drawable_with_src instead of draw_drawable in GdkDrawableImplDirectFB
This is required by the rotated button test in gtk-demo

Signed-off-by: Lionel Landwerlin <llandwerlin@gmail.com>
2010-08-31 21:08:21 +02:00
Lionel Landwerlin b7b9a01efb TOFINISH: fixes on clear/scrolling
Signed-off-by: Lionel Landwerlin <llandwerlin@gmail.com>
2010-08-31 21:08:21 +02:00
Lionel Landwerlin 4509240d0e directfb: fix gdk_directfb_child_at
When GDK looks for the window under pointer, the gdk-directfb backend
looks at windows starting from the root window to the upper window in
the stack. For this, it looks at window's size and position. This
patch fix the assumption that windows are always natives windows from
which we can retrieve backend's private data.

Signed-off-by: Lionel Landwerlin <llandwerlin@gmail.com>
2010-08-31 21:08:21 +02:00
Lionel Landwerlin 65f7b09b39 directfb: fix GdkPixmap creation
Since GDK has introduced the offscreen window concept, pixmap can be
created using drawables which aren't native windows. This patch fix
this assumption.

Signed-off-by: Lionel Landwerlin <llandwerlin@gmail.com>
2010-08-31 21:08:21 +02:00
Lionel Landwerlin 8e958f58c9 directfb: remove useless cairo_surface cleanup
This is done by gdk_directfb_cairo_surface_destroy via cairo_surface_set_user_data.

Signed-off-by: Lionel Landwerlin <llandwerlin@gmail.com>
2010-08-31 21:08:21 +02:00
Lionel Landwerlin 333d53b342 directfb: remove useless code manipulating window's private data
The window management code used to deal with gdk internals. It seems a
lot of code has been pushed to the generic gdk code, so we remove
useless code.

Signed-off-by: Lionel Landwerlin <llandwerlin@gmail.com>
2010-08-31 21:08:21 +02:00
Lionel Landwerlin 737f035959 directfb: rework backend initialization a little bit
Make it look more like the x11 backend. Also some people reported
crash early in the backend initialization about some colormap stuff,
this should avoid the problem.

Signed-off-by: Lionel Landwerlin <llandwerlin@gmail.com>
2010-08-31 21:08:21 +02:00
Lionel Landwerlin 2970d775ed directfb: get rid of useless gdkWindow reference in GdkWindowImplDirectFB
Signed-off-by: Lionel Landwerlin <llandwerlin@gmail.com>
2010-08-31 21:08:21 +02:00
Lionel Landwerlin 5538315d38 directfb: event manager rewrite
The event translation code used to deal a lot with gdk internals. It
seems a lot of code has been pushed to the generic gdk code, so we
needed to rewrite the things a little bit.

Signed-off-by: Lionel Landwerlin <llandwerlin@gmail.com>
2010-08-31 21:08:21 +02:00
Lionel Landwerlin ecb7734660 directfb: split gdk_directfb_event_make function
In prevision of coming event manager rewrite.

Signed-off-by: Lionel Landwerlin <llandwerlin@gmail.com>
2010-08-31 21:08:21 +02:00
Lionel Landwerlin 9de2f4b9cc directfb: get rid of abs_x,abs_y computation within the backend
The computation of abs_x,abs_y is done by the generic code of GDK when
events are raised. We don't care about that anymore.

Signed-off-by: Lionel Landwerlin <llandwerlin@gmail.com>
2010-08-31 21:08:21 +02:00
Lionel Landwerlin 68ba791720 directfb: use boilerplate macros for GdkWindow
This patch reduce boilerplate for GdkWindowImplDirectFB using G_DEFINE_TYPE macro.

Signed-off-by: Lionel Landwerlin <llandwerlin@gmail.com>
2010-08-31 21:08:20 +02:00
Lionel Landwerlin 4e9be0c9e9 directfb: use boilerplate macros for GdkPixmap
This patch reduce boilerplate for GdkPixmapImplDirectFB using G_DEFINE_TYPE macro.

Signed-off-by: Lionel Landwerlin <llandwerlin@gmail.com>
2010-08-31 21:08:20 +02:00
Lionel Landwerlin 000b2fa22b directfb: use boilerplate macros for GdkImage
This patch reduce boilerplate for GdkImage using G_DEFINE_TYPE macro.

Signed-off-by: Lionel Landwerlin <llandwerlin@gmail.com>
2010-08-31 21:08:20 +02:00
Lionel Landwerlin 59d6e84459 directfb: drop cairo < 1.6 dependency
This removes the cairo's versions checks < 1.6 since GTK+ now requires
cairo >= 1.6.

Signed-off-by: Lionel Landwerlin <llandwerlin@gmail.com>
2010-08-31 21:08:20 +02:00
Lionel Landwerlin f8d42326ea directfb: coding style coherency
Signed-off-by: Lionel Landwerlin <llandwerlin@gmail.com>
2010-08-31 21:08:20 +02:00
Lionel Landwerlin 3c3aa2778b directfb: add missing symbols for gdk input 2.22
Also make it look more like the x11 backend.

Signed-off-by: Lionel Landwerlin <llandwerlin@gmail.com>
2010-08-31 21:08:20 +02:00
Lionel Landwerlin 8637b3eb37 directfb: drop internal reference to gdk-pixbuf
Signed-off-by: Lionel Landwerlin <llandwerlin@gmail.com>
2010-08-31 21:08:20 +02:00
Fridrich Štrba 4226a6cfcd Porting the MS Windows theme engine to cairo - Part 2 rectangle and line drawing 2010-08-31 18:03:52 +02:00
Fridrich Štrba eea413fe9d Porting MS Windows theme engine to cairo - Part 1: stippling 2010-08-31 18:02:31 +02:00
Philip Withnall 6e4765b1e9 Update British English translation 2010-08-31 09:40:16 +01:00
Matthias Clasen ce41d56f73 Fix GtkStock documentation
After the big icon rename, all the links in the docs have to
be updated, and we need to copy the right icons.
2010-08-31 00:36:27 -04:00
Matthias Clasen 5c74a696d5 Make stock icons use standard icon names
At least where standard names are available, instead of relying
on a symlink forest in the icon theme directory. For directional
variants, we look up icons by the pair ("foo-rtl", "foo") or
("foo-ltr", "foo"). See bug 626474.
2010-08-31 00:34:56 -04:00
Gabor Kelemen 0499938cf8 Updated Hungarian translation 2010-08-31 02:27:53 +02:00
Gabor Kelemen 39a9857c00 Updated Hungarian translation 2010-08-31 02:19:45 +02:00
Matthias Clasen 11b47eaa54 Bump version 2010-08-30 15:07:28 -04:00
Martin Schlemmer 1402c861a9 [win32] Properly draw the menu separator for Windows Vista/7.
Also adds the bits for transparency.
2010-08-30 20:03:04 +02:00
Martin Schlemmer e822af1d98 [win32] Use pango_win32_font_description_from_logfontw() to get
the system font, instead of the code duplication.
2010-08-30 20:00:53 +02:00
Martin Schlemmer 78d120e299 [win32] Fix some warnings related to type differences and unused variables 2010-08-30 19:59:25 +02:00
Matthias Clasen a5ee5feed0 Update NEWS for 2.21.7 2010-08-30 13:46:08 -04:00
Szilárd Pfeiffer 65f10fb0f9 modules/other/gail/gailtogglebutton.c: Add/remove indeterminate state
GailToggleButton does not set/unset ATK_STATE_INDETERMINATE according to the
value of GtkToggleButton's inconsistent property.

Fixes https://bugzilla.gnome.org/show_bug.cgi?id=626537
(cherry picked from commit 86851b7ad3)
2010-08-30 12:53:36 -04:00
Matthias Clasen 4e2ade8d6b Make gdk_keymap_map_virtual_modifiers work early
It needs to ensure that we have an uptodate modmap. Bug 616401
(cherry picked from commit d5a8a3c9bc)
2010-08-30 12:52:40 -04:00
Matthias Clasen c9c23ef031 Remove depth restriction from gtk_combo_box_set_active_iter docs
While it may not work perfectly in menu mode, it works fine for
list mode. Bug 627843.
(cherry picked from commit 2766cd14ad)
2010-08-30 12:50:25 -04:00
Andika Triwidada d28a54e7f6 Updated Indonesian translation 2010-08-30 18:23:19 +07:00
Jorge González 50cc4896ad Updated Spanish translation 2010-08-30 01:03:15 +02:00
Fran Diéguez 8aa07505ae Updated Galician translations 2010-08-29 22:44:50 +02:00
Philip Withnall 818ef9aaf6 Miscellaneous string fixes
Mostly capitalisation fixes. Closes: bgo#528257
2010-08-29 19:05:26 +01:00
Philip Withnall 77d28e3104 Miscellaneous property string fixes 2010-08-29 19:02:00 +01:00
Fridrich Štrba 895b9ff43f A proper fix for win32 build 2010-08-29 18:16:58 +02:00
Fridrich Štrba af44019baf Revert "Fix windows build of the branch"
This reverts commit c7e650ae5d.
2010-08-29 18:16:19 +02:00
Hans Breuer 17269e6c1d win32: Fix a bunch of c99isms
With c89 (which msvc implements) variables still need to be
declared at the beginning of a block.
2010-08-29 14:31:06 +02:00
Hans Breuer 707f1a9a84 win32: Further fixing _gdk_window_impl_new()
- attributes->wclass is not consistently set anymore,
   use private->input_only instead [1]
 - don't put window into parent->children a second time
   (now there is no window reference problem anymore)
2010-08-29 14:22:08 +02:00
Matthias Clasen 91ce32602a Use G_PARAM_DEPRECATED for deprecated shadow properties
These have been deprecated for a long time, marking them as such
will make diagnostic mode more useful.
2010-08-28 17:28:59 -04:00
Fridrich Štrba c7e650ae5d Fix windows build of the branch 2010-08-28 18:50:45 +02:00
Philip Withnall a1e8ea6b7f Update British English translation 2010-08-28 16:05:08 +01:00
Martin Schlemmer 770e308c42 win32: cummulated backport of xp theme fixes from master 2010-08-28 15:14:31 +02:00
Gabor Kelemen 5149e93f97 Updated Hungarian translation 2010-08-28 10:52:28 +02:00
Jorge González 49abec1de8 Updated Spanish translation 2010-08-28 10:18:54 +02:00
Yaron Shahrabani 095343ff8d Updated Hebrew translation. 2010-08-28 10:39:32 +03:00
Yaron Shahrabani 012d605c23 Updated Hebrew translation. 2010-08-28 10:31:19 +03:00
Fran Diéguez 9596c3fd24 Updated Galician translations 2010-08-27 23:41:27 +02:00
Bruno Brouard 7dc89847a7 Updated French translation 2010-08-27 23:02:20 +02:00
Hans Breuer e339d36a02 win32: Resurrect some enter/leave notify events for native windows
The button highlighting in testgtk works again, even with
GDK_NATIVE_WINDOWS. Unfortunately testgtk:menus still does
not work for the forced-native-window-case.
2010-08-27 21:29:33 +02:00
Hans Breuer 068515ad96 Further fix _gdk_window_impl_new() for win32 and ...
Beside fixing _gdk_window_impl_new() as adviced in
http://mail.gnome.org/archives/gtk-devel-list/2010-August/msg00214.html
the patch adds implementations for set_background, set_back_pixmap,
restack_under, restack_toplevel and clear_region methods.
2010-08-27 21:23:59 +02:00
Neil Roberts 2e08524481 win32: Never pass SWP_NOSIZE or SWP_NOMOVE to SetWindowPos
In _gdk_window_move_resize_child it tries to decide whether to pass
SWP_NOSIZE and SWP_NOMOVE based on whether the new size and position
is different from the window's existing position. However it seems
that GDK now ends up updating the window's position before calling
_gdk_window_move_resize_child so this would mean it would think the
window never changes size or position so SWP_NOSIZE|SWP_NOMOVE would
always be set. This causes child windows to never be resized.

This patch changes it so that it never passes either flag to
SetWindowPos. I don't know whether this will cause any side effects
but you'd think it shouldn't do any harm to reassert the current size.

https://bugzilla.gnome.org/show_bug.cgi?id=628049

Signed-off-by: Hans Breuer <hans@breuer.org>
2010-08-27 20:38:01 +02:00
Hans Breuer 0e781823cb Update mscv/win32 build
Fix makefiles for separated gdk-pixbuf and declare variable at
the beginning of a block (fix c99ism).
2010-08-27 20:34:23 +02:00
Sergey Orlov 6d0ff4708c bgo#614006 - GtkFileSystemModel - Make sure to generate node IDs are valid for new files
When a file was inserted during the period that the editable row was
active, the node IDs would not get updated correctly.

Signed-off-by: Federico Mena Quintero <federico@novell.com>
2010-08-24 17:14:29 -05:00
Kjartan Maraas b53e822af7 Updated Norwegian bokmål translation 2010-08-21 11:17:28 +02:00
Matthias Clasen 1cd305e85f Fix up indices for 2.22 api additions 2010-08-19 18:16:43 -04:00
Stefan Kost 587a1de401 [filechooserentry] don't show misplaced completion popup
Override the key-press-event instead of overriding the focus method.
Fixes #627139
2010-08-19 09:35:32 +03:00
Matthias Clasen 67684a05b6 Deprecate GtkWidget::draw-border style property
This style property is not used at all in the wild, and handling
it has some performance overhead.
2010-08-18 12:49:34 -04:00
Benjamin Otte 1f905a1c17 testgtk: undef GDK_DISABLE_DEPRECATED
We test ctree code here and that code uses pixmaps.
2010-08-17 19:10:51 +02:00
Benjamin Otte 36f931f292 testdnd: Convert to use pixbufs as icons
Using Pixmaps is outdated.
2010-08-17 19:07:54 +02:00
Benjamin Otte d24a6727b8 gtk-demo: Adapt textview example for stipple removal 2010-08-17 19:06:14 +02:00
Matthias Clasen 02520a0781 Bump version 2010-08-16 20:05:25 -04:00
Matthias Clasen a3689e670e More NEWS 2010-08-16 18:16:04 -04:00
Matthias Clasen 1d5a6e790a Fix up some documentation issues 2010-08-16 17:38:23 -04:00
Benjamin Otte 315c23546d colorsel: Create cursor image using Cairo 2010-08-16 20:01:49 +02:00
Benjamin Otte 9f1cb0798b API: Add gdk_window_get_background_pattern()
This is the suggested way for GTK3 to store a Window's background so it
makes sense to use the same function today already.
2010-08-16 20:01:49 +02:00
Kristian Rietveld 77b703c2fc quartz: stop offscreen windows code from crashing.
This is an adapted version of commit
bde0f9a8f6 on master.

Mainly fixes to properly differentiate bewteen toplevel and offscreen
windows, since these sometimes need different treatment.  Furthermore,
usage of gdk_window_get_effective_foo() instead of gdk_window_get_foo()
where applicable.

There is an drawing issue left when scrolling e.g. tree views in
offscreen windows.  I think this is likely an issue with
gdk_quartz_draw_drawable() which is used for the copy area code in
offscreen windows.  It works fine in master, since this was converted
to Cairo.
2010-08-15 17:34:33 +02:00
Benjamin Otte 370dfc16ca Remove window background getters again
They were added as accessors for 2.22 even though querying the
background wasn't possible previously. As GTK 3.0 will change background
handling, it doesn't make sense at all to expose these getters.
2010-08-15 03:31:37 +02:00
Benjamin Otte 767235aabc gtk-demo: update drawingarea example
Use gdk_window_create_similar_surface() instead of gdk_pixmap_new()
2010-08-12 23:38:17 +02:00
Benjamin Otte 3df3ff9a3a docs: Add note to gdk_pixmap_new() about create_similar() function
gdk_window_create_similar_surface() is basically the replacement for
this function.
2010-08-12 23:34:37 +02:00
Benjamin Otte 997d3aada6 API: Add gdk_window_create_similar_surface() 2010-08-12 23:30:19 +02:00
Sven Herzberg 00857133d4 avoid redundant recursion for executing tests
[cherry-picked cd00b0a from master]

* Makefile.decl: make sure that check-local does not depend on a
  recursive target for the tests. This way check can recurse and call
  check-local in each folder which then invokes test-cwd. This will
  make sure that a toplevel check-local doesn't recurse into subfolders
  as well. The was resulting in test being run twice (for "/tests"), tree
  times (e.g. for "/gtk/tests") and potentially more often
2010-08-12 11:23:42 +02:00
Benjamin Otte 0e183fe745 pixmap: Deprecate create_from_data() constructors
And document that GdkPixmap will go away in GTK 3.
2010-08-12 03:02:38 +02:00
Benjamin Otte cedf52fb81 x11: Deprecate GdkGC functions
They are gone in GTK3, just like the rest of GdkGC.
2010-08-12 01:54:58 +02:00
Matthias Clasen 329b34b8cb Fix a mis-merge 2010-08-11 07:19:10 -04:00
Benjamin Otte 9d2f8f5098 docs: Add paragraph about GdkRegion replacement in GTK3
https://bugzilla.gnome.org/show_bug.cgi?id=613284
2010-08-10 18:26:12 +02:00
Benjamin Otte e8915ae422 gdk: Undeprecate gdk_region_xor()
cairo_region_xor() does now exist, so there's no need to deprecate this
function.
2010-08-10 18:26:12 +02:00
Matthias Clasen a41107b616 Fix another build failure 2010-08-10 09:24:51 -04:00
Matthias Clasen 8963e7cc46 Remove merge conflicts 2010-08-10 07:43:26 -04:00
Matthias Clasen 70f65529a5 Make it possible to make the expander label fill the entire space
This adds a boolean GtkExpander::label-fill property and uses it
when allocating space to the label. Based on a patch by Matt Barnes,
bug 614049.
2010-08-09 23:18:31 -04:00
Matthias Clasen 64bcdb78e0 Fix gail_notebook_get_selection_count()
This function should return 0 for empty notebooks. Based on
a patch by Mike Gorse, bug 557263.
(cherry picked from commit 7844d3b8db)
2010-08-09 23:14:58 -04:00
Matthias Clasen 2161fb5b8c Clarify the docs for gtk_widget_set_has_window()
The previous version of the docs did not make it clear that has-window
is the defaults. Pointed out by Magnus Hjorth, bug 615474.
(cherry picked from commit 61e34032ec)
2010-08-09 23:14:47 -04:00
Christian Dywan a11e4a58c0 Clarify memory management of tree models
It helps to be explicit about these things.
Bug 609264.
(cherry picked from commit 2a12f74c8e)
2010-08-09 23:14:14 -04:00
Hiroyuki Ikezoe fd352a10ca Drop xim-related configure options from the docs
These options have been dropped from configure a while ago,
so they should no longer be in the docs either. Bug 605190.
2010-08-09 23:13:53 -04:00
Sam Thursfield 1fed87720e Add missing accessors for notebook details
The ms-windows theme engine needs to access the tab-{h,v}border,
so add accessors. Bug 625655.
(cherry picked from commit a2b72c5953)
2010-08-09 21:24:29 -04:00
Sam Thursfield 28eebcf383 Towards GSEAL-clean build on win32
Use accessors instead of direct member access in a few places.
Bug 625655.
(cherry picked from commit 4047d0526d)
2010-08-09 21:24:19 -04:00
Szilárd Pfeiffer db2053ac1f Implement GailAdjustment::get_minimium_increment
...and use it in GailRange and GailSpinButton. Bug 625953.
(cherry picked from commit 93fa95e79f)
2010-08-09 21:24:03 -04:00
Szilárd Pfeiffer 85f8f64d78 Make Gail work with custom treemodels
Gail did set the role to ATK_ROLE_TABLE for anything that is
not a GtkTreeStore. The propery way to do this is to look at the
tree model flags for list-onlyness. Bug 580291.
(cherry picked from commit 2686af2fbb)
2010-08-09 21:23:17 -04:00
Matthias Clasen 0e1342b5e5 Update NEWS for 2.21.6 2010-08-09 01:38:29 -04:00
Benjamin Otte bff0d11c4d gdk: Deprecate GdkRGB functions 2010-08-08 02:59:21 +02:00
Benjamin Otte 78bf0f3071 demos: Convert to drawing with Cairo instead of GdkRGB 2010-08-08 01:07:45 +02:00
Benjamin Otte d80bc7868f demos: No need to set the rgb colormap here 2010-08-08 01:07:29 +02:00
Benjamin Otte 244fc05cff demos: Convert testpixbuf-save to Cairo 2010-08-08 01:06:38 +02:00
Benjamin Otte d7a1973f9f gtk-demo: Make pixbufs demo use Cairo 2010-08-08 01:05:30 +02:00
Benjamin Otte a907d5e2cc Deprecate all of GdkImage 2010-08-07 22:17:43 +02:00
Benjamin Otte 8a2a736af4 Deprecated all GdkGC functions 2010-08-07 22:08:21 +02:00
Benjamin Otte 41b637c338 hsv: Remove unused variable 2010-08-07 22:04:21 +02:00
Benjamin Otte 84f565505f testgtk: Remove unused variable 2010-08-07 21:19:02 +02:00
Benjamin Otte 3d506df234 gdk: Deprecate all drawing functions
These functions will be gone in Gtk 3.0 and be replaced by Cairo
functions.

Includes not disabling deprecated functions in old widgets that aren't
going to be ported.
2010-08-07 15:35:51 +02:00
Benjamin Otte 99c851c72d colorsel: Use gdk_pixbuf_get_from_drawable()
Instead of fiddling with GdkImage directly.
2010-08-07 15:35:51 +02:00
Benjamin Otte df120b78b3 testgtk: Remove image from drawable test
The test only tested old APIs.
2010-08-07 15:35:50 +02:00
Benjamin Otte 18ac62d459 testgtk: Remove alpha drawing test
We use Cairo for that these days.
2010-08-07 15:35:50 +02:00
Benjamin Otte b50cdb4b5e testgtk: Draw rotated text example with pangocairo 2010-08-07 15:35:50 +02:00
Benjamin Otte 4150ffbbe2 tests: Remove gdk_draw_pixbuf() with Cairo equivalent 2010-08-07 15:35:50 +02:00
Benjamin Otte e75fad5fbd testgtk: Replace gdk_draw_rectangle() with Cairo 2010-08-07 15:35:50 +02:00
Benjamin Otte 0d42dabf6c tests: Use gdk_screen_get_default_colormap()
We don't need the RGB colormap here.
2010-08-07 15:35:50 +02:00
Benjamin Otte 141b2ceff2 tests: Use GdkPixbuf for taking a screenshot, not GdkImage 2010-08-07 15:35:50 +02:00
Benjamin Otte 8dc19e4158 tests: Make testoffscreen use Cairo 2010-08-07 15:35:50 +02:00
Benjamin Otte 8e537f94ac test: Convert testinput to Cairo
The test is broken though as it draws onto windows outside of expose
events.
And we all know you shouldn't do that.
2010-08-07 15:35:50 +02:00
Benjamin Otte 2b9b125a88 tests: replace gdk_draw_drawable() with Cairo calls in testinput 2010-08-07 15:35:50 +02:00
Benjamin Otte 970ae51e38 demos: Use Cairo instead of gdk_draw_pixbuf() 2010-08-07 15:35:50 +02:00
Benjamin Otte 0ba97c7aae gtk-demo: Blit backing pixmap using Cairo 2010-08-07 15:35:50 +02:00
Benjamin Otte ddb905e99a gtk-demo: Convert drawingarea example to Cairo 2010-08-07 15:35:50 +02:00
Benjamin Otte f69034a079 gtk-demo: Convert color selection example to Cairo 2010-08-07 15:35:50 +02:00
Benjamin Otte 53cf3d2edc cups: Fix cast warnings 2010-08-07 15:35:50 +02:00
Benjamin Otte 88b7857bc8 pixbuf-engine: Draw mask with Cairo
No more gdk_pixbuf_render_threshold_alpha()
2010-08-07 15:35:50 +02:00
Benjamin Otte 9e1ae0e29a pixbuf-engine: replace call to gdk_draw_pixbuf() with Cairo equivalent 2010-08-07 15:35:50 +02:00
Benjamin Otte 769c63c7ef pixbuf-engine: Replace gdk_draw_pixbuf() with Cairo equivalent
This replaces the tiled fill call only.
2010-08-07 15:35:50 +02:00
Benjamin Otte 3cbdc7ac89 imcontextxim: Draw with Cairo 2010-08-07 15:35:49 +02:00
Benjamin Otte e95f6da116 testing: Use Cairo calls instead of gdk_draw_line() to test server sync 2010-08-07 15:35:49 +02:00
Benjamin Otte d5ff6b6c66 treeview: Draw the dnd pixmaps with Cairo 2010-08-07 15:35:49 +02:00
Benjamin Otte 2e1f12642b treeview: Draw lines with Cairo 2010-08-07 15:35:49 +02:00
Benjamin Otte c1292fe01d treeview: Unify all line drawing into the same function
This is useful because the dashing stuff needs to be done and it seems
like a good idea to unify it.
2010-08-07 15:35:49 +02:00
Benjamin Otte 7ee63c07ee treeview: Draw column reordering arrows with Cairo 2010-08-07 15:35:49 +02:00
Benjamin Otte 09080e3c76 textview: draw dnd icon with Pango 2010-08-07 15:35:49 +02:00
Benjamin Otte bb3c91bfda textview: Draw drag icons using Cairo 2010-08-07 15:35:49 +02:00
Benjamin Otte fe401cdbb4 ruler: Replace gdk_draw_drawable calls with Cairo
and get rid of the custom GC
2010-08-07 15:35:49 +02:00
Benjamin Otte 6740d24bb8 menu: replace gdk_draw_drawable() call with Cairo equivalent 2010-08-07 15:35:49 +02:00
Benjamin Otte e570fe6730 label: Draw all text using PangoCairo
This includes the addition of a "small" helper function,
_gtk_pango_fill_layout() that ignores color information. This
functionality is not available inside Pango and until that happens, we
need this fix. The bug is filed at:

https://bugzilla.gnome.org/show_bug.cgi?id=624917
2010-08-07 15:35:49 +02:00
Benjamin Otte f36bb4d91d gdk: Simplify deprecation guards in gdkdrawable.h 2010-08-07 15:35:49 +02:00
John Stowers 32c4f471d5 Add gdk_display_is_closed
https://bugzilla.gnome.org/show_bug.cgi?id=624224
2010-08-07 23:11:42 +12:00
Benjamin Otte 28f51514f9 colorbutton: Render with Cairo
In particular, this gets rid of gdk_draw_pixbuf() and GdkGC usage.
2010-08-07 02:39:21 +02:00
Benjamin Otte 92055d8d32 entry: replace gdk_draw_pixbuf() call with Cairo version 2010-08-07 02:39:21 +02:00
Tomeu Vizoso 568865ab1b Stop assuming that priv->label_widget will be a GtkLabel.
https://bugzilla.gnome.org/show_bug.cgi?id=623603
2010-08-05 10:35:45 +02:00
Philip Withnall 0a61e919e2 Add (transfer none) annotation to gtk_tree_selection_get_selected_rows()
Closes: bgo#625650
2010-08-05 00:55:56 +01:00
Philip Withnall fa509fcc78 Add (inout) annotation to gtk_tree_model_iter_next()
Closes: bgo#625650
2010-08-05 00:54:44 +01:00
Paolo Borelli 996fd9dc5e Annotate GtkTextBuffer insert methods 2010-08-04 21:07:31 +02:00
Cody Russell b41972bd96 Change GtkCalendar's inner border and separator values from hard-coded
ones to using style properties.

https://bugzilla.gnome.org/show_bug.cgi?id=624779
2010-08-03 10:53:05 -05:00
Fridrich Štrba 3c7bb5b746 Fix 32-bit Windows build using mingw-w64 toolchain 2010-08-03 03:04:39 +02:00
Tomeu Vizoso 23f7d3a0ea Annotate gdk_rectangle_intersect 2010-07-28 16:53:14 +02:00
Tomeu Vizoso fd75ced492 Generate GdkX11-2.0.typelib (backported from HEAD)
https://bugzilla.gnome.org/show_bug.cgi?id=625491
2010-07-28 15:03:28 +02:00
Benjamin Otte 01fea4032f gdk: Revert making get_size optional
49a0ec6e95 added this hunk without
explanations and it's obviously wrong because failing to have a get_size
vfunc will now not set width and height and they'll end up with invalid
values.

In fact, the GdkDrawableImpl{X11,Win32,Quartz} functions do not have
get_size implemented, so the patch was most likely an attempt to work
around calling this function erroneously on the impl objects.

The correct fix is to call impl->wrapper instead.
2010-07-26 11:58:23 +02:00
Benjamin Otte e1c7ff8ee0 x11: Query size on real drawable
The X11 drawable does not have a clue about the real size of the
surface.

This might also be the cause for:
https://bugzilla.gnome.org/show_bug.cgi?id=599574
2010-07-26 11:58:23 +02:00
Benjamin Otte fafc457a01 cups: Fix cast warnings 2010-07-26 11:58:23 +02:00
Emmanuele Bassi 7a68f42d2e Do not return values from a function returning void 2010-07-26 11:58:23 +02:00
Szilárd Pfeiffer ec332bbd42 Moved the drawing of horizontal grid lines after cell drawing.
Without the change if the cell background is set the horizontal
grid line cannot be seen.
2010-07-25 14:54:18 +02:00
John Stowers dc2fea413b Add gdk_device_get_n_axes
https://bugzilla.gnome.org/show_bug.cgi?id=624221
2010-07-25 12:32:43 +12:00
John Stowers 6c25cf872f Add gdk_cursor_get_cursor_type
https://bugzilla.gnome.org/show_bug.cgi?id=624087
2010-07-25 12:32:38 +12:00
Federico Mena Quintero 05e2004eb6 Clarify what the @event is used for when calling gtk_drag_begin()
Signed-off-by: Federico Mena Quintero <federico@novell.com>
2010-07-23 11:51:23 -05:00
Christian Dywan 186f858d86 Correct emission of switch-page from the menu
Fixes: https://bugzilla.gnome.org/show_bug.cgi?id=624687
2010-07-23 13:52:23 +02:00
Stanislav Brabec 13dba0a461 Fix stuck pointer grab due to passing GDK_CURRENT_TIME to gtk_drag_begin()
If gtk_drag_begin() gets passed GDK_CURRENT_TIME, try to use
gtk_get_current_event_time().  If it fails, use GDK_CURRENT_TIME when
ungrabbing in gtk_drag_end().

For more see https://bugzilla.gnome.org/show_bug.cgi?id=623865
2010-07-22 16:22:26 -05:00
Kjartan Maraas f1627fc8f5 Updated Norwegian bokmål translation 2010-07-19 21:35:48 +02:00
Christian Persch 8f42a13ce7 gtknotebook: Fix critical warnings on scroll events
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=604391
2010-07-19 15:30:23 +02:00
Emmanuele Bassi 81321b7d55 docs: Fix GtkRecentManager:limit annotation
Fix a typo in the name that prevented cross-linking, and remove the
redundant deprecation text (which is added by gtk-doc by default).
2010-07-15 09:55:49 +01:00
Javier Jardón 838dfd50ac Deprecate GtkRecenManager::limit property
The :limit property of GtkRecentManager does not serve any useful
purpose: the length of the list should be managed by the view
(implementing GtkRecentChooser), and not by the model (the recent
manager).

https://bugzilla.gnome.org/show_bug.cgi?id=624333
2010-07-15 02:50:49 +02:00
Christian Dywan aa017fae64 Deprecate GtkNotebookPage as used in switch-page
Fixes: 618327
2010-07-13 16:55:04 +02:00
Matthias Clasen c492c798fc Bump version 2010-07-12 13:44:36 -04:00
Matthias Clasen 0e99667286 Fix the build 2010-07-12 13:09:44 -04:00
Matthias Clasen 5af7597e2e Updates 2010-07-12 12:54:50 -04:00
Matthias Clasen 266fbce3a3 Small GtkTable doc improvement
(cherry picked from commit ab6927e4fa)
2010-07-12 12:35:29 -04:00
Matthias Clasen 47836a3af1 Respect GtkEntry::state-hint when drawing spinbutton features
As proposed in bug 589904 by Thomas Wood.
(cherry picked from commit bcbb976d91)
2010-07-12 12:35:15 -04:00
John (J5) Palmieri 1a30c3f272 annotation (transfer-none) fix that somehow got dropped from last patch
* gtk_tree_path_get_indices_with_depth - annotate the return as 'transfer none'
  to avoid double frees
2010-07-12 12:34:38 -04:00
John (J5) Palmieri 72cd4207b7 fix some tree model annotations
* gtk_tree_model_iter_next - 'inout' is poorly defined and causes bugs so
  revert back to the default 'in' annotation
* gtk_tree_path_get_indices_with_depth - annotate the return as 'transfer none'
  to avoid double frees
(cherry picked from commit b5f878dec8)
2010-07-12 12:33:05 -04:00
Philip Withnall 9a71ad7ca9 Add (out) annotations to GtkTreeIter parameters
(cherry picked from commit 0b51abbfdf)
2010-07-12 12:32:54 -04:00
Colin Walters 1af84d33f7 Fix annotation syntax for gtk_widget_class_path
(cherry picked from commit c609c4e807)
2010-07-12 12:31:23 -04:00
John (J5) Palmieri 3511fe4355 fix annotation for gtk_window_set_default_icon_list 2010-07-12 12:31:03 -04:00
Colin Walters b27d39ee23 Fix annotation on gtk_tree_model_get_value
(cherry picked from commit aff8fb2ea2)
2010-07-12 12:30:10 -04:00
Ignacio Casal Quinteiro ef3ec85bac Bind get_bounds and use out instead of out caller-allocates.
There is no need to use caller-allocates if the scanner already detects it.
(cherry picked from commit f50d06baea)
2010-07-12 12:29:49 -04:00
Xan Lopez 3b62411040 Remove leftover uses/references of GtkNotebook::group-id
(cherry picked from commit 533ea97c67)
2010-07-12 12:29:24 -04:00
Tomeu Vizoso 10ebcedf56 Annotate gdk_display_manager_list_displays return value
https://bugzilla.gnome.org/show_bug.cgi?id=623307
(cherry picked from commit eae60c34d2)
2010-07-12 12:28:48 -04:00
John (J5) Palmieri 89743a6370 revert inout annotation for gtk_tree_model_iter_next parameter
* 'inout' is poorly defined and causes bugs so revert back to the default
  'in' annotation
2010-07-08 15:11:27 -04:00
Philip Withnall f1e0b23697 Add (out) annotations to GtkTreeIter parameters 2010-07-07 18:28:41 +02:00
Tor Lillqvist f2d6ab4062 Drop leftover reference to local gdk-pixbuf library 2010-07-05 15:11:25 +03:00
Tor Lillqvist 91728b0890 Drop gdk-pixbuf stuff 2010-07-05 14:57:04 +03:00
Tor Lillqvist 130c42c4c9 We need to link gdk with the gio library for non-X11 backends
(For X11, we link with gio-unix which takes care of it.)
2010-07-05 14:45:35 +03:00
Javier Jardón 3805dc3605 Deprecate GtkWindow:allow-grow and GtkWindow::allow_shrink properties
Bump required Glib version to 2.15.10 as we are using the
new G_PARAM_DEPRECATED
2010-07-02 21:55:14 +02:00
Colin Walters e339a9b0da Actually build faq if enabled
Previously we required an explicit "make html" in this subdirectory
for no reason.  Just build it if make is invoked at the toplevel
and we have docbook.
2010-07-01 15:16:25 -04:00
Javier Jardón 6de36e580b [gdk] Add gdk_window_has_native() function
https://bugzilla.gnome.org/show_bug.cgi?id=622677
2010-07-01 02:39:39 +02:00
Benjamin Otte b1cc8b9cd8 Make toolbutton not call functions on non-GtkMisc 2010-06-30 18:43:26 +02:00
Benjamin Otte 807c14741f Deprecate GdkRegion symbols that have no Cairo equivalent
https://bugzilla.gnome.org/show_bug.cgi?id=613284
2010-06-30 16:25:03 +02:00
Matthias Clasen b404a437c7 Bump version 2010-06-29 22:36:15 -04:00
Matthias Clasen ce8a190b25 Update NEWS for GTK+ 2.21.4 2010-06-29 21:11:34 -04:00
Matthias Clasen f23c956473 Revert commit a9b778931c
The change turned out to break the pygtk build. So add the
pointless return values back, and document them as going
away in the future.
2010-06-29 21:07:54 -04:00
Matthias Clasen c47c91cd3a Make sure we always include gdk-pixbuf in the gdk requires
This is needed since we include gdk-pixbuf.h in public gdk headers
(cherry picked from commit b6cc7dbd21)
2010-06-29 07:58:33 -04:00
Colin Walters d89ac0ba69 Support NOCONFIGURE (from gnome-common)
gnome-common's autogen.sh uses NOCONFIGURE to skip running configure.
Support that in addition to the current AUTOGEN_SUBDIR_MODE.
2010-06-28 17:45:41 -04:00
Matthias Clasen bdbe090dc0 Silence the build 2010-06-28 13:31:57 -04:00
Matthias Clasen 6af9817392 Fix dynamic module check
Also, prevent a stray 'yes' in configure output by putting the
corresponding AC_MSG_CHECKING call back

Bug 623016
2010-06-28 12:38:38 -04:00
Philip Withnall b89dcab5a5 Add allow-none to gdk_window_set_cursor() 2010-06-27 19:20:54 +01:00
Kristian Rietveld e634f3fbe0 Move Leopard-specific type definitions to gdkquartz.h
Update includes subsequently where it matters.  Fixes build on Mac OS
X 10.4.
2010-06-27 10:41:15 +02:00
Kristian Rietveld 3770d914ec Refactor to use API that's available in OS X 10.4 as well 2010-06-27 10:41:15 +02:00
John Ralls 093a867e51 Bug 622333 - Crash in gdk_window_impl_quartz_begin_paint_region 2010-06-27 10:41:15 +02:00
Kristian Rietveld 9f5f47f8be Flip clip mask image when setting clip mask on GC 2010-06-27 10:41:15 +02:00
Kristian Rietveld 49f72c1fb4 Rework color translation to support gray scale and bitmaps 2010-06-27 10:41:15 +02:00
Kristian Rietveld 42d07ad6ce Add gray visual, implement "get_best" functions 2010-06-27 10:41:15 +02:00
Matthias Clasen 75585d16de Bump version 2010-06-27 01:52:12 -04:00
Matthias Clasen f1b158bacd Updates 2010-06-27 00:54:16 -04:00
Matthias Clasen 674b196577 Adapt to the new, external gdk-pixbuf 2010-06-26 21:57:04 -04:00
Matthias Clasen 2417a819ef Remove gdk-pixbuf pc files.
Noticed in bug 622847
2010-06-26 21:30:21 -04:00
Mirsal Ennaime 1607efc0b5 Add an accessor for the GSEALed Gtkbutton's event_window attribute
* Add the gtk_button_get_event_window() function

Closes: bgo#622581
(cherry picked from commit 23a61525f6)
2010-06-26 21:22:48 -04:00
Matthias Clasen 47f0af6092 Add context to detail strings when drawing steppers
As usual, this is protected by a style property:
GtkRange::stepper-position-details
The detail strings are
<detail>_start, <detail>_end and <detail>_middle.

See bug 621250
(cherry picked from commit e73a2e5654)
2010-06-26 21:10:41 -04:00
Matthias Clasen cbf303d8c6 Add an accessor for GdkImage->mem
See bug # 522756
(cherry picked from commit 53796b7f1f)
2010-06-26 17:00:39 -04:00
Tristan Van Berkom 1adba9e908 Exposed GtkTreeView's internal GtkTreeSelection for builder files
(cherry picked from commit 17516dc83c)
2010-06-26 14:27:15 -04:00
Matthias Clasen 63a276654d Make the message area available in gtkbuilder as well
See bug 32069.
2010-06-26 14:24:59 -04:00
Ignacio Casal Quinteiro eb1ec05da3 Fix annotation of gtk_text_iter_(forward/backward)_search.
(cherry picked from commit 7e3e2bf29a)
2010-06-26 14:24:49 -04:00
Marek Kasik c1c3670711 Don't handle CUPS' "connecting-to-device" state reason
CUPS backend shouldn't handle "connecting-to-device" state reason.
It shows "Printer '%s' may not be connected" for this state,
which is not true in almost all cases. Better is to use
"printer-state-message" which contains correct message (#622011).
(cherry picked from commit 998459afb7)
2010-06-26 14:24:34 -04:00
Javier Jardón 081eaf4484 Remove unnused variable
(cherry picked from commit 7ea1556cd0)
2010-06-26 14:17:30 -04:00
Chris Kühl 85ed525682 [docs] Fixes issue with GtkEntryBuffer signal documentation
(cherry picked from commit 078da34a26)
2010-06-26 14:11:00 -04:00
Stanislas Marquis 82c89e9456 [docs] Fix gtk_tree_sortable_set_sort_column_id()
@sortable => @sort_column_id

Signed-off-by: Javier Jardón <jjardon@gnome.org>
(cherry picked from commit a14c820aa9)
2010-06-26 14:09:53 -04:00
Javier Jardón 70094721aa [docs/gtk-faq] Close <para> tag
(cherry picked from commit d581c619db)
2010-06-26 14:08:31 -04:00
Javier Jardón 6eebe91b7a [gtk/gtkmenu] Emit an "attach-widget" event in gtk_menu_attach_to_widget()
Reported by ageorge@datasys.net in bug
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=621683
(cherry picked from commit 318fa1e179)
2010-06-26 14:06:48 -04:00
Javier Jardón 90dd7e2990 [docs] Fix missing comma in gtkrc docs
Reported by Alexander Saprykin in bug
https://bugzilla.gnome.org/show_bug.cgi?id=621775
2010-06-26 14:06:10 -04:00
Stanislas Marquis f0fa511457 [docs] Add 'Since: 2.16' tag to GtkEntryIconPosition
Signed-off-by: Javier Jardón <jjardon@gnome.org>
(cherry picked from commit 972e75e8b0)
2010-06-26 14:05:20 -04:00
Thomas Wood a9b778931c GtkCalendar: some functions always return TRUE, so change them to void
Certain functions for GtkCalendar always return the same value. Therefore
they do not actually need to return a value at all.
Bug #621136.
(cherry picked from commit e19c50b538)
2010-06-26 14:03:32 -04:00
Paolo Borelli ace3ea4a89 Annotate the methods to get TextBuffer iters
(cherry picked from commit cf14d4f368)
2010-06-26 14:03:00 -04:00
John (J5) Palmieri 95b7dca983 annotate gtk_color_selection_get_current_color color param as out
(cherry picked from commit 76db7d69f1)
2010-06-26 13:53:15 -04:00
Matthias Clasen cb29d27707 Make GTK+ build against an external gdk-pixbuf 2010-06-26 02:29:29 -04:00
Colin Walters 946c1ca136 Actually build the tutorial if enabled
Previously we required an explicit "make html" in this subdirectory
for no reason.  Just build it if make is invoked at the toplevel
and we have docbook.
2010-06-25 21:03:34 -04:00
Matthias Clasen fa7ace866c Fix the build
Forgot to update callers of _gtk_window_group_get_current_grab.
2010-06-24 13:06:29 -04:00
Javier Jardón 7d6d1af7a1 [docs] Fix annotations: "(allow-none): (out)" -> "(out) (allow-none)" 2010-06-24 18:13:17 +02:00
Javier Jardón 022f88a6ac [GtkTable] Add gtk_table_get_size()
Add accessor function to retrieve the number of rows and columns
in the table.
2010-06-24 17:49:30 +02:00
Matthias Clasen 5c93288199 Make gtk_window_group_get_current_grab public
See bug #620832.
2010-06-24 11:21:29 -04:00
Javier Jardón c0c4ab0946 [gtk] Add gtk_font_selection_dialog_get_font_selection()
This is needed to access the fontsel sealed member.
2010-06-23 01:38:36 +02:00
Javier Jardón a39c3b43b2 [test] Exclude message-area as it's a object property 2010-06-22 22:46:29 +02:00
Javier Jardón 8ceef86cf8 Add new api to gtk.symbols
Add newly added api gtk_accessible_set_widget() and
gtk_message_dialog_get_message_area()
2010-06-22 21:52:48 +02:00
Javier Jardón 200896e9b9 Use the correct guards in gtk_accessible_set_widget()
Also, allow the widget variable to be NULL
2010-06-22 21:13:41 +02:00
Tor Lillqvist bba451147b Generate correct grab broken event for WM_KILLFOCUS
WM_KILLFOCUS means that a keyboard grab (not a pointer grab), if any,
has been broken. I don't think this bug has matterd much as gtk
generates a grab-broken-event signal for both keybord and pointer
grabs being broken anyway.
2010-06-22 21:32:05 +03:00
Federico Mena Quintero ce504e2217 bgo#328069 - Add gtk_message_dialog_get_message_area()
Signed-off-by: Federico Mena Quintero <federico@novell.com>
2010-06-22 13:10:52 -05:00
Vincent Untz 49943be22b bgo#622371 - Add gtk_accessible_set_widget() - the widget field was GSEAL()ed.
https://bugzilla.gnome.org/show_bug.cgi?id=622371
2010-06-22 12:22:38 -05:00
Yaakov Selkowitz 6922490fa5 Do not dist gir_DATA
GIR files contain a shared-library attribute which varies per platform,
and therefore must not be disted; see bug 621611 for rationale.

https://bugzilla.gnome.org/show_bug.cgi?id=621719
2010-06-20 08:26:26 +02:00
Matthias Clasen cbb01e6063 Prevent concurrent use of GTK+ 2 and 3
If we detect a gtk3-only symbol, error out early.
2010-06-18 22:40:50 -04:00
Javier Jardón 606180b746 Deprecate GTK_OBJECT_FLAGS() and GtkObjectFlags enum
This macro will be moved to a private header in GTK+3.

https://bugzilla.gnome.org/show_bug.cgi?id=615666
2010-06-16 20:50:29 +02:00
Javier Jardón 8fc7a58504 gail: do not use removed GTK_WIDGET_*SET macros
In the absence of new API to port to, left the code commented
with a /* FIXME */ state, for somebody with better gail knowledge
to fix.
2010-06-16 20:44:00 +02:00
Benjamin Otte a8e3ce6bb4 Can't select file on file browser after changing sort order
The row values are 1-indexed not 0-indexed, this has to be taken into
account when producing the new_order array.

https://bugzilla.gnome.org/show_bug.cgi?id=621414
2010-06-16 12:41:40 +02:00
Benjamin Otte 6138f23f5b Make declaration return a boolean when the function does that 2010-06-16 11:54:41 +02:00
Matthias Clasen d9250dfa1f Bump version 2010-06-10 14:13:37 -04:00
Matthias Clasen a36bfa1424 2.21.2 2010-06-10 14:11:20 -04:00
Matthias Clasen 75afa7d8d3 Don't call update-po at dist time
Since we want to not commit changes after distcheck
2010-06-10 12:42:20 -04:00
Matthias Clasen 68f31098ad Updates 2010-06-10 10:16:41 -04:00
Cosimo Cecchi 5b41e388c9 Add missing methods to the GdkDragContext docs. 2010-06-10 16:12:34 +02:00
Cosimo Cecchi b5fdb45259 Add a missing accessor for GdkDragContext->source_window. 2010-06-10 16:12:34 +02:00
Marek Kasik 52c7ad6de3 Test connection to all given addresses when printing
Go to the next address given by CUPS if we fail to connect to
previous address (#603637).
(cherry picked from commit f8ac123192)
2010-06-10 09:50:59 -04:00
Johan Dahlin 05dad359e7 [gtktreeview] Add a couple of annotations
(cherry picked from commit 5c283cacbe)
2010-06-10 09:11:40 -04:00
Matthias Clasen eade6b23be Updates 2010-06-10 09:06:02 -04:00
Michael Natterer e494ec1d61 gdk: fix typo in the docs for gdk_drag_context_get_selected_action() 2010-06-10 13:15:12 +02:00
Cosimo Cecchi 54e959ef96 Add an accessor for GtkViewport->view_window (#621081). 2010-06-09 18:23:20 +02:00
Steve Frécinaux 1a00cb9df5 [gtkwidget] Add type annotations for the event signals. 2010-06-08 22:38:40 +02:00
Benjamin Otte af7f95207e menu: Fix wrong comparison causing navigation region to not get removed
The navigation region that got created for right-facing submenus when
moving the cursor up would have two negative values which caused the
check to go wrong.

I refactored the code to make that check into a separate function as it
makes the check not only harder to get wrong, but also the code easier
to read.

http://bugzilla.gnome.org/show_bug.cgi?id=620863
2010-06-08 21:56:28 +02:00
Federico Mena Quintero 4acbc2fdb0 bgo#608537 - Make the file chooser's sort arrows consistent with the HIG
... Although I think the HIG gets things backwards anyway.

Signed-off-by: Federico Mena Quintero <federico@novell.com>
2010-06-08 12:11:00 -05:00
Hib Eris 070afc587c [gdk/win32] Fix typo 2010-06-08 15:46:05 +02:00
John (J5) Palmieri 3b50f22873 add transfer-none to return value of gtk_widget_get_window 2010-06-07 18:38:21 -04:00
Steve Frécinaux d3adde0116 [gdkevents] Add annotations for GdkEvent getters. 2010-06-08 00:05:58 +02:00
Steve Frécinaux 88dbf5cabf [gtktextbuffer] Annotate gtk_text_buffer_create_mark()
Add (transfer none) to the return value of gtk_text_buffer_create_mark(),
as the documentation clearly states the caller doesn't have ownership of
the returned value.
2010-06-08 00:04:26 +02:00
John (J5) Palmieri 1bd94d731b annotate allow-none for gtk_image_menu_item_new_from_stock accel_group param 2010-06-07 16:17:31 -04:00
John (J5) Palmieri 5ac10f45f1 add allow-none annotation to gtk_clipboard_set_can_store's targets parameter 2010-06-07 13:20:01 -04:00
Stanislas Marquis f14fc8bc37 [docs] Fix GtkWindow: activate-default => activate-focus.
Signed-off-by: Javier Jardón <jjardon@gnome.org>
2010-06-05 00:47:16 +02:00
Matthias Clasen d780a23746 Silence a few warnings in !HAVE_RANDR builds
(cherry picked from commit b96a05b81f)
2010-06-04 15:47:42 -04:00
Matthias Clasen e6b02c883f Silence a few configure warnings about datarootdir
(cherry picked from commit 112d97d498)
2010-06-04 15:47:28 -04:00
Matthias Clasen 429b728fe1 Fix a typo
(cherry picked from commit 354086bafc)
2010-06-04 15:47:16 -04:00
Matthias Clasen c3a9713775 Avoid a 'EXTRA_DIST multiply defined' warning
(cherry picked from commit 974d7137a0)
2010-06-04 15:47:02 -04:00
Javier Jardón e4ece66c9c gtktoolshell: Fix some "Since" tags
get_ellipsize_mode(), get_text_alignment(), get_text_orientation()
and get_text_size_group() were added in GTK+ 2.20,  not 2.14.

Reported by Stanislas Marquis on IRC.
2010-06-04 17:55:38 +02:00
Colin Walters c8262d39fa Use g_source_set_name for all custom GSources in GTK+
Naming the sources allows easier debugging with e.g. SystemTap
probes.

https://bugzilla.gnome.org/show_bug.cgi?id=620511
2010-06-03 21:32:06 -04:00
Colin Walters e16a965ef6 Require glib git (for upcoming g_source_set_name patch) 2010-06-03 21:31:25 -04:00
Matthew Barnes 01e2fc5b5a Bug 596428 - GtkAssistant: Support ending with a progress page
- Add gtk_assistant_commit()

  This function discards the visited pages list so the back button is not
  shown on the current page, and removes the cancel button from subsequent
  pages.  Use this when information provided thus far cannot be revisited.

- Don't show the Forward button on a GTK_ASSISTANT_PAGE_PROGRESS if it's
  the last page (according to the forward page function).

- Append a progress page to the GtkAssistant demo.
2010-06-03 17:27:34 -04:00
Michael Natterer 22c61e0c8f app: forgot to update API docs in the last commit 2010-06-02 21:11:45 +02:00
Michael Natterer d393cb377c gdk: rename gdk_drag_context_get_action() to gdk_drag_context_get_selected_action()
so its purpose is clear.
2010-06-02 20:42:11 +02:00
Didier Roche 8a6f6b5421 Fix fail to build when building with introspection
In debian/ubuntu, builddir != srcdir. This trigger an error on
introspection_files where srcdir is added to x11/*.c. Indeed,
srcdir is added again later: $(addprefix $(srcdir)/,$(introspection_files))
making $(srcdir)/$(srcdir)/x11/*.c (not an issue on jhbuild as srcdir = .)
2010-06-02 18:25:12 +02:00
Garrett Regier 75e48d68bc Bug 611709 - Add gtk_statusbar_remove_all 2010-06-02 17:57:25 +02:00
Cody Russell 6c0ff288b0 Bug 608218 - GtkOffscreenWindow causes bad window with GtkEntry
We now exit early from gdk_window_register_dnd() to avoid crashing if the
window type is GDK_WINDOW_OFFSCREEN and does not support dnd operations.
This makes it possible to use any dnd-enabled widgets, such as GtkEntry,
within a GtkOffscreenWindow.
2010-06-01 18:46:38 -05:00
Matthias Clasen ae7cfc70c7 Bump version 2010-05-30 18:33:09 -04:00
Matthias Clasen 2788322135 2.21.1 2010-05-30 18:30:16 -04:00
Michael Natterer 7cfdf8fa32 tests: gtk_box_new() is 3.0 API, use gtk_vbox_new() instead 2010-05-30 15:34:27 +02:00
Matthias Clasen 4451536712 Fix the build
One hunk got lost when cherry-picking the icon view keynav changes.
2010-05-30 02:56:16 -04:00
Matthias Clasen fcf0edb6c1 Updates 2010-05-30 02:39:33 -04:00
Sebastian Dröge 39f3d5e182 Don't include __bss_start, _edata and _end symbols in the abichecks
They are added by the binutils gold linker.
2010-05-30 02:26:32 -04:00
Tor Lillqvist 97015c226f Don't use g_drag_context_ref
(cherry picked from commit a709056140)
2010-05-30 02:23:03 -04:00
Javier Jardón fe22d4a402 [docs] Fix GdkColor description: blue and green colors are changed
Reported by César Themudo here:
https://bugzilla.gnome.org/show_bug.cgi?id=618162
(cherry picked from commit b76557e944)
2010-05-30 02:22:26 -04:00
Javier Jardón 6abc512298 Fix typo in gtkprintoperation
Reported by Andika Triwidada in
https://bugzilla.gnome.org/show_bug.cgi?id=618093
(cherry picked from commit 7b2024c1bd)
2010-05-30 02:22:09 -04:00
Matthias Clasen 5cededa0aa Improved icon view keynav
Use ::keynav-failed for arrow navigation in icon views, so that
it is possible to override error handling. Also add API to get the
row/col of an item. With this, it is possible to make arrow keynav
span adjacent icon views, which is desired in the new control-center
shell. testiconview-keynav demonstrates this.
2010-05-30 02:19:50 -04:00
Michael Natterer cb8c076321 Bug 607628 - DnD operation doesn't work when using offscreen
Changed the way to find the drop widget from a top->bottom recursion
using GdkWindow positions to a liner bottom->top walk up the widget
hierarchy using _gtk_widget_find_at_coords() and
gtk_widget_translate_coordinates(), which both do the right things for
offscreen widgets.
2010-05-29 05:04:54 +02:00
John (J5) Palmieri 3e16fd9967 gtk_tree_selection_get_selected: added transfer none annotation to model out arg 2010-05-27 18:38:18 -04:00
John (J5) Palmieri 84e9c08a40 gtk_tree_view_get_model: return value annotated transfer none 2010-05-27 17:00:51 -04:00
John (J5) Palmieri e89187fc87 annotation fixes
* gtk_tree_model_get_column_type: transfer none added to the return value
* gtk_tree_model_get_path: value parameter switched from inout to out
  so that it is annotated with caller-allocates
2010-05-27 17:00:31 -04:00
Javier Jardón b0359fb944 Deprecate GTK_NO_REPARENT 2010-05-27 19:19:07 +02:00
Javier Jardón cfb988ab38 Seal gdk
Add G_SEAL annotation for struct members, and add accessors for
the (useful) fields. Patch based on work by Garrett Regier,
see bug #592580.
2010-05-27 16:25:54 +02:00
Michael Natterer c4b1bbf3e2 Bug 607628 - DnD operation doesn't work when using offscreen
Turn find_widget_under_pointer() into internal API
_gtk_widget_find_at_coords() which is needed for fixing above
bug. This should actually be a public utility function, and will be
moved to another file when its final API has been decided.
2010-05-26 17:15:39 +02:00
Carlos Garcia Campos 4acc2716cb GtkWindow: Add gtk_window_has_group()
To check whether the window has an explicit group

Fixes https://bugzilla.gnome.org/show_bug.cgi?id=618271
2010-05-26 17:01:01 +02:00
Benjamin Otte 6c7dc26935 Revert "Implement GdkRegion in terms of cairo_region_t"
This reverts commit 5616bdc3dc.

I always thought cairo_region_t was a Cairo 1.8 feature. Apparently it
isn't, so the 3 patches I just reverted made Gtk depend on an unreleased
Cairo version. This is obviously not a good thing.

Expect those patches to reland once there's a Cairo 1.10 out (probably
around Gtk 4...)
2010-05-26 09:25:55 +02:00
Benjamin Otte 863853ec5f Revert "Remove _gdk_region_new_from_yxbanded_rects()"
This reverts commit dde9cf2882.
2010-05-26 09:25:44 +02:00
Benjamin Otte fd20ac0751 Revert "Deprecate the GdkRegion API"
This reverts commit 821dd33918.
2010-05-26 09:25:35 +02:00
John (J5) Palmieri 15037df282 add a transfer none annotation to gtk_tree_view_get_selection
* it returns the selection from its priv structure without reffing
2010-05-25 11:51:27 -04:00
Matthias Clasen 2aa560865e Fix libjasper test
This was reported in bug 551322.
(cherry picked from commit 8e315466b9)
2010-05-24 13:31:42 -04:00
Marek Kasik 45a83fdbeb Honor PPD reading over listing of printers
Reading of PPD files collides with getting list of printers.
It helps to give higher priority to getting of PPDs than to
getting list of printers (#614581).
2010-05-24 16:54:34 +02:00
Benjamin Otte 821dd33918 Deprecate the GdkRegion API
Includes fixing all callers to use the cairo region API instead. This is
usually just replacing the function names, the only difference is
gdk_region_get_rectangles() being replaced by
cairo_region_num_rectangles() and cairo_region_get_rectangle() which
required a bit more work.

https://bugzilla.gnome.org/show_bug.cgi?id=613284
2010-05-23 23:27:15 +02:00
Benjamin Otte dde9cf2882 Remove _gdk_region_new_from_yxbanded_rects()
It was an internal function and we can use
cairo_region_create_rectangles() instead.

https://bugzilla.gnome.org/show_bug.cgi?id=613284
2010-05-23 23:20:30 +02:00
Benjamin Otte 5616bdc3dc Implement GdkRegion in terms of cairo_region_t
Only changes in headers: GdkRegion is typedeffed to cairo_region_t. The
type was opaque so it doesn't matter.

https://bugzilla.gnome.org/show_bug.cgi?id=613284
2010-05-23 23:16:06 +02:00
Benjamin Otte 43091232a2 Get rid of navigation region in GtkMenu
This completes the move to get rid of using a GdkRegion for the
navigation region and the only user of gdk_region_polygon(). We keep
track of the triangle and compute in/out points ourselves now.

Unfortunately the DRAW_STAYUP_TRIANGLES debugging code doesn't work
using cairo, so I removed it completely.
2010-05-23 22:51:55 +02:00
Benjamin Otte 239cfddc97 Create the navigation region without flipping
Gets rid of some code in preparation to switching to do the computation
completely without GdkRegion.
2010-05-23 21:06:24 +02:00
Matthias Clasen ef2dc17256 Deprecate GtkBoxChild
This was discussed in bug 613132.

Conflicts:

	gtk/gtkbox.h
2010-05-22 00:18:16 -04:00
Matthias Clasen 60d1ac5539 Remove long-obsolete docs
There are no traces of GDK_USE_XFT, GXID_HOST or GXID_PORT in the
code anymore.
(cherry picked from commit 7652c2b3e0)
2010-05-21 22:16:38 -04:00
Matthias Clasen c81abfae02 Document GSEAL_ENABLE with other preprocessor symbols.
(cherry picked from commit 747c834f27)
2010-05-21 22:08:58 -04:00
Matthias Clasen a184432baf Make the !xkb build survive a little longer
This fixes bug 619114.
(cherry picked from commit eff1fe2500)
2010-05-21 12:15:52 -04:00
Marek Kasik 8cd4c387f0 Update list of US Letter locales
Sync paper size fallbacks with the latest 1.8.1 CLDR table (#618000).
2010-05-21 12:14:30 +02:00
Jan Arne Petersen 96986af5b4 GtkRange: Redraw if GtkRange is a GtkScale and value is drawn.
* gtk/gtkrange.c: (gtk_range_adjustment_value_change):
Queue the draw also if the range is a scale and the value is drawn,
fixing bug #533946 (Markus Brinkmann), when two HScales use one
adjustment.
2010-05-18 08:54:57 +02:00
Matthias Clasen 02d8976176 Another attempt to handle pngs changing int types
(cherry picked from commit 006d5718fa)
2010-05-17 18:53:49 -04:00
Luca Ferretti c05ec8d783 Updated Italian translation 2010-05-14 12:54:15 +02:00
Kristian Rietveld 42664a22cf Bug 565559 - Incorrect leave-notify signals for treeview
Set enter and leave notify mask on header window.

Extract from a patch by Hans van Hintum.
2010-05-12 12:20:18 +02:00
Paul Davis 7d61c9fff5 Remove arbitrary limit on number of redraw rectangles
The aim of this limit was to not degrade performance too much, however,
it actually did degrade performance to a large extent.
2010-05-12 12:20:16 +02:00
Matthias Clasen 7df52ebdd4 bump version 2010-05-07 17:17:37 -04:00
Matthias Clasen f2f0ae89ae 2.21.0 2010-05-07 17:13:56 -04:00
Matthias Clasen bec4cfc758 Update 2010-05-07 16:08:23 -04:00
Matthias Clasen 1fb1f6a7b1 Correct a Since: tag 2010-05-07 13:34:36 -04:00
Matthias Clasen 0e7f5332d3 Add an index for 2.22 api additions 2010-05-07 09:28:21 -04:00
Javier Jardón 489657f305 Use event instead key in the previous patch 2010-05-05 04:08:23 +02:00
Javier Jardón fc35cd9bfe Added api to reset the im context in GtkTextView and GtkEntry
Also, added api to allow an input method to internally handle
key press and release events in the GtkTextView and GtkEntry
cases.
This is simply a wrapper to the gtk_im_context_filter_keypress()
function, but It's added to not access the ->im_context
directly.
Based on a Christian Dywan patch

Fixes https://bugzilla.gnome.org/show_bug.cgi?id=163251
2010-05-05 03:16:15 +02:00
Javier Jardón 501098e946 Remove the definition of libpixbufloader_gdip_png_la_*
libstatic-pixbufloader-gdip-png.la should not be built or at least not
included in STATIC_GDIPLUS_LIBS as we don't want to use the GDI+-based
loader for PNG, because if we do, we can't get (or was it set?) the
options of a PNG pixbuf that for instance some code in GIMP wants to do.

Fixes https://bugzilla.gnome.org/show_bug.cgi?id=607839
2010-05-04 16:10:56 +02:00
Benjamin Otte bd873014ca filechooser: Fix a crash when removing files
The file removal code was not properly clearing the file=>array index
cache, so later lookups into that cache would return invalid array
indexes.

The easiest way to reproduce it is to create a directory with two files
and deleting both of them.

Reported-by: Javier Jardón <jjardon@gnome.org>
2010-05-02 14:36:53 +02:00
1693 changed files with 222476 additions and 258025 deletions
+25
View File
@@ -0,0 +1,25 @@
image: registry.gitlab.gnome.org/gnome/gtk/gtk-3-24:v2
stages:
- build
cache:
paths:
- _ccache/
fedora-autotools:
stage: build
script:
- bash -x ./.gitlab-ci/test-docker-autotools.sh
msys2-mingw32-autotools:
when: manual
variables:
MSYSTEM: "MINGW32"
CHERE_INVOKING: "yes"
stage: build
tags:
- win32
script:
- C:\msys64\usr\bin\pacman --noconfirm -Syyuu
- C:\msys64\usr\bin\bash -lc "bash -x ./.gitlab-ci/test-msys2-autotools.sh"
+14
View File
@@ -0,0 +1,14 @@
#!/bin/bash
set -e
mkdir -p _ccache
export CCACHE_BASEDIR="$(pwd)"
export CCACHE_DIR="${CCACHE_BASEDIR}/_ccache"
mkdir _build
cd _build
../autogen.sh \
--enable-xinerama \
--enable-gtk-doc
make -j8
+44
View File
@@ -0,0 +1,44 @@
#!/bin/bash
set -e
if [[ "$MSYSTEM" == "MINGW32" ]]; then
export MSYS2_ARCH="i686"
else
export MSYS2_ARCH="x86_64"
fi
# Update everything
pacman --noconfirm -Suy
# Install the required packages
pacman --noconfirm -S --needed \
base-devel \
mingw-w64-$MSYS2_ARCH-toolchain \
mingw-w64-$MSYS2_ARCH-ccache \
mingw-w64-$MSYS2_ARCH-pkg-config \
mingw-w64-$MSYS2_ARCH-gobject-introspection \
mingw-w64-$MSYS2_ARCH-adwaita-icon-theme \
mingw-w64-$MSYS2_ARCH-atk \
mingw-w64-$MSYS2_ARCH-cairo \
mingw-w64-$MSYS2_ARCH-gdk-pixbuf2 \
mingw-w64-$MSYS2_ARCH-glib2 \
mingw-w64-$MSYS2_ARCH-json-glib \
mingw-w64-$MSYS2_ARCH-libepoxy \
mingw-w64-$MSYS2_ARCH-pango \
mingw-w64-$MSYS2_ARCH-shared-mime-info \
mingw-w64-$MSYS2_ARCH-gtk-doc
mkdir -p _ccache
export CCACHE_BASEDIR="$(pwd)"
export CCACHE_DIR="${CCACHE_BASEDIR}/_ccache"
export CC="ccache gcc"
# Build
ccache --zero-stats
ccache --show-stats
./autogen.sh
make -j4
ccache --show-stats
+4 -14
View File
@@ -3,21 +3,11 @@ Prerequisites
GTK+ requires the following packages:
- The GLib, Pango, ATK and cairo libraries, available at the same
location as GTK+. GTK+ @GTK_VERSION@ requires at least GLib 2.23.6,
Pango 1.20, ATK 1.29.2 and cairo 1.6.0.
- The GLib, Pango, GdkPixbuf, ATK and cairo libraries, available at the same
location as GTK+. GTK+ @GTK_VERSION@ requires at least GLib 2.28.0,
Pango 1.20, GdkPixbuf 2.21.0, ATK 1.29.2 and cairo 1.6.0.
- gobject-introspection 0.6.7 or newer.
- The TIFF, PNG, and JPEG image loading libraries. You most
likely have these installed on your system already. If not
these libraries are available from:
http://www.libtiff.org/
http://www.libpng.org/
http://www.ijg.org/
libtiff must be version 3.6.0 or higher.
- gobject-introspection 0.9.3 or newer.
Simple install procedure
========================
+2 -2
View File
@@ -1,7 +1,7 @@
## Makefile.am for GTK+
include $(top_srcdir)/Makefile.decl
SRC_SUBDIRS = gdk-pixbuf gdk gtk modules demos tests perf contrib
SRC_SUBDIRS = gdk gtk modules demos tests perf
SUBDIRS = po po-properties $(SRC_SUBDIRS) docs m4macros build
# require automake 1.4
@@ -160,7 +160,7 @@ gdk-$(GDKTARGET)-2.0-uninstalled.pc: gdk-2.0-uninstalled.pc
cp gdk-2.0-uninstalled.pc gdk-$(GDKTARGET)-2.0-uninstalled.pc
pkgconfigdir = $(libdir)/pkgconfig
pkgconfig_DATA= gdk-pixbuf-2.0.pc gdk-$(GDKTARGET)-2.0.pc gtk+-$(GDKTARGET)-2.0.pc gail.pc
pkgconfig_DATA= gdk-$(GDKTARGET)-2.0.pc gtk+-$(GDKTARGET)-2.0.pc gail.pc
if OS_UNIX
pkgconfig_DATA += gtk+-unix-print-2.0.pc
+10 -6
View File
@@ -30,13 +30,17 @@ XVFB_START = \
# call as: $(XVFB_START) && someprogram
# test: run all tests in cwd and subdirs
test: ${TEST_PROGS}
test: test-cwd test-recurse
# test-cwd: run tests in cwd
test-cwd: ${TEST_PROGS}
@$(SKIP_GDKTARGET) || test -z "${TEST_PROGS}" || { \
$(XVFB_START) && { set -e; ${GTESTER} --verbose ${TEST_PROGS}; }; \
$(XVFB_START) && { set -e; $(TESTS_ENVIRONMENT) ${GTESTER} --verbose ${TEST_PROGS}; }; \
}
# test-recurse: run tests in subdirs
test-recurse:
@ for subdir in $(SUBDIRS) ; do \
test "$$subdir" = "." -o "$$subdir" = "po" -o "$$subdir" = "po-properties" || \
( cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $@ ) || exit $? ; \
( cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) test ) || exit $? ; \
done
# test-report: run tests in subdirs and generate report
# perf-report: run tests in subdirs with -m perf and generate report
@@ -77,6 +81,6 @@ test-report perf-report full-report: ${TEST_PROGS}
rm -rf "$$GTESTER_LOGDIR"/ ; \
${GTESTER_REPORT} --version 2>/dev/null 1>&2 ; test "$$?" != 0 || ${GTESTER_REPORT} $@.xml >$@.html ; \
}
.PHONY: test test-report perf-report full-report
# run make test as part of make check
check-local: test
.PHONY: test test-cwd test-recurse test-report perf-report full-report
# run make test-cwd as part of make check
check-local: test-cwd
+1214
View File
File diff suppressed because it is too large Load Diff
+28 -6
View File
@@ -7,9 +7,18 @@ Building GTK+ on Win32
======================
First you obviously need developer packages for the compile-time
dependencies: Pango, atk, glib, gettext-runtime, libiconv, libpng,
zlib, libtiff at least. See
http://ftp.gnome.org/pub/gnome/binaries/win32/dependencies .
dependencies: GDK-Pixbuf, Pango, atk, glib, gettext-runtime, libiconv
at least. See
http://ftp.gnome.org/pub/gnome/binaries/win32/dependencies.
For people compiling GTK+ on Visual C++ 2005 or later, it is recommended
that you build GDK-Pixbuf, Pango, atk, glib with the same compiler to avoid
crashes and errors caused by the usage of different CRTS. VS 2008
project files and/or VS Makefiles are either already available in these
packages or will be available in the next stable release. Unfortunately
compiling with Microsoft's compilers (version 2003 or earlier) is not
supported as compiling GLib requires features from the newer compilers
and/or the newer Platform SDKs at this time of writing.
After installing the dependencies, there are two ways to build GTK+
for win32.
@@ -103,8 +112,8 @@ PATH="/devel/target/$HEX/bin:$PATH" gdk-pixbuf-query-loaders >/devel/target/$HEX
grep -v -E 'Automatically generated|Created by|LoaderDir =' <$TARGET/etc/gtk-2.0/gdk-pixbuf.loaders >$TARGET/etc/gtk-2.0/gdk-pixbuf.loaders.temp &&
mv $TARGET/etc/gtk-2.0/gdk-pixbuf.loaders.temp $TARGET/etc/gtk-2.0/gdk-pixbuf.loaders &&
grep -v -E 'Automatically generated|Created by|ModulesPath =' <$TARGET/etc/gtk-2.0/gtk.immodules >$TARGET/etc/gtk-2.0/gtk.immodules.temp &&
mv $TARGET/etc/gtk-2.0/gtk.immodules.temp $TARGET/etc/gtk-2.0/gtk.immodules &&
grep -v -E 'Automatically generated|Created by|ModulesPath =' <$TARGET/lib/gtk-2.0/2.10.0/immodules.cache >$TARGET/lib/gtk-2.0/2.10.0/immodules.temp &&
mv $TARGET/lib/gtk-2.0/2.10.0/immodules.temp $TARGET/lib/gtk-2.0/2.10.0/immodules.cache &&
./gtk-zip.sh &&
@@ -147,11 +156,23 @@ Use the Microsoft compiler, cl and Make, nmake. Say nmake -f
makefile.msc in gdk and gtk. Be prepared to manually edit various
makefile.msc files, and the makefile snippets in build/win32.
There are also VS 2008/2010 solution and project files to build GTK+, which
are maintained by Chun-wei Fan. They should build GTK+ out of the box,
provided that the afore-mentioned dependencies are installed. They will
build GDK with the Win32 backend, GTK+ itself and the gtk-demo program.
(The GAIL and GAIL-util sources are not built by this method yet)
Please refer to the following GNOME Live! page for a more detailed ouline
on the process of building the GTK+ stack and its dependencies with Visual
C++:
https://live.gnome.org/GTK%2B/Win32/MSVCCompilationOfGTKStack
Alternative 1 also generates Microsoft import libraries (.lib), if you
have lib.exe available. It might also work for cross-compilation from
Unix.
I use method 1 myself. Hans Breuer has been taking care of the MSVC
I (Tor) use method 1 myself. Hans Breuer has been taking care of the MSVC
makefiles. At times, we disagree a bit about various issues, and for
instance the makefile.msc files might not produce identically named
DLLs and import libraries as the "autoconfiscated" makefiles and
@@ -182,3 +203,4 @@ sources. Unfortunately it seems that only Wacom tablets come with
support for the Wintab API nowadays.
--Tor Lillqvist <tml@iki.fi>, <tml@novell.com>
--Updated by Fan, Chun-wei <fanc999@yahoo.com.tw>
+31 -5
View File
@@ -19,7 +19,7 @@ if libtoolize --version < /dev/null > /dev/null 2>&1 ; then
sed -e 's/^\(.*\)([^)]*)\(.*\)$/\1\2/g' \
-e 's/^[^0-9]*\([0-9.][0-9.]*\).*/\1/'`
case $libtool_version in
1.4*|1.5*|2.2*)
1.4*|1.5*|2.2*|2.4*)
have_libtool=true
;;
esac
@@ -48,7 +48,22 @@ fi
DIE=1
}
if automake-1.11 --version < /dev/null > /dev/null 2>&1 ; then
if automake-1.16 --version < /dev/null > /dev/null 2>&1 ; then
AUTOMAKE=automake-1.16
ACLOCAL=aclocal-1.16
else if automake-1.15 --version < /dev/null > /dev/null 2>&1 ; then
AUTOMAKE=automake-1.15
ACLOCAL=aclocal-1.15
else if automake-1.14 --version < /dev/null > /dev/null 2>&1 ; then
AUTOMAKE=automake-1.14
ACLOCAL=aclocal-1.14
else if automake-1.13 --version < /dev/null > /dev/null 2>&1 ; then
AUTOMAKE=automake-1.13
ACLOCAL=aclocal-1.13
else if automake-1.12 --version < /dev/null > /dev/null 2>&1 ; then
AUTOMAKE=automake-1.12
ACLOCAL=aclocal-1.12
else if automake-1.11 --version < /dev/null > /dev/null 2>&1 ; then
AUTOMAKE=automake-1.11
ACLOCAL=aclocal-1.11
else if automake-1.10 --version < /dev/null > /dev/null 2>&1 ; then
@@ -59,13 +74,19 @@ else if automake-1.7 --version < /dev/null > /dev/null 2>&1 ; then
ACLOCAL=aclocal-1.7
else
echo
echo "You must have automake 1.7.x, 1,10.x or 1.11.x installed to compile $PROJECT."
echo "You must have automake 1.7.x, 1,10.x, 1.11.x, 1.12.x, 1.13.x, 1.14.x,"
echo "1.15.x or 1.16.x installed to compile $PROJECT."
echo "Install the appropriate package for your distribution,"
echo "or get the source tarball at http://ftp.gnu.org/gnu/automake/"
DIE=1
fi
fi
fi
fi
fi
fi
fi
fi
if test "$DIE" -eq 1; then
exit 1
@@ -76,7 +97,12 @@ test $TEST_TYPE $FILE || {
exit 1
}
if test -z "$AUTOGEN_SUBDIR_MODE"; then
# NOCONFIGURE is used by gnome-common; support both
if ! test -z "$AUTOGEN_SUBDIR_MODE"; then
NOCONFIGURE=1
fi
if test -z "$NOCONFIGURE"; then
if test -z "$*"; then
echo "I am going to run ./configure with no arguments - if you wish "
echo "to pass any to it, please specify them on the $0 command line."
@@ -120,7 +146,7 @@ $AUTOMAKE --add-missing || exit $?
autoconf || exit $?
cd $ORIGDIR || exit $?
if test -z "$AUTOGEN_SUBDIR_MODE"; then
if test -z "$NOCONFIGURE"; then
$srcdir/configure --enable-maintainer-mode $AUTOGEN_CONFIGURE_ARGS "$@" || exit $?
echo
+53
View File
@@ -0,0 +1,53 @@
# Centralized autotools file
# Create the Visual Studio 2012/2013/2015 project files
# from the Visual Studio 2010 project files
# This autotools file, from GLib, can be used in other projects
# that have Visual Studio build support, and is copied into
# $(srcroot)/build/.
# Author: Fan, Chun-wei
# November 05, 2012
# MSVC_VER_LONG: Long Version of target Visual Studio (2012, 2013, 14 and so on)
# MSVC_VER: Short Version of target Visual Studio (110 for 2012, 120 for 2013, 140 for 2015, 141 for 2017)
# MSVC_TOOLSET: Use if target MSVC toolsett is not in the form v $(MSVC_VER)0, meaning v$(MSVC_TOOLSET)
if MSVC_BASE_NO_TOOLSET_SET
MSVC_BASE_TOOLSET = $(MSVC_BASE_VER)0
endif
if MSVC_NO_TOOLSET_SET
MSVC_TOOLSET = $(MSVC_VER)0
endif
%.sln:
sed 's/11\.00/$(MSVC_FORMAT_VER)\.00/g' < $(top_srcdir)/build/win32/vs10/$@ > $(top_builddir)/build/win32/vs$(MSVC_VER)/$@.tmp
sed 's/2010/$(MSVC_VER_LONG)/g' < $(top_builddir)/build/win32/vs$(MSVC_VER)/$@.tmp > $(top_builddir)/build/win32/vs$(MSVC_VER)/$@
rm $(top_builddir)/build/win32/vs$(MSVC_VER)/$@.tmp
%.txt:
sed 's/vs10/vs$(MSVC_VER)/g' < $(top_srcdir)/build/win32/vs10/$@ > $(top_builddir)/build/win32/vs$(MSVC_VER)/$@.tmp
sed 's/VS10/VS$(MSVC_VER)/g' < $(top_builddir)/build/win32/vs$(MSVC_VER)/$@.tmp > $(top_builddir)/build/win32/vs$(MSVC_VER)/$@
rm $(top_builddir)/build/win32/vs$(MSVC_VER)/$@.tmp
%.vcxproj:
if test -e $(top_srcdir)/build/win32/vs10/$@; then \
sed 's/v100/v$(MSVC_TOOLSET)/g' < $(top_srcdir)/build/win32/vs10/$@ > $(top_builddir)/build/win32/vs$(MSVC_VER)/$@; \
else \
sed 's/v100/v$(MSVC_TOOLSET)/g' < $(top_builddir)/build/win32/vs10/$@ > $(top_builddir)/build/win32/vs$(MSVC_VER)/$@; \
fi
%.props: $(top_builddir)/build/win32/vs10/Makefile
if test -e $(top_srcdir)/build/win32/vs10/$@; then \
sed 's/<VSVer>10<\/VSVer>/<VSVer>$(MSVC_VER)<\/VSVer>/g' < $(top_srcdir)/build/win32/vs10/$@ > $(top_builddir)/build/win32/vs$(MSVC_VER)/$@; \
else \
sed 's/<VSVer>10<\/VSVer>/<VSVer>$(MSVC_VER)<\/VSVer>/g' < $(top_builddir)/build/win32/vs10/$@ > $(top_builddir)/build/win32/vs$(MSVC_VER)/$@; \
fi
%.vcxproj.filters:
if test -e $(top_srcdir)/build/win32/vs10/$@; then \
cp $(top_srcdir)/build/win32/vs10/$@ $(top_builddir)/build/win32/vs$(MSVC_VER)/$@; \
else \
cp $(top_builddir)/build/win32/vs10/$@ $(top_builddir)/build/win32/vs$(MSVC_VER)/$@; \
fi
+127
View File
@@ -0,0 +1,127 @@
# Author: Fan, Chun-wei
# Common autotools file for constructing the g-ir-scanner and
# g-ir-compiler command lines for Visual Studio builds.
# This is copied from $(srcroot)/build from the gobject-introspection
# project, which may be included in projects that support both
# Visual Studio builds and introspection.
# * Input variables:
#
# MSVC_INTROSPECT_GIRS - List of .gir's that should be built
# in the NMake Makefiles
#
# * Simple tutorial
#
# Add this to Makefile.am where your library/program is built:
# (Either YourLib_1_0_gir_MSVC_LIBS or YourLib_1_0_gir_MSVC_PROGRAM
# is required unless --headers-only is specified in
# YourLib_1_0_gir__MSVC_SCANNERFLAGS)
#
# include $(top_srcdir)/build/Makefile.msvc-introspection
# MSVC_INTROSPECT_GIRS = YourLib-1.0.gir
# YourLib_1_0_gir_NAMESPACE = YourLib # This is optional
# YourLib_1_0_gir_VERSION = 1.0 # This is optional
# YourLib_1_0_gir_MSVC_LIBS = yourlib-1.0
# YourLib_1_0_gir_MSVC_FILES = $(libyourlib_1_0_SOURCES)
# YourLib_1_0_gir_MSVC_PROGRAM = YourProgram
# YourLib_1_0_gir_MSVC_PACKAGES = (Dependent .pc files)
# YourLib_1_0_gir_MSVC_INCLUDE_GIRS = (Dependent external .gir's)
# YourLiv_1_0_gir_MSVC_EXPORT_PACKAGES = (Packages exported by this .gir)
# Private functions
## Transform the MSVC project filename (no filename extensions) to something which can reference through a variable
## without automake/make complaining, eg Gtk-2.0 -> Gtk_2_0
_gir_name=$(subst /,_,$(subst -,_,$(subst .,_,$(1))))
# Namespace and Version is either fetched from the gir filename
# or the _NAMESPACE/_VERSION variable combo
_gir_namespace_msvc = $(or $($(_gir_name)_NAMESPACE),$(firstword $(subst -, ,$(notdir $(1)))))
_gir_version_msvc = $(or $($(_gir_name)_VERSION),$(lastword $(subst -, ,$(1:.gir=))))
_typelib_basename_msvc = $(_gir_namespace_msvc)'-'$(_gir_version_msvc)
# _PROGRAM is an optional variable which needs its own --program argument
_gir_program_msvc = $(if $($(_gir_name)_MSVC_PROGRAM),--program=$($(_gir_name)_MSVC_PROGRAM))
# Deduce the sub-folder from $(srcroot) where the sources reside in
_gir_source_path_raw_msvc:=$(subst $(abs_top_srcdir),,$(abs_srcdir))
_gir_source_path_msvc=$(subst /,\\,$(_gir_source_path_raw_msvc))
_gir_source_subdir_int_msvc=$(subst \\\\,\\,\\$(_gir_source_path_msvc)\\)
_gir_source_subdir_msvc=$(subst \\.\\,\\,$(_gir_source_subdir_int_msvc))
_gir_files_raw_msvc=$(subst /,\\,$($(_gir_name)_MSVC_FILES))
_gir_files_msvc=$(subst $(srcdir)\\,,$(subst $(builddir)\\,,$(subst $(top_builddir)\\$(_gir_source_path_msvc)\\,\\,$(_gir_files_raw_msvc))))
# Create a list of items for:
# - Libraries
# - Packages
# - GIRs to include
# - packages to export
_gir_libraries_msvc = $(foreach lib,$($(_gir_name)_MSVC_LIBS),--library=$(lib))
_gir_packages_msvc = $(foreach pkg,$($(_gir_name)_MSVC_PACKAGES),--pkg=$(pkg))
_gir_includes_msvc = $(foreach include,$($(_gir_name)_MSVC_INCLUDE_GIRS),--include=$(include))
_gir_export_packages_msvc = $(foreach pkg,$($(_gir_name)_MSVC_EXPORT_PACKAGES),--pkg-export=$(pkg))
#
# Create NMake Makefile Sections for Building Introspection files
# from autotools files
# $(1) - File Name of the .gir that is to be generated
#
define gir-nmake-builder
# Basic sanity check, to make sure required variables are set
$(if $($(_gir_name)_MSVC_FILES),,$(error Need to define $(_gir_name)_MSVC_FILES))
$(if $(or $(findstring --header-only,$($(_gir_name)_MSVC_SCANNERFLAGS)),
$($(_gir_name)_MSVC_LIBS),
$($(_gir_name)_MSVC_PROGRAM)),,
$(error Need to define $(_gir_name)_MSVC_LIBS or $(_gir_name)_MSVC_PROGRAM))
$(top_builddir)/build/win32/$(_gir_name)_list: Makefile
for F in $(_gir_files_msvc); do \
case $$$$F in \
*.c|*.cpp|*.cc|*.cxx|*.h|*.hpp|*.hh|*.hxx) \
echo '..\..'$(_gir_source_subdir_msvc)$$$$F >>$(top_builddir)/build/win32/$(_gir_name)_list \
;; \
esac; \
done
$(top_builddir)/build/win32/$(1).msvc.introspect: Makefile
-$(RM) $(top_builddir)/build/win32/$(1).msvc.introspect
# Assemble the Command to Run g-ir-scanner
echo 'vs$$$$(VSVER)\$$$$(CFG)\$$$$(PLAT)\bin\'$(1)': '$(_gir_name)'_list '$($(_gir_name)_MSVC_GIR_DEPS)>>$(top_builddir)/build/win32/$(1).msvc.introspect
echo ' @-echo Generating $$$$@...'>>$(top_builddir)/build/win32/$(1).msvc.introspect
echo ' $$$$(PYTHON) $$$$(G_IR_SCANNER) \'>>$(top_builddir)/build/win32/$(1).msvc.introspect
echo ' --verbose -no-libtool \'>>$(top_builddir)/build/win32/$(1).msvc.introspect
echo ' --namespace='$(_gir_namespace_msvc)' \'>>$(top_builddir)/build/win32/$(1).msvc.introspect
echo ' --nsversion='$(_gir_version_msvc)' \'>>$(top_builddir)/build/win32/$(1).msvc.introspect
echo ' '$(_gir_packages_msvc)' \'>>$(top_builddir)/build/win32/$(1).msvc.introspect
echo ' '$(_gir_libraries_msvc)' \'>>$(top_builddir)/build/win32/$(1).msvc.introspect
echo ' '$(_gir_program_msvc)' \'>>$(top_builddir)/build/win32/$(1).msvc.introspect
echo ' --add-include-path=./vs$$$$(VSVER)/$$$$(CFG)/$$$$(PLAT)/bin \'>>$(top_builddir)/build/win32/$(1).msvc.introspect
echo ' --add-include-path=$$$$(G_IR_INCLUDEDIR) \'>>$(top_builddir)/build/win32/$(1).msvc.introspect
echo ' '$(_gir_includes_msvc)' \'>>$(top_builddir)/build/win32/$(1).msvc.introspect
echo ' '$(_gir_export_packages_msvc)' \'>>$(top_builddir)/build/win32/$(1).msvc.introspect
echo ' --cflags-begin \'>>$(top_builddir)/build/win32/$(1).msvc.introspect
echo ' '$($(_gir_name)_MSVC_CFLAGS)' \'>>$(top_builddir)/build/win32/$(1).msvc.introspect
echo ' --cflags-end \'>>$(top_builddir)/build/win32/$(1).msvc.introspect
echo ' '$($(_gir_name)_MSVC_SCANNERFLAGS)' \'>>$(top_builddir)/build/win32/$(1).msvc.introspect
echo ' --filelist='$(_gir_name)'_list \'>>$(top_builddir)/build/win32/$(1).msvc.introspect
echo ' -L.\vs$$$$(VSVER)\$$$$(CFG)\$$$$(PLAT)\bin \'>>$(top_builddir)/build/win32/$(1).msvc.introspect
echo ' -o $$$$@'>>$(top_builddir)/build/win32/$(1).msvc.introspect
echo '' >>$(top_builddir)/build/win32/$(1).msvc.introspect
# Finally Assemble the Command to Compile the generated .gir
echo 'vs$$$$(VSVER)\$$$$(CFG)\$$$$(PLAT)\bin\$(_typelib_basename_msvc).typelib: vs$$$$(VSVER)\$$$$(CFG)\$$$$(PLAT)\bin\'$(_typelib_basename_msvc)'.gir'>>$(top_builddir)/build/win32/$(1).msvc.introspect
echo ' @-echo Compiling $$$$@...'>>$(top_builddir)/build/win32/$(1).msvc.introspect
echo ' $$$$(G_IR_COMPILER) \'>>$(top_builddir)/build/win32/$(1).msvc.introspect
echo ' --includedir=$$$$(@D:\=/) --debug --verbose \'>>$(top_builddir)/build/win32/$(1).msvc.introspect
echo ' $$$$(@R:\=/).gir \'>>$(top_builddir)/build/win32/$(1).msvc.introspect
echo ' -o $$$$@'>>$(top_builddir)/build/win32/$(1).msvc.introspect
echo '' >>$(top_builddir)/build/win32/$(1).msvc.introspect
endef
$(foreach gir,$(MSVC_INTROSPECT_GIRS),$(eval $(call gir-nmake-builder,$(gir))))
+116
View File
@@ -0,0 +1,116 @@
# Author: Fan, Chun-wei
# Common Autotools file used to generate Visual Studio 2008+
# Projects from their templates
# This autotools file, from GLib, can be used in other projects
# that have Visual Studio build support, and is copied into
# $(srcroot)/build/.
# * Input variables:
#
# MSVCPROJS - List of Projects that should be generated
#
# * Simple tutorial
#
# Add this to Makefile.am where your library/program is built:
# include $(top_srcdir)/build/Makefile.msvcproj
# MSVCPROJS = YourProject (can be multiple projects in a single srcdir)
# YourProject_FILES = $(libyourlib_1_0_SOURCES)
# YourProject_EXCLUDES = ... # list of sources to exclude, separated by '|', wildcards allowed; use random unsed value if none
# YourProject_HEADERS_DIR = $(libyourlibincludedir)
# YourProject_HEADERS_INST = $(libyourlib_1_0_HEADERS)
# YourProject_HEADERS_EXCLUDES = ... # <list of headers to exclude from installation, separated by '|', wildcards allowed; use random unsed value if none>
#
# dist-hook: \ # (or add to it if it is already there, note the vs9 items will also call the vs10 items in the process)
# $(top_builddir)/build/win32/vs9/YourProject.vcproj \
# $(top_builddir)/build/win32/vs9/YourProject.headers
# Private functions
## Transform the MSVC project filename (no filename extensions) to something which can reference through a variable
## without automake/make complaining, eg Gtk-2.0 -> Gtk_2_0
_proj_name=$(subst /,_,$(subst -,_,$(subst .,_,$(1))))
_proj_path_raw:=$(subst $(abs_top_srcdir),,$(abs_srcdir))
_proj_path=$(subst /,\\,$(_proj_path_raw))
_proj_subdir_int=$(subst \\\\,\\,\\$(_proj_path)\\)
_proj_subdir=$(subst \\.\\,\\,$(_proj_subdir_int))
_proj_files_raw=$(subst /,\\,$($(_proj_name)_FILES))
_proj_files=$(subst $(srcdir)\\,,$(subst $(builddir)\\,,$(subst $(top_builddir)\\$(_proj_path)\\,\\,$(_proj_files_raw))))
_proj_filters=$($(_proj_name)_EXCLUDES)
_proj_headers_raw=$(subst /,\\,$($(_proj_name)_HEADERS_INST))
_proj_headers=$(subst $(srcdir)\\,,$(subst $(builddir)\\,,$(subst $(top_builddir)\\$(_proj_path)\\,\\,$(_proj_headers_raw))))
_proj_headers_excludes=$($(_proj_name)_HEADERS_EXCLUDES)
_headers_dest_posix=$(subst $(includedir),,$($(_proj_name)_HEADERS_DIR))
_headers_destdir=$(subst /,\\,$(_headers_dest_posix))
#
# Creates Visual Studio 2008/2010 projects from items passed in from autotools files
# $(1) - Base Name of the MSVC project files (outputs)
#
define msvcproj-builder
$(top_builddir)/build/win32/vs10/$(1).vcxproj: $(top_builddir)/build/win32/vs9/$(1).vcproj
$(top_builddir)/build/win32/vs10/$(1).vcxproj.filters: $(top_builddir)/build/win32/vs9/$(1).vcproj
$(1).sourcefiles: $(top_builddir)/build/win32/vs9/$(1).vcproj
$(1).vs10.sourcefiles: $(top_builddir)/build/win32/vs9/$(1).vcproj
$(1).vs10.sourcefiles.filters: $(top_builddir)/build/win32/vs9/$(1).vcproj
$(top_builddir)/build/win32/vs9/$(1).vcproj: Makefile
-$(RM) $(top_builddir)/build/win32/vs9/$(1).vcproj
-$(RM) $(top_builddir)/build/win32/vs10/$(1).vcxproj
-$(RM) $(top_builddir)/build/win32/vs10/$(1).vcxproj.filters
-$(RM) $(top_builddir)/build/win32/vs11/$(1).vcxproj
-$(RM) $(top_builddir)/build/win32/vs11/$(1).vcxproj.filters
-$(RM) $(top_builddir)/build/win32/vs12/$(1).vcxproj
-$(RM) $(top_builddir)/build/win32/vs12/$(1).vcxproj.filters
-$(RM) $(top_builddir)/build/win32/vs14/$(1).vcxproj
-$(RM) $(top_builddir)/build/win32/vs14/$(1).vcxproj.filters
-$(RM) $(top_builddir)/build/win32/vs15/$(1).vcxproj
-$(RM) $(top_builddir)/build/win32/vs15/$(1).vcxproj.filters
for F in $(_proj_files); do \
case $$$$F in \
$(_proj_filters)) \
;; \
*.c|*.cpp|*.cc|*.cxx) \
echo ' <File RelativePath="..\..\..'$(_proj_subdir)$$$$F'" />' >>$(1).sourcefiles && \
echo ' <ClCompile Include="..\..\..'$(_proj_subdir)$$$$F'" />' >>$(1).vs10.sourcefiles && \
echo ' <ClCompile Include="..\..\..'$(_proj_subdir)$$$$F'"><Filter>Source Files</Filter></ClCompile>' >>$(1).vs10.sourcefiles.filters \
;; \
esac; \
done
$(CPP) -P - <$(top_srcdir)/build/win32/vs9/$(1).vcprojin >$(top_builddir)/build/win32/vs9/$(1).vcproj
$(CPP) -P - <$(top_srcdir)/build/win32/vs10/$(1).vcxprojin >$(top_builddir)/build/win32/vs10/$(1).vcxproj
$(CPP) -P - <$(top_srcdir)/build/win32/vs10/$(1).vcxproj.filtersin >$(top_builddir)/build/win32/vs10/$(1).vcxproj.filters
$(RM) $(1).sourcefiles
$(RM) $(1).vs10.sourcefiles
$(RM) $(1).vs10.sourcefiles.filters
$(top_builddir)/build/win32/vs10/$(1).vs10.headers: $(top_builddir)/build/win32/vs9/$(1).headers
$(top_builddir)/build/win32/vs9/$(1).headers: Makefile
-$(RM) $(top_builddir)/build/win32/vs9/$(1).headers
-$(RM) $(top_builddir)/build/win32/vs10/$(1).vs10.headers
for F in $(_proj_headers); do \
case $$$$F in \
$(_proj_headers_excludes)) \
;; \
*.h|*.hpp|*.hh|*.hxx) \
echo 'copy ..\..\..'$(_proj_subdir)$$$$F' $$$$(CopyDir)\include'$(_headers_destdir)'\'$$$$F'&#x0D;&#x0A;' >>$(top_builddir)/build/win32/vs9/$(1).headers && \
echo 'copy ..\..\..'$(_proj_subdir)$$$$F' $$$$(CopyDir)\include'$(_headers_destdir)'\'$$$$F >>$(top_builddir)/build/win32/vs10/$(1).vs10.headers \
;; \
esac; \
done
endef
$(foreach proj,$(MSVCPROJS),$(eval $(call msvcproj-builder,$(proj))))
+42 -2
View File
@@ -1,4 +1,44 @@
include $(top_srcdir)/Makefile.decl
SUBDIRS = \
vs9
if HAVE_INTROSPECTION
GENERATED_ITEMS = \
introspection.body.mak \
Gdk_2_0_gir_list \
Gtk_2_0_gir_list
MSVC_INTROSPECTION_INTERMEDIATE_FILES = Gdk-2.0.gir.msvc.introspect Gtk-2.0.gir.msvc.introspect
introspection.body.mak: $(MSVC_INTROSPECTION_INTERMEDIATE_FILES)
-$(RM) introspection.body.mak
for F in `ls *.msvc.introspect`; do \
case $$F in \
*) cat $(top_builddir)/build/win32/$$F >>introspection.body.mak \
;; \
esac; \
done
$(RM) $(MSVC_INTROSPECTION_INTERMEDIATE_FILES)
DISTCLEANFILES = $(GENERATED_ITEMS)
else
GENERATED_ITEMS =
DISTCLEANFILES =
endif
SUBDIRS = \
vs9 \
vs10 \
vs11 \
vs12 \
vs14 \
vs15 \
vs16
EXTRA_DIST += \
detectenv-msvc.mak \
introspection-msvc.mak \
gtk-introspection-msvc.mak \
gtkpc.py \
pc_base.py \
replace.py \
$(GENERATED_ITEMS)
+80
View File
@@ -0,0 +1,80 @@
# Common NMake Makefile module for checking the build environment
# This can be copied from $(glib_srcroot)\build\win32 for GNOME items
# that support MSVC builds and introspection under MSVC, and can be used
# for building test programs as well.
# Check to see we are configured to build with MSVC (MSDEVDIR, MSVCDIR or
# VCINSTALLDIR) or with the MS Platform SDK (MSSDK or WindowsSDKDir)
!if !defined(VCINSTALLDIR) && !defined(WINDOWSSDKDIR)
MSG = ^
This Makefile is only for Visual Studio 2008 and later.^
You need to ensure that the Visual Studio Environment is properly set up^
before running this Makefile.
!error $(MSG)
!endif
ERRNUL = 2>NUL
_HASH=^#
!if ![echo VCVERSION=_MSC_VER > vercl.x] \
&& ![echo $(_HASH)if defined(_M_IX86) >> vercl.x] \
&& ![echo PLAT=Win32 >> vercl.x] \
&& ![echo $(_HASH)elif defined(_M_AMD64) >> vercl.x] \
&& ![echo PLAT=x64 >> vercl.x] \
&& ![echo $(_HASH)endif >> vercl.x] \
&& ![cl -nologo -TC -P vercl.x $(ERRNUL)]
!include vercl.i
!if ![echo VCVER= ^\> vercl.vc] \
&& ![set /a $(VCVERSION) / 100 - 6 >> vercl.vc]
!include vercl.vc
!endif
!endif
!if ![del $(ERRNUL) /q/f vercl.x vercl.i vercl.vc]
!endif
!if $(VCVERSION) > 1499 && $(VCVERSION) < 1600
VSVER = 9
!elseif $(VCVERSION) > 1599 && $(VCVERSION) < 1700
VSVER = 10
!elseif $(VCVERSION) > 1699 && $(VCVERSION) < 1800
VSVER = 11
!elseif $(VCVERSION) > 1799 && $(VCVERSION) < 1900
VSVER = 12
!elseif $(VCVERSION) > 1899 && $(VCVERSION) < 1910
VSVER = 14
!elseif $(VCVERSION) > 1909 && $(VCVERSION) < 1920
VSVER = 15
!elseif $(VCVERSION) > 1919 && $(VCVERSION) < 2000
VSVER = 16
!else
VSVER = 0
!endif
!if "$(VSVER)" == "0"
MSG = ^
This NMake Makefile set supports Visual Studio^
9 (2008) through 16 (2019). Your Visual Studio^
version is not supported.
!error $(MSG)
!endif
VALID_CFGSET = FALSE
!if "$(CFG)" == "release" || "$(CFG)" == "debug" || "$(CFG)" == "Release" || "$(CFG)" == "Debug"
VALID_CFGSET = TRUE
!endif
# We want debugging symbols logged for all builds,
# using .pdb files for release builds
CFLAGS_BASE = /Zi
!if "$(CFG)" == "release" || "$(CFG)" == "Release"
CFLAGS_ADD = /MD /O2 $(CFLAGS_BASE)
!else
CFLAGS_ADD = /MDd /Od $(CFLAGS_BASE)
!endif
!if "$(PLAT)" == "x64"
LDFLAGS_ARCH = /machine:x64
!else
LDFLAGS_ARCH = /machine:x86
!endif
+48
View File
@@ -0,0 +1,48 @@
# NMake Makefile to build Introspection Files for GTK+
!include detectenv-msvc.mak
APIVERSION = 2.0
CHECK_PACKAGE = gdk-pixbuf-2.0 atk pangocairo gio-2.0
built_install_girs = \
vs$(VSVER)\$(CFG)\$(PLAT)\bin\Gdk-$(APIVERSION).gir \
vs$(VSVER)\$(CFG)\$(PLAT)\bin\Gtk-$(APIVERSION).gir
built_install_typelibs = \
vs$(VSVER)\$(CFG)\$(PLAT)\bin\Gdk-$(APIVERSION).typelib \
vs$(VSVER)\$(CFG)\$(PLAT)\bin\Gtk-$(APIVERSION).typelib
!include introspection-msvc.mak
!if "$(BUILD_INTROSPECTION)" == "TRUE"
!if "$(PLAT)" == "x64"
AT_PLAT=x86_64
!else
AT_PLAT=i686
!endif
all: setgirbuildenv $(built_install_girs) $(built_install_typelibs)
setgirbuildenv:
@set PYTHONPATH=$(PREFIX)\lib\gobject-introspection
@set PATH=vs$(VSVER)\$(CFG)\$(PLAT)\bin;$(PREFIX)\bin;$(PATH)
@set PKG_CONFIG_PATH=$(PKG_CONFIG_PATH)
@set LIB=vs$(VSVER)\$(CFG)\$(PLAT)\bin;$(LIB)
!include introspection.body.mak
install-introspection: all
@-copy vs$(VSVER)\$(CFG)\$(PLAT)\bin\*.gir $(G_IR_INCLUDEDIR)
@-copy /b vs$(VSVER)\$(CFG)\$(PLAT)\bin\*.typelib $(G_IR_TYPELIBDIR)
!else
all:
@-echo $(ERROR_MSG)
!endif
clean:
@-del /f/q vs$(VSVER)\$(CFG)\$(PLAT)\bin\*.typelib
@-del /f/q vs$(VSVER)\$(CFG)\$(PLAT)\bin\*.gir
+80
View File
@@ -0,0 +1,80 @@
#!/usr/bin/python
#
# Utility script to generate .pc files for GTK+
# for Visual Studio builds, to be used for
# building introspection files
# Author: Fan, Chun-wei
# Date: April 26, 2016
import os
import sys
import argparse
from replace import replace_multi, replace
from pc_base import BasePCItems
def main(argv):
base_pc = BasePCItems()
gdk_parser = argparse.ArgumentParser(description='Setup basic .pc file info')
gdk_parser.add_argument('--host',
required=True,
help='Build type')
base_pc.setup(argv, gdk_parser)
atk_min_ver = '1.29.2'
gdk_pixbuf_min_ver = '2.21.0'
gdk_win32_sys_libs = '-lgdi32 -limm32 -lshell32 -lole32 -lwinmm'
gdk_additional_libs = '-lcairo'
glib_min_ver = '2.28.0'
cairo_backends = 'cairo-win32'
gdktarget = 'win32'
gio_package = 'gio-2.0 >= ' + glib_min_ver
gdk_args = gdk_parser.parse_args()
pkg_replace_items = {'@GTK_API_VERSION@': '2.0',
'@gdktarget@': gdktarget}
pkg_required_packages = 'gdk-pixbuf-2.0 >= ' + gdk_pixbuf_min_ver + ' '
gdk_pc_replace_items = {'@GDK_PACKAGES@': gio_package + ' ' + \
'pangowin32 pangocairo' + ' ' + \
pkg_required_packages,
'@GDK_PRIVATE_PACKAGES@': gio_package + ' ' + cairo_backends,
'@GDK_EXTRA_LIBS@': gdk_additional_libs + ' ' + gdk_win32_sys_libs,
'@GDK_EXTRA_CFLAGS@': ''}
gtk_pc_replace_items = {'@host@': gdk_args.host,
'@GTK_BINARY_VERSION@': '2.10.0',
'@GTK_PACKAGES@': 'atk >= ' + atk_min_ver + ' ' + \
pkg_required_packages + ' ' + \
gio_package,
'@GTK_PRIVATE_PACKAGES@': 'atk',
'@GTK_EXTRA_CFLAGS@': '',
'@GTK_EXTRA_LIBS@': ' ' + gdk_additional_libs,
'@GTK_EXTRA_CFLAGS@': ''}
pkg_replace_items.update(base_pc.base_replace_items)
gdk_pc_replace_items.update(pkg_replace_items)
gtk_pc_replace_items.update(pkg_replace_items)
# Generate gdk-2.0.pc
replace_multi(base_pc.top_srcdir + '/gdk-2.0.pc.in',
base_pc.srcdir + '/gdk-2.0.pc',
gdk_pc_replace_items)
# Generate gtk+-2.0.pc
replace_multi(base_pc.top_srcdir + '/gtk+-2.0.pc.in',
base_pc.srcdir + '/gtk+-2.0.pc',
gtk_pc_replace_items)
# Generate gail.pc
replace_multi(base_pc.top_srcdir + '/gail.pc.in',
base_pc.srcdir + '/gail.pc',
pkg_replace_items)
if __name__ == '__main__':
sys.exit(main(sys.argv))
+94
View File
@@ -0,0 +1,94 @@
# Common NMake Makefile module for checking the build environment is sane
# for building introspection files under MSVC/NMake.
# This can be copied from $(gi_srcroot)\build\win32 for GNOME items
# that support MSVC builds and introspection under MSVC.
# Can override with env vars as needed
# You will need to have built gobject-introspection for this to work.
# Change or pass in or set the following to suit your environment
!if "$(PREFIX)" == ""
PREFIX = ..\..\..\vs$(VSVER)\$(PLAT)
!endif
!if ![setlocal] && \
![set PFX=$(PREFIX)] && \
![for %P in (%PFX%) do @echo PREFIX_FULL=%~dpnfP > pfx.x]
!endif
!include pfx.x
!if "$(PKG_CONFIG_PATH)" == ""
PKG_CONFIG_PATH=$(PREFIX_FULL)\lib\pkgconfig
!else
PKG_CONFIG_PATH=$(PREFIX_FULL)\lib\pkgconfig;$(PKG_CONFIG_PATH)
!endif
!if ![del $(ERRNUL) /q/f pfx.x]
!endif
# Note: The PYTHON must be the Python release series that was used to build
# the GObject-introspection scanner Python module!
# Either having python.exe your PATH will work or passing in
# PYTHON=<full path to your Python interpretor> will do
# This is required, and gobject-introspection needs to be built
# before this can be successfully run.
!if "$(PYTHON)" == ""
PYTHON=python
!endif
# Path to the pkg-config tool, if not already in the PATH
!if "$(PKG_CONFIG)" == ""
PKG_CONFIG=pkg-config
!endif
# Don't change anything following this line!
GIR_SUBDIR = share\gir-1.0
GIR_TYPELIBDIR = lib\girepository-1.0
G_IR_SCANNER = $(PREFIX)\bin\g-ir-scanner
G_IR_COMPILER = $(PREFIX)\bin\g-ir-compiler.exe
G_IR_INCLUDEDIR = $(PREFIX)\$(GIR_SUBDIR)
G_IR_TYPELIBDIR = $(PREFIX)\$(GIR_TYPELIBDIR)
VALID_PKG_CONFIG_PATH = FALSE
MSG_INVALID_PKGCONFIG = You must set or specifiy a valid PKG_CONFIG_PATH
MSG_INVALID_CFG = You need to specify or set CFG to be release or debug to use this Makefile to build the Introspection Files
ERROR_MSG =
BUILD_INTROSPECTION = TRUE
!if ![set PKG_CONFIG_PATH=$(PKG_CONFIG_PATH)] \
&& ![$(PKG_CONFIG) --print-errors --errors-to-stdout $(CHECK_PACKAGE) > pkgconfig.x] \
&& ![setlocal] \
&& ![set file="pkgconfig.x"] \
&& ![FOR %A IN (%file%) DO @echo PKG_CHECK_SIZE=%~zA > pkgconfig.chksize] \
&& ![del $(ERRNUL) /q/f pkgconfig.x]
!endif
!include pkgconfig.chksize
!if "$(PKG_CHECK_SIZE)" == "0"
VALID_PKG_CONFIG_PATH = TRUE
!else
VALID_PKG_CONFIG_PATH = FALSE
!endif
!if ![del $(ERRNUL) /q/f pkgconfig.chksize]
!endif
VALID_CFGSET = FALSE
!if "$(CFG)" == "release" || "$(CFG)" == "debug" || "$(CFG)" == "Release" || "$(CFG)" == "Debug"
VALID_CFGSET = TRUE
!endif
!if "$(VALID_PKG_CONFIG_PATH)" != "TRUE"
BUILD_INTROSPECTION = FALSE
ERROR_MSG = $(MSG_INVALID_PKGCONFIG)
!endif
!if "$(VALID_CFGSET)" != "TRUE"
BUILD_INTROSPECTION = FALSE
ERROR_MSG = $(MSG_INVALID_CFG)
!endif
+124
View File
@@ -0,0 +1,124 @@
#!/usr/bin/python
#
# Simple utility script to generate the basic info
# needed in a .pc (pkg-config) file, used especially
# for introspection purposes
# This can be used in various projects where
# there is the need to generate .pc files,
# and is copied from GLib's $(srcroot)/build/win32
# Author: Fan, Chun-wei
# Date: March 10, 2016
import os
import sys
import argparse
class BasePCItems:
def __init__(self):
self.base_replace_items = {}
self.exec_prefix = ''
self.includedir = ''
self.libdir = ''
self.prefix = ''
self.srcdir = os.path.dirname(__file__)
self.top_srcdir = self.srcdir + '\\..\\..'
self.version = ''
def setup(self, argv, parser=None):
if parser is None:
parser = argparse.ArgumentParser(description='Setup basic .pc file info')
parser.add_argument('--prefix', help='prefix of the installed library',
required=True)
parser.add_argument('--exec-prefix',
help='prefix of the installed programs, \
if different from the prefix')
parser.add_argument('--includedir',
help='includedir of the installed library, \
if different from ${prefix}/include')
parser.add_argument('--libdir',
help='libdir of the installed library, \
if different from ${prefix}/lib')
parser.add_argument('--version', help='Version of the package',
required=True)
args = parser.parse_args()
self.version = args.version
# check whether the prefix and exec_prefix are valid
if not os.path.exists(args.prefix):
raise SystemExit('Specified prefix \'%s\' is invalid' % args.prefix)
# use absolute paths for prefix
self.prefix = os.path.abspath(args.prefix).replace('\\','/')
# check and setup the exec_prefix
if getattr(args, 'exec_prefix', None) is None:
exec_prefix_use_shorthand = True
self.exec_prefix = '${prefix}'
else:
if args.exec_prefix.startswith('${prefix}'):
exec_prefix_use_shorthand = True
input_exec_prefix = args.prefix + args.exec_prefix[len('${prefix}'):]
else:
exec_prefix_use_shorthand = False
input_exec_prefix = args.exec_prefix
if not os.path.exists(input_exec_prefix):
raise SystemExit('Specified exec_prefix \'%s\' is invalid' %
args.exec_prefix)
if exec_prefix_use_shorthand is True:
self.exec_prefix = args.exec_prefix.replace('\\','/')
else:
self.exec_prefix = os.path.abspath(input_exec_prefix).replace('\\','/')
# check and setup the includedir
if getattr(args, 'includedir', None) is None:
self.includedir = '${prefix}/include'
else:
if args.includedir.startswith('${prefix}'):
includedir_use_shorthand = True
input_includedir = args.prefix + args.includedir[len('${prefix}'):]
else:
if args.includedir.startswith('${exec_prefix}'):
includedir_use_shorthand = True
input_includedir = input_exec_prefix + args.includedir[len('${exec_prefix}'):]
else:
includedir_use_shorthand = False
input_includedir = args.includedir
if not os.path.exists(input_includedir):
raise SystemExit('Specified includedir \'%s\' is invalid' %
args.includedir)
if includedir_use_shorthand is True:
self.includedir = args.includedir.replace('\\','/')
else:
self.includedir = os.path.abspath(input_includedir).replace('\\','/')
# check and setup the libdir
if getattr(args, 'libdir', None) is None:
self.libdir = '${prefix}/lib'
else:
if args.libdir.startswith('${prefix}'):
libdir_use_shorthand = True
input_libdir = args.prefix + args.libdir[len('${prefix}'):]
else:
if args.libdir.startswith('${exec_prefix}'):
libdir_use_shorthand = True
input_libdir = input_exec_prefix + args.libdir[len('${exec_prefix}'):]
else:
libdir_use_shorthand = False
input_libdir = args.libdir
if not os.path.exists(input_libdir):
raise SystemExit('Specified libdir \'%s\' is invalid' %
args.libdir)
if libdir_use_shorthand is True:
self.libdir = args.libdir.replace('\\','/')
else:
self.libdir = os.path.abspath(input_libdir).replace('\\','/')
# setup dictionary for replacing items in *.pc.in
self.base_replace_items.update({'@VERSION@': self.version})
self.base_replace_items.update({'@prefix@': self.prefix})
self.base_replace_items.update({'@exec_prefix@': self.exec_prefix})
self.base_replace_items.update({'@libdir@': self.libdir})
self.base_replace_items.update({'@includedir@': self.includedir})
+115
View File
@@ -0,0 +1,115 @@
#!/usr/bin/python
#
# Simple utility script to manipulate
# certain types of strings in a file
# This can be used in various projects where
# there is the need to replace strings in files,
# and is copied from GLib's $(srcroot)/build/win32
# Author: Fan, Chun-wei
# Date: September 03, 2014
import os
import sys
import re
import string
import argparse
valid_actions = ['remove-prefix',
'replace-var',
'replace-str',
'remove-str']
def open_file(filename, mode):
if sys.version_info[0] < 3:
return open(filename, mode=mode)
else:
return open(filename, mode=mode, encoding='utf-8')
def replace_multi(src, dest, replace_items):
with open_file(src, 'r') as s:
with open_file(dest, 'w') as d:
for line in s:
replace_dict = dict((re.escape(key), value) \
for key, value in replace_items.items())
replace_pattern = re.compile("|".join(replace_dict.keys()))
d.write(replace_pattern.sub(lambda m: \
replace_dict[re.escape(m.group(0))], line))
def replace(src, dest, instring, outstring):
replace_item = {instring: outstring}
replace_multi(src, dest, replace_item)
def check_required_args(args, params):
for param in params:
if getattr(args, param, None) is None:
raise SystemExit('%s: error: --%s argument is required' % (__file__, param))
def warn_ignored_args(args, params):
for param in params:
if getattr(args, param, None) is not None:
print('%s: warning: --%s argument is ignored' % (__file__, param))
def main(argv):
parser = argparse.ArgumentParser(description='Process strings in a file.')
parser.add_argument('-a',
'--action',
help='Action to carry out. Can be one of:\n'
'remove-prefix\n'
'replace-var\n'
'replace-str\n'
'remove-str',
choices=valid_actions)
parser.add_argument('-i', '--input', help='Input file')
parser.add_argument('-o', '--output', help='Output file')
parser.add_argument('--instring', help='String to replace or remove')
parser.add_argument('--var', help='Autotools variable name to replace')
parser.add_argument('--outstring',
help='New String to replace specified string or variable')
parser.add_argument('--removeprefix', help='Prefix of string to remove')
args = parser.parse_args()
input_string = ''
output_string = ''
# We must have action, input, output for all operations
check_required_args(args, ['action','input','output'])
# Build the arguments by the operation that is to be done,
# to be fed into replace()
# Get rid of prefixes from a string
if args.action == 'remove-prefix':
check_required_args(args, ['instring','removeprefix'])
warn_ignored_args(args, ['outstring','var'])
input_string = args.removeprefix + args.instring
output_string = args.instring
# Replace an m4-style variable (those surrounded by @...@)
if args.action == 'replace-var':
check_required_args(args, ['var','outstring'])
warn_ignored_args(args, ['instring','removeprefix'])
input_string = '@' + args.var + '@'
output_string = args.outstring
# Replace a string
if args.action == 'replace-str':
check_required_args(args, ['instring','outstring'])
warn_ignored_args(args, ['var','removeprefix'])
input_string = args.instring
output_string = args.outstring
# Remove a string
if args.action == 'remove-str':
check_required_args(args, ['instring'])
warn_ignored_args(args, ['var','outstring','removeprefix'])
input_string = args.instring
output_string = ''
replace(args.input, args.output, input_string, output_string)
if __name__ == '__main__':
sys.exit(main(sys.argv))
+53
View File
@@ -0,0 +1,53 @@
include $(top_srcdir)/Makefile.decl
GENERATED_ITEMS = \
gdk-win32.vcxproj \
gdk.vcxproj \
gtk.vcxproj \
gailutil.vcxproj \
libwimp.vcxproj \
gtk-demo.vcxproj \
gdk-win32.vcxproj.filters \
gdk.vcxproj.filters \
gtk.vcxproj.filters \
gailutil.vcxproj.filters \
libwimp.vcxproj.filters \
gtk-demo.vcxproj.filters \
gtk-install.props
EXTRA_DIST += \
README.txt \
gtk+.sln \
gtk-build-defines.props \
gtk-gen-srcs.props \
gtk-install.propsin \
gtk-version-paths.props \
gdk-win32.vcxprojin \
gdk-win32.vcxproj.filtersin \
gdk.vcxprojin \
gdk.vcxproj.filtersin \
gtk.vcxprojin \
gtk.vcxproj.filtersin \
gtk-demo.vcxprojin \
gtk-demo.vcxproj.filtersin \
gailutil.vcxprojin \
gailutil.vcxproj.filtersin \
libwimp.vcxprojin \
libwimp.vcxproj.filtersin \
gtk-update-icon-cache.vcxproj \
gtk-update-icon-cache.vcxproj.filters \
gtk-install.vcxproj \
gtk-install.vcxproj.filters \
$(GENERATED_ITEMS)
MSVC_INTERMEDIATE_FILES = gdk-win32.vs10.headers gdk.vs10.headers gtk.vs10.headers gailutil.vs10.headers
gtk-install.props: $(MSVC_INTERMEDIATE_FILES)
-$(RM) $(top_builddir)/build/win32/vs11/gtk-install.props
-$(RM) $(top_builddir)/build/win32/vs12/gtk-install.props
-$(RM) $(top_builddir)/build/win32/vs14/gtk-install.props
-$(RM) $(top_builddir)/build/win32/vs15/gtk-install.props
$(CPP) -P - <$(top_srcdir)/build/win32/vs10/gtk-install.propsin >$@
rm $(MSVC_INTERMEDIATE_FILES)
DISTCLEANFILES = $(GENERATED_ITEMS)
+74
View File
@@ -0,0 +1,74 @@
Please do not compile this package (GTK+) in paths that contain
spaces in them-as strange problems may occur during compilation or during
the use of the library.
A more detailed outline for instructions on building the GTK+ with Visual
C++ can be found in the following GNOME Live! page:
https://live.gnome.org/GTK%2B/Win32/MSVCCompilationOfGTKStack
This VS10 solution and the projects it includes are intented to be used
in a GTK+ source tree unpacked from a tarball. In a git checkout you
first need to use some Unix-like environment or manual work to expand
the files needed, like config.h.win32.in into config.h.win32 and the
.vcxprojin and .vcxproj.fintersin files here into corresponding actual
.vcxproj and .vcxproj.filters files.
You will need the parts from below in the GTK+ stack: GDK-Pixbuf, Pango,
ATK and GLib. External dependencies are at least Cairo, zlib, libpng,
gettext-runtime; and optional dependencies are fontconfig*, freetype*
and expat*. See the build/win32/vs10/README.txt file in glib for
details where to unpack them.
It is recommended that one builds the dependencies with VS10 as far as
possible, especially those from and using the GTK+ stack (i.e. GLib,
ATK, Pango, GDK-Pixbuf), so that crashes caused by mixing calls
to different CRTs can be kept at a minimum. zlib, libpng, and Cairo
do contain support for compiling under VS10 using VS
project files and/or makefiles at this time of writing, For the
GTK+ stack, VS10 project files are either available under
$(srcroot)/build/vs10 in the case of GLib (stable/unstable), ATK
(unstable) and GDK-Pixbuf (unstable), and should be in the next
unstable version of Pango. There is no known official VS10 build
support for fontconfig (along with freetype and expat) and
gettext-runtime, so please use the binaries from:
ftp://ftp.gnome.org/pub/GNOME/binaries/win32/dependencies/ (32 bit)
ftp://ftp.gnome.org/pub/GNOME/binaries/win64/dependencies/ (64 bit)
The recommended build order for these dependencies:
(first unzip any dependent binaries downloaded from the ftp.gnome.org
as described in the README.txt file in the build/win32/vs10 folder)
-zlib
-libpng
-(optional for GDK-Pixbuf) IJG JPEG
-(optional for GDK-Pixbuf) requires zlib and IJG JPEG)libtiff
-(optional for GDK-Pixbuf) jasper [jpeg-2000 library])
-(optional for GLib) PCRE (version 8.12 or later, use of CMake to
build PCRE is recommended-see build/win32/vs10/README.txt of GLib)
-Cairo
-GLib
-ATK
-Pango
-GDK-Pixbuf
(note the last 3 dependencies are not interdependent, so the last 3
dependencies can be built in any order)
The "install" project will copy build results and headers into their
appropriate location under <root>\vs10\<PlatformName>. For instance,
built DLLs go into <root>\vs10\<PlatformName>\bin, built LIBs into
<root>\vs10\<PlatformName>\lib and GTK+ headers into
<root>\vs10\<PlatformName>\include\gtk-2.0. This is then from where
project files higher in the stack are supposed to look for them, not
from a specific GLib source tree.
*About the dependencies marked with *: These dependencies are not
compulsory components for building and running GTK+ itself, but note
that they are needed for people running and building GIMP.
They are referred to by components in Cairo and Pango mainly-so decide
whether you will need FontConfig/FreeType support prior to building
Cairo and Pango, which are hard requirements for building and running
GTK+.
--Tor Lillqvist <tml@iki.fi>
--Updated by Fan, Chun-wei <fanc999@yahoo.com.tw>
@@ -0,0 +1,20 @@
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ItemGroup>
<Filter Include="Sources">
<UniqueIdentifier>{4FC737F1-C7A5-4376-A066-2A32D752A2FF}</UniqueIdentifier>
<Extensions>cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
</Filter>
<Filter Include="Headers">
<UniqueIdentifier>{93995380-89BD-4b04-88EB-625FBE52EBFB}</UniqueIdentifier>
<Extensions>h;hpp;hxx;hm;inl;inc;xsd</Extensions>
</Filter>
<Filter Include="Resource Files">
<UniqueIdentifier>{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}</UniqueIdentifier>
<Extensions>rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav</Extensions>
</Filter>
</ItemGroup>
<ItemGroup>
#include "gailutil.vs10.sourcefiles.filters"
</ItemGroup>
</Project>
+187
View File
@@ -0,0 +1,187 @@
<?xml version="1.0" encoding="utf-8"?>
<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ItemGroup Label="ProjectConfigurations">
<ProjectConfiguration Include="Debug|Win32">
<Configuration>Debug</Configuration>
<Platform>Win32</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include="Debug|x64">
<Configuration>Debug</Configuration>
<Platform>x64</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include="Release|Win32">
<Configuration>Release</Configuration>
<Platform>Win32</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include="Release|x64">
<Configuration>Release</Configuration>
<Platform>x64</Platform>
</ProjectConfiguration>
</ItemGroup>
<PropertyGroup Label="Globals">
<ProjectGuid>{B3B6558A-01C8-4C72-9BDE-84ABB1AE67DF}</ProjectGuid>
<RootNamespace>gailutil</RootNamespace>
<Keyword>Win32Proj</Keyword>
</PropertyGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
<ConfigurationType>DynamicLibrary</ConfigurationType>
<CharacterSet>MultiByte</CharacterSet>
<WholeProgramOptimization>true</WholeProgramOptimization>
<PlatformToolset>v100</PlatformToolset>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
<ConfigurationType>DynamicLibrary</ConfigurationType>
<CharacterSet>MultiByte</CharacterSet>
<PlatformToolset>v100</PlatformToolset>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
<ConfigurationType>DynamicLibrary</ConfigurationType>
<CharacterSet>MultiByte</CharacterSet>
<PlatformToolset>v100</PlatformToolset>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
<ConfigurationType>DynamicLibrary</ConfigurationType>
<CharacterSet>MultiByte</CharacterSet>
<PlatformToolset>v100</PlatformToolset>
</PropertyGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
<ImportGroup Label="ExtensionSettings">
</ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
<Import Project="gtk-build-defines.props" />
</ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
<Import Project="gtk-build-defines.props" />
</ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
<Import Project="gtk-build-defines.props" />
</ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
<Import Project="gtk-build-defines.props" />
</ImportGroup>
<PropertyGroup Label="UserMacros" />
<PropertyGroup>
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</LinkIncremental>
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">false</LinkIncremental>
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</LinkIncremental>
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</LinkIncremental>
</PropertyGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
<ClCompile>
<Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>..\..\..\gdk;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<PrecompiledHeader>
</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
<DebugInformationFormat>EditAndContinue</DebugInformationFormat>
</ClCompile>
<Link>
<AdditionalDependencies>pango-1.0.lib;atk-1.0.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>$(OutDir)$(GtkDllPrefix)$(ProjectName)$(GtkDllSuffix).dll</OutputFile>
<ModuleDefinitionFile>..\..\..\modules\other\gail\libgail-util\gailutil.def</ModuleDefinitionFile>
<GenerateDebugInformation>true</GenerateDebugInformation>
<ProgramDatabaseFile>$(OutDir)$(GtkDllPrefix)$(ProjectName)$(GtkDllSuffix).pdb</ProgramDatabaseFile>
<SubSystem>Windows</SubSystem>
<ImportLibrary>$(TargetDir)$(ProjectName)-$(ApiVersion).lib</ImportLibrary>
<TargetMachine>MachineX86</TargetMachine>
</Link>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
<ClCompile>
<Optimization>MaxSpeed</Optimization>
<IntrinsicFunctions>true</IntrinsicFunctions>
<AdditionalIncludeDirectories>..\..\..\gdk;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<PreprocessorDefinitions>%(PreprocessorDefinitions)</PreprocessorDefinitions>
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<FunctionLevelLinking>true</FunctionLevelLinking>
<PrecompiledHeader>
</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<Link>
<AdditionalDependencies>pango-1.0.lib;atk-1.0.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>$(OutDir)$(GtkDllPrefix)$(ProjectName)$(GtkDllSuffix).dll</OutputFile>
<ModuleDefinitionFile>..\..\..\modules\other\gail\libgail-util\gailutil.def</ModuleDefinitionFile>
<GenerateDebugInformation>true</GenerateDebugInformation>
<ProgramDatabaseFile>$(OutDir)$(GtkDllPrefix)$(ProjectName)$(GtkDllSuffix).pdb</ProgramDatabaseFile>
<SubSystem>Windows</SubSystem>
<OptimizeReferences>true</OptimizeReferences>
<EnableCOMDATFolding>true</EnableCOMDATFolding>
<ImportLibrary>$(TargetDir)$(ProjectName)-$(ApiVersion).lib</ImportLibrary>
<TargetMachine>MachineX86</TargetMachine>
</Link>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
<ClCompile>
<Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>..\..\..\gdk;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<PrecompiledHeader>
</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<Link>
<AdditionalDependencies>pango-1.0.lib;atk-1.0.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>$(OutDir)$(GtkDllPrefix)$(ProjectName)$(GtkDllSuffix).dll</OutputFile>
<ModuleDefinitionFile>..\..\..\modules\other\gail\libgail-util\gailutil.def</ModuleDefinitionFile>
<GenerateDebugInformation>true</GenerateDebugInformation>
<ProgramDatabaseFile>$(OutDir)$(GtkDllPrefix)$(ProjectName)$(GtkDllSuffix).pdb</ProgramDatabaseFile>
<SubSystem>Windows</SubSystem>
<ImportLibrary>$(TargetDir)$(ProjectName)-$(ApiVersion).lib</ImportLibrary>
<TargetMachine>MachineX64</TargetMachine>
</Link>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
<ClCompile>
<AdditionalIncludeDirectories>..\..\..\gdk;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<PreprocessorDefinitions>%(PreprocessorDefinitions)</PreprocessorDefinitions>
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<PrecompiledHeader>
</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<Link>
<AdditionalDependencies>pango-1.0.lib;atk-1.0.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>$(OutDir)$(GtkDllPrefix)$(ProjectName)$(GtkDllSuffix).dll</OutputFile>
<ModuleDefinitionFile>..\..\..\modules\other\gail\libgail-util\gailutil.def</ModuleDefinitionFile>
<GenerateDebugInformation>true</GenerateDebugInformation>
<ProgramDatabaseFile>$(OutDir)$(GtkDllPrefix)$(ProjectName)$(GtkDllSuffix).pdb</ProgramDatabaseFile>
<SubSystem>Windows</SubSystem>
<OptimizeReferences>true</OptimizeReferences>
<EnableCOMDATFolding>true</EnableCOMDATFolding>
<ImportLibrary>$(TargetDir)$(ProjectName)-$(ApiVersion).lib</ImportLibrary>
<TargetMachine>MachineX64</TargetMachine>
</Link>
</ItemDefinitionGroup>
<ItemGroup>
#include "gailutil.vs10.sourcefiles"
</ItemGroup>
<ItemGroup>
<ProjectReference Include="gdk.vcxproj">
<Project>{fc5aadb5-95cd-4bf0-ba8b-0c16fe7073f7}</Project>
<ReferenceOutputAssembly>false</ReferenceOutputAssembly>
</ProjectReference>
<ProjectReference Include="gtk.vcxproj">
<Project>{fc5aadb5-95cd-4bf0-ba8b-0c16fe7073f5}</Project>
<ReferenceOutputAssembly>false</ReferenceOutputAssembly>
</ProjectReference>
</ItemGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
<ImportGroup Label="ExtensionTargets">
</ImportGroup>
</Project>
@@ -0,0 +1,24 @@
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ItemGroup>
<Filter Include="Header Files">
<UniqueIdentifier>{93995380-89BD-4b04-88EB-625FBE52EBFB}</UniqueIdentifier>
<Extensions>h;hpp;hxx;hm;inl;inc;xsd</Extensions>
</Filter>
<Filter Include="Resource Files">
<UniqueIdentifier>{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}</UniqueIdentifier>
<Extensions>rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx</Extensions>
</Filter>
<Filter Include="Source Files">
<UniqueIdentifier>{4FC737F1-C7A5-4376-A066-2A32D752A2FF}</UniqueIdentifier>
<Extensions>cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
</Filter>
</ItemGroup>
<ItemGroup>
#include "gdk-win32.vs10.sourcefiles.filters"
</ItemGroup>
<ItemGroup>
<CustomBuild Include="..\..\..\config.h.win32"><Filter>Resource Files</Filter></CustomBuild>
<CustomBuild Include="..\..\..\gdk\gdkconfig.h.win32"><Filter>Resource Files</Filter></CustomBuild>
</ItemGroup>
</Project>
+153
View File
@@ -0,0 +1,153 @@
<?xml version="1.0" encoding="utf-8"?>
<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ItemGroup Label="ProjectConfigurations">
<ProjectConfiguration Include="Debug|Win32">
<Configuration>Debug</Configuration>
<Platform>Win32</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include="Debug|x64">
<Configuration>Debug</Configuration>
<Platform>x64</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include="Release|Win32">
<Configuration>Release</Configuration>
<Platform>Win32</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include="Release|x64">
<Configuration>Release</Configuration>
<Platform>x64</Platform>
</ProjectConfiguration>
</ItemGroup>
<PropertyGroup Label="Globals">
<ProjectGuid>{FC5AADB5-95CD-4BF0-BA8B-0C16FE7073FA}</ProjectGuid>
<RootNamespace>gdkwin32</RootNamespace>
<Keyword>Win32Proj</Keyword>
</PropertyGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
<ConfigurationType>StaticLibrary</ConfigurationType>
<CharacterSet>MultiByte</CharacterSet>
<PlatformToolset>v100</PlatformToolset>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
<ConfigurationType>StaticLibrary</ConfigurationType>
<CharacterSet>MultiByte</CharacterSet>
<PlatformToolset>v100</PlatformToolset>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
<ConfigurationType>StaticLibrary</ConfigurationType>
<CharacterSet>MultiByte</CharacterSet>
<PlatformToolset>v100</PlatformToolset>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
<ConfigurationType>StaticLibrary</ConfigurationType>
<CharacterSet>MultiByte</CharacterSet>
<PlatformToolset>v100</PlatformToolset>
</PropertyGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
<ImportGroup Label="ExtensionSettings">
</ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
<Import Project="gtk-gen-srcs.props" />
</ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
<Import Project="gtk-gen-srcs.props" />
</ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
<Import Project="gtk-gen-srcs.props" />
</ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
<Import Project="gtk-gen-srcs.props" />
</ImportGroup>
<PropertyGroup Label="UserMacros" />
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
<ClCompile>
<Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>..\..\..\gdk-pixbuf;..\..\..\gdk;..\..\..\gdk\win32;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<PreprocessorDefinitions>_DEBUG;G_ENABLE_DEBUG;$(GdkDefines);INSIDE_GDK_WIN32;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<PrecompiledHeader>
</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
<DebugInformationFormat>EditAndContinue</DebugInformationFormat>
</ClCompile>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
<ClCompile>
<AdditionalIncludeDirectories>..\..\..\gdk-pixbuf;..\..\..\gdk;..\..\..\gdk\win32;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<PreprocessorDefinitions>$(GdkDefines);INSIDE_GDK_WIN32;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<PrecompiledHeader>
</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
<ClCompile>
<Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>..\..\..\gdk-pixbuf;..\..\..\gdk;..\..\..\gdk\win32;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<PreprocessorDefinitions>_DEBUG;G_ENABLE_DEBUG;$(GdkDefines);INSIDE_GDK_WIN32;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<PrecompiledHeader>
</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
<ClCompile>
<AdditionalIncludeDirectories>..\..\..\gdk-pixbuf;..\..\..\gdk;..\..\..\gdk\win32;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<PreprocessorDefinitions>$(GdkDefines);INSIDE_GDK_WIN32;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<PrecompiledHeader>
</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
</ItemDefinitionGroup>
<ItemGroup>
#include "gdk-win32.vs10.sourcefiles"
</ItemGroup>
<ItemGroup>
<CustomBuild Include="..\..\..\config.h.win32">
<Message Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Copying config.h from config.h.win32...</Message>
<Command Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(CopyConfigH)</Command>
<Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">..\..\..\config.h;%(Outputs)</Outputs>
<Message Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">Copying config.h from config.h.win32...</Message>
<Command Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(CopyConfigH)</Command>
<Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">..\..\..\config.h;%(Outputs)</Outputs>
<Message Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Copying config.h from config.h.win32...</Message>
<Command Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(CopyConfigH)</Command>
<Outputs Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">..\..\..\config.h;%(Outputs)</Outputs>
<Message Condition="'$(Configuration)|$(Platform)'=='Release|x64'">Copying config.h from config.h.win32...</Message>
<Command Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(CopyConfigH)</Command>
<Outputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">..\..\..\config.h;%(Outputs)</Outputs>
</CustomBuild>
<CustomBuild Include="..\..\..\gdk\gdkconfig.h.win32">
<Message Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Copying gdkconfig from gdkconfig.win32...</Message>
<Command Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(CopyGdkConfigH)</Command>
<Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">..\..\..\gdk\gdkconfig.h;%(Outputs)</Outputs>
<Message Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">Copying gdkconfig from gdkconfig.win32...</Message>
<Command Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(CopyGdkConfigH)</Command>
<Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">..\..\..\gdk\gdkconfig.h;%(Outputs)</Outputs>
<Message Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Copying gdkconfig from gdkconfig.win32...</Message>
<Command Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(CopyGdkConfigH)</Command>
<Outputs Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">..\..\..\gdk\gdkconfig.h;%(Outputs)</Outputs>
<Message Condition="'$(Configuration)|$(Platform)'=='Release|x64'">Copying gdkconfig from gdkconfig.win32...</Message>
<Command Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(CopyGdkConfigH)</Command>
<Outputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">..\..\..\gdk\gdkconfig.h;%(Outputs)</Outputs>
</CustomBuild>
</ItemGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
<ImportGroup Label="ExtensionTargets">
</ImportGroup>
</Project>
+30
View File
@@ -0,0 +1,30 @@
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ItemGroup>
<Filter Include="Header Files">
<UniqueIdentifier>{93995380-89BD-4b04-88EB-625FBE52EBFB}</UniqueIdentifier>
<Extensions>h;hpp;hxx;hm;inl;inc;xsd</Extensions>
</Filter>
<Filter Include="Resource Files">
<UniqueIdentifier>{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}</UniqueIdentifier>
<Extensions>rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx</Extensions>
</Filter>
<Filter Include="Source Files">
<UniqueIdentifier>{4FC737F1-C7A5-4376-A066-2A32D752A2FF}</UniqueIdentifier>
<Extensions>cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
</Filter>
</ItemGroup>
<ItemGroup>
<ResourceCompile Include="..\..\..\gdk\win32\rc\gdk.rc">
<Filter>Resource Files</Filter>
</ResourceCompile>
</ItemGroup>
<ItemGroup>
#include "gdk.vs10.sourcefiles.filters"
</ItemGroup>
<ItemGroup>
<CustomBuild Include="..\..\..\gdk\gdk.symbols">
<Filter>Resource Files</Filter>
</CustomBuild>
</ItemGroup>
</Project>
+198
View File
@@ -0,0 +1,198 @@
<?xml version="1.0" encoding="utf-8"?>
<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ItemGroup Label="ProjectConfigurations">
<ProjectConfiguration Include="Debug|Win32">
<Configuration>Debug</Configuration>
<Platform>Win32</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include="Debug|x64">
<Configuration>Debug</Configuration>
<Platform>x64</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include="Release|Win32">
<Configuration>Release</Configuration>
<Platform>Win32</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include="Release|x64">
<Configuration>Release</Configuration>
<Platform>x64</Platform>
</ProjectConfiguration>
</ItemGroup>
<PropertyGroup Label="Globals">
<ProjectGuid>{FC5AADB5-95CD-4BF0-BA8B-0C16FE7073F7}</ProjectGuid>
<RootNamespace>gdk</RootNamespace>
<Keyword>Win32Proj</Keyword>
</PropertyGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
<ConfigurationType>DynamicLibrary</ConfigurationType>
<CharacterSet>MultiByte</CharacterSet>
<PlatformToolset>v100</PlatformToolset>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
<ConfigurationType>DynamicLibrary</ConfigurationType>
<CharacterSet>MultiByte</CharacterSet>
<PlatformToolset>v100</PlatformToolset>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
<ConfigurationType>DynamicLibrary</ConfigurationType>
<CharacterSet>MultiByte</CharacterSet>
<PlatformToolset>v100</PlatformToolset>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
<ConfigurationType>DynamicLibrary</ConfigurationType>
<CharacterSet>MultiByte</CharacterSet>
<PlatformToolset>v100</PlatformToolset>
</PropertyGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
<ImportGroup Label="ExtensionSettings">
</ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
<Import Project="gtk-gen-srcs.props" />
</ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
<Import Project="gtk-gen-srcs.props" />
</ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
<Import Project="gtk-gen-srcs.props" />
</ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
<Import Project="gtk-gen-srcs.props" />
</ImportGroup>
<PropertyGroup Label="UserMacros" />
<PropertyGroup>
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</LinkIncremental>
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</LinkIncremental>
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</LinkIncremental>
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</LinkIncremental>
</PropertyGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
<ClCompile>
<Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>..\..\..\gdk;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<PreprocessorDefinitions>_DEBUG;G_ENABLE_DEBUG;$(GdkDefines);%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<PrecompiledHeader>
</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
<DebugInformationFormat>EditAndContinue</DebugInformationFormat>
</ClCompile>
<Link>
<AdditionalDependencies>imm32.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>$(OutDir)$(GtkDllPrefix)$(ProjectName)-win32$(GtkDllSuffix).dll</OutputFile>
<ModuleDefinitionFile>$(IntDir)gdk.def</ModuleDefinitionFile>
<GenerateDebugInformation>true</GenerateDebugInformation>
<ProgramDatabaseFile>$(OutDir)$(GtkDllPrefix)$(ProjectName)-win32$(GtkDllSuffix).pdb</ProgramDatabaseFile>
<SubSystem>Windows</SubSystem>
<ImportLibrary>$(TargetDir)$(ProjectName)-win32-$(ApiVersion).lib</ImportLibrary>
<TargetMachine>MachineX86</TargetMachine>
</Link>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
<ClCompile>
<AdditionalIncludeDirectories>..\..\..\gdk;..\..\..\gdk\win32;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<PreprocessorDefinitions>$(GdkDefines);%(PreprocessorDefinitions)</PreprocessorDefinitions>
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<PrecompiledHeader>
</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<Link>
<AdditionalDependencies>imm32.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>$(OutDir)$(GtkDllPrefix)$(ProjectName)-win32$(GtkDllSuffix).dll</OutputFile>
<ModuleDefinitionFile>$(IntDir)gdk.def</ModuleDefinitionFile>
<GenerateDebugInformation>true</GenerateDebugInformation>
<ProgramDatabaseFile>$(OutDir)$(GtkDllPrefix)$(ProjectName)-win32$(GtkDllSuffix).pdb</ProgramDatabaseFile>
<SubSystem>Windows</SubSystem>
<OptimizeReferences>true</OptimizeReferences>
<EnableCOMDATFolding>true</EnableCOMDATFolding>
<ImportLibrary>$(TargetDir)$(ProjectName)-win32-$(ApiVersion).lib</ImportLibrary>
<TargetMachine>MachineX86</TargetMachine>
</Link>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
<ClCompile>
<Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>..\..\..\gdk;..\..\..\gdk\win32;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<PreprocessorDefinitions>_DEBUG;G_ENABLE_DEBUG;$(GdkDefines);%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<PrecompiledHeader>
</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<Link>
<AdditionalDependencies>imm32.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>$(OutDir)$(GtkDllPrefix)$(ProjectName)-win32$(GtkDllSuffix).dll</OutputFile>
<ModuleDefinitionFile>$(IntDir)gdk.def</ModuleDefinitionFile>
<GenerateDebugInformation>true</GenerateDebugInformation>
<ProgramDatabaseFile>$(OutDir)$(GtkDllPrefix)$(ProjectName)-win32$(GtkDllSuffix).pdb</ProgramDatabaseFile>
<SubSystem>Windows</SubSystem>
<ImportLibrary>$(TargetDir)$(ProjectName)-win32-$(ApiVersion).lib</ImportLibrary>
<TargetMachine>MachineX64</TargetMachine>
</Link>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
<ClCompile>
<AdditionalIncludeDirectories>..\..\..\gdk;..\..\..\gdk\win32;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<PreprocessorDefinitions>$(GdkDefines);%(PreprocessorDefinitions)</PreprocessorDefinitions>
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<PrecompiledHeader>
</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<Link>
<AdditionalDependencies>imm32.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>$(OutDir)$(GtkDllPrefix)$(ProjectName)-win32$(GtkDllSuffix).dll</OutputFile>
<ModuleDefinitionFile>$(IntDir)gdk.def</ModuleDefinitionFile>
<GenerateDebugInformation>true</GenerateDebugInformation>
<ProgramDatabaseFile>$(OutDir)$(GtkDllPrefix)$(ProjectName)-win32$(GtkDllSuffix).pdb</ProgramDatabaseFile>
<SubSystem>Windows</SubSystem>
<OptimizeReferences>true</OptimizeReferences>
<EnableCOMDATFolding>true</EnableCOMDATFolding>
<ImportLibrary>$(TargetDir)$(ProjectName)-win32-$(ApiVersion).lib</ImportLibrary>
<TargetMachine>MachineX64</TargetMachine>
</Link>
</ItemDefinitionGroup>
<ItemGroup>
<CustomBuild Include="..\..\..\gdk\gdk.symbols">
<Message Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Generating gdk.def</Message>
<Command Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(GtkGenerateGdkDef)</Command>
<Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(IntDir)gdk.def;%(Outputs)</Outputs>
<Message Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">Generating gdk.def</Message>
<Command Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(GtkGenerateGdkDef)</Command>
<Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(IntDir)gdk.def;%(Outputs)</Outputs>
<Message Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Generating gdk.def</Message>
<Command Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(GtkGenerateGdkDef)</Command>
<Outputs Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(IntDir)gdk.def;%(Outputs)</Outputs>
<Message Condition="'$(Configuration)|$(Platform)'=='Release|x64'">Generating gdk.def</Message>
<Command Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(GtkGenerateGdkDef)</Command>
<Outputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(IntDir)gdk.def;%(Outputs)</Outputs>
</CustomBuild>
</ItemGroup>
<ItemGroup>
<ResourceCompile Include="..\..\..\gdk\win32\rc\gdk.rc" />
</ItemGroup>
<ItemGroup>
#include "gdk.vs10.sourcefiles"
</ItemGroup>
<ItemGroup>
<ProjectReference Include="gdk-win32.vcxproj">
<Project>{fc5aadb5-95cd-4bf0-ba8b-0c16fe7073fa}</Project>
<ReferenceOutputAssembly>false</ReferenceOutputAssembly>
</ProjectReference>
</ItemGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
<ImportGroup Label="ExtensionTargets">
</ImportGroup>
</Project>
+95
View File
@@ -0,0 +1,95 @@
Microsoft Visual Studio Solution File, Format Version 11.00
# Visual Studio 2010
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "gdk-win32", "gdk-win32.vcxproj", "{FC5AADB5-95CD-4BF0-BA8B-0C16FE7073FA}"
EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "gdk", "gdk.vcxproj", "{FC5AADB5-95CD-4BF0-BA8B-0C16FE7073F7}"
EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "gtk", "gtk.vcxproj", "{FC5AADB5-95CD-4BF0-BA8B-0C16FE7073F5}"
EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "gtk-demo", "gtk-demo.vcxproj", "{FC5AADB5-95CD-4BF0-BA8B-0C16FE7073FC}"
EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "gailutil", "gailutil.vcxproj", "{B3B6558A-01C8-4C72-9BDE-84ABB1AE67DF}"
EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libwimp", "libwimp.vcxproj", "{7660FB4E-2AE6-483E-8813-0974CBE6F97F}"
EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "gtk-update-icon-cache", "gtk-update-icon-cache.vcxproj", "{FAB0AD6F-AEBF-4AF8-A1CC-6890A9090945}"
EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "gtk-install", "gtk-install.vcxproj", "{FC5AADB5-95CD-4BF0-BA8B-0C16FE8073FB}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Win32 = Debug|Win32
Debug|x64 = Debug|x64
Release|Win32 = Release|Win32
Release|x64 = Release|x64
EndGlobalSection
GlobalSection(ProjectConfigurationPlatforms) = postSolution
{FC5AADB5-95CD-4BF0-BA8B-0C16FE7073FA}.Debug|Win32.ActiveCfg = Debug|Win32
{FC5AADB5-95CD-4BF0-BA8B-0C16FE7073FA}.Debug|Win32.Build.0 = Debug|Win32
{FC5AADB5-95CD-4BF0-BA8B-0C16FE7073FA}.Debug|x64.ActiveCfg = Debug|x64
{FC5AADB5-95CD-4BF0-BA8B-0C16FE7073FA}.Debug|x64.Build.0 = Debug|x64
{FC5AADB5-95CD-4BF0-BA8B-0C16FE7073FA}.Release|Win32.ActiveCfg = Release|Win32
{FC5AADB5-95CD-4BF0-BA8B-0C16FE7073FA}.Release|Win32.Build.0 = Release|Win32
{FC5AADB5-95CD-4BF0-BA8B-0C16FE7073FA}.Release|x64.ActiveCfg = Release|x64
{FC5AADB5-95CD-4BF0-BA8B-0C16FE7073FA}.Release|x64.Build.0 = Release|x64
{FC5AADB5-95CD-4BF0-BA8B-0C16FE7073F7}.Debug|Win32.ActiveCfg = Debug|Win32
{FC5AADB5-95CD-4BF0-BA8B-0C16FE7073F7}.Debug|Win32.Build.0 = Debug|Win32
{FC5AADB5-95CD-4BF0-BA8B-0C16FE7073F7}.Debug|x64.ActiveCfg = Debug|x64
{FC5AADB5-95CD-4BF0-BA8B-0C16FE7073F7}.Debug|x64.Build.0 = Debug|x64
{FC5AADB5-95CD-4BF0-BA8B-0C16FE7073F7}.Release|Win32.ActiveCfg = Release|Win32
{FC5AADB5-95CD-4BF0-BA8B-0C16FE7073F7}.Release|Win32.Build.0 = Release|Win32
{FC5AADB5-95CD-4BF0-BA8B-0C16FE7073F7}.Release|x64.ActiveCfg = Release|x64
{FC5AADB5-95CD-4BF0-BA8B-0C16FE7073F7}.Release|x64.Build.0 = Release|x64
{FC5AADB5-95CD-4BF0-BA8B-0C16FE7073F5}.Debug|Win32.ActiveCfg = Debug|Win32
{FC5AADB5-95CD-4BF0-BA8B-0C16FE7073F5}.Debug|Win32.Build.0 = Debug|Win32
{FC5AADB5-95CD-4BF0-BA8B-0C16FE7073F5}.Debug|x64.ActiveCfg = Debug|x64
{FC5AADB5-95CD-4BF0-BA8B-0C16FE7073F5}.Debug|x64.Build.0 = Debug|x64
{FC5AADB5-95CD-4BF0-BA8B-0C16FE7073F5}.Release|Win32.ActiveCfg = Release|Win32
{FC5AADB5-95CD-4BF0-BA8B-0C16FE7073F5}.Release|Win32.Build.0 = Release|Win32
{FC5AADB5-95CD-4BF0-BA8B-0C16FE7073F5}.Release|x64.ActiveCfg = Release|x64
{FC5AADB5-95CD-4BF0-BA8B-0C16FE7073F5}.Release|x64.Build.0 = Release|x64
{FC5AADB5-95CD-4BF0-BA8B-0C16FE7073FC}.Debug|Win32.ActiveCfg = Debug|Win32
{FC5AADB5-95CD-4BF0-BA8B-0C16FE7073FC}.Debug|Win32.Build.0 = Debug|Win32
{FC5AADB5-95CD-4BF0-BA8B-0C16FE7073FC}.Debug|x64.ActiveCfg = Debug|x64
{FC5AADB5-95CD-4BF0-BA8B-0C16FE7073FC}.Debug|x64.Build.0 = Debug|x64
{FC5AADB5-95CD-4BF0-BA8B-0C16FE7073FC}.Release|Win32.ActiveCfg = Release|Win32
{FC5AADB5-95CD-4BF0-BA8B-0C16FE7073FC}.Release|Win32.Build.0 = Release|Win32
{FC5AADB5-95CD-4BF0-BA8B-0C16FE7073FC}.Release|x64.ActiveCfg = Release|x64
{FC5AADB5-95CD-4BF0-BA8B-0C16FE7073FC}.Release|x64.Build.0 = Release|x64
{B3B6558A-01C8-4C72-9BDE-84ABB1AE67DF}.Debug|Win32.ActiveCfg = Debug|Win32
{B3B6558A-01C8-4C72-9BDE-84ABB1AE67DF}.Debug|Win32.Build.0 = Debug|Win32
{B3B6558A-01C8-4C72-9BDE-84ABB1AE67DF}.Debug|x64.ActiveCfg = Debug|x64
{B3B6558A-01C8-4C72-9BDE-84ABB1AE67DF}.Debug|x64.Build.0 = Debug|x64
{B3B6558A-01C8-4C72-9BDE-84ABB1AE67DF}.Release|Win32.ActiveCfg = Release|Win32
{B3B6558A-01C8-4C72-9BDE-84ABB1AE67DF}.Release|Win32.Build.0 = Release|Win32
{B3B6558A-01C8-4C72-9BDE-84ABB1AE67DF}.Release|x64.ActiveCfg = Release|x64
{B3B6558A-01C8-4C72-9BDE-84ABB1AE67DF}.Release|x64.Build.0 = Release|x64
{7660FB4E-2AE6-483E-8813-0974CBE6F97F}.Debug|Win32.ActiveCfg = Debug|Win32
{7660FB4E-2AE6-483E-8813-0974CBE6F97F}.Debug|Win32.Build.0 = Debug|Win32
{7660FB4E-2AE6-483E-8813-0974CBE6F97F}.Debug|x64.ActiveCfg = Debug|x64
{7660FB4E-2AE6-483E-8813-0974CBE6F97F}.Debug|x64.Build.0 = Debug|x64
{7660FB4E-2AE6-483E-8813-0974CBE6F97F}.Release|Win32.ActiveCfg = Release|Win32
{7660FB4E-2AE6-483E-8813-0974CBE6F97F}.Release|Win32.Build.0 = Release|Win32
{7660FB4E-2AE6-483E-8813-0974CBE6F97F}.Release|x64.ActiveCfg = Release|x64
{7660FB4E-2AE6-483E-8813-0974CBE6F97F}.Release|x64.Build.0 = Release|x64
{FAB0AD6F-AEBF-4AF8-A1CC-6890A9090945}.Debug|Win32.ActiveCfg = Debug|Win32
{FAB0AD6F-AEBF-4AF8-A1CC-6890A9090945}.Debug|Win32.Build.0 = Debug|Win32
{FAB0AD6F-AEBF-4AF8-A1CC-6890A9090945}.Debug|x64.ActiveCfg = Debug|x64
{FAB0AD6F-AEBF-4AF8-A1CC-6890A9090945}.Debug|x64.Build.0 = Debug|x64
{FAB0AD6F-AEBF-4AF8-A1CC-6890A9090945}.Release|Win32.ActiveCfg = Release|Win32
{FAB0AD6F-AEBF-4AF8-A1CC-6890A9090945}.Release|Win32.Build.0 = Release|Win32
{FAB0AD6F-AEBF-4AF8-A1CC-6890A9090945}.Release|x64.ActiveCfg = Release|x64
{FAB0AD6F-AEBF-4AF8-A1CC-6890A9090945}.Release|x64.Build.0 = Release|x64
{FC5AADB5-95CD-4BF0-BA8B-0C16FE8073FB}.Debug|Win32.ActiveCfg = Debug|Win32
{FC5AADB5-95CD-4BF0-BA8B-0C16FE8073FB}.Debug|Win32.Build.0 = Debug|Win32
{FC5AADB5-95CD-4BF0-BA8B-0C16FE8073FB}.Debug|x64.ActiveCfg = Debug|x64
{FC5AADB5-95CD-4BF0-BA8B-0C16FE8073FB}.Debug|x64.Build.0 = Debug|x64
{FC5AADB5-95CD-4BF0-BA8B-0C16FE8073FB}.Release|Win32.ActiveCfg = Release|Win32
{FC5AADB5-95CD-4BF0-BA8B-0C16FE8073FB}.Release|Win32.Build.0 = Release|Win32
{FC5AADB5-95CD-4BF0-BA8B-0C16FE8073FB}.Release|x64.ActiveCfg = Release|x64
{FC5AADB5-95CD-4BF0-BA8B-0C16FE8073FB}.Release|x64.Build.0 = Release|x64
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
EndGlobalSection
EndGlobal
+56
View File
@@ -0,0 +1,56 @@
<?xml version="1.0" encoding="utf-8"?>
<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ImportGroup Label="PropertySheets">
<Import Project="gtk-version-paths.props" />
</ImportGroup>
<PropertyGroup Label="UserMacros">
<GtkBinaryVersion>2.10.0</GtkBinaryVersion>
<GtkDummyPrefix>\"/dummy\"</GtkDummyPrefix>
<GtkHost>i686-pc-vs$(VSVer)</GtkHost>
<GdkDefines>GDK_COMPILATION;G_LOG_DOMAIN="Gdk"</GdkDefines>
<GtkIncludedImmodulesDefines>INCLUDE_IM_am_et;INCLUDE_IM_cedilla;INCLUDE_IM_cyrillic_translit;INCLUDE_IM_ime;INCLUDE_IM_inuktitut;INCLUDE_IM_ipa;INCLUDE_IM_multipress;INCLUDE_IM_thai;INCLUDE_IM_ti_er;INCLUDE_IM_ti_et;INCLUDE_IM_viqr</GtkIncludedImmodulesDefines>
<GtkDefines>GTK_COMPILATION;G_LOG_DOMAIN="Gtk";GTK_HOST="$(GtkHost)";GTK_PRINT_BACKENDS="file";GTK_PRINT_PREVIEW_COMMAND="undefined-gtk-print-preview-command";$(GtkIncludedImmodulesDefines);GTK_LIBDIR="$(GtkDummyPrefix)/lib";GTK_DATADIR="$(GtkDummyPrefix)/share";GTK_DATA_PREFIX="$(GtkDummyPrefix)";GTK_SYSCONFDIR="$(GtkDummyPrefix)/etc";MULTIPRESS_CONFDIR="$(GtkDummyPrefix)/etc/gtk-$(ApiVersion)";MULTIPRESS_LOCALEDIR="$(GtkDummyPrefix)/share/locale";GTK_VERSION="$(GtkVersion)/etc";GTK_BINARY_VERSION="$(GtkBinaryVersion)/etc"</GtkDefines>
</PropertyGroup>
<PropertyGroup>
<_PropertySheetDisplayName>gtkbuilddefinesprops</_PropertySheetDisplayName>
<OutDir>$(SolutionDir)$(Configuration)\$(PlatformName)\bin\</OutDir>
<IntDir>$(SolutionDir)$(Configuration)\$(PlatformName)\obj\$(ProjectName)\</IntDir>
</PropertyGroup>
<ItemDefinitionGroup>
<ClCompile>
<AdditionalIncludeDirectories>..\..\..;$(GlibEtcInstallRoot)\include\gdk-pixbuf-2.0;$(GlibEtcInstallRoot)\include\pango-1.0;$(GlibEtcInstallRoot)\include\atk-1.0;$(GlibEtcInstallRoot)\include\gio-win32-2.0;$(GlibEtcInstallRoot)\include\glib-2.0;$(GlibEtcInstallRoot)\lib\glib-2.0\include;$(GlibEtcInstallRoot)\include\cairo;$(GlibEtcInstallRoot)\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<PreprocessorDefinitions>HAVE_CONFIG_H;G_DISABLE_SINGLE_INCLUDES;ATK_DISABLE_SINGLE_INCLUDES;GDK_PIXBUF_DISABLE_SINGLE_INCLUDES;GTK_DISABLE_SINGLE_INCLUDES;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<ForcedIncludeFiles>msvc_recommended_pragmas.h;%(ForcedIncludeFiles)</ForcedIncludeFiles>
<MultiProcessorCompilation>true</MultiProcessorCompilation>
<AdditionalOptions>/d2Zi+ %(AdditionalOptions)</AdditionalOptions>
</ClCompile>
<Link>
<AdditionalDependencies>pangocairo-1.0.lib;cairo.lib;pango-1.0.lib;gdk_pixbuf-2.0.lib;gio-2.0.lib;gmodule-2.0.lib;gobject-2.0.lib;glib-2.0.lib;intl.lib;%(AdditionalDependencies)</AdditionalDependencies>
<AdditionalLibraryDirectories>$(GlibEtcInstallRoot)\lib;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<AdditionalOptions Condition="'$(VisualStudioVersion)|$(Platform)'=='11.0|x64'">/HIGHENTROPYVA %(AdditionalOptions)</AdditionalOptions>
<AdditionalOptions Condition="'$(VisualStudioVersion)|$(Platform)'=='12.0|x64'">/HIGHENTROPYVA %(AdditionalOptions)</AdditionalOptions>
<AdditionalOptions Condition="'$(VisualStudioVersion)|$(Platform)'=='14.0|x64'">/HIGHENTROPYVA %(AdditionalOptions)</AdditionalOptions>
<AdditionalOptions Condition="'$(VisualStudioVersion)|$(Platform)'=='15.0|x64'">/HIGHENTROPYVA %(AdditionalOptions)</AdditionalOptions>
</Link>
</ItemDefinitionGroup>
<ItemGroup>
<BuildMacro Include="GtkBinaryVersion">
<Value>$(GtkBinaryVersion)</Value>
</BuildMacro>
<BuildMacro Include="GtkDummyPrefix">
<Value>$(GtkDummyPrefix)</Value>
</BuildMacro>
<BuildMacro Include="GdkDefines">
<Value>$(GdkDefines)</Value>
</BuildMacro>
<BuildMacro Include="GtkHost">
<Value>$(GtkHost)</Value>
</BuildMacro>
<BuildMacro Include="GtkIncludedImmodulesDefines">
<Value>$(GtkIncludedImmodulesDefines)</Value>
</BuildMacro>
<BuildMacro Include="GtkDefines">
<Value>$(GtkDefines)</Value>
</BuildMacro>
</ItemGroup>
</Project>
@@ -0,0 +1,16 @@
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ItemGroup>
<Filter Include="Source Files">
<UniqueIdentifier>{4FC737F1-C7A5-4376-A066-2A32D752A2FF}</UniqueIdentifier>
<Extensions>cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
</Filter>
<Filter Include="Header Files">
<UniqueIdentifier>{93995380-89BD-4b04-88EB-625FBE52EBFB}</UniqueIdentifier>
<Extensions>h;hpp;hxx;hm;inl;inc;xsd</Extensions>
</Filter>
</ItemGroup>
<ItemGroup>
#include "gtk-demo.vs10.sourcefiles.filters"
</ItemGroup>
</Project>
+181
View File
@@ -0,0 +1,181 @@
<?xml version="1.0" encoding="utf-8"?>
<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ItemGroup Label="ProjectConfigurations">
<ProjectConfiguration Include="Debug|Win32">
<Configuration>Debug</Configuration>
<Platform>Win32</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include="Debug|x64">
<Configuration>Debug</Configuration>
<Platform>x64</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include="Release|Win32">
<Configuration>Release</Configuration>
<Platform>Win32</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include="Release|x64">
<Configuration>Release</Configuration>
<Platform>x64</Platform>
</ProjectConfiguration>
</ItemGroup>
<PropertyGroup Label="Globals">
<ProjectGuid>{FC5AADB5-95CD-4BF0-BA8B-0C16FE7073FC}</ProjectGuid>
<RootNamespace>gtkdemo</RootNamespace>
<Keyword>Win32Proj</Keyword>
</PropertyGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
<ConfigurationType>Application</ConfigurationType>
<CharacterSet>MultiByte</CharacterSet>
<WholeProgramOptimization>true</WholeProgramOptimization>
<PlatformToolset>v100</PlatformToolset>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
<ConfigurationType>Application</ConfigurationType>
<CharacterSet>MultiByte</CharacterSet>
<PlatformToolset>v100</PlatformToolset>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
<ConfigurationType>Application</ConfigurationType>
<CharacterSet>MultiByte</CharacterSet>
<WholeProgramOptimization>true</WholeProgramOptimization>
<PlatformToolset>v100</PlatformToolset>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
<ConfigurationType>Application</ConfigurationType>
<CharacterSet>MultiByte</CharacterSet>
<PlatformToolset>v100</PlatformToolset>
</PropertyGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
<ImportGroup Label="ExtensionSettings">
</ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
<Import Project="gtk-build-defines.props" />
</ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
<Import Project="gtk-build-defines.props" />
</ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
<Import Project="gtk-build-defines.props" />
</ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
<Import Project="gtk-build-defines.props" />
</ImportGroup>
<PropertyGroup Label="UserMacros" />
<PropertyGroup>
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</LinkIncremental>
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</LinkIncremental>
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">false</LinkIncremental>
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|x64'">false</LinkIncremental>
</PropertyGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
<ClCompile>
<Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>..\..\..\gdk-pixbuf;..\..\..\gdk;..\..\..\gtk;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<PreprocessorDefinitions>_DEBUG;G_ENABLE_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<PrecompiledHeader>
</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
<DebugInformationFormat>EditAndContinue</DebugInformationFormat>
<CompileAs>CompileAsC</CompileAs>
</ClCompile>
<Link>
<AdditionalDependencies>cairo.lib;pango-1.0.lib;pangocairo-1.0.lib;%(AdditionalDependencies)</AdditionalDependencies>
<GenerateDebugInformation>true</GenerateDebugInformation>
<SubSystem>Console</SubSystem>
<DataExecutionPrevention>
</DataExecutionPrevention>
<TargetMachine>MachineX86</TargetMachine>
</Link>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
<ClCompile>
<Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>..\..\..\gdk-pixbuf;..\..\..\gdk;..\..\..\gtk;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<PreprocessorDefinitions>_DEBUG;G_ENABLE_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<PrecompiledHeader>
</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
<CompileAs>CompileAsC</CompileAs>
</ClCompile>
<Link>
<AdditionalDependencies>cairo.lib;pango-1.0.lib;pangocairo-1.0.lib;%(AdditionalDependencies)</AdditionalDependencies>
<GenerateDebugInformation>true</GenerateDebugInformation>
<SubSystem>Console</SubSystem>
<DataExecutionPrevention>
</DataExecutionPrevention>
<TargetMachine>MachineX64</TargetMachine>
</Link>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
<ClCompile>
<AdditionalIncludeDirectories>..\..\..\gdk-pixbuf;..\..\..\gdk;..\..\..\gtk;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<PreprocessorDefinitions>%(PreprocessorDefinitions)</PreprocessorDefinitions>
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<PrecompiledHeader>
</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
<CompileAs>CompileAsC</CompileAs>
</ClCompile>
<Link>
<AdditionalDependencies>cairo.lib;pango-1.0.lib;pangocairo-1.0.lib;%(AdditionalDependencies)</AdditionalDependencies>
<GenerateDebugInformation>true</GenerateDebugInformation>
<SubSystem>Console</SubSystem>
<OptimizeReferences>true</OptimizeReferences>
<EnableCOMDATFolding>true</EnableCOMDATFolding>
<DataExecutionPrevention>
</DataExecutionPrevention>
<TargetMachine>MachineX86</TargetMachine>
</Link>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
<ClCompile>
<AdditionalIncludeDirectories>..\..\..\gdk-pixbuf;..\..\..\gdk;..\..\..\gtk;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<PreprocessorDefinitions>%(PreprocessorDefinitions)</PreprocessorDefinitions>
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<PrecompiledHeader>
</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
<CompileAs>CompileAsC</CompileAs>
</ClCompile>
<Link>
<AdditionalDependencies>cairo.lib;pango-1.0.lib;pangocairo-1.0.lib;%(AdditionalDependencies)</AdditionalDependencies>
<GenerateDebugInformation>true</GenerateDebugInformation>
<SubSystem>Console</SubSystem>
<OptimizeReferences>true</OptimizeReferences>
<EnableCOMDATFolding>true</EnableCOMDATFolding>
<DataExecutionPrevention>
</DataExecutionPrevention>
<TargetMachine>MachineX64</TargetMachine>
</Link>
</ItemDefinitionGroup>
<ItemGroup>
#include "gtk-demo.vs10.sourcefiles"
</ItemGroup>
<ItemGroup>
<ProjectReference Include="gdk.vcxproj">
<Project>{fc5aadb5-95cd-4bf0-ba8b-0c16fe7073f7}</Project>
<ReferenceOutputAssembly>false</ReferenceOutputAssembly>
</ProjectReference>
<ProjectReference Include="gtk.vcxproj">
<Project>{fc5aadb5-95cd-4bf0-ba8b-0c16fe7073f5}</Project>
<ReferenceOutputAssembly>false</ReferenceOutputAssembly>
</ProjectReference>
</ItemGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
<ImportGroup Label="ExtensionTargets">
</ImportGroup>
</Project>
+35
View File
@@ -0,0 +1,35 @@
<?xml version="1.0" encoding="utf-8"?>
<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ImportGroup Label="PropertySheets">
<Import Project="gtk-build-defines.props" />
</ImportGroup>
<PropertyGroup Label="UserMacros">
<CopyConfigH>copy ..\..\..\config.h.win32 ..\..\..\config.h</CopyConfigH>
<CopyGdkConfigH>copy ..\..\..\gdk\gdkconfig.h.win32 ..\..\..\gdk\gdkconfig.h</CopyGdkConfigH>
<GtkGenerateGdkDef>
echo EXPORTS &gt; $(DefDir)\gdk.def
cl /EP -DGDK_WINDOWING_WIN32 -DALL_FILES -DG_GNUC_CONST= ..\..\..\gdk\gdk.symbols &gt;&gt; $(DefDir)\gdk.def
</GtkGenerateGdkDef>
<GtkGenerateGtkDef>
echo EXPORTS &gt; $(DefDir)\gtk.def
cl /EP -DINCLUDE_VARIABLES -DG_OS_WIN32 -DALL_FILES -DG_GNUC_MALLOC= -DG_GNUC_CONST= -DG_GNUC_NULL_TERMINATED= -DG_GNUC_PRINTF=;G_GNUC_PRINTF ..\..\..\gtk\gtk.symbols &gt;&gt; $(DefDir)\gtk.def
</GtkGenerateGtkDef>
</PropertyGroup>
<PropertyGroup>
<_PropertySheetDisplayName>gtkgensrcsprops</_PropertySheetDisplayName>
</PropertyGroup>
<ItemGroup>
<BuildMacro Include="CopyConfigH">
<Value>$(CopyConfigH)</Value>
</BuildMacro>
<BuildMacro Include="CopyGdkConfigH">
<Value>$(CopyGdkConfigH)</Value>
</BuildMacro>
<BuildMacro Include="GtkGenerateGdkDef">
<Value>$(GtkGenerateGdkDef)</Value>
</BuildMacro>
<BuildMacro Include="GtkGenerateGtkDef">
<Value>$(GtkGenerateGtkDef)</Value>
</BuildMacro>
</ItemGroup>
</Project>
+103
View File
@@ -0,0 +1,103 @@
<?xml version="1.0" encoding="utf-8"?>
<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ImportGroup Label="PropertySheets">
<Import Project="gtk-build-defines.props" />
</ImportGroup>
<PropertyGroup Label="UserMacros">
<BinDir>$(SolutionDir)$(Configuration)\$(Platform)\bin</BinDir>
<InstalledDlls>$(BinDir)\$(GtkDllPrefix)gdk-win32(GtkDllSuffix).dll;$(BinDir)\$(GtkDllPrefix)gtk-win32(GtkDllSuffix).dll;$(BinDir)\libwimp.dll</InstalledDlls>
<InstalledBins>$(BinDir)\gtk-demo.exe</InstalledBins>
<GtkDoInstall>
mkdir $(CopyDir)\bin
copy "$(BinDir)\$(GtkDllPrefix)gdk-win32$(GtkDllSuffix).dll" $(CopyDir)\bin
copy "$(BinDir)\$(GtkDllPrefix)gdk-win32$(GtkDllSuffix).pdb" $(CopyDir)\bin
copy "$(BinDir)\$(GtkDllPrefix)gtk-win32$(GtkDllSuffix).dll" $(CopyDir)\bin
copy "$(BinDir)\$(GtkDllPrefix)gtk-win32$(GtkDllSuffix).pdb" $(CopyDir)\bin
copy "$(BinDir)\$(GtkDllPrefix)gailutil$(GtkDllSuffix).dll" $(CopyDir)\bin
copy "$(BinDir)\$(GtkDllPrefix)gailutil$(GtkDllSuffix).pdb" $(CopyDir)\bin
copy "$(BinDir)\gtk-demo.exe" $(CopyDir)\bin
copy "$(BinDir)\gtk-demo.pdb" $(CopyDir)\bin
copy "$(BinDir)\gtk-update-icon-cache.exe" $(CopyDir)\bin
copy "$(BinDir)\gtk-update-icon-cache.pdb" $(CopyDir)\bin
mkdir $(CopyDir)\lib
copy "$(BinDir)\gdk-win32-$(ApiVersion).lib" $(CopyDir)\lib
copy "$(BinDir)\gtk-win32-$(ApiVersion).lib" $(CopyDir)\lib
copy "$(BinDir)\gailutil-$(ApiVersion).lib" $(CopyDir)\lib
mkdir $(CopyDir)\include\gtk-$(ApiVersion)\gdk
#include "gdk.vs10.headers"
#include "gdk-win32.vs10.headers"
mkdir $(CopyDir)\include\gtk-$(ApiVersion)\gtk
#include "gtk.vs10.headers"
mkdir $(CopyDir)\lib\gtk-$(ApiVersion)\include
copy ..\..\..\gdk\gdkconfig.h $(CopyDir)\lib\gtk-$(ApiVersion)\include
mkdir $(CopyDir)\include\gail-1.0\libgail-util
#include "gailutil.vs10.headers"
mkdir $(CopyDir)\lib\gtk-$(ApiVersion)\$(GtkHost)\engines
copy "$(BinDir)\libwimp.dll" $(CopyDir)\lib\gtk-$(ApiVersion)\$(GtkHost)\engines
copy "$(BinDir)\libwimp.pdb" $(CopyDir)\lib\gtk-$(ApiVersion)\$(GtkHost)\engines
mkdir $(CopyDir)\share\gtk-$(ApiVersion)\demo
copy ..\..\..\demos\gtk-demo\*.png $(CopyDir)\share\gtk-$(ApiVersion)\demo
copy ..\..\..\demos\gtk-demo\*.gif $(CopyDir)\share\gtk-$(ApiVersion)\demo
copy ..\..\..\demos\gtk-demo\*.ui $(CopyDir)\share\gtk-$(ApiVersion)\demo
copy ..\..\..\demos\gtk-demo\*.jpg $(CopyDir)\share\gtk-$(ApiVersion)\demo
copy ..\..\..\demos\gtk-demo\*.c $(CopyDir)\share\gtk-$(ApiVersion)\demo
copy ..\..\..\demos\gtk-demo\*.h $(CopyDir)\share\gtk-$(ApiVersion)\demo
mkdir $(CopyDir)\share\themes\Default\gtk-2.0-key
copy ..\..\..\gtk\gtkrc.key.default $(CopyDir)\share\themes\Default\gtk-2.0-key\gtkrc
mkdir $(CopyDir)\share\themes\Emacs\gtk-2.0-key
copy ..\..\..\gtk\gtkrc.key.emacs $(CopyDir)\share\themes\Emacs\gtk-2.0-key\gtkrc
mkdir $(CopyDir)\share\themes\MS-Windows\gtk-2.0
copy ..\..\..\modules\engines\ms-windows\Theme\gtk-2.0\gtkrc $(CopyDir)\share\themes\MS-Windows\gtk-2.0
mkdir $(CopyDir)\share\themes\Raleigh\gtk-2.0
copy ..\..\..\gtk\gtkrc.default $(CopyDir)\share\themes\Raleigh\gtk-2.0\gtkrc
if exist $(CopyDir)\share\icons\hicolor $(CopyDir)\bin\gtk-update-icon-cache.exe --ignore-theme-index --force "$(CopyDir)\share\icons\hicolor"
if exist ..\gtk+-2.0.pc mkdir $(CopyDir)\lib\pkgconfig
if exist ..\gdk-2.0.pc copy ..\gdk-2.0.pc $(CopyDir)\lib\pkgconfig
if exist ..\gdk-2.0.pc copy ..\gdk-2.0.pc $(CopyDir)\lib\pkgconfig\gdk-win32-2.0.pc
if exist ..\gtk+-2.0.pc copy "..\gtk+-2.0.pc" "$(CopyDir)\lib\pkgconfig"
if exist ..\gtk+-2.0.pc copy "..\gtk+-2.0.pc" "$(CopyDir)\lib\pkgconfig\gtk+-win32-2.0.pc"
</GtkDoInstall>
<GenerateGtkPC>if exist $(PythonPath)\python.exe $(PythonPath)\python ..\gtkpc.py --prefix=$(CopyDir) --version=$(GtkVersion) --host=i686-pc-vs$(VSVer)</GenerateGtkPC>
<GenerateGtkPCX64>if exist $(PythonPathX64)\python.exe $(PythonPathX64)\python ..\gtkpc.py --prefix=$(CopyDir) --version=$(GtkVersion) --host=x86_64-pc-vs$(VSVer)</GenerateGtkPCX64>
<GtkPCFiles>$(SolutionDir)\..\gdk-2.0.pc;$(SolutionDir)\..\gtk+-2.0.pc;$(SolutionDir)\..\gail.pc</GtkPCFiles>
</PropertyGroup>
<PropertyGroup>
<_PropertySheetDisplayName>gtkinstallprops</_PropertySheetDisplayName>
</PropertyGroup>
<ItemGroup>
<BuildMacro Include="BinDir">
<Value>$(BinDir)</Value>
</BuildMacro>
<BuildMacro Include="InstalledDlls">
<Value>$(InstalledDlls)</Value>
</BuildMacro>
<BuildMacro Include="InstalledBins">
<Value>$(InstalledBins)</Value>
</BuildMacro>
<BuildMacro Include="GtkDoInstall">
<Value>$(GtkDoInstall)</Value>
</BuildMacro>
<BuildMacro Include="GenerateGtkPC">
<Value>$(GenerateGtkPC)</Value>
</BuildMacro>
<BuildMacro Include="GenerateGtkPCX64">
<Value>$(GenerateGtkPCX64)</Value>
</BuildMacro>
<BuildMacro Include="GtkPCFiles">
<Value>$(GtkPCFiles)</Value>
</BuildMacro>
</ItemGroup>
</Project>
+150
View File
@@ -0,0 +1,150 @@
<?xml version="1.0" encoding="utf-8"?>
<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ItemGroup Label="ProjectConfigurations">
<ProjectConfiguration Include="Debug|Win32">
<Configuration>Debug</Configuration>
<Platform>Win32</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include="Debug|x64">
<Configuration>Debug</Configuration>
<Platform>x64</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include="Release|Win32">
<Configuration>Release</Configuration>
<Platform>Win32</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include="Release|x64">
<Configuration>Release</Configuration>
<Platform>x64</Platform>
</ProjectConfiguration>
</ItemGroup>
<PropertyGroup Label="Globals">
<ProjectGuid>{FC5AADB5-95CD-4BF0-BA8B-0C16FE8073FB}</ProjectGuid>
<RootNamespace>gtkinstall</RootNamespace>
<Keyword>Win32Proj</Keyword>
</PropertyGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
<ConfigurationType>Utility</ConfigurationType>
<CharacterSet>MultiByte</CharacterSet>
<WholeProgramOptimization>true</WholeProgramOptimization>
<PlatformToolset>v100</PlatformToolset>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
<ConfigurationType>Utility</ConfigurationType>
<CharacterSet>MultiByte</CharacterSet>
<PlatformToolset>v100</PlatformToolset>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
<ConfigurationType>Utility</ConfigurationType>
<CharacterSet>MultiByte</CharacterSet>
<WholeProgramOptimization>true</WholeProgramOptimization>
<PlatformToolset>v100</PlatformToolset>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
<ConfigurationType>Utility</ConfigurationType>
<CharacterSet>MultiByte</CharacterSet>
<PlatformToolset>v100</PlatformToolset>
</PropertyGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
<ImportGroup Label="ExtensionSettings">
</ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
<Import Project="gtk-install.props" />
</ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
<Import Project="gtk-install.props" />
</ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
<Import Project="gtk-install.props" />
</ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
<Import Project="gtk-install.props" />
</ImportGroup>
<PropertyGroup Label="UserMacros" />
<PropertyGroup>
<OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(GlibEtcInstallRoot)\</OutDir>
<ExtensionsToDeleteOnClean Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" />
<OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(GlibEtcInstallRoot)\</OutDir>
<ExtensionsToDeleteOnClean Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" />
<OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(GlibEtcInstallRoot)\</OutDir>
<ExtensionsToDeleteOnClean Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" />
<OutDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(GlibEtcInstallRoot)\</OutDir>
<ExtensionsToDeleteOnClean Condition="'$(Configuration)|$(Platform)'=='Release|x64'" />
</PropertyGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
</ItemDefinitionGroup>
<ItemGroup>
<CustomBuild Include="..\..\..\config.h.win32">
<Message Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Installing Build Results...</Message>
<Command Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(GtkDoInstall)</Command>
<Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">blah;%(Outputs)</Outputs>
<AdditionalInputs Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(GtkPCFiles)</AdditionalInputs>
<Message Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">Installing Build Results...</Message>
<Command Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(GtkDoInstall)</Command>
<Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">blah;%(Outputs)</Outputs>
<AdditionalInputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(GtkPCFiles)</AdditionalInputs>
<Message Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Installing Build Results...</Message>
<Command Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(GtkDoInstall)</Command>
<Outputs Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">blah;%(Outputs)</Outputs>
<AdditionalInputs Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(GtkPCFiles)</AdditionalInputs>
<Message Condition="'$(Configuration)|$(Platform)'=='Release|x64'">Installing Build Results...</Message>
<Command Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(GtkDoInstall)</Command>
<Outputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">blah;%(Outputs)</Outputs>
<AdditionalInputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(GtkPCFiles)</AdditionalInputs>
</CustomBuild>
<CustomBuild Include="..\gtkpc.py">
<Message Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Generating .pc files...</Message>
<Command Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(GenerateGtkPC)</Command>
<Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(GtkPCFiles);%(Outputs)</Outputs>
<Message Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">Generating .pc files...</Message>
<Command Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(GenerateGtkPCX64)</Command>
<Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(GtkPCFiles);%(Outputs)</Outputs>
<Message Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Generating .pc files...</Message>
<Command Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(GenerateGtkPC)</Command>
<Outputs Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(GtkPCFiles);%(Outputs)</Outputs>
<Message Condition="'$(Configuration)|$(Platform)'=='Release|x64'">Generating .pc files...</Message>
<Command Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(GenerateGtkPCX64)</Command>
<Outputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(GtkPCFiles);%(Outputs)</Outputs>
</CustomBuild>
</ItemGroup>
<ItemGroup>
<ProjectReference Include="gtk-update-icon-cache.vcxproj">
<Project>{fab0Ad6f-aebf-4af8-a1cc-6890a9090945}</Project>
<ReferenceOutputAssembly>false</ReferenceOutputAssembly>
</ProjectReference>
<ProjectReference Include="libwimp.vcxproj">
<Project>{7660fb4e-2ae6-483e-8813-0974cbe6f97f}</Project>
<ReferenceOutputAssembly>false</ReferenceOutputAssembly>
</ProjectReference>
<ProjectReference Include="gailutil.vcxproj">
<Project>{b3b6558a-01c8-4c72-9bde-84abb1ae67df}</Project>
<ReferenceOutputAssembly>false</ReferenceOutputAssembly>
</ProjectReference>
<ProjectReference Include="gdk.vcxproj">
<Project>{fc5aadb5-95cd-4bf0-ba8b-0c16fe7073f7}</Project>
<ReferenceOutputAssembly>false</ReferenceOutputAssembly>
</ProjectReference>
<ProjectReference Include="gtk-demo.vcxproj">
<Project>{fc5aadb5-95cd-4bf0-ba8b-0c16fe7073fc}</Project>
<ReferenceOutputAssembly>false</ReferenceOutputAssembly>
</ProjectReference>
<ProjectReference Include="gtk.vcxproj">
<Project>{fc5aadb5-95cd-4bf0-ba8b-0c16fe7073f5}</Project>
<ReferenceOutputAssembly>false</ReferenceOutputAssembly>
</ProjectReference>
</ItemGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
<ImportGroup Label="ExtensionTargets">
</ImportGroup>
</Project>
@@ -0,0 +1,13 @@
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ItemGroup>
<Filter Include="Resource Files">
<UniqueIdentifier>{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}</UniqueIdentifier>
<Extensions>rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav</Extensions>
</Filter>
</ItemGroup>
<ItemGroup>
<CustomBuild Include="..\..\..\config.h.win32"><Filter>Resource Files</Filter></CustomBuild>
<CustomBuild Include="..\gtkpc.py"><Filter>Resource Files</Filter></CustomBuild>
</ItemGroup>
</Project>
@@ -0,0 +1,177 @@
<?xml version="1.0" encoding="utf-8"?>
<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ItemGroup Label="ProjectConfigurations">
<ProjectConfiguration Include="Debug|Win32">
<Configuration>Debug</Configuration>
<Platform>Win32</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include="Debug|x64">
<Configuration>Debug</Configuration>
<Platform>x64</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include="Release|Win32">
<Configuration>Release</Configuration>
<Platform>Win32</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include="Release|x64">
<Configuration>Release</Configuration>
<Platform>x64</Platform>
</ProjectConfiguration>
</ItemGroup>
<PropertyGroup Label="Globals">
<ProjectGuid>{FAB0AD6F-AEBF-4AF8-A1CC-6890A9090945}</ProjectGuid>
<RootNamespace>gtkdemo</RootNamespace>
<Keyword>Win32Proj</Keyword>
</PropertyGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
<ConfigurationType>Application</ConfigurationType>
<CharacterSet>MultiByte</CharacterSet>
<WholeProgramOptimization>true</WholeProgramOptimization>
<PlatformToolset>v100</PlatformToolset>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
<ConfigurationType>Application</ConfigurationType>
<CharacterSet>MultiByte</CharacterSet>
<PlatformToolset>v100</PlatformToolset>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
<ConfigurationType>Application</ConfigurationType>
<CharacterSet>MultiByte</CharacterSet>
<WholeProgramOptimization>true</WholeProgramOptimization>
<PlatformToolset>v100</PlatformToolset>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
<ConfigurationType>Application</ConfigurationType>
<CharacterSet>MultiByte</CharacterSet>
<PlatformToolset>v100</PlatformToolset>
</PropertyGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
<ImportGroup Label="ExtensionSettings">
</ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
<Import Project="gtk-build-defines.props" />
</ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
<Import Project="gtk-build-defines.props" />
</ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
<Import Project="gtk-build-defines.props" />
</ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
<Import Project="gtk-build-defines.props" />
</ImportGroup>
<PropertyGroup Label="UserMacros" />
<PropertyGroup>
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</LinkIncremental>
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</LinkIncremental>
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">false</LinkIncremental>
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|x64'">false</LinkIncremental>
</PropertyGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
<ClCompile>
<Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<PrecompiledHeader>
</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
<DebugInformationFormat>EditAndContinue</DebugInformationFormat>
<CompileAs>CompileAsC</CompileAs>
</ClCompile>
<Link>
<AdditionalDependencies>%(AdditionalDependencies)</AdditionalDependencies>
<GenerateDebugInformation>true</GenerateDebugInformation>
<SubSystem>Console</SubSystem>
<DataExecutionPrevention>
</DataExecutionPrevention>
<TargetMachine>MachineX86</TargetMachine>
</Link>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
<ClCompile>
<Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<PrecompiledHeader>
</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
<CompileAs>CompileAsC</CompileAs>
</ClCompile>
<Link>
<AdditionalDependencies>%(AdditionalDependencies)</AdditionalDependencies>
<GenerateDebugInformation>true</GenerateDebugInformation>
<SubSystem>Console</SubSystem>
<DataExecutionPrevention>
</DataExecutionPrevention>
<TargetMachine>MachineX64</TargetMachine>
</Link>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
<ClCompile>
<AdditionalIncludeDirectories>%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<PreprocessorDefinitions>%(PreprocessorDefinitions)</PreprocessorDefinitions>
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<PrecompiledHeader>
</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
<CompileAs>CompileAsC</CompileAs>
</ClCompile>
<Link>
<AdditionalDependencies>%(AdditionalDependencies)</AdditionalDependencies>
<GenerateDebugInformation>true</GenerateDebugInformation>
<SubSystem>Console</SubSystem>
<OptimizeReferences>true</OptimizeReferences>
<EnableCOMDATFolding>true</EnableCOMDATFolding>
<DataExecutionPrevention>
</DataExecutionPrevention>
<TargetMachine>MachineX86</TargetMachine>
</Link>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
<ClCompile>
<AdditionalIncludeDirectories>%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<PreprocessorDefinitions>%(PreprocessorDefinitions)</PreprocessorDefinitions>
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<PrecompiledHeader>
</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
<CompileAs>CompileAsC</CompileAs>
</ClCompile>
<Link>
<AdditionalDependencies>%(AdditionalDependencies)</AdditionalDependencies>
<GenerateDebugInformation>true</GenerateDebugInformation>
<SubSystem>Console</SubSystem>
<OptimizeReferences>true</OptimizeReferences>
<EnableCOMDATFolding>true</EnableCOMDATFolding>
<DataExecutionPrevention>
</DataExecutionPrevention>
<TargetMachine>MachineX64</TargetMachine>
</Link>
</ItemDefinitionGroup>
<ItemGroup>
<ClCompile Include="..\..\..\gtk\updateiconcache.c" />
</ItemGroup>
<ItemGroup>
<ProjectReference Include="gdk-win32.vcxproj">
<Project>{fc5aadb5-95cd-4bf0-ba8b-0c16fe7073fa}</Project>
<ReferenceOutputAssembly>false</ReferenceOutputAssembly>
</ProjectReference>
</ItemGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
<ImportGroup Label="ExtensionTargets">
</ImportGroup>
</Project>
@@ -0,0 +1,16 @@
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ItemGroup>
<Filter Include="Source Files">
<UniqueIdentifier>{4FC737F1-C7A5-4376-A066-2A32D752A2FF}</UniqueIdentifier>
<Extensions>cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
</Filter>
<Filter Include="Header Files">
<UniqueIdentifier>{93995380-89BD-4b04-88EB-625FBE52EBFB}</UniqueIdentifier>
<Extensions>h;hpp;hxx;hm;inl;inc;xsd</Extensions>
</Filter>
</ItemGroup>
<ItemGroup>
<ClCompile Include="..\..\..\gtk\updateiconcache.c"><Filter>Source Files</Filter></ClCompile>
</ItemGroup>
</Project>
@@ -0,0 +1,69 @@
<?xml version="1.0" encoding="utf-8"?>
<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup Label="UserMacros">
<VSVer>10</VSVer>
<GlibEtcInstallRoot>..\..\..\..\vs$(VSVer)\$(Platform)</GlibEtcInstallRoot>
<CopyDir>$(GlibEtcInstallRoot)</CopyDir>
<DefDir>$(SolutionDir)$(Configuration)\$(Platform)\obj\$(ProjectName)</DefDir>
<ApiVersion>2.0</ApiVersion>
<GtkVersion>@GTK_VERSION@</GtkVersion>
<GtkLibtoolCompatibleDllPrefix>lib</GtkLibtoolCompatibleDllPrefix>
<GtkLibtoolCompatibleDllSuffix>-$(ApiVersion)-0</GtkLibtoolCompatibleDllSuffix>
<GtkSeparateVSDllPrefix />
<GtkSeparateVSDllSuffix>-2-vs$(VSVer)</GtkSeparateVSDllSuffix>
<!-- Change these two to GtkLibtoolCompatibleDllPrefix and
GtkLibtoolCompatibleDllSuffix if that is what you want -->
<GtkDllPrefix>$(GtkSeparateVSDllPrefix)</GtkDllPrefix>
<GtkDllSuffix>$(GtkSeparateVSDllSuffix)</GtkDllSuffix>
<!-- Update the following to reflect the actual Python 2.x/3.x installation path on your system -->
<PythonPath>c:\python34</PythonPath>
<PythonPathX64>$(PythonPath).x64</PythonPathX64>
</PropertyGroup>
<PropertyGroup>
<_PropertySheetDisplayName>gtkversionpathsprops</_PropertySheetDisplayName>
</PropertyGroup>
<ItemGroup>
<BuildMacro Include="VSVer">
<Value>$(VSVer)</Value>
</BuildMacro>
<BuildMacro Include="GlibEtcInstallRoot">
<Value>$(GlibEtcInstallRoot)</Value>
</BuildMacro>
<BuildMacro Include="CopyDir">
<Value>$(CopyDir)</Value>
</BuildMacro>
<BuildMacro Include="DefDir">
<Value>$(DefDir)</Value>
</BuildMacro>
<BuildMacro Include="ApiVersion">
<Value>$(ApiVersion)</Value>
</BuildMacro>
<BuildMacro Include="GtkVersion">
<Value>$(GtkVersion)</Value>
</BuildMacro>
<BuildMacro Include="GtkLibtoolCompatibleDllPrefix">
<Value>$(GtkLibtoolCompatibleDllPrefix)</Value>
</BuildMacro>
<BuildMacro Include="GtkLibtoolCompatibleDllSuffix">
<Value>$(GtkLibtoolCompatibleDllSuffix)</Value>
</BuildMacro>
<BuildMacro Include="GtkSeparateVSDllPrefix">
<Value>$(GtkSeparateVSDllPrefix)</Value>
</BuildMacro>
<BuildMacro Include="GtkSeparateVSDllSuffix">
<Value>$(GtkSeparateVSDllSuffix)</Value>
</BuildMacro>
<BuildMacro Include="GtkDllPrefix">
<Value>$(GtkDllPrefix)</Value>
</BuildMacro>
<BuildMacro Include="GtkDllSuffix">
<Value>$(GtkDllSuffix)</Value>
</BuildMacro>
<BuildMacro Include="PythonPath">
<Value>$(PythonPath)</Value>
</BuildMacro>
<BuildMacro Include="PythonPathX64">
<Value>$(PythonPathX64)</Value>
</BuildMacro>
</ItemGroup>
</Project>
+43
View File
@@ -0,0 +1,43 @@
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ItemGroup>
<Filter Include="Header Files">
<UniqueIdentifier>{93995380-89BD-4b04-88EB-625FBE52EBFB}</UniqueIdentifier>
<Extensions>h;hpp;hxx;hm;inl;inc;xsd</Extensions>
</Filter>
<Filter Include="Resource Files">
<UniqueIdentifier>{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}</UniqueIdentifier>
<Extensions>rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx</Extensions>
</Filter>
<Filter Include="Source Files">
<UniqueIdentifier>{4FC737F1-C7A5-4376-A066-2A32D752A2FF}</UniqueIdentifier>
<Extensions>cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
</Filter>
</ItemGroup>
<ItemGroup>
<ResourceCompile Include="..\..\..\gtk\gtk-win32.rc"><Filter>Resource Files</Filter></ResourceCompile>
</ItemGroup>
<ItemGroup>
#include "gtk.vs10.sourcefiles.filters"
<ClCompile Include="..\..\..\modules\input\gtkimcontextime.c"><Filter>Source Files</Filter></ClCompile>
<ClCompile Include="..\..\..\modules\input\gtkimcontextmultipress.c"><Filter>Source Files</Filter></ClCompile>
<ClCompile Include="..\..\..\modules\input\gtkimcontextthai.c"><Filter>Source Files</Filter></ClCompile>
<ClCompile Include="..\..\..\modules\input\imam-et.c"><Filter>Source Files</Filter></ClCompile>
<ClCompile Include="..\..\..\modules\input\imcedilla.c"><Filter>Source Files</Filter></ClCompile>
<ClCompile Include="..\..\..\modules\input\imcyrillic-translit.c"><Filter>Source Files</Filter></ClCompile>
<ClCompile Include="..\..\..\modules\input\imime.c"><Filter>Source Files</Filter></ClCompile>
<ClCompile Include="..\..\..\modules\input\iminuktitut.c"><Filter>Source Files</Filter></ClCompile>
<ClCompile Include="..\..\..\modules\input\imipa.c"><Filter>Source Files</Filter></ClCompile>
<ClCompile Include="..\..\..\modules\input\immultipress.c"><Filter>Source Files</Filter></ClCompile>
<ClCompile Include="..\..\..\modules\input\imthai.c"><Filter>Source Files</Filter></ClCompile>
<ClCompile Include="..\..\..\modules\input\imti-er.c"><Filter>Source Files</Filter></ClCompile>
<ClCompile Include="..\..\..\modules\input\imti-et.c"><Filter>Source Files</Filter></ClCompile>
<ClCompile Include="..\..\..\modules\input\imviqr.c"><Filter>Source Files</Filter></ClCompile>
<ClCompile Include="..\..\..\modules\input\thai-charprop.c"><Filter>Source Files</Filter></ClCompile>
</ItemGroup>
<ItemGroup>
<CustomBuild Include="..\..\..\gdk\gtk.symbols">
<Filter>Resource Files</Filter>
</CustomBuild>
</ItemGroup>
</Project>
+201
View File
@@ -0,0 +1,201 @@
<?xml version="1.0" encoding="utf-8"?>
<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ItemGroup Label="ProjectConfigurations">
<ProjectConfiguration Include="Debug|Win32">
<Configuration>Debug</Configuration>
<Platform>Win32</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include="Debug|x64">
<Configuration>Debug</Configuration>
<Platform>x64</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include="Release|Win32">
<Configuration>Release</Configuration>
<Platform>Win32</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include="Release|x64">
<Configuration>Release</Configuration>
<Platform>x64</Platform>
</ProjectConfiguration>
</ItemGroup>
<PropertyGroup Label="Globals">
<ProjectGuid>{FC5AADB5-95CD-4BF0-BA8B-0C16FE7073F5}</ProjectGuid>
<RootNamespace>gtk</RootNamespace>
<Keyword>Win32Proj</Keyword>
</PropertyGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
<ConfigurationType>DynamicLibrary</ConfigurationType>
<CharacterSet>MultiByte</CharacterSet>
<PlatformToolset>v100</PlatformToolset>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
<ConfigurationType>DynamicLibrary</ConfigurationType>
<CharacterSet>MultiByte</CharacterSet>
<PlatformToolset>v100</PlatformToolset>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
<ConfigurationType>DynamicLibrary</ConfigurationType>
<CharacterSet>MultiByte</CharacterSet>
<PlatformToolset>v100</PlatformToolset>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
<ConfigurationType>DynamicLibrary</ConfigurationType>
<CharacterSet>MultiByte</CharacterSet>
<PlatformToolset>v100</PlatformToolset>
</PropertyGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
<ImportGroup Label="ExtensionSettings">
</ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
<Import Project="gtk-gen-srcs.props" />
</ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
<Import Project="gtk-gen-srcs.props" />
</ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
<Import Project="gtk-gen-srcs.props" />
</ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
<Import Project="gtk-gen-srcs.props" />
</ImportGroup>
<PropertyGroup Label="UserMacros" />
<PropertyGroup>
<LinkIncremental>true</LinkIncremental>
</PropertyGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
<ClCompile>
<Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>..\..\..\gdk;..\..\..\gtk;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<PreprocessorDefinitions>_DEBUG;G_ENABLE_DEBUG;$(GtkDefines);%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<PrecompiledHeader>
</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
<DebugInformationFormat>EditAndContinue</DebugInformationFormat>
</ClCompile>
<Link>
<AdditionalDependencies>atk-1.0.lib;pangowin32-1.0.lib;imm32.lib;winspool.lib;comctl32.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>$(OutDir)$(GtkDllPrefix)$(ProjectName)-win32$(GtkDllSuffix).dll</OutputFile>
<ModuleDefinitionFile>$(IntDir)gtk.def</ModuleDefinitionFile>
<GenerateDebugInformation>true</GenerateDebugInformation>
<ProgramDatabaseFile>$(OutDir)$(GtkDllPrefix)$(ProjectName)-win32$(GtkDllSuffix).pdb</ProgramDatabaseFile>
<SubSystem>Windows</SubSystem>
<ImportLibrary>$(TargetDir)$(ProjectName)-win32-$(ApiVersion).lib</ImportLibrary>
<TargetMachine>MachineX86</TargetMachine>
</Link>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
<ClCompile>
<AdditionalIncludeDirectories>..\..\..\gdk;..\..\..\gdk\win32;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<PreprocessorDefinitions>$(GtkDefines);%(PreprocessorDefinitions)</PreprocessorDefinitions>
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<PrecompiledHeader>
</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<Link>
<AdditionalDependencies>atk-1.0.lib;pangowin32-1.0.lib;imm32.lib;winspool.lib;comctl32.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>$(OutDir)$(GtkDllPrefix)$(ProjectName)-win32$(GtkDllSuffix).dll</OutputFile>
<ModuleDefinitionFile>$(IntDir)gtk.def</ModuleDefinitionFile>
<GenerateDebugInformation>true</GenerateDebugInformation>
<ProgramDatabaseFile>$(OutDir)$(GtkDllPrefix)$(ProjectName)-win32$(GtkDllSuffix).pdb</ProgramDatabaseFile>
<SubSystem>Windows</SubSystem>
<OptimizeReferences>true</OptimizeReferences>
<EnableCOMDATFolding>true</EnableCOMDATFolding>
<ImportLibrary>$(TargetDir)$(ProjectName)-win32-$(ApiVersion).lib</ImportLibrary>
<TargetMachine>MachineX86</TargetMachine>
</Link>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
<ClCompile>
<Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>..\..\..\gdk;..\..\..\gdk\win32;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<PreprocessorDefinitions>_DEBUG;G_ENABLE_DEBUG;$(GtkDefines);%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<PrecompiledHeader>
</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<Link>
<AdditionalDependencies>atk-1.0.lib;pangowin32-1.0.lib;imm32.lib;winspool.lib;comctl32.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>$(OutDir)$(GtkDllPrefix)$(ProjectName)-win32$(GtkDllSuffix).dll</OutputFile>
<ModuleDefinitionFile>$(IntDir)gtk.def</ModuleDefinitionFile>
<GenerateDebugInformation>true</GenerateDebugInformation>
<ProgramDatabaseFile>$(OutDir)$(GtkDllPrefix)$(ProjectName)-win32$(GtkDllSuffix).pdb</ProgramDatabaseFile>
<SubSystem>Windows</SubSystem>
<ImportLibrary>$(TargetDir)$(ProjectName)-win32-$(ApiVersion).lib</ImportLibrary>
<TargetMachine>MachineX64</TargetMachine>
</Link>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
<ClCompile>
<AdditionalIncludeDirectories>..\..\..\gdk;..\..\..\gdk\win32;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<PreprocessorDefinitions>$(GtkDefines);%(PreprocessorDefinitions)</PreprocessorDefinitions>
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<PrecompiledHeader>
</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<Link>
<AdditionalDependencies>atk-1.0.lib;pangowin32-1.0.lib;imm32.lib;winspool.lib;comctl32.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>$(OutDir)$(GtkDllPrefix)$(ProjectName)-win32$(GtkDllSuffix).dll</OutputFile>
<ModuleDefinitionFile>$(IntDir)gtk.def</ModuleDefinitionFile>
<GenerateDebugInformation>true</GenerateDebugInformation>
<ProgramDatabaseFile>$(OutDir)$(GtkDllPrefix)$(ProjectName)-win32$(GtkDllSuffix).pdb</ProgramDatabaseFile>
<SubSystem>Windows</SubSystem>
<OptimizeReferences>true</OptimizeReferences>
<EnableCOMDATFolding>true</EnableCOMDATFolding>
<ImportLibrary>$(TargetDir)$(ProjectName)-win32-$(ApiVersion).lib</ImportLibrary>
<TargetMachine>MachineX64</TargetMachine>
</Link>
</ItemDefinitionGroup>
<ItemGroup>
<CustomBuild Include="..\..\..\gdk\gtk.symbols">
<Message>Generating gtk.def</Message>
<Command>$(GtkGenerateGtkDef)</Command>
<Outputs>$(IntDir)gtk.def;%(Outputs)</Outputs>
</CustomBuild>
</ItemGroup>
<ItemGroup>
<ResourceCompile Include="..\..\..\gtk\gtk-win32.rc" />
</ItemGroup>
<ItemGroup>
#include "gtk.vs10.sourcefiles"
<ClCompile Include="..\..\..\modules\input\gtkimcontextime.c" />
<ClCompile Include="..\..\..\modules\input\gtkimcontextmultipress.c" />
<ClCompile Include="..\..\..\modules\input\gtkimcontextthai.c" />
<ClCompile Include="..\..\..\modules\input\imam-et.c" />
<ClCompile Include="..\..\..\modules\input\imcedilla.c" />
<ClCompile Include="..\..\..\modules\input\imcyrillic-translit.c" />
<ClCompile Include="..\..\..\modules\input\imime.c" />
<ClCompile Include="..\..\..\modules\input\iminuktitut.c" />
<ClCompile Include="..\..\..\modules\input\imipa.c" />
<ClCompile Include="..\..\..\modules\input\immultipress.c" />
<ClCompile Include="..\..\..\modules\input\imthai.c" />
<ClCompile Include="..\..\..\modules\input\imti-er.c" />
<ClCompile Include="..\..\..\modules\input\imti-et.c" />
<ClCompile Include="..\..\..\modules\input\imviqr.c" />
<ClCompile Include="..\..\..\modules\input\thai-charprop.c" />
</ItemGroup>
<ItemGroup>
<ProjectReference Include="gdk.vcxproj">
<Project>{fc5aadb5-95cd-4bf0-ba8b-0c16fe7073f7}</Project>
<ReferenceOutputAssembly>false</ReferenceOutputAssembly>
</ProjectReference>
</ItemGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
<ImportGroup Label="ExtensionTargets">
</ImportGroup>
</Project>
@@ -0,0 +1,24 @@
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ItemGroup>
<Filter Include="Sources">
<UniqueIdentifier>{4FC737F1-C7A5-4376-A066-2A32D752A2FF}</UniqueIdentifier>
<Extensions>cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
</Filter>
<Filter Include="Headers">
<UniqueIdentifier>{93995380-89BD-4b04-88EB-625FBE52EBFB}</UniqueIdentifier>
<Extensions>h;hpp;hxx;hm;inl;inc;xsd</Extensions>
</Filter>
<Filter Include="Resource Files">
<UniqueIdentifier>{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}</UniqueIdentifier>
<Extensions>rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav</Extensions>
</Filter>
</ItemGroup>
<ItemGroup>
#include "libwimp.vs10.sourcefiles.filters"
<ClCompile Include="..\..\..\modules\engines\ms-windows\msw_rc_style.c"><Filter>Sources</Filter></ClCompile>
<ClCompile Include="..\..\..\modules\engines\ms-windows\msw_style.c"><Filter>Sources</Filter></ClCompile>
<ClCompile Include="..\..\..\modules\engines\ms-windows\msw_theme_main.c"><Filter>Sources</Filter></ClCompile>
<ClCompile Include="..\..\..\modules\engines\ms-windows\xp_theme.c"><Filter>Sources</Filter></ClCompile>
</ItemGroup>
</Project>
+171
View File
@@ -0,0 +1,171 @@
<?xml version="1.0" encoding="utf-8"?>
<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ItemGroup Label="ProjectConfigurations">
<ProjectConfiguration Include="Debug|Win32">
<Configuration>Debug</Configuration>
<Platform>Win32</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include="Debug|x64">
<Configuration>Debug</Configuration>
<Platform>x64</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include="Release|Win32">
<Configuration>Release</Configuration>
<Platform>Win32</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include="Release|x64">
<Configuration>Release</Configuration>
<Platform>x64</Platform>
</ProjectConfiguration>
</ItemGroup>
<PropertyGroup Label="Globals">
<ProjectGuid>{7660FB4E-2AE6-483E-8813-0974CBE6F97F}</ProjectGuid>
<RootNamespace>libwimp</RootNamespace>
<Keyword>Win32Proj</Keyword>
</PropertyGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
<ConfigurationType>DynamicLibrary</ConfigurationType>
<CharacterSet>MultiByte</CharacterSet>
<WholeProgramOptimization>true</WholeProgramOptimization>
<PlatformToolset>v100</PlatformToolset>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
<ConfigurationType>DynamicLibrary</ConfigurationType>
<CharacterSet>MultiByte</CharacterSet>
<PlatformToolset>v100</PlatformToolset>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
<ConfigurationType>DynamicLibrary</ConfigurationType>
<CharacterSet>MultiByte</CharacterSet>
<PlatformToolset>v100</PlatformToolset>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
<ConfigurationType>DynamicLibrary</ConfigurationType>
<CharacterSet>MultiByte</CharacterSet>
<PlatformToolset>v100</PlatformToolset>
</PropertyGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
<ImportGroup Label="ExtensionSettings">
</ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
<Import Project="gtk-build-defines.props" />
</ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
<Import Project="gtk-build-defines.props" />
</ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
<Import Project="gtk-build-defines.props" />
</ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
<Import Project="gtk-build-defines.props" />
</ImportGroup>
<PropertyGroup Label="UserMacros" />
<PropertyGroup>
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</LinkIncremental>
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">false</LinkIncremental>
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</LinkIncremental>
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</LinkIncremental>
</PropertyGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
<ClCompile>
<AdditionalIncludeDirectories>..\..\..\gdk;..\..\..\gdk\win32;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<Optimization>Disabled</Optimization>
<PreprocessorDefinitions>_DEBUG;G_ENABLE_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<PrecompiledHeader>
</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
<DebugInformationFormat>EditAndContinue</DebugInformationFormat>
</ClCompile>
<Link>
<AdditionalDependencies>pangowin32-1.0.lib;pango-1.0.lib;cairo.lib;%(AdditionalDependencies)</AdditionalDependencies>
<GenerateDebugInformation>true</GenerateDebugInformation>
<SubSystem>Windows</SubSystem>
<TargetMachine>MachineX86</TargetMachine>
</Link>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
<ClCompile>
<AdditionalIncludeDirectories>..\..\..\gdk;..\..\..\gdk\win32;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<Optimization>MaxSpeed</Optimization>
<IntrinsicFunctions>true</IntrinsicFunctions>
<PreprocessorDefinitions>%(PreprocessorDefinitions)</PreprocessorDefinitions>
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<FunctionLevelLinking>true</FunctionLevelLinking>
<PrecompiledHeader>
</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<Link>
<AdditionalDependencies>pangowin32-1.0.lib;pango-1.0.lib;cairo.lib;%(AdditionalDependencies)</AdditionalDependencies>
<GenerateDebugInformation>true</GenerateDebugInformation>
<SubSystem>Windows</SubSystem>
<OptimizeReferences>true</OptimizeReferences>
<EnableCOMDATFolding>true</EnableCOMDATFolding>
<TargetMachine>MachineX86</TargetMachine>
</Link>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
<ClCompile>
<Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>..\..\..\gdk;..\..\..\gdk\win32;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<PreprocessorDefinitions>_DEBUG;G_ENABLE_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<PrecompiledHeader>
</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<Link>
<AdditionalDependencies>pangowin32-1.0.lib;pango-1.0.lib;cairo.lib;%(AdditionalDependencies)</AdditionalDependencies>
<GenerateDebugInformation>true</GenerateDebugInformation>
<SubSystem>Windows</SubSystem>
<TargetMachine>MachineX64</TargetMachine>
</Link>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
<ClCompile>
<AdditionalIncludeDirectories>..\..\..\gdk;..\..\..\gdk\win32;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<PreprocessorDefinitions>%(PreprocessorDefinitions)</PreprocessorDefinitions>
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<PrecompiledHeader>
</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<Link>
<AdditionalDependencies>pangowin32-1.0.lib;pango-1.0.lib;cairo.lib;%(AdditionalDependencies)</AdditionalDependencies>
<GenerateDebugInformation>true</GenerateDebugInformation>
<SubSystem>Windows</SubSystem>
<OptimizeReferences>true</OptimizeReferences>
<EnableCOMDATFolding>true</EnableCOMDATFolding>
<TargetMachine>MachineX64</TargetMachine>
</Link>
</ItemDefinitionGroup>
<ItemGroup>
#include "libwimp.vs10.sourcefiles"
</ItemGroup>
<ItemGroup>
<ProjectReference Include="gdk.vcxproj">
<Project>{fc5aadb5-95cd-4bf0-ba8b-0c16fe7073f7}</Project>
<ReferenceOutputAssembly>false</ReferenceOutputAssembly>
</ProjectReference>
<ProjectReference Include="gtk.vcxproj">
<Project>{fc5aadb5-95cd-4bf0-ba8b-0c16fe7073f5}</Project>
<ReferenceOutputAssembly>false</ReferenceOutputAssembly>
</ProjectReference>
</ItemGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
<ImportGroup Label="ExtensionTargets">
</ImportGroup>
</Project>
+33
View File
@@ -0,0 +1,33 @@
include $(top_srcdir)/Makefile.decl
EXTRA_DIST += \
README.txt \
gtk+.sln \
gtk-build-defines.props \
gtk-gen-srcs.props \
gtk-install.props \
gtk-version-paths.props \
gdk-win32.vcxproj \
gdk-win32.vcxproj.filters \
gdk.vcxproj \
gdk.vcxproj.filters \
gtk.vcxproj \
gtk.vcxproj.filters \
gtk-demo.vcxproj \
gtk-demo.vcxproj.filters \
gailutil.vcxproj \
gailutil.vcxproj.filters \
libwimp.vcxproj \
libwimp.vcxproj.filters \
gtk-update-icon-cache.vcxproj \
gtk-update-icon-cache.vcxproj.filters \
gtk-install.vcxproj \
gtk-install.vcxproj.filters
DISTCLEANFILES = $(EXTRA_DIST)
MSVC_VER = 11
MSVC_VER_LONG = 2012
MSVC_FORMAT_VER = 12
include $(top_srcdir)/build/Makefile-newvs.am
+34
View File
@@ -0,0 +1,34 @@
include $(top_srcdir)/Makefile.decl
EXTRA_DIST += \
README.txt \
gtk+.sln \
gtk-build-defines.props \
gtk-gen-srcs.props \
gtk-install.props \
gtk-version-paths.props \
gdk-win32.vcxproj \
gdk-win32.vcxproj.filters \
gdk.vcxproj \
gdk.vcxproj.filters \
gtk.vcxproj \
gtk.vcxproj.filters \
gtk-demo.vcxproj \
gtk-demo.vcxproj.filters \
gailutil.vcxproj \
gailutil.vcxproj.filters \
libwimp.vcxproj \
libwimp.vcxproj.filters \
gtk-update-icon-cache.vcxproj \
gtk-update-icon-cache.vcxproj.filters \
gtk-install.vcxproj \
gtk-install.vcxproj.filters
DISTCLEANFILES = $(EXTRA_DIST)
MSVC_VER = 12
MSVC_VER_LONG = 2013
MSVC_FORMAT_VER = 12
include $(top_srcdir)/build/Makefile-newvs.am
+34
View File
@@ -0,0 +1,34 @@
include $(top_srcdir)/Makefile.decl
EXTRA_DIST += \
README.txt \
gtk+.sln \
gtk-build-defines.props \
gtk-gen-srcs.props \
gtk-install.props \
gtk-version-paths.props \
gdk-win32.vcxproj \
gdk-win32.vcxproj.filters \
gdk.vcxproj \
gdk.vcxproj.filters \
gtk.vcxproj \
gtk.vcxproj.filters \
gtk-demo.vcxproj \
gtk-demo.vcxproj.filters \
gailutil.vcxproj \
gailutil.vcxproj.filters \
libwimp.vcxproj \
libwimp.vcxproj.filters \
gtk-update-icon-cache.vcxproj \
gtk-update-icon-cache.vcxproj.filters \
gtk-install.vcxproj \
gtk-install.vcxproj.filters
DISTCLEANFILES = $(EXTRA_DIST)
MSVC_VER = 14
MSVC_VER_LONG = 14
MSVC_FORMAT_VER = 12
include $(top_srcdir)/build/Makefile-newvs.am
+35
View File
@@ -0,0 +1,35 @@
include $(top_srcdir)/Makefile.decl
EXTRA_DIST += \
README.txt \
gtk+.sln \
gtk-build-defines.props \
gtk-gen-srcs.props \
gtk-install.props \
gtk-version-paths.props \
gdk-win32.vcxproj \
gdk-win32.vcxproj.filters \
gdk.vcxproj \
gdk.vcxproj.filters \
gtk.vcxproj \
gtk.vcxproj.filters \
gtk-demo.vcxproj \
gtk-demo.vcxproj.filters \
gailutil.vcxproj \
gailutil.vcxproj.filters \
libwimp.vcxproj \
libwimp.vcxproj.filters \
gtk-update-icon-cache.vcxproj \
gtk-update-icon-cache.vcxproj.filters \
gtk-install.vcxproj \
gtk-install.vcxproj.filters
DISTCLEANFILES = $(EXTRA_DIST)
MSVC_VER = 15
MSVC_VER_LONG = 15
MSVC_TOOLSET = 141
MSVC_FORMAT_VER = 12
include $(top_srcdir)/build/Makefile-newvs.am
+34
View File
@@ -0,0 +1,34 @@
include $(top_srcdir)/Makefile.decl
EXTRA_DIST += \
README.txt \
gtk+.sln \
gtk-build-defines.props \
gtk-gen-srcs.props \
gtk-install.props \
gtk-version-paths.props \
gdk-win32.vcxproj \
gdk-win32.vcxproj.filters \
gdk.vcxproj \
gdk.vcxproj.filters \
gtk.vcxproj \
gtk.vcxproj.filters \
gtk-demo.vcxproj \
gtk-demo.vcxproj.filters \
gailutil.vcxproj \
gailutil.vcxproj.filters \
libwimp.vcxproj \
libwimp.vcxproj.filters \
gtk-update-icon-cache.vcxproj \
gtk-update-icon-cache.vcxproj.filters \
gtk-install.vcxproj \
gtk-install.vcxproj.filters
DISTCLEANFILES = $(EXTRA_DIST)
MSVC_VER = 16
MSVC_VER_LONG = 16
MSVC_TOOLSET = 142
MSVC_FORMAT_VER = 12
include $(top_srcdir)/build/Makefile-newvs.am
+34 -14
View File
@@ -1,16 +1,36 @@
include $(top_srcdir)/Makefile.decl
EXTRA_DIST = \
README.txt \
gtk+.sln \
gtk+.vsprops \
gdk-pixbuf.vcproj \
gdk-pixbuf-csource.vcproj \
gdk-pixbuf-query-loaders.vcproj \
gdk-win32.vcproj \
gdk.vcproj \
gdk.vcprojin \
gtk.vcproj \
gtk.vcprojin \
gtk-demo.vcproj \
install.vcproj
GENERATED_ITEMS = \
gdk-win32.vcproj \
gdk.vcproj \
gtk.vcproj \
gailutil.vcproj \
gtk-demo.vcproj \
libwimp.vcproj \
gtk-install.vsprops
EXTRA_DIST += \
README.txt \
gtk+.sln \
gtk-build-defines.vsprops \
gtk-gen-srcs.vsprops \
gtk-install.vspropsin \
gtk-version-paths.vsprops \
gdk-win32.vcprojin \
gdk.vcprojin \
gtk.vcprojin \
gtk-demo.vcprojin \
gailutil.vcprojin \
libwimp.vcprojin \
gtk-update-icon-cache.vcproj \
gtk-install.vcproj \
$(GENERATED_ITEMS)
MSVC_INTERMEDIATE_FILES = gdk-win32.headers gdk.headers gtk.headers gailutil.headers
gtk-install.vsprops: $(MSVC_INTERMEDIATE_FILES)
$(CPP) -P - <$(top_srcdir)/build/win32/vs9/gtk-install.vspropsin >$@
rm $(MSVC_INTERMEDIATE_FILES)
DISTCLEANFILES = $(GENERATED_ITEMS)
+55 -5
View File
@@ -1,4 +1,11 @@
Note that all this is rather experimental.
Please do not compile this package (GTK+) in paths that contain
spaces in them-as strange problems may occur during compilation or during
the use of the library.
A more detailed outline for instructions on building the GTK+ with Visual
C++ can be found in the following GNOME Live! page:
https://live.gnome.org/GTK%2B/Win32/MSVCCompilationOfGTKStack
This VS9 solution and the projects it includes are intented to be used
in a GTK+ source tree unpacked from a tarball. In a git checkout you
@@ -6,10 +13,45 @@ first need to use some Unix-like environment or manual work to expand
the files needed, like config.h.win32.in into config.h.win32 and the
.vcprojin files here into corresponding actual .vcproj files.
You will need the parts from below in the GTK+ stack: pango, atk and
glib. External dependencies are at least zlib, libpng, proxy-libintl,
fontconfig, freetype, expat. See the corresponding README.txt file in
glib for details where to unpack them.
You will need the parts from below in the GTK+ stack: GDK-Pixbuf, Pango,
ATK and GLib. External dependencies are at least Cairo, zlib, libpng,
gettext-runtime; and optional dependencies are fontconfig*, freetype*
and expat*. See the build/win32/vs10/README.txt file in glib for
details where to unpack them.
It is recommended that one builds the dependencies with VS9 as far as
possible, especially those from and using the GTK+ stack (i.e. GLib,
ATK, Pango, GDK-Pixbuf), so that crashes caused by mixing calls
to different CRTs can be kept at a minimum. zlib, libpng, and Cairo
do contain support for compiling under VS9 using VS
project files and/or makefiles at this time of writing, For the
GTK+ stack, VS9 project files are either available under
$(srcroot)/build/vs9 in the case of GLib (stable/unstable), ATK
(unstable) and GDK-Pixbuf (unstable), and should be in the next
unstable version of Pango. There is no known official VS9 build
support for fontconfig (along with freetype and expat) and
gettext-runtime, so please use the binaries from:
ftp://ftp.gnome.org/pub/GNOME/binaries/win32/dependencies/ (32 bit)
ftp://ftp.gnome.org/pub/GNOME/binaries/win64/dependencies/ (64 bit)
The recommended build order for these dependencies:
(first unzip any dependent binaries downloaded from the ftp.gnome.org
as described in the README.txt file in the build/win32/vs9 folder)
-zlib
-libpng
-(optional for GDK-Pixbuf) IJG JPEG
-(optional for GDK-Pixbuf) requires zlib and IJG JPEG)libtiff
-(optional for GDK-Pixbuf) jasper [jpeg-2000 library])
-(optional for GLib) PCRE (version 8.12 or later, use of CMake to
build PCRE is recommended-see build/win32/vs9/README.txt of GLib)
-Cairo
-GLib
-ATK
-Pango
-GDK-Pixbuf
(note the last 3 dependencies are not interdependent, so the last 3
dependencies can be built in any order)
The "install" project will copy build results and headers into their
appropriate location under <root>\vs9\<PlatformName>. For instance,
@@ -19,4 +61,12 @@ built DLLs go into <root>\vs9\<PlatformName>\bin, built LIBs into
project files higher in the stack are supposed to look for them, not
from a specific GLib source tree.
*About the dependencies marked with *: These dependencies are not
compulsory components for building and running GTK+ itself, but note
that they are needed for people running and building GIMP.
They are referred to by components in Cairo and Pango mainly-so decide
whether you will need FontConfig/FreeType support prior to building
Cairo and Pango, which are hard requirements for building and running
GTK+.
--Tor Lillqvist <tml@iki.fi>
--Updated by Fan, Chun-wei <fanc999@yahoo.com.tw>
+182
View File
@@ -0,0 +1,182 @@
<?xml version="1.0" encoding="Windows-1252"?>
<VisualStudioProject
ProjectType="Visual C++"
Version="9.00"
Name="gailutil"
ProjectGUID="{B3B6558A-01C8-4C72-9BDE-84ABB1AE67DF}"
RootNamespace="gailutil"
Keyword="Win32Proj"
TargetFrameworkVersion="196613"
>
<Platforms>
<Platform
Name="Win32"
/>
<Platform
Name="x64"
/>
</Platforms>
<ToolFiles>
</ToolFiles>
<Configurations>
<Configuration
Name="Debug|Win32"
ConfigurationType="2"
InheritedPropertySheets=".\gtk-build-defines.vsprops"
CharacterSet="2"
>
<Tool
Name="VCPreBuildEventTool"
/>
<Tool
Name="VCCLCompilerTool"
Optimization="0"
AdditionalIncludeDirectories="..\..\..\gdk"
PreprocessorDefinitions="_DEBUG"
MinimalRebuild="true"
BasicRuntimeChecks="3"
RuntimeLibrary="3"
UsePrecompiledHeader="0"
WarningLevel="3"
DebugInformationFormat="4"
/>
<Tool
Name="VCLinkerTool"
AdditionalDependencies="pango-1.0.lib atk-1.0.lib"
OutputFile="$(OutDir)\$(GtkDllPrefix)$(ProjectName)$(GtkDllSuffix).dll"
LinkIncremental="2"
ModuleDefinitionFile="..\..\..\modules\other\gail\libgail-util\gailutil.def"
GenerateDebugInformation="true"
SubSystem="2"
ImportLibrary="$(TargetDir)$(ProjectName)-$(ApiVersion).lib"
TargetMachine="1"
/>
</Configuration>
<Configuration
Name="Release|Win32"
ConfigurationType="2"
InheritedPropertySheets=".\gtk-build-defines.vsprops"
CharacterSet="2"
WholeProgramOptimization="1"
>
<Tool
Name="VCPreBuildEventTool"
/>
<Tool
Name="VCCLCompilerTool"
Optimization="2"
AdditionalIncludeDirectories="..\..\..\gdk"
EnableIntrinsicFunctions="true"
PreprocessorDefinitions=""
RuntimeLibrary="2"
EnableFunctionLevelLinking="true"
UsePrecompiledHeader="0"
WarningLevel="3"
DebugInformationFormat="3"
/>
<Tool
Name="VCLinkerTool"
AdditionalDependencies="pango-1.0.lib atk-1.0.lib"
OutputFile="$(OutDir)\$(GtkDllPrefix)$(ProjectName)$(GtkDllSuffix).dll"
LinkIncremental="1"
ModuleDefinitionFile="..\..\..\modules\other\gail\libgail-util\gailutil.def"
GenerateDebugInformation="true"
SubSystem="2"
OptimizeReferences="2"
EnableCOMDATFolding="2"
ImportLibrary="$(TargetDir)$(ProjectName)-$(ApiVersion).lib"
TargetMachine="1"
/>
</Configuration>
<Configuration
Name="Debug|x64"
InheritedPropertySheets=".\gtk-build-defines.vsprops"
ConfigurationType="2"
CharacterSet="2"
>
<Tool
Name="VCPreBuildEventTool"
/>
<Tool
Name="VCCLCompilerTool"
Optimization="0"
AdditionalIncludeDirectories="..\..\..\gdk"
PreprocessorDefinitions="_DEBUG"
MinimalRebuild="true"
BasicRuntimeChecks="3"
RuntimeLibrary="3"
UsePrecompiledHeader="0"
WarningLevel="3"
DebugInformationFormat="3"
/>
<Tool
Name="VCLinkerTool"
AdditionalDependencies="pango-1.0.lib atk-1.0.lib"
OutputFile="$(OutDir)\$(GtkDllPrefix)$(ProjectName)$(GtkDllSuffix).dll"
LinkIncremental="2"
ModuleDefinitionFile="..\..\..\modules\other\gail\libgail-util\gailutil.def"
GenerateDebugInformation="true"
SubSystem="2"
ImportLibrary="$(TargetDir)$(ProjectName)-$(ApiVersion).lib"
TargetMachine="17"
/>
</Configuration>
<Configuration
Name="Release|x64"
InheritedPropertySheets=".\gtk-build-defines.vsprops"
ConfigurationType="2"
CharacterSet="2"
>
<Tool
Name="VCPreBuildEventTool"
/>
<Tool
Name="VCCLCompilerTool"
AdditionalIncludeDirectories="..\..\..\gdk"
PreprocessorDefinitions=""
RuntimeLibrary="2"
UsePrecompiledHeader="0"
WarningLevel="3"
DebugInformationFormat="3"
/>
<Tool
Name="VCLinkerTool"
AdditionalDependencies="pango-1.0.lib atk-1.0.lib"
OutputFile="$(OutDir)\$(GtkDllPrefix)$(ProjectName)$(GtkDllSuffix).dll"
LinkIncremental="2"
ModuleDefinitionFile="..\..\..\modules\other\gail\libgail-util\gailutil.def"
GenerateDebugInformation="true"
SubSystem="2"
OptimizeReferences="2"
EnableCOMDATFolding="2"
ImportLibrary="$(TargetDir)$(ProjectName)-$(ApiVersion).lib"
TargetMachine="17"
/>
</Configuration>
</Configurations>
<References>
</References>
<Files>
<Filter
Name="Sources"
Filter="cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx"
UniqueIdentifier="{4FC737F1-C7A5-4376-A066-2A32D752A2FF}"
>
#include "gailutil.sourcefiles"
</Filter>
<Filter
Name="Headers"
Filter="h;hpp;hxx;hm;inl;inc;xsd"
UniqueIdentifier="{93995380-89BD-4b04-88EB-625FBE52EBFB}"
>
</Filter>
<Filter
Name="Resource Files"
Filter="rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav"
UniqueIdentifier="{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}"
>
</Filter>
</Files>
<Globals>
</Globals>
</VisualStudioProject>
-258
View File
@@ -1,258 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<VisualStudioProject
ProjectType="Visual C++"
Version="9.00"
Name="gdk_pixbuf"
ProjectGUID="{FC5AADB5-95CD-4BF0-BA8B-0C16FE7073F6}"
RootNamespace="gdk_pixbuf"
Keyword="Win32Proj"
TargetFrameworkVersion="0"
>
<Platforms>
<Platform
Name="Win32"
/>
<Platform
Name="x64"
/>
</Platforms>
<ToolFiles>
</ToolFiles>
<Configurations>
<Configuration
Name="Debug|Win32"
InheritedPropertySheets=".\gtk+.vsprops"
ConfigurationType="2"
CharacterSet="2"
>
<Tool
Name="VCPreBuildEventTool"
/>
<Tool
Name="VCCLCompilerTool"
Optimization="0"
PreprocessorDefinitions="_DEBUG;$(GdkPixbufDefines)"
MinimalRebuild="true"
BasicRuntimeChecks="3"
RuntimeLibrary="2"
UsePrecompiledHeader="0"
WarningLevel="3"
DebugInformationFormat="4"
/>
<Tool
Name="VCLinkerTool"
AdditionalDependencies="libpng.lib"
OutputFile="$(OutDir)\$(GtkDllPrefix)$(ProjectName)$(GtkDllSuffix).dll"
LinkIncremental="2"
ModuleDefinitionFile="$(IntDir)\gdk-pixbuf.def"
GenerateDebugInformation="true"
SubSystem="2"
ImportLibrary="$(TargetDir)$(ProjectName)-$(GtkApiVersion).lib"
TargetMachine="1"
/>
</Configuration>
<Configuration
Name="Release|Win32"
InheritedPropertySheets=".\gtk+.vsprops"
ConfigurationType="2"
CharacterSet="2"
>
<Tool
Name="VCPreBuildEventTool"
/>
<Tool
Name="VCCLCompilerTool"
PreprocessorDefinitions="$(GdkPixbufDefines)"
RuntimeLibrary="2"
UsePrecompiledHeader="0"
WarningLevel="3"
DebugInformationFormat="3"
/>
<Tool
Name="VCManagedResourceCompilerTool"
/>
<Tool
Name="VCResourceCompilerTool"
/>
<Tool
Name="VCPreLinkEventTool"
/>
<Tool
Name="VCLinkerTool"
AdditionalDependencies="libpng.lib"
OutputFile="$(OutDir)\$(GtkDllPrefix)$(ProjectName)$(GtkDllSuffix).dll"
LinkIncremental="2"
ModuleDefinitionFile="$(IntDir)\gdk-pixbuf.def"
GenerateDebugInformation="true"
SubSystem="2"
OptimizeReferences="2"
EnableCOMDATFolding="2"
ImportLibrary="$(TargetDir)$(ProjectName)-$(GtkApiVersion).lib"
TargetMachine="1"
/>
</Configuration>
<Configuration
Name="Debug|x64"
InheritedPropertySheets=".\gtk+.vsprops"
ConfigurationType="2"
CharacterSet="2"
>
<Tool
Name="VCPreBuildEventTool"
/>
<Tool
Name="VCCLCompilerTool"
Optimization="0"
PreprocessorDefinitions="_DEBUG;$(GdkPixbufDefines)"
MinimalRebuild="true"
BasicRuntimeChecks="3"
RuntimeLibrary="3"
UsePrecompiledHeader="0"
WarningLevel="3"
DebugInformationFormat="3"
/>
<Tool
Name="VCLinkerTool"
AdditionalDependencies="libpng.lib"
OutputFile="$(OutDir)\$(GtkDllPrefix)$(ProjectName)$(GtkDllSuffix).dll"
LinkIncremental="2"
ModuleDefinitionFile="$(IntDir)\gdk-pixbuf.def"
GenerateDebugInformation="true"
SubSystem="2"
ImportLibrary="$(TargetDir)$(ProjectName)-$(GtkApiVersion).lib"
TargetMachine="17"
/>
</Configuration>
<Configuration
Name="Release|x64"
InheritedPropertySheets=".\gtk+.vsprops"
ConfigurationType="2"
CharacterSet="2"
>
<Tool
Name="VCPreBuildEventTool"
/>
<Tool
Name="VCCLCompilerTool"
PreprocessorDefinitions="$(GdkPixbufDefines)"
RuntimeLibrary="2"
UsePrecompiledHeader="0"
WarningLevel="3"
DebugInformationFormat="3"
/>
<Tool
Name="VCLinkerTool"
AdditionalDependencies="libpng.lib"
OutputFile="$(OutDir)\$(GtkDllPrefix)$(ProjectName)$(GtkDllSuffix).dll"
LinkIncremental="2"
ModuleDefinitionFile="$(IntDir)\gdk-pixbuf.def"
GenerateDebugInformation="true"
SubSystem="2"
OptimizeReferences="2"
EnableCOMDATFolding="2"
ImportLibrary="$(TargetDir)$(ProjectName)-$(GtkApiVersion).lib"
TargetMachine="17"
/>
</Configuration>
</Configurations>
<References>
</References>
<Files>
<Filter
Name="Header Files"
Filter="h;hpp;hxx;hm;inl;inc;xsd"
UniqueIdentifier="{93995380-89BD-4b04-88EB-625FBE52EBFB}"
>
</Filter>
<Filter
Name="Resource Files"
Filter="rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx"
UniqueIdentifier="{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}"
>
<File
RelativePath="..\..\..\gdk-pixbuf\gdk-pixbuf.symbols"
>
<FileConfiguration
Name="Debug|Win32"
>
<Tool
Name="VCCustomBuildTool"
Description="Generating gdk-pixbuf.def"
CommandLine="$(GtkGenerateGdkPixbufDef)"
Outputs="$(IntDir)\gdk-pixbuf.def"
/>
</FileConfiguration>
<FileConfiguration
Name="Debug|x64"
>
<Tool
Name="VCCustomBuildTool"
Description="Generating gdk-pixbuf.def"
CommandLine="$(GtkGenerateGdkPixbufDef)"
Outputs="$(IntDir)\gdk-pixbuf.def"
/>
</FileConfiguration>
<FileConfiguration
Name="Release|Win32"
>
<Tool
Name="VCCustomBuildTool"
Description="Generating gdk-pixbuf.def"
CommandLine="$(GtkGenerateGdkPixbufDef)"
Outputs="$(IntDir)\gdk-pixbuf.def"
/>
</FileConfiguration>
<FileConfiguration
Name="Release|x64"
>
<Tool
Name="VCCustomBuildTool"
Description="Generating gdk-pixbuf.def"
CommandLine="$(GtkGenerateGdkPixbufDef)"
Outputs="$(IntDir)\gdk-pixbuf.def"
/>
</FileConfiguration>
</File>
</Filter>
<Filter
Name="Source Files"
Filter="cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx"
UniqueIdentifier="{4FC737F1-C7A5-4376-A066-2A32D752A2FF}"
>
<File RelativePath="..\..\..\gdk-pixbuf\gdk-pixbuf.c" />
<File RelativePath="..\..\..\gdk-pixbuf\gdk-pixbuf-aliasdef.c" />
<File RelativePath="..\..\..\gdk-pixbuf\gdk-pixbuf-animation.c" />
<File RelativePath="..\..\..\gdk-pixbuf\gdk-pixbuf-data.c" />
<File RelativePath="..\..\..\gdk-pixbuf\gdk-pixbuf-enum-types.c" />
<File RelativePath="..\..\..\gdk-pixbuf\gdk-pixbuf-io.c" />
<File RelativePath="..\..\..\gdk-pixbuf\gdk-pixbuf-loader.c" />
<File RelativePath="..\..\..\gdk-pixbuf\gdk-pixbuf-scale.c" />
<File RelativePath="..\..\..\gdk-pixbuf\gdk-pixbuf-scaled-anim.c" />
<File RelativePath="..\..\..\gdk-pixbuf\gdk-pixbuf-simple-anim.c" />
<File RelativePath="..\..\..\gdk-pixbuf\gdk-pixbuf-util.c" />
<File RelativePath="..\..\..\gdk-pixbuf\gdk-pixdata.c" />
<File RelativePath="..\..\..\gdk-pixbuf\io-ani.c" />
<File RelativePath="..\..\..\gdk-pixbuf\io-ani-animation.c" />
<File RelativePath="..\..\..\gdk-pixbuf\io-gdip-utils.c" />
<File RelativePath="..\..\..\gdk-pixbuf\io-gdip-animation.c" />
<File RelativePath="..\..\..\gdk-pixbuf\io-gdip-bmp.c" />
<File RelativePath="..\..\..\gdk-pixbuf\io-gdip-emf.c" />
<File RelativePath="..\..\..\gdk-pixbuf\io-gdip-gif.c" />
<File RelativePath="..\..\..\gdk-pixbuf\io-gdip-ico.c" />
<File RelativePath="..\..\..\gdk-pixbuf\io-gdip-jpeg.c" />
<File RelativePath="..\..\..\gdk-pixbuf\io-gdip-tiff.c" />
<File RelativePath="..\..\..\gdk-pixbuf\io-gdip-wmf.c" />
<File RelativePath="..\..\..\gdk-pixbuf\io-gif-animation.c" />
<File RelativePath="..\..\..\gdk-pixbuf\io-icns.c" />
<File RelativePath="..\..\..\gdk-pixbuf\io-pcx.c" />
<File RelativePath="..\..\..\gdk-pixbuf\io-png.c" />
<File RelativePath="..\..\..\gdk-pixbuf\io-pnm.c" />
<File RelativePath="..\..\..\gdk-pixbuf\io-ras.c" />
<File RelativePath="..\..\..\gdk-pixbuf\io-tga.c" />
<File RelativePath="..\..\..\gdk-pixbuf\io-wbmp.c" />
<File RelativePath="..\..\..\gdk-pixbuf\io-xbm.c" />
<File RelativePath="..\..\..\gdk-pixbuf\io-xpm.c" />
<File RelativePath="..\..\..\gdk-pixbuf\pixops\pixops.c" />
</Filter>
</Files>
</VisualStudioProject>
@@ -1,153 +1,188 @@
<?xml version="1.0" encoding="UTF-8"?>
<VisualStudioProject
ProjectType="Visual C++"
Version="9.00"
Name="gdk-win32"
ProjectGUID="{FC5AADB5-95CD-4BF0-BA8B-0C16FE7073FA}"
RootNamespace="gdkwin32"
Keyword="Win32Proj"
TargetFrameworkVersion="0"
>
<Platforms>
<Platform
Name="Win32"
/>
<Platform
Name="x64"
/>
</Platforms>
<ToolFiles>
</ToolFiles>
<Configurations>
<Configuration
Name="Debug|Win32"
InheritedPropertySheets=".\gtk+.vsprops"
ConfigurationType="4"
CharacterSet="2"
>
<Tool
Name="VCPreBuildEventTool"
/>
<Tool
Name="VCCLCompilerTool"
Optimization="0"
AdditionalIncludeDirectories="..\..\..\gdk-pixbuf;..\..\..\gdk;..\..\..\gdk\win32"
PreprocessorDefinitions="_DEBUG;$(GdkDefines);INSIDE_GDK_WIN32"
MinimalRebuild="true"
BasicRuntimeChecks="3"
RuntimeLibrary="2"
UsePrecompiledHeader="0"
WarningLevel="3"
DebugInformationFormat="4"
/>
</Configuration>
<Configuration
Name="Release|Win32"
InheritedPropertySheets=".\gtk+.vsprops"
ConfigurationType="4"
CharacterSet="2"
>
<Tool
Name="VCPreBuildEventTool"
/>
<Tool
Name="VCCLCompilerTool"
AdditionalIncludeDirectories="..\..\..\gdk-pixbuf;..\..\..\gdk;..\..\..\gdk\win32"
PreprocessorDefinitions="$(GdkDefines);INSIDE_GDK_WIN32"
RuntimeLibrary="2"
UsePrecompiledHeader="0"
WarningLevel="3"
DebugInformationFormat="3"
/>
</Configuration>
<Configuration
Name="Debug|x64"
InheritedPropertySheets=".\gtk+.vsprops"
ConfigurationType="4"
CharacterSet="2"
>
<Tool
Name="VCPreBuildEventTool"
/>
<Tool
Name="VCCLCompilerTool"
Optimization="0"
AdditionalIncludeDirectories="..\..\..\gdk-pixbuf;..\..\..\gdk;..\..\..\gdk\win32"
PreprocessorDefinitions="_DEBUG;$(GdkDefines);INSIDE_GDK_WIN32"
MinimalRebuild="true"
BasicRuntimeChecks="3"
RuntimeLibrary="3"
UsePrecompiledHeader="0"
WarningLevel="3"
DebugInformationFormat="3"
/>
</Configuration>
<Configuration
Name="Release|x64"
InheritedPropertySheets=".\gtk+.vsprops"
ConfigurationType="4"
CharacterSet="2"
>
<Tool
Name="VCPreBuildEventTool"
/>
<Tool
Name="VCCLCompilerTool"
AdditionalIncludeDirectories="..\..\..\gdk-pixbuf;..\..\..\gdk;..\..\..\gdk\win32"
PreprocessorDefinitions="$(GdkDefines);INSIDE_GDK_WIN32"
RuntimeLibrary="2"
UsePrecompiledHeader="0"
WarningLevel="3"
DebugInformationFormat="3"
/>
</Configuration>
</Configurations>
<References>
</References>
<Files>
<Filter
Name="Header Files"
Filter="h;hpp;hxx;hm;inl;inc;xsd"
UniqueIdentifier="{93995380-89BD-4b04-88EB-625FBE52EBFB}"
>
</Filter>
<Filter
Name="Resource Files"
Filter="rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx"
UniqueIdentifier="{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}"
>
</Filter>
<Filter
Name="Source Files"
Filter="cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx"
UniqueIdentifier="{4FC737F1-C7A5-4376-A066-2A32D752A2FF}"
>
<File RelativePath="..\..\..\gdk\win32\gdkapplaunchcontext-win32.c" />
<File RelativePath="..\..\..\gdk\win32\gdkcolor-win32.c" />
<File RelativePath="..\..\..\gdk\win32\gdkcursor-win32.c" />
<File RelativePath="..\..\..\gdk\win32\gdkdisplay-win32.c" />
<File RelativePath="..\..\..\gdk\win32\gdkdnd-win32.c" />
<File RelativePath="..\..\..\gdk\win32\gdkdrawable-win32.c" />
<File RelativePath="..\..\..\gdk\win32\gdkevents-win32.c" />
<File RelativePath="..\..\..\gdk\win32\gdkfont-win32.c" />
<File RelativePath="..\..\..\gdk\win32\gdkgc-win32.c" />
<File RelativePath="..\..\..\gdk\win32\gdkgeometry-win32.c" />
<File RelativePath="..\..\..\gdk\win32\gdkglobals-win32.c" />
<File RelativePath="..\..\..\gdk\win32\gdkim-win32.c" />
<File RelativePath="..\..\..\gdk\win32\gdkimage-win32.c" />
<File RelativePath="..\..\..\gdk\win32\gdkinput-win32.c" />
<File RelativePath="..\..\..\gdk\win32\gdkinput.c" />
<File RelativePath="..\..\..\gdk\win32\gdkkeys-win32.c" />
<File RelativePath="..\..\..\gdk\win32\gdkmain-win32.c" />
<File RelativePath="..\..\..\gdk\win32\gdkpixmap-win32.c" />
<File RelativePath="..\..\..\gdk\win32\gdkproperty-win32.c" />
<File RelativePath="..\..\..\gdk\win32\gdkscreen-win32.c" />
<File RelativePath="..\..\..\gdk\win32\gdkselection-win32.c" />
<File RelativePath="..\..\..\gdk\win32\gdkspawn-win32.c" />
<File RelativePath="..\..\..\gdk\win32\gdktestutils-win32.c" />
<File RelativePath="..\..\..\gdk\win32\gdkvisual-win32.c" />
<File RelativePath="..\..\..\gdk\win32\gdkwin32id.c" />
<File RelativePath="..\..\..\gdk\win32\gdkwindow-win32.c" />
</Filter>
</Files>
</VisualStudioProject>
<?xml version="1.0" encoding="UTF-8"?>
<VisualStudioProject
ProjectType="Visual C++"
Version="9.00"
Name="gdk-win32"
ProjectGUID="{FC5AADB5-95CD-4BF0-BA8B-0C16FE7073FA}"
RootNamespace="gdkwin32"
Keyword="Win32Proj"
TargetFrameworkVersion="0"
>
<Platforms>
<Platform
Name="Win32"
/>
<Platform
Name="x64"
/>
</Platforms>
<ToolFiles>
</ToolFiles>
<Configurations>
<Configuration
Name="Debug|Win32"
InheritedPropertySheets=".\gtk-gen-srcs.vsprops"
ConfigurationType="4"
CharacterSet="2"
>
<Tool
Name="VCPreBuildEventTool"
/>
<Tool
Name="VCCLCompilerTool"
Optimization="0"
AdditionalIncludeDirectories="..\..\..\gdk-pixbuf;..\..\..\gdk;..\..\..\gdk\win32"
PreprocessorDefinitions="_DEBUG;G_ENABLE_DEBUG;$(GdkDefines);INSIDE_GDK_WIN32"
MinimalRebuild="true"
BasicRuntimeChecks="3"
RuntimeLibrary="3"
UsePrecompiledHeader="0"
WarningLevel="3"
DebugInformationFormat="4"
/>
</Configuration>
<Configuration
Name="Release|Win32"
InheritedPropertySheets=".\gtk-gen-srcs.vsprops"
ConfigurationType="4"
CharacterSet="2"
>
<Tool
Name="VCPreBuildEventTool"
/>
<Tool
Name="VCCLCompilerTool"
AdditionalIncludeDirectories="..\..\..\gdk-pixbuf;..\..\..\gdk;..\..\..\gdk\win32"
PreprocessorDefinitions="$(GdkDefines);INSIDE_GDK_WIN32"
RuntimeLibrary="2"
UsePrecompiledHeader="0"
WarningLevel="3"
DebugInformationFormat="3"
/>
</Configuration>
<Configuration
Name="Debug|x64"
InheritedPropertySheets=".\gtk-gen-srcs.vsprops"
ConfigurationType="4"
CharacterSet="2"
>
<Tool
Name="VCPreBuildEventTool"
/>
<Tool
Name="VCCLCompilerTool"
Optimization="0"
AdditionalIncludeDirectories="..\..\..\gdk-pixbuf;..\..\..\gdk;..\..\..\gdk\win32"
PreprocessorDefinitions="_DEBUG;G_ENABLE_DEBUG;$(GdkDefines);INSIDE_GDK_WIN32"
MinimalRebuild="true"
BasicRuntimeChecks="3"
RuntimeLibrary="3"
UsePrecompiledHeader="0"
WarningLevel="3"
DebugInformationFormat="3"
/>
</Configuration>
<Configuration
Name="Release|x64"
InheritedPropertySheets=".\gtk-gen-srcs.vsprops"
ConfigurationType="4"
CharacterSet="2"
>
<Tool
Name="VCPreBuildEventTool"
/>
<Tool
Name="VCCLCompilerTool"
AdditionalIncludeDirectories="..\..\..\gdk-pixbuf;..\..\..\gdk;..\..\..\gdk\win32"
PreprocessorDefinitions="$(GdkDefines);INSIDE_GDK_WIN32"
RuntimeLibrary="2"
UsePrecompiledHeader="0"
WarningLevel="3"
DebugInformationFormat="3"
/>
</Configuration>
</Configurations>
<References>
</References>
<Files>
<Filter
Name="Header Files"
Filter="h;hpp;hxx;hm;inl;inc;xsd"
UniqueIdentifier="{93995380-89BD-4b04-88EB-625FBE52EBFB}"
>
</Filter>
<Filter
Name="Resource Files"
Filter="rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx"
UniqueIdentifier="{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}"
>
<File RelativePath="..\..\..\config.h.win32">
<FileConfiguration Name="Debug|Win32">
<Tool Name="VCCustomBuildTool"
Description="Copying config.h from config.h.win32..."
CommandLine="$(CopyConfigH)"
Outputs="..\..\..\config.h"
/>
</FileConfiguration>
<FileConfiguration Name="Release|Win32">
<Tool Name="VCCustomBuildTool"
Description="Copying config.h from config.h.win32..."
CommandLine="$(CopyConfigH)"
Outputs="..\..\..\config.h"
/>
</FileConfiguration>
<FileConfiguration Name="Debug|x64">
<Tool Name="VCCustomBuildTool"
Description="Copying config.h from config.h.win32..."
CommandLine="$(CopyConfigH)"
Outputs="..\..\..\config.h"
/>
</FileConfiguration>
<FileConfiguration Name="Release|x64">
<Tool Name="VCCustomBuildTool"
Description="Copying config.h from config.h.win32..."
CommandLine="$(CopyConfigH)"
Outputs="..\..\..\config.h"
/>
</FileConfiguration>
</File>
<File RelativePath="..\..\..\gdk\gdkconfig.h.win32">
<FileConfiguration Name="Debug|Win32">
<Tool Name="VCCustomBuildTool"
Description="Copying gdkconfig.h from gdkconfig.h.win32..."
CommandLine="$(CopyGdkConfigH)"
Outputs="..\..\..\gdk\gdkconfig.h"
/>
</FileConfiguration>
<FileConfiguration Name="Release|Win32">
<Tool Name="VCCustomBuildTool"
Description="Copying gdkconfig.h from gdkconfig.h.win32..."
CommandLine="$(CopyGdkConfigH)"
Outputs="..\..\..\gdk\gdkconfig.h"
/>
</FileConfiguration>
<FileConfiguration Name="Debug|x64">
<Tool Name="VCCustomBuildTool"
Description="Copying gdkconfig.h from gdkconfig.h.win32..."
CommandLine="$(CopyGdkConfigH)"
Outputs="..\..\..\gdk\gdkconfig.h"
/>
</FileConfiguration>
<FileConfiguration Name="Release|x64">
<Tool Name="VCCustomBuildTool"
Description="Copying gdkconfig.h from gdkconfig.h.win32..."
CommandLine="$(CopyGdkConfigH)"
Outputs="..\..\..\gdk\gdkconfig.h"
/>
</FileConfiguration>
</File>
</Filter>
<Filter
Name="Source Files"
Filter="cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx"
UniqueIdentifier="{4FC737F1-C7A5-4376-A066-2A32D752A2FF}"
>
#include "gdk-win32.sourcefiles"
</Filter>
</Files>
</VisualStudioProject>
+221 -220
View File
@@ -1,220 +1,221 @@
<?xml version="1.0" encoding="UTF-8"?>
<VisualStudioProject
ProjectType="Visual C++"
Version="9.00"
Name="gdk"
ProjectGUID="{FC5AADB5-95CD-4BF0-BA8B-0C16FE7073F7}"
RootNamespace="gdk"
Keyword="Win32Proj"
TargetFrameworkVersion="0"
>
<Platforms>
<Platform
Name="Win32"
/>
<Platform
Name="x64"
/>
</Platforms>
<ToolFiles>
</ToolFiles>
<Configurations>
<Configuration
Name="Debug|Win32"
InheritedPropertySheets=".\gtk+.vsprops"
ConfigurationType="2"
CharacterSet="2"
>
<Tool
Name="VCPreBuildEventTool"
/>
<Tool
Name="VCCLCompilerTool"
Optimization="0"
AdditionalIncludeDirectories="..\..\..\gdk-pixbuf;..\..\..\gdk"
PreprocessorDefinitions="_DEBUG;$(GdkDefines)"
MinimalRebuild="true"
BasicRuntimeChecks="3"
RuntimeLibrary="2"
UsePrecompiledHeader="0"
WarningLevel="3"
DebugInformationFormat="4"
/>
<Tool
Name="VCLinkerTool"
AdditionalDependencies="cairo.lib pango-1.0.lib pangocairo-1.0.lib imm32.lib"
OutputFile="$(OutDir)\$(GtkDllPrefix)$(ProjectName)-win32$(GtkDllSuffix).dll"
LinkIncremental="2"
ModuleDefinitionFile="$(IntDir)\gdk.def"
GenerateDebugInformation="true"
SubSystem="2"
ImportLibrary="$(TargetDir)$(ProjectName)-win32-$(GtkApiVersion).lib"
TargetMachine="1"
/>
</Configuration>
<Configuration
Name="Release|Win32"
InheritedPropertySheets=".\gtk+.vsprops"
ConfigurationType="2"
CharacterSet="2"
>
<Tool
Name="VCPreBuildEventTool"
/>
<Tool
Name="VCCLCompilerTool"
AdditionalIncludeDirectories="..\..\..\gdk-pixbuf;..\..\..\gdk;..\..\..\gdk\win32"
PreprocessorDefinitions="$(GdkDefines)"
RuntimeLibrary="2"
UsePrecompiledHeader="0"
WarningLevel="3"
DebugInformationFormat="3"
/>
<Tool
Name="VCLinkerTool"
AdditionalDependencies="cairo.lib"
OutputFile="$(OutDir)\$(GtkDllPrefix)$(ProjectName)-win32$(GtkDllSuffix).dll"
LinkIncremental="2"
ModuleDefinitionFile="$(IntDir)\gdk.def"
GenerateDebugInformation="true"
SubSystem="2"
OptimizeReferences="2"
EnableCOMDATFolding="2"
ImportLibrary="$(TargetDir)$(ProjectName)-win32-$(GtkApiVersion).lib"
TargetMachine="1"
/>
</Configuration>
<Configuration
Name="Debug|x64"
InheritedPropertySheets=".\gtk+.vsprops"
ConfigurationType="2"
CharacterSet="2"
>
<Tool
Name="VCPreBuildEventTool"
/>
<Tool
Name="VCCLCompilerTool"
Optimization="0"
AdditionalIncludeDirectories="..\..\..\gdk-pixbuf;..\..\..\gdk;..\..\..\gdk\win32"
PreprocessorDefinitions="_DEBUG;$(GdkDefines)"
MinimalRebuild="true"
BasicRuntimeChecks="3"
RuntimeLibrary="3"
UsePrecompiledHeader="0"
WarningLevel="3"
DebugInformationFormat="3"
/>
<Tool
Name="VCLinkerTool"
AdditionalDependencies="cairo.lib"
OutputFile="$(OutDir)\$(GtkDllPrefix)$(ProjectName)-win32$(GtkDllSuffix).dll"
LinkIncremental="2"
ModuleDefinitionFile="$(IntDir)\gdk.def"
GenerateDebugInformation="true"
SubSystem="2"
ImportLibrary="$(TargetDir)$(ProjectName)-win32-$(GtkApiVersion).lib"
TargetMachine="17"
/>
</Configuration>
<Configuration
Name="Release|x64"
InheritedPropertySheets=".\gtk+.vsprops"
ConfigurationType="2"
CharacterSet="2"
>
<Tool
Name="VCPreBuildEventTool"
/>
<Tool
Name="VCCLCompilerTool"
AdditionalIncludeDirectories="..\..\..\gdk-pixbuf;..\..\..\gdk;..\..\..\gdk\win32"
PreprocessorDefinitions="$(GdkDefines)"
RuntimeLibrary="2"
UsePrecompiledHeader="0"
WarningLevel="3"
DebugInformationFormat="3"
/>
<Tool
Name="VCLinkerTool"
AdditionalDependencies="cairo.lib"
OutputFile="$(OutDir)\$(GtkDllPrefix)$(ProjectName)-win32$(GtkDllSuffix).dll"
LinkIncremental="2"
ModuleDefinitionFile="$(IntDir)\gdk.def"
GenerateDebugInformation="true"
SubSystem="2"
OptimizeReferences="2"
EnableCOMDATFolding="2"
ImportLibrary="$(TargetDir)$(ProjectName)-win32-$(GtkApiVersion).lib"
TargetMachine="17"
/>
</Configuration>
</Configurations>
<References>
</References>
<Files>
<Filter
Name="Header Files"
Filter="h;hpp;hxx;hm;inl;inc;xsd"
UniqueIdentifier="{93995380-89BD-4b04-88EB-625FBE52EBFB}"
>
</Filter>
<Filter
Name="Resource Files"
Filter="rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx"
UniqueIdentifier="{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}"
>
<File
RelativePath="..\..\..\gdk\gdk.symbols"
>
<FileConfiguration
Name="Debug|Win32"
>
<Tool
Name="VCCustomBuildTool"
Description="Generating gdk.def"
CommandLine="$(GtkGenerateGdkDef)"
Outputs="$(IntDir)\gdk.def"
/>
</FileConfiguration>
<FileConfiguration
Name="Debug|x64"
>
<Tool
Name="VCCustomBuildTool"
Description="Generating gdk.def"
CommandLine="$(GtkGenerateGdkDef)"
Outputs="$(IntDir)\gdk.def"
/>
</FileConfiguration>
<FileConfiguration
Name="Release|Win32"
>
<Tool
Name="VCCustomBuildTool"
Description="Generating gdk.def"
CommandLine="$(GtkGenerateGdkDef)"
Outputs="$(IntDir)\gdk.def"
/>
</FileConfiguration>
<FileConfiguration
Name="Release|x64"
>
<Tool
Name="VCCustomBuildTool"
Description="Generating gdk.def"
CommandLine="$(GtkGenerateGdkDef)"
Outputs="$(IntDir)\gdk.def"
/>
</FileConfiguration>
</File>
</Filter>
<Filter
Name="Source Files"
Filter="cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx"
UniqueIdentifier="{4FC737F1-C7A5-4376-A066-2A32D752A2FF}"
>
#include "libgdk.sourcefiles"
</Filter>
</Files>
</VisualStudioProject>
<?xml version="1.0" encoding="UTF-8"?>
<VisualStudioProject
ProjectType="Visual C++"
Version="9.00"
Name="gdk"
ProjectGUID="{FC5AADB5-95CD-4BF0-BA8B-0C16FE7073F7}"
RootNamespace="gdk"
Keyword="Win32Proj"
TargetFrameworkVersion="0"
>
<Platforms>
<Platform
Name="Win32"
/>
<Platform
Name="x64"
/>
</Platforms>
<ToolFiles>
</ToolFiles>
<Configurations>
<Configuration
Name="Debug|Win32"
InheritedPropertySheets=".\gtk-gen-srcs.vsprops"
ConfigurationType="2"
CharacterSet="2"
>
<Tool
Name="VCPreBuildEventTool"
/>
<Tool
Name="VCCLCompilerTool"
Optimization="0"
AdditionalIncludeDirectories="..\..\..\gdk"
PreprocessorDefinitions="_DEBUG;G_ENABLE_DEBUG;$(GdkDefines)"
MinimalRebuild="true"
BasicRuntimeChecks="3"
RuntimeLibrary="3"
UsePrecompiledHeader="0"
WarningLevel="3"
DebugInformationFormat="4"
/>
<Tool
Name="VCLinkerTool"
AdditionalDependencies="cairo.lib pango-1.0.lib pangocairo-1.0.lib imm32.lib"
OutputFile="$(OutDir)\$(GtkDllPrefix)$(ProjectName)-win32$(GtkDllSuffix).dll"
LinkIncremental="2"
ModuleDefinitionFile="$(IntDir)\gdk.def"
GenerateDebugInformation="true"
SubSystem="2"
ImportLibrary="$(TargetDir)$(ProjectName)-win32-$(ApiVersion).lib"
TargetMachine="1"
/>
</Configuration>
<Configuration
Name="Release|Win32"
InheritedPropertySheets=".\gtk-gen-srcs.vsprops"
ConfigurationType="2"
CharacterSet="2"
>
<Tool
Name="VCPreBuildEventTool"
/>
<Tool
Name="VCCLCompilerTool"
AdditionalIncludeDirectories="..\..\..\gdk;..\..\..\gdk\win32"
PreprocessorDefinitions="$(GdkDefines)"
RuntimeLibrary="2"
UsePrecompiledHeader="0"
WarningLevel="3"
DebugInformationFormat="3"
/>
<Tool
Name="VCLinkerTool"
AdditionalDependencies="cairo.lib pango-1.0.lib pangocairo-1.0.lib imm32.lib"
OutputFile="$(OutDir)\$(GtkDllPrefix)$(ProjectName)-win32$(GtkDllSuffix).dll"
LinkIncremental="2"
ModuleDefinitionFile="$(IntDir)\gdk.def"
GenerateDebugInformation="true"
SubSystem="2"
OptimizeReferences="2"
EnableCOMDATFolding="2"
ImportLibrary="$(TargetDir)$(ProjectName)-win32-$(ApiVersion).lib"
TargetMachine="1"
/>
</Configuration>
<Configuration
Name="Debug|x64"
InheritedPropertySheets=".\gtk-gen-srcs.vsprops"
ConfigurationType="2"
CharacterSet="2"
>
<Tool
Name="VCPreBuildEventTool"
/>
<Tool
Name="VCCLCompilerTool"
Optimization="0"
AdditionalIncludeDirectories="..\..\..\gdk;..\..\..\gdk\win32"
PreprocessorDefinitions="_DEBUG;G_ENABLE_DEBUG;$(GdkDefines)"
MinimalRebuild="true"
BasicRuntimeChecks="3"
RuntimeLibrary="3"
UsePrecompiledHeader="0"
WarningLevel="3"
DebugInformationFormat="3"
/>
<Tool
Name="VCLinkerTool"
AdditionalDependencies="cairo.lib pango-1.0.lib pangocairo-1.0.lib imm32.lib"
OutputFile="$(OutDir)\$(GtkDllPrefix)$(ProjectName)-win32$(GtkDllSuffix).dll"
LinkIncremental="2"
ModuleDefinitionFile="$(IntDir)\gdk.def"
GenerateDebugInformation="true"
SubSystem="2"
ImportLibrary="$(TargetDir)$(ProjectName)-win32-$(ApiVersion).lib"
TargetMachine="17"
/>
</Configuration>
<Configuration
Name="Release|x64"
InheritedPropertySheets=".\gtk-gen-srcs.vsprops"
ConfigurationType="2"
CharacterSet="2"
>
<Tool
Name="VCPreBuildEventTool"
/>
<Tool
Name="VCCLCompilerTool"
AdditionalIncludeDirectories="..\..\..\gdk;..\..\..\gdk\win32"
PreprocessorDefinitions="$(GdkDefines)"
RuntimeLibrary="2"
UsePrecompiledHeader="0"
WarningLevel="3"
DebugInformationFormat="3"
/>
<Tool
Name="VCLinkerTool"
AdditionalDependencies="cairo.lib pango-1.0.lib pangocairo-1.0.lib imm32.lib"
OutputFile="$(OutDir)\$(GtkDllPrefix)$(ProjectName)-win32$(GtkDllSuffix).dll"
LinkIncremental="2"
ModuleDefinitionFile="$(IntDir)\gdk.def"
GenerateDebugInformation="true"
SubSystem="2"
OptimizeReferences="2"
EnableCOMDATFolding="2"
ImportLibrary="$(TargetDir)$(ProjectName)-win32-$(ApiVersion).lib"
TargetMachine="17"
/>
</Configuration>
</Configurations>
<References>
</References>
<Files>
<Filter
Name="Header Files"
Filter="h;hpp;hxx;hm;inl;inc;xsd"
UniqueIdentifier="{93995380-89BD-4b04-88EB-625FBE52EBFB}"
>
</Filter>
<Filter
Name="Resource Files"
Filter="rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx"
UniqueIdentifier="{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}"
>
<File
RelativePath="..\..\..\gdk\gdk.symbols"
>
<FileConfiguration
Name="Debug|Win32"
>
<Tool
Name="VCCustomBuildTool"
Description="Generating gdk.def"
CommandLine="$(GtkGenerateGdkDef)"
Outputs="$(IntDir)\gdk.def"
/>
</FileConfiguration>
<FileConfiguration
Name="Debug|x64"
>
<Tool
Name="VCCustomBuildTool"
Description="Generating gdk.def"
CommandLine="$(GtkGenerateGdkDef)"
Outputs="$(IntDir)\gdk.def"
/>
</FileConfiguration>
<FileConfiguration
Name="Release|Win32"
>
<Tool
Name="VCCustomBuildTool"
Description="Generating gdk.def"
CommandLine="$(GtkGenerateGdkDef)"
Outputs="$(IntDir)\gdk.def"
/>
</FileConfiguration>
<FileConfiguration
Name="Release|x64"
>
<Tool
Name="VCCustomBuildTool"
Description="Generating gdk.def"
CommandLine="$(GtkGenerateGdkDef)"
Outputs="$(IntDir)\gdk.def"
/>
</FileConfiguration>
</File>
<File RelativePath="..\..\..\gdk\win32\rc\gdk.rc" />
</Filter>
<Filter
Name="Source Files"
Filter="cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx"
UniqueIdentifier="{4FC737F1-C7A5-4376-A066-2A32D752A2FF}"
>
#include "gdk.sourcefiles"
</Filter>
</Files>
</VisualStudioProject>
+63 -61
View File
@@ -1,46 +1,48 @@
Microsoft Visual Studio Solution File, Format Version 10.00
# Visual Studio 2008
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "gdk-pixbuf", "gdk-pixbuf.vcproj", "{FC5AADB5-95CD-4BF0-BA8B-0C16FE7073F6}"
EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "gdk-pixbuf-csource", "gdk-pixbuf-csource.vcproj", "{FC5AADB5-95CD-4BF0-BA8B-0C16FE7073F8}"
ProjectSection(ProjectDependencies) = postProject
{FC5AADB5-95CD-4BF0-BA8B-0C16FE7073F6} = {FC5AADB5-95CD-4BF0-BA8B-0C16FE7073F6}
EndProjectSection
EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "gdk-pixbuf-query-loaders", "gdk-pixbuf-query-loaders.vcproj", "{FC5AADB5-95CD-4BF0-BA8B-0C16FE7073F9}"
ProjectSection(ProjectDependencies) = postProject
{FC5AADB5-95CD-4BF0-BA8B-0C16FE7073F6} = {FC5AADB5-95CD-4BF0-BA8B-0C16FE7073F6}
EndProjectSection
EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "gdk-win32", "gdk-win32.vcproj", "{FC5AADB5-95CD-4BF0-BA8B-0C16FE7073FA}"
EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "gdk", "gdk.vcproj", "{FC5AADB5-95CD-4BF0-BA8B-0C16FE7073F7}"
ProjectSection(ProjectDependencies) = postProject
{FC5AADB5-95CD-4BF0-BA8B-0C16FE7073F6} = {FC5AADB5-95CD-4BF0-BA8B-0C16FE7073F6}
{FC5AADB5-95CD-4BF0-BA8B-0C16FE7073FA} = {FC5AADB5-95CD-4BF0-BA8B-0C16FE7073FA}
EndProjectSection
EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "gtk", "gtk.vcproj", "{FC5AADB5-95CD-4BF0-BA8B-0C16FE7073F5}"
ProjectSection(ProjectDependencies) = postProject
{FC5AADB5-95CD-4BF0-BA8B-0C16FE7073F6} = {FC5AADB5-95CD-4BF0-BA8B-0C16FE7073F6}
{FC5AADB5-95CD-4BF0-BA8B-0C16FE7073F7} = {FC5AADB5-95CD-4BF0-BA8B-0C16FE7073F7}
EndProjectSection
EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "gtk-demo", "gtk-demo.vcproj", "{FC5AADB5-95CD-4BF0-BA8B-0C16FE7073FC}"
ProjectSection(ProjectDependencies) = postProject
{FC5AADB5-95CD-4BF0-BA8B-0C16FE7073F6} = {FC5AADB5-95CD-4BF0-BA8B-0C16FE7073F6}
{FC5AADB5-95CD-4BF0-BA8B-0C16FE7073F7} = {FC5AADB5-95CD-4BF0-BA8B-0C16FE7073F7}
{FC5AADB5-95CD-4BF0-BA8B-0C16FE7073F5} = {FC5AADB5-95CD-4BF0-BA8B-0C16FE7073F5}
{FC5AADB5-95CD-4BF0-BA8B-0C16FE7073F7} = {FC5AADB5-95CD-4BF0-BA8B-0C16FE7073F7}
EndProjectSection
EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "install", "install.vcproj", "{FC5AADB5-95CD-4BF0-BA8B-0C16FE7073FB}"
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "gtk-install", "gtk-install.vcproj", "{FC5AADB5-95CD-4BF0-BA8B-0C16FE8073FB}"
ProjectSection(ProjectDependencies) = postProject
{FC5AADB5-95CD-4BF0-BA8B-0C16FE7073F6} = {FC5AADB5-95CD-4BF0-BA8B-0C16FE7073F6}
{FC5AADB5-95CD-4BF0-BA8B-0C16FE7073F8} = {FC5AADB5-95CD-4BF0-BA8B-0C16FE7073F8}
{FC5AADB5-95CD-4BF0-BA8B-0C16FE7073F9} = {FC5AADB5-95CD-4BF0-BA8B-0C16FE7073F9}
{FC5AADB5-95CD-4BF0-BA8B-0C16FE7073F7} = {FC5AADB5-95CD-4BF0-BA8B-0C16FE7073F7}
{FC5AADB5-95CD-4BF0-BA8B-0C16FE7073F5} = {FC5AADB5-95CD-4BF0-BA8B-0C16FE7073F5}
{FC5AADB5-95CD-4BF0-BA8B-0C16FE7073F7} = {FC5AADB5-95CD-4BF0-BA8B-0C16FE7073F7}
{FC5AADB5-95CD-4BF0-BA8B-0C16FE7073FC} = {FC5AADB5-95CD-4BF0-BA8B-0C16FE7073FC}
{B3B6558A-01C8-4C72-9BDE-84ABB1AE67DF} = {B3B6558A-01C8-4C72-9BDE-84ABB1AE67DF}
{7660FB4E-2AE6-483E-8813-0974CBE6F97F} = {7660FB4E-2AE6-483E-8813-0974CBE6F97F}
{FAB0AD6F-AEBF-4AF8-A1CC-6890A9090945} = {FAB0AD6F-AEBF-4AF8-A1CC-6890A9090945}
EndProjectSection
EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "gailutil", "gailutil.vcproj", "{B3B6558A-01C8-4C72-9BDE-84ABB1AE67DF}"
ProjectSection(ProjectDependencies) = postProject
{FC5AADB5-95CD-4BF0-BA8B-0C16FE7073F5} = {FC5AADB5-95CD-4BF0-BA8B-0C16FE7073F5}
{FC5AADB5-95CD-4BF0-BA8B-0C16FE7073F7} = {FC5AADB5-95CD-4BF0-BA8B-0C16FE7073F7}
EndProjectSection
EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libwimp", "libwimp.vcproj", "{7660FB4E-2AE6-483E-8813-0974CBE6F97F}"
ProjectSection(ProjectDependencies) = postProject
{FC5AADB5-95CD-4BF0-BA8B-0C16FE7073F5} = {FC5AADB5-95CD-4BF0-BA8B-0C16FE7073F5}
{FC5AADB5-95CD-4BF0-BA8B-0C16FE7073F7} = {FC5AADB5-95CD-4BF0-BA8B-0C16FE7073F7}
EndProjectSection
EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "gtk-update-icon-cache", "gtk-update-icon-cache.vcproj", "{FAB0AD6F-AEBF-4AF8-A1CC-6890A9090945}"
ProjectSection(ProjectDependencies) = postProject
{FC5AADB5-95CD-4BF0-BA8B-0C16FE7073FA} = {FC5AADB5-95CD-4BF0-BA8B-0C16FE7073FA}
EndProjectSection
EndProject
Global
@@ -51,38 +53,6 @@ Global
Release|x64 = Release|x64
EndGlobalSection
GlobalSection(ProjectConfigurationPlatforms) = postSolution
{FC5AADB5-95CD-4BF0-BA8B-0C16FE7073F6}.Debug|Win32.ActiveCfg = Debug|Win32
{FC5AADB5-95CD-4BF0-BA8B-0C16FE7073F6}.Debug|Win32.Build.0 = Debug|Win32
{FC5AADB5-95CD-4BF0-BA8B-0C16FE7073F6}.Debug|x64.ActiveCfg = Debug|x64
{FC5AADB5-95CD-4BF0-BA8B-0C16FE7073F6}.Debug|x64.Build.0 = Debug|x64
{FC5AADB5-95CD-4BF0-BA8B-0C16FE7073F6}.Release|Win32.ActiveCfg = Release|Win32
{FC5AADB5-95CD-4BF0-BA8B-0C16FE7073F6}.Release|Win32.Build.0 = Release|Win32
{FC5AADB5-95CD-4BF0-BA8B-0C16FE7073F6}.Release|x64.ActiveCfg = Release|x64
{FC5AADB5-95CD-4BF0-BA8B-0C16FE7073F6}.Release|x64.Build.0 = Release|x64
{FC5AADB5-95CD-4BF0-BA8B-0C16FE7073F8}.Debug|Win32.ActiveCfg = Debug|Win32
{FC5AADB5-95CD-4BF0-BA8B-0C16FE7073F8}.Debug|Win32.Build.0 = Debug|Win32
{FC5AADB5-95CD-4BF0-BA8B-0C16FE7073F8}.Debug|x64.ActiveCfg = Debug|x64
{FC5AADB5-95CD-4BF0-BA8B-0C16FE7073F8}.Debug|x64.Build.0 = Debug|x64
{FC5AADB5-95CD-4BF0-BA8B-0C16FE7073F8}.Release|Win32.ActiveCfg = Release|Win32
{FC5AADB5-95CD-4BF0-BA8B-0C16FE7073F8}.Release|Win32.Build.0 = Release|Win32
{FC5AADB5-95CD-4BF0-BA8B-0C16FE7073F8}.Release|x64.ActiveCfg = Release|x64
{FC5AADB5-95CD-4BF0-BA8B-0C16FE7073F8}.Release|x64.Build.0 = Release|x64
{FC5AADB5-95CD-4BF0-BA8B-0C16FE7073F9}.Debug|Win32.ActiveCfg = Debug|Win32
{FC5AADB5-95CD-4BF0-BA8B-0C16FE7073F9}.Debug|Win32.Build.0 = Debug|Win32
{FC5AADB5-95CD-4BF0-BA8B-0C16FE7073F9}.Debug|x64.ActiveCfg = Debug|x64
{FC5AADB5-95CD-4BF0-BA8B-0C16FE7073F9}.Debug|x64.Build.0 = Debug|x64
{FC5AADB5-95CD-4BF0-BA8B-0C16FE7073F9}.Release|Win32.ActiveCfg = Release|Win32
{FC5AADB5-95CD-4BF0-BA8B-0C16FE7073F9}.Release|Win32.Build.0 = Release|Win32
{FC5AADB5-95CD-4BF0-BA8B-0C16FE7073F9}.Release|x64.ActiveCfg = Release|x64
{FC5AADB5-95CD-4BF0-BA8B-0C16FE7073F9}.Release|x64.Build.0 = Release|x64
{FC5AADB5-95CD-4BF0-BA8B-0C16FE7073F7}.Debug|Win32.ActiveCfg = Debug|Win32
{FC5AADB5-95CD-4BF0-BA8B-0C16FE7073F7}.Debug|Win32.Build.0 = Debug|Win32
{FC5AADB5-95CD-4BF0-BA8B-0C16FE7073F7}.Debug|x64.ActiveCfg = Debug|x64
{FC5AADB5-95CD-4BF0-BA8B-0C16FE7073F7}.Debug|x64.Build.0 = Debug|x64
{FC5AADB5-95CD-4BF0-BA8B-0C16FE7073F7}.Release|Win32.ActiveCfg = Release|Win32
{FC5AADB5-95CD-4BF0-BA8B-0C16FE7073F7}.Release|Win32.Build.0 = Release|Win32
{FC5AADB5-95CD-4BF0-BA8B-0C16FE7073F7}.Release|x64.ActiveCfg = Release|x64
{FC5AADB5-95CD-4BF0-BA8B-0C16FE7073F7}.Release|x64.Build.0 = Release|x64
{FC5AADB5-95CD-4BF0-BA8B-0C16FE7073FA}.Debug|Win32.ActiveCfg = Debug|Win32
{FC5AADB5-95CD-4BF0-BA8B-0C16FE7073FA}.Debug|Win32.Build.0 = Debug|Win32
{FC5AADB5-95CD-4BF0-BA8B-0C16FE7073FA}.Debug|x64.ActiveCfg = Debug|x64
@@ -91,6 +61,14 @@ Global
{FC5AADB5-95CD-4BF0-BA8B-0C16FE7073FA}.Release|Win32.Build.0 = Release|Win32
{FC5AADB5-95CD-4BF0-BA8B-0C16FE7073FA}.Release|x64.ActiveCfg = Release|x64
{FC5AADB5-95CD-4BF0-BA8B-0C16FE7073FA}.Release|x64.Build.0 = Release|x64
{FC5AADB5-95CD-4BF0-BA8B-0C16FE7073F7}.Debug|Win32.ActiveCfg = Debug|Win32
{FC5AADB5-95CD-4BF0-BA8B-0C16FE7073F7}.Debug|Win32.Build.0 = Debug|Win32
{FC5AADB5-95CD-4BF0-BA8B-0C16FE7073F7}.Debug|x64.ActiveCfg = Debug|x64
{FC5AADB5-95CD-4BF0-BA8B-0C16FE7073F7}.Debug|x64.Build.0 = Debug|x64
{FC5AADB5-95CD-4BF0-BA8B-0C16FE7073F7}.Release|Win32.ActiveCfg = Release|Win32
{FC5AADB5-95CD-4BF0-BA8B-0C16FE7073F7}.Release|Win32.Build.0 = Release|Win32
{FC5AADB5-95CD-4BF0-BA8B-0C16FE7073F7}.Release|x64.ActiveCfg = Release|x64
{FC5AADB5-95CD-4BF0-BA8B-0C16FE7073F7}.Release|x64.Build.0 = Release|x64
{FC5AADB5-95CD-4BF0-BA8B-0C16FE7073F5}.Debug|Win32.ActiveCfg = Debug|Win32
{FC5AADB5-95CD-4BF0-BA8B-0C16FE7073F5}.Debug|Win32.Build.0 = Debug|Win32
{FC5AADB5-95CD-4BF0-BA8B-0C16FE7073F5}.Debug|x64.ActiveCfg = Debug|x64
@@ -99,14 +77,6 @@ Global
{FC5AADB5-95CD-4BF0-BA8B-0C16FE7073F5}.Release|Win32.Build.0 = Release|Win32
{FC5AADB5-95CD-4BF0-BA8B-0C16FE7073F5}.Release|x64.ActiveCfg = Release|x64
{FC5AADB5-95CD-4BF0-BA8B-0C16FE7073F5}.Release|x64.Build.0 = Release|x64
{FC5AADB5-95CD-4BF0-BA8B-0C16FE7073FB}.Debug|Win32.ActiveCfg = Debug|Win32
{FC5AADB5-95CD-4BF0-BA8B-0C16FE7073FB}.Debug|Win32.Build.0 = Debug|Win32
{FC5AADB5-95CD-4BF0-BA8B-0C16FE7073FB}.Debug|x64.ActiveCfg = Debug|x64
{FC5AADB5-95CD-4BF0-BA8B-0C16FE7073FB}.Debug|x64.Build.0 = Debug|x64
{FC5AADB5-95CD-4BF0-BA8B-0C16FE7073FB}.Release|Win32.ActiveCfg = Release|Win32
{FC5AADB5-95CD-4BF0-BA8B-0C16FE7073FB}.Release|Win32.Build.0 = Release|Win32
{FC5AADB5-95CD-4BF0-BA8B-0C16FE7073FB}.Release|x64.ActiveCfg = Release|x64
{FC5AADB5-95CD-4BF0-BA8B-0C16FE7073FB}.Release|x64.Build.0 = Release|x64
{FC5AADB5-95CD-4BF0-BA8B-0C16FE7073FC}.Debug|Win32.ActiveCfg = Debug|Win32
{FC5AADB5-95CD-4BF0-BA8B-0C16FE7073FC}.Debug|Win32.Build.0 = Debug|Win32
{FC5AADB5-95CD-4BF0-BA8B-0C16FE7073FC}.Debug|x64.ActiveCfg = Debug|x64
@@ -115,6 +85,38 @@ Global
{FC5AADB5-95CD-4BF0-BA8B-0C16FE7073FC}.Release|Win32.Build.0 = Release|Win32
{FC5AADB5-95CD-4BF0-BA8B-0C16FE7073FC}.Release|x64.ActiveCfg = Release|x64
{FC5AADB5-95CD-4BF0-BA8B-0C16FE7073FC}.Release|x64.Build.0 = Release|x64
{FC5AADB5-95CD-4BF0-BA8B-0C16FE8073FB}.Debug|Win32.ActiveCfg = Debug|Win32
{FC5AADB5-95CD-4BF0-BA8B-0C16FE8073FB}.Debug|Win32.Build.0 = Debug|Win32
{FC5AADB5-95CD-4BF0-BA8B-0C16FE8073FB}.Debug|x64.ActiveCfg = Debug|x64
{FC5AADB5-95CD-4BF0-BA8B-0C16FE8073FB}.Debug|x64.Build.0 = Debug|x64
{FC5AADB5-95CD-4BF0-BA8B-0C16FE8073FB}.Release|Win32.ActiveCfg = Release|Win32
{FC5AADB5-95CD-4BF0-BA8B-0C16FE8073FB}.Release|Win32.Build.0 = Release|Win32
{FC5AADB5-95CD-4BF0-BA8B-0C16FE8073FB}.Release|x64.ActiveCfg = Release|x64
{FC5AADB5-95CD-4BF0-BA8B-0C16FE8073FB}.Release|x64.Build.0 = Release|x64
{B3B6558A-01C8-4C72-9BDE-84ABB1AE67DF}.Debug|Win32.ActiveCfg = Debug|Win32
{B3B6558A-01C8-4C72-9BDE-84ABB1AE67DF}.Debug|Win32.Build.0 = Debug|Win32
{B3B6558A-01C8-4C72-9BDE-84ABB1AE67DF}.Debug|x64.ActiveCfg = Debug|x64
{B3B6558A-01C8-4C72-9BDE-84ABB1AE67DF}.Debug|x64.Build.0 = Debug|x64
{B3B6558A-01C8-4C72-9BDE-84ABB1AE67DF}.Release|Win32.ActiveCfg = Release|Win32
{B3B6558A-01C8-4C72-9BDE-84ABB1AE67DF}.Release|Win32.Build.0 = Release|Win32
{B3B6558A-01C8-4C72-9BDE-84ABB1AE67DF}.Release|x64.ActiveCfg = Release|x64
{B3B6558A-01C8-4C72-9BDE-84ABB1AE67DF}.Release|x64.Build.0 = Release|x64
{7660FB4E-2AE6-483E-8813-0974CBE6F97F}.Debug|Win32.ActiveCfg = Debug|Win32
{7660FB4E-2AE6-483E-8813-0974CBE6F97F}.Debug|Win32.Build.0 = Debug|Win32
{7660FB4E-2AE6-483E-8813-0974CBE6F97F}.Debug|x64.ActiveCfg = Debug|x64
{7660FB4E-2AE6-483E-8813-0974CBE6F97F}.Debug|x64.Build.0 = Debug|x64
{7660FB4E-2AE6-483E-8813-0974CBE6F97F}.Release|Win32.ActiveCfg = Release|Win32
{7660FB4E-2AE6-483E-8813-0974CBE6F97F}.Release|Win32.Build.0 = Release|Win32
{7660FB4E-2AE6-483E-8813-0974CBE6F97F}.Release|x64.ActiveCfg = Release|x64
{7660FB4E-2AE6-483E-8813-0974CBE6F97F}.Release|x64.Build.0 = Release|x64
{FAB0AD6F-AEBF-4AF8-A1CC-6890A9090945}.Debug|Win32.ActiveCfg = Debug|Win32
{FAB0AD6F-AEBF-4AF8-A1CC-6890A9090945}.Debug|Win32.Build.0 = Debug|Win32
{FAB0AD6F-AEBF-4AF8-A1CC-6890A9090945}.Debug|x64.ActiveCfg = Debug|x64
{FAB0AD6F-AEBF-4AF8-A1CC-6890A9090945}.Debug|x64.Build.0 = Debug|x64
{FAB0AD6F-AEBF-4AF8-A1CC-6890A9090945}.Release|Win32.ActiveCfg = Release|Win32
{FAB0AD6F-AEBF-4AF8-A1CC-6890A9090945}.Release|Win32.Build.0 = Release|Win32
{FAB0AD6F-AEBF-4AF8-A1CC-6890A9090945}.Release|x64.ActiveCfg = Release|x64
{FAB0AD6F-AEBF-4AF8-A1CC-6890A9090945}.Release|x64.Build.0 = Release|x64
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
-390
View File
@@ -1,390 +0,0 @@
<?xml version="1.0" encoding="Windows-1252"?>
<VisualStudioPropertySheet
ProjectType="Visual C++"
Version="8.00"
Name="gtk+props"
OutputDirectory="$(SolutionDir)$(ConfigurationName)\$(PlatformName)\bin"
IntermediateDirectory="$(SolutionDir)$(ConfigurationName)\$(PlatformName)\obj"
>
<Tool
Name="VCCLCompilerTool"
AdditionalIncludeDirectories="..\..\..;$(GlibEtcInstallRoot)\lib\glib-2.0\include;$(GlibEtcInstallRoot)\include\glib-2.0;$(GlibEtcInstallRoot)\include;$(GlibEtcInstallRoot)\include\cairo;$(GlibEtcInstallRoot)\include\atk-1.0;$(GlibEtcInstallRoot)\include\pango-1.0"
PreprocessorDefinitions="HAVE_CONFIG_H;G_DISABLE_DEPRECATED;G_DISABLE_SINGLE_INCLUDES;ATK_DISABLE_SINGLE_INCLUDES;GDK_PIXBUF_DISABLE_SINGLE_INCLUDES;GTK_DISABLE_SINGLE_INCLUDES"
ForcedIncludeFiles="msvc_recommended_pragmas.h"
/>
<Tool
Name="VCLinkerTool"
AdditionalDependencies="gio-2.0.lib gmodule-2.0.lib gobject-2.0.lib glib-2.0.lib intl.lib"
AdditionalLibraryDirectories="$(GlibEtcInstallRoot)\lib"
/>
<Tool
Name="VCPreBuildEventTool"
CommandLine="
if exist ..\..\..\config.h goto DONE_CONFIG_H&#x0D;&#x0A;
copy ..\..\..\config.h.win32 ..\..\..\config.h&#x0D;&#x0A;
:DONE_CONFIG_H&#x0D;&#x0A;
if exist ..\..\..\gdk\gdkconfig.h goto DONE_GDKCONFIG_H&#x0D;&#x0A;
copy ..\..\..\gdk\gdkconfig.h.win32 ..\..\..\gdk\gdkconfig.h&#x0D;&#x0A;
:DONE_GDKCONFIG_H&#x0D;&#x0A;
"
/>
<UserMacro
Name="GtkApiVersion"
Value="2.0"
/>
<UserMacro
Name="GtkBinaryVersion"
Value="2.10.0"
/>
<UserMacro
Name="GtkDummyPrefix"
Value="/dummy"
/>
<UserMacro
Name="GtkPrefixDefine"
Value="GTK_PREFIX=\&quot;$(GtkDummyPrefix)\&quot;"
/>
<UserMacro
Name="GdkPixbufIncludedLoaderDefines"
Value="INCLUDE_ani;INCLUDE_icns;INCLUDE_pcx;INCLUDE_ras;INCLUDE_tga;INCLUDE_png;INCLUDE_pnm;INCLUDE_wbmp;INCLUDE_xbm;INCLUDE_xpm;INCLUDE_gdiplus"
/>
<UserMacro
Name="GdkPixbufDefines"
Value="GDK_PIXBUF_COMPILATION;GDK_PIXBUF_ENABLE_BACKEND;$(GtkPrefixDefine);$(GdkPixbufIncludedLoaderDefines)"
/>
<UserMacro
Name="GdkPixbufLibdirDefine"
Value="PIXBUF_LIBDIR=\&quot;$(GtkDummyPrefix)/lib/gtk-$(GtkApiVersion)/$(GtkBinaryVersion)/loaders\&quot;"
/>
<UserMacro
Name="GdkDefines"
Value="GDK_COMPILATION;G_LOG_DOMAIN=\&quot;Gdk\&quot;"
/>
<UserMacro
Name="GtkIncludedImmodulesDefines"
Value="INCLUDE_IM_am_et;INCLUDE_IM_cedilla;INCLUDE_IM_cyrillic_translit;INCLUDE_IM_ime;INCLUDE_IM_inuktitut;INCLUDE_IM_ipa;INCLUDE_IM_multipress;INCLUDE_IM_thai;INCLUDE_IM_ti_er;INCLUDE_IM_ti_et;INCLUDE_IM_viqr"
/>
<UserMacro
Name="GtkDefines"
Value="GTK_COMPILATION;G_LOG_DOMAIN=\&quot;Gtk\&quot;;GTK_HOST=\&quot;i686-pc-vs9\&quot;;GTK_PRINT_BACKENDS=\&quot;file\&quot;;GTK_PRINT_PREVIEW_COMMAND=\&quot;undefined-gtk-print-preview-command\&quot;;$(GtkIncludedImmodulesDefines);GTK_LIBDIR=\&quot;$(GtkDummyPrefix)/lib\&quot;;GTK_DATADIR=\&quot;$(GtkDummyPrefix)/share\&quot;GTK_DATA_PREFIX=\&quot;$(GtkDummyPrefix)\&quot;;GTK_SYSCONFDIR=\&quot;$(GtkDummyPrefix)/etc\&quot;;MULTIPRESS_CONFDIR=\&quot;$(GtkDummyPrefix)/etc/gtk-$(GtkApiVersion)\&quot;;MULTIPRESS_LOCALEDIR=\&quot;$(GtkDummyPrefix)/share/locale\&quot;;GTK_VERSION=\&quot;$(GtkVersion)/etc\&quot;;GTK_BINARY_VERSION=\&quot;$(GtkBinaryVersion)/etc\&quot;;GDK_DISABLE_DEPRECATED"
/>
<UserMacro
Name="GtkDoInstall"
Value="
echo on&#x0D;&#x0A;
mkdir $(OutDir)\bin&#x0D;&#x0A;
copy $(ConfigurationName)\$(PlatformName)\bin\*.dll $(OutDir)\bin&#x0D;&#x0A;
copy $(ConfigurationName)\$(PlatformName)\bin\*.exe $(OutDir)\bin&#x0D;&#x0A;
mkdir $(OutDir)\lib&#x0D;&#x0A;
copy $(ConfigurationName)\$(PlatformName)\bin\*-$(GtkApiVersion).lib $(OutDir)\lib&#x0D;&#x0A;
mkdir $(OutDir)\include\gtk-$(GtkApiVersion)\gdk-pixbuf&#x0D;&#x0A;
copy ..\..\..\gdk-pixbuf\gdk-pixbuf-animation.h $(OutDir)\include\gtk-$(GtkApiVersion)\gdk-pixbuf&#x0D;&#x0A;
copy ..\..\..\gdk-pixbuf\gdk-pixbuf-core.h $(OutDir)\include\gtk-$(GtkApiVersion)\gdk-pixbuf&#x0D;&#x0A;
copy ..\..\..\gdk-pixbuf\gdk-pixbuf-enum-types.h $(OutDir)\include\gtk-$(GtkApiVersion)\gdk-pixbuf&#x0D;&#x0A;
copy ..\..\..\gdk-pixbuf\gdk-pixbuf-features.h $(OutDir)\include\gtk-$(GtkApiVersion)\gdk-pixbuf&#x0D;&#x0A;
copy ..\..\..\gdk-pixbuf\gdk-pixbuf-io.h $(OutDir)\include\gtk-$(GtkApiVersion)\gdk-pixbuf&#x0D;&#x0A;
copy ..\..\..\gdk-pixbuf\gdk-pixbuf-loader.h $(OutDir)\include\gtk-$(GtkApiVersion)\gdk-pixbuf&#x0D;&#x0A;
copy ..\..\..\gdk-pixbuf\gdk-pixbuf-marshal.h $(OutDir)\include\gtk-$(GtkApiVersion)\gdk-pixbuf&#x0D;&#x0A;
copy ..\..\..\gdk-pixbuf\gdk-pixbuf-simple-anim.h $(OutDir)\include\gtk-$(GtkApiVersion)\gdk-pixbuf&#x0D;&#x0A;
copy ..\..\..\gdk-pixbuf\gdk-pixbuf-transform.h $(OutDir)\include\gtk-$(GtkApiVersion)\gdk-pixbuf&#x0D;&#x0A;
copy ..\..\..\gdk-pixbuf\gdk-pixbuf.h $(OutDir)\include\gtk-$(GtkApiVersion)\gdk-pixbuf&#x0D;&#x0A;
copy ..\..\..\gdk-pixbuf\gdk-pixdata.h $(OutDir)\include\gtk-$(GtkApiVersion)\gdk-pixbuf&#x0D;&#x0A;
mkdir $(OutDir)\include\gtk-$(GtkApiVersion)\gdk&#x0D;&#x0A;
copy ..\..\..\gdk\gdk.h $(OutDir)\include\gtk-$(GtkApiVersion)\gdk&#x0D;&#x0A;
copy ..\..\..\gdk\gdkapplaunchcontext.h $(OutDir)\include\gtk-$(GtkApiVersion)\gdk&#x0D;&#x0A;
copy ..\..\..\gdk\gdkcairo.h $(OutDir)\include\gtk-$(GtkApiVersion)\gdk&#x0D;&#x0A;
copy ..\..\..\gdk\gdkcolor.h $(OutDir)\include\gtk-$(GtkApiVersion)\gdk&#x0D;&#x0A;
copy ..\..\..\gdk\gdkcursor.h $(OutDir)\include\gtk-$(GtkApiVersion)\gdk&#x0D;&#x0A;
copy ..\..\..\gdk\gdkdisplay.h $(OutDir)\include\gtk-$(GtkApiVersion)\gdk&#x0D;&#x0A;
copy ..\..\..\gdk\gdkdisplaymanager.h $(OutDir)\include\gtk-$(GtkApiVersion)\gdk&#x0D;&#x0A;
copy ..\..\..\gdk\gdkdnd.h $(OutDir)\include\gtk-$(GtkApiVersion)\gdk&#x0D;&#x0A;
copy ..\..\..\gdk\gdkdrawable.h $(OutDir)\include\gtk-$(GtkApiVersion)\gdk&#x0D;&#x0A;
copy ..\..\..\gdk\gdkenumtypes.h $(OutDir)\include\gtk-$(GtkApiVersion)\gdk&#x0D;&#x0A;
copy ..\..\..\gdk\gdkevents.h $(OutDir)\include\gtk-$(GtkApiVersion)\gdk&#x0D;&#x0A;
copy ..\..\..\gdk\gdkfont.h $(OutDir)\include\gtk-$(GtkApiVersion)\gdk&#x0D;&#x0A;
copy ..\..\..\gdk\gdkgc.h $(OutDir)\include\gtk-$(GtkApiVersion)\gdk&#x0D;&#x0A;
copy ..\..\..\gdk\gdki18n.h $(OutDir)\include\gtk-$(GtkApiVersion)\gdk&#x0D;&#x0A;
copy ..\..\..\gdk\gdkimage.h $(OutDir)\include\gtk-$(GtkApiVersion)\gdk&#x0D;&#x0A;
copy ..\..\..\gdk\gdkinput.h $(OutDir)\include\gtk-$(GtkApiVersion)\gdk&#x0D;&#x0A;
copy ..\..\..\gdk\gdkkeys.h $(OutDir)\include\gtk-$(GtkApiVersion)\gdk&#x0D;&#x0A;
copy ..\..\..\gdk\gdkkeysyms.h $(OutDir)\include\gtk-$(GtkApiVersion)\gdk&#x0D;&#x0A;
copy ..\..\..\gdk\gdkpango.h $(OutDir)\include\gtk-$(GtkApiVersion)\gdk&#x0D;&#x0A;
copy ..\..\..\gdk\gdkpixbuf.h $(OutDir)\include\gtk-$(GtkApiVersion)\gdk&#x0D;&#x0A;
copy ..\..\..\gdk\gdkpixmap.h $(OutDir)\include\gtk-$(GtkApiVersion)\gdk&#x0D;&#x0A;
copy ..\..\..\gdk\gdkprivate.h $(OutDir)\include\gtk-$(GtkApiVersion)\gdk&#x0D;&#x0A;
copy ..\..\..\gdk\gdkproperty.h $(OutDir)\include\gtk-$(GtkApiVersion)\gdk&#x0D;&#x0A;
copy ..\..\..\gdk\gdkregion.h $(OutDir)\include\gtk-$(GtkApiVersion)\gdk&#x0D;&#x0A;
copy ..\..\..\gdk\gdkrgb.h $(OutDir)\include\gtk-$(GtkApiVersion)\gdk&#x0D;&#x0A;
copy ..\..\..\gdk\gdkscreen.h $(OutDir)\include\gtk-$(GtkApiVersion)\gdk&#x0D;&#x0A;
copy ..\..\..\gdk\gdkselection.h $(OutDir)\include\gtk-$(GtkApiVersion)\gdk&#x0D;&#x0A;
copy ..\..\..\gdk\gdkspawn.h $(OutDir)\include\gtk-$(GtkApiVersion)\gdk&#x0D;&#x0A;
copy ..\..\..\gdk\gdktestutils.h $(OutDir)\include\gtk-$(GtkApiVersion)\gdk&#x0D;&#x0A;
copy ..\..\..\gdk\gdktypes.h $(OutDir)\include\gtk-$(GtkApiVersion)\gdk&#x0D;&#x0A;
copy ..\..\..\gdk\gdkvisual.h $(OutDir)\include\gtk-$(GtkApiVersion)\gdk&#x0D;&#x0A;
copy ..\..\..\gdk\win32\gdkwin32.h $(OutDir)\include\gtk-$(GtkApiVersion)\gdk&#x0D;&#x0A;
copy ..\..\..\gdk\gdkwindow.h $(OutDir)\include\gtk-$(GtkApiVersion)\gdk&#x0D;&#x0A;
mkdir $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtk.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkaboutdialog.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkaccelgroup.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkaccellabel.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkaccelmap.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkaccessible.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkaction.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkactiongroup.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkactivatable.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkadjustment.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkalignment.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkarrow.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkaspectframe.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkassistant.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkbbox.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkbin.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkbindings.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkbox.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkbuildable.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkbuilder.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkbutton.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkcalendar.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkcelleditable.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkcelllayout.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkcellrenderer.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkcellrendereraccel.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkcellrenderercombo.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkcellrendererpixbuf.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkcellrendererprogress.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkcellrendererspin.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkcellrenderertext.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkcellrenderertoggle.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkcellview.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkcheckbutton.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkcheckmenuitem.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkclipboard.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkclist.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkcolorbutton.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkcolorsel.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkcolorseldialog.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkcombo.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkcombobox.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkcomboboxentry.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkcontainer.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkctree.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkcurve.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkdebug.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkdialog.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkdnd.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkdrawingarea.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkeditable.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkentry.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkentrybuffer.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkentrycompletion.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkenums.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkeventbox.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkexpander.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkfilechooser.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkfilechooserbutton.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkfilechooserdialog.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkfilechooserwidget.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkfilefilter.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkfilesel.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkfixed.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkfontbutton.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkfontsel.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkframe.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkgamma.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkgc.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkhandlebox.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkhbbox.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkhbox.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkhpaned.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkhruler.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkhscale.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkhscrollbar.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkhseparator.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkhsv.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkiconfactory.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkicontheme.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkiconview.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkimage.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkimagemenuitem.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkimcontext.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkimcontextsimple.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkimmodule.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkimmulticontext.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkinfobar.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkinputdialog.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkinvisible.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkitem.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkitemfactory.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtklabel.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtklayout.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtklinkbutton.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtklist.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtklistitem.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkliststore.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkmain.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkmarshal.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkmenu.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkmenubar.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkmenuitem.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkmenushell.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkmenutoolbutton.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkmessagedialog.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkmisc.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkmodules.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkmountoperation.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtknotebook.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkobject.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkoldeditable.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkoptionmenu.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkorientable.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkpagesetup.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkpaned.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkpapersize.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkpixmap.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkplug.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkpreview.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkprintcontext.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkprintoperation.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkprintoperationpreview.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkprintsettings.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkprivate.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkprogress.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkprogressbar.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkradioaction.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkradiobutton.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkradiomenuitem.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkradiotoolbutton.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkrange.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkrc.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkrecentaction.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkrecentchooser.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkrecentchooserdialog.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkrecentchoosermenu.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkrecentchooserwidget.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkrecentfilter.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkrecentmanager.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkruler.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkscale.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkscalebutton.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkscrollbar.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkscrolledwindow.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkselection.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkseparator.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkseparatormenuitem.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkseparatortoolitem.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtksettings.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkshow.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtksignal.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtksizegroup.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtksocket.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkspinbutton.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkstatusbar.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkstatusicon.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkstock.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkstyle.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtktable.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtktearoffmenuitem.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtktestutils.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtktext.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtktextbuffer.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtktextbufferrichtext.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtktextchild.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtktextdisplay.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtktextiter.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtktextlayout.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtktextmark.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtktexttag.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtktexttagtable.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtktextview.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtktipsquery.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtktoggleaction.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtktogglebutton.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtktoggletoolbutton.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtktoolbar.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtktoolbutton.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtktoolitem.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtktoolshell.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtktooltip.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtktooltips.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtktree.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtktreednd.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtktreeitem.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtktreemodel.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtktreemodelfilter.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtktreemodelsort.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtktreeselection.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtktreesortable.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtktreestore.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtktreeview.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtktreeviewcolumn.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtktypebuiltins.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtktypeutils.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkuimanager.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkvbbox.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkvbox.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkversion.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkviewport.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkvolumebutton.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkvpaned.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkvruler.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkvscale.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkvscrollbar.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkvseparator.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkwidget.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkwindow.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
mkdir $(OutDir)\lib\gtk-$(GtkApiVersion)\include&#x0D;&#x0A;
copy ..\..\..\gdk\gdkconfig.h $(OutDir)\lib\gtk-$(GtkApiVersion)\include&#x0D;&#x0A;
copy $(ConfigurationName)\$(PlatformName)\bin\*-$(GtkApiVersion).lib $(OutDir)\lib&#x0D;&#x0A;
"
/>
<UserMacro
Name="GtkGenerateGdkPixbufDef"
Value="echo EXPORTS &gt;&quot;$(IntDir)\gdk-pixbuf.def&quot; &amp;&amp; cl /EP -DG_OS_WIN32 -DINCLUDE_VARIABLES -DALL_FILES -DG_GNUC_CONST= -DG_GNUC_NULL_TERMINATED= ..\..\..\gdk-pixbuf\gdk-pixbuf.symbols &gt;&gt;&quot;$(IntDir)\gdk-pixbuf.def&quot;"
/>
<UserMacro
Name="GtkGenerateGdkDef"
Value="echo EXPORTS &gt;&quot;$(IntDir)\gdk.def&quot; &amp;&amp; cl /EP -DGDK_WINDOWING_WIN32 -DALL_FILES -DG_GNUC_CONST= ..\..\..\gdk\gdk.symbols &gt;&gt;&quot;$(IntDir)\gdk.def&quot;"
/>
<UserMacro
Name="GtkGenerateGtkDef"
Value="echo EXPORTS &gt;&quot;$(IntDir)\gtk.def&quot; &amp;&amp; cl /EP -DINCLUDE_VARIABLES -DG_OS_WIN32 -DALL_FILES -DG_GNUC_MALLOC= -DG_GNUC_CONST= -DG_GNUC_NULL_TERMINATED= -DG_GNUC_PRINTF=;G_GNUC_PRINTF ..\..\..\gtk\gtk.symbols &gt;&gt;&quot;$(IntDir)\gtk.def&quot;"
/>
<UserMacro
Name="GtkLibtoolCompatibleDllPrefix"
Value="lib"
/>
<UserMacro
Name="GtkLibtoolCompatibleDllSuffix"
Value="-$(GtkApiVersion)-0"
/>
<UserMacro
Name="GtkSeparateVS9DllPrefix"
Value=""
/>
<UserMacro
Name="GtkSeparateVS9DllSuffix"
Value="-2-vs9"
/>
<!-- Change these two to GtkLibtoolCompatibleDllPrefix and
GtkLibtoolCompatibleDllSuffix if that is what you want -->
<UserMacro
Name="GtkDllPrefix"
Value="$(GtkLibtoolCompatibleDllPrefix)"
/>
<UserMacro
Name="GtkDllSuffix"
Value="$(GtkLibtoolCompatibleDllSuffix)"
/>
<UserMacro
Name="GlibEtcInstallRoot"
Value="..\..\..\..\..\vs9\$(PlatformName)"
/>
</VisualStudioPropertySheet>
+46
View File
@@ -0,0 +1,46 @@
<?xml version="1.0" encoding="Windows-1252"?>
<VisualStudioPropertySheet
ProjectType="Visual C++"
Version="8.00"
Name="gtkbuilddefinesprops"
OutputDirectory="$(SolutionDir)$(ConfigurationName)\$(PlatformName)\bin"
IntermediateDirectory="$(SolutionDir)$(ConfigurationName)\$(PlatformName)\obj\$(ProjectName)"
InheritedPropertySheets=".\gtk-version-paths.vsprops"
>
<Tool
Name="VCCLCompilerTool"
AdditionalIncludeDirectories="..\..\..;$(GlibEtcInstallRoot)\include\gdk-pixbuf-2.0;$(GlibEtcInstallRoot)\include\pango-1.0;$(GlibEtcInstallRoot)\include\atk-1.0;$(GlibEtcInstallRoot)\include\gio-win32-2.0;$(GlibEtcInstallRoot)\include\glib-2.0;$(GlibEtcInstallRoot)\lib\glib-2.0\include;$(GlibEtcInstallRoot)\include\cairo;$(GlibEtcInstallRoot)\include"
PreprocessorDefinitions="HAVE_CONFIG_H;G_DISABLE_SINGLE_INCLUDES;ATK_DISABLE_SINGLE_INCLUDES;GDK_PIXBUF_DISABLE_SINGLE_INCLUDES;GTK_DISABLE_SINGLE_INCLUDES"
ForcedIncludeFiles="msvc_recommended_pragmas.h"
AdditionalOptions="/MP"
/>
<Tool
Name="VCLinkerTool"
AdditionalDependencies="gdk_pixbuf-2.0.lib gio-2.0.lib gmodule-2.0.lib gobject-2.0.lib glib-2.0.lib intl.lib"
AdditionalLibraryDirectories="$(GlibEtcInstallRoot)\lib"
/>
<UserMacro
Name="GtkBinaryVersion"
Value="2.10.0"
/>
<UserMacro
Name="GtkDummyPrefix"
Value="/dummy"
/>
<UserMacro
Name="GdkDefines"
Value="GDK_COMPILATION;G_LOG_DOMAIN=\&quot;Gdk\&quot;"
/>
<UserMacro
Name="GtkHost"
Value="i686-pc-vs$(VSVer)"
/>
<UserMacro
Name="GtkIncludedImmodulesDefines"
Value="INCLUDE_IM_am_et;INCLUDE_IM_cedilla;INCLUDE_IM_cyrillic_translit;INCLUDE_IM_ime;INCLUDE_IM_inuktitut;INCLUDE_IM_ipa;INCLUDE_IM_multipress;INCLUDE_IM_thai;INCLUDE_IM_ti_er;INCLUDE_IM_ti_et;INCLUDE_IM_viqr"
/>
<UserMacro
Name="GtkDefines"
Value="GTK_COMPILATION;G_LOG_DOMAIN=\&quot;Gtk\&quot;;GTK_HOST=\&quot;$(GtkHost)\&quot;;GTK_PRINT_BACKENDS=\&quot;file\&quot;;GTK_PRINT_PREVIEW_COMMAND=\&quot;undefined-gtk-print-preview-command\&quot;;$(GtkIncludedImmodulesDefines);GTK_LIBDIR=\&quot;$(GtkDummyPrefix)/lib\&quot;;GTK_SYSCONFDIR=&quot;$(GtkDummyPrefix)/etc&quot;;MULTIPRESS_CONFDIR=\&quot;$(GtkDummyPrefix)/etc/gtk-$(ApiVersion)\&quot;;MULTIPRESS_LOCALEDIR=\&quot;$(GtkDummyPrefix)/share/locale\&quot;;GTK_VERSION=\&quot;$(GtkVersion)\&quot;;GTK_BINARY_VERSION=\&quot;$(GtkBinaryVersion)\&quot;"
/>
</VisualStudioPropertySheet>
-209
View File
@@ -1,209 +0,0 @@
<?xml version="1.0" encoding="Windows-1252"?>
<VisualStudioProject
ProjectType="Visual C++"
Version="9.00"
Name="gtk-demo"
ProjectGUID="{FC5AADB5-95CD-4BF0-BA8B-0C16FE7073FC}"
RootNamespace="gtkdemo"
Keyword="Win32Proj"
TargetFrameworkVersion="131072"
>
<Platforms>
<Platform
Name="Win32"
/>
<Platform
Name="x64"
/>
</Platforms>
<ToolFiles>
</ToolFiles>
<Configurations>
<Configuration
Name="Debug|Win32"
ConfigurationType="1"
InheritedPropertySheets=".\gtk+.vsprops"
CharacterSet="2"
>
<Tool
Name="VCPreBuildEventTool"
/>
<Tool
Name="VCCLCompilerTool"
Optimization="0"
AdditionalIncludeDirectories="..\..\..\gdk-pixbuf;..\..\..\gdk;..\..\..\gtk"
PreprocessorDefinitions="_DEBUG;$(GtkPrefixDefine)"
MinimalRebuild="true"
BasicRuntimeChecks="3"
RuntimeLibrary="2"
UsePrecompiledHeader="0"
WarningLevel="3"
DebugInformationFormat="4"
CompileAs="1"
/>
<Tool
Name="VCLinkerTool"
AdditionalDependencies="cairo.lib pango-1.0.lib pangocairo-1.0.lib"
LinkIncremental="2"
GenerateDebugInformation="true"
SubSystem="1"
RandomizedBaseAddress="1"
DataExecutionPrevention="0"
TargetMachine="1"
/>
</Configuration>
<Configuration
Name="Debug|x64"
ConfigurationType="1"
InheritedPropertySheets=".\gtk+.vsprops"
CharacterSet="2"
>
<Tool
Name="VCPreBuildEventTool"
/>
<Tool
Name="VCCLCompilerTool"
Optimization="0"
AdditionalIncludeDirectories="..\..\..\gdk-pixbuf;..\..\..\gdk;..\..\..\gtk"
PreprocessorDefinitions="_DEBUG;$(GtkPrefixDefine)"
MinimalRebuild="true"
BasicRuntimeChecks="3"
RuntimeLibrary="3"
UsePrecompiledHeader="0"
WarningLevel="3"
DebugInformationFormat="3"
CompileAs="1"
/>
<Tool
Name="VCLinkerTool"
LinkIncremental="2"
GenerateDebugInformation="true"
SubSystem="2"
RandomizedBaseAddress="1"
DataExecutionPrevention="0"
TargetMachine="17"
/>
</Configuration>
<Configuration
Name="Release|Win32"
ConfigurationType="1"
InheritedPropertySheets=".\gtk+.vsprops"
CharacterSet="2"
WholeProgramOptimization="1"
>
<Tool
Name="VCPreBuildEventTool"
/>
<Tool
Name="VCCLCompilerTool"
AdditionalIncludeDirectories="..\..\..\gdk-pixbuf;..\..\..\gdk;..\..\..\gtk"
PreprocessorDefinitions="$(GtkPrefixDefine)"
RuntimeLibrary="2"
UsePrecompiledHeader="0"
WarningLevel="3"
DebugInformationFormat="3"
CompileAs="1"
/>
<Tool
Name="VCLinkerTool"
LinkIncremental="1"
GenerateDebugInformation="true"
SubSystem="2"
OptimizeReferences="2"
EnableCOMDATFolding="2"
RandomizedBaseAddress="1"
DataExecutionPrevention="0"
TargetMachine="1"
/>
</Configuration>
<Configuration
Name="Release|x64"
ConfigurationType="1"
InheritedPropertySheets=".\gtk+.vsprops"
CharacterSet="2"
WholeProgramOptimization="1"
>
<Tool
Name="VCPreBuildEventTool"
/>
<Tool
Name="VCCLCompilerTool"
AdditionalIncludeDirectories="..\..\..\gdk-pixbuf;..\..\..\gdk;..\..\..\gtk"
PreprocessorDefinitions="$(GtkPrefixDefine)"
RuntimeLibrary="2"
UsePrecompiledHeader="0"
WarningLevel="3"
DebugInformationFormat="3"
CompileAs="1"
/>
<Tool
Name="VCLinkerTool"
LinkIncremental="1"
GenerateDebugInformation="true"
SubSystem="2"
OptimizeReferences="2"
EnableCOMDATFolding="2"
RandomizedBaseAddress="1"
DataExecutionPrevention="0"
TargetMachine="17"
/>
</Configuration>
</Configurations>
<References>
</References>
<Files>
<Filter
Name="Source Files"
Filter="cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx"
UniqueIdentifier="{4FC737F1-C7A5-4376-A066-2A32D752A2FF}"
>
<File RelativePath="..\..\..\demos\gtk-demo\appwindow.c" />
<File RelativePath="..\..\..\demos\gtk-demo\assistant.c" />
<File RelativePath="..\..\..\demos\gtk-demo\builder.c" />
<File RelativePath="..\..\..\demos\gtk-demo\button_box.c" />
<File RelativePath="..\..\..\demos\gtk-demo\changedisplay.c" />
<File RelativePath="..\..\..\demos\gtk-demo\clipboard.c" />
<File RelativePath="..\..\..\demos\gtk-demo\colorsel.c" />
<File RelativePath="..\..\..\demos\gtk-demo\combobox.c" />
<File RelativePath="..\..\..\demos\gtk-demo\dialog.c" />
<File RelativePath="..\..\..\demos\gtk-demo\drawingarea.c" />
<File RelativePath="..\..\..\demos\gtk-demo\editable_cells.c" />
<File RelativePath="..\..\..\demos\gtk-demo\entry_buffer.c" />
<File RelativePath="..\..\..\demos\gtk-demo\entry_completion.c" />
<File RelativePath="..\..\..\demos\gtk-demo\expander.c" />
<File RelativePath="..\..\..\demos\gtk-demo\hypertext.c" />
<File RelativePath="..\..\..\demos\gtk-demo\iconview.c" />
<File RelativePath="..\..\..\demos\gtk-demo\iconview_edit.c" />
<File RelativePath="..\..\..\demos\gtk-demo\images.c" />
<File RelativePath="..\..\..\demos\gtk-demo\infobar.c" />
<File RelativePath="..\..\..\demos\gtk-demo\links.c" />
<File RelativePath="..\..\..\demos\gtk-demo\list_store.c" />
<File RelativePath="..\..\..\demos\gtk-demo\main.c" />
<File RelativePath="..\..\..\demos\gtk-demo\menus.c" />
<File RelativePath="..\..\..\demos\gtk-demo\offscreen_window.c" />
<File RelativePath="..\..\..\demos\gtk-demo\offscreen_window2.c" />
<File RelativePath="..\..\..\demos\gtk-demo\panes.c" />
<File RelativePath="..\..\..\demos\gtk-demo\pickers.c" />
<File RelativePath="..\..\..\demos\gtk-demo\pixbufs.c" />
<File RelativePath="..\..\..\demos\gtk-demo\printing.c" />
<File RelativePath="..\..\..\demos\gtk-demo\rotated_text.c" />
<File RelativePath="..\..\..\demos\gtk-demo\search_entry.c" />
<File RelativePath="..\..\..\demos\gtk-demo\sizegroup.c" />
<File RelativePath="..\..\..\demos\gtk-demo\spinner.c" />
<File RelativePath="..\..\..\demos\gtk-demo\stock_browser.c" />
<File RelativePath="..\..\..\demos\gtk-demo\textscroll.c" />
<File RelativePath="..\..\..\demos\gtk-demo\textview.c" />
<File RelativePath="..\..\..\demos\gtk-demo\toolpalette.c" />
<File RelativePath="..\..\..\demos\gtk-demo\tree_store.c" />
<File RelativePath="..\..\..\demos\gtk-demo\ui_manager.c" />
</Filter>
<Filter
Name="Header Files"
Filter="h;hpp;hxx;hm;inl;inc;xsd"
UniqueIdentifier="{93995380-89BD-4b04-88EB-625FBE52EBFB}"
>
</Filter>
</Files>
<Globals>
</Globals>
</VisualStudioProject>
@@ -1,166 +1,170 @@
<?xml version="1.0" encoding="Windows-1252"?>
<VisualStudioProject
ProjectType="Visual C++"
Version="9.00"
Name="gdk-pixbuf-query-loaders"
ProjectGUID="{FC5AADB5-95CD-4BF0-BA8B-0C16FE7073F9}"
RootNamespace="gdkpixbufqueryloaders"
Keyword="Win32Proj"
TargetFrameworkVersion="131072"
>
<Platforms>
<Platform
Name="Win32"
/>
<Platform
Name="x64"
/>
</Platforms>
<ToolFiles>
</ToolFiles>
<Configurations>
<Configuration
Name="Debug|Win32"
ConfigurationType="1"
InheritedPropertySheets=".\gtk+.vsprops"
CharacterSet="2"
>
<Tool
Name="VCPreBuildEventTool"
/>
<Tool
Name="VCCLCompilerTool"
Optimization="0"
PreprocessorDefinitions="_DEBUG;GDK_PIXBUF_COMPILATION;GDK_PIXBUF_ENABLE_BACKEND;$(GtkPrefixDefine);$(GdkPixbufLibdirDefine)"
MinimalRebuild="true"
BasicRuntimeChecks="3"
RuntimeLibrary="2"
UsePrecompiledHeader="0"
WarningLevel="3"
DebugInformationFormat="4"
CompileAs="1"
/>
<Tool
Name="VCLinkerTool"
LinkIncremental="2"
GenerateDebugInformation="true"
SubSystem="1"
RandomizedBaseAddress="1"
DataExecutionPrevention="0"
TargetMachine="1"
/>
</Configuration>
<Configuration
Name="Debug|x64"
ConfigurationType="1"
InheritedPropertySheets=".\gtk+.vsprops"
CharacterSet="2"
>
<Tool
Name="VCPreBuildEventTool"
/>
<Tool
Name="VCCLCompilerTool"
Optimization="0"
PreprocessorDefinitions="_DEBUG;GDK_PIXBUF_COMPILATION;GDK_PIXBUF_ENABLE_BACKEND"
MinimalRebuild="true"
BasicRuntimeChecks="3"
RuntimeLibrary="3"
UsePrecompiledHeader="0"
WarningLevel="3"
DebugInformationFormat="3"
CompileAs="1"
/>
<Tool
Name="VCLinkerTool"
LinkIncremental="2"
GenerateDebugInformation="true"
SubSystem="2"
RandomizedBaseAddress="1"
DataExecutionPrevention="0"
TargetMachine="17"
/>
</Configuration>
<Configuration
Name="Release|Win32"
ConfigurationType="1"
InheritedPropertySheets=".\gtk+.vsprops"
CharacterSet="2"
WholeProgramOptimization="1"
>
<Tool
Name="VCPreBuildEventTool"
/>
<Tool
Name="VCCLCompilerTool"
PreprocessorDefinitions="GDK_PIXBUF_COMPILATION;GDK_PIXBUF_ENABLE_BACKEND"
RuntimeLibrary="2"
UsePrecompiledHeader="0"
WarningLevel="3"
DebugInformationFormat="3"
CompileAs="1"
/>
<Tool
Name="VCLinkerTool"
LinkIncremental="1"
GenerateDebugInformation="true"
SubSystem="2"
OptimizeReferences="2"
EnableCOMDATFolding="2"
RandomizedBaseAddress="1"
DataExecutionPrevention="0"
TargetMachine="1"
/>
</Configuration>
<Configuration
Name="Release|x64"
ConfigurationType="1"
InheritedPropertySheets=".\gtk+.vsprops"
CharacterSet="2"
WholeProgramOptimization="1"
>
<Tool
Name="VCPreBuildEventTool"
/>
<Tool
Name="VCCLCompilerTool"
PreprocessorDefinitions="GDK_PIXBUF_COMPILATION;GDK_PIXBUF_ENABLE_BACKEND"
RuntimeLibrary="2"
UsePrecompiledHeader="0"
WarningLevel="3"
DebugInformationFormat="3"
CompileAs="1"
/>
<Tool
Name="VCLinkerTool"
LinkIncremental="1"
GenerateDebugInformation="true"
SubSystem="2"
OptimizeReferences="2"
EnableCOMDATFolding="2"
RandomizedBaseAddress="1"
DataExecutionPrevention="0"
TargetMachine="17"
/>
</Configuration>
</Configurations>
<References>
</References>
<Files>
<Filter
Name="Source Files"
Filter="cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx"
UniqueIdentifier="{4FC737F1-C7A5-4376-A066-2A32D752A2FF}"
>
<File RelativePath="..\..\..\gdk-pixbuf\queryloaders.c" />
</Filter>
<Filter
Name="Header Files"
Filter="h;hpp;hxx;hm;inl;inc;xsd"
UniqueIdentifier="{93995380-89BD-4b04-88EB-625FBE52EBFB}"
>
</Filter>
</Files>
<Globals>
</Globals>
</VisualStudioProject>
<?xml version="1.0" encoding="Windows-1252"?>
<VisualStudioProject
ProjectType="Visual C++"
Version="9.00"
Name="gtk-demo"
ProjectGUID="{FC5AADB5-95CD-4BF0-BA8B-0C16FE7073FC}"
RootNamespace="gtkdemo"
Keyword="Win32Proj"
TargetFrameworkVersion="131072"
>
<Platforms>
<Platform
Name="Win32"
/>
<Platform
Name="x64"
/>
</Platforms>
<ToolFiles>
</ToolFiles>
<Configurations>
<Configuration
Name="Debug|Win32"
ConfigurationType="1"
InheritedPropertySheets=".\gtk-build-defines.vsprops"
CharacterSet="2"
>
<Tool
Name="VCPreBuildEventTool"
/>
<Tool
Name="VCCLCompilerTool"
Optimization="0"
AdditionalIncludeDirectories="..\..\..\gdk-pixbuf;..\..\..\gdk;..\..\..\gtk"
PreprocessorDefinitions="_DEBUG;G_ENABLE_DEBUG"
MinimalRebuild="true"
BasicRuntimeChecks="3"
RuntimeLibrary="3"
UsePrecompiledHeader="0"
WarningLevel="3"
DebugInformationFormat="4"
CompileAs="1"
/>
<Tool
Name="VCLinkerTool"
AdditionalDependencies="cairo.lib pango-1.0.lib pangocairo-1.0.lib"
LinkIncremental="2"
GenerateDebugInformation="true"
SubSystem="1"
DataExecutionPrevention="0"
TargetMachine="1"
/>
</Configuration>
<Configuration
Name="Debug|x64"
ConfigurationType="1"
InheritedPropertySheets=".\gtk-build-defines.vsprops"
CharacterSet="2"
>
<Tool
Name="VCPreBuildEventTool"
/>
<Tool
Name="VCCLCompilerTool"
Optimization="0"
AdditionalIncludeDirectories="..\..\..\gdk-pixbuf;..\..\..\gdk;..\..\..\gtk"
PreprocessorDefinitions="_DEBUG;G_ENABLE_DEBUG"
MinimalRebuild="true"
BasicRuntimeChecks="3"
RuntimeLibrary="3"
UsePrecompiledHeader="0"
WarningLevel="3"
DebugInformationFormat="3"
CompileAs="1"
/>
<Tool
Name="VCLinkerTool"
AdditionalDependencies="cairo.lib pango-1.0.lib pangocairo-1.0.lib"
LinkIncremental="2"
GenerateDebugInformation="true"
SubSystem="1"
DataExecutionPrevention="0"
TargetMachine="17"
/>
</Configuration>
<Configuration
Name="Release|Win32"
ConfigurationType="1"
InheritedPropertySheets=".\gtk-build-defines.vsprops"
CharacterSet="2"
WholeProgramOptimization="1"
>
<Tool
Name="VCPreBuildEventTool"
/>
<Tool
Name="VCCLCompilerTool"
AdditionalIncludeDirectories="..\..\..\gdk-pixbuf;..\..\..\gdk;..\..\..\gtk"
PreprocessorDefinitions=""
RuntimeLibrary="2"
UsePrecompiledHeader="0"
WarningLevel="3"
DebugInformationFormat="3"
CompileAs="1"
/>
<Tool
Name="VCLinkerTool"
AdditionalDependencies="cairo.lib pango-1.0.lib pangocairo-1.0.lib"
LinkIncremental="1"
GenerateDebugInformation="true"
SubSystem="1"
OptimizeReferences="2"
EnableCOMDATFolding="2"
DataExecutionPrevention="0"
TargetMachine="1"
/>
</Configuration>
<Configuration
Name="Release|x64"
ConfigurationType="1"
InheritedPropertySheets=".\gtk-build-defines.vsprops"
CharacterSet="2"
WholeProgramOptimization="1"
>
<Tool
Name="VCPreBuildEventTool"
/>
<Tool
Name="VCCLCompilerTool"
AdditionalIncludeDirectories="..\..\..\gdk-pixbuf;..\..\..\gdk;..\..\..\gtk"
PreprocessorDefinitions=""
RuntimeLibrary="2"
UsePrecompiledHeader="0"
WarningLevel="3"
DebugInformationFormat="3"
CompileAs="1"
/>
<Tool
Name="VCLinkerTool"
AdditionalDependencies="cairo.lib pango-1.0.lib pangocairo-1.0.lib"
LinkIncremental="1"
GenerateDebugInformation="true"
SubSystem="1"
OptimizeReferences="2"
EnableCOMDATFolding="2"
DataExecutionPrevention="0"
TargetMachine="17"
/>
</Configuration>
</Configurations>
<References>
</References>
<Files>
<Filter
Name="Source Files"
Filter="cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx"
UniqueIdentifier="{4FC737F1-C7A5-4376-A066-2A32D752A2FF}"
>
#include "gtk-demo.sourcefiles"
</Filter>
<Filter
Name="Header Files"
Filter="h;hpp;hxx;hm;inl;inc;xsd"
UniqueIdentifier="{93995380-89BD-4b04-88EB-625FBE52EBFB}"
>
</Filter>
</Files>
<Globals>
</Globals>
</VisualStudioProject>
+30
View File
@@ -0,0 +1,30 @@
<?xml version="1.0" encoding="Windows-1252"?>
<VisualStudioPropertySheet
ProjectType="Visual C++"
Version="8.00"
Name="gtkgensrcsprops"
InheritedPropertySheets=".\gtk-build-defines.vsprops"
>
<UserMacro
Name="CopyConfigH"
Value="copy ..\..\..\config.h.win32 ..\..\..\config.h"
/>
<UserMacro
Name="CopyGdkConfigH"
Value="copy ..\..\..\gdk\gdkconfig.h.win32 ..\..\..\gdk\gdkconfig.h"
/>
<UserMacro
Name="GtkGenerateGdkDef"
Value="
echo EXPORTS &gt; $(DefDir)\gdk.def&#x0D;&#x0A;
cl /EP -DGDK_WINDOWING_WIN32 -DALL_FILES -DG_GNUC_CONST= ..\..\..\gdk\gdk.symbols &gt;&gt; $(DefDir)\gdk.def&#x0D;&#x0A;
"
/>
<UserMacro
Name="GtkGenerateGtkDef"
Value="
echo EXPORTS &gt; $(DefDir)\gtk.def&#x0D;&#x0A;
cl /EP -DINCLUDE_VARIABLES -DG_OS_WIN32 -DALL_FILES -DG_GNUC_MALLOC= -DG_GNUC_CONST= -DG_GNUC_NULL_TERMINATED= -DG_GNUC_PRINTF=;G_GNUC_PRINTF ..\..\..\gtk\gtk.symbols &gt;&gt; $(DefDir)\gtk.def&#x0D;&#x0A;
"
/>
</VisualStudioPropertySheet>
+115
View File
@@ -0,0 +1,115 @@
<?xml version="1.0" encoding="Windows-1252"?>
<VisualStudioProject
ProjectType="Visual C++"
Version="9.00"
Name="gtk-install"
ProjectGUID="{FC5AADB5-95CD-4BF0-BA8B-0C16FE8073FB}"
RootNamespace="gtkinstall"
Keyword="Win32Proj"
TargetFrameworkVersion="131072"
>
<Platforms>
<Platform
Name="Win32"
/>
<Platform
Name="x64"
/>
</Platforms>
<ToolFiles>
</ToolFiles>
<Configurations>
<Configuration
Name="Debug|Win32"
InheritedPropertySheets=".\gtk-install.vsprops"
OutputDirectory="$(GlibEtcInstallRoot)"
ConfigurationType="10"
CharacterSet="2"
DeleteExtensionsOnClean=""
>
<Tool
Name="VCPostBuildEventTool"
CommandLine="$(GtkDoInstall)"
/>
</Configuration>
<Configuration
Name="Debug|x64"
InheritedPropertySheets=".\gtk-install.vsprops"
OutputDirectory="$(GlibEtcInstallRoot)"
ConfigurationType="10"
CharacterSet="2"
DeleteExtensionsOnClean=""
>
<Tool
Name="VCPostBuildEventTool"
CommandLine="$(GtkDoInstall)"
/>
</Configuration>
<Configuration
Name="Release|Win32"
InheritedPropertySheets=".\gtk-install.vsprops"
OutputDirectory="$(GlibEtcInstallRoot)"
ConfigurationType="10"
CharacterSet="2"
WholeProgramOptimization="1"
DeleteExtensionsOnClean=""
>
<Tool
Name="VCPostBuildEventTool"
CommandLine="$(GtkDoInstall)"
/>
</Configuration>
<Configuration
Name="Release|x64"
InheritedPropertySheets=".\gtk-install.vsprops"
OutputDirectory="$(GlibEtcInstallRoot)"
ConfigurationType="10"
CharacterSet="2"
WholeProgramOptimization="1"
DeleteExtensionsOnClean=""
>
<Tool
Name="VCPostBuildEventTool"
CommandLine="$(GtkDoInstall)"
/>
</Configuration>
</Configurations>
<Files>
<Filter
Name="Resource Files"
Filter="rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx"
UniqueIdentifier="{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}"
>
<File RelativePath="..\gtkpc.py">
<FileConfiguration Name="Debug|Win32">
<Tool Name="VCCustomBuildTool"
Description="Generating .pc files..."
CommandLine="$(GenerateGtkPC)"
Outputs="..\gdk-2.0.pc;..\gtk+-2.0.pc;..\gail.pc"
/>
</FileConfiguration>
<FileConfiguration Name="Release|Win32">
<Tool Name="VCCustomBuildTool"
Description="Generating .pc files..."
CommandLine="$(GenerateGtkPC)"
Outputs="..\gdk-2.0.pc;..\gtk+-2.0.pc;..\gail.pc"
/>
</FileConfiguration>
<FileConfiguration Name="Debug|x64">
<Tool Name="VCCustomBuildTool"
Description="Generating .pc files..."
CommandLine="$(GenerateGtkPCX64)"
Outputs="..\gdk-2.0.pc;..\gtk+-2.0.pc;..\gail.pc"
/>
</FileConfiguration>
<FileConfiguration Name="Release|x64">
<Tool Name="VCCustomBuildTool"
Description="Generating .pc files..."
CommandLine="$(GenerateGtkPCX64)"
Outputs="..\gdk-2.0.pc;..\gtk+-2.0.pc;..\gail.pc"
/>
</FileConfiguration>
</File>
</Filter>
</Files>
</VisualStudioProject>
+81
View File
@@ -0,0 +1,81 @@
<?xml version="1.0" encoding="Windows-1252"?>
<VisualStudioPropertySheet
ProjectType="Visual C++"
Version="8.00"
Name="gtkinstallprops"
InheritedPropertySheets=".\gtk-build-defines.vsprops"
>
<UserMacro
Name="GtkDoInstall"
Value="
mkdir $(CopyDir)\bin&#x0D;&#x0A;
copy $(ConfigurationName)\$(PlatformName)\bin\$(GtkDllPrefix)gdk-win32$(GtkDllSuffix).dll $(CopyDir)\bin&#x0D;&#x0A;
copy $(ConfigurationName)\$(PlatformName)\bin\$(GtkDllPrefix)gdk-win32$(GtkDllSuffix).pdb $(CopyDir)\bin&#x0D;&#x0A;
copy $(ConfigurationName)\$(PlatformName)\bin\$(GtkDllPrefix)gtk-win32$(GtkDllSuffix).dll $(CopyDir)\bin&#x0D;&#x0A;
copy $(ConfigurationName)\$(PlatformName)\bin\$(GtkDllPrefix)gtk-win32$(GtkDllSuffix).pdb $(CopyDir)\bin&#x0D;&#x0A;
copy $(ConfigurationName)\$(PlatformName)\bin\$(GtkDllPrefix)gailutil$(GtkDllSuffix).dll $(CopyDir)\bin&#x0D;&#x0A;
copy $(ConfigurationName)\$(PlatformName)\bin\$(GtkDllPrefix)gailutil$(GtkDllSuffix).pdb $(CopyDir)\bin&#x0D;&#x0A;
copy $(ConfigurationName)\$(PlatformName)\bin\gtk-demo.exe $(CopyDir)\bin&#x0D;&#x0A;
copy $(ConfigurationName)\$(PlatformName)\bin\gtk-demo.pdb $(CopyDir)\bin&#x0D;&#x0A;
copy $(ConfigurationName)\$(PlatformName)\bin\gtk-update-icon-cache.exe $(CopyDir)\bin&#x0D;&#x0A;
copy $(ConfigurationName)\$(PlatformName)\bin\gtk-update-icon-cache.pdb $(CopyDir)\bin&#x0D;&#x0A;
mkdir $(CopyDir)\lib\gtk-$(ApiVersion)\$(GtkHost)\engines&#x0D;&#x0A;
copy $(ConfigurationName)\$(PlatformName)\bin\gdk-win32-$(ApiVersion).lib $(CopyDir)\lib&#x0D;&#x0A;
copy $(ConfigurationName)\$(PlatformName)\bin\gtk-win32-$(ApiVersion).lib $(CopyDir)\lib&#x0D;&#x0A;
copy $(ConfigurationName)\$(PlatformName)\bin\gailutil-$(ApiVersion).lib $(CopyDir)\lib&#x0D;&#x0A;
mkdir $(CopyDir)\include\gtk-$(ApiVersion)\gdk&#x0D;&#x0A;
#include "gdk.headers"
#include "gdk-win32.headers"
mkdir $(CopyDir)\include\gtk-$(ApiVersion)\gtk&#x0D;&#x0A;
#include "gtk.headers"
mkdir $(CopyDir)\lib\gtk-$(ApiVersion)\include&#x0D;&#x0A;
copy ..\..\..\gdk\gdkconfig.h $(CopyDir)\lib\gtk-$(ApiVersion)\include&#x0D;&#x0A;
mkdir $(CopyDir)\include\gail-1.0\libgail-util&#x0D;&#x0A;
#include "gailutil.headers"
copy $(ConfigurationName)\$(PlatformName)\bin\libwimp.dll $(Outdir)\lib\gtk-$(ApiVersion)\$(GtkHost)\engines&#x0D;&#x0A;
copy $(ConfigurationName)\$(PlatformName)\bin\libwimp.pdb $(Outdir)\lib\gtk-$(ApiVersion)\$(GtkHost)\engines&#x0D;&#x0A;
mkdir $(CopyDir)\share\gtk-$(ApiVersion)\demo&#x0D;&#x0A;
copy ..\..\..\demos\gtk-demo\*.png $(CopyDir)\share\gtk-$(ApiVersion)\demo&#x0D;&#x0A;
copy ..\..\..\demos\gtk-demo\*.gif $(CopyDir)\share\gtk-$(ApiVersion)\demo&#x0D;&#x0A;
copy ..\..\..\demos\gtk-demo\*.ui $(CopyDir)\share\gtk-$(ApiVersion)\demo&#x0D;&#x0A;
copy ..\..\..\demos\gtk-demo\*.jpg $(CopyDir)\share\gtk-$(ApiVersion)\demo&#x0D;&#x0A;
copy ..\..\..\demos\gtk-demo\*.c $(CopyDir)\share\gtk-$(ApiVersion)\demo&#x0D;&#x0A;
copy ..\..\..\demos\gtk-demo\*.h $(CopyDir)\share\gtk-$(ApiVersion)\demo&#x0D;&#x0A;
mkdir $(CopyDir)\share\themes\Default\gtk-$(ApiVersion)-key&#x0D;&#x0A;
copy ..\..\..\gtk\gtkrc.key.default $(CopyDir)\share\themes\Default\gtk-$(ApiVersion)-key\gtkrc&#x0D;&#x0A;
mkdir $(CopyDir)\share\themes\Emacs\gtk-$(ApiVersion)-key&#x0D;&#x0A;
copy ..\..\..\gtk\gtkrc.key.emacs $(CopyDir)\share\themes\Emacs\gtk-$(ApiVersion)-key\gtkrc&#x0D;&#x0A;
mkdir $(CopyDir)\share\themes\MS-Windows\gtk-$(ApiVersion)&#x0D;&#x0A;
copy ..\..\..\modules\engines\ms-windows\Theme\gtk-$(ApiVersion)\gtkrc $(CopyDir)\share\themes\MS-Windows\gtk-$(ApiVersion)&#x0D;&#x0A;
mkdir $(CopyDir)\share\themes\Raleigh\gtk-$(ApiVersion)&#x0D;&#x0A;
copy ..\..\..\gtk\gtkrc.default $(CopyDir)\share\themes\Raleigh\gtk-$(ApiVersion)\gtkrc&#x0D;&#x0A;
if exist $(CopyDir)\share\icons\hicolor $(CopyDir)\bin\gtk-update-icon-cache.exe --ignore-theme-index --force &quot;$(CopyDir)\share\icons\hicolor&quot;&#x0D;&#x0A;
if exist ..\gtk+-2.0.pc mkdir $(CopyDir)\lib\pkgconfig&#x0D;&#x0A;
if exist ..\gdk-2.0.pc copy ..\gdk-2.0.pc $(CopyDir)\lib\pkgconfig&#x0D;&#x0A;
if exist ..\gdk-2.0.pc copy ..\gdk-2.0.pc $(CopyDir)\lib\pkgconfig\gdk-win32-2.0.pc&#x0D;&#x0A;
if exist ..\gtk+-2.0.pc copy &quot;..\gtk+-2.0.pc&quot; &quot;$(CopyDir)\lib\pkgconfig&quot;&#x0D;&#x0A;
if exist ..\gtk+-2.0.pc copy &quot;..\gtk+-2.0.pc&quot; &quot;$(CopyDir)\lib\pkgconfig\gtk+-win32-2.0.pc&quot;&#x0D;&#x0A;
"
/>
<UserMacro
Name="GenerateGtkPC"
Value="if exist $(PythonPath)\python.exe $(PythonPath)\python ..\gtkpc.py --prefix=$(CopyDir) --version=$(GtkVersion) --host=i686-pc-vs$(VSVer)"
/>
<UserMacro
Name="GenerateGtkPCX64"
Value="if exist $(PythonPathX64)\python.exe $(PythonPathX64)\python ..\gtkpc.py --prefix=$(CopyDir) --version=$(GtkVersion) --host=x86_64-pc-vs$(VSVer)"
/>
</VisualStudioPropertySheet>
@@ -1,166 +1,171 @@
<?xml version="1.0" encoding="Windows-1252"?>
<VisualStudioProject
ProjectType="Visual C++"
Version="9,00"
Name="gdk-pixbuf-csource"
ProjectGUID="{FC5AADB5-95CD-4BF0-BA8B-0C16FE7073F8}"
RootNamespace="gdkpixbufcsource"
Keyword="Win32Proj"
TargetFrameworkVersion="131072"
>
<Platforms>
<Platform
Name="Win32"
/>
<Platform
Name="x64"
/>
</Platforms>
<ToolFiles>
</ToolFiles>
<Configurations>
<Configuration
Name="Debug|Win32"
ConfigurationType="1"
InheritedPropertySheets=".\gtk+.vsprops"
CharacterSet="2"
>
<Tool
Name="VCPreBuildEventTool"
/>
<Tool
Name="VCCLCompilerTool"
Optimization="0"
PreprocessorDefinitions="_CRT_NONSTDC_NO_WARNINGS;_CRT_SECURE_NO_WARNINGS"
MinimalRebuild="true"
BasicRuntimeChecks="3"
RuntimeLibrary="2"
UsePrecompiledHeader="0"
WarningLevel="3"
DebugInformationFormat="4"
CompileAs="1"
/>
<Tool
Name="VCLinkerTool"
LinkIncremental="2"
GenerateDebugInformation="true"
SubSystem="1"
RandomizedBaseAddress="1"
DataExecutionPrevention="0"
TargetMachine="1"
/>
</Configuration>
<Configuration
Name="Debug|x64"
ConfigurationType="1"
InheritedPropertySheets=".\gtk+.vsprops"
CharacterSet="2"
>
<Tool
Name="VCPreBuildEventTool"
/>
<Tool
Name="VCCLCompilerTool"
Optimization="0"
PreprocessorDefinitions="_CRT_NONSTDC_NO_WARNINGS;_CRT_SECURE_NO_WARNINGS"
MinimalRebuild="true"
BasicRuntimeChecks="3"
RuntimeLibrary="3"
UsePrecompiledHeader="0"
WarningLevel="3"
DebugInformationFormat="3"
CompileAs="1"
/>
<Tool
Name="VCLinkerTool"
LinkIncremental="2"
GenerateDebugInformation="true"
SubSystem="2"
RandomizedBaseAddress="1"
DataExecutionPrevention="0"
TargetMachine="17"
/>
</Configuration>
<Configuration
Name="Release|Win32"
ConfigurationType="1"
InheritedPropertySheets=".\gtk+.vsprops"
CharacterSet="2"
WholeProgramOptimization="1"
>
<Tool
Name="VCPreBuildEventTool"
/>
<Tool
Name="VCCLCompilerTool"
PreprocessorDefinitions="_CRT_NONSTDC_NO_WARNINGS;_CRT_SECURE_NO_WARNINGS"
RuntimeLibrary="2"
UsePrecompiledHeader="0"
WarningLevel="3"
DebugInformationFormat="3"
CompileAs="1"
/>
<Tool
Name="VCLinkerTool"
LinkIncremental="1"
GenerateDebugInformation="true"
SubSystem="2"
OptimizeReferences="2"
EnableCOMDATFolding="2"
RandomizedBaseAddress="1"
DataExecutionPrevention="0"
TargetMachine="1"
/>
</Configuration>
<Configuration
Name="Release|x64"
ConfigurationType="1"
InheritedPropertySheets=".\gtk+.vsprops"
CharacterSet="2"
WholeProgramOptimization="1"
>
<Tool
Name="VCPreBuildEventTool"
/>
<Tool
Name="VCCLCompilerTool"
PreprocessorDefinitions="_CRT_NONSTDC_NO_WARNINGS;_CRT_SECURE_NO_WARNINGS"
RuntimeLibrary="2"
UsePrecompiledHeader="0"
WarningLevel="3"
DebugInformationFormat="3"
CompileAs="1"
/>
<Tool
Name="VCLinkerTool"
LinkIncremental="1"
GenerateDebugInformation="true"
SubSystem="2"
OptimizeReferences="2"
EnableCOMDATFolding="2"
RandomizedBaseAddress="1"
DataExecutionPrevention="0"
TargetMachine="17"
/>
</Configuration>
</Configurations>
<References>
</References>
<Files>
<Filter
Name="Source Files"
Filter="cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx"
UniqueIdentifier="{4FC737F1-C7A5-4376-A066-2A32D752A2FF}"
>
<File RelativePath="..\..\..\gdk-pixbuf\gdk-pixbuf-csource.c" />
</Filter>
<Filter
Name="Header Files"
Filter="h;hpp;hxx;hm;inl;inc;xsd"
UniqueIdentifier="{93995380-89BD-4b04-88EB-625FBE52EBFB}"
>
</Filter>
</Files>
<Globals>
</Globals>
</VisualStudioProject>
<?xml version="1.0" encoding="Windows-1252"?>
<VisualStudioProject
ProjectType="Visual C++"
Version="9.00"
Name="gtk-update-icon-cache"
ProjectGUID="{FAB0AD6F-AEBF-4AF8-A1CC-6890A9090945}"
RootNamespace="gtkupdateiconcache"
Keyword="Win32Proj"
TargetFrameworkVersion="196613"
>
<Platforms>
<Platform
Name="Win32"
/>
<Platform
Name="x64"
/>
</Platforms>
<ToolFiles>
</ToolFiles>
<Configurations>
<Configuration
Name="Debug|Win32"
InheritedPropertySheets=".\gtk-build-defines.vsprops"
ConfigurationType="1"
CharacterSet="1"
>
<Tool
Name="VCCLCompilerTool"
Optimization="0"
PreprocessorDefinitions="_DEBUG"
MinimalRebuild="true"
BasicRuntimeChecks="3"
RuntimeLibrary="3"
UsePrecompiledHeader="0"
WarningLevel="3"
DebugInformationFormat="4"
/>
<Tool
Name="VCLinkerTool"
LinkIncremental="2"
GenerateDebugInformation="true"
SubSystem="1"
TargetMachine="1"
/>
</Configuration>
<Configuration
Name="Release|Win32"
InheritedPropertySheets=".\gtk-build-defines.vsprops"
ConfigurationType="1"
CharacterSet="2"
WholeProgramOptimization="1"
>
<Tool
Name="VCPreBuildEventTool"
/>
<Tool
Name="VCCLCompilerTool"
Optimization="2"
AdditionalIncludeDirectories=""
EnableIntrinsicFunctions="true"
PreprocessorDefinitions=""
RuntimeLibrary="2"
EnableFunctionLevelLinking="true"
UsePrecompiledHeader="0"
WarningLevel="3"
DebugInformationFormat="3"
/>
<Tool
Name="VCLinkerTool"
AdditionalDependencies=""
LinkIncremental="1"
GenerateDebugInformation="true"
SubSystem="1"
OptimizeReferences="2"
EnableCOMDATFolding="2"
TargetMachine="1"
/>
</Configuration>
<Configuration
Name="Debug|x64"
InheritedPropertySheets=".\gtk-build-defines.vsprops"
ConfigurationType="1"
CharacterSet="2"
>
<Tool
Name="VCMIDLTool"
TargetEnvironment="3"
/>
<Tool
Name="VCCLCompilerTool"
Optimization="0"
AdditionalIncludeDirectories=""
PreprocessorDefinitions="_DEBUG"
MinimalRebuild="true"
BasicRuntimeChecks="3"
RuntimeLibrary="3"
UsePrecompiledHeader="0"
WarningLevel="3"
DebugInformationFormat="3"
/>
<Tool
Name="VCLinkerTool"
AdditionalDependencies=""
LinkIncremental="2"
GenerateDebugInformation="true"
SubSystem="1"
TargetMachine="17"
/>
</Configuration>
<Configuration
Name="Release|x64"
InheritedPropertySheets=".\gtk-build-defines.vsprops"
ConfigurationType="1"
CharacterSet="2"
WholeProgramOptimization="1"
>
<Tool
Name="VCMIDLTool"
TargetEnvironment="3"
/>
<Tool
Name="VCCLCompilerTool"
Optimization="2"
AdditionalIncludeDirectories=""
EnableIntrinsicFunctions="true"
PreprocessorDefinitions=""
RuntimeLibrary="2"
EnableFunctionLevelLinking="true"
UsePrecompiledHeader="0"
WarningLevel="3"
DebugInformationFormat="3"
/>
<Tool
Name="VCLinkerTool"
AdditionalDependencies=""
LinkIncremental="1"
GenerateDebugInformation="true"
SubSystem="1"
OptimizeReferences="2"
EnableCOMDATFolding="2"
TargetMachine="17"
/>
</Configuration>
</Configurations>
<References>
</References>
<Files>
<Filter
Name="Sources"
Filter="cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx"
UniqueIdentifier="{4FC737F1-C7A5-4376-A066-2A32D752A2FF}"
>
<File RelativePath="..\..\..\gtk\updateiconcache.c" />
</Filter>
<Filter
Name="Headers"
Filter="h;hpp;hxx;hm;inl;inc;xsd"
UniqueIdentifier="{93995380-89BD-4b04-88EB-625FBE52EBFB}"
>
</Filter>
<Filter
Name="Resource Files"
Filter="rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav"
UniqueIdentifier="{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}"
>
</Filter>
</Files>
<Globals>
</Globals>
</VisualStudioProject>
@@ -0,0 +1,66 @@
<?xml version="1.0" encoding="Windows-1252"?>
<VisualStudioPropertySheet
ProjectType="Visual C++"
Version="8.00"
Name="gtkversionpathsprops"
>
<UserMacro
Name="VSVer"
Value="9"
/>
<UserMacro
Name="GlibEtcInstallRoot"
Value="..\..\..\..\vs$(VSVer)\$(PlatformName)"
/>
<UserMacro
Name="CopyDir"
Value="$(GlibEtcInstallRoot)"
/>
<UserMacro
Name="DefDir"
Value="$(SolutionDir)$(ConfigurationName)\$(PlatformName)\obj\$(ProjectName)"
/>
<UserMacro
Name="ApiVersion"
Value="2.0"
/>
<UserMacro
Name="GtkVersion"
Value="@GTK_VERSION@"
/>
<UserMacro
Name="GtkLibtoolCompatibleDllPrefix"
Value="lib"
/>
<UserMacro
Name="GtkLibtoolCompatibleDllSuffix"
Value="-$(ApiVersion)-0"
/>
<UserMacro
Name="GtkSeparateVSDllPrefix"
Value=""
/>
<UserMacro
Name="GtkSeparateVSDllSuffix"
Value="-2-vs$(VSVer)"
/>
<!-- Change these two to GtkLibtoolCompatibleDllPrefix and
GtkLibtoolCompatibleDllSuffix if that is what you want -->
<UserMacro
Name="GtkDllPrefix"
Value="$(GtkSeparateVSDllPrefix)"
/>
<UserMacro
Name="GtkDllSuffix"
Value="$(GtkSeparateVSDllSuffix)"
/>
<!-- Update the following to reflect the actual Python 2.x/3.x installation path on your system -->
<UserMacro
Name="PythonPath"
Value="c:\python27"
/>
<UserMacro
Name="PythonPathX64"
Value="$(PythonPath).x64"
/>
</VisualStudioPropertySheet>
+236 -235
View File
@@ -1,235 +1,236 @@
<?xml version="1.0" encoding="UTF-8"?>
<VisualStudioProject
ProjectType="Visual C++"
Version="9.00"
Name="gtk"
ProjectGUID="{FC5AADB5-95CD-4BF0-BA8B-0C16FE7073F5}"
RootNamespace="gtk"
Keyword="Win32Proj"
TargetFrameworkVersion="0"
>
<Platforms>
<Platform
Name="Win32"
/>
<Platform
Name="x64"
/>
</Platforms>
<ToolFiles>
</ToolFiles>
<Configurations>
<Configuration
Name="Debug|Win32"
InheritedPropertySheets=".\gtk+.vsprops"
ConfigurationType="2"
CharacterSet="2"
>
<Tool
Name="VCPreBuildEventTool"
/>
<Tool
Name="VCCLCompilerTool"
Optimization="0"
AdditionalIncludeDirectories="..\..\..\gdk-pixbuf;..\..\..\gdk;..\..\..\gtk"
PreprocessorDefinitions="_DEBUG;$(GtkDefines)"
MinimalRebuild="true"
BasicRuntimeChecks="3"
RuntimeLibrary="2"
UsePrecompiledHeader="0"
WarningLevel="3"
DebugInformationFormat="4"
/>
<Tool
Name="VCLinkerTool"
AdditionalDependencies="cairo.lib atk-1.0.lib pango-1.0.lib pangocairo-1.0.lib pangowin32-1.0.lib imm32.lib winspool.lib comctl32.lib"
OutputFile="$(OutDir)\$(GtkDllPrefix)$(ProjectName)-win32$(GtkDllSuffix).dll"
LinkIncremental="2"
ModuleDefinitionFile="$(IntDir)\gtk.def"
GenerateDebugInformation="true"
SubSystem="2"
ImportLibrary="$(TargetDir)$(ProjectName)-win32-$(GtkApiVersion).lib"
TargetMachine="1"
/>
</Configuration>
<Configuration
Name="Release|Win32"
InheritedPropertySheets=".\gtk+.vsprops"
ConfigurationType="2"
CharacterSet="2"
>
<Tool
Name="VCPreBuildEventTool"
/>
<Tool
Name="VCCLCompilerTool"
AdditionalIncludeDirectories="..\..\..\gdk-pixbuf;..\..\..\gdk;..\..\..\gdk\win32"
PreprocessorDefinitions="$(GtkDefines)"
RuntimeLibrary="2"
UsePrecompiledHeader="0"
WarningLevel="3"
DebugInformationFormat="3"
/>
<Tool
Name="VCLinkerTool"
AdditionalDependencies="cairo.lib atk-1.0.lib pango-1.0.lib pangocairo-1.0.lib pangowin32-1.0.lib imm32.lib winspool.lib comctl32.lib"
OutputFile="$(OutDir)\$(GtkDllPrefix)$(ProjectName)-win32$(GtkDllSuffix).dll"
LinkIncremental="2"
ModuleDefinitionFile="$(IntDir)\gtk.def"
GenerateDebugInformation="true"
SubSystem="2"
OptimizeReferences="2"
EnableCOMDATFolding="2"
ImportLibrary="$(TargetDir)$(ProjectName)-win32-$(GtkApiVersion).lib"
TargetMachine="1"
/>
</Configuration>
<Configuration
Name="Debug|x64"
InheritedPropertySheets=".\gtk+.vsprops"
ConfigurationType="2"
CharacterSet="2"
>
<Tool
Name="VCPreBuildEventTool"
/>
<Tool
Name="VCCLCompilerTool"
Optimization="0"
AdditionalIncludeDirectories="..\..\..\gdk-pixbuf;..\..\..\gdk;..\..\..\gdk\win32"
PreprocessorDefinitions="_DEBUG;$(GtkDefines)"
MinimalRebuild="true"
BasicRuntimeChecks="3"
RuntimeLibrary="3"
UsePrecompiledHeader="0"
WarningLevel="3"
DebugInformationFormat="3"
/>
<Tool
Name="VCLinkerTool"
AdditionalDependencies="cairo.lib atk-1.0.lib pango-1.0.lib pangocairo-1.0.lib pangowin32-1.0.lib imm32.lib winspool.lib comctl32.lib"
OutputFile="$(OutDir)\$(GtkDllPrefix)$(ProjectName)-win32$(GtkDllSuffix).dll"
LinkIncremental="2"
ModuleDefinitionFile="$(IntDir)\gtk.def"
GenerateDebugInformation="true"
SubSystem="2"
ImportLibrary="$(TargetDir)$(ProjectName)-win32-$(GtkApiVersion).lib"
TargetMachine="17"
/>
</Configuration>
<Configuration
Name="Release|x64"
InheritedPropertySheets=".\gtk+.vsprops"
ConfigurationType="2"
CharacterSet="2"
>
<Tool
Name="VCPreBuildEventTool"
/>
<Tool
Name="VCCLCompilerTool"
AdditionalIncludeDirectories="..\..\..\gdk-pixbuf;..\..\..\gdk;..\..\..\gdk\win32"
PreprocessorDefinitions="$(GtkDefines)"
RuntimeLibrary="2"
UsePrecompiledHeader="0"
WarningLevel="3"
DebugInformationFormat="3"
/>
<Tool
Name="VCLinkerTool"
AdditionalDependencies="cairo.lib atk-1.0.lib pango-1.0.lib pangocairo-1.0.lib pangowin32-1.0.lib imm32.lib winspool.lib comctl32.lib"
OutputFile="$(OutDir)\$(GtkDllPrefix)$(ProjectName)-win32$(GtkDllSuffix).dll"
LinkIncremental="2"
ModuleDefinitionFile="$(IntDir)\gtk.def"
GenerateDebugInformation="true"
SubSystem="2"
OptimizeReferences="2"
EnableCOMDATFolding="2"
ImportLibrary="$(TargetDir)$(ProjectName)-win32-$(GtkApiVersion).lib"
TargetMachine="17"
/>
</Configuration>
</Configurations>
<References>
</References>
<Files>
<Filter
Name="Header Files"
Filter="h;hpp;hxx;hm;inl;inc;xsd"
UniqueIdentifier="{93995380-89BD-4b04-88EB-625FBE52EBFB}"
>
</Filter>
<Filter
Name="Resource Files"
Filter="rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx"
UniqueIdentifier="{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}"
>
<File
RelativePath="..\..\..\gdk\gtk.symbols"
>
<FileConfiguration
Name="Debug|Win32"
>
<Tool
Name="VCCustomBuildTool"
Description="Generating gtk.def"
CommandLine="$(GtkGenerateGtkDef)"
Outputs="$(IntDir)\gtk.def"
/>
</FileConfiguration>
<FileConfiguration
Name="Debug|x64"
>
<Tool
Name="VCCustomBuildTool"
Description="Generating gtk.def"
CommandLine="$(GtkGenerateGtkDef)"
Outputs="$(IntDir)\gtk.def"
/>
</FileConfiguration>
<FileConfiguration
Name="Release|Win32"
>
<Tool
Name="VCCustomBuildTool"
Description="Generating gtk.def"
CommandLine="$(GtkGenerateGtkDef)"
Outputs="$(IntDir)\gtk.def"
/>
</FileConfiguration>
<FileConfiguration
Name="Release|x64"
>
<Tool
Name="VCCustomBuildTool"
Description="Generating gtk.def"
CommandLine="$(GtkGenerateGtkDef)"
Outputs="$(IntDir)\gtk.def"
/>
</FileConfiguration>
</File>
</Filter>
<Filter
Name="Source Files"
Filter="cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx"
UniqueIdentifier="{4FC737F1-C7A5-4376-A066-2A32D752A2FF}"
>
#include "libgtk.sourcefiles"
<File RelativePath="..\..\..\modules\input\gtkimcontextime.c" />
<File RelativePath="..\..\..\modules\input\gtkimcontextmultipress.c" />
<File RelativePath="..\..\..\modules\input\gtkimcontextthai.c" />
<File RelativePath="..\..\..\modules\input\imam-et.c" />
<File RelativePath="..\..\..\modules\input\imcedilla.c" />
<File RelativePath="..\..\..\modules\input\imcyrillic-translit.c" />
<File RelativePath="..\..\..\modules\input\imime.c" />
<File RelativePath="..\..\..\modules\input\iminuktitut.c" />
<File RelativePath="..\..\..\modules\input\imipa.c" />
<File RelativePath="..\..\..\modules\input\immultipress.c" />
<File RelativePath="..\..\..\modules\input\imthai.c" />
<File RelativePath="..\..\..\modules\input\imti-er.c" />
<File RelativePath="..\..\..\modules\input\imti-et.c" />
<File RelativePath="..\..\..\modules\input\imviqr.c" />
<File RelativePath="..\..\..\modules\input\thai-charprop.c" />
</Filter>
</Files>
</VisualStudioProject>
<?xml version="1.0" encoding="UTF-8"?>
<VisualStudioProject
ProjectType="Visual C++"
Version="9.00"
Name="gtk"
ProjectGUID="{FC5AADB5-95CD-4BF0-BA8B-0C16FE7073F5}"
RootNamespace="gtk"
Keyword="Win32Proj"
TargetFrameworkVersion="0"
>
<Platforms>
<Platform
Name="Win32"
/>
<Platform
Name="x64"
/>
</Platforms>
<ToolFiles>
</ToolFiles>
<Configurations>
<Configuration
Name="Debug|Win32"
InheritedPropertySheets=".\gtk-gen-srcs.vsprops"
ConfigurationType="2"
CharacterSet="2"
>
<Tool
Name="VCPreBuildEventTool"
/>
<Tool
Name="VCCLCompilerTool"
Optimization="0"
AdditionalIncludeDirectories="..\..\..\gdk;..\..\..\gtk"
PreprocessorDefinitions="_DEBUG;G_ENABLE_DEBUG;$(GtkDefines)"
MinimalRebuild="true"
BasicRuntimeChecks="3"
RuntimeLibrary="3"
UsePrecompiledHeader="0"
WarningLevel="3"
DebugInformationFormat="4"
/>
<Tool
Name="VCLinkerTool"
AdditionalDependencies="cairo.lib atk-1.0.lib pango-1.0.lib pangocairo-1.0.lib pangowin32-1.0.lib imm32.lib winspool.lib comctl32.lib"
OutputFile="$(OutDir)\$(GtkDllPrefix)$(ProjectName)-win32$(GtkDllSuffix).dll"
LinkIncremental="2"
ModuleDefinitionFile="$(IntDir)\gtk.def"
GenerateDebugInformation="true"
SubSystem="2"
ImportLibrary="$(TargetDir)$(ProjectName)-win32-$(ApiVersion).lib"
TargetMachine="1"
/>
</Configuration>
<Configuration
Name="Release|Win32"
InheritedPropertySheets=".\gtk-gen-srcs.vsprops"
ConfigurationType="2"
CharacterSet="2"
>
<Tool
Name="VCPreBuildEventTool"
/>
<Tool
Name="VCCLCompilerTool"
AdditionalIncludeDirectories="..\..\..\gdk;..\..\..\gdk\win32"
PreprocessorDefinitions="$(GtkDefines)"
RuntimeLibrary="2"
UsePrecompiledHeader="0"
WarningLevel="3"
DebugInformationFormat="3"
/>
<Tool
Name="VCLinkerTool"
AdditionalDependencies="cairo.lib atk-1.0.lib pango-1.0.lib pangocairo-1.0.lib pangowin32-1.0.lib imm32.lib winspool.lib comctl32.lib"
OutputFile="$(OutDir)\$(GtkDllPrefix)$(ProjectName)-win32$(GtkDllSuffix).dll"
LinkIncremental="2"
ModuleDefinitionFile="$(IntDir)\gtk.def"
GenerateDebugInformation="true"
SubSystem="2"
OptimizeReferences="2"
EnableCOMDATFolding="2"
ImportLibrary="$(TargetDir)$(ProjectName)-win32-$(ApiVersion).lib"
TargetMachine="1"
/>
</Configuration>
<Configuration
Name="Debug|x64"
InheritedPropertySheets=".\gtk-gen-srcs.vsprops"
ConfigurationType="2"
CharacterSet="2"
>
<Tool
Name="VCPreBuildEventTool"
/>
<Tool
Name="VCCLCompilerTool"
Optimization="0"
AdditionalIncludeDirectories="..\..\..\gdk;..\..\..\gdk\win32"
PreprocessorDefinitions="_DEBUG;G_ENABLE_DEBUG;$(GtkDefines)"
MinimalRebuild="true"
BasicRuntimeChecks="3"
RuntimeLibrary="3"
UsePrecompiledHeader="0"
WarningLevel="3"
DebugInformationFormat="3"
/>
<Tool
Name="VCLinkerTool"
AdditionalDependencies="cairo.lib atk-1.0.lib pango-1.0.lib pangocairo-1.0.lib pangowin32-1.0.lib imm32.lib winspool.lib comctl32.lib"
OutputFile="$(OutDir)\$(GtkDllPrefix)$(ProjectName)-win32$(GtkDllSuffix).dll"
LinkIncremental="2"
ModuleDefinitionFile="$(IntDir)\gtk.def"
GenerateDebugInformation="true"
SubSystem="2"
ImportLibrary="$(TargetDir)$(ProjectName)-win32-$(ApiVersion).lib"
TargetMachine="17"
/>
</Configuration>
<Configuration
Name="Release|x64"
InheritedPropertySheets=".\gtk-gen-srcs.vsprops"
ConfigurationType="2"
CharacterSet="2"
>
<Tool
Name="VCPreBuildEventTool"
/>
<Tool
Name="VCCLCompilerTool"
AdditionalIncludeDirectories="..\..\..\gdk;..\..\..\gdk\win32"
PreprocessorDefinitions="$(GtkDefines)"
RuntimeLibrary="2"
UsePrecompiledHeader="0"
WarningLevel="3"
DebugInformationFormat="3"
/>
<Tool
Name="VCLinkerTool"
AdditionalDependencies="cairo.lib atk-1.0.lib pango-1.0.lib pangocairo-1.0.lib pangowin32-1.0.lib imm32.lib winspool.lib comctl32.lib"
OutputFile="$(OutDir)\$(GtkDllPrefix)$(ProjectName)-win32$(GtkDllSuffix).dll"
LinkIncremental="2"
ModuleDefinitionFile="$(IntDir)\gtk.def"
GenerateDebugInformation="true"
SubSystem="2"
OptimizeReferences="2"
EnableCOMDATFolding="2"
ImportLibrary="$(TargetDir)$(ProjectName)-win32-$(ApiVersion).lib"
TargetMachine="17"
/>
</Configuration>
</Configurations>
<References>
</References>
<Files>
<Filter
Name="Header Files"
Filter="h;hpp;hxx;hm;inl;inc;xsd"
UniqueIdentifier="{93995380-89BD-4b04-88EB-625FBE52EBFB}"
>
</Filter>
<Filter
Name="Resource Files"
Filter="rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx"
UniqueIdentifier="{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}"
>
<File
RelativePath="..\..\..\gdk\gtk.symbols"
>
<FileConfiguration
Name="Debug|Win32"
>
<Tool
Name="VCCustomBuildTool"
Description="Generating gtk.def"
CommandLine="$(GtkGenerateGtkDef)"
Outputs="$(IntDir)\gtk.def"
/>
</FileConfiguration>
<FileConfiguration
Name="Debug|x64"
>
<Tool
Name="VCCustomBuildTool"
Description="Generating gtk.def"
CommandLine="$(GtkGenerateGtkDef)"
Outputs="$(IntDir)\gtk.def"
/>
</FileConfiguration>
<FileConfiguration
Name="Release|Win32"
>
<Tool
Name="VCCustomBuildTool"
Description="Generating gtk.def"
CommandLine="$(GtkGenerateGtkDef)"
Outputs="$(IntDir)\gtk.def"
/>
</FileConfiguration>
<FileConfiguration
Name="Release|x64"
>
<Tool
Name="VCCustomBuildTool"
Description="Generating gtk.def"
CommandLine="$(GtkGenerateGtkDef)"
Outputs="$(IntDir)\gtk.def"
/>
</FileConfiguration>
</File>
<File RelativePath="..\..\..\gtk\gtk-win32.rc" />
</Filter>
<Filter
Name="Source Files"
Filter="cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx"
UniqueIdentifier="{4FC737F1-C7A5-4376-A066-2A32D752A2FF}"
>
#include "gtk.sourcefiles"
<File RelativePath="..\..\..\modules\input\gtkimcontextime.c" />
<File RelativePath="..\..\..\modules\input\gtkimcontextmultipress.c" />
<File RelativePath="..\..\..\modules\input\gtkimcontextthai.c" />
<File RelativePath="..\..\..\modules\input\imam-et.c" />
<File RelativePath="..\..\..\modules\input\imcedilla.c" />
<File RelativePath="..\..\..\modules\input\imcyrillic-translit.c" />
<File RelativePath="..\..\..\modules\input\imime.c" />
<File RelativePath="..\..\..\modules\input\iminuktitut.c" />
<File RelativePath="..\..\..\modules\input\imipa.c" />
<File RelativePath="..\..\..\modules\input\immultipress.c" />
<File RelativePath="..\..\..\modules\input\imthai.c" />
<File RelativePath="..\..\..\modules\input\imti-er.c" />
<File RelativePath="..\..\..\modules\input\imti-et.c" />
<File RelativePath="..\..\..\modules\input\imviqr.c" />
<File RelativePath="..\..\..\modules\input\thai-charprop.c" />
</Filter>
</Files>
</VisualStudioProject>
-78
View File
@@ -1,78 +0,0 @@
<?xml version="1.0" encoding="Windows-1252"?>
<VisualStudioProject
ProjectType="Visual C++"
Version="9.00"
Name="install"
ProjectGUID="{FC5AADB5-95CD-4BF0-BA8B-0C16FE7073FB}"
RootNamespace="install"
Keyword="Win32Proj"
TargetFrameworkVersion="131072"
>
<Platforms>
<Platform
Name="Win32"
/>
<Platform
Name="x64"
/>
</Platforms>
<ToolFiles>
</ToolFiles>
<Configurations>
<Configuration
Name="Debug|Win32"
InheritedPropertySheets=".\gtk+.vsprops"
OutputDirectory="$(GlibEtcInstallRoot)"
ConfigurationType="10"
CharacterSet="2"
DeleteExtensionsOnClean=""
>
<Tool
Name="VCPreBuildEventTool"
CommandLine="$(GtkDoInstall)"
/>
</Configuration>
<Configuration
Name="Debug|x64"
InheritedPropertySheets=".\gtk+.vsprops"
OutputDirectory="$(GlibEtcInstallRoot)"
ConfigurationType="10"
CharacterSet="2"
DeleteExtensionsOnClean=""
>
<Tool
Name="VCPreBuildEventTool"
CommandLine="$(GtkDoInstall)"
/>
</Configuration>
<Configuration
Name="Release|Win32"
InheritedPropertySheets=".\gtk+.vsprops"
OutputDirectory="$(GlibEtcInstallRoot)"
ConfigurationType="10"
CharacterSet="2"
WholeProgramOptimization="1"
DeleteExtensionsOnClean=""
>
<Tool
Name="VCPreBuildEventTool"
CommandLine="$(GtkDoInstall)"
/>
</Configuration>
<Configuration
Name="Release|x64"
InheritedPropertySheets=".\gtk+.vsprops"
OutputDirectory="$(GlibEtcInstallRoot)"
ConfigurationType="10"
CharacterSet="2"
WholeProgramOptimization="1"
DeleteExtensionsOnClean=""
>
<Tool
Name="VCPreBuildEventTool"
CommandLine="$(GtkDoInstall)"
/>
</Configuration>
</Configurations>
</VisualStudioProject>
+170
View File
@@ -0,0 +1,170 @@
<?xml version="1.0" encoding="Windows-1252"?>
<VisualStudioProject
ProjectType="Visual C++"
Version="9.00"
Name="libwimp"
ProjectGUID="{7660FB4E-2AE6-483E-8813-0974CBE6F97F}"
RootNamespace="libwimp"
Keyword="Win32Proj"
TargetFrameworkVersion="196613"
>
<Platforms>
<Platform
Name="Win32"
/>
<Platform
Name="x64"
/>
</Platforms>
<ToolFiles>
</ToolFiles>
<Configurations>
<Configuration
Name="Debug|Win32"
ConfigurationType="2"
InheritedPropertySheets=".\gtk-build-defines.vsprops"
CharacterSet="2"
>
<Tool
Name="VCPreBuildEventTool"
/>
<Tool
Name="VCCLCompilerTool"
AdditionalIncludeDirectories="..\..\..\gdk;..\..\..\gdk\win32"
Optimization="0"
PreprocessorDefinitions="_DEBUG;G_ENABLE_DEBUG"
MinimalRebuild="true"
BasicRuntimeChecks="3"
RuntimeLibrary="3"
UsePrecompiledHeader="0"
WarningLevel="3"
DebugInformationFormat="4"
/>
<Tool
Name="VCLinkerTool"
AdditionalDependencies="pangowin32-1.0.lib pango-1.0.lib cairo.lib"
LinkIncremental="2"
GenerateDebugInformation="true"
SubSystem="2"
TargetMachine="1"
/>
</Configuration>
<Configuration
Name="Release|Win32"
ConfigurationType="2"
InheritedPropertySheets=".\gtk-build-defines.vsprops"
CharacterSet="2"
WholeProgramOptimization="1"
>
<Tool
Name="VCPreBuildEventTool"
/>
<Tool
Name="VCCLCompilerTool"
AdditionalIncludeDirectories="..\..\..\gdk;..\..\..\gdk\win32"
Optimization="2"
EnableIntrinsicFunctions="true"
PreprocessorDefinitions=""
RuntimeLibrary="2"
EnableFunctionLevelLinking="true"
UsePrecompiledHeader="0"
WarningLevel="3"
DebugInformationFormat="3"
/>
<Tool
Name="VCLinkerTool"
AdditionalDependencies="pangowin32-1.0.lib pango-1.0.lib cairo.lib"
LinkIncremental="1"
GenerateDebugInformation="true"
SubSystem="2"
OptimizeReferences="2"
EnableCOMDATFolding="2"
TargetMachine="1"
/>
</Configuration>
<Configuration
Name="Debug|x64"
InheritedPropertySheets=".\gtk-build-defines.vsprops"
ConfigurationType="2"
CharacterSet="2"
>
<Tool
Name="VCPreBuildEventTool"
/>
<Tool
Name="VCCLCompilerTool"
Optimization="0"
AdditionalIncludeDirectories="..\..\..\gdk;..\..\..\gdk\win32"
PreprocessorDefinitions="_DEBUG;G_ENABLE_DEBUG"
MinimalRebuild="true"
BasicRuntimeChecks="3"
RuntimeLibrary="3"
UsePrecompiledHeader="0"
WarningLevel="3"
DebugInformationFormat="3"
/>
<Tool
Name="VCLinkerTool"
AdditionalDependencies="pangowin32-1.0.lib pango-1.0.lib cairo.lib"
LinkIncremental="2"
GenerateDebugInformation="true"
SubSystem="2"
TargetMachine="17"
/>
</Configuration>
<Configuration
Name="Release|x64"
InheritedPropertySheets=".\gtk-build-defines.vsprops"
ConfigurationType="2"
CharacterSet="2"
>
<Tool
Name="VCPreBuildEventTool"
/>
<Tool
Name="VCCLCompilerTool"
AdditionalIncludeDirectories="..\..\..\gdk;..\..\..\gdk\win32"
PreprocessorDefinitions=""
RuntimeLibrary="2"
UsePrecompiledHeader="0"
WarningLevel="3"
DebugInformationFormat="3"
/>
<Tool
Name="VCLinkerTool"
AdditionalDependencies="pangowin32-1.0.lib pango-1.0.lib cairo.lib"
LinkIncremental="2"
GenerateDebugInformation="true"
SubSystem="2"
OptimizeReferences="2"
EnableCOMDATFolding="2"
TargetMachine="17"
/>
</Configuration>
</Configurations>
<References>
</References>
<Files>
<Filter
Name="Sources"
Filter="cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx"
UniqueIdentifier="{4FC737F1-C7A5-4376-A066-2A32D752A2FF}"
>
#include "libwimp.sourcefiles"
</Filter>
<Filter
Name="Headers"
Filter="h;hpp;hxx;hm;inl;inc;xsd"
UniqueIdentifier="{93995380-89BD-4b04-88EB-625FBE52EBFB}"
>
</Filter>
<Filter
Name="Resource Files"
Filter="rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav"
UniqueIdentifier="{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}"
>
</Filter>
</Files>
<Globals>
</Globals>
</VisualStudioProject>
+4
View File
@@ -128,8 +128,12 @@
#ifndef _MSC_VER
#define HAVE_STDINT_H 1
#else
#if (_MSC_VER >= 1600) /* VS 2010 ships with stdint.h */
#define HAVE_STDINT_H 1
#else
/* #undef HAVE_STDINT_H */
#endif
#endif
/* Define to 1 if you have the <stdlib.h> header file. */
#define HAVE_STDLIB_H 1
+81 -473
View File
@@ -1,4 +1,5 @@
# Process this file with autoconf to produce a configure script.
# Process this file with autoconf to produce a configure script.
# require autoconf 2.54
AC_PREREQ(2.62)
@@ -11,9 +12,9 @@ AC_PREREQ(2.62)
# set GTK_BINARY_AGE and GTK_INTERFACE_AGE to 0.
m4_define([gtk_major_version], [2])
m4_define([gtk_minor_version], [21])
m4_define([gtk_micro_version], [0])
m4_define([gtk_interface_age], [0])
m4_define([gtk_minor_version], [24])
m4_define([gtk_micro_version], [33])
m4_define([gtk_interface_age], [33])
m4_define([gtk_binary_age],
[m4_eval(100 * gtk_minor_version + gtk_micro_version)])
m4_define([gtk_version],
@@ -31,10 +32,11 @@ m4_define([gtk_api_version], [2.0])
m4_define([gtk_binary_version], [2.10.0])
# required versions of other packages
m4_define([glib_required_version], [2.23.6])
m4_define([glib_required_version], [2.28.0])
m4_define([pango_required_version], [1.20])
m4_define([atk_required_version], [1.29.2])
m4_define([cairo_required_version], [1.6])
m4_define([gdk_pixbuf_required_version], [2.21.0])
AC_INIT([gtk+], [gtk_version],
@@ -42,14 +44,13 @@ AC_INIT([gtk+], [gtk_version],
[gtk+])
AC_CONFIG_SRCDIR([gdk/gdktypes.h])
AC_CONFIG_HEADERS([config.h])
AC_CONFIG_MACRO_DIR([m4])
# Save this value here, since automake will set cflags later
cflags_set=${CFLAGS+set}
AM_INIT_AUTOMAKE([no-define -Wno-portability dist-bzip2])
AM_CONFIG_HEADER(config.h)
# Support silent build rules, requires at least automake-1.11. Enable
# by either passing --enable-silent-rules to configure or passing V=0
@@ -108,19 +109,6 @@ m4_define([gail_lt_current_minus_age],[m4_eval(gail_lt_current - gail_lt_age)])
AC_SUBST([GAIL_LT_VERSION_INFO],[gail_lt_version_info])
AC_SUBST([GAIL_LT_CURRENT_MINUS_AGE],[gail_lt_current_minus_age])
#
# gdk-pixbuf gets versioned separately, and for now, using standard
# libtool versioning, not GTK+-style versioning
#
GDK_PIXBUF_MAJOR=gtk_major_version
GDK_PIXBUF_MINOR=gtk_minor_version
GDK_PIXBUF_MICRO=gtk_micro_version
GDK_PIXBUF_VERSION="${GDK_PIXBUF_MAJOR}.${GDK_PIXBUF_MINOR}.${GDK_PIXBUF_MICRO}"
AC_SUBST(GDK_PIXBUF_MAJOR)
AC_SUBST(GDK_PIXBUF_MINOR)
AC_SUBST(GDK_PIXBUF_MICRO)
AC_SUBST(GDK_PIXBUF_VERSION)
GETTEXT_PACKAGE=gtk20
AC_SUBST(GETTEXT_PACKAGE)
AC_DEFINE_UNQUOTED(GETTEXT_PACKAGE, "$GETTEXT_PACKAGE",
@@ -202,10 +190,10 @@ m4_ifdef([LT_OUTPUT], [LT_OUTPUT])
AC_SYS_LARGEFILE
AM_PROG_AS
AC_PATH_PROG(NM, nm, nm)
AC_PATH_TOOL(NM, nm, nm)
dnl Initialize maintainer mode
AM_MAINTAINER_MODE
AM_MAINTAINER_MODE([enable])
AC_MSG_CHECKING([for some Win32 platform])
case "$host" in
@@ -311,7 +299,6 @@ AM_SANITY_CHECK
# Checks for programs.
AC_ISC_POSIX
AM_PROG_CC_STDC
AM_PROG_CC_C_O
AC_PROG_INSTALL
AC_PROG_MAKE_SET
@@ -387,7 +374,8 @@ PKG_CHECK_MODULES(BASE_DEPENDENCIES,
[glib-2.0 >= glib_required_version dnl
atk >= atk_required_version dnl
pango >= pango_required_version dnl
cairo >= cairo_required_version])
cairo >= cairo_required_version dnl
gdk-pixbuf-2.0 >= gdk_pixbuf_required_version])
## In addition to checking that cairo is present, we also need to
## check that the correct cairo backend is there. E.g. if the GDK
@@ -402,12 +390,14 @@ fi
PKG_CHECK_MODULES(CAIRO_BACKEND,
[cairo-$cairo_backend >= cairo_required_version])
PKG_CHECK_MODULES(GMODULE, [gmodule-2.0])
if test "$os_win32" != yes; then
# libtool option to control which symbols are exported
# right now, symbols starting with _ are not exported
LIBTOOL_EXPORT_OPTIONS='-export-symbols-regex "^[[^_]].*"'
else
# We currently use .def files on Windows (for gdk-pixbuf, gdk and gtk)
# We currently use .def files on Windows (for gdk and gtk)
LIBTOOL_EXPORT_OPTIONS=
fi
AC_SUBST(LIBTOOL_EXPORT_OPTIONS)
@@ -616,7 +606,7 @@ AC_TRY_COMPILE([#include <dirent.h>], [DIR *dir;],
# Run AM_PATH_GLIB_2_0 to make sure that GLib is installed and working
#
GLIB_PACKAGES="gobject-2.0 gmodule-no-export-2.0"
GLIB_PACKAGES="gobject-2.0 gio-2.0 gmodule-no-export-2.0"
AM_PATH_GLIB_2_0(glib_required_version, :,
AC_MSG_ERROR([
@@ -631,8 +621,6 @@ if test "x$GLIB_VERSION_MAJOR_MINOR" = "x$GLIB_REQUIRED_VERSION_MAJOR_MINOR"; th
CFLAGS="-DG_DISABLE_DEPRECATED $CFLAGS"
fi
CFLAGS="-DGDK_PIXBUF_DISABLE_DEPRECATED $CFLAGS"
dnl
dnl Check for bind_textdomain_codeset, including -lintl if GLib brings it in.
@@ -727,7 +715,7 @@ oLIBS="$LIBS"
LIBS="$LIBS $GDK_WLIBS"
# The following is necessary for Linux libc-5.4.38
AC_MSG_CHECKING(if iswalnum() and friends are properly defined)
AC_TRY_LINK([#include <stdlib.h>],[
AC_TRY_LINK([#include <stdlib.h>
#if (defined(HAVE_WCTYPE_H) || defined(HAVE_WCHAR_H))
# ifdef HAVE_WCTYPE_H
# include <wctype.h>
@@ -738,7 +726,7 @@ AC_TRY_LINK([#include <stdlib.h>],[
# endif
#else
# define iswalnum(c) ((wchar_t)(c) <= 0xFF && isalnum(c))
#endif
#endif],[
iswalnum((wchar_t) 0);
], gdk_working_wctype=yes, gdk_working_wctype=no)
LIBS="$oLIBS"
@@ -762,27 +750,7 @@ AC_MSG_RESULT($gtk_uxtheme_h)
AC_CHECK_HEADERS(crt_externs.h)
AC_CHECK_FUNCS(_NSGetEnviron)
##################################################
# Checks for gdk-pixbuf
##################################################
dnl ********************************************************
dnl * See whether we need to load our modules as .la files *
dnl ********************************************************
use_la_modules=false
case $host in
*-aix*) use_la_modules=true
esac
if $use_la_modules ; then
AC_DEFINE(USE_LA_MODULES, 1,
[Whether to load modules via .la files rather than directly])
fi
AC_MSG_CHECKING(whether to build gmodulized gdk-pixbuf)
AC_MSG_CHECKING(whether to build dynamic modules)
AC_ARG_ENABLE(modules,
[AC_HELP_STRING([--disable-modules],
@@ -804,13 +772,13 @@ else
dnl Now we check to see if our libtool supports shared lib deps
dnl (in a rather ugly way even)
if $dynworks; then
pixbuf_libtool_config="${CONFIG_SHELL-/bin/sh} ./libtool --config"
pixbuf_deplibs_check=`$pixbuf_libtool_config | \
module_libtool_config="${CONFIG_SHELL-/bin/sh} ./libtool --config"
module_deplibs_check=`$module_libtool_config | \
grep '^[[a-z_]]*check[[a-z_]]*_method=[['\''"]]' | \
sed 's/.*[['\''"]]\(.*\)[['\''"]]$/\1/'`
if test "x$pixbuf_deplibs_check" = "xnone" || \
test "x$pixbuf_deplibs_check" = "xunknown" || \
test "x$pixbuf_deplibs_check" = "x"; then
if test "x$module_deplibs_check" = "xnone" || \
test "x$module_deplibs_check" = "xunknown" || \
test "x$module_deplibs_check" = "x"; then
dynworks=false
fi
fi
@@ -824,297 +792,8 @@ else
fi
fi
dnl We allow people to disable image loaders explicitely, but if they don't we error
dnl out so that people don't accidentally build without them.
AC_ARG_WITH(libpng,
[AC_HELP_STRING([--without-libpng],
[disable PNG loader for gdk-pixbuf])])
AC_ARG_WITH(libjpeg,
[AC_HELP_STRING([--without-libjpeg],
[disable JPEG loader for gdk-pixbuf])])
AC_ARG_WITH(libtiff,
[AC_HELP_STRING([--without-libtiff],
[disable TIFF loader for gdk-pixbuf])])
AC_ARG_WITH(libjasper,
[AC_HELP_STRING([--with-libjasper],
[enable JPEG2000 loader for gdk-pixbuf])])
AC_ARG_ENABLE(gdiplus,
[AC_HELP_STRING([--enable-gdiplus],
[enble GDI+ loaders for gdk-pixbuf (currently known to be broken)])],,
[enable_gdiplus=no])
AM_CONDITIONAL(BUILD_GDIPLUS_LOADERS, [ test x$os_win32 = xyes && test x$enable_gdiplus != xno ])
dnl Test for libtiff
if test x$os_win32 = xno || test x$enable_gdiplus = xno; then
if test x$with_libtiff != xno && test -z "$LIBTIFF"; then
AC_CHECK_LIB(tiff, TIFFReadRGBAImageOriented,
[AC_CHECK_HEADER(tiffio.h,
TIFF='tiff'; LIBTIFF='-ltiff',
AC_MSG_WARN(*** TIFF loader will not be built (TIFF header files not found) ***))],
[AC_CHECK_LIB(tiff, TIFFWriteScanline,
[AC_CHECK_HEADER(tiffio.h,
TIFF='tiff'; LIBTIFF='-ltiff -ljpeg -lz',
AC_MSG_WARN(*** TIFF loader will not be built (TIFF header files not found) ***))],
[AC_CHECK_LIB(tiff34, TIFFFlushData,
[AC_CHECK_HEADER(tiffio.h,
TIFF='tiff'; LIBTIFF='-ltiff34 -ljpeg -lz',
AC_MSG_WARN(*** TIFF loader will not be built (TIFF header files not found) ***))],
AC_MSG_WARN(*** TIFF loader will not be built (TIFF library not found) ***), -ljpeg -lz -lm)], -ljpeg -lz -lm)], -lm)
fi
if test x$with_libtiff != xno && test -z "$LIBTIFF"; then
AC_MSG_ERROR([
*** Checks for TIFF loader failed. You can build without it by passing
*** --without-libtiff to configure but some programs using GTK+ may
*** not work properly])
fi
fi
dnl Test for libjpeg
if test x$os_win32 = xno || test x$enable_gdiplus = xno; then
if test x$with_libjpeg != xno && test -z "$LIBJPEG"; then
AC_CHECK_LIB(jpeg, jpeg_destroy_decompress,
jpeg_ok=yes,
jpeg_ok=no
AC_MSG_WARN(*** JPEG loader will not be built (JPEG library not found) ***))
if test "$jpeg_ok" = yes; then
AC_MSG_CHECKING([for jpeglib.h])
AC_TRY_CPP(
[#include <stdio.h>
#undef PACKAGE
#undef VERSION
#undef HAVE_STDLIB_H
#include <jpeglib.h>],
jpeg_ok=yes,
jpeg_ok=no)
AC_MSG_RESULT($jpeg_ok)
if test "$jpeg_ok" = yes; then
LIBJPEG='-ljpeg'
AC_CHECK_LIB(jpeg, jpeg_simple_progression,
AC_DEFINE(HAVE_PROGRESSIVE_JPEG, 1,
[Define to 1 is libjpeg supports progressive JPEG]),
AC_MSG_WARN(JPEG library does not support progressive saving.))
else
AC_MSG_WARN(*** JPEG loader will not be built (JPEG header file not found) ***)
fi
fi
fi
if test x$with_libjpeg != xno && test -z "$LIBJPEG"; then
AC_MSG_ERROR([
*** Checks for JPEG loader failed. You can build without it by passing
*** --without-libjpeg to configure but some programs using GTK+ may
*** not work properly])
fi
fi
dnl Test for libpng
if test x$with_libpng != xno && test -z "$LIBPNG"; then
AC_MSG_CHECKING(for libpng12)
if $PKG_CONFIG --exists libpng12 ; then
AC_MSG_RESULT(yes)
PNG='png'
PNG_DEP_CFLAGS_PACKAGES=libpng12
LIBPNG=`$PKG_CONFIG --libs libpng12`
else
AC_MSG_RESULT(no)
AC_CHECK_LIB(png, png_read_info,
[AC_CHECK_HEADER(png.h,
png_ok=yes,
png_ok=no)],
AC_MSG_WARN(*** PNG loader will not be built (PNG library not found) ***), -lz -lm)
if test "$png_ok" = yes; then
AC_MSG_CHECKING([for png_structp in png.h])
AC_TRY_COMPILE([#include <png.h>],
[png_structp pp; png_infop info; png_colorp cmap; png_create_read_struct;],
png_ok=yes,
png_ok=no)
AC_MSG_RESULT($png_ok)
if test "$png_ok" = yes; then
PNG='png'; LIBPNG='-lpng -lz'
else
AC_MSG_WARN(*** PNG loader will not be built (PNG library is too old) ***)
fi
else
AC_MSG_WARN(*** PNG loader will not be built (PNG header file not found) ***)
fi
fi
fi
if test x$with_libpng != xno && test -z "$LIBPNG"; then
AC_MSG_ERROR([
*** Checks for PNG loader failed. You can build without it by passing
*** --without-libpng to configure but many programs using GTK+ will
*** not work properly. The PNG loader is also needed if you are compiling
*** from CVS.])
fi
dnl Test for libjasper
if test x$with_libjasper = xyes && test -z "$LIBJASPER"; then
AC_CHECK_LIB(jasper, jas_init, LIBJASPER=-ljasper, [], -ljpeg)
fi
if test x$with_libjasper = xyes && test -z "$LIBJASPER"; then
AC_MSG_ERROR([
*** Checks for JPEG2000 loader failed. You can build without it by passing
*** --without-libjasper to configure])
fi
AC_SUBST(LIBTIFF)
AC_SUBST(LIBJPEG)
AC_SUBST(LIBPNG)
AC_SUBST(LIBJASPER)
AM_CONDITIONAL(BUILD_DYNAMIC_MODULES, $dynworks)
#
# Allow building some or all gdk-pixbuf loaders included
#
AC_MSG_CHECKING(pixbuf loaders to build)
dnl due to an autoconf bug, commas in the first arg to
dnl AC_HELP_STRING cause problems.
dnl AC_HELP_STRING([--with-included-loaders=LOADER1 LOADER2 ...],
dnl [build the specified loaders into gdk-pixbuf])
AC_ARG_WITH(included_loaders,
[ --with-included-loaders=LOADER1,LOADER2,...
build the specified loaders into gdk-pixbuf])
if $dynworks; then
:
else
## if the option was specified, leave it; otherwise disable included loaders
if test x$with_included_loaders = xno; then
with_included_loaders=yes
fi
fi
# Use the traditional png loader instead of the GDI+ one on Windows,
# because some important apps like GIMP need to read and write
# arbitrary tEXt chunks which doesn't seem to be possible through GDI+
all_loaders="ani,icns,pcx,ras,tga,png,pnm,wbmp,xbm,xpm,qtif"
if test x$with_libjasper != xno; then
all_loaders="$all_loaders,jasper"
fi
if test x$os_win32 = xyes && test x$enable_gdiplus != xno; then
# Skip PNG, see comment above
gdip_formats="bmp emf gif ico jpeg tiff wmf"
for f in $gdip_formats; do
all_loaders="$all_loaders,gdip-$f"
done
else
all_loaders="$all_loaders,bmp,gif,ico,jpeg,tiff"
fi
included_loaders=""
# If no loaders specified, include all
if test "x$with_included_loaders" = xyes ; then
included_loaders="$all_loaders"
else
included_loaders="$with_included_loaders"
fi
AC_MSG_RESULT($included_loaders)
INCLUDED_LOADER_OBJ=
INCLUDED_LOADER_DEFINE=
IFS="${IFS= }"; gtk_save_ifs="$IFS"; IFS=","
for loader in $included_loaders; do
if echo "$all_loaders" | egrep "(^|,)$loader(\$|,)" > /dev/null; then
:
else
AC_MSG_ERROR([the specified loader $loader does not exist])
fi
loader_underscores=`echo $loader | sed -e 's/-/_/g'`
INCLUDED_LOADER_OBJ="$INCLUDED_LOADER_OBJ libstatic-pixbufloader-$loader.la"
# Don't bother defining separate -DINCLUDE_gdip_foo for each gdip-foo loader
case $loader in
gdip-*) ;;
*) INCLUDED_LOADER_DEFINE="$INCLUDED_LOADER_DEFINE -DINCLUDE_$loader_underscores";;
esac
eval INCLUDE_$loader_underscores=yes
done
# Just define one -DINCLUDE_gdiplus for all the gdip-foo loaders
# (except gdip-png, which isn't built at all)
if test x"$INCLUDE_gdip_ico" = xyes; then
INCLUDED_LOADER_DEFINE="$INCLUDED_LOADER_DEFINE -DINCLUDE_gdiplus"
fi
IFS="$gtk_save_ifs"
AC_SUBST(INCLUDED_LOADER_OBJ)
AC_SUBST(INCLUDED_LOADER_DEFINE)
AM_CONDITIONAL(INCLUDE_PNG, [test x"$INCLUDE_png" = xyes])
AM_CONDITIONAL(INCLUDE_BMP, [test x"$INCLUDE_bmp" = xyes])
AM_CONDITIONAL(INCLUDE_WBMP, [test x"$INCLUDE_wbmp" = xyes])
AM_CONDITIONAL(INCLUDE_GIF, [test x"$INCLUDE_gif" = xyes])
AM_CONDITIONAL(INCLUDE_ICO, [test x"$INCLUDE_ico" = xyes])
AM_CONDITIONAL(INCLUDE_ANI, [test x"$INCLUDE_ani" = xyes])
AM_CONDITIONAL(INCLUDE_JPEG, [test x"$INCLUDE_jpeg" = xyes])
AM_CONDITIONAL(INCLUDE_PNM, [test x"$INCLUDE_pnm" = xyes])
AM_CONDITIONAL(INCLUDE_RAS, [test x"$INCLUDE_ras" = xyes])
AM_CONDITIONAL(INCLUDE_TIFF, [test x"$INCLUDE_tiff" = xyes])
AM_CONDITIONAL(INCLUDE_XPM, [test x"$INCLUDE_xpm" = xyes])
AM_CONDITIONAL(INCLUDE_XBM, [test x"$INCLUDE_xbm" = xyes])
AM_CONDITIONAL(INCLUDE_TGA, [test x"$INCLUDE_tga" = xyes])
AM_CONDITIONAL(INCLUDE_PCX, [test x"$INCLUDE_pcx" = xyes])
AM_CONDITIONAL(INCLUDE_ICNS, [test x"$INCLUDE_icns" = xyes])
AM_CONDITIONAL(INCLUDE_JASPER, [test x"$INCLUDE_jasper" = xyes])
AM_CONDITIONAL(INCLUDE_QTIF, [test x"$INCLUDE_qtif" = xyes])
# As all GDI+ loaders are either built-in or not, arbitrarily just
# check one of the variables here
AM_CONDITIONAL(INCLUDE_GDIPLUS, [test x"$INCLUDE_gdip_ico" = xyes])
if test x$gio_can_sniff = x; then
AC_MSG_CHECKING([if gio can sniff png])
gtk_save_LIBS="$LIBS"
gtk_save_CFLAGS="$CFLAGS"
LIBS="`$PKG_CONFIG --libs gio-2.0`"
CFLAGS="`$PKG_CONFIG --cflags gio-2.0`"
AC_RUN_IFELSE([AC_LANG_SOURCE([[
#include <gio/gio.h>
static const gsize data_size = 159;
static const guint8 data[] =
{
0x89, 0x50, 0x4e, 0x47, 0x0d, 0x0a, 0x1a, 0x0a, 0x00, 0x00, 0x00, 0x0d,
0x49, 0x48, 0x44, 0x52, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x01,
0x08, 0x02, 0x00, 0x00, 0x00, 0x90, 0x77, 0x53, 0xde, 0x00, 0x00, 0x00,
0x01, 0x73, 0x52, 0x47, 0x42, 0x00, 0xae, 0xce, 0x1c, 0xe9, 0x00, 0x00,
0x00, 0x09, 0x70, 0x48, 0x59, 0x73, 0x00, 0x00, 0x0b, 0x13, 0x00, 0x00,
0x0b, 0x13, 0x01, 0x00, 0x9a, 0x9c, 0x18, 0x00, 0x00, 0x00, 0x07, 0x74,
0x49, 0x4d, 0x45, 0x07, 0xd8, 0x07, 0x0f, 0x10, 0x08, 0x15, 0x61, 0xd8,
0x35, 0x37, 0x00, 0x00, 0x00, 0x19, 0x74, 0x45, 0x58, 0x74, 0x43, 0x6f,
0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x00, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65,
0x64, 0x20, 0x77, 0x69, 0x74, 0x68, 0x20, 0x47, 0x49, 0x4d, 0x50, 0x57,
0x81, 0x0e, 0x17, 0x00, 0x00, 0x00, 0x0c, 0x49, 0x44, 0x41, 0x54, 0x08,
0xd7, 0x63, 0xf8, 0xff, 0xff, 0x3f, 0x00, 0x05, 0xfe, 0x02, 0xfe, 0xdc,
0xcc, 0x59, 0xe7, 0x00, 0x00, 0x00, 0x00, 0x49, 0x45, 0x4e, 0x44, 0xae,
0x42, 0x60, 0x82
};
int
main (int argc, char **argv)
{
char *content_type;
char *image_png;
content_type = g_content_type_guess (NULL, data, data_size, NULL);
image_png = g_content_type_from_mime_type ("image/png");
return !!strcmp (content_type, image_png);
}]])],
[gio_can_sniff=yes
AC_DEFINE(GDK_PIXBUF_USE_GIO_MIME, 1, [Define if gio can sniff image data])],
[gio_can_sniff=no])
AC_MSG_RESULT($gio_can_sniff)
LIBS="$gtk_save_LIBS"
CFLAGS="$gtk_save_CFLAGS"
fi
#
# Allow building some or all immodules included
#
@@ -1141,6 +820,9 @@ all_immodules="am-et,cedilla,cyrillic-translit"
if test "$gdktarget" = "win32"; then
all_immodules="${all_immodules},ime"
fi
if test "$gdktarget" = "quartz"; then
all_immodules="${all_immodules},quartz"
fi
all_immodules="${all_immodules},inuktitut,ipa,multipress,thai,ti-er,ti-et,viqr"
if test "$gdktarget" = "x11"; then
all_immodules="${all_immodules},xim"
@@ -1184,6 +866,7 @@ AM_CONDITIONAL(INCLUDE_IM_IME, [test x"$INCLUDE_ime" = xyes])
AM_CONDITIONAL(INCLUDE_IM_INUKTITUT, [test x"$INCLUDE_inuktitut" = xyes])
AM_CONDITIONAL(INCLUDE_IM_IPA, [test x"$INCLUDE_ipa" = xyes])
AM_CONDITIONAL(INCLUDE_IM_MULTIPRESS, [test x"$INCLUDE_multipress" = xyes])
AM_CONDITIONAL(INCLUDE_IM_QUARTZ, [test x"$INCLUDE_quartz" = xyes])
AM_CONDITIONAL(INCLUDE_IM_THAI, [test x"$INCLUDE_thai" = xyes])
AM_CONDITIONAL(INCLUDE_IM_TI_ER, [test x"$INCLUDE_ti_er" = xyes])
AM_CONDITIONAL(INCLUDE_IM_TI_ET, [test x"$INCLUDE_ti_et" = xyes])
@@ -1194,29 +877,6 @@ AC_HEADER_SYS_WAIT
AC_TYPE_SIGNAL
AM_CONDITIONAL(HAVE_TIFF, test "x$LIBTIFF" != x)
AM_CONDITIONAL(HAVE_PNG, test "x$LIBPNG" != x)
AM_CONDITIONAL(HAVE_JPEG, test "x$LIBJPEG" != x)
AM_CONDITIONAL(HAVE_JASPER, test "x$LIBJASPER" != x)
if $dynworks ; then
STATIC_LIB_DEPS=
if echo "$included_loaders" | egrep '(^|,)tiff($|,)' > /dev/null; then
STATIC_LIB_DEPS="$STATIC_LIB_DEPS $LIBTIFF"
fi
if echo "$included_loaders" | egrep '(^|,)jpeg($|,)' > /dev/null; then
STATIC_LIB_DEPS="$STATIC_LIB_DEPS $LIBJPEG"
fi
if echo "$included_loaders" | egrep '(^|,)png($|,)' > /dev/null; then
STATIC_LIB_DEPS="$STATIC_LIB_DEPS $LIBPNG"
fi
if echo "$included_loaders" | egrep '(^|,)jasper($|,)' > /dev/null; then
STATIC_LIB_DEPS="$STATIC_LIB_DEPS $LIBJASPER"
fi
else
STATIC_LIB_DEPS="$LIBTIFF $LIBJPEG $LIBPNG $LIBJASPER"
fi
# Checks to see whether we should include mediaLib
# support.
#
@@ -1249,64 +909,19 @@ fi
AM_CONDITIONAL(USE_MEDIALIB, test $use_mlib = yes)
AM_CONDITIONAL(USE_MEDIALIB25, test $use_mlib25 = yes)
# Checks to see if we should compile in MMX support (there will be
# a runtime test when the code is actually run to see if it should
# be used - this just checks if we can compile it.)
#
# This code is partially taken from Mesa
#
AC_MSG_CHECKING(for x86 platform)
case $host_cpu in
i386|i486|i586|i686|i786|k6|k7)
use_x86_asm=yes
;;
*)
use_x86_asm=no
esac
AC_MSG_RESULT($use_x86_asm)
use_mmx_asm=no
if test $use_x86_asm = yes; then
save_ac_ext=$ac_ext
ac_ext=S
AC_MSG_CHECKING(compiler support for MMX)
cp $srcdir/gdk-pixbuf/pixops/scale_line_22_33_mmx.S conftest.S
if AC_TRY_EVAL(ac_compile); then
use_mmx_asm=yes
fi
rm -rf conftest*
ac_ext=$save_ac_ext
if test $use_mmx_asm = yes; then
AC_DEFINE(USE_MMX, 1,
[Define to 1 if XXM is available and should be used])
AC_MSG_RESULT(yes)
else
AC_MSG_RESULT(no)
fi
fi
AM_CONDITIONAL(USE_MMX, test x$use_mmx_asm = xyes)
REBUILD_PNGS=
if test -z "$LIBPNG" && test x"$os_win32" = xno -o x$enable_gdiplus = xno; then
REBUILD_PNGS=#
fi
dnl Look for a host system's gdk-pixbuf-csource if we are cross-compiling
AM_CONDITIONAL(CROSS_COMPILING, test $cross_compiling = yes)
if test $cross_compiling = yes; then
AC_PATH_PROG(GDK_PIXBUF_CSOURCE, gdk-pixbuf-csource, no)
AC_PATH_PROG(GTK_UPDATE_ICON_CACHE, gtk-update-icon-cache, no)
if test x$GTK_UPDATE_ICON_CACHE = xno; then
REBUILD_PNGS=#
fi
fi
AC_PATH_PROG(GDK_PIXBUF_CSOURCE, gdk-pixbuf-csource, no)
if test ! -f $srcdir/gtk/gtkbuiltincache.h &&
test "x$REBUILD_PNGS" = "x#" ; then
AC_MSG_ERROR([
@@ -1315,22 +930,10 @@ if test ! -f $srcdir/gtk/gtkbuiltincache.h &&
*** don't have a prebuilt gtk-update-icon-cache on the build system.])
fi
AC_SUBST(REBUILD_PNGS)
GDK_PIXBUF_PACKAGES="gmodule-no-export-2.0 gobject-2.0 gio-2.0"
GDK_PIXBUF_EXTRA_LIBS="$STATIC_LIB_DEPS $MATH_LIB $MEDIA_LIB"
GDK_PIXBUF_EXTRA_CFLAGS=
GDK_PIXBUF_DEP_LIBS="`$PKG_CONFIG --libs $GDK_PIXBUF_PACKAGES` $GDK_PIXBUF_EXTRA_LIBS"
GDK_PIXBUF_DEP_CFLAGS="`$PKG_CONFIG --cflags gthread-2.0 $GDK_PIXBUF_PACKAGES $PNG_DEP_CFLAGS_PACKAGES` $GDK_PIXBUF_EXTRA_CFLAGS"
########################################
# Windowing system checks
########################################
GDK_PIXBUF_XLIB_PACKAGES=
GDK_PIXBUF_XLIB_EXTRA_CFLAGS=
GDK_PIXBUF_XLIB_EXTRA_LIBS=
GDK_EXTRA_LIBS="$GDK_WLIBS"
GDK_EXTRA_CFLAGS=
@@ -1368,8 +971,7 @@ if test "x$gdktarget" = "xx11"; then
*) x_libs_for_checks="$x_libs_for_checks $I" ;;
esac
done
GDK_PIXBUF_XLIB_PACKAGES="x11"
GTK_PACKAGES_FOR_X="x11"
else
have_base_x_pc=false
@@ -1381,8 +983,6 @@ if test "x$gdktarget" = "xx11"; then
x_cflags="$X_CFLAGS"
x_libs_for_checks="$X_LIBS -lXext -lXrender -lX11 $X_EXTRA_LIBS"
GDK_PIXBUF_XLIB_EXTRA_CFLAGS="$x_cflags"
GDK_PIXBUF_XLIB_EXTRA_LIBS="$X_LIBS -lX11 $X_EXTRA_LIBS"
GTK_DEP_LIBS_FOR_X="$X_LIBS -lXrender -lX11 $X_EXTRA_LIBS"
fi
@@ -1592,6 +1192,9 @@ if test "x$gdktarget" = "xx11"; then
if $PKG_CONFIG --exists "xrandr >= 1.2.99" ; then
AC_DEFINE(HAVE_RANDR, 1, [Have the Xrandr extension library])
if $PKG_CONFIG --exists "xrandr >= 1.5.0" ; then
AC_DEFINE(HAVE_RANDR15, 1, [Have the Xrandr 1.5 extension library])
fi
X_PACKAGES="$X_PACKAGES xrandr"
fi
@@ -1655,22 +1258,22 @@ else
AM_CONDITIONAL(USE_WIN32, false)
fi
AC_ARG_ENABLE(quartz-relocation,
[AS_HELP_STRING([--enable-quartz-relocation],
[enable bundle-based relocation functions])],
[quartz_relocation=yes])
if test "x$gdktarget" = "xquartz"; then
GDK_EXTRA_LIBS="$GDK_EXTRA_LIBS -framework Cocoa"
AM_CONDITIONAL(USE_QUARTZ, true)
if test "x$quartz_relocation" = xyes; then
AC_DEFINE([QUARTZ_RELOCATION], [1], [Use NSBundle functions to determine load paths for libraries, translations, etc.])
fi
else
AM_CONDITIONAL(USE_QUARTZ, false)
fi
GDK_PIXBUF_XLIB_DEP_LIBS="`$PKG_CONFIG --libs $GDK_PIXBUF_PACKAGES $GDK_PIXBUF_XLIB_PACKAGES` $GDK_PIXBUF_XLIB_EXTRA_LIBS $GDK_PIXBUF_EXTRA_LIBS"
GDK_PIXBUF_XLIB_DEP_CFLAGS="`$PKG_CONFIG --cflags gthread-2.0 $GDK_PIXBUF_PACKAGES $GDK_PIXBUF_XLIB_PACKAGES` $GDK_PIXBUF_EXTRA_CFLAGS $GDK_PIXBUF_XLIB_EXTRA_CFLAGS"
AC_SUBST(GDK_PIXBUF_XLIB_PACKAGES)
AC_SUBST(GDK_PIXBUF_XLIB_EXTRA_LIBS)
AC_SUBST(GDK_PIXBUF_XLIB_EXTRA_CFLAGS)
AC_SUBST(GDK_PIXBUF_XLIB_DEP_LIBS)
AC_SUBST(GDK_PIXBUF_XLIB_DEP_CFLAGS)
if test "x$gdktarget" = "xdirectfb"; then
DIRECTFB_REQUIRED_VERSION=1.0.0
AC_MSG_CHECKING(for DirectFB)
@@ -1721,19 +1324,19 @@ LDFLAGS="$saved_ldflags"
# Pull in gio-unix for GDesktopAppInfo usage, see at least gdkapplaunchcontext-x11.c
if test "x$gdktarget" = "xx11"; then
GDK_PACKAGES="$PANGO_PACKAGES gio-unix-2.0 $X_PACKAGES cairo-$cairo_backend"
GDK_PACKAGES="$PANGO_PACKAGES gio-unix-2.0 $X_PACKAGES gdk-pixbuf-2.0 cairo-$cairo_backend"
else
GDK_PACKAGES="$PANGO_PACKAGES $X_PACKAGES cairo-$cairo_backend"
GDK_PACKAGES="$PANGO_PACKAGES gio-2.0 gdk-pixbuf-2.0 cairo-$cairo_backend"
fi
GDK_DEP_LIBS="$GDK_EXTRA_LIBS `$PKG_CONFIG --libs $GDK_PIXBUF_PACKAGES $GDK_PACKAGES` $GDK_PIXBUF_EXTRA_LIBS"
GDK_DEP_CFLAGS="`$PKG_CONFIG --cflags gthread-2.0 $GDK_PIXBUF_PACKAGES $GDK_PACKAGES` $GDK_PIXBUF_EXTRA_CFLAGS $GDK_EXTRA_CFLAGS"
GDK_DEP_LIBS="$GDK_EXTRA_LIBS `$PKG_CONFIG --libs $GDK_PACKAGES` $MATH_LIB"
GDK_DEP_CFLAGS="`$PKG_CONFIG --cflags gthread-2.0 $GDK_PACKAGES` $GDK_EXTRA_CFLAGS"
#
# If we aren't writing explicit dependencies, then don't put the extra libraries we need
# into the pkg-config files
#
if test $enable_explicit_deps != yes ; then
GDK_PACKAGES="$PANGO_PACKAGES"
GDK_PACKAGES="$PANGO_PACKAGES gdk-pixbuf-2.0"
GDK_EXTRA_LIBS=
fi
@@ -1773,14 +1376,14 @@ else
LIBS="$gtk_save_LIBS"
fi
GTK_PACKAGES="atk cairo gio-2.0"
GTK_PACKAGES="atk cairo gdk-pixbuf-2.0 gio-2.0"
if test "x$gdktarget" = "xx11"; then
GTK_PACKAGES="$GTK_PACKAGES pangoft2"
fi
GTK_EXTRA_LIBS=
GTK_EXTRA_CFLAGS=
GTK_DEP_LIBS="$GDK_EXTRA_LIBS $GTK_DEP_LIBS_FOR_X `$PKG_CONFIG --libs $GDK_PIXBUF_PACKAGES $PANGO_PACKAGES $GTK_PACKAGES_FOR_X $GTK_PACKAGES` $GTK_EXTRA_LIBS $GDK_PIXBUF_EXTRA_LIBS"
GTK_DEP_CFLAGS="`$PKG_CONFIG --cflags gthread-2.0 $GDK_PIXBUF_PACKAGES $GDK_PACKAGES $GTK_PACKAGES` $GDK_PIXBUF_EXTRA_CFLAGS $GDK_EXTRA_CFLAGS $GTK_EXTRA_CFLAGS"
GTK_DEP_LIBS="$GDK_EXTRA_LIBS $GTK_DEP_LIBS_FOR_X `$PKG_CONFIG --libs $PANGO_PACKAGES $GTK_PACKAGES_FOR_X $GTK_PACKAGES` $GTK_EXTRA_LIBS $MATH_LIB"
GTK_DEP_CFLAGS="`$PKG_CONFIG --cflags gthread-2.0 $GDK_PACKAGES $GTK_PACKAGES` $GDK_EXTRA_CFLAGS $GTK_EXTRA_CFLAGS"
if test x"$os_win32" = xyes; then
GTK_EXTRA_CFLAGS="$msnative_struct"
@@ -1791,16 +1394,6 @@ ATK_PREFIX="`$PKG_CONFIG --variable=prefix atk`"
PANGO_PREFIX="`$PKG_CONFIG --variable=prefix pango`"
CAIRO_PREFIX="`pkg-config --variable=prefix cairo`"
if test $enable_explicit_deps != yes ; then
GDK_PIXBUF_EXTRA_LIBS=
fi
AC_SUBST(GDK_PIXBUF_PACKAGES)
AC_SUBST(GDK_PIXBUF_EXTRA_LIBS)
AC_SUBST(GDK_PIXBUF_EXTRA_CFLAGS)
AC_SUBST(GDK_PIXBUF_DEP_LIBS)
AC_SUBST(GDK_PIXBUF_DEP_CFLAGS)
AC_SUBST(GTK_PACKAGES)
AC_SUBST(GTK_EXTRA_LIBS)
AC_SUBST(GTK_EXTRA_CFLAGS)
@@ -1815,6 +1408,9 @@ AC_SUBST(CAIRO_PREFIX)
AC_SUBST(GTK_DEBUG_FLAGS)
AC_SUBST(GTK_XIM_FLAGS)
GDK_PIXBUF_LIBS=`$PKG_CONFIG --libs gdk-pixbuf-2.0`
AC_SUBST(GDK_PIXBUF_LIBS)
########################
# Checks needed for gail
########################
@@ -1858,7 +1454,7 @@ AC_ARG_ENABLE(cups,
if test "x$enable_cups" = "xno"; then
AM_CONDITIONAL(HAVE_CUPS, false)
else
AC_PATH_PROG(CUPS_CONFIG, cups-config, no)
AC_PATH_TOOL(CUPS_CONFIG, cups-config, no)
if test "x$CUPS_CONFIG" = "xno"; then
if test "x$enable_cups" = "xauto"; then
AM_CONDITIONAL(HAVE_CUPS, false)
@@ -1880,6 +1476,12 @@ else
AC_DEFINE(HAVE_CUPS_API_1_2, 1,
[Define to 1 if CUPS 1.2 API is available])
fi
if test $CUPS_API_MAJOR -gt 1 -o \
$CUPS_API_MAJOR -eq 1 -a $CUPS_API_MINOR -ge 6; then
AC_DEFINE(HAVE_CUPS_API_1_6, 1,
[Define to 1 if CUPS 1.6 API is available])
have_cups_api_1_6=yes
fi
AC_SUBST(CUPS_API_MAJOR)
AC_SUBST(CUPS_API_MINOR)
@@ -1959,6 +1561,9 @@ AC_ARG_ENABLE(test-print-backend,
[enable_test_print_backend=no])
AM_CONDITIONAL(TEST_PRINT_BACKEND, test "x$enable_test_print_backend" != "xno")
if test "$os_win32" = "yes"; then
AC_CHECK_TYPES([IPrintDialogCallback],[],[],[[#include <windows.h>]])
fi
################################################################
# Strip -export-dynamic from the link lines of various libraries
@@ -1976,8 +1581,6 @@ AM_CONDITIONAL(TEST_PRINT_BACKEND, test "x$enable_test_print_backend" != "xno")
export SED
export_dynamic=`(./libtool --config; echo eval echo \\$export_dynamic_flag_spec) | sh`
if test -n "$export_dynamic"; then
GDK_PIXBUF_DEP_LIBS=`echo $GDK_PIXBUF_DEP_LIBS | sed -e "s/$export_dynamic//"`
GDK_PIXBUF_XLIB_DEP_LIBS=`echo $GDK_PIXBUF_XLIB_DEP_LIBS | sed -e "s/$export_dynamic//"`
GDK_DEP_LIBS=`echo $GDK_DEP_LIBS | sed -e "s/$export_dynamic//"`
GTK_DEP_LIBS=`echo $GTK_DEP_LIBS | sed -e "s/$export_dynamic//"`
fi
@@ -1986,7 +1589,7 @@ fi
# GObject introspection
##################################################
GOBJECT_INTROSPECTION_CHECK([0.6.7])
GOBJECT_INTROSPECTION_CHECK([0.9.3])
##################################################
# Checks for gtk-doc and docbook-tools
@@ -1999,7 +1602,7 @@ AM_CONDITIONAL(HAVE_DOCBOOK, $DB2HTML)
AC_ARG_ENABLE(man,
[AC_HELP_STRING([--enable-man],
[regenerate man pages from Docbook [default=no]])],enable_man=yes,
[regenerate man pages from Docbook [default=no]])],,
enable_man=no)
if test "${enable_man}" != no; then
@@ -2020,6 +1623,12 @@ fi
AM_CONDITIONAL(ENABLE_MAN, test x$enable_man != xno)
##################################################
# Check whether MSVC toolset is explicitly set
##################################################
AM_CONDITIONAL(MSVC_BASE_NO_TOOLSET_SET, [test x$MSVC_BASE_TOOLSET = x])
AM_CONDITIONAL(MSVC_NO_TOOLSET_SET, [test x$MSVC_TOOLSET = x])
##################################################
# Output commands
@@ -2083,6 +1692,8 @@ elif test "x$gdktarget" = "xwin32" ; then
#define GDK_WINDOWING_WIN32'
elif test "x$gdktarget" = "xquartz" ; then
gdk_windowing='
#define GDK_NATIVE_WINDOW_POINTER
#define GDK_WINDOWING_QUARTZ'
elif test "x$gdktarget" = "xdirectfb" ; then
gdk_windowing='
@@ -2109,12 +1720,10 @@ AC_CONFIG_FILES([
config.h.win32
gtk-zip.sh
Makefile
gdk-pixbuf-2.0.pc
gdk-2.0.pc
gtk+-2.0.pc
gtk+-unix-print-2.0.pc
gail.pc
gdk-pixbuf-2.0-uninstalled.pc
gdk-2.0-uninstalled.pc
gtk+-2.0-uninstalled.pc
gail-uninstalled.pc
@@ -2127,8 +1736,6 @@ demos/gtk-demo/geninclude.pl
tests/Makefile
docs/Makefile
docs/reference/Makefile
docs/reference/gdk-pixbuf/Makefile
docs/reference/gdk-pixbuf/version.xml
docs/reference/gdk/Makefile
docs/reference/gdk/version.xml
docs/reference/gtk/Makefile
@@ -2140,10 +1747,14 @@ docs/tutorial/Makefile
build/Makefile
build/win32/Makefile
build/win32/vs9/Makefile
gdk-pixbuf/Makefile
gdk-pixbuf/gdk_pixbuf.rc
gdk-pixbuf/gdk-pixbuf-features.h
gdk-pixbuf/pixops/Makefile
build/win32/vs9/gtk-version-paths.vsprops
build/win32/vs10/Makefile
build/win32/vs10/gtk-version-paths.props
build/win32/vs11/Makefile
build/win32/vs12/Makefile
build/win32/vs14/Makefile
build/win32/vs15/Makefile
build/win32/vs16/Makefile
gdk/Makefile
gdk/x11/Makefile
gdk/win32/Makefile
@@ -2176,9 +1787,6 @@ modules/printbackends/file/Makefile
modules/printbackends/papi/Makefile
modules/printbackends/test/Makefile
perf/Makefile
contrib/Makefile
contrib/gdk-pixbuf-xlib/Makefile
contrib/gdk-pixbuf-xlib/gdk-pixbuf-xlib-2.0.pc
])
AC_OUTPUT
-8
View File
@@ -1,8 +0,0 @@
include $(top_srcdir)/Makefile.decl
SUBDIRS =
if USE_X11
SUBDIRS += gdk-pixbuf-xlib
endif
-include $(top_srcdir)/git.mk
-354
View File
@@ -1,354 +0,0 @@
=== ChangeLog discontinued ===
With the move to git, GTK+ is switching from a ChangeLog file
to relying on commit messages to provide change history. Please
see README.commits for guidance on the expected message format.
2009-03-13 Matthias Clasen <mclasen@redhat.com>
* === Released 2.16.0 ===
2009-03-02 Matthias Clasen <mclasen@redhat.com>
* === Released 2.15.5 ===
2009-02-17 Matthias Clasen <mclasen@redhat.com>
* === Released 2.15.4 ===
2009-02-02 Matthias Clasen <mclasen@redhat.com>
* === Released 2.15.3 ===
2009-01-27 Matthias Clasen <mclasen@redhat.com>
* === Released 2.15.2 ===
2009-01-23 Matthias Clasen <mclasen@redhat.com>
* === Released 2.15.1 ===
2009-01-01 Matthias Clasen <mclasen@redhat.com>
* === Released 2.15.0 ===
2008-09-17 Matthias Clasen <mclasen@redhat.com>
* === Released 2.14.2 ===
2008-09-04 Matthias Clasen <mclasen@redhat.com>
* === Released 2.14.1 ===
2008-09-04 Matthias Clasen <mclasen@redhat.com>
* === Released 2.14.0 ===
2008-08-18 Matthias Clasen <mclasen@redhat.com>
* ==== Released 2.13.7 ===
2008-08-05 Matthias Clasen <mclasen@redhat.com>
* === Released 2.13.6 ===
2008-07-21 Matthias Clasen <mclasen@redhat.com>
* === Released 2.13.5 ===
2008-07-05 Matthias Clasen <mclasen@redhat.com>
* === Released 2.13.4 ===
2008-06-13 Matthias Clasen <mclasen@redhat.com>
* === Released 2.13.3 ===
2008-06-03 Matthias Clasen <mclasen@redhat.com>
* === Released 2.13.2 ===
2008-05-29 Matthias Clasen <mclasen@redhat.com>
* === Released 2.13.1 ===
2008-05-26 Michael Natterer <mitch@imendio.com>
* gdk-pixbuf-xlib.h
* gdk-pixbuf-xlibrgb.h: use G_BEGIN/END_DECLS.
2008-02-16 Matthias Clasen <mclasen@redhat.com>
* === Released 2.13.0 ===
2007-10-16 Matthias Clasen <mclasen@redhat.com>
* === Released 2.12.1 ===
2007-09-13 Matthias Clasen <mclasen@redhat.com>
* === Released 2.12.0 ===
2007-07-21 Matthias Clasen <mclasen@redhat.com>
* === Released 2.11.6 ===
2007-07-02 Matthias Clasen <mclasen@redhat.com>
* === Released 2.11.5 ===
2007-06-19 Matthias Clasen <mclasen@redhat.com>
* === Released 2.11.4 ===
2007-06-15 Matthias Clasen <mclasen@redhat.com>
* === Released 2.11.3 ===
2007-06-06 Matthias Clasen <mclasen@redhat.com>
* === Released 2.11.2 ===
2007-06-04 Matthias Clasen <mclasen@redhat.com>
* === Released 2.11.1 ===
2007-05-24 Matthias Clasen <mclasen@redhat.com>
* === Released 2.11.0 ===
2006-10-08 Matthias Clasen <mclasen@redhat.com>
* gdk-pixbuf-xlib.c: Apply a cleanup patch by
Kjartan Maraas (#341812)
2006-08-17 Matthias Clasen <mclasen@redhat.com>
* === Released 2.10.2 ===
2006-07-23 Matthias Clasen <mclasen@redhat.com>
* === Released 2.10.1 ===
2006-07-02 Matthias Clasen <mclasen@redhat.com>
* === Released 2.10.0 ===
2006-06-21 Matthias Clasen <mclasen@redhat.com>
* === Released 2.9.4 ===
2006-06-12 Matthias Clasen <mclasen@redhat.com>
* === Released 2.9.3 ===
2006-06-05 Matthias Clasen <mclasen@redhat.com>
* === Released 2.9.2 ===
2006-05-16 Matthias Clasen <mclasen@redhat.com>
* === Released 2.9.1 ====
2006-05-04 Matthias Clasen <mclasen@redhat.com>
* === Released 2.9.0 ===
2005-11-17 Matthias Clasen <mclasen@redhat.com>
* gdk-pixbuf-xlib-drawable.c:
* gdk-pixbuf-xlibrgb.c: const correctness fixes
found by Arjan van de Ven and gcc.
2005-10-05 Matthias Clasen <mclasen@redhat.com>
* gdk-pixbuf-xlib-2.0.pc.in (Requires): Require
gmodule-no-export-2.0 instead of gmodule-2.0
2005-08-24 Matthias Clasen <mclasen@redhat.com>
* === Released 2.8.2 ===
* === Released 2.8.1 ===
2005-08-13 Matthias Clasen <mclasen@redhat.com>
* === Released 2.8.0 ===
2005-08-02 Matthias Clasen <mclasen@redhat.com>
* === Released 2.7.5 ===
2005-07-22 Matthias Clasen <mclasen@redhat.com>
* === Released 2.7.4 ===
2005-07-15 Matthias Clasen <mclasen@redhat.com>
* === Released 2.7.3 ===
2005-07-08 Matthias Clasen <mclasen@redhat.com>
* === Released 2.7.2 ===
2005-07-01 Matthias Clasen <mclasen@redhat.com>
* === Released 2.7.1 ===
2005-06-20 Matthias Clasen <mclasen@redhat.com>
* === Released 2.7.0 ===
2005-01-08 Matthias Clasen <mclasen@redhat.com>
* === Released 2.6.1 ===
2004-12-16 Matthias Clasen <mclasen@redhat.com>
* === Released 2.6.0 ===
2004-12-02 Matthias Clasen <mclasen@redhat.com>
* === Released 2.5.6 ===
2004-11-12 Matthias Clasen <mclasen@redhat.com>
* === Released 2.5.5 ===
2004-10-27 Matthias Clasen <mclasen@redhat.com>
* === Released 2.5.4 ===
2004-09-19 Matthias Clasen <mclasen@redhat.com>
* === Released 2.5.3 ===
2004-08-25 Matthias Clasen <mclasen@redhat.com>
* === Released 2.5.2 ===
2004-08-01 Matthias Clasen <mclasen@redhat.com>
* === Released 2.5.1 ===
Tue Jul 20 23:26:10 2004 Matthias Clasen <maclas@gmx.de>
* gdk-pixbuf-xlibrgb.c: Include config.h first. (#148034)
Sun Jul 18 20:17:41 2004 Soeren Sandmann <sandmann@daimi.au.dk>
* === released 2.5.0 ==
Tue Mar 9 09:33:54 2004 Owen Taylor <otaylor@redhat.com>
* === Released 2.3.6 ===
Wed Mar 3 15:50:28 2004 Owen Taylor <otaylor@redhat.com>
* Makefile.am (libgdk_pixbuf_xlib_2_0_la_LIBADD): Add
a shared library dependency on libgdk-pixbuf (#124687)
Tue Feb 24 14:45:03 2004 Owen Taylor <otaylor@redhat.com>
* === Released 2.3.3 ===
Fri Feb 13 10:32:09 2004 Owen Taylor <otaylor@redhat.com>
* gdk-pixbuf-xlibrgb.h: Remove a couple of unneeded
#includes. Isn't unsupported code fun?
(133833, Gregory Merchan)
Tue Oct 7 23:30:00 2003 Matthias Clasen <maclas@gmx.de>
* gdk-pixbuf-xlib.h: Add C++ guards. (123955, Harring Figueiredo)
2002-08-06 jacob berkman <jacob@ximian.com>
* Makefile.am (lib_LTLIBRARIES): link against xlibs
2002-01-25 Federico Mena Quintero <federico@ximian.com>
Merge from gdk-pixbuf stable.
* gdk-pixbuf-xlib-drawable.c (rgb565msb): Fixed the endianness
conversion --- swap the individual 16 bit values instead of taking
everying as a 32 bit value.
(rgb565lsb): Likewise.
(rgb555lsb): Likewise.
(rgb555msb): Likewise.
2001-11-26 Akira TAGOH <tagoh@redhat.com>
* Makefile.am (libgdk_pixbuf_xlib_1_3_la_LDFLAGS):
Added -version-info.
2001-05-19 Havoc Pennington <hp@pobox.com>
* gdk-pixbuf-xlibrgb.c: docs
2001-06-04 Havoc Pennington <hp@redhat.com>
* gdk-pixbuf-xlibrgb.c (xlib_rgb_init): remove C++ comment,
reported by Dan McNichol
Mon Jan 8 11:41:41 2001 Owen Taylor <otaylor@redhat.com>
* Makefile.am (INCLUDES): Add @x_cflags@ (#36310)
2001-01-02 Havoc Pennington <hp@redhat.com>
* gdk-pixbuf-xlib-2.0.pc.in (Description): fix up description a bit.
2000-10-06 Havoc Pennington <hp@redhat.com>
* gdk-pixbuf-xlib.c: Put display/screen here, instead of in
the main gdk-pixbuf library as it was in 1.0; since the io-xpm
loader doesn't use these variables anymore it should be OK
2000-09-26 Federico Mena Quintero <federico@helixcode.com>
* gdk-pixbuf/gdk-pixbuf-xlib-drawable.c
(gdk_pixbuf_xlib_get_from_drawable): Do not use
gdk_screen_{width,height}(). Thanks to John Harper for pointing
this out.
2000-08-26 Federico Mena Quintero <federico@helixcode.com>
* gdk-pixbuf/gdk-pixbuf-xlibrgb.c: Added API reference docs.
2000-08-25 Federico Mena Quintero <federico@helixcode.com>
* gdk-pixbuf/gdk-pixbuf-xlib-drawable.c (handle_x_error): Return
0.
(xlib_window_is_viewable): Return FALSE in the last case.
* gdk-pixbuf/gdk-pixbuf-xlib-render.c: Updated the inline docs.
* gdk-pixbuf/gdk-pixbuf-xlib.c: Added API docs.
2000-08-25 John Harper <john@dcs.warwick.ac.uk>
Work to create an Xlib version of gdk-pixbuf (with the Xlib
port of GdkRGB for rendering):
* configure.in: check for X libraries, set and substitute
GDK_PIXBUF_XLIB_{LIBDIR,INCLUDEDIR,LIBS} variables
* gdk_pixbuf_xlibConf.sh.in: new file -- gnome-config details
for the gdk-pixbuf-xlib library
* Makefile.am: build and install gdk_pixbuf_xlibConf.sh
* gdk-pixbuf/gdk-pixbuf-xlib-render.c,
gdk-pixbuf/gdk-pixbuf-xlib.c, gdk-pixbuf/gdk-pixbuf-xlib.h,
gdk-pixbuf/gdk-pixbuf-xlib-private.h,
gdk-pixbuf/gdk-pixbuf-xlib-drawable.c: new files, ported the
GDK dependent parts of gdk-pixbuf to use Xlib. Functions that
were called gdk_pixbuf_FOO are now gdk_pixbuf_xlib_FOO
* gdk-pixbuf/gdk-pixbuf-xlibrgb.c,
gdk-pixbuf/gdk-pixbuf-xlibrgb.h: added Chris Blizzard's Xlib
port of GdkRGB (from Mozilla CVS)
* gdk-pixbuf/Makefile.am: build a library libgdk_pixbuf_xlib.la
including the non-GDK dependent objects from libgdk_pixbuf.la
plus the Xlib ports and xlibrgb
-42
View File
@@ -1,42 +0,0 @@
include $(top_srcdir)/Makefile.decl
if PLATFORM_WIN32
no_undefined = -no-undefined
endif
lib_LTLIBRARIES=libgdk_pixbuf_xlib-2.0.la
INCLUDES = \
-I$(top_srcdir) -I$(top_builddir) \
-I$(top_srcdir)/gdk-pixbuf \
-I$(top_srcdir)/contrib \
$(GDK_PIXBUF_XLIB_DEP_CFLAGS)
libgdk_pixbuf_xlib_2_0_la_LDFLAGS = \
-export-dynamic \
$(no_undefined) \
-version-info $(LT_VERSION_INFO)
libgdk_pixbuf_xlib_2_0_la_LIBADD = \
$(top_builddir)/gdk-pixbuf/libgdk_pixbuf-$(GTK_API_VERSION).la \
$(GDK_PIXBUF_XLIB_DEP_LIBS)
libgdk_pixbuf_xlib_2_0_la_SOURCES = \
gdk-pixbuf-xlib-private.h \
gdk-pixbuf-xlib.c \
gdk-pixbuf-xlib-render.c \
gdk-pixbuf-xlib-drawable.c \
gdk-pixbuf-xlibrgb.c
libgdk_pixbuf_xlibincludedir=$(includedir)/gtk-2.0/gdk-pixbuf-xlib
libgdk_pixbuf_xlibinclude_HEADERS = \
gdk-pixbuf-xlib.h \
gdk-pixbuf-xlibrgb.h
pkgconfigdir = $(libdir)/pkgconfig
pkgconfig_DATA = gdk-pixbuf-xlib-2.0.pc
EXTRA_DIST += gdk-pixbuf-xlib-2.0.pc.in
-include $(top_srcdir)/git.mk
@@ -1,11 +0,0 @@
prefix=@prefix@
exec_prefix=@exec_prefix@
libdir=@libdir@
includedir=@includedir@
Name: GdkPixbuf Xlib
Description: GdkPixbuf rendering for Xlib
Version: @VERSION@
Requires: gobject-2.0,gmodule-no-export-2.0,gdk-pixbuf-2.0
Libs: -L${libdir} -lgdk_pixbuf_xlib-@GTK_API_VERSION@
Cflags: -I${includedir}
File diff suppressed because it is too large Load Diff
@@ -1,30 +0,0 @@
/* GdkPixbuf library - Xlib header file
*
* Authors: John Harper <john@dcs.warwick.ac.uk>
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Library General Public
* License as published by the Free Software Foundation; either
* version 2 of the License, or (at your option) any later version.
*
* This library 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
* Library General Public License for more details.
*
* You should have received a copy of the GNU Library General Public
* License along with this library; if not, write to the
* Free Software Foundation, Inc., 59 Temple Place - Suite 330,
* Boston, MA 02111-1307, USA.
*/
#ifndef GDK_PIXBUF_XLIB_PRIVATE_H
#define GDK_PIXBUF_XLIB_PRIVATE_H
#include "gdk-pixbuf-xlib.h"
#include <X11/Xlib.h>
extern Display *gdk_pixbuf_dpy;
extern int gdk_pixbuf_screen;
#endif
@@ -1,398 +0,0 @@
/* GdkPixbuf library - Rendering functions
*
* Copyright (C) 1999 The Free Software Foundation
*
* Author: Federico Mena-Quintero <federico@gimp.org>
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Library General Public
* License as published by the Free Software Foundation; either
* version 2 of the License, or (at your option) any later version.
*
* This library 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
* Library General Public License for more details.
*
* You should have received a copy of the GNU Library General Public
* License along with this library; if not, write to the
* Free Software Foundation, Inc., 59 Temple Place - Suite 330,
* Boston, MA 02111-1307, USA.
*/
/* Trivially ported to Xlib(RGB) by John Harper. */
#include "config.h"
#include "gdk-pixbuf-private.h"
#include "gdk-pixbuf-xlib-private.h"
/**
* gdk_pixbuf_xlib_render_threshold_alpha:
* @pixbuf: A pixbuf.
* @bitmap: Bitmap where the bilevel mask will be painted to.
* @src_x: Source X coordinate.
* @src_y: source Y coordinate.
* @dest_x: Destination X coordinate.
* @dest_y: Destination Y coordinate.
* @width: Width of region to threshold.
* @height: Height of region to threshold.
* @alpha_threshold: Opacity values below this will be painted as zero; all
* other values will be painted as one.
*
* Takes the opacity values in a rectangular portion of a pixbuf and thresholds
* them to produce a bi-level alpha mask that can be used as a clipping mask for
* a drawable.
*
**/
void
gdk_pixbuf_xlib_render_threshold_alpha (GdkPixbuf *pixbuf, Pixmap bitmap,
int src_x, int src_y,
int dest_x, int dest_y,
int width, int height,
int alpha_threshold)
{
GC gc;
XColor color;
int x, y;
guchar *p;
int start, start_status;
int status;
XGCValues gcv;
g_return_if_fail (pixbuf != NULL);
g_return_if_fail (pixbuf->colorspace == GDK_COLORSPACE_RGB);
g_return_if_fail (pixbuf->n_channels == 3 || pixbuf->n_channels == 4);
g_return_if_fail (pixbuf->bits_per_sample == 8);
g_return_if_fail (bitmap != 0);
g_return_if_fail (width >= 0 && height >= 0);
g_return_if_fail (src_x >= 0 && src_x + width <= pixbuf->width);
g_return_if_fail (src_y >= 0 && src_y + height <= pixbuf->height);
g_return_if_fail (alpha_threshold >= 0 && alpha_threshold <= 255);
if (width == 0 || height == 0)
return;
gc = XCreateGC (gdk_pixbuf_dpy, bitmap, 0, &gcv);
if (!pixbuf->has_alpha) {
color.pixel = (alpha_threshold == 255) ? 0 : 1;
XSetForeground (gdk_pixbuf_dpy, gc, color.pixel);
XFillRectangle (gdk_pixbuf_dpy, bitmap, gc,
dest_x, dest_y, width, height);
XFreeGC (gdk_pixbuf_dpy, gc);
return;
}
color.pixel = 0;
XSetForeground (gdk_pixbuf_dpy, gc, color.pixel);
XFillRectangle (gdk_pixbuf_dpy, bitmap, gc,
dest_x, dest_y, width, height);
color.pixel = 1;
XSetForeground (gdk_pixbuf_dpy, gc, color.pixel);
for (y = 0; y < height; y++) {
p = (pixbuf->pixels + (y + src_y) * pixbuf->rowstride + src_x * pixbuf->n_channels
+ pixbuf->n_channels - 1);
start = 0;
start_status = *p < alpha_threshold;
for (x = 0; x < width; x++) {
status = *p < alpha_threshold;
if (status != start_status) {
if (!start_status)
XDrawLine (gdk_pixbuf_dpy, bitmap, gc,
start + dest_x, y + dest_y,
x - 1 + dest_x, y + dest_y);
start = x;
start_status = status;
}
p += pixbuf->n_channels;
}
if (!start_status)
XDrawLine (gdk_pixbuf_dpy, bitmap, gc,
start + dest_x, y + dest_y,
x - 1 + dest_x, y + dest_y);
}
XFreeGC (gdk_pixbuf_dpy, gc);
}
/* Creates a buffer by stripping the alpha channel of a pixbuf */
static guchar *
remove_alpha (GdkPixbuf *pixbuf, int x, int y, int width, int height, int *rowstride)
{
guchar *buf;
int xx, yy;
guchar *src, *dest;
g_assert (pixbuf->n_channels == 4);
g_assert (pixbuf->has_alpha);
g_assert (width > 0 && height > 0);
g_assert (x >= 0 && x + width <= pixbuf->width);
g_assert (y >= 0 && y + height <= pixbuf->height);
*rowstride = 4 * ((width * 3 + 3) / 4);
buf = g_new (guchar, *rowstride * height);
for (yy = 0; yy < height; yy++) {
src = pixbuf->pixels + pixbuf->rowstride * (yy + y) + x * pixbuf->n_channels;
dest = buf + *rowstride * yy;
for (xx = 0; xx < width; xx++) {
*dest++ = *src++;
*dest++ = *src++;
*dest++ = *src++;
src++;
}
}
return buf;
}
/**
* gdk_pixbuf_xlib_render_to_drawable:
* @pixbuf: A pixbuf.
* @drawable: Destination drawable.
* @gc: GC used for rendering.
* @src_x: Source X coordinate within pixbuf.
* @src_y: Source Y coordinate within pixbuf.
* @dest_x: Destination X coordinate within drawable.
* @dest_y: Destination Y coordinate within drawable.
* @width: Width of region to render, in pixels.
* @height: Height of region to render, in pixels.
* @dither: Dithering mode for XlibRGB.
* @x_dither: X offset for dither.
* @y_dither: Y offset for dither.
*
* Renders a rectangular portion of a pixbuf to a drawable while using the
* specified GC. This is done using XlibRGB, so the specified drawable must
* have the XlibRGB visual and colormap. Note that this function will ignore
* the opacity information for images with an alpha channel; the GC must already
* have the clipping mask set if you want transparent regions to show through.
*
* For an explanation of dither offsets, see the XlibRGB documentation. In
* brief, the dither offset is important when re-rendering partial regions of an
* image to a rendered version of the full image, or for when the offsets to a
* base position change, as in scrolling. The dither matrix has to be shifted
* for consistent visual results. If you do not have any of these cases, the
* dither offsets can be both zero.
**/
void
gdk_pixbuf_xlib_render_to_drawable (GdkPixbuf *pixbuf,
Drawable drawable, GC gc,
int src_x, int src_y,
int dest_x, int dest_y,
int width, int height,
XlibRgbDither dither,
int x_dither, int y_dither)
{
guchar *buf;
int rowstride;
g_return_if_fail (pixbuf != NULL);
g_return_if_fail (pixbuf->colorspace == GDK_COLORSPACE_RGB);
g_return_if_fail (pixbuf->n_channels == 3 || pixbuf->n_channels == 4);
g_return_if_fail (pixbuf->bits_per_sample == 8);
g_return_if_fail (drawable != 0);
g_return_if_fail (gc != 0);
g_return_if_fail (width >= 0 && height >= 0);
g_return_if_fail (src_x >= 0 && src_x + width <= pixbuf->width);
g_return_if_fail (src_y >= 0 && src_y + height <= pixbuf->height);
if (width == 0 || height == 0)
return;
/* This will have to be modified once we support other image types.
* Also, GdkRGB does not have gdk_draw_rgb_32_image_dithalign(), so we
* have to pack the buffer first. Sigh.
*/
if (pixbuf->has_alpha)
buf = remove_alpha (pixbuf, src_x, src_y, width, height, &rowstride);
else {
buf = pixbuf->pixels + src_y * pixbuf->rowstride + src_x * 3;
rowstride = pixbuf->rowstride;
}
xlib_draw_rgb_image_dithalign (drawable, gc,
dest_x, dest_y,
width, height,
dither,
buf, rowstride,
x_dither, y_dither);
if (pixbuf->has_alpha)
g_free (buf);
}
/**
* gdk_pixbuf_xlib_render_to_drawable_alpha:
* @pixbuf: A pixbuf.
* @drawable: Destination drawable.
* @src_x: Source X coordinate within pixbuf.
* @src_y: Source Y coordinates within pixbuf.
* @dest_x: Destination X coordinate within drawable.
* @dest_y: Destination Y coordinate within drawable.
* @width: Width of region to render, in pixels.
* @height: Height of region to render, in pixels.
* @alpha_mode: If the image does not have opacity information, this is ignored.
* Otherwise, specifies how to handle transparency when rendering.
* @alpha_threshold: If the image does have opacity information and @alpha_mode
* is GDK_PIXBUF_ALPHA_BILEVEL, specifies the threshold value for opacity
* values.
* @dither: Dithering mode for XlibRGB.
* @x_dither: X offset for dither.
* @y_dither: Y offset for dither.
*
* Renders a rectangular portion of a pixbuf to a drawable. This is done using
* XlibRGB, so the specified drawable must have the XlibRGB visual and colormap.
*
* When used with #GDK_PIXBUF_ALPHA_BILEVEL, this function has to create a bitmap
* out of the thresholded alpha channel of the image and, it has to set this
* bitmap as the clipping mask for the GC used for drawing. This can be a
* significant performance penalty depending on the size and the complexity of
* the alpha channel of the image. If performance is crucial, consider handling
* the alpha channel yourself (possibly by caching it in your application) and
* using gdk_pixbuf_xlib_render_to_drawable() or GdkRGB directly instead.
**/
void
gdk_pixbuf_xlib_render_to_drawable_alpha (GdkPixbuf *pixbuf, Drawable drawable,
int src_x, int src_y,
int dest_x, int dest_y,
int width, int height,
GdkPixbufAlphaMode alpha_mode,
int alpha_threshold,
XlibRgbDither dither,
int x_dither, int y_dither)
{
Pixmap bitmap = 0;
GC gc;
XGCValues gcv;
g_return_if_fail (pixbuf != NULL);
g_return_if_fail (pixbuf->colorspace == GDK_COLORSPACE_RGB);
g_return_if_fail (pixbuf->n_channels == 3 || pixbuf->n_channels == 4);
g_return_if_fail (pixbuf->bits_per_sample == 8);
g_return_if_fail (drawable != 0);
g_return_if_fail (width >= 0 && height >= 0);
g_return_if_fail (src_x >= 0 && src_x + width <= pixbuf->width);
g_return_if_fail (src_y >= 0 && src_y + height <= pixbuf->height);
if (width == 0 || height == 0)
return;
gc = XCreateGC (gdk_pixbuf_dpy, drawable, 0, &gcv);
if (pixbuf->has_alpha) {
/* Right now we only support GDK_PIXBUF_ALPHA_BILEVEL, so we
* unconditionally create the clipping mask.
*/
bitmap = XCreatePixmap (gdk_pixbuf_dpy,
RootWindow (gdk_pixbuf_dpy,
gdk_pixbuf_screen),
width, height, 1);
gdk_pixbuf_xlib_render_threshold_alpha (pixbuf, bitmap,
src_x, src_y,
0, 0,
width, height,
alpha_threshold);
XSetClipMask (gdk_pixbuf_dpy, gc, bitmap);
XSetClipOrigin (gdk_pixbuf_dpy, gc, dest_x, dest_y);
}
gdk_pixbuf_xlib_render_to_drawable (pixbuf, drawable, gc,
src_x, src_y,
dest_x, dest_y,
width, height,
dither,
x_dither, y_dither);
if (bitmap)
XFreePixmap (gdk_pixbuf_dpy, bitmap);
XFreeGC (gdk_pixbuf_dpy, gc);
}
/**
* gdk_pixbuf_xlib_render_pixmap_and_mask:
* @pixbuf: A pixbuf.
* @pixmap_return: Return value for the created pixmap.
* @mask_return: Return value for the created mask.
* @alpha_threshold: Threshold value for opacity values.
*
* Creates a pixmap and a mask bitmap which are returned in the @pixmap_return
* and @mask_return arguments, respectively, and renders a pixbuf and its
* corresponding tresholded alpha mask to them. This is merely a convenience
* function; applications that need to render pixbufs with dither offsets or to
* given drawables should use gdk_pixbuf_xlib_render_to_drawable_alpha() or
* gdk_pixbuf_xlib_render_to_drawable(), and
* gdk_pixbuf_xlib_render_threshold_alpha().
*
* If the pixbuf does not have an alpha channel, then *@mask_return will be set
* to None.
**/
void
gdk_pixbuf_xlib_render_pixmap_and_mask (GdkPixbuf *pixbuf,
Pixmap *pixmap_return,
Pixmap *mask_return,
int alpha_threshold)
{
g_return_if_fail (pixbuf != NULL);
if (pixmap_return) {
GC gc;
XGCValues gcv;
*pixmap_return = XCreatePixmap (gdk_pixbuf_dpy,
RootWindow (gdk_pixbuf_dpy,
gdk_pixbuf_screen),
pixbuf->width,
pixbuf->height,
xlib_rgb_get_depth ());
gc = XCreateGC (gdk_pixbuf_dpy, *pixmap_return, 0, &gcv);
gdk_pixbuf_xlib_render_to_drawable (pixbuf, *pixmap_return, gc,
0, 0, 0, 0,
pixbuf->width,
pixbuf->height,
XLIB_RGB_DITHER_NORMAL,
0, 0);
XFreeGC (gdk_pixbuf_dpy, gc);
}
if (mask_return) {
if (pixbuf->has_alpha) {
*mask_return = XCreatePixmap (gdk_pixbuf_dpy,
RootWindow (gdk_pixbuf_dpy,
gdk_pixbuf_screen),
pixbuf->width,
pixbuf->height, 1);
gdk_pixbuf_xlib_render_threshold_alpha (pixbuf,
*mask_return,
0, 0, 0, 0,
pixbuf->width,
pixbuf->height,
alpha_threshold);
} else
*mask_return = 0;
}
}
-63
View File
@@ -1,63 +0,0 @@
/* GdkPixbuf library - Initialization functions
*
* Author: John Harper <john@dcs.warwick.ac.uk>
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Library General Public
* License as published by the Free Software Foundation; either
* version 2 of the License, or (at your option) any later version.
*
* This library 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
* Library General Public License for more details.
*
* You should have received a copy of the GNU Library General Public
* License along with this library; if not, write to the
* Free Software Foundation, Inc., 59 Temple Place - Suite 330,
* Boston, MA 02111-1307, USA.
*/
#include "config.h"
#include <X11/Xlib.h>
#include <gdk-pixbuf/gdk-pixbuf-private.h>
#include "gdk-pixbuf-xlib-private.h"
Display *gdk_pixbuf_dpy = NULL;
int gdk_pixbuf_screen = -1;
/**
* gdk_pixbuf_xlib_init:
* @display: X display to use.
* @screen_num: Screen number.
*
* Initializes the gdk-pixbuf Xlib machinery by calling xlib_rgb_init(). This
* function should be called near the beginning of your program, or before using
* any of the gdk-pixbuf-xlib functions.
**/
void
gdk_pixbuf_xlib_init (Display *display, int screen_num)
{
xlib_rgb_init (display, ScreenOfDisplay (display, screen_num));
gdk_pixbuf_dpy = display;
gdk_pixbuf_screen = screen_num;
}
/**
* gdk_pixbuf_xlib_init_with_depth:
* @display: X display to use.
* @screen_num: Screen number.
* @prefDepth: Preferred depth for XlibRGB.
*
* Similar to gdk_pixbuf_xlib_init(), but also lets you specify the preferred
* depth for XlibRGB if you do not want it to use the default depth it picks.
**/
void
gdk_pixbuf_xlib_init_with_depth (Display *display,
int screen_num, int prefDepth)
{
xlib_rgb_init_with_depth (display, ScreenOfDisplay (display, screen_num),
prefDepth);
gdk_pixbuf_dpy = display;
gdk_pixbuf_screen = screen_num;
}
-87
View File
@@ -1,87 +0,0 @@
/* GdkPixbuf library - Xlib header file
*
* Authors: John Harper <john@dcs.warwick.ac.uk>
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Library General Public
* License as published by the Free Software Foundation; either
* version 2 of the License, or (at your option) any later version.
*
* This library 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
* Library General Public License for more details.
*
* You should have received a copy of the GNU Library General Public
* License along with this library; if not, write to the
* Free Software Foundation, Inc., 59 Temple Place - Suite 330,
* Boston, MA 02111-1307, USA.
*/
#ifndef GDK_PIXBUF_XLIB_H
#define GDK_PIXBUF_XLIB_H
#include <gdk-pixbuf/gdk-pixbuf.h>
#include <gdk-pixbuf-xlib/gdk-pixbuf-xlibrgb.h>
G_BEGIN_DECLS
#include <X11/Xlib.h>
/* init */
void gdk_pixbuf_xlib_init (Display *display, int screen_num);
void gdk_pixbuf_xlib_init_with_depth (Display *display, int screen_num,
int prefDepth);
/* render */
void gdk_pixbuf_xlib_render_threshold_alpha (GdkPixbuf *pixbuf, Pixmap bitmap,
int src_x, int src_y,
int dest_x, int dest_y,
int width, int height,
int alpha_threshold);
void gdk_pixbuf_xlib_render_to_drawable (GdkPixbuf *pixbuf,
Drawable drawable, GC gc,
int src_x, int src_y,
int dest_x, int dest_y,
int width, int height,
XlibRgbDither dither,
int x_dither, int y_dither);
void gdk_pixbuf_xlib_render_to_drawable_alpha (GdkPixbuf *pixbuf,
Drawable drawable,
int src_x, int src_y,
int dest_x, int dest_y,
int width, int height,
GdkPixbufAlphaMode alpha_mode,
int alpha_threshold,
XlibRgbDither dither,
int x_dither, int y_dither);
void gdk_pixbuf_xlib_render_pixmap_and_mask (GdkPixbuf *pixbuf,
Pixmap *pixmap_return,
Pixmap *mask_return,
int alpha_threshold);
/* drawable */
GdkPixbuf *gdk_pixbuf_xlib_get_from_drawable (GdkPixbuf *dest,
Drawable src,
Colormap cmap, Visual *visual,
int src_x, int src_y,
int dest_x, int dest_y,
int width, int height);
G_END_DECLS
#endif /* GDK_PIXBUF_XLIB_H */
File diff suppressed because it is too large Load Diff
@@ -1,188 +0,0 @@
/* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*-
*
* The contents of this file are subject to the Mozilla Public License
* Version 1.1 (the "MPL"); you may not use this file except in
* compliance with the MPL. You may obtain a copy of the MPL at
* http://www.mozilla.org/MPL/
*
* Software distributed under the MPL is distributed on an "AS IS" basis,
* WITHOUT WARRANTY OF ANY KIND, either express or implied. See the MPL
* for the specific language governing rights and limitations under the
* MPL.
*
* Alternatively, the contents of this file may be used under the
* terms of the GNU Library General Public License (the "LGPL"), in
* which case the provisions of the LGPL are applicable instead of
* those above. If you wish to allow use of your version of this file
* only under the terms of the LGPL and not to allow others to use
* your version of this file under the MPL, indicate your decision by
* deleting the provisions above and replace them with the notice and
* other provisions required by the LGPL. If you do not delete the
* provisions above, a recipient may use your version of this file
* under either the MPL or the LGPL.
*/
/*
* This code is derived from GdkRgb.
* For more information on GdkRgb, see http://www.levien.com/gdkrgb/
* Raph Levien <raph@acm.org>
*/
/* Ported by Christopher Blizzard to Xlib. With permission from the
* original authors of this file, the contents of this file are also
* redistributable under the terms of the Mozilla Public license. For
* information about the Mozilla Public License, please see the
* license information at http://www.mozilla.org/MPL/
*/
/* This code is copyright the following authors:
* Raph Levien <raph@acm.org>
* Manish Singh <manish@gtk.org>
* Tim Janik <timj@gtk.org>
* Peter Mattis <petm@xcf.berkeley.edu>
* Spencer Kimball <spencer@xcf.berkeley.edu>
* Josh MacDonald <jmacd@xcf.berkeley.edu>
* Christopher Blizzard <blizzard@redhat.com>
* Owen Taylor <otaylor@redhat.com>
* Shawn T. Amundson <amundson@gtk.org>
*/
#ifndef __XLIB_RGB_H__
#define __XLIB_RGB_H__
#include <glib.h>
G_BEGIN_DECLS
#include <X11/Xlib.h>
#include <X11/Xutil.h>
typedef struct _XlibRgbCmap XlibRgbCmap;
struct _XlibRgbCmap {
unsigned int colors[256];
unsigned char lut[256]; /* for 8-bit modes */
};
void
xlib_rgb_init (Display *display, Screen *screen);
void
xlib_rgb_init_with_depth (Display *display, Screen *screen, int prefDepth);
unsigned long
xlib_rgb_xpixel_from_rgb (guint32 rgb);
void
xlib_rgb_gc_set_foreground (GC gc, guint32 rgb);
void
xlib_rgb_gc_set_background (GC gc, guint32 rgb);
typedef enum
{
XLIB_RGB_DITHER_NONE,
XLIB_RGB_DITHER_NORMAL,
XLIB_RGB_DITHER_MAX
} XlibRgbDither;
void
xlib_draw_rgb_image (Drawable drawable,
GC gc,
int x,
int y,
int width,
int height,
XlibRgbDither dith,
unsigned char *rgb_buf,
int rowstride);
void
xlib_draw_rgb_image_dithalign (Drawable drawable,
GC gc,
int x,
int y,
int width,
int height,
XlibRgbDither dith,
unsigned char *rgb_buf,
int rowstride,
int xdith,
int ydith);
void
xlib_draw_rgb_32_image (Drawable drawable,
GC gc,
int x,
int y,
int width,
int height,
XlibRgbDither dith,
unsigned char *buf,
int rowstride);
void
xlib_draw_gray_image (Drawable drawable,
GC gc,
int x,
int y,
int width,
int height,
XlibRgbDither dith,
unsigned char *buf,
int rowstride);
XlibRgbCmap *
xlib_rgb_cmap_new (guint32 *colors, int n_colors);
void
xlib_rgb_cmap_free (XlibRgbCmap *cmap);
void
xlib_draw_indexed_image (Drawable drawable,
GC gc,
int x,
int y,
int width,
int height,
XlibRgbDither dith,
unsigned char *buf,
int rowstride,
XlibRgbCmap *cmap);
/* Below are some functions which are primarily useful for debugging
and experimentation. */
Bool
xlib_rgb_ditherable (void);
void
xlib_rgb_set_verbose (Bool verbose);
/* experimental colormap stuff */
void
xlib_rgb_set_install (Bool install);
void
xlib_rgb_set_min_colors (int min_colors);
Colormap
xlib_rgb_get_cmap (void);
Visual *
xlib_rgb_get_visual (void);
XVisualInfo *
xlib_rgb_get_visual_info (void);
int
xlib_rgb_get_depth (void);
Display *
xlib_rgb_get_display (void);
Screen *
xlib_rgb_get_screen (void);
G_END_DECLS
#endif /* __XLIB_RGB_H__ */
+2 -14
View File
@@ -12,12 +12,10 @@ INCLUDES = \
$(GTK_DEP_CFLAGS)
DEPS = \
$(top_builddir)/gdk-pixbuf/libgdk_pixbuf-$(GTK_API_VERSION).la \
$(top_builddir)/gdk/$(gdktargetlib) \
$(top_builddir)/gtk/$(gtktargetlib)
LDADDS = \
$(top_builddir)/gdk-pixbuf/libgdk_pixbuf-$(GTK_API_VERSION).la \
$(top_builddir)/gdk/$(gdktargetlib) \
$(top_builddir)/gtk/$(gtktargetlib) \
$(GTK_DEP_LIBS) \
@@ -32,21 +30,11 @@ noinst_PROGRAMS = \
pixbuf-demo
# Need to build test-inline-pixbufs.h for testpixbuf
if HAVE_PNG
noinst_PROGRAMS += testpixbuf
BUILT_SOURCES = test-inline-pixbufs.h
endif
if CROSS_COMPILING
pixbuf_csource=$(GDK_PIXBUF_CSOURCE)
pixbuf_csource_deps=
else
pixbuf_csource=GDK_PIXBUF_MODULE_FILE=$(top_builddir)/gdk-pixbuf/gdk-pixbuf.loaders $(top_builddir)/gdk-pixbuf/gdk-pixbuf-csource
pixbuf_csource_deps=$(top_builddir)/gdk-pixbuf/gdk-pixbuf-csource $(top_builddir)/gdk-pixbuf/gdk-pixbuf.loaders
endif
test-inline-pixbufs.h: $(pixbuf_csource_deps) apple-red.png gnome-foot.png
$(pixbuf_csource) --raw --build-list \
test-inline-pixbufs.h: apple-red.png gnome-foot.png
$(GDK_PIXBUF_CSOURCE) --raw --build-list \
apple_red $(srcdir)/apple-red.png \
gnome_foot $(srcdir)/gnome-foot.png \
> test-inline-pixbufs.h \
+12 -3
View File
@@ -55,15 +55,14 @@ INCLUDES = \
$(GTK_DEP_CFLAGS)
DEPS = \
$(top_builddir)/gdk-pixbuf/libgdk_pixbuf-$(GTK_API_VERSION).la \
$(top_builddir)/gdk/$(gdktargetlib) \
$(top_builddir)/gtk/$(gtktargetlib)
LDADDS = \
$(top_builddir)/gdk-pixbuf/libgdk_pixbuf-$(GTK_API_VERSION).la \
$(top_builddir)/gdk/$(gdktargetlib) \
$(top_builddir)/gtk/$(gtktargetlib) \
$(GTK_DEP_LIBS)
$(GTK_DEP_LIBS) \
-lm
bin_PROGRAMS = gtk-demo
@@ -103,6 +102,16 @@ IMAGEFILES= alphatest.png \
democode_DATA = $(demos) $(IMAGEFILES) demo.ui
# ------------------- MSVC Projects --------------------
MSVCPROJS = gtk-demo
gtk_demo_FILES = $(gtk_demo_SOURCES)
gtk_demo_EXCLUDES = gtkdemodummy
include $(top_srcdir)/build/Makefile.msvcproj
dist-hook: $(top_builddir)/build/win32/vs9/gtk-demo.vcproj
DISTCLEANFILES = demos.h
-include $(top_srcdir)/git.mk
-21
View File
@@ -57,25 +57,6 @@ activate_radio_action (GtkAction *action, GtkRadioAction *current)
}
}
static void
activate_email (GtkAboutDialog *about,
const gchar *link,
gpointer data)
{
gchar *text;
text = g_strdup_printf ("send mail to %s", link);
g_print ("%s\n", text);
g_free (text);
}
static void
activate_url (GtkAboutDialog *about,
const gchar *link,
gpointer data)
{
g_print ("show url %s\n", link);
}
static void
about_cb (GtkAction *action,
GtkWidget *window)
@@ -126,8 +107,6 @@ about_cb (GtkAction *action,
g_object_unref (pixbuf);
}
gtk_about_dialog_set_email_hook (activate_email, NULL, NULL);
gtk_about_dialog_set_url_hook (activate_url, NULL, NULL);
gtk_show_about_dialog (GTK_WINDOW (window),
"program-name", "GTK+ Code Demos",
"version", PACKAGE_VERSION,
+53 -2
View File
@@ -9,12 +9,35 @@
#include "demo-common.h"
static GtkWidget *assistant = NULL;
static GtkWidget *progress_bar = NULL;
static gboolean
apply_changes_gradually (gpointer data)
{
gdouble fraction;
/* Work, work, work... */
fraction = gtk_progress_bar_get_fraction (GTK_PROGRESS_BAR (progress_bar));
fraction += 0.05;
if (fraction < 1.0)
{
gtk_progress_bar_set_fraction (GTK_PROGRESS_BAR (progress_bar), fraction);
return TRUE;
}
else
{
/* Close automatically once changes are fully applied. */
gtk_widget_destroy (assistant);
return FALSE;
}
}
static void
on_assistant_apply (GtkWidget *widget, gpointer data)
{
/* Apply here changes, this is a fictional
example, so we just do nothing here */
/* Start a timer to simulate changes taking a few seconds to apply. */
g_timeout_add (100, apply_changes_gradually, NULL);
}
static void
@@ -38,6 +61,13 @@ on_assistant_prepare (GtkWidget *widget, GtkWidget *page, gpointer data)
title = g_strdup_printf ("Sample assistant (%d of %d)", current_page + 1, n_pages);
gtk_window_set_title (GTK_WINDOW (widget), title);
g_free (title);
/* The fourth page (counting from zero) is the progress page. The
* user clicked Apply to get here so we tell the assistant to commit,
* which means the changes up to this point are permanent and cannot
* be cancelled or revisited. */
if (current_page == 3)
gtk_assistant_commit (GTK_ASSISTANT (widget));
}
static void
@@ -127,6 +157,26 @@ create_page3 (GtkWidget *assistant)
g_object_unref (pixbuf);
}
static void
create_page4 (GtkWidget *assistant)
{
GtkWidget *page;
page = gtk_alignment_new (0.5, 0.5, 0.5, 0.0);
progress_bar = gtk_progress_bar_new ();
gtk_container_add (GTK_CONTAINER (page), progress_bar);
gtk_widget_show_all (page);
gtk_assistant_append_page (GTK_ASSISTANT (assistant), page);
gtk_assistant_set_page_type (GTK_ASSISTANT (assistant), page, GTK_ASSISTANT_PAGE_PROGRESS);
gtk_assistant_set_page_title (GTK_ASSISTANT (assistant), page, "Applying changes");
/* This prevents the assistant window from being
* closed while we're "busy" applying changes. */
gtk_assistant_set_page_complete (GTK_ASSISTANT (assistant), page, FALSE);
}
GtkWidget*
do_assistant (GtkWidget *do_widget)
{
@@ -142,6 +192,7 @@ do_assistant (GtkWidget *do_widget)
create_page1 (assistant);
create_page2 (assistant);
create_page3 (assistant);
create_page4 (assistant);
g_signal_connect (G_OBJECT (assistant), "cancel",
G_CALLBACK (on_assistant_close_cancel), &assistant);
+9 -6
View File
@@ -128,7 +128,7 @@ query_for_toplevel (GdkScreen *screen,
gtk_widget_show_all (popup);
cursor = gdk_cursor_new_for_display (display, GDK_CROSSHAIR);
if (gdk_pointer_grab (popup->window, FALSE,
if (gdk_pointer_grab (gtk_widget_get_window (popup), FALSE,
GDK_BUTTON_RELEASE_MASK,
NULL,
cursor,
@@ -232,6 +232,7 @@ open_display_cb (GtkWidget *button,
GtkWidget *dialog;
GtkWidget *display_entry;
GtkWidget *dialog_label;
GtkWidget *content_area;
gchar *new_screen_name = NULL;
GdkDisplay *result = NULL;
@@ -247,12 +248,14 @@ open_display_cb (GtkWidget *button,
gtk_entry_set_activates_default (GTK_ENTRY (display_entry), TRUE);
dialog_label =
gtk_label_new ("Please enter the name of\nthe new display\n");
gtk_container_add (GTK_CONTAINER (GTK_DIALOG (dialog)->vbox), dialog_label);
gtk_container_add (GTK_CONTAINER (GTK_DIALOG (dialog)->vbox), display_entry);
content_area = gtk_dialog_get_content_area (GTK_DIALOG (dialog));
gtk_container_add (GTK_CONTAINER (content_area), dialog_label);
gtk_container_add (GTK_CONTAINER (content_area), display_entry);
gtk_widget_grab_focus (display_entry);
gtk_widget_show_all (GTK_BIN (dialog)->child);
gtk_widget_show_all (gtk_bin_get_child (GTK_BIN (dialog)));
while (!result)
{
@@ -621,7 +624,7 @@ do_changedisplay (GtkWidget *do_widget)
vbox = gtk_vbox_new (FALSE, 5);
gtk_container_set_border_width (GTK_CONTAINER (vbox), 8);
gtk_box_pack_start (GTK_BOX (GTK_DIALOG (info->window)->vbox), vbox,
gtk_box_pack_start (GTK_BOX (gtk_dialog_get_content_area (GTK_DIALOG (info->window))), vbox,
TRUE, TRUE, 0);
frame = create_display_frame (info);
+1 -1
View File
@@ -125,7 +125,7 @@ drag_data_received (GtkWidget *widget,
{
GdkPixbuf *pixbuf;
if (selection_data->length > 0)
if (gtk_selection_data_get_length (selection_data) > 0)
{
pixbuf = gtk_selection_data_get_pixbuf (selection_data);
gtk_image_set_from_pixbuf (GTK_IMAGE (data), pixbuf);
+13 -7
View File
@@ -19,17 +19,22 @@ expose_event_callback (GtkWidget *widget,
GdkEventExpose *event,
gpointer data)
{
if (widget->window)
GdkWindow *window = gtk_widget_get_window (widget);
if (window)
{
GtkStyle *style;
cairo_t *cr;
style = gtk_widget_get_style (widget);
gdk_draw_rectangle (widget->window,
style->bg_gc[GTK_STATE_NORMAL],
TRUE,
event->area.x, event->area.y,
event->area.width, event->area.height);
cr = gdk_cairo_create (window);
gdk_cairo_set_source_color (cr, &style->bg[GTK_STATE_NORMAL]);
gdk_cairo_rectangle (cr, &event->area);
cairo_fill (cr);
cairo_destroy (cr);
}
return TRUE;
@@ -47,7 +52,8 @@ change_color_callback (GtkWidget *button,
gtk_window_set_transient_for (GTK_WINDOW (dialog), GTK_WINDOW (window));
colorsel = GTK_COLOR_SELECTION (GTK_COLOR_SELECTION_DIALOG (dialog)->colorsel);
colorsel =
GTK_COLOR_SELECTION (gtk_color_selection_dialog_get_color_selection (GTK_COLOR_SELECTION_DIALOG (dialog)));
gtk_color_selection_set_previous_color (colorsel, &color);
gtk_color_selection_set_current_color (colorsel, &color);
+7 -7
View File
@@ -238,12 +238,12 @@ is_capital_sensitive (GtkCellLayout *cell_layout,
}
static void
fill_combo_entry (GtkWidget *entry)
fill_combo_entry (GtkWidget *combo)
{
gtk_combo_box_append_text (GTK_COMBO_BOX (entry), "One");
gtk_combo_box_append_text (GTK_COMBO_BOX (entry), "Two");
gtk_combo_box_append_text (GTK_COMBO_BOX (entry), "2\302\275");
gtk_combo_box_append_text (GTK_COMBO_BOX (entry), "Three");
gtk_combo_box_text_append_text (GTK_COMBO_BOX_TEXT (combo), "One");
gtk_combo_box_text_append_text (GTK_COMBO_BOX_TEXT (combo), "Two");
gtk_combo_box_text_append_text (GTK_COMBO_BOX_TEXT (combo), "2\302\275");
gtk_combo_box_text_append_text (GTK_COMBO_BOX_TEXT (combo), "Three");
}
@@ -428,14 +428,14 @@ do_combobox (GtkWidget *do_widget)
gtk_container_set_border_width (GTK_CONTAINER (box), 5);
gtk_container_add (GTK_CONTAINER (frame), box);
combo = gtk_combo_box_entry_new_text ();
combo = gtk_combo_box_text_new_with_entry ();
fill_combo_entry (combo);
gtk_container_add (GTK_CONTAINER (box), combo);
entry = g_object_new (TYPE_MASK_ENTRY, NULL);
MASK_ENTRY (entry)->mask = "^([0-9]*|One|Two|2\302\275|Three)$";
gtk_container_remove (GTK_CONTAINER (combo), GTK_BIN (combo)->child);
gtk_container_remove (GTK_CONTAINER (combo), gtk_bin_get_child (GTK_BIN (combo)));
gtk_container_add (GTK_CONTAINER (combo), entry);
}
+1 -1
View File
@@ -53,7 +53,7 @@ interactive_dialog_clicked (GtkButton *button,
hbox = gtk_hbox_new (FALSE, 8);
gtk_container_set_border_width (GTK_CONTAINER (hbox), 8);
gtk_box_pack_start (GTK_BOX (GTK_DIALOG (dialog)->vbox), hbox, FALSE, FALSE, 0);
gtk_box_pack_start (GTK_BOX (gtk_dialog_get_content_area (GTK_DIALOG (dialog))), hbox, FALSE, FALSE, 0);
stock = gtk_image_new_from_stock (GTK_STOCK_DIALOG_QUESTION, GTK_ICON_SIZE_DIALOG);
gtk_box_pack_start (GTK_BOX (hbox), stock, FALSE, FALSE, 0);
+58 -71
View File
@@ -17,52 +17,54 @@
static GtkWidget *window = NULL;
/* Pixmap for scribble area, to store current scribbles */
static GdkPixmap *pixmap = NULL;
static cairo_surface_t *surface = NULL;
/* Create a new pixmap of the appropriate size to store our scribbles */
/* Create a new surface of the appropriate size to store our scribbles */
static gboolean
scribble_configure_event (GtkWidget *widget,
GdkEventConfigure *event,
gpointer data)
{
if (pixmap)
g_object_unref (pixmap);
cairo_t *cr;
GtkAllocation allocation;
gtk_widget_get_allocation (widget, &allocation);
pixmap = gdk_pixmap_new (widget->window,
widget->allocation.width,
widget->allocation.height,
-1);
if (surface)
cairo_surface_destroy (surface);
/* Initialize the pixmap to white */
gdk_draw_rectangle (pixmap,
widget->style->white_gc,
TRUE,
0, 0,
widget->allocation.width,
widget->allocation.height);
surface = gdk_window_create_similar_surface (gtk_widget_get_window (widget),
CAIRO_CONTENT_COLOR,
allocation.width,
allocation.height);
/* Initialize the surface to white */
cr = cairo_create (surface);
cairo_set_source_rgb (cr, 1, 1, 1);
cairo_paint (cr);
cairo_destroy (cr);
/* We've handled the configure event, no need for further processing. */
return TRUE;
}
/* Redraw the screen from the pixmap */
/* Redraw the screen from the surface */
static gboolean
scribble_expose_event (GtkWidget *widget,
GdkEventExpose *event,
gpointer data)
{
/* We use the "foreground GC" for the widget since it already exists,
* but honestly any GC would work. The only thing to worry about
* is whether the GC has an inappropriate clip region set.
*/
cairo_t *cr;
gdk_draw_drawable (widget->window,
widget->style->fg_gc[gtk_widget_get_state (widget)],
pixmap,
/* Only copy the area that was exposed. */
event->area.x, event->area.y,
event->area.x, event->area.y,
event->area.width, event->area.height);
cr = gdk_cairo_create (gtk_widget_get_window (widget));
cairo_set_source_surface (cr, surface, 0, 0);
gdk_cairo_rectangle (cr, &event->area);
cairo_fill (cr);
cairo_destroy (cr);
return FALSE;
}
@@ -74,21 +76,23 @@ draw_brush (GtkWidget *widget,
gdouble y)
{
GdkRectangle update_rect;
cairo_t *cr;
update_rect.x = x - 3;
update_rect.y = y - 3;
update_rect.width = 6;
update_rect.height = 6;
/* Paint to the pixmap, where we store our state */
gdk_draw_rectangle (pixmap,
widget->style->black_gc,
TRUE,
update_rect.x, update_rect.y,
update_rect.width, update_rect.height);
/* Paint to the surface, where we store our state */
cr = cairo_create (surface);
gdk_cairo_rectangle (cr, &update_rect);
cairo_fill (cr);
cairo_destroy (cr);
/* Now invalidate the affected region of the drawing area. */
gdk_window_invalidate_rect (widget->window,
gdk_window_invalidate_rect (gtk_widget_get_window (widget),
&update_rect,
FALSE);
}
@@ -98,7 +102,7 @@ scribble_button_press_event (GtkWidget *widget,
GdkEventButton *event,
gpointer data)
{
if (pixmap == NULL)
if (surface == NULL)
return FALSE; /* paranoia check, in case we haven't gotten a configure event */
if (event->button == 1)
@@ -116,7 +120,7 @@ scribble_motion_notify_event (GtkWidget *widget,
int x, y;
GdkModifierType state;
if (pixmap == NULL)
if (surface == NULL)
return FALSE; /* paranoia check, in case we haven't gotten a configure event */
/* This call is very important; it requests the next motion event.
@@ -146,8 +150,10 @@ checkerboard_expose (GtkWidget *da,
gpointer data)
{
gint i, j, xcount, ycount;
GdkGC *gc1, *gc2;
GdkColor color;
cairo_t *cr;
GtkAllocation allocation;
gtk_widget_get_allocation (da, &allocation);
#define CHECK_SIZE 10
#define SPACING 2
@@ -159,47 +165,29 @@ checkerboard_expose (GtkWidget *da,
* works.
*/
/* It would be a bit more efficient to keep these
* GC's around instead of recreating on each expose, but
* this is the lazy/slow way.
*/
gc1 = gdk_gc_new (da->window);
color.red = 30000;
color.green = 0;
color.blue = 30000;
gdk_gc_set_rgb_fg_color (gc1, &color);
gc2 = gdk_gc_new (da->window);
color.red = 65535;
color.green = 65535;
color.blue = 65535;
gdk_gc_set_rgb_fg_color (gc2, &color);
cr = gdk_cairo_create (gtk_widget_get_window (da));
gdk_cairo_rectangle (cr, &event->area);
cairo_clip (cr);
xcount = 0;
i = SPACING;
while (i < da->allocation.width)
while (i < allocation.width)
{
j = SPACING;
ycount = xcount % 2; /* start with even/odd depending on row */
while (j < da->allocation.height)
while (j < allocation.height)
{
GdkGC *gc;
if (ycount % 2)
gc = gc1;
cairo_set_source_rgb (cr, 0.45777, 0, 0.45777);
else
gc = gc2;
cairo_set_source_rgb (cr, 1, 1, 1);
/* If we're outside event->area, this will do nothing.
* It might be mildly more efficient if we handled
* the clipping ourselves, but again we're feeling lazy.
*/
gdk_draw_rectangle (da->window,
gc,
TRUE,
i, j,
CHECK_SIZE,
CHECK_SIZE);
cairo_rectangle (cr, i, j, CHECK_SIZE, CHECK_SIZE);
cairo_fill (cr);
j += CHECK_SIZE + SPACING;
++ycount;
@@ -209,8 +197,7 @@ checkerboard_expose (GtkWidget *da,
++xcount;
}
g_object_unref (gc1);
g_object_unref (gc2);
cairo_destroy (cr);
/* return TRUE because we've handled this event, so no
* further processing is required.
@@ -223,9 +210,9 @@ close_window (void)
{
window = NULL;
if (pixmap)
g_object_unref (pixmap);
pixmap = NULL;
if (surface)
cairo_surface_destroy (surface);
surface = NULL;
}
GtkWidget *
@@ -292,7 +279,7 @@ do_drawingarea (GtkWidget *do_widget)
gtk_container_add (GTK_CONTAINER (frame), da);
/* Signals used to handle backing pixmap */
/* Signals used to handle backing surface */
g_signal_connect (da, "expose-event",
G_CALLBACK (scribble_expose_event), NULL);
+5 -5
View File
@@ -48,27 +48,27 @@ add_items (void)
g_return_if_fail (articles != NULL);
foo.number = 3;
foo.product = g_strdup ("bottles of coke");
foo.product = "bottles of coke";
foo.yummy = 20;
g_array_append_vals (articles, &foo, 1);
foo.number = 5;
foo.product = g_strdup ("packages of noodles");
foo.product = "packages of noodles";
foo.yummy = 50;
g_array_append_vals (articles, &foo, 1);
foo.number = 2;
foo.product = g_strdup ("packages of chocolate chip cookies");
foo.product = "packages of chocolate chip cookies";
foo.yummy = 90;
g_array_append_vals (articles, &foo, 1);
foo.number = 1;
foo.product = g_strdup ("can vanilla ice cream");
foo.product = "can vanilla ice cream";
foo.yummy = 60;
g_array_append_vals (articles, &foo, 1);
foo.number = 6;
foo.product = g_strdup ("eggs");
foo.product = "eggs";
foo.yummy = 10;
g_array_append_vals (articles, &foo, 1);
}
+1 -1
View File
@@ -32,7 +32,7 @@ do_entry_buffer (GtkWidget *do_widget)
G_CALLBACK (gtk_widget_destroyed), &window);
vbox = gtk_vbox_new (FALSE, 5);
gtk_box_pack_start (GTK_BOX (GTK_DIALOG (window)->vbox), vbox, TRUE, TRUE, 0);
gtk_box_pack_start (GTK_BOX (gtk_dialog_get_content_area (GTK_DIALOG (window))), vbox, TRUE, TRUE, 0);
gtk_container_set_border_width (GTK_CONTAINER (vbox), 5);
label = gtk_label_new (NULL);
+1 -1
View File
@@ -59,7 +59,7 @@ do_entry_completion (GtkWidget *do_widget)
G_CALLBACK (gtk_widget_destroyed), &window);
vbox = gtk_vbox_new (FALSE, 5);
gtk_box_pack_start (GTK_BOX (GTK_DIALOG (window)->vbox), vbox, TRUE, TRUE, 0);
gtk_box_pack_start (GTK_BOX (gtk_dialog_get_content_area (GTK_DIALOG (window))), vbox, TRUE, TRUE, 0);
gtk_container_set_border_width (GTK_CONTAINER (vbox), 5);
label = gtk_label_new (NULL);
+1 -1
View File
@@ -33,7 +33,7 @@ do_expander (GtkWidget *do_widget)
G_CALLBACK (gtk_widget_destroyed), &window);
vbox = gtk_vbox_new (FALSE, 5);
gtk_box_pack_start (GTK_BOX (GTK_DIALOG (window)->vbox), vbox, TRUE, TRUE, 0);
gtk_box_pack_start (GTK_BOX (gtk_dialog_get_content_area (GTK_DIALOG (window))), vbox, TRUE, TRUE, 0);
gtk_container_set_border_width (GTK_CONTAINER (vbox), 5);
label = gtk_label_new ("Expander demo. Click on the triangle for details.");
+6 -6
View File
@@ -40,7 +40,7 @@ foreach $href (@demos) {
my $do_next = 0;
# parent detected
if (defined @parents) {
if (@parents) {
foreach $foo (@parents) {
if ($foo eq $parent_name) {
$do_next = 1;
@@ -54,7 +54,7 @@ foreach $href (@demos) {
push @parents, $parent_name;
$tmp = (defined @child_arrays)?($#child_arrays + 1):0;
$tmp = (@child_arrays)?($#child_arrays + 1):0;
push @child_arrays, "child$tmp";
push @demos, {"title" => $parent_name, "file" => "NULL",
@@ -62,7 +62,7 @@ foreach $href (@demos) {
}
}
if (defined @parents) {
if (@parents) {
$i = 0;
for ($i = 0; $i <= $#parents; $i++) {
$first = 1;
@@ -73,7 +73,7 @@ if (defined @parents) {
for ($j = 0; $j <= $#demos; $j++) {
$href = $demos[$j];
if (!defined $demos[$j]) {
if (!$demos[$j]) {
next;
}
@@ -105,7 +105,7 @@ if (defined @parents) {
} @demos_old;
# sort the child arrays
if (defined @child_arrays) {
if (@child_arrays) {
for ($i = 0; $i <= $#child_arrays; $i++) {
@foo_old = @{$child_arrays[$i]};
@@ -133,7 +133,7 @@ foreach $href (@demos) {
print ", \n";
}
if (defined @parents) {
if (@parents) {
for ($i = 0; $i <= $#parents; $i++) {
if ($parents[$i] eq $href->{title}) {
+2 -2
View File
@@ -225,7 +225,7 @@ motion_notify_event (GtkWidget *text_view,
set_cursor_if_appropriate (GTK_TEXT_VIEW (text_view), x, y);
gdk_window_get_pointer (text_view->window, NULL, NULL, NULL);
gdk_window_get_pointer (gtk_widget_get_window (text_view), NULL, NULL, NULL);
return FALSE;
}
@@ -238,7 +238,7 @@ visibility_notify_event (GtkWidget *text_view,
{
gint wx, wy, bx, by;
gdk_window_get_pointer (text_view->window, &wx, &wy, NULL);
gdk_window_get_pointer (gtk_widget_get_window (text_view), &wx, &wy, NULL);
gtk_text_view_window_to_buffer_coords (GTK_TEXT_VIEW (text_view),
GTK_TEXT_WINDOW_WIDGET,
+1
View File
@@ -105,6 +105,7 @@ fill_store (GtkListStore *store)
name = g_dir_read_name (dir);
}
g_dir_close (dir);
}
static gint
+1 -1
View File
@@ -942,7 +942,7 @@ main (int argc, char **argv)
G_FILE_TEST_EXISTS))
{
g_setenv ("GDK_PIXBUF_MODULE_FILE", "../../gdk-pixbuf/gdk-pixbuf.loaders", TRUE);
g_setenv ("GTK_IM_MODULE_FILE", "../../modules/input/gtk.immodules", TRUE);
g_setenv ("GTK_IM_MODULE_FILE", "../../modules/input/immodules.cache", TRUE);
}
/* -- End of hack -- */
+40 -32
View File
@@ -74,7 +74,7 @@ to_child (GtkRotatedBin *bin,
s = sin (bin->angle);
c = cos (bin->angle);
child_area = bin->child->allocation;
gtk_widget_get_allocation (bin->child, &child_area);
w = c * child_area.width + s * child_area.height;
h = s * child_area.width + c * child_area.height;
@@ -114,7 +114,7 @@ to_parent (GtkRotatedBin *bin,
s = sin (bin->angle);
c = cos (bin->angle);
child_area = bin->child->allocation;
gtk_widget_get_allocation (bin->child, &child_area);
w = c * child_area.width + s * child_area.height;
h = s * child_area.width + c * child_area.height;
@@ -188,7 +188,7 @@ pick_offscreen_child (GdkWindow *offscreen_window,
{
to_child (bin, widget_x, widget_y, &x, &y);
child_area = bin->child->allocation;
gtk_widget_get_allocation (bin->child, &child_area);
if (x >= 0 && x < child_area.width &&
y >= 0 && y < child_area.height)
@@ -224,19 +224,23 @@ static void
gtk_rotated_bin_realize (GtkWidget *widget)
{
GtkRotatedBin *bin = GTK_ROTATED_BIN (widget);
GdkWindow *gdk_window;
GdkWindowAttr attributes;
gint attributes_mask;
gint border_width;
GtkRequisition child_requisition;
GtkAllocation widget_allocation, bin_child_allocation;
GtkStyle *style;
gtk_widget_set_realized (widget, TRUE);
border_width = GTK_CONTAINER (widget)->border_width;
border_width = gtk_container_get_border_width (GTK_CONTAINER (widget));
gtk_widget_get_allocation (widget, &widget_allocation);
attributes.x = widget->allocation.x + border_width;
attributes.y = widget->allocation.y + border_width;
attributes.width = widget->allocation.width - 2 * border_width;
attributes.height = widget->allocation.height - 2 * border_width;
attributes.x = widget_allocation.x + border_width;
attributes.y = widget_allocation.y + border_width;
attributes.width = widget_allocation.width - 2 * border_width;
attributes.height = widget_allocation.height - 2 * border_width;
attributes.window_type = GDK_WINDOW_CHILD;
attributes.event_mask = gtk_widget_get_events (widget)
| GDK_EXPOSURE_MASK
@@ -252,11 +256,11 @@ gtk_rotated_bin_realize (GtkWidget *widget)
attributes.wclass = GDK_INPUT_OUTPUT;
attributes_mask = GDK_WA_X | GDK_WA_Y | GDK_WA_VISUAL | GDK_WA_COLORMAP;
widget->window = gdk_window_new (gtk_widget_get_parent_window (widget),
&attributes, attributes_mask);
gdk_window_set_user_data (widget->window, widget);
g_signal_connect (widget->window, "pick-embedded-child",
gdk_window = gdk_window_new (gtk_widget_get_parent_window (widget), &attributes, attributes_mask);
gtk_widget_set_window (widget, gdk_window);
gdk_window_set_user_data (gdk_window, widget);
g_signal_connect (gdk_window, "pick-embedded-child",
G_CALLBACK (pick_offscreen_child), bin);
attributes.window_type = GDK_WINDOW_OFFSCREEN;
@@ -264,24 +268,25 @@ gtk_rotated_bin_realize (GtkWidget *widget)
child_requisition.width = child_requisition.height = 0;
if (bin->child && gtk_widget_get_visible (bin->child))
{
attributes.width = bin->child->allocation.width;
attributes.height = bin->child->allocation.height;
gtk_widget_get_allocation (bin->child, &bin_child_allocation);
attributes.width = bin_child_allocation.width;
attributes.height = bin_child_allocation.height;
}
bin->offscreen_window = gdk_window_new (gtk_widget_get_root_window (widget),
&attributes, attributes_mask);
gdk_window_set_user_data (bin->offscreen_window, widget);
if (bin->child)
gtk_widget_set_parent_window (bin->child, bin->offscreen_window);
gdk_offscreen_window_set_embedder (bin->offscreen_window, widget->window);
gdk_offscreen_window_set_embedder (bin->offscreen_window, gtk_widget_get_window (widget));
g_signal_connect (bin->offscreen_window, "to-embedder",
G_CALLBACK (offscreen_window_to_parent), bin);
g_signal_connect (bin->offscreen_window, "from-embedder",
G_CALLBACK (offscreen_window_from_parent), bin);
widget->style = gtk_style_attach (widget->style, widget->window);
gtk_style_set_background (widget->style, widget->window, GTK_STATE_NORMAL);
gtk_style_set_background (widget->style, bin->offscreen_window, GTK_STATE_NORMAL);
gtk_widget_style_attach (widget);
style = gtk_widget_get_style (widget);
gtk_style_set_background (style, gdk_window, GTK_STATE_NORMAL);
gtk_style_set_background (style, bin->offscreen_window, GTK_STATE_NORMAL);
gdk_window_show (bin->offscreen_window);
}
@@ -376,9 +381,12 @@ gtk_rotated_bin_size_request (GtkWidget *widget,
{
GtkRotatedBin *bin = GTK_ROTATED_BIN (widget);
GtkRequisition child_requisition;
gint border_width;
double s, c;
double w, h;
border_width = gtk_container_get_border_width (GTK_CONTAINER (widget));
child_requisition.width = 0;
child_requisition.height = 0;
@@ -390,8 +398,8 @@ gtk_rotated_bin_size_request (GtkWidget *widget,
w = c * child_requisition.width + s * child_requisition.height;
h = s * child_requisition.width + c * child_requisition.height;
requisition->width = GTK_CONTAINER (widget)->border_width * 2 + w;
requisition->height = GTK_CONTAINER (widget)->border_width * 2 + h;
requisition->width = border_width * 2 + w;
requisition->height = border_width * 2 + h;
}
static void
@@ -403,15 +411,15 @@ gtk_rotated_bin_size_allocate (GtkWidget *widget,
gint w, h;
gdouble s, c;
widget->allocation = *allocation;
gtk_widget_set_allocation (widget, allocation);
border_width = GTK_CONTAINER (widget)->border_width;
border_width = gtk_container_get_border_width (GTK_CONTAINER (widget));
w = allocation->width - border_width * 2;
h = allocation->height - border_width * 2;
if (gtk_widget_get_realized (widget))
gdk_window_move_resize (widget->window,
gdk_window_move_resize (gtk_widget_get_window (widget),
allocation->x + border_width,
allocation->y + border_width,
w, h);
@@ -452,7 +460,7 @@ static gboolean
gtk_rotated_bin_damage (GtkWidget *widget,
GdkEventExpose *event)
{
gdk_window_invalidate_rect (widget->window, NULL, FALSE);
gdk_window_invalidate_rect (gtk_widget_get_window (widget), NULL, FALSE);
return TRUE;
}
@@ -468,7 +476,7 @@ gtk_rotated_bin_expose (GtkWidget *widget,
if (gtk_widget_is_drawable (widget))
{
if (event->window == widget->window)
if (event->window == gtk_widget_get_window (widget))
{
GdkPixmap *pixmap;
GtkAllocation child_area;
@@ -477,9 +485,9 @@ gtk_rotated_bin_expose (GtkWidget *widget,
if (bin->child && gtk_widget_get_visible (bin->child))
{
pixmap = gdk_offscreen_window_get_pixmap (bin->offscreen_window);
child_area = bin->child->allocation;
gtk_widget_get_allocation (bin->child, &child_area);
cr = gdk_cairo_create (widget->window);
cr = gdk_cairo_create (gtk_widget_get_window (widget));
/* transform */
s = sin (bin->angle);
@@ -493,7 +501,7 @@ gtk_rotated_bin_expose (GtkWidget *widget,
cairo_translate (cr, -child_area.width / 2, -child_area.height / 2);
/* clip */
gdk_drawable_get_size (pixmap, &width, &height);
gdk_pixmap_get_size (pixmap, &width, &height);
cairo_rectangle (cr, 0, 0, width, height);
cairo_clip (cr);
/* paint */
@@ -505,7 +513,7 @@ gtk_rotated_bin_expose (GtkWidget *widget,
}
else if (event->window == bin->offscreen_window)
{
gtk_paint_flat_box (widget->style, event->window,
gtk_paint_flat_box (gtk_widget_get_style (widget), event->window,
GTK_STATE_NORMAL, GTK_SHADOW_NONE,
&event->area, widget, "blah",
0, 0, -1, -1);
+38 -28
View File
@@ -126,7 +126,7 @@ pick_offscreen_child (GdkWindow *offscreen_window,
{
to_child (bin, widget_x, widget_y, &x, &y);
child_area = bin->child->allocation;
gtk_widget_get_allocation (bin->child, &child_area);
if (x >= 0 && x < child_area.width &&
y >= 0 && y < child_area.height)
@@ -163,18 +163,22 @@ gtk_mirror_bin_realize (GtkWidget *widget)
{
GtkMirrorBin *bin = GTK_MIRROR_BIN (widget);
GdkWindowAttr attributes;
GdkWindow *gdk_window;
gint attributes_mask;
gint border_width;
GtkRequisition child_requisition;
GtkAllocation widget_allocation, bin_child_allocation;
GtkStyle *style;
gtk_widget_set_realized (widget, TRUE);
border_width = GTK_CONTAINER (widget)->border_width;
border_width = gtk_container_get_border_width (GTK_CONTAINER (widget));
gtk_widget_get_allocation (widget, &widget_allocation);
attributes.x = widget->allocation.x + border_width;
attributes.y = widget->allocation.y + border_width;
attributes.width = widget->allocation.width - 2 * border_width;
attributes.height = widget->allocation.height - 2 * border_width;
attributes.x = widget_allocation.x + border_width;
attributes.y = widget_allocation.y + border_width;
attributes.width = widget_allocation.width - 2 * border_width;
attributes.height = widget_allocation.height - 2 * border_width;
attributes.window_type = GDK_WINDOW_CHILD;
attributes.event_mask = gtk_widget_get_events (widget)
| GDK_EXPOSURE_MASK
@@ -190,11 +194,12 @@ gtk_mirror_bin_realize (GtkWidget *widget)
attributes.wclass = GDK_INPUT_OUTPUT;
attributes_mask = GDK_WA_X | GDK_WA_Y | GDK_WA_VISUAL | GDK_WA_COLORMAP;
widget->window = gdk_window_new (gtk_widget_get_parent_window (widget),
&attributes, attributes_mask);
gdk_window_set_user_data (widget->window, widget);
g_signal_connect (widget->window, "pick-embedded-child",
gdk_window = gdk_window_new (gtk_widget_get_parent_window (widget),
&attributes, attributes_mask);
gtk_widget_set_window (widget, gdk_window);
gdk_window_set_user_data (gdk_window, widget);
g_signal_connect (gdk_window, "pick-embedded-child",
G_CALLBACK (pick_offscreen_child), bin);
attributes.window_type = GDK_WINDOW_OFFSCREEN;
@@ -202,24 +207,25 @@ gtk_mirror_bin_realize (GtkWidget *widget)
child_requisition.width = child_requisition.height = 0;
if (bin->child && gtk_widget_get_visible (bin->child))
{
attributes.width = bin->child->allocation.width;
attributes.height = bin->child->allocation.height;
gtk_widget_get_allocation (bin->child, &bin_child_allocation);
attributes.width = bin_child_allocation.width;
attributes.height = bin_child_allocation.height;
}
bin->offscreen_window = gdk_window_new (gtk_widget_get_root_window (widget),
&attributes, attributes_mask);
gdk_window_set_user_data (bin->offscreen_window, widget);
if (bin->child)
gtk_widget_set_parent_window (bin->child, bin->offscreen_window);
gdk_offscreen_window_set_embedder (bin->offscreen_window, widget->window);
gdk_offscreen_window_set_embedder (bin->offscreen_window, gtk_widget_get_window (widget));
g_signal_connect (bin->offscreen_window, "to-embedder",
G_CALLBACK (offscreen_window_to_parent), bin);
g_signal_connect (bin->offscreen_window, "from-embedder",
G_CALLBACK (offscreen_window_from_parent), bin);
widget->style = gtk_style_attach (widget->style, widget->window);
gtk_style_set_background (widget->style, widget->window, GTK_STATE_NORMAL);
gtk_style_set_background (widget->style, bin->offscreen_window, GTK_STATE_NORMAL);
gtk_widget_style_attach (widget);
style = gtk_widget_get_style (widget);
gtk_style_set_background (style, gdk_window, GTK_STATE_NORMAL);
gtk_style_set_background (style, bin->offscreen_window, GTK_STATE_NORMAL);
gdk_window_show (bin->offscreen_window);
}
@@ -302,6 +308,9 @@ gtk_mirror_bin_size_request (GtkWidget *widget,
{
GtkMirrorBin *bin = GTK_MIRROR_BIN (widget);
GtkRequisition child_requisition;
gint border_width;
border_width = gtk_container_get_border_width (GTK_CONTAINER (widget));
child_requisition.width = 0;
child_requisition.height = 0;
@@ -309,8 +318,8 @@ gtk_mirror_bin_size_request (GtkWidget *widget,
if (bin->child && gtk_widget_get_visible (bin->child))
gtk_widget_size_request (bin->child, &child_requisition);
requisition->width = GTK_CONTAINER (widget)->border_width * 2 + child_requisition.width + 10;
requisition->height = GTK_CONTAINER (widget)->border_width * 2 + child_requisition.height * 2 + 10;
requisition->width = border_width * 2 + child_requisition.width + 10;
requisition->height = border_width * 2 + child_requisition.height * 2 + 10;
}
static void
@@ -320,15 +329,16 @@ gtk_mirror_bin_size_allocate (GtkWidget *widget,
GtkMirrorBin *bin = GTK_MIRROR_BIN (widget);
gint border_width;
gint w, h;
widget->allocation = *allocation;
gtk_widget_set_allocation (widget, allocation);
border_width = GTK_CONTAINER (widget)->border_width;
border_width = gtk_container_get_border_width (GTK_CONTAINER (widget));
w = allocation->width - border_width * 2;
h = allocation->height - border_width * 2;
if (gtk_widget_get_realized (widget))
gdk_window_move_resize (widget->window,
gdk_window_move_resize (gtk_widget_get_window (widget),
allocation->x + border_width,
allocation->y + border_width,
w, h);
@@ -357,7 +367,7 @@ static gboolean
gtk_mirror_bin_damage (GtkWidget *widget,
GdkEventExpose *event)
{
gdk_window_invalidate_rect (widget->window, NULL, FALSE);
gdk_window_invalidate_rect (gtk_widget_get_window (widget), NULL, FALSE);
return TRUE;
}
@@ -371,7 +381,7 @@ gtk_mirror_bin_expose (GtkWidget *widget,
if (gtk_widget_is_drawable (widget))
{
if (event->window == widget->window)
if (event->window == gtk_widget_get_window (widget))
{
GdkPixmap *pixmap;
cairo_t *cr;
@@ -381,9 +391,9 @@ gtk_mirror_bin_expose (GtkWidget *widget,
if (bin->child && gtk_widget_get_visible (bin->child))
{
pixmap = gdk_offscreen_window_get_pixmap (bin->offscreen_window);
gdk_drawable_get_size (pixmap, &width, &height);
gdk_pixmap_get_size (pixmap, &width, &height);
cr = gdk_cairo_create (widget->window);
cr = gdk_cairo_create (gtk_widget_get_window (widget));
cairo_save (cr);
@@ -423,7 +433,7 @@ gtk_mirror_bin_expose (GtkWidget *widget,
}
else if (event->window == bin->offscreen_window)
{
gtk_paint_flat_box (widget->style, event->window,
gtk_paint_flat_box (gtk_widget_get_style (widget), event->window,
GTK_STATE_NORMAL, GTK_SHADOW_NONE,
&event->area, widget, "blah",
0, 0, -1, -1);
+17 -14
View File
@@ -17,15 +17,14 @@ void
toggle_resize (GtkWidget *widget,
GtkWidget *child)
{
GtkPaned *paned = GTK_PANED (child->parent);
gboolean is_child1 = (child == paned->child1);
GtkPaned *paned = GTK_PANED (gtk_widget_get_parent (child));
gboolean is_child1 = (child == gtk_paned_get_child1 (paned));
gboolean resize, shrink;
resize = is_child1 ? paned->child1_resize : paned->child2_resize;
shrink = is_child1 ? paned->child1_shrink : paned->child2_shrink;
gtk_container_child_get (GTK_CONTAINER (paned), child, "resize", &resize, "shrink", &shrink, NULL);
g_object_ref (child);
gtk_container_remove (GTK_CONTAINER (child->parent), child);
gtk_container_remove (GTK_CONTAINER (gtk_widget_get_parent (child)), child);
if (is_child1)
gtk_paned_pack1 (paned, child, !resize, shrink);
else
@@ -37,15 +36,14 @@ void
toggle_shrink (GtkWidget *widget,
GtkWidget *child)
{
GtkPaned *paned = GTK_PANED (child->parent);
gboolean is_child1 = (child == paned->child1);
GtkPaned *paned = GTK_PANED (gtk_widget_get_parent (child));
gboolean is_child1 = (child == gtk_paned_get_child1 (paned));
gboolean resize, shrink;
resize = is_child1 ? paned->child1_resize : paned->child2_resize;
shrink = is_child1 ? paned->child1_shrink : paned->child2_shrink;
gtk_container_child_get (GTK_CONTAINER (paned), child, "resize", &resize, "shrink", &shrink, NULL);
g_object_ref (child);
gtk_container_remove (GTK_CONTAINER (child->parent), child);
gtk_container_remove (GTK_CONTAINER (gtk_widget_get_parent (child)), child);
if (is_child1)
gtk_paned_pack1 (paned, child, resize, !shrink);
else
@@ -63,6 +61,11 @@ create_pane_options (GtkPaned *paned,
GtkWidget *table;
GtkWidget *label;
GtkWidget *check_button;
GtkWidget *child1;
GtkWidget *child2;
child1 = gtk_paned_get_child1 (paned);
child2 = gtk_paned_get_child2 (paned);
frame = gtk_frame_new (frame_label);
gtk_container_set_border_width (GTK_CONTAINER (frame), 4);
@@ -78,7 +81,7 @@ create_pane_options (GtkPaned *paned,
gtk_table_attach_defaults (GTK_TABLE (table), check_button,
0, 1, 1, 2);
g_signal_connect (check_button, "toggled",
G_CALLBACK (toggle_resize), paned->child1);
G_CALLBACK (toggle_resize), child1);
check_button = gtk_check_button_new_with_mnemonic ("_Shrink");
gtk_table_attach_defaults (GTK_TABLE (table), check_button,
@@ -86,7 +89,7 @@ create_pane_options (GtkPaned *paned,
gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (check_button),
TRUE);
g_signal_connect (check_button, "toggled",
G_CALLBACK (toggle_shrink), paned->child1);
G_CALLBACK (toggle_shrink), child1);
label = gtk_label_new (label2);
gtk_table_attach_defaults (GTK_TABLE (table), label,
@@ -98,7 +101,7 @@ create_pane_options (GtkPaned *paned,
gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (check_button),
TRUE);
g_signal_connect (check_button, "toggled",
G_CALLBACK (toggle_resize), paned->child2);
G_CALLBACK (toggle_resize), child2);
check_button = gtk_check_button_new_with_mnemonic ("_Shrink");
gtk_table_attach_defaults (GTK_TABLE (table), check_button,
@@ -106,7 +109,7 @@ create_pane_options (GtkPaned *paned,
gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (check_button),
TRUE);
g_signal_connect (check_button, "toggled",
G_CALLBACK (toggle_shrink), paned->child2);
G_CALLBACK (toggle_shrink), child2);
return frame;
}

Some files were not shown because too many files have changed in this diff Show More