#include "GuiDocumentEditor.h"
namespace
{
namespace
{
using
namespace
collections
;
namespace
document_operation_visitors
{
class
:
public
,
public
::
{
public
:
<
*>&
;
&
;
;
bool
;
(
<
*>&
,
&
,
,
bool
)
:locatedRuns(
)
, runRanges(
)
, position(
)
, frontSide(
)
{
}
void
(
*
)
{
.
(
);
<
>
;
FOREACH(Ptr<DocumentRun>, subRun, run->runs)
if
(
bool
=
true
)
for
(
const
::
vl
::
collections
::
<
<
>>&
= ::
vl
::
collections
::
(
->
);
__scope_variable_flag__
;
__scope_variable_flag__
=
false
)
for
(
<
>
;
__foreach_iterator__
.
(
subRun
);)
{
=
subRun
.
()];
if
(
==
range
.
)
{
if
(!
)
{
selectedRun
subRun
;
break
;
}
}
else
if
(
==
range
.
)
{
if
(
)
{
selectedRun
subRun
;
break
;
}
}
else
if
(
range
.
<
&&
<
range
.
)
{
selectedRun
subRun
;
break
;
}
}
if
(
selectedRun
)
{
selectedRun
(
this
);
}
}
void
(
*
)
override
{
}
void
(
DocumentStylePropertiesRun
*
)
override
{
(
);
}
void
(
DocumentStyleApplicationRun
*
)
override
{
(
);
}
void
(
*
)
override
{
(
);
}
void
(
*
)
override
{
}
void
(
DocumentEmbeddedObjectRun
*
)
override
{
}
void
(
*
)
override
{
(
);
}
};
}
using
namespace
document_operation_visitors
;
namespace
{
void
(
*
,
&
,
,
bool
,
<
*>&
)
{
(
,
,
,
);
->
(&
visitor
);
}
}
}
}