Compare commits

...

57 Commits

Author SHA1 Message Date
Juan Pablo Ugarte
152031927c Rolling 3.38.2 2020-11-20 17:06:30 -03:00
Jan Alexander Steffens (heftig)
947fe14794 Python plugin: Fix build against Python 3.9
This basically reverts 6f4fb5672f41201a20e0f879a7d7d7b96f045425,
returning to Meson's `python` module, since the `python-3.8-embed`
dependency obviously only works with Python 3.8.

We're using the `embed` kwarg which was added in Meson 0.53.0, so we
need to bump the minimum `meson_version`.
2020-11-20 16:37:39 -03:00
Juan Pablo Ugarte
8a70fd956c Revert "GladeWidget: fix rebuild() function"
This reverts commit 93598cb03717a2023b32d264f62329f636ff75cc.
2020-10-23 18:31:52 -03:00
Juan Pablo Ugarte
e594d44bdc Revert "GladeWidget: unset parent and object on rebuild"
This reverts commit 9e66cdfb97a89952e2a58fa702f1841dc302479a.
2020-10-23 18:31:23 -03:00
Juan Pablo Ugarte
93598cb037 GladeWidget: fix rebuild() function
Remove object from project before extracting children since we clear up
GladeWidget back references for internal children.

Fix issue #484 "Crash with GtkRecentChooserDialog"
2020-10-23 17:32:22 -03:00
Juan Pablo Ugarte
36b3c71fc4 GladeWindow: disable survey if there is no TLS support
Closses issue #371 "Glade user survey not working (TLS error)"
2020-10-21 21:42:27 -03:00
Juan Pablo Ugarte
f855dae999 GladeEditorProperty: properly show parentless objects in chooser
Closes issue #53 "Can't choose a FileChooserDialog for a FileChooserButton"
2020-10-14 18:54:00 -03:00
Juan Pablo Ugarte
157b3563f7 GladeUtils: make message dialog text selectable
Closes issue #355 "Make notification text selectable"
2020-10-09 17:07:43 -03:00
Juan Pablo Ugarte
e15c7641ae Fix windows build on msys
Use -Wl,--export-all-symbols and -Wl,--no-undefined to export
symbols on mingw

GladeApp: use PACKAGE_NAME instead of PACKAGE

Remove copyright symbol from resource files to avoid weird UTF error
building with mingw on msys
2020-10-09 16:36:22 -03:00
Juan Pablo Ugarte
7b10c43cbe GladePropertyDef: do not use setlocale in glade_dtostr()
Windows does not have setlocale() function
2020-10-09 16:04:14 -03:00
Juan Pablo Ugarte
9b3f55387f Rolling 3.38.1 2020-10-04 17:40:46 -03:00
Juan Pablo Ugarte
5d552ffd03 Fix tests. 2020-10-02 16:48:22 -03:00
Juan Pablo Ugarte
1b1551efbb Update Spanish translation 2020-10-02 16:29:58 -03:00
Juan Pablo Ugarte
d1933b0f96 GladeGtk*: always use connect_object() for parse-finished signal
This ensures the signal will get disconnected if object is finalized.
2020-10-02 16:22:08 -03:00
Juan Pablo Ugarte
2e2475bb27 GladeGtkBox: fix glade_gtk_box_post_create
Some widgets with contruct properties like GtkMessageDialog get
rebuilt right after they are created on project loading so we need
to check glade_project_is_loading() intead of GLADE_CREATE_LOAD
and use the object ad the connect data to make sure it gets disconected
if it was the object being rebuilt

Fix issue #479 "Glade 3.36.0 segfaults when opening a file"
2020-10-02 16:22:07 -03:00
Juan Pablo Ugarte
16bf89e112 GladeWidget: unset parent and object on rebuild
We need to make sure internal widgets parent and object are unset
while rebuilding to avoid having a GladeWidget with a dead object.
2020-10-02 16:22:05 -03:00
Juan Pablo Ugarte
9167d3e54d GladeGtkLabel: fix color attributes handling
Properly load/save pango color attributes

Fix issue #474 "GtkLabel: setup text attribute issues"
2020-10-01 17:37:12 -03:00
Juan Pablo Ugarte
8b7d9e1600 GladePropertyDef: cleanup color type handling
Cleanup PangoColor and GdkColor handling in make_string_from_gvalue and
make_gvalue_from_string functions.
2020-10-01 17:37:12 -03:00
Juan Pablo Ugarte
d89597af91 CONTRIBUTING.md: update coding style link 2020-10-01 17:37:12 -03:00
Juan Pablo Ugarte
e60b7cf162 GladeProjectProperties: fix target version loading
Make sure target version combo gets updated on project load.

Fix issue #480 "version field not always updated in XML"
2020-10-01 17:37:12 -03:00
Juan Pablo Ugarte
4cd9fa1716 GladeUtils: fix glade_utils_get_pointer()
Use default pointer device instead of device from current event
since a paste can be triggered by the keyboard.

This fix issue pasing widget with ctrl+v in GtkGrid
2020-10-01 17:37:12 -03:00
Juan Pablo Ugarte
362e95362d GladeGtkWidget: add viewport on add scrolled window action
Add a viewport for non scrollable widget when adding a
scrolled window parent.

Fix issue #471 "XML not updated after adding element"
2020-10-01 17:37:12 -03:00
Juan Pablo Ugarte
e04a56706e gtk catalog: add GtkTable to deprecated group 2020-10-01 17:37:12 -03:00
Juan Pablo Ugarte
7f9a36c1d9 GladeGtkContainer: improve add-verify
Special case GtkBin since Windows can hace a placeholder in the titlebar.
2020-10-01 17:37:12 -03:00
Milo Casagrande
08ca3fcb73 Update Italian translation 2020-09-28 10:03:21 +00:00
Balázs Meskó
a2bc5811ed Update Hungarian translation 2020-09-23 15:45:19 +00:00
Piotr Drąg
975d2e9dbc Update Polish translation 2020-09-19 12:55:02 +02:00
Asier Sarasua Garmendia
c2758d916d Update Basque translation 2020-09-19 07:32:50 +00:00
Fran Dieguez
79fbfa1c85 Update Galician translation 2020-09-18 23:23:03 +00:00
Fran Dieguez
5a6ea0dc7c Update Galician translation 2020-09-18 23:19:49 +00:00
Daniel Mustieles
8661b6ede9 Updated Spanish translation 2020-09-16 14:16:31 +02:00
Stephan Woidowski
30a63acd22 Update German translation 2020-09-15 07:18:08 +00:00
Marek Černocký
5cb337e230 Updated Czech translation 2020-09-15 07:44:20 +02:00
Anders Jonsson
920297f03a Update Swedish translation 2020-09-14 12:29:15 +00:00
Rafael Fontenelle
4142b6c78e Update Brazilian Portuguese translation 2020-09-14 10:55:03 +00:00
Boyuan Yang
f53b76224d Update Chinese (China) translation 2020-09-14 00:12:10 +00:00
Matej Urbančič
f46f55aa6c Update Slovenian translation 2020-09-13 19:40:03 +00:00
Aurimas Černius
8311e910dd Updated Lithuanian translation 2020-09-13 20:09:03 +03:00
Emin Tufan Çetin
94e2dae3d5 Update Turkish translation 2020-09-13 11:21:31 +00:00
Kukuh Syafaat
c68d6c88a1 Update Indonesian translation 2020-09-13 08:10:07 +00:00
Claude Paroz
0b331ff542 Updated French translation 2020-09-13 09:43:16 +02:00
Yuri Chornoivan
b3bf5b39b7 Update Ukrainian translation 2020-09-13 05:50:55 +00:00
Juan Pablo Ugarte
2e4875cbcf Rolling 3.38 2020-09-12 19:56:45 -03:00
Juan Pablo Ugarte
13f6903e1e GladeWindow: Add Guido Macchi memorial
Guido was a beloved professor at Rosario National university
who passed away last december.

This is a small recognition in his memory.
2020-09-12 19:29:41 -03:00
Rafael Fontenelle
aa70e86a18 Update Brazilian Portuguese translation 2020-09-12 21:09:39 +00:00
Baurzhan Muftakhidinov
95f29fd6fd Update Kazakh translation 2020-09-12 13:56:47 +00:00
Ask Hjorth Larsen
c211966414 Updated Danish translation 2020-09-12 01:11:21 +02:00
Marek Černocký
c2cf02f49c Updated Czech help translation 2020-09-09 21:51:31 +02:00
Marek Černocký
252be607c3 Updated Czech translation 2020-09-09 09:38:30 +02:00
Tim Sabsch
3a4a0c2488 Update German translation 2020-09-08 18:21:41 +00:00
Mario Blättermann
dce9287ebe Update German translation 2020-09-07 18:08:18 +00:00
Jordi Mas
b74f14d17e Update Catalan translation 2020-09-07 16:13:11 +02:00
Gil Forcada
e2865e629a Update Catalan translation 2020-09-07 10:28:10 +00:00
Balázs Úr
c78e93a799 Update Hungarian translation 2020-09-06 23:06:13 +00:00
Piotr Drąg
89a7867aa1 Update Polish translation 2020-09-06 16:13:34 +02:00
Claude Paroz
064b36cde3 Update French translation 2020-09-06 11:39:14 +02:00
Anders Jonsson
df88ff54a2 Update Swedish translation 2020-09-05 10:14:31 +00:00
64 changed files with 29448 additions and 27506 deletions

View File

@ -34,9 +34,9 @@ git format-patch HEAD^
Coding Style
~~~~~~~~~~~~
Code in Glade should follow the GNOME Programming Guidelines
(http://developer.gnome.org/doc/guides/programming-guidelines/),
basically this means being consistent with the sorrounding code.
Code in Glade should follow the GNU style of GNOME Programming Guidelines
(https://developer.gnome.org/programming-guidelines/stable/c-coding-style.html.en),
basically this means being consistent with the surrounding code.
The only exception is that we prefer having braces always on a new line
e.g.:

112
NEWS
View File

@ -1,49 +1,117 @@
============
Glade 3.37.0
Glade 3.38.2
============
- Build: Remove autotools (Iñigo Martínez)
- Plugins: Added GJS plugin for JavaScript objects support (NEW gjs-1.0 dependency)
- Issue #433: Implement survey using new backend at surveys.gnome.org
- Bump GTK dependency and toolkit target to 3.24
- Webkit plugin: bump dependency to 2.28
- Build: use gtk-mac-integration only when creating bundle (Tom Schoonjans)
- Ignore locale when saving numeric values (Alberto Fanjul)
- Remove config for external builds (Alberto Fanjul)
- Associate application/x-gtk-builder with glade's .desktop file (Caolán McNamara)
- GladeProjectProperties: improve toolkit target version selection
- Python plugin: fix linking error
- Plugins: Added GJS plugin for JavaScript objects support
- Tests: add python and javascript test case
- gtk: Add GtkScrolledWindow propagate-natural-width property (Corentin Noël)
- GladeScrolledWindowEditor: Squeeze width/height properties in two columns
- Gtk plugin: add missing displayable values
- Webkit2gtk plugin: add missing displayable values and sandbox web view
- Fix windows compatibility issues
- Fix build against Python 3.9 (Jan Alexander Steffens)
- Fix issue #355 "Make notification text selectable"
- Fix issue #53 "Can't choose a FileChooserDialog for a FileChooserButton"
- Fix issue #371 "Glade user survey not working (TLS error)"
============
Glade 3.38.1
============
- Fix issue #471 "XML not updated after adding element"
- Fix issue #480 "version field not always updated in XML"
- Fix issue #474 "GtkLabel: setup text attribute issues"
- Fix issue #479 "Glade 3.36.0 segfaults when opening a file"
- Fix issue pasting widget with ctrl+v in GtkGrid
Added/updated translations
- cs, courtesy of Marek Černocký
- de, courtesy of Stephan Woidowski
- es, courtesy of Daniel Mustieles
- eu, courtesy of Asier Sarasua Garmendia
- fr, courtesy of Thibault Martin
- gl, courtesy of Fran Dieguez
- hu, courtesy of Meskó Balázs
- id, courtesy of Kukuh Syafaat
- it, courtesy of Milo Casagrande
- lt, courtesy of Aurimas Černius
- pl, courtesy of Piotr Drąg
- pt_BR, courtesy of Rafael Fontenelle
- sl, courtesy of Matej Urbančič
- sv, courtesy of Anders Jonsson
- tr, courtesy of Emin Tufan Çetin
- uk, courtesy of Yuri Chornoivan
- zh_CN, courtesy of Mandy Wang
============
Glade 3.38.0
============
- Load template files as new GTypes and add them to "User templates" widget group automatically without the need of a catalog
- Added JavaScript widget support
- Use version data from gir to improve deprecation/target tests
- Implement survey using new backend at surveys.gnome.org
- Keep survey state in config file
- Associate with application/x-gtk-builder (Caolán McNamara)
- Project properties dialog improvements. (Use headerbar, stack and stach switcher, add warnings textview)
- Improve toolkit target version selection in project properties dialog
- Improve treemodel char data type handling
- Remove autotools (Iñigo Martínez)
- New gjs-1.0 1.64 dependency
- Bump Gtk dependency to 3.24
- Bump webkit2gtk dependency to 2.28
- Fixed all compiler/gir warnings
- Issue #385: GtkCellRendererText causes deprecated warnings for ghost properties
- Issue #444: show-emoji-icon is missing "minimum version"/since constraint
- Issue #367: Glade removes double/triple slashes from URLs
- Issue #452: GtkComboBox cell renderers editor is too hard to discover
- Issue #363: Toplevel windows are leaked when closing a project
- Issue #462: Crash when creating a new GtkAssistant and pressing it
- Issue #463: Specify file on command line
- Issue #461: Glade resets number of rows and columns in GtkGrid
- Issue #460: 3.37.0: test suite fails because glade uses incorrectly asserts in test units
- Issue #412: Fix inconsistent "top-level", "top level", "toplevel" spelling in translatable strings
- Issue #281: GladeProperty: Do not replace - with _
- Issue #389: GladeProject: show message on invalid GtkBuilder file
- Issue #446: GladeGtkListBox: fix size request issue
- Issue #432: GladeStandarStock, GladeStandarStockImage: fix get_type() functions for introspection
- dtd: Make init-function an element, not an attribute (Adrien Plazas)
- Issue #447: GladeGtkWindow: Fix CSD support
- Issue #456: Utils: use g_param_spec_uchar() for uchar types
- Gtk plugin / GladeDataModel: Improve treemodel char data type handling
- Issue #459: Gtk catalog: add GtkRecentChooserMenu to Display group
- Fixed all compiler/gir warnings
- Issue #433: Implement survey using new backend at surveys.gnome.org
- Build: use gtk-mac-integration only when creating bundle (Tom Schoonjans)
- Ignore locale when saving numeric values (Alberto Fanjul)
- Remove config for external builds (Alberto Fanjul)
- Python plugin: fix linking error
- Tests: add python and javascript test case
- gtk: Add GtkScrolledWindow propagate-natural-width property (Corentin Noël)
- GladeScrolledWindowEditor: Squeeze width/height properties in two columns
- Gtk plugin: add missing displayable values
- Webkit2gtk plugin: add missing displayable values and sandbox web view
- dtd: Make init-function an element, not an attribute (Adrien Plazas)
Added/updated translations
- ca, courtesy of Gil Forcada
- ca, courtesy of Miquel-Àngel Burgos i Fradeja
- cs, courtesy of Marek Černocký
- da, courtesy of Ask Hjorth Larsen
- da, courtesy of Last-Translator: scootergrisen
- de, courtesy of Tim Sabsch
- en_GB, courtesy of Bruce Cowan
- es, courtesy of Daniel Mustieles
- fr, courtesy of Charles Monzat
- eu, courtesy of Asier Sarasua Garmendia
- fr, courtesy of Thibault Martin
- gl, courtesy of Fran Dieguez
- hi, courtesy of Last-Translator:Sunny Sharma
- hu, courtesy of Balázs Úr
- id, courtesy of Kukuh Syafaat
- kk, courtesy of Baurzhan Muftakhidinov
- ko, courtesy of Changwoo Ryu
- lt, courtesy of Aurimas Černius
- pl, courtesy of Piotr Drąg
- pt_BR, courtesy of Rafael Fontenelle
- ro, courtesy of Florentina Mușat
- sl, courtesy of Matej Urbančič
- sv, courtesy of Anders Jonsson
- tr, courtesy of Emin Tufan Çetin
- uk, courtesy of Yuri Chornoivan
- zh_CN, courtesy of Mandy Wang
============
Glade 3.36.0

View File

@ -49,6 +49,7 @@ Requirements
Optional dependencies:
* glib-networking plugins for TLS support (Needed for survey)
* libwebkit2gtk-4.0 - For Webkit plugin
* python-gi - For Python plugin
* libgjs - For JavaScript plugin
@ -59,7 +60,7 @@ Download sources from git and build using meson/ninja
sudo apt install gcc meson libgtk-3-dev libxml2-dev libgirepository1.0-dev xsltproc
# Optional dependencies
sudo apt install libgjs-dev libwebkit2gtk-4.0-dev python-gi-dev
sudo apt install libgjs-dev libwebkit2gtk-4.0-dev python-gi-dev glib-networking
# Clone the source repository or download tarball
git clone https://gitlab.gnome.org/GNOME/glade.git

View File

@ -49,12 +49,42 @@
<project_group>GNOME</project_group>
<translation type="gettext">glade</translation>
<releases>
<release version="3.37.0" date="2020-07-13" type="development">
<release version="3.38.2" date="2020-11-20">
<description>
<p>Glade 3.37.0 Development release!</p>
<p>Glade 3.38.2 release!</p>
<ul>
<li>Fixed windows compatibility issues.</li>
<li>Fix build against Python 3.9 (Jan Alexander Steffens)</li>
</ul>
</description>
<issues>
<issue url="https://gitlab.gnome.org/GNOME/glade/-/issues/355">Issue #355 "Make notification text selectable"</issue>
<issue url="https://gitlab.gnome.org/GNOME/glade/-/issues/53">Issue #53 "Can't choose a FileChooserDialog for a FileChooserButton"</issue>
<issue url="https://gitlab.gnome.org/GNOME/glade/-/issues/371">Issue #371 "Glade user survey not working (TLS error)"</issue>
</issues>
</release>
<release version="3.38.1" date="2020-10-04">
<description>
<p>Glade 3.38.1 release!</p>
<ul>
<li>Fixed various stability and functionality issues.</li>
<li>Updated translations.</li>
</ul>
</description>
<issues>
<issue url="https://gitlab.gnome.org/GNOME/glade/-/issues/471">Issue #471: XML not updated after adding element</issue>
<issue url="https://gitlab.gnome.org/GNOME/glade/-/issues/480">Issue #480: version field not always updated in XML</issue>
<issue url="https://gitlab.gnome.org/GNOME/glade/-/issues/474">Issue #474: GtkLabel: setup text attribute issues</issue>
<issue url="https://gitlab.gnome.org/GNOME/glade/-/issues/479">Issue #479: Glade 3.36.0 segfaults when opening a file</issue>
</issues>
</release>
<release version="3.38.0" date="2020-09-12">
<description>
<p>Glade 3.38.0 release!</p>
<ul>
<li>Load template files as new GTypes and add them to "User templates" widget group automatically without the need of a catalog</li>
<li>Added JavaScript widget support</li>
<li>Use version data from gir to improve deprecation/target tests</li>
<li>Implement survey using new backend at surveys.gnome.org</li>
<li>Keep survey state in config file</li>
<li>Associate with application/x-gtk-builder (Caolán McNamara)</li>
@ -69,6 +99,9 @@
</ul>
</description>
<issues>
<issue url="https://gitlab.gnome.org/GNOME/glade/-/issues/385">Issue #385: GtkCellRendererText causes deprecated warnings for ghost properties</issue>
<issue url="https://gitlab.gnome.org/GNOME/glade/-/issues/444">Issue #444: show-emoji-icon is missing "minimum version"/since constraint</issue>
<issue url="https://gitlab.gnome.org/GNOME/glade/-/issues/367">Issue #367: Glade removes double/triple slashes from URLs</issue>
<issue url="https://gitlab.gnome.org/GNOME/glade/-/issues/452">Issue #452: GtkComboBox cell renderers editor is too hard to discover</issue>
<issue url="https://gitlab.gnome.org/GNOME/glade/-/issues/363">Issue #363: Toplevel windows are leaked when closing a project</issue>
<issue url="https://gitlab.gnome.org/GNOME/glade/-/issues/462">Issue #462: Crash when creating a new GtkAssistant and pressing it</issue>

View File

@ -178,10 +178,10 @@ build_package_paths (void)
# endif
if (!pixmaps_dir)
pixmaps_dir = g_build_filename (prefix, "share", PACKAGE, "pixmaps", NULL);
pixmaps_dir = g_build_filename (prefix, "share", PACKAGE_NAME, "pixmaps", NULL);
catalogs_dir = g_build_filename (prefix, "share", PACKAGE, "catalogs", NULL);
modules_dir = g_build_filename (prefix, "lib", PACKAGE, "modules", NULL);
catalogs_dir = g_build_filename (prefix, "share", PACKAGE_NAME, "catalogs", NULL);
modules_dir = g_build_filename (prefix, "lib", PACKAGE_NAME, "modules", NULL);
locale_dir = g_build_filename (prefix, "share", "locale", NULL);
bin_dir = g_build_filename (prefix, "bin", NULL);
lib_dir = g_build_filename (prefix, "lib", NULL);

View File

@ -204,9 +204,7 @@ glade_editor_property_commit_common (GladeEditorProperty *eprop,
if (glade_property_def_get_construct_only (priv->property_def))
{
gboolean focus_set = FALSE;
gtk_container_foreach (GTK_CONTAINER (priv->input),
deepest_child_grab_focus,
&focus_set);
deepest_child_grab_focus (priv->input, &focus_set);
}
}
@ -2951,7 +2949,7 @@ glade_eprop_object_populate_view_real (GtkTreeStore *model,
widget_name = glade_widget_get_display_name (widget);
if (parentless)
good_type = good_type && !GLADE_WIDGET_ADAPTOR_IS_TOPLEVEL (adaptor);
good_type = good_type && GLADE_WIDGET_ADAPTOR_IS_TOPLEVEL (adaptor);
if (good_type || has_decendant)
{

View File

@ -1,6 +1,6 @@
#include <winver.h>
GLADE_ICON ICON "../data/icons/glade.ico"
GLADE_ICON ICON "@SOURCE_ROOT@/data/icons/glade.ico"
VS_VERSION_INFO VERSIONINFO
FILEVERSION @GLADE_MAJOR_VERSION@,@GLADE_MINOR_VERSION@,@GLADE_MICRO_VERSION@,0
@ -15,7 +15,7 @@ VS_VERSION_INFO VERSIONINFO
VALUE "CompanyName", "The GNOME Foundation"
VALUE "FileDescription", "Glade Interface Designer @GLADE_MAJOR_VERSION@.@GLADE_MINOR_VERSION@.@GLADE_MICRO_VERSION@"
VALUE "FileVersion", "@GLADE_MAJOR_VERSION@.@GLADE_MINOR_VERSION@.@GLADE_MICRO_VERSION@.0"
VALUE "LegalCopyright", "Copyright © 2007 The GNOME Foundation"
VALUE "LegalCopyright", "Copyright 2007 The GNOME Foundation"
VALUE "OriginalFilename", "glade-previewer.exe"
VALUE "ProductName", "Glade Interface Designer"
VALUE "ProductVersion", "@GLADE_MAJOR_VERSION@.@GLADE_MINOR_VERSION@.@GLADE_MICRO_VERSION@.0"

View File

@ -129,7 +129,7 @@ typedef struct
GtkWidget *css_filechooser;
GtkWidget *css_checkbutton;
GHashTable *target_radios;
GHashTable *target_combos;
/* License */
GtkComboBox *license_comboboxtext;
@ -169,7 +169,7 @@ glade_project_properties_init (GladeProjectProperties *properties)
{
GladeProjectPropertiesPrivate *priv = GLADE_PROJECT_PROPERTIES_PRIVATE(properties);
priv->target_radios = g_hash_table_new_full (g_str_hash, g_str_equal,
priv->target_combos = g_hash_table_new_full (g_str_hash, g_str_equal,
g_free, NULL);
gtk_widget_init_template (GTK_WIDGET (properties));
@ -262,7 +262,7 @@ glade_project_properties_finalize (GObject *object)
GladeProjectProperties *properties = GLADE_PROJECT_PROPERTIES (object);
GladeProjectPropertiesPrivate *priv = GLADE_PROJECT_PROPERTIES_PRIVATE(properties);
g_hash_table_destroy (priv->target_radios);
g_hash_table_destroy (priv->target_combos);
G_OBJECT_CLASS (glade_project_properties_parent_class)->finalize (object);
}
@ -289,7 +289,7 @@ combobox_populate_from_catalog (GladeProjectProperties *properties,
version->major,
version->minor);
gtk_combo_box_text_insert_text (GTK_COMBO_BOX_TEXT(combobox), position, name);
gtk_combo_box_text_insert (GTK_COMBO_BOX_TEXT(combobox), position, name, name);
if (major == version->major && minor == version->minor)
gtk_combo_box_set_active (GTK_COMBO_BOX(combobox), position);
@ -299,7 +299,7 @@ combobox_populate_from_catalog (GladeProjectProperties *properties,
(gchar *) glade_catalog_get_name (catalog));
}
g_hash_table_insert (priv->target_radios,
g_hash_table_insert (priv->target_combos,
g_strdup (glade_catalog_get_name (catalog)),
combobox);
}
@ -1107,19 +1107,19 @@ project_targets_changed (GladeProject *project,
GladeCatalog *catalog = list->data;
GtkComboBox *combobox;
gint minor, major;
const gchar *name;
/* Skip if theres only one option */
if (g_list_length (glade_catalog_get_targets (catalog)) <= 1)
continue;
/* Fetch the version for this project */
glade_project_get_target_version (priv->project,
glade_catalog_get_name (catalog),
&major, &minor);
name = glade_catalog_get_name (catalog);
glade_project_get_target_version (priv->project, name, &major, &minor);
/* Fetch the radios for this catalog */
if (priv->target_radios &&
(combobox = g_hash_table_lookup (priv->target_radios, glade_catalog_get_name (catalog))) != NULL)
if (priv->target_combos &&
(combobox = g_hash_table_lookup (priv->target_combos, name)) != NULL)
{
g_autofree gchar *id = NULL;
id = g_strdup_printf ("%d.%d", major, minor);

View File

@ -38,7 +38,6 @@
#include <string.h>
#include <stdlib.h>
#include <glib/gi18n-lib.h>
#include <locale.h>
#include "glade.h"
#include "glade-widget.h"
@ -458,34 +457,32 @@ glade_property_def_make_string_from_objects (GladePropertyDef *
return string;
}
static locale_t
get_C_locale (void)
{
static gsize initialized = FALSE;
static locale_t C_locale = NULL;
if (g_once_init_enter (&initialized))
{
C_locale = newlocale (LC_ALL_MASK, "C", NULL);
g_once_init_leave (&initialized, TRUE);
}
return C_locale;
}
static gchar *
glade_dtostr (double number, gdouble epsilon)
{
char *str = g_malloc (G_ASCII_DTOSTR_BUF_SIZE);
char *str = g_malloc (G_ASCII_DTOSTR_BUF_SIZE + 1);
char real_number[G_ASCII_DTOSTR_BUF_SIZE + 1];
const gchar *decimal = NULL;
int i;
for (i = 0; i <= 20; i++)
g_ascii_dtostr (str, G_ASCII_DTOSTR_BUF_SIZE, number);
g_ascii_dtostr (real_number, G_ASCII_DTOSTR_BUF_SIZE, number);
decimal = g_strstr_len (real_number, G_ASCII_DTOSTR_BUF_SIZE, ".");
if (!decimal)
return str;
decimal++;
for (i = 1; i <= 20; i++)
{
gint len = (decimal - real_number) + i;
double rounded;
locale_t old_locale;
old_locale = uselocale (get_C_locale ());
snprintf (str, G_ASCII_DTOSTR_BUF_SIZE, "%.*f", i, number);
uselocale (old_locale);
/* add up to i decimal points */
str[len] = real_number[len];
str[len+1] = '\0';
rounded = g_ascii_strtod (str, NULL);
if (ABS (rounded - number) <= epsilon)
@ -503,15 +500,10 @@ glade_dtostr (double number, gdouble epsilon)
* Returns: A newly allocated string representation of @value
*/
gchar *
glade_property_def_make_string_from_gvalue (GladePropertyDef *
property_def,
const GValue * value)
glade_property_def_make_string_from_gvalue (GladePropertyDef *property_def,
const GValue *value)
{
gchar *string = NULL, **strv;
GObject *object;
GdkColor *color;
GdkRGBA *rgba;
GList *objects;
gchar *string = NULL;
G_GNUC_BEGIN_IGNORE_DEPRECATIONS
if (GLADE_PROPERTY_IS_PARAM_SPEC_VALUE_ARRAY (property_def->pspec))
@ -551,20 +543,26 @@ glade_property_def_make_string_from_gvalue (GladePropertyDef *
{
if (property_def->pspec->value_type == GDK_TYPE_COLOR)
{
color = g_value_get_boxed (value);
GdkColor *color = g_value_get_boxed (value);
if (color)
string = g_strdup_printf ("#%04x%04x%04x",
color->red, color->green, color->blue);
}
else if (property_def->pspec->value_type == GDK_TYPE_RGBA)
{
rgba = g_value_get_boxed (value);
GdkRGBA *rgba = g_value_get_boxed (value);
if (rgba)
string = gdk_rgba_to_string (rgba);
}
else if (property_def->pspec->value_type == PANGO_TYPE_COLOR)
{
PangoColor *color = g_value_get_boxed (value);
if (color)
string = pango_color_to_string (color);
}
else if (property_def->pspec->value_type == G_TYPE_STRV)
{
strv = g_value_get_boxed (value);
gchar **strv = g_value_get_boxed (value);
if (strv)
string = g_strjoinv ("\n", strv);
}
@ -614,13 +612,13 @@ glade_property_def_make_string_from_gvalue (GladePropertyDef *
}
else if (G_IS_PARAM_SPEC_OBJECT (property_def->pspec))
{
object = g_value_get_object (value);
GObject *object = g_value_get_object (value);
string =
glade_property_def_make_string_from_object (property_def, object);
}
else if (GLADE_IS_PARAM_SPEC_OBJECTS (property_def->pspec))
{
objects = g_value_get_boxed (value);
GList *objects = g_value_get_boxed (value);
string =
glade_property_def_make_string_from_objects (property_def,
objects);
@ -841,13 +839,11 @@ glade_property_def_make_objects_from_string (GladePropertyDef *
*/
GValue *
glade_property_def_make_gvalue_from_string (GladePropertyDef *property_def,
const gchar *string,
GladeProject *project)
const gchar *string,
GladeProject *project)
{
GValue *value = g_new0 (GValue, 1);
gchar **strv;
GdkColor color = { 0, };
GdkRGBA rgba = { 0, };
g_value_init (value, property_def->pspec->value_type);
@ -894,6 +890,7 @@ glade_property_def_make_gvalue_from_string (GladePropertyDef *property_def,
{
if (property_def->pspec->value_type == GDK_TYPE_COLOR)
{
GdkColor color;
if (gdk_color_parse (string, &color))
g_value_set_boxed (value, &color);
else
@ -901,11 +898,20 @@ glade_property_def_make_gvalue_from_string (GladePropertyDef *property_def,
}
else if (property_def->pspec->value_type == GDK_TYPE_RGBA)
{
GdkRGBA rgba;
if (gdk_rgba_parse (&rgba, string))
g_value_set_boxed (value, &rgba);
else
g_warning ("could not parse rgba colour name `%s'", string);
}
else if (property_def->pspec->value_type == PANGO_TYPE_COLOR)
{
PangoColor color;
if (pango_color_parse (&color, string))
g_value_set_boxed (value, &color);
else
g_warning ("could not parse pango color name `%s'", string);
}
else if (property_def->pspec->value_type == G_TYPE_STRV)
{
strv = g_strsplit (string, "\n", 0);

View File

@ -190,6 +190,13 @@ _glade_util_dialog_set_hig (GtkDialog *dialog)
gtk_box_set_spacing (GTK_BOX (action_area), 6);
}
static void
glade_util_ui_message_foreach (GtkWidget *widget, gpointer data)
{
if (GTK_IS_LABEL (widget))
gtk_label_set_selectable (GTK_LABEL (widget), TRUE);
}
/**
* glade_util_ui_message:
* @parent: a #GtkWindow cast as a #GtkWidget
@ -270,7 +277,11 @@ glade_util_ui_message (GtkWidget *parent,
dialog = gtk_message_dialog_new (GTK_WINDOW (parent),
GTK_DIALOG_DESTROY_WITH_PARENT,
message_type, buttons_type, NULL);
/* Make labels selectable */
gtk_container_forall (GTK_CONTAINER (gtk_message_dialog_get_message_area (GTK_MESSAGE_DIALOG (dialog))),
glade_util_ui_message_foreach, NULL);
gtk_message_dialog_set_markup (GTK_MESSAGE_DIALOG (dialog), string);
if (widget)
@ -1165,15 +1176,15 @@ glade_util_search_devhelp (const gchar *book,
GtkWidget *
glade_util_get_placeholder_from_pointer (GtkContainer *container)
{
GdkDeviceManager *manager;
GdkDisplay *display;
GdkDevice *device;
GdkWindow *window;
GdkSeat *seat;
if (((display = gtk_widget_get_display (GTK_WIDGET (container))) ||
(display = gdk_display_get_default ())) &&
(manager = gdk_display_get_device_manager (display)) &&
(device = gdk_device_manager_get_client_pointer (manager)) &&
(seat = gdk_display_get_default_seat (display)) &&
(device = gdk_seat_get_pointer (seat)) &&
(window = gdk_device_get_window_at_position (device, NULL, NULL)))
{
gpointer widget;
@ -2069,10 +2080,14 @@ glade_utils_get_pointer (GtkWidget *widget,
if (!device)
{
GdkEvent *event = gtk_get_current_event ();
GdkDisplay *dsp;
GdkSeat *seat;
device = gdk_event_get_device (event);
gdk_event_free (event);
if (((dsp = gtk_widget_get_display (widget)) ||
(dsp = gdk_display_get_default ())) &&
(seat = gdk_display_get_default_seat (dsp)) &&
(device = gdk_seat_get_pointer (seat)))
window = gdk_device_get_window_at_position (device, NULL, NULL);
}
g_return_if_fail (GDK_IS_DEVICE (device));

View File

@ -17,7 +17,7 @@ VS_VERSION_INFO VERSIONINFO
VALUE "FileDescription", "Glade Interface Designer @GLADE_MAJOR_VERSION@.@GLADE_MINOR_VERSION@.@GLADE_MICRO_VERSION@"
VALUE "FileVersion", "@GLADE_MAJOR_VERSION@.@GLADE_MINOR_VERSION@.@GLADE_MICRO_VERSION@.0"
VALUE "InternalName", "libgladeui-1-@GLADE_CURRENT_MINUS_AGE@"
VALUE "LegalCopyright", "Copyright © 2007 The GNOME Foundation"
VALUE "LegalCopyright", "Copyright 2007 The GNOME Foundation"
VALUE "OriginalFilename", "libgladeui-1-@GLADE_CURRENT_MINUS_AGE@.dll"
VALUE "ProductName", "Glade Interface Designer"
VALUE "ProductVersion", "@GLADE_MAJOR_VERSION@.@GLADE_MINOR_VERSION@.@GLADE_MICRO_VERSION@"

View File

@ -184,8 +184,8 @@ endif
if glade_system == 'windows'
rc = configure_file(
input: 'glade.rc.in',
output: '@BASELINE@',
input: 'gladeui.rc.in',
output: 'gladeui.rc',
configuration: rc_conf,
)
@ -193,8 +193,8 @@ if glade_system == 'windows'
ldflags += cc.get_supported_link_arguments([
# gmodule-export-2.0 on windows does not include -export-dynamic flag
'-export-dynamic',
'-no-undefined',
'-Wl,--export-all-symbols',
'-Wl,--no-undefined',
])
endif
@ -264,7 +264,7 @@ ldflags = []
if glade_system == 'windows'
rc = configure_file(
input: 'glade-previewer.rc.in',
output: '@BASELINE@',
output: 'glade-previewer.rc',
configuration: rc_conf,
)

File diff suppressed because it is too large Load Diff

View File

@ -2,13 +2,13 @@
# Copyright (C) 2009 glade3's COPYRIGHT HOLDER
# This file is distributed under the same license as the glade3 package.
#
# Marek Černocký <marek@manet.cz>, 2009, 2013, 2016, 2017, 2019.
# Marek Černocký <marek@manet.cz>, 2009, 2013, 2016, 2017, 2019, 2020.
#
msgid ""
msgstr ""
"Project-Id-Version: glade3 gnome-2-28\n"
"POT-Creation-Date: 2019-04-06 09:52+0000\n"
"PO-Revision-Date: 2019-04-10 16:09+0200\n"
"Project-Id-Version: glade3 glade-3.38\n"
"POT-Creation-Date: 2020-09-04 05:03+0000\n"
"PO-Revision-Date: 2020-09-09 19:49+0200\n"
"Last-Translator: Marek Černocký <marek@manet.cz>\n"
"Language-Team: Czech <gnome-cs-list@gnome.org>\n"
"Language: cs\n"
@ -169,12 +169,12 @@ msgstr "Ohlasy"
#: C/index.docbook:136
msgid ""
"To report a bug or make a suggestion regarding the Glade application or this "
"manual, follow the directions in the <ulink url=\"help:gnome-feedback\" type="
"\"help\">GNOME Feedback Page</ulink>."
"manual, visit the <ulink url=\"https://gitlab.gnome.org/GNOME/glade/issues/"
"\">GNOME Issue Tracker</ulink>."
msgstr ""
"Pokud chcete oznámit chybu nebo navrhnout vylepšení vztahující se k aplikaci "
"Glade nebo k této příručce, postupujte dle instrukcí na <ulink url=\"help:"
"gnome-feedback\" type=\"help\">stránce s ohlasy ke GNOME</ulink>."
"Glade nebo této příručce, navštivte <ulink url=\"https://gitlab.gnome.org/"
"GNOME/glade/issues/\">Systém pro sledování problémů GNOME</ulink>."
#. (itstool) path: article/indexterm
#: C/index.docbook:144
@ -259,11 +259,11 @@ msgstr "Nabídka <guimenu>Aplikace</guimenu>"
#. (itstool) path: listitem/para
#: C/index.docbook:181
msgid ""
"Choose <menuchoice> <guisubmenu>Programming</guisubmenu> <guimenuitem>Glade "
"Interface Designer</guimenuitem> </menuchoice>."
"Choose <menuchoice> <guisubmenu>Programming</guisubmenu> <guimenuitem>Glade</"
"guimenuitem> </menuchoice>."
msgstr ""
"Zvolte <menuchoice><guisubmenu>Programování</guisubmenu> "
"<guimenuitem>Návrhář rozhraní Glade</guimenuitem></menuchoice>."
"Zvolte <menuchoice><guisubmenu>Programování</guisubmenu> <guimenuitem>Glade"
"</guimenuitem></menuchoice>."
#. (itstool) path: varlistentry/term
#: C/index.docbook:189
@ -314,12 +314,12 @@ msgstr ""
#: C/index.docbook:205
msgid ""
"<imageobject><imagedata fileref=\"figures/main-window.png\" format=\"PNG\"/"
"></imageobject> <textobject><phrase>Shows the<application>Glade</"
"></imageobject> <textobject><phrase>Shows the <application>Glade</"
"application> window.</phrase></textobject>"
msgstr ""
"<imageobject><imagedata fileref=\"figures/main-window.png\" format=\"PNG\"/"
"></imageobject> <textobject><phrase>Ukazuje okno aplikace "
"<application>Glade</application>.</phrase></textobject>"
"></imageobject> <textobject><phrase>Ukazuje okno aplikace <application>Glade"
"</application>.</phrase></textobject>"
#. (itstool) path: sect2/para
#: C/index.docbook:212
@ -564,8 +564,8 @@ msgstr "Režim umisťování ovládacího prvku"
msgid ""
"To use widget placement mode, select a widget in the <guilabel>Palette</"
"guilabel> window. When you select most widgets, the pointer changes to a "
"pointer-plus-cross. You can then place the widget inside containers, top-"
"level widgets, and so on. After you place a widget, the mode returns to "
"pointer-plus-cross. You can then place the widget inside containers, "
"toplevel widgets, and so on. After you place a widget, the mode returns to "
"selection mode."
msgstr ""
"Do režimu umisťování ovládacího prvku se přepnete po vybraní ovládacího "
@ -576,16 +576,16 @@ msgstr ""
#. (itstool) path: varlistentry/term
#: C/index.docbook:335
msgid "Top-level placement mode"
msgid "Toplevel placement mode"
msgstr "Režim umisťování v nejvyšší úrovni"
#. (itstool) path: listitem/para
#: C/index.docbook:337
msgid ""
"To use top level placement mode, select a defined top-level widget in the "
"<guilabel>Palette</guilabel> window. When you select a top-level widget in "
"To use toplevel placement mode, select a defined toplevel widget in the "
"<guilabel>Palette</guilabel> window. When you select a toplevel widget in "
"the <guilabel>Palette</guilabel> window, the widget appears immediately on "
"your desktop. You can then edit the widget. After you select a top-level "
"your desktop. You can then edit the widget. After you select a toplevel "
"widget, the mode returns to selection mode."
msgstr ""
"Do režimu umisťování v nejvyšší úrovni se přepnete výběrem ovládacího prvku "

Binary file not shown.

Before

Width:  |  Height:  |  Size: 51 KiB

After

Width:  |  Height:  |  Size: 45 KiB

View File

@ -7,8 +7,8 @@
msgid ""
msgstr ""
"Project-Id-Version: glade-help\n"
"POT-Creation-Date: 2020-05-15 03:01+0000\n"
"PO-Revision-Date: 2020-05-17 10:49+0200\n"
"POT-Creation-Date: 2020-09-04 05:03+0000\n"
"PO-Revision-Date: 2020-09-06 15:55+0200\n"
"Last-Translator: Piotr Drąg <piotrdrag@gmail.com>\n"
"Language-Team: Polish <community-poland@mozilla.org>\n"
"Language: pl\n"
@ -257,12 +257,11 @@ msgstr "Menu <guimenu>Programy</guimenu>"
#. (itstool) path: listitem/para
#: C/index.docbook:181
msgid ""
"Choose <menuchoice> <guisubmenu>Programming</guisubmenu> <guimenuitem>Glade "
"Interface Designer</guimenuitem> </menuchoice>."
"Choose <menuchoice> <guisubmenu>Programming</guisubmenu> <guimenuitem>Glade</"
"guimenuitem> </menuchoice>."
msgstr ""
"Wybierz <menuchoice> <guisubmenu>Programowanie</guisubmenu> "
"<guimenuitem>Narzędzi do projektowania interfejsów Glade</guimenuitem> </"
"menuchoice>."
"<guimenuitem>Glade</guimenuitem> </menuchoice>."
#. (itstool) path: varlistentry/term
#: C/index.docbook:189
@ -563,8 +562,8 @@ msgstr "Tryb rozmieszczania widżetów"
msgid ""
"To use widget placement mode, select a widget in the <guilabel>Palette</"
"guilabel> window. When you select most widgets, the pointer changes to a "
"pointer-plus-cross. You can then place the widget inside containers, top-"
"level widgets, and so on. After you place a widget, the mode returns to "
"pointer-plus-cross. You can then place the widget inside containers, "
"toplevel widgets, and so on. After you place a widget, the mode returns to "
"selection mode."
msgstr ""
"Aby użyć trybu rozmieszczania widżetów, wybierz widżet w oknie "
@ -575,16 +574,16 @@ msgstr ""
#. (itstool) path: varlistentry/term
#: C/index.docbook:335
msgid "Top-level placement mode"
msgid "Toplevel placement mode"
msgstr "Tryb rozmieszczania najwyższego poziomu"
#. (itstool) path: listitem/para
#: C/index.docbook:337
msgid ""
"To use top level placement mode, select a defined top-level widget in the "
"<guilabel>Palette</guilabel> window. When you select a top-level widget in "
"To use toplevel placement mode, select a defined toplevel widget in the "
"<guilabel>Palette</guilabel> window. When you select a toplevel widget in "
"the <guilabel>Palette</guilabel> window, the widget appears immediately on "
"your desktop. You can then edit the widget. After you select a top-level "
"your desktop. You can then edit the widget. After you select a toplevel "
"widget, the mode returns to selection mode."
msgstr ""
"Aby użyć trybu rozmieszczania najwyższego poziomu, wybierz określony widżet "

View File

@ -3,15 +3,15 @@
# This file is distributed under the same license as the glade package.
# Joao Emanuel <joaoemanuel1981@gmail.com>, 2007.
# Enrico Nicoletto <liverig@gmail.com>, 2013.
# Rafael Fontenelle <rafaelff@gnome.org>, 2017-2019.
# Rafael Fontenelle <rafaelff@gnome.org>, 2017-2020.
#
msgid ""
msgstr ""
"Project-Id-Version: glade master\n"
"Report-Msgid-Bugs-To: https://bugzilla.gnome.org/enter_bug.cgi?"
"product=glade&keywords=I18N+L10N&component=general\n"
"POT-Creation-Date: 2019-11-11 15:28+0000\n"
"PO-Revision-Date: 2019-12-14 16:04-0300\n"
"POT-Creation-Date: 2020-09-04 05:03+0000\n"
"PO-Revision-Date: 2020-09-12 18:06-0300\n"
"Last-Translator: Rafael Fontenelle <rafaelff@gnome.org>\n"
"Language-Team: Brazilian Portuguese <gnome-pt_br-list@gnome.org>\n"
"Language: pt_BR\n"
@ -19,7 +19,7 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=(n > 1)\n"
"X-Generator: Gtranslator 3.32.0\n"
"X-Generator: Gtranslator 3.38.0\n"
#. Put one translator per line, in the form NAME <EMAIL>, YEAR1, YEAR2
msgctxt "_"
@ -171,14 +171,18 @@ msgstr "Comentários"
#. (itstool) path: legalnotice/para
#: C/index.docbook:136
#| msgid ""
#| "To report a bug or make a suggestion regarding this application or this "
#| "manual, you can submit them using <ulink url=\"https://gitlab.gnome.org/"
#| "GNOME/glade/issues/\" type=\"http\">our issue tracking system</ulink>."
msgid ""
"To report a bug or make a suggestion regarding the Glade application or this "
"manual, follow the directions in the <ulink url=\"help:gnome-feedback\" type="
"\"help\">GNOME Feedback Page</ulink>."
"manual, visit the <ulink url=\"https://gitlab.gnome.org/GNOME/glade/issues/"
"\">GNOME Issue Tracker</ulink>."
msgstr ""
"Para relatar um erro ou fazer uma sugestão sobre a aplicação Glade ou seu "
"manual, siga os passos na <ulink url=\"help:gnome-feedback\" type=\"help"
"\">Página de comentários (feedback) do GNOME</ulink>."
"Para relatar um erro ou fazer uma sugestão relacionada ao aplicativo Glade "
"ou a este manual, visite o <ulink url=\"https://gitlab.gnome.org/GNOME/glade/"
"issues/\">rastreador de problemas do GNOME</ulink>."
#. (itstool) path: article/indexterm
#: C/index.docbook:144
@ -259,12 +263,15 @@ msgstr "Menu <guimenu>Aplicações</guimenu>"
#. (itstool) path: listitem/para
#: C/index.docbook:181
#| msgid ""
#| "Choose <menuchoice> <guisubmenu>Programming</guisubmenu> "
#| "<guimenuitem>Glade Interface Designer</guimenuitem> </menuchoice>."
msgid ""
"Choose <menuchoice> <guisubmenu>Programming</guisubmenu> <guimenuitem>Glade "
"Interface Designer</guimenuitem> </menuchoice>."
"Choose <menuchoice> <guisubmenu>Programming</guisubmenu> <guimenuitem>Glade</"
"guimenuitem> </menuchoice>."
msgstr ""
"Vá até <menuchoice> <guisubmenu>Programação</guisubmenu> "
"<guimenuitem>Construtor de interfaces Glade</guimenuitem> </menuchoice>."
"Escolha <menuchoice> <guisubmenu>Programação</guisubmenu> "
"<guimenuitem>Glade</guimenuitem> </menuchoice>."
#. (itstool) path: varlistentry/term
#: C/index.docbook:189
@ -314,9 +321,13 @@ msgstr ""
#. (itstool) path: screenshot/mediaobject
#: C/index.docbook:205
#| msgid ""
#| "<imageobject><imagedata fileref=\"figures/main-window.png\" format=\"PNG"
#| "\"/></imageobject> <textobject><phrase>Shows the<application>Glade</"
#| "application> window.</phrase></textobject>"
msgid ""
"<imageobject><imagedata fileref=\"figures/main-window.png\" format=\"PNG\"/"
"></imageobject> <textobject><phrase>Shows the<application>Glade</"
"></imageobject> <textobject><phrase>Shows the <application>Glade</"
"application> window.</phrase></textobject>"
msgstr ""
"<imageobject><imagedata fileref=\"figures/main-window.png\" format=\"PNG\"/"
@ -563,11 +574,17 @@ msgstr "Modo de posicionamento do widget"
#. (itstool) path: listitem/para
#: C/index.docbook:320
#| msgid ""
#| "To use widget placement mode, select a widget in the <guilabel>Palette</"
#| "guilabel> window. When you select most widgets, the pointer changes to a "
#| "pointer-plus-cross. You can then place the widget inside containers, top-"
#| "level widgets, and so on. After you place a widget, the mode returns to "
#| "selection mode."
msgid ""
"To use widget placement mode, select a widget in the <guilabel>Palette</"
"guilabel> window. When you select most widgets, the pointer changes to a "
"pointer-plus-cross. You can then place the widget inside containers, top-"
"level widgets, and so on. After you place a widget, the mode returns to "
"pointer-plus-cross. You can then place the widget inside containers, "
"toplevel widgets, and so on. After you place a widget, the mode returns to "
"selection mode."
msgstr ""
"Para usar o modo de colocação do widget, selecione um widget na janela "
@ -578,16 +595,23 @@ msgstr ""
#. (itstool) path: varlistentry/term
#: C/index.docbook:335
msgid "Top-level placement mode"
#| msgid "Top-level placement mode"
msgid "Toplevel placement mode"
msgstr "Modo de posicionamento do nível superior"
#. (itstool) path: listitem/para
#: C/index.docbook:337
#| msgid ""
#| "To use top level placement mode, select a defined top-level widget in the "
#| "<guilabel>Palette</guilabel> window. When you select a top-level widget "
#| "in the <guilabel>Palette</guilabel> window, the widget appears "
#| "immediately on your desktop. You can then edit the widget. After you "
#| "select a top-level widget, the mode returns to selection mode."
msgid ""
"To use top level placement mode, select a defined top-level widget in the "
"<guilabel>Palette</guilabel> window. When you select a top-level widget in "
"To use toplevel placement mode, select a defined toplevel widget in the "
"<guilabel>Palette</guilabel> window. When you select a toplevel widget in "
"the <guilabel>Palette</guilabel> window, the widget appears immediately on "
"your desktop. You can then edit the widget. After you select a top-level "
"your desktop. You can then edit the widget. After you select a toplevel "
"widget, the mode returns to selection mode."
msgstr ""
"Para usar o modo de colocação de nível superior, selecione um determinado "
@ -821,10 +845,6 @@ msgstr ""
#. (itstool) path: sect1/para
#: C/index.docbook:459
#| msgid ""
#| "To report a bug or make a suggestion regarding this application or this "
#| "manual, you can submit them using <ulink url=\"http://bugzilla.gnome.org/"
#| "enter_bug.cgi?product=glade3\" type=\"http\">bugzilla</ulink>."
msgid ""
"To report a bug or make a suggestion regarding this application or this "
"manual, you can submit them using <ulink url=\"https://gitlab.gnome.org/"
@ -975,6 +995,15 @@ msgstr ""
"DA LICENÇA DE DOCUMENTAÇÃO LIVRE GNU COM O ENTENDIMENTO ADICIONAL DE QUE: <_:"
"orderedlist-1/>"
#~ msgid ""
#~ "To report a bug or make a suggestion regarding the Glade application or "
#~ "this manual, follow the directions in the <ulink url=\"help:gnome-feedback"
#~ "\" type=\"help\">GNOME Feedback Page</ulink>."
#~ msgstr ""
#~ "Para relatar um erro ou fazer uma sugestão sobre a aplicação Glade ou seu "
#~ "manual, siga os passos na <ulink url=\"help:gnome-feedback\" type=\"help"
#~ "\">Página de comentários (feedback) do GNOME</ulink>."
#~ msgid "2006"
#~ msgstr "2006"

View File

@ -8,10 +8,10 @@
# version will always know they are on a development release.
project(
'glade', 'c',
version: '3.37.0',
version: '3.38.2',
license: 'GPL2',
default_options: 'buildtype=debugoptimized',
meson_version: '>= 0.49.0',
meson_version: '>= 0.53.0',
)
glade_name = meson.project_name()
@ -48,8 +48,8 @@ gladeui_libname = '@0@-@1@'.format(gladeui_name, gladeui_version)
# If any interfaces have been removed since the last public release, then set gladeui_age to 0.
# Reference: http://www.gnu.org/software/libtool/manual/libtool.html#Versioning
gladeui_revision = 0
gladeui_current = 12
gladeui_revision = 2
gladeui_current = 13
gladeui_age = 0
gladeui_current_minus_age = gladeui_current - gladeui_age
gladeui_libversion = '@0@.@1@.@2@'.format(gladeui_current_minus_age, gladeui_age, gladeui_revision)
@ -65,6 +65,8 @@ glade_unstable = glade_minor_version.is_odd()
gnome = import('gnome')
i18n = import('i18n')
pkg = import('pkgconfig')
# NOTE: On windows we only target MSYS2/mingw
windows = import('windows')
source_root = meson.current_source_dir()
@ -110,7 +112,8 @@ endif
add_project_arguments(common_flags, language: 'c')
# Check required libraries
glib_dep = dependency('glib-2.0', version: '>= 2.53.2')
glib_dep = dependency('glib-2.0', version: '>= 2.64.0')
gio_dep = dependency('gio-2.0', version: '>= 2.64.0')
gmodule_dep = dependency('gmodule-2.0')
gmodule_export_dep = dependency('gmodule-export-2.0')
gtk_dep = dependency('gtk+-3.0', version: '>= 3.24.0')
@ -150,7 +153,7 @@ pygobject_version = '3.8.0'
pygobject_dep = dependency('pygobject-3.0', version: '>= ' + pygobject_version, required: get_option('python'))
have_python = pygobject_dep.found()
if have_python
python_dep = dependency('python-3.8-embed', version: '>= 3.8')
python_dep = import('python').find_installation().dependency(embed: true)
version_array = pygobject_version.split('.')
config_h.set('PYGOBJECT_REQUIRED_MAJOR', version_array[0].to_int())
@ -181,6 +184,7 @@ if glade_system == 'windows'
rc_conf.set('GLADE_MINOR_VERSION', glade_minor_version)
rc_conf.set('GLADE_MICRO_VERSION', glade_micro_version)
rc_conf.set('GLADE_CURRENT_MINUS_AGE', gladeui_current_minus_age)
rc_conf.set('SOURCE_ROOT', source_root)
endif
subdir('po')
@ -211,6 +215,17 @@ meson.add_install_script(
glade_datadir,
)
tls_backend_support_src = '''
#include <stdio.h>
#include <gio/gio.h>
int main(int argc, char **argv)
{
printf ("%s\n", g_tls_backend_supports_tls (g_tls_backend_get_default ()) ? "true" : "false");
return 0;
}
'''
tls_backend_support = cc.run(tls_backend_support_src, dependencies: gio_dep).stdout()
output = '\nConfiguration:\n\n'
output += '\tCompiler: ' + cc.get_id() + '\n'
output += '\tSource code location: ' + source_root + '\n'
@ -222,5 +237,6 @@ output += '\tGladeui Catalog: ' + enable_gladeui.to_string() + '\n'
output += '\tWebKit2GTK+ Catalog: ' + have_webkit2gtk.to_string() + '\n'
output += '\tIntrospection Data: ' + enable_introspection.to_string() + '\n\n'
output += '\tBuild Reference Manual: ' + enable_gtk_doc.to_string() + '\n'
output += '\tBuild Manual Pages: ' + enable_man.to_string()
output += '\tBuild Manual Pages: ' + enable_man.to_string() + '\n'
output += '\tTLS backend support: ' + tls_backend_support
message(output)

View File

@ -707,7 +707,8 @@ value_icon_activate (GtkCellRendererToggle *cell_renderer,
GtkTreeIter iter;
PangoAttrType type;
AttrEditType edit_type;
GdkRGBA color = {0,};
PangoColor color;
GdkRGBA rgba;
gchar *text = NULL, *new_text;
/* Find type etc */
@ -726,25 +727,25 @@ value_icon_activate (GtkCellRendererToggle *cell_renderer,
dialog = gtk_color_chooser_dialog_new (_("Select a color"),
GTK_WINDOW (glade_app_get_window ()));
/* Get response etc... */
if (text && gdk_rgba_parse (&color, text))
gtk_color_chooser_set_rgba (GTK_COLOR_CHOOSER (dialog), &color);
if (text && pango_color_parse (&color, text))
{
rgba.red = color.red / 65535.0;
rgba.green = color.green / 65535.0;
rgba.blue = color.blue / 65535.0;
rgba.alpha = 1.0;
gtk_color_chooser_set_rgba (GTK_COLOR_CHOOSER (dialog), &rgba);
}
if (gtk_dialog_run (GTK_DIALOG (dialog)) == GTK_RESPONSE_OK)
{
gtk_color_chooser_get_rgba (GTK_COLOR_CHOOSER (dialog), &color);
gtk_color_chooser_get_rgba (GTK_COLOR_CHOOSER (dialog), &rgba);
color.red = (gint16) (rgba.red * 65535);
color.green = (gint16) (rgba.green * 65535);
color.blue = (gint16) (rgba.blue * 65535);
/* Use PangoColor string format */
if (((guint8)(color.red * 0xFF)) * 0x101 == (guint16)(color.red * 0xFFFF) &&
((guint8)(color.green * 0xFF)) * 0x101 == (guint16)(color.green * 0xFFFF) &&
((guint8)(color.blue * 0xFF)) * 0x101 == (guint16)(color.blue * 0xFFFF))
new_text = g_strdup_printf ("#%02X%02X%02X",
(guint8)(color.red * 0xFF),
(guint8)(color.green * 0xFF),
(guint8)(color.blue * 0xFF));
else
new_text = g_strdup_printf ("#%04X%04X%04X",
(guint16)(color.red * 0xFFFF),
(guint16)(color.green * 0xFFFF),
(guint16)(color.blue * 0xFFFF));
new_text = pango_color_to_string (&color);
gtk_list_store_set (GTK_LIST_STORE (eprop_attrs->model), &iter,
COLUMN_TEXT, new_text,

View File

@ -43,27 +43,26 @@ glade_gtk_action_bar_create_editable (GladeWidgetAdaptor * adaptor,
}
static void
glade_gtk_action_bar_parse_finished (GladeProject * project,
GObject * object)
glade_gtk_action_bar_parse_finished (GladeProject *project, GObject *object)
{
GladeWidget *gbox;
gbox = glade_widget_get_from_gobject (object);
glade_widget_property_set (gbox, "use-center-child", gtk_action_bar_get_center_widget (GTK_ACTION_BAR (object)) != NULL);
GladeWidget *gbox = glade_widget_get_from_gobject (object);
glade_widget_property_set (gbox, "use-center-child",
gtk_action_bar_get_center_widget (GTK_ACTION_BAR (object)) != NULL);
}
void
glade_gtk_action_bar_post_create (GladeWidgetAdaptor * adaptor,
GObject * container,
GladeCreateReason reason)
glade_gtk_action_bar_post_create (GladeWidgetAdaptor *adaptor,
GObject *container,
GladeCreateReason reason)
{
GladeWidget *gwidget = glade_widget_get_from_gobject (container);
GladeProject *project = glade_widget_get_project (gwidget);
if (reason == GLADE_CREATE_LOAD)
g_signal_connect (project, "parse-finished",
G_CALLBACK (glade_gtk_action_bar_parse_finished),
container);
if (project && glade_project_is_loading (project))
g_signal_connect_object (project, "parse-finished",
G_CALLBACK (glade_gtk_action_bar_parse_finished),
container,
0);
}
static gint

View File

@ -201,11 +201,12 @@ glade_gtk_assistant_post_create (GladeWidgetAdaptor *adaptor,
/* Chain Up first */
GLADE_WIDGET_ADAPTOR_GET_ADAPTOR_CLASS (GTK_TYPE_WINDOW)->post_create (adaptor, object, reason);
if (reason == GLADE_CREATE_LOAD)
if (project && glade_project_is_loading (project))
{
g_signal_connect (project, "parse-finished",
G_CALLBACK (glade_gtk_assistant_parse_finished),
object);
g_signal_connect_object (project, "parse-finished",
G_CALLBACK (glade_gtk_assistant_parse_finished),
object,
0);
}
else if (reason == GLADE_CREATE_USER)
{

View File

@ -57,9 +57,9 @@ glade_gtk_box_create_editable (GladeWidgetAdaptor *adaptor,
}
static void
glade_gtk_box_parse_finished (GladeProject *project, GladeWidget *gbox)
glade_gtk_box_parse_finished (GladeProject *project, GObject *box)
{
GObject *box = glade_widget_get_object (gbox);
GladeWidget *gbox = glade_widget_get_from_gobject (box);
glade_widget_property_set (gbox, "use-center-child",
gtk_box_get_center_widget (GTK_BOX (box)) != NULL);
@ -86,11 +86,11 @@ glade_gtk_box_post_create (GladeWidgetAdaptor *adaptor,
g_signal_connect (G_OBJECT (gwidget), "configure-end",
G_CALLBACK (glade_gtk_box_configure_end), container);
if (reason == GLADE_CREATE_LOAD)
if (project && glade_project_is_loading (project))
{
g_signal_connect_object (project, "parse-finished",
G_CALLBACK (glade_gtk_box_parse_finished),
gwidget, 0);
container, 0);
}
}

View File

@ -269,9 +269,9 @@ glade_gtk_cell_renderer_write_widget (GladeWidgetAdaptor *adaptor,
}
static void
glade_gtk_cell_renderer_parse_finished (GladeProject *project,
GladeWidget *widget)
glade_gtk_cell_renderer_parse_finished (GladeProject *project, GObject *object)
{
GladeWidget *widget = glade_widget_get_from_gobject (object);
GladeProperty *property;
GList *l;
static gint attr_len = 0, use_attr_len = 0;
@ -321,9 +321,10 @@ glade_gtk_cell_renderer_read_widget (GladeWidgetAdaptor *adaptor,
/* First chain up and read in all the properties... */
GLADE_WIDGET_ADAPTOR_GET_ADAPTOR_CLASS (G_TYPE_OBJECT)->read_widget (adaptor, widget, node);
g_signal_connect (glade_widget_get_project (widget), "parse-finished",
G_CALLBACK (glade_gtk_cell_renderer_parse_finished),
widget);
g_signal_connect_object (glade_widget_get_project (widget), "parse-finished",
G_CALLBACK (glade_gtk_cell_renderer_parse_finished),
glade_widget_get_object (widget),
0);
}
static gboolean

View File

@ -50,6 +50,7 @@ glade_gtk_container_add_verify (GladeWidgetAdaptor *adaptor,
gboolean user_feedback)
{
GladeWidget *gwidget = glade_widget_get_from_gobject (container);
GtkWidget *bin_child;
if (GTK_IS_WINDOW (child))
{
@ -82,7 +83,11 @@ glade_gtk_container_add_verify (GladeWidgetAdaptor *adaptor,
return FALSE;
}
else if (GLADE_WIDGET_ADAPTOR_USE_PLACEHOLDERS (adaptor) &&
glade_util_count_placeholders (gwidget) == 0)
/* Special case GtkBin since Windows can hace a placeholder in the titlebar */
((GTK_IS_BIN (container) &&
(bin_child = gtk_bin_get_child (GTK_BIN (container))) &&
!GLADE_IS_PLACEHOLDER(bin_child)) ||
glade_util_count_placeholders (gwidget) == 0))
{
if (user_feedback)
glade_util_ui_message (glade_app_get_window (),

View File

@ -199,6 +199,7 @@ glade_gtk_grid_post_create (GladeWidgetAdaptor *adaptor,
GladeCreateReason reason)
{
GladeWidget *gwidget = glade_widget_get_from_gobject (container);
GladeProject *project = glade_widget_get_project (gwidget);
g_signal_connect (G_OBJECT (gwidget), "configure-child",
G_CALLBACK (glade_gtk_grid_configure_child), container);
@ -209,10 +210,11 @@ glade_gtk_grid_post_create (GladeWidgetAdaptor *adaptor,
g_signal_connect (G_OBJECT (gwidget), "configure-end",
G_CALLBACK (glade_gtk_grid_configure_end), container);
if (reason == GLADE_CREATE_LOAD)
g_signal_connect (glade_widget_get_project (gwidget), "parse-finished",
G_CALLBACK (glade_gtk_grid_parse_finished),
container);
if (project && glade_project_is_loading (project))
g_signal_connect_object (project, "parse-finished",
G_CALLBACK (glade_gtk_grid_parse_finished),
container,
0);
}
void

View File

@ -70,9 +70,7 @@ static void
glade_gtk_header_bar_parse_finished (GladeProject *project,
GObject *object)
{
GladeWidget *gbox;
gbox = glade_widget_get_from_gobject (object);
GladeWidget *gbox = glade_widget_get_from_gobject (object);
glade_widget_property_set (gbox, "size", glade_gtk_header_bar_get_num_children (object));
glade_widget_property_set (gbox, "use-custom-title", gtk_header_bar_get_custom_title (GTK_HEADER_BAR (object)) != NULL);
}
@ -85,11 +83,12 @@ glade_gtk_header_bar_post_create (GladeWidgetAdaptor *adaptor,
GladeWidget *parent = glade_widget_get_from_gobject (container);
GladeProject *project = glade_widget_get_project (parent);
if (reason == GLADE_CREATE_LOAD)
if (project && glade_project_is_loading (project))
{
g_signal_connect (project, "parse-finished",
G_CALLBACK (glade_gtk_header_bar_parse_finished),
container);
g_signal_connect_object (project, "parse-finished",
G_CALLBACK (glade_gtk_header_bar_parse_finished),
container,
0);
}
else if (reason == GLADE_CREATE_USER)
{

View File

@ -139,9 +139,9 @@ glade_gtk_image_menu_item_set_property (GladeWidgetAdaptor *adaptor,
}
static void
glade_gtk_image_menu_item_parse_finished (GladeProject *project,
GladeWidget *widget)
glade_gtk_image_menu_item_parse_finished (GladeProject *project, GObject *object)
{
GladeWidget *widget = glade_widget_get_from_gobject (object);
GladeWidget *gimage;
GtkWidget *image = NULL;
glade_widget_property_get (widget, "image", &image);
@ -181,11 +181,11 @@ glade_gtk_image_menu_item_read_widget (GladeWidgetAdaptor *adaptor,
property = glade_widget_get_property (widget, "use-stock");
glade_property_sync (property);
/* Run this after the load so that image is resolved. */
g_signal_connect (G_OBJECT (glade_widget_get_project (widget)), "parse-finished",
G_CALLBACK (glade_gtk_image_menu_item_parse_finished),
widget);
g_signal_connect_object (glade_widget_get_project (widget), "parse-finished",
G_CALLBACK (glade_gtk_image_menu_item_parse_finished),
glade_widget_get_object (widget),
0);
}

View File

@ -68,7 +68,7 @@ glade_gtk_label_set_attributes (GObject *object, const GValue *value)
PangoLanguage *language;
PangoFontDescription *font_desc;
PangoAttrList *attrs = NULL;
GdkColor *color;
PangoColor *color;
GList *list;
for (list = g_value_get_boxed (value); list; list = list->next)

View File

@ -170,25 +170,27 @@ glade_listbox_get_placeholder (GtkListBox *list_box) {
}
static void
glade_gtk_listbox_parse_finished (GladeProject *project, GladeWidget *gbox)
glade_gtk_listbox_parse_finished (GladeProject *project, GObject *box)
{
GObject *box = glade_widget_get_object (gbox);
glade_widget_property_set (gbox, "use-placeholder", glade_listbox_get_placeholder (GTK_LIST_BOX (box)) != NULL);
GladeWidget *gbox = glade_widget_get_from_gobject (box);
glade_widget_property_set (gbox, "use-placeholder",
glade_listbox_get_placeholder (GTK_LIST_BOX (box)) != NULL);
}
void
glade_gtk_listbox_post_create (GladeWidgetAdaptor *adaptor,
GObject *container,
GladeCreateReason reason)
GObject *container,
GladeCreateReason reason)
{
GladeWidget *gwidget = glade_widget_get_from_gobject (container);
GladeProject *project = glade_widget_get_project (gwidget);
if (reason == GLADE_CREATE_LOAD)
if (project && glade_project_is_loading (project))
{
g_signal_connect_object (project, "parse-finished",
G_CALLBACK (glade_gtk_listbox_parse_finished),
gwidget, 0);
container,
0);
}
}

View File

@ -413,10 +413,11 @@ glade_gtk_notebook_post_create (GladeWidgetAdaptor *adaptor,
g_signal_connect (G_OBJECT (notebook), "switch-page",
G_CALLBACK (glade_gtk_notebook_switch_page), NULL);
if (reason == GLADE_CREATE_LOAD)
g_signal_connect (project, "parse-finished",
G_CALLBACK (glade_gtk_notebook_parse_finished),
notebook);
if (project && glade_project_is_loading (project))
g_signal_connect_object (project, "parse-finished",
G_CALLBACK (glade_gtk_notebook_parse_finished),
notebook,
0);
}
static gint

View File

@ -167,10 +167,11 @@ glade_gtk_popover_menu_post_create (GladeWidgetAdaptor *adaptor,
GladeWidget *parent = glade_widget_get_from_gobject (container);
GladeProject *project = glade_widget_get_project (parent);
if (reason == GLADE_CREATE_LOAD)
g_signal_connect (project, "parse-finished",
G_CALLBACK (glade_gtk_popover_menu_parse_finished),
container);
if (project && glade_project_is_loading (project))
g_signal_connect_object (project, "parse-finished",
G_CALLBACK (glade_gtk_popover_menu_parse_finished),
container,
0);
g_signal_connect (G_OBJECT (parent), "notify::project",
G_CALLBACK (glade_gtk_popover_menu_project_changed), NULL);

View File

@ -157,9 +157,9 @@ glade_gtk_tool_button_set_property (GladeWidgetAdaptor *adaptor,
}
static void
glade_gtk_tool_button_parse_finished (GladeProject *project,
GladeWidget *widget)
glade_gtk_tool_button_parse_finished (GladeProject *project, GObject *object)
{
GladeWidget *widget = glade_widget_get_from_gobject (object);
gchar *stock_str = NULL, *icon_name = NULL;
gint stock_id = 0;
GtkWidget *label_widget = NULL, *image_widget = NULL;
@ -207,7 +207,8 @@ glade_gtk_tool_button_read_widget (GladeWidgetAdaptor *adaptor,
GLADE_WIDGET_ADAPTOR_GET_ADAPTOR_CLASS (GTK_TYPE_TOOL_ITEM)->read_widget (adaptor, widget, node);
/* Run this after the load so that icon-widget is resolved. */
g_signal_connect (glade_widget_get_project (widget),
"parse-finished",
G_CALLBACK (glade_gtk_tool_button_parse_finished), widget);
g_signal_connect_object (glade_widget_get_project (widget), "parse-finished",
G_CALLBACK (glade_gtk_tool_button_parse_finished),
glade_widget_get_object (widget),
0);
}

View File

@ -71,9 +71,9 @@ glade_gtk_tool_item_group_remove_child (GladeWidgetAdaptor *adaptor,
}
static void
glade_gtk_tool_item_group_parse_finished (GladeProject *project,
GladeWidget *widget)
glade_gtk_tool_item_group_parse_finished (GladeProject *project, GObject *object)
{
GladeWidget *widget = glade_widget_get_from_gobject (object);
GtkWidget *label_widget = NULL;
glade_widget_property_get (widget, "label-widget", &label_widget);
@ -97,9 +97,11 @@ glade_gtk_tool_item_group_read_widget (GladeWidgetAdaptor *adaptor,
GLADE_WIDGET_ADAPTOR_GET_ADAPTOR_CLASS (GTK_TYPE_TOOL_ITEM)->read_widget (adaptor, widget, node);
/* Run this after the load so that icon-widget is resolved. */
g_signal_connect (glade_widget_get_project (widget),
"parse-finished",
G_CALLBACK (glade_gtk_tool_item_group_parse_finished), widget);
g_signal_connect_object (glade_widget_get_project (widget),
"parse-finished",
G_CALLBACK (glade_gtk_tool_item_group_parse_finished),
glade_widget_get_object (widget),
0);
}
static void

View File

@ -932,6 +932,18 @@ glade_gtk_widget_action_activate (GladeWidgetAdaptor *adaptor,
if ((gnew_parent =
glade_command_create (adaptor, gparent, NULL, project)) != NULL)
{
/* We might need to add a viewport */
if (new_type == GTK_TYPE_SCROLLED_WINDOW &&
!GTK_IS_SCROLLABLE (object))
{
GladeWidgetAdaptor *viewport =
glade_widget_adaptor_get_by_type (GTK_TYPE_VIEWPORT);
gnew_parent = glade_command_create (viewport,
gnew_parent,
NULL,
project);
}
/* Now we created the new parent, if gwidget had a parentless widget reference...
* set that reference to the new parent instead */
if (property)

View File

@ -84,9 +84,10 @@ glade_gtk_window_post_create (GladeWidgetAdaptor *adaptor,
if (reason == GLADE_CREATE_LOAD)
{
g_signal_connect (project, "parse-finished",
G_CALLBACK (glade_gtk_window_parse_finished),
object);
g_signal_connect_object (project, "parse-finished",
G_CALLBACK (glade_gtk_window_parse_finished),
object,
0);
}
else if (reason == GLADE_CREATE_USER &&
gtk_bin_get_child (GTK_BIN (object)) == NULL)

View File

@ -5439,6 +5439,7 @@
<glade-widget-group name="gtk-deprecated" title="Deprecated">
<default-palette-state expanded="False"/>
<glade-widget-class-ref name="GtkTable"/>
<glade-widget-class-ref name="GtkColorSelectionDialog"/>
<glade-widget-class-ref name="GtkFontSelectionDialog"/>
<glade-widget-class-ref name="GtkColorSelection"/>

View File

@ -1,6 +1,9 @@
ldflags = []
if glade_system == 'windows'
ldflags += cc.get_supported_link_arguments('-no-undefined')
ldflags += cc.get_supported_link_arguments(
'-Wl,--export-all-symbols',
'-Wl,--no-undefined',
)
endif
plugins_kwargs = {

2910
po/ca.po

File diff suppressed because it is too large Load Diff

3679
po/cs.po

File diff suppressed because it is too large Load Diff

3538
po/da.po

File diff suppressed because it is too large Load Diff

3601
po/de.po

File diff suppressed because it is too large Load Diff

1905
po/es.po

File diff suppressed because it is too large Load Diff

1890
po/eu.po

File diff suppressed because it is too large Load Diff

2451
po/fr.po

File diff suppressed because it is too large Load Diff

1930
po/gl.po

File diff suppressed because it is too large Load Diff

3614
po/hu.po

File diff suppressed because it is too large Load Diff

1889
po/id.po

File diff suppressed because it is too large Load Diff

6755
po/it.po

File diff suppressed because it is too large Load Diff

1823
po/kk.po

File diff suppressed because it is too large Load Diff

1916
po/lt.po

File diff suppressed because it is too large Load Diff

3450
po/pl.po

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

1892
po/sl.po

File diff suppressed because it is too large Load Diff

3583
po/sv.po

File diff suppressed because it is too large Load Diff

1916
po/tr.po

File diff suppressed because it is too large Load Diff

1892
po/uk.po

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -1,11 +1,11 @@
/*
* Copyright (C) 2014, 2020 Juan Pablo Ugarte.
*
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as
* published by the Free Software Foundation; either version 2 of the
* License, or (at your option) any later version.
*
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
@ -22,6 +22,7 @@
#include <glade-http.h>
#include <string.h>
#include <stdio.h>
#include <stdlib.h>
struct _GladeHTTPPrivate
{

View File

@ -6,5 +6,6 @@
<file compressed="true" preprocess="xml-stripblanks">glade-registration.glade</file>
<file compressed="true">glade-window.css</file>
<file compressed="true">glade-registration.css</file>
<file compressed="false">guido.png</file>
</gresource>
</gresources>

View File

@ -2497,6 +2497,13 @@ glade_window_registration_notify_user (GladeWindow *window)
g_return_if_fail (GLADE_IS_WINDOW (window));
priv = window->priv;
if (!g_tls_backend_supports_tls (g_tls_backend_get_default ()))
{
g_message ("No TLS support in GIO, Registration & User Survey disabled. (missing glib-networking package)");
actions_set_enabled (window, "registration", FALSE);
return;
}
g_object_get (priv->registration,
"completed", &completed,
"skip-reminder", &skip_reminder,

View File

@ -29,6 +29,65 @@ Author: Juan Pablo Ugarte
<!-- interface-description A user interface designer for GTK+ and GNOME. -->
<!-- interface-copyright 2012-2018 Juan Pablo Ugarte -->
<!-- interface-authors Juan Pablo Ugarte -->
<object class="GtkPopover" id="guido_popover">
<property name="can-focus">False</property>
<child>
<object class="GtkBox">
<property name="visible">True</property>
<property name="can-focus">False</property>
<property name="margin-start">8</property>
<property name="margin-end">8</property>
<property name="margin-top">4</property>
<child>
<object class="GtkImage">
<property name="visible">True</property>
<property name="can-focus">False</property>
<property name="valign">end</property>
<property name="resource">/org/gnome/glade/guido.png</property>
</object>
<packing>
<property name="expand">False</property>
<property name="fill">True</property>
<property name="position">0</property>
</packing>
</child>
<child>
<object class="GtkLabel">
<property name="visible">True</property>
<property name="can-focus">False</property>
<property name="valign">center</property>
<property name="label" translatable="yes" context="This is to honor a professor that passed away last year and appears in a popover when you click on the button that says &quot;RIP Guido&quot;" comments="The last sentence in quotes is in spanish and does not need to be translated.">Guido was one of my professors at Rosario
National University of Argentina.
He introduced me to C, Linux, free software...
He always had extra time to explain one more thing
and help you figure out things by yourself.
Always made a joke in the right moment keeping
things interesting and fun.
Master of intentionally misconstrued sayings.
Always carried a stack of books under his arm.
Loved Guinness beer.
All he ever wanted was make you think!
"Alégrate! Mañana sera peor."
Juan Pablo</property>
</object>
<packing>
<property name="expand">False</property>
<property name="fill">True</property>
<property name="position">1</property>
</packing>
</child>
</object>
</child>
</object>
<object class="GtkPopoverMenu" id="main_menu">
<property name="can-focus">False</property>
<child>
@ -177,19 +236,19 @@ Author: Juan Pablo Ugarte
<property name="visible">True</property>
<property name="can-focus">False</property>
<property name="halign">center</property>
<property name="valign">center</property>
<property name="orientation">vertical</property>
<child>
<object class="GtkImage">
<property name="name">glade-brand-image</property>
<property name="visible">True</property>
<property name="can-focus">False</property>
<property name="valign">end</property>
<property name="margin-top">64</property>
<property name="pixel-size">250</property>
<property name="icon-name">glade-brand-symbolic</property>
</object>
<packing>
<property name="expand">False</property>
<property name="expand">True</property>
<property name="fill">True</property>
<property name="position">0</property>
</packing>
@ -220,6 +279,35 @@ Author: Juan Pablo Ugarte
<property name="position">2</property>
</packing>
</child>
<child>
<object class="GtkMenuButton">
<property name="visible">True</property>
<property name="can-focus">False</property>
<property name="focus-on-click">False</property>
<property name="receives-default">True</property>
<property name="halign">center</property>
<property name="valign">end</property>
<property name="margin-bottom">4</property>
<property name="relief">none</property>
<property name="popover">guido_popover</property>
<child>
<object class="GtkLabel">
<property name="visible">True</property>
<property name="can-focus">False</property>
<property name="label" translatable="yes" context="Button label in the bottom of main window that triggers a popover">&lt;small&gt;In memory of an extraordinary
person and professor
R.I.P Guido Macchi&lt;/small&gt;</property>
<property name="use-markup">True</property>
<property name="justify">center</property>
</object>
</child>
</object>
<packing>
<property name="expand">True</property>
<property name="fill">True</property>
<property name="position">3</property>
</packing>
</child>
</object>
<packing>
<property name="name">page0</property>

View File

@ -1,6 +1,6 @@
#include <winver.h>
GLADE_ICON ICON "../data/icons/glade.ico"
GLADE_ICON ICON "@SOURCE_ROOT@/data/icons/glade.ico"
VS_VERSION_INFO VERSIONINFO
FILEVERSION @GLADE_MAJOR_VERSION@,@GLADE_MINOR_VERSION@,@GLADE_MICRO_VERSION@,0
@ -12,10 +12,10 @@ VS_VERSION_INFO VERSIONINFO
BEGIN
BLOCK "040904B0"
BEGIN
VALUE "CompanyName", "GNOME Foundation"
VALUE "CompanyName", "The GNOME Foundation"
VALUE "FileDescription", "Glade Interface Designer @GLADE_MAJOR_VERSION@.@GLADE_MINOR_VERSION@.@GLADE_MICRO_VERSION@"
VALUE "FileVersion", "@GLADE_MAJOR_VERSION@.@GLADE_MINOR_VERSION@.@GLADE_MICRO_VERSION@.0"
VALUE "LegalCopyright", "Copyright © 2012 The GNOME Foundation"
VALUE "LegalCopyright", "Copyright 2012 The GNOME Foundation"
VALUE "OriginalFilename", "glade.exe"
VALUE "ProductName", "Glade Interface Designer"
VALUE "ProductVersion", "@GLADE_MAJOR_VERSION@.@GLADE_MINOR_VERSION@.@GLADE_MICRO_VERSION@.0"

BIN
src/guido.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 47 KiB

View File

@ -14,6 +14,7 @@ resource_data = files(
'glade-registration.css',
'glade-registration.glade',
'glade-window.css',
'guido.png'
)
resource = 'glade-resources'
@ -36,13 +37,13 @@ ldflags = []
if glade_system == 'windows'
rc = configure_file(
input: 'glade.rc.in',
output: '@BASELINE@',
output: 'glade.rc',
configuration: rc_conf,
)
sources += windows.compile_resources(rc)
test_ldflags = ['-export-dynamic']
test_ldflags = ['-Wl,--export-all-symbols']
if not glade_unstable
test_ldflags += ['-mwindows']
endif