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

adapt code to use snap object dialog .ui conversion

Change-Id: I181c87f8406f095bd4dc499b47d91081f58aaf59
üst 15b52e7f
...@@ -53,7 +53,6 @@ $(eval $(call gb_SrsTarget_add_files,sd/res,\ ...@@ -53,7 +53,6 @@ $(eval $(call gb_SrsTarget_add_files,sd/res,\
sd/source/ui/dlg/dlgfield.src \ sd/source/ui/dlg/dlgfield.src \
sd/source/ui/dlg/dlgolbul.src \ sd/source/ui/dlg/dlgolbul.src \
sd/source/ui/dlg/dlgpage.src \ sd/source/ui/dlg/dlgpage.src \
sd/source/ui/dlg/dlgsnap.src \
sd/source/ui/dlg/headerfooterdlg.src \ sd/source/ui/dlg/headerfooterdlg.src \
sd/source/ui/dlg/inspagob.src \ sd/source/ui/dlg/inspagob.src \
sd/source/ui/dlg/ins_paste.src \ sd/source/ui/dlg/ins_paste.src \
......
...@@ -66,6 +66,7 @@ $(eval $(call gb_UIConfig_add_toolbarfiles,modules/sdraw,\ ...@@ -66,6 +66,7 @@ $(eval $(call gb_UIConfig_add_toolbarfiles,modules/sdraw,\
)) ))
$(eval $(call gb_UIConfig_add_uifiles,modules/sdraw,\ $(eval $(call gb_UIConfig_add_uifiles,modules/sdraw,\
sd/uiconfig/sdraw/ui/dlgsnap \
sd/uiconfig/sdraw/ui/insertlayer \ sd/uiconfig/sdraw/ui/insertlayer \
sd/uiconfig/sdraw/ui/printeroptions \ sd/uiconfig/sdraw/ui/printeroptions \
)) ))
......
...@@ -22,7 +22,6 @@ ...@@ -22,7 +22,6 @@
#include <svl/itempool.hxx> #include <svl/itempool.hxx>
#include <svl/aeitem.hxx> #include <svl/aeitem.hxx>
#include "dlgsnap.hrc"
#include "sdattr.hxx" #include "sdattr.hxx"
#include "View.hxx" #include "View.hxx"
#include "sdresid.hxx" #include "sdresid.hxx"
...@@ -37,33 +36,28 @@ SdSnapLineDlg::SdSnapLineDlg( ...@@ -37,33 +36,28 @@ SdSnapLineDlg::SdSnapLineDlg(
::Window* pWindow, ::Window* pWindow,
const SfxItemSet& rInAttrs, const SfxItemSet& rInAttrs,
::sd::View* pView) ::sd::View* pView)
: ModalDialog (pWindow, SdResId(DLG_SNAPLINE)), : ModalDialog(pWindow, "SnapObjectDialog", "modules/sdraw/ui/dlgsnap.ui")
aFlPos (this, SdResId(FL_POSITION)), , eUIUnit(pView->GetDoc().GetUIUnit())
aFtX (this, SdResId(FT_X)), , aUIScale(pView->GetDoc().GetUIScale())
aMtrFldX (this, SdResId(MTR_FLD_X)),
aFtY (this, SdResId(FT_Y)),
aMtrFldY (this, SdResId(MTR_FLD_Y)),
aFlDir (this, SdResId(FL_DIRECTION)),
aRbPoint (this, SdResId(RB_POINT)),
aRbVert (this, SdResId(RB_VERTICAL)),
aRbHorz (this, SdResId(RB_HORIZONTAL)),
aBtnOK (this, SdResId(BTN_OK)),
aBtnCancel (this, SdResId(BTN_CANCEL)),
aBtnHelp (this, SdResId(BTN_HELP)),
aBtnDelete (this, SdResId(BTN_DELETE)),
eUIUnit(pView->GetDoc().GetUIUnit()),
aUIScale(pView->GetDoc().GetUIScale())
{ {
FreeResource(); get(m_pFtX, "xlabel");
get(m_pMtrFldX, "x");
get(m_pFtY, "ylabel");
get(m_pMtrFldY, "y");
get(m_pRadioGroup, "radiogroup");
get(m_pRbPoint, "point");
get(m_pRbVert, "vert");
get(m_pRbHorz, "horz");
get(m_pBtnDelete, "delete");
aRbHorz.SetClickHdl(LINK(this, SdSnapLineDlg, ClickHdl)); m_pRbHorz->SetClickHdl(LINK(this, SdSnapLineDlg, ClickHdl));
aRbVert.SetClickHdl(LINK(this, SdSnapLineDlg, ClickHdl)); m_pRbVert->SetClickHdl(LINK(this, SdSnapLineDlg, ClickHdl));
aRbPoint.SetClickHdl(LINK(this, SdSnapLineDlg, ClickHdl)); m_pRbPoint->SetClickHdl(LINK(this, SdSnapLineDlg, ClickHdl));
aBtnDelete.SetClickHdl(LINK(this, SdSnapLineDlg, ClickHdl)); m_pBtnDelete->SetClickHdl(LINK(this, SdSnapLineDlg, ClickHdl));
SetFieldUnit( aMtrFldX, eUIUnit, sal_True ); SetFieldUnit( *m_pMtrFldX, eUIUnit, sal_True );
SetFieldUnit( aMtrFldY, eUIUnit, sal_True ); SetFieldUnit( *m_pMtrFldY, eUIUnit, sal_True );
// get WorkArea // get WorkArea
Rectangle aWorkArea = pView->GetWorkArea(); Rectangle aWorkArea = pView->GetWorkArea();
...@@ -82,40 +76,40 @@ SdSnapLineDlg::SdSnapLineDlg( ...@@ -82,40 +76,40 @@ SdSnapLineDlg::SdSnapLineDlg(
// determine max and min values depending on // determine max and min values depending on
// WorkArea, PoolUnit and FieldUnit: // WorkArea, PoolUnit and FieldUnit:
SetMetricValue( aMtrFldX, aLeftTop.X(), ePoolUnit ); SetMetricValue( *m_pMtrFldX, aLeftTop.X(), ePoolUnit );
long nValue = static_cast<long>(aMtrFldX.GetValue()); long nValue = static_cast<long>(m_pMtrFldX->GetValue());
nValue = Fraction( nValue ) / aUIScale; nValue = Fraction( nValue ) / aUIScale;
aMtrFldX.SetMin( nValue ); m_pMtrFldX->SetMin( nValue );
aMtrFldX.SetFirst( nValue ); m_pMtrFldX->SetFirst( nValue );
SetMetricValue( aMtrFldX, aRightBottom.X(), ePoolUnit ); SetMetricValue( *m_pMtrFldX, aRightBottom.X(), ePoolUnit );
nValue = static_cast<long>(aMtrFldX.GetValue()); nValue = static_cast<long>(m_pMtrFldX->GetValue());
nValue = Fraction( nValue ) / aUIScale; nValue = Fraction( nValue ) / aUIScale;
aMtrFldX.SetMax( nValue ); m_pMtrFldX->SetMax( nValue );
aMtrFldX.SetLast( nValue ); m_pMtrFldX->SetLast( nValue );
SetMetricValue( aMtrFldY, aLeftTop.Y(), ePoolUnit ); SetMetricValue( *m_pMtrFldY, aLeftTop.Y(), ePoolUnit );
nValue = static_cast<long>(aMtrFldY.GetValue()); nValue = static_cast<long>(m_pMtrFldY->GetValue());
nValue = Fraction( nValue ) / aUIScale; nValue = Fraction( nValue ) / aUIScale;
aMtrFldY.SetMin( nValue ); m_pMtrFldY->SetMin( nValue );
aMtrFldY.SetFirst( nValue ); m_pMtrFldY->SetFirst( nValue );
SetMetricValue( aMtrFldY, aRightBottom.Y(), ePoolUnit ); SetMetricValue( *m_pMtrFldY, aRightBottom.Y(), ePoolUnit );
nValue = static_cast<long>(aMtrFldY.GetValue()); nValue = static_cast<long>(m_pMtrFldY->GetValue());
nValue = Fraction( nValue ) / aUIScale; nValue = Fraction( nValue ) / aUIScale;
aMtrFldY.SetMax( nValue ); m_pMtrFldY->SetMax( nValue );
aMtrFldY.SetLast( nValue ); m_pMtrFldY->SetLast( nValue );
// set values // set values
nXValue = ((const SfxUInt32Item&) rInAttrs.Get(ATTR_SNAPLINE_X)).GetValue(); nXValue = ((const SfxUInt32Item&) rInAttrs.Get(ATTR_SNAPLINE_X)).GetValue();
nYValue = ((const SfxUInt32Item&) rInAttrs.Get(ATTR_SNAPLINE_Y)).GetValue(); nYValue = ((const SfxUInt32Item&) rInAttrs.Get(ATTR_SNAPLINE_Y)).GetValue();
nXValue = Fraction(nXValue) / aUIScale; nXValue = Fraction(nXValue) / aUIScale;
nYValue = Fraction(nYValue) / aUIScale; nYValue = Fraction(nYValue) / aUIScale;
SetMetricValue( aMtrFldX, nXValue, SFX_MAPUNIT_100TH_MM); SetMetricValue( *m_pMtrFldX, nXValue, SFX_MAPUNIT_100TH_MM);
SetMetricValue( aMtrFldY, nYValue, SFX_MAPUNIT_100TH_MM); SetMetricValue( *m_pMtrFldY, nYValue, SFX_MAPUNIT_100TH_MM);
aRbPoint.Check(); m_pRbPoint->Check();
} }
/** /**
...@@ -123,10 +117,10 @@ SdSnapLineDlg::SdSnapLineDlg( ...@@ -123,10 +117,10 @@ SdSnapLineDlg::SdSnapLineDlg(
*/ */
IMPL_LINK( SdSnapLineDlg, ClickHdl, Button *, pBtn ) IMPL_LINK( SdSnapLineDlg, ClickHdl, Button *, pBtn )
{ {
if ( pBtn == &aRbPoint ) SetInputFields(sal_True, sal_True); if ( pBtn == m_pRbPoint ) SetInputFields(sal_True, sal_True);
else if ( pBtn == &aRbHorz ) SetInputFields(sal_False, sal_True); else if ( pBtn == m_pRbHorz ) SetInputFields(sal_False, sal_True);
else if ( pBtn == &aRbVert ) SetInputFields(sal_True, sal_False); else if ( pBtn == m_pRbVert ) SetInputFields(sal_True, sal_False);
else if ( pBtn == &aBtnDelete ) EndDialog(RET_SNAP_DELETE); else if ( pBtn == m_pBtnDelete ) EndDialog(RET_SNAP_DELETE);
return 0; return 0;
} }
...@@ -138,12 +132,12 @@ void SdSnapLineDlg::GetAttr(SfxItemSet& rOutAttrs) ...@@ -138,12 +132,12 @@ void SdSnapLineDlg::GetAttr(SfxItemSet& rOutAttrs)
{ {
SnapKind eKind; SnapKind eKind;
if ( aRbHorz.IsChecked() ) eKind = SK_HORIZONTAL; if ( m_pRbHorz->IsChecked() ) eKind = SK_HORIZONTAL;
else if ( aRbVert.IsChecked() ) eKind = SK_VERTICAL; else if ( m_pRbVert->IsChecked() ) eKind = SK_VERTICAL;
else eKind = SK_POINT; else eKind = SK_POINT;
nXValue = Fraction( GetCoreValue( aMtrFldX, SFX_MAPUNIT_100TH_MM) ) * aUIScale; nXValue = Fraction( GetCoreValue( *m_pMtrFldX, SFX_MAPUNIT_100TH_MM) ) * aUIScale;
nYValue = Fraction( GetCoreValue( aMtrFldY, SFX_MAPUNIT_100TH_MM) ) * aUIScale; nYValue = Fraction( GetCoreValue( *m_pMtrFldY, SFX_MAPUNIT_100TH_MM) ) * aUIScale;
rOutAttrs.Put(SfxAllEnumItem(ATTR_SNAPLINE_KIND, (sal_uInt16)eKind)); rOutAttrs.Put(SfxAllEnumItem(ATTR_SNAPLINE_KIND, (sal_uInt16)eKind));
rOutAttrs.Put(SfxUInt32Item(ATTR_SNAPLINE_X, nXValue)); rOutAttrs.Put(SfxUInt32Item(ATTR_SNAPLINE_X, nXValue));
...@@ -152,10 +146,7 @@ void SdSnapLineDlg::GetAttr(SfxItemSet& rOutAttrs) ...@@ -152,10 +146,7 @@ void SdSnapLineDlg::GetAttr(SfxItemSet& rOutAttrs)
void SdSnapLineDlg::HideRadioGroup() void SdSnapLineDlg::HideRadioGroup()
{ {
aFlDir.Hide(); m_pRadioGroup->Hide();
aRbHorz.Hide();
aRbVert.Hide();
aRbPoint.Hide();
} }
/** /**
...@@ -165,31 +156,31 @@ void SdSnapLineDlg::SetInputFields(sal_Bool bEnableX, sal_Bool bEnableY) ...@@ -165,31 +156,31 @@ void SdSnapLineDlg::SetInputFields(sal_Bool bEnableX, sal_Bool bEnableY)
{ {
if ( bEnableX ) if ( bEnableX )
{ {
if ( !aMtrFldX.IsEnabled() ) if ( !m_pMtrFldX->IsEnabled() )
aMtrFldX.SetValue(nXValue); m_pMtrFldX->SetValue(nXValue);
aMtrFldX.Enable(); m_pMtrFldX->Enable();
aFtX.Enable(); m_pFtX->Enable();
} }
else if ( aMtrFldX.IsEnabled() ) else if ( m_pMtrFldX->IsEnabled() )
{ {
nXValue = static_cast<long>(aMtrFldX.GetValue()); nXValue = static_cast<long>(m_pMtrFldX->GetValue());
aMtrFldX.SetText(String()); m_pMtrFldX->SetText(String());
aMtrFldX.Disable(); m_pMtrFldX->Disable();
aFtX.Disable(); m_pFtX->Disable();
} }
if ( bEnableY ) if ( bEnableY )
{ {
if ( !aMtrFldY.IsEnabled() ) if ( !m_pMtrFldY->IsEnabled() )
aMtrFldY.SetValue(nYValue); m_pMtrFldY->SetValue(nYValue);
aMtrFldY.Enable(); m_pMtrFldY->Enable();
aFtY.Enable(); m_pFtY->Enable();
} }
else if ( aMtrFldY.IsEnabled() ) else if ( m_pMtrFldY->IsEnabled() )
{ {
nYValue = static_cast<long>(aMtrFldY.GetValue()); nYValue = static_cast<long>(m_pMtrFldY->GetValue());
aMtrFldY.SetText(String()); m_pMtrFldY->SetText(String());
aMtrFldY.Disable(); m_pMtrFldY->Disable();
aFtY.Disable(); m_pFtY->Disable();
} }
} }
......
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
/*
* This file is part of the LibreOffice project.
*
* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
* This file incorporates work covered by the following license notice:
*
* Licensed to the Apache Software Foundation (ASF) under one or more
* contributor license agreements. See the NOTICE file distributed
* with this work for additional information regarding copyright
* ownership. The ASF licenses this file to you under the Apache
* License, Version 2.0 (the "License"); you may not use this file
* except in compliance with the License. You may obtain a copy of
* the License at http://www.apache.org/licenses/LICENSE-2.0 .
*/
#include "app.hrc"
#include "res_bmp.hrc"
#include "dlgsnap.hrc"
#include "helpids.h"
ModalDialog DLG_SNAPLINE
{
HelpID = CMD_SID_CAPTUREPOINT ;
OutputSize = TRUE ;
SVLook = TRUE ;
Size = MAP_APPFONT ( 140 , 125 ) ;
Text [ en-US ] = "New Snap Object" ;
Moveable = TRUE ;
OKButton BTN_OK
{
Pos = MAP_APPFONT ( 88 , 6 ) ;
Size = MAP_APPFONT ( 46 , 14 ) ;
TabStop = TRUE ;
DefButton = TRUE ;
};
CancelButton BTN_CANCEL
{
Pos = MAP_APPFONT ( 88 , 23 ) ;
Size = MAP_APPFONT ( 46 , 14 ) ;
TabStop = TRUE ;
};
HelpButton BTN_HELP
{
Pos = MAP_APPFONT ( 88 , 43 ) ;
Size = MAP_APPFONT ( 46 , 14 ) ;
TabStop = TRUE ;
};
PushButton BTN_DELETE
{
HelpID = "sd:PushButton:DLG_SNAPLINE:BTN_DELETE";
Pos = MAP_APPFONT ( 88 , 63 ) ;
Size = MAP_APPFONT ( 46 , 14 ) ;
Text [ en-US ] = "~Delete" ;
TabStop = TRUE ;
};
FixedLine FL_POSITION
{
Pos = MAP_APPFONT ( 6 , 3 ) ;
Size = MAP_APPFONT ( 76 , 8 ) ;
Text [ en-US ] = "Position" ;
};
FixedText FT_X
{
Pos = MAP_APPFONT ( 12 , 16 ) ;
Size = MAP_APPFONT ( 7 , 10 ) ;
Text = "~X" ;
};
MetricField MTR_FLD_X
{
HelpID = "sd:MetricField:DLG_SNAPLINE:MTR_FLD_X";
Border = TRUE ;
Pos = MAP_APPFONT ( 22 , 14 ) ;
Size = MAP_APPFONT ( 54 , 12 ) ;
TabStop = TRUE ;
Repeat = TRUE ;
Spin = TRUE ;
Minimum = -5000000 ;
Maximum = 5000000 ;
StrictFormat = TRUE ;
DecimalDigits = 2 ;
Unit = FUNIT_MM ;
First = -5000000 ;
Last = 5000000 ;
SpinSize = 50 ;
};
FixedText FT_Y
{
Pos = MAP_APPFONT ( 12 , 32 ) ;
Size = MAP_APPFONT ( 7 , 10 ) ;
Text = "~Y" ;
};
MetricField MTR_FLD_Y
{
HelpID = "sd:MetricField:DLG_SNAPLINE:MTR_FLD_Y";
Border = TRUE ;
Pos = MAP_APPFONT ( 22 , 30 ) ;
Size = MAP_APPFONT ( 54 , 12 ) ;
TabStop = TRUE ;
Repeat = TRUE ;
Spin = TRUE ;
Minimum = -5000000 ;
Maximum = 5000000 ;
StrictFormat = TRUE ;
DecimalDigits = 2 ;
Unit = FUNIT_MM ;
First = -5000000 ;
Last = 5000000 ;
SpinSize = 50 ;
};
FixedLine FL_DIRECTION
{
Pos = MAP_APPFONT ( 6 , 50 ) ;
Size = MAP_APPFONT ( 76 , 8 ) ;
Text [ en-US ] = "Type" ;
};
ImageRadioButton RB_POINT
{
HelpID = "sd:ImageRadioButton:DLG_SNAPLINE:RB_POINT";
Pos = MAP_APPFONT ( 12 , 61 ) ;
Size = MAP_APPFONT ( 64 , 16 ) ;
Text [ en-US ] = "~Point" ;
TabStop = TRUE ;
RadioButtonImage = Image
{
MaskColor = IMAGE_MASK_STDCOLOR;
ImageBitmap = Bitmap { File = "hlppoint.bmp" ; };
};
};
ImageRadioButton RB_VERTICAL
{
HelpID = "sd:ImageRadioButton:DLG_SNAPLINE:RB_VERTICAL";
Pos = MAP_APPFONT ( 12 , 81 ) ;
Size = MAP_APPFONT ( 64 , 16 ) ;
Text [ en-US ] = "~Vertical" ;
TabStop = TRUE ;
RadioButtonImage = Image
{
MaskColor = IMAGE_MASK_STDCOLOR;
ImageBitmap = Bitmap { File = "hlplvert.bmp" ; };
};
};
ImageRadioButton RB_HORIZONTAL
{
HelpID = "sd:ImageRadioButton:DLG_SNAPLINE:RB_HORIZONTAL";
Pos = MAP_APPFONT ( 12 , 101 ) ;
Size = MAP_APPFONT ( 65 , 16 ) ;
Text [ en-US ] = "Hori~zontal" ;
TabStop = TRUE ;
RadioButtonImage = Image
{
MaskColor = IMAGE_MASK_STDCOLOR;
ImageBitmap = Bitmap { File = "hlplhorz.bmp" ; };
};
};
};
/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
/*
* This file is part of the LibreOffice project.
*
* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
* This file incorporates work covered by the following license notice:
*
* Licensed to the Apache Software Foundation (ASF) under one or more
* contributor license agreements. See the NOTICE file distributed
* with this work for additional information regarding copyright
* ownership. The ASF licenses this file to you under the Apache
* License, Version 2.0 (the "License"); you may not use this file
* except in compliance with the License. You may obtain a copy of
* the License at http://www.apache.org/licenses/LICENSE-2.0 .
*/
#define DLG_SNAPLINE 312
#define BTN_OK 1
#define BTN_CANCEL 2
#define BTN_HELP 3
#define BTN_DELETE 4
#define FL_POSITION 5
#define FT_X 6
#define MTR_FLD_X 7
#define FT_Y 8
#define MTR_FLD_Y 9
#define FL_DIRECTION 10
#define RB_HORIZONTAL 11
#define RB_VERTICAL 12
#define RB_POINT 13
/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
...@@ -26,6 +26,7 @@ ...@@ -26,6 +26,7 @@
#include <vcl/fixed.hxx> #include <vcl/fixed.hxx>
#include <vcl/field.hxx> #include <vcl/field.hxx>
#include <vcl/group.hxx> #include <vcl/group.hxx>
#include <vcl/layout.hxx>
#include <tools/fract.hxx> #include <tools/fract.hxx>
#include <vcl/dialog.hxx> #include <vcl/dialog.hxx>
#include "sdenumdef.hxx" #include "sdenumdef.hxx"
...@@ -42,19 +43,15 @@ namespace sd { ...@@ -42,19 +43,15 @@ namespace sd {
class SdSnapLineDlg : public ModalDialog class SdSnapLineDlg : public ModalDialog
{ {
private: private:
FixedLine aFlPos; FixedText* m_pFtX;
FixedText aFtX; MetricField* m_pMtrFldX;
MetricField aMtrFldX; FixedText* m_pFtY;
FixedText aFtY; MetricField* m_pMtrFldY;
MetricField aMtrFldY; VclContainer* m_pRadioGroup;
FixedLine aFlDir; RadioButton* m_pRbPoint;
ImageRadioButton aRbPoint; RadioButton* m_pRbVert;
ImageRadioButton aRbVert; RadioButton* m_pRbHorz;
ImageRadioButton aRbHorz; PushButton* m_pBtnDelete;
OKButton aBtnOK;
CancelButton aBtnCancel;
HelpButton aBtnHelp;
PushButton aBtnDelete;
long nXValue; long nXValue;
long nYValue; long nYValue;
FieldUnit eUIUnit; FieldUnit eUIUnit;
...@@ -68,7 +65,7 @@ public: ...@@ -68,7 +65,7 @@ public:
void GetAttr(SfxItemSet& rOutAttrs); void GetAttr(SfxItemSet& rOutAttrs);
void HideRadioGroup(); void HideRadioGroup();
void HideDeleteBtn() { aBtnDelete.Hide(); } void HideDeleteBtn() { m_pBtnDelete->Hide(); }
void SetInputFields(sal_Bool bEnableX, sal_Bool bEnableY); void SetInputFields(sal_Bool bEnableX, sal_Bool bEnableY);
}; };
......
This diff is collapsed.
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