Changeset 3458


Ignore:
Timestamp:
06/25/09 17:52:30 (11 years ago)
Author:
ronosman
Message:

Feature 1014 added : save layout configuration in a .pLoader.layout file.

Location:
extensions/pLoader/trunk/src/Uploader/GUI
Files:
2 edited

Legend:

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

    r3456 r3458  
    302302          thumb_dir 
    303303          conf_file 
     304          layout_file 
    304305          locale 
    305306          current_language 
     
    310311          branding 
    311312          frame 
     313          perspective 
     314          imageviewerIndex 
     315          frameLayout 
    312316      /  
    313317); 
     
    331335    # to check if we can use stored cache 
    332336    $self->imagelist_version( 
    333         '3' 
     337        '4' 
    334338    ); 
    335339 
     
    349353 
    350354    my $conf = retrieve $self->conf_file if -e $self->conf_file;         
     355    my $layout = retrieve $self->layout_file if -e $self->layout_file;   
    351356 
    352357    if(defined $conf ){ 
     
    355360    else { 
    356361        $self->_readParams( 'pLoader.ini' ) unless defined $conf ; 
     362    } 
     363 
     364    if(defined $layout ){ 
     365        $self->SetKeyValues($layout); 
    357366    } 
    358367 
     
    467476            }, 
    468477            $self->conf_file 
     478        ); 
     479    }; 
     480} 
     481 
     482sub StoreLayoutProperties { 
     483    my ( $self ) = @_; 
     484 
     485    eval {     
     486        store(  
     487            { 
     488                map{ 
     489                   $_ => $self->{$_}, 
     490                } 
     491                qw/ 
     492                      perspective 
     493                      imageviewerIndex 
     494                      frameLayout 
     495                / 
     496            }, 
     497            $self->layout_file 
    469498        ); 
    470499    }; 
     
    540569        filter           => 'Lanczos', 
    541570        blur             => 0.9, 
    542         quality          => 100, 
     571        quality          => 95, 
    543572        wx_quality       => 80, 
    544573        th_quality       => 90, 
     
    658687    ); 
    659688 
    660      
     689    $self->layout_file( 
     690        File::Spec->catfile( 
     691            $self->userdata_dir,  
     692            ".$applicationName.layout" 
     693        ) 
     694    ); 
    661695 
    662696    $self->storable_file( 
     
    895929    my ( $self ) = @_;   
    896930 
    897     my $config = Wx::ConfigBase::Get; 
    898  
    899     my $x = $config->ReadInt( "X", 50 ); 
    900     my $y = $config->ReadInt( "Y", 50 ); 
    901     my $w = $config->ReadInt( "Width", 1024 ); 
    902     my $h = $config->ReadInt( "height", 768 ); 
    903     my $prev_w = $config->ReadInt( "PreviewWidth", 400 ); 
    904     my $prev_h = $config->ReadInt( "PreviewHeight", 300 ); 
    905     my $perspective = $config->Read( "Perspective" ); 
    906     my $imageviewer_index = $config->ReadInt( "ImageviewerIndex", 0 ); 
    907      
    908     #printf("Config x %s, y %s, w %s, h %s, prev_w %s, prev_h %s\n", $x, $y, $w, $h, $prev_w, $prev_h); 
    909      
    910931    my $url = $self->site_url; 
    911932     
     
    917938        Uploader::GUI::wxFrameAUI->new(  
    918939            { 
    919                 x         => $x, 
    920                 y         => $y, 
    921                 width     => $w, 
    922                 height    => $h, 
    923940                title     => sprintf("pLoader - Piwigo uploader %s - [%s]", $self->version, $url), 
    924941                pwg       => $self->pwg, 
    925942                imagelist => $self->imagelist, 
    926                 preview_w => $prev_w, 
    927                 preview_h => $prev_h, 
    928                 perspective => $perspective, 
    929                 imageviewer_index => $imageviewer_index, 
     943                perspective => $self->perspective, 
     944                imageviewer_index => $self->imageviewerIndex, 
     945                frameLayout => $self->frameLayout, 
    930946            } 
    931947        ) 
    932948    ); 
    933          
    934     $self->frame->SetSize( $x, $y, $w, $h ); 
     949  
    935950    $self->frame->Show( 1 ); 
    936951    $self->SetTopWindow( $self->frame ); 
  • extensions/pLoader/trunk/src/Uploader/GUI/wxFrameAUI.pm

    r3387 r3458  
    337337          toolbar 
    338338          branding 
    339           preview_w 
    340           preview_h 
    341339          perspective 
    342340          current_imageviewer_index 
     
    344342          tree_mnu 
    345343          imageviewer_select_multi 
     344          frameLayout 
    346345      /; 
    347346__PACKAGE__->mk_accessors( @properties ); 
     
    382381                                      undef,  
    383382                                      -1,  
    384                                       $params->{title},  
    385                                       [ $params->{x}, $params->{y} ], 
    386                                       [ $params->{width}, $params->{height} ], 
     383                                      $params->{title}, 
     384                                      wxDefaultPosition, 
     385                                      wxDefaultSize,  
    387386                                      wxDEFAULT_FRAME_STYLE 
    388387                                   ); 
    389     $self->preview_w( 
    390         $params->{preview_w}||400 
    391     ); 
    392  
    393     $self->preview_h( 
    394         $params->{preview_h}||300 
    395     ); 
     388 
    396389     
    397390    $self->perspective( 
     
    401394    $self->current_imageviewer_index( 
    402395        $params->{imageviewer_index}||0 
     396    ); 
     397     
     398    $self->frameLayout( 
     399        $params->{frameLayout} || { 'pX' => -1, 'pY' => -1, W => 800, H => 600 } 
    403400    ); 
    404401 
     
    871868            $self, 
    872869            -1, 
    873             wxNullBitmap, 
    874             wxDefaultPosition, 
    875             [$self->preview_w, $self->preview_h] 
     870            [400,300], 
    876871        ) 
    877872    ); 
     
    954949        ->CenterPane->Position(1)->Resizable->CloseButton(0) ); 
    955950 
    956     $self->manager->AddPane 
    957       ( $self->create_tree, Wx::AuiPaneInfo->new->Name( "categories" ) 
    958         ->Right->Position( 0 )->Resizable->CloseButton(0) ); 
     951    $self->manager->AddPane(  
     952        $self->create_tree,  
     953        Wx::AuiPaneInfo->new->Name( "categories" ) 
     954        ->Right->Position( 0 )->Resizable->CloseButton(0),  
     955    ); 
    959956 
    960957 
     
    970967        ->ToolbarPane->Top->Row( 1 )->LeftDockable( 0 )->RightDockable( 0 ) ) if defined $self->toolbar; 
    971968 
     969    $self->SetSize(  
     970            $self->frameLayout->{pX},  
     971            $self->frameLayout->{pY},  
     972            $self->frameLayout->{W},  
     973            $self->frameLayout->{H},  
     974    ); 
     975 
     976 
    972977    if($self->perspective){ 
    973         $self->manager->LoadPerspective($self->perspective) if $self->perspective =~ /getting_started/; 
     978        $self->manager->LoadPerspective($self->perspective); 
     979    } 
     980    else { 
     981        $self->manager->GetPane("categories")->MinSize(300,100); 
     982 
     983        $self->manager->GetPane("tb1")->Caption( gettext("Tools") ); 
     984        $self->manager->GetPane("image_preview")->Caption(gettext("Preview"))->Show(0); 
     985        $self->manager->GetPane("getting_started")->Caption(gettext("Getting started"))->Float->Show(1); 
     986        $self->manager->GetPane("photo_properties")->Caption(gettext("Photo properties"))->Float->Show(0); 
     987        $self->manager->GetPane("global_settings")->Caption(gettext("Global settings"))->Float->Show(0); 
    974988    } 
    975989 
    976990    $self->manager->GetPane("categories")->Caption( 
    977991          sprintf("%s - %s", sprintf("Piwigo %s", wxTheApp->branding->{categories}), $url ) 
    978       ); 
    979  
    980     $self->manager->GetPane("preview")->Caption(gettext("Preview")); 
    981     $self->manager->GetPane("tb1")->Caption( gettext("Tools") ); 
    982     $self->manager->GetPane("photo_properties")->Caption(gettext("Photo properties")); 
    983     $self->manager->GetPane("global_settings")->Caption(gettext("Global settings")); 
    984     $self->manager->GetPane("getting_started")->Caption(gettext("Getting started")); 
    985  
     992    ); 
    986993     
    987994    $self->manager->Update; 
    988995 
    989996} 
     997 
    990998 
    991999sub _init_aui_settings_panels { 
     
    9931001 
    9941002    $self->manager->AddPane 
    995       ( $self->image_preview, Wx::AuiPaneInfo->new->Name( "preview" ) 
     1003      ( $self->image_preview, Wx::AuiPaneInfo->new->Name( "image_preview" ) 
    9961004        ->Floatable(1)->Fixed->CloseButton(1)); 
    997  
    9981005 
    9991006    $self->manager->AddPane 
     
    10011008       ->Floatable(1)->Resizable->CloseButton(1) ); 
    10021009 
    1003  
    10041010    $self->manager->AddPane 
    10051011      ( $self->create_notebook_image_properties, Wx::AuiPaneInfo->new->Name( "photo_properties" ) 
     
    10101016        ->Floatable(1)->Resizable->CloseButton(1) ); 
    10111017 
    1012     $self->manager->GetPane("preview")->Show(0); 
    1013     $self->manager->GetPane("photo_properties")->Show(0); 
    1014     $self->manager->GetPane("global_settings")->Show(0); 
    1015     $self->manager->GetPane("getting_started")->Float; 
    1016     $self->manager->GetPane("getting_started")->Show(1); 
    1017          
    10181018} 
    10191019 
     
    10291029    my ( $self ) = @_; 
    10301030 
    1031     $self->manager->GetPane("preview")->Float->Show(1); 
     1031    $self->manager->GetPane("image_preview")->Float->Show(1); 
    10321032    $self->manager->Update();     
    10331033         
     
    17011701 
    17021702    my $size = [8+$bmp->GetWidth, 26+$bmp->GetHeight]; 
    1703     $self->manager->GetPane("preview")->FloatingSize($size); 
     1703    $self->manager->GetPane("image_preview")->FloatingSize($size); 
    17041704     
    17051705    $self->image_preview->Refresh; 
     
    19421942    wxTheApp->login_dlg->Destroy;        
    19431943 
    1944     my $params = {}; 
    1945  
    1946     ( $params->{'X'}, $params->{'Y'} ) = $self->GetPositionXY ; 
    1947     ( $params->{'Width'}, $params->{'Height'} ) = $self->GetSizeWH ; 
    1948     ( $params->{'PreviewWidth'}, $params->{'PreviewHeight'} ) = $self->image_preview->GetSizeWH ; 
    1949     $params->{Perspective} = $self->manager->SavePerspective; 
    1950     $params->{ImageviewerIndex} = $self->current_imageviewer_index; 
    1951      
    1952  
    1953     wxTheApp->SaveConfig( $params ); 
     1944    wxTheApp->perspective( 
     1945        $self->manager->SavePerspective 
     1946    ); 
     1947     
     1948    wxTheApp->imageviewerIndex( 
     1949        $self->current_imageviewer_index 
     1950    ); 
     1951     
     1952    my $frameLayout = {}; 
     1953     
     1954    ( $frameLayout->{pX}, $frameLayout->{pY}, $frameLayout->{W}, $frameLayout->{H} ) = ( $self->GetPositionXY, $self->GetSizeWH ) ;  
     1955     
     1956    wxTheApp->frameLayout( 
     1957        $frameLayout 
     1958    ); 
     1959 
     1960    wxTheApp->StoreLayoutProperties; 
    19541961 
    19551962    $self->Destroy; 
Note: See TracChangeset for help on using the changeset viewer.