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

weld SwWatermarkDialog

Change-Id: Iff3ddfb4dd75088e39ea7675b085f1bbde2c2045
Reviewed-on: https://gerrit.libreoffice.org/56247
Tested-by: Jenkins
Reviewed-by: 's avatarCaolán McNamara <caolanm@redhat.com>
Tested-by: 's avatarCaolán McNamara <caolanm@redhat.com>
üst 86d02e1f
......@@ -21,6 +21,7 @@
#define INCLUDED_SVTOOLS_TOOLBARMENU_HXX
#include <svtools/svtdllapi.h>
#include <svtools/framestatuslistener.hxx>
#include <com/sun/star/frame/FeatureStateEvent.hpp>
#include <com/sun/star/lang/XMultiServiceFactory.hpp>
......@@ -36,16 +37,32 @@
#include <vcl/dockwin.hxx>
class ValueSet;
namespace svt { class FrameStatusListener; }
namespace svtools {
class ToolbarMenuEntry;
struct ToolbarMenu_Impl;
class SVT_DLLPUBLIC ToolbarPopup : public DockingWindow
class SVT_DLLPUBLIC ToolbarPopupBase
{
friend class ToolbarPopupStatusListener;
public:
ToolbarPopupBase(const css::uno::Reference<css::frame::XFrame>& rFrame);
virtual ~ToolbarPopupBase();
protected:
void AddStatusListener( const OUString& rCommandURL );
// Forwarded from XStatusListener (subclasses must override this one to get the status updates):
/// @throws css::uno::RuntimeException
virtual void statusChanged(const css::frame::FeatureStateEvent& Event );
css::uno::Reference<css::frame::XFrame> mxFrame;
rtl::Reference<svt::FrameStatusListener> mxStatusListener;
};
class SVT_DLLPUBLIC ToolbarPopup : public DockingWindow, public ToolbarPopupBase
{
public:
ToolbarPopup(const css::uno::Reference<css::frame::XFrame>& rFrame,
vcl::Window* pParentWindow,
......@@ -57,20 +74,11 @@ public:
virtual void dispose() override;
protected:
void AddStatusListener( const OUString& rCommandURL );
bool IsInPopupMode();
void EndPopupMode();
// Forwarded from XStatusListener (subclasses must override this one to get the status updates):
/// @throws css::uno::RuntimeException
virtual void statusChanged(const css::frame::FeatureStateEvent& Event );
css::uno::Reference< css::frame::XFrame > mxFrame;
private:
void init();
rtl::Reference< svt::FrameStatusListener > mxStatusListener;
};
class SVT_DLLPUBLIC ToolbarMenu : public ToolbarPopup
......
......@@ -527,6 +527,10 @@ public:
return !mbNoSelection && (nItemId == mnSelItemId);
}
void SetNoSelection();
bool IsNoSelection() const
{
return mbNoSelection;
}
Color GetItemColor( sal_uInt16 nItemId ) const;
OUString GetItemText( sal_uInt16 nItemId ) const;
......
......@@ -12,10 +12,12 @@
#include <memory>
#include <vcl/menubtn.hxx>
#include <vcl/weld.hxx>
#include <svx/colorwindow.hxx>
#include <sfx2/controlwrapper.hxx>
class SvxColorListBox;
class ColorListBox;
class SvxListBoxColorWrapper
{
......@@ -78,6 +80,65 @@ public:
DECL_LINK(WindowEventListener, VclWindowEvent&, void);
};
class ListBoxColorWrapper
{
public:
ListBoxColorWrapper(ColorListBox* pControl);
void operator()(const OUString& rCommand, const NamedColor& rColor);
void dispose();
private:
ColorListBox* mpControl;
};
class SVX_DLLPUBLIC ColorListBox
{
private:
friend class ListBoxColorWrapper;
std::unique_ptr<ColorWindow> m_xColorWindow;
std::unique_ptr<weld::MenuButton> m_xButton;
weld::Window* m_pTopLevel;
Link<ColorListBox&, void> m_aSelectedLink;
ListBoxColorWrapper m_aColorWrapper;
Color m_aAutoDisplayColor;
Color m_aSaveColor;
NamedColor m_aSelectedColor;
sal_uInt16 m_nSlotId;
bool m_bShowNoneButton;
std::shared_ptr<PaletteManager> m_xPaletteManager;
BorderColorStatus m_aBorderColorStatus;
void Selected(const NamedColor& rNamedColor);
void createColorWindow();
void LockWidthRequest();
ColorWindow* getColorWindow() const;
public:
ColorListBox(weld::MenuButton* pControl, weld::Window* pWindow);
~ColorListBox();
void SetSelectHdl(const Link<ColorListBox&, void>& rLink)
{
m_aSelectedLink = rLink;
}
void SetSlotId(sal_uInt16 nSlotId, bool bShowNoneButton = false);
Color const & GetSelectEntryColor() const { return m_aSelectedColor.first; }
NamedColor const & GetSelectedEntry() const { return m_aSelectedColor; }
void SelectEntry(const NamedColor& rColor);
void SelectEntry(const Color& rColor);
void SetNoSelection() { getColorWindow()->SetNoSelection(); }
bool IsNoSelection() const { return getColorWindow()->IsNoSelection(); }
void SetAutoDisplayColor(const Color &rColor) { m_aAutoDisplayColor = rColor; }
void ShowPreview(const NamedColor &rColor);
void EnsurePaletteManager();
void SaveValue() { m_aSaveColor = GetSelectEntryColor(); }
bool IsValueChangedFromSaved() const { return m_aSaveColor != GetSelectEntryColor(); }
};
/** A wrapper for SvxColorListBox. */
class SVX_DLLPUBLIC SvxColorListBoxWrapper
: public sfx::SingleControlWrapper<SvxColorListBox, Color>
......
......@@ -109,6 +109,63 @@ public:
void SetSelectedHdl( const Link<const NamedColor&, void>& rLink ) { maSelectedLink = rLink; }
};
class SVX_DLLPUBLIC ColorWindow : public svtools::ToolbarPopupBase
{
private:
std::unique_ptr<weld::Builder> m_xBuilder;
const sal_uInt16 theSlotId;
OUString maCommand;
weld::Window* mpParentWindow;
weld::MenuButton* mpMenuButton;
std::shared_ptr<PaletteManager> mxPaletteManager;
BorderColorStatus& mrBorderColorStatus;
ColorSelectFunction maColorSelectFunction;
std::unique_ptr<ColorValueSet> mxColorSet;
std::unique_ptr<ColorValueSet> mxRecentColorSet;
std::unique_ptr<weld::Container> mxTopLevel;
std::unique_ptr<weld::ComboBoxText> mxPaletteListBox;
std::unique_ptr<weld::Button> mxButtonAutoColor;
std::unique_ptr<weld::Button> mxButtonNoneColor;
std::unique_ptr<weld::Button> mxButtonPicker;
std::unique_ptr<weld::Widget> mxAutomaticSeparator;
std::unique_ptr<weld::CustomWeld> mxColorSetWin;
std::unique_ptr<weld::CustomWeld> mxRecentColorSetWin;
Link<const NamedColor&, void> maSelectedLink;
DECL_LINK(SelectHdl, SvtValueSet*, void);
DECL_LINK(SelectPaletteHdl, weld::ComboBoxText&, void);
DECL_LINK(AutoColorClickHdl, weld::Button&, void);
DECL_LINK(OpenPickerClickHdl, weld::Button&, void);
static bool SelectValueSetEntry(ColorValueSet* pColorSet, const Color& rColor);
static NamedColor GetSelectEntryColor(SvtValueSet const * pColorSet);
NamedColor GetAutoColor() const;
public:
ColorWindow(const OUString& rCommand,
std::shared_ptr<PaletteManager> const & rPaletteManager,
BorderColorStatus& rBorderColorStatus,
sal_uInt16 nSlotId,
const css::uno::Reference< css::frame::XFrame >& rFrame,
weld::Window* pParentWindow, weld::MenuButton* pMenuButton,
ColorSelectFunction const& rColorSelectFunction);
weld::Container* GetWidget() { return mxTopLevel.get(); }
virtual ~ColorWindow() override;
void ShowNoneButton();
void StartSelection();
void SetNoSelection();
bool IsNoSelection() const;
void SelectEntry(const NamedColor& rColor);
void SelectEntry(const Color& rColor);
NamedColor GetSelectEntryColor() const;
virtual void statusChanged( const css::frame::FeatureStateEvent& rEvent ) override;
void SetSelectedHdl( const Link<const NamedColor&, void>& rLink ) { maSelectedLink = rLink; }
};
#endif
/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
......@@ -61,6 +61,8 @@ public:
bool IsMouseCaptured() const { return m_pDrawingArea->has_grab(); }
void EnableRTL(bool bEnable) { m_pDrawingArea->set_direction(bEnable); }
void ReleaseMouse() { m_pDrawingArea->grab_remove(); }
void SetHelpId(const OString& rHelpId) { m_pDrawingArea->set_help_id(rHelpId); }
void SetAccessibleName(const OUString& rName) { m_pDrawingArea->set_accessible_name(rName); }
void set_size_request(int nWidth, int nHeight)
{
m_pDrawingArea->set_size_request(nWidth, nHeight);
......
......@@ -64,6 +64,8 @@ public:
virtual void Select();
void ExecuteMenu();
bool MenuShown() const;
void CancelMenu();
//if false then the whole button launches the menu
//if true, then the button has a separator
......
......@@ -34,7 +34,7 @@ class VCL_DLLPUBLIC VirtualDevice : public OutputDevice
friend class Application;
friend class ::OutputDevice;
friend class Printer;
friend cairo_surface_t* get_underlying_cairo_suface(VirtualDevice&);
friend cairo_surface_t* get_underlying_cairo_surface(VirtualDevice&);
public:
// reference device modes for different compatibility levels
enum class RefDevMode { NONE = 0,
......
......@@ -45,6 +45,8 @@ public:
virtual bool is_visible() const = 0; //if this widget visibility and all parents is true
virtual void grab_focus() = 0;
virtual bool has_focus() const = 0;
virtual void set_has_default(bool has_default) = 0;
virtual bool get_has_default() const = 0;
virtual void show() = 0;
virtual void hide() = 0;
void show(bool bShow)
......@@ -364,27 +366,13 @@ protected:
public:
virtual void set_label(const OUString& rText) = 0;
virtual void set_image(VirtualDevice& rDevice) = 0;
virtual OUString get_label() const = 0;
void clicked() { signal_clicked(); }
void connect_clicked(const Link<Button&, void>& rLink) { m_aClickHdl = rLink; }
};
class VCL_DLLPUBLIC MenuButton : virtual public Button
{
protected:
Link<const OString&, void> m_aSelectHdl;
void signal_selected(const OString& rIdent) { m_aSelectHdl.Call(rIdent); }
public:
void connect_selected(const Link<const OString&, void>& rLink) { m_aSelectHdl = rLink; }
virtual void set_item_active(const OString& rIdent, bool bActive) = 0;
virtual void set_item_label(const OString& rIdent, const OUString& rLabel) = 0;
virtual void set_item_help_id(const OString& rIdent, const OString& rHelpId) = 0;
virtual OString get_item_help_id(const OString& rIdent) const = 0;
};
class VCL_DLLPUBLIC ToggleButton : virtual public Button
{
protected:
......@@ -434,6 +422,23 @@ public:
virtual void connect_toggled(const Link<ToggleButton&, void>& rLink) { m_aToggleHdl = rLink; }
};
class VCL_DLLPUBLIC MenuButton : virtual public ToggleButton
{
protected:
Link<const OString&, void> m_aSelectHdl;
void signal_selected(const OString& rIdent) { m_aSelectHdl.Call(rIdent); }
public:
void connect_selected(const Link<const OString&, void>& rLink) { m_aSelectHdl = rLink; }
virtual void set_item_active(const OString& rIdent, bool bActive) = 0;
virtual void set_item_label(const OString& rIdent, const OUString& rLabel) = 0;
virtual void set_item_help_id(const OString& rIdent, const OString& rHelpId) = 0;
virtual OString get_item_help_id(const OString& rIdent) const = 0;
virtual void set_popover(weld::Widget* pPopover) = 0;
};
class VCL_DLLPUBLIC CheckButton : virtual public ToggleButton
{
};
......
......@@ -22,7 +22,6 @@ svx/uiconfig/ui/classificationdialog.ui://GtkTreeView[@id='intellectualPropertyP
svx/uiconfig/ui/classificationdialog.ui://GtkTreeView[@id='intellectualPropertyPartLB'] no-labelled-by
svx/uiconfig/ui/colorwindow.ui://GtkButton[@id='auto_color_button'] button-no-label
svx/uiconfig/ui/colorwindow.ui://GtkComboBox[@id='palette_listbox'] no-labelled-by
svx/uiconfig/ui/colorwindow.ui://GtkLabel[@id='label1'] orphan-label
svx/uiconfig/ui/compressgraphicdialog.ui://GtkScale[@id='scale-quality'] no-labelled-by
svx/uiconfig/ui/compressgraphicdialog.ui://GtkSpinButton[@id='spin-quality'] no-labelled-by
svx/uiconfig/ui/compressgraphicdialog.ui://GtkScale[@id='scale-compression'] no-labelled-by
......@@ -70,6 +69,9 @@ svx/uiconfig/ui/mediaplayback.ui://GtkLabel[@id='label3'] orphan-label
svx/uiconfig/ui/mediaplayback.ui://GtkScale[@id='timeslider'] no-labelled-by
svx/uiconfig/ui/mediaplayback.ui://GtkEntry[@id='timeedit:border'] no-labelled-by
svx/uiconfig/ui/mediaplayback.ui://GtkScale[@id='volumeslider'] no-labelled-by
svx/uiconfig/ui/oldcolorwindow.ui://GtkButton[@id='auto_color_button'] button-no-label
svx/uiconfig/ui/oldcolorwindow.ui://GtkComboBox[@id='palette_listbox'] no-labelled-by
svx/uiconfig/ui/oldcolorwindow.ui://GtkLabel[@id='label1'] orphan-label
svx/uiconfig/ui/paralinespacingcontrol.ui://GtkSpinButton[@id='percent_box:0%'] no-labelled-by
svx/uiconfig/ui/paralinespacingcontrol.ui://GtkSpinButton[@id='metric_box:0.00cm'] no-labelled-by
svx/uiconfig/ui/redlinefilterpage.ui://GtkCheckButton[@id='comment'] missing-labelled-by
......
......@@ -1393,18 +1393,18 @@ class ToolbarPopupStatusListener : public svt::FrameStatusListener
{
public:
ToolbarPopupStatusListener( const css::uno::Reference< css::frame::XFrame >& xFrame,
ToolbarPopup& rToolbarPopup );
ToolbarPopupBase& rToolbarPopup );
virtual void SAL_CALL dispose() override;
virtual void SAL_CALL statusChanged( const css::frame::FeatureStateEvent& Event ) override;
VclPtr<ToolbarPopup> mpPopup;
ToolbarPopupBase* mpPopup;
};
ToolbarPopupStatusListener::ToolbarPopupStatusListener(
const css::uno::Reference< css::frame::XFrame >& xFrame,
ToolbarPopup& rToolbarPopup )
ToolbarPopupBase& rToolbarPopup )
: svt::FrameStatusListener( ::comphelper::getProcessComponentContext(), xFrame )
, mpPopup( &rToolbarPopup )
{
......@@ -1413,7 +1413,7 @@ ToolbarPopupStatusListener::ToolbarPopupStatusListener(
void SAL_CALL ToolbarPopupStatusListener::dispose()
{
mpPopup.clear();
mpPopup = nullptr;
svt::FrameStatusListener::dispose();
}
......@@ -1424,9 +1424,23 @@ void SAL_CALL ToolbarPopupStatusListener::statusChanged( const css::frame::Featu
mpPopup->statusChanged( Event );
}
ToolbarPopupBase::ToolbarPopupBase(const css::uno::Reference<css::frame::XFrame>& rFrame)
: mxFrame(rFrame)
{
}
ToolbarPopupBase::~ToolbarPopupBase()
{
if (mxStatusListener.is())
{
mxStatusListener->dispose();
mxStatusListener.clear();
}
}
ToolbarPopup::ToolbarPopup( const css::uno::Reference<css::frame::XFrame>& rFrame, vcl::Window* pParentWindow, WinBits nBits )
: DockingWindow(pParentWindow, nBits)
, mxFrame( rFrame )
, ToolbarPopupBase(rFrame)
{
init();
}
......@@ -1434,7 +1448,7 @@ ToolbarPopup::ToolbarPopup( const css::uno::Reference<css::frame::XFrame>& rFram
ToolbarPopup::ToolbarPopup( const css::uno::Reference<css::frame::XFrame>& rFrame, vcl::Window* pParentWindow,
const OString& rID, const OUString& rUIXMLDescription )
: DockingWindow(pParentWindow, rID, rUIXMLDescription, rFrame)
, mxFrame( rFrame )
, ToolbarPopupBase(rFrame)
{
init();
}
......@@ -1467,7 +1481,7 @@ void ToolbarPopup::dispose()
DockingWindow::dispose();
}
void ToolbarPopup::AddStatusListener( const OUString& rCommandURL )
void ToolbarPopupBase::AddStatusListener( const OUString& rCommandURL )
{
if( !mxStatusListener.is() )
mxStatusListener.set( new ToolbarPopupStatusListener( mxFrame, *this ) );
......@@ -1475,7 +1489,7 @@ void ToolbarPopup::AddStatusListener( const OUString& rCommandURL )
mxStatusListener->addStatusListener( rCommandURL );
}
void ToolbarPopup::statusChanged( const css::frame::FeatureStateEvent& /*Event*/ )
void ToolbarPopupBase::statusChanged( const css::frame::FeatureStateEvent& /*Event*/ )
{
}
......
......@@ -2925,7 +2925,7 @@ void SvtValueSet::SetStyle(WinBits nStyle)
if (nStyle != mnStyle)
{
mnStyle = nStyle;
mbFormat = false;
mbFormat = true;
Invalidate();
}
}
......
......@@ -60,6 +60,7 @@ $(eval $(call gb_UIConfig_add_uifiles,svx,\
svx/uiconfig/ui/linkwarndialog \
svx/uiconfig/ui/mediaplayback \
svx/uiconfig/ui/namespacedialog \
svx/uiconfig/ui/oldcolorwindow \
svx/uiconfig/ui/optgridpage \
svx/uiconfig/ui/paralinespacingcontrol \
svx/uiconfig/ui/paralrspacing \
......
<?xml version="1.0" encoding="UTF-8"?>
<!-- Generated with glade 3.20.0 -->
<!-- Generated with glade 3.22.1 -->
<interface domain="svx">
<requires lib="gtk+" version="3.18"/>
<requires lib="LibreOffice" version="1.0"/>
<requires lib="gtk+" version="3.20"/>
<object class="GtkImage" id="auto_icon">
<property name="visible">True</property>
<property name="can_focus">False</property>
<property name="pixbuf">cmd/sc_square_unfilled.png</property>
<property name="icon_name">cmd/sc_square_unfilled.png</property>
</object>
<object class="GtkImage" id="custom_color_icon">
<property name="visible">True</property>
<property name="can_focus">False</property>
<property name="margin_right">6</property>
<property name="xalign">0</property>
<property name="pixbuf">cmd/sc_colorsettings.png</property>
<property name="icon_name">cmd/sc_colorsettings.png</property>
<property name="icon_size">1</property>
</object>
<object class="GtkImage" id="none_icon">
<property name="visible">True</property>
<property name="can_focus">False</property>
<property name="pixbuf">cmd/sc_square_unfilled.png</property>
<property name="icon_name">cmd/sc_square_unfilled.png</property>
</object>
<object class="GtkWindow" id="palette_popup_window">
<object class="GtkPopover" id="palette_popup_window">
<property name="can_focus">False</property>
<property name="hexpand">True</property>
<property name="vexpand">True</property>
<property name="border_width">4</property>
<property name="resizable">False</property>
<property name="type_hint">dock</property>
<property name="position">bottom</property>
<property name="constrain_to">none</property>
<child>
<object class="GtkBox" id="box1">
<property name="visible">True</property>
......@@ -43,7 +42,9 @@
<object class="GtkButton" id="auto_color_button">
<property name="visible">True</property>
<property name="can_focus">True</property>
<property name="can_default">True</property>
<property name="receives_default">True</property>
<property name="no_show_all">True</property>
<property name="image">auto_icon</property>
<property name="relief">none</property>
<property name="xalign">0</property>
......@@ -58,7 +59,9 @@
<object class="GtkButton" id="none_color_button">
<property name="label" translatable="yes" context="colorwindow|none_color_button">None</property>
<property name="can_focus">True</property>
<property name="can_default">True</property>
<property name="receives_default">True</property>
<property name="no_show_all">True</property>
<property name="image">none_icon</property>
<property name="relief">none</property>
<property name="xalign">0</property>
......@@ -88,7 +91,7 @@
</packing>
</child>
<child>
<object class="GtkComboBox" id="palette_listbox">
<object class="GtkComboBoxText" id="palette_listbox">
<property name="visible">True</property>
<property name="can_focus">False</property>
</object>
......@@ -99,10 +102,25 @@
</packing>
</child>
<child>
<object class="svxcorelo-SvxColorValueSet" id="colorset">
<object class="GtkScrolledWindow" id="colorsetwin">
<property name="visible">True</property>
<property name="can_focus">True</property>
<property name="receives_default">True</property>
<property name="hscrollbar_policy">never</property>
<property name="shadow_type">in</property>
<child>
<object class="GtkViewport">
<property name="visible">True</property>
<property name="can_focus">False</property>
<child>
<object class="GtkDrawingArea" id="colorset">
<property name="visible">True</property>
<property name="can_focus">True</property>
<property name="receives_default">True</property>
<property name="events">GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK | GDK_KEY_PRESS_MASK | GDK_KEY_RELEASE_MASK | GDK_STRUCTURE_MASK</property>
</object>
</child>
</object>
</child>
</object>
<packing>
<property name="expand">False</property>
......@@ -126,6 +144,8 @@
<property name="visible">True</property>
<property name="can_focus">False</property>
<property name="label" translatable="yes" context="colorwindow|label1">Recent</property>
<property name="use_underline">True</property>
<property name="mnemonic_widget">recent_colorset</property>
<property name="xalign">0</property>
</object>
<packing>
......@@ -135,10 +155,11 @@
</packing>
</child>
<child>
<object class="svxcorelo-SvxColorValueSet" id="recent_colorset">
<object class="GtkDrawingArea" id="recent_colorset">
<property name="visible">True</property>
<property name="can_focus">True</property>
<property name="receives_default">True</property>
<property name="events">GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK | GDK_KEY_PRESS_MASK | GDK_KEY_RELEASE_MASK | GDK_STRUCTURE_MASK</property>
</object>
<packing>
<property name="expand">False</property>
......
<?xml version="1.0" encoding="UTF-8"?>
<!-- Generated with glade 3.20.0 -->
<interface domain="svx">
<requires lib="gtk+" version="3.18"/>
<requires lib="LibreOffice" version="1.0"/>
<object class="GtkImage" id="auto_icon">
<property name="visible">True</property>
<property name="can_focus">False</property>
<property name="pixbuf">cmd/sc_square_unfilled.png</property>
</object>
<object class="GtkImage" id="custom_color_icon">
<property name="visible">True</property>
<property name="can_focus">False</property>
<property name="margin_right">6</property>
<property name="xalign">0</property>
<property name="pixbuf">cmd/sc_colorsettings.png</property>
<property name="icon_size">1</property>
</object>
<object class="GtkImage" id="none_icon">
<property name="visible">True</property>
<property name="can_focus">False</property>
<property name="pixbuf">cmd/sc_square_unfilled.png</property>
</object>
<object class="GtkWindow" id="palette_popup_window">
<property name="can_focus">False</property>
<property name="hexpand">True</property>
<property name="vexpand">True</property>
<property name="border_width">4</property>
<property name="resizable">False</property>
<property name="type_hint">dock</property>
<child>
<object class="GtkBox" id="box1">
<property name="visible">True</property>
<property name="can_focus">False</property>
<property name="orientation">vertical</property>
<child>
<object class="GtkBox">
<property name="visible">True</property>
<property name="can_focus">False</property>
<property name="spacing">6</property>
<property name="homogeneous">True</property>
<child>
<object class="GtkButton" id="auto_color_button">
<property name="visible">True</property>
<property name="can_focus">True</property>
<property name="receives_default">True</property>
<property name="image">auto_icon</property>
<property name="relief">none</property>
<property name="xalign">0</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="none_color_button">
<property name="label" translatable="yes" context="oldcolorwindow|none_color_button">None</property>
<property name="can_focus">True</property>
<property name="receives_default">True</property>
<property name="image">none_icon</property>
<property name="relief">none</property>
<property name="xalign">0</property>
</object>
<packing>
<property name="expand">False</property>
<property name="fill">True</property>
<property name="position">1</property>
</packing>
</child>
</object>
<packing>
<property name="expand">False</property>
<property name="fill">True</property>
<property name="position">0</property>
</packing>
</child>
<child>
<object class="GtkSeparator" id="separator4">
<property name="visible">True</property>
<property name="can_focus">False</property>
</object>
<packing>
<property name="expand">False</property>
<property name="fill">True</property>
<property name="position">1</property>
</packing>
</child>
<child>
<object class="GtkComboBox" id="palette_listbox">
<property name="visible">True</property>
<property name="can_focus">False</property>
</object>
<packing>
<property name="expand">False</property>
<property name="fill">False</property>
<property name="position">2</property>
</packing>
</child>
<child>
<object class="svxcorelo-SvxColorValueSet" id="colorset">
<property name="visible">True</property>
<property name="can_focus">True</property>
<property name="receives_default">True</property>
</object>
<packing>
<property name="expand">False</property>
<property name="fill">True</property>
<property name="position">3</property>
</packing>
</child>
<child>
<object class="GtkSeparator" id="separator1">
<property name="visible">True</property>
<property name="can_focus">False</property>
</object>
<packing>
<property name="expand">False</property>
<property name="fill">True</property>
<property name="position">4</property>
</packing>
</child>
<child>
<object class="GtkLabel" id="label1">
<property name="visible">True</property>
<property name="can_focus">False</property>
<property name="label" translatable="yes" context="oldcolorwindow|label1">Recent</property>
<property name="xalign">0</property>
</object>
<packing>
<property name="expand">False</property>
<property name="fill">True</property>
<property name="position">5</property>
</packing>
</child>
<child>
<object class="svxcorelo-SvxColorValueSet" id="recent_colorset">
<property name="visible">True</property>
<property name="can_focus">True</property>
<property name="receives_default">True</property>
</object>
<packing>
<property name="expand">False</property>
<property name="fill">True</property>
<property name="position">7</property>
</packing>
</child>
<child>
<object class="GtkSeparator" id="separator3">
<property name="visible">True</property>
<property name="can_focus">False</property>
</object>
<packing>
<property name="expand">False</property>
<property name="fill">True</property>
<property name="position">8</property>
</packing>