[Libreoffice-commits] .: cui/uiconfig vcl/source

Libreoffice Gerrit user logerrit at kemper.freedesktop.org
Wed Dec 5 08:29:56 PST 2012


 cui/uiconfig/ui/numberformatpage.ui |    6 +++---
 vcl/source/window/builder.cxx       |   19 ++++++++++++-------
 2 files changed, 15 insertions(+), 10 deletions(-)

New commits:
commit c2b8f129f378a23d626c4985238faa813cbaf381
Author: Caolán McNamara <caolanm at redhat.com>
Date:   Wed Dec 5 16:19:57 2012 +0000

    allow arbitrary icons from our icon-themes as button images
    
    Change-Id: Ibe02b485e265ac6274b0aab51676efb0e1d280ae

diff --git a/cui/uiconfig/ui/numberformatpage.ui b/cui/uiconfig/ui/numberformatpage.ui
index 493988b..bbcaf9f 100644
--- a/cui/uiconfig/ui/numberformatpage.ui
+++ b/cui/uiconfig/ui/numberformatpage.ui
@@ -503,16 +503,16 @@
   <object class="GtkImage" id="image1">
     <property name="visible">True</property>
     <property name="can_focus">False</property>
-    <property name="stock">gtk-delete</property>
+    <property name="pixbuf">svx/res/nu02.png</property>
   </object>
   <object class="GtkImage" id="image2">
     <property name="visible">True</property>
     <property name="can_focus">False</property>
-    <property name="stock">gtk-apply</property>
+    <property name="pixbuf">svx/res/nu01.png</property>
   </object>
   <object class="GtkImage" id="image3">
     <property name="visible">True</property>
     <property name="can_focus">False</property>
-    <property name="stock">gtk-edit</property>
+    <property name="pixbuf">svx/res/nu03.png</property>
   </object>
 </interface>
diff --git a/vcl/source/window/builder.cxx b/vcl/source/window/builder.cxx
index 9acdad1..596bf18 100644
--- a/vcl/source/window/builder.cxx
+++ b/vcl/source/window/builder.cxx
@@ -204,17 +204,22 @@ VclBuilder::VclBuilder(Window *pParent, OUString sUIDir, OUString sUIFile, OStri
     {
         PushButton *pTarget = get<PushButton>(aI->m_sID);
         FixedImage *pImage = get<FixedImage>(aI->m_sValue);
-        aImagesToBeRemoved.insert(aI->m_sValue);
-        const OString &rImage = m_pParserState->m_aStockMap[aI->m_sValue];
-        SymbolType eType = mapStockToSymbol(rImage);
-        SAL_WARN_IF(!pTarget || !pImage || eType == SYMBOL_NOSYMBOL,
+        SAL_WARN_IF(!pTarget || !pImage,
             "vcl", "missing elements of button/image/stock");
-        if (!pTarget || eType == SYMBOL_NOSYMBOL)
+        if (!pTarget || !pImage)
             continue;
+        aImagesToBeRemoved.insert(aI->m_sValue);
 
-        //to-do, situation where image isn't a stock image
-        if (pTarget && eType != SYMBOL_NOSYMBOL)
+        VclBuilder::stringmap::iterator aFind = m_pParserState->m_aStockMap.find(aI->m_sValue);
+        if (aFind == m_pParserState->m_aStockMap.end())
+            pTarget->SetModeImage(pImage->GetImage());
+        else
         {
+            const OString &rImage = aFind->second;
+            SymbolType eType = mapStockToSymbol(rImage);
+            SAL_WARN_IF(eType == SYMBOL_NOSYMBOL, "vcl", "missing stock image element for button");
+            if (eType == SYMBOL_NOSYMBOL)
+                continue;
             pTarget->SetSymbol(eType);
             if (eType == SYMBOL_IMAGE)
                 pTarget->SetModeImage(Bitmap(VclResId(mapStockToImageResource(rImage))));


More information about the Libreoffice-commits mailing list