Changeset 4784


Ignore:
Timestamp:
Jan 28, 2010, 10:46:57 PM (14 years ago)
Author:
ronosman
Message:

Feature 1414 added : new improved layout for photo properties panel.

Location:
extensions/pLoader/trunk
Files:
1 added
5 edited

Legend:

Unmodified
Added
Removed
  • extensions/pLoader/trunk/src/Uploader/GUI/DlgCommon.pm

    r4779 r4784  
    241241                $self->properties->{$_}->{staticbox_label}
    242242            ) if exists $self->properties->{$_}->{staticbox_label};
    243        
     243
    244244            # radiobox
    245245            my $labels =$self->properties->{$_}->{labels};
     
    248248                $ctrl->SetItemLabel($i, $labels->[$i]);
    249249            }
     250
     251            # notebook pages
     252            my $texts =$self->properties->{$_}->{texts};
     253            $texts||=[];
     254            for(my $i=0; $i < scalar @$texts ; $i++){
     255                $ctrl->SetPageText($i, $texts->[$i]);
     256            }
     257
    250258        }
    251259    }
  • extensions/pLoader/trunk/src/Uploader/GUI/Frame.pm

    r4779 r4784  
    131131__PACKAGE__->mk_accessors( @properties );
    132132
    133 use Wx::Event
    134     qw/
    135           EVT_MENU
    136           EVT_BUTTON
    137           EVT_TREE_SEL_CHANGED
    138           EVT_TREE_END_LABEL_EDIT
    139           EVT_CLOSE
    140           EVT_LIST_END_LABEL_EDIT
    141           EVT_LIST_ITEM_SELECTED
    142           EVT_LIST_ITEM_ACTIVATED
    143           EVT_LIST_ITEM_RIGHT_CLICK
    144           EVT_TREE_ITEM_RIGHT_CLICK
    145           EVT_LIST_KEY_DOWN
    146           EVT_SPLITTER_SASH_POS_CHANGING
    147       /;
    148      
    149133use Wx::Perl::TextValidator;
    150134use Uploader::GUI::wxImageListCtrl;
     
    369353                selection => sub { $self->imagelist->current_image->privacy_level(@_)},
    370354                choices => wxTheApp->privacy_level_choices,
    371             }
     355            },
     356            $main::PHOTO_PROPERTIES_NB => { texts => [gettext("Photo properties"), gettext("Tags")] },
     357            $main::PHOTO_PROPERTIES_UPLOAD => { label=>gettext("Upload to Piwigo") },
    372358        }
    373359    );   
     
    696682    $self->create_toolbar;
    697683
    698     $self->{sizer_h} = Wx::BoxSizer->new( wxHORIZONTAL );
     684    my $sizer_h = Wx::BoxSizer->new( wxHORIZONTAL );
    699685   
    700686
     
    711697    );
    712698
    713     $self->horizontal_splitter(
    714         Wx::SplitterWindow->new( $self, -1 , wxDefaultPosition, wxDefaultSize, wxSP_3D )
    715     );
    716699
    717700    $self->init_panels;
     
    720703        Uploader::GUI::wxPhotoProperties->new(
    721704            {
    722                 parentwnd       => $self->horizontal_splitter,
     705                parentwnd       => $self,
    723706                properties      => $self->piwigo_photo_properties,
    724707                tags            =>
     
    737720    );
    738721
    739     $self->create_tree;
    740 
    741     $self->horizontal_splitter->SetMinimumPaneSize(50);
    742     $self->horizontal_splitter->SplitHorizontally(
    743         $self->dlg_piwigo_photo_properties,
    744         $self->tree,
    745         400
    746     );
     722    $self->create_tree(
     723        $self->dlg_piwigo_photo_properties->FindWindow($main::PHOTO_PROPERTIES_CATEGORIES)
     724    );
     725
    747726
    748727    $self->init_dnd_targets;
     
    758737
    759738    # the imageviewer has a stretch factor of 1 : expands its size on frame resize
    760     $self->{sizer_h}->AddWindow( $self->imageviewer, 1, wxGROW|wxALIGN_CENTER_HORIZONTAL|wxALL||wxSHAPED, 2 );
    761     $self->{sizer_h}->AddWindow( $self->horizontal_splitter, 0, wxGROW|wxALIGN_CENTER_HORIZONTAL|wxALL||wxSHAPED, 2 );
     739    $sizer_h->AddWindow( $self->imageviewer, 1, wxGROW|wxALIGN_CENTER_HORIZONTAL|wxALL||wxSHAPED, 2 );
     740    $sizer_h->AddWindow( $self->dlg_piwigo_photo_properties, 0, wxGROW|wxALIGN_CENTER_HORIZONTAL|wxALL||wxSHAPED, 2 );
    762741    $self->SetSizer(
    763         $self->{sizer_h}
    764     );
    765 
    766     $self->{sizer_h}->SetSizeHints(
     742        $sizer_h
     743    );
     744
     745    $sizer_h->SetSizeHints(
    767746        $self
    768747    );
     748
    769749
    770750
     
    989969
    990970sub create_tree {
    991     my ( $self ) = @_;
     971    my ( $self, $tree ) = @_;
    992972
    993973    my $images = [
     
    1009989   
    1010990    $self->tree(
    1011         Wx::TreeCtrl->new(
     991        $tree || Wx::TreeCtrl->new(
    1012992           $self->horizontal_splitter,
    1013993           -1,
     
    12061186    Wx::Event::EVT_MENU( $self, 105, \&OnChooseLanguage );
    12071187    Wx::Event::EVT_CHOICE( $self, 106, \&OnPhotoSelMode );
    1208     EVT_TREE_SEL_CHANGED( $self, $self->tree, \&OnTreeSelChanged );
    1209     EVT_TREE_ITEM_RIGHT_CLICK( $self, $self->tree, \&OnTreeItemRightClick );
    1210     EVT_TREE_END_LABEL_EDIT( $self, $self->tree, \&OnTreeEndLabelEdit );
    1211 
    1212     EVT_LIST_END_LABEL_EDIT( $self, $self->imageviewer, \&OnImageViewerEndLabelEdit );
    1213     EVT_LIST_ITEM_ACTIVATED( $self, $self->imageviewer, \&OnImageViewerItemActivated );
    1214     EVT_LIST_ITEM_SELECTED($self, $self->imageviewer, \&OnImageViewerItemSelected) ;
    1215     EVT_LIST_ITEM_RIGHT_CLICK($self, $self->imageviewer, \&OnImageViewerItemRightClick) ;
    1216 
    1217     EVT_LIST_KEY_DOWN($self, $self->imageviewer, \&OnImageViewerKeyDown) ;
    1218 
    1219     EVT_CLOSE( $self, \&OnClose );
    1220 
     1188    Wx::Event::EVT_TREE_SEL_CHANGED( $self, $self->tree, \&OnTreeSelChanged );
     1189    Wx::Event::EVT_TREE_ITEM_RIGHT_CLICK( $self, $self->tree, \&OnTreeItemRightClick );
     1190    Wx::Event::EVT_TREE_END_LABEL_EDIT( $self, $self->tree, \&OnTreeEndLabelEdit );
     1191
     1192    Wx::Event::EVT_LIST_END_LABEL_EDIT( $self, $self->imageviewer, \&OnImageViewerEndLabelEdit );
     1193    Wx::Event::EVT_LIST_ITEM_ACTIVATED( $self, $self->imageviewer, \&OnImageViewerItemActivated );
     1194    Wx::Event::EVT_LIST_ITEM_SELECTED($self, $self->imageviewer, \&OnImageViewerItemSelected) ;
     1195    Wx::Event::EVT_LIST_ITEM_RIGHT_CLICK($self, $self->imageviewer, \&OnImageViewerItemRightClick) ;
     1196
     1197    Wx::Event::EVT_LIST_KEY_DOWN($self, $self->imageviewer, \&OnImageViewerKeyDown) ;
     1198
     1199    Wx::Event::EVT_CLOSE( $self, \&OnClose );
    12211200
    12221201    Wx::Event::EVT_MENU( $self, 1+$ID_TREE_CTX_MENU, \&OnAddCategories );
     
    12281207    Wx::Event::EVT_MENU( $self, 2+$ID_IMAGEVIEWER_CTX_MENU, \&OnPreview );
    12291208
    1230 
     1209    Wx::Event::EVT_BUTTON( $self, $main::PHOTO_PROPERTIES_UPLOAD, \&OnUploadImages );
    12311210
    12321211}
  • extensions/pLoader/trunk/src/Uploader/GUI/wxApp.pm

    r4779 r4784  
    128128# at that moment, object is not yet instanciated
    129129# only way : class variable
     130# there is only one instance of wxApp
    130131my $bin_dir;
    131132my $resource_dir;
     
    645646    my $icon = Wx::Icon->new();
    646647    $icon->LoadFile(
    647         File::Spec->catfile($self->bin_dir, '..', 'res', 'favicon.ico'),
     648        $self->resource_path('favicon.ico'),
    648649        wxBITMAP_TYPE_ICO
    649650    );
    650     $self->login_dlg->SetIcon($icon);   
     651
     652    $self->login_dlg->SetIcon($icon);
    651653
    652654   
     
    921923        wxBITMAP_TYPE_ICO
    922924    );
    923     $self->frame->SetIcon($icon);       
     925    $self->frame->SetIcon($icon);
    924926}
    925927
  • extensions/pLoader/trunk/src/Uploader/GUI/wxPhotoProperties.pm

    r4779 r4784  
    3030use base qw/Wx::Panel Uploader::GUI::DlgCommon/;
    3131use Wx::Event qw/
    32                     EVT_UPDATE_UI
    3332                    EVT_BUTTON
    3433                    EVT_CLOSE
     
    4645    # load controls
    4746    eval {
    48       &main::PhotoProperties($self, $params->{tags});
     47        &main::PhotoPropertiesCategoriesTags($self, $params->{tags});
    4948
    50             $self->properties(
    51             $params->{properties}
     49        $self->_initNotebook($params->{tags});
     50
     51
     52        $self->properties(
     53            $params->{properties}
    5254        );
    5355
    5456        $self->InitLabels();
    55                 $self->InitChoices();
     57        $self->InitChoices();
    5658        $self->SetProperties();
    57                 $self->InitHandler();
     59        $self->InitHandler();
    5860        $self->_initEventHandlers();
    5961
    60                 if($@){
    61                         Wx::LogMessage("Error during dialogbox initialization");
    62                 }
    63         };
     62        if($@){
     63            Wx::LogMessage("Error during dialogbox initialization");
     64        }
     65    };
     66
    6467
    6568    $self;   
     
    7477    EVT_CLOSE( $self, \&OnClose );
    7578   
    76        
     79}
     80
     81
     82sub _initNotebook{
     83    my ( $self, $tags ) = @_;
     84
     85    my $nb = $self->FindWindow(
     86        $main::PHOTO_PROPERTIES_NB
     87    );
     88
     89    my( $page1 ) = Wx::Panel->new( $nb, -1 );
     90    &main::photo_properties_caption_comments( $page1, 0 );
     91    $nb->AddPage( $page1, "Photo informations" );
     92
     93    my( $page2 ) = Wx::Panel->new( $nb, -1 );
     94    &main::photo_properties_tags( $page2, $tags );
     95    $nb->AddPage( $page2, "Tags" );
     96
    7797}
    7898
  • extensions/pLoader/trunk/src/ploader.pl

    r4779 r4784  
    4040require 'reupload_wdr.pl';
    4141require 'photo_properties_wdr.pl';
     42require 'photo_properties_with_categories_tags_wdr.pl';
    4243require 'image_properties_exif_wdr.pl';
    4344
Note: See TracChangeset for help on using the changeset viewer.