高级会员
注册日期: 06-11
帖子: 14579
精华: 1
现金: 224494 标准币
资产: 234494 标准币
|
【转帖】setplotcfgname Plot Device Name Cant Be Set Any More
setplotcfgname: plot device name can't be set any more
setplotcfgname: plot device name can't be set any more
hi,
the following code snipped works with dwgdirect 1.14.02.00, but not with dwgdirect 2.1.00.00:
...
odstring splotname("plot settings");
oddbplotsettingsptr pnewplot;
oddbplotsettingsvalidator* pplotvalidator = m_pdb->appservices()->plotsettingsvalidator();
pnewplot = oddbplotsettings::createobject();
pnewplot->setplotsettingsname(splotname.c_str());
// set example.pc3
pplotvalidator->setplotcfgname(pnewplot, "example.pc3");
// verify that example.pc3 was set
odstring splotcfgname = pnewplot->getplotcfgname();
...
with dwgdirect 1.14.02.00, splotcfgname is set to "example.pc3" as expected,
with dwgdirect 2.1.00.00, splotcfgname is set to "none".
is this a bug?
look at mfcapp pagesetup dialog for your system device list. you cannot set example.pc3, it must be in device list.
how can a pc3 file be added to the device list?
quote:
originally posted by alexander rumyantsev
look at mfcapp pagesetup dialog for your system device list. you cannot set example.pc3, it must be in device list.
thank you for answering so far.
how can a pc3 file be added to the device list? i only found plotdevicelist which receives the device list. is there also a function which sets the list or adds an item?
pc3 files are not supported as printer devices yet. but you can add next code to the end of
odplotsettingsvalidatorpeimpl::getdevicelist(odarr ay<odstring> &pdevicelist)
pdevicelist.push_back(odstring("example.pc3"));
it add example.pc3 to device list. secont point is inside
odplotsettingsvalidatorpeimpl::getmedialist(const odstring &devicename, odarray<psvpaperinfo> &pmedialist)
{
if (devicename == "example.pc3")
{
psvpaperinfo pi;
// fill to something pi
pmedialist.push_back(pi);
return;
}
....
}
thank you for the hint.
by using plotsettingsvalidatormodule, the "example.pc3" can be added to the device list.
nevertheless, setplotconfigname fails, the return value is != eok.
are there any other modules nessary? with odamfcapp, the new device name can be set and saved, but i can't see why setplotconfigname fails in 'my' application.
hi
please, make small test. if getdevicelist return only none&dwf devices - you should load validator module. if it returns system printers also, but without your .pc3 - try to call refreshlists. also paper list for example.pc3 must not be empty.
last edited by sslezkin; 1st november 2006 at 09:50 amfff">.
|