php.net |  support |  documentation |  report a bug |  advanced search |  search howto |  statistics |  random bug |  login
Bug #39335 Unresponsive PHP-GTK2 method
Submitted: 2006-11-01 17:15 UTC Modified: 2008-03-16 15:14 UTC
From: phporcaffeine at gmail dot com Assigned:
Status: Closed Package: PHP-GTK related
PHP Version: 5.1.6 OS: Win XP Pro (SP2)
Private report: No CVE-ID: None
Welcome back! If you're the original bug submitter, here's where you can edit the bug or add additional notes.
If you forgot your password, you can retrieve your password here.
Password:
Status:
Package:
Bug Type:
Summary:
From: phporcaffeine at gmail dot com
New email:
PHP Version: OS:

 

 [2006-11-01 17:15 UTC] phporcaffeine at gmail dot com
Description:
------------
GKT Version: 2

PHP Version: 5.1.4 (5.1.6 was the only 5.1.x listed)

GtkAboutDialog::set_website_label() does not render any results.  It doesn't generate any noticable errors either.

It just doesn't do anything.  Oddly enough though, GtkAboutDialog::set_website() works just fine.

I have tried several implementations/uses of the method with no luck.
*******************************************************
$gktAboutDialog->set_website_label("text"); //NO LUCK

$gktAboutDialog->set_website_label($str); //NO LUCK

GtkAboutDialog::set_website_label() //NOT STATIC METHOD
********************************************************

As far as I can see, the manual makes no mention of depreciation or not having been implemented yet.

Thanks for looking into it,

-Ryan

Reproduce code:
---------------
<?php

//GTK CLASS CHECK
if (!class_exists("gtk")) {
	
	die("The PHP-GTK class was not detected and therefore this file cannot continue");
}

/****************************************/

$artists = array("Artist");

$authors = array("Developer");

$title = "Application Information";

$name = "Applcation Name";

$comments = "These are the comments";  

$copyright = "Copyright " . date("Y") . "? All Rights Reserved"; 

$license = "This is the license";   

$version = "1.0.0.0";

$website = "http://www.website.com";

$websitelabel = "Web Site Text";

/**************************************/

$about = new gtkAboutDialog();

$about->set_artists($artists);

$about->set_authors($authors);

$about->set_comments($comments);

$about->set_copyright($copyright);

$about->set_license($license);

$about->set_name($name);

$about->set_version($version);

$about->set_website_label($websitelabel);

$about->set_website($website);

$about->set_title($title);

$about->connect('destroy', 'main_quit');

$about->run();

gtk::main();

?>


Expected result:
----------------
I expect to see the literal of the data I provided to the GtkAboutDialog::set_website_label() method

Actual result:
--------------
I see nothing generated from the GtkAboutDialog::set_website_label() method.

No errors are generated (I am using E_ALL)

Patches

Pull Requests

History

AllCommentsChangesGit/SVN commitsRelated reports
 [2006-11-01 23:13 UTC] auroraeosrose@php.net
This is expected behavior.  You must use GtkAboutDialog::set_url_hook() with a usable callback in order for the website label to be displayed.  I've added a note to the documentation.
 [2006-11-02 00:26 UTC] sfox@php.net
Not actually bogus - there should really be a check for the status of set_url_hook() if possible, and some error message thrown if it's missing.

I'd have assumed that the label was just that - a label - and not necessarily a link. Another alternative would be to make it call set_website() if there's no callback in place.

Whatever. It doesn't matter which approach we take, it shouldn't fail silently anyway.
 [2008-03-16 15:14 UTC] auroraeosrose@php.net
This bug has been fixed in CVS.

Snapshots of the sources are packaged every three hours; this change
will be in the next snapshot. You can grab the snapshot at
http://snaps.php.net/.
 
Thank you for the report, and for helping us make PHP better.

It doesn't "fail silently" - it actually is set, gtk just doesn't display it, it displays the url instead - nothing we can do about that.

Also we can't check for a url_hook, there's no way to do that with the gtk api unless we do some nutty set it with a temporary callback, check if it was null, and reset it - not the best thing to do.

It does make sense, though, to have set_website_label call set_website if set_website is empty - that's what was changed in CVS.

The need for a url_hook to have gtk display the website_label has been added to the documentation.
 
PHP Copyright © 2001-2024 The PHP Group
All rights reserved.
Last updated: Thu Dec 12 17:01:31 2024 UTC