NCBI C++ ToolKit
update_seq_worker.hpp
Go to the documentation of this file.

Go to the SVN repository for this file.

1 #ifndef _GUI_PACKAGES_UPDATE_SEQ_WORKER_HPP_
2 #define _GUI_PACKAGES_UPDATE_SEQ_WORKER_HPP_
3 /* $Id: update_seq_worker.hpp 44179 2019-11-12 20:55:18Z asztalos $
4  * ===========================================================================
5  *
6  * PUBLIC DOMAIN NOTICE
7  * National Center for Biotechnology Information
8  *
9  * This software/database is a "United States Government Work" under the
10  * terms of the United States Copyright Act. It was written as part of
11  * the author's official duties as a United States Government employee and
12  * thus cannot be copyrighted. This software/database is freely available
13  * to the public for use. The National Library of Medicine and the U.S.
14  * Government have not placed any restriction on its use or reproduction.
15  *
16  * Although all reasonable efforts have been taken to ensure the accuracy
17  * and reliability of the software and data, the NLM and the U.S.
18  * Government do not and cannot warrant the performance or results that
19  * may be obtained by using this software or data. The NLM and the U.S.
20  * Government disclaim all warranties, express or implied, including
21  * warranties of performance, merchantability or fitness for any particular
22  * purpose.
23  *
24  * Please cite the author in any work or product based on this material.
25  *
26  * ===========================================================================
27  *
28  * Authors: Andrea Asztalos
29  *
30  * Worker class to setup update sequence dialog and launch the updater
31  */
32 
33 #include <corelib/ncbistd.hpp>
36 #include <gui/gui_export.h>
37 
40  class CSeq_entry_Handle;
41  class ILineErrorListener;
43 
44 class CUpdateSeq_Input;
45 class SUpdateSeqParams;
46 
48 {
49 public:
56  eMultiple_Clipboard
57  };
60 
61  void SetSeqUpdateType(ESeqUpdateType update_type) { m_Type = update_type; }
62  void UpdateSingleSequence(IWorkbench* workbench, const objects::CSeq_entry_Handle& tse, ICommandProccessor* cmdProcessor) const;
63  void UpdateSingleSequence_Ext(IWorkbench* workbench, const objects::CSeq_entry_Handle& tse, ICommandProccessor* cmdProcessor) const;
64  void UpdateMultipleSequences(IWorkbench* workbench, const objects::CSeq_entry_Handle& tse, ICommandProccessor* cmdProcessor);
65 private:
66  void x_GetSeqsWithIgnoredResidues(objects::ILineErrorListener& msg_listener);
67  void x_LaunchSingleUpdateSequence(CUpdateSeq_Input& updseq_in, SUpdateSeqParams& params, const objects::CSeq_entry_Handle& tse, ICommandProccessor* cmdProcessor) const;
68 
71 
73 };
74 
76 
77 #endif
78 // _GUI_PACKAGES_UPDATE_SEQ_WORKER_HPP_
CSeqUpdateWorker & operator=(const CSeqUpdateWorker &)
void SetSeqUpdateType(ESeqUpdateType update_type)
CSeqUpdateWorker(const CSeqUpdateWorker &)
ESeqUpdateType m_Type
CSeq_entry_Handle –.
Sets up the old and the update sequences, and generates the alignment between them.
Undo/Redo interface for editing operations.
IWorkbench is the central interface in the application framework.
Definition: workbench.hpp:113
Stores parameters regarding the type of sequence update, on how to handle existing features and on ho...
Include a standard set of the NCBI C++ Toolkit most basic headers.
#define END_NCBI_SCOPE
End previously defined NCBI scope.
Definition: ncbistl.hpp:103
#define END_SCOPE(ns)
End the previously defined scope.
Definition: ncbistl.hpp:75
#define BEGIN_NCBI_SCOPE
Define ncbi namespace.
Definition: ncbistl.hpp:100
#define BEGIN_SCOPE(ns)
Define a new scope.
Definition: ncbistl.hpp:72
#define NCBI_GUIPKG_SEQUENCE_EDIT_EXPORT
Definition: gui_export.h:515
Defines to provide correct exporting from DLLs in Windows.
Modified on Fri Sep 20 14:58:20 2024 by modify_doxy.py rev. 669887