Index: uilistbtntype.cpp
===================================================================
--- uilistbtntype.cpp	(revision 14907)
+++ uilistbtntype.cpp	(working copy)
@@ -1705,6 +1705,7 @@
             font = m_fontInactive;
             p->setFont(font->face);
             p->setPen(font->color);
+            it.current()->setJustification(m_justify);
             it.current()->paint(p, font, x, y, active_on);
             font = m_active ? m_fontActive : m_fontInactive;;
             p->setFont(font->face);
@@ -1712,6 +1713,7 @@
         }
         else
         {
+            it.current()->setJustification(m_justify);
             it.current()->paint(p, font, x, y, active_on);
         }
 
@@ -1744,6 +1746,11 @@
     
 }
 
+void UIListBtnType::SetJustification(int justification)
+{
+	m_justify = justification;
+}
+
 void UIListBtnType::Init()
 {
     QFontMetrics fm(m_fontActive->face);
@@ -1935,7 +1942,8 @@
     m_showArrow = showArrow;
     m_data      = 0;
     m_overrideInactive = false;
-
+    m_justify = Qt::AlignLeft|Qt::AlignVCenter;
+    
     if (state >= NotChecked)
         m_checkable = true;
 
@@ -1944,6 +1952,11 @@
     m_parent->InsertItem(this);
 }
 
+void UIListBtnTypeItem::setJustification(int justification)
+{
+	m_justify = justification;
+}
+
 void UIListBtnTypeItem::CalcDimensions(void)
 {
     if (!m_parent->m_initialized)
@@ -2153,6 +2166,6 @@
     tr.moveBy(x,y);
     QString text = m_parent->cutDown(m_text, &(font->face), false,
                                      tr.width(), tr.height());
-    p->drawText(tr, Qt::AlignLeft|Qt::AlignVCenter, text);    
+    p->drawText(tr, m_justify, text);    
 }
 
Index: uilistbtntype.h
===================================================================
--- uilistbtntype.h	(revision 14907)
+++ uilistbtntype.h	(working copy)
@@ -175,8 +175,9 @@
     void  SetSpacing(int spacing);
     void  SetMargin(int margin);
     void  SetItemRegColor(const QColor& beg, const QColor& end, uint alpha);
-    void  SetItemSelColor(const QColor& beg, const QColor& end, uint alpha);
-    
+    void  SetItemSelColor(const QColor& beg, const QColor& end, uint alpha);  
+    void  SetJustification(int justification);
+
     void  Draw(QPainter *p, int order, int context);
     void  Draw(QPainter *p, int order, int context, bool active_on);
     void  SetActive(bool active);
@@ -237,7 +238,8 @@
     int   m_itemSpacing;
     int   m_itemMargin;
     uint  m_itemsVisible;
-
+	
+	int m_justify;
     bool  m_active;
     bool  m_visible;
     bool  m_showScrollArrows;
@@ -337,7 +339,8 @@
     bool moveUpDown(bool flag);
     
     void paint(QPainter *p, fontProp *font, int x, int y, bool active_on);
-    
+    void setJustification(int justification);
+
   protected:
     void  CalcDimensions(void);
 
@@ -356,6 +359,7 @@
     bool           m_showArrow;
 
     bool           m_overrideInactive;
+    int m_justify;
 
     friend class UIListBtnType;
 };
Index: xmlparse.cpp
===================================================================
--- xmlparse.cpp	(revision 14907)
+++ xmlparse.cpp	(working copy)
@@ -3447,6 +3447,7 @@
     QRect   area = QRect(0,0,0,0);
     QString fontActive;
     QString fontInactive;
+    QString align = "";
     bool    showArrow = true;
     bool    showScrollArrows = false;
     int     draworder = 0;
@@ -3507,6 +3508,10 @@
                 if (getFirstText(info).lower() == "no")
                     showArrow = false;
             }
+            else if (info.tagName() == "align")
+            {
+                align = getFirstText(info);
+            }
             else if (info.tagName() == "showscrollarrows") {
                 if (getFirstText(info).lower() == "yes")
                     showScrollArrows = true;
@@ -3558,6 +3563,18 @@
         }
     }
 
+    int jst = Qt::AlignLeft|Qt::AlignVCenter;
+
+    if (!align.isNull() && !align.isEmpty())
+    {
+    	if (align.lower() == "center")
+    		jst = Qt::AlignCenter|Qt::AlignVCenter;
+    	else if (align.lower() == "right")
+    		jst = Qt::AlignRight|Qt::AlignVCenter;
+    	else if (align.lower() == "left")
+    		jst = Qt::AlignLeft|Qt::AlignVCenter;
+     }
+
     fontProp *fpActive = GetFont(fontActive);
     if (!fpActive)
     {
@@ -3580,6 +3597,7 @@
     l->SetScreen(wmult, hmult);
     l->SetFontActive(fpActive);
     l->SetFontInactive(fpInactive);
+    l->SetJustification(jst);
     l->SetItemRegColor(grUnselectedBeg, grUnselectedEnd, grUnselectedAlpha);
     l->SetItemSelColor(grSelectedBeg, grSelectedEnd, grSelectedAlpha);
     l->SetSpacing((int)(spacing*hmult));
