Lines 189-200
Link Here
|
189 |
WW8_CP GetStartCp() const { return nStartCp; } |
189 |
WW8_CP GetStartCp() const { return nStartCp; } |
190 |
WW8_FC GetStartFc() const { return nStartFc; } |
190 |
WW8_FC GetStartFc() const { return nStartFc; } |
191 |
}; |
191 |
}; |
192 |
|
192 |
typedef std::map<String,WW8_CP> BKMKNames; |
193 |
typedef std::map<String,long> BKMKNames; |
|
|
194 |
typedef BKMKNames::iterator BKMKNmItr; |
193 |
typedef BKMKNames::iterator BKMKNmItr; |
195 |
typedef std::pair<bool,String> BKMK; |
194 |
typedef std::pair<bool,String> BKMK; |
196 |
typedef std::pair<long,BKMK> BKMKCP; |
195 |
typedef std::pair<WW8_CP,BKMK> BKMKCP; |
197 |
typedef std::multimap<long,BKMKCP*> BKMKCPs; |
196 |
typedef std::multimap<WW8_CP,BKMKCP*> BKMKCPs; |
198 |
typedef BKMKCPs::iterator CPItr; |
197 |
typedef BKMKCPs::iterator CPItr; |
199 |
|
198 |
|
200 |
class WW8_WrtBookmarks |
199 |
class WW8_WrtBookmarks |
Lines 210-216
Link Here
|
210 |
~WW8_WrtBookmarks(); |
209 |
~WW8_WrtBookmarks(); |
211 |
void Append( WW8_CP nStartCp, const String& rNm, const ::sw::mark::IMark* pBkmk=NULL ); |
210 |
void Append( WW8_CP nStartCp, const String& rNm, const ::sw::mark::IMark* pBkmk=NULL ); |
212 |
void Write( WW8Export& rWrt ); |
211 |
void Write( WW8Export& rWrt ); |
213 |
void MoveFieldMarks(sal_uLong nFrom,sal_uLong nTo); |
212 |
void MoveFieldMarks(WW8_CP nFrom,WW8_CP nTo); |
214 |
}; |
213 |
}; |
215 |
|
214 |
|
216 |
WW8_WrtBookmarks::WW8_WrtBookmarks() |
215 |
WW8_WrtBookmarks::WW8_WrtBookmarks() |
Lines 231-243
Link Here
|
231 |
|
230 |
|
232 |
void WW8_WrtBookmarks::Append( WW8_CP nStartCp, const String& rNm, const ::sw::mark::IMark*) |
231 |
void WW8_WrtBookmarks::Append( WW8_CP nStartCp, const String& rNm, const ::sw::mark::IMark*) |
233 |
{ |
232 |
{ |
234 |
std::pair<BKMKNmItr,bool> aResult = maSwBkmkNms.insert(std::pair<String,long>(rNm,0L)); |
233 |
std::pair<BKMKNmItr,bool> aResult = maSwBkmkNms.insert(std::pair<String,WW8_CP>(rNm,0L)); |
235 |
if (aResult.second) |
234 |
if (aResult.second) |
236 |
{ |
235 |
{ |
237 |
BKMK aBK(false,rNm); |
236 |
BKMK aBK(false,rNm); |
238 |
BKMKCP* pBKCP = new BKMKCP((long)nStartCp,aBK); |
237 |
BKMKCP* pBKCP = new BKMKCP(nStartCp,aBK); |
239 |
aSttCps.insert(std::pair<long,BKMKCP*>(nStartCp,pBKCP)); |
238 |
aSttCps.insert(std::pair<WW8_CP,BKMKCP*>(nStartCp,pBKCP)); |
240 |
aResult.first->second = (long)nStartCp; |
239 |
aResult.first->second = nStartCp; |
241 |
} |
240 |
} |
242 |
else |
241 |
else |
243 |
{ |
242 |
{ |
Lines 248-254
Link Here
|
248 |
{ |
247 |
{ |
249 |
if (aItr->second->second.first) |
248 |
if (aItr->second->second.first) |
250 |
nStartCp--; |
249 |
nStartCp--; |
251 |
aItr->second->first = (long)nStartCp; |
250 |
aItr->second->first = nStartCp; |
252 |
break; |
251 |
break; |
253 |
} |
252 |
} |
254 |
} |
253 |
} |
Lines 268-274
Link Here
|
268 |
{ |
267 |
{ |
269 |
if (aItr->second) |
268 |
if (aItr->second) |
270 |
{ |
269 |
{ |
271 |
aEndCps.insert(std::pair<long,BKMKCP*>(aItr->second->first,aItr->second)); |
270 |
aEndCps.insert(std::pair<WW8_CP,BKMKCP*>(aItr->second->first,aItr->second)); |
272 |
aNames.push_back(aItr->second->second.second); |
271 |
aNames.push_back(aItr->second->second.second); |
273 |
SwWW8Writer::WriteLong( aTempStrm1, aItr->first); |
272 |
SwWW8Writer::WriteLong( aTempStrm1, aItr->first); |
274 |
} |
273 |
} |
Lines 304-310
Link Here
|
304 |
rWrt.pFib->lcbPlcfbkl = rStrm.Tell() - rWrt.pFib->fcPlcfbkl; |
303 |
rWrt.pFib->lcbPlcfbkl = rStrm.Tell() - rWrt.pFib->fcPlcfbkl; |
305 |
} |
304 |
} |
306 |
|
305 |
|
307 |
void WW8_WrtBookmarks::MoveFieldMarks(sal_uLong nFrom,sal_uLong nTo) |
306 |
void WW8_WrtBookmarks::MoveFieldMarks(WW8_CP nFrom,WW8_CP nTo) |
308 |
{ |
307 |
{ |
309 |
std::pair<CPItr,CPItr> aRange = aSttCps.equal_range(nFrom); |
308 |
std::pair<CPItr,CPItr> aRange = aSttCps.equal_range(nFrom); |
310 |
CPItr aItr = aRange.first; |
309 |
CPItr aItr = aRange.first; |
Lines 317-323
Link Here
|
317 |
aItr->second->second.first = true; |
316 |
aItr->second->second.first = true; |
318 |
aItr->second->first = nTo; |
317 |
aItr->second->first = nTo; |
319 |
} |
318 |
} |
320 |
aSttCps.insert(std::pair<long,BKMKCP*>(nTo,aItr->second)); |
319 |
aSttCps.insert(std::pair<WW8_CP,BKMKCP*>(nTo,aItr->second)); |
321 |
aItr->second = NULL; |
320 |
aItr->second = NULL; |
322 |
aRange = aSttCps.equal_range(nFrom); |
321 |
aRange = aSttCps.equal_range(nFrom); |
323 |
aItr = aRange.first; |
322 |
aItr = aRange.first; |
Lines 1413-1419
Link Here
|
1413 |
} |
1412 |
} |
1414 |
} |
1413 |
} |
1415 |
|
1414 |
|
1416 |
void WW8Export::MoveFieldMarks(sal_uLong nFrom, sal_uLong nTo) |
1415 |
void WW8Export::MoveFieldMarks(WW8_CP nFrom, WW8_CP nTo) |
1417 |
{ |
1416 |
{ |
1418 |
pBkmks->MoveFieldMarks(nFrom, nTo); |
1417 |
pBkmks->MoveFieldMarks(nFrom, nTo); |
1419 |
} |
1418 |
} |