diff options
Diffstat (limited to 'soldep/source/depapp.cxx')
-rw-r--r-- | soldep/source/depapp.cxx | 226 |
1 files changed, 226 insertions, 0 deletions
diff --git a/soldep/source/depapp.cxx b/soldep/source/depapp.cxx new file mode 100644 index 000000000000..b46b096e4723 --- /dev/null +++ b/soldep/source/depapp.cxx @@ -0,0 +1,226 @@ +/************************************************************************* + * + * $RCSfile: depapp.cxx,v $ + * + * $Revision: 1.1 $ + * + * last change: $Author: obo $ $Date: 2004-02-26 14:48:13 $ + * + * The Contents of this file are made available subject to the terms of + * either of the following licenses + * + * - GNU Lesser General Public License Version 2.1 + * - Sun Industry Standards Source License Version 1.1 + * + * Sun Microsystems Inc., October, 2000 + * + * GNU Lesser General Public License Version 2.1 + * ============================================= + * Copyright 2000 by Sun Microsystems, Inc. + * 901 San Antonio Road, Palo Alto, CA 94303, USA + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License version 2.1, as published by the Free Software Foundation. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * + * Sun Industry Standards Source License Version 1.1 + * ================================================= + * The contents of this file are subject to the Sun Industry Standards + * Source License Version 1.1 (the "License"); You may not use this file + * except in compliance with the License. You may obtain a copy of the + * License at http://www.openoffice.org/license.html. + * + * Software provided under this License is provided on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, + * WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS, + * MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING. + * See the License for the specific provisions governing your rights and + * obligations concerning the Software. + * + * The Initial Developer of the Original Code is: Sun Microsystems, Inc. + * + * Copyright: 2000 by Sun Microsystems, Inc. + * + * All Rights Reserved. + * + * Contributor(s): _______________________________________ + * + * + ************************************************************************/ + + + +#include <svtools/solar.hrc> +#include <tools/solver.h> +#include <tools/resmgr.hxx> +#include <bootstrp/sstring.hxx> +#include <vcl/event.hxx> +#include <vcl/svapp.hxx> +#include <vcl/wrkwin.hxx> +#include <vcl/msgbox.hxx> +#include <vcl/help.hxx> +#include "soldep.hxx" +// ----------------------------------------------------------------------- +#include <sal/main.h> +#include <com/sun/star/lang/XMultiServiceFactory.hpp> +#include <comphelper/processfactory.hxx> +#include <cppuhelper/servicefactory.hxx> +#include <cppuhelper/bootstrap.hxx> + +using namespace ::com::sun::star::uno; +using namespace ::com::sun::star::lang; + + +class MyApp : public Application +{ + ResMgr* pResMgr; + SolDep* pSolDep; +public: + void Main(); + ResMgr* GetResMgr() const { return pResMgr; } +}; + + +MyApp aMyApp; + +// ----------------------------------------------------------------------- + +class MyWin : public WorkWindow +{ +public: + MyWin( Window* pParent, WinBits nWinStyle ); + + void MouseMove( const MouseEvent& rMEvt ); + void MouseButtonDown( const MouseEvent& rMEvt ); + void MouseButtonUp( const MouseEvent& rMEvt ); + void KeyInput( const KeyEvent& rKEvt ); + void KeyUp( const KeyEvent& rKEvt ); + void Paint( const Rectangle& rRect ); + void Resize(); +}; + +// ----------------------------------------------------------------------- + + +void MyApp::Main() +{ + ByteString aResMgrName( "dep" ); + aResMgrName += ByteString::CreateFromInt64( SOLARUPD ); + Application* pApp; + pApp = GetpApp(); + International iNat; + iNat = GetpApp()->GetAppInternational(); + LanguageType lt; + lt = iNat.GetLanguage(); + pResMgr = ResMgr::CreateResMgr( aResMgrName.GetBuffer(), + GetpApp()->GetAppInternational().GetLanguage()); + DtSodResId::SetResMgr( pResMgr ); + + MyWin aMainWin( NULL, WB_APP | WB_STDWORK ); + aMainWin.SetText( String::CreateFromAscii( SOLDEPL_NAME )); + aMainWin.Show(); + pSolDep = new SolDep( &aMainWin ); + pSolDep->Init(); + Help aHelp; + SetHelp(&aHelp); + aHelp.EnableContextHelp(); + aHelp.EnableQuickHelp(); + Execute(); + delete pResMgr; + delete pSolDep; +} + +// ----------------------------------------------------------------------- + +MyWin::MyWin( Window* pParent, WinBits nWinStyle ) : + WorkWindow( pParent, nWinStyle ) +{ +} + +// ----------------------------------------------------------------------- + +void MyWin::MouseMove( const MouseEvent& rMEvt ) +{ + WorkWindow::MouseMove( rMEvt ); +} + +// ----------------------------------------------------------------------- + +void MyWin::MouseButtonDown( const MouseEvent& rMEvt ) +{ + WorkWindow::MouseButtonDown( rMEvt ); +} + +// ----------------------------------------------------------------------- + +void MyWin::MouseButtonUp( const MouseEvent& rMEvt ) +{ + WorkWindow::MouseButtonUp( rMEvt ); +} + +// ----------------------------------------------------------------------- + +void MyWin::KeyInput( const KeyEvent& rKEvt ) +{ + WorkWindow::KeyInput( rKEvt ); +} + +// ----------------------------------------------------------------------- + +void MyWin::KeyUp( const KeyEvent& rKEvt ) +{ + WorkWindow::KeyUp( rKEvt ); +} + +// ----------------------------------------------------------------------- + +void MyWin::Paint( const Rectangle& rRect ) +{ + WorkWindow::Paint( rRect ); +} + +// ----------------------------------------------------------------------- + +void MyWin::Resize() +{ + WorkWindow::Resize(); + Window* pWin; + USHORT i, nChildCount = GetChildCount(); + + for ( i = 0; i < nChildCount; i++ ) + { + pWin = GetChild( i ); + pWin->SetPosSizePixel( GetPosPixel(), GetSizePixel() ); +// pWin->Resize(); +// ((GraphWin*) pWin)->EndScroll( 0, 0 ); + } +} + +SAL_IMPLEMENT_MAIN() +{ + Reference< XMultiServiceFactory > xMS; + + // for this to work make sure an <appname>.ini file is available, you can just copy soffice.ini + Reference< XComponentContext > xComponentContext = ::cppu::defaultBootstrap_InitialComponentContext(); + xMS = cppu::createRegistryServiceFactory( + rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "applicat.rdb" ) ), sal_True ); + + InitVCL( xMS ); + //GetpApp()->WaitForClientConnect(); // is a no-op in local case + //::Main(); + aMyApp.Main(); + DeInitVCL(); + return 0; +} + |