summaryrefslogtreecommitdiff
path: root/svtools
diff options
context:
space:
mode:
authorJan Holesovsky <kendy@suse.cz>2011-05-31 10:45:54 +0200
committerJan Holesovsky <kendy@suse.cz>2011-05-31 10:45:54 +0200
commitec6c98105a95bd5ddcd74b30fe51df8434c27fbd (patch)
treefcb9f35a6d4a4d4450358a1515bf792788e3c3d1 /svtools
parentda94363ed7a895fe39cee8d9b762966ebbee50ef (diff)
parentdd8d3fff260af37f152b3b6f0b8bcba2467a17fd (diff)
Merge commit 'libreoffice-3.4.0.2'
Conflicts: svtools/source/filter/wmf/winmtf.hxx tools/source/fsys/urlobj.cxx unotools/source/config/configmgr.cxx unotools/source/config/makefile.mk vcl/inc/vcl/cursor.hxx vcl/source/gdi/outdevnative.cxx vcl/source/window/abstdlg.cxx vcl/source/window/toolbox.cxx vcl/unx/generic/printer/ppdparser.cxx vcl/unx/generic/printer/printerinfomanager.cxx
Diffstat (limited to 'svtools')
-rw-r--r--svtools/inc/svtools/fileview.hxx4
-rw-r--r--svtools/source/contnr/fileview.cxx24
-rw-r--r--svtools/source/contnr/templwin.cxx12
-rw-r--r--svtools/source/control/tabbar.cxx1
4 files changed, 32 insertions, 9 deletions
diff --git a/svtools/inc/svtools/fileview.hxx b/svtools/inc/svtools/fileview.hxx
index 3c78e1d48706..a1a539224b81 100644
--- a/svtools/inc/svtools/fileview.hxx
+++ b/svtools/inc/svtools/fileview.hxx
@@ -47,6 +47,7 @@
#define FILEVIEW_SHOW_SIZE 0x0020
#define FILEVIEW_SHOW_DATE 0x0040
#define FILEVIEW_SHOW_ALL 0x0070
+#define FILEVIEW_SHOW_NONE 0x00A0
class ViewTabListBox_Impl;
class SvtFileView_Impl;
@@ -80,6 +81,7 @@ class SVT_DLLPUBLIC SvtFileView : public Control
{
private:
SvtFileView_Impl* mpImp;
+ sal_Bool bSortColumn;
::com::sun::star::uno::Sequence< ::rtl::OUString > mpBlackList;
@@ -108,6 +110,8 @@ public:
void SetSizePixel( const Size& rNewSize );
using Window::SetPosSizePixel;
virtual void SetPosSizePixel( const Point& rNewPos, const Size& rNewSize );
+ void SetSortColumn( sal_Bool bValue ) { bSortColumn = bValue; }
+ sal_Bool GetSortColumn() { return bSortColumn; }
/** initialize the view with the content of a folder given by URL, and aply an immediate filter
diff --git a/svtools/source/contnr/fileview.cxx b/svtools/source/contnr/fileview.cxx
index b0d92e3fd9aa..1cdf90c2a82a 100644
--- a/svtools/source/contnr/fileview.cxx
+++ b/svtools/source/contnr/fileview.cxx
@@ -98,6 +98,8 @@ using ::rtl::OUString;
#define COLUMN_SIZE 3
#define COLUMN_DATE 4
+#define aSeparatorStr "----------------------------------"
+
#define ROW_HEIGHT 17 // the height of a row has to be a little higher than the bitmap
#define QUICK_SEARCH_TIMEOUT 1500 // time in mSec before the quicksearch string will be reseted
@@ -724,6 +726,7 @@ ViewTabListBox_Impl::ViewTabListBox_Impl( Window* pParentWin,
mbEnableRename ( sal_True )
{
+ sal_Bool bViewHeader = true;
Size aBoxSize = pParentWin->GetSizePixel();
mpHeaderBar = new HeaderBar( pParentWin, WB_BUTTONSTYLE | WB_BOTTOMBORDER );
mpHeaderBar->SetPosSizePixel( Point( 0, 0 ), mpHeaderBar->CalcWindowSizePixel() );
@@ -736,6 +739,8 @@ ViewTabListBox_Impl::ViewTabListBox_Impl( Window* pParentWin,
mpHeaderBar->InsertItem( COLUMN_SIZE, String( SvtResId( STR_SVT_FILEVIEW_COLUMN_SIZE ) ), 80, nBits );
mpHeaderBar->InsertItem( COLUMN_DATE, String( SvtResId( STR_SVT_FILEVIEW_COLUMN_DATE ) ), 500, nBits );
}
+ if( ( nFlags & FILEVIEW_SHOW_NONE ) == FILEVIEW_SHOW_NONE )
+ bViewHeader = false;
else
mpHeaderBar->InsertItem( COLUMN_TITLE, String( SvtResId( STR_SVT_FILEVIEW_COLUMN_TITLE ) ), 600, nBits );
@@ -747,7 +752,8 @@ ViewTabListBox_Impl::ViewTabListBox_Impl( Window* pParentWin,
SetEntryHeight( ROW_HEIGHT );
Show();
- mpHeaderBar->Show();
+ if( bViewHeader )
+ mpHeaderBar->Show();
maResetQuickSearch.SetTimeout( QUICK_SEARCH_TIMEOUT );
maResetQuickSearch.SetTimeoutHdl( LINK( this, ViewTabListBox_Impl, ResetQuickSearch_Impl ) );
@@ -1219,6 +1225,7 @@ SvtFileView::SvtFileView( Window* pParent, const ResId& rResId,
mpImp = new SvtFileView_Impl( this, xCmdEnv, nFlags, bOnlyFolder );
mpImp->mpView->ForbidEmptyText();
+ SetSortColumn( true );
long pTabs[] = { 5, 20, 180, 320, 400, 600 };
mpImp->mpView->SetTabs( &pTabs[0], MAP_PIXEL );
@@ -1241,6 +1248,7 @@ SvtFileView::SvtFileView( Window* pParent, const ResId& rResId, sal_Int8 nFlags
Reference < XCommandEnvironment > xCmdEnv = new ::ucbhelper::CommandEnvironment( xInteractionHandler, Reference< XProgressHandler >() );
mpImp = new SvtFileView_Impl( this, xCmdEnv, nFlags,
( nFlags & FILEVIEW_ONLYFOLDER ) == FILEVIEW_ONLYFOLDER );
+ SetSortColumn( true );
if ( ( nFlags & FILEVIEW_SHOW_ALL ) == FILEVIEW_SHOW_ALL )
{
@@ -1254,7 +1262,8 @@ SvtFileView::SvtFileView( Window* pParent, const ResId& rResId, sal_Int8 nFlags
long pTabs[] = { 2, 20, 600 };
mpImp->mpView->SetTabs( &pTabs[0], MAP_PIXEL );
}
-
+ if ( ( nFlags & FILEVIEW_SHOW_NONE ) == FILEVIEW_SHOW_NONE )
+ SetSortColumn( false );
if ( ( nFlags & FILEVIEW_MULTISELECTION ) == FILEVIEW_MULTISELECTION )
mpImp->mpView->SetSelectionMode( MULTIPLE_SELECTION );
@@ -1512,7 +1521,8 @@ sal_Bool SvtFileView::Initialize( const Sequence< OUString >& aContents )
mpImp->Clear();
mpImp->CreateVector_Impl( aContents );
- mpImp->SortFolderContent_Impl();
+ if( GetSortColumn() )
+ mpImp->SortFolderContent_Impl();
mpImp->OpenFolder_Impl();
@@ -2416,9 +2426,11 @@ void SvtFileView_Impl::CreateVector_Impl( const Sequence < OUString > &rList )
pEntry->maDisplayText = aDisplayText;
// detect the image
- INetURLObject aObj( pEntry->maImageURL.getLength() ? pEntry->maImageURL : pEntry->maTargetURL );
- pEntry->maImage = SvFileInformationManager::GetImage( aObj, sal_False );
-
+ if( aValue != rtl::OUString( RTL_CONSTASCII_USTRINGPARAM(aSeparatorStr) ) )
+ {
+ INetURLObject aObj( pEntry->maImageURL.getLength() ? pEntry->maImageURL : pEntry->maTargetURL );
+ pEntry->maImage = SvFileInformationManager::GetImage( aObj, sal_False );
+ }
maContent.push_back( pEntry );
}
}
diff --git a/svtools/source/contnr/templwin.cxx b/svtools/source/contnr/templwin.cxx
index ea768918e460..19dcdb26dd87 100644
--- a/svtools/source/contnr/templwin.cxx
+++ b/svtools/source/contnr/templwin.cxx
@@ -100,6 +100,7 @@ using namespace ::com::sun::star::view;
using namespace svtools;
extern ::rtl::OUString CreateExactSizeText_Impl( sal_Int64 nSize ); // fileview.cxx
+#define aSeparatorStr "----------------------------------"
#define SPLITSET_ID 0
#define COLSET_ID 1
@@ -594,7 +595,7 @@ SvtFileViewWindow_Impl::SvtFileViewWindow_Impl( SvtTemplateWindow* pParent ) :
Window( pParent, WB_DIALOGCONTROL | WB_TABSTOP | WB_BORDER | WB_3DLOOK ),
rParent ( *pParent ),
- aFileView ( this, SvtResId( CTRL_FILEVIEW ), FILEVIEW_SHOW_TITLE ),
+ aFileView ( this, SvtResId( CTRL_FILEVIEW ), FILEVIEW_SHOW_NONE ),
bIsTemplateFolder ( sal_False )
{
@@ -651,9 +652,14 @@ Sequence< ::rtl::OUString > SvtFileViewWindow_Impl::GetNewDocContents() const
for ( i = 0; i < nCount; ++i )
{
GetMenuEntry_Impl( aDynamicMenuEntries[i], aTitle, aURL, aTargetFrame, aImageURL );
-
- if ( aURL == sSeparator || aURL == sSlotURL )
+ if( aURL == sSlotURL )
continue;
+ if( aURL == sSeparator )
+ {
+ String aSeparator( ASCII_STR( aSeparatorStr ) );
+ ::rtl::OUString* pSeparator = new ::rtl::OUString( aSeparator );
+ aNewDocs.push_back( pSeparator );
+ }
else
{
// title
diff --git a/svtools/source/control/tabbar.cxx b/svtools/source/control/tabbar.cxx
index 0455df6b4b26..bc0ee75a845b 100644
--- a/svtools/source/control/tabbar.cxx
+++ b/svtools/source/control/tabbar.cxx
@@ -1838,6 +1838,7 @@ void TabBar::InsertPage( sal_uInt16 nPageId, const XubString& rText,
} else {
mpItemList->push_back( pItem );
}
+ mbSizeFormat = sal_True;
// CurPageId gegebenenfalls setzen
if ( !mnCurPageId )