[Libreoffice-commits] .: sfx2/source
Muthu Subramanian
sumuthu at kemper.freedesktop.org
Thu Mar 10 03:23:52 PST 2011
sfx2/source/bastyp/fltfnc.cxx | 3
sfx2/source/bastyp/frmhtml.cxx | 2
sfx2/source/bastyp/frmhtmlw.cxx | 2
sfx2/source/bastyp/sfxhtml.cxx | 6
sfx2/source/control/bindings.cxx | 16 -
sfx2/source/control/ctrlitem.cxx | 2
sfx2/source/control/dispatch.cxx | 4
sfx2/source/control/macro.cxx | 26 -
sfx2/source/control/objface.cxx | 4
sfx2/source/control/request.cxx | 306 ++++++++++------------
sfx2/source/control/shell.cxx | 526 ++++++++++++++++++---------------------
sfx2/source/control/statcach.cxx | 65 ++--
sfx2/source/control/unoctitm.cxx | 13
13 files changed, 462 insertions(+), 513 deletions(-)
New commits:
commit 0fb0badf086859dde3b1773045a0cd7fcae5b028
Author: Albert Thuswaldner <albert.thuswaldner at gmail.com>
Date: Thu Mar 10 16:47:00 2011 +0530
Translations and typo fixes.
diff --git a/sfx2/source/bastyp/fltfnc.cxx b/sfx2/source/bastyp/fltfnc.cxx
index 42e2bdd..35b14c7 100644
--- a/sfx2/source/bastyp/fltfnc.cxx
+++ b/sfx2/source/bastyp/fltfnc.cxx
@@ -218,7 +218,7 @@ const SfxFilter* SfxFilterContainer::GetDefaultFilter_Impl( const String& rName
const SfxFilter* pFilter = aMatcher.GetFilter4FilterName(sDefaultFilter);
if (
- (pFilter ) &&
+ (pFilter) &&
(pFilter->GetServiceName().CompareIgnoreCaseToAscii( sServiceName ) != COMPARE_EQUAL)
)
{
@@ -370,7 +370,6 @@ sal_uInt32 SfxFilterMatcher::GuessFilterIgnoringContent(
::rtl::OUString sTypeName;
try
{
- //!MBA: nmust, ndont?
sTypeName = xDetection->queryTypeByURL( rMedium.GetURLObject().GetMainURL( INetURLObject::NO_DECODE ) );
}
catch( Exception& )
diff --git a/sfx2/source/bastyp/frmhtml.cxx b/sfx2/source/bastyp/frmhtml.cxx
index 31ee13f..3ccec12 100644
--- a/sfx2/source/bastyp/frmhtml.cxx
+++ b/sfx2/source/bastyp/frmhtml.cxx
@@ -72,7 +72,7 @@ void SfxFrameHTMLParser::ParseFrameOptions( SfxFrameDescriptor *pFrame, const HT
// MIB 07/15/1997: Netscape seems to set marginwidth to 0 as soon as
// marginheight is set, and vice versa. Due to bug #41665# let us also
- // do like that for now. Netscape does however not aallow for a direct
+ // do like that for now. Netscape does however not allow for a direct
// seting to 0, while IE4.0 does
// We will not mimic that bug !
BOOL bMarginWidth = FALSE, bMarginHeight = FALSE;
diff --git a/sfx2/source/bastyp/frmhtmlw.cxx b/sfx2/source/bastyp/frmhtmlw.cxx
index e4ee0b6..a046b4f 100644
--- a/sfx2/source/bastyp/frmhtmlw.cxx
+++ b/sfx2/source/bastyp/frmhtmlw.cxx
@@ -304,7 +304,7 @@ void SfxFrameHTMLWriter::Out_FrameDescriptor(
}
}
- // frame border (MS+Netscape-Erweiterung)
+ // frame border (MS+Netscape-Extension)
aAny = xSet->getPropertyValue( ::rtl::OUString(RTL_CONSTASCII_USTRINGPARAM("FrameIsAutoBorder")) );
if ( (aAny >>= bVal) && !bVal )
{
diff --git a/sfx2/source/bastyp/sfxhtml.cxx b/sfx2/source/bastyp/sfxhtml.cxx
index d51d7fe..58153d9 100644
--- a/sfx2/source/bastyp/sfxhtml.cxx
+++ b/sfx2/source/bastyp/sfxhtml.cxx
@@ -81,7 +81,7 @@ SfxHTMLParser::SfxHTMLParser( SvStream& rStream, BOOL bIsNewDoc,
nMetaTags( 0 )
{
DBG_ASSERT( RTL_TEXTENCODING_DONTKNOW == GetSrcEncoding( ),
- "SfxHTMLParser::SfxHTMLParser: Wo kommt der ZS her?" );
+ "SfxHTMLParser::SfxHTMLParser: From where comes ZS?" );
DBG_ASSERT( !IsSwitchToUCS2(),
"SfxHTMLParser::SfxHTMLParser: Switch to UCS2?" );
@@ -291,7 +291,7 @@ BOOL SfxHTMLParser::FinishFileDownload( String& rStr )
if( bOK )
{
SvStream* pStream = pDLMedium->GetInStream();
- DBG_ASSERT( pStream, "Kein In-Stream vom Medium erhalten" );
+ DBG_ASSERT( pStream, "No In-Stream received from Medium" );
SvMemoryStream aStream;
if( pStream )
@@ -299,7 +299,7 @@ BOOL SfxHTMLParser::FinishFileDownload( String& rStr )
aStream.Seek( STREAM_SEEK_TO_END );
DBG_ASSERT( aStream.Tell() < STRING_MAXLEN,
- "File zu lang fuer einen String, Ende abgeschnitten" );
+ "File too long for a string, cut off the end" );
xub_StrLen nLen = aStream.Tell() < STRING_MAXLEN
? (xub_StrLen)aStream.Tell()
: STRING_MAXLEN;
diff --git a/sfx2/source/control/bindings.cxx b/sfx2/source/control/bindings.cxx
index 7eeb380..2825a3a 100644
--- a/sfx2/source/control/bindings.cxx
+++ b/sfx2/source/control/bindings.cxx
@@ -248,7 +248,7 @@ SfxBindings::~SfxBindings()
/* [Description]
Destructor of the SfxBindings class. The one, for each <SfxApplication>
- existing Instance is automaticaölly destroyed by the <SfxApplication>
+ existing Instance is automatically destroyed by the <SfxApplication>
after the execution of <SfxApplication::Exit()>.
The still existing <SfxControllerItem> instances, which are registered
@@ -787,7 +787,7 @@ void SfxBindings::InvalidateShell
sal_False
the inherited and not overloaded Slot-Ids were
invalidiert */
- //! MI: for now alwayds bDeep
+ // for now always bDeep
)
{
DBG_ASSERT( !pImp->bInUpdate, "SfxBindings::Invalidate while in update" );
@@ -801,8 +801,8 @@ void SfxBindings::InvalidateShell
DBG_PROFSTART(SfxBindingsInvalidateAll);
DBG_MEMTEST();
- // Jetzt schon flushen, wird in GetShellLevel(rSh) sowieso gemacht; wichtig,
- // damit pImp->bAll(Msg)Dirty korrekt gesetzt ist
+ // flush now already, it is done in GetShellLevel (rsh) anyway,
+ // important so that is set correctly: pimp-> ball(Msg)Dirty
pDispatcher->Flush();
if ( !pDispatcher ||
@@ -1242,7 +1242,7 @@ void SfxBindings::Execute_Impl( SfxRequest& aReq, const SfxSlot* pSlot, SfxShell
if ( SFX_KIND_ENUM == pSlot->GetKind() )
{
// for Enum-Slots, the Master has to be excecuted with the value
- // of the enums Wert
+ // of the enums
const SfxSlot *pRealSlot = pShell->GetInterface()->GetRealSlot(pSlot);
const sal_uInt16 nSlotId = pRealSlot->GetSlotId();
aReq.SetSlot( nSlotId );
@@ -1301,7 +1301,7 @@ void SfxBindings::Execute_Impl( SfxRequest& aReq, const SfxSlot* pSlot, SfxShell
{
// Create one Status-Item for each Factory
SfxPoolItem *pNewItem = pSlot->GetType()->CreateItem();
- DBG_ASSERT( pNewItem, "Toggle an Slot ohne ItemFactory" );
+ DBG_ASSERT( pNewItem, "Toggle to slot without ItemFactory" );
pNewItem->SetWhich( nWhich );
if ( pNewItem->ISA(SfxBoolItem) )
@@ -1399,7 +1399,7 @@ SfxItemSet* SfxBindings::CreateSet_Impl
DBG_MEMTEST();
DBG_ASSERT( pImp->pCaches != 0, "SfxBindings not initialized" );
- DBG_ASSERT( !pImp->bMsgDirty, "CreateSet_Impl mit dirty MessageServer" );
+ DBG_ASSERT( !pImp->bMsgDirty, "CreateSet_Impl with dirty MessageServer" );
const SfxSlotServer* pMsgSvr = pCache->GetSlotServer(*pDispatcher, pImp->xProv);
if(!pMsgSvr || !pDispatcher)
@@ -1594,7 +1594,7 @@ void SfxBindings::UpdateControllers_Impl
{
DBG_ASSERT(pSlave, "Wrong SlaveSlot binding!");
DBG_ASSERT(SFX_KIND_ENUM == pSlave->GetKind(),"non enum slaves aren't allowed");
- DBG_ASSERT(pSlave->GetMasterSlotId() == pSlot->GetSlotId(),"falscher MasterSlot!");
+ DBG_ASSERT(pSlave->GetMasterSlotId() == pSlot->GetSlotId(),"Wrong MasterSlot!");
// Binding exist for function ?
SfxStateCache *pEnumCache = GetStateCache( pSlave->GetSlotId() );
diff --git a/sfx2/source/control/ctrlitem.cxx b/sfx2/source/control/ctrlitem.cxx
index e5965d3..1e1cf4e 100644
--- a/sfx2/source/control/ctrlitem.cxx
+++ b/sfx2/source/control/ctrlitem.cxx
@@ -197,7 +197,7 @@ void SfxControllerItem::UpdateSlot()
{
DBG_MEMTEST();
DBG_CHKTHIS(SfxControllerItem, 0);
- DBG_ASSERT(pBindings, "Keine Bindings");
+ DBG_ASSERT(pBindings, "No Bindings");
pBindings->Update( GetId() );
}
diff --git a/sfx2/source/control/dispatch.cxx b/sfx2/source/control/dispatch.cxx
index 24f88cd..62c2730 100644
--- a/sfx2/source/control/dispatch.cxx
+++ b/sfx2/source/control/dispatch.cxx
@@ -469,8 +469,6 @@ void SfxDispatcher::Pop
DBG_ASSERT( rShell.GetInterface(),
"pushing SfxShell without previous RegisterInterface()" );
DBG_ASSERT( pImp->nActionLevel == 0, "Push or Pop within Action" );
-// DBG_ASSERT( SFX_APP()->IsInAsynchronCall_Impl(),
-// "Dispatcher Push/Pop in synchron-call-stack" );
bool bDelete = (nMode & SFX_SHELL_POP_DELETE) == SFX_SHELL_POP_DELETE;
bool bUntil = (nMode & SFX_SHELL_POP_UNTIL) == SFX_SHELL_POP_UNTIL;
@@ -2693,7 +2691,7 @@ void SfxDispatcher::DebugOutput_Impl() const
if (bFlushed)
DBG_TRACE("Flushed");
if (pImp->bUpdated)
- DBG_TRACE("Updated");
+ DBG_TRACE("updated");
for ( sal_uInt16 nShell = pImp->aStack.Count(); nShell > 0; --nShell )
{
diff --git a/sfx2/source/control/macro.cxx b/sfx2/source/control/macro.cxx
index 5420470..8885d34 100644
--- a/sfx2/source/control/macro.cxx
+++ b/sfx2/source/control/macro.cxx
@@ -73,14 +73,10 @@ SfxMacroStatement::SfxMacroStatement
/* [Description]
- Dieser Konstruktor der Klasse SfxMacroStatement erzeugt ein Statement,
- bei dem ein Objekt angesprochen wird, welches durch 'rShell' angegeben
- ist. Dabei erfolgt die Addressierung je nach 'bAbsolute' absolut,
- also z.B. als '[mydoc.sdc]' oder relativ, also z.B. 'ActiveDocument'.
-
- This constructor of the SfxMacroStatement class generate a statement in
+ This constructor of the SfxMacroStatement class generates a statement in
which an object is brought up, which is given by 'rShell'. Thus It is
- addressing the ever after 'bAbsolute' absolute, for example, as '[mydoc.sdc]', or relative, that is 'active document'.
+ addressing the always after 'bAbsolute' absolute, for example, as
+ '[mydoc.sdc]', or relative, that is 'active document'.
Depending on the subclass of 'rShell', the following terms:
@@ -90,14 +86,14 @@ SfxMacroStatement::SfxMacroStatement
SfxViewFrame' | '[mydoc.sdc:1]' 'ActiveWindow'
SfxViewShell' | '[mydoc.sdc:1]' 'AvtiveWindow'
SfxObjectShell' | '[mydoc.sdc]' 'ActiveDocument'
- sonstige (Sub-Shells) | '[mydoc.sdc:1]' 'ActiveWindow'
-
- Dabei sind 'StarCalc' stellvertretend fuer den Namen der Applikation
- (Application::GetAppName()const). In der absoluten Fassung könnte
- die Selektion auch deskriptiv z.B. als 'CellSelection("A5-D8")')
- angesprochen werden, dazu mu\ jedoch vom Anwendungsprogrammierer der
- Konstruktor <SfxMacroStatement::SfxMacroStatement(const String&,
- const SfxSlot&,BOOL,SfxArguments*)> verwendet werden.
+ Other (Sub-Shells) | '[mydoc.sdc:1]' 'ActiveWindow'
+
+ Thus 'StarCalc' is a proxy for the name of the application
+ (Application::GetAppName()const). In the absolute sense of the selection
+ could be addressed as descriptive as in 'cell selection ("A5-D8")'), to do this
+ the application programmer must however use the constructor
+ <SfxMacroStatement::SfxMacroStatement(const String&,
+ const SfxSlot&,BOOL,SfxArguments*)>.
For the so-called object is then, depending on the type of slots,
expressed as an assignment to one of its properties or calling its methods.
diff --git a/sfx2/source/control/objface.cxx b/sfx2/source/control/objface.cxx
index aec2be3..826bc2d 100644
--- a/sfx2/source/control/objface.cxx
+++ b/sfx2/source/control/objface.cxx
@@ -383,7 +383,7 @@ const SfxSlot* SfxInterface::GetRealSlot( USHORT nSlotId ) const
{
if(pGenoType)
return pGenoType->GetRealSlot(nSlotId);
- OSL_FAIL("fremder Slot");
+ OSL_FAIL("unkonown Slot");
return 0;
}
@@ -622,7 +622,7 @@ sal_uInt32 SfxInterface::GetObjectBarFeature ( USHORT nNo ) const
#ifdef DBG_UTIL
USHORT nObjBarCount = pImpData->pObjectBars->Count();
- DBG_ASSERT( nNo<nObjBarCount,"Objectbar ist unknown!" );
+ DBG_ASSERT( nNo<nObjBarCount,"Objectbar is unknown!" );
#endif
return (*pImpData->pObjectBars)[nNo]->nFeature;
}
diff --git a/sfx2/source/control/request.cxx b/sfx2/source/control/request.cxx
index 39b4083..acfe2ee 100644
--- a/sfx2/source/control/request.cxx
+++ b/sfx2/source/control/request.cxx
@@ -60,23 +60,23 @@ using namespace ::com::sun::star;
struct SfxRequest_Impl: public SfxListener
-/* [Beschreibung]
+/* [Description]
- Implementations-Struktur der Klasse <SfxRequest>.
+ Implementation structur of the <SfxRequest> class.
*/
{
- SfxRequest* pAnti; // Owner wegen sterbendem Pool
- String aTarget; // ggf. von App gesetztes Zielobjekt
- SfxItemPool* pPool; // ItemSet mit diesem Pool bauen
- SfxPoolItem* pRetVal; // R"uckgabewert geh"ort sich selbst
- SfxShell* pShell; // ausgef"uhrt an dieser Shell
- const SfxSlot* pSlot; // ausgef"uhrter Slot
- USHORT nModifier; // welche Modifier waren gedrueckt?
- BOOL bDone; // "uberhaupt ausgef"uhrt
- BOOL bIgnored; // vom User abgebrochen
- BOOL bCancelled; // nicht mehr zustellen
- BOOL bUseTarget; // aTarget wurde von Applikation gesetzt
+ SfxRequest* pAnti; // Owner because of dying pool
+ String aTarget; // if possible from target object set by App
+ SfxItemPool* pPool; // ItemSet build with this pool
+ SfxPoolItem* pRetVal; // Return value belongs to itself
+ SfxShell* pShell; // run from this shell
+ const SfxSlot* pSlot; // executed Slot
+ USHORT nModifier; // which Modifier was pressed?
+ BOOL bDone; // at all executed
+ BOOL bIgnored; // Cancelled by the User
+ BOOL bCancelled; // no longer notify
+ BOOL bUseTarget; // aTarget was set by Application
USHORT nCallMode; // Synch/Asynch/API/Record
BOOL bAllowRecording;
SfxAllItemSet* pInternalArgs;
@@ -133,11 +133,11 @@ SfxRequest::~SfxRequest()
{
DBG_MEMTEST();
- // nicht mit Done() marktierte Requests mit 'rem' rausschreiben
+ // Leave out Done() marked requests with 'rem'
if ( pImp->xRecorder.is() && !pImp->bDone && !pImp->bIgnored )
pImp->Record( uno::Sequence < beans::PropertyValue >() );
- // Objekt abr"aumen
+ // Clear object
delete pArgs;
if ( pImp->pRetVal )
DeleteItemOnIdle(pImp->pRetVal);
@@ -186,13 +186,13 @@ SfxRequest::SfxRequest
)
-/* [Beschreibung]
+/* [Description]
- Mit diesem Konstruktor k"onnen Events, die nicht "uber den SfxDispatcher
- gelaufen sind (z.B aus KeyInput() oder Mouse-Events) nachtr"aglich
- recorded werden. Dazu wird eine SfxRequest-Instanz mit diesem Konstruktor
- erzeugt und dann genauso verfahren, wie mit einem SfxRequest, der in
- eine <Slot-Execute-Methode> als Parameter gegeben wird.
+ With this constructor events can subsequently be recorded that are not run
+ across SfxDispatcher (eg from KeyInput() or mouse events). For this, a
+ SfxRequest instance is created by this constructor and then proceed
+ exactly as with a SfxRequest that in a <Slot-Execute-Method> is given as a
+ parameter.
*/
: nSlot(nSlotId),
@@ -231,9 +231,9 @@ SfxRequest::SfxRequest
SfxRequest::SfxRequest
(
- USHORT nSlotId, // auszuf"uhrende <Slot-Id>
+ USHORT nSlotId, // executed <Slot-Id>
SfxCallMode nMode, // Synch/API/...
- SfxItemPool& rPool // ggf. f"ur das SfxItemSet f"ur Parameter
+ SfxItemPool& rPool // necessary for the SfxItemSet for parameters
)
// creates a SfxRequest without arguments
@@ -256,10 +256,10 @@ SfxRequest::SfxRequest
SfxRequest::SfxRequest
(
- const SfxSlot* pSlot, // auszuf"uhrende <Slot-Id>
+ const SfxSlot* pSlot, // executed <Slot-Id>
const com::sun::star::uno::Sequence < com::sun::star::beans::PropertyValue >& rArgs,
SfxCallMode nMode, // Synch/API/...
- SfxItemPool& rPool // ggf. f"ur das SfxItemSet f"ur Parameter
+ SfxItemPool& rPool // necessary for the SfxItemSet for parameters
)
: nSlot(pSlot->GetSlotId()),
pArgs(new SfxAllItemSet(rPool)),
@@ -344,16 +344,15 @@ const SfxItemSet* SfxRequest::GetInternalArgs_Impl() const
void SfxRequest_Impl::Record
(
- const uno::Sequence < beans::PropertyValue >& rArgs // aktuelle Parameter
+ const uno::Sequence < beans::PropertyValue >& rArgs // current Parameter
)
-/* [Beschreibung]
+/* [Description]
- Interne Hilfsmethode zum erzeugen einer <SfxMacroStatement>-Instanz,
- welche den bereits ausgef"uhrten SfxRequest wiederholbar beschreibt.
-
- Die erzeugte Instanz, auf die ein Pointer zur"uckgeliefert wird
- geht in das Eigentum des Aufrufers "uber.
+ Internal helper method to create a <SfxMacroStatement> Instance, which
+ repeatable describes the just executed SfxRequest. The ownership of thr
+ created instance, to which a pointer is returned, is handed over to the
+ caller.
*/
{
@@ -408,19 +407,17 @@ void SfxRequest_Impl::Record
void SfxRequest::Record_Impl
(
- SfxShell& rSh, // die <SfxShell>, die den Request ausgef"uhrt hat
- const SfxSlot& rSlot, // der <SfxSlot>, der den Request ausgef"uhrt hat
- com::sun::star::uno::Reference< com::sun::star::frame::XDispatchRecorder > xRecorder, // der Recorder, mit dem aufgezeichnet wird
+ SfxShell& rSh, // the <SfxShell>, which has excecuted the Request
+ const SfxSlot& rSlot, // the <SfxSlot>, which has executed the Request
+ com::sun::star::uno::Reference< com::sun::star::frame::XDispatchRecorder > xRecorder,
SfxViewFrame* pViewFrame
)
-/* [Beschreibung]
-
- Diese interne Methode markiert den SfxRequest als in dem angegebenen
- SfxMakro aufzuzeichnen.
+/* [Description]
- Pointer auf die Parameter werden in Done() wieder verwendet, m"usseb
- dann also noch leben.
+ This internal method marks the specified SfxMakro SfxRequest as recorded in
+ SfxMakro. Pointer to the parameters in Done() is used again, thus has to
+ still be alive.
*/
{
@@ -466,9 +463,9 @@ void SfxRequest::RemoveItem( USHORT nID )
const SfxPoolItem* SfxRequest::GetArg
(
- USHORT nSlotId, // Slot-Id oder Which-Id des Parameters
- bool bDeep, // FALSE: nicht in Parent-ItemSets suchen
- TypeId aType // != 0: RTTI Pruefung mit Assertion
+ USHORT nSlotId, // Slot-Id or Which-Id of the parameters
+ bool bDeep, // FALSE: do not seach in the Parent-ItemSets
+ TypeId aType // != 0: RTTI check with Assertion
) const
{
return GetItem( pArgs, nSlotId, bDeep, aType );
@@ -479,22 +476,19 @@ const SfxPoolItem* SfxRequest::GetArg
const SfxPoolItem* SfxRequest::GetItem
(
const SfxItemSet* pArgs,
- USHORT nSlotId, // Slot-Id oder Which-Id des Parameters
- bool bDeep, // false: nicht in Parent-ItemSets suchen
- TypeId aType // != 0: RTTI Pruefung mit Assertion
+ USHORT nSlotId, // Slot-Id or Which-Id of the parameters
+ bool bDeep, // FALSE: do not seach in the Parent-ItemSets
+ TypeId aType // != 0: RTTI check with Assertion
)
-/* [Beschreibung]
-
- Mit dieser Methode wird der Zugriff auf einzelne Parameter im
- SfxRequest wesentlich vereinfacht. Insbesondere wird die Typpr"ufung
- (per Assertion) durchgef"uhrt, wodurch die Applikations-Sourcen
- wesentlich "ubersichtlicher werden. In der PRODUCT-Version wird
- eine 0 zur"uckgegeben, wenn das gefundene Item nicht von der
- angegebenen Klasse ist.
+/* [Description]
+ With this method the access to individual parameters in the SfxRequest is
+ simplified. In particular the type-examination (by Assertion) is performed,
+ whereby the application source code will be much clearer. In the product-
+ version is a 0 returned, if the found item is not of the specified class.
- [Beispiel]
+ [Example]
void MyShell::Execute( SfxRequest &rReq )
{
@@ -503,12 +497,12 @@ const SfxPoolItem* SfxRequest::GetItem
case SID_MY:
{
...
- // ein Beispiel ohne Verwendung des Makros
+ // An Example on not using the macros
const SfxInt32Item *pPosItem = (const SfxUInt32Item*)
rReq.GetArg( SID_POS, FALSE, TYPE(SfxInt32Item) );
USHORT nPos = pPosItem ? pPosItem->GetValue() : 0;
- // ein Beispiel mit Verwendung des Makros
+ // An Example on using the macros
SFX_REQUEST_ARG(rReq, pSizeItem, SfxInt32Item, SID_SIZE, FALSE);
USHORT nSize = pSizeItem ? pPosItem->GetValue() : 0;
@@ -523,24 +517,24 @@ const SfxPoolItem* SfxRequest::GetItem
{
if ( pArgs )
{
- // ggf. in Which-Id umrechnen
+ // Which may be converted to ID
USHORT nWhich = pArgs->GetPool()->GetWhich(nSlotId);
- // ist das Item gesetzt oder bei bDeep==TRUE verf"ugbar?
+ // Is the item set or available at bDeep == TRUE?
const SfxPoolItem *pItem = 0;
if ( ( bDeep ? SFX_ITEM_AVAILABLE : SFX_ITEM_SET )
<= pArgs->GetItemState( nWhich, bDeep, &pItem ) )
{
- // stimmt der Typ "uberein?
+ // Compare type
if ( !pItem || pItem->IsA(aType) )
return pItem;
- // Item da aber falsch => Programmierfehler
+ // Item of wrong type => Programming error
OSL_FAIL( "invalid argument type" );
}
}
- // keine Parameter, nicht gefunden oder falschen Typ gefunden
+ // No Parameter, not found or wrong type
return 0;
}
@@ -548,7 +542,7 @@ const SfxPoolItem* SfxRequest::GetItem
void SfxRequest::SetReturnValue(const SfxPoolItem &rItem)
{
- DBG_ASSERT(!pImp->pRetVal, "Returnwert mehrfach setzen?");
+ DBG_ASSERT(!pImp->pRetVal, "Set Return value multiple times?");
if(pImp->pRetVal)
delete pImp->pRetVal;
pImp->pRetVal = rItem.Clone();
@@ -565,47 +559,42 @@ const SfxPoolItem* SfxRequest::GetReturnValue() const
void SfxRequest::Done
(
- const SfxItemSet& rSet, /* von der Applikation mitgeteilte Parameter,
- die z.B. in einem Dialog vom Benuter
- erfragt wurden, ggf. 0 falls keine
- Parameter gesetzt wurden */
+ const SfxItemSet& rSet, /* parameters passed on by the application,
+ that for example were asked for by the user
+ in a dialogue, 0 if no parameters have been
+ set */
bool bKeep /* TRUE (default)
- 'rSet' wird gepeichert und ist "uber
- GetArgs() abfragbar
+ 'rSet' is saved and GetArgs() queriable.
FALSE
- 'rSet' wird nicht kopiert (schneller) */
+ 'rSet' is not copied (faster) */
)
-/* [Beschreibung]
+/* [Description]
- Diese Methode mu\s in der <Execute-Methode> des <SfxSlot>s gerufen
- werden, der den SfxRequest ausgef"uhrt hat, wenn die Ausf"uhrung
- tats"achlich stattgefunden hat. Wird 'Done()' nicht gerufen, gilt
- der SfxRequest als abgebrochen.
+ This method must be called in the <Execute-Method> of the <SfxSlot>s, which
+ has performed the SfxRequest when the execution actually took place. If
+ 'Done()' is not called, then the SfxRequest is considered canceled.
- Etwaige Returnwerte werden nur durchgereicht, wenn 'Done()' gerufen
- wurde. Ebenso werden beim Aufzeichnen von Makros nur echte
- Statements erzeugt, wenn 'Done()' gerufen wurde; f"ur SfxRequests,
- die nicht derart gekennzeichnet wurden, wird anstelle dessen eine
- auf die abgebrochene Funktion hinweisende Bemerkung ('rem') eingf"ugt.
+ Any return values are passed only when 'Done()' was called. Similar, when
+ recording a macro only true statements are generated if 'Done()' was
+ called; for SfxRequests that were not identified as such will instead
+ be commented out by inserting ('rem').
+ [Note]
- [Anmerkung]
-
- 'Done()' wird z.B. nicht gerufen, wenn ein durch die Funktion gestarteter
- Dialog vom Benutzer abgebrochen wurde oder das Ausf"uhren aufgrund
- eines falschen Kontextes (ohne Verwendung separater <SfxShell>s)
- nicht durchgef"uhrt werden konnte. 'Done()' mu\s sehr wohl gerufen
- werden, wenn das Ausf"uhren der Funktion zu einem regul"aren Fehler
- f"uhrte (z.B. Datei konnte nicht ge"offnet werden).
+ 'Done ()' is not called, for example when a dialoge started by the function
+ was canceled by the user or if the execution could not be performed due to
+ a wrong context (without use of separate <SfxShell>s). 'Done ()' will be
+ launched, when executing the function led to a regular error
+ (for example, file could not be opened).
*/
{
Done_Impl( &rSet );
- // ggf. Items merken, damit StarDraw sie abfragen kann
+ // Keep items if possible, so they can be queried by StarDraw.
if ( bKeep )
{
if ( !pArgs )
@@ -657,10 +646,10 @@ BOOL SfxRequest::IsCancelled() const
void SfxRequest::Cancel()
-/* [Beschreibung]
+/* [Description]
- Markiert diesen Request als nicht mehr auszufuehren. Wird z.B. gerufen,
- wenn das Ziel (genauer dessen Pool) stirbt.
+ Marks this request as no longer executable. For example, if called when
+ the target (more precisely, its pool) dies.
*/
{
@@ -674,22 +663,20 @@ void SfxRequest::Cancel()
void SfxRequest::Ignore()
-/* [Beschreibung]
-
- Wird diese Methode anstelle von <SfxRequest::Done()> gerufen, dann
- wird dieser Request nicht recorded.
+/* [Description]
+ If this method is called instead of <SfxRequest::Done()>, then this
+ request is not recorded.
- [Bespiel]
+ [Example]
- Das Selektieren von Tools im StarDraw soll nicht aufgezeichnet werden,
- dieselben Slots sollen aber zum erzeugen der von den Tools zu
- erzeugenden Objekte verwendet werde. Also kann nicht NoRecord
- angegeben werden, dennoch soll u.U. nicht aufgezeichnet werden.
+ The selecting of tools in StarDraw should not be recorded, but the same
+ slots are to be used from the generation of the tools to the generated
+ objects. Thus can NoRecords not be specified, i.e. should not be recorded.
*/
{
- // als tats"achlich ausgef"uhrt markieren
+ // Mark as actually executed
pImp->bIgnored = TRUE;
}
@@ -697,38 +684,39 @@ void SfxRequest::Ignore()
void SfxRequest::Done_Impl
(
- const SfxItemSet* pSet /* von der Applikation mitgeteilte Parameter,
- die z.B. in einem Dialog vom Benuter
- erfragt wurden, ggf. 0 falls keine
- Parameter gesetzt wurden */
+ const SfxItemSet* pSet /* parameters passed on by the application,
+ that for example were asked for by the user
+ in a dialogue, 0 if no parameters have been
+ set */
+
)
-/* [Beschreibung]
+/* [Description]
- Interne Methode zum als 'done' markieren des SfxRequest und zum Auswerten
- der Parameter in 'pSet' falls aufgezeichnet wird.
+ Internal method to mark SfxRequest with 'done' and to evaluate the
+ parameters in 'pSet' in case it is recorded.
*/
{
- // als tats"achlich ausgef"uhrt markieren
+ // Mark as actually executed
pImp->bDone = TRUE;
- // nicht Recorden
+ // not Recording
if ( !pImp->xRecorder.is() )
return;
- // wurde ein anderer Slot ausgef"uhrt als angefordert (Delegation)
+ // was running a different slot than requested (Delegation)
if ( nSlot != pImp->pSlot->GetSlotId() )
{
- // Slot neu suchen
+ // Search Slot again
pImp->pSlot = pImp->pShell->GetInterface()->GetSlot(nSlot);
DBG_ASSERT( pImp->pSlot, "delegated SlotId not found" );
- if ( !pImp->pSlot ) // Hosentr"ger und G"urtel
+ if ( !pImp->pSlot ) // playing it safe
return;
}
- // record-f"ahig?
- // neues Recorden verwendet UnoName!
+ // recordable?
+ // new Recording uses UnoName!
if ( !pImp->pSlot->pUnoName )
{
ByteString aStr( "Recording not exported slot: ");
@@ -736,16 +724,16 @@ void SfxRequest::Done_Impl
DBG_ERROR( aStr.GetBuffer() );
}
- if ( !pImp->pSlot->pUnoName ) // Hosentr"ger und G"urtel
+ if ( !pImp->pSlot->pUnoName ) // playing it safe
return;
- // "ofters ben"otigte Werte
+ // often required values
SfxItemPool &rPool = pImp->pShell->GetPool();
// Property-Slot?
if ( !pImp->pSlot->IsMode(SFX_SLOT_METHOD) )
{
- // des Property als SfxPoolItem besorgen
+ // get the property as SfxPoolItem
const SfxPoolItem *pItem;
USHORT nWhich = rPool.GetWhich(pImp->pSlot->GetSlotId());
SfxItemState eState = pSet ? pSet->GetItemState( nWhich, FALSE, &pItem ) : SFX_ITEM_UNKNOWN;
@@ -763,7 +751,7 @@ void SfxRequest::Done_Impl
pImp->Record( aSeq );
}
- // alles in ein einziges Statement aufzeichnen?
+ // record everything in a single statement?
else if ( pImp->pSlot->IsMode(SFX_SLOT_RECORDPERSET) )
{
uno::Sequence < beans::PropertyValue > aSeq;
@@ -772,27 +760,27 @@ void SfxRequest::Done_Impl
pImp->Record( aSeq );
}
- // jedes Item als einzelnes Statement recorden
+ // record each item as a single statement
else if ( pImp->pSlot->IsMode(SFX_SLOT_RECORDPERITEM) )
{
if ( pSet )
{
- // "uber die Items iterieren
+ // iterate over Items
SfxItemIter aIter(*pSet);
for ( const SfxPoolItem* pItem = aIter.FirstItem(); pItem; pItem = aIter.NextItem() )
{
- // die Slot-Id f"ur das einzelne Item ermitteln
+ // to determine the slot ID for the individual item
USHORT nSlotId = rPool.GetSlotId( pItem->Which() );
if ( nSlotId == nSlot )
{
- // mit Hosentr"ager und G"urtel reparieren des falschen Flags
+ // play it safe; repair the wrong flags
OSL_FAIL( "recursion RecordPerItem - use RecordPerSet!" );
SfxSlot *pSlot = (SfxSlot*) pImp->pSlot;
pSlot->nFlags &= ~((ULONG)SFX_SLOT_RECORDPERITEM);
pSlot->nFlags &= SFX_SLOT_RECORDPERSET;
}
- // einen Sub-Request recorden
+ // Record a Sub-Request
SfxRequest aReq( pImp->pViewFrame, nSlotId );
if ( aReq.pImp->pSlot )
aReq.AppendItem( *pItem );
@@ -801,7 +789,7 @@ void SfxRequest::Done_Impl
}
else
{
- HACK(hierueber nochmal nachdenken)
+ //HACK(think about this again)
pImp->Record( uno::Sequence < beans::PropertyValue >() );
}
}
@@ -811,18 +799,16 @@ void SfxRequest::Done_Impl
BOOL SfxRequest::IsDone() const
-/* [Beschreibung]
-
- Mit dieser Methode kann abgefragt werden, ob der SfxRequest tats"achlich
- ausgef"uhrt wurde oder nicht. Wurde ein SfxRequest nicht ausgef"uhrt,
- liegt dies z.B. daran, da\s der Benutzer abgebrochen hat oder
- der Kontext f"ur diesen Request falsch war, dieses aber nicht "uber
- eine separate <SfxShell> realisiert wurde.
+/* [Description]
- SfxRequest-Instanzen, die hier FALSE liefern, werden nicht recorded.
+ With this method it can be queried whether the SfxRequest was actually
+ executed or not. If a SfxRequest was not executed, then this is for example
+ because it was canceled by the user or the context for this request was
+ wrong, this was not implemented on a separate <SfxShell>.
+ SfxRequest instances that return FALSE will not be recorded.
- [Querverweise]
+ [Cross-reference]
<SfxRequest::Done(const SfxItemSet&)>
<SfxRequest::Done()>
@@ -836,10 +822,10 @@ BOOL SfxRequest::IsDone() const
SfxMacro* SfxRequest::GetRecordingMacro()
-/* [Beschreibung]
+/* [Description]
- Mit dieser Methode kann abgefragt werden, ob und in welchem <SfxMacro>
- die SfxRequests gerade aufgezeichnet werden.
+ With this method it can be queried as to whether and to what <SfxMacro>
+ the SfxRequests is being recorded.
*/
{
@@ -850,12 +836,13 @@ SfxMacro* SfxRequest::GetRecordingMacro()
com::sun::star::uno::Reference< com::sun::star::frame::XDispatchRecorder > SfxRequest::GetMacroRecorder( SfxViewFrame* pView )
-/* [Beschreibung]
+/* [Description]
- Hier wird versucht einen Recorder fuer dispatch() Aufrufe vom Frame zu bekommen.
- Dieser ist dort per Property an einem Supplier verfuegbar - aber nur dann, wenn
- recording angeschaltet wurde.
- (Siehe auch SfxViewFrame::MiscExec_Impl() und SID_RECORDING)
+ This recorder is an attempt for dispatch () to get calls from the Frame.
+ This is then available through a property by a supplier but only when
+ recording was turned on.
+
+ (See also SfxViewFrame::MiscExec_Impl() and SID_RECORDING)
*/
{
@@ -887,10 +874,10 @@ BOOL SfxRequest::HasMacroRecorder( SfxViewFrame* pView )
BOOL SfxRequest::IsAPI() const
-/* [Beschreibung]
+/* [Description]
- Liefert TRUE, wenn dieser SfxRequest von einer API (z.B. BASIC)
- erzeugt wurde, sonst FALSE.
+ Returns TRUE if this SfxRequest was generated by an API (for example BASIC),
+ otherwise FALSE.
*/
{
@@ -902,13 +889,13 @@ BOOL SfxRequest::IsAPI() const
bool SfxRequest::IsRecording() const
-/* [Beschreibung]
+/* [Description]
- Liefert TRUE, wenn dieser SfxRequest recorded werden soll, d.h.
- 1. zu Zeit ein Makro aufgezeichnet wird
- 2. dieser Request "uberhaupt aufgezeichnet wird
- 3. der Request nicht von reiner API (z.B. BASIC) ausgeht,
- sonst FALSE.
+ Returns TRUE if this SfxRequest is to be recorded ie
+ 1. Currently a macro is beeing recorded
+ 2. This request is even recorded
+ 3. the request did not originate from a pure API (for example BASIC),
+ otherwise FALSE.
*/
{
@@ -931,19 +918,18 @@ USHORT SfxRequest::GetModifier() const
void SfxRequest::SetTarget( const String &rTarget )
-/* [Beschreibung]
-
- Mit dieser Methode kann das zu recordende Zielobjekt umgesetzt werden.
+/* [Description]
+ With this method the recording of the target object can be implemented.
- [Beispiel]
+ [Example]
- Die BASIC-Methode 'Open' wird zwar von der Shell 'Application' ausgef"uhrt,
- aber am Objekt 'Documents' (global) recorded:
+ The BASIC-Methode 'Open' is although executed by the Shell 'Application'
+ but recorded on the Objekt 'Documents' (global):
rReq.SetTarget( "Documents" );
- Dies f"uhrt dann zu:
+ This then leads to:
Documents.Open( ... )
*/
diff --git a/sfx2/source/control/shell.cxx b/sfx2/source/control/shell.cxx
index f7165d8..4dc89fb 100644
--- a/sfx2/source/control/shell.cxx
+++ b/sfx2/source/control/shell.cxx
@@ -76,11 +76,12 @@ using namespace com::sun::star;
//=========================================================================
struct SfxShell_Impl: public SfxBroadcaster
{
- String aObjectName;// Name des Sbx-Objects
- SfxItemArray_Impl aItems; // Datenaustausch auf Item-Basis
- SfxViewShell* pViewSh; // SfxViewShell falls Shell ViewFrame/ViewShell/SubShell ist
- SfxViewFrame* pFrame; // Frame, falls <UI-aktiv>
- SfxRepeatTarget* pRepeatTarget;
+ String aObjectName; // Name of Sbx-Objects
+ SfxItemArray_Impl aItems; // Data exchange on Item level
+ SfxViewShell* pViewSh; // SfxViewShell if Shell is
+ // ViewFrame/ViewShell/SubShell list
+ SfxViewFrame* pFrame; // Frame, if <UI-active>
+ SfxRepeatTarget* pRepeatTarget; // SbxObjectRef xParent;
BOOL bInAppBASIC;
BOOL bActive;
ULONG nDisableFlags;
@@ -88,6 +89,7 @@ struct SfxShell_Impl: public SfxBroadcaster
svtools::AsynchronLink* pExecuter;
svtools::AsynchronLink* pUpdater;
SfxVerbSlotArr_Impl aSlotArr;
+
com::sun::star::uno::Sequence < com::sun::star::embed::VerbDescriptor > aVerbList;
SfxShell_Impl() : pExecuter( 0 ), pUpdater( 0 ) {}
~SfxShell_Impl() { delete pExecuter; delete pUpdater;}
@@ -98,10 +100,10 @@ struct SfxShell_Impl: public SfxBroadcaster
String SfxShellIdent_Impl( const SfxShell *pSh )
-/* [Beschreibung]
+/* [Description]
- Interne Hilfesfunktion. Liefert einen die SfxShell 'pSh' beschreibenden
- String zur"uck. Z.B.: SfxApplication[StarWriter]
+ Internal helper function. Returns a SfxShell 'pSh' descriptive string.
+ For instance: SfxApplication [StarWriter]
*/
{
@@ -132,11 +134,11 @@ void SfxShell::EmptyStateStub(SfxShell *, SfxItemSet &)
SfxShell::SfxShell()
-/* [Beschreibung]
+/* [Description]
- Der Konstruktor der Klasse SfxShell initialisierung nur einfache
- Typen, das dazugeh"orige SbxObject wird erst on-demand erzeugt.
- Daher ist das Anlegen einer SfxShell Instanz sehr billig.
+ The constructor of the SfxShell class initializes only simple types,
+ the corresponding SbxObject is only created on-demand. Therefore,
+ the application of a SfxShell instance is very cheap.
*/
: pImp(0),
@@ -158,11 +160,11 @@ SfxShell::SfxShell()
SfxShell::SfxShell( SfxViewShell *pViewSh )
-/* [Beschreibung]
+/* [Description]
- Der Konstruktor der Klasse SfxShell initialisierung nur einfache
- Typen, das dazugeh"orige SbxObject wird erst on-demand erzeugt.
- Daher ist das Anlegen einer SfxShell Instanz sehr billig.
+ The constructor of the SfxShell class initializes only simple types,
+ the corresponding SbxObject is only created on-demand. Therefore,
+ the application of a SfxShell instance is very cheap.
*/
: pImp(0),
@@ -183,11 +185,11 @@ SfxShell::SfxShell( SfxViewShell *pViewSh )
SfxShell::~SfxShell()
-/* [Beschreibung]
+/* [Description]
- Die Verbindungs zu einem ggf. zugeh"origen SbxObject wird gel"ost.
- Das SbxObject existiert ggf. weiter, kann aber keine Funktionen
- mehr ausf"uhren und keine Properties mehr bereitstellen.
+ The connection to a possible corresponding SbxObject is dissolved.
+ The SbxObject may continoue to exist, but can not any longer perform
+ any functions and can not provide any properties.
*/
{
@@ -199,10 +201,10 @@ SfxShell::~SfxShell()
void SfxShell::SetName( const String &rName )
-/* [Beschreibung]
+/* [Description]
- Setzt den Namen des Shell-Objekts. Mit diesem Namen kann die
- SfxShell-Instanz vom BASIC aus angesprochen werden.
+ Sets the name of the Shell object. With this name, the SfxShell instance
+ of BASIC can be expressed.
*/
{
@@ -213,10 +215,10 @@ void SfxShell::SetName( const String &rName )
const String& SfxShell::GetName() const
-/* [Beschreibung]
+/* [Description]
- Liefert den Namen des Shell-Objekts. Mit diesem Namen kann die
- SfxShell-Instanz vom BASIC aus angesprochen werden.
+ Returns the name of the Shell object. With this name, the SfxShell instance
+ of BASIC can be expressed.
*/
{
@@ -227,11 +229,11 @@ const String& SfxShell::GetName() const
SvGlobalName SfxShell::GetGlobalName() const
-/* [Beschreibung]
+/* [Description]
- Liefert den Global Unique Identifier des Shell-Objekts. Mit diesem
- Namen kann die SfxShell-Instanz z.B. via OLE Automation angesprochen
- werden, bzw. in der Registration-Database gefunden werden.
+ Provides the Global Unique Identifier of the Shell object. With this name
+ can the SfxShell instance for example be expressed via OLE Automation, or
+ be found in the Registration Database.
*/
{
@@ -242,14 +244,13 @@ SvGlobalName SfxShell::GetGlobalName() const
SfxDispatcher* SfxShell::GetDispatcher() const
-/* [Beschreibung]
+/* [Description]
- Diese Methode liefert einen Pointer auf den <SfxDispatcher>, in
- dem die SfxShell gerade <UI-aktiv> ist bzw. einen 0-Pointer, wenn
- sie gerade nicht UI-aktiv ist.
+ This method returns a pointer to the <SfxDispatcher>, when the SfxShell
+ is currently <UI-active> or a NULL-pointer if it is not UI-active.
- Der zur"uckgegebene Pointer ist nur im unmittelbaren Kontext des
- Methodenaufrufs g"ultig.
+ The returned pointer is only valid in the immediate context of the method
+ call.
*/
{
@@ -260,10 +261,11 @@ SfxDispatcher* SfxShell::GetDispatcher() const
SfxViewShell* SfxShell::GetViewShell() const
-/* [Beschreibung]
+/* [Description]
- Liefert bei SubShells die SfxViewShell, in der sie liegen. Sonst und
- falls nicht vom App-Entwickler angegeben liefert diese Methode 0.
+ Returns the SfxViewShell in which they are located in the subshells.
+ Otherwise, and if not specified by the App developer, this method
+ returns NULL.
*/
{
@@ -274,25 +276,23 @@ SfxViewShell* SfxShell::GetViewShell() const
SfxViewFrame* SfxShell::GetFrame() const
-/* [Beschreibung]
-
- Diese Methode liefert einen Pointer auf den <SfxViewFrame>, dem diese
- SfxShell-Instanz zugeordnet ist oder in dem sie zur Zeit <UI-aktiv> ist.
- Ein 0-Pointer wird geliefert, wenn diese SfxShell-OInstanz gerade nicht
- UI-aktiv ist und auch keinem SfxViewFrame fest zugeordnet ist.
+/* [Description]
- Der zur"uckgegebene Pointer ist nur im unmittelbaren Kontext des
- Methodenaufrufs g"ultig.
+ This method returns a pointer to the <SfxViewFrame> to which this SfxShell
+ instance is associated or in which they currently is <UI-active>.
+ A NULL pointer is returned if this SfxShell instance is not UI-active at
+ the moment and also no SfxViewFrame is permanently assigned.
+ The returned pointer is only valid in the immediate context of the method
+ call.
- [Anmerkung]
+ [Note]
- Nur Instanzen von Subklasse von SfxApplication und SfxObjectShell sollten
- hier einen 0-Pointer liefern. Ansonsten liegt ein Fehler im Anwendungs-
- programm vor (falscher Ctor von SfxShell gerufen).
+ Only instances of a subclass of SfxApplication and SfxObjectShell
+ should here provide a NULL-pointer. Otherwise, there is an error in the
+ application program (wrong constructor was called from SfxShell).
-
- [Querverweise]
+ [Cross-reference]
<SfxViewShell::GetViewFrame()const>
*/
@@ -309,21 +309,19 @@ SfxViewFrame* SfxShell::GetFrame() const
const SfxPoolItem* SfxShell::GetItem
(
- USHORT nSlotId // Slot-Id des zu erfragenden <SfxPoolItem>s
+ USHORT nSlotId // Slot-Id of the querying <SfxPoolItem>s
) const
-/* [Beschreibung]
-
- Mit dieser Methode kann auf beliebige Objekte von Subklassen von
- <SfxPoolItem> zugegriffen werden. Diese Austauschtechnik wird ben"otigt,
- wenn z.B. spezielle <SfxToolBoxControl> Subklassen Zugriff auf
- bestimmte Daten z.B. der <SfxObjectShell> ben"otigen.
+/* [Description]
- Die zur"uckgelieferte Instanz geh"ort der jeweilige SfxShell und
- darf nur im unmittelbaren Kontext des Methodenaufrufs verwendet werden.
+ With this method any objects of <SfxPoolItemu> subclasses can be accessed.
+ This exchange method is needed if, for example special <SfxToolBoxControl>
+ subclasses need access to certain data such as the <SfxObjectShell>.
+ The returned instance belongs to the particular SfxShell and may be
+ used only in the immediate context of the method call.
- [Querverweise]
+ [Cross-reference]
<SfxShell::PutItem(const SfxPoolItem&)>
<SfxShell::RemoveItem(USHORT)>
@@ -340,19 +338,17 @@ const SfxPoolItem* SfxShell::GetItem
void SfxShell::RemoveItem
(
- USHORT nSlotId // Slot-Id des zu l"oschenden <SfxPoolItem>s
+ USHORT nSlotId // Slot-Id of the deleting <SfxPoolItem>s
)
-/* [Beschreibung]
+/* [Description]
- Mit dieser Methode k"onnen die allgemein zur Verf"ugung gestellten
- Instanzen von Subklassen von <SfxPoolItem> aus der SfxShell entfernt
- werden.
+ With this method the general available subclasses instances of
+ <cSfxPoolItem> from the SfxShell are removed.
- Die gespeicherte Instanz wird gel"oscht.
+ The stored instance is deleted.
-
- [Querverweise]
+ [Cross-reference]
<SfxShell::PutItem(const SfxPoolItem&)>
<SfxShell::GetItem(USHORT)>
@@ -362,12 +358,12 @@ void SfxShell::RemoveItem
for ( USHORT nPos = 0; nPos < pImp->aItems.Count(); ++nPos )
if ( pImp->aItems.GetObject(nPos)->Which() == nSlotId )
{
- // Item entfernen und l"oschen
+ // Remove and delete Item
SfxPoolItem *pItem = pImp->aItems.GetObject(nPos);
delete pItem;
pImp->aItems.Remove(nPos);
- // falls aktiv Bindings benachrichtigen
+ // if active, notify Bindings
SfxDispatcher *pDispat = GetDispatcher();
if ( pDispat )
{
@@ -381,23 +377,20 @@ void SfxShell::RemoveItem
void SfxShell::PutItem
(
- const SfxPoolItem& rItem /* Instanz, von der eine Kopie erstellt wird,
- die in der SfxShell in einer Liste
- gespeichert wird. */
+ const SfxPoolItem& rItem /* Instance, of which a copy is created,
+ which is stored in the SfxShell in a list. */
)
-/* [Beschreibung]
-
- Mit dieser Methode k"onnen beliebige Objekte von Subklassen von
- <SfxPoolItem> zur Verf"ugung gestellt werden. Diese Austauschtechnik
- wird ben"otigt, wenn z.B. spezielle <SfxToolBoxControl> Subklassen
- Zugriff auf bestimmte Daten z.B. der <SfxObjectShell> ben"otigen.
+/* [Description]
- Falls ein SfxPoolItem mit derselben Slot-Id exisitert, wird dieses
- automatisch gel"oscht.
+ With this method, any objects of subclasses of <SfxPoolItem> can be made
+ available. This exchange technology is needed if, for example, special
+ <SfxToolBoxControl> Subclasses need access to certain data such as the
+ <SfxObjectShell>
+ If a SfxPoolItem exists with the same slot ID, it is deleted automatically.
- [Querverweise]
+ [Cross-reference]
<SfxShell::RemoveItem(USHORT)>
<SfxShell::GetItem(USHORT)>
@@ -408,7 +401,7 @@ void SfxShell::PutItem
DBG_ASSERT( SfxItemPool::IsSlot( rItem.Which() ),
"items with Which-Ids aren't allowed here" );
- // MSC auf WNT/W95 machte hier Mist, Vorsicht bei Umstellungen
+ // MSC made a mess here of WNT/W95, beware of changes
const SfxPoolItem *pItem = rItem.Clone();
SfxPoolItemHint aItemHint( (SfxPoolItem*) pItem );
const USHORT nWhich = rItem.Which();
@@ -418,12 +411,12 @@ void SfxShell::PutItem
{
if ( (*ppLoopItem)->Which() == nWhich )
{
- // Item austauschen
+ // Replace Item
delete *ppLoopItem;
pImp->aItems.Remove(nPos);
pImp->aItems.Insert( (SfxPoolItemPtr) pItem, nPos );
- // falls aktiv Bindings benachrichtigen
+ // if active, notify Bindings
SfxDispatcher *pDispat = GetDispatcher();
if ( pDispat )
{
@@ -449,15 +442,14 @@ void SfxShell::PutItem
SfxInterface* SfxShell::GetInterface() const
-/* [Beschreibung]
+/* [Description]
- Mit dieser virtuellen Methode, die durch das Makro <SFX_DECL_INTERFACE>
- von jeder Subclass mit eigenen Slots automatisch "uberladen wird, kann
- auf die zu der Subklasse geh"orende <SfxInterface>-Instanz zugegriffen
- werden.
+ With this virtual method, which is automatically overloaded by each subclass
+ with its own slots through the macro <SFX_DECL_INTERFACE>, one can access
+ each of the <SfxInterface> instance beloning to the subclass.
- Die Klasse SfxShell selbst hat noch kein eigenes SfxInterface
- (keine Slots), daher wird ein 0-Pointer zur"uckgeliefert.
+ The class SfxShell itself has no own SfxInterface (no slots), therefore a
+ NULL-pointer is returned.
*/
{
@@ -468,10 +460,10 @@ SfxInterface* SfxShell::GetInterface() const
SfxBroadcaster* SfxShell::GetBroadcaster()
-/* [Beschreibung]
+/* [Description]
- Liefert einen SfxBroadcaster f"ur diese SfxShell-Instanz bis die
- Klasse SfxShell von SfxBroadcaster abgeleitet ist.
+ Returns a SfxBroadcaster for this SfxShell instance until the class of
+ SfxShell is derived by SfxBroadcaster.
*/
{
@@ -482,14 +474,13 @@ SfxBroadcaster* SfxShell::GetBroadcaster()
SfxUndoManager* SfxShell::GetUndoManager()
-/* [Beschreibung]
+/* [Description]
- Jede Subclass von SfxShell kann "uber einen <SfxUndoManager> verf"ugen.
- Dieser kann in den abgeleiteten Klasse mit <SfxShell:SetUndoManager()>
- gesetzt werden.
+ Each Subclass of SfxShell can hava a <SfxUndoManager>. This can be set in
+ the derived class with <SfxShell:SetUndoManager()>.
- Die Klasse SfxShell selbst hat noch keinen SfxUndoManager, es wird
- daher ein 0-Pointer zur"uckgeliefert.
+ The class SfxShell itself does not have a SfxUndoManager, a NULL-pointer
+ is therefore returned.
*/
{
@@ -500,17 +491,17 @@ SfxUndoManager* SfxShell::GetUndoManager()
void SfxShell::SetUndoManager( SfxUndoManager *pNewUndoMgr )
-/* [Beschreibung]
+/* [Description]
- Setzt einen <SfxUndoManager> f"ur diese <SfxShell> Instanz. F"ur das
- Undo wird immer nur der Undo-Manager an der jeweils oben auf dem
- Stack des <SfxDispatcher> liegenden SfxShell verwendet.
+ Sets a <SfxUndoManager> for this <SfxShell> Instance. For the undo
+ is only the undo-manager used for SfxShell at the top of the stack of each
+ <SfxDispatcher>.
- Am "ubergebenen <SfxUndoManager> wird automatisch die aktuelle
- Max-Undo-Action-Count Einstellung aus den Optionen gesetzt.
+ On the given <SfxUndoManager> is automatically the current
+ Max-Undo-Action-Count setting set form the options.
- 'pNewUndoMgr' mu\s bis zum Dtor dieser SfxShell-Instanz oder bis
- zum n"achsten 'SetUndoManager()' existieren.
+ 'pNewUndoMgr' must exist until the Destuctor of SfxShell instance is called
+ or until the next 'SetUndoManager()'.
*/
{
@@ -523,20 +514,17 @@ void SfxShell::SetUndoManager( SfxUndoManager *pNewUndoMgr )
SfxRepeatTarget* SfxShell::GetRepeatTarget() const
-/* [Beschreibung]
+/* [Description]
- Liefert einen Pointer auf die <SfxRepeatTarget>-Instanz, die
- als RepeatTarget bei SID_REPEAT verwendet wird, wenn der
- von dieser SfxShell gelieferte <SfxUndoManager> angesprochen wird.
- Der R"uckgabewert kann 0 sein.
+ Returns a pointer to the <SfxRepeatTarget> instance that is used in
+ SID_REPEAT as repeat target when it is adressed from the <SfxUndoManager>
+ supplied by this SfxShell. The return value can be NULL.
+ [Note]
- [Anmerkung]
-
- Eine Ableitung von <SfxShell> oder einer ihrer Subklassen von
- <SfxRepeatTarget> ist nicht zu empfehlen, da Compiler-Fehler
- provoziert werden (wegen Call-to-Pointer-to-Member-Function to
- subclass).
+ A derivation of <SfxShell> or one of its subclasses of <SfxRepeatTarget>
+ is not recommended, as compiler errors are provoked.
+ (due to Call-to-Pointer-to-Member-Function to the subclass).
*/
{
@@ -547,21 +535,18 @@ SfxRepeatTarget* SfxShell::GetRepeatTarget() const
void SfxShell::SetRepeatTarget( SfxRepeatTarget *pTarget )
-/* [Beschreibung]
-
- Setzt den die <SfxRepeatTarget>-Instanz, die bei SID_REPEAT als
- RepeatTarget verwendet wird, wenn der von dieser SfxShell gelieferte
- <SfxUndoManager> angesprochen wird. Durch 'pTarget==0' wird SID_REPEAT
- f"ur diese SfxShell disabled. Die Instanz '*pTarget' mu\s so lange
- leben, wie sie angemeldet ist.
+/* [Description]
+ Sets the <SfxRepeatTarget> instance that is used in SID_REPEAT as
+ RepeatTarget, when the current supplied by this <SfxUndoManager> is
+ addressed. By 'pTarget==0' the SID_REPEAT is disabled for this SfxShell.
+ The instance '*pTarget' must live as long as it is registered.
- [Anmerkung]
+ [Note]
- Eine Ableitung von <SfxShell> oder einer ihrer Subklassen von
- <SfxRepeatTarget> ist nicht zu empfehlen, da Compiler-Fehler
- provoziert werden (wegen Call-to-Pointer-to-Member-Function to
- subclass).
+ A derivation of <SfxShell> or one of its subclasses of <SfxRepeatTarget>
+ is not recommended, as compiler errors are provoked.
+ (due to Call-to-Pointer-to-Member-Function to the subclass).
*/
{
@@ -572,19 +557,20 @@ void SfxShell::SetRepeatTarget( SfxRepeatTarget *pTarget )
void SfxShell::Invalidate
(
- USHORT nId /* Zu invalidierende Slot-Id oder Which-Id.
- Falls diese 0 ist (default), werden
- alle z.Zt. von dieser Shell bedienten
- Slot-Ids invalidiert. */
+ USHORT nId /* Invalidated Slot-Id or Which-Id.
+ If these are 0 (default), then all
+ by this Shell currently handled Slot-Ids are
+ invalidated. */
)
-/* [Beschreibung]
+/* [Description]
- Mit dieser Methode k"onnen Slots der Subclasses "uber die Slot-Id
- oder alternativ "uber die Which-Id invalidiert werden. Slot-Ids,
- die von der Subclass ererbt sind, werden ebenfalls invalidert.
+ With this method can the slots of the subclasses be invalidated through the
+ slot Id or alternatively through the Which ID. Slot IDs, which are
+ inherited by the subclass are also invalidert.
+
+ [Cross-reference]
- [Querverweise]
<SfxBindings::Invalidate(USHORT)>
<SfxBindings::InvalidateAll(BOOL)>
*/
@@ -613,11 +599,11 @@ void SfxShell::Invalidate_Impl( SfxBindings& rBindings, USHORT nId )
const SfxSlot *pSlot = pIF->GetSlot(nId);
if ( pSlot )
{
- // bei Enum-Slots ist der Master-Slot zu invalidieren
+ // At Enum-Slots invalidate the Master-Slot
if ( SFX_KIND_ENUM == pSlot->GetKind() )
pSlot = pSlot->GetLinkedSlot();
- // den Slot selbst und ggf. auch alle Slave-Slots invalidieren
+ // Invalidate the Slot itself and possible also all Slave-Slots
rBindings.Invalidate( pSlot->GetSlotId() );
for ( const SfxSlot *pSlave = pSlot->GetLinkedSlot();
pSlave && pIF->ContainsSlot_Impl( pSlave ) &&
@@ -641,15 +627,15 @@ void SfxShell::Invalidate_Impl( SfxBindings& rBindings, USHORT nId )
void SfxShell::DoActivate_Impl( SfxViewFrame *pFrame, BOOL bMDI )
-/* [Beschreibung]
+/* [Description]
- Diese Methode steuert die Aktivierung der SfxShell-Instanz. Zun"achst
- wird durch Aufruf der virtuellen Methode <SfxShell::Activate(BOOL)>
- der Subclass die M"oglichkeit gegeben, auf das Event zu reagieren.
+ This method controls the activation of SfxShell instance. First, by calling
+ the virtual method <SfxShell::Activate(BOOL)> which gives the subclass the
+ opportunity to respond to the event.
- Bei bMDI == TRUE wird das zugeh"orige SbxObject 'scharfgeschaltet',
- so da\s Methoden des Objekts unqualifiziert (ohne den Namen des Objekts)
- vom BASIC gefunden werden.
+ When bMDI == TRUE, the associated SbxObject is being 'armed', so that
+ unqualified methods of the object (without the name of the object)
+ from BASIC are found.
*/
{
@@ -670,12 +656,12 @@ void SfxShell::DoActivate_Impl( SfxViewFrame *pFrame, BOOL bMDI )
if ( bMDI )
{
- // Frame merken, in dem aktiviert wird
+ // Remember Frame, in which it was activated
pImp->pFrame = pFrame;
pImp->bActive = TRUE;
}
- // Subklasse benachrichtigen
+ // Notify Subclass
Activate(bMDI);
}
@@ -683,16 +669,14 @@ void SfxShell::DoActivate_Impl( SfxViewFrame *pFrame, BOOL bMDI )
void SfxShell::DoDeactivate_Impl( SfxViewFrame *pFrame, BOOL bMDI )
-/* [Beschreibung]
+/* [Description]
- Diese Methode steuert die Deaktivierung der SfxShell-Instanz. Bei
- bMDI == TRUE wird zun"achst das SbxObject in einen Status versetzt,
- so da\s Methoden vom BASIC aus nur noch qualifiziert gerufen werden
- k"onnen.
+ This method controls the deactivation of the SfxShell instance. When
+ bMDI == TRUE the SbxObject is first set to a status that only qualified
+ BASIC methods can be called.
- Dann erh"alt in jedem Fall die Subclass durch Aufruf der virtuellen
- Methode <SfxShell::Deactivate(BOOL)> die M"oglichkeit auf das Event
- zu reagieren.
+ Then the subclass gets the opportunity in every case to respond to the
+ event by calling the virtual method <SfxShell::Deactivate(BOOL)>.
*/
{
@@ -711,15 +695,16 @@ void SfxShell::DoDeactivate_Impl( SfxViewFrame *pFrame, BOOL bMDI )
DbgTrace( aMsg.GetBuffer() );
#endif
- // nur wenn er vom Frame kommt (nicht z.B. pop der BASIC-IDE vom AppDisp)
+ // Only when it comes from a Frame
+ // (not when for instance by poping BASIC-IDE from AppDisp)
if ( bMDI && pImp->pFrame == pFrame )
{
- // austragen
+ // deliver
pImp->pFrame = 0;
pImp->bActive = FALSE;
}
- // Subklasse benachrichtigen
+ // Notify Subclass
Deactivate(bMDI);
}
@@ -735,28 +720,27 @@ BOOL SfxShell::IsActive() const
void SfxShell::Activate
(
BOOL /*bMDI*/ /* TRUE
- der <SfxDispatcher>, auf dem die SfxShell sich
- befindet, ist aktiv geworden oder die SfxShell
- Instanz wurde auf einen aktiven SfxDispatcher
- gepusht. (vergl. SystemWindow::IsMDIActivate())
+ the <SfxDispatcher>, on which the SfxShell is
+ located, is activated or the SfxShell instance
+ was pushed on an active SfxDispatcher.
+ (compare with SystemWindow::IsMDIActivate())
FALSE
- das zum <SfxViewFrame>, auf dessen SfxDispatcher
- sich die SfxShell Instanz befindet, wurde
- aktiviert.
- (z.B. durch einen geschlossenen Dialog) */
+ the <SfxViewFrame>, on which SfxDispatcher
+ the SfxShell instance is located, was
+ activated. (for example by a closing dialoge) */
)
-/* [Beschreibung]
+/* [Description]
- Virtuelle Methode, die beim Aktivieren der SfxShell Instanz gerufen
- wird, um den Subclasses die Gelegenheit zu geben, auf das Aktivieren
- zu reagieren.
+ Virtual method that is called when enabling the SfxShell instance,
+ in order to give the Subclasses the opportunity to respond to the
+ to the enabling.
- Die Basisimplementation ist leer und braucht nicht gerufen zu werden.
+ The base implementation is empty and does not need to be called.
+ [Cross-reference]
- [Querverweise]
StarView SystemWindow::Activate(BOOL)
*/
@@ -768,28 +752,27 @@ void SfxShell::Activate
void SfxShell::Deactivate
(
BOOL /*bMDI*/ /* TRUE
- der <SfxDispatcher>, auf dem die SfxShell sich
- befindet, ist inaktiv geworden oder die SfxShell
- Instanz wurde auf einen aktiven SfxDispatcher
- gepoppt. (vergl. SystemWindow::IsMDIActivate())
+ the <SfxDispatcher>, on which the SfxShell is
+ located, is inactivated or the SfxShell instance
+ was popped on an active SfxDispatcher.
+ (compare with SystemWindow::IsMDIActivate())
FALSE
- das zum <SfxViewFrame>, auf dessen SfxDispatcher
- sich die SfxShell Instanz befindet, wurde
- deaktiviert. (z.B. durch einen Dialog) */
+ the <SfxViewFrame>, on which SfxDispatcher
+ the SfxShell instance is located, was
+ deactivated. (for example by a dialoge) */
)
-/* [Beschreibung]
+/* [Description]
- Virtuelle Methode, die beim Deaktivieren der SfxShell Instanz gerufen
- wird, um den Subclasses die Gelegenheit zu geben, auf das Deaktivieren
- zu reagieren.
+ Virtual method that is called when disabling the SfxShell instance,
+ to give the Subclasses the opportunity to respond to the disabling.
- Die Basisimplementation ist leer und braucht nicht gerufen zu werden.
+ The base implementation is empty and does not need to be called.
+ [Cross-reference]
- [Querverweise]
StarView SystemWindow::Dectivate(BOOL)
*/
@@ -800,15 +783,16 @@ void SfxShell::ParentActivate
(
)
-/* [Beschreibung]
+/* [Description]
+
+ A parent of the <SfxDispatcher> on which the SfxShell is located, has
+ become active, or the SfxShell instance was pushed on a <SfxDispatcher>,
+ which parent is active.
- Ein Parent des <SfxDispatcher>, auf dem die SfxShell sich befindet,
- ist aktiv geworden, oder die SfxShell Instanz wurde auf einen
- <SfxDispatcher> gepusht, dessen parent aktiv ist.
+ The base implementation is empty and does not need to be called.
- Die Basisimplementation ist leer und braucht nicht gerufen zu werden.
+ [Cross-reference]
- [Querverweise]
SfxShell::Activate()
*/
{
@@ -820,14 +804,15 @@ void SfxShell::ParentDeactivate
(
)
-/* [Beschreibung]
+/* [Description]
- Der aktive Parent des <SfxDispatcher>, auf dem die SfxShell sich befindet,
- ist deaktiviert worden.
+ The active parent of the <SfxDispatcher> on which the SfxShell is located,
+ has been disabled.
- Die Basisimplementation ist leer und braucht nicht gerufen zu werden.
+ The base implementation is empty and does not need to be called.
+
+ [Cross-reference]
- [Querverweise]
SfxShell::Deactivate()
*/
{
@@ -837,11 +822,11 @@ void SfxShell::ParentDeactivate
ResMgr* SfxShell::GetResMgr() const
-/* [Beschreibung]
+/* [Description]
- Diese Methode liefert den ResMgr der <Resource-DLL>, die von der
- SfxShell-Instanz verwendet wird. Ist dies ein 0-Pointer, so
- ist der aktuelle Resource-Manager zu verwenden.
+ This method provides the ResMgr of the <Resource-DLL> that are used by
+ the SfxShell instance. If this is a NULL-pointer, then the current
+ resource manager is to be used.
*/
{
@@ -852,13 +837,13 @@ ResMgr* SfxShell::GetResMgr() const
bool SfxShell::CanExecuteSlot_Impl( const SfxSlot &rSlot )
-/* [Beschreibung]
+/* [Description]
- Diese Methode stellt durch Aufruf der Statusfunktion fest,
- ob 'rSlot' aktuell ausgef"uhrt werden kann.
+ This method determines by calling the status function whether 'rSlot'
+ can be executed currently.
*/
{
- // Slot-Status holen
+ // Get Slot status
SfxItemPool &rPool = GetPool();
const USHORT nId = rSlot.GetWhich( rPool );
SfxItemSet aSet(rPool, nId, nId);
@@ -875,8 +860,9 @@ long ShellCall_Impl( void* pObj, void* pArg )
return 0;
}
-/* [Beschreibung]
- Asynchrones ExecuteSlot fuer das RELOAD
+/* [Description]
+
+ Asynchronous ExecuteSlot for the RELOAD
*/
//--------------------------------------------------------------------
@@ -896,24 +882,23 @@ const SfxPoolItem* SfxShell::ExecuteSlot( SfxRequest& rReq, BOOL bAsync )
const SfxPoolItem* SfxShell::ExecuteSlot
(
- SfxRequest &rReq, // der weiterzuleitende <SfxRequest>
- const SfxInterface* pIF // default = 0 bedeutet virtuell besorgen
+ SfxRequest &rReq, // the relayed <SfxRequest>
+ const SfxInterface* pIF // default = 0 means get virtually
)
-/* [Beschreibung]
+/* [Description]
- Diese Methode erm"oglicht das Weiterleiten eines <SfxRequest> an
- die angegebene Basis-<SfxShell>.
+ This method allows you to forward a <SfxRequest> to the specified
+ base <SfxShell>.
+ [Example]
- [Beispiel]
+ In a derived class of SfxViewShell the SID_PRINTDOCDIRECT will be
+ intercepted. Under certain circumstances a query should appear before
+ you print, and the request will be aborted if necessary.
- In einer von SfxViewShell abgeleiteten Klasse soll SID_PRINTDOCDIRECT
- abgefangen werden. Unter bestimmten Umst"anden soll vor dem Drucken
- eine Abfrage erscheinen, und der Request soll ggf. abgebrochen werden.
-
- Dazu ist in der IDL dieser Subklasse der o.g. Slot einzutragen. Die
- Execute-Methode enth"alt dann skizziert:
+ Also in the IDL of this subclass of the above slot is entered. The status
+ method will contain in outline:
void SubViewShell::Exec( SfxRequest &rReq )
{
@@ -925,11 +910,10 @@ const SfxPoolItem* SfxShell::ExecuteSlot
}
}
- Es braucht i.d.R. kein rReq.Done() gerufen zu werden, da das bereits
- die Implementierung der SfxViewShell erledigt bzw. abgebrochen wurde.
-
+ It usually takes no rReq.Done() to be called as that is already completed
+ in implementation of the SfxViewShell, for instance it has been canceled.
- [Querverweise]
+ [Cross-reference]
<SfxShell::GetSlotState(USHORT,const SfxInterface*,SfxItemSet*)>
*/
@@ -964,34 +948,33 @@ const SfxPoolItem* SfxShell::ExecuteSlot
const SfxPoolItem* SfxShell::GetSlotState
(
- USHORT nSlotId, // Slot-Id des zu befragenden Slots
- const SfxInterface* pIF, // default = 0 bedeutet virtuell besorgen
- SfxItemSet* pStateSet // SfxItemSet der Slot-State-Methode
+ USHORT nSlotId, // Slot-Id to the Slots in question
+ const SfxInterface* pIF, // default = 0 means get virtually
+ SfxItemSet* pStateSet // SfxItemSet of the Slot-State method
)
-/* [Beschreibung]
+/* [Description]
- Diese Methode liefert den Status des Slots mit der angegebenen Slot-Id
- "uber das angegebene Interface.
+ This method returns the status of the slot with the specified slot ID
+ on the specified interface.
- Ist der Slot disabled oder in dieser SfxShell (und deren Parent-Shells)
- nicht bekannt, wird ein 0-Pointer zur"uckgeliefert.
+ If the slot is disabled or in this SfxShell (and their parent shells) are
+ not known, a Null-pointer is returned.
- Hat der Slot keinen Status, wird ein SfxVoidItem zur"uckgeliefert.
+ If the slot does not have a Status, a SfxVoidItem is returned.
- Der Status wird bei pStateSet != 0 gleich in diesem Set gesetzt, so
- da\s <SfxShell>-Subklassen Slots-"uberladen und auch bei der
- Status-Methode die Basis-Implementierung rufen k"onnen.
+ The status is set directly in this Set when pStateSet != 0 , so that
+ overloaded Slots of the <SfxShell> Subclasses and also in the Status
+ method of the base implementation can be called.
+ [Example]
- [Beispiel]
+ In a derived class of SfxViewShell the SID_PRINTDOCDIRECT will be
+ intercepted. Under certain circumstances a query should appear before
+ you print, and the request will be aborted if necessary.
- In einer von SfxViewShell abgeleiteten Klasse soll SID_PRINTDOCDIRECT
- abgefangen werden. Unter bestimmten Umst"anden soll vor dem Drucken
- eine Abfrage erscheinen, und der Request soll ggf. abgebrochen werden.
-
- Dazu ist in der IDL dieser Subklasse der o.g. Slot einzutragen. Die
- Status-Methode enth"alt dann skizziert:
+ Also in the IDL of this subclass of the above slot is entered. The status
+ method will contain in outline:
void SubViewShell::PrintState( SfxItemSet &rState )
{
@@ -1001,14 +984,13 @@ const SfxPoolItem* SfxShell::GetSlotState
...
}
-
- [Querverweise]
+ [Cross-reference]
<SfxShell::ExecuteSlot(SfxRequest&)>
*/
{
- // Slot am angegebenen Interface besorgen
+ // Get Slot on the given Interface
if ( !pIF )
pIF = GetInterface();
SfxItemState eState;
@@ -1027,21 +1009,21 @@ const SfxPoolItem* SfxShell::GetSlotState
}
if ( pSlot )
- // ggf. auf Which-Id mappen
+ // Map on Which-Id if possible
nSlotId = pSlot->GetWhich( rPool );
- // Item und Item-Status besorgen
+ // Get Item and Item status
const SfxPoolItem *pItem = NULL;
- SfxItemSet aSet( rPool, nSlotId, nSlotId ); // pItem stirbt sonst zu fr"uh
+ SfxItemSet aSet( rPool, nSlotId, nSlotId ); // else pItem dies too soon
if ( pSlot )
{
- // Status-Methode rufen
+ // Call Status method
SfxStateFunc pFunc = pSlot->GetStateFnc();
if ( pFunc )
CallState( pFunc, aSet );
eState = aSet.GetItemState( nSlotId, TRUE, &pItem );
- // ggf. Default-Item besorgen
+ // get default Item if possible
if ( eState == SFX_ITEM_DEFAULT )
{
if ( SfxItemPool::IsWhich(nSlotId) )
@@ -1053,7 +1035,7 @@ const SfxPoolItem* SfxShell::GetSlotState
else
eState = SFX_ITEM_UNKNOWN;
- // Item und Item-Status auswerten und ggf. in pStateSet mitpflegen
+ // Evaluate Item and item status and possibly maintain them in pStateSet
SfxPoolItem *pRetItem = 0;
if ( eState <= SFX_ITEM_DISABLED )
{
@@ -1087,12 +1069,12 @@ void SfxShell::SetVerbs(const com::sun::star::uno::Sequence < com::sun::star::em
{
SfxViewShell *pViewSh = PTR_CAST ( SfxViewShell, this);
- DBG_ASSERT(pViewSh, "SetVerbs nur an der ViewShell aufrufen!");
+ DBG_ASSERT(pViewSh, "Only call SetVerbs at the ViewShell!");
if ( !pViewSh )
return;
- // Zun"achst alle Statecaches dirty machen, damit keiner mehr versucht,
- // die Slots zu benutzen
+ // First make all Statecaches dirty, so that no-one no longer tries to use
+ // the Slots
{
SfxBindings *pBindings =
pViewSh->GetViewFrame()->GetDispatcher()->GetBindings();
@@ -1108,7 +1090,7 @@ void SfxShell::SetVerbs(const com::sun::star::uno::Sequence < com::sun::star::em
for (sal_Int32 n=0; n<aVerbs.getLength(); n++)
{
USHORT nSlotId = SID_VERB_START + nr++;
- DBG_ASSERT(nSlotId <= SID_VERB_END, "Zuviele Verben!");
+ DBG_ASSERT(nSlotId <= SID_VERB_END, "To many Verbs!");
if (nSlotId > SID_VERB_END)
break;
@@ -1116,8 +1098,8 @@ void SfxShell::SetVerbs(const com::sun::star::uno::Sequence < com::sun::star::em
pNewSlot->nSlotId = nSlotId;
pNewSlot->nGroupId = 0;
- // Verb-Slots m"ussen asynchron ausgef"uhrt werden, da sie w"ahrend
- // des Ausf"uhrens zerst"ort werden k"onnten
+ // Verb slots must be executed asynchronously, so that they can be
+ // destroyed while executing.
pNewSlot->nFlags = SFX_SLOT_ASYNCHRON | SFX_SLOT_CONTAINER;
pNewSlot->nMasterSlotId = 0;
pNewSlot->nValue = 0;
@@ -1146,8 +1128,8 @@ void SfxShell::SetVerbs(const com::sun::star::uno::Sequence < com::sun::star::em
if (pViewSh)
{
- // Der Status von SID_OBJECT wird im Controller direkt an der Shell
- // abgeholt, es reicht also, ein neues StatusUpdate anzuregen
+ // The status of SID_OBJECT is collected in the controller directly on
+ // the Shell, it is thus enough to encourage a new status update
SfxBindings *pBindings = pViewSh->GetViewFrame()->GetDispatcher()->
GetBindings();
pBindings->Invalidate( SID_OBJECT, TRUE, TRUE );
@@ -1203,9 +1185,9 @@ const SfxSlot* SfxShell::GetVerbSlot_Impl(USHORT nId) const
{
com::sun::star::uno::Sequence < com::sun::star::embed::VerbDescriptor > rList = pImp->aVerbList;
- DBG_ASSERT(nId >= SID_VERB_START && nId <= SID_VERB_END,"Falsche VerbId!");
+ DBG_ASSERT(nId >= SID_VERB_START && nId <= SID_VERB_END,"Wrong VerbId!");
USHORT nIndex = nId - SID_VERB_START;
- DBG_ASSERT(nIndex < rList.getLength(),"Falsche VerbId!");
+ DBG_ASSERT(nIndex < rList.getLength(),"Wrong VerbId!");
if (nIndex < rList.getLength())
return pImp->aSlotArr[nIndex];
@@ -1256,13 +1238,13 @@ void SfxShell::UIFeatureChanged()
SfxViewFrame *pFrame = GetFrame();
if ( pFrame && pFrame->IsVisible() )
{
- // Auch dann Update erzwingen, wenn Dispatcher schon geupdated ist,
- // sonst bleibt evtl. irgendwas in den gebunkerten Tools stecken.
- // Asynchron aufrufen, um Rekursionen zu vermeiden
+ // Also force an update, if dispatcher is already updated otherwise
+ // something my get stuck in the bunkered tools. Asynchronous call to
+ // prevent recursion.
if ( !pImp->pUpdater )
pImp->pUpdater = new svtools::AsynchronLink( Link( this, DispatcherUpdate_Impl ) );
- // Mehrfachaufrufe gestattet
+ // Multiple views allowed
pImp->pUpdater->Call( pFrame->GetDispatcher(), TRUE );
}
}
diff --git a/sfx2/source/control/statcach.cxx b/sfx2/source/control/statcach.cxx
index 1e10889..dd3ff29 100644
--- a/sfx2/source/control/statcach.cxx
+++ b/sfx2/source/control/statcach.cxx
@@ -200,10 +200,7 @@ void BindDispatch_Impl::Dispatch( uno::Sequence < beans::PropertyValue > aProps,
}
//--------------------------------------------------------------------
-
-/* Dieser Konstruktor fuer einen ungueltigen Cache, der sich also
- bei der ersten Anfrage zun"achst updated.
- */
+// This constructor for an invalid cache that is updated in the first request.
SfxStateCache::SfxStateCache( sal_uInt16 nFuncId ):
pDispatch( 0 ),
@@ -222,16 +219,13 @@ SfxStateCache::SfxStateCache( sal_uInt16 nFuncId ):
}
//--------------------------------------------------------------------
-
-/* Der Destruktor pr"uft per Assertion, ob noch Controller angemeldet
- sind.
- */
+// The Destructor checks by assertion, even if controllers are registered.
SfxStateCache::~SfxStateCache()
{
DBG_MEMTEST();
DBG_DTOR(SfxStateCache, 0);
- DBG_ASSERT( pController == 0 && pInternalController == 0, "es sind noch Controller angemeldet" );
+ DBG_ASSERT( pController == 0 && pInternalController == 0, "there are still Controllers registered" );
if ( !IsInvalidItem(pLastItem) )
delete pLastItem;
if ( pDispatch )
@@ -259,7 +253,6 @@ void SfxStateCache::Invalidate( sal_Bool bWithMsg )
}
//--------------------------------------------------------------------
-
// gets the corresponding function from the dispatcher or the cache
const SfxSlotServer* SfxStateCache::GetSlotServer( SfxDispatcher &rDispat , const ::com::sun::star::uno::Reference< ::com::sun::star::frame::XDispatchProvider > & xProv )
@@ -356,24 +349,22 @@ const SfxSlotServer* SfxStateCache::GetSlotServer( SfxDispatcher &rDispat , cons
//--------------------------------------------------------------------
-// Status setzen in allen Controllern
+// Set Status in all Controllers
void SfxStateCache::SetState
(
- SfxItemState eState, // <SfxItemState> von 'pState'
- const SfxPoolItem* pState, // Status des Slots, ggf. 0 oder -1
+ SfxItemState eState, // <SfxItemState> from 'pState'
+ const SfxPoolItem* pState, // Slot Status, 0 or -1
BOOL bMaybeDirty
)
-/* [Beschreibung]
+/* [Description]
- Diese Methode verteilt die Status auf alle an dieser SID gebundenen
- <SfxControllerItem>s. Ist der Wert derselbe wie zuvor und wurde in-
- zwischen weder ein Controller angemeldet, noch ein Controller invalidiert,
- dann wird kein Wert weitergeleitet. Dadurch wird z.B. Flackern in
- ListBoxen vermieden.
+ This method distributes the status of all of this SID bound
+ <SfxControllerItem>s. If the value is the same as before, and if neither
+ controller was registered nor invalidated inbetween, then no value is
+ passed. This way the flickering is for example avoided in ListBoxes.
*/
-
{
SetState_Impl( eState, pState, bMaybeDirty );
}
@@ -407,7 +398,7 @@ void SfxStateCache::SetVisibleState( BOOL bShow )
bDeleteItem = sal_True;
}
- // Controller updaten
+ // Update Controller
if ( !pDispatch && pController )
{
for ( SfxControllerItem *pCtrl = pController;
@@ -428,8 +419,8 @@ void SfxStateCache::SetVisibleState( BOOL bShow )
void SfxStateCache::SetState_Impl
(
- SfxItemState eState, // <SfxItemState> von 'pState'
- const SfxPoolItem* pState, // Status des Slots, ggf. 0 oder -1
+ SfxItemState eState, // <SfxItemState> from 'pState'
+ const SfxPoolItem* pState, // Slot Status, 0 or -1
BOOL bMaybeDirty
)
{
@@ -437,8 +428,8 @@ void SfxStateCache::SetState_Impl
DBG_MEMTEST();
DBG_CHKTHIS(SfxStateCache, 0);
- // wenn zwischen Enter- und LeaveRegistrations ein hartes Update kommt
- // k"onnen zwischenzeitlich auch Cached ohne Controller exisitieren
+ // If a hard update occurs between enter- and leave-registrations is a
+ // can also intermediate Cached exist without controller.
if ( !pController && !pInternalController )
return;
@@ -448,7 +439,7 @@ void SfxStateCache::SetState_Impl
DBG_ASSERT( SfxControllerItem::GetItemState(pState) == eState, "invalid SfxItemState" );
DBG_PROFSTART(SfxStateCacheSetState);
- // m"ussen die Controller "uberhaupt benachrichtigt werden?
+ // does the controller have to be notified at all?
bool bNotify = bItemDirty;
if ( !bItemDirty )
{
@@ -464,7 +455,7 @@ void SfxStateCache::SetState_Impl
if ( bNotify )
{
- // Controller updaten
+ // Update Controller
if ( !pDispatch && pController )
{
for ( SfxControllerItem *pCtrl = pController;
@@ -476,7 +467,7 @@ void SfxStateCache::SetState_Impl
if ( pInternalController )
((SfxDispatchController_Impl *)pInternalController)->StateChanged( nId, eState, pState, &aSlotServ );
- // neuen Wert merken
+ // Remember new value
if ( !IsInvalidItem(pLastItem) )
DELETEZ(pLastItem);
if ( pState && !IsInvalidItem(pState) )
@@ -493,22 +484,21 @@ void SfxStateCache::SetState_Impl
//--------------------------------------------------------------------
-
-// alten Status in allen Controllern nochmal setzen
+// Set old status again in all the controllers
void SfxStateCache::SetCachedState( BOOL bAlways )
{
DBG_MEMTEST();
DBG_CHKTHIS(SfxStateCache, 0);
- DBG_ASSERT(pController==NULL||pController->GetId()==nId, "Cache mit falschem ControllerItem" );
+ DBG_ASSERT(pController==NULL||pController->GetId()==nId, "Cache with wrong ControllerItem" );
DBG_PROFSTART(SfxStateCacheSetState);
- // nur updaten wenn cached item vorhanden und auch verarbeitbar
- // (Wenn der State gesendet wird, mu\s sichergestellt sein, da\s ein
- // Slotserver vorhanden ist, s. SfxControllerItem::GetCoreMetric() )
+ // Only update if cached item exists and also able to process.
+ // (If the State is sent, it must be ensured that a SlotServer is present,
+ // see SfxControllerItem:: GetCoreMetric())
if ( bAlways || ( !bItemDirty && !bSlotDirty ) )
{
- // Controller updaten
+ // Update Controller
if ( !pDispatch && pController )
{
for ( SfxControllerItem *pCtrl = pController;
@@ -520,7 +510,7 @@ void SfxStateCache::SetCachedState( BOOL bAlways )
if ( pInternalController )
((SfxDispatchController_Impl *)pInternalController)->StateChanged( nId, eLastState, pLastItem, &aSlotServ );
- // Controller sind jetzt ok
+ // Controller is now ok
bCtrlDirty = sal_True;
}
@@ -529,8 +519,7 @@ void SfxStateCache::SetCachedState( BOOL bAlways )
//--------------------------------------------------------------------
-
-// FloatingWindows in allen Controls mit dieser Id zerstoeren
+// Destroy FloatingWindows in all Controls with this Id
void SfxStateCache::DeleteFloatingWindows()
{
diff --git a/sfx2/source/control/unoctitm.cxx b/sfx2/source/control/unoctitm.cxx
index 78b09c0..b19d123 100644
--- a/sfx2/source/control/unoctitm.cxx
+++ b/sfx2/source/control/unoctitm.cxx
@@ -105,7 +105,7 @@ SfxUnoControllerItem::SfxUnoControllerItem( SfxControllerItem *pItem, SfxBinding
: pCtrlItem( pItem )
, pBindings( &rBind )
{
- DBG_ASSERT( !pCtrlItem || !pCtrlItem->IsBound(), "ControllerItem fehlerhaft!" );
+ DBG_ASSERT( !pCtrlItem || !pCtrlItem->IsBound(), "ControllerItem is incorrect!" );
aCommand.Complete = rCmd;
Reference < XURLTransformer > xTrans( ::comphelper::getProcessServiceFactory()->createInstance( rtl::OUString(RTL_CONSTASCII_USTRINGPARAM("com.sun.star.util.URLTransformer"))), UNO_QUERY );
@@ -131,18 +131,17 @@ void SfxUnoControllerItem::UnBind()
void SAL_CALL SfxUnoControllerItem::statusChanged(const ::com::sun::star::frame::FeatureStateEvent& rEvent) throw ( ::com::sun::star::uno::RuntimeException )
{
SolarMutexGuard aGuard;
- DBG_ASSERT( pCtrlItem, "Dispatch hat den StatusListener nicht entfern!" );
+ DBG_ASSERT( pCtrlItem, "Dispatch has not removed the StatusListener!" );
if ( rEvent.Requery )
{
- // Fehler kann nur passieren, wenn das alte Dispatch fehlerhaft implementiert
- // ist, also removeStatusListener nicht gefunzt hat. Aber sowas soll
- // ja vorkommen ...
- // Also besser vor ReleaseDispatch gegen Abflug sch"utzen!
+ // Error can only happen if the old Dispatch is implemented incorrectly
+ // i.e. removeStatusListener did not work. But such things can happen...
+ // So protect before ReleaseDispatch from release!
::com::sun::star::uno::Reference< ::com::sun::star::frame::XStatusListener > aRef( (::cppu::OWeakObject*)this, ::com::sun::star::uno::UNO_QUERY );
ReleaseDispatch();
if ( pCtrlItem )
- GetNewDispatch(); // asynchron ??
+ GetNewDispatch(); // asynchronous ??
}
else if ( pCtrlItem )
{
More information about the Libreoffice-commits
mailing list