Skip to content
Projeler
Gruplar
Parçacıklar
Yardım
Yükleniyor...
Oturum aç / Kaydol
Gezinmeyi değiştir
C
core
Proje
Proje
Ayrıntılar
Etkinlik
Cycle Analytics
Depo (repository)
Depo (repository)
Dosyalar
Kayıtlar (commit)
Dallar (branch)
Etiketler
Katkıda bulunanlar
Grafik
Karşılaştır
Grafikler
Konular (issue)
0
Konular (issue)
0
Liste
Pano
Etiketler
Kilometre Taşları
Birleştirme (merge) Talepleri
0
Birleştirme (merge) Talepleri
0
CI / CD
CI / CD
İş akışları (pipeline)
İşler
Zamanlamalar
Grafikler
Paketler
Paketler
Wiki
Wiki
Parçacıklar
Parçacıklar
Üyeler
Üyeler
Collapse sidebar
Close sidebar
Etkinlik
Grafik
Grafikler
Yeni bir konu (issue) oluştur
İşler
Kayıtlar (commit)
Konu (issue) Panoları
Kenar çubuğunu aç
LibreOffice
core
Commits
c75c8d7d
Kaydet (Commit)
c75c8d7d
authored
Eyl 10, 2011
tarafından
Lionel Elie Mamane
Dosyalara gözat
Seçenekler
Dosyalara Gözat
İndir
Eposta Yamaları
Sade Fark
Translate some German comments
üst
4b30e0ca
Show whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
40 additions
and
35 deletions
+40
-35
fmshimp.cxx
svx/source/form/fmshimp.cxx
+40
-35
No files found.
svx/source/form/fmshimp.cxx
Dosyayı görüntüle @
c75c8d7d
...
@@ -2407,20 +2407,23 @@ IMPL_LINK(FmXFormShell, OnSearchContextRequest, FmSearchContext*, pfmscContextIn
...
@@ -2407,20 +2407,23 @@ IMPL_LINK(FmXFormShell, OnSearchContextRequest, FmSearchContext*, pfmscContextIn
DBG_ASSERT
(
xIter
.
is
(),
"FmXFormShell::OnSearchContextRequest : unexpected : context has no iterator !"
);
DBG_ASSERT
(
xIter
.
is
(),
"FmXFormShell::OnSearchContextRequest : unexpected : context has no iterator !"
);
// --------------------------------------------------------------------------------------------
// --------------------------------------------------------------------------------------------
//
die Liste der zu involvierenden Felder zusammenstellen (sind die ControlSources aller Felder, die eine solche Eigenschaft habe
)
//
assemble the list of fields to involve (that is, the ControlSources of all fields that have such a property
)
UniString
strFieldList
,
sFieldDisplayNames
;
UniString
strFieldList
,
sFieldDisplayNames
;
m_arrSearchedControls
.
Remove
(
0
,
m_arrSearchedControls
.
Count
());
m_arrSearchedControls
.
Remove
(
0
,
m_arrSearchedControls
.
Count
());
m_arrRelativeGridColumn
.
clear
();
m_arrRelativeGridColumn
.
clear
();
// folgendes kleines Problem : Ich brauche, um gefundene Felder zu markieren, SdrObjekte. Um hier festzustellen, welche Controls
// small problem: To mark found fields, I need SdrObjects. To determine which controls
// ich in die Suche einbeziehen soll, brauche ich Controls (also XControl-Interfaces). Ich muss also ueber eines von beiden
// to include in the search, I need Controls (that is, XControl interfaces). So I have
// iterieren und mir das jeweils andere besorgen. Dummerweise gibt es keine direkte Verbindung zwischen beiden Welten (abgesehen
// to iterate over one of them and get the other in some way. Unfortunately, there is
// von einem GetUnoControl an SdrUnoObject, das aber ein OutputDevice verlangt, womit ich nichts anfangen kann).
// no direct connexion between the two worlds (except from a GetUnoControl to a
// Allerdings komme ich sowohl von einem Control als auch von einem SdrObject zum Model, und damit ist mir mit einer doppelten
// SdrUnoObject, but this requires an OutputDevice I can not do anything with.
// Schleife die Zuordnung SdrObject<->Control moeglich.
// However I can get to the Model from the Control and also from the SdrObject, and in
// Die Alternative zu dieser (unschoenen und sicher auch nicht ganz fixen) Loesung waere, auf das Cachen der SdrObjects zu
// this way the assignment SdrObject<->Control is possible with a double loop.
// verzichten, was dann aber in OnFoundData zu wesentlicher Mehrarbeit fuehren wuerde (da ich mir dort jedesmal das SdrObject
// The alternative to this (ugly but certainly not entirely fixable) solution would be
// erst besorgen muesste). Da aber OnFoundData i.d.R. oefter aufgerufen wird als ExecuteSearch, erledige ich das hier.
// to renounce the caching of the SdrObjects, which would lead to significant extra
// work in OnFoundData (since there I'd have to get the SdrObject first thing every
// time). But since OnFoundData is usually called more often than ExecuteSeearch, I'll
// do that here.
Reference
<
XNameAccess
>
xValidFormFields
;
Reference
<
XNameAccess
>
xValidFormFields
;
Reference
<
XColumnsSupplier
>
xSupplyCols
(
xIter
,
UNO_QUERY
);
Reference
<
XColumnsSupplier
>
xSupplyCols
(
xIter
,
UNO_QUERY
);
...
@@ -2429,10 +2432,10 @@ IMPL_LINK(FmXFormShell, OnSearchContextRequest, FmSearchContext*, pfmscContextIn
...
@@ -2429,10 +2432,10 @@ IMPL_LINK(FmXFormShell, OnSearchContextRequest, FmSearchContext*, pfmscContextIn
xValidFormFields
=
xSupplyCols
->
getColumns
();
xValidFormFields
=
xSupplyCols
->
getColumns
();
DBG_ASSERT
(
xValidFormFields
.
is
(),
"FmXFormShell::OnSearchContextRequest : form has no fields !"
);
DBG_ASSERT
(
xValidFormFields
.
is
(),
"FmXFormShell::OnSearchContextRequest : form has no fields !"
);
//
aktuelle(r)
Page/Controller
//
current
Page/Controller
FmFormPage
*
pCurrentPage
=
m_pShell
->
GetCurPage
();
FmFormPage
*
pCurrentPage
=
m_pShell
->
GetCurPage
();
DBG_ASSERT
(
pCurrentPage
!=
NULL
,
"FmXFormShell::OnSearchContextRequest : no page !"
);
DBG_ASSERT
(
pCurrentPage
!=
NULL
,
"FmXFormShell::OnSearchContextRequest : no page !"
);
//
alle Sdr-Controls dieser Seite durchsuchen
...
//
Search all SdrControls of this page
...
::
rtl
::
OUString
sControlSource
,
aName
;
::
rtl
::
OUString
sControlSource
,
aName
;
SdrObjListIter
aPageIter
(
*
pCurrentPage
);
SdrObjListIter
aPageIter
(
*
pCurrentPage
);
...
@@ -2456,20 +2459,21 @@ IMPL_LINK(FmXFormShell, OnSearchContextRequest, FmSearchContext*, pfmscContextIn
...
@@ -2456,20 +2459,21 @@ IMPL_LINK(FmXFormShell, OnSearchContextRequest, FmSearchContext*, pfmscContextIn
if
(
xCurrentFormComponent
->
getParent
()
!=
xForm
)
if
(
xCurrentFormComponent
->
getParent
()
!=
xForm
)
continue
;
continue
;
// ...
nach der ControlSource-Eigenschaft fragen
// ...
ask for the ControlSource property
SearchableControlIterator
iter
(
xCurrentFormComponent
);
SearchableControlIterator
iter
(
xCurrentFormComponent
);
Reference
<
XControl
>
xControl
;
Reference
<
XControl
>
xControl
;
// das Control, das als Model xControlModel hat
// the control that has model xControlModel
// (das folgende while kann mehrmals durchlaufen werden, ohne dass das Control sich aendert, dann muss
// (the following while can be passed through several times, without the Control
// ich nicht jedesmal neu suchen
)
// being modified, so I don't have to search every time from scratch
)
Reference
<
XInterface
>
xSearchable
(
iter
.
Next
()
);
Reference
<
XInterface
>
xSearchable
(
iter
.
Next
()
);
while
(
xSearchable
.
is
()
)
while
(
xSearchable
.
is
()
)
{
{
sControlSource
=
iter
.
getCurrentValue
();
sControlSource
=
iter
.
getCurrentValue
();
if
(
sControlSource
.
getLength
()
==
0
)
if
(
sControlSource
.
getLength
()
==
0
)
{
// das aktuelle Element hat keine ControlSource, also ist es ein GridControl (das ist das einzige, was
{
// der SearchableControlIterator noch zulaesst)
// the current element has no ControlSource, so it is a GridControl (that
// is the only thing that still permits the SearchableControlIteratore)
xControl
=
impl_getControl
(
xControlModel
,
*
pFormObject
);
xControl
=
impl_getControl
(
xControlModel
,
*
pFormObject
);
DBG_ASSERT
(
xControl
.
is
(),
"FmXFormShell::OnSearchContextRequest : didn't ::std::find a control with requested model !"
);
DBG_ASSERT
(
xControl
.
is
(),
"FmXFormShell::OnSearchContextRequest : didn't ::std::find a control with requested model !"
);
...
@@ -2497,7 +2501,7 @@ IMPL_LINK(FmXFormShell, OnSearchContextRequest, FmSearchContext*, pfmscContextIn
...
@@ -2497,7 +2501,7 @@ IMPL_LINK(FmXFormShell, OnSearchContextRequest, FmSearchContext*, pfmscContextIn
if
(
!
xCurrentColumn
.
is
())
if
(
!
xCurrentColumn
.
is
())
continue
;
continue
;
// can we use this column control fo searching ?
// can we use this column control fo
r
searching ?
if
(
!
IsSearchableControl
(
xCurrentColumn
))
if
(
!
IsSearchableControl
(
xCurrentColumn
))
continue
;
continue
;
...
@@ -2516,9 +2520,9 @@ IMPL_LINK(FmXFormShell, OnSearchContextRequest, FmSearchContext*, pfmscContextIn
...
@@ -2516,9 +2520,9 @@ IMPL_LINK(FmXFormShell, OnSearchContextRequest, FmSearchContext*, pfmscContextIn
pfmscContextInfo
->
arrFields
.
push_back
(
xCurrentColumn
);
pfmscContextInfo
->
arrFields
.
push_back
(
xCurrentColumn
);
//
und das SdrObjekt zum F
eld
//
and the SdrOject to the Fi
eld
m_arrSearchedControls
.
C40_INSERT
(
SdrObject
,
pCurrent
,
m_arrSearchedControls
.
Count
());
m_arrSearchedControls
.
C40_INSERT
(
SdrObject
,
pCurrent
,
m_arrSearchedControls
.
Count
());
//
die Nummer der Spalte
//
the number of the column
m_arrRelativeGridColumn
.
push_back
(
nViewPos
);
m_arrRelativeGridColumn
.
push_back
(
nViewPos
);
}
}
}
}
...
@@ -2528,7 +2532,7 @@ IMPL_LINK(FmXFormShell, OnSearchContextRequest, FmSearchContext*, pfmscContextIn
...
@@ -2528,7 +2532,7 @@ IMPL_LINK(FmXFormShell, OnSearchContextRequest, FmSearchContext*, pfmscContextIn
{
{
if
(
sControlSource
.
getLength
()
&&
xValidFormFields
->
hasByName
(
sControlSource
))
if
(
sControlSource
.
getLength
()
&&
xValidFormFields
->
hasByName
(
sControlSource
))
{
{
//
jetzt brauche ich das Control zum
SdrObject
//
now I need the Control to
SdrObject
if
(
!
xControl
.
is
())
if
(
!
xControl
.
is
())
{
{
xControl
=
impl_getControl
(
xControlModel
,
*
pFormObject
);
xControl
=
impl_getControl
(
xControlModel
,
*
pFormObject
);
...
@@ -2536,7 +2540,8 @@ IMPL_LINK(FmXFormShell, OnSearchContextRequest, FmSearchContext*, pfmscContextIn
...
@@ -2536,7 +2540,8 @@ IMPL_LINK(FmXFormShell, OnSearchContextRequest, FmSearchContext*, pfmscContextIn
}
}
if
(
IsSearchableControl
(
xControl
))
if
(
IsSearchableControl
(
xControl
))
{
// alle Tests ueberstanden -> in die Liste mit aufnehmen
{
// all tests passed -> take along in the list
strFieldList
+=
sControlSource
.
getStr
();
strFieldList
+=
sControlSource
.
getStr
();
strFieldList
+=
';'
;
strFieldList
+=
';'
;
...
@@ -2544,13 +2549,13 @@ IMPL_LINK(FmXFormShell, OnSearchContextRequest, FmSearchContext*, pfmscContextIn
...
@@ -2544,13 +2549,13 @@ IMPL_LINK(FmXFormShell, OnSearchContextRequest, FmSearchContext*, pfmscContextIn
sFieldDisplayNames
+=
getLabelName
(
Reference
<
XPropertySet
>
(
xControlModel
,
UNO_QUERY
)).
getStr
();
sFieldDisplayNames
+=
getLabelName
(
Reference
<
XPropertySet
>
(
xControlModel
,
UNO_QUERY
)).
getStr
();
sFieldDisplayNames
+=
';'
;
sFieldDisplayNames
+=
';'
;
//
das SdrObjekt merken (beschleunigt die Behandlung
in OnFoundData)
//
mark the SdrObject (accelerates the treatment
in OnFoundData)
m_arrSearchedControls
.
C40_INSERT
(
SdrObject
,
pCurrent
,
m_arrSearchedControls
.
Count
());
m_arrSearchedControls
.
C40_INSERT
(
SdrObject
,
pCurrent
,
m_arrSearchedControls
.
Count
());
//
die Nummer der Spalte (hier ein Dummy, nur fuer GridControls interesant
)
//
the number of the colum (here a dummy, since it is only interesting for GridControls
)
m_arrRelativeGridColumn
.
push_back
(
-
1
);
m_arrRelativeGridColumn
.
push_back
(
-
1
);
//
und fuer die formatierte Suche
...
//
and for the formatted search
...
pfmscContextInfo
->
arrFields
.
push_back
(
Reference
<
XInterface
>
(
xControl
,
UNO_QUERY
));
pfmscContextInfo
->
arrFields
.
push_back
(
Reference
<
XInterface
>
(
xControl
,
UNO_QUERY
));
}
}
}
}
...
@@ -2576,7 +2581,7 @@ IMPL_LINK(FmXFormShell, OnSearchContextRequest, FmSearchContext*, pfmscContextIn
...
@@ -2576,7 +2581,7 @@ IMPL_LINK(FmXFormShell, OnSearchContextRequest, FmSearchContext*, pfmscContextIn
pfmscContextInfo
->
sFieldDisplayNames
=
sFieldDisplayNames
;
pfmscContextInfo
->
sFieldDisplayNames
=
sFieldDisplayNames
;
// 66463 - 31.05.99 - FS
// 66463 - 31.05.99 - FS
// w
enn der Cursor sich in einem anderen RecordMode als STANDARD befindet, ruecksetzen
// w
hen the cursor is a non-STANDARD RecordMode, set it back
Reference
<
XPropertySet
>
xCursorSet
(
pfmscContextInfo
->
xCursor
,
UNO_QUERY
);
Reference
<
XPropertySet
>
xCursorSet
(
pfmscContextInfo
->
xCursor
,
UNO_QUERY
);
Reference
<
XResultSetUpdate
>
xUpdateCursor
(
pfmscContextInfo
->
xCursor
,
UNO_QUERY
);
Reference
<
XResultSetUpdate
>
xUpdateCursor
(
pfmscContextInfo
->
xCursor
,
UNO_QUERY
);
if
(
xUpdateCursor
.
is
()
&&
xCursorSet
.
is
()
&&
xCursorSet
.
is
())
if
(
xUpdateCursor
.
is
()
&&
xCursorSet
.
is
()
&&
xCursorSet
.
is
())
...
@@ -2597,7 +2602,7 @@ void FmXFormShell::elementInserted(const ContainerEvent& evt) throw(::com::sun::
...
@@ -2597,7 +2602,7 @@ void FmXFormShell::elementInserted(const ContainerEvent& evt) throw(::com::sun::
if
(
impl_checkDisposed
()
)
if
(
impl_checkDisposed
()
)
return
;
return
;
// ne
ues Object zum lauschen
// ne
w object to listen to
Reference
<
XInterface
>
xTemp
;
Reference
<
XInterface
>
xTemp
;
evt
.
Element
>>=
xTemp
;
evt
.
Element
>>=
xTemp
;
AddElement
(
xTemp
);
AddElement
(
xTemp
);
...
@@ -2700,7 +2705,7 @@ void FmXFormShell::impl_RemoveElement_nothrow(const Reference< XInterface>& Elem
...
@@ -2700,7 +2705,7 @@ void FmXFormShell::impl_RemoveElement_nothrow(const Reference< XInterface>& Elem
if
(
xSelSupplier
.
is
())
if
(
xSelSupplier
.
is
())
xSelSupplier
->
removeSelectionChangeListener
(
this
);
xSelSupplier
->
removeSelectionChangeListener
(
this
);
//
Verbindung zu Kindern aufheben
//
remove connection to childs
const
Reference
<
XIndexContainer
>
xContainer
(
Element
,
UNO_QUERY
);
const
Reference
<
XIndexContainer
>
xContainer
(
Element
,
UNO_QUERY
);
if
(
xContainer
.
is
())
if
(
xContainer
.
is
())
{
{
...
@@ -2730,7 +2735,7 @@ void FmXFormShell::selectionChanged(const EventObject& rEvent) throw(::com::sun:
...
@@ -2730,7 +2735,7 @@ void FmXFormShell::selectionChanged(const EventObject& rEvent) throw(::com::sun:
Reference
<
XSelectionSupplier
>
xSupplier
(
rEvent
.
Source
,
UNO_QUERY
);
Reference
<
XSelectionSupplier
>
xSupplier
(
rEvent
.
Source
,
UNO_QUERY
);
Reference
<
XInterface
>
xSelObj
(
xSupplier
->
getSelection
(),
UNO_QUERY
);
Reference
<
XInterface
>
xSelObj
(
xSupplier
->
getSelection
(),
UNO_QUERY
);
//
es wurde eine Selektion weggenommen, dieses kann nur durch die Shell vorgenommen werden
//
a selection was removed, this can only be done by the shell
if
(
!
xSelObj
.
is
()
)
if
(
!
xSelObj
.
is
()
)
return
;
return
;
...
@@ -2852,7 +2857,7 @@ void FmXFormShell::SetDesignMode(sal_Bool bDesign)
...
@@ -2852,7 +2857,7 @@ void FmXFormShell::SetDesignMode(sal_Bool bDesign)
if
(
m_bFilterMode
)
if
(
m_bFilterMode
)
stopFiltering
(
sal_False
);
stopFiltering
(
sal_False
);
//
an den Objekten meiner MarkList als Listener abmelden
//
unsubscribe from the objects of my MarkList
pFormView
->
GetImpl
()
->
stopMarkListWatching
();
pFormView
->
GetImpl
()
->
stopMarkListWatching
();
}
}
else
else
...
@@ -2868,7 +2873,7 @@ void FmXFormShell::SetDesignMode(sal_Bool bDesign)
...
@@ -2868,7 +2873,7 @@ void FmXFormShell::SetDesignMode(sal_Bool bDesign)
pFormView
->
ChangeDesignMode
(
bDesign
);
pFormView
->
ChangeDesignMode
(
bDesign
);
//
Listener benachrichtigen
//
notify listensers
FmDesignModeChangedHint
aChangedHint
(
bDesign
);
FmDesignModeChangedHint
aChangedHint
(
bDesign
);
m_pShell
->
Broadcast
(
aChangedHint
);
m_pShell
->
Broadcast
(
aChangedHint
);
...
@@ -2893,8 +2898,8 @@ void FmXFormShell::SetDesignMode(sal_Bool bDesign)
...
@@ -2893,8 +2898,8 @@ void FmXFormShell::SetDesignMode(sal_Bool bDesign)
}
}
else
else
{
{
//
am Model der View als Listener anmelden (damit ich mitbekomme, wenn jemand waehrend des Alive-Modu
s
//
subscribe to the model of the view (so that I'm informed when someone delete
s
//
Controls loescht, die ich eigentlich mit saveMarkList gespeichert habe)
(60343)
//
during the alive mode controls that I had saved in the saveMarklist
(60343)
pFormView
->
GetImpl
()
->
startMarkListWatching
();
pFormView
->
GetImpl
()
->
startMarkListWatching
();
}
}
...
@@ -2925,7 +2930,7 @@ Reference< XControl> FmXFormShell::impl_getControl( const Reference< XControlMod
...
@@ -2925,7 +2930,7 @@ Reference< XControl> FmXFormShell::impl_getControl( const Reference< XControlMod
Sequence
<
Reference
<
XControl
>
>
seqControls
(
xControlContainer
->
getControls
()
);
Sequence
<
Reference
<
XControl
>
>
seqControls
(
xControlContainer
->
getControls
()
);
const
Reference
<
XControl
>*
pControls
=
seqControls
.
getArray
();
const
Reference
<
XControl
>*
pControls
=
seqControls
.
getArray
();
// ...
die ich dann durchsuchen kann
// ...
that I can then search
for
(
sal_Int32
i
=
0
;
i
<
seqControls
.
getLength
();
++
i
)
for
(
sal_Int32
i
=
0
;
i
<
seqControls
.
getLength
();
++
i
)
{
{
xControl
.
set
(
pControls
[
i
],
UNO_SET_THROW
);
xControl
.
set
(
pControls
[
i
],
UNO_SET_THROW
);
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment