Ticket #1468: filezilla_size.patch

File filezilla_size.patch, 5.9 KB (added by tommywu, 17 years ago)

splitter position not save correct

  • MainFrm.cpp

    old new  
    15441544        CString folder=GetLocalPane2()->GetLocalFolder();
    15451545        COptions::SetOption(OPTION_DEFAULTFOLDER,folder);
    15461546    }
     1547    if (COptions::GetOptionVal(OPTION_REMEMBERVIEWS))
     1548    {
     1549        COptions::SetOption(OPTION_SHOWNOTOOLBAR,!m_pWndToolBar->IsVisible());
     1550        COptions::SetOption(OPTION_SHOWNOQUICKCONNECTBAR,!m_pWndDlgBar->IsVisible());
     1551        COptions::SetOption(OPTION_SHOWNOSTATUSBAR,!m_wndStatusBar.IsVisible());
     1552        COptions::SetOption(OPTION_SHOWNOMESSAGELOG,!m_bShowMessageLog);
     1553        COptions::SetOption(OPTION_SHOWNOTREEVIEW,!m_bShowTree);
     1554        COptions::SetOption(OPTION_SHOWREMOTETREEVIEW, m_bShowRemoteTree);
     1555        COptions::SetOption(OPTION_SHOWNOQUEUE,!m_bShowQueue);
     1556    }
     1557    if (COptions::GetOptionVal(OPTION_REMEMBERLOCALVIEW))
     1558    {
     1559        COptions::SetOption(OPTION_LOCALLISTVIEWSTYLE, m_nLocalListViewStyle);
     1560        COptions::SetOption(OPTION_HIDELOCALCOLUMNS, m_nHideLocalColumns);
     1561        COptions::SetOption(OPTION_SHOWLOCALSTATUSBAR, GetLocalPane2()->IsStatusbarEnabled()?1:0);
     1562    }
     1563    if (COptions::GetOptionVal(OPTION_REMEMBERREMOTEVIEW))
     1564    {
     1565        COptions::SetOption(OPTION_REMOTELISTVIEWSTYLE,m_nRemoteListViewStyle);
     1566        COptions::SetOption(OPTION_HIDEREMOTECOLUMNS, m_nHideRemoteColumns);
     1567        COptions::SetOption(OPTION_SHOWREMOTESTATUSBAR, GetFtpPane()->IsStatusbarEnabled()?1:0);
     1568    }
     1569    if (COptions::GetOptionVal(OPTION_REMEMBERLASTWINDOWPOS))
     1570    {
     1571        WINDOWPLACEMENT placement;
     1572        BOOL res=GetWindowPlacement(&placement);
     1573        CString str;
     1574        int state=0;
     1575        if (placement.showCmd==SW_MAXIMIZE || placement.showCmd==SW_SHOWMAXIMIZED)
     1576            state=1;
     1577        if (!m_PosData.state)
     1578            str.Format(_T("%d %d %d %d %d"), state,placement.rcNormalPosition.left, placement.rcNormalPosition.top, placement.rcNormalPosition.right, placement.rcNormalPosition.bottom);
     1579        else
     1580            str.Format(_T("%d %d %d %d %d"), state,m_PosData.NormalRect.left, m_PosData.NormalRect.top, m_PosData.NormalRect.right, m_PosData.NormalRect.bottom);
     1581        COptions::SetOption(OPTION_LASTWINDOWPOS,str);
     1582        if (m_wndVertSplitter.IsRowHidden(0))
     1583            m_wndVertSplitter.ShowRow(0);
     1584        if (m_wndVertSplitter.IsRowHidden(2))
     1585            m_wndVertSplitter.ShowRow(2);
     1586        int cy1,cy2,cy3, cy4, cx,tmp;
     1587        m_wndVertSplitter.GetRowInfoEx(0,cy1,tmp);
     1588        m_wndVertSplitter.GetRowInfoEx(1,cy2,tmp);
     1589        if (m_nLocalTreeViewLocation)
     1590            m_wndLocalSplitter.GetColumnInfoEx(0,cy3,tmp);
     1591        else
     1592            m_wndLocalSplitter.GetRowInfoEx(0,cy3,tmp);
     1593        if (m_nRemoteTreeViewLocation)
     1594            m_wndRemoteSplitter.GetColumnInfoEx(0,cy4,tmp);
     1595        else
     1596            m_wndRemoteSplitter.GetRowInfoEx(0,cy4,tmp);
     1597        m_wndMainSplitter.GetColumnInfo(m_bSwitchPaneLayout?1:0, cx, tmp);     
     1598        str.Format(_T("%d %d %d %d %d"), cy1, cy2, cy3, cy4, cx);
     1599        COptions::SetOption(OPTION_LASTSPLITTERSIZE, str);
     1600    }
    15471601
    15481602    CMenu *menu2 = GetMenu();
    15491603    if (menu2 && menu2->m_hMenu!=m_hMenuDefault)
     
    26062660
    26072661void CMainFrame::OnDestroy()
    26082662{
    2609     if (COptions::GetOptionVal(OPTION_REMEMBERVIEWS))
    2610     {
    2611         COptions::SetOption(OPTION_SHOWNOTOOLBAR,!m_pWndToolBar->IsVisible());
    2612         COptions::SetOption(OPTION_SHOWNOQUICKCONNECTBAR,!m_pWndDlgBar->IsVisible());
    2613         COptions::SetOption(OPTION_SHOWNOSTATUSBAR,!m_wndStatusBar.IsVisible());
    2614         COptions::SetOption(OPTION_SHOWNOMESSAGELOG,!m_bShowMessageLog);
    2615         COptions::SetOption(OPTION_SHOWNOTREEVIEW,!m_bShowTree);
    2616         COptions::SetOption(OPTION_SHOWREMOTETREEVIEW, m_bShowRemoteTree);
    2617         COptions::SetOption(OPTION_SHOWNOQUEUE,!m_bShowQueue);
    2618     }
    2619     if (COptions::GetOptionVal(OPTION_REMEMBERLOCALVIEW))
    2620     {
    2621         COptions::SetOption(OPTION_LOCALLISTVIEWSTYLE, m_nLocalListViewStyle);
    2622         COptions::SetOption(OPTION_HIDELOCALCOLUMNS, m_nHideLocalColumns);
    2623         COptions::SetOption(OPTION_SHOWLOCALSTATUSBAR, GetLocalPane2()->IsStatusbarEnabled()?1:0);
    2624     }
    2625     if (COptions::GetOptionVal(OPTION_REMEMBERREMOTEVIEW))
    2626     {
    2627         COptions::SetOption(OPTION_REMOTELISTVIEWSTYLE,m_nRemoteListViewStyle);
    2628         COptions::SetOption(OPTION_HIDEREMOTECOLUMNS, m_nHideRemoteColumns);
    2629         COptions::SetOption(OPTION_SHOWREMOTESTATUSBAR, GetFtpPane()->IsStatusbarEnabled()?1:0);
    2630     }
    2631     if (COptions::GetOptionVal(OPTION_REMEMBERLASTWINDOWPOS))
    2632     {
    2633         WINDOWPLACEMENT placement;
    2634         BOOL res=GetWindowPlacement(&placement);
    2635         CString str;
    2636         int state=0;
    2637         if (placement.showCmd==SW_MAXIMIZE || placement.showCmd==SW_SHOWMAXIMIZED)
    2638             state=1;
    2639         if (!m_PosData.state)
    2640             str.Format(_T("%d %d %d %d %d"), state,placement.rcNormalPosition.left, placement.rcNormalPosition.top, placement.rcNormalPosition.right, placement.rcNormalPosition.bottom);
    2641         else
    2642             str.Format(_T("%d %d %d %d %d"), state,m_PosData.NormalRect.left, m_PosData.NormalRect.top, m_PosData.NormalRect.right, m_PosData.NormalRect.bottom);
    2643         COptions::SetOption(OPTION_LASTWINDOWPOS,str);
    2644         if (m_wndVertSplitter.IsRowHidden(0))
    2645             m_wndVertSplitter.ShowRow(0);
    2646         if (m_wndVertSplitter.IsRowHidden(2))
    2647             m_wndVertSplitter.ShowRow(2);
    2648         int cy1,cy2,cy3, cy4, cx,tmp;
    2649         m_wndVertSplitter.GetRowInfoEx(0,cy1,tmp);
    2650         m_wndVertSplitter.GetRowInfoEx(1,cy2,tmp);
    2651         if (m_nLocalTreeViewLocation)
    2652             m_wndLocalSplitter.GetColumnInfoEx(0,cy3,tmp);
    2653         else
    2654             m_wndLocalSplitter.GetRowInfoEx(0,cy3,tmp);
    2655         if (m_nRemoteTreeViewLocation)
    2656             m_wndRemoteSplitter.GetColumnInfoEx(0,cy4,tmp);
    2657         else
    2658             m_wndRemoteSplitter.GetRowInfoEx(0,cy4,tmp);
    2659         m_wndMainSplitter.GetColumnInfo(m_bSwitchPaneLayout?1:0, cx, tmp);     
    2660         str.Format(_T("%d %d %d %d %d"), cy1, cy2, cy3, cy4, cx);
    2661         COptions::SetOption(OPTION_LASTSPLITTERSIZE, str);
    2662     }
    2663 
    26642663    if (m_pSecureIconCtrl->GetSafeHwnd() && m_pSecureIconCtrl->GetIcon())
    26652664        DestroyIcon(m_pSecureIconCtrl->GetIcon());
    26662665    delete m_pSecureIconCtrl;
     
    32513250    if (m_PosData.state==1)
    32523251    {
    32533252        ShowWindow(SW_MAXIMIZE);
    3254         m_PosData.cy2-=27;
     3253        if (!COptions::GetOptionVal(OPTION_SHOWSITEMANAGERONSTARTUP))
     3254            m_PosData.cy2-=27;
    32553255    }
    32563256    else
    32573257        ShowWindow(SW_RESTORE);