54 #include "wx/imaglist.h"
58 #include <wx/bitmap.h>
60 #include <wx/choice.h>
61 #include <wx/textctrl.h>
62 #include <wx/stattext.h>
63 #include <wx/valtext.h>
122 bool create_mode, wxWindowID
id,
const wxPoint& pos,
const wxSize&
size,
long style )
123 : m_SerialNumber(0), m_CreateMode(create_mode), m_CurrentStatus(0), m_CurrentType(ePubTypeJournalArticle), m_Pmid(0), m_Muid(0), m_PublisherPanel(0)
141 SetExtraStyle(wxWS_EX_BLOCK_EVENTS);
142 wxPanel::Create( parent,
id, pos,
size, style );
147 GetSizer()->SetSizeHints(
this);
196 wxBoxSizer* itemBoxSizer2 =
new wxBoxSizer(wxHORIZONTAL);
197 itemPanel1->SetSizer(itemBoxSizer2);
199 wxBoxSizer* itemBoxSizer3 =
new wxBoxSizer(wxVERTICAL);
200 itemBoxSizer2->Add(itemBoxSizer3, 0, wxALIGN_TOP|wxALL, 5);
202 wxArrayString m_StatusStrings;
203 m_StatusStrings.Add(
_(
"&Unpublished"));
204 m_StatusStrings.Add(
_(
"&In Press"));
205 m_StatusStrings.Add(
_(
"&Published"));
206 m_Status =
new wxRadioBox( itemPanel1,
ID_UNPUB_INPRESS_PUB,
_(
"Status"), wxDefaultPosition, wxDefaultSize, m_StatusStrings, 1, wxRA_SPECIFY_COLS );
208 itemBoxSizer3->Add(
m_Status, 0, wxGROW|wxALL, 5);
210 wxArrayString m_PubClassStrings;
211 m_PubClassStrings.Add(
_(
"&Journal"));
212 m_PubClassStrings.Add(
_(
"Book &Chapter"));
213 m_PubClassStrings.Add(
_(
"&Book"));
214 m_PubClassStrings.Add(
_(
"&Thesis/Monograph"));
215 m_PubClassStrings.Add(
_(
"&Proceedings Chapter"));
216 m_PubClassStrings.Add(
_(
"&Proceedings"));
217 m_PubClassStrings.Add(
_(
"&Patent"));
218 m_PubClassStrings.Add(
_(
"&Submission"));
219 m_PubClass =
new wxRadioBox( itemPanel1,
ID_PUBCLASS,
_(
"Class"), wxDefaultPosition, wxDefaultSize, m_PubClassStrings, 1, wxRA_SPECIFY_COLS );
221 itemBoxSizer3->Add(
m_PubClass, 0, wxGROW|wxALL, 5);
223 wxBoxSizer* itemBoxSizer6 =
new wxBoxSizer(wxVERTICAL);
224 itemBoxSizer2->Add(itemBoxSizer6, 1, wxGROW|wxALL, 0);
230 itemBoxSizer6->Add(500, 0, 0, wxALIGN_CENTER_HORIZONTAL|wxALL, 0);
237 wxBoxSizer* itemBoxSizer7 =
new wxBoxSizer(wxHORIZONTAL);
238 itemBoxSizer6->Add(itemBoxSizer7, 0, wxALIGN_CENTER_HORIZONTAL|wxALL, 0);
240 m_PmidCtrl =
new wxTextCtrl( itemPanel1,
ID_DOI_PMID, wxEmptyString, wxDefaultPosition, wxSize(200, -1), 0 );
241 itemBoxSizer7->Add(
m_PmidCtrl, 0, wxALIGN_CENTER_VERTICAL|wxALL, 5);
244 itemBoxSizer7->Add(
m_LookupButton, 0, wxALIGN_CENTER_VERTICAL|wxALL, 5);
249 if (
gen.IsSetSerial_number()) {
251 && !
gen.IsSetAuthors()
253 && !
gen.IsSetJournal()
254 && !
gen.IsSetVolume()
259 && !
gen.IsSetPmid()) {
272 switch ((*pub_it)->Which()) {
281 if ((*pub_it)->GetGen().IsSetSerial_number()) {
318 if ((*it)->IsArticle()) {
319 if ((*it)->GetArticle().IsSetIds()) {
321 if ((*id)->IsDoi()) {
322 m_PmidCtrl->SetValue(wxString((*id)->GetDoi()));
347 return wxPanel::TransferDataToWindow();
372 switch (pub->
Which()) {
381 switch (art.GetFrom().Which())
383 case objects::CCit_art::C_From::e_Journal:
387 case objects::CCit_art::C_From::e_Book:
391 case objects::CCit_art::C_From::e_Proc:
392 x_SetStatus (art.SetFrom().SetProc().SetBook().SetImp());
513 CPub_equiv::Tdata::iterator pub_it =
m_Pubdesc->SetPub().Set().begin();
514 while (pub_it !=
m_Pubdesc->SetPub().Set().end() && !found) {
517 if ((*pub_it)->IsSub()) {
520 }
else if (status == 0) {
522 if ((*pub_it)->IsGen()) {
543 if ((*pub_it)->IsBook()) {
548 if ((*pub_it)->IsMan()) {
553 if ((*pub_it)->IsProc()) {
558 if ((*pub_it)->IsPatent()) {
571 if (pub_it !=
m_Pubdesc->SetPub().Set().begin()) {
573 tmp->Assign(**pub_it);
593 if ((*pub_it)->IsSub()) {
599 if ((*pub_it)->IsGen()) {
621 if ((*pub_it)->IsBook()) {
626 if ((*pub_it)->IsMan()) {
631 if ((*pub_it)->IsProc()) {
636 if ((*pub_it)->IsPatent()) {
656 new_pub->SetGen().SetCit(
"unpublished");
660 new_pub->SetArticle().SetFrom().SetJournal();
663 new_pub->SetArticle().SetFrom().SetBook();
672 new_pub->SetArticle().SetFrom().SetProc();
678 new_pub->SetPatent();
681 new_pub->SetGen().SetCit(
"unpublished");
703 switch (pub->
Which()) {
760 if (!art.IsSetTitle() || art.GetTitle().Get().empty()) {
762 blank_title->SetName(
"?");
763 art.SetTitle().Set().push_back(blank_title);
769 if ((*id)->IsPubmed() &&
m_Pmid <= 0)
793 CCit_book& book = art.SetFrom().SetBook();
795 if (!art.IsSetTitle() || art.GetTitle().Get().empty()) {
797 blank_title->SetName(
"?");
798 art.SetTitle().Set().push_back(blank_title);
806 blank_title->SetName(
"?");
807 book.
SetTitle().Set().push_back(blank_title);
825 if (!art.IsSetTitle() || art.GetTitle().Get().empty()) {
827 blank_title->SetName(
"?");
828 art.SetTitle().Set().push_back(blank_title);
837 blank_title->SetName(
"?");
838 book.
SetTitle().Set().push_back(blank_title);
889 if (!book.IsSetTitle() || book.GetTitle().Get().empty()) {
891 blank_title->SetName(
"?");
892 book.SetTitle().Set().push_back(blank_title);
997 if (!wxPanel::TransferDataFromWindow())
1011 CPub_equiv::Tdata::iterator pub_it =
m_Pubdesc->SetPub().Set().begin();
1012 while (pub_it !=
m_Pubdesc->SetPub().Set().end()) {
1015 if (!(*pub_it)->IsSub()) {
1016 pub_it =
m_Pubdesc->SetPub().Set().erase(pub_it);
1022 (*pub_it)->SetSub().ResetDescr();
1024 (*pub_it)->SetSub().SetDescr(title);
1030 if (!(*pub_it)->IsGen()) {
1031 pub_it =
m_Pubdesc->SetPub().Set().erase(pub_it);
1037 (*pub_it)->SetGen().ResetTitle();
1039 (*pub_it)->SetGen().SetTitle(title);
1047 pub_it =
m_Pubdesc->SetPub().Set().erase(pub_it);
1049 if ((*pub_it)->SetArticle().IsSetIds())
1053 if ((*id)->IsPubmed())
1065 if ((*pub_it)->GetArticle().GetIds().Get().empty())
1066 (*pub_it)->SetArticle().ResetIds();
1073 pub_it =
m_Pubdesc->SetPub().Set().erase(pub_it);
1080 pub_it =
m_Pubdesc->SetPub().Set().erase(pub_it);
1086 if (!(*pub_it)->IsBook()) {
1087 pub_it =
m_Pubdesc->SetPub().Set().erase(pub_it);
1093 if (!(*pub_it)->IsMan()) {
1094 pub_it =
m_Pubdesc->SetPub().Set().erase(pub_it);
1100 if (!(*pub_it)->IsProc()) {
1101 pub_it =
m_Pubdesc->SetPub().Set().erase(pub_it);
1107 if (!(*pub_it)->IsPatent()) {
1108 pub_it =
m_Pubdesc->SetPub().Set().erase(pub_it);
1124 m_Pubdesc->SetPub().Set().push_back(new_pub);
1129 m_Pubdesc->SetPub().Set().push_back(new_pub);
1134 m_Pubdesc->SetPub().Set().push_back(new_pub);
1175 return wxNullBitmap;
1200 switch (pub->
Which()) {
1252 }
else if (pub->
IsGen()) {
1258 }
else if (pub->
IsSub()) {
1265 switch (pub->
Which()) {
1282 pub->
SetMan().
SetCit().SetTitle().Set().push_back(otitle);
1284 otitle = pub->
SetMan().
SetCit().SetTitle().Set().front();
1298 otitle->SetName(title);
1308 switch (pub->
Which()) {
1341 switch (pub->
Which()) {
1345 case objects::CCit_art::C_From::e_Journal:
1348 case objects::CCit_art::C_From::e_Book:
1351 case objects::CCit_art::C_From::e_Proc:
1379 catch (
const exception& e) {
1392 if (!imprint->IsSetDate() || !imprint->GetDate().IsStd()) {
1393 imprint->SetDate().SetStr(
"?");
1395 switch (pub->
Which()) {
1399 case objects::CCit_art::C_From::e_Journal:
1402 case objects::CCit_art::C_From::e_Book:
1405 case objects::CCit_art::C_From::e_Proc:
1439 }
else if (pub->
IsProc()) {
1451 if (!src_pub || !dest_pub) {
1506 int author_pos = 0, affil_pos = 0;
1512 if (author_pos == 0) {
1514 authors->
Assign(pub->GetAuthors());
1521 CAuth_list& authors = pub->SetArticle().SetFrom().SetProc().SetBook().SetAuthors();
1525 CAuth_list& authors = pub->SetArticle().SetFrom().SetBook().SetAuthors();
1527 }
else if (pub->IsPatent()) {
1528 if (author_pos == 1) {
1530 CAuth_list& authors = pub->SetPatent().SetApplicants();
1534 CAuth_list& authors = pub->SetPatent().SetAssignees();
1545 if (affil_pos == 0) {
1547 authors->
Assign(pub->GetAuthors());
1558 CAuth_list& authors = pub->SetArticle().SetFrom().SetProc().SetBook().SetAuthors();
1566 CAuth_list& authors = pub->SetArticle().SetFrom().SetBook().SetAuthors();
1572 }
else if (pub->IsPatent()) {
1573 if (affil_pos == 1) {
1575 CAuth_list& authors = pub->SetPatent().SetApplicants();
1583 CAuth_list& authors = pub->SetPatent().SetAssignees();
1620 pub->SetArticle().SetFrom().SetJournal(*
journal);
1630 pub->SetPatent(*patent);
1674 pub->SetGen().ResetTitle();
1676 pub->SetSub().ResetDescr();
1681 pub->SetGen().SetTitle(title);
1683 pub->SetSub().SetDescr(title);
1700 int new_status =
m_Status->GetSelection();
1716 if (prev_pub == dest_pub) {
1735 int new_pub_type =
m_PubClass->GetSelection();
1844 string doi =
m_PmidCtrl->GetValue().ToStdString();
1860 wxMessageBox(
wxT(
"PMC ID not found"),
wxT(
"Error"), wxOK | wxICON_ERROR,
NULL);
1869 wxMessageBox(
wxT(
"No article found"),
wxT(
"Error"), wxOK | wxICON_ERROR,
NULL);
1873 pubdesc = pubdesc_str.first;
1875 wxMessageBox(
wxT(
"Problem resolving DOI \n") + wxString(pubdesc_str.second),
wxT(
"Error"), wxOK | wxICON_ERROR,
NULL);
1878 wxMessageBox(
wxT(
"Failed to look up journal title abbreviation possibly due to service failure"),
wxT(
"Warning"), wxOK | wxICON_WARNING,
NULL);
User-defined methods of the data storage class.
User-defined methods of the data storage class.
User-defined methods of the data storage class.
User-defined methods of the data storage class.
Utility macros and typedefs for exploring NCBI objects from biblio.asn.
#define FOR_EACH_ARTICLEID_ON_CITART(Itr, Var)
#define EDIT_EACH_ARTICLEID_ON_CITART(Itr, Var)
#define ERASE_ARTICLEID_ON_CITART(Itr, Var)
@Auth_list.hpp User-defined methods of the data storage class.
virtual bool TransferDataFromWindow()
CRef< objects::CAffil > GetAffil()
void PopulateAuthors(objects::CAuth_list &auth_list)
virtual bool TransferDataFromWindow()
CRef< objects::CCit_sub > GetCit_sub() const
virtual bool TransferDataFromWindow()
static pair< CRef< objects::CPubdesc >, string > GetPubFromCrossRef(const string &doi)
virtual bool IsImportEnabled(void)
virtual CRef< CSerialObject > OnExport(void)
virtual bool IsExportEnabled(void)
virtual void OnImport(CNcbiIfstream &istr)
bool TransferDataFromWindow()
CRef< objects::CCit_jour > GetCit_jour() const
void SetFinalValidation(bool val)
CRef< objects::CMeeting > GetMeeting() const
virtual bool TransferDataFromWindow()
bool DoPMCIDSearch(const vector< string > &query_ids, TResults &results)
virtual bool TransferDataFromWindow()
CRef< objects::CCit_pat > GetCit_pat(void) const
const CAuth_list & GetAuthors(void) const
bool IsSetAuthors(void) const
@Pubdesc.hpp User-defined methods of the data storage class.
void Init()
Initialises member variables.
void x_CreatePubControls(CRef< objects::CPub > pub)
CCitSubPanel * m_CitSubPanel
~CPublicationTypePanel()
Destructor.
virtual void ChangeSeqdesc(const objects::CSeqdesc &desc)
void OnDoiLookup(wxCommandEvent &event)
bool x_CollectDetails(void)
static bool ShowToolTips()
Should we show tooltips?
bool Create(wxWindow *parent, wxWindowID id=10018, const wxPoint &pos=wxDefaultPosition, const wxSize &size=wxSize(400, 400), long style=wxCAPTION|wxRESIZE_BORDER|wxSYSTEM_MENU|wxCLOSE_BOX|wxTAB_TRAVERSAL)
Creation.
virtual void OnImport(CNcbiIfstream &istr)
void x_CreateProcChapterControls(objects::CCit_art &art)
wxIcon GetIconResource(const wxString &name)
Retrieves icon resources.
CJournalPanel * m_JournalPanel
void OnPubclassSelected(wxCommandEvent &event)
wxEVT_COMMAND_RADIOBOX_SELECTED event handler for ID_PUBCLASS
void x_CreateSubControls(objects::CCit_sub &sub)
CRef< objects::CPubdesc > m_Pubdesc
void SetFinalValidation(void)
void SetPub(const objects::CPubdesc &pubdesc)
void x_SetStatusAndClass(CRef< objects::CPub > pub)
void x_SetStatus(const objects::CImprint &imprint)
virtual bool IsImportEnabled(void)
CUnpublishedPanel * m_Unpublished
CPublicationTypePanel()
Constructors.
virtual bool IsExportEnabled(void)
void x_CreateThesisControls(objects::CCit_let &let)
void x_CreateProcControls(objects::CCit_proc &proc)
void OnUnpubInpressPubSelected(wxCommandEvent &event)
wxEVT_COMMAND_RADIOBOX_SELECTED event handler for ID_UNPUB_INPRESS_PUB
wxNotebook * m_PubdescDetails
void x_CreatePatentControls(objects::CCit_pat &pat)
void x_CreateBookChapterControls(objects::CCit_art &art)
CPatentPanel * m_PatentPanel
CPublisherPanel * m_PublisherPanel
virtual void UpdateSeqdesc(objects::CSeqdesc &desc)
void x_CreateUnpubControls(objects::CCit_gen &cit_gen)
virtual bool TransferDataToWindow()
wxButton * m_LookupButton
CRef< CPub > x_PutMainPubFirst(int pubtype, int status)
bool x_CollectAuthors(void)
virtual bool TransferDataFromWindow()
wxBitmap GetBitmapResource(const wxString &name)
Retrieves bitmap resources.
virtual CRef< CSerialObject > OnExport(void)
void x_CreateBookControls(objects::CCit_book &book, bool is_chapter)
CRef< objects::CPubdesc > GetPubdesc() const
CRef< objects::CPub > x_GetMainPub(void)
void x_CreateJournalArticleControls(objects::CCit_art &art)
void CreateControls()
Creates the controls and sizers.
void PopulatePublisherFields(objects::CImprint &imprint)
virtual bool TransferDataFromWindow()
Base class for all serializable objects.
const string & GetTitle(C_E::E_Choice type=C_E::e_not_set) const
If the internal list contains a title (of the specified type, if given), returns the corresponding st...
SStrictId_Entrez::TId TEntrezId
TEntrezId type for entrez ids which require the same strictness as TGi.
#define ENTREZ_ID_TO(T, entrez_id)
#define ITERATE(Type, Var, Cont)
ITERATE macro to sequence through container elements.
#define NON_CONST_ITERATE(Type, Var, Cont)
Non constant version of ITERATE macro.
#define ENTREZ_ID_FROM(T, value)
#define LOG_POST(message)
This macro is deprecated and it's strongly recomended to move in all projects (except tests) to macro...
void Error(CExceptionArgs_Base &args)
const string & GetMsg(void) const
Get message string.
virtual const char * what(void) const noexcept
Standard report (includes full backlog).
virtual void Assign(const CSerialObject &source, ESerialRecursionMode how=eRecursive)
Set object to copy of another one.
#define MSerial_AsnText
I/O stream manipulators –.
void Reset(void)
Reset reference object.
#define END_NCBI_SCOPE
End previously defined NCBI scope.
#define BEGIN_NCBI_SCOPE
Define ncbi namespace.
IO_PREFIX::ifstream CNcbiIfstream
Portable alias for ifstream.
static Int8 StringToInt8(const CTempString str, TStringToNumFlags flags=0, int base=10)
Convert string to Int8.
static bool IsBlank(const CTempString str, SIZE_TYPE pos=0)
Check if a string is blank (has no text).
static void TruncateSpacesInPlace(string &str, ETrunc where=eTrunc_Both)
Truncate spaces in a string (in-place)
static bool StartsWith(const CTempString str, const CTempString start, ECase use_case=eCase)
Check if a string starts with a specified prefix value.
static bool EqualNocase(const CTempString s1, SIZE_TYPE pos, SIZE_TYPE n, const char *s2)
Case-insensitive equality of a substring with another string.
@ fConvErr_NoThrow
Do not throw an exception on error.
bool IsProc(void) const
Check if variant Proc is selected.
const TDescr & GetDescr(void) const
Get the Descr member data.
const TTitle & GetTitle(void) const
Get the Title member data.
void SetBook(TBook &value)
Assign a value to Book data member.
bool IsSetDescr(void) const
description of changes for public view Check if a value has been assigned to Descr data member.
const TCit & GetCit(void) const
Get the Cit member data.
const TBook & GetBook(void) const
Get the Book member data.
void SetTitle(TTitle &value)
Assign a value to Title data member.
const TJournal & GetJournal(void) const
Get the variant data.
void SetAuthors(TAuthors &value)
Assign a value to Authors data member.
bool IsSetTitle(void) const
title of journal Check if a value has been assigned to Title data member.
bool IsSetPrepub(void) const
Check if a value has been assigned to Prepub data member.
const TFrom & GetFrom(void) const
Get the From member data.
bool IsSetTitle(void) const
Title of book Check if a value has been assigned to Title data member.
void SetTitle(TTitle &value)
Assign a value to Title data member.
bool IsSetTitle(void) const
title of paper (ANSI requires) Check if a value has been assigned to Title data member.
const TTitle & GetTitle(void) const
Get the Title member data.
void SetFrom(TFrom &value)
Assign a value to From data member.
void SetAffil(TAffil &value)
Assign a value to Affil data member.
bool IsSetFrom(void) const
Check if a value has been assigned to From data member.
void SetAuthors(TAuthors &value)
Assign a value to Authors data member.
void SetSerial_number(TSerial_number value)
Assign a value to Serial_number data member.
TPrepub GetPrepub(void) const
Get the Prepub member data.
bool IsSetPubstatus(void) const
current status of this publication Check if a value has been assigned to Pubstatus data member.
void SetAuthors(TAuthors &value)
Assign a value to Authors data member.
void ResetPrepub(void)
Reset Prepub data member.
const TProc & GetProc(void) const
Get the variant data.
E_Choice Which(void) const
Which variant is currently selected.
list< CRef< CArticleId > > Tdata
const TTitle & GetTitle(void) const
Get the Title member data.
void SetImp(TImp &value)
Assign a value to Imp data member.
void SetCit(TCit &value)
Assign a value to Cit data member.
void SetDescr(const TDescr &value)
Assign a value to Descr data member.
bool IsSetTitle(void) const
eg.
void SetAuthors(TAuthors &value)
Assign a value to Authors data member.
void SetType(TType value)
Assign a value to Type data member.
void SetTitle(const TTitle &value)
Assign a value to Title data member.
bool IsSetTitle(void) const
Check if a value has been assigned to Title data member.
bool IsBook(void) const
Check if variant Book is selected.
void ResetMeet(void)
Reset Meet data member.
const TImp & GetImp(void) const
Get the Imp member data.
void SetTitle(const TTitle &value)
Assign a value to Title data member.
bool IsSetBook(void) const
citation to meeting Check if a value has been assigned to Book data member.
bool IsJournal(void) const
Check if variant Journal is selected.
bool IsSetCit(void) const
same fields as a book Check if a value has been assigned to Cit data member.
void ResetAffil(void)
Reset Affil data member.
void SetPrepub(TPrepub value)
Assign a value to Prepub data member.
void SetMeet(TMeet &value)
Assign a value to Meet data member.
const TTitle & GetTitle(void) const
Get the Title member data.
const TImp & GetImp(void) const
Get the Imp member data.
const TTitle & GetTitle(void) const
Get the Title member data.
bool IsSetType(void) const
Check if a value has been assigned to Type data member.
const Tdata & Get(void) const
Get the member data.
void SetAuthors(TAuthors &value)
Assign a value to Authors data member.
TPubstatus GetPubstatus(void) const
Get the Pubstatus member data.
const TBook & GetBook(void) const
Get the variant data.
@ ePubStatus_aheadofprint
epublish, but will be followed by print
@ ePrepub_in_press
accepted, not published
TProc & SetProc(void)
Select the variant.
TPmid & SetPmid(void)
Select the variant.
bool IsBook(void) const
Check if variant Book is selected.
list< CRef< CPub > > Tdata
const TMan & GetMan(void) const
Get the variant data.
TMuid & SetMuid(void)
Select the variant.
TBook & SetBook(void)
Select the variant.
const TArticle & GetArticle(void) const
Get the variant data.
const TJournal & GetJournal(void) const
Get the variant data.
const TSub & GetSub(void) const
Get the variant data.
const TPatent & GetPatent(void) const
Get the variant data.
const TProc & GetProc(void) const
Get the variant data.
E_Choice Which(void) const
Which variant is currently selected.
TMan & SetMan(void)
Select the variant.
bool IsProc(void) const
Check if variant Proc is selected.
TSub & SetSub(void)
Select the variant.
bool IsSub(void) const
Check if variant Sub is selected.
TGen & SetGen(void)
Select the variant.
const TGen & GetGen(void) const
Get the variant data.
TPatent & SetPatent(void)
Select the variant.
bool IsPatent(void) const
Check if variant Patent is selected.
bool IsArticle(void) const
Check if variant Article is selected.
TArticle & SetArticle(void)
Select the variant.
bool IsGen(void) const
Check if variant Gen is selected.
const TBook & GetBook(void) const
Get the variant data.
bool IsMan(void) const
Check if variant Man is selected.
@ e_Gen
general or generic unparsed
@ e_Proc
proceedings of a meeting
@ e_Man
manuscript, thesis, or letter
double value_type
The numeric datatype used by the parser.
const struct ncbi::grid::netcache::search::fields::SIZE size
User-defined methods of the data storage class.
API (CPMCIDSearch) for looking up PubMed IDs based on other types of IDs.
static string s_GetPubTitle(CRef< CPub > pub)
static bool s_IsProcChapter(CRef< CPub > pub)
static void s_SetPubLocale(CRef< CPub > pub, CRef< CMeeting > locale)
static bool s_IsBookChapter(CRef< CPub > pub)
static CRef< objects::CImprint > s_GetPubImprint(CRef< CPub > pub)
static void s_TransferPubData(CRef< CPub > src_pub, CRef< CPub > dest_pub)
void s_ApplyStatusToPub(int status, CRef< CPub > pub)
static bool s_IsJournalArticle(CRef< CPub > pub)
static void s_SetPubImprint(CRef< CPub > pub, CRef< objects::CImprint >)
static void s_SetPubTitle(CRef< CPub > pub, string title)
static bool s_IsOnlySetSerialNumber(const CCit_gen &gen)
static void s_SetPubAuthors(CRef< CPub > pub, const CAuth_list &auth_list)
#define ID_UNPUB_INPRESS_PUB
CRef< CPub > journal(ParserPtr pp, char *bptr, char *eptr, CRef< CAuth_list > &auth_list, CRef< CTitle::C_E > &title, bool has_muid, CRef< CCit_art > &cit_art, Int4 er)