diff options
-rw-r--r-- | svtools/UI_svt.mk | 1 | ||||
-rw-r--r-- | svtools/inc/svtools/PlaceEditDialog.hxx | 40 | ||||
-rw-r--r-- | svtools/inc/svtools/ServerDetailsControls.hxx | 40 | ||||
-rw-r--r-- | svtools/source/dialogs/PlaceEditDialog.cxx | 219 | ||||
-rw-r--r-- | svtools/source/dialogs/ServerDetailsControls.cxx | 178 | ||||
-rw-r--r-- | svtools/uiconfig/ui/placeedit.ui | 660 |
6 files changed, 821 insertions, 317 deletions
diff --git a/svtools/UI_svt.mk b/svtools/UI_svt.mk index 7a8cf96a0054..250bd5f57c9a 100644 --- a/svtools/UI_svt.mk +++ b/svtools/UI_svt.mk @@ -11,6 +11,7 @@ $(eval $(call gb_UI_UI,svt)) $(eval $(call gb_UI_add_uifiles,svt,\ svtools/uiconfig/ui/graphicexport \ + svtools/uiconfig/ui/placeedit \ )) # vim: set noet sw=4 ts=4: diff --git a/svtools/inc/svtools/PlaceEditDialog.hxx b/svtools/inc/svtools/PlaceEditDialog.hxx index 14a1fb04b455..4db4316ab806 100644 --- a/svtools/inc/svtools/PlaceEditDialog.hxx +++ b/svtools/inc/svtools/PlaceEditDialog.hxx @@ -46,39 +46,15 @@ class SVT_DLLPUBLIC PlaceEditDialog : public ModalDialog { private : - FixedText m_aFTServerName; - FixedText m_aFTServerType; - - Edit m_aEDServerName; - ListBox m_aLBServerType; + Edit* m_pEDServerName; + ListBox* m_pLBServerType; boost::shared_ptr< DetailsContainer > m_pCurrentDetails; - FixedText m_aFTHost; - Edit m_aEDHost; - FixedText m_aFTPort; - NumericField m_aEDPort; - FixedText m_aFTPath; - Edit m_aEDPath; - CheckBox m_aCBDavs; - - Edit m_aEDSmbHost; - FixedText m_aFTShare; - Edit m_aEDShare; - FixedText m_aFTSmbPath; - Edit m_aEDSmbPath; - - FixedText m_aFTCmisBinding; - Edit m_aEDCmisBinding; - FixedText m_aFTCmisRepository; - ListBox m_aLBCmisRepository; - ImageButton m_aBTCmisRepoRefresh; - - FixedText m_aFTUsername; - Edit m_aEDUsername; - OKButton m_aBTOk; - CancelButton m_aBTCancel; - - PushButton m_aBTDelete; + Edit* m_pEDUsername; + OKButton* m_pBTOk; + CancelButton* m_pBTCancel; + + PushButton* m_pBTDelete; /** Vector holding the details UI control for each server type. @@ -97,7 +73,7 @@ public : // Returns a place instance with given informations boost::shared_ptr<Place> GetPlace(); - rtl::OUString GetServerName() { return m_aEDServerName.GetText(); } + rtl::OUString GetServerName() { return m_pEDServerName->GetText(); } rtl::OUString GetServerUrl(); private: diff --git a/svtools/inc/svtools/ServerDetailsControls.hxx b/svtools/inc/svtools/ServerDetailsControls.hxx index 7d0c9ad3f005..f29ec4473b54 100644 --- a/svtools/inc/svtools/ServerDetailsControls.hxx +++ b/svtools/inc/svtools/ServerDetailsControls.hxx @@ -33,26 +33,23 @@ #include <com/sun/star/ucb/XCommandEnvironment.hpp> #include <tools/urlobj.hxx> +#include <vcl/builder.hxx> #include <vcl/button.hxx> #include <vcl/edit.hxx> #include <vcl/field.hxx> #include <vcl/fixed.hxx> +#include <vcl/layout.hxx> class DetailsContainer { private: - std::map< sal_uInt16, Control* > m_aControls; - bool m_bShown; Link m_aChangeHdl; + VclFrame* m_pFrame; public: - DetailsContainer( ); + DetailsContainer( VclBuilderContainer* pBuilder, const rtl::OString& rFrame ); virtual ~DetailsContainer( ); - virtual void addControl( sal_uInt16 nId, Control* pControl ); - Control* getControl( sal_uInt16 nId ); - Rectangle getBounds( ); - void setChangeHdl( const Link& rLink ) { m_aChangeHdl = rLink; } virtual void show( bool bShow = true ); @@ -69,8 +66,6 @@ class DetailsContainer protected: void notifyChange( ); - - private: DECL_LINK ( ValueChangeHdl, void * ); }; @@ -80,8 +75,13 @@ class HostDetailsContainer : public DetailsContainer sal_uInt16 m_nDefaultPort; rtl::OUString m_sScheme; + protected: + Edit* m_pEDHost; + NumericField* m_pEDPort; + Edit* m_pEDPath; + public: - HostDetailsContainer( sal_uInt16 nPort, rtl::OUString sScheme ); + HostDetailsContainer( VclBuilderContainer* pBuilder, sal_uInt16 nPort, rtl::OUString sScheme ); virtual ~HostDetailsContainer( ) { }; virtual void show( bool bShow = true ); @@ -99,11 +99,13 @@ class HostDetailsContainer : public DetailsContainer class DavDetailsContainer : public HostDetailsContainer { + private: + CheckBox* m_pCBDavs; + public: - DavDetailsContainer( ); + DavDetailsContainer( VclBuilderContainer* pBuilder ); ~DavDetailsContainer( ) { }; - virtual void addControl( sal_uInt16 nId, Control* pControl ); virtual void show( bool bShow = true ); protected: @@ -115,8 +117,13 @@ class DavDetailsContainer : public HostDetailsContainer class SmbDetailsContainer : public DetailsContainer { + private: + Edit* m_pEDHost; + Edit* m_pEDShare; + Edit* m_pEDPath; + public: - SmbDetailsContainer( ) : DetailsContainer( ) { }; + SmbDetailsContainer( VclBuilderContainer* pBuilder ); ~SmbDetailsContainer( ) { }; virtual INetURLObject getUrl( ); @@ -131,14 +138,17 @@ class CmisDetailsContainer : public DetailsContainer std::vector< rtl::OUString > m_aRepoIds; rtl::OUString m_sRepoId; + Edit* m_pEDBinding; + ListBox* m_pLBRepository; + Button* m_pBTRepoRefresh; + public: - CmisDetailsContainer( ); + CmisDetailsContainer( VclBuilderContainer* pBuilder ); ~CmisDetailsContainer( ) { }; virtual INetURLObject getUrl( ); virtual bool setUrl( const INetURLObject& rUrl ); virtual void setUsername( const rtl::OUString& rUsername ); - virtual void addControl( sal_uInt16 nId, Control* pControl ); private: void selectRepository( ); diff --git a/svtools/source/dialogs/PlaceEditDialog.cxx b/svtools/source/dialogs/PlaceEditDialog.cxx index 9807050d16e5..2074bd539447 100644 --- a/svtools/source/dialogs/PlaceEditDialog.cxx +++ b/svtools/source/dialogs/PlaceEditDialog.cxx @@ -36,90 +36,52 @@ using namespace boost; -PlaceEditDialog::PlaceEditDialog( Window* pParent ) : - ModalDialog( pParent, SvtResId( DLG_FPICKER_PLACE_EDIT ) ), - m_aFTServerName( this, SvtResId( FT_ADDPLACE_SERVERNAME ) ), - m_aFTServerType( this, SvtResId( FT_ADDPLACE_SERVERTYPE ) ), - m_aEDServerName ( this, SvtResId( ED_ADDPLACE_SERVERNAME ) ), - m_aLBServerType ( this, SvtResId( LB_ADDPLACE_SERVERTYPE ) ), - m_pCurrentDetails( ), - m_aFTHost( this, SvtResId( FT_ADDPLACE_HOST ) ), - m_aEDHost( this, SvtResId( ED_ADDPLACE_HOST ) ), - m_aFTPort( this, SvtResId( FT_ADDPLACE_PORT ) ), - m_aEDPort( this, SvtResId( ED_ADDPLACE_PORT ) ), - m_aFTPath( this, SvtResId( FT_ADDPLACE_PATH ) ), - m_aEDPath( this, SvtResId( ED_ADDPLACE_PATH ) ), - m_aCBDavs( this, SvtResId( CB_ADDPLACE_DAVS ) ), - m_aEDSmbHost( this, SvtResId( ED_ADDPLACE_SMBHOST ) ), - m_aFTShare( this, SvtResId( FT_ADDPLACE_SHARE ) ), - m_aEDShare( this, SvtResId( ED_ADDPLACE_SHARE ) ), - m_aFTSmbPath( this, SvtResId( FT_ADDPLACE_SMBPATH ) ), - m_aEDSmbPath( this, SvtResId( ED_ADDPLACE_SMBPATH ) ), - m_aFTCmisBinding( this, SvtResId( FT_ADDPLACE_CMIS_BINDING ) ), - m_aEDCmisBinding( this, SvtResId( ED_ADDPLACE_CMIS_BINDING ) ), - m_aFTCmisRepository( this, SvtResId( FT_ADDPLACE_CMIS_REPOSITORY ) ), - m_aLBCmisRepository( this, SvtResId( LB_ADDPLACE_CMIS_REPOSITORY ) ), - m_aBTCmisRepoRefresh( this, SvtResId( BT_ADDPLACE_CMIS_REPOREFRESH ) ), - m_aFTUsername( this, SvtResId( FT_ADDPLACE_USERNAME ) ), - m_aEDUsername( this, SvtResId( ED_ADDPLACE_USERNAME ) ), - m_aBTOk( this, SvtResId( BT_ADDPLACE_OK ) ), - m_aBTCancel ( this, SvtResId ( BT_ADDPLACE_CANCEL ) ), - m_aBTDelete ( this, SvtResId (BT_ADDPLACE_DELETE ) ) +PlaceEditDialog::PlaceEditDialog( Window* pParent ) : + ModalDialog( pParent, "PlaceEditDialog", "svt/ui/placeedit.ui" ), + m_pCurrentDetails( ) { - m_aBTOk.SetClickHdl( LINK( this, PlaceEditDialog, OKHdl) ); - m_aBTOk.Enable( sal_False ); + get( m_pEDServerName, "name" ); + get( m_pLBServerType, "type" ); + get( m_pEDUsername, "login" ); + get( m_pBTOk, "ok" ); + get( m_pBTCancel, "cancel" ); + get( m_pBTDelete, "delete" ); - m_aEDServerName.SetModifyHdl( LINK( this, PlaceEditDialog, EditHdl) ); + m_pBTOk->SetClickHdl( LINK( this, PlaceEditDialog, OKHdl) ); + m_pBTOk->Enable( sal_False ); + + m_pEDServerName->SetModifyHdl( LINK( this, PlaceEditDialog, EditHdl) ); // This constructor is called when user request a place creation, so // delete button is hidden. - m_aBTDelete.Hide(); + m_pBTDelete->Hide(); - m_aLBServerType.SetSelectHdl( LINK( this, PlaceEditDialog, SelectTypeHdl ) ); - m_aEDUsername.SetModifyHdl( LINK( this, PlaceEditDialog, EditUsernameHdl ) ); + m_pLBServerType->SetSelectHdl( LINK( this, PlaceEditDialog, SelectTypeHdl ) ); + m_pEDUsername->SetModifyHdl( LINK( this, PlaceEditDialog, EditUsernameHdl ) ); InitDetails( ); } PlaceEditDialog::PlaceEditDialog( Window* pParent, const boost::shared_ptr<Place>& pPlace ) : - ModalDialog( pParent, SvtResId( DLG_FPICKER_PLACE_EDIT ) ), - m_aFTServerName( this, SvtResId( FT_ADDPLACE_SERVERNAME ) ), - m_aFTServerType( this, SvtResId( FT_ADDPLACE_SERVERTYPE ) ), - m_aEDServerName ( this, SvtResId( ED_ADDPLACE_SERVERNAME ) ), - m_aLBServerType ( this, SvtResId( LB_ADDPLACE_SERVERTYPE ) ), - m_pCurrentDetails( ), - m_aFTHost( this, SvtResId( FT_ADDPLACE_HOST ) ), - m_aEDHost( this, SvtResId( ED_ADDPLACE_HOST ) ), - m_aFTPort( this, SvtResId( FT_ADDPLACE_PORT ) ), - m_aEDPort( this, SvtResId( ED_ADDPLACE_PORT ) ), - m_aFTPath( this, SvtResId( FT_ADDPLACE_PATH ) ), - m_aEDPath( this, SvtResId( ED_ADDPLACE_PATH ) ), - m_aCBDavs( this, SvtResId( CB_ADDPLACE_DAVS ) ), - m_aEDSmbHost( this, SvtResId( ED_ADDPLACE_SMBHOST ) ), - m_aFTShare( this, SvtResId( FT_ADDPLACE_SHARE ) ), - m_aEDShare( this, SvtResId( ED_ADDPLACE_SHARE ) ), - m_aFTSmbPath( this, SvtResId( FT_ADDPLACE_SMBPATH ) ), - m_aEDSmbPath( this, SvtResId( ED_ADDPLACE_SMBPATH ) ), - m_aFTCmisBinding( this, SvtResId( FT_ADDPLACE_CMIS_BINDING ) ), - m_aEDCmisBinding( this, SvtResId( ED_ADDPLACE_CMIS_BINDING ) ), - m_aFTCmisRepository( this, SvtResId( FT_ADDPLACE_CMIS_REPOSITORY ) ), - m_aLBCmisRepository( this, SvtResId( LB_ADDPLACE_CMIS_REPOSITORY ) ), - m_aBTCmisRepoRefresh( this, SvtResId( BT_ADDPLACE_CMIS_REPOREFRESH ) ), - m_aFTUsername( this, SvtResId( FT_ADDPLACE_USERNAME ) ), - m_aEDUsername( this, SvtResId( ED_ADDPLACE_USERNAME ) ), - m_aBTOk( this, SvtResId( BT_ADDPLACE_OK ) ), - m_aBTCancel ( this, SvtResId ( BT_ADDPLACE_CANCEL ) ), - m_aBTDelete ( this, SvtResId (BT_ADDPLACE_DELETE ) ) + ModalDialog( pParent, "PlaceEditDialog", "svt/ui/placeedit.ui" ), + m_pCurrentDetails( ) { - m_aBTOk.SetClickHdl( LINK( this, PlaceEditDialog, OKHdl) ); - m_aBTDelete.SetClickHdl ( LINK( this, PlaceEditDialog, DelHdl) ); + get( m_pEDServerName, "name" ); + get( m_pLBServerType, "type" ); + get( m_pEDUsername, "login" ); + get( m_pBTOk, "ok" ); + get( m_pBTCancel, "cancel" ); + get( m_pBTDelete, "delete" ); + + m_pBTOk->SetClickHdl( LINK( this, PlaceEditDialog, OKHdl) ); + m_pBTDelete->SetClickHdl ( LINK( this, PlaceEditDialog, DelHdl) ); - m_aEDServerName.SetModifyHdl( LINK( this, PlaceEditDialog, EditHdl) ); - m_aLBServerType.SetSelectHdl( LINK( this, PlaceEditDialog, SelectTypeHdl ) ); + m_pEDServerName->SetModifyHdl( LINK( this, PlaceEditDialog, EditHdl) ); + m_pLBServerType->SetSelectHdl( LINK( this, PlaceEditDialog, SelectTypeHdl ) ); InitDetails( ); - m_aEDServerName.SetText( pPlace->GetName() ); + m_pEDServerName->SetText( pPlace->GetName() ); // Fill the boxes with the URL parts bool bSuccess = false; @@ -129,12 +91,12 @@ PlaceEditDialog::PlaceEditDialog( Window* pParent, const boost::shared_ptr<Place bSuccess = m_aDetailsContainers[i]->setUrl( rUrl ); if ( bSuccess ) { - m_aLBServerType.SelectEntryPos( i ); - SelectTypeHdl( &m_aLBServerType ); + m_pLBServerType->SelectEntryPos( i ); + SelectTypeHdl( m_pLBServerType ); // Fill the Username field if ( rUrl.HasUserData( ) ) - m_aEDUsername.SetText( rUrl.GetUser( ) ); + m_pEDUsername->SetText( rUrl.GetUser( ) ); } } } @@ -149,7 +111,7 @@ rtl::OUString PlaceEditDialog::GetServerUrl() if ( m_pCurrentDetails.get( ) ) { INetURLObject aUrl = m_pCurrentDetails->getUrl(); - rtl::OUString sUsername = rtl::OUString( m_aEDUsername.GetText( ) ).trim( ); + rtl::OUString sUsername = rtl::OUString( m_pEDUsername->GetText( ) ).trim( ); if ( !sUsername.isEmpty( ) ) aUrl.SetUser( sUsername ); if ( !aUrl.HasError( ) ) @@ -161,75 +123,38 @@ rtl::OUString PlaceEditDialog::GetServerUrl() boost::shared_ptr<Place> PlaceEditDialog::GetPlace() { - boost::shared_ptr<Place> newPlace( new Place( m_aEDServerName.GetText(), GetServerUrl(), true ) ); + boost::shared_ptr<Place> newPlace( new Place( m_pEDServerName->GetText(), GetServerUrl(), true ) ); return newPlace; } void PlaceEditDialog::InitDetails( ) { // Create WebDAV / FTP / SSH details control - shared_ptr< DetailsContainer > pDavDetails( new DavDetailsContainer( ) ); - pDavDetails->addControl( FT_ADDPLACE_HOST, &m_aFTHost ); - pDavDetails->addControl( ED_ADDPLACE_HOST, &m_aEDHost ); - pDavDetails->addControl( FT_ADDPLACE_PORT, &m_aFTPort ); - pDavDetails->addControl( ED_ADDPLACE_PORT, &m_aEDPort ); - pDavDetails->addControl( FT_ADDPLACE_PATH, &m_aFTPath ); - pDavDetails->addControl( ED_ADDPLACE_PATH, &m_aEDPath ); - pDavDetails->addControl( CB_ADDPLACE_DAVS, &m_aCBDavs ); + shared_ptr< DetailsContainer > pDavDetails( new DavDetailsContainer( this ) ); pDavDetails->setChangeHdl( LINK( this, PlaceEditDialog, EditHdl ) ); m_aDetailsContainers.push_back( pDavDetails ); - shared_ptr< DetailsContainer > pFtpDetails( new HostDetailsContainer( 21, "ftp" ) ); - pFtpDetails->addControl( FT_ADDPLACE_HOST, &m_aFTHost ); - pFtpDetails->addControl( ED_ADDPLACE_HOST, &m_aEDHost ); - pFtpDetails->addControl( FT_ADDPLACE_PORT, &m_aFTPort ); - pFtpDetails->addControl( ED_ADDPLACE_PORT, &m_aEDPort ); - pFtpDetails->addControl( FT_ADDPLACE_PATH, &m_aFTPath ); - pFtpDetails->addControl( ED_ADDPLACE_PATH, &m_aEDPath ); + shared_ptr< DetailsContainer > pFtpDetails( new HostDetailsContainer( this, 21, "ftp" ) ); pFtpDetails->setChangeHdl( LINK( this, PlaceEditDialog, EditHdl ) ); m_aDetailsContainers.push_back( pFtpDetails ); - shared_ptr< DetailsContainer > pSshDetails( new HostDetailsContainer( 22, "ssh" ) ); - pSshDetails->addControl( FT_ADDPLACE_HOST, &m_aFTHost ); - pSshDetails->addControl( ED_ADDPLACE_HOST, &m_aEDHost ); - pSshDetails->addControl( FT_ADDPLACE_PORT, &m_aFTPort ); - pSshDetails->addControl( ED_ADDPLACE_PORT, &m_aEDPort ); - pSshDetails->addControl( FT_ADDPLACE_PATH, &m_aFTPath ); - pSshDetails->addControl( ED_ADDPLACE_PATH, &m_aEDPath ); + shared_ptr< DetailsContainer > pSshDetails( new HostDetailsContainer( this, 22, "ssh" ) ); pSshDetails->setChangeHdl( LINK( this, PlaceEditDialog, EditHdl ) ); m_aDetailsContainers.push_back( pSshDetails ); // Create Windows Share control - shared_ptr< DetailsContainer > pSmbDetails( new SmbDetailsContainer( ) ); - pSmbDetails->addControl( FT_ADDPLACE_HOST, &m_aFTHost ); - pSmbDetails->addControl( ED_ADDPLACE_SMBHOST, &m_aEDSmbHost ); - pSmbDetails->addControl( FT_ADDPLACE_SHARE, &m_aFTShare ); - pSmbDetails->addControl( ED_ADDPLACE_SHARE, &m_aEDShare ); - pSmbDetails->addControl( FT_ADDPLACE_SMBPATH, &m_aFTSmbPath ); - pSmbDetails->addControl( ED_ADDPLACE_SMBPATH, &m_aEDSmbPath ); + shared_ptr< DetailsContainer > pSmbDetails( new SmbDetailsContainer( this ) ); pSmbDetails->setChangeHdl( LINK( this, PlaceEditDialog, EditHdl ) ); m_aDetailsContainers.push_back( pSmbDetails ); // Create CMIS control - shared_ptr< DetailsContainer > pCmisDetails( new CmisDetailsContainer( ) ); - pCmisDetails->addControl( FT_ADDPLACE_CMIS_BINDING, &m_aFTCmisBinding ); - pCmisDetails->addControl( ED_ADDPLACE_CMIS_BINDING, &m_aEDCmisBinding ); - pCmisDetails->addControl( FT_ADDPLACE_CMIS_REPOSITORY, &m_aFTCmisRepository ); - pCmisDetails->addControl( LB_ADDPLACE_CMIS_REPOSITORY, &m_aLBCmisRepository ); - pCmisDetails->addControl( BT_ADDPLACE_CMIS_REPOREFRESH, &m_aBTCmisRepoRefresh ); + shared_ptr< DetailsContainer > pCmisDetails( new CmisDetailsContainer( this ) ); pCmisDetails->setChangeHdl( LINK( this, PlaceEditDialog, EditHdl ) ); - - if ( officecfg::Office::Common::Misc::ExperimentalMode::get() ) - m_aDetailsContainers.push_back( pCmisDetails ); - else - { - // Remove the CMIS entry, left it in src file for l10n - m_aLBServerType.RemoveEntry( m_aLBServerType.GetEntryCount( ) - 1 ); - } + m_aDetailsContainers.push_back( pCmisDetails ); // Set default to first value - m_aLBServerType.SelectEntryPos( 0 ); - SelectTypeHdl( &m_aLBServerType ); + m_pLBServerType->SelectEntryPos( 0 ); + SelectTypeHdl( m_pLBServerType ); } IMPL_LINK ( PlaceEditDialog, OKHdl, Button *, EMPTYARG ) @@ -248,8 +173,8 @@ IMPL_LINK ( PlaceEditDialog, DelHdl, Button *, EMPTYARG ) IMPL_LINK ( PlaceEditDialog, EditHdl, void *, EMPTYARG ) { rtl::OUString sUrl = GetServerUrl( ); - rtl::OUString sName = rtl::OUString( m_aEDServerName.GetText() ).trim( ); - m_aBTOk.Enable( !sName.isEmpty( ) && !sUrl.isEmpty( ) ); + rtl::OUString sName = rtl::OUString( m_pEDServerName->GetText() ).trim( ); + m_pBTOk->Enable( !sName.isEmpty( ) && !sUrl.isEmpty( ) ); return 1; } @@ -258,70 +183,22 @@ IMPL_LINK ( PlaceEditDialog, EditUsernameHdl, void *, EMPTYARG ) for ( std::vector< boost::shared_ptr< DetailsContainer > >::iterator it = m_aDetailsContainers.begin( ); it != m_aDetailsContainers.end( ); ++it ) { - ( *it )->setUsername( rtl::OUString( m_aEDUsername.GetText() ) ); + ( *it )->setUsername( rtl::OUString( m_pEDUsername->GetText() ) ); } return 1; } IMPL_LINK( PlaceEditDialog, SelectTypeHdl, void*, EMPTYARG ) { - // Compute the vertical space between two rows - long nRowDelta = m_aLBServerType.GetPosPixel().getY() - m_aEDServerName.GetPosPixel().getY(); - long nRowSpace = nRowDelta - m_aEDServerName.GetSizePixel().getHeight(); - - long nOldHeight = 0; if ( m_pCurrentDetails.get( ) ) - { m_pCurrentDetails->show( false ); - Rectangle aOldBounds = m_pCurrentDetails->getBounds( ); - if ( !aOldBounds.IsEmpty() ) - nOldHeight = aOldBounds.getHeight(); - } - sal_uInt16 nPos = m_aLBServerType.GetSelectEntryPos( ); + sal_uInt16 nPos = m_pLBServerType->GetSelectEntryPos( ); m_pCurrentDetails = m_aDetailsContainers[nPos]; m_pCurrentDetails->show( true ); - Rectangle aNewBounds = m_pCurrentDetails->getBounds(); - - long nNewHeight = 0; - if ( !aNewBounds.IsEmpty() ) - { - nNewHeight = aNewBounds.getHeight(); - - // Add row space if old height was 0 - if ( nOldHeight == 0 ) - nNewHeight += nRowSpace; - } - - // If the new height is 0, but not the old one, then remove the doubled row space - if ( nNewHeight == 0 && nOldHeight > 0 ) - nNewHeight -= nRowSpace; - - long nHeightDelta = nNewHeight - nOldHeight; - Control* pToMove[] = - { - &m_aFTUsername, - &m_aEDUsername, - &m_aBTOk, - &m_aBTCancel, - &m_aBTDelete - }; - - Control** pCurrent = pToMove; - for ( sal_Int32 i = 0; i < sal_Int32(SAL_N_ELEMENTS( pToMove )); ++i, ++pCurrent ) - { - Point aPos = ( *pCurrent )->GetPosPixel( ); - aPos.setY( aPos.getY( ) + nHeightDelta ); - ( *pCurrent )->SetPosPixel( aPos ); - } - - // Resize the dialog too - Size aDlgSize = GetSizePixel( ); - aDlgSize.setHeight( aDlgSize.getHeight( ) + nHeightDelta ); - SetSizePixel( aDlgSize ); - + SetSizePixel( GetOptimalSize( WINDOWSIZE_MINIMUM ) ); return 0; } diff --git a/svtools/source/dialogs/ServerDetailsControls.cxx b/svtools/source/dialogs/ServerDetailsControls.cxx index a41e42cba3da..056f7f9d6033 100644 --- a/svtools/source/dialogs/ServerDetailsControls.cxx +++ b/svtools/source/dialogs/ServerDetailsControls.cxx @@ -50,58 +50,18 @@ using namespace com::sun::star::task; using namespace com::sun::star::ucb; using namespace com::sun::star::uno; -DetailsContainer::DetailsContainer( ) : - m_aControls( ), - m_bShown( false ) +DetailsContainer::DetailsContainer( VclBuilderContainer* pBuilder, const rtl::OString& rFrame ) { + pBuilder->get( m_pFrame, rFrame ); } DetailsContainer::~DetailsContainer( ) { - m_aControls.clear( ); -} - -void DetailsContainer::addControl( sal_uInt16 nId, Control* pControl ) -{ - m_aControls.insert( pair< sal_uInt16, Control* >( nId, pControl ) ); - pControl->Show( m_bShown ); - - if ( pControl->GetType( ) == WINDOW_EDIT ) - static_cast< Edit* >( pControl )->SetModifyHdl( LINK( this, DetailsContainer, ValueChangeHdl ) ); - else if ( pControl->GetType( ) == WINDOW_NUMERICFIELD ) - static_cast< NumericField* >( pControl )->SetModifyHdl( LINK( this, DetailsContainer, ValueChangeHdl ) ); - else if ( pControl->GetType( ) == WINDOW_CHECKBOX ) - static_cast< CheckBox* >( pControl )->SetToggleHdl( LINK( this, DetailsContainer, ValueChangeHdl ) ); -} - -Control* DetailsContainer::getControl( sal_uInt16 nId ) -{ - Control* pControl = NULL; - map< sal_uInt16, Control* >::iterator it = m_aControls.find( nId ); - if ( it != m_aControls.end( ) ) - pControl = it->second; - return pControl; -} - -Rectangle DetailsContainer::getBounds( ) -{ - Rectangle aBounds; - for ( map< sal_uInt16, Control* >::iterator it = m_aControls.begin( ); it != m_aControls.end( ); ++it ) - { - Rectangle aControlBounds( it->second->GetPosPixel(), it->second->GetSizePixel() ); - aBounds = aBounds.GetUnion( aControlBounds ); - } - - return aBounds; } void DetailsContainer::show( bool bShow ) { - m_bShown = bShow; - for ( map< sal_uInt16, Control* >::iterator it = m_aControls.begin( ); it != m_aControls.end( ); ++it ) - { - it->second->Show( m_bShown ); - } + m_pFrame->Show( bShow ); } INetURLObject DetailsContainer::getUrl( ) @@ -128,25 +88,35 @@ IMPL_LINK( DetailsContainer, ValueChangeHdl, void *, EMPTYARG ) return 0; } -HostDetailsContainer::HostDetailsContainer( sal_uInt16 nPort, rtl::OUString sScheme ) : - DetailsContainer( ), +HostDetailsContainer::HostDetailsContainer( VclBuilderContainer* pBuilder, sal_uInt16 nPort, rtl::OUString sScheme ) : + DetailsContainer( pBuilder, "HostDetails" ), m_nDefaultPort( nPort ), m_sScheme( sScheme ) { + pBuilder->get( m_pEDHost, "host" ); + m_pEDHost->SetModifyHdl( LINK( this, DetailsContainer, ValueChangeHdl ) ); + + pBuilder->get( m_pEDPort, "port" ); + m_pEDPort->SetModifyHdl( LINK( this, DetailsContainer, ValueChangeHdl ) ); + + pBuilder->get( m_pEDPath, "path" ); + m_pEDPath->SetModifyHdl( LINK( this, DetailsContainer, ValueChangeHdl ) ); + + show( false ); } void HostDetailsContainer::show( bool bShow ) { DetailsContainer::show( bShow ); if ( bShow ) - static_cast< NumericField* >( getControl( ED_ADDPLACE_PORT ) )->SetValue( m_nDefaultPort ); + m_pEDPort->SetValue( m_nDefaultPort ); } INetURLObject HostDetailsContainer::getUrl( ) { - rtl::OUString sHost = rtl::OUString( static_cast< Edit* >( getControl( ED_ADDPLACE_HOST ) )->GetText() ).trim( ); - sal_Int64 nPort = static_cast< NumericField* >( getControl( ED_ADDPLACE_PORT ) )->GetValue(); - rtl::OUString sPath = rtl::OUString( static_cast< Edit* >( getControl( ED_ADDPLACE_PATH ) )->GetText() ).trim( ); + rtl::OUString sHost = rtl::OUString( m_pEDHost->GetText() ).trim( ); + sal_Int64 nPort = m_pEDPort->GetValue(); + rtl::OUString sPath = rtl::OUString( m_pEDPath->GetText() ).trim( ); rtl::OUString sUrl; if ( !sHost.isEmpty( ) ) @@ -171,9 +141,9 @@ bool HostDetailsContainer::setUrl( const INetURLObject& rUrl ) if ( bSuccess ) { - static_cast< Edit* >( getControl( ED_ADDPLACE_HOST ) )->SetText( rUrl.GetHost( ) ); - static_cast< NumericField* >( getControl( ED_ADDPLACE_PORT ) )->SetValue( rUrl.GetPort( ) ); - static_cast< Edit* >( getControl( ED_ADDPLACE_PATH ) )->SetText( rUrl.GetURLPath() ); + m_pEDHost->SetText( rUrl.GetHost( ) ); + m_pEDPort->SetValue( rUrl.GetPort( ) ); + m_pEDPath->SetText( rUrl.GetURLPath() ); } return bSuccess; @@ -184,25 +154,23 @@ bool HostDetailsContainer::verifyScheme( const rtl::OUString& sScheme ) return sScheme.equals( m_sScheme + "://" ); } -DavDetailsContainer::DavDetailsContainer( ) : - HostDetailsContainer( 80, "http" ) -{ -} - -void DavDetailsContainer::addControl( sal_uInt16 nId, Control* pControl ) +DavDetailsContainer::DavDetailsContainer( VclBuilderContainer* pBuilder ) : + HostDetailsContainer( pBuilder, 80, "http" ) { - DetailsContainer::addControl( nId, pControl ); + pBuilder->get( m_pCBDavs, "webdavs" ); + m_pCBDavs->SetToggleHdl( LINK( this, DavDetailsContainer, ToggledDavsHdl ) ); - // Add listener on CB_ADDPLACE_DAVS - if ( nId == CB_ADDPLACE_DAVS ) - static_cast< CheckBox* >( pControl )->SetToggleHdl( LINK( this, DavDetailsContainer, ToggledDavsHdl ) ); + show( false ); } void DavDetailsContainer::show( bool bShow ) { HostDetailsContainer::show( bShow ); + + m_pCBDavs->Show( bShow ); + if ( bShow ) - static_cast< CheckBox* >( getControl( CB_ADDPLACE_DAVS ) )->Check( false ); + m_pCBDavs->Check( false ); } bool DavDetailsContainer::verifyScheme( const rtl::OUString& rScheme ) @@ -211,12 +179,12 @@ bool DavDetailsContainer::verifyScheme( const rtl::OUString& rScheme ) if ( rScheme.equals( "http://" ) ) { bValid = true; - static_cast< CheckBox* >( getControl( CB_ADDPLACE_DAVS ) )->Check( false ); + m_pCBDavs->Check( false ); } else if ( rScheme.equals( "https://" ) ) { bValid = true; - static_cast< CheckBox* >( getControl( CB_ADDPLACE_DAVS ) )->Check( true ); + m_pCBDavs->Check( true ); } return bValid; } @@ -225,11 +193,10 @@ IMPL_LINK( DavDetailsContainer, ToggledDavsHdl, CheckBox*, pCheckBox ) { // Change default port if needed sal_Bool bCheckedDavs = pCheckBox->IsChecked(); - NumericField* pPortField = static_cast< NumericField* >( getControl( ED_ADDPLACE_PORT ) ); - if ( pPortField->GetValue() == 80 && bCheckedDavs == sal_True) - pPortField->SetValue( 443 ); - else if ( pPortField->GetValue() == 443 && bCheckedDavs == sal_False ) - pPortField->SetValue( 80 ); + if ( m_pEDPort->GetValue() == 80 && bCheckedDavs == sal_True) + m_pEDPort->SetValue( 443 ); + else if ( m_pEDPort->GetValue() == 443 && bCheckedDavs == sal_False ) + m_pEDPort->SetValue( 80 ); rtl::OUString sScheme( "http" ); if ( bCheckedDavs ) @@ -241,11 +208,26 @@ IMPL_LINK( DavDetailsContainer, ToggledDavsHdl, CheckBox*, pCheckBox ) return 0; } +SmbDetailsContainer::SmbDetailsContainer( VclBuilderContainer* pBuilder ) : + DetailsContainer( pBuilder, "SmbDetails" ) +{ + pBuilder->get( m_pEDHost, "smbHost" ); + m_pEDHost->SetModifyHdl( LINK( this, DetailsContainer, ValueChangeHdl ) ); + + pBuilder->get( m_pEDShare, "smbShare" ); + m_pEDShare->SetModifyHdl( LINK( this, DetailsContainer, ValueChangeHdl ) ); + + pBuilder->get( m_pEDPath, "smbPath" ); + m_pEDPath->SetModifyHdl( LINK( this, DetailsContainer, ValueChangeHdl ) ); + + show( false ); +} + INetURLObject SmbDetailsContainer::getUrl( ) { - rtl::OUString sHost = rtl::OUString( static_cast< Edit* >( getControl( ED_ADDPLACE_SMBHOST ) )->GetText() ).trim( ); - rtl::OUString sShare = rtl::OUString( static_cast< Edit* >( getControl( ED_ADDPLACE_SHARE ) )->GetText() ).trim( ); - rtl::OUString sPath = rtl::OUString( static_cast< Edit* >( getControl( ED_ADDPLACE_SMBPATH ) )->GetText() ).trim( ); + rtl::OUString sHost = rtl::OUString( m_pEDHost->GetText() ).trim( ); + rtl::OUString sShare = rtl::OUString( m_pEDShare->GetText() ).trim( ); + rtl::OUString sPath = rtl::OUString( m_pEDPath->GetText() ).trim( ); rtl::OUString sUrl; if ( !sHost.isEmpty( ) ) @@ -279,16 +261,16 @@ bool SmbDetailsContainer::setUrl( const INetURLObject& rUrl ) sPath = sFullPath.copy( nPos ); } - static_cast< Edit* >( getControl( ED_ADDPLACE_SMBHOST ) )->SetText( rUrl.GetHost( ) ); - static_cast< Edit* >( getControl( ED_ADDPLACE_SHARE ) )->SetText( sShare ); - static_cast< Edit* >( getControl( ED_ADDPLACE_SMBPATH ) )->SetText( sPath ); + m_pEDHost->SetText( rUrl.GetHost( ) ); + m_pEDShare->SetText( sShare ); + m_pEDPath->SetText( sPath ); } return bSuccess; } -CmisDetailsContainer::CmisDetailsContainer( ) : - DetailsContainer( ), +CmisDetailsContainer::CmisDetailsContainer( VclBuilderContainer* pBuilder ) : + DetailsContainer( pBuilder, "CmisDetails" ), m_sUsername( ), m_xCmdEnv( ) { @@ -296,11 +278,22 @@ CmisDetailsContainer::CmisDetailsContainer( ) : Reference< XInteractionHandler > xGlobalInteractionHandler( InteractionHandler::createWithParent(xContext, 0), UNO_QUERY ); m_xCmdEnv = new ucbhelper::CommandEnvironment( xGlobalInteractionHandler, Reference< XProgressHandler >() ); + + pBuilder->get( m_pEDBinding, "binding" ); + m_pEDBinding->SetModifyHdl( LINK( this, DetailsContainer, ValueChangeHdl ) ); + + pBuilder->get( m_pLBRepository, "repositories" ); + m_pLBRepository->SetSelectHdl( LINK( this, CmisDetailsContainer, SelectRepoHdl ) ); + + pBuilder->get( m_pBTRepoRefresh, "repositoriesRefresh" ); + m_pBTRepoRefresh->SetClickHdl( LINK( this, CmisDetailsContainer, RefreshReposHdl ) ); + + show( false ); } INetURLObject CmisDetailsContainer::getUrl( ) { - rtl::OUString sBindingUrl = rtl::OUString( static_cast< Edit* >( getControl( ED_ADDPLACE_CMIS_BINDING ) )->GetText() ).trim( ); + rtl::OUString sBindingUrl = rtl::OUString( m_pEDBinding->GetText() ).trim( ); rtl::OUString sUrl; if ( !sBindingUrl.isEmpty( ) && !m_sRepoId.isEmpty() ) @@ -330,7 +323,7 @@ bool CmisDetailsContainer::setUrl( const INetURLObject& rUrl ) sBindingUrl = aHostUrl.GetURLNoMark( ); sRepositoryId = aHostUrl.GetMark( ); - static_cast< Edit* >( getControl( ED_ADDPLACE_CMIS_BINDING ) )->SetText( sBindingUrl ); + m_pEDBinding->SetText( sBindingUrl ); } return bSuccess; @@ -341,22 +334,10 @@ void CmisDetailsContainer::setUsername( const rtl::OUString& rUsername ) m_sUsername = rtl::OUString( rUsername ); } -void CmisDetailsContainer::addControl( sal_uInt16 nId, Control* pControl ) -{ - DetailsContainer::addControl( nId, pControl ); - - // Add listener on BT_ADDPLACE_CMIS_REPOREFRESH - if ( nId == BT_ADDPLACE_CMIS_REPOREFRESH ) - static_cast< ImageButton* >( pControl )->SetClickHdl( LINK( this, CmisDetailsContainer, RefreshReposHdl ) ); - if ( nId == LB_ADDPLACE_CMIS_REPOSITORY ) - static_cast< ListBox* >( pControl )->SetSelectHdl( LINK( this, CmisDetailsContainer, SelectRepoHdl ) ); -} - void CmisDetailsContainer::selectRepository( ) { // Get the repo ID and call the Change listener - ListBox* pReposList = static_cast< ListBox* >( getControl( LB_ADDPLACE_CMIS_REPOSITORY ) ); - sal_uInt16 nPos = pReposList->GetSelectEntryPos( ); + sal_uInt16 nPos = m_pLBRepository->GetSelectEntryPos( ); m_sRepoId = m_aRepoIds[nPos]; notifyChange( ); @@ -364,11 +345,10 @@ void CmisDetailsContainer::selectRepository( ) IMPL_LINK( CmisDetailsContainer, RefreshReposHdl, void *, EMPTYARG ) { - rtl::OUString sBindingUrl = rtl::OUString( static_cast< Edit* >( getControl( ED_ADDPLACE_CMIS_BINDING ) )->GetText() ).trim( ); + rtl::OUString sBindingUrl = rtl::OUString( m_pEDBinding->GetText() ).trim( ); // Clean the listbox - ListBox* pReposList = static_cast< ListBox* >( getControl( LB_ADDPLACE_CMIS_REPOSITORY ) ); - pReposList->Clear( ); + m_pLBRepository->Clear( ); m_aRepoIds.clear( ); // Compute the URL @@ -402,7 +382,7 @@ IMPL_LINK( CmisDetailsContainer, RefreshReposHdl, void *, EMPTYARG ) Reference< XRow > xRow( xResultSet, UNO_QUERY ); rtl::OUString sName = xRow->getString( 1 ); - pReposList->InsertEntry( sName ); + m_pLBRepository->InsertEntry( sName ); } } catch ( const Exception& ) @@ -410,9 +390,9 @@ IMPL_LINK( CmisDetailsContainer, RefreshReposHdl, void *, EMPTYARG ) } // Auto-select the first one - if ( pReposList->GetEntryCount( ) > 0 ) + if ( m_pLBRepository->GetEntryCount( ) > 0 ) { - pReposList->SelectEntryPos( 0 ); + m_pLBRepository->SelectEntryPos( 0 ); selectRepository( ); } diff --git a/svtools/uiconfig/ui/placeedit.ui b/svtools/uiconfig/ui/placeedit.ui new file mode 100644 index 000000000000..2f0a2aa8bcdc --- /dev/null +++ b/svtools/uiconfig/ui/placeedit.ui @@ -0,0 +1,660 @@ +<?xml version="1.0" encoding="UTF-8"?> +<interface> + <!-- interface-requires gtk+ 3.0 --> + <object class="GtkAdjustment" id="adjustment1"> + <property name="upper">65535</property> + <property name="step_increment">1</property> + <property name="page_increment">10</property> + </object> + <object class="GtkListStore" id="ServerTypes"> + <columns> + <!-- column-name ServerType --> + <column type="gchararray"/> + </columns> + <data> + <row> + <col id="0" translatable="yes">WebDAV</col> + </row> + <row> + <col id="0" translatable="yes">FTP</col> + </row> + <row> + <col id="0" translatable="yes">SSH</col> + </row> + <row> + <col id="0" translatable="yes">Windows Share</col> + </row> + <row> + <col id="0" translatable="yes">CMIS</col> + </row> + </data> + </object> + <object class="GtkDialog" id="PlaceEditDialog"> + <property name="can_focus">False</property> + <property name="border_width">5</property> + <property name="type_hint">dialog</property> + <child internal-child="vbox"> + <object class="GtkBox" id="dialog-vbox1"> + <property name="can_focus">False</property> + <property name="orientation">vertical</property> + <property name="spacing">2</property> + <child> + <object class="GtkGrid" id="grid1"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="column_spacing">6</property> + <child> + <object class="GtkLabel" id="label1"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="halign">start</property> + <property name="label" translatable="yes">Name</property> + </object> + <packing> + <property name="left_attach">0</property> + <property name="top_attach">0</property> + <property name="width">1</property> + <property name="height">1</property> + </packing> + </child> + <child> + <object class="GtkLabel" id="label2"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="halign">start</property> + <property name="margin_top">6</property> + <property name="label" translatable="yes">Type</property> + </object> + <packing> + <property name="left_attach">0</property> + <property name="top_attach">1</property> + <property name="width">1</property> + <property name="height">1</property> + </packing> + </child> + <child> + <object class="GtkEntry" id="name"> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="hexpand">True</property> + <property name="invisible_char">●</property> + </object> + <packing> + <property name="left_attach">1</property> + <property name="top_attach">0</property> + <property name="width">1</property> + <property name="height">1</property> + </packing> + </child> + <child> + <object class="GtkComboBox" id="type"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="margin_top">6</property> + <property name="hexpand">True</property> + <property name="model">ServerTypes</property> + <child> + <object class="GtkCellRendererText" id="cellrenderertext1"/> + <attributes> + <attribute name="text">0</attribute> + </attributes> + </child> + </object> + <packing> + <property name="left_attach">1</property> + <property name="top_attach">1</property> + <property name="width">1</property> + <property name="height">1</property> + </packing> + </child> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">0</property> + </packing> + </child> + <child> + <object class="GtkFrame" id="HostDetails"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="label_xalign">0</property> + <property name="shadow_type">none</property> + <child> + <object class="GtkAlignment" id="alignment1"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="left_padding">12</property> + <child> + <object class="GtkGrid" id="grid2"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="row_spacing">6</property> + <property name="column_spacing">6</property> + <child> + <object class="GtkLabel" id="hostLabel"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="halign">start</property> + <property name="label" translatable="yes">Host</property> + </object> + <packing> + <property name="left_attach">0</property> + <property name="top_attach">0</property> + <property name="width">1</property> + <property name="height">1</property> + </packing> + </child> + <child> + <object class="GtkLabel" id="pathLabel"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="halign">start</property> + <property name="label" translatable="yes">Path</property> + </object> + <packing> + <property name="left_attach">0</property> + <property name="top_attach">1</property> + <property name="width">1</property> + <property name="height">1</property> + </packing> + </child> + <child> + <object class="GtkGrid" id="grid3"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="row_spacing">5</property> + <property name="column_spacing">6</property> + <child> + <object class="GtkEntry" id="host"> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="hexpand">True</property> + <property name="invisible_char">●</property> + </object> + <packing> + <property name="left_attach">0</property> + <property name="top_attach">0</property> + <property name="width">1</property> + <property name="height">1</property> + </packing> + </child> + <child> + <object class="GtkLabel" id="portLabel"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="halign">start</property> + <property name="label" translatable="yes">Port</property> + </object> + <packing> + <property name="left_attach">1</property> + <property name="top_attach">0</property> + <property name="width">1</property> + <property name="height">1</property> + </packing> + </child> + <child> + <object class="GtkSpinButton" id="port"> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="invisible_char">●</property> + <property name="adjustment">adjustment1</property> + <property name="numeric">True</property> + </object> + <packing> + <property name="left_attach">2</property> + <property name="top_attach">0</property> + <property name="width">1</property> + <property name="height">1</property> + </packing> + </child> + </object> + <packing> + <property name="left_attach">1</property> + <property name="top_attach">0</property> + <property name="width">1</property> + <property name="height">1</property> + </packing> + </child> + <child> + <object class="GtkEntry" id="path"> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="hexpand">True</property> + <property name="invisible_char">●</property> + </object> + <packing> + <property name="left_attach">1</property> + <property name="top_attach">1</property> + <property name="width">1</property> + <property name="height">1</property> + </packing> + </child> + <child> + <object class="GtkCheckButton" id="webdavs"> + <property name="label" translatable="yes">Secured WebDAV (HTTPS)</property> + <property name="use_action_appearance">False</property> + <property name="can_focus">True</property> + <property name="receives_default">False</property> + <property name="hexpand">True</property> + <property name="use_action_appearance">False</property> + <property name="xalign">0</property> + <property name="draw_indicator">True</property> + </object> + <packing> + <property name="left_attach">1</property> + <property name="top_attach">2</property> + <property name="width">1</property> + <property name="height">1</property> + </packing> + </child> + <child> + <placeholder/> + </child> + </object> + </child> + </object> + </child> + <child type="label"> + <object class="GtkLabel" id="label4"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="label" translatable="yes">Server Details</property> + <attributes> + <attribute name="weight" value="bold"/> + </attributes> + </object> + </child> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">1</property> + </packing> + </child> + <child> + <object class="GtkFrame" id="SmbDetails"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="label_xalign">0</property> + <property name="shadow_type">none</property> + <child> + <object class="GtkAlignment" id="alignment2"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="left_padding">12</property> + <child> + <object class="GtkGrid" id="grid4"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="row_spacing">6</property> + <property name="column_spacing">6</property> + <child> + <object class="GtkLabel" id="label9"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="halign">start</property> + <property name="label" translatable="yes">Host</property> + </object> + <packing> + <property name="left_attach">0</property> + <property name="top_attach">0</property> + <property name="width">1</property> + <property name="height">1</property> + </packing> + </child> + <child> + <object class="GtkLabel" id="label10"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="halign">start</property> + <property name="label" translatable="yes">Share</property> + </object> + <packing> + <property name="left_attach">0</property> + <property name="top_attach">1</property> + <property name="width">1</property> + <property name="height">1</property> + </packing> + </child> + <child> + <object class="GtkLabel" id="label11"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="halign">start</property> + <property name="label" translatable="yes">Path</property> + </object> + <packing> + <property name="left_attach">0</property> + <property name="top_attach">2</property> + <property name="width">1</property> + <property name="height">1</property> + </packing> + </child> + <child> + <object class="GtkEntry" id="smbHost"> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="hexpand">True</property> + <property name="invisible_char">●</property> + </object> + <packing> + <property name="left_attach">1</property> + <property name="top_attach">0</property> + <property name="width">1</property> + <property name="height">1</property> + </packing> + </child> + <child> + <object class="GtkEntry" id="smbShare"> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="hexpand">True</property> + <property name="invisible_char">●</property> + </object> + <packing> + <property name="left_attach">1</property> + <property name="top_attach">1</property> + <property name="width">1</property> + <property name="height">1</property> + </packing> + </child> + <child> + <object class="GtkEntry" id="smbPath"> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="hexpand">True</property> + <property name="invisible_char">●</property> + </object> + <packing> + <property name="left_attach">1</property> + <property name="top_attach">2</property> + <property name="width">1</property> + <property name="height">1</property> + </packing> + </child> + </object> + </child> + </object> + </child> + <child type="label"> + <object class="GtkLabel" id="label8"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="label" translatable="yes">Server Details</property> + <attributes> + <attribute name="weight" value="bold"/> + </attributes> + </object> + </child> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">3</property> + </packing> + </child> + <child> + <object class="GtkFrame" id="CmisDetails"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="label_xalign">0</property> + <property name="shadow_type">none</property> + <child> + <object class="GtkAlignment" id="alignment3"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="left_padding">12</property> + <child> + <object class="GtkGrid" id="grid5"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="row_spacing">6</property> + <property name="column_spacing">6</property> + <child> + <object class="GtkLabel" id="bindingLabel"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="halign">start</property> + <property name="label" translatable="yes">Binding URL</property> + </object> + <packing> + <property name="left_attach">0</property> + <property name="top_attach">0</property> + <property name="width">1</property> + <property name="height">1</property> + </packing> + </child> + <child> + <object class="GtkLabel" id="repositoryLabel"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="halign">start</property> + <property name="label" translatable="yes">Repository</property> + </object> + <packing> + <property name="left_attach">0</property> + <property name="top_attach">1</property> + <property name="width">1</property> + <property name="height">1</property> + </packing> + </child> + <child> + <object class="GtkEntry" id="binding"> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="hexpand">True</property> + <property name="invisible_char">●</property> + </object> + <packing> + <property name="left_attach">1</property> + <property name="top_attach">0</property> + <property name="width">1</property> + <property name="height">1</property> + </packing> + </child> + <child> + <object class="GtkGrid" id="grid6"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="column_spacing">6</property> + <child> + <object class="GtkComboBox" id="repositories"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="hexpand">True</property> + </object> + <packing> + <property name="left_attach">0</property> + <property name="top_attach">0</property> + <property name="width">1</property> + <property name="height">1</property> + </packing> + </child> + <child> + <object class="GtkButton" id="repositoriesRefresh"> + <property name="use_action_appearance">False</property> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="receives_default">True</property> + <property name="use_action_appearance">False</property> + <property name="image">image1</property> + </object> + <packing> + <property name="left_attach">1</property> + <property name="top_attach">0</property> + <property name="width">1</property> + <property name="height">1</property> + </packing> + </child> + </object> + <packing> + <property name="left_attach">1</property> + <property name="top_attach">1</property> + <property name="width">1</property> + <property name="height">1</property> + </packing> + </child> + </object> + </child> + </object> + </child> + <child type="label"> + <object class="GtkLabel" id="label12"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="label" translatable="yes">Server Details</property> + <attributes> + <attribute name="weight" value="bold"/> + </attributes> + </object> + </child> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">3</property> + </packing> + </child> + <child internal-child="action_area"> + <object class="GtkButtonBox" id="dialog-action_area1"> + <property name="can_focus">False</property> + <property name="layout_style">end</property> + <child> + <object class="GtkButton" id="delete"> + <property name="label">gtk-delete</property> + <property name="use_action_appearance">False</property> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="receives_default">True</property> + <property name="use_action_appearance">False</property> + <property name="use_stock">True</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">0</property> + </packing> + </child> + <child> + <object class="GtkButton" id="ok"> + <property name="label">gtk-ok</property> + <property name="use_action_appearance">False</property> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="can_default">True</property> + <property name="has_default">True</property> + <property name="receives_default">True</property> + <property name="use_action_appearance">False</property> + <property name="use_stock">True</property> + <property name="yalign">0.50999999046325684</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">2</property> + </packing> + </child> + <child> + <object class="GtkButton" id="cancel"> + <property name="label">gtk-cancel</property> + <property name="use_action_appearance">False</property> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="receives_default">True</property> + <property name="use_action_appearance">False</property> + <property name="use_stock">True</property> + <property name="image_position">top</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">3</property> + </packing> + </child> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="pack_type">end</property> + <property name="position">3</property> + </packing> + </child> + <child> + <object class="GtkFrame" id="UserDetails"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="label_xalign">0</property> + <property name="shadow_type">none</property> + <child> + <object class="GtkAlignment" id="alignment4"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="left_padding">12</property> + <child> + <object class="GtkGrid" id="grid7"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="column_spacing">6</property> + <child> + <object class="GtkLabel" id="label16"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="label" translatable="yes">Login</property> + </object> + <packing> + <property name="left_attach">0</property> + <property name="top_attach">0</property> + <property name="width">1</property> + <property name="height">1</property> + </packing> + </child> + <child> + <object class="GtkEntry" id="login"> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="hexpand">True</property> + <property name="invisible_char">●</property> + </object> + <packing> + <property name="left_attach">1</property> + <property name="top_attach">0</property> + <property name="width">1</property> + <property name="height">1</property> + </packing> + </child> + </object> + </child> + </object> + </child> + <child type="label"> + <object class="GtkLabel" id="label15"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="label" translatable="yes">User Details</property> + <attributes> + <attribute name="weight" value="bold"/> + </attributes> + </object> + </child> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">5</property> + </packing> + </child> + </object> + </child> + <action-widgets> + <action-widget response="0">delete</action-widget> + <action-widget response="0">ok</action-widget> + <action-widget response="0">cancel</action-widget> + </action-widgets> + </object> + <object class="GtkImage" id="image1"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="stock">gtk-refresh</property> + </object> +</interface> |