LCOV - code coverage report
Current view: top level - vcl/source/uipreviewer - previewer.cxx (source / functions) Hit Total Coverage
Test: commit e02a6cb2c3e2b23b203b422e4e0680877f232636 Lines: 0 36 0.0 %
Date: 2014-04-14 Functions: 0 6 0.0 %
Legend: Lines: hit not hit

          Line data    Source code
       1             : /* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
       2             : /*
       3             :  * This file is part of the LibreOffice project.
       4             :  *
       5             :  * This Source Code Form is subject to the terms of the Mozilla Public
       6             :  * License, v. 2.0. If a copy of the MPL was not distributed with this
       7             :  * file, You can obtain one at http://mozilla.org/MPL/2.0/.
       8             :  */
       9             : 
      10             : #include <com/sun/star/lang/XComponent.hpp>
      11             : #include <com/sun/star/lang/XMultiComponentFactory.hpp>
      12             : #include <com/sun/star/lang/XMultiServiceFactory.hpp>
      13             : #include <com/sun/star/ucb/UniversalContentBroker.hpp>
      14             : #include <comphelper/processfactory.hxx>
      15             : #include <cppuhelper/bootstrap.hxx>
      16             : #include <osl/file.hxx>
      17             : #include <vcl/builder.hxx>
      18             : #include <vcl/dialog.hxx>
      19             : #include <vcl/help.hxx>
      20             : #include <vcl/svapp.hxx>
      21             : #include <vcl/vclmain.hxx>
      22             : 
      23           0 : class UIPreviewApp : public Application
      24             : {
      25             : public:
      26             :     virtual void Init() SAL_OVERRIDE;
      27             :     virtual int Main() SAL_OVERRIDE;
      28             : };
      29             : 
      30             : using namespace com::sun::star;
      31             : 
      32           0 : void UIPreviewApp::Init()
      33             : {
      34             :     uno::Reference<uno::XComponentContext> xContext =
      35           0 :         cppu::defaultBootstrap_InitialComponentContext();
      36             :     uno::Reference<lang::XMultiComponentFactory> xFactory =
      37           0 :         xContext->getServiceManager();
      38             :     uno::Reference<lang::XMultiServiceFactory> xSFactory =
      39           0 :         uno::Reference<lang::XMultiServiceFactory> (xFactory, uno::UNO_QUERY_THROW);
      40           0 :     comphelper::setProcessServiceFactory(xSFactory);
      41             : 
      42             :     // Create UCB (for backwards compatibility, in case some code still uses
      43             :     // plain createInstance w/o args directly to obtain an instance):
      44             :     ::ucb::UniversalContentBroker::create(
      45           0 :         comphelper::getProcessComponentContext() );
      46           0 : }
      47             : 
      48           0 : int UIPreviewApp::Main()
      49             : {
      50           0 :     std::vector<OUString> uifiles;
      51           0 :     for (sal_uInt16 i = 0; i < GetCommandLineParamCount(); ++i)
      52             :     {
      53           0 :         OUString aFileUrl;
      54           0 :         osl::File::getFileURLFromSystemPath(GetCommandLineParam(i), aFileUrl);
      55           0 :         uifiles.push_back(aFileUrl);
      56           0 :     }
      57             : 
      58           0 :     if (uifiles.empty())
      59             :     {
      60           0 :         fprintf(stderr, "Usage: ui-previewer file.ui\n");
      61           0 :         return EXIT_FAILURE;
      62             :     }
      63             : 
      64             :     // turn on tooltips
      65           0 :     Help::EnableQuickHelp();
      66             : 
      67             :     try
      68             :     {
      69           0 :         Dialog *pDialog = new Dialog(DIALOG_NO_PARENT, WB_STDDIALOG);
      70             : 
      71             :         {
      72           0 :             VclBuilder aBuilder(pDialog, OUString(), uifiles[0]);
      73           0 :             Dialog *pRealDialog = dynamic_cast<Dialog*>(aBuilder.get_widget_root());
      74             : 
      75           0 :             if (!pRealDialog)
      76           0 :                 pRealDialog = pDialog;
      77             : 
      78           0 :             if (pRealDialog)
      79             :             {
      80           0 :                 pRealDialog->SetText(OUString("LibreOffice ui-previewer"));
      81           0 :                 pRealDialog->SetStyle(pDialog->GetStyle()|WB_CLOSEABLE);
      82           0 :                 pRealDialog->Execute();
      83           0 :             }
      84             :         }
      85             : 
      86           0 :         delete pDialog;
      87             :     }
      88           0 :     catch (const uno::Exception &e)
      89             :     {
      90           0 :         fprintf(stderr, "fatal error: %s\n", OUStringToOString(e.Message, osl_getThreadTextEncoding()).getStr());
      91             :     }
      92             : 
      93           0 :     return EXIT_SUCCESS;
      94             : }
      95             : 
      96           0 : void vclmain::createApplication()
      97             : {
      98           0 :     static UIPreviewApp aApp;
      99           0 : }
     100             : 
     101             : /* vim:set shiftwidth=4 softtabstop=4 expandtab: */

Generated by: LCOV version 1.10