bool LoadDenseMatrix(const std::string& file_path, std::vector<T>& data, unsigned int& height, unsigned int& width) { if (IsDelimitedFile(file_path)) return LoadDelimitedFile(data, height, width, file_path); // other dense formats TBD return false; }
void GXDataDocument::Receive ( JBroadcaster* sender, const Message& message ) { if (sender == itsFileMenu && message.Is(JXMenu::kNeedsUpdate)) { UpdateFileMenu(); } else if (sender == itsFileMenu && message.Is(JXMenu::kItemSelected)) { const JXMenu::ItemSelected* selection = dynamic_cast<const JXMenu::ItemSelected*>(&message); assert( selection != NULL ); HandleFileMenu(selection->GetIndex()); } else if (sender == itsExportMenu && message.Is(JXMenu::kItemSelected)) { const JXMenu::ItemSelected* selection = dynamic_cast<const JXMenu::ItemSelected*>(&message); assert( selection != NULL ); HandleExportMenu(selection->GetIndex()); } else if (sender == itsHelpMenu && message.Is(JXMenu::kItemSelected)) { const JXMenu::ItemSelected* selection = dynamic_cast<const JXMenu::ItemSelected*>(&message); assert( selection != NULL ); HandleHelpMenu(selection->GetIndex()); } else if (sender == itsPrinter && message.Is(JPrinter::kPrintSetupFinished)) { const JPrinter::PrintSetupFinished* info = dynamic_cast<const JPrinter::PrintSetupFinished*>(&message); assert(info != NULL); if (info->Successful()) { itsTable->PrintRealTable(*itsPrinter); } } else if (sender == itsFileImportDialog && message.Is(JXDialogDirector::kDeactivated)) { const JXDialogDirector::Deactivated* info = dynamic_cast<const JXDialogDirector::Deactivated*>(&message); assert( info != NULL ); if (info->Successful()) { LoadImportFile(); } itsFileImportDialog = NULL; } else if (sender == itsDelimiterDialog && message.Is(JXDialogDirector::kDeactivated)) { const JXDialogDirector::Deactivated* info = dynamic_cast<const JXDialogDirector::Deactivated*>(&message); assert( info != NULL ); if (info->Successful()) { LoadDelimitedFile(); } itsDelimiterDialog = NULL; } else if (sender == itsData && itsListenToData) { DataModified(); } else if (message.Is(J2DPlotWidget::kPlotChanged) || message.Is(J2DPlotWidget::kTitleChanged) || message.Is(J2DPlotWidget::kIsEmpty)) { DataModified(); } else { JXFileDocument::Receive(sender, message); } }