289 #include <wx/msgdlg.h>
290 #include <wx/statline.h>
291 #include <wx/clipbrd.h>
293 #include <wx/filedlg.h>
294 #include <wx/display.h>
295 #include <wx/evtloop.h>
297 #include <wx/utils.h>
311 virtual string GetName()
const {
return "Sequence Editing"; }
312 virtual void GetVersion(
size_t& verMajor,
size_t& verMinor,
size_t& verPatch)
const
338 "<std>/etc/macro_scripts/list_of_macros.mql",
339 "<std>/etc/macro_scripts/autofix_gb.mql",
340 "<std>/etc/macro_scripts/autofix_tsa.mql",
341 "<std>/etc/macro_scripts/autofix_wgs.mql",
392 if (!path.IsEmpty()) {
393 filenames.push_back(
string(path.ToUTF8()));
402 macro::CMacroLib& macroLib = macro::CMacroLib::GetInstance();
403 macroLib.ClearLibrary();
404 bool status = macroLib.AppendToLibrary(
filenames);
410 if (!path.IsEmpty()) {
456 const string url =
"https://anonsvn.ncbi.nlm.nih.gov/v1/trunk/c%2B%2B/src/objects/seqfeat/" + fname;
458 const wxChar* kTempFilesDir =
wxT(
"<home>/TempFiles");
461 string path(dir_path.ToUTF8());
466 wxfname.SetPath(dir_path);
467 wxfname.SetFullName(fname);
468 string filePath(wxfname.GetFullPath().ToUTF8());
470 if (!wxfname.FileExists()) {
471 if (!wxFileName::DirExists(dir_path) && !wxFileName::Mkdir(dir_path)) {
472 LOG_POST(
Error <<
"Failed to create directory: '" << dir_path <<
"'");
483 Uint8 existing_fsize = wxfname.GetSize().ToULong();
484 long diff = (long)
abs((
int)(existing_fsize - remote_fsize));
489 istr.unsetf(ios::skipws);
490 long count_lines =
count(istream_iterator<char>(istr), istream_iterator<char>(),
'\n');
492 if (diff > 0 && count_lines == diff) {
507 catch (
const exception& e) {
566 void EditPubs( wxCommandEvent& event );
617 void FocusSet( wxCommandEvent& event );
635 void AddCDS( wxCommandEvent& event );
636 void AddRNA( wxCommandEvent& event );
639 void Validate( wxCommandEvent& event );
643 void Oncaller(wxCommandEvent& event);
645 void Mega(wxCommandEvent& event);
653 void ParseText ( wxCommandEvent& event );
664 void BulkEdit ( wxCommandEvent& event );
667 void Autodef ( wxCommandEvent& event );
697 void LabelRna( wxCommandEvent& event );
709 void AddSet ( wxCommandEvent& event );
766 void FindASN1( wxCommandEvent& evt );
872 void Help(wxCommandEvent& evt);
896 void SaveSettings(
const string ®path, wxWindow *dlg)
const;
897 void LoadSettings(
const string ®path, wxWindow *dlg);
914 wxWindow* main_window =
NULL;
1024 const CObject* ptr = it->object.GetPointer();
1027 const CSeq_loc* seqloc =
dynamic_cast<const CSeq_loc*
>(ptr);
1056 }
else if (seqloc) {
1058 if (seqloc->IsWhole()) {
1060 new_id->
Assign(seqloc->GetWhole());
1079 }
else if (bioseq) {
1081 loc->
SetInt().SetId().Assign(*(bioseq->
GetId().front()));
1082 loc->
SetInt().SetFrom(0);
1088 }
else if (seqdesc) {
1100 loc->
SetInt().SetId().Assign(*(bi->
GetId().front().GetSeqId()));
1101 loc->
SetInt().SetFrom(0);
1107 }
else if (pubdesc) {
1112 loc->
SetInt().SetId().Assign(*(bi->
GetId().front().GetSeqId()));
1113 loc->
SetInt().SetFrom(0);
1130 }
else if (bioseqset) {
1135 loc->
SetInt().SetId().Assign(*(bseq.
GetId().front()));
1136 loc->
SetInt().SetFrom(0);
1155 m_IsAa = it->scope->GetBioseqHandle(*loc).IsAa();
1184 if (row_id.
Match(*
id))
1210 catch (
const exception&)
1212 wxMessageBox(
wxT(
"Error while attempting to connect to the ID server, restarting gbench is recommended"),
wxT(
"Error"), wxOK | wxICON_ERROR,
NULL);
1231 event.Enable(
false);
1252 bool ok_for_something =
false;
1257 ok_for_something |=
true;
1261 ok_for_something |=
true;
1264 ok_for_something |=
true;
1278 catch (
const exception&)
1280 wxMessageBox(
wxT(
"Unable to connect to the ID server, restarting gbench is recommended"),
wxT(
"Error"), wxOK | wxICON_ERROR,
NULL);
1291 vector<CUICommand*> commands;
1310 commands.push_back(
new CUICommand(
eCmdRevCompSequences_ext,
"Reverse Complement Sequences by Sequence ID",
"Reverse Complement Sequences from Selected Object",
"RVCS"));
1314 commands.push_back(
new CUICommand(
eCmdMergeBiosources,
"Merge Multiple BioSources On Sequence",
"Merge Multiple BioSources On Sequence",
"MMBS"));
1327 commands.push_back(
new CUICommand(
eCmdTaxFixCleanup,
"Tax_fix/Cleanup",
"Fix Taxonomy and Perform Basic and Extended Cleanup",
"TFCU"));
1361 commands.push_back(
new CUICommand(
eCmdAddTranslExcept,
"Add Translational Exceptions with Comment",
"Add Translational Exceptions with Comment",
"ATEWC"));
1381 commands.push_back(
new CUICommand(
eCmdConvertComment,
"Convert Structured Comment",
"Convert Structured Comment in Selected Object",
"CSCSO"));
1382 commands.push_back(
new CUICommand(
eCmdParseComment,
"Parse Structured Comment",
"Parse Structured Comment in Selected Object",
"PSCSO"));
1412 commands.push_back(
new CUICommand(
eCmdSetTransgSrcDesc,
"Set Transgenic on Source Descriptor",
"Set Transgenic on Source Desc when Source Feat present",
"STOSD"));
1418 commands.push_back(
new CUICommand(
eCmdSplitPrimerSets,
"Split Primer Sets by Position",
"Split Primer Sets by Position for Selected Object",
"SPSBPSO"));
1422 commands.push_back(
new CUICommand(
eCmdCountryFixupCap,
"Country Fixup Fix Capitalization after Colon",
"Country Fixup Fix Capitalization After Colon",
"CFFCAC"));
1423 commands.push_back(
new CUICommand(
eCmdCountryFixupNoCap,
"Country Fixup Do Not Fix Capitalization after Colon",
"Country Fixup Do Not Fix Capitalization After Colon",
"CFDNFCAC"));
1424 commands.push_back(
new CUICommand(
eCmdVectorTrim,
"Vector Search and Trim Tool",
"Vector Search and Trim Tool",
"VSTT"));
1426 commands.push_back(
new CUICommand(
eCmdSelectTarget_ext,
"Select Specific Sequence by Sequence ID",
"Select Specific Sequence by Sequence ID",
"ST"));
1471 commands.push_back(
new CUICommand(
eCmdApplyCGPQual,
"Apply CDS-Gene-Prot-mRNA Qualifier",
"Apply CDS-Gene-Prot-mRNA Qual",
"ACGPQ"));
1472 commands.push_back(
new CUICommand(
eCmdEditCGPQual,
"Edit CDS-Gene-Prot-mRNA Qualifier",
"Edit CDS-Gene-Prot-mRNA Qual",
"ECGPQ"));
1473 commands.push_back(
new CUICommand(
eCmdConvertCGPQual,
"Convert CDS-Gene-Prot-mRNA Qualifier",
"Convert CDS-Gene-Prot-mRNA Qual",
"CCGPQ"));
1474 commands.push_back(
new CUICommand(
eCmdSwapCGPQual,
"Swap CDS-Gene-Prot-mRNA Qualifiers",
"Swap CDS-Gene-Prot-mRNA Qual",
"SCGPQ"));
1475 commands.push_back(
new CUICommand(
eCmdRemoveCGPQual,
"Remove CDS-Gene-Prot-mRNA Qualifier",
"Remove CDS-Gene-Prot-mRNA Qual",
"RCGPQ"));
1511 commands.push_back(
new CUICommand(
eCmdCorrectGenes,
"Correct Genes for CDSs or mRNAs",
"Correct Genes for CDSs or mRNAs",
"CGFCOM"));
1563 commands.push_back(
new CUICommand(
eCmdExtendCDS,
"Extend Coding Region Ends",
"Extend Coding Region Ends",
"ECDSE"));
1564 commands.push_back(
new CUICommand(
eCmdTruncateCDS,
"Truncate Proteins and CDSs at Stops",
"Truncate Proteins and CDSs at Stops",
"TPCDSS"));
1588 commands.push_back(
new CUICommand(
eCmdNormalizeGeneQuals,
"Normalize Gene Quals",
"Copy gene qualifiers in xrefs on coding regions to parent genes",
"NGQ"));
1597 commands.push_back(
new CUICommand(
eCmdTrimNsRich,
"Trim N-rich Sequence Ends",
"Trim N-rich Sequence Ends",
"TNR"));
1606 commands.push_back(
new CUICommand(
eCmdEnableHupId,
"Enable HUP-ID Loader",
"Enable HUP-ID Loader",
"",
"",
"",
"", wxITEM_CHECK));
1633 commands.push_back(
new CUICommand(
eCmdExpandGaps,
"Expand Known Gaps to Include Flanking Ns",
"Expand Known Gaps to Include Flanking Ns",
"EKGFN"));
1637 commands.push_back(
new CUICommand(
eCmdEditSelectedGaps,
"Change Length of Selected Known Length Gaps",
"Change Length of Selected Known Length Gaps",
"CLSKG"));
3104 return kEditingMenu;
3115 if (dlg.ShowModal() == wxID_OK)
3126 wxWindow* main_window =
NULL;
3137 wxWindow* main_window =
NULL;
3189 if (dlg.ShowModal() == wxID_OK)
3202 wxWindow* main_window =
NULL;
3208 if (dlg.ShowModal() == wxID_OK) {
3280 copy->Assign(*entry);
3291 cmd->AddCommand(*clean);
3553 if (objs.size() == 0) {
3554 wxMessageBox(
wxT(
"No coding regions found!"),
wxT(
"Error"),
3555 wxOK | wxICON_ERROR,
NULL);
3559 bool any_change =
false;
3573 cmd->AddCommand(*synch);
3581 wxMessageBox(
wxT(
"No effect!"),
wxT(
"Error"),
3582 wxOK | wxICON_ERROR,
NULL);
3594 switch (evt.GetId())
3734 seqdesc->
SetUser().
Assign(*edit::CGenomeAssemblyComment::MakeEmptyUserObject());
3738 if (!orig_locs.empty())
3747 wxWindow* editorWindow = editor->CreateWindow(edit_dlg);
3751 edit_dlg->Show(
true);
3941 if (dlg.ShowModal() == wxID_OK)
4002 wxWindow* main_window =
NULL;
4087 switch (evt.GetId())
4106 wxWindow* main_window =
NULL;
4117 wxWindow* main_window =
NULL;
4130 wxWindow* main_window =
NULL;
4215 switch (evt.GetId()) {
4304 wxMenu* menu =
dynamic_cast<wxMenu*
>(evt.GetEventObject());
4307 title = menu->GetLabelText(evt.GetId());
4321 switch (evt.GetId()) {
4386 if (regpath.empty() || !dlg)
4401 if (regpath.empty() || !dlg)
4409 if (width >= 0 && height >= 0)
4410 dlg->SetSize(wxSize(width,height));
4415 if (pos_x >= 0 && pos_y >= 0) {
4417 for (
unsigned i = 0;
i < wxDisplay::GetCount();
i++)
4419 wxDisplay display(
i);
4420 max_x += display.GetGeometry().GetWidth();
4422 if (pos_x + width > max_x)
4423 pos_x = wxGetDisplaySize().GetWidth()-width-5;
4425 if (pos_y + height > wxGetDisplaySize().GetHeight())
4426 pos_y = wxGetDisplaySize().GetHeight()-height-5;
4428 dlg->SetPosition(wxPoint(pos_x,pos_y));
4430 wxTopLevelWindow* top_win =
dynamic_cast<wxTopLevelWindow*
>(dlg);
4433 wxRect rc = dlg->GetRect();
4436 dlg->Move(rc.GetLeftTop());
4448 vector<string> format_ids;
4449 format_ids.push_back(
"file_loader_qual_table");
4450 fileManager->LoadFormats(format_ids);
4453 for(
size_t i = 0;
i < fileManager->GetFormatManagers().
size(); ++
i ) {
4458 if (const_qual_mgr) {
4466 vector<CIRef<IOpenObjectsPanelClient> > loadManagers;
4470 dlg.SetSize(760, 940);
4471 dlg.Centre(wxBOTH | wxCENTRE_ON_SCREEN);
4472 dlg.SetMinSize(wxSize(760, 750));
4477 if (dlg.ShowModal() == wxID_OK) {
4490 vector< CIRef<IFileLoadPanelClientFactory> > file_formats;
4494 for (
size_t i = 0;
i < file_formats.size(); ++
i) {
4495 if (file_formats[
i]->GetFileLoaderId() ==
"file_loader_qual_table") {
4496 format_manager.
Reset(file_formats[
i]->CreateInstance());
4498 if (
"file_loader_qual_table" == format_manager->GetFileLoaderId()) {
4500 if (const_qual_mgr) {
4511 if (wxTheClipboard->Open())
4513 wxTextDataObject
data;
4514 if (wxTheClipboard->IsSupported( wxDF_UNICODETEXT ))
4515 wxTheClipboard->GetData(
data );
4516 if (
data.GetText().length() == 0) {
4517 wxMessageBox(
"No data in clipboard for table");
4518 wxTheClipboard->Close();
4524 fname =
f.GetFileName();
4525 wxTheClipboard->Close();
4528 vector<wxString> fnames;
4536 dlg.SetSize(760, 940);
4537 dlg.Centre(wxBOTH|wxCENTRE_ON_SCREEN);
4538 dlg.SetMinSize(wxSize(760, 750));
4542 if (dlg.ShowModal() == wxID_OK) {
4545 CFile tmp_file(fname);
4560 if (dlg.ShowModal() == wxID_OK) {
4582 if (dlg.ShowModal() == wxID_OK) {
4591 wxOK | wxICON_ERROR,
NULL);
4613 if (dlg.ShowModal() == wxID_OK) {
4622 wxOK | wxICON_ERROR,
NULL);
4644 if (dlg.ShowModal() == wxID_OK) {
4653 wxOK | wxICON_ERROR,
NULL);
4674 if (dlg.ShowModal() == wxID_OK) {
4684 wxOK | wxICON_ERROR,
NULL);
4700 if (dlg.ShowModal() == wxID_OK)
4727 return first->Equals(*second);
4735 int event_id = evt.GetId();
4752 if (dlg.ShowModal() == wxID_OK)
4758 vector<CRef<CSeq_loc> > cpy = orig_locs;
4759 vector<CRef<CSeq_loc> >::iterator lit = cpy.begin();
4760 while (lit != cpy.end()) {
4762 if (!
b ||
b.IsAa()) {
4763 lit = cpy.erase(lit);
4773 stable_sort(cpy.begin(), cpy.end(),
CompLoc);
4774 cpy.erase( unique( cpy.begin(), cpy.end(),
EqualLoc), cpy.end() );
4781 cmd->AddCommand(*subcmd);
4824 if (dlg.ShowModal() == wxID_OK)
4935 switch (event.GetId()){
4937 rna_name =
"12S ribosomal RNA";
4940 rna_name =
"16S ribosomal RNA";
4943 rna_name =
"23S ribosomal RNA";
4946 rna_name =
"18S ribosomal RNA";
4949 rna_name =
"28S ribosomal RNA";
4952 rna_name =
"26S ribosomal RNA";
4955 rna_name =
"small subunit ribosomal RNA";
4958 rna_name =
"large subunit ribosomal RNA";
4961 bool ispartial5 =
true;
4962 bool ispartial3 =
true;
5010 if (orig_locs.empty())
5013 wxMessageBox(
wxT(
"No data loaded"),
wxT(
"Error"), wxOK | wxICON_ERROR,
NULL);
5024 wxMessageBox(
wxT(
"No data loaded"),
wxT(
"Error"), wxOK | wxICON_ERROR,
NULL);
5081 wxWindow* editorWindow = editor->CreateWindow(edit_dlg);
5084 edit_dlg->Show(
true);
5097 string regulatory_class;
5107 if (!regulatory_class.empty())
5110 q->
SetQual(
"regulatory_class");
5111 q->
SetVal(regulatory_class);
5123 wxWindow* editorWindow = editor->CreateWindow(edit_dlg);
5126 edit_dlg->Show(
true);
5136 switch (evt.GetId()) {
5159 seqdesc->
SetUser().
Assign(*edit::CGenomeAssemblyComment::MakeEmptyUserObject());
5184 seqdesc->
SetPub(*pubdesc);
5193 if (!orig_locs.empty())
5202 wxWindow* editorWindow = editor->CreateWindow(edit_dlg);
5206 edit_dlg->Show(
true);
5244 bool show_label =
true;
5245 switch (event.GetId()){
5295 if (dlg.ShowModal() == wxID_OK){
5337 wxWindow* main_window =
NULL;
5349 wxWindow* main_window =
NULL;
5363 wxWindow* main_window =
NULL;
5380 wxWindow* main_window =
NULL;
5412 wxWindow* main_window =
NULL;
5422 wxWindow* main_window =
NULL;
5433 if (dlg.ShowModal() == wxID_OK)
5457 if (dlg.ShowModal() == wxID_OK)
5476 if (dlg.ShowModal() == wxID_OK)
5483 wxMessageBox(
wxT(
"Set structure no longer matches"),
wxT(
"Error"),
5484 wxOK | wxICON_ERROR,
NULL);
5488 wxMessageBox(
wxT(
"No changes requested"),
wxT(
"Error"),
5489 wxOK | wxICON_ERROR,
NULL);
5504 wxWindow* main_window =
NULL;
5519 if (dlg.ShowModal() == wxID_OK)
5549 wxWindow* main_window =
NULL;
5580 wxWindow* main_window =
NULL;
5613 bool good_seq =
false;
5614 switch (event.GetId()) {
5656 bool similar =
true;
5657 bool nonfunctional =
false;
5658 bool unverified =
false;
5665 bool similar =
false;
5666 bool nonfunctional =
true;
5667 bool unverified =
false;
5674 bool similar =
true;
5675 bool nonfunctional =
false;
5676 bool unverified =
true;
5691 vector<const CSeq_feat*> genes;
5693 const CObject* ptr = it->object.GetPointer();
5697 genes.push_back(seqfeat);
5700 if (genes.size() != 2)
5702 wxMessageBox(
_(
"Please select two gene features to combine. Use Ctrl+Left mouse click"),
wxT(
"Error"), wxOK | wxICON_ERROR,
NULL);
5707 new_feat->
Assign(*genes[0]);
5709 new_feat->
SetLocation().Add(genes[1]->GetLocation());
5715 vector<string> locus;
5716 if (genes[1]->GetData().GetGene().IsSetLocus())
5717 locus.push_back(genes[1]->GetData().GetGene().GetLocus());
5718 if (genes[0]->GetData().GetGene().IsSetLocus())
5719 locus.push_back(genes[0]->GetData().GetGene().GetLocus());
5753 if (dlg.ShowModal() == wxID_OK) {
5761 wxOK | wxICON_ERROR,
NULL);
5778 bool gene_xref =
false;
5781 if ((*xref)->IsSetData() && (*xref)->GetData().IsGene())
5784 if (!contained && overlapping && !gene_xref)
5789 xref->SetData().SetGene();
5790 new_feat->
SetXref().push_back(xref);
5805 bool gene_xref =
false;
5808 if ((*xref)->IsSetData() && (*xref)->GetData().IsGene())
5811 if (!contained && overlapping && gene_xref)
5815 CSeq_feat::TXref::iterator seq_feat_xref;
5818 if ((*xref)->IsSetData() && (*xref)->GetData().IsGene())
5819 seq_feat_xref = xref;
5821 new_feat->
SetXref().erase(seq_feat_xref);
5822 if (new_feat->
GetXref().empty())
5836 if (dlg.ShowModal() == wxID_OK)
5851 for ( ; align_ci; ++align_ci) {
5855 bool modified = macro::CMacroFunction_RemoveSegGaps::s_RemoveSegGaps(*new_align);
5858 cmd->AddCommand(*chgAlign);
5866 wxWindow* main_window =
NULL;
5875 sel_srv->GetActiveObjects(
objects);
5884 wxMessageBox(
wxT(
"No objects found"),
wxT(
"Error"), wxOK | wxICON_ERROR);
5891 wxMessageBox(
wxT(
"Cannot determine scope"),
wxT(
"Error"), wxOK | wxICON_ERROR);
5894 const CSeq_loc* loc =
NULL;
5898 const CSeq_loc* obj_loc =
dynamic_cast<const CSeq_loc*
>(o.object.GetPointer());
5908 wxMessageBox(
wxT(
"The selection is not a bioseq"),
wxT(
"Error"), wxOK | wxICON_ERROR);
5913 wxMessageBox(
wxT(
"Multiple bioseqs in scope, opening the first one only"),
wxT(
"Warning"), wxOK | wxICON_ERROR);
5917 if (!loc->IsWhole())
5934 wxMessageBox(
wxT(
"No bioseq selected"),
wxT(
"Error"), wxOK | wxICON_ERROR);
5945 if (dlg.ShowModal() == wxID_OK)
5956 wxWindow* main_window =
NULL;
5962 if (dlg.ShowModal() == wxID_OK)
5994 switch (event.GetId()) {
6019 switch (event.GetId()) {
6120 wxWindow* main_window =
NULL;
6130 wxWindow* main_window =
NULL;
6145 wxWindow* main_window =
NULL;
6168 string strcomment_dbname;
6169 switch (evt.GetId()){
6171 strcomment_dbname.assign(
"HIVDatabase");
6174 strcomment_dbname.assign(
"FluData");
6177 strcomment_dbname.assign(
"MIGS-Data");
6180 strcomment_dbname.assign(
"MIMS-Data");
6183 strcomment_dbname.assign(
"MIENS-Data");
6186 strcomment_dbname.assign(
"MIMARKS:3.0-Data");
6189 strcomment_dbname.assign(
"MIGS:3.0-Data");
6192 strcomment_dbname.assign(
"MIMS:3.0-Data");
6195 strcomment_dbname.assign(
"Assembly-Data");
6198 strcomment_dbname.assign(
"Genome-Assembly-Data");
6201 strcomment_dbname.assign(
"International Barcode of Life (iBOL)Data");
6208 if (objs.size() == 0) {
6209 wxMessageBox(
wxT(
"No structured comments found!"),
wxT(
"Error"),
6210 wxOK | wxICON_ERROR,
NULL);
6214 bool any_change =
false;
6222 cmd->AddCommand(*ecmd);
6230 wxMessageBox(
wxT(
"No effect!"),
wxT(
"Error"),
6231 wxOK | wxICON_ERROR,
NULL);
6303 wxWindow* main_window =
NULL;
6313 wxWindow* main_window =
NULL;
6323 wxWindow* main_window =
NULL;
6333 wxWindow* main_window =
NULL;
6343 wxWindow* main_window =
NULL;
6366 wxWindow* main_window =
NULL;
6372 if (dlg.ShowModal() == wxID_OK)
6378 if (del_original_ids)
6392 if (!locs.empty()) {
6402 wxWindow* main_window =
NULL;
6411 if (dlg.ShowModal() == wxID_OK)
6424 wxWindow* main_window =
NULL;
6434 wxWindow* main_window =
NULL;
6444 wxWindow* main_window =
NULL;
6457 wxWindow* main_window =
NULL;
6463 if (dlg.ShowModal() == wxID_OK)
6477 wxWindow* main_window =
NULL;
6483 if (dlg.ShowModal() == wxID_OK)
6527 switch (event.GetId()){
6555 if (!objs.empty()) {
6689 wxWindow* main_window =
NULL;
6713 wxWindow* main_window =
NULL;
6719 if (dlg.ShowModal() == wxID_OK)
6746 wxWindow* main_window =
NULL;
6752 if (dlg.ShowModal() == wxID_OK)
6767 wxWindow* main_window =
NULL;
6773 if (dlg.ShowModal() == wxID_OK)
6795 wxWindow* main_window =
NULL;
6801 if (dlg.ShowModal() == wxID_OK)
6816 wxWindow* main_window =
NULL;
6827 wxWindow* main_window =
NULL;
6840 wxWindow* main_window =
NULL;
6853 wxWindow* main_window =
NULL;
6891 wxWindow* main_window =
NULL;
6900 if (dlg.ShowModal() == wxID_OK)
6909 wxOK | wxICON_ERROR,
NULL);
6921 wxWindow* main_window =
NULL;
6928 if (locs.size() == 1) {
6937 if (dlg.ShowModal() == wxID_OK)
6965 wxWindow* main_window =
NULL;
6993 wxWindow* main_window =
NULL;
7001 if (dlg.ShowModal() == wxID_OK)
7017 wxWindow* main_window =
NULL;
7044 wxFileDialog asn_save_file(main_window,
wxT(
"Export object to file"), wxEmptyString, wxEmptyString,
7047 wxFD_SAVE|wxFD_OVERWRITE_PROMPT);
7049 if (asn_save_file.ShowModal() == wxID_OK)
7051 wxString path = asn_save_file.GetPath();
7052 if( !path.IsEmpty())
7069 wxWindow* main_window =
NULL;
7077 if (dlg.ShowModal() == wxID_OK)
7092 wxWindow* main_window =
NULL;
7108 report->SetTitle(
wxT(
"TPA Alignment Assembly Problems"));
7131 wxWindow* main_window =
NULL;
7140 if (dlg.ShowModal() == wxID_OK)
7160 wxWindow* main_window =
NULL;
7175 wxMessageBox(
wxT(
"No alignment found"),
wxT(
"Error"), wxOK | wxICON_ERROR);
7185 wxWindow* main_window =
NULL;
7195 if (dlg.ShowModal() == wxID_OK) {
7227 wxMessageBox(wxString(e.
GetMsg()),
wxT(
"Error"),wxOK | wxICON_ERROR,
NULL);
7236 wxWindow* main_window =
NULL;
7258 wxWindow* main_window =
NULL;
7293 wxWindow* main_window =
NULL;
7331 if (del_original_ids)
7333 int answer = wxMessageBox (
_(
"Remove Original Ids?"),
_(
"Remove Original Ids"), wxYES_NO | wxICON_QUESTION);
7334 if (answer == wxYES)
7351 if (del_original_ids)
7353 int answer = wxMessageBox (
_(
"Remove Original Ids?"),
_(
"Remove Original Ids"), wxYES_NO | wxICON_QUESTION);
7354 if (answer == wxYES)
7371 if (del_original_ids)
7373 int answer = wxMessageBox (
_(
"Remove Original Ids?"),
_(
"Remove Original Ids"), wxYES_NO | wxICON_QUESTION);
7374 if (answer == wxYES)
7468 wxWindow* main_window =
NULL;
7474 if (dlg.ShowModal() == wxID_OK)
7540 seqdesc->
SetUser().
Assign(*(edit::CStructuredCommentField::MakeUserObject(
"Assembly-Data")));
7544 if (!orig_locs.empty())
7553 wxWindow* editorWindow = editor->CreateWindow(edit_dlg);
7557 edit_dlg->Show(
true);
7565 wxWindow* main_window =
NULL;
7571 if (dlg.ShowModal() == wxID_OK)
7656 wxWindow* main_window =
NULL;
7662 if (dlg.ShowModal() == wxID_OK)
7881 wxWindow* editorWindow = editor->CreateWindow(edit_dlg);
7882 editorWindow->TransferDataToWindow();
7886 edit_dlg->Show(
true);
7895 wxWindow* main_window =
NULL;
7909 wxWindow* main_window =
NULL;
7918 table->SetColumns().push_back(id_col);
7922 for ( ; b_iter ; ++b_iter )
7927 id_col->
SetData().SetId().push_back(
id);
7931 if (it->GetUser().IsSetType() && it->GetUser().GetType().IsStr() &&
NStr::EqualNocase(it->GetUser().GetType().GetStr(),
"StructuredComment") )
7935 if ((*field_it)->IsSetLabel() && (*field_it)->GetLabel().IsStr() && (*field_it)->IsSetData())
7938 if ((*field_it)->GetData().IsStr())
7940 val.push_back((*field_it)->GetData().GetStr());
7942 else if ((*field_it)->GetData().IsStrs())
7944 for (vector<CStringUTF8>::const_iterator str_it = (*field_it)->GetData().GetStrs().begin(); str_it != (*field_it)->GetData().GetStrs().end(); ++str_it)
7946 val.push_back(*str_it);
7961 wxFileDialog table_save_file(main_window,
wxT(
"Export Structured Comment Table"), wxEmptyString, wxEmptyString,
7964 wxFD_SAVE|wxFD_OVERWRITE_PROMPT);
7966 if (table_save_file.ShowModal() == wxID_OK)
7968 wxString path = table_save_file.GetPath();
7969 wxString name = table_save_file.GetFilename();
7983 wxMessageBox(
wxT(
"Cannot open file ")+name,
wxT(
"Error"), wxOK | wxICON_ERROR, main_window);
7989 exporter.
Field((*cit)->GetHeader().GetTitle());
7992 for (
int i = 0;
i <
table->GetNum_rows(); ++
i) {
7994 if (
i < (*cit)->GetData().GetSize()) {
7995 if ((*cit)->GetData().IsId()) {
7999 }
else if ((*cit)->GetData().IsString()) {
8000 exporter.
Field((*cit)->GetData().GetString()[
i]);
8004 exporter.
Field(blank);
8097 wxWindow* main_window =
NULL;
8114 wxWindow* main_window =
NULL;
8225 wxWindow* main_window =
NULL;
8242 wxWindow* main_window =
NULL;
8256 wxWindow* main_window =
NULL;
8271 if (dlg.ShowModal() == wxID_OK) {
8285 bool enable =
event.IsChecked();
8295 wxMenuItem* menuitem =
dynamic_cast<wxMenuItem*
>(
event.GetEventObject());
8297 menuitem->Check(
false);
8299 wxMessageBox(
_(
"Loading HUP-ID failed, do you have permissions to access this server?"),
wxT(
"Error"), wxOK,
NULL);
8312 return wxEmptyString;
8317 wxWindow* main_window =
NULL;
8321 wxArrayString choices;
8326 wxSingleChoiceDialog dlg(main_window,
_(
"Select Indexer Type"),
_(
"Indexer Type"), choices);
8330 dlg.SetSelection(sel);
8332 if (dlg.ShowModal() == wxID_OK)
8334 sel = dlg.GetSelection();
8364 wxWindow* main_window =
NULL;
8376 wxWindow* main_window =
NULL;
8399 type->SetStr(
"TextViewParams");
8405 label->SetStr(
"TextViewType");
8407 param->
SetData().SetStr(
"Flat File");
8408 data.push_back(param);
8413 label->SetStr(
"ExpandAll");
8415 param->
SetData().SetBool(
true);
8416 data.push_back(param);
8421 label->SetStr(
"TrackSelection");
8423 param->
SetData().SetBool(
true);
8424 data.push_back(param);
8434 vector< CIRef<IFileFormatLoaderManager> > managers;
8438 vector<string> format_ids(1,
"file_loader_auto");
8439 format_ids.push_back(
"file_loader_fasta");
8440 format_ids.push_back(
"file_loader_asn");
8445 fileManager->LoadFormats(format_ids);
8447 vector<CIRef<IOpenObjectsPanelClient> > loadManagers;
8450 dlg.SetSize(710, 480);
8453 if (dlg.ShowModal() == wxID_OK)
8457 return make_tuple(ph,
pi);
8460 return make_tuple(ph,
pi);
8462 auto&
objects = object_loader->GetObjects();
8463 const CBioseq* bseq =
nullptr;
8465 const CObject& ptr = it.GetObject();
8466 if (bseq =
dynamic_cast<const CBioseq*
>(&ptr)) {
8470 if (entry && entry->IsSeq()) {
8472 bseq = &(entry->GetSeq());
8482 if (bseq && bseq->
IsAa()) {
8483 wxMessageBox(
wxT(
"The file contains one protein sequence. Please import a nucleotide sequence file"),
wxT(
"Error"),
8484 wxOK | wxICON_ERROR);
8485 return make_tuple(ph,
pi);
8491 wxDateTime start = wxDateTime::Now();
8492 wxDateTime now = start;
8493 while ((!ph || !
pi) && (now - start).GetSeconds() < 60)
8495 for (
auto project_handle : ws->GetWorkspace().GetProjects())
8497 if (project_handle->GetProject().GetData().IsSetItems())
8499 for (
auto item : project_handle->GetProject().GetData().GetItems())
8501 if (item->IsSetLabel() && item->IsSetItem() && (item->GetItem().IsSubmit() || item->GetItem().IsEntry()))
8503 ph = project_handle;
8511 if (wxTheApp && wxTheApp->GetMainLoop())
8513 if (!wxTheApp->GetMainLoop()->IsYielding())
8514 wxTheApp->Yield(
true);
8515 wxTheApp->ProcessPendingEvents();
8518 now = wxDateTime::Now();
8521 return make_tuple(ph,
pi);
8531 vector<CIRef<IProjectView>> views;
8532 srv->FindViews(views, *
pi->GetObject());
8533 for (
auto& it : views)
8535 srv->RemoveProjectView(*it);
8541 string version_str =
"Genome Workbench ";
8547 version_str +=
" " + wxGetOsDescription().ToStdString();
8548 submitBlock->
SetTool(version_str);
8550 submitBlock->
SetContact().SetContact().SetName().SetName().SetLast(
"?");
8551 bool found_sub =
false;
8554 if (desc_ci->IsPub() && desc_ci->GetPub().IsSetPub() && desc_ci->GetPub().GetPub().IsSet() && !desc_ci->GetPub().GetPub().Get().empty() && desc_ci->GetPub().GetPub().Get().front()->IsSub())
8556 submitBlock->
SetCit().Assign(desc_ci->GetPub().GetPub().Get().front()->GetSub());
8564 author->
SetName().SetName().SetLast(
"?");
8565 submitBlock->
SetCit().SetAuthors().SetNames().SetStd().push_back(author);
8570 submitBlock->
SetCit().SetDate(*today);
8575 copy->Assign(*entry);
8579 submission->
SetData().SetEntrys().push_back(
copy);
8584 new_item->
SetDescr().assign(
pi->GetDescr().begin(),
pi->GetDescr().end());
8585 new_item->
SetItem().SetSubmit(*submission);
8587 if (
pi->IsSetLabel())
8615 new_bioseq->
Assign (*bioseq);
8618 cmd->AddCommand(*chgInst);
8625 edited_seqdesc->
Assign(seqdesc);
8628 cmd->AddCommand(*chgd_cmd);
8635 cmd->AddCommand(*subcmd);
8647 if (!old_set->IsSetClass() ||
8650 new_set->
Assign(*old_set);
8658 copy->Assign(*entry);
8674 copy->Assign(*entry);
8706 if (!ws || !ws->IsSetWorkspace() || !ws->GetWorkspace().IsSetProjects())
return;
8708 wxWindow* main_window =
nullptr;
8716 wxArrayString choices;
8717 bool non_editable =
false;
8718 for (
auto project_handle : ws->GetWorkspace().GetProjects())
8720 if (project_handle->GetProject().GetData().IsSetItems())
8722 for (
auto item : project_handle->GetProject().GetData().GetItems())
8724 if (item->IsSetLabel())
8726 if (item->IsSetItem() && (item->GetItem().IsSubmit() || item->GetItem().IsEntry()))
8728 projects.push_back(make_pair(project_handle, item));
8729 choices.Add(wxString(item->GetLabel()));
8732 non_editable =
true;
8739 wxMessageBox(
wxT(
"One or more projects contain records which cannot be used for submission.\nThis is only an informational notice, this is not an error."),
wxT(
"Information"), wxOK | wxICON_INFORMATION,
NULL);
8741 if (projects.empty())
8745 else if (projects.size() == 1)
8747 tie(ph,
pi) = projects[0];
8751 wxSingleChoiceDialog dlg(main_window,
_(
"Select the project for the submission"),
_(
"Multiple projects found"), choices);
8752 if (dlg.ShowModal() == wxID_OK)
8754 int sel = dlg.GetSelection();
8755 if (sel != wxNOT_FOUND)
8757 tie(ph,
pi) = projects[sel];
8775 if (
pi->IsSetItem() &&
pi->GetItem().IsSubmit())
8798 else if (
pi->IsSetItem() &&
pi->GetItem().IsEntry())
8818 LOG_POST(
Error <<
"Taxonomy lookup failed before opening the Submission Wizard: " << e.
GetMsg());
8842 wxWindow* main_window =
NULL;
8855 int answer = wxMessageBox (
_(
"You need to use the 'Genome Submission Wizard' to add contact information before submitting to GenBank - save incomplete file?"),
8856 _(
"Save Incomplete File"), wxYES_NO | wxICON_QUESTION);
8857 if (answer == wxYES)
8871 wxFileDialog asn_save_file(main_window,
wxT(
"Save Submission File"),
m_WorkDir, wxEmptyString,
8874 wxFD_SAVE|wxFD_OVERWRITE_PROMPT);
8877 if (asn_save_file.ShowModal() == wxID_OK) {
8878 wxString path = asn_save_file.GetPath();
8879 if (!path.IsEmpty()) {
8891 catch (
const exception& e) {
8911 wxWindow* main_window =
NULL;
8924 wxFileDialog asn_save_file(main_window,
wxT(
"Save ASN.1 File"),
m_WorkDir, wxEmptyString,
8927 wxFD_SAVE|wxFD_OVERWRITE_PROMPT);
8929 if (asn_save_file.ShowModal() == wxID_OK)
8931 wxString path = asn_save_file.GetPath();
8932 if( !path.IsEmpty())
8950 switch (event.GetId()){
8952 prefix.assign(
"MIENS-Data");
8955 prefix.assign(
"MIMARKS:5.0-Data");
8958 prefix.assign(
"MIGS:5.0-Data");
8961 prefix.assign(
"MIMS:5.0-Data");
8964 prefix.assign(
"Genome-Assembly-Data");
8967 prefix.assign(
"Genome-Annotation-Data");
8976 seqdesc->
SetUser().
Assign(*edit::CStructuredCommentField::MakeUserObject(prefix));
8980 if (!orig_locs.empty())
8989 wxWindow* editorWindow = editor->CreateWindow(edit_dlg);
8993 edit_dlg->Show(
true);
9003 switch (event.GetId()){
9005 prefix.assign(
"MIENS");
9008 prefix.assign(
"MIMARKS");
9011 prefix.assign(
"MIGS");
9014 prefix.assign(
"MIMS");
9017 prefix.assign(
"Genome-Assembly");
9020 prefix.assign(
"Genome-Annotation");
9045 cmd->AddCommand(*cmdDelDesc);
9049 catch (
const exception&) { }
9059 wxString manual_name;
9060 switch (event.GetId()) {
9062 manual_name =
wxT(
"manual8");
9065 manual_name =
wxT(
"manual11");
9068 manual_name =
wxT(
"manual9");
9071 manual_name =
wxT(
"manual10");
9074 manual_name =
wxT(
"manual12");
9077 manual_name =
wxT(
"manual15");
9083 wxURI help_url(
wxT(
"https://www.ncbi.nlm.nih.gov/tools/gbench/") + manual_name +
wxT(
"/"));
9084 wxString help_encoded_url = help_url.BuildURI();
9085 wxLaunchDefaultBrowser(help_encoded_url, 0);
User-defined methods of the data storage class.
@ eExtreme_Positional
numerical value
@ eExtreme_Biological
5' and 3'
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.
User-defined methods of the data storage class.
#define EXT_POINT__APP_MODE_EXTENSION
CSeq_entry_Handle GetSeqEntryForSeqdesc(CRef< CScope > scope, const CSeqdesc &seq_desc)
bool GUI_AsyncExecUnit(IExecuteUnit &exec_unit, const wxString &msg)
void ConfigureAutodefParamsForBestCombo(SAutodefParams ¶ms, objects::CSeq_entry_Handle seh)
void ConfigureAutodefParamsForID(SAutodefParams ¶ms, objects::CSeq_entry_Handle seh)
unsigned int ConfigureParamsForPrefixCombo(SAutodefParams ¶ms, objects::CSeq_entry_Handle seh)
CRef< CCmdComposite > InstantiateProteinTitles(objects::CSeq_entry_Handle entry)
CRef< CCmdComposite > AutodefSeqEntryNoTitle(objects::CSeq_entry_Handle entry, SAutodefParams *params, bool docsum_only=false)
@ eCmdCreateRegulatory_ribosome_binding_site
@ eCmdCreateMobileElement
@ eCmdCreateMiscStructure
@ eCmdCreateBiosourceFeat
@ eCmdCreatePrimTranscript
@ eCmdCreateRegulatory_promoter
@ eCmdCreateRegulatory_riboswitch
@ eCmdCreateCodingRegion_ext
@ eCmdCreateCommentDescriptor
@ eCmdCreatePubFeatureLabeled
@ eCmdCreateRegulatory_enhancer
@ eCmdCreateTransitPeptide
@ eCmdCreateSecondaryStructure
@ eCmdCreateRegulatory_terminator
@ eCmdCreateMiscDifference
CIRef< IEditObject > CreateEditorForObject(CConstRef< CObject > obj, objects::CSeq_entry_Handle seh, bool create)
void SetInitParameters(EActionType action_type, EFieldType field_type, const string &field=kEmptyStr, const wxString &title=wxEmptyString)
@ eFieldType_StructuredComment
@ eActionType_RemoveTextOutside
bool apply(objects::CSeq_entry_Handle tse, ICommandProccessor *cmdProcessor, string title)
void SetKeyword(const string &keyword)
CRef< CCmdComposite > GetCommand(objects::CSeq_entry_Handle tse)
CRef< CCmdComposite > GetCommand()
void apply(CSeq_entry_Handle tse, ICommandProccessor *cmdProccessor)
static CRef< CCmdComposite > apply(CSeq_entry_Handle tse, CSeqFeatData::ESubtype subtype)
CRef< CCmdComposite > GetCommand()
static bool s_IsBioseqGood_AdjustEnds(const objects::CBioseq_Handle &bsh)
static bool s_IsBioseqGood_Strict(const objects::CBioseq_Handle &bsh)
static bool s_IsBioseqGood_Relaxed(const objects::CBioseq_Handle &bsh)
CRef< CCmdComposite > GetCommandToAdjustCDSEnds(const objects::CSeq_feat &cds)
CRef< CCmdComposite > GetCommand(const objects::CSeq_feat &cds)
AdjustForConsensusSpliceSite Adjust internal intervals of a CDS (and its associated mRNA feature) to ...
CAppTaskService - Application Task Service.
CAppTask - default implementation of IAppTask, use it as a base class for custom tasks.
CRef< CCmdComposite > GetCommand()
static CRef< CCmdComposite > apply(objects::CSeq_entry_Handle seh)
CRef< CCmdComposite > GetCommand()
bool apply(objects::CSeq_entry_Handle tse, ICommandProccessor *cmdProcessor, string title)
void x_TableReaderMacro(bool modal=false)
void ShowSourceOptions(bool show)
void SetParams(SAutodefParams *params)
void PopulateParams(SAutodefParams ¶ms)
static void CollectBioseqEditorCommands(vector< CUICommand * > &commands)
static CRef< objects::CSeq_feat > MakeDefaultFeature(objects::CSeqFeatData::ESubtype subtype)
static objects::CSeqFeatData::ESubtype GetFeatTypeFromCmdID(int cmd_id)
const CBioseq & GetNucFromNucProtSet(void) const
CSeq_entry * GetParentEntry(void) const
TSeqPos GetLength(void) const
CRef< CCmdComposite > GetCommand()
void SetEditingType(EEditingType editing_type)
void ChooseFeatureType(objects::CSeqFeatData::ESubtype subtype)
CRef< CCmdComposite > GetCommand()
CRef< CCmdComposite > GetCommand()
CRef< CCmdComposite > GetCommand()
void Field(const string &value)
ncbi::objects::CBioseq_set::EClass GetClass()
static bool RepairXrefs(const CSeq_feat &f, const CTSE_Handle &tse)
Repairs non-reciprocal xref pairs for specified feature if xrefs between subtypes are permitted and f...
bool apply(objects::CSeq_entry_Handle tse, ICommandProccessor *cmdProcessor, string title)
CRef< CCmdComposite > GetCommand()
static CRef< CCmdComposite > apply(CSeq_entry_Handle tse)
void AddCommand(IEditCommand &command)
static CIRef< IEditCommand > Create(const objects::CSeq_entry_Handle &seh, const vector< string > &quals)
static CRef< CCmdComposite > apply(objects::CSeq_entry_Handle seh)
CRef< CCmdComposite > GetCommand(objects::CSeq_entry_Handle tse)
void SetConstraint(const string &input)
static CRef< CCmdComposite > apply(wxWindow *parent, objects::CSeq_entry_Handle seh)
static CRef< CCmdComposite > apply(CSeq_entry_Handle tse)
void ApplyToAllAndDie(bool similar, bool nonfunctional, bool unverified)
static CRef< CCmdComposite > apply(CSeq_entry_Handle tse)
static CRef< CCmdComposite > apply(CSeq_entry_Handle tse)
static CRef< CCmdComposite > apply(CSeq_entry_Handle tse)
static CRef< CCmdComposite > apply(CSeq_entry_Handle tse)
static CRef< CCmdComposite > apply(CSeq_entry_Handle tse)
static CRef< CCmdComposite > apply(CSeq_entry_Handle tse)
static CRef< CCmdComposite > apply(objects::CSeq_entry_Handle seh)
static void apply(CSeq_entry_Handle tse, ICommandProccessor *cmdProcessor)
static CRef< CCmdComposite > apply(CSeq_entry_Handle tse)
static CRef< CCmdComposite > apply(const TConstScopedObjects &objects, bool to_known, bool adjust_features=false)
CRef< CCmdComposite > GetCommand(objects::CScope &scope, const objects::CBioseq_set &orig, bool &error)
CRef< CCmdComposite > GetCommand()
CRef< CCmdComposite > GetCommand(objects::CSeq_entry_Handle tse, bool capitalize_after_colon)
static void apply(CSeq_entry_Handle tse, ICommandProccessor *cmdProcessor, wxWindow *parent)
static void apply(CSeq_entry_Handle tse, ICommandProccessor *cmdProcessor, wxWindow *parent)
static CRef< CCmdComposite > GetCreateSeqHistFromTpaCommand(CSeq_entry_Handle tse, string &msg, double word_size, double expect_value)
CRef< CCmdComposite > GetCommand()
void SetToTime(const CTime &time, EPrecision prec=ePrecision_second)
virtual void SetRegistryPath(const string &path)
static CDiscrepancyDlg * OpenDiscrepancyDlg(EReportType type, CScope &scope, IWorkbench *workbench, const wxString &workDir=wxEmptyString)
std::function< void()> m_f
CDoOnIdleTask(std::function< void()> f)
virtual IAppTask::ETaskState x_Run()
override this function in derived classes
CRef< CCmdComposite > GetCommand(void)
CRef< CCmdComposite > GetCommand()
void SetEditorWindow(wxWindow *editorWindow)
void SetEditor(CIRef< IEditObject > editor)
virtual void SetWorkDir(const wxString &workDir)
virtual void SetUndoManager(ICommandProccessor *cmdProccessor)
static CRef< CCmdComposite > apply(const TConstScopedObjects &objects)
CRef< CCmdComposite > GetCommand()
CRef< CCmdComposite > GetRemoveOriginalIdCommand(void)
virtual CRef< CCmdComposite > GetCommand(void)
CRef< CCmdComposite > GetCommand()
static void GetInstance(wxWindow *parent, IWorkbench *workbench, bool autostart=false, wxWindowID id=10020, const wxPoint &pos=wxDefaultPosition, const wxSize &size=wxSize(600, 400), long style=wxDEFAULT_FRAME_STYLE)
CEvent - generic event implementation TODO TODO - Attachments.
static CRef< CCmdComposite > apply(objects::CSeq_entry_Handle tse)
static CRef< CCmdComposite > apply(objects::CSeq_entry_Handle tse)
void SaveTable(const wxString &workDir=wxEmptyString)
static void RemoveEmptyColsAndRows(CRef< CSeq_table > values_table)
static CRef< CCmdComposite > ExtendCDS(CSeq_entry_Handle seh)
CExtensionDeclaration - static declaration helper.
CRef< CCmdComposite > GetCommand()
void SetWorkDir(const wxString &workDir)
static wxString GetDialogFilter(EFileType fileType)
CRef< CCmdComposite > GetCommand(objects::CSeq_entry_Handle tse)
CRef< CCmdComposite > GetCommand()
static CRef< CCmdComposite > apply(CSeq_entry_Handle tse, bool before_punct=false, bool before_cap=false, bool before_num=false, bool rm_commas=false, bool keep_last=false)
CRef< CCmdComposite > GetCommand(objects::CSeq_entry_Handle tse)
static CRef< CCmdComposite > apply(CSeq_entry_Handle seh)
wxString GetWorkDir() const
CUndoManager & GetUndoManager()
virtual CScope * GetScope() const
@Gb_qual.hpp User-defined methods of the data storage class.
static CRef< CCmdComposite > GetCommand(CSeq_entry_Handle seh)
static CRef< CCmdComposite > GetCommand(CSeq_entry_Handle seh)
void SetText(const wxString &text)
void SetRefresh(IRefreshCntrl *refresh)
CRef< CCmdComposite > GetCommand(objects::CSeq_entry_Handle tse)
static CRef< CCmdComposite > apply(CSeq_entry_Handle tse)
static void apply(IWorkbench *wb, ICommandProccessor *cmd_processor, CScope &scope)
CRegistryWriteView GetWriteView(const string §ion)
get a read-write view at a particular level.
static CGuiRegistry & GetInstance()
access the application-wide singleton
CRegistryReadView GetReadView(const string §ion) const
get a read-only view at a particular level.
CIRef< IEditCommand > ImportFeaturesFromClipboard(const wxString &workDir)
CIRef< IEditCommand > ImportFeaturesFromFile(const wxString &workDir=wxEmptyString, const string &format_id=kEmptyStr)
bool apply(objects::CSeq_entry_Handle tse, ICommandProccessor *cmdProcessor, string title, wxWindow *parent)
static CRef< CCmdComposite > apply(wxWindow *parent, CScope &scope, bool history_takeover)
void RestoreFile(bool convert=false)
static CMacroFlowEditor * GetInstance(wxWindow *parent, CRef< IGuiCoreHelper > gui_core_helper, wxWindowID id=15000, const wxString &caption=_("Macro Flow Editor"), const wxPoint &pos=wxDefaultPosition, const wxSize &size=wxSize(1500, 1000), long style=wxCAPTION|wxRESIZE_BORDER|wxSYSTEM_MENU|wxMINIMIZE_BOX|wxMAXIMIZE_BOX|wxCLOSE_BOX)
void MakeTable(const objects::CSeq_entry_Handle &seh)
static CRef< CCmdComposite > apply(objects::CSeq_entry_Handle tse)
CRef< CCmdComposite > GetCommand(objects::CSeq_entry_Handle tse)
CRef< CObject > GetNewObject(CConstRef< CObject > obj)
CRef< CCmdComposite > GetReplacementCommand(CConstRef< CObject >, CRef< CObject > newobj, objects::CScope &scope, const string &cmd_name)
vector< CConstRef< CObject > > GetObjects(objects::CBioseq_Handle bsh)
bool SetVal(CObject &object, const string &val, objects::edit::EExistingText existing_text)
CRef< CCmdComposite > GetCommand()
virtual CRef< CCmdComposite > GetCommand(void)
CRef< CCmdComposite > GetCommand()
static CNcbiApplication * Instance(void)
Singleton method.
static bool AddObjects(IServiceLocator *serviceLocator, IObjectLoader::TObjects &objects, objects::CLoaderDescriptor *loader, CSelectProjectOptions &options, const map< string, string > &projectItemExtra=map< string, string >())
IObjectLoader * GetObjectLoader()
void SetManagers(vector< CIRef< IOpenObjectsPanelClient > > &managers)
CRef< CCmdComposite > GetCommand(objects::CSeq_entry_Handle tse)
CRef< CCmdComposite > GetCommand(objects::CSeq_entry_Handle tse)
static CRef< CCmdComposite > apply(CSeq_entry_Handle seh)
void SetFromFieldType(EFieldType field_type)
void SetToFieldType(EFieldType field_type)
CRef< CCmdComposite > GetCommand()
void PopulateModifierCombo()
void SetParams(SAutodefParams *params)
CProjectService - a service providing API for operations with Workspaces and Projects.
static CRef< CCmdComposite > GetPropagateDownCommand(objects::CSeq_entry_Handle seh)
@Pubdesc.hpp User-defined methods of the data storage class.
virtual void SetFilenames(const vector< wxString > &filenames)
initilize the manager with the given filenames
virtual void SetServiceLocator(IServiceLocator *srv_locator)
Sets / unsets Service Locator.
CAttribTableColumnIdPanel * x_GetColumnIdPanel()
void SetTopLevelEntry(CSeq_entry_Handle seq_entry)
void apply(objects::CSeq_entry_Handle tse, ICommandProccessor *cmdProcessor, string title)
static void DeltaSeqToRaw(objects::CSeq_entry_Handle tse, ICommandProccessor *cmdProcessor)
CRef< CCmdComposite > apply(string title)
static CRef< CCmdComposite > ByAssemblyGapFeatures(objects::CSeq_entry_Handle seh)
bool apply(objects::CSeq_entry_Handle tse, ICommandProccessor *cmdProcessor, string title)
static CRef< CCmdComposite > apply(CSeq_entry_Handle tse, bool update_genes)
class CRegistryReadView provides a nested hierarchical view at a particular key.
int GetInt(const string &key, int default_val=0) const
access a named key at this level, with no recursion
void Set(const string &key, int val)
access a named key at this level, with no recursion
bool apply(CSeq_entry_Handle tse, ICommandProccessor *cmdProcessor)
bool apply(CSeq_entry_Handle tse, ICommandProccessor *cmdProcessor, string title)
static void rm_dbxref_from_biosource_and_feats(objects::CSeq_entry_Handle seh, ICommandProccessor *cmd_processor)
static void rm_dbxref_from_biosource(objects::CSeq_entry_Handle seh, ICommandProccessor *cmd_processor)
static void rm_dbxref_from_feat(objects::CSeq_entry_Handle seh, objects::CSeqFeatData::E_Choice type, ICommandProccessor *cmd_processor)
static void RemoveDuplicateFeatures(objects::CSeq_entry_Handle tse, ICommandProccessor *processor)
static void RemoveAllFeatures_Ex(CSeq_entry_Handle seh, ICommandProccessor *processor)
static CRef< CCmdComposite > RemoveNonsuppressing(CSeq_entry_Handle seh)
static CRef< CCmdComposite > RemoveOrphanLocus_tag(CSeq_entry_Handle seh)
static CRef< CCmdComposite > RemoveAll(CSeq_entry_Handle seh)
static CRef< CCmdComposite > RemoveUnnecessary(CSeq_entry_Handle seh)
static CRef< CCmdComposite > RemoveOrphanLocus(CSeq_entry_Handle seh)
virtual CRef< CCmdComposite > GetCommand(void)
bool apply(CSeq_entry_Handle tse, ICommandProccessor *cmdProcessor, string title)
static CRef< CCmdComposite > JustRemoveProteins(objects::CSeq_entry_Handle seh)
static CRef< CCmdComposite > OrphanedProteins(objects::CSeq_entry_Handle seh)
static CRef< CCmdComposite > AndRenormalizeNucProtSets(objects::CSeq_entry_Handle seh)
bool apply(CSeq_entry_Handle tse, ICommandProccessor *cmdProcessor, string title, CSeq_annot::C_Data::E_Choice which)
static void ApplyToCSeq_entry(objects::CSeq_entry_Handle tse, CCmdComposite *composite, const vector< string > &names)
CRef< CCmdComposite > GetCommand()
static CRef< CCmdComposite > GetCommand(CSeq_entry_Handle tse)
CRef< CCmdComposite > GetRemoveOriginalIdCommand()
CRef< CCmdComposite > GetCommand()
static void remove_set(IWorkbench *wb)
static void remove_sets_from_set(IWorkbench *wb)
static void rm_taxon_from_feats_and_biosource(objects::CSeq_entry_Handle seh, ICommandProccessor *cmd_processor)
static void rm_taxon_from_feats(objects::CSeq_entry_Handle seh, ICommandProccessor *cmd_processor)
static CRef< CCmdComposite > apply(objects::CSeq_entry_Handle tse)
static void apply(objects::CSeq_entry_Handle tse, ICommandProccessor *cmdProcessor)
CRef< CCmdComposite > Apply(objects::CSeq_entry_Handle tse)
bool apply(objects::CSeq_entry_Handle tse, ICommandProccessor *cmdProcessor, string title)
static CRef< CCmdComposite > ReorderById(objects::CSeq_entry_Handle seh)
virtual bool Show(bool show=1)
Report opening events in dialogs used in the editing package.
@ eRetranslateCDSObeyStop
@ eRetranslateCDSChooseFrame
@ eRetranslateCDSIgnoreStopExceptEnd
static CRef< CCmdComposite > GetCommand(objects::CSeq_entry_Handle seh, string title, ERetranslateMethod method, string &error)
void apply(objects::CSeq_entry_Handle seh, ICommandProccessor *cmdProcessor, string title, ERetranslateMethod method)
void apply(CSeq_entry_Handle tse, ICommandProccessor *cmdProcessor, string title, bool update_seq, bool update_feat, bool update_graph)
CRef< CCmdComposite > GetCommand()
CProjectSelectOptions - describes how new Project Items shall be added to a workspace.
void Set_CreateNewProject(const string &folder=kEmptyStr)
CSelectionEvent CSelectionEvent is used for broadcasting selection between views.
bool AddObjectSelection(const CObject &obj)
virtual void GetActiveObjects(TConstScopedObjects &sel)
returns objects currently active in the application, this function should be used for obtaining argum...
virtual void Broadcast(CSelectionEvent &evt, ISelectionClient *source)
request broadcasting of the given event, Broadcast() notifies observers about changes in selection (d...
Declare the Package Object.
virtual const SwxMenuItemRec * GetMenuDef() const
simpler way to provide a static menu using macros defined earlier in this file
virtual string GetName() const
void x_UpdateValAuxFile(const string &fname) const
virtual void GetVersion(size_t &verMajor, size_t &verMinor, size_t &verPatch) const
virtual wxEvtHandler * GetEventHandler()
returns a handler which processes commands from the set above not needed for views
virtual vector< CUICommand * > GetCommands()
returns a vector of commands (takes ownership over CUICommand pointers)
virtual void SetWorkbench(IWorkbench *wb)
static EFeatureLocationAllowed AllowedFeatureLocation(ESubtype subtype)
@ eFeatureLocationAllowed_NucOnly
@ eFeatureLocationAllowed_ProtOnly
@ eFeatureLocationAllowed_Any
static CTempString SubtypeValueToName(ESubtype eSubtype)
Turns a ESubtype into its string value which is NOT necessarily related to the identifier of the enum...
void UpdateSingleSequence_Ext(IWorkbench *workbench, const objects::CSeq_entry_Handle &tse, ICommandProccessor *cmdProcessor) const
void SetSeqUpdateType(ESeqUpdateType update_type)
void UpdateMultipleSequences(IWorkbench *workbench, const objects::CSeq_entry_Handle &tse, ICommandProccessor *cmdProcessor)
void UpdateSingleSequence(IWorkbench *workbench, const objects::CSeq_entry_Handle &tse, ICommandProccessor *cmdProcessor) const
CRef< CSeq_loc > CreateRowSeq_loc(TDim row) const
TDim CheckNumRows(void) const
Validatiors.
const CSeq_id & GetSeq_id(TDim row) const
Get seq-id (the first one if segments have different ids).
@Seq_descr.hpp User-defined methods of the data storage class.
namespace ncbi::objects::
CConstRef< CSeq_submit > m_SeqSubmit
void FocusClear(wxCommandEvent &event)
void ConvertAuthorToConstortiumWhereLastName(wxCommandEvent &event)
void CreateDescriptor(wxCommandEvent &event)
void FixCapitalizationAffiliation(wxCommandEvent &event)
void ApplyStructuredCommentField(wxCommandEvent &evt)
void RemoveUnverified(wxCommandEvent &event)
void AddKeywordTPA_inferential(wxCommandEvent &event)
void Discrepancy(wxCommandEvent &event)
void CorrectGenes(wxCommandEvent &event)
void RemoveSeqAnnotAlign(wxCommandEvent &event)
void RemoveUnnecessaryExceptions(wxCommandEvent &event)
void RawSeqToDeltaByLoc(wxCommandEvent &event)
void RemoveDuplicateStructuredComments(wxCommandEvent &event)
void TruncateCDS(wxCommandEvent &event)
void CountryFixupNoCap(wxCommandEvent &event)
ICommandProccessor * m_CmdProccessor
void ConvertGapsBySize(wxCommandEvent &event)
void RemoveStructuredCommentKeyword(wxCommandEvent &event)
void EditSelectedGaps(wxCommandEvent &event)
void ConvertDescToFeatPub(wxCommandEvent &event)
void ExpandGaps(wxCommandEvent &event)
void AddRNA(wxCommandEvent &event)
void RemoveGenbankSeqIdsFromAll(wxCommandEvent &event)
void BioseqOnlyRevComp(wxCommandEvent &event)
void ExtendPartialsAll(wxCommandEvent &evt)
void EditSeqEndsWithAlign(wxCommandEvent &event)
void VectorTrim(wxCommandEvent &event)
void EditHistory(wxCommandEvent &event)
void PT_Cleanup(wxCommandEvent &event)
void ImportFeatureTableClipboard(wxCommandEvent &event)
void ConvertAuthorToConsortiumAll(wxCommandEvent &event)
void CreateSpecificStructuredComment(wxCommandEvent &event)
void LabelRna(wxCommandEvent &event)
void ExonFromCds(wxCommandEvent &evt)
void RemoveAllFeatures(wxCommandEvent &event)
void RemAllProtTitles(wxCommandEvent &event)
void TrimOrganismNames(wxCommandEvent &event)
void StripAuthorSuffixes(wxCommandEvent &event)
void RemoveGiSeqIdsFromAll(wxCommandEvent &event)
void RemoveDescriptors(wxCommandEvent &evt)
void CreateProteinId(wxCommandEvent &event)
void AddKeywordTPA_assembly(wxCommandEvent &event)
void PackageFeaturesOnParts(wxCommandEvent &event)
void CheckForMixedStrands(wxCommandEvent &event)
void AddKeywordGDS(wxCommandEvent &event)
void LocalToGeneralId(wxCommandEvent &event)
void ConvertAccessionToLocalIdsNuc(wxCommandEvent &event)
void RemoveAllPublications(wxCommandEvent &event)
void AddGenomeAssemblyStructuredComment(wxCommandEvent &event)
void Autodef(wxCommandEvent &event)
void BarcodeTool(wxCommandEvent &event)
void ConvertFeatToDescComment(wxCommandEvent &event)
void BulkEdit(wxCommandEvent &event)
void FixUsaAndStates(wxCommandEvent &event)
void RemoveDupFeatsWithOptions(wxCommandEvent &evt)
void ConvertSetType(wxCommandEvent &event)
void ExplodeRNAFeats(wxCommandEvent &event)
void Validate(wxCommandEvent &event)
void TestDialogView(wxCommandEvent &event)
void RemoveSeqAnnotGraph(wxCommandEvent &event)
void CDSGeneRangeErrorRestore(wxCommandEvent &event)
void RemoveLocalSeqIdsFromProt(wxCommandEvent &event)
void BulkRnaEdit(wxCommandEvent &event)
void UnculTaxTool(wxCommandEvent &event)
void ConvertDescToFeatSource(wxCommandEvent &event)
void RemoveGenomeProjectsDB(wxCommandEvent &event)
void BulkApplyGenCode(wxCommandEvent &event)
void DescriptorPropagateDown(wxCommandEvent &event)
void TestFormView(wxCommandEvent &event)
void Oncaller(wxCommandEvent &event)
void ConsolidateLikeModsWithSemicolon(wxCommandEvent &event)
void x_CacheSelectedLocations()
void MakeBadSpecificHostTable(wxCommandEvent &event)
void RemoveDbXrefsBioSourceAndFeats(wxCommandEvent &evt)
void PropagateDBLink(wxCommandEvent &event)
void Duplicate(wxCommandEvent &event)
void SwapPrimerSeqName(wxCommandEvent &event)
void ReorderStructuredComment(wxCommandEvent &event)
void ResolveIntersectingFeats(wxCommandEvent &evt)
void ApplyRNA_ITS(wxCommandEvent &event)
void GenusSpeciesFixup(wxCommandEvent &event)
void FixStructuredVouchers(wxCommandEvent &event)
void CountryFixupCap(wxCommandEvent &event)
TConstScopedObjects m_SelObjects
void RemoveAllGeneXrefs(wxCommandEvent &event)
void CombineSelectedGenesIntoPseudogenes(wxCommandEvent &evt)
void SelectTarget(wxCommandEvent &event)
void EditFeature(wxCommandEvent &evt)
void AddMicrosatellite(wxCommandEvent &event)
void AddAssemblyStructuredComment(wxCommandEvent &event)
void AdjustForConsensusSpliceSites(wxCommandEvent &event)
void CreateFeature(wxCommandEvent &event)
void LowercaseQuals(wxCommandEvent &event)
void AddKeywordTPA_specialistdb(wxCommandEvent &event)
void RmCultureNotes(wxCommandEvent &event)
void ConvertFeatToDescSource(wxCommandEvent &event)
void UniqifyFeatureIds(wxCommandEvent &event)
void SuspectProductRulesEditor(wxCommandEvent &event)
void ConvertDescToFeatComment(wxCommandEvent &event)
void SequesterSets(wxCommandEvent &event)
void IsObjectSelected(wxUpdateUIEvent &event)
void FixProductNamesOptions(wxCommandEvent &event)
void RemoveDbXrefsRNA(wxCommandEvent &evt)
void RemoveDbXrefsBioSource(wxCommandEvent &evt)
CSeq_entry_Handle m_TopSeqEntry
void CreateSeqHistForTpaDetailed(wxCommandEvent &event)
void FixForTransSplicing(wxCommandEvent &evt)
void RemoveLocalSeqIdsFromNuc(wxCommandEvent &event)
void ConvertSelectedGapsToKnown(wxCommandEvent &event)
void LoadSecondaryAccessionsHistoryTakeover(wxCommandEvent &event)
void RemoveProteinsAndRenormalizeNucProtSets(wxCommandEvent &event)
void EditSequenceEnds(wxCommandEvent &event)
void ExportTable(wxCommandEvent &event)
void ConvertFeatures(wxCommandEvent &event)
void ConvertDescToSecondProtName(wxCommandEvent &event)
void AddGlobalCodeBreak(wxCommandEvent &event)
void AddControlRegion(wxCommandEvent &event)
void DeleteSpecificStructuredComment(wxCommandEvent &evt)
void RemoveDuplicateGoTerms(wxCommandEvent &evt)
void SplitDblinkQuals(wxCommandEvent &evt)
void RemoveOrphanLocusGeneXrefs(wxCommandEvent &event)
void ConvertCdsWithInternalStopToMiscFeat(wxCommandEvent &evt)
void RemoveSequencesFromAlignments(wxCommandEvent &event)
void RemoveGeneralId(wxCommandEvent &event)
void RemoveTaxonFeatsAndBioSource(wxCommandEvent &event)
void RemoveTextInsideStr(wxCommandEvent &event)
void WrongQualsToNote(wxCommandEvent &event)
void TrimNsRich(wxCommandEvent &event)
void RemoveGeneXrefs(wxCommandEvent &event)
void ConvertAccessionToLocalIdsProt(wxCommandEvent &event)
void EditStructuredCommentPrefixSuffix(wxCommandEvent &evt)
void UpdateSingleSequence(wxCommandEvent &event)
void JustRemoveProteins(wxCommandEvent &event)
void AssignFeatureIds(wxCommandEvent &event)
void ConvertCdsWithInternalStopToMiscFeatUnverified(wxCommandEvent &evt)
void AddStrainSerotypeToNames(wxCommandEvent &event)
void FixCapitalizationAuthors(wxCommandEvent &event)
void RemoveSet(wxCommandEvent &event)
void RemoveSequences(wxCommandEvent &event)
void ViewSortedProteins(wxCommandEvent &event)
void ExportStructuredCommentsTable(wxCommandEvent &evt)
void ExonFromMRNA(wxCommandEvent &evt)
void CompareWithBiosample(wxCommandEvent &event)
void CDSGeneRangeErrorSuppress(wxCommandEvent &event)
void CreateSeqHistForTpa(wxCommandEvent &event)
void ShowFeatureTable(wxCommandEvent &event)
void UpdateTargetedLocusName(wxCommandEvent &evt)
void tRNAFromGene(wxCommandEvent &evt)
void GroupExplode(wxCommandEvent &event)
void BioseqFeatsRevComp(wxCommandEvent &event)
void FixCapitalizationCountry(wxCommandEvent &event)
void GeneFromOtherFeat(wxCommandEvent &evt)
void FixupOrganismNames(wxCommandEvent &event)
void x_OnSelectionEvent(CEvent *event)
void SplitPrimerSets(wxCommandEvent &event)
void RemoveSegGaps(wxCommandEvent &event)
void TruncateAuthorMiddleInitials(wxCommandEvent &event)
void LoadSecondaryAccessions(wxCommandEvent &event)
void RmWrongQuals(wxCommandEvent &event)
void EditCdsFrame(wxCommandEvent &event)
void FindASN1(wxCommandEvent &evt)
void RemoveCddFeatDbxref(wxCommandEvent &event)
void DiscrepancyList(wxCommandEvent &event)
void TaxFixCleanup(wxCommandEvent &event)
void IsHupIdEnabled(wxUpdateUIEvent &event)
void FuseFeatures(wxCommandEvent &evt)
void RemoveUnpublishedPublications(wxCommandEvent &event)
void AddCitSubForUpdate(wxCommandEvent &event)
void AppendModToOrg(wxCommandEvent &event)
void BulkMiscFeatEdit(wxCommandEvent &event)
void RemoveOrphanLocus_tagGeneXrefs(wxCommandEvent &event)
void RawSeqToDeltaByAssemblyGapFeatures(wxCommandEvent &event)
void ConvertAccessionToLocalIdsAll(wxCommandEvent &event)
void TableReader(wxCommandEvent &event)
void AddCDS(wxCommandEvent &event)
void NormalizeGeneQuals(wxCommandEvent &event)
void PrefixDefLines(wxCommandEvent &event)
void RawSeqToDeltaByNs(wxCommandEvent &event)
void DisableStrainForwarding(wxCommandEvent &event)
void IndexerTypeSelection(wxCommandEvent &event)
void UpdateMultipleSequences(wxCommandEvent &event)
void RemoveOrphanedProteins(wxCommandEvent &event)
void x_SetUpTSEandUnDoManager(IWorkbench *wb)
void RestoreRNAediting(wxCommandEvent &event)
void RmIllegalQuals(wxCommandEvent &event)
void RestoreLocalFile(wxCommandEvent &event)
void ConvertFeatsToGaps(wxCommandEvent &event)
vector< CRef< CSeq_loc > > m_CachedSelectedLocations
CSeq_align::TDim x_FindRelevantAlignRow(const CSeq_align &align, const CSeq_id *id)
CRef< CProjectItem > CreateSeqSubmit(CRef< CGBProjectHandle > ph, CRef< CProjectItem > pi, CIRef< CProjectService > srv)
void TableReaderClipboard(wxCommandEvent &event)
void Mega(wxCommandEvent &event)
void ExonFromTRNA(wxCommandEvent &evt)
void SplitQualifiersAtCommas(wxCommandEvent &event)
void EditingButtons(wxCommandEvent &event)
void GeneXrefsFromFeats(wxCommandEvent &event)
void ReorderSeqById(wxCommandEvent &event)
void ConvertSelectedGapsToUnknown(wxCommandEvent &event)
void SplitCDSwithTooManyXs(wxCommandEvent &event)
void ChangeToGenomicDna()
void ParseCollectionDateDayFirst(wxCommandEvent &event)
void EditSequence(wxCommandEvent &event)
void SpecificHostCleanup(wxCommandEvent &event)
void RemoveTaxonFeats(wxCommandEvent &event)
void PrefixAuthWithTax(wxCommandEvent &event)
void CreateRegulatory(wxCommandEvent &evt)
void ImportFeatureTable(wxCommandEvent &event)
void ConvertAccessionToLocalIdsName(wxCommandEvent &event)
void RemoveUnreviewed(wxCommandEvent &event)
void SortUniqueCountTree(wxCommandEvent &event)
void ExtendPartialsConstr(wxCommandEvent &evt)
void AddSecondary(wxCommandEvent &event)
void MergePrimerSets(wxCommandEvent &event)
void FixCapitalizationAll(wxCommandEvent &event)
void ConvertToDelayedGenProdSetQuals(wxCommandEvent &event)
void RemoveSeqHistAssembly(wxCommandEvent &event)
void AddKeywordWithConstraint(wxCommandEvent &event)
void RemoveDbXrefsAllFeats(wxCommandEvent &evt)
void RemoveInPressPublications(wxCommandEvent &event)
void AddFluComments(wxCommandEvent &event)
CSequenceEditingEventHandler(IWorkbench *wb=NULL)
void SetGlobalRefGeneStatus(wxCommandEvent &event)
void RemoveNonsuppressingGeneXrefs(wxCommandEvent &event)
void DeltaSeqToRaw(wxCommandEvent &event)
void ConvertDescToFeatPubConstraint(wxCommandEvent &event)
void ClearNomenclature(wxCommandEvent &event)
void AddDefLine(wxCommandEvent &evt)
void FixCapitalizationTitles(wxCommandEvent &event)
void Submitter(wxCommandEvent &event)
void AddNamedrRNA(wxCommandEvent &event)
void EnableHupId(wxCommandEvent &event)
void BulkGeneEdit(wxCommandEvent &event)
void RemoveBankitComment(wxCommandEvent &event)
void MolInfoEdit(wxCommandEvent &event)
void RemovePublishedPublications(wxCommandEvent &event)
void RemoveEmptyGenomeProjectsDB(wxCommandEvent &event)
void RemoveSetsFromSet(wxCommandEvent &event)
void UpdateAlign(wxCommandEvent &event)
void RemoveFeatures(wxCommandEvent &evt)
void ListMacroButtonNames(wxCommandEvent &event)
void EditPubs(wxCommandEvent &event)
void RemoveDupFeats(wxCommandEvent &evt)
void AddSet(wxCommandEvent &event)
void LoadSettings(const string ®path, wxWindow *dlg)
void ConsolidateLikeModsWithoutSemicolon(wxCommandEvent &event)
void EnableStrainForwarding(wxCommandEvent &event)
void ReverseAuthorNames(wxCommandEvent &event)
vector< CRef< CSeq_loc > > & x_GetSelectedLocations()
void TrimJunkInPrimerSeqs(wxCommandEvent &event)
void ApplyFBOL(wxCommandEvent &event)
void AdjustCDSForIntrons(wxCommandEvent &event)
void ConvertSecondProtNameToDesc(wxCommandEvent &event)
void ConvertCdsWithGapsToMiscFeat(wxCommandEvent &evt)
void ReassignFeatureIds(wxCommandEvent &event)
void ConvertBadCdsAndRnaToMiscFeat(wxCommandEvent &event)
void ApplyEditConvertRemove(wxCommandEvent &event)
void RecomputeIntervals(wxCommandEvent &event)
void CountryConflict(wxCommandEvent &event)
void SegregateSets(wxCommandEvent &event)
void Help(wxCommandEvent &evt)
void RemoveUnindexedFeatures(wxCommandEvent &event)
void LinkmRNACDS(wxCommandEvent &event)
void SelectFeature(wxCommandEvent &event)
void BulkCdsEdit(wxCommandEvent &event)
void RemoveLocalSeqIdsFromAll(wxCommandEvent &event)
void AdjustrRNAForIntrons(wxCommandEvent &event)
void GlobalPubmedIdLookup(wxCommandEvent &event)
void ShowAfter(wxWindow *dlg)
void ClearKeywords(wxCommandEvent &event)
void ExtendCDS(wxCommandEvent &event)
void MacroEditor(wxCommandEvent &event)
void ParseCollectionDateMonthFirst(wxCommandEvent &event)
void FixNonReciprocalLinks(wxCommandEvent &event)
void ParseComment(wxCommandEvent &event)
void PrepareSeqSubmit(wxCommandEvent &event)
void ResynchronizePartials(wxCommandEvent &event)
void SaveASN1File(wxCommandEvent &event)
void AddTranslExcept(wxCommandEvent &event)
void CdsFromGeneMrnaExon(wxCommandEvent &evt)
void ConvertRptUnitRangeToLoc(wxCommandEvent &event)
void RemoveDbXrefsGenes(wxCommandEvent &evt)
void AddSequences(wxCommandEvent &event)
void ImportGFF3(wxCommandEvent &event)
void RemoveDbXrefsCDS(wxCommandEvent &evt)
void SortUniqueCount(wxCommandEvent &event)
void SaveDescriptors(wxCommandEvent &event)
void CdsToMatPeptide(wxCommandEvent &event)
void CorrectIntervalOrder(wxCommandEvent &event)
~CSequenceEditingEventHandler()
void AdjusttRNAForIntrons(wxCommandEvent &event)
void SaveSubmissionFile(wxCommandEvent &event)
void RemoveCollidingPublications(wxCommandEvent &event)
void RemoveEmptyStructuredComments(wxCommandEvent &event)
void ModifyStructuredComment(wxCommandEvent &event)
void FixProductNamesDefault(wxCommandEvent &event)
void AddStructuredCommentKeyword(wxCommandEvent &event)
void GeneralToLocalId(wxCommandEvent &event)
void GeneFeatFromXrefs(wxCommandEvent &event)
void RemoveUnnecessaryGeneXrefs(wxCommandEvent &event)
void LoadStructComments(wxCommandEvent &event)
void AddOtherFeature(wxCommandEvent &event)
void ConvertFeatToDescPub(wxCommandEvent &event)
void ParseText(wxCommandEvent &event)
void RemoveGenbankSeqIdsFromProt(wxCommandEvent &event)
void CreateLocusTagGene(wxCommandEvent &event)
void MergeBiosources(wxCommandEvent &event)
void WithdrawSequences(wxCommandEvent &event)
void SaveSettings(const string ®path, wxWindow *dlg) const
void EditSeqId(wxCommandEvent &event)
void FocusSet(wxCommandEvent &event)
void SetTransgSrcDesc(wxCommandEvent &event)
void ClearFeatureIds(wxCommandEvent &event)
void ConvertCdsWithInternalStopToMiscFeatViral(wxCommandEvent &evt)
void ConvertComment(wxCommandEvent &event)
void ItemAction(wxCommandEvent &event, CRef< CItem > item, const string &title)
void RemoveAuthorConsortiums(wxCommandEvent &event)
void AlignmentAssistant(wxCommandEvent &event)
void FixiInPrimerSeqs(wxCommandEvent &event)
void ConvertCdsToMiscFeat(wxCommandEvent &evt)
void CreateGapFeats(wxCommandEvent &event)
void FuseJoinsInLocs(wxCommandEvent &event)
void ConvertBadInference(wxCommandEvent &event)
void AdjustmRNAForIntrons(wxCommandEvent &event)
void TrimNsTerminal(wxCommandEvent &event)
void SuppressGenes(wxCommandEvent &evt)
void RemProtTitles(wxCommandEvent &event)
void CompareWithBiosampleFirstOnly(wxCommandEvent &event)
void AddKeywordTPA_experimental(wxCommandEvent &event)
void AddLinkageToGaps(wxCommandEvent &event)
void ParseStrainSerotypeFromNames(wxCommandEvent &event)
void RecomputeIntervalsAndUpdateGenes(wxCommandEvent &event)
void ExtendCDSToStop(wxCommandEvent &event)
void CorrectRNAStrand(wxCommandEvent &event)
void RevCompSequences(wxCommandEvent &event)
void AdjustFeaturesForGaps(wxCommandEvent &event)
void RemoveSeqIdNamesFromProtFeats(wxCommandEvent &event)
void CombineAdjacentGaps(wxCommandEvent &event)
void FixOrgModInstitution(wxCommandEvent &event)
void LatLonTool(wxCommandEvent &event)
void RemoveSeqAnnotIds(wxCommandEvent &event)
void FarPointerSeq(wxCommandEvent &event)
CRef< CSeq_loc > GetFeatureLocation(CSeqFeatData::ESubtype subtype)
bool x_IsLocationOkForFeatCmd(CSeqFeatData::ESubtype subtype, CRef< CSeq_loc > loc)
void mRNAFromGeneCdsExon(wxCommandEvent &evt)
void RemoveAllStructuredComments(wxCommandEvent &event)
void SplitStructuredCollections(wxCommandEvent &event)
void IllegalQualsToNote(wxCommandEvent &event)
void ApplyIndexerComments(wxCommandEvent &evt)
void Update_Replaced_EC_numbers(wxCommandEvent &event)
void IsLocationSelected(wxUpdateUIEvent &event)
void RetranslateCDS(wxCommandEvent &event)
void SetTopLevelBioseqSetClass()
void AddFeatureBetween(wxCommandEvent &event)
CSequinDesktopViewFactory.
CRef< CCmdComposite > GetCommand()
static CIRef< IProjectView > CreateView(const string &viewName, FWindowFactory widgetFactory, IServiceLocator *serviceLocator, TConstScopedObjects &objects, ISimpleProjectViewCmdHandler *cmdHandler=0, bool bFloat=false)
static CRef< CCmdComposite > apply(objects::CSeq_entry_Handle tse)
CRef< CCmdComposite > GetCommand(objects::CSeq_entry_Handle tse)
CRef< CCmdComposite > GetCommand(objects::CSeq_entry_Handle tse, const string &title)
@ eCommandInfluenza_fixup
@ eCommandTrimOrganismNames
@ eCommandSplitQualsAtCommas
@ eCommandSplitStructuredCollections
@ eCommandInfluenza_parse
static CSubmissionWizard * GetInstance(wxWindow *parent, IWorkbench *wb, CRef< CGBProjectHandle > ph, CRef< CProjectItem > pi, wxWindowID id=ID_CSUBMISSIONWIZARD, const wxString &caption=_("Submission Wizard"), const wxPoint &pos=wxDefaultPosition, const wxSize &size=wxSize(650, 548), long style=wxCAPTION|wxRESIZE_BORDER|wxSYSTEM_MENU|wxMINIMIZE_BOX|wxMAXIMIZE_BOX|wxCLOSE_BOX)
CRef< CCmdComposite > GetCommand(objects::CSeq_entry_Handle tse)
static wxString ResolvePath(const wxString &path, const wxString &rel_name)
Utility function to hide the platform specifics of locating our standard directories and files.
static wxString ResolvePathExisting(const wxString &path, const wxString &delim=wxT(","))
Utility function to hide the platform specifics of locating our standard directories.
static void SetDoInference(objects::CUser_object ¶ms, bool val)
static void SetDoAlignment(objects::CUser_object ¶ms, bool val)
static wxWindow * CreateDialog(wxWindow *parent)
static wxWindow * CreateForm(wxWindow *parent)
bool apply(CSeq_entry_Handle tse, ICommandProccessor *cmdProcessor, string title, wxWindow *parent, const wxString &workDir, const CSequenceAmbigTrimmer::TTrimRuleVec &trim_rules=CSequenceAmbigTrimmer::GetDefaultTrimRules())
CRef< CCmdComposite > GetCommand()
bool apply(objects::CSeq_entry_Handle tse, ICommandProccessor *cmdProcessor, string title)
void apply(objects::CSeq_entry_Handle tse, ICommandProccessor *cmdProcessor, wxWindow *parent)
void apply(CSeq_entry_Handle tse, ICommandProccessor *cmdProcessor, string title)
const CUser_field & GetField(const string &str, const string &delim=".", NStr::ECase use_case=NStr::eCase) const
Access a named field in this user field.
void SetObjectType(EObjectType obj_type)
@ eObjectType_StructuredComment
static void GetInstance(wxWindow *parent, IWorkbench *workbench, CRef< objects::CUser_object > params, wxWindowID id=17000, const wxString &caption=_("Validation Errors"), const wxPoint &pos=wxDefaultPosition, const wxSize &size=wxSize(900, 600), long style=wxCAPTION|wxRESIZE_BORDER|wxSYSTEM_MENU|wxCLOSE_BOX|wxMINIMIZE_BOX|wxMAXIMIZE_BOX|wxTAB_TRAVERSAL)
CRef< CCmdComposite > GetCommand()
vector< string > GetNames()
CWorkbench - default implementation of IWorkbench.
static void RmWrongQuals(CSeq_entry_Handle seh, ICommandProccessor *cmd_processor)
static void IllegalQualsToNote(CSeq_entry_Handle seh, ICommandProccessor *cmd_processor)
static void WrongQualsToNote(CSeq_entry_Handle seh, ICommandProccessor *cmd_processor)
static void RmIllegalQuals(CSeq_entry_Handle seh, ICommandProccessor *cmd_processor)
void LinkByOverlap(ICommandProccessor *cmdProcessor)
void CompleteHalfFormedXrefPairs(ICommandProccessor *cmdProcessor)
void LinkSelectedFeatures(TConstScopedObjects &objects, ICommandProccessor *cmdProcessor)
void LinkByLabelAndLocation(ICommandProccessor *cmdProcessor)
void LinkByLabel(ICommandProccessor *cmdProcessor)
void LinkByProduct(ICommandProccessor *cmdProcessor)
vector< CConstRef< CObject > > GetReferencedmRNA_CDS(TConstScopedObjects &objects)
returns the pair of cross-referenced mRNA and CDS features, when one of them is selected
Undo/Redo interface for editing operations.
virtual void Execute(IEditCommand *command, wxWindow *window=0)=0
virtual bool PreExecute()=0
virtual bool PostExecute()=0
virtual string GetFileLoaderId() const =0
class IProjectView defines the abstract interface for views observing projects.
CRef< CCmdComposite > GetCommand(objects::CSeq_entry_Handle tse, CConstRef< objects::CSeq_submit > submit=CConstRef< objects::CSeq_submit >(nullptr))
CRef< CCmdComposite > GetCommand(objects::CSeq_entry_Handle tse)
IUICommandContributor - contributes commands to the common command space.
IWorkbench is the central interface in the application framework.
unsigned int m_MiscFeatRule
CRef< CCmdComposite > GetCommand()
void SetWorkDir(const wxString &workDir)
static void Normalize(CPub &pub)
std::ofstream out("events_result.xml")
main entry point for tests
CRef< CCmdComposite > CreateControlRegion(objects::CSeq_entry_Handle entry)
CRef< CCmdComposite > AddNamedrRna(objects::CSeq_entry_Handle entry, string rna_name, bool ispartial5, bool ispartial3)
CRef< CCmdComposite > CreateMicrosatellite(objects::CSeq_entry_Handle entry)
const char * kStructCommDBName
const char * kGenbankBlockKeyword
const char * kSequenceIdColLabel
static void cleanup(void)
static const struct name_t names[]
static DLIST_TYPE *DLIST_NAME() first(DLIST_LIST_TYPE *list)
void GetGBenchVersionInfo(size_t &ver_major, size_t &ver_minor, size_t &ver_patch_level, CTime &build_date)
CRange< Position > Map(const CRange< Position > &target, const CRange< Position > &range)
CNcbiEnvironment & SetEnvironment(void)
Get a non-const copy of the application's cached environment.
#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 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).
void Info(CExceptionArgs_Base &args)
virtual bool Remove(TRemoveFlags flags=eRecursive) const
Remove a directory entry.
bool IsFile(EFollowLinks follow=eFollowLinks) const
Check whether a directory entry is a file.
virtual bool Exists(void) const
Check existence of file.
@ eIfExists_ReturnCurrent
Return reference to current stream, create new one if it does not exists yet.
@ eNoRemove
Do not remove file.
virtual wxFrame * GetMainWindow()=0
returns a pointer to the main application frame window
CIRef< T > GetServiceByType()
retrieves a typed reference to a service, the name of C++ type is used as the name of the service.
#define NCBI_PACKAGEENTRYPOINT_EXPORT
void AddTask(IAppTask &task)
Add a task to the queue.
virtual wxFrame * GetMainWindow()
returns a pointer to the main application frame window
ETaskState
List of task states defining the task management FSM.
@ eCompleted
successfully finished
objects::CSeq_entry_Handle GetTopSeqEntryFromScopedObject(SConstScopedObject &obj)
static bool IsVDBAccession(const string &acc)
Check if string starts with ("SRA", "SRR", "DRR", "ERR")
objects::CSeq_entry_Handle GetSeqEntryForPubdesc(CRef< objects::CScope > scope, const objects::CPubdesc &pubdesc)
virtual void RemoveListener(CEventHandler *listener)
Remove a listener.
static void GetLabel(const CObject &obj, string *label, ELabelType type=eDefault)
void GetExtensionAsInterface(const string &ext_point_id, vector< CIRef< I > > &interfaces)
GetExtensionAsInterface() is a helper function that extracts all extensions implementing the specifie...
void NcbiErrorBox(const string &message, const string &title="Error")
specialized Message Box function for reporting critical errors
EDialogReturnValue NcbiMessageBox(const string &message, TDialogType type=eDialog_Ok, EDialogIcon icon=eIcon_Exclamation, const string &title="Error", EDialogTextMode text_mode=eRaw)
#define END_EVENT_MAP()
Ends definition of Command Map.
#define BEGIN_EVENT_MAP(thisClass, baseClass)
Begins definition of Command Map for CEventHandler-derived class.
virtual void AddListener(CEventHandler *listener, int pool_name=ePool_Default)
Add a listener.
static Uint8 GetRemoteFileSize(const string &url)
Returns the size of the remote file.
vector< SConstScopedObject > TConstScopedObjects
virtual void Assign(const CSerialObject &source, ESerialRecursionMode how=eRecursive)
Set object to copy of another one.
#define MSerial_AsnText
I/O stream manipulators –.
CNcbiIstream & ContentStream(void) const
Get input stream.
int GetStatusCode(void) const
Get response status code.
bool CanGetContentStream(void) const
Check if the requested content can be read from the content stream.
CHttpResponse g_HttpGet(const CUrl &url, const CHttpParam ¶m)
Shortcut for GET request.
string GetSeqIdString(bool with_version=false) const
Return seqid string with optional version for text seqid type.
virtual void Assign(const CSerialObject &source, ESerialRecursionMode how=eRecursive)
Optimized implementation of CSerialObject::Assign, which is not so efficient.
CConstRef< CSeq_id > GetSeqId(void) const
bool Match(const CSeq_id &sid2) const
Match() - TRUE if SeqIds are equivalent.
@ fParse_Default
By default in ParseIDs and IsValid, allow raw parsable non-numeric accessions and plausible local acc...
@ eContent
Untagged human-readable accession or the like.
virtual void Assign(const CSerialObject &source, ESerialRecursionMode how=eRecursive)
Override Assign() to incorporate cache invalidation.
TSeqPos GetStart(ESeqLocExtremes ext) const
Return start and stop positions of the seq-loc.
void SetPartialStart(bool val, ESeqLocExtremes ext)
set / remove e_Lim fuzz on start or stop (lt/gt - indicating partial interval)
void SetPartialStop(bool val, ESeqLocExtremes ext)
bool AdjustFeaturePartialFlagForLocation(CSeq_feat &new_feat)
AdjustFeaturePartialFlagForLocation A function to ensure that Seq-feat.partial is set if either end o...
CMappedFeat GetBestOverlappingFeat(const CMappedFeat &feat, CSeqFeatData::ESubtype need_subtype, sequence::EOverlapType overlap_type, CFeatTree *feat_tree=0, const SAnnotSelector *base_sel=0)
const CSeq_id & GetId(const CSeq_loc &loc, CScope *scope)
If all CSeq_ids embedded in CSeq_loc refer to the same CBioseq, returns the first CSeq_id found,...
sequence::ECompare Compare(const CSeq_loc &loc1, const CSeq_loc &loc2, CScope *scope)
Returns the sequence::ECompare containment relationship between CSeq_locs.
CRef< CSeq_loc > Seq_loc_Merge(const CSeq_loc &loc, CSeq_loc::TOpFlags flags, CScope *scope)
Merge ranges in the seq-loc.
@ eOverlap_Simple
any overlap of extremes
@ eOverlap_Contained
2nd contained within 1st extremes
CConstRef< CSeq_feat > GetOverlappingCDS(const CSeq_loc &loc, CScope &scope)
vector< STrimRule > TTrimRuleVec
Multiple STrimRules are allowed, which are applied from smallest bases_to_check to largest bases_to_c...
@ eGetId_Best
return the "best" gi (uses FindBestScore(), with CSeq_id::CalculateScore() as the score function
static CRef< CObjectManager > GetInstance(void)
Return the existing object manager or create one.
CSeq_entry_Handle AddTopLevelSeqEntry(CSeq_entry &top_entry, TPriority pri=kPriority_Default, EExist action=eExist_Default)
Add seq_entry, default priority is higher than for defaults or loaders Add object to the score with p...
CSeq_entry_Handle GetSeq_entryHandle(CDataLoader *loader, const TBlobId &blob_id, EMissing action=eMissing_Default)
Get Seq-entry handle by its blob-id, with possible loading.
CBioseq_Handle GetBioseqHandle(const CSeq_id &id)
Get bioseq handle by seq-id.
void AddDefaults(TPriority pri=kPriority_Default)
Add default data loaders from object manager.
void GetAllTSEs(TTSE_Handles &tses, enum ETSEKind kind=eManualTSEs)
CSeq_feat_Handle GetSeq_featHandle(const CSeq_feat &feat, EMissing action=eMissing_Default)
vector< CSeq_entry_Handle > TTSE_Handles
const CSeq_annot_Handle & GetAnnot(void) const
Get handle to seq-annot for this feature.
CSeq_entry_Handle GetSeq_entry_Handle(void) const
Get parent Seq-entry handle.
TSet ConvertSeqToSet(TClass set_class=CBioseq_set::eClass_not_set) const
Convert the entry from Bioseq to Bioseq-set.
CConstRef< CBioseq_set > GetCompleteBioseq_set(void) const
Return the complete bioseq-set object.
CSeq_entry_Handle GetParentEntry(void) const
Get parent Seq-entry handle.
CSeq_entry_Handle GetTopLevelEntry(void) const
Get top level Seq-entry handle.
TInst_Length GetInst_Length(void) const
CConstRef< CSeq_entry > GetCompleteSeq_entry(void) const
Complete and get const reference to the seq-entry.
CScope & GetScope(void) const
Get scope this handle belongs to.
CRef< CSeq_loc > GetRangeSeq_loc(TSeqPos start, TSeqPos stop, ENa_strand strand=eNa_strand_unknown) const
Return CSeq_loc referencing the given range and strand on the bioseq If start == 0,...
CConstRef< TObject > GetCompleteObject(void) const
void Reset(void)
Reset handle and make it not to point to any seq-entry.
CSeq_entry_Handle GetTopLevelEntry(void) const
Get top level Seq-entry handle.
const TId & GetId(void) const
const CSeq_align & GetOriginalSeq_align(void) const
Get original alignment.
CSeq_align_Handle GetSeq_align_Handle(void) const
Get original alignment handle.
CSeq_entry_Handle GetSeq_entry_Handle(void) const
@ fIncludeGivenEntry
Include the top (given) entry.
@ fRecursive
Iterate recursively.
TObjectType * GetPointer(void) const THROWS_NONE
Get pointer,.
TObjectType * GetPointer(void) THROWS_NONE
Get pointer,.
void Reset(void)
Reset reference object.
void Reset(void)
Reset reference object.
TObjectType * GetPointerOrNull(void) THROWS_NONE
Get pointer value.
TObjectType & GetNCObject(void) const
Get object.
uint64_t Uint8
8-byte (64-bit) unsigned integer
#define END_NCBI_SCOPE
End previously defined NCBI scope.
#define BEGIN_NCBI_SCOPE
Define ncbi namespace.
IO_PREFIX::ofstream CNcbiOfstream
Portable alias for ofstream.
IO_PREFIX::istream CNcbiIstream
Portable alias for istream.
IO_PREFIX::ifstream CNcbiIfstream
Portable alias for ifstream.
bool NcbiStreamCopy(CNcbiOstream &os, CNcbiIstream &is)
Copy the entire contents of stream "is" to stream "os".
static bool EndsWith(const CTempString str, const CTempString end, ECase use_case=eCase)
Check if a string ends with a specified suffix value.
static string IntToString(int value, TNumToStringFlags flags=0, int base=10)
Convert int to string.
static string Join(const TContainer &arr, const CTempString &delim)
Join strings using the specified delimiter.
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.
@ eNocase
Case insensitive compare.
CTime CurrentTime(CTime::ETimeZone tz=CTime::eLocal, CTime::ETimeZonePrecision tzp=CTime::eTZPrecisionDefault)
static const char label[]
void SetName(TName &value)
Assign a value to Name data member.
bool IsSetDate(void) const
replaces imp, will become required Check if a value has been assigned to Date data member.
TDescr & SetDescr(void)
Assign a value to Descr data member.
void SetLabel(const TLabel &value)
Assign a value to Label data member.
void SetItem(TItem &value)
Assign a value to Item data member.
const TStr & GetStr(void) const
Get the variant data.
bool IsStr(void) const
Check if variant Str is selected.
bool IsSetType(void) const
type of object within class Check if a value has been assigned to Type data member.
const TData & GetData(void) const
Get the Data member data.
bool IsStr(void) const
Check if variant Str is selected.
TData & SetData(void)
Assign a value to Data data member.
const TStr & GetStr(void) const
Get the variant data.
void SetLabel(TLabel &value)
Assign a value to Label data member.
void SetType(TType &value)
Assign a value to Type data member.
void SetData(TData &value)
Assign a value to Data data member.
const TType & GetType(void) const
Get the Type member data.
bool IsSetData(void) const
Check if a value has been assigned to Data data member.
vector< CRef< CUser_field > > TData
void SetHeader(THeader &value)
Assign a value to Header data member.
vector< CRef< CSeqTable_column > > TColumns
void SetData(TData &value)
Assign a value to Data data member.
@ eField_id_location_id
location Seq-id
bool IsSpliced(void) const
Check if variant Spliced is selected.
const TSegs & GetSegs(void) const
Get the Segs member data.
TXref & SetXref(void)
Assign a value to Xref data member.
void SetQual(const TQual &value)
Assign a value to Qual data member.
bool IsSetData(void) const
the specific data Check if a value has been assigned to Data data member.
void SetLocation(TLocation &value)
Assign a value to Location data member.
void SetComment(const TComment &value)
Assign a value to Comment data member.
void SetPartial(TPartial value)
Assign a value to Partial data member.
const TLocation & GetLocation(void) const
Get the Location member data.
bool IsGene(void) const
Check if variant Gene is selected.
const TData & GetData(void) const
Get the Data member data.
void SetVal(const TVal &value)
Assign a value to Val data member.
void SetPseudo(TPseudo value)
Assign a value to Pseudo data member.
const TXref & GetXref(void) const
Get the Xref member data.
void ResetXref(void)
Reset Xref data member.
TQual & SetQual(void)
Assign a value to Qual data member.
bool IsSetLocation(void) const
feature made from Check if a value has been assigned to Location data member.
@ e_not_set
No variant selected.
@ e_Other
for historical reasons, 'other' = 'refseq'
@ e_Gi
GenInfo Integrated Database.
bool IsSetClass(void) const
Check if a value has been assigned to Class data member.
const TDescr & GetDescr(void) const
Get the Descr member data.
TSet & SetSet(void)
Select the variant.
TClass GetClass(void) const
Get the Class member data.
const TSet & GetSet(void) const
Get the variant data.
bool IsSetDescr(void) const
Check if a value has been assigned to Descr data member.
void SetClass(TClass value)
Assign a value to Class data member.
TSeq_set & SetSeq_set(void)
Assign a value to Seq_set data member.
@ eClass_nuc_prot
nuc acid and coded proteins
@ eClass_genbank
converted genbank
const TInst & GetInst(void) const
Get the Inst member data.
TTitle & SetTitle(void)
Select the variant.
TPub & SetPub(void)
Select the variant.
bool IsSetMol(void) const
Check if a value has been assigned to Mol data member.
TGenbank & SetGenbank(void)
Select the variant.
const TId & GetId(void) const
Get the Id member data.
bool IsSetData(void) const
Check if a value has been assigned to Data data member.
bool IsSetInst(void) const
the sequence data Check if a value has been assigned to Inst data member.
TMol GetMol(void) const
Get the Mol member data.
TComment & SetComment(void)
Select the variant.
void SetInst(TInst &value)
Assign a value to Inst data member.
TSource & SetSource(void)
Select the variant.
bool IsSetDescr(void) const
descriptors Check if a value has been assigned to Descr data member.
void SetBiomol(TBiomol value)
Assign a value to Biomol data member.
TUser & SetUser(void)
Select the variant.
const TFtable & GetFtable(void) const
Get the variant data.
bool IsFtable(void) const
Check if variant Ftable is selected.
const TData & GetData(void) const
Get the Data member data.
const TDescr & GetDescr(void) const
Get the Descr member data.
TMolinfo & SetMolinfo(void)
Select the variant.
@ e_Ids
used for communication between tools
@ e_User
user defined object
@ e_Pub
a reference to the publication
@ e_Molinfo
info on the molecule and techniques
@ eMol_not_set
> cdna = rna
@ eMol_na
just a nucleic acid
bool IsSetData(void) const
Check if a value has been assigned to Data data member.
const TCit & GetCit(void) const
Get the Cit member data.
void SetSub(TSub &value)
Assign a value to Sub data member.
void SetCit(TCit &value)
Assign a value to Cit data member.
void SetTool(const TTool &value)
Assign a value to Tool data member.
const TEntrys & GetEntrys(void) const
Get the variant data.
const TData & GetData(void) const
Get the Data member data.
void SetData(TData &value)
Assign a value to Data data member.
bool IsEntrys(void) const
Check if variant Entrys is selected.
void SetContact(TContact &value)
Assign a value to Contact data member.
where boath are integers</td > n< td ></td > n</tr > n< tr > n< td > tse</td > n< td > optional</td > n< td > String</td > n< td class=\"description\"> TSE option controls what blob is orig
<!DOCTYPE HTML >< html > n< header > n< title > PubSeq Gateway Help Page</title > n< style > n table
for(len=0;yy_str[len];++len)
Functions used in the DO/DONE section affecting the top seq-entry.
Macro library for storing parsed macros.
CMinPanelContainer::OnRestoreWindow EVT_UPDATE_UI_RANGE(eCmdCloseDockPanel, eCmdWindowRestore, CMinPanelContainer::OnUpdateWindowCommand) CMinPanelContainer
CRef< CCmdComposite > GetPropagateDBLinkCmd(objects::CSeq_entry_Handle entry)
void GetViewObjects(IWorkbench *workbench, TConstScopedObjects &objects)
const string version
version string
const struct ncbi::grid::netcache::search::fields::SIZE size
Defines the CNcbiApplication and CAppException classes for creating NCBI applications.
void copy(Njn::Matrix< S > *matrix_, const Njn::Matrix< T > &matrix0_)
IGuiPackage * NCBIGBenchGetPackage()
Declare Package Entry Point.
static CRef< CUser_object > GetParams()
static const char * kFramePosX
static const char * kFrameHeight
static tuple< CRef< CGBProjectHandle >, CRef< CProjectItem > > LoadFileForSubmission(wxWindow *parent, CIRef< CProjectService > srv, CRef< CGBWorkspace > ws)
static bool EqualLoc(CRef< CSeq_loc > first, CRef< CSeq_loc > second)
static const char * sMacroLibraries[]
ON_EVENT_RANGE(CSelectionServiceEvent, CSelectionServiceEvent::eClientAttached, CSelectionServiceEvent::eSelectionChanged, &CSequenceEditingEventHandler::x_OnSelectionEvent) static const SwxMenuItemRec *CSeqEditPackage
static wxString IndexerTypeToName(int i)
static bool s_UpdateLocalFile(const string &url, const string &file_name)
static bool CompLoc(CRef< CSeq_loc > first, CRef< CSeq_loc > second)
static const char * kFramePosY
static const char * kFrameWidth
bool AddOrgToDefline(objects::CSeq_entry_Handle seh, CCmdComposite *composite)
bool AddModToDefline(objects::CSeq_entry_Handle entry, CCmdComposite *composite, const objects::CAutoDefAvailableModifier &mod, bool show_label)
#define EXT_POINT__PROJECT_ITEM_EXTENSION
#define EDIT_EACH_SEQFEATXREF_ON_SEQFEAT(Itr, Var)
#define FOR_EACH_SEQFEATXREF_ON_SEQFEAT(Itr, Var)
FOR_EACH_SEQFEATXREF_ON_SEQFEAT EDIT_EACH_SEQFEATXREF_ON_SEQFEAT.
void FillShortColumns(CRef< objects::CSeq_table > values_table)
void AddValueToTable(CRef< CSeq_table > table, string subtype_name, string value, size_t row, edit::EExistingText existing_text=edit::eExistingText_replace_old)
static const char * kInternalIndexerRegistry
static const char * kInternalIndexerRegistryType
@ eCmdDescriptorPropagateDown
@ eCmdConvertCdsWithInternalStopToMiscFeat
@ eCmdRemoveLocalSeqIdsFromNuc
@ eCmdConvertAccessionToLocalIdsAll
@ eCmdEditStructuredCommentPrefixSuffixMIMARKS3_0
@ eCmdLinkmRNACDSUnidirectional
@ eCmdLinkmRNACDSTranscriptID
@ eCmdCreateSeqHistForTpa
@ eCmdRetranslateCDSIgnoreStopExceptEnd_ext
@ eCmdRemoveNonsuppressingGeneXrefs
@ eCmdTruncateAuthorMiddleInitials
@ eCmdCreateDescRefGeneTracking
@ eCmdCreateStructuredCommentPrefixSuffixMIGS
@ eCmdAddKeywordWithConstraint
@ eCmdRemoveAllStructuredComments
@ eCmdSplitQualifiersAtCommas
@ eCmdFixForTransSplicing
@ eCmdRemoveSeqHistAssembly
@ eCmdRetranslateCDSObeyStop
@ eCmdConvertCdsWithInternalStopToMiscFeatUnverified
@ eCmdUpdateSequenceClipboard
@ eCmdEditStructuredCommentPrefixSuffixFluData
@ eCmdSortUniqueCountTree
@ eCmdParseCollectionDateDayFirst
@ eCmdRemoveSequences_ext
@ eCmdConvertDescToFeatComment
@ eCmdRemoveOrphanLocusGeneXrefs
@ eCmdRemoveDuplicateGOTerms
@ eCmdValidateNoAlignments
@ eCmdSpecificHostCleanup
@ eCmdLinkSelectedmRNACDS
@ eCmdAddKeywordTPA_specialistdb
@ eCmdRemoveOrphanedProteins
@ eCmdRemoveTextInsideStr
@ eCmdConvertSelectedGapsToKnown
@ eCmdTrimJunkInPrimerSeqs
@ eCmdEditStructuredCommentPrefixSuffixGenAssData
@ eCmdEditSeqEndsWithAlign
@ eCmdCreateDescStructuredComment
@ eCmdFixCapitalizationCountry
@ eCmdCDSGeneRangeErrorRestore
@ eCmdAutodefDefaultOptions
@ eCmdParseTextFromDefline
@ eCmdRemoveGenbankSeqIdsFromProt
@ eCmdFixOrgModInstitution
@ eCmdLinkmRNACDSLabelLocation
@ eCmdRemoveBankitComment
@ eCmdRemoveTaxonFeatsAndBioSource
@ eCmdAddKeywordTPA_experimental
@ eCmdIndexerTypeSelection
@ eCmdConvertAuthorToConsortiumAll
@ eCmdDeleteStructuredCommentPrefixSuffixMIGS
@ eCmdDeleteStructuredCommentPrefixSuffixGenAssData
@ eCmdRemoveGenomeProjectId
@ eCmdCreateDescGenomeAssemblyComment
@ eCmdUpdateMultiSeqClipboard
@ eCmdRemoveUnpublishedPublications
@ eCmdAddStructuredCommentKeyword
@ eCmdPrefixHaplotToDefLine
@ eCmdConvertCdsWithGapsToMiscFeat
@ eCmdConvertAccessionToLocalIdsName
@ eCmdAdjustmRNAForIntrons
@ eCmdConvertDescToFeatPubConstraint
@ eCmdEditStructuredCommentPrefixSuffixMIENSData
@ eCmdRemoveInPressPublications
@ eCmdLinkmRNACDSProteinID
@ eCmdAddAssemblyStructuredComment
@ eCmdCombineSelectedGenesIntoPseudogenes
@ eCmdAdjustConsensusSpliceSitesStrict
@ eCmdResynchronizePartialsCDS
@ eCmdFixNonReciprocalLinks
@ eCmdApplyIndexerComments
@ eCmdModifyStructuredComment
@ eCmdSortUniqueCountTree_ext
@ eCmdCompareWithBiosample
@ eCmdLoadSecondaryAccessions
@ eCmdRemoveDbXrefsBioSourceAndFeats
@ eCmdAddGenomeAssemblyStructuredComment
@ eCmdAdjustConsensusSpliceSitesStrict_ext
@ eCmdDeleteStructuredCommentPrefixSuffixMIMARKS
@ eCmdRemoveDuplicateStructuredComments
@ eCmdGlobalPubmedIdLookup
@ eCmdAdjustConsensusSpliceSitesConsensusEnds
@ eCmdCreateDescUnverified
@ eCmdCreateDescGenBankBlock
@ eCmdCdsFromGeneMrnaExon
@ eCmdAdjustConsensusSpliceSitesRelaxed_ext
@ eCmdConvertSecondProtNameToDesc
@ eCmdRemoveSequencesFromAlignments
@ eCmdConvertDescToFeatPub
@ eCmdImportFeatureTable_ext
@ eCmdUpdateSequenceAccession
@ eCmdConvertSelectedGapsToUnknown
@ eCmdRemoveUnnecessaryGeneXrefs
@ eCmdImportFeatureTableClipboard
@ eCmdEditStructuredCommentPrefixSuffixiBol
@ eCmdAdjustFeaturesForGaps
@ eCmdRemoveTextOutsideString
@ eCmdFixProductNamesDefault
@ eCmdCreateStructuredCommentPrefixSuffixGenAnnData
@ eCmdShowFeatureTable_ext
@ eCmdAdjustConsensusSpliceSitesRelaxed
@ eCmdStripAuthorSuffixes
@ eCmdPrefixCloneToDefLine
@ eCmdFixCapitalizationAffiliation
@ eCmdDeleteStructuredCommentPrefixSuffixMIMS
@ eCmdConvertFeatToDescPub
@ eCmdCreateDescTPAAssembly
@ eCmdConvertAccessionToLocalIdsProt
@ eCmdEnableStrainForwarding
@ eCmdRawSeqToDeltaByNs_ext
@ eCmdRetranslateCDSIgnoreStopExceptEnd
@ eCmdPackageFeaturesOnParts
@ eCmdDeleteStructuredCommentPrefixSuffixMIENSData
@ eCmdRemoveDbXrefsBioSource
@ eCmdConvertCdsToMiscFeat
@ eCmdHelpEditingTools_ext
@ eCmdConvertBadInference
@ eCmdRemoveLocalSeqIdsFromProt
@ eCmdEditStructuredCommentPrefixSuffixAssemblyData
@ eCmdRemoveEmptyStructuredComments
@ eCmdCreateDescComment_ext
@ eCmdRemoveCddFeatDbxref
@ eCmdAdjustrRNAForIntrons
@ eCmdPrefixStrainToDefLine
@ eCmdInstantiateProteinTitles
@ eCmdConsolidateLikeModsWithSemicolon
@ eCmdSplitCDSwithTooManyXs
@ eCmdmRNAFromGeneCdsExon
@ eCmdExtendPartialsConstr
@ eCmdEditStructuredCommentPrefixSuffixHIVData
@ eCmdRemoveDupFeatsWithOptions_ext
@ eCmdRemoveProteinsAndRenormalizeNucProtSets
@ eCmdExportStructuredCommentsTable
@ eCmdRemoveOrphanLocus_tagGeneXrefs
@ eCmdConvertAuthorToConstortiumWhereLastName
@ eCmdConvertToDelayedGenProdSetQuals
@ eCmdCreateDescAuthorizedAccess
@ eCmdRemoveSeqIdNamesFromProtFeats
@ eCmdRemoveEmptyGenomeProjectId
@ eCmdSplitStructuredCollections
@ eCmdConvertFeatToDescComment
@ eCmdResolveIntersectingFeats
@ eCmdCreateSeqHistForTpaDetailed
@ eCmdCreateStructuredCommentPrefixSuffixMIENSData
@ eCmdAdjustCDSForIntrons
@ eCmdSuspectProductRulesEditor
@ eCmdCombineAdjacentGaps
@ eCmdRemoveUnindexedFeatures
@ eCmdConvertDescToSecondProtName
@ eCmdAddKeywordTPA_inferential
@ eCmdMakeBadSpecificHostTable
@ eCmdRemoveCollidingPublications
@ eCmdPrefixCultivarToDefLine
@ eCmdRevCompSequences_ext
@ eCmdFixStructuredVouchers
@ eCmdReorderStructuredComment
@ eCmdFixCapitalizationAuthors
@ eCmdRemovePublishedPublications
@ eCmdConvertCdsWithInternalStopToMiscFeatViral
@ eCmdRemoveGiSeqIdsFromAll
@ eCmdEditStructuredCommentPrefixSuffixMIGS3_0
@ eCmdRemoveDbXrefsAllFeats
@ eCmdCreateStructuredCommentPrefixSuffixMIMARKS
@ eCmdAddLinkageToGaps_ext
@ eCmdConvertDescToFeatSource
@ eCmdRemoveAuthorConsortiums
@ eCmdRemoveUnnecessaryExceptions
@ eCmdAddStrainSerotypeToNames
@ eCmdRawSeqToDeltaByAssemblyGapFeatures
@ eCmdTableReaderClipboard
@ eCmdCreateStructuredCommentPrefixSuffixGenAssData
@ eCmdRemoveDupFeatsWithOptions
@ eCmdConvertBadCdsAndRnaToMiscFeat
@ eCmdFixCapitalizationAll
@ eCmdCreateStructuredCommentPrefixSuffixMIMS
@ eCmdConsolidateLikeModsWithoutSemicolon
@ eCmdSetGlobalRefGeneStatus
@ eCmdParseStrainSerotypeFromNames
@ eCmdDeleteStructuredCommentPrefixSuffixGenAnnData
@ eCmdRetranslateCDSChooseFrame
@ eCmdEditStructuredCommentPrefixSuffixMIGSData
@ eCmdRemoveLocalSeqIdsFromAll
@ eCmdCreateDescUnreviewed
@ eCmdFixCapitalizationTitles
@ eCmdConvertFeatToDescSource
@ eCmdRemoveGenbankSeqIdsFromAll
@ eCmdUpdate_Replaced_EC_numbers
@ eCmdFixProductNamesOptions
@ eCmdAddKeywordTPA_assembly
@ eCmdRecomputeIntervalsAndUpdateGenes
@ eCmdRemoveAllPublications
@ eCmdRemoveStructuredCommentKeyword
@ eCmdPrefixListToDefLine
@ eCmdSortUniqueCountText
@ eCmdCorrectIntervalOrder
@ eCmdConvertAccessionToLocalIdsNuc
@ eCmdCDSGeneRangeErrorSuppress
@ eCmdCheckForMixedStrands
@ eCmdValidateCheckInferences
@ eCmdUpdateMultiSequences
@ eCmdEditStructuredCommentPrefixSuffixMIMSData
@ eCmdConvertRptUnitRangeToLoc
@ eCmdParseCollectionDateMonthFirst
@ eCmdDisableStrainForwarding
@ eCmdLoadSecondaryAccessionsHistoryTakeover
@ eCmdApplyStructuredCommentField
@ eCmdRestoreAndConvertSeqSubmit
@ eCmdPrefixIsolateToDefLine
@ eCmdEditStructuredCommentPrefixSuffixMIMS3_0
@ eCmdAdjusttRNAForIntrons
@ eCmdCompareWithBiosampleFirstOnly
ViewerWindowBase::OnEditMenu ViewerWindowBase::OnJustification EVT_MENU(MID_SHOW_GEOM_VLTNS, ViewerWindowBase::OnShowGeomVltns) EVT_MENU(MID_FIND_PATTERN
static SLJIT_INLINE sljit_ins msg(sljit_gpr r, sljit_s32 d, sljit_gpr x, sljit_gpr b)
static SLJIT_INLINE sljit_ins or(sljit_gpr dst, sljit_gpr src)
#define row(bind, expected)
@ eExistingText_replace_old
For example, if bases_to_check is 10 and max_bases_allowed_to_be_ambig is 5, then on each iteration w...
#define WX_MENU_ITEM_EXT(cmd)
#define WX_DEFINE_MENU(name)
New macros for defining menus for use with CUICommandRegistry.
#define WX_SUBMENU(label)
#define WX_SUBMENU_EXT(label)
#define WX_MENU_CHECK_ITEM_INT(cmd)
#define WX_MENU_SEPARATOR_L(label)
#define WX_SUBMENU_INT(label)
#define WX_MENU_SEPARATOR_EXT()
#define WX_MENU_ITEM_INT(cmd)
#define WX_MENU_SEPARATOR_INT()
CRef< CCmdComposite > GetRemoveDuplicateGOTermsCommand(objects::CSeq_entry_Handle seh)
CRef< CCmdComposite > GetSynchronizeProteinPartialsCommand(objects::CScope &scope, const objects::CSeq_feat &cds)
CRef< CCmdComposite > CleanupCommand(objects::CSeq_entry_Handle orig_seh, bool extended, bool do_tax)
void GetProductToCDSMap(objects::CScope &scope, map< objects::CBioseq_Handle, set< objects::CSeq_feat_Handle > > &product_to_cds)
CRef< CCmdComposite > GetDisableStrainForwardingCommand(objects::CSeq_entry_Handle seh)
CRef< CCmdComposite > GetRmCultureNotesCommand(objects::CSeq_entry_Handle seh)
CRef< CCmdComposite > SpecificHostCleanupCommand(objects::CSeq_entry_Handle seh)
CRef< CCmdComposite > GetNormalizeGeneQualsCommand(objects::CSeq_entry_Handle seh)
CRef< CCmdComposite > GetEnableStrainForwardingCommand(objects::CSeq_entry_Handle seh)
CRef< CCmdComposite > TaxonomyLookupCommand(objects::CSeq_entry_Handle seh)
CRef< CCmdComposite > GetDeleteFeatureCommand(const objects::CSeq_feat_Handle &fh, bool remove_proteins=true)
wxString ToWxString(const string &s)
string ToStdString(const wxString &s)
void CorrectWindowRect(wxTopLevelWindow *win, wxRect &rc)