Re: [PHP-GTK] Getting text from gtk_entry

[email protected] (Rich Payne)
Newsgroups php.gtk
Message-ID <[email protected]>
> 
> below is a snippet and atached is the full script thus far :)
> 
> function pref_window() {
> global $username,$password,$host;
> $query = &new GtkDialog();
> $query->set_title('Preferences');
> $query->set_default_size(150, 250);
> 
> 
> $username = &new GtkEntry();
> $vbox = $query->vbox;
> $vbox->pack_start($username, TRUE, TRUE, 0);
> $username->show();
> 
> $okbutton = &new GtkButton('Save Settings');
> $okbutton->connect('clicked', write_preferences);
> $okbutton->connect_object('clicked', array($query, 'destroy'));
> $query->connect('delete_event', create_function('', 'gtk::main_quit();'));

Ah....your destroying the window when the user presses the OK
button. That's going to make it a little tricky! I would suggest that you
handle the destruction in the write_preferences function, and pass the
function the dialog object itself. Something like:

$okbutton->connect('clicked', write_preferences,$query,$username);


> $action_area = $query->action_area;
> $action_area->pack_start($okbutton, TRUE, TRUE, 0);
> $okbutton->show();
> 
> $query->show_all();
> 
> 
> }
> 
> function write_preferencesa(){
>     global $username;
>     $user = $username->get_text();
>     echo "$user:$username";
> }

OK, then this would look something likeL

function write_preferencesa($widget, $dialog, $text_entry){
     $user = $text_entry->get_text();
     echo "$user\n";
     $dialog->destroy();
 }

Note that $widget is the button that created the event, you are always
passed that. 

and FWIW, I think $text_entry->get_text() is supposed to be
$text_entry->get_chars(0,-1). 

It says in the GTK+ docs that get_text() is depricated and
get_chars(start_pos, end_pos) should be used instead.

Does that help?

-- 
Rich Payne
[email protected]			www.alphalinux.org
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.