Kaydet (Commit) fbb1f977 authored tarafından Caolán McNamara's avatar Caolán McNamara

convert address template dialog to .ui

seeing as it's an obscure dialog I didn't invest time
in moving all the entries into the .ui and rework
the scrolling logic

Change-Id: If1dccbf01901bf4f754e49d5b38baf2033316410
üst 13821254
......@@ -10,6 +10,7 @@
$(eval $(call gb_UI_UI,svt))
$(eval $(call gb_UI_add_uifiles,svt,\
svtools/uiconfig/ui/addresstemplatedialog \
svtools/uiconfig/ui/graphicexport \
svtools/uiconfig/ui/placeedit \
svtools/uiconfig/ui/printersetupdialog \
......
......@@ -22,10 +22,10 @@
#include "svtools/svtdllapi.h"
#include <vcl/dialog.hxx>
#include <vcl/group.hxx>
#include <vcl/fixed.hxx>
#include <vcl/combobox.hxx>
#include <vcl/button.hxx>
#include <vcl/layout.hxx>
#include <vcl/lstbox.hxx>
#include <vcl/scrbar.hxx>
#include <com/sun/star/container/XNameAccess.hpp>
......@@ -47,20 +47,10 @@ namespace svt
{
protected:
// Controls
FixedLine m_aDatasourceFrame;
FixedText m_aDatasourceLabel;
ComboBox m_aDatasource;
PushButton m_aAdministrateDatasources;
FixedText m_aTableLabel;
ComboBox m_aTable;
FixedText m_aFieldsTitle;
Window m_aFieldsFrame;
ScrollBar m_aFieldScroller;
OKButton m_aOK;
CancelButton m_aCancel;
HelpButton m_aHelp;
ComboBox* m_pDatasource;
PushButton* m_pAdministrateDatasources;
ComboBox* m_pTable;
ScrollBar* m_pFieldScroller;
// string to display for "no selection"
const String m_sNoFieldSelection;
......
......@@ -59,8 +59,6 @@
#define HID_TEMPLATEDLG_TB_DOCINFO "SVT_HID_TEMPLATEDLG_TB_DOCINFO"
#define HID_TEMPLATEDLG_TB_PREVIEW "SVT_HID_TEMPLATEDLG_TB_PREVIEW"
#define HID_ADDRTEMPL_FIELD_ASSIGNMENT "SVT_HID_ADDRTEMPL_FIELD_ASSIGNMENT"
// Help ids for the filepicker dialogs
#define HID_EXPLORERDLG_FILE "SVT_HID_EXPLORERDLG_FILE"
......
......@@ -216,6 +216,44 @@
//manually in sync with STR_ARR_SVT_LANGUAGE_TABLE
#define STR_ARR_SVT_LANGUAGE_TABLE_END (STR_ARR_SVT_LANGUAGE_TABLE)
#define STR_SVT_ADDRESSTEMPLATE_START (STR_ARR_SVT_LANGUAGE_TABLE_END+1)
#define STR_NO_FIELD_SELECTION (STR_SVT_ADDRESSTEMPLATE_START+0)
#define STR_FIELD_COMPANY (STR_SVT_ADDRESSTEMPLATE_START+1)
#define STR_FIELD_DEPARTMENT (STR_SVT_ADDRESSTEMPLATE_START+2)
#define STR_FIELD_FIRSTNAME (STR_SVT_ADDRESSTEMPLATE_START+3)
#define STR_FIELD_LASTNAME (STR_SVT_ADDRESSTEMPLATE_START+4)
#define STR_FIELD_STREET (STR_SVT_ADDRESSTEMPLATE_START+5)
#define STR_FIELD_COUNTRY (STR_SVT_ADDRESSTEMPLATE_START+6)
#define STR_FIELD_ZIPCODE (STR_SVT_ADDRESSTEMPLATE_START+7)
#define STR_FIELD_CITY (STR_SVT_ADDRESSTEMPLATE_START+8)
#define STR_FIELD_TITLE (STR_SVT_ADDRESSTEMPLATE_START+9)
#define STR_FIELD_POSITION (STR_SVT_ADDRESSTEMPLATE_START+10)
#define STR_FIELD_ADDRFORM (STR_SVT_ADDRESSTEMPLATE_START+11)
#define STR_FIELD_INITIALS (STR_SVT_ADDRESSTEMPLATE_START+12)
#define STR_FIELD_SALUTATION (STR_SVT_ADDRESSTEMPLATE_START+13)
#define STR_FIELD_HOMETEL (STR_SVT_ADDRESSTEMPLATE_START+14)
#define STR_FIELD_WORKTEL (STR_SVT_ADDRESSTEMPLATE_START+15)
#define STR_FIELD_FAX (STR_SVT_ADDRESSTEMPLATE_START+16)
#define STR_FIELD_EMAIL (STR_SVT_ADDRESSTEMPLATE_START+17)
#define STR_FIELD_URL (STR_SVT_ADDRESSTEMPLATE_START+18)
#define STR_FIELD_NOTE (STR_SVT_ADDRESSTEMPLATE_START+19)
#define STR_FIELD_USER1 (STR_SVT_ADDRESSTEMPLATE_START+20)
#define STR_FIELD_USER2 (STR_SVT_ADDRESSTEMPLATE_START+21)
#define STR_FIELD_USER3 (STR_SVT_ADDRESSTEMPLATE_START+22)
#define STR_FIELD_USER4 (STR_SVT_ADDRESSTEMPLATE_START+23)
#define STR_FIELD_ID (STR_SVT_ADDRESSTEMPLATE_START+24)
#define STR_FIELD_STATE (STR_SVT_ADDRESSTEMPLATE_START+25)
#define STR_FIELD_OFFICETEL (STR_SVT_ADDRESSTEMPLATE_START+26)
#define STR_FIELD_PAGER (STR_SVT_ADDRESSTEMPLATE_START+27)
#define STR_FIELD_MOBILE (STR_SVT_ADDRESSTEMPLATE_START+28)
#define STR_FIELD_TELOTHER (STR_SVT_ADDRESSTEMPLATE_START+29)
#define STR_FIELD_CALENDAR (STR_SVT_ADDRESSTEMPLATE_START+30)
#define STR_FIELD_INVITE (STR_SVT_ADDRESSTEMPLATE_START+31)
#define STR_LOGICAL_FIELD_NAMES (STR_SVT_ADDRESSTEMPLATE_START+32)
#define STR_SVT_ADDRESSTEMPLATE_END (STR_LOGICAL_FIELD_NAMES)
//.............................................................................
// dialogs
......
......@@ -545,28 +545,14 @@ void AssignmentPersistentData::Commit()
// ===================================================================
// = AddressBookSourceDialog
// ===================================================================
#define INIT_FIELDS() \
ModalDialog(_pParent, SvtResId( DLG_ADDRESSBOOKSOURCE ))\
,m_aDatasourceFrame (this, SvtResId(FL_DATASOURCEFRAME))\
,m_aDatasourceLabel (this, SvtResId(FT_DATASOURCE))\
,m_aDatasource (this, SvtResId(CB_DATASOURCE))\
,m_aAdministrateDatasources (this, SvtResId(PB_ADMINISTATE_DATASOURCES))\
,m_aTableLabel (this, SvtResId(FT_TABLE))\
,m_aTable (this, SvtResId(CB_TABLE))\
,m_aFieldsTitle (this, SvtResId(FT_FIELDS))\
,m_aFieldsFrame (this, SvtResId(CT_BORDER))\
,m_aFieldScroller (&m_aFieldsFrame, SvtResId(SB_FIELDSCROLLER))\
,m_aOK (this, SvtResId(PB_OK))\
,m_aCancel (this, SvtResId(PB_CANCEL))\
,m_aHelp (this, SvtResId(PB_HELP))\
,m_sNoFieldSelection(SVT_RESSTR(STR_NO_FIELD_SELECTION))\
,m_xORB(_rxORB)
// -------------------------------------------------------------------
AddressBookSourceDialog::AddressBookSourceDialog(Window* _pParent,
const Reference< XComponentContext >& _rxORB )
:INIT_FIELDS()
,m_pImpl( new AddressBookSourceDialogData )
: ModalDialog(_pParent, "AddressTemplateDialog", "svt/ui/addresstemplatedialog.ui")
, m_sNoFieldSelection(SVT_RESSTR(STR_NO_FIELD_SELECTION))
, m_xORB(_rxORB)
, m_pImpl( new AddressBookSourceDialogData )
{
implConstruct();
}
......@@ -575,8 +561,10 @@ void AssignmentPersistentData::Commit()
AddressBookSourceDialog::AddressBookSourceDialog( Window* _pParent, const Reference< XComponentContext >& _rxORB,
const Reference< XDataSource >& _rxTransientDS, const OUString& _rDataSourceName,
const OUString& _rTable, const Sequence< AliasProgrammaticPair >& _rMapping )
:INIT_FIELDS()
,m_pImpl( new AddressBookSourceDialogData( _rxTransientDS, _rDataSourceName, _rTable, _rMapping ) )
: ModalDialog(_pParent, "AddressTemplateDialog", "svt/ui/addresstemplatedialog.ui")
, m_sNoFieldSelection(SVT_RESSTR(STR_NO_FIELD_SELECTION))
, m_xORB(_rxORB)
, m_pImpl( new AddressBookSourceDialogData( _rxTransientDS, _rDataSourceName, _rTable, _rMapping ) )
{
implConstruct();
}
......@@ -584,28 +572,25 @@ void AssignmentPersistentData::Commit()
// -------------------------------------------------------------------
void AddressBookSourceDialog::implConstruct()
{
get(m_pDatasource, "datasource");
get(m_pAdministrateDatasources, "admin");
get(m_pTable, "datatable");
m_pFieldScroller = &get<VclScrolledWindow>("scrollwindow")->getVertScrollBar();
for (sal_Int32 row=0; row<FIELD_PAIRS_VISIBLE; ++row)
{
for (sal_Int32 column=0; column<2; ++column)
{
// the label
m_pImpl->pFieldLabels[row * 2 + column] = new FixedText(&m_aFieldsFrame, SvtResId((sal_uInt16)(FT_FIELD_BASE + row * 2 + column)));
m_pImpl->pFieldLabels[row * 2 + column] = get<FixedText>(OString("label") + OString::number(row * 2 + column));
// the listbox
m_pImpl->pFields[row * 2 + column] = new ListBox(&m_aFieldsFrame, SvtResId((sal_uInt16)(LB_FIELD_BASE + row * 2 + column)));
m_pImpl->pFields[row * 2 + column]->SetDropDownLineCount(15);
m_pImpl->pFields[row * 2 + column] = get<ListBox>(OString("box") + OString::number(row * 2 + column));
m_pImpl->pFields[row * 2 + column]->SetSelectHdl(LINK(this, AddressBookSourceDialog, OnFieldSelect));
m_pImpl->pFields[row * 2 + column]->SetHelpId(HID_ADDRTEMPL_FIELD_ASSIGNMENT);
m_pImpl->pFields[row * 2 + column]->SetHelpId("svt/ui/addresstemplatedialog/assign");
}
}
m_aFieldsFrame.SetStyle((m_aFieldsFrame.GetStyle() | WB_TABSTOP | WB_DIALOGCONTROL) & ~WB_NODIALOGCONTROL);
// correct the z-order
m_aFieldScroller.SetZOrder(m_pImpl->pFields[FIELD_CONTROLS_VISIBLE - 1], WINDOW_ZORDER_BEHIND);
m_aOK.SetZOrder(&m_aFieldsFrame, WINDOW_ZORDER_BEHIND);
m_aCancel.SetZOrder(&m_aOK, WINDOW_ZORDER_BEHIND);
initializeDatasources();
// for the moment, we have a hard coded list of all known fields.
......@@ -648,39 +633,53 @@ void AssignmentPersistentData::Commit()
m_pImpl->aFieldLabels.push_back( SVT_RESSTR( STR_FIELD_USER3));
m_pImpl->aFieldLabels.push_back( SVT_RESSTR( STR_FIELD_USER4));
long nLabelWidth = 0;
long nListBoxWidth = m_pImpl->pFields[0]->approximate_char_width() * 20;
for (ConstStringArrayIterator aI = m_pImpl->aFieldLabels.begin(), aEnd = m_pImpl->aFieldLabels.end(); aI != aEnd; ++aI)
{
nLabelWidth = std::max(nLabelWidth, FixedText::getTextDimensions(m_pImpl->pFieldLabels[0], *aI, 0x7FFFFFFF).Width());
}
for (sal_Int32 row=0; row<FIELD_PAIRS_VISIBLE; ++row)
{
for (sal_Int32 column=0; column<2; ++column)
{
m_pImpl->pFieldLabels[row * 2 + column]->set_width_request(nLabelWidth);
m_pImpl->pFields[row * 2 + column]->set_width_request(nListBoxWidth);
}
}
// force a even number of known fields
m_pImpl->bOddFieldNumber = (m_pImpl->aFieldLabels.size() % 2) != 0;
if (m_pImpl->bOddFieldNumber)
m_pImpl->aFieldLabels.push_back( String() );
m_pImpl->aFieldLabels.push_back( OUString() );
// limit the scrollbar range accordingly
sal_Int32 nOverallFieldPairs = m_pImpl->aFieldLabels.size() / 2;
m_aFieldScroller.SetRange( Range(0, nOverallFieldPairs - FIELD_PAIRS_VISIBLE) );
m_aFieldScroller.SetLineSize(1);
m_aFieldScroller.SetPageSize(FIELD_PAIRS_VISIBLE);
m_pFieldScroller->SetRange( Range(0, nOverallFieldPairs - FIELD_PAIRS_VISIBLE) );
m_pFieldScroller->SetLineSize(1);
m_pFieldScroller->SetPageSize(FIELD_PAIRS_VISIBLE);
// reset the current field assignments
m_pImpl->aFieldAssignments.resize(m_pImpl->aFieldLabels.size());
// (empty strings mean "no assignment")
// some knittings
m_aFieldScroller.SetScrollHdl(LINK(this, AddressBookSourceDialog, OnFieldScroll));
m_aAdministrateDatasources.SetClickHdl(LINK(this, AddressBookSourceDialog, OnAdministrateDatasources));
m_aDatasource.EnableAutocomplete(sal_True);
m_aTable.EnableAutocomplete(sal_True);
m_aTable.SetGetFocusHdl(LINK(this, AddressBookSourceDialog, OnComboGetFocus));
m_aDatasource.SetGetFocusHdl(LINK(this, AddressBookSourceDialog, OnComboGetFocus));
m_aTable.SetLoseFocusHdl(LINK(this, AddressBookSourceDialog, OnComboLoseFocus));
m_aDatasource.SetLoseFocusHdl(LINK(this, AddressBookSourceDialog, OnComboLoseFocus));
m_aTable.SetSelectHdl(LINK(this, AddressBookSourceDialog, OnComboSelect));
m_aDatasource.SetSelectHdl(LINK(this, AddressBookSourceDialog, OnComboSelect));
m_aOK.SetClickHdl(LINK(this, AddressBookSourceDialog, OnOkClicked));
m_aDatasource.SetDropDownLineCount(15);
m_pFieldScroller->SetScrollHdl(LINK(this, AddressBookSourceDialog, OnFieldScroll));
m_pAdministrateDatasources->SetClickHdl(LINK(this, AddressBookSourceDialog, OnAdministrateDatasources));
m_pDatasource->EnableAutocomplete(sal_True);
m_pTable->EnableAutocomplete(sal_True);
m_pTable->SetGetFocusHdl(LINK(this, AddressBookSourceDialog, OnComboGetFocus));
m_pDatasource->SetGetFocusHdl(LINK(this, AddressBookSourceDialog, OnComboGetFocus));
m_pTable->SetLoseFocusHdl(LINK(this, AddressBookSourceDialog, OnComboLoseFocus));
m_pDatasource->SetLoseFocusHdl(LINK(this, AddressBookSourceDialog, OnComboLoseFocus));
m_pTable->SetSelectHdl(LINK(this, AddressBookSourceDialog, OnComboSelect));
m_pDatasource->SetSelectHdl(LINK(this, AddressBookSourceDialog, OnComboSelect));
get<OKButton>("ok")->SetClickHdl(LINK(this, AddressBookSourceDialog, OnOkClicked));
// initialize the field controls
resetFields();
m_aFieldScroller.SetThumbPos(0);
m_pFieldScroller->SetThumbPos(0);
m_pImpl->nFieldScrollPos = -1;
implScrollFields(0, sal_False, sal_False);
......@@ -697,22 +696,20 @@ void AssignmentPersistentData::Commit()
// so the dialog will at least show up before we do the loading of the
// configuration data and the (maybe time consuming) analysis of the data source/table to select
FreeResource();
if ( !m_pImpl->bWorkingPersistent )
{
StyleSettings aSystemStyle = GetSettings().GetStyleSettings();
const ::Color& rNewColor = aSystemStyle.GetDialogColor();
m_aDatasource.SetReadOnly( sal_True );
m_aDatasource.SetBackground( Wallpaper( rNewColor ) );
m_aDatasource.SetControlBackground( rNewColor );
m_pDatasource->SetReadOnly( sal_True );
m_pDatasource->SetBackground( Wallpaper( rNewColor ) );
m_pDatasource->SetControlBackground( rNewColor );
m_aTable.SetReadOnly( sal_True );
m_aTable.SetBackground( Wallpaper( rNewColor ) );
m_aTable.SetControlBackground( rNewColor );
m_pTable->SetReadOnly( sal_True );
m_pTable->SetBackground( Wallpaper( rNewColor ) );
m_pTable->SetControlBackground( rNewColor );
m_aAdministrateDatasources.Hide( );
m_pAdministrateDatasources->Hide( );
}
}
......@@ -752,8 +749,8 @@ void AssignmentPersistentData::Commit()
sName = aFileNotation.get(OFileNotation::N_SYSTEM);
}
m_aDatasource.SetText(sName);
m_aTable.SetText(m_pImpl->pConfigData->getCommand());
m_pDatasource->SetText(sName);
m_pTable->SetText(m_pImpl->pConfigData->getCommand());
// we ignore the CommandType: only tables are supported
// the logical names for the fields
......@@ -772,13 +769,6 @@ void AssignmentPersistentData::Commit()
// -------------------------------------------------------------------
AddressBookSourceDialog::~AddressBookSourceDialog()
{
sal_Int32 i;
for (i=0; i<FIELD_CONTROLS_VISIBLE; ++i)
{
delete m_pImpl->pFieldLabels[i];
delete m_pImpl->pFields[i];
}
delete m_pImpl;
}
......@@ -803,7 +793,7 @@ void AssignmentPersistentData::Commit()
return;
}
}
m_aDatasource.Clear();
m_pDatasource->Clear();
// fill the datasources listbox
Sequence< OUString > aDatasourceNames;
......@@ -818,7 +808,7 @@ void AssignmentPersistentData::Commit()
const OUString* pDatasourceNames = aDatasourceNames.getConstArray();
const OUString* pEnd = pDatasourceNames + aDatasourceNames.getLength();
for (; pDatasourceNames < pEnd; ++pDatasourceNames)
m_aDatasource.InsertEntry(*pDatasourceNames);
m_pDatasource->InsertEntry(*pDatasourceNames);
}
// -------------------------------------------------------------------
......@@ -837,7 +827,7 @@ void AssignmentPersistentData::Commit()
WaitObject aWaitCursor(this);
// no matter what we do here, we handled the currently selected data source (no matter if successful or not)
m_aDatasource.SaveValue();
m_pDatasource->SaveValue();
// create an interaction handler (may be needed for connecting)
Reference< XInteractionHandler > xHandler;
......@@ -856,9 +846,9 @@ void AssignmentPersistentData::Commit()
}
// the currently selected table
OUString sOldTable = m_aTable.GetText();
OUString sOldTable = m_pTable->GetText();
m_aTable.Clear();
m_pTable->Clear();
m_xCurrentDatasourceTables= NULL;
......@@ -870,7 +860,7 @@ void AssignmentPersistentData::Commit()
Reference< XCompletedConnection > xDS;
if ( m_pImpl->bWorkingPersistent )
{
String sSelectedDS = lcl_getSelectedDataSource( m_aDatasource );
String sSelectedDS = lcl_getSelectedDataSource(*m_pDatasource);
// get the data source the user has chosen and let it build a connection
INetURLObject aURL( sSelectedDS );
......@@ -921,7 +911,7 @@ void AssignmentPersistentData::Commit()
const OUString* pEnd = pTableNames + aTableNames.getLength();
for (;pTableNames != pEnd; ++pTableNames)
{
m_aTable.InsertEntry(*pTableNames);
m_pTable->InsertEntry(*pTableNames);
if (0 == pTableNames->compareTo(sOldTable))
bKnowOldTable = sal_True;
}
......@@ -929,7 +919,7 @@ void AssignmentPersistentData::Commit()
// set the old table, if the new data source knows a table with this name, too. Else reset the tables edit field.
if (!bKnowOldTable)
sOldTable = OUString();
m_aTable.SetText(sOldTable);
m_pTable->SetText(sOldTable);
resetFields();
}
......@@ -940,9 +930,9 @@ void AssignmentPersistentData::Commit()
WaitObject aWaitCursor(this);
// no matter what we do here, we handled the currently selected table (no matter if successful or not)
m_aDatasource.SaveValue();
m_pDatasource->SaveValue();
String sSelectedTable = m_aTable.GetText();
String sSelectedTable = m_pTable->GetText();
Sequence< OUString > aColumnNames;
try
{
......@@ -959,7 +949,7 @@ void AssignmentPersistentData::Commit()
aColumnNames = xColumns->getElementNames();
}
}
catch(Exception&)
catch (const Exception&)
{
OSL_FAIL("AddressBookSourceDialog::resetFields: could not retrieve the table columns!");
}
......@@ -1128,7 +1118,7 @@ void AssignmentPersistentData::Commit()
m_pImpl->nFieldScrollPos = _nPos;
if (_bAdjustScrollbar)
m_aFieldScroller.SetThumbPos(m_pImpl->nFieldScrollPos);
m_pFieldScroller->SetThumbPos(m_pImpl->nFieldScrollPos);
}
// -------------------------------------------------------------------
......@@ -1160,7 +1150,7 @@ void AssignmentPersistentData::Commit()
// -------------------------------------------------------------------
IMPL_LINK(AddressBookSourceDialog, OnComboSelect, ComboBox*, _pBox)
{
if (_pBox == &m_aDatasource)
if (_pBox == m_pDatasource)
resetTables();
else
resetFields();
......@@ -1179,7 +1169,7 @@ void AssignmentPersistentData::Commit()
{
if (_pBox->GetSavedValue() != _pBox->GetText())
{
if (_pBox == &m_aDatasource)
if (_pBox == m_pDatasource)
resetTables();
else
resetFields();
......@@ -1190,11 +1180,11 @@ void AssignmentPersistentData::Commit()
// -------------------------------------------------------------------
IMPL_LINK_NOARG(AddressBookSourceDialog, OnOkClicked)
{
String sSelectedDS = lcl_getSelectedDataSource( m_aDatasource );
String sSelectedDS = lcl_getSelectedDataSource(*m_pDatasource);
if ( m_pImpl->bWorkingPersistent )
{
m_pImpl->pConfigData->setDatasourceName(sSelectedDS);
m_pImpl->pConfigData->setCommand(m_aTable.GetText());
m_pImpl->pConfigData->setCommand(m_pTable->GetText());
}
// set the field assignments
......@@ -1244,7 +1234,7 @@ void AssignmentPersistentData::Commit()
OFileNotation aFileNotation( aURL.GetMainURL( INetURLObject::NO_DECODE ) );
sName = aFileNotation.get(OFileNotation::N_SYSTEM);
}
m_aDatasource.InsertEntry(sName);
m_pDatasource->InsertEntry(sName);
delete m_pImpl->pConfigData;
m_pImpl->pConfigData = new AssignmentPersistentData();
loadConfiguration();
......@@ -1285,7 +1275,7 @@ void AssignmentPersistentData::Commit()
{ // it's really the only the key (no modifiers)
if (m_pImpl->pFields[m_pImpl->nLastVisibleListIndex]->HasChildPathFocus())
// the last of our visible list boxes has the focus
if (m_pImpl->nFieldScrollPos < m_aFieldScroller.GetRangeMax())
if (m_pImpl->nFieldScrollPos < m_pFieldScroller->GetRangeMax())
{ // we can still scroll down
sal_Int32 nNextFocusList = m_pImpl->nLastVisibleListIndex + 1 - 2;
// -> scroll down
......
......@@ -24,58 +24,6 @@
#define FIELD_PAIRS_VISIBLE 5
#define FIELD_CONTROLS_VISIBLE 2 * FIELD_PAIRS_VISIBLE
#define FL_DATASOURCEFRAME 1
#define FT_DATASOURCE 2
#define CB_DATASOURCE 3
#define CT_BORDER 1
#define PB_ADMINISTATE_DATASOURCES 4
#define FT_TABLE 5
#define CB_TABLE 6
#define FT_FIELDS 7
#define SB_FIELDSCROLLER 8
#define PB_OK 9
#define PB_CANCEL 10
#define PB_HELP 11
#define FT_FIELD_BASE 50
#define LB_FIELD_BASE 50
#define STR_NO_FIELD_SELECTION 1
#define STR_FIELD_COMPANY 2
#define STR_FIELD_DEPARTMENT 3
#define STR_FIELD_FIRSTNAME 4
#define STR_FIELD_LASTNAME 5
#define STR_FIELD_STREET 6
#define STR_FIELD_COUNTRY 7
#define STR_FIELD_ZIPCODE 8
#define STR_FIELD_CITY 9
#define STR_FIELD_TITLE 10
#define STR_FIELD_POSITION 11
#define STR_FIELD_ADDRFORM 12
#define STR_FIELD_INITIALS 13
#define STR_FIELD_SALUTATION 14
#define STR_FIELD_HOMETEL 15
#define STR_FIELD_WORKTEL 16
#define STR_FIELD_FAX 17
#define STR_FIELD_EMAIL 18
#define STR_FIELD_URL 19
#define STR_FIELD_NOTE 20
#define STR_FIELD_USER1 21
#define STR_FIELD_USER2 22
#define STR_FIELD_USER3 23
#define STR_FIELD_USER4 24
#define STR_FIELD_ID 25
#define STR_FIELD_STATE 26
#define STR_FIELD_OFFICETEL 27
#define STR_FIELD_PAGER 28
#define STR_FIELD_MOBILE 29
#define STR_FIELD_TELOTHER 30
#define STR_FIELD_CALENDAR 31
#define STR_FIELD_INVITE 32
#define STR_LOGICAL_FIELD_NAMES 33
#endif // _SVT_ADDRESSTEMPLATE_HRC_
/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
......@@ -19,298 +19,143 @@
#include <svtools/svtools.hrc>
#include "addresstemplate.hrc"
#include <svtools/controldims.hrc>
#define FIELD_ROW_HEIGHT 17
ModalDialog DLG_ADDRESSBOOKSOURCE
{
HelpID = "svtools:ModalDialog:DLG_ADDRESSBOOKSOURCE";
SVLook = TRUE ;
OutputSize = TRUE ;
Size = MAP_APPFONT ( 300 , 88 + FIELD_ROW_HEIGHT * FIELD_PAIRS_VISIBLE ) ;
Hide = TRUE ;
Moveable = TRUE ;
Text [ en-US ] = "Templates: Address Book Assignment";
FixedLine FL_DATASOURCEFRAME
{
Text [ en-US ] = "Address Book Source";
SVLook = TRUE ;
Pos = MAP_APPFONT ( 6 , 2 ) ;
Size = MAP_APPFONT ( 288 , RSC_CD_FIXEDLINE_HEIGHT ) ;
};
FixedText FT_DATASOURCE
{
Text [ en-US ] = "Data source";
SVLook = TRUE ;
Pos = MAP_APPFONT ( 12 , 15 ) ;
Size = MAP_APPFONT ( 90 , 10 ) ;
Group = TRUE;
};
ComboBox CB_DATASOURCE
{
HelpID = "svtools:ComboBox:DLG_ADDRESSBOOKSOURCE:CB_DATASOURCE";
SVLook = TRUE ;
Pos = MAP_APPFONT ( 105, 13 ) ;
Size = MAP_APPFONT ( 96, 55 ) ;
DropDown = TRUE;
TabStop = TRUE;
};
PushButton PB_ADMINISTATE_DATASOURCES
{
HelpID = "svtools:PushButton:DLG_ADDRESSBOOKSOURCE:PB_ADMINISTATE_DATASOURCES";
Text [ en-US ] = "~Address Data Source...";
SVLook = TRUE ;
Pos = MAP_APPFONT ( 204, 13 ) ;
Size = MAP_APPFONT ( 90, 14 ) ;
TabStop = TRUE;
};
FixedText FT_TABLE
{
Text [ en-US ] = "Table";
SVLook = TRUE ;
Pos = MAP_APPFONT ( 12 , 32 ) ;
Size = MAP_APPFONT ( 90 , 10 ) ;
Group = TRUE;
};
ComboBox CB_TABLE
{
HelpID = "svtools:ComboBox:DLG_ADDRESSBOOKSOURCE:CB_TABLE";
SVLook = TRUE ;
Pos = MAP_APPFONT ( 105, 30 ) ;
Size = MAP_APPFONT ( 96, 55 ) ;
DropDown = TRUE;
TabStop = TRUE;
};
FixedText FT_FIELDS
{
Text [ en-US ] = "Field assignment";
SVLook = TRUE ;
Pos = MAP_APPFONT ( 6, 30 + RSC_CD_DROPDOWN_HEIGHT + RSC_SP_CTRL_Y ) ;
Size = MAP_APPFONT ( 248 , RSC_CD_FIXEDTEXT_HEIGHT ) ;
};
Window CT_BORDER
{
Border = TRUE ;
Pos = MAP_APPFONT ( 6, 30 + RSC_CD_DROPDOWN_HEIGHT + RSC_SP_CTRL_Y + RSC_CD_FIXEDTEXT_HEIGHT + RSC_SP_CTRL_DESC_Y ) ;
Size = MAP_APPFONT ( 288 , 5 + FIELD_ROW_HEIGHT * FIELD_PAIRS_VISIBLE ) ;
};
#define DECLARE_FIELD( row, column ) \
FixedText FT_FIELD_BASE + row * 2 + column \
{ \
SVLook = TRUE ; \
Pos = MAP_APPFONT ( 3 + column * 134, RSC_SP_CTRL_GROUP_Y + 2 + row * FIELD_ROW_HEIGHT ) ; \
Size = MAP_APPFONT ( 79 , 10 ) ; \
Group = TRUE; \
}; \
ListBox LB_FIELD_BASE + row * 2 + column \
{ \
SVLook = TRUE; \
Pos = MAP_APPFONT ( 89 + column * 134, RSC_SP_CTRL_GROUP_Y + row * FIELD_ROW_HEIGHT ) ; \
Size = MAP_APPFONT ( 42 , 14 ) ; \
Border = TRUE; \
DropDown = TRUE; \
TabStop = TRUE; \
}
#if FIELD_PAIRS_VISIBLE > 0
DECLARE_FIELD( 0, 0 );
DECLARE_FIELD( 0, 1 );
#endif
#if FIELD_PAIRS_VISIBLE > 1
DECLARE_FIELD( 1, 0 );
DECLARE_FIELD( 1, 1 );
#endif
#if FIELD_PAIRS_VISIBLE > 2
DECLARE_FIELD( 3, 0 );
DECLARE_FIELD( 3, 1 );
#endif
#if FIELD_PAIRS_VISIBLE > 3
DECLARE_FIELD( 2, 0 );
DECLARE_FIELD( 2, 1 );
#endif
#if FIELD_PAIRS_VISIBLE > 4
DECLARE_FIELD( 4, 0 );
DECLARE_FIELD( 4, 1 );
#endif
#if FIELD_PAIRS_VISIBLE > 5
DECLARE_FIELD( 5, 0 );
DECLARE_FIELD( 5, 1 );
#endif
ScrollBar SB_FIELDSCROLLER
{
SVLook = TRUE;
Pos = MAP_APPFONT ( 275, RSC_SP_CTRL_GROUP_Y ) ;
Size = MAP_APPFONT ( 8 , 16 - RSC_SP_CTRL_GROUP_Y + FIELD_ROW_HEIGHT * (FIELD_PAIRS_VISIBLE - 1) ) ;
};
OKButton PB_OK
{
SVLook = TRUE;
DefButton = TRUE;
Pos = MAP_APPFONT ( 137, 70 + FIELD_ROW_HEIGHT * FIELD_PAIRS_VISIBLE ) ;
Size = MAP_APPFONT ( 50 , 14 ) ;
};
CancelButton PB_CANCEL
{
SVLook = TRUE;
Pos = MAP_APPFONT ( 190, 70 + FIELD_ROW_HEIGHT * FIELD_PAIRS_VISIBLE ) ;
Size = MAP_APPFONT ( 50 , 14 ) ;
};
HelpButton PB_HELP
{
SVLook = TRUE;
Pos = MAP_APPFONT ( 244, 70 + FIELD_ROW_HEIGHT * FIELD_PAIRS_VISIBLE ) ;
Size = MAP_APPFONT ( 50 , 14 ) ;
};
String STR_LOGICAL_FIELD_NAMES
{
Text = "FirstName;LastName;Company;Department;Street;Zip;City;State;Country;PhonePriv;PhoneComp;PhoneOffice;PhoneCell;PhoneOther;Pager;Fax;EMail;URL;Title;Position;Code;AddrForm;AddrFormMail;Id;CalendarURL;InviteParticipant;Note;Altfield1;Altfield2;Altfield3;Altfield4";
// no need to translate this
// the items in this string have to be in the same order as the STR_FIELD_* strings are added to the
// field label list of the dialog
};
String STR_NO_FIELD_SELECTION
{
Text [ en-US ] = "<none>";
};
String STR_LOGICAL_FIELD_NAMES
{
Text = "FirstName;LastName;Company;Department;Street;Zip;City;State;Country;PhonePriv;PhoneComp;PhoneOffice;PhoneCell;PhoneOther;Pager;Fax;EMail;URL;Title;Position;Code;AddrForm;AddrFormMail;Id;CalendarURL;InviteParticipant;Note;Altfield1;Altfield2;Altfield3;Altfield4";
// no need to translate this
// the items in this string have to be in the same order as the STR_FIELD_* strings are added to the
// field label list of the dialog
};
String STR_FIELD_COMPANY
{
Text [ en-US ] = "Company";
};
String STR_FIELD_DEPARTMENT
{
Text [ en-US ] = "Department";
};
String STR_FIELD_FIRSTNAME
{
Text [ en-US ] = "First name";
};
String STR_FIELD_LASTNAME
{
Text [ en-US ] = "Last name";
};
String STR_FIELD_STREET
{
Text [ en-US ] = "Street";
};
String STR_FIELD_COUNTRY
{
Text [ en-US ] = "Country";
};
String STR_FIELD_ZIPCODE
{
Text [ en-US ] = "ZIP Code";
};
String STR_FIELD_CITY
{
Text [ en-US ] = "City";
};
String STR_FIELD_TITLE
{
Text [ en-US ] = "Title";
};
String STR_FIELD_POSITION
{
Text [ en-US ] = "Position";
};
String STR_FIELD_ADDRFORM
{
Text [ en-US ] = "Addr. Form";
};
String STR_FIELD_INITIALS
{
Text [ en-US ] = "Initials";
};
String STR_FIELD_SALUTATION
{
Text [ en-US ] = "Complimentary close";
};
String STR_FIELD_HOMETEL
{
Text [ en-US ] = "Tel: Home";
};
String STR_FIELD_WORKTEL
{
Text [ en-US ] = "Tel: Work";
};
String STR_FIELD_FAX
{
Text [ en-US ] = "FAX";
};
String STR_FIELD_EMAIL
{
Text [ en-US ] = "E-mail";
};
String STR_FIELD_URL
{
Text [ en-US ] = "URL";
};
String STR_FIELD_NOTE
{
Text [ en-US ] = "Note";
};
String STR_FIELD_USER1
{
Text [ en-US ] = "User 1";
};
String STR_FIELD_USER2
{
Text [ en-US ] = "User 2";
};
String STR_FIELD_USER3
{
Text [ en-US ] = "User 3";
};
String STR_FIELD_USER4
{
Text [ en-US ] = "User 4";
};
String STR_NO_FIELD_SELECTION
{
Text [ en-US ] = "<none>";
};
String STR_FIELD_ID
{
Text [ en-US ] = "ID";
};
String STR_FIELD_STATE
{
Text [ en-US ] = "State";
};
String STR_FIELD_OFFICETEL
{
Text [ en-US ] = "Tel: Office";
};
String STR_FIELD_PAGER
{
Text [ en-US ] = "Pager";
};
String STR_FIELD_MOBILE
{
Text [ en-US ] = "Mobile";
};
String STR_FIELD_TELOTHER
{
Text [ en-US ] = "Tel: Other";
};
String STR_FIELD_CALENDAR
{
Text [ en-US ] = "Calendar";
};
String STR_FIELD_INVITE
{
Text [ en-US ] = "Invite";
};
String STR_FIELD_COMPANY
{
Text [ en-US ] = "Company";
};
String STR_FIELD_DEPARTMENT
{
Text [ en-US ] = "Department";
};
String STR_FIELD_FIRSTNAME
{
Text [ en-US ] = "First name";
};
String STR_FIELD_LASTNAME
{
Text [ en-US ] = "Last name";
};
String STR_FIELD_STREET
{
Text [ en-US ] = "Street";
};
String STR_FIELD_COUNTRY
{
Text [ en-US ] = "Country";
};
String STR_FIELD_ZIPCODE
{
Text [ en-US ] = "ZIP Code";
};
String STR_FIELD_CITY
{
Text [ en-US ] = "City";
};
String STR_FIELD_TITLE
{
Text [ en-US ] = "Title";
};
String STR_FIELD_POSITION
{
Text [ en-US ] = "Position";
};
String STR_FIELD_ADDRFORM
{
Text [ en-US ] = "Addr. Form";
};
String STR_FIELD_INITIALS
{
Text [ en-US ] = "Initials";
};
String STR_FIELD_SALUTATION
{
Text [ en-US ] = "Complimentary close";
};
String STR_FIELD_HOMETEL
{
Text [ en-US ] = "Tel: Home";
};
String STR_FIELD_WORKTEL
{
Text [ en-US ] = "Tel: Work";
};
String STR_FIELD_FAX
{
Text [ en-US ] = "FAX";
};
String STR_FIELD_EMAIL
{
Text [ en-US ] = "E-mail";
};
String STR_FIELD_URL
{
Text [ en-US ] = "URL";
};
String STR_FIELD_NOTE
{
Text [ en-US ] = "Note";
};
String STR_FIELD_USER1
{
Text [ en-US ] = "User 1";
};
String STR_FIELD_USER2
{
Text [ en-US ] = "User 2";
};
String STR_FIELD_USER3
{
Text [ en-US ] = "User 3";
};
String STR_FIELD_USER4
{
Text [ en-US ] = "User 4";
};
String STR_FIELD_ID
{
Text [ en-US ] = "ID";
};
String STR_FIELD_STATE
{
Text [ en-US ] = "State";
};
String STR_FIELD_OFFICETEL
{
Text [ en-US ] = "Tel: Office";
};
String STR_FIELD_PAGER
{
Text [ en-US ] = "Pager";
};
String STR_FIELD_MOBILE
{
Text [ en-US ] = "Mobile";
};
String STR_FIELD_TELOTHER
{
Text [ en-US ] = "Tel: Other";
};
String STR_FIELD_CALENDAR
{
Text [ en-US ] = "Calendar";
};
String STR_FIELD_INVITE
{
Text [ en-US ] = "Invite";
};
/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
<?xml version="1.0" encoding="UTF-8"?>
<interface>
<!-- interface-requires gtk+ 3.0 -->
<object class="GtkDialog" id="AddressTemplateDialog">
<property name="can_focus">False</property>
<property name="border_width">6</property>
<property name="resizable">False</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>
<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">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="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="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="row_spacing">6</property>
<property name="column_spacing">12</property>
<child>
<object class="GtkLabel" id="label33">
<property name="visible">True</property>
<property name="can_focus">False</property>
<property name="xalign">0</property>
<property name="label" translatable="yes">Data source</property>
<property name="use_underline">True</property>
<property name="mnemonic_widget">datasource</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="GtkLabel" id="label43">
<property name="visible">True</property>
<property name="can_focus">False</property>
<property name="xalign">0</property>
<property name="label" translatable="yes">Table</property>
<property name="use_underline">True</property>
<property name="mnemonic_widget">datatable</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="GtkComboBoxText" id="datasource">
<property name="visible">True</property>
<property name="can_focus">False</property>
<property name="hexpand">True</property>
<property name="has_entry">True</property>
<property name="entry_text_column">0</property>
<property name="id_column">1</property>
<child internal-child="entry">
<object class="GtkEntry" id="comboboxtext-entry">
<property name="can_focus">False</property>
<property name="invisible_char"></property>
</object>
</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="GtkComboBoxText" id="datatable">
<property name="visible">True</property>
<property name="can_focus">False</property>
<property name="hexpand">True</property>
<property name="has_entry">True</property>
<property name="entry_text_column">0</property>
<property name="id_column">1</property>
<child internal-child="entry">
<object class="GtkEntry" id="comboboxtext-entry1">
<property name="can_focus">False</property>
<property name="invisible_char"></property>
</object>
</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>
<child>
<object class="GtkButton" id="admin">
<property name="label" translatable="yes">_Address Data Source...</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="left_attach">2</property>
<property name="top_attach">0</property>
<property name="width">1</property>
<property name="height">1</property>
</packing>
</child>
<child>
<placeholder/>
</child>
</object>
</child>
</object>
</child>
<child type="label">
<object class="GtkLabel" id="label100">
<property name="visible">True</property>
<property name="can_focus">False</property>
<property name="label" translatable="yes">Address Book Source</property>
<attributes>
<attribute name="weight" value="semibold"/>
</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="frame2">
<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="alignment2">
<property name="visible">True</property>
<property name="can_focus">False</property>
<property name="top_padding">6</property>
<property name="left_padding">12</property>
<child>
<object class="GtkScrolledWindow" id="scrollwindow">
<property name="visible">True</property>
<property name="can_focus">True</property>
<property name="hexpand">True</property>
<property name="vexpand">True</property>
<property name="vscrollbar_policy">always</property>
<property name="shadow_type">in</property>
<child>
<object class="GtkGrid" id="grid4">
<property name="visible">True</property>
<property name="can_focus">False</property>
<property name="hexpand">True</property>
<property name="column_spacing">24</property>
<property name="column_homogeneous">True</property>
<child>
<object class="GtkGrid" id="grid5">
<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="label0">
<property name="visible">True</property>
<property name="can_focus">False</property>
<property name="xalign">0</property>
<property name="label">label</property>
<property name="use_underline">True</property>
<property name="mnemonic_widget">box0</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="box0">
<property name="visible">True</property>
<property name="can_focus">False</property>
<property name="hexpand">True</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="label2">
<property name="visible">True</property>
<property name="can_focus">False</property>
<property name="xalign">0</property>
<property name="label">label</property>
<property name="use_underline">True</property>
<property name="mnemonic_widget">box2</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="GtkLabel" id="label4">
<property name="visible">True</property>
<property name="can_focus">False</property>
<property name="xalign">0</property>
<property name="label">label</property>
<property name="use_underline">True</property>
<property name="mnemonic_widget">box4</property>
</object>
<packing>
<property name="left_attach">0</property>
<property name="top_attach">2</property>
<property name="width">1</property>
<property name="height">1</property>
</packing>
</child>
<child>
<object class="GtkLabel" id="label6">
<property name="visible">True</property>
<property name="can_focus">False</property>
<property name="xalign">0</property>
<property name="label">label</property>
<property name="use_underline">True</property>
<property name="mnemonic_widget">box6</property>
</object>
<packing>
<property name="left_attach">0</property>
<property name="top_attach">3</property>
<property name="width">1</property>
<property name="height">1</property>
</packing>
</child>
<child>
<object class="GtkLabel" id="label8">
<property name="visible">True</property>
<property name="can_focus">False</property>
<property name="xalign">0</property>
<property name="label">label</property>
<property name="use_underline">True</property>
<property name="mnemonic_widget">box8</property>
</object>
<packing>
<property name="left_attach">0</property>
<property name="top_attach">4</property>
<property name="width">1</property>
<property name="height">1</property>
</packing>
</child>
<child>
<object class="GtkComboBoxText" id="box2">
<property name="visible">True</property>
<property name="can_focus">False</property>
<property name="hexpand">True</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">1</property>
<property name="width">1</property>
<property name="height">1</property>
</packing>
</child>
<child>
<object class="GtkComboBoxText" id="box4">
<property name="visible">True</property>
<property name="can_focus">False</property>
<property name="hexpand">True</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">2</property>
<property name="width">1</property>
<property name="height">1</property>
</packing>
</child>
<child>
<object class="GtkComboBoxText" id="box6">
<property name="visible">True</property>
<property name="can_focus">False</property>
<property name="hexpand">True</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">3</property>
<property name="width">1</property>
<property name="height">1</property>
</packing>
</child>
<child>
<object class="GtkComboBoxText" id="box8">
<property name="visible">True</property>
<property name="can_focus">False</property>
<property name="hexpand">True</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">4</property>
<property name="width">1</property>
<property name="height">1</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="GtkGrid" id="grid6">
<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="label1">
<property name="visible">True</property>
<property name="can_focus">False</property>
<property name="xalign">0</property>
<property name="label">label</property>
<property name="use_underline">True</property>
<property name="mnemonic_widget">box1</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="box1">
<property name="visible">True</property>
<property name="can_focus">False</property>
<property name="hexpand">True</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="label3">
<property name="visible">True</property>
<property name="can_focus">False</property>
<property name="xalign">0</property>
<property name="label">label</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="GtkLabel" id="label5">
<property name="visible">True</property>
<property name="can_focus">False</property>
<property name="xalign">0</property>
<property name="label">label</property>
<property name="use_underline">True</property>
<property name="mnemonic_widget">box5</property>
</object>
<packing>
<property name="left_attach">0</property>
<property name="top_attach">2</property>
<property name="width">1</property>
<property name="height">1</property>
</packing>
</child>
<child>
<object class="GtkLabel" id="label7">
<property name="visible">True</property>
<property name="can_focus">False</property>
<property name="xalign">0</property>
<property name="label">label</property>
<property name="use_underline">True</property>
<property name="mnemonic_widget">box7</property>
</object>
<packing>
<property name="left_attach">0</property>
<property name="top_attach">3</property>
<property name="width">1</property>
<property name="height">1</property>
</packing>
</child>
<child>
<object class="GtkLabel" id="label9">
<property name="visible">True</property>
<property name="can_focus">False</property>
<property name="xalign">0</property>
<property name="label">label</property>
<property name="use_underline">True</property>
<property name="mnemonic_widget">box9</property>
</object>
<packing>
<property name="left_attach">0</property>
<property name="top_attach">4</property>
<property name="width">1</property>
<property name="height">1</property>
</packing>
</child>
<child>
<object class="GtkComboBoxText" id="box3">
<property name="visible">True</property>
<property name="can_focus">False</property>
<property name="hexpand">True</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">1</property>
<property name="width">1</property>
<property name="height">1</property>
</packing>
</child>
<child>
<object class="GtkComboBoxText" id="box5">
<property name="visible">True</property>
<property name="can_focus">False</property>
<property name="hexpand">True</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">2</property>
<property name="width">1</property>
<property name="height">1</property>
</packing>
</child>
<child>
<object class="GtkComboBoxText" id="box7">
<property name="visible">True</property>
<property name="can_focus">False</property>
<property name="hexpand">True</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">3</property>
<property name="width">1</property>
<property name="height">1</property>
</packing>
</child>
<child>
<object class="GtkComboBoxText" id="box9">
<property name="visible">True</property>
<property name="can_focus">False</property>
<property name="hexpand">True</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">4</property>
<property name="width">1</property>
<property name="height">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>
</object>
</child>
</object>
</child>
</object>
</child>
<child type="label">
<object class="GtkLabel" id="label23">
<property name="visible">True</property>
<property name="can_focus">False</property>
<property name="label" translatable="yes">Field Assignment</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>
<packing>
<property name="expand">False</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>
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment