LibreOffice Module vcl (master)
1
Toggle main menu visibility
Main Page
Related Pages
Modules
Namespaces
Namespace List
Namespace Members
All
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
r
s
t
u
v
w
x
y
Functions
a
b
c
d
e
f
g
h
i
j
l
m
n
o
p
r
s
t
u
v
w
x
Variables
a
c
d
e
f
g
h
i
m
n
o
p
t
v
Typedefs
Enumerations
a
b
c
d
e
f
g
i
l
m
n
o
p
r
s
t
u
v
w
x
Enumerator
a
b
c
d
e
f
g
h
i
k
l
m
n
o
p
r
s
t
u
v
w
y
Classes
Class List
Class Index
Class Hierarchy
Class Members
All
:
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
~
Functions
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
~
Variables
_
a
b
c
d
e
f
g
h
i
k
l
m
n
o
p
r
s
t
u
v
w
x
y
z
Typedefs
a
b
c
d
f
g
h
i
j
m
p
r
s
t
u
v
w
Enumerations
a
b
c
d
e
f
g
h
i
j
m
o
p
r
s
t
v
w
x
Enumerator
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
Related Functions
:
a
b
c
d
e
f
g
i
j
m
n
o
p
q
r
s
t
v
w
x
Files
File List
File Members
All
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Functions
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
Variables
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
Typedefs
a
b
c
d
f
g
i
l
m
p
q
r
s
t
u
v
w
x
y
Enumerations
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
v
w
x
z
Enumerator
a
d
g
h
i
j
l
o
q
r
s
v
Macros
a
b
c
d
e
f
g
h
i
j
l
m
n
o
p
r
s
t
u
v
w
x
y
z
vcl
source
text
text/mnemonic.cxx
Go to the documentation of this file.
1
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4; fill-column: 100 -*- */
2
/*
3
* This file is part of the LibreOffice project.
4
*
5
* This Source Code Form is subject to the terms of the Mozilla Public
6
* License, v. 2.0. If a copy of the MPL was not distributed with this
7
* file, You can obtain one at http://mozilla.org/MPL/2.0/.
8
*/
9
10
#include <
vcl/mnemonic.hxx
>
11
12
OUString
removeMnemonicFromString
(OUString
const
& rStr)
13
{
14
sal_Int32 nDummy;
15
return
removeMnemonicFromString
(rStr, nDummy);
16
}
17
18
OUString
removeMnemonicFromString
(OUString
const
& rStr, sal_Int32& rMnemonicPos)
19
{
20
OUString
aStr
= rStr;
21
sal_Int32 nLen =
aStr
.getLength();
22
sal_Int32
i
= 0;
23
24
rMnemonicPos = -1;
25
while
(
i
< nLen)
26
{
27
if
(
aStr
[
i
] ==
'~'
)
28
{
29
if
(nLen <=
i
+ 1)
30
break
;
31
32
if
(
aStr
[
i
+ 1] !=
'~'
)
33
{
34
if
(rMnemonicPos == -1)
35
rMnemonicPos =
i
;
36
aStr
=
aStr
.replaceAt(
i
, 1,
u
""
);
37
nLen--;
38
}
39
else
40
{
41
aStr
=
aStr
.replaceAt(
i
, 1,
u
""
);
42
nLen--;
43
i
++;
44
}
45
}
46
else
47
i
++;
48
}
49
50
return
aStr
;
51
}
52
53
/* vim:set shiftwidth=4 softtabstop=4 expandtab cinoptions=b1,g0,N-s cinkeys+=0=break: */
u
float u
aStr
aStr
mnemonic.hxx
i
int i
removeMnemonicFromString
OUString removeMnemonicFromString(OUString const &rStr)
Definition:
text/mnemonic.cxx:12
Generated on Sun Jul 30 2023 04:35:50 for LibreOffice Module vcl (master) by
1.9.3