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,\
sd/source/ui/dlg/dlgfield.src \
sd/source/ui/dlg/dlgolbul.src \
sd/source/ui/dlg/dlgpage.src \
sd/source/ui/dlg/dlgsnap.src \
sd/source/ui/dlg/headerfooterdlg.src \
sd/source/ui/dlg/inspagob.src \
sd/source/ui/dlg/ins_paste.src \
......
......@@ -66,6 +66,7 @@ $(eval $(call gb_UIConfig_add_toolbarfiles,modules/sdraw,\
))
$(eval $(call gb_UIConfig_add_uifiles,modules/sdraw,\
sd/uiconfig/sdraw/ui/dlgsnap \
sd/uiconfig/sdraw/ui/insertlayer \
sd/uiconfig/sdraw/ui/printeroptions \
))
......
......@@ -22,7 +22,6 @@
#include <svl/itempool.hxx>
#include <svl/aeitem.hxx>
#include "dlgsnap.hrc"
#include "sdattr.hxx"
#include "View.hxx"
#include "sdresid.hxx"
......@@ -37,33 +36,28 @@ SdSnapLineDlg::SdSnapLineDlg(
::Window* pWindow,
const SfxItemSet& rInAttrs,
::sd::View* pView)
: ModalDialog (pWindow, SdResId(DLG_SNAPLINE)),
aFlPos (this, SdResId(FL_POSITION)),
aFtX (this, SdResId(FT_X)),
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())
: ModalDialog(pWindow, "SnapObjectDialog", "modules/sdraw/ui/dlgsnap.ui")
, 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));
aRbVert.SetClickHdl(LINK(this, SdSnapLineDlg, ClickHdl));
aRbPoint.SetClickHdl(LINK(this, SdSnapLineDlg, ClickHdl));
m_pRbHorz->SetClickHdl(LINK(this, SdSnapLineDlg, ClickHdl));
m_pRbVert->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( aMtrFldY, eUIUnit, sal_True );
SetFieldUnit( *m_pMtrFldX, eUIUnit, sal_True );
SetFieldUnit( *m_pMtrFldY, eUIUnit, sal_True );
// get WorkArea
Rectangle aWorkArea = pView->GetWorkArea();
......@@ -82,40 +76,40 @@ SdSnapLineDlg::SdSnapLineDlg(
// determine max and min values depending on
// 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;
aMtrFldX.SetMin( nValue );
aMtrFldX.SetFirst( nValue );
m_pMtrFldX->SetMin( nValue );
m_pMtrFldX->SetFirst( nValue );
SetMetricValue( aMtrFldX, aRightBottom.X(), ePoolUnit );
nValue = static_cast<long>(aMtrFldX.GetValue());
SetMetricValue( *m_pMtrFldX, aRightBottom.X(), ePoolUnit );
nValue = static_cast<long>(m_pMtrFldX->GetValue());
nValue = Fraction( nValue ) / aUIScale;
aMtrFldX.SetMax( nValue );
aMtrFldX.SetLast( nValue );
m_pMtrFldX->SetMax( nValue );
m_pMtrFldX->SetLast( nValue );
SetMetricValue( aMtrFldY, aLeftTop.Y(), ePoolUnit );
nValue = static_cast<long>(aMtrFldY.GetValue());
SetMetricValue( *m_pMtrFldY, aLeftTop.Y(), ePoolUnit );
nValue = static_cast<long>(m_pMtrFldY->GetValue());
nValue = Fraction( nValue ) / aUIScale;
aMtrFldY.SetMin( nValue );
aMtrFldY.SetFirst( nValue );
m_pMtrFldY->SetMin( nValue );
m_pMtrFldY->SetFirst( nValue );
SetMetricValue( aMtrFldY, aRightBottom.Y(), ePoolUnit );
nValue = static_cast<long>(aMtrFldY.GetValue());
SetMetricValue( *m_pMtrFldY, aRightBottom.Y(), ePoolUnit );
nValue = static_cast<long>(m_pMtrFldY->GetValue());
nValue = Fraction( nValue ) / aUIScale;
aMtrFldY.SetMax( nValue );
aMtrFldY.SetLast( nValue );
m_pMtrFldY->SetMax( nValue );
m_pMtrFldY->SetLast( nValue );
// set values
nXValue = ((const SfxUInt32Item&) rInAttrs.Get(ATTR_SNAPLINE_X)).GetValue();
nYValue = ((const SfxUInt32Item&) rInAttrs.Get(ATTR_SNAPLINE_Y)).GetValue();
nXValue = Fraction(nXValue) / aUIScale;
nYValue = Fraction(nYValue) / aUIScale;
SetMetricValue( aMtrFldX, nXValue, SFX_MAPUNIT_100TH_MM);
SetMetricValue( aMtrFldY, nYValue, SFX_MAPUNIT_100TH_MM);
SetMetricValue( *m_pMtrFldX, nXValue, SFX_MAPUNIT_100TH_MM);
SetMetricValue( *m_pMtrFldY, nYValue, SFX_MAPUNIT_100TH_MM);
aRbPoint.Check();
m_pRbPoint->Check();
}
/**
......@@ -123,10 +117,10 @@ SdSnapLineDlg::SdSnapLineDlg(
*/
IMPL_LINK( SdSnapLineDlg, ClickHdl, Button *, pBtn )
{
if ( pBtn == &aRbPoint ) SetInputFields(sal_True, sal_True);
else if ( pBtn == &aRbHorz ) SetInputFields(sal_False, sal_True);
else if ( pBtn == &aRbVert ) SetInputFields(sal_True, sal_False);
else if ( pBtn == &aBtnDelete ) EndDialog(RET_SNAP_DELETE);
if ( pBtn == m_pRbPoint ) SetInputFields(sal_True, sal_True);
else if ( pBtn == m_pRbHorz ) SetInputFields(sal_False, sal_True);
else if ( pBtn == m_pRbVert ) SetInputFields(sal_True, sal_False);
else if ( pBtn == m_pBtnDelete ) EndDialog(RET_SNAP_DELETE);
return 0;
}
......@@ -138,12 +132,12 @@ void SdSnapLineDlg::GetAttr(SfxItemSet& rOutAttrs)
{
SnapKind eKind;
if ( aRbHorz.IsChecked() ) eKind = SK_HORIZONTAL;
else if ( aRbVert.IsChecked() ) eKind = SK_VERTICAL;
if ( m_pRbHorz->IsChecked() ) eKind = SK_HORIZONTAL;
else if ( m_pRbVert->IsChecked() ) eKind = SK_VERTICAL;
else eKind = SK_POINT;
nXValue = Fraction( GetCoreValue( aMtrFldX, SFX_MAPUNIT_100TH_MM) ) * aUIScale;
nYValue = Fraction( GetCoreValue( aMtrFldY, SFX_MAPUNIT_100TH_MM) ) * aUIScale;
nXValue = Fraction( GetCoreValue( *m_pMtrFldX, 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(SfxUInt32Item(ATTR_SNAPLINE_X, nXValue));
......@@ -152,10 +146,7 @@ void SdSnapLineDlg::GetAttr(SfxItemSet& rOutAttrs)
void SdSnapLineDlg::HideRadioGroup()
{
aFlDir.Hide();
aRbHorz.Hide();
aRbVert.Hide();
aRbPoint.Hide();
m_pRadioGroup->Hide();
}
/**
......@@ -165,31 +156,31 @@ void SdSnapLineDlg::SetInputFields(sal_Bool bEnableX, sal_Bool bEnableY)
{
if ( bEnableX )
{
if ( !aMtrFldX.IsEnabled() )
aMtrFldX.SetValue(nXValue);
aMtrFldX.Enable();
aFtX.Enable();
if ( !m_pMtrFldX->IsEnabled() )
m_pMtrFldX->SetValue(nXValue);
m_pMtrFldX->Enable();
m_pFtX->Enable();
}
else if ( aMtrFldX.IsEnabled() )
else if ( m_pMtrFldX->IsEnabled() )
{
nXValue = static_cast<long>(aMtrFldX.GetValue());
aMtrFldX.SetText(String());
aMtrFldX.Disable();
aFtX.Disable();
nXValue = static_cast<long>(m_pMtrFldX->GetValue());
m_pMtrFldX->SetText(String());
m_pMtrFldX->Disable();
m_pFtX->Disable();
}
if ( bEnableY )
{
if ( !aMtrFldY.IsEnabled() )
aMtrFldY.SetValue(nYValue);
aMtrFldY.Enable();
aFtY.Enable();
if ( !m_pMtrFldY->IsEnabled() )
m_pMtrFldY->SetValue(nYValue);
m_pMtrFldY->Enable();
m_pFtY->Enable();
}
else if ( aMtrFldY.IsEnabled() )
else if ( m_pMtrFldY->IsEnabled() )
{
nYValue = static_cast<long>(aMtrFldY.GetValue());
aMtrFldY.SetText(String());
aMtrFldY.Disable();
aFtY.Disable();
nYValue = static_cast<long>(m_pMtrFldY->GetValue());
m_pMtrFldY->SetText(String());
m_pMtrFldY->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 @@
#include <vcl/fixed.hxx>
#include <vcl/field.hxx>
#include <vcl/group.hxx>
#include <vcl/layout.hxx>
#include <tools/fract.hxx>
#include <vcl/dialog.hxx>
#include "sdenumdef.hxx"
......@@ -42,19 +43,15 @@ namespace sd {
class SdSnapLineDlg : public ModalDialog
{
private:
FixedLine aFlPos;
FixedText aFtX;
MetricField aMtrFldX;
FixedText aFtY;
MetricField aMtrFldY;
FixedLine aFlDir;
ImageRadioButton aRbPoint;
ImageRadioButton aRbVert;
ImageRadioButton aRbHorz;
OKButton aBtnOK;
CancelButton aBtnCancel;
HelpButton aBtnHelp;
PushButton aBtnDelete;
FixedText* m_pFtX;
MetricField* m_pMtrFldX;
FixedText* m_pFtY;
MetricField* m_pMtrFldY;
VclContainer* m_pRadioGroup;
RadioButton* m_pRbPoint;
RadioButton* m_pRbVert;
RadioButton* m_pRbHorz;
PushButton* m_pBtnDelete;
long nXValue;
long nYValue;
FieldUnit eUIUnit;
......@@ -68,7 +65,7 @@ public:
void GetAttr(SfxItemSet& rOutAttrs);
void HideRadioGroup();
void HideDeleteBtn() { aBtnDelete.Hide(); }
void HideDeleteBtn() { m_pBtnDelete->Hide(); }
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