2004-09-17 07:48:26 -05:00
|
|
|
/*************************************************************************
|
|
|
|
*
|
2008-04-10 14:52:00 -05:00
|
|
|
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
2004-09-17 07:48:26 -05:00
|
|
|
*
|
2010-02-12 08:01:35 -06:00
|
|
|
* Copyright 2000, 2010 Oracle and/or its affiliates.
|
2004-09-17 07:48:26 -05:00
|
|
|
*
|
2008-04-10 14:52:00 -05:00
|
|
|
* OpenOffice.org - a multi-platform office productivity suite
|
2004-09-17 07:48:26 -05:00
|
|
|
*
|
2008-04-10 14:52:00 -05:00
|
|
|
* This file is part of OpenOffice.org.
|
2004-09-17 07:48:26 -05:00
|
|
|
*
|
2008-04-10 14:52:00 -05:00
|
|
|
* OpenOffice.org is free software: you can redistribute it and/or modify
|
|
|
|
* it under the terms of the GNU Lesser General Public License version 3
|
|
|
|
* only, as published by the Free Software Foundation.
|
2004-09-17 07:48:26 -05:00
|
|
|
*
|
2008-04-10 14:52:00 -05:00
|
|
|
* OpenOffice.org 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 version 3 for more details
|
|
|
|
* (a copy is included in the LICENSE file that accompanied this code).
|
2004-09-17 07:48:26 -05:00
|
|
|
*
|
2008-04-10 14:52:00 -05:00
|
|
|
* You should have received a copy of the GNU Lesser General Public License
|
|
|
|
* version 3 along with OpenOffice.org. If not, see
|
|
|
|
* <http://www.openoffice.org/license.html>
|
|
|
|
* for a copy of the LGPLv3 License.
|
2004-09-17 07:48:26 -05:00
|
|
|
*
|
|
|
|
************************************************************************/
|
|
|
|
|
|
|
|
#ifndef SD_SPELL_DIALOG_CHILD_WINDOW_HXX
|
|
|
|
#define SD_SPELL_DIALOG_CHILD_WINDOW_HXX
|
|
|
|
|
|
|
|
#include <svx/SpellDialogChildWindow.hxx>
|
|
|
|
|
|
|
|
|
|
|
|
namespace sd {
|
|
|
|
|
|
|
|
class Outliner;
|
|
|
|
|
|
|
|
/** This derivation of the ::svx::SpellDialogChildWindow base class
|
|
|
|
provides Draw and Impress specific implementations of
|
|
|
|
GetNextWrongSentence() and ApplyChangedSentence().
|
|
|
|
*/
|
|
|
|
class SpellDialogChildWindow
|
|
|
|
: public ::svx::SpellDialogChildWindow
|
|
|
|
{
|
|
|
|
public:
|
|
|
|
SpellDialogChildWindow (
|
|
|
|
::Window* pParent,
|
|
|
|
USHORT nId,
|
|
|
|
SfxBindings* pBindings,
|
|
|
|
SfxChildWinInfo* pInfo);
|
|
|
|
virtual ~SpellDialogChildWindow (void);
|
|
|
|
|
|
|
|
/** This method makes the one from the base class public so that
|
|
|
|
it can be called from the view shell when one is created.
|
|
|
|
*/
|
|
|
|
virtual void InvalidateSpellDialog (void);
|
|
|
|
|
|
|
|
SFX_DECL_CHILDWINDOW(SpellDialogChildWindow);
|
|
|
|
|
|
|
|
protected:
|
|
|
|
/** Iterate over the sentences in all text shapes and stop at the
|
|
|
|
next sentence with spelling errors. While doing so the view
|
|
|
|
mode may be changed and text shapes are set into edit mode.
|
|
|
|
*/
|
2010-04-22 06:08:19 -05:00
|
|
|
virtual ::svx::SpellPortions GetNextWrongSentence( bool bRecheck );
|
2004-09-17 07:48:26 -05:00
|
|
|
|
|
|
|
/** This method is responsible for merging corrections made in the
|
|
|
|
spelling dialog back into the document.
|
|
|
|
*/
|
2010-04-22 06:08:19 -05:00
|
|
|
virtual void ApplyChangedSentence(const ::svx::SpellPortions& rChanged, bool bRecheck);
|
2004-09-17 07:48:26 -05:00
|
|
|
virtual void GetFocus (void);
|
|
|
|
virtual void LoseFocus (void);
|
|
|
|
|
|
|
|
private:
|
|
|
|
/** This outliner is used to do the main work of iterating over a
|
|
|
|
document and finding sentences with spelling errors.
|
|
|
|
*/
|
|
|
|
Outliner* mpSdOutliner;
|
|
|
|
|
|
|
|
/** When this flag is <TRUE/> then eventually we have to destroy
|
|
|
|
the outliner in mpSdOutliner.
|
|
|
|
*/
|
|
|
|
bool mbOwnOutliner;
|
|
|
|
|
|
|
|
/** Provide an outliner in the mpSdOutliner data member. When the
|
|
|
|
view shell has changed since the last call this include the
|
|
|
|
deletion/release of formerly created/obtained one prior to
|
|
|
|
construction/obtaining of a new one.
|
|
|
|
*/
|
|
|
|
void ProvideOutliner (void);
|
|
|
|
};
|
|
|
|
|
|
|
|
} // end of namespace ::sd
|
|
|
|
|
|
|
|
#endif
|