91 validator::CValidator validator(*objmgr);
94 if ((*it)->IsUser()) {
97 if (validator.IsValidStructuredComment(**it)) {
101 const string& pfx =
prefix.GetData().GetStr();
103 if (!keyword.empty())
123 if ((*it)->IsGenbank() && (*it)->GetGenbank().CanGetKeywords())
127 edited_object->
Assign((*it)->GetGenbank());
131 for (CGB_block::TKeywords::iterator w = words.begin(); w != words.end(); ++w)
134 auto size1 = words.size();
137 auto size2 = words.size();
170 bool modified =
false;
190 if ((*it)->IsGenbank() && (*it)->GetGenbank().CanGetKeywords())
194 edited_object->
Assign((*it)->GetGenbank());
198 for (CGB_block::TKeywords::iterator w = words.begin(); w != words.end(); ++w)
199 if (*w == keyword) found =
true;
202 words.push_back(keyword);
209 if (found) modified =
true;
void AddCommand(IEditCommand &command)
Base class for all serializable objects.
const CUser_field & GetField(const string &str, const string &delim=".", NStr::ECase use_case=NStr::eCase) const
Access a named field in this user object.
Undo/Redo interface for editing operations.
virtual void Execute(IEditCommand *command, wxWindow *window=0)=0
const_iterator begin() const
const_iterator end() const
const_iterator find(const key_type &key) const
iterator_bool insert(const value_type &val)
const_iterator begin() const
const_iterator find(const key_type &key) const
const_iterator end() const
virtual void Assign(const CSerialObject &source, ESerialRecursionMode how=eRecursive)
Set object to copy of another one.
static CRef< CObjectManager > GetInstance(void)
Return the existing object manager or create one.
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.
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.
TObjectType * GetPointer(void) THROWS_NONE
Get pointer,.
void Reset(void)
Reset reference object.
#define END_NCBI_SCOPE
End previously defined NCBI scope.
#define BEGIN_NCBI_SCOPE
Define ncbi namespace.
TKeywords & SetKeywords(void)
Assign a value to Keywords data member.
void ResetKeywords(void)
Reset Keywords data member.
bool IsSetData(void) const
the object itself Check if a value has been assigned to Data data member.
const TSet & GetSet(void) const
Get the variant data.
bool IsSet(void) const
Check if variant Set is selected.
TGenbank & SetGenbank(void)
Select the variant.
void Select(E_Choice index, EResetVariant reset=eDoResetVariant)
Select the requested variant if needed.
@ e_Genbank
GenBank specific info.
double f(double x_, const double &y_)
static const char * prefix[]
#define FOR_EACH_SEQENTRY_ON_SEQSET(Itr, Var)
FOR_EACH_SEQENTRY_ON_SEQSET EDIT_EACH_SEQENTRY_ON_SEQSET.
#define FOR_EACH_SEQDESC_ON_SEQENTRY(Itr, Var)
FOR_EACH_SEQDESC_ON_SEQENTRY EDIT_EACH_SEQDESC_ON_SEQENTRY.