DLG_MM_CREATEADDRESSLIST conversion to .ui
Change-Id: I50b48599eac27be7834c61e4223541f662afd4c3 Reviewed-on: https://gerrit.libreoffice.org/9680 Reviewed-by: Caolán McNamara <caolanm@redhat.com> Tested-by: Caolán McNamara <caolanm@redhat.com>
This commit is contained in:
@@ -30,6 +30,9 @@
|
||||
<glade-widget-class title="Font PickListBox" name="smlo-SmFontPickListBox"
|
||||
generic-name="SmFontPickListBox" parent="GtkComboBoxText"
|
||||
icon-name="widget-gtk-comboboxtext"/>
|
||||
<glade-widget-class title="Address Control" name="swuilo-SwAddressControlImpl"
|
||||
generic-name="SwAddressControlImpl" parent="GtkComboBoxText"
|
||||
icon-name="widget-gtk-comboboxtext"/>
|
||||
<glade-widget-class title="Thesaurus View" name="cuilo-ThesaurusAlternativesCtrl"
|
||||
generic-name="ThesaurusAlternativesCtrl" parent="GtkTextView"
|
||||
icon-name="widget-gtk-textview"/>
|
||||
|
||||
@@ -89,7 +89,6 @@ $(eval $(call gb_SrsTarget_add_files,sw/res,\
|
||||
sw/source/ui/chrdlg/chrdlg.src \
|
||||
sw/source/ui/config/optdlg.src \
|
||||
sw/source/ui/config/optload.src \
|
||||
sw/source/ui/dbui/createaddresslistdialog.src \
|
||||
sw/source/ui/dbui/dbtablepreviewdialog.src \
|
||||
sw/source/ui/dbui/dbui.src \
|
||||
sw/source/ui/dbui/mailmergewizard.src \
|
||||
|
||||
@@ -86,6 +86,7 @@ $(eval $(call gb_UIConfig_add_uifiles,modules/swriter,\
|
||||
sw/uiconfig/swriter/ui/columnwidth \
|
||||
sw/uiconfig/swriter/ui/conditionpage \
|
||||
sw/uiconfig/swriter/ui/converttexttable \
|
||||
sw/uiconfig/swriter/ui/createaddresslist \
|
||||
sw/uiconfig/swriter/ui/createauthorentry \
|
||||
sw/uiconfig/swriter/ui/createautomarkdialog \
|
||||
sw/uiconfig/swriter/ui/customizeaddrlistdialog \
|
||||
|
||||
+1
-1
@@ -27,7 +27,6 @@
|
||||
#define DLG_MAILMERGEWIZARD (RC_DBUI_BEGIN + 3)
|
||||
#define DLG_MM_SELECTDBTABLEDDIALOG (RC_DBUI_BEGIN + 12)
|
||||
#define DLG_MM_DBTABLEPREVIEWDIALOG (RC_DBUI_BEGIN + 13)
|
||||
#define DLG_MM_CREATEADDRESSLIST (RC_DBUI_BEGIN + 14)
|
||||
|
||||
#define DLG_MM_ASSIGNFIELDS (RC_DBUI_BEGIN + 20)
|
||||
|
||||
@@ -67,6 +66,7 @@
|
||||
#define ST_DEFAULTATTACHMENT (RC_DBUI_BEGIN + 30)
|
||||
#define ST_NOSUBJECT (RC_DBUI_BEGIN + 31)
|
||||
#define ST_CONFIGUREMAIL (RC_DBUI_BEGIN + 32)
|
||||
#define ST_FILTERNAME (RC_DBUI_BEGIN + 33)
|
||||
|
||||
// Elements -----------------------------------------------------------------
|
||||
#define MM_PART_TITLE 0
|
||||
|
||||
Regular → Executable
+141
-101
@@ -36,7 +36,6 @@
|
||||
#include <com/sun/star/ui/dialogs/XFilePicker.hpp>
|
||||
#include <com/sun/star/ui/dialogs/XFilterManager.hpp>
|
||||
#include <tools/urlobj.hxx>
|
||||
#include <createaddresslistdialog.hrc>
|
||||
#include <dbui.hrc>
|
||||
#include <helpid.h>
|
||||
#include <unomid.h>
|
||||
@@ -47,8 +46,8 @@ using namespace ::com::sun::star::ui::dialogs;
|
||||
|
||||
class SwAddressControl_Impl : public Control
|
||||
{
|
||||
ScrollBar m_aScrollBar;
|
||||
Window m_aWindow;
|
||||
ScrollBar *m_pScrollBar;
|
||||
Window *m_pWindow;
|
||||
|
||||
::std::vector<FixedText*> m_aFixedTexts;
|
||||
::std::vector<Edit*> m_aEdits;
|
||||
@@ -68,11 +67,12 @@ class SwAddressControl_Impl : public Control
|
||||
|
||||
virtual bool PreNotify( NotifyEvent& rNEvt ) SAL_OVERRIDE;
|
||||
virtual void Command( const CommandEvent& rCEvt ) SAL_OVERRIDE;
|
||||
virtual Size GetOptimalSize() const SAL_OVERRIDE;
|
||||
|
||||
using Window::SetData;
|
||||
|
||||
public:
|
||||
SwAddressControl_Impl(Window* pParent, const ResId& rResId );
|
||||
SwAddressControl_Impl(Window* pParent , WinBits nBits );
|
||||
virtual ~SwAddressControl_Impl();
|
||||
|
||||
void SetData(SwCSVData& rDBData);
|
||||
@@ -80,24 +80,35 @@ public:
|
||||
void SetCurrentDataSet(sal_uInt32 nSet);
|
||||
sal_uInt32 GetCurrentDataSet() const { return m_nCurrentDataSet;}
|
||||
void SetCursorTo(sal_uInt32 nElement);
|
||||
virtual void Resize();
|
||||
};
|
||||
|
||||
SwAddressControl_Impl::SwAddressControl_Impl(Window* pParent, const ResId& rResId ) :
|
||||
Control(pParent, rResId),
|
||||
m_aScrollBar(this, ResId(SCR_1,*rResId.GetResMgr())),
|
||||
m_aWindow(this, ResId(WIN_DATA,*rResId.GetResMgr())),
|
||||
SwAddressControl_Impl::SwAddressControl_Impl(Window* pParent, WinBits nBits ) :
|
||||
Control(pParent, nBits),
|
||||
m_pScrollBar(new ScrollBar(this)),
|
||||
m_pWindow(new Window(this, WB_DIALOGCONTROL)),
|
||||
m_pData(0),
|
||||
m_aWinOutputSize( m_aWindow.GetOutputSizePixel() ),
|
||||
m_nLineHeight(0),
|
||||
m_nCurrentDataSet(0),
|
||||
m_bNoDataSet(true)
|
||||
{
|
||||
FreeResource();
|
||||
Link aScrollLink = LINK(this, SwAddressControl_Impl, ScrollHdl_Impl);
|
||||
m_aScrollBar.SetScrollHdl(aScrollLink);
|
||||
m_aScrollBar.SetEndScrollHdl(aScrollLink);
|
||||
m_aScrollBar.EnableDrag();
|
||||
long nScrollBarWidth = m_pScrollBar->GetOutputSize().Width();
|
||||
Size aSize = GetOutputSizePixel();
|
||||
|
||||
m_pWindow->SetSizePixel(Size(aSize.Width() - nScrollBarWidth, aSize.Height()));
|
||||
m_aWinOutputSize = m_pWindow->GetOutputSizePixel();
|
||||
m_pWindow->Show();
|
||||
m_pScrollBar->Show();
|
||||
|
||||
Link aScrollLink = LINK(this, SwAddressControl_Impl, ScrollHdl_Impl);
|
||||
m_pScrollBar->SetScrollHdl(aScrollLink);
|
||||
m_pScrollBar->SetEndScrollHdl(aScrollLink);
|
||||
m_pScrollBar->EnableDrag();
|
||||
}
|
||||
|
||||
extern "C" SAL_DLLPUBLIC_EXPORT Window* SAL_CALL makeSwAddressControlImpl(Window *pParent, VclBuilder::stringmap &)
|
||||
{
|
||||
return new SwAddressControl_Impl(pParent, WB_BORDER | WB_DIALOGCONTROL);
|
||||
}
|
||||
|
||||
SwAddressControl_Impl::~SwAddressControl_Impl()
|
||||
@@ -108,6 +119,8 @@ SwAddressControl_Impl::~SwAddressControl_Impl()
|
||||
::std::vector<Edit*>::iterator aEditIter;
|
||||
for(aEditIter = m_aEdits.begin(); aEditIter != m_aEdits.end(); ++aEditIter)
|
||||
delete *aEditIter;
|
||||
delete m_pScrollBar;
|
||||
delete m_pWindow;
|
||||
}
|
||||
|
||||
void SwAddressControl_Impl::SetData(SwCSVData& rDBData)
|
||||
@@ -130,8 +143,8 @@ void SwAddressControl_Impl::SetData(SwCSVData& rDBData)
|
||||
|
||||
::std::vector< OUString >::iterator aHeaderIter;
|
||||
|
||||
long nFTXPos = m_aWindow.LogicToPixel(Point(RSC_SP_CTRL_X, RSC_SP_CTRL_X), MAP_APPFONT).X();
|
||||
long nFTHeight = m_aWindow.LogicToPixel(Size(RSC_BS_CHARHEIGHT, RSC_BS_CHARHEIGHT), MAP_APPFONT).Height();
|
||||
long nFTXPos = m_pWindow->LogicToPixel(Point(RSC_SP_CTRL_X, RSC_SP_CTRL_X), MAP_APPFONT).X();
|
||||
long nFTHeight = m_pWindow->LogicToPixel(Size(RSC_BS_CHARHEIGHT, RSC_BS_CHARHEIGHT), MAP_APPFONT).Height();
|
||||
long nFTWidth = 0;
|
||||
|
||||
//determine the width of the FixedTexts
|
||||
@@ -139,19 +152,19 @@ void SwAddressControl_Impl::SetData(SwCSVData& rDBData)
|
||||
aHeaderIter != m_pData->aDBColumnHeaders.end();
|
||||
++aHeaderIter)
|
||||
{
|
||||
sal_Int32 nTemp = m_aWindow.GetTextWidth(*aHeaderIter);
|
||||
sal_Int32 nTemp = m_pWindow->GetTextWidth(*aHeaderIter);
|
||||
if(nTemp > nFTWidth)
|
||||
nFTWidth = nTemp;
|
||||
}
|
||||
//add some pixels
|
||||
nFTWidth += 2;
|
||||
long nEDXPos = nFTWidth + nFTXPos +
|
||||
m_aWindow.LogicToPixel(Size(RSC_SP_CTRL_DESC_X, RSC_SP_CTRL_DESC_X), MAP_APPFONT).Width();
|
||||
long nEDHeight = m_aWindow.LogicToPixel(Size(RSC_CD_TEXTBOX_HEIGHT, RSC_CD_TEXTBOX_HEIGHT), MAP_APPFONT).Height();
|
||||
m_pWindow->LogicToPixel(Size(RSC_SP_CTRL_DESC_X, RSC_SP_CTRL_DESC_X), MAP_APPFONT).Width();
|
||||
long nEDHeight = m_pWindow->LogicToPixel(Size(RSC_CD_TEXTBOX_HEIGHT, RSC_CD_TEXTBOX_HEIGHT), MAP_APPFONT).Height();
|
||||
long nEDWidth = m_aWinOutputSize.Width() - nEDXPos - nFTXPos;
|
||||
m_nLineHeight = nEDHeight + m_aWindow.LogicToPixel(Size(RSC_SP_CTRL_GROUP_Y, RSC_SP_CTRL_GROUP_Y), MAP_APPFONT).Height();
|
||||
m_nLineHeight = nEDHeight + m_pWindow->LogicToPixel(Size(RSC_SP_CTRL_GROUP_Y, RSC_SP_CTRL_GROUP_Y), MAP_APPFONT).Height();
|
||||
|
||||
long nEDYPos = m_aWindow.LogicToPixel(Size(RSC_SP_CTRL_DESC_Y, RSC_SP_CTRL_DESC_Y), MAP_APPFONT).Height();
|
||||
long nEDYPos = m_pWindow->LogicToPixel(Size(RSC_SP_CTRL_DESC_Y, RSC_SP_CTRL_DESC_Y), MAP_APPFONT).Height();
|
||||
long nFTYPos = nEDYPos + nEDHeight - nFTHeight;
|
||||
|
||||
Link aFocusLink = LINK(this, SwAddressControl_Impl, GotFocusHdl_Impl);
|
||||
@@ -163,8 +176,8 @@ void SwAddressControl_Impl::SetData(SwCSVData& rDBData)
|
||||
aHeaderIter != m_pData->aDBColumnHeaders.end();
|
||||
++aHeaderIter, nEDYPos += m_nLineHeight, nFTYPos += m_nLineHeight, nLines++)
|
||||
{
|
||||
FixedText* pNewFT = new FixedText(&m_aWindow, WB_RIGHT);
|
||||
Edit* pNewED = new Edit(&m_aWindow, WB_BORDER);
|
||||
FixedText* pNewFT = new FixedText(m_pWindow, WB_RIGHT);
|
||||
Edit* pNewED = new Edit(m_pWindow, WB_BORDER);
|
||||
//set nLines a position identifier - used in the ModifyHdl
|
||||
pNewED->SetData((void*)nLines);
|
||||
pNewED->SetGetFocusHdl(aFocusLink);
|
||||
@@ -188,37 +201,38 @@ void SwAddressControl_Impl::SetData(SwCSVData& rDBData)
|
||||
{
|
||||
//the m_aWindow has to be at least as high as the ScrollBar and it must include the last Edit
|
||||
sal_Int32 nContentHeight = pLastEdit->GetPosPixel().Y() + nEDHeight +
|
||||
m_aWindow.LogicToPixel(Size(RSC_SP_CTRL_GROUP_Y, RSC_SP_CTRL_GROUP_Y), MAP_APPFONT).Height();
|
||||
if(nContentHeight < m_aScrollBar.GetSizePixel().Height())
|
||||
m_pWindow->LogicToPixel(Size(RSC_SP_CTRL_GROUP_Y, RSC_SP_CTRL_GROUP_Y), MAP_APPFONT).Height();
|
||||
if(nContentHeight < m_pScrollBar->GetSizePixel().Height())
|
||||
{
|
||||
nContentHeight = m_aScrollBar.GetSizePixel().Height();
|
||||
nContentHeight = m_pScrollBar->GetSizePixel().Height();
|
||||
// Reset the scrollbar's thumb to the top before it is disabled.
|
||||
m_aScrollBar.DoScroll(0);
|
||||
m_aScrollBar.SetThumbPos(0);
|
||||
m_aScrollBar.Enable(false);
|
||||
m_pScrollBar->DoScroll(0);
|
||||
m_pScrollBar->SetThumbPos(0);
|
||||
m_pScrollBar->Enable(false);
|
||||
}
|
||||
else
|
||||
{
|
||||
m_aScrollBar.Enable(true);
|
||||
m_aScrollBar.SetRange(Range(0, nLines));
|
||||
m_aScrollBar.SetThumbPos(0);
|
||||
m_aScrollBar.SetVisibleSize(nVisibleLines);
|
||||
m_pScrollBar->Enable(true);
|
||||
m_pScrollBar->SetRange(Range(0, nLines));
|
||||
m_pScrollBar->SetThumbPos(0);
|
||||
m_pScrollBar->SetVisibleSize(nVisibleLines);
|
||||
// Reset the scroll bar position (especially if items deleted)
|
||||
m_aScrollBar.DoScroll(m_aScrollBar.GetRangeMax());
|
||||
m_aScrollBar.DoScroll(0);
|
||||
m_pScrollBar->DoScroll(m_pScrollBar->GetRangeMax());
|
||||
m_pScrollBar->DoScroll(0);
|
||||
}
|
||||
Size aWinOutputSize(m_aWinOutputSize);
|
||||
aWinOutputSize.Height() = nContentHeight;
|
||||
m_aWindow.SetOutputSizePixel(aWinOutputSize);
|
||||
m_pWindow->SetOutputSizePixel(aWinOutputSize);
|
||||
|
||||
}
|
||||
// Even if no items in m_aEdits, the scrollbar will still exist;
|
||||
// we might as well disable it.
|
||||
if (m_aEdits.size() < 1) {
|
||||
m_aScrollBar.DoScroll(0);
|
||||
m_aScrollBar.SetThumbPos(0);
|
||||
m_aScrollBar.Enable(false);
|
||||
m_pScrollBar->DoScroll(0);
|
||||
m_pScrollBar->SetThumbPos(0);
|
||||
m_pScrollBar->Enable(false);
|
||||
}
|
||||
Resize();
|
||||
}
|
||||
|
||||
void SwAddressControl_Impl::SetCurrentDataSet(sal_uInt32 nSet)
|
||||
@@ -245,7 +259,7 @@ void SwAddressControl_Impl::SetCurrentDataSet(sal_uInt32 nSet)
|
||||
IMPL_LINK(SwAddressControl_Impl, ScrollHdl_Impl, ScrollBar*, pScroll)
|
||||
{
|
||||
long nThumb = pScroll->GetThumbPos();
|
||||
m_aWindow.SetPosPixel(Point(0, - (m_nLineHeight * nThumb)));
|
||||
m_pWindow->SetPosPixel(Point(0, - (m_nLineHeight * nThumb)));
|
||||
|
||||
return 0;
|
||||
}
|
||||
@@ -262,10 +276,10 @@ IMPL_LINK(SwAddressControl_Impl, GotFocusHdl_Impl, Edit*, pEdit)
|
||||
|
||||
void SwAddressControl_Impl::MakeVisible(const Rectangle & rRect)
|
||||
{
|
||||
long nThumb = m_aScrollBar.GetThumbPos();
|
||||
long nThumb = m_pScrollBar->GetThumbPos();
|
||||
//determine range of visible positions
|
||||
long nMinVisiblePos = - m_aWindow.GetPosPixel().Y();
|
||||
long nMaxVisiblePos = m_aScrollBar.GetSizePixel().Height() + nMinVisiblePos;
|
||||
long nMinVisiblePos = - m_pWindow->GetPosPixel().Y();
|
||||
long nMaxVisiblePos = m_pScrollBar->GetSizePixel().Height() + nMinVisiblePos;
|
||||
if( rRect.TopLeft().Y() < nMinVisiblePos)
|
||||
{
|
||||
nThumb -= 1 + ((nMinVisiblePos - rRect.TopLeft().Y()) / m_nLineHeight);
|
||||
@@ -274,10 +288,10 @@ void SwAddressControl_Impl::MakeVisible(const Rectangle & rRect)
|
||||
{
|
||||
nThumb += 1 + ((nMaxVisiblePos - rRect.BottomLeft().Y()) / m_nLineHeight);
|
||||
}
|
||||
if(nThumb != m_aScrollBar.GetThumbPos())
|
||||
if(nThumb != m_pScrollBar->GetThumbPos())
|
||||
{
|
||||
m_aScrollBar.SetThumbPos(nThumb);
|
||||
ScrollHdl_Impl(&m_aScrollBar);
|
||||
m_pScrollBar->SetThumbPos(nThumb);
|
||||
ScrollHdl_Impl(m_pScrollBar);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -318,7 +332,7 @@ void SwAddressControl_Impl::Command( const CommandEvent& rCEvt )
|
||||
const CommandWheelData* pWheelData = rCEvt.GetWheelData();
|
||||
if(pWheelData && !pWheelData->IsHorz() && COMMAND_WHEEL_ZOOM != pWheelData->GetMode())
|
||||
{
|
||||
HandleScrollCommand( rCEvt, 0, &m_aScrollBar );
|
||||
HandleScrollCommand( rCEvt, 0, m_pScrollBar );
|
||||
}
|
||||
}
|
||||
break;
|
||||
@@ -342,46 +356,73 @@ bool SwAddressControl_Impl::PreNotify( NotifyEvent& rNEvt )
|
||||
return Control::PreNotify(rNEvt);
|
||||
}
|
||||
|
||||
Size SwAddressControl_Impl::GetOptimalSize() const
|
||||
{
|
||||
return LogicToPixel(Size(250, 160), MAP_APPFONT);
|
||||
}
|
||||
|
||||
void SwAddressControl_Impl::Resize()
|
||||
{
|
||||
Window::Resize();
|
||||
m_pScrollBar->SetSizePixel(Size(m_pScrollBar->GetOutputSizePixel().Width(), GetOutputSizePixel().Height()));
|
||||
|
||||
if(m_nLineHeight)
|
||||
m_pScrollBar->SetVisibleSize(m_pScrollBar->GetOutputSize().Height() / m_nLineHeight);
|
||||
m_pScrollBar->DoScroll(0);
|
||||
|
||||
long nScrollBarWidth = m_pScrollBar->GetOutputSize().Width();
|
||||
Size aSize = GetOutputSizePixel();
|
||||
|
||||
m_pWindow->SetSizePixel(Size(aSize.Width() - nScrollBarWidth, m_pWindow->GetOutputSizePixel().Height()));
|
||||
m_pScrollBar->SetPosPixel(Point(aSize.Width() - nScrollBarWidth, 0));
|
||||
|
||||
if(m_aEdits.size())
|
||||
{
|
||||
long nNewEditSize = aSize.Width() - (*m_aEdits.begin())->GetPosPixel().X() - nScrollBarWidth - 6;
|
||||
|
||||
::std::vector<Edit*>::iterator aEditIter;
|
||||
for(aEditIter = m_aEdits.begin(); aEditIter != m_aEdits.end(); ++aEditIter)
|
||||
{
|
||||
(*aEditIter)->SetSizePixel(Size(nNewEditSize, (*aEditIter)->GetSizePixel().Height()));
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
SwCreateAddressListDialog::SwCreateAddressListDialog(
|
||||
Window* pParent, const OUString& rURL, SwMailMergeConfigItem& rConfig) :
|
||||
SfxModalDialog(pParent, SW_RES(DLG_MM_CREATEADDRESSLIST)),
|
||||
m_aAddressInformation( this, SW_RES( FI_ADDRESSINFORMATION)),
|
||||
m_pAddressControl(new SwAddressControl_Impl(this, SW_RES(CT_ADDRESS))),
|
||||
m_aNewPB( this, SW_RES( PB_NEW)),
|
||||
m_aDeletePB( this, SW_RES( PB_DELETE)),
|
||||
m_aFindPB( this, SW_RES( PB_FIND)),
|
||||
m_aCustomizePB( this, SW_RES( PB_CUSTOMIZE)),
|
||||
|
||||
m_aViewEntriesFI( this, SW_RES( FI_VIEWENTRIES)),
|
||||
m_aStartPB( this, SW_RES( PB_START)),
|
||||
m_aPrevPB( this, SW_RES( PB_PREV)),
|
||||
m_aSetNoNF( this, SW_RES( NF_SETNO)),
|
||||
m_aNextPB( this, SW_RES( PB_NEXT )),
|
||||
m_aEndPB( this, SW_RES( PB_END)),
|
||||
|
||||
m_aSeparatorFL( this, SW_RES( FL_SEPARATOR)),
|
||||
|
||||
m_aOK( this, SW_RES( PB_OK)),
|
||||
m_aCancel( this, SW_RES( PB_CANCEL)),
|
||||
m_aHelp( this, SW_RES( PB_HELP)),
|
||||
SfxModalDialog(pParent, "CreateAddressList", "modules/swriter/ui/createaddresslist.ui"),
|
||||
m_sAddressListFilterName( SW_RES( ST_FILTERNAME)),
|
||||
m_sURL(rURL),
|
||||
m_pCSVData( new SwCSVData ),
|
||||
m_pFindDlg(0)
|
||||
{
|
||||
FreeResource();
|
||||
m_aNewPB.SetClickHdl(LINK(this, SwCreateAddressListDialog, NewHdl_Impl));
|
||||
m_aDeletePB.SetClickHdl(LINK(this, SwCreateAddressListDialog, DeleteHdl_Impl));
|
||||
m_aFindPB.SetClickHdl(LINK(this, SwCreateAddressListDialog, FindHdl_Impl));
|
||||
m_aCustomizePB.SetClickHdl(LINK(this, SwCreateAddressListDialog, CustomizeHdl_Impl));
|
||||
m_aOK.SetClickHdl(LINK(this, SwCreateAddressListDialog, OkHdl_Impl));
|
||||
get(m_pNewPB, "NEW");
|
||||
get(m_pDeletePB, "DELETE");
|
||||
get(m_pFindPB, "FIND");
|
||||
get(m_pCustomizePB, "CUSTOMIZE");
|
||||
get(m_pStartPB, "START");
|
||||
get(m_pPrevPB, "PREV");
|
||||
get(m_pSetNoNF, "SETNO-nospin");
|
||||
m_pSetNoNF->SetFirst(1);
|
||||
m_pSetNoNF->SetMin(1);
|
||||
get(m_pNextPB, "NEXT");
|
||||
get(m_pEndPB, "END");
|
||||
get(m_pOK, "OK");
|
||||
get(m_pAddressControl, "CONTAINER");
|
||||
|
||||
m_pNewPB->SetClickHdl(LINK(this, SwCreateAddressListDialog, NewHdl_Impl));
|
||||
m_pDeletePB->SetClickHdl(LINK(this, SwCreateAddressListDialog, DeleteHdl_Impl));
|
||||
m_pFindPB->SetClickHdl(LINK(this, SwCreateAddressListDialog, FindHdl_Impl));
|
||||
m_pCustomizePB->SetClickHdl(LINK(this, SwCreateAddressListDialog, CustomizeHdl_Impl));
|
||||
m_pOK->SetClickHdl(LINK(this, SwCreateAddressListDialog, OkHdl_Impl));
|
||||
|
||||
Link aLk = LINK(this, SwCreateAddressListDialog, DBCursorHdl_Impl);
|
||||
m_aStartPB.SetClickHdl(aLk);
|
||||
m_aPrevPB.SetClickHdl(aLk);
|
||||
m_aSetNoNF.SetModifyHdl(LINK(this, SwCreateAddressListDialog, DBNumCursorHdl_Impl));
|
||||
m_aNextPB.SetClickHdl(aLk);
|
||||
m_aEndPB.SetClickHdl(aLk);
|
||||
m_pStartPB->SetClickHdl(aLk);
|
||||
m_pPrevPB->SetClickHdl(aLk);
|
||||
m_pSetNoNF->SetModifyHdl(LINK(this, SwCreateAddressListDialog, DBNumCursorHdl_Impl));
|
||||
m_pNextPB->SetClickHdl(aLk);
|
||||
m_pEndPB->SetClickHdl(aLk);
|
||||
|
||||
if(!m_sURL.isEmpty())
|
||||
{
|
||||
@@ -448,13 +489,12 @@ SwCreateAddressListDialog::SwCreateAddressListDialog(
|
||||
//now fill the address control
|
||||
m_pAddressControl->SetData(*m_pCSVData);
|
||||
m_pAddressControl->SetCurrentDataSet(0);
|
||||
m_aSetNoNF.SetMax(m_pCSVData->aDBData.size());
|
||||
m_pSetNoNF->SetMax(m_pCSVData->aDBData.size());
|
||||
UpdateButtons();
|
||||
}
|
||||
|
||||
SwCreateAddressListDialog::~SwCreateAddressListDialog()
|
||||
{
|
||||
delete m_pAddressControl;
|
||||
delete m_pCSVData;
|
||||
delete m_pFindDlg;
|
||||
}
|
||||
@@ -466,9 +506,9 @@ IMPL_LINK_NOARG(SwCreateAddressListDialog, NewHdl_Impl)
|
||||
OUString sTemp;
|
||||
aNewData.insert(aNewData.begin(), m_pCSVData->aDBColumnHeaders.size(), sTemp);
|
||||
m_pCSVData->aDBData.insert(m_pCSVData->aDBData.begin() + ++nCurrent, aNewData);
|
||||
m_aSetNoNF.SetMax(m_pCSVData->aDBData.size());
|
||||
m_pSetNoNF->SetMax(m_pCSVData->aDBData.size());
|
||||
//the NumericField start at 1
|
||||
m_aSetNoNF.SetValue(nCurrent + 1);
|
||||
m_pSetNoNF->SetValue(nCurrent + 1);
|
||||
//the address control starts at 0
|
||||
m_pAddressControl->SetCurrentDataSet(nCurrent);
|
||||
UpdateButtons();
|
||||
@@ -489,10 +529,10 @@ IMPL_LINK_NOARG(SwCreateAddressListDialog, DeleteHdl_Impl)
|
||||
// if only one set is available then clear the data
|
||||
OUString sTemp;
|
||||
m_pCSVData->aDBData[0].assign(m_pCSVData->aDBData[0].size(), sTemp);
|
||||
m_aDeletePB.Enable(false);
|
||||
m_pDeletePB->Enable(false);
|
||||
}
|
||||
m_pAddressControl->SetCurrentDataSet(nCurrent);
|
||||
m_aSetNoNF.SetMax(m_pCSVData->aDBData.size());
|
||||
m_pSetNoNF->SetMax(m_pCSVData->aDBData.size());
|
||||
UpdateButtons();
|
||||
return 0;
|
||||
}
|
||||
@@ -610,46 +650,46 @@ IMPL_LINK_NOARG(SwCreateAddressListDialog, OkHdl_Impl)
|
||||
|
||||
IMPL_LINK(SwCreateAddressListDialog, DBCursorHdl_Impl, PushButton*, pButton)
|
||||
{
|
||||
sal_uInt32 nValue = static_cast< sal_uInt32 >(m_aSetNoNF.GetValue());
|
||||
sal_uInt32 nValue = static_cast< sal_uInt32 >(m_pSetNoNF->GetValue());
|
||||
|
||||
if(pButton == &m_aStartPB)
|
||||
if(pButton == m_pStartPB)
|
||||
nValue = 1;
|
||||
else if(pButton == &m_aPrevPB)
|
||||
else if(pButton == m_pPrevPB)
|
||||
{
|
||||
if(nValue > 1)
|
||||
--nValue;
|
||||
}
|
||||
else if(pButton == &m_aNextPB)
|
||||
else if(pButton == m_pNextPB)
|
||||
{
|
||||
if(nValue < (sal_uInt32)m_aSetNoNF.GetMax())
|
||||
if(nValue < (sal_uInt32)m_pSetNoNF->GetMax())
|
||||
++nValue;
|
||||
}
|
||||
else //m_aEndPB
|
||||
nValue = static_cast< sal_uInt32 >(m_aSetNoNF.GetMax());
|
||||
if(nValue != m_aSetNoNF.GetValue())
|
||||
nValue = static_cast< sal_uInt32 >(m_pSetNoNF->GetMax());
|
||||
if(nValue != m_pSetNoNF->GetValue())
|
||||
{
|
||||
m_aSetNoNF.SetValue(nValue);
|
||||
DBNumCursorHdl_Impl(&m_aSetNoNF);
|
||||
m_pSetNoNF->SetValue(nValue);
|
||||
DBNumCursorHdl_Impl(m_pSetNoNF);
|
||||
}
|
||||
return 0;
|
||||
}
|
||||
|
||||
IMPL_LINK_NOARG(SwCreateAddressListDialog, DBNumCursorHdl_Impl)
|
||||
{
|
||||
m_pAddressControl->SetCurrentDataSet( static_cast< sal_uInt32 >(m_aSetNoNF.GetValue() - 1) );
|
||||
m_pAddressControl->SetCurrentDataSet( static_cast< sal_uInt32 >(m_pSetNoNF->GetValue() - 1) );
|
||||
UpdateButtons();
|
||||
return 0;
|
||||
}
|
||||
|
||||
void SwCreateAddressListDialog::UpdateButtons()
|
||||
{
|
||||
sal_uInt32 nCurrent = static_cast< sal_uInt32 >(m_aSetNoNF.GetValue() );
|
||||
sal_uInt32 nCurrent = static_cast< sal_uInt32 >(m_pSetNoNF->GetValue() );
|
||||
sal_uInt32 nSize = (sal_uInt32 )m_pCSVData->aDBData.size();
|
||||
m_aStartPB.Enable(nCurrent != 1);
|
||||
m_aPrevPB.Enable(nCurrent != 1);
|
||||
m_aNextPB.Enable(nCurrent != nSize);
|
||||
m_aEndPB.Enable(nCurrent != nSize);
|
||||
m_aDeletePB.Enable(nSize > 0);
|
||||
m_pStartPB->Enable(nCurrent != 1);
|
||||
m_pPrevPB->Enable(nCurrent != 1);
|
||||
m_pNextPB->Enable(nCurrent != nSize);
|
||||
m_pEndPB->Enable(nCurrent != nSize);
|
||||
m_pDeletePB->Enable(nSize > 0);
|
||||
}
|
||||
|
||||
void SwCreateAddressListDialog::Find(const OUString& rSearch, sal_Int32 nColumn)
|
||||
@@ -690,7 +730,7 @@ void SwCreateAddressListDialog::Find(const OUString& rSearch, sal_Int32 nColumn)
|
||||
if(bFound)
|
||||
{
|
||||
m_pAddressControl->SetCurrentDataSet(nPos);
|
||||
m_aSetNoNF.SetValue( nPos + 1 );
|
||||
m_pSetNoNF->SetValue( nPos + 1 );
|
||||
UpdateButtons();
|
||||
m_pAddressControl->SetCursorTo(nElement);
|
||||
}
|
||||
|
||||
@@ -1,46 +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 .
|
||||
*/
|
||||
#ifndef _CREATEADDRESSLISTDIALOG_HRC
|
||||
#define _CREATEADDRESSLISTDIALOG_HRC
|
||||
|
||||
#define FI_ADDRESSINFORMATION 1
|
||||
#define CT_ADDRESS 2
|
||||
#define PB_NEW 3
|
||||
#define PB_DELETE 4
|
||||
#define PB_FIND 5
|
||||
#define PB_CUSTOMIZE 6
|
||||
#define FI_VIEWENTRIES 7
|
||||
#define PB_START 8
|
||||
#define PB_PREV 9
|
||||
#define NF_SETNO 10
|
||||
#define PB_NEXT 11
|
||||
#define PB_END 12
|
||||
#define FL_SEPARATOR 13
|
||||
#define PB_OK 14
|
||||
#define PB_CANCEL 15
|
||||
#define PB_HELP 16
|
||||
|
||||
#define ST_FILTERNAME 18
|
||||
|
||||
#define SCR_1 1
|
||||
#define WIN_DATA 2
|
||||
|
||||
#endif
|
||||
|
||||
/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
|
||||
Regular → Executable
+10
-15
@@ -40,26 +40,21 @@ struct SwCSVData
|
||||
class SwFindEntryDialog;
|
||||
class SwCreateAddressListDialog : public SfxModalDialog
|
||||
{
|
||||
FixedInfo m_aAddressInformation;
|
||||
SwAddressControl_Impl* m_pAddressControl;
|
||||
|
||||
PushButton m_aNewPB;
|
||||
PushButton m_aDeletePB;
|
||||
PushButton m_aFindPB;
|
||||
PushButton m_aCustomizePB;
|
||||
PushButton *m_pNewPB;
|
||||
PushButton *m_pDeletePB;
|
||||
PushButton *m_pFindPB;
|
||||
PushButton *m_pCustomizePB;
|
||||
|
||||
FixedInfo m_aViewEntriesFI;
|
||||
PushButton m_aStartPB;
|
||||
PushButton m_aPrevPB;
|
||||
NumericField m_aSetNoNF;
|
||||
PushButton m_aNextPB;
|
||||
PushButton m_aEndPB;
|
||||
PushButton *m_pStartPB;
|
||||
PushButton *m_pPrevPB;
|
||||
NumericField *m_pSetNoNF;
|
||||
PushButton *m_pNextPB;
|
||||
PushButton *m_pEndPB;
|
||||
|
||||
FixedLine m_aSeparatorFL;
|
||||
|
||||
OKButton m_aOK;
|
||||
CancelButton m_aCancel;
|
||||
HelpButton m_aHelp;
|
||||
OKButton *m_pOK;
|
||||
|
||||
OUString m_sAddressListFilterName;
|
||||
OUString m_sURL;
|
||||
|
||||
@@ -1,165 +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 <createaddresslistdialog.hrc>
|
||||
#include <dbui.hrc>
|
||||
#include <helpid.h>
|
||||
|
||||
ModalDialog DLG_MM_CREATEADDRESSLIST
|
||||
{
|
||||
OutputSize = TRUE ;
|
||||
SVLook = TRUE ;
|
||||
HelpID = HID_MM_CREATEADDRESSLIST;
|
||||
Size = MAP_APPFONT ( 318 , 231 ) ;
|
||||
Moveable = TRUE ;
|
||||
|
||||
Text [ en-US ] = "New Address List";
|
||||
|
||||
FixedText FI_ADDRESSINFORMATION
|
||||
{
|
||||
Pos = MAP_APPFONT ( 6 , 3 ) ;
|
||||
Size = MAP_APPFONT ( 150 , 8 ) ;
|
||||
Text [ en-US ] = "Address Information";
|
||||
};
|
||||
Control CT_ADDRESS
|
||||
{
|
||||
Pos = MAP_APPFONT ( 6 , 14 ) ;
|
||||
Size = MAP_APPFONT ( 250 , 160 ) ;
|
||||
Border = TRUE;
|
||||
DialogControl = TRUE;
|
||||
OutputSize = TRUE ;
|
||||
|
||||
ScrollBar SCR_1
|
||||
{
|
||||
Pos = MAP_APPFONT ( 240 , 0 ) ;
|
||||
Size = MAP_APPFONT ( 10 , 160 ) ;
|
||||
};
|
||||
Window WIN_DATA
|
||||
{
|
||||
Pos = MAP_APPFONT ( 0 , 0 ) ;
|
||||
Size = MAP_APPFONT ( 240 , 160 ) ;
|
||||
DialogControl = TRUE;
|
||||
};
|
||||
};
|
||||
PushButton PB_NEW
|
||||
{
|
||||
HelpID = "sw:PushButton:DLG_MM_CREATEADDRESSLIST:PB_NEW";
|
||||
Pos = MAP_APPFONT ( 262 , 14 ) ;
|
||||
Size = MAP_APPFONT ( 50 , 14 ) ;
|
||||
Text [ en-US ] = "~New";
|
||||
};
|
||||
PushButton PB_DELETE
|
||||
{
|
||||
HelpID = "sw:PushButton:DLG_MM_CREATEADDRESSLIST:PB_DELETE";
|
||||
Pos = MAP_APPFONT ( 262 , 32 ) ;
|
||||
Size = MAP_APPFONT ( 50 , 14 ) ;
|
||||
Text [ en-US ] = "~Delete";
|
||||
};
|
||||
PushButton PB_FIND
|
||||
{
|
||||
HelpID = "sw:PushButton:DLG_MM_CREATEADDRESSLIST:PB_FIND";
|
||||
Pos = MAP_APPFONT ( 262 , 50 ) ;
|
||||
Size = MAP_APPFONT ( 50 , 14 ) ;
|
||||
Text [ en-US ] = "~Find...";
|
||||
};
|
||||
PushButton PB_CUSTOMIZE
|
||||
{
|
||||
HelpID = "sw:PushButton:DLG_MM_CREATEADDRESSLIST:PB_CUSTOMIZE";
|
||||
Pos = MAP_APPFONT ( 262 , 68 ) ;
|
||||
Size = MAP_APPFONT ( 50 , 14 ) ;
|
||||
Text [ en-US ] = "C~ustomize...";
|
||||
};
|
||||
FixedText FI_VIEWENTRIES
|
||||
{
|
||||
Pos = MAP_APPFONT ( 6 , 183 ) ;
|
||||
Size = MAP_APPFONT ( 92 , 8 ) ;
|
||||
Text [ en-US ] = "Sho~w entry number";
|
||||
};
|
||||
PushButton PB_START
|
||||
{
|
||||
HelpID = "sw:PushButton:DLG_MM_CREATEADDRESSLIST:PB_START";
|
||||
Pos = MAP_APPFONT ( 100 , 180 ) ;
|
||||
Size = MAP_APPFONT ( 20 , 14 ) ;
|
||||
Text = "|<";
|
||||
};
|
||||
PushButton PB_PREV
|
||||
{
|
||||
HelpID = "sw:PushButton:DLG_MM_CREATEADDRESSLIST:PB_PREV";
|
||||
Pos = MAP_APPFONT ( 123 , 180 ) ;
|
||||
Size = MAP_APPFONT ( 20 , 14 ) ;
|
||||
Text = "<";
|
||||
};
|
||||
NumericField NF_SETNO
|
||||
{
|
||||
HelpID = "sw:NumericField:DLG_MM_CREATEADDRESSLIST:NF_SETNO";
|
||||
Pos = MAP_APPFONT ( 146 , 180 ) ;
|
||||
Size = MAP_APPFONT ( 20 , 14 ) ;
|
||||
Border = TRUE;
|
||||
Left = TRUE ;
|
||||
First = 1 ;
|
||||
Minimum = 1 ;
|
||||
Value = 1;
|
||||
Repeat = TRUE ;
|
||||
Spin = FALSE ;
|
||||
TabStop = TRUE ;
|
||||
};
|
||||
PushButton PB_NEXT
|
||||
{
|
||||
HelpID = "sw:PushButton:DLG_MM_CREATEADDRESSLIST:PB_NEXT";
|
||||
Pos = MAP_APPFONT ( 169 , 180 ) ;
|
||||
Size = MAP_APPFONT ( 20 , 14 ) ;
|
||||
Text = ">";
|
||||
};
|
||||
PushButton PB_END
|
||||
{
|
||||
HelpID = "sw:PushButton:DLG_MM_CREATEADDRESSLIST:PB_END";
|
||||
Pos = MAP_APPFONT ( 192 , 180 ) ;
|
||||
Size = MAP_APPFONT ( 20 , 14 ) ;
|
||||
Text = ">|";
|
||||
};
|
||||
FixedLine FL_SEPARATOR
|
||||
{
|
||||
Pos = MAP_APPFONT ( 0 , 200 ) ;
|
||||
Size = MAP_APPFONT ( 318 , 8 ) ;
|
||||
};
|
||||
|
||||
OKButton PB_OK
|
||||
{
|
||||
Pos = MAP_APPFONT ( 153 , 211 ) ;
|
||||
Size = MAP_APPFONT ( 50 , 14 ) ;
|
||||
DefButton = TRUE;
|
||||
};
|
||||
CancelButton PB_CANCEL
|
||||
{
|
||||
Pos = MAP_APPFONT ( 206 , 211 ) ;
|
||||
Size = MAP_APPFONT ( 50 , 14 ) ;
|
||||
};
|
||||
HelpButton PB_HELP
|
||||
{
|
||||
Pos = MAP_APPFONT ( 262 , 211 ) ;
|
||||
Size = MAP_APPFONT ( 50 , 14 ) ;
|
||||
};
|
||||
|
||||
String ST_FILTERNAME
|
||||
{
|
||||
Text [ en-US ] = "%PRODUCTNAME Address List (.csv)";
|
||||
};
|
||||
};
|
||||
|
||||
/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
|
||||
@@ -120,4 +120,9 @@ String ST_CONFIGUREMAIL
|
||||
Text[ en-US ] = "In order to be able to send mail merge documents by e-mail, %PRODUCTNAME requires information about the e-mail account to be used.\n\nDo you want to enter e-mail account information now?";
|
||||
};
|
||||
|
||||
String ST_FILTERNAME
|
||||
{
|
||||
Text [ en-US ] = "%PRODUCTNAME Address List (.csv)";
|
||||
};
|
||||
|
||||
/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
|
||||
|
||||
@@ -0,0 +1,330 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!-- Generated with glade 3.16.1 -->
|
||||
<interface>
|
||||
<requires lib="gtk+" version="3.0"/>
|
||||
<!-- interface-requires LibreOffice 1.0 -->
|
||||
<object class="GtkDialog" id="CreateAddressList">
|
||||
<property name="can_focus">False</property>
|
||||
<property name="border_width">6</property>
|
||||
<property name="title" translatable="yes">New Address List</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="use_action_appearance">False</property>
|
||||
<property name="visible">True</property>
|
||||
<property name="can_focus">True</property>
|
||||
<property name="receives_default">True</property>
|
||||
<property name="use_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="use_action_appearance">False</property>
|
||||
<property name="visible">True</property>
|
||||
<property name="can_focus">True</property>
|
||||
<property name="receives_default">True</property>
|
||||
<property name="use_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="use_action_appearance">False</property>
|
||||
<property name="visible">True</property>
|
||||
<property name="can_focus">True</property>
|
||||
<property name="receives_default">True</property>
|
||||
<property name="use_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>
|
||||
<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">6</property>
|
||||
<child>
|
||||
<object class="GtkBox" id="box1">
|
||||
<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>
|
||||
<property name="spacing">6</property>
|
||||
<child>
|
||||
<object class="GtkLabel" id="ADDRESS_INFORMATION">
|
||||
<property name="visible">True</property>
|
||||
<property name="can_focus">False</property>
|
||||
<property name="halign">start</property>
|
||||
<property name="label" translatable="yes">Address Information</property>
|
||||
<property name="use_underline">True</property>
|
||||
<property name="mnemonic_widget">CONTAINER</property>
|
||||
</object>
|
||||
<packing>
|
||||
<property name="expand">False</property>
|
||||
<property name="fill">True</property>
|
||||
<property name="position">0</property>
|
||||
</packing>
|
||||
</child>
|
||||
<child>
|
||||
<object class="swuilo-SwAddressControlImpl" id="CONTAINER">
|
||||
<property name="visible">True</property>
|
||||
<property name="can_focus">False</property>
|
||||
<property name="hexpand">True</property>
|
||||
<property name="vexpand">True</property>
|
||||
</object>
|
||||
<packing>
|
||||
<property name="expand">True</property>
|
||||
<property name="fill">True</property>
|
||||
<property name="position">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="spacing">6</property>
|
||||
<child>
|
||||
<object class="GtkLabel" id="VIEW_ENTRIES">
|
||||
<property name="visible">True</property>
|
||||
<property name="can_focus">False</property>
|
||||
<property name="xalign">0</property>
|
||||
<property name="label" translatable="yes">Sho_w entry number</property>
|
||||
<property name="use_underline">True</property>
|
||||
<property name="mnemonic_widget">grid2</property>
|
||||
</object>
|
||||
<packing>
|
||||
<property name="expand">False</property>
|
||||
<property name="fill">True</property>
|
||||
<property name="position">0</property>
|
||||
</packing>
|
||||
</child>
|
||||
<child>
|
||||
<object class="GtkGrid" id="grid2">
|
||||
<property name="visible">True</property>
|
||||
<property name="can_focus">False</property>
|
||||
<property name="halign">center</property>
|
||||
<property name="hexpand">True</property>
|
||||
<property name="column_spacing">6</property>
|
||||
<child>
|
||||
<object class="GtkButton" id="START">
|
||||
<property name="label" translatable="yes">|<</property>
|
||||
<property name="use_action_appearance">False</property>
|
||||
<property name="visible">True</property>
|
||||
<property name="can_focus">True</property>
|
||||
<property name="receives_default">True</property>
|
||||
</object>
|
||||
<packing>
|
||||
<property name="left_attach">0</property>
|
||||
<property name="top_attach">0</property>
|
||||
<property name="width">1</property>
|
||||
<property name="height">1</property>
|
||||
</packing>
|
||||
</child>
|
||||
<child>
|
||||
<object class="GtkButton" id="PREV">
|
||||
<property name="label" translatable="yes"><</property>
|
||||
<property name="use_action_appearance">False</property>
|
||||
<property name="visible">True</property>
|
||||
<property name="can_focus">True</property>
|
||||
<property name="receives_default">True</property>
|
||||
</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="GtkButton" id="END">
|
||||
<property name="label" translatable="yes">>|</property>
|
||||
<property name="use_action_appearance">False</property>
|
||||
<property name="visible">True</property>
|
||||
<property name="can_focus">True</property>
|
||||
<property name="receives_default">True</property>
|
||||
</object>
|
||||
<packing>
|
||||
<property name="left_attach">4</property>
|
||||
<property name="top_attach">0</property>
|
||||
<property name="width">1</property>
|
||||
<property name="height">1</property>
|
||||
</packing>
|
||||
</child>
|
||||
<child>
|
||||
<object class="GtkButton" id="NEXT">
|
||||
<property name="label" translatable="yes">></property>
|
||||
<property name="use_action_appearance">False</property>
|
||||
<property name="visible">True</property>
|
||||
<property name="can_focus">True</property>
|
||||
<property name="receives_default">True</property>
|
||||
</object>
|
||||
<packing>
|
||||
<property name="left_attach">3</property>
|
||||
<property name="top_attach">0</property>
|
||||
<property name="width">1</property>
|
||||
<property name="height">1</property>
|
||||
</packing>
|
||||
</child>
|
||||
<child>
|
||||
<object class="GtkSpinButton" id="SETNO-nospin">
|
||||
<property name="visible">True</property>
|
||||
<property name="can_focus">True</property>
|
||||
<property name="numeric">True</property>
|
||||
</object>
|
||||
<packing>
|
||||
<property name="left_attach">2</property>
|
||||
<property name="top_attach">0</property>
|
||||
<property name="width">1</property>
|
||||
<property name="height">1</property>
|
||||
</packing>
|
||||
</child>
|
||||
</object>
|
||||
<packing>
|
||||
<property name="expand">True</property>
|
||||
<property name="fill">True</property>
|
||||
<property name="position">1</property>
|
||||
</packing>
|
||||
</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">0</property>
|
||||
<property name="top_attach">0</property>
|
||||
<property name="width">1</property>
|
||||
<property name="height">1</property>
|
||||
</packing>
|
||||
</child>
|
||||
<child>
|
||||
<object class="GtkButtonBox" id="buttonbox1">
|
||||
<property name="visible">True</property>
|
||||
<property name="can_focus">False</property>
|
||||
<property name="orientation">vertical</property>
|
||||
<property name="spacing">12</property>
|
||||
<property name="layout_style">start</property>
|
||||
<child>
|
||||
<object class="GtkButton" id="NEW">
|
||||
<property name="label" translatable="yes">_New</property>
|
||||
<property name="use_action_appearance">False</property>
|
||||
<property name="visible">True</property>
|
||||
<property name="can_focus">True</property>
|
||||
<property name="receives_default">True</property>
|
||||
<property name="use_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="DELETE">
|
||||
<property name="label" translatable="yes">_Delete</property>
|
||||
<property name="use_action_appearance">False</property>
|
||||
<property name="visible">True</property>
|
||||
<property name="can_focus">True</property>
|
||||
<property name="receives_default">True</property>
|
||||
<property name="use_underline">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="FIND">
|
||||
<property name="label" translatable="yes">_Find...</property>
|
||||
<property name="use_action_appearance">False</property>
|
||||
<property name="visible">True</property>
|
||||
<property name="can_focus">True</property>
|
||||
<property name="receives_default">True</property>
|
||||
<property name="use_underline">True</property>
|
||||
</object>
|
||||
<packing>
|
||||
<property name="expand">False</property>
|
||||
<property name="fill">True</property>
|
||||
<property name="position">2</property>
|
||||
</packing>
|
||||
</child>
|
||||
<child>
|
||||
<object class="GtkButton" id="CUSTOMIZE">
|
||||
<property name="label" translatable="yes">C_ustomize...</property>
|
||||
<property name="use_action_appearance">False</property>
|
||||
<property name="visible">True</property>
|
||||
<property name="can_focus">True</property>
|
||||
<property name="receives_default">True</property>
|
||||
<property name="use_underline">True</property>
|
||||
</object>
|
||||
<packing>
|
||||
<property name="expand">False</property>
|
||||
<property name="fill">True</property>
|
||||
<property name="position">3</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>
|
||||
</object>
|
||||
<packing>
|
||||
<property name="expand">True</property>
|
||||
<property name="fill">True</property>
|
||||
<property name="position">1</property>
|
||||
</packing>
|
||||
</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>
|
||||
Reference in New Issue
Block a user