Hi!

I'm working on message dialog parts of the new SimpleGtk3 (Perl RAD lib for 
Gtk3) and it looks like that some methods of MessageDialog are missing:

---|--------------|--------------------------------------------
OK | GtkWidget *  | gtk_message_dialog_new ()
FF | GtkWidget *  | gtk_message_dialog_new_with_markup ()
OK | void         | gtk_message_dialog_set_markup ()
OK | void         | gtk_message_dialog_set_image ()
?? | GtkWidget *  | gtk_message_dialog_get_image ()
FF | void         | gtk_message_dialog_format_secondary_text ()
FF | void         | gtk_message_dialog_format_secondary_markup ()
?? | GtkWidget *  | gtk_message_dialog_get_message_area ()

When I look into perli11ndoc all are available.


Attached is a script to show the issues. Every time you click "Show" it will 
test another function. This is the output of messagedialog.pl:

Not working: Gtk3::MessageDialog->new_with_markup
*** unhandled exception in callback:
***   Can't locate object method "new_with_markup" via package 
"Gtk3::MessageDialog" at /usr/lib/x86_64-linux-gnu/perl5/5.32/Glib.pm line 222.
***  ignoring at /usr/share/perl5/Gtk3.pm line 572.
Working: Gtk3::MessageDialog->new and set_markup()
Not working: format_secondary_text()
*** unhandled exception in callback:
***   Can't locate object method "format_secondary_text" via package 
"Gtk3::MessageDialog" at /home/tf/workspace/Perl/Testem/messagedialog.pl line 
52.
***  ignoring at /usr/share/perl5/Gtk3.pm line 572.
Not working: format_secondary_markup()
*** unhandled exception in callback:
***   Can't locate object method "format_secondary_markup" via package 
"Gtk3::MessageDialog" at /home/tf/workspace/Perl/Testem/messagedialog.pl line 
56.
***  ignoring at /usr/share/perl5/Gtk3.pm line 572.


I'm using:
Debian Testing (bullseye) x64
Perl: 5.32.0
libgtk3-perl: 0.037-1
libgtk-3: 3.24.24-1
libglib-perl: 3:1.329.3-1+b1

Hope you can help me.

Best Regards,
Thomas


--
"Two things are infinite: the universe and human stupidity; and I'm not sure 
about the the universe."   --   Albert Einstein
#! /usr/bin/perl
use strict;
use warnings;
use diagnostics;
use feature ':5.14';
use Gtk3 '-init';
use Glib qw/TRUE FALSE/;

my $COUNT = 0;

sub message_cb {
    my $parent_window = shift;
    #my $FirstMsg = 'This action will cause the universe to stop existing.';

    $COUNT = $COUNT + 1;
    if ($COUNT eq 5) {
       $COUNT = 1;
       print 
"----------------------------------------------------------------------\n";
    }

    my $FirstMsg = "<span foreground=\"blue\" size=\"x-large\">Message 
Type</span>";
    my $SecondMsg = "<span foreground='red' size=\"small\" style ='italic'>Info 
box.</span>";

    # Not working
    my $messagedialog;
    if ($COUNT == 1) {
        print "Not working: Gtk3::MessageDialog->new_with_markup\n";
        $messagedialog = Gtk3::MessageDialog->new_with_markup($parent_window,
                                                              ['modal', 
'destroy-with-parent'],
                                                              'warning',
                                                              'ok',
                                                              
sprintf("$FirstMsg"));
    }
    # Fix for COUNT 1
    else {
        if ($COUNT == 2) {
            print "Working: Gtk3::MessageDialog->new and set_markup()\n";
        }
        $messagedialog = Gtk3::MessageDialog->new($parent_window,
                                                  ['modal', 
'destroy-with-parent'],
                                                  'warning',
                                                  'ok',
                                                  undef);
        $messagedialog->set_markup(sprintf("$FirstMsg"));
    }

    if (defined($messagedialog)) {
        $messagedialog->signal_connect('response'=>\&dialog_response);

        if ($COUNT == 3) {
            print "Not working: format_secondary_text()\n";
            $messagedialog->format_secondary_text($SecondMsg);
        }
        elsif ($COUNT == 4) {
            print "Not working: format_secondary_markup()\n";
            $messagedialog->format_secondary_markup($SecondMsg);
        }
        $messagedialog->show();
    }
}

sub dialog_response {
    my ($widget, $response_id) = @_;
    $widget->destroy();
}

my $window = Gtk3::Window->new('toplevel');
$window->set_title("Message Test");
$window->set_default_size(200, 50);
$window->set_border_width(20);
$window->signal_connect('destroy'=>sub {Gtk3->main_quit;});

my $button1 = Gtk3::Button->new("Show");
$button1->signal_connect ('clicked'=>sub{\&message_cb($window);});

my $hbox = Gtk3::Box->new("horizontal", 5);
$hbox->pack_start($button1, TRUE, TRUE, 0);
$hbox->set_homogeneous (TRUE);
$window->add($hbox);

$window->show_all;
Gtk3->main;
_______________________________________________
gtk-perl-list mailing list
gtk-perl-list@gnome.org
https://mail.gnome.org/mailman/listinfo/gtk-perl-list

Reply via email to