diff --git a/code/nel/src/gui/ctrl_button.cpp b/code/nel/src/gui/ctrl_button.cpp
index 0cd859a09..6fcf5f8ee 100644
--- a/code/nel/src/gui/ctrl_button.cpp
+++ b/code/nel/src/gui/ctrl_button.cpp
@@ -30,7 +30,41 @@ namespace NLGUI
{
std::string CCtrlButton::getProperty( const std::string &name ) const
{
- return CCtrlBaseButton::getProperty( name );
+ if( name == "tx_normal" )
+ {
+ return CViewRenderer::getInstance()->getTextureNameFromId( _TextureIdNormal );
+ }
+ else
+ if( name == "tx_pushed" )
+ {
+ return CViewRenderer::getInstance()->getTextureNameFromId( _TextureIdPushed );
+ }
+ else
+ if( name == "tx_over" )
+ {
+ return CViewRenderer::getInstance()->getTextureNameFromId( _TextureIdOver );
+ }
+ else
+ if( name == "scale" )
+ {
+ return toString( _Scale );
+ }
+ else
+ if( name == "align" )
+ {
+ std::string align;
+ if( ( _Align & 1 ) != 0 )
+ align = "r";
+ else
+ align = "l";
+ if( ( _Align & 2 ) != 0 )
+ align += "t";
+ else
+ align += "b";
+ return align;
+ }
+ else
+ return CCtrlBaseButton::getProperty( name );
}
// ----------------------------------------------------------------------------
diff --git a/code/nel/tools/3d/object_viewer_qt/src/plugins/gui_editor/widgets/CtrlBase.xml b/code/nel/tools/3d/object_viewer_qt/src/plugins/gui_editor/widgets/CtrlBase.xml
new file mode 100644
index 000000000..a7466b807
--- /dev/null
+++ b/code/nel/tools/3d/object_viewer_qt/src/plugins/gui_editor/widgets/CtrlBase.xml
@@ -0,0 +1,57 @@
+
+
+ CtrlBase
+ CCtrlBase
+ InterfaceElement
+
+ true
+
+
+
+
+ tooltip
+ string
+
+
+
+ tooltip_i18n
+ string
+
+
+
+ on_tooltip
+ string
+
+
+
+ on_tooltip_params
+ string
+
+
+
+ tooltip_parent
+ string
+
+
+
+ tooltip_special_parent
+ string
+
+
+
+ tooltip_posref
+ string
+ auto
+
+
+ tooltip_posref_alt
+ string
+ auto
+
+
+ instant_help
+ bool
+
+
+
+
diff --git a/code/nel/tools/3d/object_viewer_qt/src/plugins/gui_editor/widgets/CtrlBaseButton.xml b/code/nel/tools/3d/object_viewer_qt/src/plugins/gui_editor/widgets/CtrlBaseButton.xml
new file mode 100644
index 000000000..23bc166db
--- /dev/null
+++ b/code/nel/tools/3d/object_viewer_qt/src/plugins/gui_editor/widgets/CtrlBaseButton.xml
@@ -0,0 +1,149 @@
+
+
+ CtrlBaseButton
+ CCtrlBaseButton
+ CtrlBase
+
+ true
+
+
+
+
+ button_type
+ string
+ toggle_button
+
+
+ pushed
+ bool
+ false
+
+
+ over_when_pushed
+ bool
+ true
+
+
+ clicked_when_pushed
+ bool
+ false
+
+
+ color
+ string
+ 255 255 255 255
+
+
+ col_pushed
+ string
+ 255 255 255 255
+
+
+ col_over
+ string
+ 255 255 255 255
+
+
+ global_color_normal
+ bool
+ true
+
+
+ global_color_pushed
+ bool
+ true
+
+
+ global_color_over
+ bool
+ true
+
+
+ onover
+ string
+
+
+
+ params_over
+ string
+
+
+
+ onclick_l
+ string
+
+
+
+ params_l
+ string
+
+
+
+ ondblclick_l
+ string
+
+
+
+ params_dblclick_l
+ string
+
+
+
+ onclick_r
+ string
+
+
+
+ params_r
+ string
+
+
+
+ onlongclick_l
+ string
+
+
+
+ params_longclick_l
+ string
+
+
+
+ onclock_tick
+ string
+
+
+
+ params_clock_tick
+ string
+
+
+
+ menu_l
+ string
+
+
+
+ menu_r
+ string
+
+
+
+ menu_b
+ string
+
+
+
+ frozen
+ bool
+ false
+
+
+ frozen_half_tone
+ bool
+
+
+
+
+
+
diff --git a/code/nel/tools/3d/object_viewer_qt/src/plugins/gui_editor/widgets/CtrlButton.xml b/code/nel/tools/3d/object_viewer_qt/src/plugins/gui_editor/widgets/CtrlButton.xml
new file mode 100644
index 000000000..d9a5ba21a
--- /dev/null
+++ b/code/nel/tools/3d/object_viewer_qt/src/plugins/gui_editor/widgets/CtrlButton.xml
@@ -0,0 +1,37 @@
+
+
+ CtrlButton
+ CCtrlButton
+ CtrlBaseButton
+
+ false
+
+
+
+
+ tx_normal
+ string
+
+
+
+ tx_pushed
+ string
+
+
+
+ tx_over
+ string
+
+
+
+ scale
+ bool
+ false
+
+
+ align
+ string
+
+
+
+