summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCaolán McNamara <caolanm@redhat.com>2016-10-11 20:34:32 +0100
committerCaolán McNamara <caolanm@redhat.com>2016-10-12 10:10:20 +0100
commit4dc6e29dd6c531dc9c867bc75ef0128a78d99f33 (patch)
treebe99d278decdcc2e531f5a732f05f3fe9fcdf8bd
parent0bd4ae07ae99bf030a3f775b8e16db58f7d2cdba (diff)
convert impress/draw navigator to .ui
Change-Id: I75164f6878f53dc1382f3802b594914b1637e545
-rw-r--r--sd/AllLangResTarget_sd.mk1
-rw-r--r--sd/UIConfig_simpress.mk1
-rw-r--r--sd/inc/helpids.h11
-rw-r--r--sd/source/ui/app/res_bmp.src24
-rw-r--r--sd/source/ui/app/strings.src5
-rw-r--r--sd/source/ui/dlg/NavigatorChildWindow.cxx5
-rw-r--r--sd/source/ui/dlg/navigatr.cxx330
-rw-r--r--sd/source/ui/dlg/navigatr.src131
-rw-r--r--sd/source/ui/dlg/sdtreelb.cxx31
-rw-r--r--sd/source/ui/inc/navigatr.hrc37
-rw-r--r--sd/source/ui/inc/navigatr.hxx12
-rw-r--r--sd/source/ui/inc/res_bmp.hrc4
-rw-r--r--sd/source/ui/inc/sdtreelb.hxx3
-rw-r--r--sd/source/ui/inc/strings.hrc3
-rw-r--r--sd/source/ui/sidebar/NavigatorWrapper.cxx1
-rw-r--r--sd/uiconfig/simpress/ui/navigatorpanel.ui155
16 files changed, 316 insertions, 438 deletions
diff --git a/sd/AllLangResTarget_sd.mk b/sd/AllLangResTarget_sd.mk
index 673a842ccb6b..60e20040856e 100644
--- a/sd/AllLangResTarget_sd.mk
+++ b/sd/AllLangResTarget_sd.mk
@@ -34,7 +34,6 @@ $(eval $(call gb_SrsTarget_add_files,sd/res,\
sd/source/ui/app/sdstring.src \
sd/source/ui/app/strings.src \
sd/source/ui/app/toolbox.src \
- sd/source/ui/dlg/navigatr.src \
sd/source/ui/slideshow/slideshow.src \
sd/source/ui/view/DocumentRenderer.src \
))
diff --git a/sd/UIConfig_simpress.mk b/sd/UIConfig_simpress.mk
index 6232d5fb59c6..160d3a303256 100644
--- a/sd/UIConfig_simpress.mk
+++ b/sd/UIConfig_simpress.mk
@@ -120,6 +120,7 @@ $(eval $(call gb_UIConfig_add_uifiles,modules/simpress,\
sd/uiconfig/simpress/ui/interactiondialog \
sd/uiconfig/simpress/ui/interactionpage \
sd/uiconfig/simpress/ui/masterlayoutdlg \
+ sd/uiconfig/simpress/ui/navigatorpanel \
sd/uiconfig/simpress/ui/notebookbar \
sd/uiconfig/simpress/ui/optimpressgeneralpage \
sd/uiconfig/simpress/ui/photoalbum \
diff --git a/sd/inc/helpids.h b/sd/inc/helpids.h
index fdc48b228890..a65f356b831a 100644
--- a/sd/inc/helpids.h
+++ b/sd/inc/helpids.h
@@ -23,17 +23,6 @@
#define HID_SDDRAWVIEWSHELL "SD_HID_SDDRAWVIEWSHELL"
#define HID_SDGRAPHICVIEWSHELL "SD_HID_SDGRAPHICVIEWSHELL"
#define HID_SDOUTLINEVIEWSHELL "SD_HID_SDOUTLINEVIEWSHELL"
-#define HID_SD_WIN_DOCUMENT "SD_HID_SD_WIN_DOCUMENT"
-#define HID_SD_NAVIGATOR_TLB "SD_HID_SD_NAVIGATOR_TLB"
-#define HID_SD_NAVIGATOR "SD_HID_SD_NAVIGATOR"
-#define HID_SD_NAVIGATOR_TBX "SD_HID_SD_NAVIGATOR_TBX"
-#define HID_SD_NAVIGATOR_LB "SD_HID_SD_NAVIGATOR_LB"
-#define HID_SD_NAVIGATOR_TBI_FIRST "SD_HID_SD_NAVIGATOR_TBI_FIRST"
-#define HID_SD_NAVIGATOR_TBI_PREV "SD_HID_SD_NAVIGATOR_TBI_PREV"
-#define HID_SD_NAVIGATOR_TBI_NEXT "SD_HID_SD_NAVIGATOR_TBI_NEXT"
-#define HID_SD_NAVIGATOR_TBI_LAST "SD_HID_SD_NAVIGATOR_TBI_LAST"
-#define HID_SD_NAVIGATOR_TBI_DRAGTYPE "SD_HID_SD_NAVIGATOR_TBI_DRAGTYPE"
-#define HID_SD_NAVIGATOR_TBI_SHAPE_FILTER "SD_HID_SD_NAVIGATOR_TBI_SHAPE_FILTER"
// tool boxes
#define HID_SD_DRAW_TOOLBOX "SD_HID_SD_DRAW_TOOLBOX"
diff --git a/sd/source/ui/app/res_bmp.src b/sd/source/ui/app/res_bmp.src
index d9c2f4af8a9c..0719ce166e18 100644
--- a/sd/source/ui/app/res_bmp.src
+++ b/sd/source/ui/app/res_bmp.src
@@ -857,4 +857,28 @@ Bitmap BMP_PRESENTATION_MINIMIZER
File = "minimize_presi_80.png";
};
+Image IMG_EMBEDDED
+{
+ ImageBitmap = Bitmap
+ {
+ File = "nv08.png" ;
+ };
+};
+
+Image IMG_LINK
+{
+ ImageBitmap = Bitmap
+ {
+ File = "nv09.png" ;
+ };
+};
+
+Image IMG_HYPERLINK
+{
+ ImageBitmap = Bitmap
+ {
+ File = "nv010.png" ;
+ };
+};
+
/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/sd/source/ui/app/strings.src b/sd/source/ui/app/strings.src
index c939eb5ed2a3..08ef9635679b 100644
--- a/sd/source/ui/app/strings.src
+++ b/sd/source/ui/app/strings.src
@@ -1257,4 +1257,9 @@ String STR_INSERT_3D_MODEL_ALL_SUPPORTED_FORMATS
Text [ en-US ] = "All supported formats";
};
+String STR_OBJECTS_TREE
+{
+ Text [ en-US ] = "Page Tree";
+};
+
/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/sd/source/ui/dlg/NavigatorChildWindow.cxx b/sd/source/ui/dlg/NavigatorChildWindow.cxx
index 8a30766ed79b..4f55f39f13ca 100644
--- a/sd/source/ui/dlg/NavigatorChildWindow.cxx
+++ b/sd/source/ui/dlg/NavigatorChildWindow.cxx
@@ -20,10 +20,10 @@
#include "NavigatorChildWindow.hxx"
#include "navigatr.hxx"
#include "app.hrc"
-#include "navigatr.hrc"
#include <sfx2/app.hxx>
#include <sfx2/bindings.hxx>
#include <sfx2/dispatch.hxx>
+#include <sfx2/navigat.hxx>
#include <svl/eitem.hxx>
namespace sd {
@@ -56,6 +56,9 @@ NavigatorChildWindow::NavigatorChildWindow (
pNavWin->SetUpdateRequestFunctor(
[pBindings] () { return RequestNavigatorUpdate(pBindings); });
+ if (SfxNavigator* pNav = dynamic_cast<SfxNavigator*>(pParent))
+ pNav->SetMinOutputSizePixel(pNavWin->GetOptimalSize());
+
SetWindow( pNavWin );
}
diff --git a/sd/source/ui/dlg/navigatr.cxx b/sd/source/ui/dlg/navigatr.cxx
index 225e5c78f15d..084fdaf2fc03 100644
--- a/sd/source/ui/dlg/navigatr.cxx
+++ b/sd/source/ui/dlg/navigatr.cxx
@@ -40,7 +40,6 @@
#include "pres.hxx"
#include "navigatr.hxx"
-#include "navigatr.hrc"
#include "pgjump.hxx"
#include "app.hrc"
#include "strings.hrc"
@@ -63,46 +62,35 @@ static const sal_uInt16 nShowAllShapesFilter=2;
/**
* SdNavigatorWin - FloatingWindow
*/
-SdNavigatorWin::SdNavigatorWin(
- vcl::Window* pParent,
- SfxBindings* pInBindings)
- : vcl::Window( pParent, SdResId(FLT_NAVIGATOR) )
- , maToolbox ( VclPtr<ToolBox>::Create( this, SdResId( 1 ) ) )
- , maTlbObjects( VclPtr<SdPageObjsTLB>::Create( this, SdResId( TLB_OBJECTS ) ) )
- , maLbDocs ( VclPtr<ListBox>::Create( this, SdResId( LB_DOCS ) ) )
+SdNavigatorWin::SdNavigatorWin(vcl::Window* pParent, SfxBindings* pInBindings)
+ : PanelLayout(pParent, "NavigatorPanel", "modules/simpress/ui/navigatorpanel.ui", nullptr)
, mbDocImported ( false )
// On changes of the DragType: adjust SelectionMode of TLB!
, meDragType ( NAVIGATOR_DRAGTYPE_EMBEDDED )
, mpBindings ( pInBindings )
, mpNavigatorCtrlItem( nullptr )
, mpPageNameCtrlItem( nullptr )
- , maImageList ( SdResId( IL_NAVIGATR ) )
{
- maTlbObjects->SetViewFrame( mpBindings->GetDispatcher()->GetFrame() );
+ get(maToolbox, "toolbox");
+ get(maTlbObjects, "tree");
+ Size aSize(maTlbObjects->LogicToPixel(Size(97, 67), MapUnit::MapAppFont));
+ maTlbObjects->set_height_request(aSize.Width());
+ maTlbObjects->set_width_request(aSize.Height());
+ get(maLbDocs, "documents");
- FreeResource();
+ maTlbObjects->SetViewFrame( mpBindings->GetDispatcher()->GetFrame() );
maTlbObjects->SetAccessibleName(SD_RESSTR(STR_OBJECTS_TREE));
- ApplyImageList(); // load images *before* calculating sizes to get something useful !!!
-
- Size aTbxSize( maToolbox->CalcWindowSizePixel() );
- maToolbox->SetOutputSizePixel( aTbxSize );
maToolbox->SetSelectHdl( LINK( this, SdNavigatorWin, SelectToolboxHdl ) );
maToolbox->SetDropdownClickHdl( LINK(this, SdNavigatorWin, DropdownClickToolBoxHdl) );
- maToolbox->SetItemBits( TBI_DRAGTYPE, maToolbox->GetItemBits( TBI_DRAGTYPE ) | ToolBoxItemBits::DROPDOWNONLY );
+ const sal_uInt16 nDragTypeId = maToolbox->GetItemId("dragmode");
+ maToolbox->SetItemBits(nDragTypeId, maToolbox->GetItemBits(nDragTypeId) | ToolBoxItemBits::DROPDOWNONLY);
// Shape filter drop down menu.
- maToolbox->SetItemBits(
- TBI_SHAPE_FILTER,
- maToolbox->GetItemBits(TBI_SHAPE_FILTER) | ToolBoxItemBits::DROPDOWNONLY);
-
- // TreeListBox
- // set position below toolbox
- long nListboxYPos = maToolbox->GetPosPixel().Y() + maToolbox->GetSizePixel().Height() + 4;
- maTlbObjects->setPosSizePixel( 0, nListboxYPos, 0, 0, PosSizeFlags::Y );
- maTlbObjects->SetDoubleClickHdl( LINK( this, SdNavigatorWin, ClickObjectHdl ) );
- maTlbObjects->SetSelectionMode( SelectionMode::Single );
+ const sal_uInt16 nShapeId = maToolbox->GetItemId("shapes");
+ maToolbox->SetItemBits(nShapeId, maToolbox->GetItemBits(nShapeId) | ToolBoxItemBits::DROPDOWNONLY);
+
// set focus to listbox, otherwise it is in the toolbox which is only useful
// for keyboard navigation
maTlbObjects->GrabFocus();
@@ -110,43 +98,12 @@ SdNavigatorWin::SdNavigatorWin(
// DragTypeListBox
maLbDocs->SetSelectHdl( LINK( this, SdNavigatorWin, SelectDocumentHdl ) );
- // set position below treelistbox
- nListboxYPos = maTlbObjects->GetPosPixel().Y() + maTlbObjects->GetSizePixel().Height() + 4;
- maLbDocs->setPosSizePixel( 0, nListboxYPos, 0, 0, PosSizeFlags::Y );
-
- // assure that tool box is at least as wide as the tree list box
- {
- const Size aTlbSize( maTlbObjects->GetOutputSizePixel() );
- if ( aTlbSize.Width() > aTbxSize.Width() )
- {
- maToolbox->setPosSizePixel( 0, 0, aTlbSize.Width(), 0, PosSizeFlags::Width );
- aTbxSize = maToolbox->GetOutputSizePixel();
- }
- }
-
- // set min outputsize after all sizes are known
- const long nFullHeight = nListboxYPos + maLbDocs->GetSizePixel().Height() + 4;
- maSize = GetOutputSizePixel();
- if( maSize.Height() < nFullHeight )
- {
- maSize.Height() = nFullHeight;
- SetOutputSizePixel( maSize );
- }
- maMinSize = maSize;
- const long nMinWidth = 2*maToolbox->GetPosPixel().X() + aTbxSize.Width(); // never clip the toolbox
- if( nMinWidth > maMinSize.Width() )
- maMinSize.Width() = nMinWidth;
- maMinSize.Height() -= 40;
- SfxDockingWindow* pDockingParent = dynamic_cast<SfxDockingWindow*>(GetParent());
- if (pDockingParent != nullptr)
- pDockingParent->SetMinOutputSizePixel( maMinSize );
-
}
void SdNavigatorWin::SetUpdateRequestFunctor(const UpdateRequestFunctor& rUpdateRequest)
{
- mpNavigatorCtrlItem = new SdNavigatorControllerItem( SID_NAVIGATOR_STATE, this, mpBindings, rUpdateRequest);
- mpPageNameCtrlItem = new SdPageNameControllerItem( SID_NAVIGATOR_PAGENAME, this, mpBindings);
+ mpNavigatorCtrlItem = new SdNavigatorControllerItem(SID_NAVIGATOR_STATE, this, mpBindings, rUpdateRequest);
+ mpPageNameCtrlItem = new SdPageNameControllerItem(SID_NAVIGATOR_PAGENAME, this, mpBindings);
// InitTlb; is initiated over Slot
if (rUpdateRequest)
@@ -160,12 +117,12 @@ SdNavigatorWin::~SdNavigatorWin()
void SdNavigatorWin::dispose()
{
- DELETEZ( mpNavigatorCtrlItem );
- DELETEZ( mpPageNameCtrlItem );
- maToolbox.disposeAndClear();
- maTlbObjects.disposeAndClear();
- maLbDocs.disposeAndClear();
- vcl::Window::dispose();
+ DELETEZ(mpNavigatorCtrlItem);
+ DELETEZ(mpPageNameCtrlItem);
+ maToolbox.clear();
+ maTlbObjects.clear();
+ maLbDocs.clear();
+ PanelLayout::dispose();
}
//when object is marked , fresh the corresponding entry tree .
@@ -206,10 +163,11 @@ void SdNavigatorWin::InitTreeLB( const SdDrawDocument* pDoc )
// Disable the shape filter drop down menu when there is a running slide
// show.
+ const sal_uInt16 nShapeId = maToolbox->GetItemId("shapes");
if (pViewShell!=nullptr && sd::SlideShow::IsRunning( pViewShell->GetViewShellBase() ))
- maToolbox->EnableItem(TBI_SHAPE_FILTER, false);
+ maToolbox->EnableItem(nShapeId, false);
else
- maToolbox->EnableItem(TBI_SHAPE_FILTER);
+ maToolbox->EnableItem(nShapeId);
if( !maTlbObjects->IsEqualToDoc( pDoc ) )
{
@@ -265,18 +223,19 @@ sd::DrawDocShell* SdNavigatorWin::GetDrawDocShell( const SdDrawDocument* pDoc )
IMPL_LINK_NOARG(SdNavigatorWin, SelectToolboxHdl, ToolBox *, void)
{
sal_uInt16 nId = maToolbox->GetCurItemId();
+ const OUString sCommand = maToolbox->GetItemCommand(nId);
PageJump ePage = PAGE_NONE;
- if( nId == TBI_FIRST )
+ if (sCommand == "first")
ePage = PAGE_FIRST;
- else if( nId == TBI_PREVIOUS )
+ else if (sCommand == "previous")
ePage = PAGE_PREVIOUS;
- else if( nId == TBI_NEXT )
+ else if (sCommand == "next")
ePage = PAGE_NEXT;
- else if( nId == TBI_LAST )
+ else if (sCommand == "last")
ePage = PAGE_LAST;
- if( ePage != PAGE_NONE )
+ if (ePage != PAGE_NONE)
{
SfxUInt16Item aItem( SID_NAVIGATOR_PAGE, (sal_uInt16)ePage );
mpBindings->GetDispatcher()->ExecuteList(SID_NAVIGATOR_PAGE,
@@ -287,73 +246,68 @@ IMPL_LINK_NOARG(SdNavigatorWin, SelectToolboxHdl, ToolBox *, void)
IMPL_LINK( SdNavigatorWin, DropdownClickToolBoxHdl, ToolBox*, pBox, void )
{
sal_uInt16 nId = maToolbox->GetCurItemId();
+ const OUString sCommand = maToolbox->GetItemCommand(nId);
- switch( nId )
+ if (sCommand == "dragmode")
{
- case TBI_DRAGTYPE:
- {
- // Popup menu is created depending if the document is saved or not
- ScopedVclPtrInstance<PopupMenu> pMenu;
-
- static const char* aHIDs[] =
- {
- HID_SD_NAVIGATOR_MENU1,
- HID_SD_NAVIGATOR_MENU2,
- HID_SD_NAVIGATOR_MENU3,
- nullptr
- };
-
- for (sal_uInt16 nID = NAVIGATOR_DRAGTYPE_URL; nID < NAVIGATOR_DRAGTYPE_COUNT; ++nID)
- {
- sal_uInt16 nRId = GetDragTypeSdResId( (NavigatorDragType)nID, false );
- if( nRId > 0 )
- {
- DBG_ASSERT(aHIDs[nID-NAVIGATOR_DRAGTYPE_URL],"HelpId not added!");
- pMenu->InsertItem(nID, SD_RESSTR(nRId), MenuItemBits::RADIOCHECK);
- pMenu->SetHelpId(nID, aHIDs[nID - NAVIGATOR_DRAGTYPE_URL]);
- }
+ // Popup menu is created depending if the document is saved or not
+ ScopedVclPtrInstance<PopupMenu> pMenu;
- }
- NavDocInfo* pInfo = GetDocInfo();
+ static const char* aHIDs[] =
+ {
+ HID_SD_NAVIGATOR_MENU1,
+ HID_SD_NAVIGATOR_MENU2,
+ HID_SD_NAVIGATOR_MENU3,
+ nullptr
+ };
- if( ( pInfo && !pInfo->HasName() ) || !maTlbObjects->IsLinkableSelected() )
+ for (sal_uInt16 nID = NAVIGATOR_DRAGTYPE_URL; nID < NAVIGATOR_DRAGTYPE_COUNT; ++nID)
+ {
+ sal_uInt16 nRId = GetDragTypeSdResId( (NavigatorDragType)nID, false );
+ if( nRId > 0 )
{
- pMenu->EnableItem( NAVIGATOR_DRAGTYPE_LINK, false );
- pMenu->EnableItem( NAVIGATOR_DRAGTYPE_URL, false );
- meDragType = NAVIGATOR_DRAGTYPE_EMBEDDED;
+ DBG_ASSERT(aHIDs[nID-NAVIGATOR_DRAGTYPE_URL],"HelpId not added!");
+ pMenu->InsertItem(nID, SD_RESSTR(nRId), MenuItemBits::RADIOCHECK);
+ pMenu->SetHelpId(nID, aHIDs[nID - NAVIGATOR_DRAGTYPE_URL]);
}
- pMenu->CheckItem( (sal_uInt16)meDragType );
- pMenu->SetSelectHdl( LINK( this, SdNavigatorWin, MenuSelectHdl ) );
-
- pMenu->Execute( this, maToolbox->GetItemRect( nId ), PopupMenuFlags::ExecuteDown );
- pBox->EndSelection();
}
- break;
+ NavDocInfo* pInfo = GetDocInfo();
- case TBI_SHAPE_FILTER:
+ if( ( pInfo && !pInfo->HasName() ) || !maTlbObjects->IsLinkableSelected() )
{
- ScopedVclPtrInstance<PopupMenu> pMenu;
-
- pMenu->InsertItem(
- nShowNamedShapesFilter,
- SD_RESSTR(STR_NAVIGATOR_SHOW_NAMED_SHAPES),
- MenuItemBits::RADIOCHECK);
- pMenu->InsertItem(
- nShowAllShapesFilter,
- SD_RESSTR(STR_NAVIGATOR_SHOW_ALL_SHAPES),
- MenuItemBits::RADIOCHECK);
-
- if (maTlbObjects->GetShowAllShapes())
- pMenu->CheckItem(nShowAllShapesFilter);
- else
- pMenu->CheckItem(nShowNamedShapesFilter);
- pMenu->SetSelectHdl( LINK( this, SdNavigatorWin, ShapeFilterCallback ) );
-
- pMenu->Execute( this, maToolbox->GetItemRect( nId ), PopupMenuFlags::ExecuteDown );
- pBox->EndSelection();
+ pMenu->EnableItem( NAVIGATOR_DRAGTYPE_LINK, false );
+ pMenu->EnableItem( NAVIGATOR_DRAGTYPE_URL, false );
+ meDragType = NAVIGATOR_DRAGTYPE_EMBEDDED;
}
- break;
+
+ pMenu->CheckItem( (sal_uInt16)meDragType );
+ pMenu->SetSelectHdl( LINK( this, SdNavigatorWin, MenuSelectHdl ) );
+
+ pMenu->Execute( this, maToolbox->GetItemRect( nId ), PopupMenuFlags::ExecuteDown );
+ pBox->EndSelection();
+ }
+ else if (sCommand == "shapes")
+ {
+ ScopedVclPtrInstance<PopupMenu> pMenu;
+
+ pMenu->InsertItem(
+ nShowNamedShapesFilter,
+ SD_RESSTR(STR_NAVIGATOR_SHOW_NAMED_SHAPES),
+ MenuItemBits::RADIOCHECK);
+ pMenu->InsertItem(
+ nShowAllShapesFilter,
+ SD_RESSTR(STR_NAVIGATOR_SHOW_ALL_SHAPES),
+ MenuItemBits::RADIOCHECK);
+
+ if (maTlbObjects->GetShowAllShapes())
+ pMenu->CheckItem(nShowAllShapesFilter);
+ else
+ pMenu->CheckItem(nShowNamedShapesFilter);
+ pMenu->SetSelectHdl( LINK( this, SdNavigatorWin, ShapeFilterCallback ) );
+
+ pMenu->Execute( this, maToolbox->GetItemRect( nId ), PopupMenuFlags::ExecuteDown );
+ pBox->EndSelection();
}
}
@@ -518,43 +472,6 @@ IMPL_LINK( SdNavigatorWin, ShapeFilterCallback, Menu *, pMenu, bool )
return false;
}
-void SdNavigatorWin::Resize()
-{
- Size aWinSize( GetOutputSizePixel() );
- if( aWinSize.Height() >= maMinSize.Height() )
- //aWinSize.Width() >= maMinSize.Width() )
- {
- Size aDiffSize;
- aDiffSize.Width() = aWinSize.Width() - maSize.Width();
- aDiffSize.Height() = aWinSize.Height() - maSize.Height();
-
- // change size of Toolbox
- Size aObjSize( maToolbox->GetOutputSizePixel() );
- aObjSize.Width() += aDiffSize.Width();
- maToolbox->SetOutputSizePixel( aObjSize );
-
- // change size of TreeLB
- aObjSize = maTlbObjects->GetSizePixel();
- aObjSize.Width() += aDiffSize.Width();
- aObjSize.Height() = maLbDocs->GetPosPixel().Y() + aDiffSize.Height() -
- maTlbObjects->GetPosPixel().Y() - 4;
- maTlbObjects->SetSizePixel( aObjSize );
-
- Point aPt( 0, aDiffSize.Height() );
-
- // move other controls (DocumentLB)
- maLbDocs->Hide();
- aObjSize = maLbDocs->GetOutputSizePixel();
- aObjSize.Width() += aDiffSize.Width();
- maLbDocs->SetPosPixel( maLbDocs->GetPosPixel() + aPt );
- maLbDocs->SetOutputSizePixel( aObjSize );
- maLbDocs->Show();
-
- maSize = aWinSize;
- }
- Window::Resize();
-}
-
bool SdNavigatorWin::InsertFile(const OUString& rFileName)
{
INetURLObject aURL( rFileName );
@@ -703,11 +620,11 @@ sal_uInt16 SdNavigatorWin::GetDragTypeSdResId( NavigatorDragType eDT, bool bImag
case NAVIGATOR_DRAGTYPE_NONE:
return( bImage ? 0 : STR_NONE );
case NAVIGATOR_DRAGTYPE_URL:
- return( bImage ? TBI_HYPERLINK : STR_DRAGTYPE_URL );
+ return( bImage ? IMG_HYPERLINK : STR_DRAGTYPE_URL );
case NAVIGATOR_DRAGTYPE_EMBEDDED:
- return( bImage ? TBI_EMBEDDED : STR_DRAGTYPE_EMBEDDED );
+ return( bImage ? IMG_EMBEDDED : STR_DRAGTYPE_EMBEDDED );
case NAVIGATOR_DRAGTYPE_LINK:
- return( bImage ? TBI_LINK : STR_DRAGTYPE_LINK );
+ return( bImage ? IMG_LINK : STR_DRAGTYPE_LINK );
default: OSL_FAIL( "No resource for DragType available!" );
}
return 0;
@@ -798,26 +715,10 @@ void SdNavigatorWin::KeyInput( const KeyEvent& rKEvt )
}
}
-void SdNavigatorWin::DataChanged( const DataChangedEvent& rDCEvt )
-{
- if ( (rDCEvt.GetType() == DataChangedEventType::SETTINGS) && (rDCEvt.GetFlags() & AllSettingsFlags::STYLE) )
- ApplyImageList();
-
- Window::DataChanged( rDCEvt );
-}
-
void SdNavigatorWin::SetDragImage()
{
- maToolbox->SetItemImage( TBI_DRAGTYPE, maToolbox->GetImageList().GetImage( GetDragTypeSdResId( meDragType, true ) ) );
-}
-
-void SdNavigatorWin::ApplyImageList()
-{
-
- maToolbox->SetImageList( maImageList );
- maToolbox->SetItemImage(TBI_SHAPE_FILTER, Image(BitmapEx(SdResId(BMP_GRAPHIC))));
-
- SetDragImage();
+ const sal_uInt16 nDragTypeId = maToolbox->GetItemId("dragmode");
+ maToolbox->SetItemImage(nDragTypeId, Image(SdResId(GetDragTypeSdResId(meDragType, true))));
}
/**
@@ -846,39 +747,44 @@ void SdNavigatorControllerItem::StateChanged( sal_uInt16 nSId,
NavDocInfo* pInfo = pNavigatorWin->GetDocInfo();
if( pInfo && pInfo->IsActive() )
{
+ sal_uInt16 nFirstId = pNavigatorWin->maToolbox->GetItemId("first");
+ sal_uInt16 nPrevId = pNavigatorWin->maToolbox->GetItemId("previous");
+ sal_uInt16 nLastId = pNavigatorWin->maToolbox->GetItemId("last");
+ sal_uInt16 nNextId = pNavigatorWin->maToolbox->GetItemId("next");
+
// First
- if( nState & NavState::BtnFirstEnabled &&
- !pNavigatorWin->maToolbox->IsItemEnabled( TBI_FIRST ) )
- pNavigatorWin->maToolbox->EnableItem( TBI_FIRST );
- if( nState & NavState::BtnFirstDisabled &&
- pNavigatorWin->maToolbox->IsItemEnabled( TBI_FIRST ) )
- pNavigatorWin->maToolbox->EnableItem( TBI_FIRST, false );
+ if (nState & NavState::BtnFirstEnabled &&
+ !pNavigatorWin->maToolbox->IsItemEnabled(nFirstId))
+ pNavigatorWin->maToolbox->EnableItem(nFirstId);
+ if (nState & NavState::BtnFirstDisabled &&
+ pNavigatorWin->maToolbox->IsItemEnabled(nFirstId))
+ pNavigatorWin->maToolbox->EnableItem(nFirstId, false);
// Prev
- if( nState & NavState::BtnPrevEnabled &&
- !pNavigatorWin->maToolbox->IsItemEnabled( TBI_PREVIOUS ) )
- pNavigatorWin->maToolbox->EnableItem( TBI_PREVIOUS );
- if( nState & NavState::BtnPrevDisabled &&
- pNavigatorWin->maToolbox->IsItemEnabled( TBI_PREVIOUS ) )
- pNavigatorWin->maToolbox->EnableItem( TBI_PREVIOUS, false );
+ if (nState & NavState::BtnPrevEnabled &&
+ !pNavigatorWin->maToolbox->IsItemEnabled(nPrevId))
+ pNavigatorWin->maToolbox->EnableItem(nPrevId);
+ if (nState & NavState::BtnPrevDisabled &&
+ pNavigatorWin->maToolbox->IsItemEnabled(nPrevId))
+ pNavigatorWin->maToolbox->EnableItem(nPrevId, false);
// Last
- if( nState & NavState::BtnLastEnabled &&
- !pNavigatorWin->maToolbox->IsItemEnabled( TBI_LAST ) )
- pNavigatorWin->maToolbox->EnableItem( TBI_LAST );
- if( nState & NavState::BtnLastDisabled &&
- pNavigatorWin->maToolbox->IsItemEnabled( TBI_LAST ) )
- pNavigatorWin->maToolbox->EnableItem( TBI_LAST, false );
+ if (nState & NavState::BtnLastEnabled &&
+ !pNavigatorWin->maToolbox->IsItemEnabled(nLastId))
+ pNavigatorWin->maToolbox->EnableItem(nLastId);
+ if (nState & NavState::BtnLastDisabled &&
+ pNavigatorWin->maToolbox->IsItemEnabled(nLastId))
+ pNavigatorWin->maToolbox->EnableItem(nLastId, false);
// Next
- if( nState & NavState::BtnNextEnabled &&
- !pNavigatorWin->maToolbox->IsItemEnabled( TBI_NEXT ) )
- pNavigatorWin->maToolbox->EnableItem( TBI_NEXT );
- if( nState & NavState::BtnNextDisabled &&
- pNavigatorWin->maToolbox->IsItemEnabled( TBI_NEXT ) )
- pNavigatorWin->maToolbox->EnableItem( TBI_NEXT, false );
-
- if( nState & NavState::TableUpdate )
+ if (nState & NavState::BtnNextEnabled &&
+ !pNavigatorWin->maToolbox->IsItemEnabled(nNextId))
+ pNavigatorWin->maToolbox->EnableItem(nNextId);
+ if (nState & NavState::BtnNextDisabled &&
+ pNavigatorWin->maToolbox->IsItemEnabled(nNextId))
+ pNavigatorWin->maToolbox->EnableItem(nNextId, false);
+
+ if (nState & NavState::TableUpdate)
{
// InitTlb; is initiated by Slot
if (maUpdateRequest)
diff --git a/sd/source/ui/dlg/navigatr.src b/sd/source/ui/dlg/navigatr.src
deleted file mode 100644
index 27895096b822..000000000000
--- a/sd/source/ui/dlg/navigatr.src
+++ /dev/null
@@ -1,131 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*
- * This file is part of the LibreOffice project.
- *
- * This Source Code Form is subject to the terms of the Mozilla Public
- * License, v. 2.0. If a copy of the MPL was not distributed with this
- * file, You can obtain one at http://mozilla.org/MPL/2.0/.
- *
- * This file incorporates work covered by the following license notice:
- *
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed
- * with this work for additional information regarding copyright
- * ownership. The ASF licenses this file to you under the Apache
- * License, Version 2.0 (the "License"); you may not use this file
- * except in compliance with the License. You may obtain a copy of
- * the License at http://www.apache.org/licenses/LICENSE-2.0 .
- */
-
-#include "navigatr.hrc"
-#include "helpids.h"
-#include "res_bmp.hrc"
-#define BUTTON_WIDTH 13
-#define BUTTON_COUNT 7
-Window FLT_NAVIGATOR
-{
- HelpId = HID_SD_NAVIGATOR ;
- Size = MAP_APPFONT ( 12 + BUTTON_WIDTH * BUTTON_COUNT , 105 ) ;
- Text = "Navigator" ;
- SVLook = TRUE ;
- DialogControl = TRUE;
- Control TLB_OBJECTS
- {
- HelpId = HID_SD_NAVIGATOR_TLB ;
- Border = TRUE ;
- Pos = MAP_APPFONT ( 3 , 20 ) ;
- Size = MAP_APPFONT ( 6 + BUTTON_WIDTH * BUTTON_COUNT , 67 ) ;
- TabStop = TRUE ;
- };
- ToolBox 1
- {
- HelpId = HID_SD_NAVIGATOR_TBX ;
- SVLook = TRUE ;
- Pos = MAP_APPFONT ( 3 , 3 ) ;
- Size = MAP_APPFONT ( 6 + BUTTON_WIDTH , 15 ) ;
- TabStop = TRUE ;
- ItemList =
- {
- ToolBoxItem
- {
- Identifier = TBI_FIRST ;
- HelpId = HID_SD_NAVIGATOR_TBI_FIRST ;
- Text [ en-US ] = "First Slide" ;
- };
- ToolBoxItem
- {
- Identifier = TBI_PREVIOUS ;
- HelpId = HID_SD_NAVIGATOR_TBI_PREV ;
- Text [ en-US ] = "Previous Slide" ;
- };
- ToolBoxItem
- {
- Identifier = TBI_NEXT ;
- HelpId = HID_SD_NAVIGATOR_TBI_NEXT ;
- Text [ en-US ] = "Next Slide" ;
- };
- ToolBoxItem
- {
- Identifier = TBI_LAST ;
- HelpId = HID_SD_NAVIGATOR_TBI_LAST ;
- Text [ en-US ] = "Last Slide" ;
- };
- ToolBoxItem
- {
- Type = TOOLBOXITEM_SEPARATOR ;
- };
- ToolBoxItem
- {
- Identifier = TBI_DRAGTYPE ;
- HelpId = HID_SD_NAVIGATOR_TBI_DRAGTYPE ;
- DropDown = TRUE ;
- Text [ en-US ] = "Drag Mode" ;
- };
- ToolBoxItem
- {
- Identifier = TBI_SHAPE_FILTER ;
- HelpId = HID_SD_NAVIGATOR_TBI_SHAPE_FILTER ;
- DropDown = TRUE ;
- Text [ en-US ] = "Show Shapes" ;
- };
- };
- };
- ListBox LB_DOCS
- {
- HelpId = HID_SD_NAVIGATOR_LB ;
- Border = TRUE ;
- Pos = MAP_APPFONT ( 3 , 89 ) ;
- Size = MAP_APPFONT ( 6 + BUTTON_WIDTH * BUTTON_COUNT , 90 ) ;
- TabStop = TRUE ;
- DropDown = TRUE ;
- QuickHelpText [ en-US ] = "Documents" ;
- };
-
- #define NAVIGATR_IDLIST \
- IdList = \
- { \
- TBI_FIRST ; \
- TBI_PREVIOUS ; \
- TBI_NEXT ; \
- TBI_LAST ; \
- TBI_EMBEDDED ; \
- TBI_LINK ; \
- TBI_HYPERLINK ; \
- }; \
- IdCount = { 8 ; };
-
- #define IMAGE_STDBTN_COLOR Color { Red = 0xff00; Green = 0x0000; Blue = 0xff00; }
-
- ImageList IL_NAVIGATR
- {
- Prefix = "nv";
- NAVIGATR_IDLIST
- };
-};
-
-String STR_OBJECTS_TREE
-{
- Text [ en-US ] = "Page Tree";
-};
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/sd/source/ui/dlg/sdtreelb.cxx b/sd/source/ui/dlg/sdtreelb.cxx
index 0b5c6c44e889..c210ac4988d0 100644
--- a/sd/source/ui/dlg/sdtreelb.cxx
+++ b/sd/source/ui/dlg/sdtreelb.cxx
@@ -192,37 +192,6 @@ SotClipboardFormatId SdPageObjsTLB::SdPageObjsTransferable::GetListBoxDropFormat
return mnListBoxDropFormatId;
}
-SdPageObjsTLB::SdPageObjsTLB( vcl::Window* pParentWin, const SdResId& rSdResId )
-: SvTreeListBox ( pParentWin, rSdResId )
-, bisInSdNavigatorWin ( false )
-, mpParent ( pParentWin )
-, mpDoc ( nullptr )
-, mpBookmarkDoc ( nullptr )
-, mpMedium ( nullptr )
-, mpOwnMedium ( nullptr )
-, maImgOle ( BitmapEx( SdResId( BMP_OLE ) ) )
-, maImgGraphic ( BitmapEx( SdResId( BMP_GRAPHIC ) ) )
-, mbLinkableSelected ( false )
-, mpDropNavWin ( nullptr )
-, mpFrame ( nullptr )
-, mbSaveTreeItemState ( false )
-, mbShowAllShapes ( false )
-, mbShowAllPages ( false )
-{
- // add lines to Tree-ListBox
- SetStyle( GetStyle() | WB_TABSTOP | WB_BORDER | WB_HASLINES |
- WB_HASBUTTONS | // WB_HASLINESATROOT |
- WB_HSCROLL |
- WB_HASBUTTONSATROOT |
- WB_QUICK_SEARCH /* i31275 */ );
- SetNodeBitmaps( Image(Bitmap( SdResId(BMP_EXPAND) )),
- Image(Bitmap( SdResId(BMP_COLLAPSE) )));
-
- SetDragDropMode(
- DragDropMode::CTRL_MOVE | DragDropMode::CTRL_COPY |
- DragDropMode::APP_MOVE | DragDropMode::APP_COPY | DragDropMode::APP_DROP );
-}
-
SdPageObjsTLB::SdPageObjsTLB( vcl::Window* pParentWin, WinBits nStyle )
: SvTreeListBox ( pParentWin, nStyle )
, bisInSdNavigatorWin ( false )
diff --git a/sd/source/ui/inc/navigatr.hrc b/sd/source/ui/inc/navigatr.hrc
deleted file mode 100644
index 1dce27251d79..000000000000
--- a/sd/source/ui/inc/navigatr.hrc
+++ /dev/null
@@ -1,37 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*
- * This file is part of the LibreOffice project.
- *
- * This Source Code Form is subject to the terms of the Mozilla Public
- * License, v. 2.0. If a copy of the MPL was not distributed with this
- * file, You can obtain one at http://mozilla.org/MPL/2.0/.
- *
- * This file incorporates work covered by the following license notice:
- *
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed
- * with this work for additional information regarding copyright
- * ownership. The ASF licenses this file to you under the Apache
- * License, Version 2.0 (the "License"); you may not use this file
- * except in compliance with the License. You may obtain a copy of
- * the License at http://www.apache.org/licenses/LICENSE-2.0 .
- */
-#define FLT_NAVIGATOR 575
-#define STR_OBJECTS_TREE (FLT_NAVIGATOR+1)
-#define TLB_OBJECTS 1
-#define TBI_FIRST 3
-#define TBI_PREVIOUS 4
-#define TBI_NEXT 5
-#define TBI_LAST 6
-#define TBI_DRAGTYPE 7
-#define TBI_EMBEDDED 8
-#define TBI_LINK 9
-#define TBI_HYPERLINK 10
-#define TBI_SHAPE_FILTER 11
-
-#define LB_DOCS 1
-
-#define IL_NAVIGATR 333
-#define STR_DRAGMODE 1
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/sd/source/ui/inc/navigatr.hxx b/sd/source/ui/inc/navigatr.hxx
index 830c3cd844a5..419a1441e3db 100644
--- a/sd/source/ui/inc/navigatr.hxx
+++ b/sd/source/ui/inc/navigatr.hxx
@@ -24,6 +24,7 @@
#include <vcl/lstbox.hxx>
#include <vcl/toolbox.hxx>
#include <sfx2/ctrlitem.hxx>
+#include <svx/sidebar/PanelLayout.hxx>
#include "sdtreelb.hxx"
#include "pres.hxx"
@@ -75,8 +76,7 @@ private:
::sd::DrawDocShell* mpDocShell;
};
-class SdNavigatorWin
- : public vcl::Window
+class SdNavigatorWin : public PanelLayout
{
public:
typedef ::std::function<void ()> UpdateRequestFunctor;
@@ -103,7 +103,6 @@ public:
NavigatorDragType GetNavigatorDragType();
protected:
- virtual void Resize() override;
virtual bool Notify(NotifyEvent& rNEvt) override;
private:
@@ -115,8 +114,6 @@ private:
VclPtr<SdPageObjsTLB> maTlbObjects;
VclPtr<ListBox> maLbDocs;
- Size maSize;
- Size maMinSize;
bool mbDocImported;
OUString maDropFileName;
NavigatorDragType meDragType;
@@ -125,8 +122,6 @@ private:
SdNavigatorControllerItem* mpNavigatorCtrlItem;
SdPageNameControllerItem* mpPageNameCtrlItem;
- ImageList maImageList;
-
/** This flag controls whether all shapes or only the named shapes are
shown.
*/
@@ -142,9 +137,8 @@ private:
DECL_LINK( MenuSelectHdl, Menu *, bool );
DECL_LINK( ShapeFilterCallback, Menu *, bool );
- virtual void DataChanged( const DataChangedEvent& rDCEvt ) override;
void SetDragImage();
- void ApplyImageList();
+
public:
//when object is marked , fresh the corresponding entry tree .
static sd::DrawDocShell* GetDrawDocShell(const SdDrawDocument*);
diff --git a/sd/source/ui/inc/res_bmp.hrc b/sd/source/ui/inc/res_bmp.hrc
index 91ab0e0efebb..955abfded17a 100644
--- a/sd/source/ui/inc/res_bmp.hrc
+++ b/sd/source/ui/inc/res_bmp.hrc
@@ -209,4 +209,8 @@
#define RID_GRAPHICSTYLEFAMILY RID_APP_START+395
#define RID_PRESENTATIONSTYLEFAMILY RID_APP_START+396
+#define IMG_EMBEDDED RID_APP_START+397
+#define IMG_LINK RID_APP_START+398
+#define IMG_HYPERLINK RID_APP_START+399
+
/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/sd/source/ui/inc/sdtreelb.hxx b/sd/source/ui/inc/sdtreelb.hxx
index ee00a4a8c677..a7c12d720414 100644
--- a/sd/source/ui/inc/sdtreelb.hxx
+++ b/sd/source/ui/inc/sdtreelb.hxx
@@ -181,8 +181,7 @@ protected:
public:
- SdPageObjsTLB( vcl::Window* pParent, const SdResId& rSdResId );
- SdPageObjsTLB( vcl::Window* pParent, WinBits nStyle );
+ SdPageObjsTLB(vcl::Window* pParent, WinBits nStyle);
virtual ~SdPageObjsTLB() override;
virtual void dispose() override;
diff --git a/sd/source/ui/inc/strings.hrc b/sd/source/ui/inc/strings.hrc
index 37dd9c4bdfe6..769e18845370 100644
--- a/sd/source/ui/inc/strings.hrc
+++ b/sd/source/ui/inc/strings.hrc
@@ -392,8 +392,7 @@
#define STR_TASKPANEL_PREPARING_PREVIEW_SUBSTITUTION (RID_APP_START+712)
#define STR_TASKPANEL_LAYOUT_MENU_TITLE (RID_APP_START+713)
#define STR_GRAPHICS_STYLE_FAMILY (RID_APP_START+715)
-
-// free
+#define STR_OBJECTS_TREE (RID_APP_START+716)
#define STR_CELL_STYLE_FAMILY (RID_APP_START+717)
#define STR_NAVIGATOR_SHOW_NAMED_SHAPES (RID_APP_START+718)
diff --git a/sd/source/ui/sidebar/NavigatorWrapper.cxx b/sd/source/ui/sidebar/NavigatorWrapper.cxx
index deedf7a417f1..7ab817b751a9 100644
--- a/sd/source/ui/sidebar/NavigatorWrapper.cxx
+++ b/sd/source/ui/sidebar/NavigatorWrapper.cxx
@@ -18,7 +18,6 @@
*/
#include "NavigatorWrapper.hxx"
-#include "navigatr.hrc"
#include "ViewShellBase.hxx"
#include <sfx2/sidebar/Theme.hxx>
diff --git a/sd/uiconfig/simpress/ui/navigatorpanel.ui b/sd/uiconfig/simpress/ui/navigatorpanel.ui
new file mode 100644
index 000000000000..93e454ad20c6
--- /dev/null
+++ b/sd/uiconfig/simpress/ui/navigatorpanel.ui
@@ -0,0 +1,155 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- Generated with glade 3.20.0 -->
+<interface>
+ <requires lib="gtk+" version="3.0"/>
+ <object class="GtkGrid" id="NavigatorPanel">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="border_width">6</property>
+ <child>
+ <object class="GtkGrid">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="hexpand">True</property>
+ <property name="vexpand">True</property>
+ <property name="border_width">6</property>
+ <property name="row_spacing">6</property>
+ <property name="column_spacing">12</property>
+ <child>
+ <object class="GtkComboBox" id="documents">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="tooltip_text" translatable="yes">Document</property>
+ <child internal-child="accessible">
+ <object class="AtkObject" id="documents-atkobject">
+ <property name="AtkObject::accessible-name" translatable="yes">Active Window</property>
+ </object>
+ </child>
+ </object>
+ <packing>
+ <property name="left_attach">0</property>
+ <property name="top_attach">2</property>
+ </packing>
+ </child>
+ <child>
+ <object class="sdlo-SdPageObjsTLB" id="tree:border">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="hexpand">True</property>
+ <property name="vexpand">True</property>
+ <child internal-child="selection">
+ <object class="GtkTreeSelection" id="SdPageObjsTLB-selection1"/>
+ </child>
+ </object>
+ <packing>
+ <property name="left_attach">0</property>
+ <property name="top_attach">1</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkToolbar" id="toolbox">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="toolbar_style">icons</property>
+ <child>
+ <object class="GtkToolButton" id="first">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="tooltip_text" translatable="yes">First Slide</property>
+ <property name="action_name">first</property>
+ <property name="icon_name">sd/imglst/nv03.png</property>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="homogeneous">True</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkToolButton" id="previous">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="tooltip_text" translatable="yes">Previous Slide</property>
+ <property name="action_name">previous</property>
+ <property name="icon_name">sd/imglst/nv04.png</property>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="homogeneous">True</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkToolButton" id="next">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="tooltip_text" translatable="yes">Next Slide</property>
+ <property name="action_name">next</property>
+ <property name="icon_name">sd/imglst/nv05.png</property>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="homogeneous">True</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkToolButton" id="last">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="tooltip_text" translatable="yes">Last Slide</property>
+ <property name="action_name">last</property>
+ <property name="icon_name">sd/imglst/nv06.png</property>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="homogeneous">True</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkSeparatorToolItem" id="separator">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="homogeneous">True</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkMenuToolButton" id="dragmode">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="tooltip_text" translatable="yes">Drag Mode</property>
+ <property name="action_name">dragmode</property>
+ <property name="icon_name">sc/imglst/na09.png</property>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="homogeneous">True</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkMenuToolButton" id="shapes">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="tooltip_text" translatable="yes">Show Shapes</property>
+ <property name="action_name">shapes</property>
+ <property name="icon_name">sd/res/graphic.png</property>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="homogeneous">True</property>
+ </packing>
+ </child>
+ </object>
+ <packing>
+ <property name="left_attach">0</property>
+ <property name="top_attach">0</property>
+ </packing>
+ </child>
+ </object>
+ <packing>
+ <property name="left_attach">0</property>
+ <property name="top_attach">0</property>
+ </packing>
+ </child>
+ </object>
+</interface>