summaryrefslogtreecommitdiff
path: root/reportdesign
diff options
context:
space:
mode:
authorCaolán McNamara <caolanm@redhat.com>2014-09-03 19:20:01 +0100
committerCaolán McNamara <caolanm@redhat.com>2014-09-03 22:48:44 +0100
commite12b6b789e3980b1aac5c02f893edae1979adfe5 (patch)
tree32d8ba6a18ae1a1baec03435961eb364c1b7d2dc /reportdesign
parent1bacc1771007a3b0a28454e371aaa28dafcc5eb3 (diff)
convert RID_GROUPS_SORTING floating window to .ui
(recovers icons for up/down/delete in the process) Change-Id: I85a8de2ebe1321f972000a680a9f4308c26ae4c3
Diffstat (limited to 'reportdesign')
-rw-r--r--reportdesign/UIConfig_dbreport.mk1
-rw-r--r--reportdesign/inc/RptResId.hrc12
-rw-r--r--reportdesign/inc/helpids.hrc6
-rw-r--r--reportdesign/source/ui/dlg/CondFormat.src29
-rw-r--r--reportdesign/source/ui/dlg/Condition.cxx13
-rw-r--r--reportdesign/source/ui/dlg/GroupsSorting.cxx301
-rw-r--r--reportdesign/source/ui/dlg/GroupsSorting.hrc56
-rw-r--r--reportdesign/source/ui/dlg/GroupsSorting.src255
-rw-r--r--reportdesign/source/ui/inc/GroupsSorting.hxx53
-rw-r--r--reportdesign/source/ui/report/ReportController.cxx4
-rw-r--r--reportdesign/uiconfig/dbreport/ui/floatingsort.ui453
11 files changed, 565 insertions, 618 deletions
diff --git a/reportdesign/UIConfig_dbreport.mk b/reportdesign/UIConfig_dbreport.mk
index 95fc0fa6b625..ffad8f3bd161 100644
--- a/reportdesign/UIConfig_dbreport.mk
+++ b/reportdesign/UIConfig_dbreport.mk
@@ -41,6 +41,7 @@ $(eval $(call gb_UIConfig_add_uifiles,modules/dbreport,\
reportdesign/uiconfig/dbreport/ui/conditionwin \
reportdesign/uiconfig/dbreport/ui/datetimedialog \
reportdesign/uiconfig/dbreport/ui/floatingnavigator \
+ reportdesign/uiconfig/dbreport/ui/floatingsort \
reportdesign/uiconfig/dbreport/ui/pagedialog \
reportdesign/uiconfig/dbreport/ui/pagenumberdialog \
))
diff --git a/reportdesign/inc/RptResId.hrc b/reportdesign/inc/RptResId.hrc
index c60e14ad2439..60a318ab9b8c 100644
--- a/reportdesign/inc/RptResId.hrc
+++ b/reportdesign/inc/RptResId.hrc
@@ -38,7 +38,6 @@
#define RID_MISC_START RID_RPT_START
// Dialog Control Id's -----------------------------------------------------------
-#define RID_GROUPS_SORTING ( RID_DIALOG_START + 0 )
#define RID_DATETIME_DLG ( RID_DIALOG_START + 2 )
#define WIN_CONDITION ( RID_DIALOG_START + 4 )
@@ -225,13 +224,8 @@
#define RID_MENU_NAVIGATOR ( RID_MENU_START + 2 )
#define RID_TB_SORTING ( RID_MENU_START + 3 )
-// image lists -----------------------------------------------------------------------
-#define IMG_CONDFORMAT_DLG_SC (RID_IMAGELIST_START + 0)
-// free
-#define IMG_CONDFORMAT_DLG_LC (RID_IMAGELIST_START + 2)
// free
#define RID_SVXIMGLIST_RPTEXPL (RID_IMAGELIST_START + 4)
-#define IMGLST_GROUPSORT_DLG_SC (RID_IMAGELIST_START + 6)
// free
#define IMG_ADDFIELD_DLG_SC (RID_IMAGELIST_START + 8)
// free
@@ -252,12 +246,6 @@
#define RID_STR_VERTICAL_ALIGN_CONST (RID_UNTYPED_START + 7)
#define RID_STR_PARAADJUST_CONST (RID_UNTYPED_START + 8)
-// toolbox lists ---------------------------------------------------------------------
-
-#define SID_RPT_GROUPSORT_MOVE_UP ( RID_TOOLBOX_START + 0 )
-#define SID_RPT_GROUPSORT_MOVE_DOWN ( RID_TOOLBOX_START + 1 )
-#define SID_RPT_GROUPSORT_DELETE ( RID_TOOLBOX_START + 2 )
-
#endif // _RPTUI_DLGRESID_HRC
/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/reportdesign/inc/helpids.hrc b/reportdesign/inc/helpids.hrc
index 97534904b649..7a41d18e997c 100644
--- a/reportdesign/inc/helpids.hrc
+++ b/reportdesign/inc/helpids.hrc
@@ -39,8 +39,6 @@
#define HID_RPT_STARTMARKER "REPORTDESIGN_HID_RPT_STARTMARKER"
#define HID_RPT_FIELDEXPRESSION "REPORTDESIGN_HID_RPT_FIELDEXPRESSION"
#define HID_RPT_SORTORDER "REPORTDESIGN_HID_RPT_SORTORDER"
-#define HID_RPT_GROUPSBRW "REPORTDESIGN_HID_RPT_GROUPSBRW"
-#define HID_RPT_GROUPSSORTING_DLG "REPORTDESIGN_HID_RPT_GROUPSSORTING_DLG"
#define HID_RPT_POPUP_COLOR_CTRL "REPORTDESIGN_HID_RPT_POPUP_COLOR_CTRL"
#define HID_RPT_POPUP_COLOR "REPORTDESIGN_HID_RPT_POPUP_COLOR"
#define HID_RPT_FIELD_SEL "REPORTDESIGN_HID_RPT_FIELD_SEL"
@@ -99,10 +97,6 @@
#define HID_RPT_PROP_BACKTRANSPARENT "REPORTDESIGN_HID_RPT_PROP_BACKTRANSPARENT"
#define HID_RPT_PROP_CONTROLBACKGROUNDTRANSPARENT "REPORTDESIGN_HID_RPT_PROP_CONTROLBACKGROUNDTRANSPARENT"
-#define HID_RPT_GROUPSORT_MOVE_UP "REPORTDESIGN_HID_RPT_GROUPSORT_MOVE_UP"
-#define HID_RPT_GROUPSORT_MOVE_DOWN "REPORTDESIGN_HID_RPT_GROUPSORT_MOVE_DOWN"
-#define HID_RPT_GROUPSORT_DELETE "REPORTDESIGN_HID_RPT_GROUPSORT_DELETE"
-
#endif //RTPUI_REPORTDESIGN_HELPID_HRC
/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/reportdesign/source/ui/dlg/CondFormat.src b/reportdesign/source/ui/dlg/CondFormat.src
index 5f933a8cc72a..b45a7f81ab26 100644
--- a/reportdesign/source/ui/dlg/CondFormat.src
+++ b/reportdesign/source/ui/dlg/CondFormat.src
@@ -47,41 +47,12 @@ String STR_TRANSPARENT
#define MASKCOLOR MaskColor = Color { Red = 0xFFFF; Green = 0x0000; Blue = 0xFFFF; }
-ImageList IMG_CONDFORMAT_DLG_SC
-{
- MASKCOLOR;
- FileList =
- {
- < "cmd/sc_bold.png" ; SID_ATTR_CHAR_WEIGHT ; > ;
- < "cmd/sc_italic.png" ; SID_ATTR_CHAR_POSTURE ; > ;
- < "cmd/sc_underline.png" ; SID_ATTR_CHAR_UNDERLINE ; > ;
- < "cmd/sc_backgroundcolor.png" ; SID_BACKGROUND_COLOR ; > ;
- < "cmd/sc_fontcolor.png" ; SID_ATTR_CHAR_COLOR2 ; > ;
- < "cmd/sc_fontdialog.png" ; SID_CHAR_DLG ; > ;
- };
-};
-
-ImageList IMG_CONDFORMAT_DLG_LC
-{
- MASKCOLOR;
- FileList =
- {
- < "cmd/lc_bold.png" ; SID_ATTR_CHAR_WEIGHT ; > ;
- < "cmd/lc_italic.png" ; SID_ATTR_CHAR_POSTURE ; > ;
- < "cmd/lc_underline.png" ; SID_ATTR_CHAR_UNDERLINE ; > ;
- < "cmd/lc_backgroundcolor.png" ; SID_BACKGROUND_COLOR ; > ;
- < "cmd/lc_fontcolor.png" ; SID_ATTR_CHAR_COLOR2 ; > ;
- < "cmd/lc_fontdialog.png" ; SID_CHAR_DLG ; > ;
- };
-};
-
ImageList 31000
{
MASKCOLOR;
prefix = "sc";
IdList = {05500;};
IdCount = 1;
-
};
ToolBox RID_TB_SORTING
diff --git a/reportdesign/source/ui/dlg/Condition.cxx b/reportdesign/source/ui/dlg/Condition.cxx
index c7d64a7cf139..016b88fd8c58 100644
--- a/reportdesign/source/ui/dlg/Condition.cxx
+++ b/reportdesign/source/ui/dlg/Condition.cxx
@@ -361,23 +361,10 @@ void Condition::ApplyCommand( sal_uInt16 _nCommandId, const ::Color& _rColor)
void Condition::setImageList(sal_Int16 /*_eBitmapSet*/)
{
-#if 0
- sal_Int16 nN = IMG_CONDFORMAT_DLG_SC;
- if ( _eBitmapSet == SFX_SYMBOLS_SIZE_LARGE )
- nN = IMG_CONDFORMAT_DLG_LC;
- m_pActions->SetImageList(ImageList(ModuleRes(nN)));
-#endif
}
void Condition::resizeControls(const Size& /*_rDiff*/)
{
-#if 0
- // we use large images so we must change them
- if ( _rDiff.Width() || _rDiff.Height() )
- {
- Invalidate();
- }
-#endif
}
void Condition::GetFocus()
diff --git a/reportdesign/source/ui/dlg/GroupsSorting.cxx b/reportdesign/source/ui/dlg/GroupsSorting.cxx
index 95573099dcb0..ea4ad8d434d1 100644
--- a/reportdesign/source/ui/dlg/GroupsSorting.cxx
+++ b/reportdesign/source/ui/dlg/GroupsSorting.cxx
@@ -17,7 +17,6 @@
* the License at http://www.apache.org/licenses/LICENSE-2.0 .
*/
#include "GroupsSorting.hxx"
-#include "GroupsSorting.hrc"
#include <connectivity/dbtools.hxx>
#include <svtools/editbrowsebox.hxx>
#include <svtools/imgdef.hxx>
@@ -40,7 +39,6 @@
#include <cppuhelper/implbase1.hxx>
#include <comphelper/property.hxx>
-#include <vcl/mnemonic.hxx>
#include <vcl/msgbox.hxx>
#include <vcl/settings.hxx>
@@ -97,7 +95,7 @@ class OFieldExpressionControl : public TContainerListenerBase
bool SaveModified(bool _bAppend);
public:
- OFieldExpressionControl( OGroupsSortingDialog* _pParent,const ResId& _rResId);
+ OFieldExpressionControl(OGroupsSortingDialog* _pParentDialog, Window *_pParent);
virtual ~OFieldExpressionControl();
// XEventListener
@@ -107,6 +105,8 @@ public:
virtual void SAL_CALL elementReplaced(const ::com::sun::star::container::ContainerEvent& rEvent) throw(::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
virtual void SAL_CALL elementRemoved(const ::com::sun::star::container::ContainerEvent& rEvent) throw(::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
+ virtual Size GetOptimalSize() const SAL_OVERRIDE;
+
void fillColumns(const uno::Reference< container::XNameAccess>& _xColumns);
void lateInit();
bool IsDeleteAllowed( );
@@ -164,18 +164,16 @@ public:
};
// class OFieldExpressionControl
-
-
-OFieldExpressionControl::OFieldExpressionControl( OGroupsSortingDialog* _pParent,const ResId& _rResId )
- :EditBrowseBox( _pParent, _rResId,EBBF_NONE, WB_TABSTOP | BROWSER_COLUMNSELECTION | BROWSER_MULTISELECTION | BROWSER_AUTOSIZE_LASTCOL |
- BROWSER_KEEPSELECTION | BROWSER_HLINESFULL | BROWSER_VLINESFULL)
+OFieldExpressionControl::OFieldExpressionControl(OGroupsSortingDialog* _pParentDialog, Window *_pParent)
+ :EditBrowseBox( _pParent, EBBF_NONE, WB_TABSTOP | BROWSER_COLUMNSELECTION | BROWSER_MULTISELECTION | BROWSER_AUTOSIZE_LASTCOL |
+ BROWSER_KEEPSELECTION | BROWSER_HLINESFULL | BROWSER_VLINESFULL)
,m_aGroupPositions(GROUPS_START_LEN,-1)
,m_pComboCell(NULL)
,m_nDataPos(-1)
,m_nCurrentPos(-1)
,m_nPasteEvent(0)
,m_nDeleteEvent(0)
- ,m_pParent(_pParent)
+ ,m_pParent(_pParentDialog)
,m_bIgnoreEvent(false)
{
SetBorderStyle(WINDOW_BORDER_MONO);
@@ -909,42 +907,39 @@ void OFieldExpressionControl::InsertRows( long nRow )
RowInserted( nRow, nSize, true );
}
-
+Size OFieldExpressionControl::GetOptimalSize() const
+{
+ return LogicToPixel(Size(106, 75), MAP_APPFONT);
+}
// class OGroupsSortingDialog
-
-OGroupsSortingDialog::OGroupsSortingDialog( Window* _pParent
- ,bool _bReadOnly
- ,OReportController* _pController)
- : FloatingWindow( _pParent, ModuleRes(RID_GROUPS_SORTING) )
- ,OPropertyChangeListener(m_aMutex)
- ,m_aFL2(this, ModuleRes(FL_SEPARATOR2) )
- ,m_aMove(this, ModuleRes(FT_MOVELABEL) )
- ,m_aToolBox(this, ModuleRes(TB_TOOLBOX) )
-
- ,m_aFL3(this, ModuleRes(FL_SEPARATOR3) )
- ,m_aOrder(this, ModuleRes(FT_ORDER) )
- ,m_aOrderLst(this, ModuleRes(LST_ORDER) )
- ,m_aHeader(this, ModuleRes(FT_HEADER) )
- ,m_aHeaderLst(this, ModuleRes(LST_HEADERLST) )
- ,m_aFooter(this, ModuleRes(FT_FOOTER) )
- ,m_aFooterLst(this, ModuleRes(LST_FOOTERLST) )
- ,m_aGroupOn(this, ModuleRes(FT_GROUPON) )
- ,m_aGroupOnLst(this, ModuleRes(LST_GROUPONLST) )
- ,m_aGroupInterval(this, ModuleRes(FT_GROUPINTERVAL) )
- ,m_aGroupIntervalEd(this, ModuleRes(ED_GROUPINTERVALLST) )
- ,m_aKeepTogether(this, ModuleRes(FT_KEEPTOGETHER) )
- ,m_aKeepTogetherLst(this, ModuleRes(LST_KEEPTOGETHERLST) )
- ,m_aFL(this, ModuleRes(FL_SEPARATOR1) )
- ,m_aHelpWindow(this, ModuleRes(HELP_FIELD) )
- ,m_pFieldExpression( new OFieldExpressionControl(this,ModuleRes(WND_CONTROL)))
- ,m_pController(_pController)
- ,m_pCurrentGroupListener(NULL)
- ,m_xGroups(m_pController->getReportDefinition()->getGroups())
- ,m_bReadOnly(_bReadOnly)
+OGroupsSortingDialog::OGroupsSortingDialog(Window* _pParent, bool _bReadOnly,
+ OReportController* _pController)
+ : FloatingWindow(_pParent, "FloatingSort", "modules/dbreport/ui/floatingsort.ui")
+ , OPropertyChangeListener(m_aMutex)
+ , m_pController(_pController)
+ , m_pCurrentGroupListener(NULL)
+ , m_xGroups(m_pController->getReportDefinition()->getGroups())
+ , m_bReadOnly(_bReadOnly)
{
-
- Control* pControlsLst[] = { &m_aHeaderLst, &m_aFooterLst, &m_aGroupOnLst, &m_aKeepTogetherLst, &m_aOrderLst, &m_aGroupIntervalEd};
+ get(m_pToolBox, "toolbox");
+ m_nMoveUpId = m_pToolBox->GetItemId(0);
+ m_nMoveDownId = m_pToolBox->GetItemId(1);
+ m_nDeleteId = m_pToolBox->GetItemId(2);
+ get(m_pOrderLst, "sorting");
+ get(m_pHeaderLst, "header");
+ get(m_pFooterLst, "footer");
+ get(m_pGroupOnLst, "group");
+ get(m_pGroupIntervalEd, "interval");
+ get(m_pKeepTogetherLst, "keep");
+ get(m_pHelpWindow, "helptext");
+ m_pHelpWindow->set_height_request(GetTextHeight() * 4);
+ get(m_pProperties, "properties");
+ m_pFieldExpression = new OFieldExpressionControl(this, get<Window>("box"));
+ m_pFieldExpression->set_hexpand(true);
+ m_pFieldExpression->set_vexpand(true);
+
+ Control* pControlsLst[] = { m_pHeaderLst, m_pFooterLst, m_pGroupOnLst, m_pKeepTogetherLst, m_pOrderLst, m_pGroupIntervalEd};
for (size_t i = 0; i < sizeof (pControlsLst) / sizeof (pControlsLst[0]); ++i)
{
pControlsLst[i]->SetGetFocusHdl(LINK(this, OGroupsSortingDialog, OnControlFocusGot));
@@ -955,30 +950,6 @@ OGroupsSortingDialog::OGroupsSortingDialog( Window* _pParent
for (size_t i = 0; i < (sizeof (pControlsLst) / sizeof (pControlsLst[0])) - 1; ++i)
static_cast<ListBox*>(pControlsLst[i])->SetSelectHdl(LINK(this,OGroupsSortingDialog,LBChangeHdl));
- Control* pControls[] = { &m_aHeader, &m_aFooter, &m_aGroupOn, &m_aGroupInterval, &m_aKeepTogether, &m_aOrder
- , &m_aMove,&m_aFL2};
- sal_Int32 nMaxTextWidth = 0;
- MnemonicGenerator aMnemonicGenerator;
- for (size_t i = 0; i < sizeof (pControlsLst) / sizeof (pControlsLst[0]); ++i)
- aMnemonicGenerator.RegisterMnemonic( pControls[i]->GetText() );
-
- for (size_t i = 0; i < sizeof (pControlsLst) / sizeof (pControlsLst[0]); ++i)
- {
- pControls[i]->Show(true);
- OUString sText = pControls[i]->GetText();
- OUString sNewText = aMnemonicGenerator.CreateMnemonic(sText);
- if ( sText != sNewText )
- pControls[i]->SetText(sNewText);
- sal_Int32 nTextWidth = GetTextWidth(sNewText);
- nMaxTextWidth = ::std::max<sal_Int32>(nTextWidth,nMaxTextWidth);
- }
-
- Size aSize(UNRELATED_CONTROLS, PAGE_HEIGHT);
- Size aSpace = LogicToPixel( aSize, MAP_APPFONT );
- Size aOutSize(nMaxTextWidth + m_aHeader.GetSizePixel().Width() + 3*aSpace.Width(),aSpace.Height());
- SetMinOutputSizePixel(aOutSize);
- SetOutputSizePixel(aOutSize);
-
m_pReportListener = new OPropertyChangeMultiplexer(this,m_pController->getReportDefinition().get());
m_pReportListener->addProperty(PROPERTY_COMMAND);
m_pReportListener->addProperty(PROPERTY_COMMANDTYPE);
@@ -987,23 +958,16 @@ OGroupsSortingDialog::OGroupsSortingDialog( Window* _pParent
fillColumns();
m_pFieldExpression->Show();
- m_aHelpWindow.SetControlBackground( GetSettings().GetStyleSettings().GetFaceColor() );
+ m_pHelpWindow->SetControlBackground( GetSettings().GetStyleSettings().GetFaceColor() );
- m_pFieldExpression->SetZOrder(&m_aFL2, WINDOW_ZORDER_BEHIND);
-
- m_aMove.SetZOrder(m_pFieldExpression, WINDOW_ZORDER_BEHIND);
- m_aToolBox.SetStyle(m_aToolBox.GetStyle()|WB_LINESPACING);
- m_aToolBox.SetSelectHdl(LINK(this, OGroupsSortingDialog, OnFormatAction));
- m_aToolBox.SetImageListProvider(this);
- setToolBox(&m_aToolBox);
+ m_pToolBox->SetStyle(m_pToolBox->GetStyle()|WB_LINESPACING);
+ m_pToolBox->SetSelectHdl(LINK(this, OGroupsSortingDialog, OnFormatAction));
checkButtons(0);
- Resize();
- FreeResource();
+ Show();
}
-
OGroupsSortingDialog::~OGroupsSortingDialog()
{
delete m_pFieldExpression;
@@ -1013,7 +977,6 @@ OGroupsSortingDialog::~OGroupsSortingDialog()
m_pCurrentGroupListener->dispose();
}
-
void OGroupsSortingDialog::UpdateData( )
{
m_pFieldExpression->Invalidate();
@@ -1027,20 +990,7 @@ void OGroupsSortingDialog::DisplayData( sal_Int32 _nRow )
{
sal_Int32 nGroupPos = m_pFieldExpression->getGroupPosition(_nRow);
bool bEmpty = nGroupPos == NO_GROUP;
- m_aHeaderLst.Enable(!bEmpty);
- m_aFooterLst.Enable(!bEmpty);
- m_aGroupOnLst.Enable(!bEmpty);
- m_aGroupIntervalEd.Enable(!bEmpty);
- m_aKeepTogetherLst.Enable(!bEmpty);
- m_aOrderLst.Enable(!bEmpty);
-
- m_aFL3.Enable(!bEmpty);
- m_aHeader.Enable(!bEmpty);
- m_aFooter.Enable(!bEmpty);
- m_aGroupOn.Enable(!bEmpty);
- m_aGroupInterval.Enable(!bEmpty);
- m_aKeepTogether.Enable(!bEmpty);
- m_aOrder.Enable(!bEmpty);
+ m_pProperties->Enable(!bEmpty);
checkButtons(_nRow);
@@ -1066,26 +1016,26 @@ void OGroupsSortingDialog::SaveData( sal_Int32 _nRow)
return;
uno::Reference< report::XGroup> xGroup = getGroup(nGroupPos);
- if ( m_aHeaderLst.IsValueChangedFromSaved() )
- xGroup->setHeaderOn( m_aHeaderLst.GetSelectEntryPos() == 0 );
- if ( m_aFooterLst.IsValueChangedFromSaved() )
- xGroup->setFooterOn( m_aFooterLst.GetSelectEntryPos() == 0 );
- if ( m_aKeepTogetherLst.IsValueChangedFromSaved() )
- xGroup->setKeepTogether( m_aKeepTogetherLst.GetSelectEntryPos() );
- if ( m_aGroupOnLst.IsValueChangedFromSaved() )
+ if ( m_pHeaderLst->IsValueChangedFromSaved() )
+ xGroup->setHeaderOn( m_pHeaderLst->GetSelectEntryPos() == 0 );
+ if ( m_pFooterLst->IsValueChangedFromSaved() )
+ xGroup->setFooterOn( m_pFooterLst->GetSelectEntryPos() == 0 );
+ if ( m_pKeepTogetherLst->IsValueChangedFromSaved() )
+ xGroup->setKeepTogether( m_pKeepTogetherLst->GetSelectEntryPos() );
+ if ( m_pGroupOnLst->IsValueChangedFromSaved() )
{
- sal_Int16 nGroupOn = static_cast<sal_Int16>(reinterpret_cast<sal_IntPtr>(m_aGroupOnLst.GetEntryData(m_aGroupOnLst.GetSelectEntryPos())));
+ sal_Int16 nGroupOn = static_cast<sal_Int16>(reinterpret_cast<sal_IntPtr>(m_pGroupOnLst->GetEntryData(m_pGroupOnLst->GetSelectEntryPos())));
xGroup->setGroupOn( nGroupOn );
}
- if ( m_aGroupIntervalEd.IsValueChangedFromSaved() )
+ if ( m_pGroupIntervalEd->IsValueChangedFromSaved() )
{
- xGroup->setGroupInterval( static_cast<sal_Int32>(m_aGroupIntervalEd.GetValue()) );
- m_aGroupIntervalEd.SaveValue();
+ xGroup->setGroupInterval( static_cast<sal_Int32>(m_pGroupIntervalEd->GetValue()) );
+ m_pGroupIntervalEd->SaveValue();
}
- if ( m_aOrderLst.IsValueChangedFromSaved() )
- xGroup->setSortAscending( m_aOrderLst.GetSelectEntryPos() == 0 );
+ if ( m_pOrderLst->IsValueChangedFromSaved() )
+ xGroup->setSortAscending( m_pOrderLst->GetSelectEntryPos() == 0 );
- ListBox* pControls[] = { &m_aHeaderLst,&m_aFooterLst,&m_aGroupOnLst,&m_aKeepTogetherLst,&m_aOrderLst};
+ ListBox* pControls[] = { m_pHeaderLst, m_pFooterLst, m_pGroupOnLst, m_pKeepTogetherLst, m_pOrderLst};
for (size_t i = 0; i < sizeof(pControls)/sizeof(pControls[0]); ++i)
pControls[i]->SaveValue();
}
@@ -1117,7 +1067,7 @@ IMPL_LINK(OGroupsSortingDialog, OnControlFocusGot, Control*, pControl )
{
if ( m_pFieldExpression && m_pFieldExpression->getExpressionControl() )
{
- Control* pControls[] = { m_pFieldExpression->getExpressionControl(),&m_aHeaderLst,&m_aFooterLst,&m_aGroupOnLst,&m_aGroupIntervalEd,&m_aKeepTogetherLst,&m_aOrderLst};
+ Control* pControls[] = { m_pFieldExpression->getExpressionControl(), m_pHeaderLst, m_pFooterLst, m_pGroupOnLst, m_pGroupIntervalEd, m_pKeepTogetherLst, m_pOrderLst};
for (size_t i = 0; i < sizeof(pControls)/sizeof(pControls[0]); ++i)
{
if ( pControl == pControls[i] )
@@ -1138,9 +1088,9 @@ IMPL_LINK(OGroupsSortingDialog, OnControlFocusGot, Control*, pControl )
IMPL_LINK(OGroupsSortingDialog, OnControlFocusLost, Control*, pControl )
{
- if ( m_pFieldExpression && pControl == &m_aGroupIntervalEd )
+ if (m_pFieldExpression && pControl == m_pGroupIntervalEd)
{
- if ( m_aGroupIntervalEd.IsModified() )
+ if ( m_pGroupIntervalEd->IsModified() )
SaveData(m_pFieldExpression->GetCurRow());
}
return 0L;
@@ -1149,7 +1099,7 @@ IMPL_LINK(OGroupsSortingDialog, OnControlFocusLost, Control*, pControl )
IMPL_LINK( OGroupsSortingDialog, OnFormatAction, ToolBox*, /*NOTINTERESTEDIN*/ )
{
- sal_uInt16 nCommand = m_aToolBox.GetCurItemId();
+ sal_uInt16 nCommand = m_pToolBox->GetCurItemId();
if ( m_pFieldExpression )
{
@@ -1161,15 +1111,15 @@ IMPL_LINK( OGroupsSortingDialog, OnFormatAction, ToolBox*, /*NOTINTERESTEDIN*/ )
aClipboardList.realloc(1);
aClipboardList[0] = m_xGroups->getByIndex(nGroupPos);
}
- if ( nCommand == SID_RPT_GROUPSORT_MOVE_UP )
+ if ( nCommand == m_nMoveUpId )
{
--nIndex;
}
- if ( nCommand == SID_RPT_GROUPSORT_MOVE_DOWN )
+ if ( nCommand == m_nMoveDownId )
{
++nIndex;
}
- if ( nCommand == SID_RPT_GROUPSORT_DELETE )
+ if ( nCommand == m_nDeleteId )
{
Application::PostUserEvent( LINK(m_pFieldExpression, OFieldExpressionControl, DelayedDelete) );
}
@@ -1195,12 +1145,12 @@ IMPL_LINK( OGroupsSortingDialog, LBChangeHdl, ListBox*, pListBox )
{
sal_Int32 nRow = m_pFieldExpression->GetCurRow();
sal_Int32 nGroupPos = m_pFieldExpression->getGroupPosition(nRow);
- if ( pListBox != &m_aHeaderLst && pListBox != &m_aFooterLst)
+ if (pListBox != m_pHeaderLst && pListBox != m_pFooterLst)
{
if ( pListBox->IsValueChangedFromSaved() )
SaveData(nRow);
- if ( pListBox == &m_aGroupOnLst )
- m_aGroupIntervalEd.Enable( pListBox->GetSelectEntryPos() != 0 );
+ if ( pListBox == m_pGroupOnLst )
+ m_pGroupIntervalEd->Enable( pListBox->GetSelectEntryPos() != 0 );
}
else if ( nGroupPos != NO_GROUP )
{
@@ -1209,13 +1159,13 @@ IMPL_LINK( OGroupsSortingDialog, LBChangeHdl, ListBox*, pListBox )
aArgs[1].Name = PROPERTY_GROUP;
aArgs[1].Value <<= xGroup;
- if ( &m_aHeaderLst == pListBox )
+ if ( m_pHeaderLst == pListBox )
aArgs[0].Name = PROPERTY_HEADERON;
else
aArgs[0].Name = PROPERTY_FOOTERON;
aArgs[0].Value <<= pListBox->GetSelectEntryPos() == 0;
- m_pController->executeChecked(&m_aHeaderLst == pListBox ? SID_GROUPHEADER : SID_GROUPFOOTER,aArgs);
+ m_pController->executeChecked(m_pHeaderLst == pListBox ? SID_GROUPHEADER : SID_GROUPFOOTER,aArgs);
m_pFieldExpression->InvalidateHandleColumn();
}
}
@@ -1224,7 +1174,7 @@ IMPL_LINK( OGroupsSortingDialog, LBChangeHdl, ListBox*, pListBox )
void OGroupsSortingDialog::showHelpText(sal_uInt16 _nResId)
{
- m_aHelpWindow.SetText(OUString(ModuleRes(_nResId)));
+ m_pHelpWindow->SetText(OUString(ModuleRes(_nResId)));
}
void OGroupsSortingDialog::_propertyChanged(const beans::PropertyChangeEvent& _rEvent) throw( uno::RuntimeException)
@@ -1244,14 +1194,14 @@ void OGroupsSortingDialog::fillColumns()
void OGroupsSortingDialog::displayGroup(const uno::Reference<report::XGroup>& _xGroup)
{
- m_aHeaderLst.SelectEntryPos(_xGroup->getHeaderOn() ? 0 : 1 );
- m_aFooterLst.SelectEntryPos(_xGroup->getFooterOn() ? 0 : 1 );
+ m_pHeaderLst->SelectEntryPos(_xGroup->getHeaderOn() ? 0 : 1 );
+ m_pFooterLst->SelectEntryPos(_xGroup->getFooterOn() ? 0 : 1 );
sal_Int32 nDataType = getColumnDataType(_xGroup->getExpression());
// first clear whole group on list
- while(m_aGroupOnLst.GetEntryCount() > 1 )
+ while(m_pGroupOnLst->GetEntryCount() > 1 )
{
- m_aGroupOnLst.RemoveEntry(1);
+ m_pGroupOnLst->RemoveEntry(1);
}
switch(nDataType)
@@ -1259,8 +1209,8 @@ void OGroupsSortingDialog::displayGroup(const uno::Reference<report::XGroup>& _x
case sdbc::DataType::LONGVARCHAR:
case sdbc::DataType::VARCHAR:
case sdbc::DataType::CHAR:
- m_aGroupOnLst.InsertEntry(OUString(ModuleRes(STR_RPT_PREFIXCHARS)));
- m_aGroupOnLst.SetEntryData(1,reinterpret_cast<void*>(report::GroupOn::PREFIX_CHARACTERS));
+ m_pGroupOnLst->InsertEntry(OUString(ModuleRes(STR_RPT_PREFIXCHARS)));
+ m_pGroupOnLst->SetEntryData(1,reinterpret_cast<void*>(report::GroupOn::PREFIX_CHARACTERS));
break;
case sdbc::DataType::DATE:
case sdbc::DataType::TIME:
@@ -1269,14 +1219,14 @@ void OGroupsSortingDialog::displayGroup(const uno::Reference<report::XGroup>& _x
sal_uInt16 nIds[] = { STR_RPT_YEAR, STR_RPT_QUARTER,STR_RPT_MONTH,STR_RPT_WEEK,STR_RPT_DAY,STR_RPT_HOUR,STR_RPT_MINUTE };
for (sal_uInt16 i = 0; i < sizeof (nIds) / sizeof (nIds[0]); ++i)
{
- m_aGroupOnLst.InsertEntry(OUString(ModuleRes(nIds[i])));
- m_aGroupOnLst.SetEntryData(i+1,reinterpret_cast<void*>(i+2));
+ m_pGroupOnLst->InsertEntry(OUString(ModuleRes(nIds[i])));
+ m_pGroupOnLst->SetEntryData(i+1,reinterpret_cast<void*>(i+2));
}
}
break;
default:
- m_aGroupOnLst.InsertEntry(OUString(ModuleRes(STR_RPT_INTERVAL)));
- m_aGroupOnLst.SetEntryData(1,reinterpret_cast<void*>(report::GroupOn::INTERVAL));
+ m_pGroupOnLst->InsertEntry(OUString(ModuleRes(STR_RPT_INTERVAL)));
+ m_pGroupOnLst->SetEntryData(1,reinterpret_cast<void*>(report::GroupOn::INTERVAL));
break;
}
sal_Int32 nPos = 0;
@@ -1315,57 +1265,22 @@ void OGroupsSortingDialog::displayGroup(const uno::Reference<report::XGroup>& _x
default:
nPos = 0;
}
- m_aGroupOnLst.SelectEntryPos(nPos);
- m_aGroupIntervalEd.SetText(OUString::number(_xGroup->getGroupInterval()));
- m_aGroupIntervalEd.SaveValue();
- m_aGroupIntervalEd.Enable( nPos != 0 );
- m_aKeepTogetherLst.SelectEntryPos(_xGroup->getKeepTogether());
- m_aOrderLst.SelectEntryPos(_xGroup->getSortAscending() ? 0 : 1);
-
- ListBox* pControls[] = { &m_aHeaderLst,&m_aFooterLst,&m_aGroupOnLst,&m_aKeepTogetherLst,&m_aOrderLst};
+ m_pGroupOnLst->SelectEntryPos(nPos);
+ m_pGroupIntervalEd->SetText(OUString::number(_xGroup->getGroupInterval()));
+ m_pGroupIntervalEd->SaveValue();
+ m_pGroupIntervalEd->Enable( nPos != 0 );
+ m_pKeepTogetherLst->SelectEntryPos(_xGroup->getKeepTogether());
+ m_pOrderLst->SelectEntryPos(_xGroup->getSortAscending() ? 0 : 1);
+
+ ListBox* pControls[] = { m_pHeaderLst, m_pFooterLst, m_pGroupOnLst, m_pKeepTogetherLst, m_pOrderLst};
for (size_t i = 0; i < sizeof(pControls)/sizeof(pControls[0]); ++i)
pControls[i]->SaveValue();
- ListBox* pControlsLst2[] = { &m_aHeaderLst, &m_aFooterLst, &m_aGroupOnLst, &m_aKeepTogetherLst,&m_aOrderLst};
+ ListBox* pControlsLst2[] = { m_pHeaderLst, m_pFooterLst, m_pGroupOnLst, m_pKeepTogetherLst, m_pOrderLst};
bool bReadOnly = !m_pController->isEditable();
for (size_t i = 0; i < sizeof(pControlsLst2)/sizeof(pControlsLst2[0]); ++i)
pControlsLst2[i]->SetReadOnly(bReadOnly);
- m_aGroupIntervalEd.SetReadOnly(bReadOnly);
-}
-
-void OGroupsSortingDialog::Resize()
-{
- Window::Resize();
- Size aTotalOutputSize = GetOutputSizePixel();
- Size aSpace = LogicToPixel( Size( UNRELATED_CONTROLS, UNRELATED_CONTROLS ), MAP_APPFONT );
- m_pFieldExpression->SetSizePixel(Size(aTotalOutputSize.Width() - 2*aSpace.Width(),m_pFieldExpression->GetSizePixel().Height()));
-
- Control* pControlsLst[] = { &m_aHeaderLst, &m_aFooterLst, &m_aGroupOnLst, &m_aGroupIntervalEd,&m_aKeepTogetherLst,&m_aOrderLst};
- Control* pControls[] = { &m_aHeader, &m_aFooter, &m_aGroupOn, &m_aGroupInterval, &m_aKeepTogether, &m_aOrder};
- sal_Int32 nMaxTextWidth = 0;
- for (size_t i = 0; i < sizeof (pControlsLst) / sizeof (pControlsLst[0]); ++i)
- {
- nMaxTextWidth = ::std::max<sal_Int32>(static_cast<sal_Int32>(GetTextWidth(pControls[i]->GetText())),nMaxTextWidth);
- }
-
- for (size_t i = 0; i < sizeof (pControlsLst) / sizeof (pControlsLst[0]); ++i)
- {
- pControls[i]->SetSizePixel(Size(nMaxTextWidth,pControls[i]->GetSizePixel().Height()));
- Point aPos = pControls[i]->GetPosPixel();
- aPos.X() += nMaxTextWidth + aSpace.Width();
- aPos.Y() = pControlsLst[i]->GetPosPixel().Y();
-
- pControlsLst[i]->SetPosSizePixel(aPos,Size(aTotalOutputSize.Width() - aPos.X() - aSpace.Width(),pControlsLst[i]->GetSizePixel().Height()));
- }
-
- m_aFL.SetSizePixel(Size(aTotalOutputSize.Width() - aSpace.Width(),m_aFL.GetSizePixel().Height()));
- m_aFL2.SetSizePixel(Size(aTotalOutputSize.Width() - aSpace.Width(),m_aFL2.GetSizePixel().Height()));
- m_aFL3.SetSizePixel(Size(aTotalOutputSize.Width() - aSpace.Width(),m_aFL3.GetSizePixel().Height()));
- sal_Int32 nPos = aTotalOutputSize.Width() - aSpace.Width() - m_aToolBox.GetSizePixel().Width();
- m_aToolBox.SetPosPixel(Point(nPos,m_aToolBox.GetPosPixel().Y()));
-
- Point aHelpPos = m_aHelpWindow.GetPosPixel();
- m_aHelpWindow.SetSizePixel(Size(aTotalOutputSize.Width() - aHelpPos.X(),aTotalOutputSize.Height() - aHelpPos.Y()));
+ m_pGroupIntervalEd->SetReadOnly(bReadOnly);
}
void OGroupsSortingDialog::checkButtons(sal_Int32 _nRow)
@@ -1376,59 +1291,33 @@ void OGroupsSortingDialog::checkButtons(sal_Int32 _nRow)
if (bEnabled && _nRow > 0 )
{
- m_aToolBox.EnableItem(SID_RPT_GROUPSORT_MOVE_UP, true);
+ m_pToolBox->EnableItem(m_nMoveUpId, true);
}
else
{
- m_aToolBox.EnableItem(SID_RPT_GROUPSORT_MOVE_UP, false);
+ m_pToolBox->EnableItem(m_nMoveUpId, false);
}
if (bEnabled && _nRow < (nRowCount - 1) )
{
- m_aToolBox.EnableItem(SID_RPT_GROUPSORT_MOVE_DOWN, true);
+ m_pToolBox->EnableItem(m_nMoveDownId, true);
}
else
{
- m_aToolBox.EnableItem(SID_RPT_GROUPSORT_MOVE_DOWN, false);
+ m_pToolBox->EnableItem(m_nMoveDownId, false);
}
sal_Int32 nGroupPos = m_pFieldExpression->getGroupPosition(_nRow);
if ( nGroupPos != NO_GROUP )
{
bool bEnableDelete = nGroupCount > 0;
- m_aToolBox.EnableItem(SID_RPT_GROUPSORT_DELETE, bEnableDelete);
+ m_pToolBox->EnableItem(m_nDeleteId, bEnableDelete);
}
else
{
- m_aToolBox.EnableItem(SID_RPT_GROUPSORT_DELETE, false);
+ m_pToolBox->EnableItem(m_nDeleteId, false);
}
}
-void OGroupsSortingDialog::setImageList(sal_Int16 _eBitmapSet)
-{
- sal_Int16 nN = IMG_CONDFORMAT_DLG_SC;
- if ( _eBitmapSet == SFX_SYMBOLS_SIZE_LARGE )
- nN = IMG_CONDFORMAT_DLG_LC;
- m_aToolBox.SetImageList(ImageList(ModuleRes(nN)));
-}
-
-void OGroupsSortingDialog::resizeControls(const Size& _rDiff)
-{
- // we use large images so we must change them
- if ( _rDiff.Width() || _rDiff.Height() )
- {
- Invalidate();
- }
-}
-
-
-// load the images
-ImageList OGroupsSortingDialog::getImageList(vcl::ImageListType)
-{
- return ImageList(ModuleRes(IMGLST_GROUPSORT_DLG_SC));
-}
-
-
} // rptui
-
/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/reportdesign/source/ui/dlg/GroupsSorting.hrc b/reportdesign/source/ui/dlg/GroupsSorting.hrc
deleted file mode 100644
index 296ff61a55ff..000000000000
--- a/reportdesign/source/ui/dlg/GroupsSorting.hrc
+++ /dev/null
@@ -1,56 +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 RPTUI_GROUPSSORTING_HRC
-#define RPTUI_GROUPSSORTING_HRC
-
-#define FT_HEADER (1)
-#define LST_HEADERLST (2)
-#define FT_FOOTER (3)
-#define LST_FOOTERLST (4)
-#define FT_GROUPON (5)
-#define LST_GROUPONLST (6)
-#define FT_GROUPINTERVAL (7)
-#define ED_GROUPINTERVALLST (8)
-#define FT_KEEPTOGETHER (9)
-#define LST_KEEPTOGETHERLST (10)
-#define WND_CONTROL (14)
-#define HELP_FIELD (15)
-#define FT_ORDER (16)
-#define LST_ORDER (17)
-#define FL_SEPARATOR1 (18)
-#define FT_MOVELABEL (19)
-#define FL_SEPARATOR2 (22)
-#define FL_SEPARATOR3 (23)
-#define TB_TOOLBOX (27)
-
-#define FIXEDTEXT_HEIGHT 8
-#define FIXEDTEXT_WIDTH 60
-#define RELATED_CONTROLS 4
-#define UNRELATED_CONTROLS 7
-#define EDIT_HEIGHT 12
-#define BUTTON_HEIGHT 14
-#define BUTTON_WIDTH 50
-#define BROWSER_HEIGHT 75
-#define PAGE_WIDTH 120
-#define PAGE_HEIGHT ( 13*UNRELATED_CONTROLS + BROWSER_HEIGHT + BUTTON_HEIGHT + 11*FIXEDTEXT_HEIGHT )
-#define LISTBOX_WIDTH PAGE_WIDTH - 4*UNRELATED_CONTROLS - FIXEDTEXT_WIDTH
-
-#endif // RPTUI_GROUPSSORTING_HRC
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/reportdesign/source/ui/dlg/GroupsSorting.src b/reportdesign/source/ui/dlg/GroupsSorting.src
index 63f4086dee03..25ead95c32fd 100644
--- a/reportdesign/source/ui/dlg/GroupsSorting.src
+++ b/reportdesign/source/ui/dlg/GroupsSorting.src
@@ -16,246 +16,11 @@
* except in compliance with the License. You may obtain a copy of
* the License at http://www.apache.org/licenses/LICENSE-2.0 .
*/
-#include "GroupsSorting.hrc"
#include "RptResId.hrc"
#include "helpids.hrc"
#include <svx/globlmn.hrc>
#include <svx/svxids.hrc>
-FloatingWindow RID_GROUPS_SORTING
-{
- OutputSize = TRUE ;
- SVLook = TRUE ;
- Size = MAP_APPFONT ( PAGE_WIDTH , PAGE_HEIGHT ) ;
- Text [ en-US ] = "Sorting and Grouping" ;
- HelpId = HID_RPT_GROUPSSORTING_DLG;
- Moveable = TRUE ;
- Closeable = TRUE ;
- Sizeable = TRUE;
-
- FixedLine FL_SEPARATOR2
- {
- Pos = MAP_APPFONT ( RELATED_CONTROLS , RELATED_CONTROLS ) ;
- Size = MAP_APPFONT ( PAGE_WIDTH - 2*RELATED_CONTROLS , FIXEDTEXT_HEIGHT ) ;
- Text [ en-US ] = "Groups";
- };
-
- Control WND_CONTROL
- {
- Pos = MAP_APPFONT( UNRELATED_CONTROLS, 2*UNRELATED_CONTROLS );
- Size = MAP_APPFONT( PAGE_WIDTH - 2*UNRELATED_CONTROLS, BROWSER_HEIGHT );
- HelpId = HID_RPT_GROUPSBRW ;
- Border = TRUE;
- TabStop = TRUE;
- };
-
- FixedText FT_MOVELABEL
- {
- Pos = MAP_APPFONT ( UNRELATED_CONTROLS , 3*UNRELATED_CONTROLS + BROWSER_HEIGHT ) ;
- Size = MAP_APPFONT ( FIXEDTEXT_WIDTH , FIXEDTEXT_HEIGHT ) ;
- Text [ en-US ] = "Group actions" ;
- };
-
- ToolBox TB_TOOLBOX
- {
- Pos = MAP_APPFONT ( PAGE_WIDTH - 4*14 - UNRELATED_CONTROLS, 3*UNRELATED_CONTROLS + BROWSER_HEIGHT - 1 ) ;
- ButtonType = BUTTON_SYMBOL;
- Customize = FALSE;
- ItemList =
- {
- ToolBoxItem
- {
- Identifier = SID_RPT_GROUPSORT_MOVE_UP ;
- HelpID = HID_RPT_GROUPSORT_MOVE_UP ;
- Text [ en-US ] = "Move up" ;
- Checkable = TRUE;
- };
- ToolBoxItem
- {
- Identifier = SID_RPT_GROUPSORT_MOVE_DOWN ;
- HelpID = HID_RPT_GROUPSORT_MOVE_DOWN ;
- Text [ en-US ] = "Move down" ;
- Checkable = TRUE;
- };
- ToolBoxItem
- {
- Identifier = SID_RPT_GROUPSORT_DELETE ;
- HelpID = HID_RPT_GROUPSORT_DELETE ;
- Text [ en-US ] = "~Delete" ;
- Checkable = TRUE;
- };
- };
- };
-
- FixedLine FL_SEPARATOR3
- {
- Pos = MAP_APPFONT ( RELATED_CONTROLS , 3*UNRELATED_CONTROLS + BROWSER_HEIGHT + BUTTON_HEIGHT) ;
- Size = MAP_APPFONT ( PAGE_WIDTH - 2*RELATED_CONTROLS , FIXEDTEXT_HEIGHT ) ;
- Text [ en-US ] = "Properties";
- };
-
- FixedText FT_ORDER
- {
- Pos = MAP_APPFONT ( UNRELATED_CONTROLS , 4*UNRELATED_CONTROLS + BROWSER_HEIGHT + BUTTON_HEIGHT + FIXEDTEXT_HEIGHT ) ;
- Size = MAP_APPFONT ( FIXEDTEXT_WIDTH , FIXEDTEXT_HEIGHT ) ;
- Hide = TRUE;
- Text [ en-US ] = "Sorting" ;
- };
-
- ListBox LST_ORDER
- {
- HelpID = "reportdesign:ListBox:RID_GROUPS_SORTING:LST_ORDER";
- Border = TRUE;
- Pos = MAP_APPFONT(2*UNRELATED_CONTROLS + FIXEDTEXT_WIDTH, 4*UNRELATED_CONTROLS + BROWSER_HEIGHT + BUTTON_HEIGHT + FIXEDTEXT_HEIGHT - 1 );
- Size = MAP_APPFONT( LISTBOX_WIDTH, 60 );
- DropDown = TRUE;
- TabStop = TRUE;
- Hide = TRUE;
- CurPos = 0 ;
- StringList [ en-US ] =
- {
- < "Ascending" ; 0 ; > ;
- < "Descending" ; 1 ; > ;
- };
-
- };
-
- FixedText FT_HEADER
- {
- Pos = MAP_APPFONT ( UNRELATED_CONTROLS , 5*UNRELATED_CONTROLS + BROWSER_HEIGHT + BUTTON_HEIGHT + 2*FIXEDTEXT_HEIGHT) ;
- Size = MAP_APPFONT ( FIXEDTEXT_WIDTH , FIXEDTEXT_HEIGHT ) ;
- Hide = TRUE;
- Text [ en-US ] = "Group Header" ;
-
- };
-
- ListBox LST_HEADERLST
- {
- HelpID = "reportdesign:ListBox:RID_GROUPS_SORTING:LST_HEADERLST";
- Border = TRUE;
- Hide = TRUE;
- Pos = MAP_APPFONT( 2*UNRELATED_CONTROLS + FIXEDTEXT_WIDTH, 5*UNRELATED_CONTROLS + BROWSER_HEIGHT + BUTTON_HEIGHT + 2*FIXEDTEXT_HEIGHT -1);
- Size = MAP_APPFONT( LISTBOX_WIDTH, 60 );
- DropDown = TRUE;
- TabStop = TRUE;
- CurPos = 1 ;
- StringList [ en-US ] =
- {
- < "Present" ; Default ; > ;
- < "Not present" ; Default ; > ;
- };
- };
-
- FixedText FT_FOOTER
- {
- Pos = MAP_APPFONT ( UNRELATED_CONTROLS, 6*UNRELATED_CONTROLS + BROWSER_HEIGHT + BUTTON_HEIGHT + 3*FIXEDTEXT_HEIGHT) ;
- Size = MAP_APPFONT ( FIXEDTEXT_WIDTH , FIXEDTEXT_HEIGHT ) ;
- Hide = TRUE;
- Text [ en-US ] = "Group Footer" ;
-
- };
-
- ListBox LST_FOOTERLST
- {
- HelpID = "reportdesign:ListBox:RID_GROUPS_SORTING:LST_FOOTERLST";
- Border = TRUE;
- Hide = TRUE;
- Pos = MAP_APPFONT( 2*UNRELATED_CONTROLS + FIXEDTEXT_WIDTH, 6*UNRELATED_CONTROLS + BROWSER_HEIGHT + BUTTON_HEIGHT + 3*FIXEDTEXT_HEIGHT -1);
- Size = MAP_APPFONT( LISTBOX_WIDTH, 60 );
- DropDown = TRUE;
- TabStop = TRUE;
- CurPos = 1 ;
- StringList [ en-US ] =
- {
- < "Present" ; Default ; > ;
- < "Not present" ; Default ; > ;
- };
- };
-
- FixedText FT_GROUPON
- {
- Pos = MAP_APPFONT ( UNRELATED_CONTROLS, 7*UNRELATED_CONTROLS + BROWSER_HEIGHT + BUTTON_HEIGHT + 4*FIXEDTEXT_HEIGHT) ;
- Size = MAP_APPFONT ( FIXEDTEXT_WIDTH , FIXEDTEXT_HEIGHT ) ;
- Hide = TRUE;
- Text [ en-US ] = "Group On" ;
-
- };
-
- ListBox LST_GROUPONLST
- {
- HelpID = "reportdesign:ListBox:RID_GROUPS_SORTING:LST_GROUPONLST";
- Border = TRUE;
- Hide = TRUE;
- Pos = MAP_APPFONT( 2*UNRELATED_CONTROLS + FIXEDTEXT_WIDTH, 7*UNRELATED_CONTROLS + BROWSER_HEIGHT + BUTTON_HEIGHT + 4*FIXEDTEXT_HEIGHT -1);
- Size = MAP_APPFONT( LISTBOX_WIDTH, 60 );
- DropDown = TRUE;
- TabStop = TRUE;
- CurPos = 0 ;
- StringList [ en-US ] =
- {
- < "Each Value" ; Default ; > ;
- };
- };
-
- FixedText FT_GROUPINTERVAL
- {
- Pos = MAP_APPFONT ( UNRELATED_CONTROLS , 8*UNRELATED_CONTROLS + BROWSER_HEIGHT + BUTTON_HEIGHT + 5*FIXEDTEXT_HEIGHT) ;
- Size = MAP_APPFONT ( FIXEDTEXT_WIDTH , FIXEDTEXT_HEIGHT ) ;
- Hide = TRUE;
- Text [ en-US ] = "Group Interval" ;
- };
-
- NumericField ED_GROUPINTERVALLST
- {
- HelpID = "reportdesign:NumericField:RID_GROUPS_SORTING:ED_GROUPINTERVALLST";
- Border = TRUE;
- Hide = TRUE;
- Pos = MAP_APPFONT(2*UNRELATED_CONTROLS + FIXEDTEXT_WIDTH , 8*UNRELATED_CONTROLS + BROWSER_HEIGHT + BUTTON_HEIGHT + 5*FIXEDTEXT_HEIGHT -1);
- Size = MAP_APPFONT( LISTBOX_WIDTH, EDIT_HEIGHT );
- TabStop = TRUE;
- };
-
- FixedText FT_KEEPTOGETHER
- {
- Pos = MAP_APPFONT ( UNRELATED_CONTROLS , 9*UNRELATED_CONTROLS + BROWSER_HEIGHT + BUTTON_HEIGHT + 6*FIXEDTEXT_HEIGHT) ;
- Size = MAP_APPFONT ( FIXEDTEXT_WIDTH , FIXEDTEXT_HEIGHT ) ;
- Hide = TRUE;
- Text [ en-US ] = "Keep Together" ;
- };
- ListBox LST_KEEPTOGETHERLST
- {
- HelpID = "reportdesign:ListBox:RID_GROUPS_SORTING:LST_KEEPTOGETHERLST";
- Border = TRUE;
- Hide = TRUE;
- Pos = MAP_APPFONT(2*UNRELATED_CONTROLS + FIXEDTEXT_WIDTH , 9*UNRELATED_CONTROLS + BROWSER_HEIGHT + BUTTON_HEIGHT + 6*FIXEDTEXT_HEIGHT -1);
- Size = MAP_APPFONT( LISTBOX_WIDTH, 60 );
- DropDown = TRUE;
- TabStop = TRUE;
- CurPos = 0 ;
- StringList [ en-US ] =
- {
- < "No" ; 0 ; > ;
- < "Whole Group" ; 1 ; > ;
- < "With First Detail" ; 2 ; > ;
- };
- };
-
- FixedLine FL_SEPARATOR1
- {
- Pos = MAP_APPFONT ( RELATED_CONTROLS , 10*UNRELATED_CONTROLS + BROWSER_HEIGHT + BUTTON_HEIGHT + 7*FIXEDTEXT_HEIGHT) ;
- Size = MAP_APPFONT ( PAGE_WIDTH - 2*RELATED_CONTROLS , FIXEDTEXT_HEIGHT ) ;
- Text [ en-US ] = "Help";
- };
-
- FixedText HELP_FIELD
- {
- Pos = MAP_APPFONT ( UNRELATED_CONTROLS , 12*UNRELATED_CONTROLS + BROWSER_HEIGHT + BUTTON_HEIGHT + 7*FIXEDTEXT_HEIGHT) ;
- Size = MAP_APPFONT( PAGE_WIDTH - 2*UNRELATED_CONTROLS, 4*FIXEDTEXT_HEIGHT);
- WordBreak = TRUE;
- };
-
-};
-
String STR_RPT_EXPRESSION
{
Text [ en-US ] = "Field/Expression" ;
@@ -357,24 +122,4 @@ Menu RID_GROUPSROWPOPUPMENU
};
};
-#define DEF_MASKCOLOR MaskColor = Color { Red = 0xFFFF; Green = 0x0000; Blue = 0xFFFF; }
-
-#define DEF_IL_GROUPSORT \
-\
- IdList = {\
- SID_RPT_GROUPSORT_MOVE_UP;\
- SID_RPT_GROUPSORT_MOVE_DOWN;\
- SID_RPT_GROUPSORT_DELETE;\
- };\
- IdCount = {\
- 3;\
- }
-
-ImageList IMGLST_GROUPSORT_DLG_SC
-{
- DEF_MASKCOLOR;
- prefix = "sc";
- DEF_IL_GROUPSORT ;
-};
-
/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/reportdesign/source/ui/inc/GroupsSorting.hxx b/reportdesign/source/ui/inc/GroupsSorting.hxx
index feb4d4d42436..4b9be4c94ad0 100644
--- a/reportdesign/source/ui/inc/GroupsSorting.hxx
+++ b/reportdesign/source/ui/inc/GroupsSorting.hxx
@@ -21,6 +21,7 @@
#include <vcl/floatwin.hxx>
#include <vcl/fixed.hxx>
+#include <vcl/layout.hxx>
#include <vcl/lstbox.hxx>
#include <vcl/edit.hxx>
#include <vcl/field.hxx>
@@ -58,30 +59,22 @@ class OReportController;
class OGroupsSortingDialog : public FloatingWindow
, public ::cppu::BaseMutex
, public ::comphelper::OPropertyChangeListener
- , public dbaui::OToolBoxHelper
- , public vcl::IImageListProvider
{
friend class OFieldExpressionControl;
- FixedLine m_aFL2;
- FixedText m_aMove;
- ToolBox m_aToolBox;
-
- FixedLine m_aFL3;
- FixedText m_aOrder;
- ListBox m_aOrderLst;
- FixedText m_aHeader;
- ListBox m_aHeaderLst;
- FixedText m_aFooter;
- ListBox m_aFooterLst;
- FixedText m_aGroupOn;
- ListBox m_aGroupOnLst;
- FixedText m_aGroupInterval;
- NumericField m_aGroupIntervalEd;
- FixedText m_aKeepTogether;
- ListBox m_aKeepTogetherLst;
- FixedLine m_aFL;
- FixedText m_aHelpWindow;
+ ToolBox* m_pToolBox;
+ sal_uInt16 m_nMoveUpId;
+ sal_uInt16 m_nMoveDownId;
+ sal_uInt16 m_nDeleteId;
+
+ VclContainer* m_pProperties;
+ ListBox* m_pOrderLst;
+ ListBox* m_pHeaderLst;
+ ListBox* m_pFooterLst;
+ ListBox* m_pGroupOnLst;
+ NumericField* m_pGroupIntervalEd;
+ ListBox* m_pKeepTogetherLst;
+ FixedText* m_pHelpWindow;
OFieldExpressionControl* m_pFieldExpression;
::rptui::OReportController* m_pController;
@@ -147,8 +140,6 @@ private:
OGroupsSortingDialog(OGroupsSortingDialog&);
void operator =(OGroupsSortingDialog&);
protected:
- // window
- virtual void Resize() SAL_OVERRIDE;
// OPropertyChangeListener
virtual void _propertyChanged(const ::com::sun::star::beans::PropertyChangeEvent& _rEvent) throw( ::com::sun::star::uno::RuntimeException) SAL_OVERRIDE;
public:
@@ -165,22 +156,6 @@ public:
/* updates the current view
*/
void UpdateData( );
-
- /** will be called when the controls need to be resized.
- @param _rDiff
- Contains the difference of the old and new toolbox size.
- */
- virtual void resizeControls(const Size& _rDiff) SAL_OVERRIDE;
-
- /** will be called when the image list needs to change
- @param _eSymbolsSize
- <svtools/imgdef.hxx>
- */
- virtual void setImageList(sal_Int16 _eSymbolsSize) SAL_OVERRIDE;
-
- // ImageListProvider interface
- virtual ImageList getImageList(vcl::ImageListType) SAL_OVERRIDE;
-
};
} // namespace rptui
diff --git a/reportdesign/source/ui/report/ReportController.cxx b/reportdesign/source/ui/report/ReportController.cxx
index c442fd89c525..51b031fc1d57 100644
--- a/reportdesign/source/ui/report/ReportController.cxx
+++ b/reportdesign/source/ui/report/ReportController.cxx
@@ -327,7 +327,7 @@ void OReportController::disposing()
}
if ( m_pGroupsFloater )
{
- SvtViewOptions aDlgOpt( E_WINDOW, OUString::number( RID_GROUPS_SORTING ) );
+ SvtViewOptions aDlgOpt(E_WINDOW, OStringToOUString(m_pGroupsFloater->GetHelpId(), RTL_TEXTENCODING_UTF8));
aDlgOpt.SetWindowState(OStringToOUString(m_pGroupsFloater->GetWindowState(WINDOWSTATE_MASK_ALL), RTL_TEXTENCODING_ASCII_US));
SAL_WNODEPRECATED_DECLARATIONS_PUSH
::std::auto_ptr<FloatingWindow> aTemp(m_pGroupsFloater);
@@ -2539,7 +2539,7 @@ void OReportController::openSortingAndGroupingDialog()
if ( !m_pGroupsFloater )
{
m_pGroupsFloater = new OGroupsSortingDialog(getView(),!isEditable(),this);
- SvtViewOptions aDlgOpt( E_WINDOW, OUString::number( RID_GROUPS_SORTING) );
+ SvtViewOptions aDlgOpt(E_WINDOW, OStringToOUString(m_pGroupsFloater->GetHelpId(), RTL_TEXTENCODING_UTF8));
if ( aDlgOpt.Exists() )
m_pGroupsFloater->SetWindowState(OUStringToOString(aDlgOpt.GetWindowState(), RTL_TEXTENCODING_ASCII_US));
m_pGroupsFloater->AddEventListener(LINK(this,OReportController,EventLstHdl));
diff --git a/reportdesign/uiconfig/dbreport/ui/floatingsort.ui b/reportdesign/uiconfig/dbreport/ui/floatingsort.ui
new file mode 100644
index 000000000000..d29f7b102e52
--- /dev/null
+++ b/reportdesign/uiconfig/dbreport/ui/floatingsort.ui
@@ -0,0 +1,453 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- Generated with glade 3.16.1 -->
+<interface>
+ <requires lib="gtk+" version="3.0"/>
+ <object class="GtkWindow" id="FloatingSort">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="hexpand">True</property>
+ <property name="vexpand">True</property>
+ <property name="border_width">6</property>
+ <property name="title" translatable="yes">Sorting and Grouping</property>
+ <property name="type_hint">utility</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">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="grid2">
+ <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>
+ <child>
+ <object class="GtkGrid" id="grid3">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="column_spacing">12</property>
+ <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" translatable="yes">Group actions</property>
+ <property name="use_underline">True</property>
+ <property name="mnemonic_widget">toolbox</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="GtkToolbar" id="toolbox">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="halign">end</property>
+ <property name="hexpand">True</property>
+ <property name="toolbar_style">icons</property>
+ <child>
+ <object class="GtkToolButton" id="up">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="label" translatable="yes">Move up</property>
+ <property name="use_underline">True</property>
+ <property name="icon_name">cmd/sc_moveup.png</property>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="homogeneous">True</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkToolButton" id="down">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="label" translatable="yes">Move down</property>
+ <property name="use_underline">True</property>
+ <property name="icon_name">cmd/sc_movedown.png</property>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="homogeneous">True</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkToolButton" id="delete">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="label" translatable="yes">Delete</property>
+ <property name="use_underline">True</property>
+ <property name="icon_name">cmd/sc_deleterows.png</property>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="homogeneous">True</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="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="box">
+ <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>
+ <placeholder/>
+ </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="label1">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="label" translatable="yes">Groups</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="properties">
+ <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="grid4">
+ <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="GtkLabel" id="label6">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="xalign">0</property>
+ <property name="label" translatable="yes">Sorting</property>
+ <property name="use_underline">True</property>
+ <property name="mnemonic_widget">sorting</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="label7">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="xalign">0</property>
+ <property name="label" translatable="yes">Group Header</property>
+ <property name="use_underline">True</property>
+ <property name="mnemonic_widget">header</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="label8">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="xalign">0</property>
+ <property name="label" translatable="yes">Group Footer</property>
+ <property name="use_underline">True</property>
+ <property name="mnemonic_widget">footer</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="label9">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="xalign">0</property>
+ <property name="label" translatable="yes">Group On</property>
+ <property name="use_underline">True</property>
+ <property name="mnemonic_widget">group</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="label10">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="xalign">0</property>
+ <property name="label" translatable="yes">Group Interval</property>
+ <property name="use_underline">True</property>
+ <property name="mnemonic_widget">interval</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="GtkLabel" id="label11">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="xalign">0</property>
+ <property name="label" translatable="yes">Keep Together</property>
+ <property name="use_underline">True</property>
+ <property name="mnemonic_widget">keep</property>
+ </object>
+ <packing>
+ <property name="left_attach">0</property>
+ <property name="top_attach">5</property>
+ <property name="width">1</property>
+ <property name="height">1</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkComboBoxText" id="sorting">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="hexpand">True</property>
+ <property name="active">0</property>
+ <items>
+ <item translatable="yes">Ascending</item>
+ <item translatable="yes">Descending</item>
+ </items>
+ </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="header">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="hexpand">True</property>
+ <property name="active">0</property>
+ <items>
+ <item translatable="yes">Present</item>
+ <item translatable="yes">Not present</item>
+ </items>
+ </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="keep">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="hexpand">True</property>
+ <property name="active">0</property>
+ <items>
+ <item translatable="yes">No</item>
+ <item translatable="yes">Whole Group</item>
+ <item translatable="yes">With First Detail</item>
+ </items>
+ </object>
+ <packing>
+ <property name="left_attach">1</property>
+ <property name="top_attach">5</property>
+ <property name="width">1</property>
+ <property name="height">1</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkComboBoxText" id="footer">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="hexpand">True</property>
+ <property name="active">1</property>
+ <items>
+ <item translatable="yes">Present</item>
+ <item translatable="yes">Not present</item>
+ </items>
+ </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="group">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="hexpand">True</property>
+ <property name="active">0</property>
+ <items>
+ <item translatable="yes">Each Value</item>
+ </items>
+ </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="GtkSpinButton" id="interval">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="hexpand">True</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>
+ </child>
+ </object>
+ </child>
+ <child type="label">
+ <object class="GtkLabel" id="label2">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="label" translatable="yes">Properties</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>
+ <child>
+ <object class="GtkFrame" id="frame3">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="label_xalign">0</property>
+ <property name="shadow_type">none</property>
+ <child>
+ <object class="GtkAlignment" id="alignment3">
+ <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="GtkLabel" id="helptext">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="xalign">0</property>
+ <property name="yalign">0</property>
+ <property name="wrap">True</property>
+ <property name="max_width_chars">52</property>
+ </object>
+ </child>
+ </object>
+ </child>
+ <child type="label">
+ <object class="GtkLabel" id="label3">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="label" translatable="yes">Help</property>
+ <attributes>
+ <attribute name="weight" value="bold"/>
+ </attributes>
+ </object>
+ </child>
+ </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>
+ </object>
+ </child>
+ </object>
+</interface>