summaryrefslogtreecommitdiff
path: root/cui
diff options
context:
space:
mode:
authorCaolán McNamara <caolanm@redhat.com>2014-01-31 10:06:06 +0000
committerCaolán McNamara <caolanm@redhat.com>2014-01-31 21:21:37 +0000
commite70fb08305fdb3ad54c17f979c64996a7f043dcd (patch)
tree1f29b40353f82f4d082b013d722bdb15bd790c7a /cui
parent344a1abd2f28f4556746f72a06358a08dd23abbe (diff)
convert smooth dialog to .ui
Change-Id: If2894cef70bf6b9848a1338afaa36dc8b0d7d6be
Diffstat (limited to 'cui')
-rw-r--r--cui/UIConfig_cui.mk1
-rw-r--r--cui/source/dialogs/cuigrfflt.cxx67
-rw-r--r--cui/source/dialogs/grfflt.hrc7
-rw-r--r--cui/source/dialogs/grfflt.src72
-rw-r--r--cui/source/factory/dlgfact.cxx16
-rw-r--r--cui/source/factory/dlgfact.hxx9
-rw-r--r--cui/source/inc/cuigrfflt.hxx65
-rw-r--r--cui/uiconfig/ui/smoothdialog.ui188
8 files changed, 274 insertions, 151 deletions
diff --git a/cui/UIConfig_cui.mk b/cui/UIConfig_cui.mk
index d57d8835b816..d647970acfe9 100644
--- a/cui/UIConfig_cui.mk
+++ b/cui/UIConfig_cui.mk
@@ -147,6 +147,7 @@ $(eval $(call gb_UIConfig_add_uifiles,cui,\
cui/uiconfig/ui/showcoldialog \
cui/uiconfig/ui/similaritysearchdialog \
cui/uiconfig/ui/slantcornertabpage \
+ cui/uiconfig/ui/smoothdialog \
cui/uiconfig/ui/specialcharacters \
cui/uiconfig/ui/spellingdialog \
cui/uiconfig/ui/spelloptionsdialog \
diff --git a/cui/source/dialogs/cuigrfflt.cxx b/cui/source/dialogs/cuigrfflt.cxx
index 06381de76367..ccf12762b604 100644
--- a/cui/source/dialogs/cuigrfflt.cxx
+++ b/cui/source/dialogs/cuigrfflt.cxx
@@ -18,6 +18,7 @@
*/
#include <tools/shl.hxx>
+#include <vcl/builder.hxx>
#include <vcl/msgbox.hxx>
#include <sfx2/viewfrm.hxx>
#include <sfx2/viewsh.hxx>
@@ -143,7 +144,7 @@ IMPL_LINK_NOARG(oldGraphicFilterDialog, ImplModifyHdl)
return 0;
}
-GraphicFilterDialog::PreviewWindow::PreviewWindow(Window* pParent,
+GraphicPreviewWindow::GraphicPreviewWindow(Window* pParent,
const WinBits nStyle)
: Control(pParent, nStyle)
, mpOrigGraphic(NULL)
@@ -152,14 +153,25 @@ GraphicFilterDialog::PreviewWindow::PreviewWindow(Window* pParent,
{
}
-Size GraphicFilterDialog::PreviewWindow::GetOptimalSize() const
+extern "C" SAL_DLLPUBLIC_EXPORT Window* SAL_CALL makeGraphicPreviewWindow(Window *pParent, VclBuilder::stringmap &rMap)
+{
+ WinBits nWinBits = WB_TABSTOP;
+
+ OString sBorder = VclBuilder::extractCustomProperty(rMap);
+ if (!sBorder.isEmpty())
+ nWinBits |= WB_BORDER;
+
+ return new GraphicPreviewWindow(pParent, nWinBits);
+}
+
+Size GraphicPreviewWindow::GetOptimalSize() const
{
return LogicToPixel(Size(81, 73), MAP_APPFONT);
}
// -----------------------------------------------------------------------------
-void GraphicFilterDialog::PreviewWindow::Paint( const Rectangle& rRect )
+void GraphicPreviewWindow::Paint( const Rectangle& rRect )
{
Control::Paint( rRect );
@@ -183,21 +195,19 @@ void GraphicFilterDialog::PreviewWindow::Paint( const Rectangle& rRect )
// -----------------------------------------------------------------------------
-void GraphicFilterDialog::PreviewWindow::SetPreview( const Graphic& rGraphic )
+void GraphicPreviewWindow::SetPreview( const Graphic& rGraphic )
{
maPreview = rGraphic;
-
- if( maPreview.IsAnimated() || maPreview.IsTransparent() )
- Invalidate();
- else
- Paint( Rectangle( Point(), GetOutputSizePixel() ) );
+ Invalidate();
}
-void GraphicFilterDialog::PreviewWindow::ScaleImageToFit()
+void GraphicPreviewWindow::ScaleImageToFit()
{
if (!mpOrigGraphic)
return;
+ maScaledOrig = *mpOrigGraphic;
+
const Size aPreviewSize( GetOutputSizePixel() );
Size aSizePixel(LogicToPixel(mpOrigGraphic->GetPrefSize(),
mpOrigGraphic->GetPrefMapMode()));
@@ -229,12 +239,14 @@ void GraphicFilterDialog::PreviewWindow::ScaleImageToFit()
BitmapEx aBmpEx( mpOrigGraphic->GetBitmapEx() );
if( aBmpEx.Scale( aGrfSize, BMP_SCALE_DEFAULT ) )
- maPreview = aBmpEx;
+ maScaledOrig = aBmpEx;
}
}
+
+ maModifyHdl.Call(this);
}
-void GraphicFilterDialog::PreviewWindow::Resize()
+void GraphicPreviewWindow::Resize()
{
Control::Resize();
ScaleImageToFit();
@@ -250,14 +262,12 @@ GraphicFilterDialog::GraphicFilterDialog(Window* pParent,
{
bIsBitmap = rGraphic.GetType() == GRAPHIC_BITMAP;
- get(mpPreview, "preview");
- mpPreview->init(&rGraphic);
-
maTimer.SetTimeoutHdl( LINK( this, GraphicFilterDialog, ImplPreviewTimeoutHdl ) );
- maTimer.SetTimeout( 100 );
- ImplModifyHdl( NULL );
-}
+ maTimer.SetTimeout( 5 );
+ get(mpPreview, "preview");
+ mpPreview->init(&rGraphic, maModifyHdl);
+}
// -----------------------------------------------------------------------------
@@ -366,22 +376,15 @@ Graphic GraphicFilterMosaic::GetFilteredGraphic( const Graphic& rGraphic,
// - GraphicFilterSmooth -
// ------------------
-GraphicFilterSmooth::GraphicFilterSmooth( Window* pParent, const Graphic& rGraphic, double nRadius) :
- oldGraphicFilterDialog ( pParent, CUI_RES( RID_SVX_GRFFILTER_DLG_SMOOTH ), rGraphic ),
- maFtRadius ( this, CUI_RES( DLG_FILTERSMOOTH_FT_RADIUS ) ),
- maMtrRadius ( this, CUI_RES( DLG_FILTERSMOOTH_MTR_RADIUS ) )
+GraphicFilterSmooth::GraphicFilterSmooth( Window* pParent, const Graphic& rGraphic, double nRadius)
+ : GraphicFilterDialog(pParent, "SmoothDialog",
+ "cui/ui/smoothdialog.ui", rGraphic)
{
- FreeResource();
-
- maMtrRadius.SetValue( nRadius* 10 );
- maMtrRadius.SetModifyHdl( GetModifyHdl() );
- maMtrRadius.GrabFocus();
-}
+ get(mpMtrRadius, "radius");
-// -----------------------------------------------------------------------------
-
-GraphicFilterSmooth::~GraphicFilterSmooth()
-{
+ mpMtrRadius->SetValue( nRadius* 10 );
+ mpMtrRadius->SetModifyHdl( GetModifyHdl() );
+ mpMtrRadius->GrabFocus();
}
// -----------------------------------------------------------------------------
diff --git a/cui/source/dialogs/grfflt.hrc b/cui/source/dialogs/grfflt.hrc
index 976d8b0e082b..da6abb3fe07c 100644
--- a/cui/source/dialogs/grfflt.hrc
+++ b/cui/source/dialogs/grfflt.hrc
@@ -41,13 +41,6 @@
#define DLG_FILTERMOSAIC_CBX_EDGES 5
// ----------------------
-// - DLG_FILTERSMOOTH -
-// ----------------------
-
-#define DLG_FILTERSMOOTH_FT_RADIUS 1
-#define DLG_FILTERSMOOTH_MTR_RADIUS 2
-
-// ----------------------
// - DLG_FILTERSOLARIZE -
// ----------------------
diff --git a/cui/source/dialogs/grfflt.src b/cui/source/dialogs/grfflt.src
index ff1cfb2492c0..23192ecd8601 100644
--- a/cui/source/dialogs/grfflt.src
+++ b/cui/source/dialogs/grfflt.src
@@ -412,76 +412,4 @@ ModalDialog RID_SVX_GRFFILTER_DLG_EMBOSS
};
};
-// --------------------
-// - DLG_FILTERSMOOTH -
-// --------------------
-
-ModalDialog RID_SVX_GRFFILTER_DLG_SMOOTH
-{
- HelpID = CMD_SID_GRFFILTER_SMOOTH;
- OutputSize = TRUE ;
- Moveable = TRUE ;
- SVLook = TRUE ;
- Size = MAP_APPFONT ( 250, 100 ) ;
-
- Text [ en-US ] = "Smooth" ;
-
- FixedLine FL_PARAMETER
- {
- Pos = MAP_APPFONT ( 6 , 3 ) ;
- Size = MAP_APPFONT ( 182, RSC_CD_FIXEDLINE_HEIGHT ) ;
- Text [ en-US ] = "Parameters";
- };
- Control CTL_PREVIEW
- {
- Pos = MAP_APPFONT ( 104 , 3 + RSC_CD_FIXEDLINE_HEIGHT + RSC_SP_FLGR_INNERBORDER_TOP ) ;
- Size = MAP_APPFONT ( 81, 73 ) ;
- };
-#define MA_Y14 3 + RSC_CD_FIXEDLINE_HEIGHT + RSC_SP_FLGR_INNERBORDER_TOP
- FixedText DLG_FILTERSMOOTH_FT_RADIUS
- {
- Pos = MAP_APPFONT ( 12 , MA_Y14 ) ;
- Size = MAP_APPFONT ( 77 , 10 ) ;
- Text [ en-US ] = "Smooth Radius" ;
- };
-#define MA_Y15 MA_Y14 + RSC_CD_FIXEDTEXT_HEIGHT + RSC_SP_CTRL_DESC_Y
- NumericField DLG_FILTERSMOOTH_MTR_RADIUS
- {
- HelpID = "cui:NumericField:RID_SVX_GRFFILTER_DLG_SMOOTH:DLG_FILTERSMOOTH_MTR_RADIUS";
- Border = TRUE ;
- Pos = MAP_APPFONT ( 12 , MA_Y15 );
- Size = MAP_APPFONT ( 35 , 12 );
- TabStop = TRUE;
- Right = TRUE;
- Repeat = TRUE;
- Spin = TRUE;
- Minimum = 0;
- Maximum = 1000;
- StrictFormat = TRUE;
- First = 1;
- DecimalDigits = 1;
- Last = 1000;
- SpinSize = 2;
- };
- OKButton BTN_OK
- {
- Pos = MAP_APPFONT ( 194, 6 ) ;
- Size = MAP_APPFONT ( 50, 14 ) ;
- TabStop = TRUE ;
- DefButton = TRUE ;
- };
- CancelButton BTN_CANCEL
- {
- Pos = MAP_APPFONT ( 194, 23 ) ;
- Size = MAP_APPFONT ( 50, 14 ) ;
- TabStop = TRUE ;
- };
- HelpButton BTN_HELP
- {
- Pos = MAP_APPFONT ( 194, 43 ) ;
- Size = MAP_APPFONT ( 50, 14 ) ;
- TabStop = TRUE ;
- };
-};
-
/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/cui/source/factory/dlgfact.cxx b/cui/source/factory/dlgfact.cxx
index 730d819bfff7..a1f2063e75d5 100644
--- a/cui/source/factory/dlgfact.cxx
+++ b/cui/source/factory/dlgfact.cxx
@@ -140,6 +140,7 @@ IMPL_ABSTDLG_BASE(AbstractSvxMultiFileDialog_Impl);
IMPL_ABSTDLG_BASE(AbstractSvxHpLinkDlg_Impl);
IMPL_ABSTDLG_BASE(AbstractFmSearchDialog_Impl);
IMPL_ABSTDLG_BASE(AbstractGraphicFilterDialog_Impl);
+IMPL_ABSTDLG_BASE(oldAbstractGraphicFilterDialog_Impl);
IMPL_ABSTDLG_BASE(AbstractSvxAreaTabDialog_Impl);
IMPL_ABSTDLG_BASE(AbstractPasteDialog_Impl);
IMPL_ABSTDLG_BASE(AbstractInsertObjectDialog_Impl);
@@ -877,6 +878,11 @@ Graphic AbstractGraphicFilterDialog_Impl::GetFilteredGraphic( const Graphic& rGr
return pDlg->GetFilteredGraphic( rGraphic, fScaleX, fScaleY );
}
+Graphic oldAbstractGraphicFilterDialog_Impl::GetFilteredGraphic( const Graphic& rGraphic, double fScaleX, double fScaleY )
+{
+ return pDlg->GetFilteredGraphic( rGraphic, fScaleX, fScaleY );
+}
+
// AbstractSvxAreaTabDialog implementations just forwards everything to the dialog
void AbstractSvxAreaTabDialog_Impl::SetCurPageId( sal_uInt16 nId )
{
@@ -1503,7 +1509,7 @@ AbstractGraphicFilterDialog * AbstractDialogFactory_Impl::CreateGraphicFilterEmb
sal_uInt32)
{
oldGraphicFilterDialog* pDlg = new GraphicFilterEmboss( pParent, rGraphic, eLightSource );
- return new AbstractGraphicFilterDialog_Impl( pDlg );
+ return new oldAbstractGraphicFilterDialog_Impl( pDlg );
}
AbstractGraphicFilterDialog * AbstractDialogFactory_Impl::CreateGraphicFilterPosterSepia (Window* pParent,
@@ -1526,14 +1532,14 @@ AbstractGraphicFilterDialog * AbstractDialogFactory_Impl::CreateGraphicFilterPos
}
if ( pDlg )
- return new AbstractGraphicFilterDialog_Impl( pDlg );
+ return new oldAbstractGraphicFilterDialog_Impl( pDlg );
return 0;
}
AbstractGraphicFilterDialog * AbstractDialogFactory_Impl::CreateGraphicFilterSmooth ( Window* pParent,
const Graphic& rGraphic, double nRadius, sal_uInt32)
{
- oldGraphicFilterDialog* pDlg = new GraphicFilterSmooth( pParent, rGraphic, nRadius );
+ GraphicFilterDialog* pDlg = new GraphicFilterSmooth( pParent, rGraphic, nRadius );
return new AbstractGraphicFilterDialog_Impl( pDlg );
}
@@ -1541,7 +1547,7 @@ AbstractGraphicFilterDialog * AbstractDialogFactory_Impl::CreateGraphicFilterSol
const Graphic& rGraphic, sal_uInt8 nGreyThreshold, sal_Bool bInvert, sal_uInt32 )
{
oldGraphicFilterDialog* pDlg = new GraphicFilterSolarize( pParent, rGraphic, nGreyThreshold, bInvert );
- return new AbstractGraphicFilterDialog_Impl( pDlg );
+ return new oldAbstractGraphicFilterDialog_Impl( pDlg );
}
AbstractGraphicFilterDialog * AbstractDialogFactory_Impl::CreateGraphicFilterMosaic (Window* pParent,
@@ -1559,7 +1565,7 @@ AbstractGraphicFilterDialog * AbstractDialogFactory_Impl::CreateGraphicFilterMos
}
if ( pDlg )
- return new AbstractGraphicFilterDialog_Impl( pDlg );
+ return new oldAbstractGraphicFilterDialog_Impl( pDlg );
return 0;
}
diff --git a/cui/source/factory/dlgfact.hxx b/cui/source/factory/dlgfact.hxx
index 909c8fd7ac32..4408c0327150 100644
--- a/cui/source/factory/dlgfact.hxx
+++ b/cui/source/factory/dlgfact.hxx
@@ -47,6 +47,7 @@ class SvxHpLinkDlg;
class FmSearchDialog;
class Graphic;
class oldGraphicFilterDialog;
+class GraphicFilterDialog;
class SvxAreaTabDialog;
class InsertObjectDialog_Impl;
class SvPasteObjectDialog;
@@ -438,7 +439,13 @@ class AbstractFmSearchDialog_Impl :public AbstractFmSearchDialog
class AbstractGraphicFilterDialog_Impl :public AbstractGraphicFilterDialog
{
- DECL_ABSTDLG_BASE(AbstractGraphicFilterDialog_Impl,oldGraphicFilterDialog)
+ DECL_ABSTDLG_BASE(AbstractGraphicFilterDialog_Impl,GraphicFilterDialog)
+ virtual Graphic GetFilteredGraphic( const Graphic& rGraphic, double fScaleX, double fScaleY );
+};
+
+class oldAbstractGraphicFilterDialog_Impl :public AbstractGraphicFilterDialog
+{
+ DECL_ABSTDLG_BASE(oldAbstractGraphicFilterDialog_Impl,oldGraphicFilterDialog)
virtual Graphic GetFilteredGraphic( const Graphic& rGraphic, double fScaleX, double fScaleY );
};
diff --git a/cui/source/inc/cuigrfflt.hxx b/cui/source/inc/cuigrfflt.hxx
index 04d8da269bd7..edd3143cc44d 100644
--- a/cui/source/inc/cuigrfflt.hxx
+++ b/cui/source/inc/cuigrfflt.hxx
@@ -80,40 +80,40 @@ public:
virtual Graphic GetFilteredGraphic( const Graphic& rGraphic, double fScaleX, double fScaleY ) = 0;
};
-class GraphicFilterDialog : public ModalDialog
+class GraphicPreviewWindow : public Control
{
private:
+ const Graphic* mpOrigGraphic;
+ Link maModifyHdl;
+ Graphic maScaledOrig;
+ Graphic maPreview;
+ double mfScaleX;
+ double mfScaleY;
- class PreviewWindow : public Control
- {
- private:
- const Graphic* mpOrigGraphic;
- Graphic maScaledOrig;
- Graphic maPreview;
- double mfScaleX;
- double mfScaleY;
+ virtual void Paint(const Rectangle& rRect);
+ virtual void Resize();
+ virtual Size GetOptimalSize() const;
- virtual void Paint(const Rectangle& rRect);
- virtual void Resize();
- virtual Size GetOptimalSize() const;
+ void ScaleImageToFit();
- void ScaleImageToFit();
-
- public:
+public:
- PreviewWindow(Window* pParent, WinBits nStyle);
- void init(const Graphic *pOrigGraphic)
- {
- mpOrigGraphic = pOrigGraphic;
- ScaleImageToFit();
- }
-
- void SetPreview(const Graphic& rGraphic);
- const Graphic& GetScaledOriginal() const { return maScaledOrig; }
- double GetScaleX() const { return mfScaleX; }
- double GetScaleY() const { return mfScaleY; }
- };
+ GraphicPreviewWindow(Window* pParent, WinBits nStyle);
+ void init(const Graphic* pOrigGraphic, const Link& rLink)
+ {
+ mpOrigGraphic = pOrigGraphic;
+ maModifyHdl = rLink;
+ ScaleImageToFit();
+ }
+
+ void SetPreview(const Graphic& rGraphic);
+ const Graphic& GetScaledOriginal() const { return maScaledOrig; }
+ double GetScaleX() const { return mfScaleX; }
+ double GetScaleY() const { return mfScaleY; }
+};
+class GraphicFilterDialog : public ModalDialog
+{
private:
Timer maTimer;
@@ -125,7 +125,7 @@ private:
DECL_LINK( ImplModifyHdl, void* p );
protected:
- PreviewWindow* mpPreview;
+ GraphicPreviewWindow* mpPreview;
const Link& GetModifyHdl() const { return maModifyHdl; }
const Size& GetGraphicSizePixel() const { return maSizePixel; }
@@ -142,20 +142,17 @@ public:
// - GraphicFilterSmooth -
// -------------------------
-class GraphicFilterSmooth : public oldGraphicFilterDialog
+class GraphicFilterSmooth : public GraphicFilterDialog
{
private:
-
- FixedText maFtRadius;
- NumericField maMtrRadius;
+ NumericField* mpMtrRadius;
public:
GraphicFilterSmooth( Window* pParent, const Graphic& rGraphic, double nRadius);
- ~GraphicFilterSmooth();
virtual Graphic GetFilteredGraphic( const Graphic& rGraphic, double fScaleX, double fScaleY );
- double GetRadius() const { return maMtrRadius.GetValue() / 10.0; }
+ double GetRadius() const { return mpMtrRadius->GetValue() / 10.0; }
};
// -----------------------
diff --git a/cui/uiconfig/ui/smoothdialog.ui b/cui/uiconfig/ui/smoothdialog.ui
new file mode 100644
index 000000000000..b5619cf3ed36
--- /dev/null
+++ b/cui/uiconfig/ui/smoothdialog.ui
@@ -0,0 +1,188 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- Generated with glade 3.16.1 -->
+<interface>
+ <requires lib="gtk+" version="3.0"/>
+ <!-- interface-requires LibreOffice 1.0 -->
+ <object class="GtkAdjustment" id="adjustment1">
+ <property name="lower">0.10000000000000001</property>
+ <property name="upper">100</property>
+ <property name="value">0.59999999999999998</property>
+ <property name="step_increment">1</property>
+ <property name="page_increment">10</property>
+ </object>
+ <object class="GtkDialog" id="SmoothDialog">
+ <property name="can_focus">False</property>
+ <property name="border_width">6</property>
+ <property name="title" translatable="yes">Smooth</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="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="grid1">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="hexpand">True</property>
+ <property name="vexpand">True</property>
+ <property name="column_spacing">24</property>
+ <child>
+ <object class="cuilo-GraphicPreviewWindow" id="preview">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="hexpand">True</property>
+ <property name="vexpand">True</property>
+ </object>
+ <packing>
+ <property name="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="GtkGrid" id="grid2">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="row_spacing">6</property>
+ <child>
+ <object class="GtkSpinButton" id="radius">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="adjustment">adjustment1</property>
+ <property name="digits">1</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="label2">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="xalign">0</property>
+ <property name="label" translatable="yes">Smooth Radius</property>
+ <property name="use_underline">True</property>
+ <property name="mnemonic_widget">radius</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>
+ </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">Parameters</property>
+ <attributes>
+ <attribute name="weight" value="bold"/>
+ </attributes>
+ </object>
+ </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>