Beefy Boxes and Bandwidth Generously Provided by pair Networks
Don't ask to ask, just ask
 
PerlMonks  

Re: New(ish?) portable GUI framework for Perl

by PodMaster (Abbot)
on Jul 03, 2003 at 01:39 UTC ( [id://271038]=note: print w/replies, xml ) Need Help??


in reply to New(ish?) portable GUI framework for Perl

It's not that new ;) (GUI) Windows Programming FAQ You are right to be impressed ;)

update: Here is something I contemplated, that might come to fruition one day (maybe)

use Prima qw( StdBitmap ); use Prima::Application name => __FILE__, icon => Prima::StdBitmap::icon( sbmp::Logo ); use Prima::StartupWindow; #use Prima qw( Buttons Widget Edit FrameSet TextView Lists InputLine +); use Prima qw( Buttons Edit FrameSet TextView Lists InputLine ); BEGIN { sleep 1; } # in case its loads quickly ;) no Prima::StartupWindow; my $w = Prima::Window-> create( onDestroy => sub {$::application->close}, text => "Perl Monks Prima Chatter", # size => [ map { $_ - 128} $::application->size], size => [ 300, 300 ], ); my $frame = $w->insert( FrameSet => size => [$w->size], origin => [0, 0], frameSizes => [qw(30 *)],# bottom top opaqueResize => 1, arrangement => fra::Vertical, # frameProfiles => [ 0,0, { minFrameWidth => 123, maxFrameWidth => +123 }], growMode => gm::Client, ); #use Data::Dumper; die Dumper $w; my $one = $frame->frames->[0]; $$one{'maxFrameWidth'} = 30; $$one{'minFrameWidth'} = 30; $one->growMode(gm::GrowHiX); $one->insert( InputLine => alignment => ta::Left, origin => [0,0], autoSelect => 1, size => [260,30], # size => [$frame->frames->[1]->size], width => ($one->size)[0] - 60, text => 'asdf', maxLen => 260, growMode => gm::GrowHiX, ); $one->insert( Button => origin => [ ($one->size)[0] - 60, 0], text => "talk", size => [ 60, 30 ], default => 1, hint => 'Hit this button to talk if you are logged in', growMode => gm::Right, ); my $subframe = $frame->insert_to_frame( 1, FrameSet => arrangement => fra::Horizontal, size => [$frame->frames->[1]->size], origin => [0, 0], opaqueResize => 1, name => 'SubFrame', frameSizes => [qw( * 100 )], # frameProfiles => [ 0,0, { minFrameWidth => 123, maxFrameWidth => +123 }], growMode => gm::Client, ); $subframe->frames->[0]->minFrameWidth(100); $subframe->growMode(gm::Right |gm::Top); $subframe->frames->[0]->growMode(gm::All); $subframe->frames->[1]->minFrameWidth(100); $subframe->frames->[1]->maxFrameWidth(100); $subframe->insert_to_frame( 0, #$subframe->firstFrame->insert( Edit => origin => [0,0], size => [$subframe->frames->[0]->size], growMode => gm::Client, ); $subframe->insert_to_frame( 1, ListBox => origin => [0, 0], size => [$subframe->frames->[1]->size], name => 'OtherUsers', items => ['Combo', 'box', 'salutes', 'you!'], growMode => gm::Client, ); #use Data::Dumper;die Dumper( $w, $frame, $subframe, $frame->frames, $ +subframe->frames ); run Prima; __END__

MJD says "you can't just make shit up and expect the computer to know what you mean, retardo!"
I run a Win32 PPM repository for perl 5.6.x and 5.8.x -- I take requests (README).
** The third rule of perl club is a statement of fact: pod is sexy.

Log In?
Username:
Password:

What's my password?
Create A New User
Domain Nodelet?
Node Status?
node history
Node Type: note [id://271038]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this?Last hourOther CB clients
Other Users?
Others scrutinizing the Monastery: (3)
As of 2024-04-25 13:05 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    No recent polls found