49 #include <wx/filedlg.h>
53 #include <wx/button.h>
54 #include <wx/msgdlg.h>
113 wxPanel::Create( parent,
id, pos,
size, style );
118 GetSizer()->SetSizeHints(
this);
161 wxBoxSizer* itemBoxSizer2 =
new wxBoxSizer(wxVERTICAL);
162 itemPanel1->SetSizer(itemBoxSizer2);
167 wxBoxSizer* itemBoxSizer4 =
new wxBoxSizer(wxHORIZONTAL);
168 itemBoxSizer2->Add(itemBoxSizer4, 0, wxALIGN_CENTER_HORIZONTAL|wxALL, 5);
170 wxButton* itemButton5 =
new wxButton( itemPanel1,
ID_EXPORT_LIST_BTN,
_(
"Export TPA Accession List"), wxDefaultPosition, wxDefaultSize, 0 );
171 itemBoxSizer4->Add(itemButton5, 0, wxALIGN_CENTER_VERTICAL|wxALL, 5);
173 wxButton* itemButton6 =
new wxButton( itemPanel1,
ID_EXPORT_INTERVALS_BTN,
_(
"Export Interval Table"), wxDefaultPosition, wxDefaultSize, 0 );
174 itemBoxSizer4->Add(itemButton6, 0, wxALIGN_CENTER_VERTICAL|wxALL, 5);
176 wxBoxSizer* itemBoxSizer7 =
new wxBoxSizer(wxHORIZONTAL);
177 itemBoxSizer2->Add(itemBoxSizer7, 0, wxALIGN_CENTER_HORIZONTAL|wxALL, 5);
179 wxButton* itemButton8 =
new wxButton( itemPanel1,
ID_IMPORT_INTERVALS_BTN,
_(
"Import Interval Table"), wxDefaultPosition, wxDefaultSize, 0 );
180 itemBoxSizer7->Add(itemButton8, 0, wxALIGN_CENTER_VERTICAL|wxALL, 5);
182 m_PopulateBtn =
new wxButton( itemPanel1,
ID_POPULATE_BTN,
_(
"Populate Intervals from Assembly Alignment"), wxDefaultPosition, wxDefaultSize, 0 );
183 itemBoxSizer7->Add(
m_PopulateBtn, 0, wxALIGN_CENTER_VERTICAL|wxALL, 5);
185 itemBoxSizer2->Add(380, 1, 0, wxALIGN_CENTER_HORIZONTAL|wxALL, 0);
234 TransferDataFromWindow();
236 if (!
table || !
table->IsSetColumns() || !
table->GetColumns()[0]->IsSetData() ||
table->GetColumns()[0]->GetData().GetSize() == 0) {
237 wxMessageBox(
wxT(
"No accessions listed"),
wxT(
"Error"),
238 wxOK | wxICON_ERROR,
this);
241 wxFileDialog table_save_file(
this,
wxT(
"Select a file"), wxEmptyString, wxEmptyString,
wxT(
"*.*"),
242 wxFD_SAVE|wxFD_OVERWRITE_PROMPT);
244 if (table_save_file.ShowModal() == wxID_OK)
246 wxString path = table_save_file.GetPath();
247 wxString name = table_save_file.GetFilename();
254 wxMessageBox(
wxT(
"Please, select file name"),
wxT(
"Error"),
255 wxOK | wxICON_ERROR,
this);
260 wxMessageBox(
wxT(
"Cannot open file ")+ path,
wxT(
"Error"),
261 wxOK | wxICON_ERROR,
this);
274 TransferDataFromWindow();
277 wxMessageBox(
wxT(
"No accessions listed"),
wxT(
"Error"),
278 wxOK | wxICON_ERROR,
this);
281 wxFileDialog table_save_file(
this,
wxT(
"Select a file"), wxEmptyString, wxEmptyString,
wxT(
"*.*"),
282 wxFD_SAVE|wxFD_OVERWRITE_PROMPT);
284 if (table_save_file.ShowModal() == wxID_OK)
286 wxString path = table_save_file.GetPath();
287 wxString name = table_save_file.GetFilename();
294 wxMessageBox(
wxT(
"Please, select file name"),
wxT(
"Error"),
295 wxOK | wxICON_ERROR,
this);
299 wxMessageBox(
wxT(
"Cannot open file ")+ path,
wxT(
"Error"),
300 wxOK | wxICON_ERROR,
this);
313 wxFileDialog table_file(
this,
wxT(
"Select a file"), wxEmptyString, wxEmptyString,
wxT(
"*.*"),
314 wxFD_OPEN|wxFD_FILE_MUST_EXIST);
316 if (table_file.ShowModal() == wxID_OK)
318 wxString path = table_file.GetPath();
319 wxString name = table_file.GetFilename();
323 new_obj->
SetType().SetStr(
"TpaAssembly");
327 wxMessageBox(
wxT(
"Unable to read table"),
wxT(
"Error"),
328 wxOK | wxICON_ERROR,
this);
346 if (
m_User->IsSetData()) {
351 if ((*ait)->IsSetSegs() && (*ait)->GetSegs().IsDenseg()
352 && (*ait)->GetSegs().GetDenseg().IsSetDim() && (*ait)->GetSegs().GetDenseg().GetDim() > 1) {
357 if (interval0 && interval1) {
358 string accession =
"";
365 m_User->SetData().push_back(new_field);
367 }
catch(
const CException&) {}
catch (
const exception&) {}
389 TransferDataFromWindow();
397 user->
SetType().SetStr(
"TpaAssembly");
423 m_User->Assign(desc.GetUser());
426 TransferDataToWindow();
433 TransferDataFromWindow();
User-defined methods of the data storage class.
User-defined methods of the data storage class.
User-defined methods of the data storage class.
static bool ShowToolTips()
Should we show tooltips?
void OnImportIntervalsBtnClick(wxCommandEvent &event)
wxEVT_COMMAND_BUTTON_CLICKED event handler for ID_IMPORT_INTERVALS_BTN
CAssemblyTrackingPanel()
Constructors.
virtual void UpdateSeqdesc(objects::CSeqdesc &desc)
CAssemblyTrackingListPanel * m_AccessionsPanel
wxBitmap GetBitmapResource(const wxString &name)
Retrieves bitmap resources.
void Init()
Initialises member variables.
CRef< objects::CUser_object > GetUser_object()
virtual void ChangeSeqdesc(const objects::CSeqdesc &desc)
void SetUser_object(CRef< objects::CUser_object > user)
@ ID_IMPORT_INTERVALS_BTN
@ ID_EXPORT_INTERVALS_BTN
void OnExportListBtnClick(wxCommandEvent &event)
wxEVT_COMMAND_BUTTON_CLICKED event handler for ID_EXPORT_LIST_BTN
void SetBioseq(CConstRef< objects::CBioseq > seq)
wxIcon GetIconResource(const wxString &name)
Retrieves icon resources.
~CAssemblyTrackingPanel()
Destructor.
CConstRef< objects::CBioseq > m_Seq
void OnExportIntervalsBtnClick(wxCommandEvent &event)
wxEVT_COMMAND_BUTTON_CLICKED event handler for ID_EXPORT_INTERVALS_BTN
CRef< objects::CUser_object > m_User
bool Create(wxWindow *parent, wxWindowID id=ID_CASSEMBLYTRACKINGPANEL, const wxPoint &pos=wxDefaultPosition, const wxSize &size=wxSize(400, 300), long style=wxTAB_TRAVERSAL)
Creation.
void CreateControls()
Creates the controls and sizers.
void OnPopulateBtnClick(wxCommandEvent &event)
wxEVT_COMMAND_BUTTON_CLICKED event handler for ID_POPULATE_BTN
static CRef< objects::CUser_field > s_CreateTPAAssemblyField(const string &accession, int from, int to)
virtual bool TransferDataToWindow()
void SetUser_object(CRef< objects::CUser_object > user)
void PopulateFields(objects::CUser_object &user_obj)
virtual bool TransferDataFromWindow()
unsigned int TSeqPos
Type for sequence locations and lengths.
#define ITERATE(Type, Var, Cont)
ITERATE macro to sequence through container elements.
void swap(NCBI_NS_NCBI::pair_base_member< T1, T2 > &pair1, NCBI_NS_NCBI::pair_base_member< T1, T2 > &pair2)
virtual void Assign(const CSerialObject &source, ESerialRecursionMode how=eRecursive)
Set object to copy of another one.
void GetLabel(string *label, ELabelType type=eDefault, TLabelFlags flags=fLabel_Default) const
Append a label for this Seq-id to the supplied string.
@ eContent
Untagged human-readable accession or the like.
void Reset(void)
Reset reference object.
void Reset(void)
Reset reference object.
#define END_NCBI_SCOPE
End previously defined NCBI scope.
#define BEGIN_NCBI_SCOPE
Define ncbi namespace.
void SetType(TType &value)
Assign a value to Type data member.
const TId & GetId(void) const
Get the Id member data.
TFrom GetFrom(void) const
Get the From member data.
bool IsSetStrand(void) const
Check if a value has been assigned to Strand data member.
TStrand GetStrand(void) const
Get the Strand member data.
TTo GetTo(void) const
Get the To member data.
list< CRef< CSeq_align > > TAssembly
<!DOCTYPE HTML >< html > n< header > n< title > PubSeq Gateway Help Page</title > n< style > n table
const struct ncbi::grid::netcache::search::fields::SIZE size
bool SaveTableFile(wxWindow *parent, wxString &save_file_dir, wxString &save_file_name, CRef< objects::CSeq_table > values_table)
CRef< objects::CSeq_table > SeqTableFromAssemblyFields(const objects::CUser_object &obj)
CRef< objects::CSeq_table > ReadTabDelimitedTable(const wxString &filename, bool read_header)
bool SaveTableRowAsListFile(const string &save_file_name, CRef< objects::CSeq_table > values_table, int col)
void AddAssemblyUserFieldsFromSeqTable(CRef< objects::CUser_object > obj, CRef< objects::CSeq_table > table)
string ToStdString(const wxString &s)