convert the last tabpage in sd to .ui

Change-Id: I49eb93ec73d0783ab62eab5ce469526dd069e0b0
This commit is contained in:
Caolán McNamara
2013-12-03 10:25:09 +00:00
parent 5a23dee064
commit 00a3143b31
8 changed files with 605 additions and 402 deletions

View File

@@ -47,7 +47,6 @@ $(eval $(call gb_SrsTarget_add_files,sd/res,\
sd/source/ui/dlg/LayerDialog.src \
sd/source/ui/dlg/navigatr.src \
sd/source/ui/dlg/PaneDockingWindow.src \
sd/source/ui/dlg/tpaction.src \
sd/source/ui/slideshow/slideshow.src \
sd/source/ui/view/DocumentRenderer.src \
))

View File

@@ -83,6 +83,8 @@ $(eval $(call gb_UIConfig_add_uifiles,modules/simpress,\
sd/uiconfig/simpress/ui/headerfooterdialog \
sd/uiconfig/simpress/ui/headerfootertab \
sd/uiconfig/simpress/ui/insertslides \
sd/uiconfig/simpress/ui/interactiondialog \
sd/uiconfig/simpress/ui/interactionpage \
sd/uiconfig/simpress/ui/masterlayoutdlg \
sd/uiconfig/simpress/ui/optimpressgeneralpage \
sd/uiconfig/simpress/ui/photoalbum \

View File

@@ -56,7 +56,6 @@
#include "View.hxx"
#include "sdresid.hxx"
#include "tpaction.hxx"
#include "tpaction.hrc"
#include "strmname.h"
#include "ViewShell.hxx"
#include "drawdoc.hxx"
@@ -77,71 +76,66 @@ using namespace com::sun::star::lang;
* Constructor of the Tab dialog: appends the pages to the dialog
*/
SdActionDlg::SdActionDlg (
::Window* pParent, const SfxItemSet* pAttr, ::sd::View* pView ) :
SfxNoLayoutSingleTabDialog ( pParent, *pAttr, TP_ANIMATION_ACTION ),
rOutAttrs ( *pAttr )
::Window* pParent, const SfxItemSet* pAttr, ::sd::View* pView )
: SfxSingleTabDialog(pParent, *pAttr, "InteractionDialog",
"modules/simpress/ui/interactiondialog.ui")
, rOutAttrs(*pAttr)
{
// FreeResource();
SfxTabPage* pNewPage = SdTPAction::Create( this, rOutAttrs );
DBG_ASSERT( pNewPage, "Unable to create page");
SfxTabPage* pNewPage = SdTPAction::Create(get_content_area(), rOutAttrs);
assert(pNewPage); //Unable to create page
// formerly in PageCreated
( (SdTPAction*) pNewPage )->SetView( pView );
( (SdTPAction*) pNewPage )->Construct();
SetTabPage( pNewPage );
OUString aStr( pNewPage->GetText() );
if( !aStr.isEmpty() )
SetText( aStr );
setTabPage( pNewPage );
}
/**
* Action-TabPage
*/
SdTPAction::SdTPAction( Window* pWindow, const SfxItemSet& rInAttrs ) :
SfxTabPage ( pWindow, SdResId( TP_ANIMATION ), rInAttrs ),
aFtAction ( this, SdResId( FT_ACTION ) ),
aLbAction ( this, SdResId( LB_ACTION ) ),
aFtTree ( this, SdResId( FT_TREE ) ),
aLbTree ( this, SdResId( LB_TREE ) ),
aLbTreeDocument ( this, SdResId( LB_TREE_DOCUMENT ) ),
aLbOLEAction ( this, SdResId( LB_OLE_ACTION ) ),
aFlSeparator ( this, SdResId( FL_SEPARATOR ) ),
aEdtSound ( this, SdResId( EDT_SOUND ) ),
aEdtBookmark ( this, SdResId( EDT_BOOKMARK ) ),
aEdtDocument ( this, SdResId( EDT_DOCUMENT ) ),
aEdtProgram ( this, SdResId( EDT_PROGRAM ) ),
aEdtMacro ( this, SdResId( EDT_MACRO ) ),
aBtnSearch ( this, SdResId( BTN_SEARCH ) ),
aBtnSeek ( this, SdResId( BTN_SEEK ) ),
rOutAttrs ( rInAttrs ),
mpView ( NULL ),
mpDoc ( NULL ),
bTreeUpdated ( sal_False )
SdTPAction::SdTPAction(Window* pWindow, const SfxItemSet& rInAttrs)
: SfxTabPage(pWindow, "InteractionPage",
"modules/simpress/ui/interactionpage.ui", rInAttrs)
, rOutAttrs(rInAttrs)
, mpView(NULL)
, mpDoc(NULL)
, bTreeUpdated(false)
{
aEdtSound.SetAccessibleName(SD_RESSTR(STR_PATHNAME));
aBtnSeek.SetAccessibleRelationMemberOf( &aFlSeparator );
get(m_pLbAction, "listbox");
get(m_pFtTree, "fttree");
get(m_pLbTree, "tree");
get(m_pLbTreeDocument, "treedoc");
get(m_pLbOLEAction, "oleaction");
get(m_pFrame, "frame");
get(m_pEdtSound, "sound");
get(m_pEdtBookmark, "bookmark");
get(m_pEdtDocument, "document");
get(m_pEdtProgram, "program");
get(m_pEdtMacro, "macro");
get(m_pBtnSearch, "browse");
get(m_pBtnSeek, "find");
FreeResource();
m_pLbOLEAction->set_width_request(m_pLbOLEAction->approximate_char_width() * 52);
m_pLbOLEAction->set_height_request(m_pLbOLEAction->GetTextHeight() * 12);
aBtnSearch.SetClickHdl( LINK( this, SdTPAction, ClickSearchHdl ) );
aBtnSeek.SetClickHdl( LINK( this, SdTPAction, ClickSearchHdl ) );
m_pBtnSearch->SetClickHdl( LINK( this, SdTPAction, ClickSearchHdl ) );
m_pBtnSeek->SetClickHdl( LINK( this, SdTPAction, ClickSearchHdl ) );
// this page needs ExchangeSupport
SetExchangeSupport();
aLbAction.SetSelectHdl( LINK( this, SdTPAction, ClickActionHdl ) );
aLbTree.SetSelectHdl( LINK( this, SdTPAction, SelectTreeHdl ) );
aEdtDocument.SetLoseFocusHdl( LINK( this, SdTPAction, CheckFileHdl ) );
aEdtMacro.SetLoseFocusHdl( LINK( this, SdTPAction, CheckFileHdl ) );
m_pLbAction->SetSelectHdl( LINK( this, SdTPAction, ClickActionHdl ) );
m_pLbTree->SetSelectHdl( LINK( this, SdTPAction, SelectTreeHdl ) );
m_pEdtDocument->SetLoseFocusHdl( LINK( this, SdTPAction, CheckFileHdl ) );
m_pEdtMacro->SetLoseFocusHdl( LINK( this, SdTPAction, CheckFileHdl ) );
// enable controls
aFtAction.Show();
aLbAction.Show();
//Lock to initial max size
Size aSize(get_preferred_size());
set_width_request(aSize.Width());
set_height_request(aSize.Height());
ClickActionHdl( this );
}
@@ -164,8 +158,8 @@ void SdTPAction::SetView( const ::sd::View* pSdView )
{
mpDoc = pDocSh->GetDoc();
SfxViewFrame* pFrame = pDocSh->GetViewShell()->GetViewFrame();
aLbTree.SetViewFrame( pFrame );
aLbTreeDocument.SetViewFrame( pFrame );
m_pLbTree->SetViewFrame( pFrame );
m_pLbTreeDocument->SetViewFrame( pFrame );
SvxColorListItem aItem( *(const SvxColorListItem*)( pDocSh->GetItem( SID_COLOR_TABLE ) ) );
pColList = aItem.GetColorList();
@@ -214,7 +208,7 @@ void SdTPAction::Construct()
bOLEAction = sal_True;
aVerbVector.push_back( 0 );
aLbOLEAction.InsertEntry( MnemonicGenerator::EraseAllMnemonicChars( SD_RESSTR( STR_EDIT_OBJ ) ) );
m_pLbOLEAction->InsertEntry( MnemonicGenerator::EraseAllMnemonicChars( SD_RESSTR( STR_EDIT_OBJ ) ) );
}
else if( pOleObj )
{
@@ -240,7 +234,7 @@ void SdTPAction::Construct()
{
OUString aTmp( aVerb.VerbName );
aVerbVector.push_back( aVerb.VerbID );
aLbOLEAction.InsertEntry( MnemonicGenerator::EraseAllMnemonicChars( aTmp ) );
m_pLbOLEAction->InsertEntry( MnemonicGenerator::EraseAllMnemonicChars( aTmp ) );
}
}
}
@@ -254,7 +248,7 @@ void SdTPAction::Construct()
maCurrentActions.push_back( presentation::ClickAction_BOOKMARK );
maCurrentActions.push_back( presentation::ClickAction_DOCUMENT );
maCurrentActions.push_back( presentation::ClickAction_SOUND );
if( bOLEAction && aLbOLEAction.GetEntryCount() )
if( bOLEAction && m_pLbOLEAction->GetEntryCount() )
maCurrentActions.push_back( presentation::ClickAction_VERB );
maCurrentActions.push_back( presentation::ClickAction_PROGRAM );
maCurrentActions.push_back( presentation::ClickAction_MACRO );
@@ -264,7 +258,7 @@ void SdTPAction::Construct()
for (size_t nAction = 0, n = maCurrentActions.size(); nAction < n; nAction++)
{
sal_uInt16 nRId = GetClickActionSdResId( maCurrentActions[ nAction ] );
aLbAction.InsertEntry( SD_RESSTR( nRId ) );
m_pLbAction->InsertEntry( SD_RESSTR( nRId ) );
}
}
@@ -276,10 +270,10 @@ sal_Bool SdTPAction::FillItemSet( SfxItemSet& rAttrs )
sal_Bool bModified = sal_False;
presentation::ClickAction eCA = presentation::ClickAction_NONE;
if( aLbAction.GetSelectEntryCount() )
if( m_pLbAction->GetSelectEntryCount() )
eCA = GetActualClickAction();
if( aLbAction.GetSavedValue() != aLbAction.GetSelectEntryPos() )
if( m_pLbAction->GetSavedValue() != m_pLbAction->GetSelectEntryPos() )
{
rAttrs.Put( SfxAllEnumItem( ATTR_ACTION, (sal_uInt16)eCA ) );
bModified = sal_True;
@@ -321,7 +315,7 @@ void SdTPAction::Reset( const SfxItemSet& rAttrs )
presentation::ClickAction eCA = presentation::ClickAction_NONE;
OUString aFileName;
// aLbAction
// m_pLbAction
if( rAttrs.GetItemState( ATTR_ACTION ) != SFX_ITEM_DONTCARE )
{
eCA = (presentation::ClickAction) ( ( const SfxAllEnumItem& ) rAttrs.
@@ -329,9 +323,9 @@ void SdTPAction::Reset( const SfxItemSet& rAttrs )
SetActualClickAction( eCA );
}
else
aLbAction.SetNoSelection();
m_pLbAction->SetNoSelection();
// aEdtSound
// m_pEdtSound
if( rAttrs.GetItemState( ATTR_ACTION_FILENAME ) != SFX_ITEM_DONTCARE )
{
aFileName = ( ( const SfxStringItem& ) rAttrs.Get( ATTR_ACTION_FILENAME ) ).GetValue();
@@ -342,15 +336,15 @@ void SdTPAction::Reset( const SfxItemSet& rAttrs )
{
case presentation::ClickAction_BOOKMARK:
{
if( !aLbTree.SelectEntry( aFileName ) )
aLbTree.SelectAll( sal_False );
if( !m_pLbTree->SelectEntry( aFileName ) )
m_pLbTree->SelectAll( sal_False );
}
break;
case presentation::ClickAction_DOCUMENT:
{
if( comphelper::string::getTokenCount(aFileName, DOCUMENT_TOKEN) == 2 )
aLbTreeDocument.SelectEntry( aFileName.getToken( 1, DOCUMENT_TOKEN ) );
m_pLbTreeDocument->SelectEntry( aFileName.getToken( 1, DOCUMENT_TOKEN ) );
}
break;
@@ -359,8 +353,8 @@ void SdTPAction::Reset( const SfxItemSet& rAttrs )
}
ClickActionHdl( this );
aLbAction.SaveValue();
aEdtSound.SaveValue();
m_pLbAction->SaveValue();
m_pEdtSound->SaveValue();
}
// -----------------------------------------------------------------------
@@ -393,8 +387,8 @@ void SdTPAction::UpdateTree()
{
if( !bTreeUpdated && mpDoc && mpDoc->GetDocSh() && mpDoc->GetDocSh()->GetMedium() )
{
//aLbTree.Clear();
aLbTree.Fill( mpDoc, sal_True, mpDoc->GetDocSh()->GetMedium()->GetName() );
//m_pLbTree->Clear();
m_pLbTree->Fill( mpDoc, sal_True, mpDoc->GetDocSh()->GetMedium()->GetName() );
bTreeUpdated = sal_True;
}
}
@@ -414,7 +408,7 @@ void SdTPAction::OpenFileDialog()
if( bPage )
{
// search in the TreeLB for the specified object
aLbTree.SelectEntry( GetEditText() );
m_pLbTree->SelectEntry( GetEditText() );
}
else
{
@@ -506,82 +500,82 @@ IMPL_LINK_NOARG(SdTPAction, ClickActionHdl)
case presentation::ClickAction_LASTPAGE:
case presentation::ClickAction_STOPPRESENTATION:
default:
aFtTree.Hide();
aLbTree.Hide();
aLbTreeDocument.Hide();
aLbOLEAction.Hide();
m_pFtTree->Hide();
m_pLbTree->Hide();
m_pLbTreeDocument->Hide();
m_pLbOLEAction->Hide();
aFlSeparator.Hide();
aEdtSound.Hide();
aEdtBookmark.Hide();
aEdtDocument.Hide();
aEdtProgram.Hide();
aEdtMacro.Hide();
aBtnSearch.Hide();
aBtnSeek.Hide();
m_pFrame->Hide();
m_pEdtSound->Hide();
m_pEdtBookmark->Hide();
m_pEdtDocument->Hide();
m_pEdtProgram->Hide();
m_pEdtMacro->Hide();
m_pBtnSearch->Hide();
m_pBtnSeek->Hide();
break;
case presentation::ClickAction_SOUND:
case presentation::ClickAction_PROGRAM:
case presentation::ClickAction_MACRO:
aFtTree.Hide();
aLbTree.Hide();
aLbTreeDocument.Hide();
aLbOLEAction.Hide();
m_pFtTree->Hide();
m_pLbTree->Hide();
m_pLbTreeDocument->Hide();
m_pLbOLEAction->Hide();
aEdtDocument.Hide();
m_pEdtDocument->Hide();
if( eCA == presentation::ClickAction_MACRO )
{
aEdtSound.Hide();
aEdtProgram.Hide();
m_pEdtSound->Hide();
m_pEdtProgram->Hide();
}
else if( eCA == presentation::ClickAction_PROGRAM )
{
aEdtSound.Hide();
aEdtMacro.Hide();
m_pEdtSound->Hide();
m_pEdtMacro->Hide();
}
else if( eCA == presentation::ClickAction_SOUND )
{
aEdtProgram.Hide();
aEdtMacro.Hide();
m_pEdtProgram->Hide();
m_pEdtMacro->Hide();
}
aBtnSeek.Hide();
m_pBtnSeek->Hide();
break;
case presentation::ClickAction_DOCUMENT:
aLbTree.Hide();
aLbOLEAction.Hide();
m_pLbTree->Hide();
m_pLbOLEAction->Hide();
aEdtSound.Hide();
aEdtProgram.Hide();
aEdtMacro.Hide();
aEdtBookmark.Hide();
aBtnSeek.Hide();
m_pEdtSound->Hide();
m_pEdtProgram->Hide();
m_pEdtMacro->Hide();
m_pEdtBookmark->Hide();
m_pBtnSeek->Hide();
break;
case presentation::ClickAction_BOOKMARK:
aLbTreeDocument.Hide();
aLbOLEAction.Hide();
aEdtSound.Hide();
aEdtDocument.Hide();
aEdtProgram.Hide();
aEdtMacro.Hide();
aBtnSearch.Hide();
m_pLbTreeDocument->Hide();
m_pLbOLEAction->Hide();
m_pEdtSound->Hide();
m_pEdtDocument->Hide();
m_pEdtProgram->Hide();
m_pEdtMacro->Hide();
m_pBtnSearch->Hide();
break;
case presentation::ClickAction_VERB:
aLbTree.Hide();
aEdtDocument.Hide();
aEdtProgram.Hide();
aEdtBookmark.Hide();
aEdtMacro.Hide();
aBtnSearch.Hide();
aFlSeparator.Hide();
aEdtSound.Hide();
aBtnSeek.Hide();
m_pLbTree->Hide();
m_pEdtDocument->Hide();
m_pEdtProgram->Hide();
m_pEdtBookmark->Hide();
m_pEdtMacro->Hide();
m_pBtnSearch->Hide();
m_pFrame->Hide();
m_pEdtSound->Hide();
m_pBtnSeek->Hide();
break;
}
@@ -599,65 +593,65 @@ IMPL_LINK_NOARG(SdTPAction, ClickActionHdl)
break;
case presentation::ClickAction_SOUND:
aFlSeparator.Show();
aEdtSound.Show();
aEdtSound.Enable();
aBtnSearch.Show();
aBtnSearch.Enable();
aFlSeparator.SetText( SD_RESSTR( STR_EFFECTDLG_SOUND ) );
m_pFrame->Show();
m_pEdtSound->Show();
m_pEdtSound->Enable();
m_pBtnSearch->Show();
m_pBtnSearch->Enable();
m_pFrame->set_label( SD_RESSTR( STR_EFFECTDLG_SOUND ) );
break;
case presentation::ClickAction_PROGRAM:
case presentation::ClickAction_MACRO:
aFlSeparator.Show();
aBtnSearch.Show();
aBtnSearch.Enable();
m_pFrame->Show();
m_pBtnSearch->Show();
m_pBtnSearch->Enable();
if( eCA == presentation::ClickAction_MACRO )
{
aEdtMacro.Show();
aFlSeparator.SetText( SD_RESSTR( STR_EFFECTDLG_MACRO ) );
m_pEdtMacro->Show();
m_pFrame->set_label( SD_RESSTR( STR_EFFECTDLG_MACRO ) );
}
else
{
aEdtProgram.Show();
aFlSeparator.SetText( SD_RESSTR( STR_EFFECTDLG_PROGRAM ) );
m_pEdtProgram->Show();
m_pFrame->set_label( SD_RESSTR( STR_EFFECTDLG_PROGRAM ) );
}
break;
case presentation::ClickAction_DOCUMENT:
aFtTree.Show();
aLbTreeDocument.Show();
m_pFtTree->Show();
m_pLbTreeDocument->Show();
aFlSeparator.Show();
aEdtDocument.Show();
aBtnSearch.Show();
aBtnSearch.Enable();
m_pFrame->Show();
m_pEdtDocument->Show();
m_pBtnSearch->Show();
m_pBtnSearch->Enable();
aFtTree.SetText( SD_RESSTR( STR_EFFECTDLG_JUMP ) );
aFlSeparator.SetText( SD_RESSTR( STR_EFFECTDLG_DOCUMENT ) );
m_pFtTree->SetText( SD_RESSTR( STR_EFFECTDLG_JUMP ) );
m_pFrame->set_label( SD_RESSTR( STR_EFFECTDLG_DOCUMENT ) );
CheckFileHdl( NULL );
break;
case presentation::ClickAction_VERB:
aFtTree.Show();
aLbOLEAction.Show();
m_pFtTree->Show();
m_pLbOLEAction->Show();
aFtTree.SetText( SD_RESSTR( STR_EFFECTDLG_ACTION ) );
m_pFtTree->SetText( SD_RESSTR( STR_EFFECTDLG_ACTION ) );
break;
case presentation::ClickAction_BOOKMARK:
UpdateTree();
aFtTree.Show();
aLbTree.Show();
m_pFtTree->Show();
m_pLbTree->Show();
aFlSeparator.Show();
aEdtBookmark.Show();
aBtnSeek.Show();
m_pFrame->Show();
m_pEdtBookmark->Show();
m_pBtnSeek->Show();
aFtTree.SetText( SD_RESSTR( STR_EFFECTDLG_JUMP ) );
aFlSeparator.SetText( SD_RESSTR( STR_EFFECTDLG_PAGE_OBJECT ) );
m_pFtTree->SetText( SD_RESSTR( STR_EFFECTDLG_JUMP ) );
m_pFrame->set_label( SD_RESSTR( STR_EFFECTDLG_PAGE_OBJECT ) );
break;
default:
break;
@@ -670,7 +664,7 @@ IMPL_LINK_NOARG(SdTPAction, ClickActionHdl)
IMPL_LINK_NOARG(SdTPAction, SelectTreeHdl)
{
aEdtBookmark.SetText( aLbTree.GetSelectEntry() );
m_pEdtBookmark->SetText( m_pLbTree->GetSelectEntry() );
return( 0L );
}
@@ -705,20 +699,20 @@ IMPL_LINK_NOARG(SdTPAction, CheckFileHdl)
{
aLastFile = aFile;
aLbTreeDocument.Clear();
aLbTreeDocument.Fill( pBookmarkDoc, sal_True, aFile );
m_pLbTreeDocument->Clear();
m_pLbTreeDocument->Fill( pBookmarkDoc, sal_True, aFile );
mpDoc->CloseBookmarkDoc();
aLbTreeDocument.Show();
m_pLbTreeDocument->Show();
}
else
aLbTreeDocument.Hide();
m_pLbTreeDocument->Hide();
}
else
aLbTreeDocument.Hide();
m_pLbTreeDocument->Hide();
}
else
aLbTreeDocument.Hide();
m_pLbTreeDocument->Hide();
}
return( 0L );
@@ -729,7 +723,7 @@ IMPL_LINK_NOARG(SdTPAction, CheckFileHdl)
presentation::ClickAction SdTPAction::GetActualClickAction()
{
presentation::ClickAction eCA = presentation::ClickAction_NONE;
sal_uInt16 nPos = aLbAction.GetSelectEntryPos();
sal_uInt16 nPos = m_pLbAction->GetSelectEntryPos();
if (nPos != LISTBOX_ENTRY_NOTFOUND && nPos < maCurrentActions.size())
eCA = maCurrentActions[ nPos ];
@@ -744,7 +738,7 @@ void SdTPAction::SetActualClickAction( presentation::ClickAction eCA )
std::find(maCurrentActions.begin(),maCurrentActions.end(),eCA);
if ( pIter != maCurrentActions.end() )
aLbAction.SelectEntryPos( pIter-maCurrentActions.begin() );
m_pLbAction->SelectEntryPos( pIter-maCurrentActions.begin() );
}
//------------------------------------------------------------------------
@@ -782,28 +776,28 @@ void SdTPAction::SetEditText( OUString const & rStr )
switch( eCA )
{
case presentation::ClickAction_SOUND:
aEdtSound.SetText(aText );
m_pEdtSound->SetText(aText );
break;
case presentation::ClickAction_VERB:
{
::std::vector< long >::iterator aFound( ::std::find( aVerbVector.begin(), aVerbVector.end(), rStr.toInt32() ) );
if( aFound != aVerbVector.end() )
aLbOLEAction.SelectEntryPos( static_cast< short >( aFound - aVerbVector.begin() ) );
m_pLbOLEAction->SelectEntryPos( static_cast< short >( aFound - aVerbVector.begin() ) );
}
break;
case presentation::ClickAction_PROGRAM:
aEdtProgram.SetText( aText );
m_pEdtProgram->SetText( aText );
break;
case presentation::ClickAction_MACRO:
{
aEdtMacro.SetText( aText );
m_pEdtMacro->SetText( aText );
}
break;
case presentation::ClickAction_DOCUMENT:
aEdtDocument.SetText( aText );
m_pEdtDocument->SetText( aText );
break;
case presentation::ClickAction_BOOKMARK:
aEdtBookmark.SetText( aText );
m_pEdtBookmark->SetText( aText );
break;
default:
break;
@@ -820,30 +814,30 @@ OUString SdTPAction::GetEditText( sal_Bool bFullDocDestination )
switch( eCA )
{
case presentation::ClickAction_SOUND:
aStr = aEdtSound.GetText();
aStr = m_pEdtSound->GetText();
break;
case presentation::ClickAction_VERB:
{
const sal_uInt16 nPos = aLbOLEAction.GetSelectEntryPos();
const sal_uInt16 nPos = m_pLbOLEAction->GetSelectEntryPos();
if( nPos < aVerbVector.size() )
aStr = OUString::number( aVerbVector[ nPos ] );
return aStr;
}
case presentation::ClickAction_DOCUMENT:
aStr = aEdtDocument.GetText();
aStr = m_pEdtDocument->GetText();
break;
case presentation::ClickAction_PROGRAM:
aStr = aEdtProgram.GetText();
aStr = m_pEdtProgram->GetText();
break;
case presentation::ClickAction_MACRO:
{
return aEdtMacro.GetText();
return m_pEdtMacro->GetText();
}
case presentation::ClickAction_BOOKMARK:
return( aEdtBookmark.GetText() );
return( m_pEdtBookmark->GetText() );
default:
break;
@@ -863,10 +857,10 @@ OUString SdTPAction::GetEditText( sal_Bool bFullDocDestination )
if( bFullDocDestination &&
eCA == presentation::ClickAction_DOCUMENT &&
aLbTreeDocument.Control::IsVisible() &&
aLbTreeDocument.GetSelectionCount() > 0 )
m_pLbTreeDocument->Control::IsVisible() &&
m_pLbTreeDocument->GetSelectionCount() > 0 )
{
OUString aTmpStr( aLbTreeDocument.GetSelectEntry() );
OUString aTmpStr( m_pLbTreeDocument->GetSelectEntry() );
if( !aTmpStr.isEmpty() )
{
aStr += OUString(DOCUMENT_TOKEN);

View File

@@ -1,175 +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 "app.hrc"
#include "helpids.h"
#include "tpaction.hrc"
#include <svtools/controldims.hrc>
TabPage TP_ANIMATION
{
HelpID = CMD_SID_ANIMATION_EFFECTS ;
Pos = MAP_APPFONT ( 0 , 0 ) ;
Size = MAP_APPFONT ( 260 , 164 ) ;
Hide = TRUE;
// always visible ---------------------------------------------------------------------
#define MA_ACTIONLB_TOP (RSC_SP_DLG_INNERBORDER_TOP + (2*RSC_CD_PUSHBUTTON_HEIGHT + RSC_SP_CTRL_GROUP_Y - RSC_CD_DROPDOWN_HEIGHT) / 2)
#define MA_ACTIONLB_LEFT (103)
FixedText FT_ACTION
{
Pos = MAP_APPFONT ( RSC_SP_DLG_INNERBORDER_LEFT + RSC_SP_FLGR_INNERBORDER_LEFT , MA_ACTIONLB_TOP + 1 ) ;
Size = MAP_APPFONT ( 86 , 10 ) ;
Hide = TRUE ;
Text [ en-US ] = "Action at mouse click" ;
};
ListBox LB_ACTION
{
HelpID = "sd:ListBox:TP_ANIMATION:LB_ACTION";
Border = TRUE ;
Pos = MAP_APPFONT ( MA_ACTIONLB_LEFT , MA_ACTIONLB_TOP ) ;
Size = MAP_APPFONT ( 150 - RSC_SP_GRP_INNERBORDER_RIGHT , 79 ) ;
Hide = TRUE ;
TabStop = TRUE ;
DropDown = TRUE ;
};
// sometimes visible ---------------------------------------------------------------------
#define MA_Y0 (MA_ACTIONLB_TOP + RSC_CD_DROPDOWN_HEIGHT + RSC_SP_FLGR_SPACE_Y + RSC_SP_FLGR_INNERBORDER_BOTTOM)
#define MA_Y1 (MA_Y0 + RSC_CD_FIXEDLINE_HEIGHT + RSC_SP_FLGR_INNERBORDER_TOP)
#define MA_Y2 (MA_Y1 + RSC_CD_DROPDOWN_HEIGHT + RSC_SP_CTRL_GROUP_Y)
#define MA_Y3 (MA_Y2 + 3*(RSC_CD_RADIOBUTTON_HEIGHT + RSC_SP_CTRL_GROUP_Y))
#define MA_Y4 (MA_Y3 + RSC_CD_DROPDOWN_HEIGHT + RSC_SP_CTRL_GROUP_Y)
Edit EDT_SOUND
{
HelpID = "sd:Edit:TP_ANIMATION:EDT_SOUND";
Border = TRUE ;
Pos = MAP_APPFONT ( RSC_SP_DLG_INNERBORDER_LEFT + RSC_SP_FLGR_INNERBORDER_LEFT + RSC_SP_CHK_TEXTINDENT , MA_Y4 + RSC_CD_CHECKBOX_HEIGHT + 1 ) ;
Size = MAP_APPFONT ( 247 - 65 - 10 - (RSC_SP_DLG_INNERBORDER_LEFT + RSC_SP_FLGR_INNERBORDER_LEFT + RSC_SP_CHK_TEXTINDENT) , 12 ) ;
TabStop = TRUE ;
Hide = TRUE ;
};
// It is important that "search" and "seek/find" are clearly
// distinguishable since they have different meanings
PushButton BTN_SEARCH
{
HelpID = "sd:PushButton:TP_ANIMATION:BTN_SEARCH";
Pos = MAP_APPFONT ( 247 - 65, MA_Y4 + RSC_CD_CHECKBOX_HEIGHT ) ;
Size = MAP_APPFONT ( 65 , 14 ) ;
TabStop = TRUE ;
Hide = TRUE ;
Text [ en-US ] = "~Browse..." ;
};
//------------------------------------
// Goto page/object/document stuff
FixedText FT_TREE
{
Pos = MAP_APPFONT ( RSC_SP_DLG_INNERBORDER_LEFT + RSC_SP_FLGR_INNERBORDER_LEFT , MA_Y0 + 4 );
Size = MAP_APPFONT ( 86 , 10 ) ;
Hide = TRUE ;
};
Control LB_TREE
{
HelpID = HID_CTL_ACTION_DLG_1 ;
Border = TRUE ;
Pos = MAP_APPFONT ( MA_ACTIONLB_LEFT, MA_Y0 + 3 ) ;
Size = MAP_APPFONT ( 150 - RSC_SP_GRP_INNERBORDER_RIGHT , 77 ) ;
TabStop = TRUE ;
Hide = TRUE ;
};
Control LB_TREE_DOCUMENT
{
HelpID = HID_CTL_ACTION_DLG_2 ;
Border = TRUE ;
Pos = MAP_APPFONT ( MA_ACTIONLB_LEFT, MA_Y0 + 3 ) ;
Size = MAP_APPFONT ( 150 - RSC_SP_GRP_INNERBORDER_RIGHT , 77 ) ;
TabStop = TRUE ;
Hide = TRUE ;
};
ListBox LB_OLE_ACTION
{
HelpID = "sd:ListBox:TP_ANIMATION:LB_OLE_ACTION";
Border = TRUE ;
Pos = MAP_APPFONT ( MA_ACTIONLB_LEFT, MA_Y0 + 3 ) ;
Size = MAP_APPFONT ( 150 - RSC_SP_GRP_INNERBORDER_RIGHT , 77 ) ;
TabStop = TRUE ;
Hide = TRUE ;
};
FixedLine FL_SEPARATOR
{
Pos = MAP_APPFONT ( RSC_SP_DLG_INNERBORDER_LEFT , MA_Y1 + 63 + RSC_SP_FLGR_SPACE_Y + RSC_SP_FLGR_INNERBORDER_BOTTOM + 6 ) ;
Size = MAP_APPFONT ( 247 , 8 ) ;
Hide = TRUE ;
};
Edit EDT_BOOKMARK
{
HelpID = "sd:Edit:TP_ANIMATION:EDT_BOOKMARK";
Border = TRUE ;
Pos = MAP_APPFONT ( RSC_SP_DLG_INNERBORDER_LEFT + RSC_SP_FLGR_INNERBORDER_LEFT , MA_Y4 + RSC_CD_CHECKBOX_HEIGHT + 1 ) ;
Size = MAP_APPFONT ( 247 - 65 - 10 - (RSC_SP_DLG_INNERBORDER_LEFT + RSC_SP_FLGR_INNERBORDER_LEFT) , 12 ) ;
TabStop = TRUE ;
Hide = TRUE ;
};
Edit EDT_DOCUMENT
{
HelpID = "sd:Edit:TP_ANIMATION:EDT_DOCUMENT";
Border = TRUE ;
Pos = MAP_APPFONT ( RSC_SP_DLG_INNERBORDER_LEFT + RSC_SP_FLGR_INNERBORDER_LEFT , MA_Y4 + RSC_CD_CHECKBOX_HEIGHT + 1 ) ;
Size = MAP_APPFONT ( 247 - 65 - 10 - (RSC_SP_DLG_INNERBORDER_LEFT + RSC_SP_FLGR_INNERBORDER_LEFT) , 12 ) ;
TabStop = TRUE ;
Hide = TRUE ;
};
Edit EDT_PROGRAM
{
HelpID = "sd:Edit:TP_ANIMATION:EDT_PROGRAM";
Border = TRUE ;
Pos = MAP_APPFONT ( RSC_SP_DLG_INNERBORDER_LEFT + RSC_SP_FLGR_INNERBORDER_LEFT , MA_Y4 + RSC_CD_CHECKBOX_HEIGHT + 1 ) ;
Size = MAP_APPFONT ( 247 - 65 - 10 - (RSC_SP_DLG_INNERBORDER_LEFT + RSC_SP_FLGR_INNERBORDER_LEFT) , 12 ) ;
TabStop = TRUE ;
Hide = TRUE ;
};
Edit EDT_MACRO
{
HelpID = "sd:Edit:TP_ANIMATION:EDT_MACRO";
Border = TRUE ;
Pos = MAP_APPFONT ( RSC_SP_DLG_INNERBORDER_LEFT + RSC_SP_FLGR_INNERBORDER_LEFT , MA_Y4 + RSC_CD_CHECKBOX_HEIGHT + 1 ) ;
Size = MAP_APPFONT ( 247 - 65 - 10 - (RSC_SP_DLG_INNERBORDER_LEFT + RSC_SP_FLGR_INNERBORDER_LEFT) , 12 ) ;
TabStop = TRUE ;
Hide = TRUE ;
};
PushButton BTN_SEEK
{
HelpID = "sd:PushButton:TP_ANIMATION:BTN_SEEK";
Pos = MAP_APPFONT ( 247 - 65, MA_Y4 + RSC_CD_CHECKBOX_HEIGHT ) ;
Size = MAP_APPFONT ( 65 , 14 ) ;
TabStop = TRUE ;
Hide = TRUE ;
Text [ en-US ] = "~Find" ;
};
String STR_PATHNAME
{
Text [ en-US ] = "Path Name";
};
Text [ en-US ] = "Interaction";
};
/* vim:set shiftwidth=4 softtabstop=4 expandtab: */

View File

@@ -1,40 +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 LB_EFFECT 1
#define LB_ACTION 3
#define LB_OLE_ACTION 4
#define LB_TREE 5
#define LB_TREE_DOCUMENT 6
#define BTN_SEARCH 1
#define BTN_SEEK 2
#define FL_EFFECT 1
#define FL_SEPARATOR 2
#define EDT_SOUND 1
#define EDT_BOOKMARK 2
#define EDT_DOCUMENT 3
#define EDT_PROGRAM 4
#define EDT_MACRO 5
#define FT_ACTION 2
#define FT_SPEED 4
#define FT_TREE 5
#define TP_ANIMATION 787
#define TP_ANIMATION_ACTION 789
#define STR_PATHNAME 1
/* vim:set shiftwidth=4 softtabstop=4 expandtab: */

View File

@@ -23,8 +23,8 @@
#include <com/sun/star/presentation/ClickAction.hpp>
#include <com/sun/star/presentation/AnimationEffect.hpp>
#include <vcl/group.hxx>
#include <vcl/fixed.hxx>
#include <vcl/layout.hxx>
#include <svx/dlgctrl.hxx>
#include <sfx2/tabdlg.hxx>
#include <sfx2/basedlgs.hxx>
@@ -40,15 +40,12 @@ class SdDrawDocument;
/**
* Effect-SingleTab-Dialog
*/
class SdActionDlg : public SfxNoLayoutSingleTabDialog
class SdActionDlg : public SfxSingleTabDialog
{
private:
const SfxItemSet& rOutAttrs;
public:
SdActionDlg( Window* pParent, const SfxItemSet* pAttr, ::sd::View* pView );
~SdActionDlg() {};
SdActionDlg(Window* pParent, const SfxItemSet* pAttr, ::sd::View* pView);
};
/**
@@ -57,22 +54,21 @@ public:
class SdTPAction : public SfxTabPage
{
private:
FixedText aFtAction; // always visible
ListBox aLbAction;
ListBox* m_pLbAction;
FixedText aFtTree; // jump destination controls
SdPageObjsTLB aLbTree;
SdPageObjsTLB aLbTreeDocument;
ListBox aLbOLEAction;
FixedText* m_pFtTree; // jump destination controls
SdPageObjsTLB* m_pLbTree;
SdPageObjsTLB* m_pLbTreeDocument;
ListBox* m_pLbOLEAction;
FixedLine aFlSeparator;
Edit aEdtSound;
Edit aEdtBookmark;
Edit aEdtDocument;
Edit aEdtProgram;
Edit aEdtMacro;
PushButton aBtnSearch;
PushButton aBtnSeek;
VclFrame* m_pFrame;
Edit* m_pEdtSound;
Edit* m_pEdtBookmark;
Edit* m_pEdtDocument;
Edit* m_pEdtProgram;
Edit* m_pEdtMacro;
PushButton* m_pBtnSearch;
PushButton* m_pBtnSeek;
const SfxItemSet& rOutAttrs;
const ::sd::View* mpView;

View File

@@ -0,0 +1,81 @@
<?xml version="1.0" encoding="UTF-8"?>
<interface>
<!-- interface-requires gtk+ 3.0 -->
<object class="GtkDialog" id="InteractionDialog">
<property name="can_focus">False</property>
<property name="border_width">6</property>
<property name="title" translatable="yes">Interaction</property>
<property name="type_hint">dialog</property>
<child internal-child="vbox">
<object class="GtkBox" id="dialog-vbox1">
<property name="can_focus">False</property>
<property name="orientation">vertical</property>
<property name="spacing">12</property>
<child internal-child="action_area">
<object class="GtkButtonBox" id="dialog-action_area1">
<property name="can_focus">False</property>
<property name="layout_style">end</property>
<child>
<object class="GtkButton" id="ok">
<property name="label">gtk-ok</property>
<property name="visible">True</property>
<property name="can_focus">True</property>
<property name="can_default">True</property>
<property name="has_default">True</property>
<property name="receives_default">True</property>
<property name="use_stock">True</property>
</object>
<packing>
<property name="expand">False</property>
<property name="fill">True</property>
<property name="position">0</property>
</packing>
</child>
<child>
<object class="GtkButton" id="cancel">
<property name="label">gtk-cancel</property>
<property name="visible">True</property>
<property name="can_focus">True</property>
<property name="receives_default">True</property>
<property name="use_stock">True</property>
</object>
<packing>
<property name="expand">False</property>
<property name="fill">True</property>
<property name="position">1</property>
</packing>
</child>
<child>
<object class="GtkButton" id="help">
<property name="label">gtk-help</property>
<property name="visible">True</property>
<property name="can_focus">True</property>
<property name="receives_default">True</property>
<property name="use_stock">True</property>
</object>
<packing>
<property name="expand">False</property>
<property name="fill">True</property>
<property name="position">2</property>
</packing>
</child>
</object>
<packing>
<property name="expand">False</property>
<property name="fill">True</property>
<property name="pack_type">end</property>
<property name="position">0</property>
</packing>
</child>
<child>
<placeholder/>
</child>
</object>
</child>
<action-widgets>
<action-widget response="0">ok</action-widget>
<action-widget response="0">cancel</action-widget>
<action-widget response="0">help</action-widget>
</action-widgets>
</object>
</interface>

View File

@@ -0,0 +1,346 @@
<?xml version="1.0" encoding="UTF-8"?>
<interface>
<!-- interface-requires gtk+ 3.0 -->
<!-- interface-requires LibreOffice 1.0 -->
<object class="GtkGrid" id="InteractionPage">
<property name="visible">True</property>
<property name="can_focus">False</property>
<property name="border_width">6</property>
<property name="row_spacing">12</property>
<child>
<object class="GtkFrame" id="frame1">
<property name="visible">True</property>
<property name="can_focus">False</property>
<property name="hexpand">True</property>
<property name="vexpand">True</property>
<property name="label_xalign">0</property>
<property name="shadow_type">none</property>
<child>
<object class="GtkAlignment" id="alignment1">
<property name="visible">True</property>
<property name="can_focus">False</property>
<property name="hexpand">True</property>
<property name="vexpand">True</property>
<property name="top_padding">6</property>
<property name="left_padding">12</property>
<child>
<object class="GtkGrid" id="grid1">
<property name="visible">True</property>
<property name="can_focus">False</property>
<property name="hexpand">True</property>
<property name="vexpand">True</property>
<property name="row_spacing">6</property>
<property name="column_spacing">12</property>
<child>
<object class="GtkLabel" id="label2">
<property name="visible">True</property>
<property name="can_focus">False</property>
<property name="xalign">0</property>
<property name="label" translatable="yes">Action at mouse click</property>
<property name="use_underline">True</property>
<property name="mnemonic_widget">listbox</property>
</object>
<packing>
<property name="left_attach">0</property>
<property name="top_attach">0</property>
<property name="width">1</property>
<property name="height">1</property>
</packing>
</child>
<child>
<object class="GtkComboBoxText" id="listbox">
<property name="visible">True</property>
<property name="can_focus">False</property>
<property name="entry_text_column">0</property>
<property name="id_column">1</property>
</object>
<packing>
<property name="left_attach">1</property>
<property name="top_attach">0</property>
<property name="width">1</property>
<property name="height">1</property>
</packing>
</child>
<child>
<object class="GtkLabel" id="fttree">
<property name="visible">True</property>
<property name="can_focus">False</property>
<property name="xalign">0</property>
<property name="yalign">0</property>
<property name="label" translatable="yes">Target</property>
<property name="use_underline">True</property>
<property name="mnemonic_widget">box3</property>
</object>
<packing>
<property name="left_attach">0</property>
<property name="top_attach">1</property>
<property name="width">1</property>
<property name="height">1</property>
</packing>
</child>
<child>
<object class="GtkBox" id="box3">
<property name="visible">True</property>
<property name="can_focus">False</property>
<property name="hexpand">True</property>
<property name="vexpand">True</property>
<property name="orientation">vertical</property>
<child>
<object class="sdlo-SdPageObjsTLB" id="tree:border">
<property name="can_focus">False</property>
<property name="no_show_all">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="expand">False</property>
<property name="fill">True</property>
<property name="position">0</property>
</packing>
</child>
<child>
<object class="sdlo-SdPageObjsTLB" id="treedoc:border">
<property name="can_focus">False</property>
<property name="no_show_all">True</property>
<property name="hexpand">True</property>
<property name="vexpand">True</property>
<child internal-child="selection">
<object class="GtkTreeSelection" id="SdPageObjsTLB-selection2"/>
</child>
</object>
<packing>
<property name="expand">False</property>
<property name="fill">True</property>
<property name="position">1</property>
</packing>
</child>
<child>
<object class="GtkTreeView" id="oleaction: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="treeview-selection1"/>
</child>
</object>
<packing>
<property name="expand">False</property>
<property name="fill">True</property>
<property name="position">2</property>
</packing>
</child>
</object>
<packing>
<property name="left_attach">1</property>
<property name="top_attach">1</property>
<property name="width">1</property>
<property name="height">1</property>
</packing>
</child>
</object>
</child>
</object>
</child>
<child type="label">
<object class="GtkLabel" id="label1">
<property name="visible">True</property>
<property name="can_focus">False</property>
<property name="label" translatable="yes">Interaction</property>
<attributes>
<attribute name="weight" value="bold"/>
</attributes>
</object>
</child>
</object>
<packing>
<property name="left_attach">0</property>
<property name="top_attach">0</property>
<property name="width">1</property>
<property name="height">1</property>
</packing>
</child>
<child>
<object class="GtkFrame" id="frame">
<property name="visible">True</property>
<property name="can_focus">False</property>
<property name="hexpand">True</property>
<property name="label_xalign">0</property>
<property name="shadow_type">none</property>
<child>
<object class="GtkAlignment" id="alignment2">
<property name="visible">True</property>
<property name="can_focus">False</property>
<property name="hexpand">True</property>
<property name="top_padding">6</property>
<property name="left_padding">12</property>
<child>
<object class="GtkGrid" id="grid2">
<property name="visible">True</property>
<property name="can_focus">False</property>
<property name="hexpand">True</property>
<property name="row_spacing">6</property>
<property name="column_spacing">12</property>
<child>
<object class="GtkBox" id="box1">
<property name="visible">True</property>
<property name="can_focus">False</property>
<property name="orientation">vertical</property>
<child>
<object class="GtkButton" id="browse">
<property name="label" translatable="yes">_Browse...</property>
<property name="visible">True</property>
<property name="can_focus">True</property>
<property name="receives_default">True</property>
<property name="use_underline">True</property>
</object>
<packing>
<property name="expand">False</property>
<property name="fill">True</property>
<property name="position">0</property>
</packing>
</child>
<child>
<object class="GtkButton" id="find">
<property name="label" translatable="yes">_Find</property>
<property name="can_focus">True</property>
<property name="receives_default">True</property>
<property name="no_show_all">True</property>
<property name="use_underline">True</property>
</object>
<packing>
<property name="expand">False</property>
<property name="fill">True</property>
<property name="position">1</property>
</packing>
</child>
</object>
<packing>
<property name="left_attach">1</property>
<property name="top_attach">0</property>
<property name="width">1</property>
<property name="height">1</property>
</packing>
</child>
<child>
<object class="GtkBox" id="box2">
<property name="visible">True</property>
<property name="can_focus">False</property>
<property name="hexpand">True</property>
<property name="orientation">vertical</property>
<child>
<object class="GtkEntry" id="sound">
<property name="visible">True</property>
<property name="can_focus">True</property>
<property name="hexpand">True</property>
<property name="invisible_char">•</property>
<child internal-child="accessible">
<object class="AtkObject" id="sound-atkobject">
<property name="AtkObject::accessible-name" translatable="yes">Path Name</property>
</object>
</child>
</object>
<packing>
<property name="expand">False</property>
<property name="fill">True</property>
<property name="position">0</property>
</packing>
</child>
<child>
<object class="GtkEntry" id="bookmark">
<property name="can_focus">True</property>
<property name="no_show_all">True</property>
<property name="hexpand">True</property>
<property name="invisible_char">•</property>
<property name="invisible_char_set">True</property>
</object>
<packing>
<property name="expand">False</property>
<property name="fill">True</property>
<property name="position">1</property>
</packing>
</child>
<child>
<object class="GtkEntry" id="document">
<property name="can_focus">True</property>
<property name="no_show_all">True</property>
<property name="hexpand">True</property>
<property name="invisible_char">•</property>
<property name="invisible_char_set">True</property>
</object>
<packing>
<property name="expand">False</property>
<property name="fill">True</property>
<property name="position">2</property>
</packing>
</child>
<child>
<object class="GtkEntry" id="program">
<property name="can_focus">True</property>
<property name="no_show_all">True</property>
<property name="hexpand">True</property>
<property name="invisible_char">•</property>
<property name="invisible_char_set">True</property>
</object>
<packing>
<property name="expand">False</property>
<property name="fill">True</property>
<property name="position">3</property>
</packing>
</child>
<child>
<object class="GtkEntry" id="macro">
<property name="can_focus">True</property>
<property name="no_show_all">True</property>
<property name="hexpand">True</property>
<property name="invisible_char">•</property>
<property name="invisible_char_set">True</property>
</object>
<packing>
<property name="expand">False</property>
<property name="fill">True</property>
<property name="position">4</property>
</packing>
</child>
</object>
<packing>
<property name="left_attach">0</property>
<property name="top_attach">0</property>
<property name="width">1</property>
<property name="height">1</property>
</packing>
</child>
</object>
</child>
</object>
</child>
<child type="label">
<object class="GtkLabel" id="label6">
<property name="visible">True</property>
<property name="can_focus">False</property>
<attributes>
<attribute name="weight" value="bold"/>
</attributes>
</object>
</child>
</object>
<packing>
<property name="left_attach">0</property>
<property name="top_attach">1</property>
<property name="width">1</property>
<property name="height">1</property>
</packing>
</child>
</object>
<object class="GtkSizeGroup" id="sizegroup1">
<property name="mode">both</property>
<widgets>
<widget name="tree:border"/>
<widget name="treedoc:border"/>
<widget name="oleaction:border"/>
</widgets>
</object>
</interface>