NCBI C++ ToolKit
|
#include <ncbi_pch.hpp>
#include <gui/framework/workbench_impl.hpp>
#include <gui/framework/view_manager_service.hpp>
#include <gui/core/project_tree_view.hpp>
#include <objects/seqfeat/Cdregion.hpp>
#include <objects/seqfeat/seqfeat_macros.hpp>
#include <objects/misc/sequence_macros.hpp>
#include <objects/seqloc/Seq_loc_mix.hpp>
#include <objects/pub/Pub_equiv.hpp>
#include <objects/pub/Pub.hpp>
#include <objects/biblio/Cit_gen.hpp>
#include <objects/biblio/Cit_book.hpp>
#include <objects/biblio/Cit_proc.hpp>
#include <objects/biblio/Cit_art.hpp>
#include <objects/biblio/Cit_pat.hpp>
#include <objects/biblio/Cit_let.hpp>
#include <objects/biblio/Cit_jour.hpp>
#include <objects/biblio/Title.hpp>
#include <objects/biblio/Affil.hpp>
#include <objects/general/Name_std.hpp>
#include <objects/general/Person_id.hpp>
#include <objects/general/User_object.hpp>
#include <objects/general/User_field.hpp>
#include <objects/general/Object_id.hpp>
#include <objects/seqblock/GB_block.hpp>
#include <objects/valid/Comment_rule.hpp>
#include <objects/valid/Comment_set.hpp>
#include <objmgr/seqdesc_ci.hpp>
#include <objmgr/bioseq_ci.hpp>
#include <objmgr/util/sequence.hpp>
#include <objmgr/seq_vector.hpp>
#include <objmgr/seq_entry_ci.hpp>
#include <util/sequtil/sequtil_convert.hpp>
#include <objtools/format/flat_file_config.hpp>
#include <objtools/format/flat_file_generator.hpp>
#include <objtools/format/flat_expt.hpp>
#include <objtools/edit/seqid_guesser.hpp>
#include <objtools/edit/cds_fix.hpp>
#include <gui/objutils/utils.hpp>
#include <gui/objutils/descriptor_change.hpp>
#include <gui/objutils/cmd_create_desc.hpp>
#include <gui/objutils/cmd_del_desc.hpp>
#include <gui/objutils/cmd_change_seq_feat.hpp>
#include <gui/objutils/cmd_del_seq_feat.hpp>
#include <gui/objutils/cmd_create_feat.hpp>
#include <gui/objutils/cmd_change_bioseq_inst.hpp>
#include <gui/objutils/pub_fieldtype.hpp>
#include <gui/objutils/util_cmds.hpp>
#include <gui/widgets/edit/singleauthor_panel.hpp>
#include <gui/widgets/edit/field_type_constants.hpp>
#include <gui/widgets/edit/dblink_fieldtype.hpp>
#include <gui/widgets/edit/molinfo_fieldtype.hpp>
#include <gui/packages/pkg_sequence_edit/pub_field.hpp>
#include <gui/packages/pkg_sequence_edit/miscedit_util.hpp>
#include <gui/packages/pkg_sequence_edit/molinfoedit_util.hpp>
#include <gui/packages/pkg_sequence_edit/dblink_field.hpp>
#include <gui/packages/pkg_sequence_edit/seq_table_grid.hpp>
Go to the source code of this file.
Go to the SVN repository for this file.
Typedefs | |
typedef SStaticPair< const char *, CGeneralIDField::EGeneralIDPart > | TGeneralIDPart |
typedef CStaticArrayMap< string, CGeneralIDField::EGeneralIDPart > | TGenIdPartMap |
Variables | |
static const string | kGenomeProjectId = "ProjectID" |
static const TGeneralIDPart | s_GenIDPartName [] |
typedef SStaticPair<const char*, CGeneralIDField::EGeneralIDPart> TGeneralIDPart |
Definition at line 1107 of file miscedit_util.cpp.
Definition at line 1115 of file miscedit_util.cpp.
void AddMiscColumnsToTable | ( | CRef< CSeq_table > | table, |
const vector< string > & | fields, | ||
CSeq_entry_Handle | entry | ||
) |
Definition at line 2917 of file miscedit_util.cpp.
References AddStringColumnToTable(), AddValueToColumn(), FillShortColumns(), CScope::GetBioseqHandle(), CSeq_entry_Handle::GetScope(), ITERATE, NON_CONST_ITERATE, table, and val.
DEFINE_STATIC_ARRAY_MAP | ( | TGenIdPartMap | , |
sm_GenIdMap | , | ||
s_GenIDPartName | |||
) |
bool DoesApplyObjectMatchFieldConstraint | ( | const CApplyObject & | object, |
const string & | field_name, | ||
CRef< CStringConstraint > | string_constraint | ||
) |
Definition at line 3613 of file miscedit_util.cpp.
References CStringConstraint::DoesListMatch(), CMiscSeqTableColumn::GetRelatedObjects(), CMiscSeqTableColumn::GetVals(), NStr::IsBlank(), and ITERATE.
bool DoesObjectMatchFieldConstraint | ( | const CObject & | object, |
const string & | field_name, | ||
CRef< CStringConstraint > | string_constraint, | ||
CRef< CScope > | scope | ||
) |
Definition at line 3592 of file miscedit_util.cpp.
References CStringConstraint::DoesListMatch(), CMiscSeqTableColumn::GetRelatedObjects(), CMiscSeqTableColumn::GetVals(), NStr::IsBlank(), and ITERATE.
bool FocusedOnAll | ( | TConstScopedObjects & | objects, |
const objects::CSeq_entry_Handle & | tse | ||
) |
Definition at line 3805 of file miscedit_util.cpp.
References CSeq_inst_Base::eMol_na, and GetNumberOfViewedBioseqs().
Referenced by s_Create5ColFeatTable().
bool FocusedOnNucleotides | ( | TConstScopedObjects & | objects, |
const CSeq_entry_Handle & | tse | ||
) |
Definition at line 3790 of file miscedit_util.cpp.
References CSeq_inst_Base::eMol_na, and GetNumberOfViewedBioseqs().
CRef<CCmdComposite> GetCommandFromApplyObject | ( | CApplyObject & | obj | ) |
Definition at line 3701 of file miscedit_util.cpp.
References cmd, CApplyObject::GetOriginalObject(), CSeq_entry_Handle::GetScope(), CApplyObject::GetSEH(), CSeq_entry_Handle::GetSeq(), CScope::GetSeq_featHandle(), GetSeqEntryForSeqdesc(), NULL, CApplyObject::PreExists(), Ref(), and CApplyObject::SetObject().
string GetExistingTextInstruction | ( | EExistingText | existing | ) |
Definition at line 3022 of file miscedit_util.cpp.
References eExistingText_add_qual, eExistingText_append_colon, eExistingText_append_comma, eExistingText_append_none, eExistingText_append_semi, eExistingText_append_space, eExistingText_cancel, eExistingText_leave_old, eExistingText_prefix_colon, eExistingText_prefix_comma, eExistingText_prefix_none, eExistingText_prefix_semi, eExistingText_prefix_space, eExistingText_replace_old, and NStr::IsBlank().
Referenced by MakeTableMetaInfoString().
CRef<CSeq_table> GetMiscTableFromSeqEntry | ( | const vector< string > & | fields, |
CSeq_entry_Handle | entry | ||
) |
Definition at line 2956 of file miscedit_util.cpp.
References AddStringColumnToTable(), AddValueToColumn(), CSeqTable_column_info_Base::eField_id_location_id, eGetId_Best, FillShortColumns(), FindHighestFeatureId(), GetId(), CSeq_id_Handle::GetSeqId(), i, ITERATE, kSequenceIdColLabel, NON_CONST_ITERATE, s_GetMaxRows(), CSeqTable_column_Base::SetHeader(), table, and val.
int GetNumberOfViewedBioseqs | ( | TConstScopedObjects & | objects | ) |
Definition at line 3775 of file miscedit_util.cpp.
References ITERATE.
Referenced by FocusedOnAll(), and FocusedOnNucleotides().
CRef<CCmdComposite> GetPropagateDBLinkCmd | ( | CSeq_entry_Handle | entry | ) |
Definition at line 3688 of file miscedit_util.cpp.
References cmd, NULL, and PropagateDBLink().
vector<CRef<CApplyObject> > GetRelatedFeatureApplyObjects | ( | const CSeq_feat & | obj_feat, |
CSeqFeatData::ESubtype | constraint_type, | ||
CRef< CScope > | scope | ||
) |
Definition at line 3243 of file miscedit_util.cpp.
References CSeqFeatData_Base::e_Cdregion, CSeqFeatData_Base::e_Prot, eOverlap_Contained, eOverlap_Contains, CSeqFeatData::eSubtype_any, CSeqFeatData::eSubtype_cdregion, CSeqFeatData::eSubtype_gene, CSeqFeatData::eSubtype_mRNA, f(), CSeq_loc::fMerge_SingleRange, GetBestCdsForMrna(), GetBestMrnaForCds(), CScope::GetBioseqHandle(), GetCDSForProduct(), CSeq_feat_Base::GetData(), CSeq_feat_Base::GetLocation(), GetOverlappingFeatures(), GetOverlappingGene(), CRef< C, Locker >::GetPointer(), CSeq_feat_Base::GetProduct(), CBioseq_Handle::GetSeq_entry_Handle(), CSeqFeatData::GetSubtype(), CSeqFeatData::GetTypeFromSubtype(), ITERATE, CSeq_loc::Merge(), NULL, s_GetProtApplyObjectsFeatures(), CSeq_feat_Base::SetData(), and CSeq_feat_Base::SetLocation().
Referenced by CMiscSeqTableColumn::GetRelatedApplyObjects().
vector<CConstRef<CSeq_feat> > GetRelatedFeatures | ( | const CSeq_feat & | obj_feat, |
CSeqFeatData::ESubtype | constraint_type, | ||
CRef< CScope > | scope | ||
) |
Definition at line 3130 of file miscedit_util.cpp.
References CSeqFeatData_Base::e_Cdregion, CSeqFeatData_Base::e_Prot, eOverlap_Contained, CSeqFeatData::eSubtype_any, CSeqFeatData::eSubtype_cdregion, CSeqFeatData::eSubtype_gene, CSeqFeatData::eSubtype_mRNA, f(), GetBestCdsForMrna(), GetBestMrnaForCds(), CScope::GetBioseqHandle(), GetCDSForProduct(), CSeq_feat_Base::GetData(), CSeq_feat_Base::GetLocation(), GetOverlappingFeatures(), GetOverlappingGene(), CSeq_feat_Base::GetProduct(), CSeqFeatData::GetSubtype(), CSeqFeatData::GetTypeFromSubtype(), CSeq_feat_Base::IsSetProduct(), ITERATE, and s_GetProtFeatures().
void GetViewObjects | ( | IWorkbench * | workbench, |
TConstScopedObjects & | objects | ||
) |
Definition at line 3744 of file miscedit_util.cpp.
References IProjectView::eType, ISelectionClient::GetActiveObjects(), IProjectView::GetLabel(), ISelectionClient::GetMainObject(), CProjectTreeView::GetSelection(), IServiceLocator::GetServiceByType(), CProjectTreeView::GetSingleObject(), IViewManagerService::GetViews(), and NON_CONST_ITERATE.
Referenced by CMRnaForCDS::apply(), CEditingBtnsPanel::EditSequence(), CSequenceEditingEventHandler::EditSequence(), CSelectFeatures::GetMainObject(), CSUCRefreshCntrl::GetRefreshedText(), CBulkCmdDlg::GetSelectedObjects(), CRemoveSet::GetSelectedObjects(), CBulkCmdDlg::GetTopLevelSeqEntryAndProcessor(), CFixForTransSplicing::Init(), CSUCRefreshCntrl::CSUCRefreshCntrlHelper::LoadData(), CClickableSortUniqueCount::LoadData(), CAddFeatureBetweenDlg::OnApplyButton(), CEditingBtnsPanel::OnDataChange(), CUnculTaxTool::OnRefreshBtn(), CEditingBtnsPanel::OnReverseAuthorNamesClick(), CSelectTargetDlg::OnSelTargetAcceptClick(), CEditingBtnsPanel::Save(), CGuiCoreHelper::Sync(), CValidatePanel::x_GetObjectsFromProjectItem(), CEditingBtnsPanel::x_GetSelectedLocations(), CCorrectGenesDialog::x_GetSelectedPair(), CEditingBtnsPanel::x_GetSelectedSeq(), CTableViewWithTextViewNav::x_GetViewObjects(), CSequinDesktopView::x_OnRefreshData(), CSequenceEditingEventHandler::x_OnSelectionEvent(), CFeatureTblFr::x_RefreshTable(), CSuspectProductRulesEditor::x_SetUpTSEandUnDoManager(), and CSequenceEditingEventHandler::x_SetUpTSEandUnDoManager().
bool IsSeqOrNP | ( | CSeq_entry_Handle | entry | ) |
Definition at line 3634 of file miscedit_util.cpp.
References CBioseq_set_Base::eClass_nuc_prot, CBioseq_set_Handle::GetClass(), CSeq_entry_Handle::GetSet(), CSeq_entry_Handle::IsSeq(), and CSeq_entry_Handle::IsSet().
Referenced by PropagateDBLink(), and PropagateDescriptor().
Referenced by CStructCommFieldValuePair::GetApplyObjects().
CRef<CUser_field> MakeTableMetaInfoField | ( | EExistingText | rule, |
bool | erase_blanks | ||
) |
Definition at line 3106 of file miscedit_util.cpp.
References MakeTableMetaInfoString(), and CUser_field_Base::SetData().
string MakeTableMetaInfoString | ( | EExistingText | rule, |
bool | erase_blanks | ||
) |
Definition at line 3092 of file miscedit_util.cpp.
References GetExistingTextInstruction(), and value.
Referenced by MakeTableMetaInfoField().
bool PropagateDBLink | ( | CSeq_entry_Handle | entry, |
CCmdComposite & | cmd | ||
) |
Definition at line 3665 of file miscedit_util.cpp.
References cmd, CUser_object::eObjectType_DBLink, CSeq_descr_Base::Get(), CSeq_entry_Handle::GetDescr(), IsSeqOrNP(), CSeq_entry_Handle::IsSetDescr(), ITERATE, and PropagateDescriptor().
Referenced by GetPropagateDBLinkCmd().
bool PropagateDescriptor | ( | CSeq_entry_Handle | entry, |
const CSeqdesc & | desc, | ||
CCmdComposite & | cmd | ||
) |
Definition at line 3646 of file miscedit_util.cpp.
References CSerialObject::Assign(), cmd, CBioseq_set_Handle::GetCompleteBioseq_set(), CSeq_entry_Handle::GetScope(), CScope::GetSeq_entryHandle(), CBioseq_set_Base::GetSeq_set(), CSeq_entry_Handle::GetSet(), IsSeqOrNP(), CSeq_entry_Handle::IsSet(), and ITERATE.
Referenced by PropagateDBLink().
Definition at line 2947 of file miscedit_util.cpp.
References i.
Referenced by GetMiscTableFromSeqEntry().
CSeq_entry_Handle s_GetNPParent | ( | CSeq_entry_Handle | seh | ) |
Definition at line 3503 of file miscedit_util.cpp.
References CBioseq_set_Base::eClass_nuc_prot, CBioseq_set_Handle::GetClass(), CSeq_entry_Handle::GetParentBioseq_set(), CBioseq_set_Handle::GetParentEntry(), and CBioseq_set_Handle::IsSetClass().
Referenced by CMiscSeqTableColumn::GetRelatedApplyObjects().
vector<CRef<CApplyObject> > s_GetProtApplyObjectsFeatures | ( | CBioseq_Handle | p_bsh, |
CSeqFeatData::ESubtype | constraint_type | ||
) |
Definition at line 3211 of file miscedit_util.cpp.
References AdjustProteinFeaturePartialsToMatchCDS(), CSeqFeatData::eSubtype_any, CSeqFeatData::eSubtype_prot, f(), GetCDSForProduct(), CBioseq_Handle::GetId(), CBioseq_Handle::GetInst_Length(), CRef< C, Locker >::GetPointer(), CBioseq_Handle::GetSeq_entry_Handle(), NULL, CSeq_feat_Base::SetData(), and CSeq_feat_Base::SetLocation().
Referenced by GetRelatedFeatureApplyObjects().
vector<CConstRef<CSeq_feat> > s_GetProtFeatures | ( | CBioseq_Handle | p_bsh, |
CSeqFeatData::ESubtype | constraint_type | ||
) |
Definition at line 3114 of file miscedit_util.cpp.
References f().
Referenced by GetRelatedFeatures().
USING_SCOPE | ( | edit | ) |
USING_SCOPE | ( | ncbi::objects | ) |
void x_AdjustListPair | ( | vector< CRef< CApplyObject > > | prev_list, |
vector< CRef< CApplyObject > > | this_list | ||
) |
Definition at line 3010 of file miscedit_util.cpp.
References NON_CONST_ITERATE, and t.
Definition at line 662 of file miscedit_util.cpp.
Referenced by CGenomeProjectField::IsGenomeProjectID(), and CGenomeProjectField::SetVal().
|
static |
Definition at line 1108 of file miscedit_util.cpp.