[Libreoffice-commits] core.git: Branch 'feature/gsoc15-open-remote-files-dialog' - 197 commits - accessibility/inc accessibility/source animations/source avmedia/source basctl/Library_basctl.mk basctl/source basegfx/source basic/inc basic/qa basic/source bin/gbuild-to-ide chart2/inc chart2/Library_chartcontroller.mk chart2/source chart2/uiconfig chart2/UIConfig_chart2.mk chart2/workbench comphelper/inc comphelper/qa comphelper/source compilerplugins/clang connectivity/source connectivity/workben cppcanvas/source cpputools/source cui/source cui/uiconfig dbaccess/source desktop/inc desktop/source distro-configs/LibreOfficeLinux.conf distro-configs/LibreOfficeWin32.conf distro-configs/LibreOfficeWin64.conf editeng/source embeddedobj/test extensions/source extras/source filter/qa filter/source forms/source formula/source fpicker/source fpicker/uiconfig framework/inc framework/source helpcontent2 hwpfilter/source i18npool/inc icon-themes/breeze icon-themes/galaxy icon-themes/hicontrast icon-themes/hum an icon-themes/tango include/animations include/avmedia include/basic include/comphelper include/connectivity include/dbaccess include/editeng include/filter include/formula include/oox include/osl include/salhelper include/sax include/sfx2 include/svl include/svtools include/svx include/unotools include/vbahelper include/vcl include/xmloff jurt/com lingucomponent/source lotuswordpro/source odk/examples officecfg/registry oox/inc oox/source pyuno/source qadevOOo/runner qadevOOo/tests readlicense_oo/docs reportdesign/inc reportdesign/source rsc/inc sal/inc sal/Library_sal.mk sal/osl sal/rtl sax/source scaddins/source sc/inc sc/qa sc/source sc/uiconfig sdext/source sd/inc sd/Library_sd.mk sd/sdi sd/source sd/uiconfig sfx2/Library_sfx.mk sfx2/sdi sfx2/source shell/source slideshow/source solenv/bin starmath/inc starmath/source svl/source svtools/source svx/sdi svx/source svx/workben sw/inc sw/qa sw/source sw/uiconfig toolkit/source tools/source ucb/source udkapi/com unotools/source vba helper/source vcl/inc vcl/source vcl/unx winaccessibility/source wizards/com writerfilter/inc writerfilter/source writerperfect/source xmloff/source xmlsecurity/inc xmlsecurity/source
Szymon Kłos
eszkadev at gmail.com
Wed Jul 22 08:29:10 PDT 2015
Rebased ref, commits from common ancestor:
commit 7452219d0042114381b0b3adbe0272686a77004a
Author: Szymon Kłos <eszkadev at gmail.com>
Date: Wed Jul 22 17:20:26 2015 +0200
show error when directory doesn't exist
Change-Id: I1c8ca1a509c9187687079d86f0e637b26490a7a3
diff --git a/fpicker/source/office/RemoteFilesDialog.cxx b/fpicker/source/office/RemoteFilesDialog.cxx
index bd35802..4e69c9d 100644
--- a/fpicker/source/office/RemoteFilesDialog.cxx
+++ b/fpicker/source/office/RemoteFilesDialog.cxx
@@ -462,7 +462,7 @@ FileViewResult RemoteFilesDialog::OpenURL( OUString const & sURL )
if( m_pFileView )
{
- if( ContentIsFolder( sURL ) )
+ if( !sURL.isEmpty() && ContentIsFolder( sURL ) )
{
OUString sFilter = FILEDIALOG_FILTER_ALL;
@@ -496,6 +496,9 @@ FileViewResult RemoteFilesDialog::OpenURL( OUString const & sURL )
else
{
// content doesn't exist
+ m_pTreeView->EndSelection();
+ ErrorHandler::HandleError( ERRCODE_IO_NOTEXISTS );
+ return eFailure;
}
}
@@ -689,13 +692,13 @@ IMPL_LINK_NOARG ( RemoteFilesDialog, DoubleClickHdl )
{
OUString sURL = m_pFileView->GetCurrentURL();
- if( ContentIsFolder( sURL ) )
+ if( ContentIsDocument( sURL ) )
{
- OpenURL( sURL );
+ EndDialog( RET_OK );
}
else
{
- EndDialog( RET_OK );
+ OpenURL( sURL );
}
}
@@ -1043,6 +1046,26 @@ bool RemoteFilesDialog::ContentIsFolder( const OUString& rURL )
return false;
}
+bool RemoteFilesDialog::ContentIsDocument( const OUString& rURL )
+{
+ try
+ {
+ Reference< XComponentContext > xContext = ::comphelper::getProcessComponentContext();
+ Reference< XInteractionHandler > xInteractionHandler(
+ InteractionHandler::createWithParent( xContext, 0 ), UNO_QUERY_THROW );
+ Reference< XCommandEnvironment > xEnv = new ::ucbhelper::CommandEnvironment( xInteractionHandler, Reference< XProgressHandler >() );
+ ::ucbhelper::Content aContent( rURL, xEnv, xContext );
+
+ return aContent.isDocument();
+ }
+ catch( const Exception& )
+ {
+ // a content doesn't exist
+ }
+
+ return false;
+}
+
sal_Int32 RemoteFilesDialog::getTargetColorDepth()
{
// This dialog doesn't contain preview
diff --git a/fpicker/source/office/RemoteFilesDialog.hxx b/fpicker/source/office/RemoteFilesDialog.hxx
index ede30c7..b0f151e 100644
--- a/fpicker/source/office/RemoteFilesDialog.hxx
+++ b/fpicker/source/office/RemoteFilesDialog.hxx
@@ -16,6 +16,7 @@
#include <svtools/breadcrumb.hxx>
#include <svtools/fileview.hxx>
+#include <tools/errinf.hxx>
#include <tools/resid.hxx>
#include <vcl/button.hxx>
@@ -81,6 +82,7 @@ public:
virtual const OUString& GetPath() SAL_OVERRIDE;
virtual std::vector<OUString> GetPathList() const SAL_OVERRIDE;
virtual bool ContentIsFolder( const OUString& rURL ) SAL_OVERRIDE;
+ virtual bool ContentIsDocument( const OUString& rURL );
virtual void AddFilter( const OUString& rFilter, const OUString& rType ) SAL_OVERRIDE;
virtual void AddFilterGroup( const OUString& _rFilter,
commit 81d20fe15bc9e20e86bd2ea36d59b7c8f19d0b5e
Author: Szymon Kłos <eszkadev at gmail.com>
Date: Wed Jul 22 16:42:47 2015 +0200
reload content while expanding node
Change-Id: I7ce281ea4e2d5c5c9fc0b2b3f315defc14364df3
diff --git a/svtools/source/contnr/foldertree.cxx b/svtools/source/contnr/foldertree.cxx
index 63cc7e0..d597168 100644
--- a/svtools/source/contnr/foldertree.cxx
+++ b/svtools/source/contnr/foldertree.cxx
@@ -32,9 +32,14 @@ void FolderTree::RequestingChildren( SvTreeListEntry* pEntry )
void FolderTree::FillTreeEntry( SvTreeListEntry* pEntry )
{
- // fill only empty entries
- if( pEntry && GetChildCount( pEntry ) == 0 )
+ if( pEntry )
{
+ while( GetChildCount( pEntry ) > 0 )
+ {
+ SvTreeListEntry* pChild = FirstChild( pEntry );
+ GetModel()->Remove( pChild );
+ }
+
::std::vector< SortingData_Impl* > aContent;
::rtl::Reference< ::svt::FileViewContentEnumerator >
commit bda20aacb34eac82d0297ffbcb8a34c2744c556c
Author: Szymon Kłos <eszkadev at gmail.com>
Date: Wed Jul 22 15:19:37 2015 +0200
check if path exist before init of the fileview
Change-Id: I0c9384644cf5aabf83512c341d3ffff5d4847f36
diff --git a/fpicker/source/office/RemoteFilesDialog.cxx b/fpicker/source/office/RemoteFilesDialog.cxx
index 75615d1..bd35802 100644
--- a/fpicker/source/office/RemoteFilesDialog.cxx
+++ b/fpicker/source/office/RemoteFilesDialog.cxx
@@ -462,34 +462,41 @@ FileViewResult RemoteFilesDialog::OpenURL( OUString const & sURL )
if( m_pFileView )
{
- OUString sFilter = FILEDIALOG_FILTER_ALL;
-
- if( m_nCurrentFilter != LISTBOX_ENTRY_NOTFOUND )
+ if( ContentIsFolder( sURL ) )
{
- sFilter = m_aFilters[m_nCurrentFilter].second;
- }
+ OUString sFilter = FILEDIALOG_FILTER_ALL;
- m_pFileView->EndInplaceEditing( false );
+ if( m_nCurrentFilter != LISTBOX_ENTRY_NOTFOUND )
+ {
+ sFilter = m_aFilters[m_nCurrentFilter].second;
+ }
- EnableChildPointerOverwrite( true );
- SetPointer( PointerStyle::Wait );
+ m_pFileView->EndInplaceEditing( false );
- eResult = m_pFileView->Initialize( sURL, sFilter, NULL, GetBlackList() );
+ EnableChildPointerOverwrite( true );
+ SetPointer( PointerStyle::Wait );
- if( eResult == eSuccess )
- {
- m_pPath->SetURL( sURL );
+ eResult = m_pFileView->Initialize( sURL, sFilter, NULL, GetBlackList() );
- m_pTreeView->SetSelectHdl( Link<>() );
- m_pTreeView->SetTreePath( sURL );
- m_pTreeView->SetSelectHdl( LINK( this, RemoteFilesDialog, TreeSelectHdl ) );
+ if( eResult == eSuccess )
+ {
+ m_pPath->SetURL( sURL );
- m_bIsConnected = true;
- EnableControls();
- }
+ m_pTreeView->SetSelectHdl( Link<>() );
+ m_pTreeView->SetTreePath( sURL );
+ m_pTreeView->SetSelectHdl( LINK( this, RemoteFilesDialog, TreeSelectHdl ) );
+
+ m_bIsConnected = true;
+ EnableControls();
+ }
- SetPointer( PointerStyle::Arrow );
- EnableChildPointerOverwrite( false );
+ SetPointer( PointerStyle::Arrow );
+ EnableChildPointerOverwrite( false );
+ }
+ else
+ {
+ // content doesn't exist
+ }
}
return eResult;
commit b5f0393bc9fb07b70c5bb33ca375a32d9030cbff
Author: Szymon Kłos <eszkadev at gmail.com>
Date: Wed Jul 22 14:06:52 2015 +0200
Breadcrumb: clear all fields after changing root
Change-Id: I8cefc8f755234cb4b63ca3a414402469df0394e1
diff --git a/svtools/source/control/breadcrumb.cxx b/svtools/source/control/breadcrumb.cxx
index 564c968..f1725e9 100644
--- a/svtools/source/control/breadcrumb.cxx
+++ b/svtools/source/control/breadcrumb.cxx
@@ -45,6 +45,16 @@ OUString Breadcrumb::GetHdlURL()
void Breadcrumb::SetRootName( const OUString& rURL )
{
m_sRootName = rURL;
+
+ // we changed root - clear all fields
+ for( std::vector<VclPtr<FixedHyperlink>>::size_type i = 1; i < m_aLinks.size(); i++ )
+ {
+ m_aLinks[i]->SetText( "" );
+
+ m_aLinks[i]->Hide();
+ m_aSeparators[i]->Hide();
+ m_aLinks[i]->Enable( true );
+ }
}
void Breadcrumb::SetURL( const OUString& rURL )
commit 7ad15611b5dd0d4be7728438f5c46af8c071a08a
Author: Szymon Kłos <eszkadev at gmail.com>
Date: Tue Jul 21 17:21:57 2015 +0200
Open/Save Remote File in Impress/Draw toolbars and menu
Change-Id: I9503f5beaa8b5a6afc213747a691265acd5903f7
diff --git a/sd/source/ui/app/sddll.cxx b/sd/source/ui/app/sddll.cxx
index fe9e58a5..1564f37 100644
--- a/sd/source/ui/app/sddll.cxx
+++ b/sd/source/ui/app/sddll.cxx
@@ -243,6 +243,8 @@ void SdDLL::RegisterControllers()
SvxFrameLineStyleToolBoxControl::RegisterControl(SID_FRAME_LINESTYLE, pMod );
SvxColorToolBoxControl::RegisterControl(SID_FRAME_LINECOLOR, pMod );
SvxFrameToolBoxControl::RegisterControl(SID_ATTR_BORDER, pMod );
+
+ SfxSaveAsToolBoxControl::RegisterControl(SID_SAVEASDOC, pMod );
}
void SdDLL::Init()
diff --git a/sd/uiconfig/sdraw/menubar/menubar.xml b/sd/uiconfig/sdraw/menubar/menubar.xml
index bc8cfee..c1a9be9 100644
--- a/sd/uiconfig/sdraw/menubar/menubar.xml
+++ b/sd/uiconfig/sdraw/menubar/menubar.xml
@@ -21,6 +21,7 @@
<menu:menupopup>
<menu:menuitem menu:id=".uno:AddDirect"/>
<menu:menuitem menu:id=".uno:Open"/>
+ <menu:menuitem menu:id=".uno:OpenRemote"/>
<menu:menuitem menu:id=".uno:RecentFileList"/>
<menu:menuseparator/>
<menu:menuitem menu:id=".uno:AutoPilotMenu"/>
@@ -36,6 +37,7 @@
<menu:menuitem menu:id=".uno:Save"/>
<menu:menuitem menu:id=".uno:SaveAs"/>
<menu:menuitem menu:id=".uno:SaveACopy"/>
+ <menu:menuitem menu:id=".uno:SaveAsRemote"/>
<menu:menuitem menu:id=".uno:SaveAll"/>
<menu:menuitem menu:id=".uno:CheckOut"/>
<menu:menuitem menu:id=".uno:CancelCheckOut"/>
diff --git a/sd/uiconfig/sdraw/toolbar/standardbar.xml b/sd/uiconfig/sdraw/toolbar/standardbar.xml
index 06c7d5d..6e2d1fa 100644
--- a/sd/uiconfig/sdraw/toolbar/standardbar.xml
+++ b/sd/uiconfig/sdraw/toolbar/standardbar.xml
@@ -22,8 +22,9 @@
<toolbar:toolbaritem xlink:href=".uno:AddDirect" toolbar:helpid="5537"/>
<toolbar:toolbaritem xlink:href=".uno:NewDoc" toolbar:visible="false" toolbar:helpid="5500"/>
<toolbar:toolbaritem xlink:href=".uno:Open" toolbar:style="dropdown"/>
+ <toolbar:toolbaritem xlink:href=".uno:OpenRemote"/>
<toolbar:toolbaritem xlink:href=".uno:Save" toolbar:helpid="5505"/>
- <toolbar:toolbaritem xlink:href=".uno:SaveAs" toolbar:helpid="5502"/>
+ <toolbar:toolbaritem xlink:href=".uno:SaveAs" toolbar:style="dropdown" toolbar:helpid="5502"/>
<toolbar:toolbaritem xlink:href=".uno:SendMail" toolbar:visible="false" toolbar:helpid="5331"/>
<toolbar:toolbarseparator/>
<toolbar:toolbaritem xlink:href=".uno:EditDoc" toolbar:helpid="6312" toolbar:visible="false"/>
diff --git a/sd/uiconfig/simpress/menubar/menubar.xml b/sd/uiconfig/simpress/menubar/menubar.xml
index 3eb5156..71146c2 100644
--- a/sd/uiconfig/simpress/menubar/menubar.xml
+++ b/sd/uiconfig/simpress/menubar/menubar.xml
@@ -21,6 +21,7 @@
<menu:menupopup>
<menu:menuitem menu:id=".uno:AddDirect"/>
<menu:menuitem menu:id=".uno:Open"/>
+ <menu:menuitem menu:id=".uno:OpenRemote"/>
<menu:menuitem menu:id=".uno:RecentFileList"/>
<menu:menuitem menu:id=".uno:CloseDoc"/>
<menu:menuseparator/>
@@ -38,6 +39,7 @@
<menu:menuitem menu:id=".uno:Save"/>
<menu:menuitem menu:id=".uno:SaveAs"/>
<menu:menuitem menu:id=".uno:SaveACopy"/>
+ <menu:menuitem menu:id=".uno:SaveAsRemote"/>
<menu:menuitem menu:id=".uno:SaveAll"/>
<menu:menuitem menu:id=".uno:CheckOut"/>
<menu:menuitem menu:id=".uno:CancelCheckOut"/>
diff --git a/sd/uiconfig/simpress/toolbar/standardbar.xml b/sd/uiconfig/simpress/toolbar/standardbar.xml
index c82ad6a..a83b414 100644
--- a/sd/uiconfig/simpress/toolbar/standardbar.xml
+++ b/sd/uiconfig/simpress/toolbar/standardbar.xml
@@ -22,8 +22,9 @@
<toolbar:toolbaritem xlink:href=".uno:AddDirect" toolbar:style="dropdown"/>
<toolbar:toolbaritem xlink:href=".uno:NewDoc" toolbar:visible="false"/>
<toolbar:toolbaritem xlink:href=".uno:Open" toolbar:style="dropdown"/>
+ <toolbar:toolbaritem xlink:href=".uno:OpenRemote"/>
<toolbar:toolbaritem xlink:href=".uno:Save"/>
- <toolbar:toolbaritem xlink:href=".uno:SaveAs"/>
+ <toolbar:toolbaritem xlink:href=".uno:SaveAs" toolbar:style="dropdown"/>
<toolbar:toolbaritem xlink:href=".uno:SendMail" toolbar:visible="false"/>
<toolbar:toolbarseparator/>
<toolbar:toolbaritem xlink:href=".uno:EditDoc" toolbar:visible="false"/>
commit a6551d422c56eae47e98359618939d12e58b4e98
Author: Szymon Kłos <eszkadev at gmail.com>
Date: Tue Jul 21 16:45:00 2015 +0200
set pointer to Wait while reading url
Change-Id: I3c0786f8fb20df368cc7c03e35deba51d7ebbecd
diff --git a/fpicker/source/office/RemoteFilesDialog.cxx b/fpicker/source/office/RemoteFilesDialog.cxx
index f618965..75615d1 100644
--- a/fpicker/source/office/RemoteFilesDialog.cxx
+++ b/fpicker/source/office/RemoteFilesDialog.cxx
@@ -470,6 +470,10 @@ FileViewResult RemoteFilesDialog::OpenURL( OUString const & sURL )
}
m_pFileView->EndInplaceEditing( false );
+
+ EnableChildPointerOverwrite( true );
+ SetPointer( PointerStyle::Wait );
+
eResult = m_pFileView->Initialize( sURL, sFilter, NULL, GetBlackList() );
if( eResult == eSuccess )
@@ -483,6 +487,9 @@ FileViewResult RemoteFilesDialog::OpenURL( OUString const & sURL )
m_bIsConnected = true;
EnableControls();
}
+
+ SetPointer( PointerStyle::Arrow );
+ EnableChildPointerOverwrite( false );
}
return eResult;
commit 4ff61e68bca781606a640f023356780bdcb09f07
Author: Szymon Kłos <eszkadev at gmail.com>
Date: Tue Jul 21 15:50:09 2015 +0200
select recently added service
Change-Id: I55a32eef4a5eb3b9f57cf6d1b8f3cba5a9a14c55
diff --git a/fpicker/source/office/RemoteFilesDialog.cxx b/fpicker/source/office/RemoteFilesDialog.cxx
index 47d2ddf..f618965 100644
--- a/fpicker/source/office/RemoteFilesDialog.cxx
+++ b/fpicker/source/office/RemoteFilesDialog.cxx
@@ -551,6 +551,7 @@ IMPL_LINK_NOARG ( RemoteFilesDialog, AddServiceHdl )
m_pServices_lb->InsertEntry( sPrefix + newService->GetName() );
m_pServices_lb->SelectEntryPos( m_pServices_lb->GetEntryCount() - 1 );
+ SelectServiceHdl( NULL );
m_bIsUpdated = true;
commit 36abf90bab27bb16340bcfd1cf792ee6a4484117
Author: Szymon Kłos <eszkadev at gmail.com>
Date: Tue Jul 21 15:39:08 2015 +0200
automatically select last used service
Change-Id: Ic66517cd65c28bd7e62e38796cf8580ed31305f7
diff --git a/fpicker/source/office/RemoteFilesDialog.cxx b/fpicker/source/office/RemoteFilesDialog.cxx
index d2e3cc5..47d2ddf 100644
--- a/fpicker/source/office/RemoteFilesDialog.cxx
+++ b/fpicker/source/office/RemoteFilesDialog.cxx
@@ -325,6 +325,11 @@ short RemoteFilesDialog::Execute()
Show();
AddServiceHdl( NULL );
}
+ if( m_pServices_lb->GetEntryCount() > 0 )
+ {
+ Show();
+ SelectServiceHdl( NULL );
+ }
short nRet = SvtFileDialog_Base::Execute();
commit e9be2af3b937e7ec8d48eacaec8f075d7b45a60d
Author: Szymon Kłos <eszkadev at gmail.com>
Date: Tue Jul 21 13:28:46 2015 +0200
avoid multiple recursive opening the same url, cleaning
Change-Id: I8a3ae75a64ffcc4879af3e3591b3b433cee1678d
diff --git a/fpicker/source/office/RemoteFilesDialog.cxx b/fpicker/source/office/RemoteFilesDialog.cxx
index 7f0447a..d2e3cc5 100644
--- a/fpicker/source/office/RemoteFilesDialog.cxx
+++ b/fpicker/source/office/RemoteFilesDialog.cxx
@@ -470,7 +470,10 @@ FileViewResult RemoteFilesDialog::OpenURL( OUString const & sURL )
if( eResult == eSuccess )
{
m_pPath->SetURL( sURL );
+
+ m_pTreeView->SetSelectHdl( Link<>() );
m_pTreeView->SetTreePath( sURL );
+ m_pTreeView->SetSelectHdl( LINK( this, RemoteFilesDialog, TreeSelectHdl ) );
m_bIsConnected = true;
EnableControls();
@@ -662,24 +665,17 @@ IMPL_LINK_TYPED ( RemoteFilesDialog, EditServiceMenuHdl, MenuButton *, pButton,
IMPL_LINK_NOARG ( RemoteFilesDialog, DoubleClickHdl )
{
- SvTreeListEntry* pEntry = m_pFileView->FirstSelected();
-
- if( pEntry )
+ if( m_pFileView->GetSelectionCount() )
{
- SvtContentEntry* pData = static_cast< SvtContentEntry* >( pEntry->GetUserData() );
+ OUString sURL = m_pFileView->GetCurrentURL();
- if( pData )
+ if( ContentIsFolder( sURL ) )
{
- if( pData->mbIsFolder )
- {
- OUString sURL = m_pFileView->GetCurrentURL();
-
- OpenURL( sURL );
- }
- else
- {
- EndDialog( RET_OK );
- }
+ OpenURL( sURL );
+ }
+ else
+ {
+ EndDialog( RET_OK );
}
}
commit af1e55eec31437224a871bdf291d4fbd9a3f9a30
Author: Szymon Kłos <eszkadev at gmail.com>
Date: Tue Jul 21 12:35:19 2015 +0200
don't take full email address as a username
Change-Id: Ibc8f951dc3281b0b1d0f4b6783af0dbe2fb75da0
diff --git a/svtools/source/dialogs/PlaceEditDialog.cxx b/svtools/source/dialogs/PlaceEditDialog.cxx
index cb90be7..125a817 100644
--- a/svtools/source/dialogs/PlaceEditDialog.cxx
+++ b/svtools/source/dialogs/PlaceEditDialog.cxx
@@ -198,7 +198,13 @@ void PlaceEditDialog::UpdateLabel( )
if( !m_pEDUsername->GetText().isEmpty( ) )
{
OUString sLabel = SvtResId( STR_SVT_DEFAULT_SERVICE_LABEL );
- sLabel = sLabel.replaceFirst( "$user$", m_pEDUsername->GetText() );
+ OUString sUser = m_pEDUsername->GetText();
+
+ int nLength = sUser.indexOf( '@' );
+ if( nLength < 0 )
+ nLength = sUser.getLength();
+
+ sLabel = sLabel.replaceFirst( "$user$", sUser.copy( 0, nLength ) );
sLabel = sLabel.replaceFirst( "$service$", m_pLBServerType->GetSelectEntry() );
m_pEDServerName->SetText( sLabel );
commit 95fc311241e77207d870fea178badce94ffc6138
Author: Szymon Kłos <eszkadev at gmail.com>
Date: Tue Jul 21 11:59:45 2015 +0200
FolderTree: expanded folder icon
Change-Id: If5956b61dec2f00f9233e8f4906bdb9b6f22571d
diff --git a/icon-themes/breeze/links.txt b/icon-themes/breeze/links.txt
index 7ba9f85..9475368 100644
--- a/icon-themes/breeze/links.txt
+++ b/icon-themes/breeze/links.txt
@@ -126,3 +126,6 @@ cmd/sc_showgraphics.png cmd/sc_graphic.png
# split cells duplicates
svx/res/zetlhor2.png /sw/res/zetlhor2.png
svx/res/zetlver2.png /sw/res/zetlver2.png
+
+# FolderTree expanded icon
+svtools/res/folderop.png formula/res/fapopen.png
diff --git a/icon-themes/galaxy/links.txt b/icon-themes/galaxy/links.txt
index 2e42f11..6a68faf 100644
--- a/icon-themes/galaxy/links.txt
+++ b/icon-themes/galaxy/links.txt
@@ -81,3 +81,6 @@ cmd/lc_charbackcolor.png cmd/lc_backcolor.png
# Toggle graphics visibility in Writer
cmd/sc_showgraphics.png cmd/sc_graphic.png
+
+# FolderTree expanded icon
+svtools/res/folderop.png formula/res/fapopen.png
diff --git a/icon-themes/hicontrast/links.txt b/icon-themes/hicontrast/links.txt
index 3c9fd17..ea11b2a 100644
--- a/icon-themes/hicontrast/links.txt
+++ b/icon-themes/hicontrast/links.txt
@@ -5,3 +5,7 @@ cmd/sc_linespacing.png cmd/sc_spacepara15.png
# text background colour Impress/Draw
cmd/sc_charbackcolor.png cmd/sc_backcolor.png
cmd/lc_charbackcolor.png cmd/lc_backcolor.png
+
+# FolderTree icons
+svtools/res/folder.png formula/res/fapclose.png
+svtools/res/folderop.png formula/res/fapopen.png
diff --git a/icon-themes/human/links.txt b/icon-themes/human/links.txt
index 3e7c8a7..5b1aca0 100644
--- a/icon-themes/human/links.txt
+++ b/icon-themes/human/links.txt
@@ -8,3 +8,6 @@ cmd/sc_linespacing.png cmd/sc_spacepara15.png
# text background colour Impress/Draw
cmd/sc_charbackcolor.png cmd/sc_backcolor.png
cmd/lc_charbackcolor.png cmd/lc_backcolor.png
+
+# FolderTree expanded icon
+svtools/res/folderop.png formula/res/fapopen.png
diff --git a/icon-themes/tango/links.txt b/icon-themes/tango/links.txt
index 2fc1b96..672e153 100644
--- a/icon-themes/tango/links.txt
+++ b/icon-themes/tango/links.txt
@@ -383,6 +383,7 @@ res/sc10712.png cmd/sc_sortdescending.png
res/reload.png cmd/sc_reload.png
res/sc05501.png cmd/sc_open.png
svtools/res/folder.png formula/res/fapclose.png
+svtools/res/folderop.png formula/res/fapopen.png
fpicker/res/fp011.png res/sc06303.png
sfx2/res/styfam1.png sw/imglst/sf01.png
sfx2/res/styfam2.png sw/imglst/sf02.png
diff --git a/include/svtools/foldertree.hxx b/include/svtools/foldertree.hxx
index e430072..4be22b9 100644
--- a/include/svtools/foldertree.hxx
+++ b/include/svtools/foldertree.hxx
@@ -40,6 +40,7 @@ private:
::osl::Mutex m_aMutex;
Sequence< OUString > m_aBlackList;
Image m_aFolderImage;
+ Image m_aFolderExpandedImage;
public:
FolderTree( vcl::Window* pParent, WinBits nBits );
diff --git a/include/svtools/svtools.hrc b/include/svtools/svtools.hrc
index 5ddb4dd..570809b 100644
--- a/include/svtools/svtools.hrc
+++ b/include/svtools/svtools.hrc
@@ -263,6 +263,7 @@
#define IMG_TRIANGLE_DOWN (RID_SVTOOLS_START + 20)
#define IMG_SVT_FOLDER (RID_SVTOOLS_START + 42)
+#define IMG_SVT_FOLDER_OPEN (RID_SVTOOLS_START + 43)
#define RID_IMG_PRNDLG_NOCOLLATE (STR_SVT_PRNDLG_START + 30)
diff --git a/svtools/source/contnr/fileview.src b/svtools/source/contnr/fileview.src
index c645737..54119f3 100644
--- a/svtools/source/contnr/fileview.src
+++ b/svtools/source/contnr/fileview.src
@@ -76,6 +76,12 @@ Image IMG_SVT_FOLDER
MaskColor = Color { Red = 0xFFFF ; Green = 0x0000 ; Blue = 0xFFFF ; };
};
+Image IMG_SVT_FOLDER_OPEN
+{
+ ImageBitmap = Bitmap { File = "folderop.png" ; };
+ MaskColor = Color { Red = 0xFFFF ; Green = 0x0000 ; Blue = 0xFFFF ; };
+};
+
// Menus -----------------------------------------------------------------
Menu RID_FILEVIEW_CONTEXTMENU
diff --git a/svtools/source/contnr/foldertree.cxx b/svtools/source/contnr/foldertree.cxx
index 50df76b..63cc7e0 100644
--- a/svtools/source/contnr/foldertree.cxx
+++ b/svtools/source/contnr/foldertree.cxx
@@ -14,6 +14,7 @@
FolderTree::FolderTree( vcl::Window* pParent, WinBits nBits )
: SvTreeListBox( pParent, nBits | WB_SORT | WB_TABSTOP )
, m_aFolderImage( SvtResId( IMG_SVT_FOLDER ) )
+ , m_aFolderExpandedImage( SvtResId( IMG_SVT_FOLDER_OPEN ) )
{
Reference< XComponentContext > xContext = ::comphelper::getProcessComponentContext();
Reference< XInteractionHandler > xInteractionHandler(
@@ -21,7 +22,7 @@ FolderTree::FolderTree( vcl::Window* pParent, WinBits nBits )
m_xEnv = new ::ucbhelper::CommandEnvironment( xInteractionHandler, Reference< XProgressHandler >() );
SetDefaultCollapsedEntryBmp( m_aFolderImage );
- SetDefaultExpandedEntryBmp( m_aFolderImage );
+ SetDefaultExpandedEntryBmp( m_aFolderExpandedImage );
}
void FolderTree::RequestingChildren( SvTreeListEntry* pEntry )
commit 33e06ade061d86447b0307c400a4d5d22e3bd695
Author: Szymon Kłos <eszkadev at gmail.com>
Date: Tue Jul 21 09:40:49 2015 +0200
check pointers
Change-Id: Iacf9213d833a0a3c2d951c667108a5e2538f4215
diff --git a/fpicker/source/office/RemoteFilesDialog.cxx b/fpicker/source/office/RemoteFilesDialog.cxx
index 1662758..7f0447a 100644
--- a/fpicker/source/office/RemoteFilesDialog.cxx
+++ b/fpicker/source/office/RemoteFilesDialog.cxx
@@ -689,30 +689,35 @@ IMPL_LINK_NOARG ( RemoteFilesDialog, DoubleClickHdl )
IMPL_LINK_NOARG ( RemoteFilesDialog, SelectHdl )
{
SvTreeListEntry* pEntry = m_pFileView->FirstSelected();
- if (!pEntry)
- return 1;
- SvtContentEntry* pData = static_cast< SvtContentEntry* >( pEntry->GetUserData() );
- if( ( pData->mbIsFolder && ( m_eType == REMOTEDLG_TYPE_PATHDLG ) )
- || ( !pData->mbIsFolder && ( m_eType == REMOTEDLG_TYPE_FILEDLG ) ) )
+ if( pEntry )
{
- // url must contain user info, because we need this info in recent files entry
- // (to fill user field in login box by default)
- INetURLObject aURL( pData->maURL );
- INetURLObject aCurrentURL( m_sLastServiceUrl );
- aURL.SetUser( aCurrentURL.GetUser() );
+ SvtContentEntry* pData = static_cast< SvtContentEntry* >( pEntry->GetUserData() );
- m_sPath = aURL.GetMainURL( INetURLObject::NO_DECODE );
+ if( pData )
+ {
+ if( ( pData->mbIsFolder && ( m_eType == REMOTEDLG_TYPE_PATHDLG ) )
+ || ( !pData->mbIsFolder && ( m_eType == REMOTEDLG_TYPE_FILEDLG ) ) )
+ {
+ // url must contain user info, because we need this info in recent files entry
+ // (to fill user field in login box by default)
+ INetURLObject aURL( pData->maURL );
+ INetURLObject aCurrentURL( m_sLastServiceUrl );
+ aURL.SetUser( aCurrentURL.GetUser() );
- m_pName_ed->SetText( INetURLObject::decode( aURL.GetLastName(), INetURLObject::DECODE_WITH_CHARSET ) );
- }
- else
- {
- m_sPath.clear();
- m_pName_ed->SetText( "" );
- }
+ m_sPath = aURL.GetMainURL( INetURLObject::NO_DECODE );
- EnableControls();
+ m_pName_ed->SetText( INetURLObject::decode( aURL.GetLastName(), INetURLObject::DECODE_WITH_CHARSET ) );
+ }
+ else
+ {
+ m_sPath.clear();
+ m_pName_ed->SetText( "" );
+ }
+
+ EnableControls();
+ }
+ }
return 1;
}
commit d3926757a92a06e0a6a8f986fdc84f22a064ca32
Author: Szymon Kłos <eszkadev at gmail.com>
Date: Mon Jul 20 16:01:09 2015 +0200
default label for service
Change-Id: Iad4ad161765c943a035dcc15232c4dcbef1cc68c
diff --git a/include/svtools/PlaceEditDialog.hxx b/include/svtools/PlaceEditDialog.hxx
index b601b9b..e492978 100644
--- a/include/svtools/PlaceEditDialog.hxx
+++ b/include/svtools/PlaceEditDialog.hxx
@@ -53,7 +53,9 @@ private:
unsigned int m_nCurrentType;
-public:
+ bool bLabelChanged;
+
+public :
PlaceEditDialog( vcl::Window* pParent);
PlaceEditDialog(vcl::Window* pParent, const std::shared_ptr<Place> &rPlace );
@@ -69,11 +71,13 @@ public:
private:
void InitDetails( );
+ void UpdateLabel( );
DECL_LINK ( OKHdl, Button * );
DECL_LINK ( DelHdl, Button * );
DECL_LINK ( EditHdl, void * );
DECL_LINK ( SelectTypeHdl, void * );
+ DECL_LINK ( EditLabelHdl, void * );
DECL_LINK ( EditUsernameHdl, void * );
};
diff --git a/include/svtools/svtools.hrc b/include/svtools/svtools.hrc
index 23cf007..5ddb4dd 100644
--- a/include/svtools/svtools.hrc
+++ b/include/svtools/svtools.hrc
@@ -51,6 +51,9 @@
#define STR_SVT_ESTIMATED_SIZE_VEC (RID_SVTOOLS_START + 41)
// FREE
+
+#define STR_SVT_DEFAULT_SERVICE_LABEL (RID_SVTOOLS_START+57)
+
#define STRARY_SVT_DOCINFO (RID_SVTOOLS_START+58)
#define STR_BASICKEY_FORMAT_ON (RID_SVTOOLS_START+103)
diff --git a/svtools/source/dialogs/PlaceEditDialog.cxx b/svtools/source/dialogs/PlaceEditDialog.cxx
index 15034dd..cb90be7 100644
--- a/svtools/source/dialogs/PlaceEditDialog.cxx
+++ b/svtools/source/dialogs/PlaceEditDialog.cxx
@@ -13,6 +13,7 @@
#include <com/sun/star/uno/Sequence.hxx>
#include <officecfg/Office/Common.hxx>
#include <svtools/svtresid.hxx>
+#include <svtools/svtools.hrc>
#include <vcl/msgbox.hxx>
using namespace com::sun::star::uno;
@@ -21,6 +22,7 @@ PlaceEditDialog::PlaceEditDialog(vcl::Window* pParent)
: ModalDialog(pParent, "PlaceEditDialog", "svt/ui/placeedit.ui")
, m_xCurrentDetails()
, m_nCurrentType( 0 )
+ , bLabelChanged( false )
{
get( m_pEDServerName, "name" );
get( m_pLBServerType, "type" );
@@ -33,7 +35,7 @@ PlaceEditDialog::PlaceEditDialog(vcl::Window* pParent)
m_pBTOk->SetClickHdl( LINK( this, PlaceEditDialog, OKHdl) );
m_pBTOk->Enable( false );
- m_pEDServerName->SetModifyHdl( LINK( this, PlaceEditDialog, EditHdl) );
+ m_pEDServerName->SetModifyHdl( LINK( this, PlaceEditDialog, EditLabelHdl) );
// This constructor is called when user request a place creation, so
// delete button is hidden.
@@ -48,6 +50,7 @@ PlaceEditDialog::PlaceEditDialog(vcl::Window* pParent)
PlaceEditDialog::PlaceEditDialog(vcl::Window* pParent, const std::shared_ptr<Place>& rPlace)
: ModalDialog(pParent, "PlaceEditDialog", "svt/ui/placeedit.ui")
, m_xCurrentDetails( )
+ , bLabelChanged( true )
{
get( m_pEDServerName, "name" );
get( m_pLBServerType, "type" );
@@ -188,6 +191,26 @@ void PlaceEditDialog::InitDetails( )
SelectTypeHdl( m_pLBServerType );
}
+void PlaceEditDialog::UpdateLabel( )
+{
+ if( !bLabelChanged )
+ {
+ if( !m_pEDUsername->GetText().isEmpty( ) )
+ {
+ OUString sLabel = SvtResId( STR_SVT_DEFAULT_SERVICE_LABEL );
+ sLabel = sLabel.replaceFirst( "$user$", m_pEDUsername->GetText() );
+ sLabel = sLabel.replaceFirst( "$service$", m_pLBServerType->GetSelectEntry() );
+
+ m_pEDServerName->SetText( sLabel );
+ bLabelChanged = false;
+ }
+ else
+ {
+ m_pEDServerName->SetText( m_pLBServerType->GetSelectEntry( ) );
+ }
+ }
+}
+
IMPL_LINK ( PlaceEditDialog, OKHdl, Button *, )
{
if ( m_xCurrentDetails.get() )
@@ -234,12 +257,22 @@ IMPL_LINK ( PlaceEditDialog, DelHdl, Button *, )
IMPL_LINK_NOARG( PlaceEditDialog, EditHdl )
{
+ UpdateLabel( );
+
OUString sUrl = GetServerUrl( );
OUString sName = OUString( m_pEDServerName->GetText() ).trim( );
m_pBTOk->Enable( !sName.isEmpty( ) && !sUrl.isEmpty( ) );
return 1;
}
+IMPL_LINK_NOARG( PlaceEditDialog, EditLabelHdl )
+{
+ bLabelChanged = true;
+ EditHdl(NULL);
+
+ return 1;
+}
+
IMPL_LINK_NOARG( PlaceEditDialog, EditUsernameHdl )
{
for ( std::vector< std::shared_ptr< DetailsContainer > >::iterator it = m_aDetailsContainers.begin( );
@@ -247,7 +280,9 @@ IMPL_LINK_NOARG( PlaceEditDialog, EditUsernameHdl )
{
( *it )->setUsername( OUString( m_pEDUsername->GetText() ) );
}
+
EditHdl(NULL);
+
return 1;
}
diff --git a/svtools/source/dialogs/filedlg2.src b/svtools/source/dialogs/filedlg2.src
index 6e68db0..795da0e 100644
--- a/svtools/source/dialogs/filedlg2.src
+++ b/svtools/source/dialogs/filedlg2.src
@@ -18,6 +18,7 @@
*/
#include <svtools/filedlg2.hrc>
+#include <svtools/svtools.hrc>
String STR_FILEDLG_OPEN
{
@@ -32,4 +33,9 @@ String STR_FILEDLG_SAVE
Text [ en-US ] = "Save" ;
};
+String STR_SVT_DEFAULT_SERVICE_LABEL
+{
+ Text [ en-US ] = "$user$'s $service$" ;
+};
+
/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
commit 445aace2f39634b7f5551dac68b6dda87afb0113
Author: Szymon Kłos <eszkadev at gmail.com>
Date: Mon Jul 20 14:26:41 2015 +0200
string: 'Remote File' -> 'Save Remote File...'
Change-Id: I30e664e6fa16cdcbdffa97c57905b73224d42636
diff --git a/framework/source/classes/resource.src b/framework/source/classes/resource.src
index 4f8ce0e..44e0c70 100644
--- a/framework/source/classes/resource.src
+++ b/framework/source/classes/resource.src
@@ -121,7 +121,7 @@ String STR_OPEN_REMOTE
String STR_REMOTE_FILE
{
- Text [ en-US ] = "Remote file";
+ Text [ en-US ] = "Save Remote File...";
};
String STR_TOOLBAR_TITLE_ADDON
commit 42384801ee3b07af46eb39ed781886a375f3902d
Author: Szymon Kłos <eszkadev at gmail.com>
Date: Mon Jul 20 14:19:54 2015 +0200
remember user name in recent files
Change-Id: I55b340e90d51b614b8f46c06e3dc1961b3bac2ba
diff --git a/fpicker/source/office/RemoteFilesDialog.cxx b/fpicker/source/office/RemoteFilesDialog.cxx
index 28200bb..1662758 100644
--- a/fpicker/source/office/RemoteFilesDialog.cxx
+++ b/fpicker/source/office/RemoteFilesDialog.cxx
@@ -696,8 +696,13 @@ IMPL_LINK_NOARG ( RemoteFilesDialog, SelectHdl )
if( ( pData->mbIsFolder && ( m_eType == REMOTEDLG_TYPE_PATHDLG ) )
|| ( !pData->mbIsFolder && ( m_eType == REMOTEDLG_TYPE_FILEDLG ) ) )
{
+ // url must contain user info, because we need this info in recent files entry
+ // (to fill user field in login box by default)
INetURLObject aURL( pData->maURL );
- m_sPath = pData->maURL;
+ INetURLObject aCurrentURL( m_sLastServiceUrl );
+ aURL.SetUser( aCurrentURL.GetUser() );
+
+ m_sPath = aURL.GetMainURL( INetURLObject::NO_DECODE );
m_pName_ed->SetText( INetURLObject::decode( aURL.GetLastName(), INetURLObject::DECODE_WITH_CHARSET ) );
}
@@ -815,6 +820,14 @@ IMPL_LINK_NOARG ( RemoteFilesDialog, OkHdl )
m_sPath = sCurrentPath;
else
m_sPath = sSelectedItem;
+
+ // url must contain user info, because we need this info in recent files entry
+ // (to fill user field in login box by default)
+ INetURLObject aURL( m_sPath );
+ INetURLObject aCurrentURL( m_sLastServiceUrl );
+ aURL.SetUser( aCurrentURL.GetUser() );
+
+ m_sPath = aURL.GetMainURL( INetURLObject::NO_DECODE );
}
bool bExists = false;
@@ -973,7 +986,13 @@ std::vector<OUString> RemoteFilesDialog::GetPathList() const
while( pEntry )
{
- aList.push_back( SvtFileView::GetURL( pEntry ) );
+ // url must contain user info, because we need this info in recent files entry
+ // (to fill user field in login box by default)
+ INetURLObject aURL( SvtFileView::GetURL( pEntry ) );
+ INetURLObject aCurrentURL( m_sLastServiceUrl );
+ aURL.SetUser( aCurrentURL.GetUser() );
+
+ aList.push_back( aURL.GetMainURL( INetURLObject::NO_DECODE ) );
pEntry = m_pFileView->NextSelected( pEntry );
}
commit ccd7fc6edd3d5f19edc62fb8f9d90c35755b2ac9
Author: Szymon Kłos <eszkadev at gmail.com>
Date: Mon Jul 20 11:30:49 2015 +0200
Show 'Add service' dialog when there is no service added yet
Change-Id: I72d294e9c09b0d02b829b91fb188c1c7965d1d45
diff --git a/fpicker/source/office/RemoteFilesDialog.cxx b/fpicker/source/office/RemoteFilesDialog.cxx
index bb2587d..28200bb 100644
--- a/fpicker/source/office/RemoteFilesDialog.cxx
+++ b/fpicker/source/office/RemoteFilesDialog.cxx
@@ -318,6 +318,19 @@ void RemoteFilesDialog::Resize()
}
}
+short RemoteFilesDialog::Execute()
+{
+ if( m_pServices_lb->GetEntryCount() == 0 )
+ {
+ Show();
+ AddServiceHdl( NULL );
+ }
+
+ short nRet = SvtFileDialog_Base::Execute();
+
+ return nRet;
+}
+
OUString lcl_GetServiceType( ServicePtr pService )
{
INetProtocol aProtocol = pService->GetUrlObject().GetProtocol();
diff --git a/fpicker/source/office/RemoteFilesDialog.hxx b/fpicker/source/office/RemoteFilesDialog.hxx
index ba48b8e..ede30c7 100644
--- a/fpicker/source/office/RemoteFilesDialog.hxx
+++ b/fpicker/source/office/RemoteFilesDialog.hxx
@@ -64,6 +64,7 @@ public:
virtual void dispose() SAL_OVERRIDE;
virtual void Resize() SAL_OVERRIDE;
+ virtual short Execute() SAL_OVERRIDE;
OUString GetPath() const;
commit d605ccbd5075a8bb57c6e767b91b2782623c0d2d
Author: Szymon Kłos <eszkadev at gmail.com>
Date: Mon Jul 20 10:04:09 2015 +0200
accessibility: correct tab-order
Change-Id: Ib554e8bb73367d5f85253f0deb083fbc5a5d454b
diff --git a/fpicker/source/office/RemoteFilesDialog.cxx b/fpicker/source/office/RemoteFilesDialog.cxx
index 86be522..bb2587d 100644
--- a/fpicker/source/office/RemoteFilesDialog.cxx
+++ b/fpicker/source/office/RemoteFilesDialog.cxx
@@ -11,13 +11,22 @@
class FileViewContainer : public vcl::Window
{
+ enum FocusState
+ {
+ Prev = 0,
+ TreeView,
+ FileView,
+ Next,
+ FocusCount
+ };
+
private:
VclPtr< SvtFileView > m_pFileView;
VclPtr< FolderTree > m_pTreeView;
VclPtr< Splitter > m_pSplitter;
int m_nCurrentFocus;
- VclPtr<vcl::Window> m_pFocusWidgets[4];
+ VclPtr<vcl::Window> m_pFocusWidgets[FocusState::FocusCount];
public:
FileViewContainer( vcl::Window *pParent )
@@ -51,10 +60,10 @@ class FileViewContainer : public vcl::Window
m_pFileView = pFileView;
m_pTreeView = pTreeView;
m_pSplitter = pSplitter;
- m_pFocusWidgets[0] = pPrevSibling;
- m_pFocusWidgets[1] = pTreeView;
- m_pFocusWidgets[2] = pFileView;
- m_pFocusWidgets[3] = pNextSibling;
+ m_pFocusWidgets[FocusState::Prev] = pPrevSibling;
+ m_pFocusWidgets[FocusState::TreeView] = pTreeView;
+ m_pFocusWidgets[FocusState::FileView] = pFileView;
+ m_pFocusWidgets[FocusState::Next] = pNextSibling;
}
virtual void Resize() SAL_OVERRIDE
@@ -89,14 +98,20 @@ class FileViewContainer : public vcl::Window
if( !m_pFileView || !m_pTreeView )
return;
- if( !bReverse && m_nCurrentFocus < 3 )
+ if( bReverse && m_nCurrentFocus > FocusState::Prev && m_nCurrentFocus <= FocusState::Next )
{
- m_pFocusWidgets[++m_nCurrentFocus]->SetFakeFocus( true );
+ m_pFocusWidgets[m_nCurrentFocus]->SetFakeFocus(false);
+ m_pFocusWidgets[m_nCurrentFocus]->LoseFocus();
+
+ m_pFocusWidgets[--m_nCurrentFocus]->SetFakeFocus( true );
m_pFocusWidgets[m_nCurrentFocus]->GrabFocus();
}
- else if( m_nCurrentFocus > 0 )
+ else if( !bReverse && m_nCurrentFocus >= FocusState::Prev && m_nCurrentFocus < FocusState::Next )
{
- m_pFocusWidgets[--m_nCurrentFocus]->SetFakeFocus( true );
+ m_pFocusWidgets[m_nCurrentFocus]->SetFakeFocus(false);
+ m_pFocusWidgets[m_nCurrentFocus]->LoseFocus();
+
+ m_pFocusWidgets[++m_nCurrentFocus]->SetFakeFocus( true );
m_pFocusWidgets[m_nCurrentFocus]->GrabFocus();
}
}
@@ -106,13 +121,38 @@ class FileViewContainer : public vcl::Window
if( !m_pFileView || !m_pTreeView )
return;
- m_nCurrentFocus = 1;
- m_pFocusWidgets[m_nCurrentFocus]->SetFakeFocus( true );
- m_pFocusWidgets[m_nCurrentFocus]->GrabFocus();
+ GetFocusFlags aFlags = GetGetFocusFlags();
+
+ if( aFlags & GetFocusFlags::Forward )
+ m_nCurrentFocus = FocusState::TreeView;
+ else if( aFlags & GetFocusFlags::Backward )
+ m_nCurrentFocus = FocusState::FileView;
+
+ if( m_nCurrentFocus >= FocusState::Prev && m_nCurrentFocus <= FocusState::Next )
+ {
+ m_pFocusWidgets[m_nCurrentFocus]->SetFakeFocus( true );
+ m_pFocusWidgets[m_nCurrentFocus]->GrabFocus();
+ }
}
virtual bool Notify( NotifyEvent& rNEvt ) SAL_OVERRIDE
{
+ if( rNEvt.GetType() == MouseNotifyEvent::GETFOCUS )
+ {
+ // we must also update counter when user change focus using mouse
+ for(int i = FocusState::Prev; i <= FocusState::Next; i++)
+ {
+ if( rNEvt.GetWindow() == m_pFocusWidgets[i] )
+ {
+ m_nCurrentFocus = i;
+ return true;
+ }
+ }
+
+ // GETFOCUS for one of FileView's subcontrols
+ m_nCurrentFocus = FocusState::FileView;
+ return true;
+ }
if( rNEvt.GetType() == MouseNotifyEvent::KEYINPUT )
{
const KeyEvent* pKeyEvent = rNEvt.GetKeyEvent();
commit 66a935de34c528cd40d348fe3184d5b4f91e68f5
Author: Maxim Monastirsky <momonasmon at gmail.com>
Date: Fri Jul 17 10:12:06 2015 +0300
Don't show open remote entry in the recent doc menu
We use the same menu controller for both the Open toolbar
button and the Recent Documents menu. While it's
reasonable to put the open remote file command under the
open button, it has nothing to do with recent documents,
so it shouldn't appear there.
Also don't add the "No Document" entry in case the open
remote entry is visible. The whole point of the "No
Document" entry is that we can't leave the menu empty,
but if there is another visible entry, it's not needed.
Change-Id: Ibefbdc6dc7d1d49f555d8ee23f67b47eba19b445
Signed-off-by: Szymon Kłos <eszkadev at gmail.com>
diff --git a/framework/source/uielement/recentfilesmenucontroller.cxx b/framework/source/uielement/recentfilesmenucontroller.cxx
index a2c3432..61d2f02 100644
--- a/framework/source/uielement/recentfilesmenucontroller.cxx
+++ b/framework/source/uielement/recentfilesmenucontroller.cxx
@@ -60,7 +60,8 @@ class RecentFilesMenuController : public svt::PopupMenuControllerBase
using svt::PopupMenuControllerBase::disposing;
public:
- RecentFilesMenuController( const uno::Reference< uno::XComponentContext >& xContext );
+ RecentFilesMenuController( const uno::Reference< uno::XComponentContext >& xContext,
+ const uno::Sequence< uno::Any >& args );
virtual ~RecentFilesMenuController();
// XServiceInfo
@@ -115,12 +116,25 @@ private:
std::vector< RecentFile > m_aRecentFilesItems;
bool m_bDisabled : 1;
+ bool m_bShowRemote;
};
-RecentFilesMenuController::RecentFilesMenuController( const uno::Reference< uno::XComponentContext >& xContext ) :
+RecentFilesMenuController::RecentFilesMenuController( const uno::Reference< uno::XComponentContext >& xContext,
+ const uno::Sequence< uno::Any >& args ) :
svt::PopupMenuControllerBase( xContext ),
- m_bDisabled( false )
+ m_bDisabled( false ),
+ m_bShowRemote( false )
{
+ css::beans::PropertyValue aPropValue;
+ for ( sal_Int32 i = 0; i < args.getLength(); ++i )
+ {
+ args[i] >>= aPropValue;
+ if ( aPropValue.Name == "ShowRemote" )
+ {
+ aPropValue.Value >>= m_bShowRemote;
+ break;
+ }
+ }
}
RecentFilesMenuController::~RecentFilesMenuController()
@@ -227,26 +241,30 @@ void RecentFilesMenuController::fillPopupMenu( Reference< css::awt::XPopupMenu >
FWK_RESSTR(STR_CLEAR_RECENT_FILES_HELP) );
// Open remote menu entry
- pVCLPopupMenu->InsertItem( sal_uInt16( nCount + 2 ),
- FWK_RESSTR(STR_OPEN_REMOTE) );
- pVCLPopupMenu->SetItemCommand( sal_uInt16( nCount + 2 ),
- OUString( CMD_OPEN_REMOTE ) );
+ if ( m_bShowRemote )
+ {
+ pVCLPopupMenu->InsertItem( sal_uInt16( nCount + 2 ),
+ FWK_RESSTR(STR_OPEN_REMOTE) );
+ pVCLPopupMenu->SetItemCommand( sal_uInt16( nCount + 2 ),
+ OUString( CMD_OPEN_REMOTE ) );
+ }
}
else
{
- // No recent documents => insert "no document" string
- pVCLPopupMenu->InsertItem( 1, FWK_RESSTR(STR_NODOCUMENT) );
- // Do not disable it, otherwise the Toolbar controller and MenuButton
- // will display SV_RESID_STRING_NOSELECTIONPOSSIBLE instead of STR_NODOCUMENT
- pVCLPopupMenu->SetItemBits( 1, pVCLPopupMenu->GetItemBits( 1 ) | MenuItemBits::NOSELECT );
-
- pVCLPopupMenu->InsertSeparator();
-
- // Open remote menu entry
- pVCLPopupMenu->InsertItem( sal_uInt16( 2 ),
- FWK_RESSTR(STR_OPEN_REMOTE) );
- pVCLPopupMenu->SetItemCommand( sal_uInt16( 2 ),
- OUString( CMD_OPEN_REMOTE ) );
+ if ( m_bShowRemote )
+ {
+ // Open remote menu entry
+ pVCLPopupMenu->InsertItem( 1, FWK_RESSTR(STR_OPEN_REMOTE) );
+ pVCLPopupMenu->SetItemCommand( 1, CMD_OPEN_REMOTE );
+ }
+ else
+ {
+ // No recent documents => insert "no document" string
+ pVCLPopupMenu->InsertItem( 1, FWK_RESSTR(STR_NODOCUMENT) );
+ // Do not disable it, otherwise the Toolbar controller and MenuButton
+ // will display SV_RESID_STRING_NOSELECTIONPOSSIBLE instead of STR_NODOCUMENT
+ pVCLPopupMenu->SetItemBits( 1, pVCLPopupMenu->GetItemBits( 1 ) | MenuItemBits::NOSELECT );
+ }
}
}
}
@@ -444,9 +462,9 @@ IMPL_STATIC_LINK( RecentFilesMenuController, ExecuteHdl_Impl, LoadRecentFile*, p
extern "C" SAL_DLLPUBLIC_EXPORT css::uno::XInterface * SAL_CALL
com_sun_star_comp_framework_RecentFilesMenuController_get_implementation(
css::uno::XComponentContext *context,
- css::uno::Sequence<css::uno::Any> const &)
+ css::uno::Sequence<css::uno::Any> const &args)
{
- return cppu::acquire(new RecentFilesMenuController(context));
+ return cppu::acquire(new RecentFilesMenuController(context, args));
}
/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/sfx2/source/toolbox/tbxitem.cxx b/sfx2/source/toolbox/tbxitem.cxx
index ed53d96..2906100 100644
--- a/sfx2/source/toolbox/tbxitem.cxx
+++ b/sfx2/source/toolbox/tbxitem.cxx
@@ -1153,6 +1153,10 @@ VclPtr<SfxPopupWindow> SfxRecentFilesToolBoxControl::CreatePopupWindow()
aPropValue.Value <<= m_xFrame;
aArgs[1] <<= aPropValue;
+ aPropValue.Name = "ShowRemote";
+ aPropValue.Value <<= true;
+ aArgs[2] <<= aPropValue;
+
uno::Reference< frame::XPopupMenuController > xPopupController( m_xContext->getServiceManager()->createInstanceWithArgumentsAndContext(
"com.sun.star.comp.framework.RecentFilesMenuController", aArgs, m_xContext ), UNO_QUERY );
@@ -1191,7 +1195,7 @@ VclPtr<SfxPopupWindow> SfxSaveAsToolBoxControl::CreatePopupWindow()
sal_uInt16 nItemId = GetId();
::Rectangle aRect( rBox.GetItemRect( nItemId ) );
- Sequence< Any > aArgs( 2 );
+ Sequence< Any > aArgs( 3 );
PropertyValue aPropValue;
aPropValue.Name = "CommandURL";
commit cc6bc8e570fd7fa6c7eaceafdfcc7c476725522c
Author: Szymon Kłos <eszkadev at gmail.com>
Date: Fri Jul 17 12:09:05 2015 +0200
File > Save As Remote - Calc and Writer
Change-Id: I03dc6592015dea4b4c5e77650ec8378ee0853a63
diff --git a/officecfg/registry/data/org/openoffice/Office/UI/GenericCommands.xcu b/officecfg/registry/data/org/openoffice/Office/UI/GenericCommands.xcu
index a8d5d1f..3ee4ec3 100644
--- a/officecfg/registry/data/org/openoffice/Office/UI/GenericCommands.xcu
+++ b/officecfg/registry/data/org/openoffice/Office/UI/GenericCommands.xcu
@@ -1972,6 +1972,14 @@
<value>1</value>
</prop>
</node>
+ <node oor:name=".uno:SaveAsRemote" oor:op="replace">
+ <prop oor:name="Label" oor:type="xs:string">
+ <value xml:lang="en-US">~Save As Remote File...</value>
+ </prop>
+ <prop oor:name="Properties" oor:type="xs:int">
+ <value>1</value>
+ </prop>
+ </node>
<node oor:name=".uno:CircleCut" oor:op="replace">
<prop oor:name="Label" oor:type="xs:string">
<value xml:lang="en-US">Circle Segment</value>
diff --git a/sc/uiconfig/scalc/menubar/menubar.xml b/sc/uiconfig/scalc/menubar/menubar.xml
index 8369c10..43d6392 100644
--- a/sc/uiconfig/scalc/menubar/menubar.xml
+++ b/sc/uiconfig/scalc/menubar/menubar.xml
@@ -40,6 +40,7 @@
<menu:menuitem menu:id=".uno:Save"/>
<menu:menuitem menu:id=".uno:SaveAs"/>
<menu:menuitem menu:id=".uno:SaveACopy"/>
+ <menu:menuitem menu:id=".uno:SaveAsRemote"/>
<menu:menuitem menu:id=".uno:SaveAll"/>
<menu:menuitem menu:id=".uno:CheckOut"/>
<menu:menuitem menu:id=".uno:CancelCheckOut"/>
diff --git a/sw/uiconfig/swriter/menubar/menubar.xml b/sw/uiconfig/swriter/menubar/menubar.xml
index fd233cf..8300196 100644
--- a/sw/uiconfig/swriter/menubar/menubar.xml
+++ b/sw/uiconfig/swriter/menubar/menubar.xml
@@ -39,6 +39,7 @@
<menu:menuitem menu:id=".uno:Save"/>
<menu:menuitem menu:id=".uno:SaveAs"/>
<menu:menuitem menu:id=".uno:SaveACopy"/>
+ <menu:menuitem menu:id=".uno:SaveAsRemote"/>
<menu:menuitem menu:id=".uno:SaveAll"/>
<menu:menuitem menu:id=".uno:CheckOut"/>
<menu:menuitem menu:id=".uno:CancelCheckOut"/>
commit 2396a3af410147df645145e7116c298627be98e9
Author: Szymon Kłos <eszkadev at gmail.com>
Date: Fri Jul 17 10:42:31 2015 +0200
Open Remote file in Calc's menubar
Change-Id: Ie0e98768724edca02cfe7dc9fda682ce125e1a9e
diff --git a/sc/uiconfig/scalc/menubar/menubar.xml b/sc/uiconfig/scalc/menubar/menubar.xml
index a474f98..8369c10 100644
--- a/sc/uiconfig/scalc/menubar/menubar.xml
+++ b/sc/uiconfig/scalc/menubar/menubar.xml
@@ -21,6 +21,7 @@
<menu:menupopup>
<menu:menuitem menu:id=".uno:AddDirect"/>
<menu:menuitem menu:id=".uno:OpenFromCalc"/>
+ <menu:menuitem menu:id=".uno:OpenRemote"/>
<menu:menuitem menu:id=".uno:RecentFileList"/>
<menu:menuitem menu:id=".uno:CloseDoc"/>
<menu:menuseparator/>
commit 45ee8d2aae7102b84bf2787cc9c37f1447da47f6
Author: Szymon Kłos <eszkadev at gmail.com>
Date: Fri Jul 17 10:01:19 2015 +0200
Open Remote file in Writer's menubar
Change-Id: I5cda8661a44e4c33fab3263c17c1a7900241e70b
diff --git a/sw/uiconfig/swriter/menubar/menubar.xml b/sw/uiconfig/swriter/menubar/menubar.xml
index 7ae2617..fd233cf 100644
--- a/sw/uiconfig/swriter/menubar/menubar.xml
+++ b/sw/uiconfig/swriter/menubar/menubar.xml
@@ -21,6 +21,7 @@
<menu:menupopup>
<menu:menuitem menu:id=".uno:AddDirect"/>
<menu:menuitem menu:id=".uno:OpenFromWriter"/>
+ <menu:menuitem menu:id=".uno:OpenRemote"/>
<menu:menuitem menu:id=".uno:RecentFileList"/>
<menu:menuitem menu:id=".uno:CloseDoc"/>
<menu:menuseparator/>
commit bd8d62c0dacd6cebaf78d2522d37595114864628
Author: Szymon Kłos <eszkadev at gmail.com>
Date: Fri Jul 17 09:34:06 2015 +0200
Separator should not be the default selection
Change-Id: Id879e795d3b6722ca0d86f8f6a8a32b0ef6f12bd
diff --git a/svtools/source/dialogs/PlaceEditDialog.cxx b/svtools/source/dialogs/PlaceEditDialog.cxx
index 482b763..15034dd 100644
--- a/svtools/source/dialogs/PlaceEditDialog.cxx
+++ b/svtools/source/dialogs/PlaceEditDialog.cxx
@@ -140,7 +140,6 @@ void PlaceEditDialog::InitDetails( )
bool bSkipOneDrive= OUString( ONEDRIVE_CLIENT_ID ).isEmpty() ||
OUString( ONEDRIVE_CLIENT_SECRET ).isEmpty();
-
Sequence< OUString > aTypesUrlsList( officecfg::Office::Common::Misc::CmisServersUrls::get( xContext ) );
Sequence< OUString > aTypesNamesList( officecfg::Office::Common::Misc::CmisServersNames::get( xContext ) );
@@ -182,6 +181,10 @@ void PlaceEditDialog::InitDetails( )
// Set default to first value
m_pLBServerType->SelectEntryPos( 0 );
+
+ if ( m_pLBServerType->GetSelectEntry() == "--------------------" )
+ m_pLBServerType->SelectEntryPos( 1 );
+
SelectTypeHdl( m_pLBServerType );
}
commit 0aa1e24c6b5fe1f788b53807f08a9bd011b6efc1
Author: Szymon Kłos <eszkadev at gmail.com>
Date: Fri Jul 17 08:46:31 2015 +0200
question if delete the service
Change-Id: I49e5a93ba1d58b898ec1c7b9a4682c9e86302bd0
diff --git a/fpicker/source/office/RemoteFilesDialog.cxx b/fpicker/source/office/RemoteFilesDialog.cxx
index 2fabadc..86be522 100644
--- a/fpicker/source/office/RemoteFilesDialog.cxx
+++ b/fpicker/source/office/RemoteFilesDialog.cxx
@@ -581,21 +581,26 @@ IMPL_LINK_TYPED ( RemoteFilesDialog, EditServiceMenuHdl, MenuButton *, pButton,
if( nPos >= 0 )
{
- // TODO: Confirm dialog
-
- m_aServices.erase( m_aServices.begin() + nPos );
- m_pServices_lb->RemoveEntry( nSelected );
+ OUString sMsg = ResId( STR_SVT_DELETESERVICE, *ResMgrHolder::getOrCreate() );
+ sMsg = sMsg.replaceFirst( "$servicename$", m_pServices_lb->GetSelectEntry() );
+ ScopedVclPtrInstance< MessageDialog > aBox( this, sMsg, VCL_MESSAGE_QUESTION, VCL_BUTTONS_YES_NO );
- if( m_pServices_lb->GetEntryCount() > 0 )
+ if( aBox->Execute() == RET_YES )
{
- m_pServices_lb->SelectEntryPos( 0 );
- }
- else
- {
- m_pServices_lb->SetNoSelection();
- }
+ m_aServices.erase( m_aServices.begin() + nPos );
+ m_pServices_lb->RemoveEntry( nSelected );
- m_bIsUpdated = true;
+ if( m_pServices_lb->GetEntryCount() > 0 )
+ {
+ m_pServices_lb->SelectEntryPos( 0 );
+ }
+ else
+ {
+ m_pServices_lb->SetNoSelection();
+ }
+
+ m_bIsUpdated = true;
+ }
}
}
diff --git a/fpicker/source/office/iodlg.src b/fpicker/source/office/iodlg.src
index e09fe0b..bc43b98 100644
--- a/fpicker/source/office/iodlg.src
+++ b/fpicker/source/office/iodlg.src
@@ -105,6 +105,11 @@ String STR_SVT_ALREADYEXISTOVERWRITE
Text [ en-US ] = "A file named \"$filename$\" already exists.\n\nDo you want to replace it?" ;
};
+String STR_SVT_DELETESERVICE
+{
+ Text [ en-US ] = "Are you sure you want to delete the service?\n\"$servicename$\"" ;
+};
+
String STR_SVT_NEW_FOLDER
{
Text [ en-US ] = "Folder" ;
diff --git a/include/vcl/fpicker.hrc b/include/vcl/fpicker.hrc
index 387b389..7d4bd16 100644
--- a/include/vcl/fpicker.hrc
+++ b/include/vcl/fpicker.hrc
@@ -27,6 +27,7 @@
#define STR_SVT_FOLDERPICKER_DEFAULT_TITLE (STR_SVT_FILEPICKER_START+12)
#define STR_SVT_FOLDERPICKER_DEFAULT_DESCRIPTION (STR_SVT_FILEPICKER_START+13)
#define STR_SVT_ALREADYEXISTOVERWRITE (STR_SVT_FILEPICKER_START+14)
+#define STR_SVT_DELETESERVICE (STR_SVT_FILEPICKER_START+15)
#endif
/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
commit bb7c3821208feef6cf713591a9805e4118dd7554
Author: Eike Rathke <erack at redhat.com>
Date: Tue Jul 21 16:36:26 2015 +0200
unit test for MATCH ReferenceOrForceArray parameter
Change-Id: I534480411d6c164f9f0955933b612c1a219402fd
diff --git a/sc/qa/unit/ucalc_formula.cxx b/sc/qa/unit/ucalc_formula.cxx
index 0e562d7..8610c54 100644
--- a/sc/qa/unit/ucalc_formula.cxx
+++ b/sc/qa/unit/ucalc_formula.cxx
@@ -4263,6 +4263,25 @@ void Test::testFuncMATCH()
CPPUNIT_ASSERT_EQUAL(OUString("6"), m_pDoc->GetString(ScAddress(1,0,0)));
}
+ {
+ // Test the ReferenceOrForceArray parameter.
+
+ clearRange(m_pDoc, ScRange(0,0,0,1,7,0));
+
+ // B1:B5 contain numeric values.
+ m_pDoc->SetValue(ScAddress(1,0,0), 1.0);
+ m_pDoc->SetValue(ScAddress(1,1,0), 2.0);
+ m_pDoc->SetValue(ScAddress(1,2,0), 3.0);
+ m_pDoc->SetValue(ScAddress(1,3,0), 4.0);
+ m_pDoc->SetValue(ScAddress(1,4,0), 5.0);
+
+ // Find string value "33" in concatenated array, no implicit
+ // intersection is involved, array is forced.
+ m_pDoc->SetString(ScAddress(0,5,0), "=MATCH(\"33\";B1:B5&B1:B5)");
+ m_pDoc->CalcAll();
+ CPPUNIT_ASSERT_EQUAL(3.0, m_pDoc->GetValue(ScAddress(0,5,0)));
+ }
+
m_pDoc->DeleteTab(0);
}
commit 74cc3fbc17235f5c0010c363342a9a9adaf85c4e
Author: Maxim Monastirsky <momonasmon at gmail.com>
Date: Tue Jul 21 10:58:39 2015 +0300
tdf#36796 Status updates for custom shapes buttons
We're dealing here with 2 bugs:
1. Single shape buttons (like rectangle, ellipse etc.) don't get
the pressed state when active. The cause is that all commands of
the same kind (Basic Shapes, Symbol Shapes etc.) are handled as
one internally, allowing only one type of status updates. It used
to transport the current active shape, but it was changed to a
boolean value in the fix for i#41753, and since then used for
the pressed state of the group buttons.
2. The pressed state of a group button shows always, even when a
user activates a shape from a place other than the drop-down
of that button. But in this case the image of the group button
doesn't update with the current shape, thus confusing the user on
what is currently active. The cause here is that we use (since
i#41753) the XSubToolbarController interface to update the last
selected function (instead of the old-style status based update),
and ToolBarManager notifies a controller about a new selection
only if it was made from a particular toolbar that the controller
claimed to use in the getSubToolbarName method.
Since 7352a7c17875e5adcc4226c45f4a03e11c44ff49 there is a similar
regression for other group buttons in sd (like lines, 3D Objects
and other), with the same cause. This is also fixed now.
Change-Id: Ida074a001ff78bf5bd5bcb8151516daa6e27cbce
diff --git a/framework/source/uielement/subtoolbarcontroller.cxx b/framework/source/uielement/subtoolbarcontroller.cxx
index 63a0984..3a06a10 100644
--- a/framework/source/uielement/subtoolbarcontroller.cxx
+++ b/framework/source/uielement/subtoolbarcontroller.cxx
@@ -102,6 +102,8 @@ SubToolBarController::SubToolBarController( const css::uno::Sequence< css::uno::
break;
}
}
+ if ( !m_aLastCommand.isEmpty() )
+ addStatusListener( m_aLastCommand );
}
SubToolBarController::~SubToolBarController()
@@ -131,32 +133,41 @@ void SubToolBarController::statusChanged( const css::frame::FeatureStateEvent& E
sal_uInt16 nId = 0;
if ( getToolboxId( nId, &pToolBox ) )
{
- pToolBox->EnableItem( nId, Event.IsEnabled );
ToolBoxItemBits nItemBits = pToolBox->GetItemBits( nId );
nItemBits &= ~ToolBoxItemBits::CHECKABLE;
TriState eTri = TRISTATE_FALSE;
- bool bValue;
- css::frame::status::ItemStatus aItemState;
- css::frame::status::Visibility aItemVisibility;
-
- if ( Event.State >>= bValue )
- {
- // Boolean, treat it as checked/unchecked
- pToolBox->SetItemBits( nId, nItemBits );
- pToolBox->CheckItem( nId, bValue );
- if ( bValue )
- eTri = TRISTATE_TRUE;
- nItemBits |= ToolBoxItemBits::CHECKABLE;
- }
- else if ( Event.State >>= aItemState )
+ if ( Event.FeatureURL.Complete == m_aCommandURL )
{
- eTri = TRISTATE_INDET;
- nItemBits |= ToolBoxItemBits::CHECKABLE;
+ pToolBox->EnableItem( nId, Event.IsEnabled );
+
+ OUString aStrValue;
+ css::frame::status::Visibility aItemVisibility;
+ if ( Event.State >>= aStrValue )
+ {
+ // Enum command, such as the current custom shape,
+ // toggle checked state.
+ if ( m_aLastCommand == OUString( m_aCommandURL + "." + aStrValue ) )
+ {
+ eTri = TRISTATE_TRUE;
+ nItemBits |= ToolBoxItemBits::CHECKABLE;
+ }
+ }
+ else if ( Event.State >>= aItemVisibility )
+ {
+ pToolBox->ShowItem( nId, aItemVisibility.bVisible );
+ }
}
- else if ( Event.State >>= aItemVisibility )
+ else
{
- pToolBox->ShowItem( nId, aItemVisibility.bVisible );
+ bool bValue;
+ if ( Event.State >>= bValue )
+ {
+ // Boolean, treat it as checked/unchecked
+ if ( bValue )
+ eTri = TRISTATE_TRUE;
+ nItemBits |= ToolBoxItemBits::CHECKABLE;
+ }
}
pToolBox->SetItemState( nId, eTri );
@@ -261,9 +272,11 @@ OUString SubToolBarController::getSubToolbarName()
void SubToolBarController::functionSelected( const OUString& rCommand )
throw ( css::uno::RuntimeException, std::exception )
{
- if ( !m_aLastCommand.isEmpty() )
+ if ( !m_aLastCommand.isEmpty() && m_aLastCommand != rCommand )
{
+ removeStatusListener( m_aLastCommand );
m_aLastCommand = rCommand;
+ addStatusListener( m_aLastCommand );
updateImage();
}
}
diff --git a/sc/source/ui/view/tabvwsh2.cxx b/sc/source/ui/view/tabvwsh2.cxx
index 6bf6439..6e22952 100644
--- a/sc/source/ui/view/tabvwsh2.cxx
+++ b/sc/source/ui/view/tabvwsh2.cxx
@@ -440,7 +440,7 @@ void ScTabViewShell::GetDrawState(SfxItemSet &rSet)
case SID_DRAWTBX_CS_FLOWCHART:
case SID_DRAWTBX_CS_CALLOUT:
case SID_DRAWTBX_CS_STAR:
- rSet.Put( SfxBoolItem( nWhich, nDrawSfxId == nWhich ) );
+ rSet.Put( SfxStringItem( nWhich, nDrawSfxId == nWhich ? sDrawCustom : OUString() ) );
break;
}
nWhich = aIter.NextWhich();
diff --git a/sd/sdi/sdraw.sdi b/sd/sdi/sdraw.sdi
index 4a02435..d91e21b 100644
--- a/sd/sdi/sdraw.sdi
+++ b/sd/sdi/sdraw.sdi
@@ -16,7 +16,7 @@
* the License at http://www.apache.org/licenses/LICENSE-2.0 .
*/
-SfxBoolItem AdvancedMode SID_OBJECT_CHOOSE_MODE
+SfxVoidItem AdvancedMode SID_OBJECT_CHOOSE_MODE
[
/* flags: */
@@ -196,7 +196,7 @@ SfxUInt16Item AnimatorState SID_ANIMATOR_STATE
GroupId = GID_OPTIONS;
]
-SfxBoolItem ArrowsToolbox SID_DRAWTBX_ARROWS
+SfxVoidItem ArrowsToolbox SID_DRAWTBX_ARROWS
[
/* flags: */
@@ -250,7 +250,7 @@ SfxVoidItem BeforeObject SID_BEFORE_OBJ
()
[
/* flags: */
- AutoUpdate = FALSE,
+ AutoUpdate = TRUE,
Cachable = Cachable,
FastCall = FALSE,
HasCoreId = FALSE,
@@ -274,7 +274,7 @@ SfxVoidItem BehindObject SID_BEHIND_OBJ
()
[
/* flags: */
- AutoUpdate = FALSE,
+ AutoUpdate = TRUE,
Cachable = Cachable,
FastCall = FALSE,
HasCoreId = FALSE,
@@ -1292,7 +1292,7 @@ SfxBoolItem ConnectorLinesCircleStart SID_CONNECTOR_LINES_CIRCLE_START
GroupId = GID_CONNECTOR;
]
-SfxBoolItem ConnectorToolbox SID_DRAWTBX_CONNECTORS
+SfxVoidItem ConnectorToolbox SID_DRAWTBX_CONNECTORS
[
/* flags: */
@@ -2157,7 +2157,7 @@ SfxBoolItem CustomAnimationSchemes SID_CUSTOM_ANIMATION_SCHEMES_PANEL
GroupId = GID_OPTIONS;
]
-SfxBoolItem EllipseToolbox SID_DRAWTBX_ELLIPSES
+SfxVoidItem EllipseToolbox SID_DRAWTBX_ELLIPSES
[
/* flags: */
@@ -3889,7 +3889,7 @@ SfxVoidItem LineTo SID_LINETO
GroupId = GID_DRAWING;
]
-SfxBoolItem LineToolbox SID_DRAWTBX_LINES
+SfxVoidItem LineToolbox SID_DRAWTBX_LINES
[
/* flags: */
@@ -4516,7 +4516,7 @@ SfxBoolItem NotesMode SID_NOTESMODE
GroupId = GID_VIEW;
]
-SfxBoolItem ObjectPosition SID_POSITION
+SfxVoidItem ObjectPosition SID_POSITION
[
/* flags: */
@@ -4542,7 +4542,7 @@ SfxBoolItem ObjectPosition SID_POSITION
GroupId = GID_MODIFY;
]
-SfxBoolItem Objects3DToolbox SID_DRAWTBX_3D_OBJECTS
+SfxVoidItem Objects3DToolbox SID_DRAWTBX_3D_OBJECTS
[
/* flags: */
@@ -5195,7 +5195,7 @@ SfxBoolItem QuickEdit SID_QUICKEDIT
GroupId = GID_OPTIONS;
]
-SfxBoolItem RectangleToolbox SID_DRAWTBX_RECTANGLES
+SfxVoidItem RectangleToolbox SID_DRAWTBX_RECTANGLES
[
/* flags: */
@@ -5994,7 +5994,7 @@ SfxBoolItem TextAutoFitToSize SID_OUTLINE_TEXT_AUTOFIT
GroupId = GID_FORMAT;
]
-SfxBoolItem TextToolbox SID_DRAWTBX_TEXT
+SfxVoidItem TextToolbox SID_DRAWTBX_TEXT
[
/* flags: */
diff --git a/sd/source/ui/func/fuconcs.cxx b/sd/source/ui/func/fuconcs.cxx
index af30ec2..53a31f8 100644
--- a/sd/source/ui/func/fuconcs.cxx
+++ b/sd/source/ui/func/fuconcs.cxx
@@ -258,6 +258,11 @@ void FuConstructCustomShape::SetAttributes( SdrObject* pObj )
}
}
+OUString FuConstructCustomShape::GetShapeType() const
+{
+ return aCustomShape;
+}
+
SdrObject* FuConstructCustomShape::CreateDefaultObject(const sal_uInt16, const Rectangle& rRectangle)
{
SdrObject* pObj = SdrObjFactory::MakeNewObject(
diff --git a/sd/source/ui/inc/DrawViewShell.hxx b/sd/source/ui/inc/DrawViewShell.hxx
index b2d2d10..b3eefc1 100644
--- a/sd/source/ui/inc/DrawViewShell.hxx
+++ b/sd/source/ui/inc/DrawViewShell.hxx
@@ -420,7 +420,6 @@ protected:
void SetupPage( Size &rSize, long nLeft, long nRight, long nUpper, long nLower,
bool bSize, bool bMargin, bool bScaleAll );
- static sal_uInt16 GetIdBySubId( sal_uInt16 nSId );
void GetMenuStateSel(SfxItemSet& rSet);
private:
diff --git a/sd/source/ui/inc/fuconcs.hxx b/sd/source/ui/inc/fuconcs.hxx
index 63c6b71..5e253a2 100644
--- a/sd/source/ui/inc/fuconcs.hxx
+++ b/sd/source/ui/inc/fuconcs.hxx
@@ -46,6 +46,7 @@ public:
virtual void Activate() SAL_OVERRIDE;
void SetAttributes( SdrObject* pObj );
+ OUString GetShapeType() const;
virtual SdrObject* CreateDefaultObject(const sal_uInt16 nID, const Rectangle& rRectangle) SAL_OVERRIDE;
diff --git a/sd/source/ui/table/tablefunction.cxx b/sd/source/ui/table/tablefunction.cxx
index 291cff7..15731f7 100644
--- a/sd/source/ui/table/tablefunction.cxx
+++ b/sd/source/ui/table/tablefunction.cxx
@@ -190,7 +190,6 @@ void DrawViewShell::FuTable(SfxRequest& rReq)
else
mpView->InsertObjectAtView(pObj, *pPV, SdrInsertFlags::SETDEFLAYER);
- Invalidate(SID_DRAWTBX_INSERT);
rReq.Ignore();
SfxViewShell* pViewShell = GetViewShell();
OSL_ASSERT (pViewShell!=NULL);
diff --git a/sd/source/ui/view/drviews2.cxx b/sd/source/ui/view/drviews2.cxx
index 7108b35..9999d01 100644
--- a/sd/source/ui/view/drviews2.cxx
+++ b/sd/source/ui/view/drviews2.cxx
@@ -1111,7 +1111,6 @@ void DrawViewShell::FuTemporary(SfxRequest& rReq)
SetCurrentFunction( FuInsertGraphic::Create( this, GetActiveWindow(), mpDrawView, GetDoc(), rReq ) );
Cancel();
rReq.Ignore ();
- Invalidate(SID_DRAWTBX_INSERT);
}
break;
@@ -1121,8 +1120,6 @@ void DrawViewShell::FuTemporary(SfxRequest& rReq)
Cancel();
rReq.Ignore ();
-
- Invalidate(SID_DRAWTBX_INSERT);
}
break;
@@ -1142,8 +1139,6 @@ void DrawViewShell::FuTemporary(SfxRequest& rReq)
SetOldFunction( FuSelection::Create( this, GetActiveWindow(), mpDrawView, GetDoc(), rReq ) );
Cancel();
rReq.Ignore ();
-
- Invalidate(SID_DRAWTBX_INSERT);
}
break;
#if HAVE_FEATURE_GLTF
@@ -1153,8 +1148,6 @@ void DrawViewShell::FuTemporary(SfxRequest& rReq)
Cancel();
rReq.Ignore ();
-
- Invalidate(SID_DRAWTBX_INSERT);
}
break;
#endif
@@ -1187,8 +1180,6 @@ void DrawViewShell::FuTemporary(SfxRequest& rReq)
Broadcast (ViewShellHint(ViewShellHint::HINT_COMPLEX_MODEL_CHANGE_END));
Cancel();
rReq.Done ();
-
- Invalidate(SID_DRAWTBX_INSERT);
}
break;
@@ -1205,8 +1196,7 @@ void DrawViewShell::FuTemporary(SfxRequest& rReq)
case SID_BEHIND_OBJ:
{
SetCurrentFunction( FuDisplayOrder::Create(this, GetActiveWindow(), mpDrawView, GetDoc(), rReq) );
- Invalidate( SID_POSITION );
- rReq.Ignore ();
+ rReq.Done();
// finishes itself, no Cancel() needed!
}
break;
@@ -1214,7 +1204,6 @@ void DrawViewShell::FuTemporary(SfxRequest& rReq)
case SID_REVERSE_ORDER: // BASIC
{
mpDrawView->ReverseOrderOfMarked();
- Invalidate( SID_POSITION );
Cancel();
rReq.Done ();
}
@@ -2421,7 +2410,6 @@ void DrawViewShell::FuTemporary(SfxRequest& rReq)
{
mpDrawView->PutMarkedToTop();
Cancel();
- Invalidate( SID_POSITION );
rReq.Done ();
}
break;
@@ -2430,7 +2418,6 @@ void DrawViewShell::FuTemporary(SfxRequest& rReq)
{
mpDrawView->MovMarkedToTop();
Cancel();
- Invalidate( SID_POSITION );
rReq.Done ();
}
break;
@@ -2439,7 +2426,6 @@ void DrawViewShell::FuTemporary(SfxRequest& rReq)
{
mpDrawView->MovMarkedToBtm();
Cancel();
- Invalidate( SID_POSITION );
rReq.Done ();
}
break;
@@ -2448,7 +2434,6 @@ void DrawViewShell::FuTemporary(SfxRequest& rReq)
{
mpDrawView->PutMarkedToBtm();
Cancel();
- Invalidate( SID_POSITION );
rReq.Done ();
}
break;
diff --git a/sd/source/ui/view/drviews7.cxx b/sd/source/ui/view/drviews7.cxx
index ca5023b..b773cff 100644
--- a/sd/source/ui/view/drviews7.cxx
+++ b/sd/source/ui/view/drviews7.cxx
@@ -82,6 +82,7 @@
#include "Window.hxx"
#include "fuediglu.hxx"
#include "fubullet.hxx"
+#include "fuconcs.hxx"
#include "fuformatpaintbrush.hxx"
#include <config_features.h>
@@ -278,11 +279,7 @@ void DrawViewShell::GetMenuState( SfxItemSet &rSet )
if(HasCurrentFunction())
{
sal_uInt16 nSId = GetCurrentFunction()->GetSlotID();
- sal_uInt16 nMainId = GetIdBySubId( nSId );
-
rSet.Put( SfxBoolItem( nSId, true ) );
- if ( nMainId != 0 )
- rSet.Put( SfxBoolItem( nMainId, true ) );
}
SdrPageView* pPageView = mpDrawView->GetSdrPageView();
@@ -1047,7 +1044,6 @@ void DrawViewShell::GetMenuState( SfxItemSet &rSet )
nCurrentSId = SID_ATTR_CHAR;
rSet.Put( SfxBoolItem( nCurrentSId, true ) );
- rSet.Put( SfxBoolItem( SID_DRAWTBX_TEXT, true ) );
}
if ( GetDocSh()->IsReadOnly() )
@@ -1334,20 +1330,8 @@ void DrawViewShell::GetMenuState( SfxItemSet &rSet )
if( xSlideshow.is() && xSlideshow->isRunning() )
{
- rSet.ClearItem(SID_ZOOM_TOOLBOX);
- rSet.ClearItem(SID_OBJECT_CHOOSE_MODE);
- rSet.ClearItem(SID_DRAWTBX_TEXT);
- rSet.ClearItem(SID_DRAWTBX_RECTANGLES);
- rSet.ClearItem(SID_DRAWTBX_ELLIPSES);
- rSet.ClearItem(SID_DRAWTBX_LINES);
- rSet.ClearItem(SID_DRAWTBX_ARROWS);
- rSet.ClearItem(SID_DRAWTBX_3D_OBJECTS);
- rSet.ClearItem(SID_DRAWTBX_CONNECTORS);
- rSet.ClearItem(SID_OBJECT_CHOOSE_MODE );
- rSet.ClearItem(SID_DRAWTBX_INSERT);
rSet.ClearItem(SID_INSERTFILE);
rSet.ClearItem(SID_OBJECT_ROTATE);
- rSet.ClearItem(SID_POSITION);
rSet.ClearItem(SID_FM_CONFIG);
rSet.ClearItem(SID_ANIMATION_EFFECTS);
rSet.ClearItem(SID_ANIMATION_OBJECTS);
@@ -1538,22 +1522,23 @@ void DrawViewShell::GetMenuState( SfxItemSet &rSet )
//highlight selected custom shape
{
- sal_uInt16 nCurrentSId = 0;
if(HasCurrentFunction())
- nCurrentSId = GetCurrentFunction()->GetSlotID();
+ {
+ rtl::Reference< FuPoor > xFunc( GetCurrentFunction() );
+ FuConstructCustomShape* pShapeFunc = dynamic_cast< FuConstructCustomShape* >( xFunc.get() );
+
+ static const sal_uInt16 nCSTbArray[] = { SID_DRAWTBX_CS_BASIC, SID_DRAWTBX_CS_SYMBOL,
+ SID_DRAWTBX_CS_ARROW, SID_DRAWTBX_CS_FLOWCHART,
+ SID_DRAWTBX_CS_CALLOUT, SID_DRAWTBX_CS_STAR };
- if ( SfxItemState::DEFAULT == rSet.GetItemState( SID_DRAWTBX_CS_BASIC ) )
- rSet.Put(SfxBoolItem(SID_DRAWTBX_CS_BASIC, SID_DRAWTBX_CS_BASIC == nCurrentSId ));
- if ( SfxItemState::DEFAULT == rSet.GetItemState( SID_DRAWTBX_CS_SYMBOL ) )
- rSet.Put(SfxBoolItem(SID_DRAWTBX_CS_SYMBOL, SID_DRAWTBX_CS_SYMBOL == nCurrentSId ));
- if ( SfxItemState::DEFAULT == rSet.GetItemState( SID_DRAWTBX_CS_ARROW ) )
- rSet.Put(SfxBoolItem(SID_DRAWTBX_CS_ARROW, SID_DRAWTBX_CS_ARROW == nCurrentSId ));
- if ( SfxItemState::DEFAULT == rSet.GetItemState( SID_DRAWTBX_CS_FLOWCHART ) )
- rSet.Put(SfxBoolItem(SID_DRAWTBX_CS_FLOWCHART, SID_DRAWTBX_CS_FLOWCHART == nCurrentSId ));
- if ( SfxItemState::DEFAULT == rSet.GetItemState( SID_DRAWTBX_CS_CALLOUT ) )
- rSet.Put(SfxBoolItem(SID_DRAWTBX_CS_CALLOUT,SID_DRAWTBX_CS_CALLOUT == nCurrentSId ));
- if ( SfxItemState::DEFAULT == rSet.GetItemState( SID_DRAWTBX_CS_STAR ) )
- rSet.Put(SfxBoolItem(SID_DRAWTBX_CS_STAR, SID_DRAWTBX_CS_STAR == nCurrentSId ));
+ const sal_uInt16 nCurrentSId = GetCurrentFunction()->GetSlotID();
+ for ( size_t i = 0; i < SAL_N_ELEMENTS( nCSTbArray ); ++i )
+ {
+ rSet.ClearItem( nCSTbArray[i] ); // Why is this necessary?
+ rSet.Put( SfxStringItem( nCSTbArray[i], nCurrentSId == nCSTbArray[i] && pShapeFunc
+ ? pShapeFunc->GetShapeType() : OUString() ) );
+ }
+ }
}
if ( bDisableEditHyperlink || GetDocSh()->IsReadOnly() )
diff --git a/sd/source/ui/view/drviewsc.cxx b/sd/source/ui/view/drviewsc.cxx
index 78afdcf..6195735 100644
--- a/sd/source/ui/view/drviewsc.cxx
+++ b/sd/source/ui/view/drviewsc.cxx
@@ -51,161 +51,6 @@
#include "sdabstdlg.hxx"
namespace sd {
-/**
- * Returns the ID of the group button, if it should be toggled.
- */
-sal_uInt16 DrawViewShell::GetIdBySubId( sal_uInt16 nSId )
-{
- sal_uInt16 nMappedSId = 0;
- switch( nSId )
- {
- case SID_OBJECT_ROTATE:
- case SID_OBJECT_MIRROR:
- case SID_OBJECT_TRANSPARENCE:
- case SID_OBJECT_GRADIENT:
- case SID_OBJECT_SHEAR:
- case SID_OBJECT_CROOK_ROTATE:
- case SID_OBJECT_CROOK_SLANT:
- case SID_OBJECT_CROOK_STRETCH:
- case SID_CONVERT_TO_3D_LATHE:
- {
- nMappedSId = SID_OBJECT_CHOOSE_MODE;
- }
- break;
-
- case SID_BEFORE_OBJ:
- case SID_BEHIND_OBJ:
- {
- nMappedSId = SID_POSITION;
- }
- break;
-
- case SID_ZOOM_PANNING:
- case SID_ZOOM_MODE:
- {
- nMappedSId = SID_ZOOM_TOOLBOX;
- }
- break;
-
- case SID_ATTR_CHAR:
- case SID_TEXT_FITTOSIZE:
- case SID_DRAW_CAPTION:
- case SID_DRAW_FONTWORK:
- case SID_DRAW_FONTWORK_VERTICAL:
- {
- nMappedSId = SID_DRAWTBX_TEXT;
- }
- break;
-
- case SID_DRAW_RECT:
- case SID_DRAW_SQUARE:
- case SID_DRAW_RECT_ROUND:
- case SID_DRAW_SQUARE_ROUND:
- case SID_DRAW_RECT_NOFILL:
- case SID_DRAW_SQUARE_NOFILL:
- case SID_DRAW_RECT_ROUND_NOFILL:
- case SID_DRAW_SQUARE_ROUND_NOFILL:
- {
- nMappedSId = SID_DRAWTBX_RECTANGLES;
- }
- break;
-
- case SID_DRAW_ELLIPSE:
- case SID_DRAW_CIRCLE:
- case SID_DRAW_PIE:
- case SID_DRAW_CIRCLEPIE:
- case SID_DRAW_ELLIPSECUT:
- case SID_DRAW_CIRCLECUT:
- case SID_DRAW_ARC:
- case SID_DRAW_CIRCLEARC:
- case SID_DRAW_ELLIPSE_NOFILL:
- case SID_DRAW_CIRCLE_NOFILL:
- case SID_DRAW_PIE_NOFILL:
- case SID_DRAW_CIRCLEPIE_NOFILL:
- case SID_DRAW_ELLIPSECUT_NOFILL:
- case SID_DRAW_CIRCLECUT_NOFILL:
- {
- nMappedSId = SID_DRAWTBX_ELLIPSES;
- }
- break;
-
- case SID_DRAW_BEZIER_NOFILL:
- case SID_DRAW_POLYGON_NOFILL:
- case SID_DRAW_XPOLYGON_NOFILL:
- case SID_DRAW_FREELINE_NOFILL:
- case SID_DRAW_BEZIER_FILL:
- case SID_DRAW_POLYGON:
- case SID_DRAW_XPOLYGON:
- case SID_DRAW_FREELINE:
- {
- nMappedSId = SID_DRAWTBX_LINES;
- }
- break;
-
- case SID_DRAW_LINE:
- case SID_DRAW_XLINE:
- case SID_DRAW_MEASURELINE:
- case SID_LINE_ARROW_START:
- case SID_LINE_ARROW_END:
- case SID_LINE_ARROWS:
- case SID_LINE_ARROW_CIRCLE:
- case SID_LINE_CIRCLE_ARROW:
- case SID_LINE_ARROW_SQUARE:
- case SID_LINE_SQUARE_ARROW:
- {
- nMappedSId = SID_DRAWTBX_ARROWS;
- }
- break;
-
- case SID_3D_CUBE:
- case SID_3D_TORUS:
- case SID_3D_SPHERE:
- case SID_3D_SHELL:
- case SID_3D_HALF_SPHERE:
- case SID_3D_CYLINDER:
- case SID_3D_CONE:
- case SID_3D_PYRAMID:
- {
- nMappedSId = SID_DRAWTBX_3D_OBJECTS;
- }
- break;
-
- case SID_TOOL_CONNECTOR:
- case SID_CONNECTOR_ARROW_START:
- case SID_CONNECTOR_ARROW_END:
- case SID_CONNECTOR_ARROWS:
- case SID_CONNECTOR_CIRCLE_START:
- case SID_CONNECTOR_CIRCLE_END:
- case SID_CONNECTOR_CIRCLES:
- case SID_CONNECTOR_LINE:
- case SID_CONNECTOR_LINE_ARROW_START:
- case SID_CONNECTOR_LINE_ARROW_END:
- case SID_CONNECTOR_LINE_ARROWS:
- case SID_CONNECTOR_LINE_CIRCLE_START:
- case SID_CONNECTOR_LINE_CIRCLE_END:
- case SID_CONNECTOR_LINE_CIRCLES:
- case SID_CONNECTOR_CURVE:
- case SID_CONNECTOR_CURVE_ARROW_START:
- case SID_CONNECTOR_CURVE_ARROW_END:
- case SID_CONNECTOR_CURVE_ARROWS:
- case SID_CONNECTOR_CURVE_CIRCLE_START:
- case SID_CONNECTOR_CURVE_CIRCLE_END:
- case SID_CONNECTOR_CURVE_CIRCLES:
- case SID_CONNECTOR_LINES:
- case SID_CONNECTOR_LINES_ARROW_START:
- case SID_CONNECTOR_LINES_ARROW_END:
- case SID_CONNECTOR_LINES_ARROWS:
- case SID_CONNECTOR_LINES_CIRCLE_START:
- case SID_CONNECTOR_LINES_CIRCLE_END:
- case SID_CONNECTOR_LINES_CIRCLES:
- {
- nMappedSId = SID_DRAWTBX_CONNECTORS;
- }
- }
- return nMappedSId;
-}
-
-
void DrawViewShell::UpdateIMapDlg( SdrObject* pObj )
{
if( ( pObj->ISA( SdrGrafObj ) || pObj->ISA( SdrOle2Obj ) ) && !mpDrawView->IsTextEdit() &&
diff --git a/sd/source/ui/view/drviewse.cxx b/sd/source/ui/view/drviewse.cxx
index 70cd2f6..0eb9f29 100644
--- a/sd/source/ui/view/drviewse.cxx
+++ b/sd/source/ui/view/drviewse.cxx
@@ -1133,7 +1133,6 @@ void DrawViewShell::FuSupport(SfxRequest& rReq)
Invalidate( SID_ZOOM_IN );
Invalidate( SID_ZOOM_OUT );
Invalidate( SID_ZOOM_PANNING );
- Invalidate( SID_ZOOM_TOOLBOX );
rReq.Done ();
}
break;
@@ -1148,7 +1147,6 @@ void DrawViewShell::FuSupport(SfxRequest& rReq)
Invalidate( SID_ZOOM_IN );
Invalidate( SID_ZOOM_OUT );
Invalidate( SID_ZOOM_PANNING );
- Invalidate( SID_ZOOM_TOOLBOX );
rReq.Done ();
}
break;
@@ -1163,7 +1161,6 @@ void DrawViewShell::FuSupport(SfxRequest& rReq)
Invalidate( SID_ZOOM_IN );
Invalidate( SID_ZOOM_OUT );
Invalidate( SID_ZOOM_PANNING );
- Invalidate( SID_ZOOM_TOOLBOX );
rReq.Done ();
}
break;
@@ -1177,7 +1174,6 @@ void DrawViewShell::FuSupport(SfxRequest& rReq)
mpZoomList->InsertZoomRect(aVisAreaWin);
Invalidate( SID_ZOOM_IN );
Invalidate( SID_ZOOM_PANNING );
- Invalidate( SID_ZOOM_TOOLBOX );
rReq.Done ();
}
break;
@@ -1194,7 +1190,6 @@ void DrawViewShell::FuSupport(SfxRequest& rReq)
Invalidate( SID_ZOOM_IN );
Invalidate( SID_ZOOM_OUT );
Invalidate( SID_ZOOM_PANNING );
- Invalidate( SID_ZOOM_TOOLBOX );
}
rReq.Done ();
}
@@ -1225,7 +1220,6 @@ void DrawViewShell::FuSupport(SfxRequest& rReq)
Invalidate( SID_ZOOM_IN );
Invalidate( SID_ZOOM_OUT );
Invalidate( SID_ZOOM_PANNING );
- Invalidate( SID_ZOOM_TOOLBOX );
rReq.Done ();
}
break;
@@ -1258,7 +1252,6 @@ void DrawViewShell::FuSupport(SfxRequest& rReq)
Invalidate( SID_ZOOM_IN );
Invalidate( SID_ZOOM_OUT );
Invalidate( SID_ZOOM_PANNING );
- Invalidate( SID_ZOOM_TOOLBOX );
}
rReq.Done ();
}
@@ -1277,7 +1270,6 @@ void DrawViewShell::FuSupport(SfxRequest& rReq)
SetZoomRect(mpZoomList->GetPreviousZoomRect());
}
rReq.Done ();
- Invalidate( SID_ZOOM_TOOLBOX );
}
break;
@@ -1294,7 +1286,6 @@ void DrawViewShell::FuSupport(SfxRequest& rReq)
SetZoomRect(mpZoomList->GetNextZoomRect());
}
rReq.Done ();
- Invalidate( SID_ZOOM_TOOLBOX );
}
break;
diff --git a/sfx2/sdi/sfx.sdi b/sfx2/sdi/sfx.sdi
index 04f61b7..e207e8b 100644
--- a/sfx2/sdi/sfx.sdi
+++ b/sfx2/sdi/sfx.sdi
@@ -6668,7 +6668,7 @@ SfxVoidItem ZoomPrevious SID_ZOOM_PREV
]
-SfxBoolItem ZoomToolBox SID_ZOOM_TOOLBOX
+SfxVoidItem ZoomToolBox SID_ZOOM_TOOLBOX
[
/* flags: */
diff --git a/svx/sdi/svx.sdi b/svx/sdi/svx.sdi
index fe52a8c..91a7662 100644
--- a/svx/sdi/svx.sdi
+++ b/svx/sdi/svx.sdi
@@ -14174,7 +14174,7 @@ SfxBoolItem BasicShapes SID_DRAWTBX_CS_BASIC
Synchron;
/* status: */
- SlotType = SfxBoolItem
+ SlotType = SfxStringItem
/* config: */
AccelConfig = TRUE,
@@ -14202,7 +14202,7 @@ SfxBoolItem SymbolShapes SID_DRAWTBX_CS_SYMBOL
Synchron;
/* status: */
- SlotType = SfxBoolItem
+ SlotType = SfxStringItem
/* config: */
AccelConfig = TRUE,
@@ -14230,7 +14230,7 @@ SfxBoolItem ArrowShapes SID_DRAWTBX_CS_ARROW
Synchron;
/* status: */
- SlotType = SfxBoolItem
+ SlotType = SfxStringItem
/* config: */
AccelConfig = TRUE,
@@ -14258,7 +14258,7 @@ SfxBoolItem FlowChartShapes SID_DRAWTBX_CS_FLOWCHART
Synchron;
/* status: */
- SlotType = SfxBoolItem
+ SlotType = SfxStringItem
/* config: */
AccelConfig = TRUE,
@@ -14286,7 +14286,7 @@ SfxBoolItem CalloutShapes SID_DRAWTBX_CS_CALLOUT
Synchron;
/* status: */
- SlotType = SfxBoolItem
+ SlotType = SfxStringItem
/* config: */
AccelConfig = TRUE,
@@ -14314,7 +14314,7 @@ SfxBoolItem StarShapes SID_DRAWTBX_CS_STAR
Synchron;
/* status: */
- SlotType = SfxBoolItem
+ SlotType = SfxStringItem
/* config: */
AccelConfig = TRUE,
diff --git a/sw/source/uibase/uiview/viewstat.cxx b/sw/source/uibase/uiview/viewstat.cxx
index 43b0c0f..be077fd 100644
--- a/sw/source/uibase/uiview/viewstat.cxx
+++ b/sw/source/uibase/uiview/viewstat.cxx
@@ -520,7 +520,7 @@ void SwView::GetDrawState(SfxItemSet &rSet)
if ( bWeb )
rSet.DisableItem( nWhich );
else
- rSet.Put( SfxBoolItem( nWhich, m_nDrawSfxId == nWhich ) );
+ rSet.Put( SfxStringItem( nWhich, m_nDrawSfxId == nWhich ? m_sDrawCustom : OUString() ) );
}
break;
commit 3c7a7b538e8ca8b310ae9778ae9ace5ae937a4f1
Author: Maxim Monastirsky <momonasmon at gmail.com>
Date: Mon Jul 20 20:34:31 2015 +0300
Simplify
Change-Id: I6fff5af5d623bff6f8adedf6f3d42d849ea4d24b
diff --git a/sc/source/ui/inc/tabvwsh.hxx b/sc/source/ui/inc/tabvwsh.hxx
index 3a2536d..ce3c4a5 100644
--- a/sc/source/ui/inc/tabvwsh.hxx
+++ b/sc/source/ui/inc/tabvwsh.hxx
@@ -168,9 +168,6 @@ private:
SfxBroadcaster* pAccessibilityBroadcaster;
- static const int MASTERENUMCOMMANDS = 6;
- OUString aCurrShapeEnumCommand[ MASTERENUMCOMMANDS ];
-
// ugly hack for Add button in ScNameDlg
boost::ptr_map<OUString, ScRangeName> maRangeMap;
bool mbInSwitch;
diff --git a/sc/source/ui/view/tabvwsh2.cxx b/sc/source/ui/view/tabvwsh2.cxx
index fefe124..6bf6439 100644
--- a/sc/source/ui/view/tabvwsh2.cxx
+++ b/sc/source/ui/view/tabvwsh2.cxx
@@ -310,7 +310,6 @@ void ScTabViewShell::ExecDraw(SfxRequest& rReq)
SFX_REQUEST_ARG( rReq, pEnumCommand, SfxStringItem, nNewId, false );
if ( pEnumCommand )
{
- aCurrShapeEnumCommand[ nNewId - SID_DRAWTBX_CS_BASIC ] = pEnumCommand->GetValue();
SfxBindings& rBind = GetViewFrame()->GetBindings();
rBind.Invalidate( nNewId );
rBind.Update( nNewId );
@@ -441,10 +440,7 @@ void ScTabViewShell::GetDrawState(SfxItemSet &rSet)
case SID_DRAWTBX_CS_FLOWCHART:
case SID_DRAWTBX_CS_CALLOUT:
case SID_DRAWTBX_CS_STAR:
- {
- bool bCurrentActive = (nDrawSfxId == nWhich) && (aCurrShapeEnumCommand[ nWhich - SID_DRAWTBX_CS_BASIC ] == sDrawCustom);
- rSet.Put( SfxBoolItem( nWhich, bCurrentActive ) );
- }
+ rSet.Put( SfxBoolItem( nWhich, nDrawSfxId == nWhich ) );
break;
}
nWhich = aIter.NextWhich();
diff --git a/sw/inc/view.hxx b/sw/inc/view.hxx
index cd7114f..1c09a8b 100644
--- a/sw/inc/view.hxx
+++ b/sw/inc/view.hxx
@@ -218,11 +218,6 @@ class SW_DLLPUBLIC SwView: public SfxViewShell
int m_nSelectionType;
VclPtr<FloatingWindow> m_pFieldPopup;
-
- static const int m_nMASTERENUMCOMMANDS = 6;
-
- OUString m_aCurrShapeEnumCommand[ m_nMASTERENUMCOMMANDS ];
-
sal_uInt16 m_nPageCnt;
// current draw mode
diff --git a/sw/source/uibase/uiview/viewdraw.cxx b/sw/source/uibase/uiview/viewdraw.cxx
index b81cf88..d342512 100644
--- a/sw/source/uibase/uiview/viewdraw.cxx
+++ b/sw/source/uibase/uiview/viewdraw.cxx
@@ -320,7 +320,6 @@ void SwView::ExecDraw(SfxRequest& rReq)
if ( pStringItem )
{
m_sDrawCustom = pStringItem->GetValue();
- m_aCurrShapeEnumCommand[ nSlotId - SID_DRAWTBX_CS_BASIC ] = m_sDrawCustom;
SfxBindings& rBind = GetViewFrame()->GetBindings();
rBind.Invalidate( nSlotId );
rBind.Update( nSlotId );
diff --git a/sw/source/uibase/uiview/viewstat.cxx b/sw/source/uibase/uiview/viewstat.cxx
index a7d2c16..43b0c0f 100644
--- a/sw/source/uibase/uiview/viewstat.cxx
+++ b/sw/source/uibase/uiview/viewstat.cxx
@@ -520,10 +520,7 @@ void SwView::GetDrawState(SfxItemSet &rSet)
if ( bWeb )
rSet.DisableItem( nWhich );
else
- {
- bool bCurrentActive = (m_nDrawSfxId == nWhich) && (m_aCurrShapeEnumCommand[ nWhich - SID_DRAWTBX_CS_BASIC ] == m_sDrawCustom);
- rSet.Put( SfxBoolItem( nWhich, bCurrentActive ) );
- }
+ rSet.Put( SfxBoolItem( nWhich, m_nDrawSfxId == nWhich ) );
}
break;
commit 01eea7fe40c939311bf1920b6e8b4391a93c2e82
Author: Eike Rathke <erack at redhat.com>
Date: Tue Jul 21 16:09:34 2015 +0200
MATCH, HLOOKUP and VLOOKUP have a ReferenceOrForceArray parameter
tdf#91278 related
Change-Id: Iab4728b07649bcbb1beb372e68369f3762b13a5c
diff --git a/sc/source/core/tool/parclass.cxx b/sc/source/core/tool/parclass.cxx
index 40e1d3f..bb19244 100644
--- a/sc/source/core/tool/parclass.cxx
+++ b/sc/source/core/tool/parclass.cxx
@@ -113,7 +113,7 @@ const ScParameterClassification::RawData ScParameterClassification::pRawData[] =
{ ocGreaterEqual, {{ Array, Array }, 0 }},
{ ocGrowth, {{ Reference, Reference, Reference, Value }, 0 }},
{ ocHarMean, {{ Reference }, 1 }},
- { ocHLookup, {{ Value, Reference, Value, Value }, 0 }},
+ { ocHLookup, {{ Value, ReferenceOrForceArray, Value, Value }, 0 }},
{ ocIRR, {{ Reference, Value }, 0 }},
{ ocIndex, {{ Reference, Value, Value, Value }, 0 }},
{ ocIntercept, {{ ForceArray, ForceArray }, 0 }},
@@ -125,7 +125,7 @@ const ScParameterClassification::RawData ScParameterClassification::pRawData[] =
{ ocLess, {{ Array, Array }, 0 }},
{ ocLessEqual, {{ Array, Array }, 0 }},
{ ocLookup, {{ Value, ReferenceOrForceArray, ReferenceOrForceArray }, 0 }},
- { ocMatch, {{ Value, Reference, Reference }, 0 }},
+ { ocMatch, {{ Value, ReferenceOrForceArray, Value }, 0 }},
{ ocMatDet, {{ ForceArray }, 0 }},
{ ocMatInv, {{ ForceArray }, 0 }},
{ ocMatMult, {{ ForceArray, ForceArray }, 0 }},
@@ -203,7 +203,7 @@ const ScParameterClassification::RawData ScParameterClassification::pRawData[] =
{ ocVarPA, {{ Reference }, 1 }},
{ ocVarP_MS, {{ Reference }, 1 }},
{ ocVarS, {{ Reference }, 1 }},
- { ocVLookup, {{ Value, Reference, Value, Value }, 0 }},
+ { ocVLookup, {{ Value, ReferenceOrForceArray, Value, Value }, 0 }},
{ ocXor, {{ Reference }, 1 }},
{ ocZTest, {{ Reference, Value, Value }, 0 }},
{ ocZTest_MS, {{ Reference, Value, Value }, 0 }},
commit dda78fb69cda3901b1da40de206c491a871b1854
Author: Caolán McNamara <caolanm at redhat.com>
Date: Tue Jul 21 15:07:13 2015 +0100
coverity#1312086 Out-of-bounds read
Change-Id: I7885f8ba5ec4c6e60d88f6caab0c25cb760529ef
diff --git a/fpicker/source/office/RemoteFilesDialog.cxx b/fpicker/source/office/RemoteFilesDialog.cxx
index fb24a25..2fabadc 100644
--- a/fpicker/source/office/RemoteFilesDialog.cxx
+++ b/fpicker/source/office/RemoteFilesDialog.cxx
@@ -89,7 +89,7 @@ class FileViewContainer : public vcl::Window
if( !m_pFileView || !m_pTreeView )
return;
- if( !bReverse && m_nCurrentFocus < 4 )
+ if( !bReverse && m_nCurrentFocus < 3 )
{
m_pFocusWidgets[++m_nCurrentFocus]->SetFakeFocus( true );
m_pFocusWidgets[m_nCurrentFocus]->GrabFocus();
commit 5c938857c4bf69eb65b77ff3a862f50ab4a04af7
Author: Caolán McNamara <caolanm at redhat.com>
Date: Tue Jul 21 15:03:03 2015 +0100
coverity#1312084 Unchecked return value
Change-Id: I4b4b263f4448c4d3b83cea57635624b31f757576
diff --git a/connectivity/source/drivers/file/FResultSet.cxx b/connectivity/source/drivers/file/FResultSet.cxx
index 9433b1e..9f61747 100644
--- a/connectivity/source/drivers/file/FResultSet.cxx
+++ b/connectivity/source/drivers/file/FResultSet.cxx
@@ -539,7 +539,7 @@ void SAL_CALL OResultSet::insertRow( ) throw(SQLException, RuntimeException, st
// we know that we append new rows at the end
// so we have to know where the end is
- m_aSkipDeletedSet.skipDeleted(IResultSetHelper::LAST,1,false);
+ (void)m_aSkipDeletedSet.skipDeleted(IResultSetHelper::LAST,1,false);
m_bRowInserted = m_pTable->InsertRow(*m_aInsertRow, true, m_xColsIdx);
if(m_bRowInserted && m_pFileSet.is())
{
commit 7b00ec7bb7bbf5206e7db4c566d1e681fb9f9607
Author: Caolán McNamara <caolanm at redhat.com>
Date: Tue Jul 21 15:00:53 2015 +0100
coverity#1312085 Dereference null return value
Change-Id: Ia770e7a6a7ebcc875f3cf94471dcc032aeadc2d7
diff --git a/fpicker/source/office/RemoteFilesDialog.cxx b/fpicker/source/office/RemoteFilesDialog.cxx
index f7316d4..fb24a25 100644
--- a/fpicker/source/office/RemoteFilesDialog.cxx
+++ b/fpicker/source/office/RemoteFilesDialog.cxx
@@ -631,6 +631,8 @@ IMPL_LINK_NOARG ( RemoteFilesDialog, DoubleClickHdl )
IMPL_LINK_NOARG ( RemoteFilesDialog, SelectHdl )
{
SvTreeListEntry* pEntry = m_pFileView->FirstSelected();
+ if (!pEntry)
+ return 1;
SvtContentEntry* pData = static_cast< SvtContentEntry* >( pEntry->GetUserData() );
if( ( pData->mbIsFolder && ( m_eType == REMOTEDLG_TYPE_PATHDLG ) )
commit 0d312afe2d31c19dbd2388d17ddbb372d1197c1f
Author: Caolán McNamara <caolanm at redhat.com>
Date: Tue Jul 21 14:53:27 2015 +0100
coverity#1312087 Resource leak
Change-Id: I6d526440bd652dcd1745b8d84ff69855691d7e48
diff --git a/svtools/source/contnr/fileview.cxx b/svtools/source/contnr/fileview.cxx
index 10fa19fa..c85b1dd 100644
--- a/svtools/source/contnr/fileview.cxx
+++ b/svtools/source/contnr/fileview.cxx
@@ -421,10 +421,10 @@ protected:
Link<> m_aSelectHandler;
::rtl::Reference< ::svt::FileViewContentEnumerator >
- m_pContentEnumerator;
+ m_xContentEnumerator;
Link<> m_aCurrentAsyncActionHandler;
::osl::Condition m_aAsyncActionFinished;
- ::rtl::Reference< ::salhelper::Timer > m_pCancelAsyncTimer;
+ ::rtl::Reference< ::salhelper::Timer > m_xCancelAsyncTimer;
::svt::EnumerationResult m_eAsyncActionResult;
bool m_bRunningAsyncAction;
bool m_bAsyncActionCancelled;
@@ -1639,21 +1639,21 @@ FileViewResult SvtFileView_Impl::GetFolderContent_Impl(
DBG_TESTSOLARMUTEX();
::osl::ClearableMutexGuard aGuard( maMutex );
- OSL_ENSURE( !m_pContentEnumerator.is(), "SvtFileView_Impl::GetFolderContent_Impl: still running another enumeration!" );
- m_pContentEnumerator = new ::svt::FileViewContentEnumerator(
- mpView->GetCommandEnvironment(), maContent, maMutex, mbReplaceNames ? mpNameTrans : NULL );
+ OSL_ENSURE( !m_xContentEnumerator.is(), "SvtFileView_Impl::GetFolderContent_Impl: still running another enumeration!" );
+ m_xContentEnumerator.set(new ::svt::FileViewContentEnumerator(
+ mpView->GetCommandEnvironment(), maContent, maMutex, mbReplaceNames ? mpNameTrans : NULL));
// TODO: should we cache and re-use this thread?
if ( !pAsyncDescriptor )
{
- ::svt::EnumerationResult eResult = m_pContentEnumerator->enumerateFolderContentSync( _rFolder, rBlackList );
+ ::svt::EnumerationResult eResult = m_xContentEnumerator->enumerateFolderContentSync( _rFolder, rBlackList );
if ( ::svt::SUCCESS == eResult )
{
implEnumerationSuccess();
- m_pContentEnumerator.clear();
+ m_xContentEnumerator.clear();
return eSuccess;
}
- m_pContentEnumerator.clear();
+ m_xContentEnumerator.clear();
return eFailure;
}
@@ -1676,7 +1676,7 @@ FileViewResult SvtFileView_Impl::GetFolderContent_Impl(
pTimeout->Seconds = nMinTimeout / 1000L;
pTimeout->Nanosec = ( nMinTimeout % 1000L ) * 1000000L;
- m_pContentEnumerator->enumerateFolderContent( _rFolder, this );
+ m_xContentEnumerator->enumerateFolderContent( _rFolder, this );
// wait until the enumeration is finished
// for this, release our own mutex (which is used by the enumerator thread)
@@ -1697,16 +1697,16 @@ FileViewResult SvtFileView_Impl::GetFolderContent_Impl(
if ( ::osl::Condition::result_timeout == eResult )
{
// maximum time to wait
- OSL_ENSURE( !m_pCancelAsyncTimer.get(), "SvtFileView_Impl::GetFolderContent_Impl: there's still a previous timer!" );
- m_pCancelAsyncTimer = new CallbackTimer( this );
+ OSL_ENSURE( !m_xCancelAsyncTimer.get(), "SvtFileView_Impl::GetFolderContent_Impl: there's still a previous timer!" );
+ m_xCancelAsyncTimer.set(new CallbackTimer(this));
sal_Int32 nMaxTimeout = pAsyncDescriptor->nMaxTimeout;
OSL_ENSURE( nMaxTimeout > nMinTimeout,
"SvtFileView_Impl::GetFolderContent_Impl: invalid maximum timeout!" );
if ( nMaxTimeout <= nMinTimeout )
nMaxTimeout = nMinTimeout + 5000;
- m_pCancelAsyncTimer->setRemainingTime( salhelper::TTimeValue( nMaxTimeout - nMinTimeout ) );
+ m_xCancelAsyncTimer->setRemainingTime( salhelper::TTimeValue( nMaxTimeout - nMinTimeout ) );
// we already waited for nMinTimeout milliseconds, so take this into account
- m_pCancelAsyncTimer->start();
+ m_xCancelAsyncTimer->start();
m_aCurrentAsyncActionHandler = pAsyncDescriptor->aFinishHandler;
DBG_ASSERT( m_aCurrentAsyncActionHandler.IsSet(), "SvtFileView_Impl::GetFolderContent_Impl: nobody interested when it's finished?" );
@@ -1897,17 +1897,17 @@ void SvtFileView_Impl::CancelRunningAsyncAction()
{
DBG_TESTSOLARMUTEX();
::osl::MutexGuard aGuard( maMutex );
- if ( !m_pContentEnumerator.is() )
+ if ( !m_xContentEnumerator.is() )
return;
m_bAsyncActionCancelled = true;
- m_pContentEnumerator->cancel();
+ m_xContentEnumerator->cancel();
m_bRunningAsyncAction = false;
- m_pContentEnumerator.clear();
- if ( m_pCancelAsyncTimer.is() && m_pCancelAsyncTimer->isTicking() )
- m_pCancelAsyncTimer->stop();
- m_pCancelAsyncTimer = NULL;
+ m_xContentEnumerator.clear();
+ if ( m_xCancelAsyncTimer.is() && m_xCancelAsyncTimer->isTicking() )
+ m_xCancelAsyncTimer->stop();
+ m_xCancelAsyncTimer.clear();
}
@@ -1934,10 +1934,10 @@ void SvtFileView_Impl::enumerationDone( ::svt::EnumerationResult eResult )
SolarMutexGuard aSolarGuard;
::osl::MutexGuard aGuard( maMutex );
- m_pContentEnumerator.clear();
- if ( m_pCancelAsyncTimer.is() && m_pCancelAsyncTimer->isTicking() )
- m_pCancelAsyncTimer->stop();
- m_pCancelAsyncTimer = NULL;
+ m_xContentEnumerator.clear();
+ if ( m_xCancelAsyncTimer.is() && m_xCancelAsyncTimer->isTicking() )
+ m_xCancelAsyncTimer->stop();
+ m_xCancelAsyncTimer.clear();
if ( m_bAsyncActionCancelled )
// this is to prevent race conditions
diff --git a/svtools/source/contnr/foldertree.cxx b/svtools/source/contnr/foldertree.cxx
index 5c8ee46..50df76b 100644
--- a/svtools/source/contnr/foldertree.cxx
+++ b/svtools/source/contnr/foldertree.cxx
@@ -36,8 +36,9 @@ void FolderTree::FillTreeEntry( SvTreeListEntry* pEntry )
{
::std::vector< SortingData_Impl* > aContent;
- FileViewContentEnumerator* pContentEnumerator = new FileViewContentEnumerator(
- m_xEnv, aContent, m_aMutex, NULL );
+ ::rtl::Reference< ::svt::FileViewContentEnumerator >
+ xContentEnumerator(new FileViewContentEnumerator(
+ m_xEnv, aContent, m_aMutex, NULL));
OUString* pURL = static_cast< OUString* >( pEntry->GetUserData() );
@@ -46,7 +47,7 @@ void FolderTree::FillTreeEntry( SvTreeListEntry* pEntry )
FolderDescriptor aFolder( *pURL );
EnumerationResult eResult =
- pContentEnumerator->enumerateFolderContentSync( aFolder, m_aBlackList );
+ xContentEnumerator->enumerateFolderContentSync( aFolder, m_aBlackList );
if ( SUCCESS == eResult )
{
commit 289e5dbbab58410dac59534c79ebe831a7712129
Author: Caolán McNamara <caolanm at redhat.com>
Date: Tue Jul 21 14:51:48 2015 +0100
coverity#1312088 Uninitialized scalar field
Change-Id: Id04343aa5de0caa5b066d7fbd2fa97b670f5cf54
diff --git a/fpicker/source/office/RemoteFilesDialog.cxx b/fpicker/source/office/RemoteFilesDialog.cxx
index 47bc859..f7316d4 100644
--- a/fpicker/source/office/RemoteFilesDialog.cxx
+++ b/fpicker/source/office/RemoteFilesDialog.cxx
@@ -25,6 +25,7 @@ class FileViewContainer : public vcl::Window
, m_pFileView( NULL )
... etc. - the rest is truncated
More information about the Libreoffice-commits
mailing list