Changeset 4784


Ignore:
Timestamp:
01/28/10 22:46:57 (10 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.