[perl-Gtk3] Add override for Gtk3::TargetEntry
- From: Torsten Schönfeld <tsch src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [perl-Gtk3] Add override for Gtk3::TargetEntry
- Date: Fri, 4 May 2018 12:27:08 +0000 (UTC)
commit 23e9ecd07cd8ca595c66c78b651b54fcb55dd6ad
Author: Jeffrey Ratcliffe <Jeffrey Ratcliffe gmail com>
Date: Thu May 3 19:52:18 2018 +0200
Add override for Gtk3::TargetEntry
https://bugzilla.gnome.org/show_bug.cgi?id=795780
lib/Gtk3.pm | 15 +++++++++++++++
t/overrides.t | 26 +++++++++++++++++++++++++-
2 files changed, 40 insertions(+), 1 deletions(-)
---
diff --git a/lib/Gtk3.pm b/lib/Gtk3.pm
index 13a366d..6a65487 100644
--- a/lib/Gtk3.pm
+++ b/lib/Gtk3.pm
@@ -1577,6 +1577,21 @@ sub Gtk3::StyleContext::get {
return @values[0..$#values];
}
+=item * An override for C<Gtk3::TargetEntry::new> is provided that
+automatically handles the conversion of the C<flags> argument.
+
+=cut
+
+sub Gtk3::TargetEntry::new {
+ my ($class, $target, $flags, $info) = @_;
+ if ($flags !~ /^\d+$/) {
+ $flags = Glib::Object::Introspection->convert_sv_to_flags (
+ "Gtk3::TargetFlags", $flags)
+ }
+ return Glib::Object::Introspection->invoke (
+ $_GTK_BASENAME, 'TargetEntry', 'new', $class, $target, $flags, $info);
+}
+
=item * A Perl reimplementation of C<Gtk3::TextBuffer::create_tag> is provided.
=cut
diff --git a/t/overrides.t b/t/overrides.t
index 9f09071..29fe619 100644
--- a/t/overrides.t
+++ b/t/overrides.t
@@ -7,7 +7,7 @@ use warnings;
use utf8;
use Encode;
-plan tests => 230;
+plan tests => 233;
note('Gtk3::CHECK_VERSION and check_version');
{
@@ -328,6 +328,30 @@ note('Gtk3::StyleContext::get');
is (scalar @v, 2, 'two items returned');
}
+note('Gtk3::TargetEntry');
+{
+ my $output;
+ open local *STDERR, '>', \$output;
+ my $target_entry = Gtk3::TargetEntry->new(
+ 'Glib::Scalar',
+ Glib::Object::Introspection->convert_sv_to_flags (
+ "Gtk3::TargetFlags", qw/same-widget/),
+ 0);
+ is($output, undef, 'convert_sv_to_flags');
+
+ $target_entry = Gtk3::TargetEntry->new(
+ 'Glib::Scalar',
+ ${Gtk3::TargetFlags->new (qw/same-widget/)},
+ 0);
+ is($output, undef, 'Gtk3::TargetFlags->new');
+
+ $target_entry = Gtk3::TargetEntry->new(
+ 'Glib::Scalar',
+ qw/same-widget/,
+ 0);
+ is($output, undef, 'override');
+}
+
note('Gtk3::ToggleButton::new');
{
my $button = Gtk3::ToggleButton->new;
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]