Message 1 of 1
Edit multiline attribute by AcEdInplaceTextEditor dont hide previous text
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report
I use AcEdInplaceTextEditor for editting multiline attribute (beacuse Autocad default attribute eddition is very complicated). If I edit by AcEdInplaceTextEditor one line attribute or text or something else, the previous text is during eddition hiden.
But with multiline eddition is visible - see picture.
I tried to set it unvisible, redraw it with parameter 2, redraw autocad window - nothing works.
(this code is placed inside windows hook function)
ads_name adsEnt;
AcDbObjectId idAtt = pAtt->id();
acdbGetAdsName(adsEnt, idAtt);
pAtt->setVisibility(AcDb::kInvisible, false); //try to set in invisible
pAtt->close();
pEnt->close();
acedRedraw(NULL, 1); //try it to redraw
acedRedraw(adsEnt, 2); //try to unredraw
::RedrawWindow(adsw_acadMainWnd(), NULL, NULL, RDW_ERASE | RDW_INVALIDATE) //redraw autocad window
AcEdInplaceTextEditorSettings pSettings;
pSettings.setEditFlags(AcEdInplaceTextEditorSettings::kSelectAll);
pSettings.setSourceEntityType(AcEdInplaceTextEditorSettings::kMultiAttribute);
AcEdInplaceTextEditor::invoke(pMText, &pSettings);
acdbOpenObject(pAtt, idAtt, AcDb::kForWrite);
pAtt->setMTextAttribute(pMText);
pAtt->setVisibility(AcDb::kVisible, false);
pSubEntity->close(); //= pAtt
return (AcedFilterWinMsgFn) TRUE;