diff options
author | Oliver Bolte <obo@openoffice.org> | 2004-06-01 07:50:24 +0000 |
---|---|---|
committer | Oliver Bolte <obo@openoffice.org> | 2004-06-01 07:50:24 +0000 |
commit | aa8e6bff416ebdda529f059e2a637cf392a5da49 (patch) | |
tree | cc64411bb4891013093961a03f901edd1bceb98b /svx/source/dialog/optjava.hxx | |
parent | ec7eee4524e60625442eb35dd7ad100e39e224ef (diff) |
INTEGRATION: CWS jl6 (1.1.2); FILE ADDED
2004/05/17 11:15:13 pb 1.1.2.4: fix: #i20052# java restart warning box added
2004/05/14 10:32:51 pb 1.1.2.3: fix: #i20052# parameters and class path dlg improved
2004/05/03 10:23:39 pb 1.1.2.2: fix: #i20052# improved
2004/04/27 10:07:48 pb 1.1.2.1: fix: #i20052# new Java options
Diffstat (limited to 'svx/source/dialog/optjava.hxx')
-rw-r--r-- | svx/source/dialog/optjava.hxx | 253 |
1 files changed, 253 insertions, 0 deletions
diff --git a/svx/source/dialog/optjava.hxx b/svx/source/dialog/optjava.hxx new file mode 100644 index 000000000000..9823a771d09f --- /dev/null +++ b/svx/source/dialog/optjava.hxx @@ -0,0 +1,253 @@ +/************************************************************************* + * + * $RCSfile: optjava.hxx,v $ + * + * $Revision: 1.2 $ + * + * last change: $Author: obo $ $Date: 2004-06-01 08:50:24 $ + * + * 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): _______________________________________ + * + * + ************************************************************************/ +#ifndef _SVX_OPTJAVA_HXX +#define _SVX_OPTJAVA_HXX + +// include --------------------------------------------------------------- + +#include <vector> + +#ifndef _UCBHELPER_CONTENT_HXX +#include <ucbhelper/content.hxx> +#endif +#ifndef _SV_BUTTON_HXX +#include <vcl/button.hxx> +#endif +#ifndef _SV_FIXED_HXX +#include <vcl/fixed.hxx> +#endif +#ifndef _SV_TIMER_HXX +#include <vcl/timer.hxx> +#endif +#ifndef _SFXTABDLG_HXX +#include <sfx2/tabdlg.hxx> +#endif +#ifndef _SVX_SIMPTABL_HXX +#include "simptabl.hxx" +#endif + +// forward --------------------------------------------------------------- + +typedef struct _JavaInfo JavaInfo; + +class SvxJavaParameterDlg; +class SvxJavaClassPathDlg; + +// class SvxJavaTable ---------------------------------------------------- + +class SvxJavaTable : public SvxSimpleTable +{ +private: + Point m_aCurMousePoint; + +protected: + virtual void SetTabs(); + virtual void MouseButtonUp( const MouseEvent& _rMEvt ); + virtual void KeyInput( const KeyEvent& rKEvt ); + +public: + SvxJavaTable( Window* _pParent, const ResId& _rId ); + ~SvxJavaTable(); + + + inline Point GetCurMousePoint() { return m_aCurMousePoint; } +}; + +// class SvxJavaOptionsPage ---------------------------------------------- + +class SvxJavaOptionsPage : public SfxTabPage +{ +private: + FixedLine m_aJavaLine; + CheckBox m_aJavaEnableCB; + FixedText m_aJavaFoundLabel; + SvxJavaTable m_aJavaList; + FixedText m_aJavaPathText; + PushButton m_aAddBtn; + PushButton m_aParameterBtn; + PushButton m_aClassPathBtn; + + SvxJavaParameterDlg* m_pParamDlg; + SvxJavaClassPathDlg* m_pPathDlg; + + JavaInfo** m_parJavaInfo; + rtl_uString** m_parParameters; + rtl_uString* m_pClassPath; + sal_Int32 m_nInfoSize; + sal_Int32 m_nParamSize; + String m_sInstallText; + String m_sAccessibilityText; + String m_sAddDialogText; + Timer m_aResetTimer; + + ::std::vector< JavaInfo* > + m_aAddedInfos; + + DECL_LINK( EnableHdl_Impl, CheckBox * ); + DECL_LINK( CheckHdl_Impl, SvxSimpleTable * ); + DECL_LINK( AddHdl_Impl, PushButton * ); + DECL_LINK( ParameterHdl_Impl, PushButton * ); + DECL_LINK( ClassPathHdl_Impl, PushButton * ); + DECL_LINK( ResetHdl_Impl, Timer * ); + + void ClearJavaInfo(); + void ClearJavaList(); + void LoadJREs(); + void AddJRE( JavaInfo* _pInfo ); + void HandleCheckEntry( SvLBoxEntry* _pEntry ); + +public: + SvxJavaOptionsPage( Window* pParent, const SfxItemSet& rSet ); + ~SvxJavaOptionsPage(); + + static SfxTabPage* Create( Window* pParent, const SfxItemSet& rSet ); + + virtual BOOL FillItemSet( SfxItemSet& rSet ); + virtual void Reset( const SfxItemSet& rSet ); + virtual void FillUserData(); +}; + +// class SvxJavaParameterDlg --------------------------------------------- + +class SvxJavaParameterDlg : public ModalDialog +{ +private: + FixedText m_aParameterLabel; + Edit m_aParameterEdit; + PushButton m_aAssignBtn; + + FixedText m_aAssignedLabel; + ListBox m_aAssignedList; + PushButton m_aRemoveBtn; + + FixedLine m_aButtonsLine; + OKButton m_aOKBtn; + CancelButton m_aCancelBtn; + HelpButton m_aHelpBtn; + + DECL_LINK( ModifyHdl_Impl, Edit * ); + DECL_LINK( AssignHdl_Impl, PushButton * ); + DECL_LINK( SelectHdl_Impl, ListBox * ); + DECL_LINK( RemoveHdl_Impl, PushButton * ); + + inline void EnableRemoveButton() + { m_aRemoveBtn.Enable( + m_aAssignedList.GetSelectEntryPos() + != LISTBOX_ENTRY_NOTFOUND ); } + + +public: + SvxJavaParameterDlg( Window* pParent ); + ~SvxJavaParameterDlg(); + + virtual short Execute(); + + ::com::sun::star::uno::Sequence< ::rtl::OUString > GetParameters() const; + void SetParameters( ::com::sun::star::uno::Sequence< ::rtl::OUString >& rParams ); +}; + +// class SvxClassPathListBox --------------------------------------------- + +class SvxClassPathListBox : public ListBox +{ +public: + SvxClassPathListBox( Window* pParent, const ResId& rResId ) : ListBox( pParent, rResId ) {} + + virtual void RequestHelp( const HelpEvent& rHEvt ); +}; + +// class SvxJavaClassPathDlg --------------------------------------------- + +class SvxJavaClassPathDlg : public ModalDialog +{ +private: + FixedText m_aPathLabel; + SvxClassPathListBox m_aPathList; + PushButton m_aAddArchiveBtn; + PushButton m_aAddPathBtn; + PushButton m_aRemoveBtn; + + FixedLine m_aButtonsLine; + OKButton m_aOKBtn; + CancelButton m_aCancelBtn; + HelpButton m_aHelpBtn; + + String m_sOldPath; + + DECL_LINK( AddArchiveHdl_Impl, PushButton * ); + DECL_LINK( AddPathHdl_Impl, PushButton * ); + DECL_LINK( RemoveHdl_Impl, PushButton * ); + + bool IsPathDuplicate( const String& _rPath ); + String GetAbbreviatedPath( const String& _rPath, sal_Unicode _cDelim ); + +public: + SvxJavaClassPathDlg( Window* pParent ); + ~SvxJavaClassPathDlg(); + + inline const String& GetOldPath() const { return m_sOldPath; } + + String GetClassPath() const; + void SetClassPath( const String& _rPath ); +}; + +#endif // #ifndef _SVX_OPTJAVA_HXX + |