Tag: cws_dev300_rptchart02
User: oj      
Date: 2008-06-05 10:40:04+0000
Modified:
   dba/reportdesign/source/core/api/ImageControl.cxx
   dba/reportdesign/source/core/api/FixedLine.cxx
   dba/reportdesign/source/core/api/ReportComponent.cxx

Log:
 #i90298# impl asian and complex

File Changes:

Directory: /dba/reportdesign/source/core/api/
=============================================

File [changed]: ImageControl.cxx
Url: 
http://dba.openoffice.org/source/browse/dba/reportdesign/source/core/api/ImageControl.cxx?r1=1.5.2.2&r2=1.5.2.3
Delta lines:  +32 -1
--------------------
--- ImageControl.cxx    2008-05-15 12:32:10+0000        1.5.2.2
+++ ImageControl.cxx    2008-06-05 10:40:02+0000        1.5.2.3
@@ -7,7 +7,7 @@
  * OpenOffice.org - a multi-platform office productivity suite
  *
  * $RCSfile: ImageControl.cxx,v $
- * $Revision: 1.5.2.2 $
+ * $Revision: 1.5.2.3 $
  *
  * This file is part of OpenOffice.org.
  *
@@ -64,6 +64,8 @@
             ,PROPERTY_CHARPOSTURE
             ,PROPERTY_CHARRELIEF
             ,PROPERTY_FONTDESCRIPTOR
+            ,PROPERTY_FONTDESCRIPTORASIAN
+            ,PROPERTY_FONTDESCRIPTORCOMPLEX
             ,PROPERTY_CONTROLTEXTEMPHASISMARK
             ,PROPERTY_CHARROTATION
             ,PROPERTY_CHARSCALEWIDTH
@@ -90,6 +92,35 @@
             ,PROPERTY_MASTERFIELDS
             ,PROPERTY_DETAILFIELDS
             ,PROPERTY_PARAADJUST
+            , PROPERTY_CHAREMPHASISASIAN
+            , PROPERTY_CHARFONTNAMEASIAN
+            , PROPERTY_CHARFONTSTYLENAMEASIAN
+            , PROPERTY_CHARFONTFAMILYASIAN
+            , PROPERTY_CHARFONTCHARSETASIAN
+            , PROPERTY_CHARFONTPITCHASIAN
+            , PROPERTY_CHARHEIGHTASIAN
+            , PROPERTY_CHARUNDERLINEASIAN
+            , PROPERTY_CHARWEIGHTASIAN
+            , PROPERTY_CHARPOSTUREASIAN
+            , PROPERTY_CHARWORDMODEASIAN
+            , PROPERTY_CHARROTATIONASIAN
+            , PROPERTY_CHARSCALEWIDTHASIAN
+            , PROPERTY_CHARLOCALEASIAN
+            , PROPERTY_CHAREMPHASISCOMPLEX
+            , PROPERTY_CHARFONTNAMECOMPLEX
+            , PROPERTY_CHARFONTSTYLENAMECOMPLEX
+            , PROPERTY_CHARFONTFAMILYCOMPLEX
+            , PROPERTY_CHARFONTCHARSETCOMPLEX
+            , PROPERTY_CHARFONTPITCHCOMPLEX
+            , PROPERTY_CHARHEIGHTCOMPLEX
+            , PROPERTY_CHARUNDERLINECOMPLEX
+            , PROPERTY_CHARWEIGHTCOMPLEX
+            , PROPERTY_CHARPOSTURECOMPLEX
+            , PROPERTY_CHARWORDMODECOMPLEX
+            , PROPERTY_CHARROTATIONCOMPLEX
+            , PROPERTY_CHARSCALEWIDTHCOMPLEX
+            , PROPERTY_CHARLOCALECOMPLEX   
+
        };
        return uno::Sequence< ::rtl::OUString 
>(pProps,sizeof(pProps)/sizeof(pProps[0]));
 }

File [changed]: FixedLine.cxx
Url: 
http://dba.openoffice.org/source/browse/dba/reportdesign/source/core/api/FixedLine.cxx?r1=1.6.2.1&r2=1.6.2.2
Delta lines:  +34 -1
--------------------
--- FixedLine.cxx       2008-05-15 12:32:10+0000        1.6.2.1
+++ FixedLine.cxx       2008-06-05 10:40:02+0000        1.6.2.2
@@ -7,7 +7,7 @@
  * OpenOffice.org - a multi-platform office productivity suite
  *
  * $RCSfile: FixedLine.cxx,v $
- * $Revision: 1.6.2.1 $
+ * $Revision: 1.6.2.2 $
  *
  * This file is part of OpenOffice.org.
  *
@@ -72,6 +72,8 @@
             ,PROPERTY_CHARPOSTURE
             ,PROPERTY_CHARRELIEF
             ,PROPERTY_FONTDESCRIPTOR
+            ,PROPERTY_FONTDESCRIPTORASIAN
+            ,PROPERTY_FONTDESCRIPTORCOMPLEX
             ,PROPERTY_CONTROLTEXTEMPHASISMARK
             ,PROPERTY_CHARROTATION
             ,PROPERTY_CHARSCALEWIDTH
@@ -106,6 +108,37 @@
             ,PROPERTY_MASTERFIELDS
             ,PROPERTY_DETAILFIELDS
             ,PROPERTY_PARAADJUST
+
+            , PROPERTY_CHAREMPHASISASIAN
+            , PROPERTY_CHARFONTNAMEASIAN
+            , PROPERTY_CHARFONTSTYLENAMEASIAN
+            , PROPERTY_CHARFONTFAMILYASIAN
+            , PROPERTY_CHARFONTCHARSETASIAN
+            , PROPERTY_CHARFONTPITCHASIAN
+            , PROPERTY_CHARHEIGHTASIAN
+            , PROPERTY_CHARUNDERLINEASIAN
+            , PROPERTY_CHARWEIGHTASIAN
+            , PROPERTY_CHARPOSTUREASIAN
+            , PROPERTY_CHARWORDMODEASIAN
+            , PROPERTY_CHARROTATIONASIAN
+            , PROPERTY_CHARSCALEWIDTHASIAN
+            , PROPERTY_CHARLOCALEASIAN
+            , PROPERTY_CHAREMPHASISCOMPLEX
+            , PROPERTY_CHARFONTNAMECOMPLEX
+            , PROPERTY_CHARFONTSTYLENAMECOMPLEX
+            , PROPERTY_CHARFONTFAMILYCOMPLEX
+            , PROPERTY_CHARFONTCHARSETCOMPLEX
+            , PROPERTY_CHARFONTPITCHCOMPLEX
+            , PROPERTY_CHARHEIGHTCOMPLEX
+            , PROPERTY_CHARUNDERLINECOMPLEX
+            , PROPERTY_CHARWEIGHTCOMPLEX
+            , PROPERTY_CHARPOSTURECOMPLEX
+            , PROPERTY_CHARWORDMODECOMPLEX
+            , PROPERTY_CHARROTATIONCOMPLEX
+            , PROPERTY_CHARSCALEWIDTHCOMPLEX
+            , PROPERTY_CHARLOCALECOMPLEX   
+
+
        };
        return uno::Sequence< ::rtl::OUString 
>(pProps,sizeof(pProps)/sizeof(pProps[0]));
 }

File [changed]: ReportComponent.cxx
Url: 
http://dba.openoffice.org/source/browse/dba/reportdesign/source/core/api/ReportComponent.cxx?r1=1.3&r2=1.3.2.1
Delta lines:  +47 -8
--------------------
--- ReportComponent.cxx 2008-04-10 18:13:32+0000        1.3
+++ ReportComponent.cxx 2008-06-05 10:40:02+0000        1.3.2.1
@@ -7,7 +7,7 @@
  * OpenOffice.org - a multi-platform office productivity suite
  *
  * $RCSfile: ReportComponent.cxx,v $
- * $Revision: 1.3 $
+ * $Revision: 1.3.2.1 $
  *
  * This file is part of OpenOffice.org.
  *
@@ -42,13 +42,36 @@
 #include <com/sun/star/reflection/XProxyFactory.hpp>
 #include <com/sun/star/text/ParagraphVertAlign.hpp>
 #include <svx/unoshape.hxx>
+#include <svx/unolingu.hxx>
 #include <svtools/syslocale.hxx>
+#include <svtools/lingucfg.hxx>
 // 
=============================================================================
 namespace reportdesign
 {
 // 
=============================================================================
        using namespace com::sun::star;
        using namespace comphelper;
+
+void lcl_getDefaultFonts( Font& rLatinFont, Font& rCJKFont, Font& 
rCTLFont,LanguageType  _eLatin,LanguageType _eCJK,LanguageType _eCTL )
+{
+        LanguageType eLatin = _eLatin;
+
+        //      #108374# / #107782#: If the UI language is Korean, the default 
Latin font has to
+        //      be queried for Korean, too (the Latin language from the 
document can't be Korean).
+        //      This is the same logic as in SwDocShell::InitNew.
+        LanguageType eUiLanguage = Application::GetSettings().GetUILanguage();
+        switch( eUiLanguage )
+        {
+                case LANGUAGE_KOREAN:
+                case LANGUAGE_KOREAN_JOHAB:
+                        eLatin = eUiLanguage;
+                break;
+        }
+
+        rLatinFont = OutputDevice::GetDefaultFont( 
DEFAULTFONT_LATIN_PRESENTATION, eLatin, DEFAULTFONT_FLAGS_ONLYONE );
+        rCJKFont = OutputDevice::GetDefaultFont( DEFAULTFONT_CJK_PRESENTATION, 
_eCJK, DEFAULTFONT_FLAGS_ONLYONE );
+        rCTLFont = OutputDevice::GetDefaultFont( DEFAULTFONT_CTL_PRESENTATION, 
_eCTL, DEFAULTFONT_FLAGS_ONLYONE ) ;
+}
 OFormatProperties::OFormatProperties()
        :nAlign(0)
        ,nFontEmphasisMark(0)
@@ -70,13 +93,29 @@
     ,bCharShadowed(sal_False)
     ,bCharContoured(sal_False)
 {
-       Font aInitFont = 
Application::GetDefaultDevice()->GetSettings().GetStyleSettings().GetAppFont();
-       aFontDescriptor = VCLUnoHelper::CreateFontDescriptor(aInitFont);
+    try
+    {
+        SvtLinguConfig aLinguConfig;
+        
aLinguConfig.GetProperty(::rtl::OUString(RTL_CONSTASCII_USTRINGPARAM("DefaultLocale")))
 >>= aCharLocale;
+        LanguageType eCurLang = SvxLocaleToLanguage( aCharLocale );
+        
aLinguConfig.GetProperty(::rtl::OUString(RTL_CONSTASCII_USTRINGPARAM("DefaultLocale_CJK")))
  >>= aCharLocaleAsian;
+        LanguageType eCurLangCJK = SvxLocaleToLanguage( aCharLocaleAsian );
+        
aLinguConfig.GetProperty(::rtl::OUString(RTL_CONSTASCII_USTRINGPARAM("DefaultLocale_CTL")))
  >>= aCharLocaleComplex;
+        LanguageType eCurLangCTL = SvxLocaleToLanguage( aCharLocaleComplex );
+
+        Font aLatin,aCJK,aCTL;
+        lcl_getDefaultFonts(aLatin,aCJK,aCTL,eCurLang,eCurLangCJK,eCurLangCTL);
+        aFontDescriptor = VCLUnoHelper::CreateFontDescriptor(aLatin);
+        aAsianFontDescriptor = VCLUnoHelper::CreateFontDescriptor(aCJK);
+        aComplexFontDescriptor = VCLUnoHelper::CreateFontDescriptor(aCTL);
+    }
+    catch(const uno::Exception&)
+    {
+    }
        aFontDescriptor.Weight = awt::FontWeight::NORMAL;
     aFontDescriptor.CharacterWidth = awt::FontWidth::NORMAL;
-    aCharLocale = SvtSysLocale().GetLocaleData().getLocale();
-    //if ( !aFontDescriptor.StyleName.getLength() )
-    //    aFontDescriptor.StyleName = 
::rtl::OUString(RTL_CONSTASCII_USTRINGPARAM("test"));
+
+    // aCharLocale = SvtSysLocale().GetLocaleData().getLocale();
 }
 // 
-----------------------------------------------------------------------------
 void OReportComponentProperties::setShape(uno::Reference< drawing::XShape >& 
_xShape,const uno::Reference< report::XReportComponent>& 
_xTunnel,oslInterlockedCount& _rRefCount)




---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to