: m_CmdProcessor(cmdproc), m_Seh(seh)
106SetExtraStyle(wxWS_EX_VALIDATE_RECURSIVELY);
107wxPanel::Create( parent,
id, pos,
size, style );
112GetSizer()->SetSizeHints(
this);
161wxBoxSizer* itemBoxSizer2 =
newwxBoxSizer(wxVERTICAL);
162itemPanel1->SetSizer(itemBoxSizer2);
164wxBoxSizer* itemBoxSizer4 =
newwxBoxSizer(wxHORIZONTAL);
165itemBoxSizer2->Add(itemBoxSizer4, 0, wxALIGN_CENTER_HORIZONTAL|wxALL, 0);
169itemBoxSizer4->Add(
m_Unpublished, 0, wxALIGN_CENTER_VERTICAL|wxALL, 5);
171 m_InPress=
newwxRadioButton( itemPanel1,
ID_INPRESSBTN,
_(
"In-press"), wxDefaultPosition, wxDefaultSize, 0 );
173itemBoxSizer4->Add(
m_InPress, 0, wxALIGN_CENTER_VERTICAL|wxALL, 5);
177itemBoxSizer4->Add(
m_Published, 0, wxALIGN_CENTER_VERTICAL|wxALL, 5);
180itemBoxSizer2->Add(
m_Notebook, 0, wxALIGN_CENTER_HORIZONTAL | wxALL, 5);
191wxBoxSizer* itemBoxSizer1 =
newwxBoxSizer(wxHORIZONTAL);
192itemBoxSizer2->Add(itemBoxSizer1, 0, wxALIGN_CENTER_HORIZONTAL|wxLEFT, 5);
194wxStaticText* itemStaticText2 =
newwxStaticText( itemPanel1, wxID_STATIC,
_(
"Reference authors:"), wxDefaultPosition, wxDefaultSize, 0 );
195itemBoxSizer1->Add(itemStaticText2, 0, wxALIGN_CENTER_VERTICAL|wxALL, 5);
199itemBoxSizer1->Add(
m_SameAuthors, 0, wxALIGN_CENTER_VERTICAL|wxALL, 5);
203itemBoxSizer1->Add(
m_NewAuthors, 0, wxALIGN_CENTER_VERTICAL|wxALL, 5);
208itemBoxSizer2->Add(
m_AuthorsPanel, 1, wxGROW|wxRESERVE_SPACE_EVEN_IF_HIDDEN |wxALL, 5);
217 auto&
gen=
m_Pubdesc->SetPub().Set().front()->SetGen();
220 boolmatch_authors =
true;
222match_authors =
false;
237 auto& art =
m_Pubdesc->SetPub().Set().front()->SetArticle();
238art.SetFrom().SetJournal().SetImp().SetPrepub(objects::CImprint::ePrepub_in_press);
241 boolmatch_authors =
true;
242 if(reference_panel && art.IsSetAuthors() && !reference_panel->
MatchesCitSubAuthors(art.GetAuthors())) {
243match_authors =
false;
259 auto& art =
m_Pubdesc->SetPub().Set().front()->SetArticle();
260art.SetFrom().SetJournal().SetImp().ResetPrepub();
263 boolmatch_authors =
true;
264 if(reference_panel && art.IsSetAuthors() && !reference_panel->
MatchesCitSubAuthors(art.GetAuthors())) {
265match_authors =
false;
281 if(reference_panel) {
282 if(
m_Pubdesc->SetPub().Set().front()->IsGen())
284 auto&
gen=
m_Pubdesc->SetPub().Set().front()->SetGen();
287 if(
m_Pubdesc->SetPub().Set().front()->IsArticle())
289 auto& art =
m_Pubdesc->SetPub().Set().front()->SetArticle();
298 if(
m_Pubdesc->SetPub().Set().front()->IsGen())
300 auto&
gen=
m_Pubdesc->SetPub().Set().front()->SetGen();
303 if(
m_Pubdesc->SetPub().Set().front()->IsArticle())
305 auto& art =
m_Pubdesc->SetPub().Set().front()->SetArticle();
349wxWindow* parent = this->GetParent();
351 while(parent && !reference_panel) {
352parent = parent->GetParent();
355 returnreference_panel;
363 boolmatch_authors =
true;
364 boolin_press =
false;
368 boolfound_pmid =
false;
369 boolfound_pub =
false;
370 for(
autopub :
m_Pubdesc->GetPub().Get()) {
371 switch(pub->Which()) {
372 caseobjects::CPub::e_Gen:
377 if(reference_panel && pub->GetGen().IsSetAuthors() && !reference_panel->
MatchesCitSubAuthors(pub->GetGen().GetAuthors())) {
378match_authors =
false;
384 caseobjects::CPub::e_Article:
386 if(!pub->GetArticle().IsSetFrom() || !pub->GetArticle().GetFrom().IsJournal() ||
387!pub->GetArticle().GetFrom().GetJournal().IsSetImp() ||
388pub->GetArticle().GetFrom().GetJournal().GetImp().IsSetPrepub()) {
401 if(reference_panel && pub->GetArticle().IsSetAuthors() && !reference_panel->
MatchesCitSubAuthors(pub->GetArticle().GetAuthors())) {
402match_authors =
false;
408 caseobjects::CPub::e_Pmid:
417 if(found_pub && found_pmid) {
443 if(!reference_panel)
448 auto&
gen=
m_Pubdesc->SetPub().Set().front()->SetGen();
456 if(!
gen.GetAuthors().IsSetAffil()) {
464 auto& art =
m_Pubdesc->SetPub().Set().front()->SetArticle();
465art.SetFrom().SetJournal().SetImp().SetPrepub(objects::CImprint::ePrepub_in_press);
472 if(!art.GetAuthors().IsSetAffil()) {
473reference_panel->
CopyAffil(art.SetAuthors());
480 auto& art =
m_Pubdesc->SetPub().Set().front()->SetArticle();
481art.SetFrom().SetJournal().SetImp().ResetPrepub();
488 if(!art.GetAuthors().IsSetAffil()) {
489reference_panel->
CopyAffil(art.SetAuthors());
496 if(
m_Pubdesc->GetPub().Get().size() > 1) {
497 m_Pubdesc->SetPub().Set().back()->SetPmid().Set(pmid);
500newpub->SetPmid().Set(pmid);
501 m_Pubdesc->SetPub().Set().push_back(newpub);
532citgen->SetGen().SetCit(
"unpublished");
533 empty->SetPub().SetPub().Set().push_back(citgen);
539 boolany_changes =
false;
542 for( objects::CSeq_entry_CI entry_it(
m_Seh, objects::CSeq_entry_CI::fRecursive|objects::CSeq_entry_CI::fIncludeGivenEntry); entry_it; ++entry_it )
544 for( objects::CSeqdesc_CI di(*entry_it, objects::CSeqdesc::e_Pub, 1); di; ++di)
549 if(!di->Equals(*cpy))
552 cmd->AddCommand(*chg);
564 cmd->AddCommand(*cmdAddDesc);
602 if(!authlist->IsSetNames() ||
603(authlist->GetNames().IsStd() && authlist->GetNames().GetStd().empty()) ||
604!authlist->GetNames().GetStd().front()->IsSetName() ||
605(authlist->GetNames().GetStd().front()->GetName().IsName() && authlist->GetNames().GetStd().front()->GetName().IsName() &&
606authlist->GetNames().GetStd().front()->GetName().GetName().IsSetLast() && authlist->GetNames().GetStd().front()->GetName().GetName().GetLast() ==
"?"))
607 text+=
"Publication Authors\n";
User-defined methods of the data storage class.
void PopulateAuthors(objects::CAuth_list &auth_list)
virtual void SetAuthors(const objects::CAuth_list &auth_list)
wxRadioButton * m_NewAuthors
wxRadioButton * m_Published
CPublishedRefPanel * m_InpressRef
virtual void ReportMissingFields(string &text)
wxBitmap GetBitmapResource(const wxString &name)
Retrieves bitmap resources.
CRef< objects::CCit_sub > m_Sub
CReferencePanel * x_GetReferencePanel()
void OnSameAuthorsSelected(wxCommandEvent &event)
wxEVT_COMMAND_RADIOBUTTON_SELECTED event handler for ID_REFSEQAUTHORSBTN
wxSimplebook * m_Notebook
void OnUnpublishedSelected(wxCommandEvent &event)
wxEVT_COMMAND_RADIOBUTTON_SELECTED event handler for ID_UNPUBLISHEDBTN
void OnNewAuthorsSelected(wxCommandEvent &event)
wxEVT_COMMAND_RADIOBUTTON_SELECTED event handler for ID_NEWAUTHORSBTN
virtual bool TransferDataFromWindow()
virtual void ApplyCommand()
static bool ShowToolTips()
Should we show tooltips?
virtual bool TransferDataToWindow()
void CreateControls()
Creates the controls and sizers.
void OnPublishedSelected(wxCommandEvent &event)
wxEVT_COMMAND_RADIOBUTTON_SELECTED event handler for ID_PUBLISHEDBTN
wxRadioButton * m_InPress
CAuthorNamesPanel * m_AuthorsPanel
CRef< objects::CPubdesc > m_Pubdesc
CUnpublishedRefPanel * m_UnpublishedRef
wxIcon GetIconResource(const wxString &name)
Retrieves icon resources.
void OnInpressSelected(wxCommandEvent &event)
wxEVT_COMMAND_RADIOBUTTON_SELECTED event handler for ID_INPRESSBTN
objects::CSeq_entry_Handle m_Seh
void Init()
Initialises member variables.
ICommandProccessor * m_CmdProcessor
bool Create(wxWindow *parent, wxWindowID id=ID_CPUBSTATUSPANEL, const wxPoint &pos=wxDefaultPosition, const wxSize &size=wxSize(400, 300), long style=wxTAB_TRAVERSAL)
Creation.
wxRadioButton * m_Unpublished
CPublishedRefPanel * m_PublishedRef
void ApplyPub(objects::CPubdesc &pubdesc)
void ApplyCitSub(objects::CCit_sub &sub)
CPubStatusPanel()
Constructors.
~CPubStatusPanel()
Destructor.
wxRadioButton * m_SameAuthors
void SetCitArt(objects::CCit_art &art)
void ReportMissingFields(string &text)
virtual bool TransferDataFromWindow()
void SetPmid(TEntrezId pmid)
bool MatchesCitSubAuthors(const objects::CAuth_list &authlist)
void CopyAffil(objects::CAuth_list &auth_list)
bool CopyAuthors(objects::CAuth_list &authlist)
void UpdateCitGen(objects::CCit_gen &gen)
void ReportMissingFields(string &text)
void SetCitGen(const objects::CCit_gen &gen)
Undo/Redo interface for editing operations.
virtual void Execute(IEditCommand *command, wxWindow *window=0)=0
SStrictId_Entrez::TId TEntrezId
TEntrezId type for entrez ids which require the same strictness as TGi.
void Reset(void)
Reset reference object.
#define END_NCBI_SCOPE
End previously defined NCBI scope.
#define BEGIN_NCBI_SCOPE
Define ncbi namespace.
static void text(MDB_val *v)
constexpr bool empty(list< Ts... >) noexcept
const struct ncbi::grid::netcache::search::fields::SIZE size
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4