[Compbench-devel] CompBenchmarks++/Qt-4/CompilerOption CompilerOptionInfo.cpp, NONE, 1.1 CompilerOp
Brought to you by:
xfred
From: Frederic T. <xf...@us...> - 2007-05-22 17:27:56
|
Update of /cvsroot/compbench/CompBenchmarks++/Qt-4/CompilerOption In directory sc8-pr-cvs4.sourceforge.net:/tmp/cvs-serv15743 Added Files: CompilerOptionInfo.cpp CompilerOptionInfo.h Log Message: First import. --- NEW FILE: CompilerOptionInfo.h --- #ifndef H_CQT_COMPILEROPTIONINFO #define H_CQT_COMPILEROPTIONINFO #include <QTabWidget> #include <Basic/Info.h> #include <Compiler/Compiler.h> // #include <Compiler/Compiler-Option.h> #include <Compiler/Compiler-Option-Description.h> namespace CQT { class CompilerOptionInfo : public QTabWidget { Q_OBJECT private: CBM::Compiler *compiler; CBM::CompilerOptionDescription *D; QLineEdit *compilerName; QLineEdit *optionString; QLineEdit *shortDescription; QTextEdit *editorDescription; QLineEdit *passCompilation; QLineEdit *passCompilationFirstOption; QLineEdit *compilerDescriptionDirectory; protected: virtual void updateForOption(std::string _option); protected slots: public: CompilerOptionInfo(std::string _option, QWidget *parent = 0); virtual ~CompilerOptionInfo(); }; } #endif --- NEW FILE: CompilerOptionInfo.cpp --- #include <Basic/Info.h> #include <main.h> #include <CompilerOption/CompilerOptionInfo.h> using namespace CQT; CompilerOptionInfo::CompilerOptionInfo(std::string _option, QWidget *parent) : QTabWidget(parent) { compiler=App->PlanCompilerSelected(); InfoTab *main = new InfoTab(); addTab(main, tr("Option")); setTabToolTip(0, tr("General information found about selected option")); if (!compiler) { QLabel *l = new QLabel(tr("No compiler selected")); main->Layout()->addWidget(l, 0, 0); return; } CBM::CompilerOptionDescriptions *OD = compiler->OptionDescriptions(); D=OD->DescriptionLitteral(_option); compilerName=main->addInfo(tr("Compiler :").toStdString(), ""); compilerName->setToolTip(tr("Compiler's name")); optionString=main->addInfo(tr("Option :").toStdString(), ""); optionString->setToolTip(tr("Argument for option")); shortDescription=main->addInfo(tr("Short description :").toStdString(), ""); shortDescription->setToolTip(tr("Option's short description")); editorDescription=main->addText(tr("Editor's description :").toStdString(), ""); editorDescription->setToolTip(tr("Description from compiler's editor")); main->addSpace(); if (D->CompilationTwoPassNeeded()) { InfoTab *mpass = new InfoTab(); addTab(mpass, tr("Multiple passes")); passCompilation=mpass->addInfo(tr("Pass number :").toStdString(), ""); passCompilation->setToolTip(tr("If option implies or is implied multiple compilations, shows which compilation number is associated to option")); if (D->CompilationPass()==2) { passCompilationFirstOption=mpass->addInfo(tr("First pass option :").toStdString(), ""); passCompilationFirstOption->setToolTip(tr("Compilation option needed in first pass")); } mpass->addSpace(); } InfoTab *meta = new InfoTab(); addTab(meta, tr("Meta-information")); setTabToolTip(1, tr("Informations from CompBenchmarks knowledge-base for selected compiler")); compilerDescriptionDirectory=meta->addInfo(tr("Nearest compatible branch :").toStdString(), ""); meta->addSpace(); updateForOption(_option); } void CompilerOptionInfo::updateForOption(std::string _option) { compilerName->setText(compiler->Name().c_str()); compilerDescriptionDirectory->setText(compiler->relativeDescriptionDirectory().c_str()); if (D) { optionString->setText(_option.c_str()); shortDescription->setText(D->ShortDescription().c_str()); editorDescription->setText(D->EditorDescription().c_str()); if (D->CompilationTwoPassNeeded()) { QString n; n.setNum(D->CompilationPass()); passCompilation->setText(n); if (D->CompilationPass()==2) { passCompilationFirstOption->setText(compiler->OptionDescriptions()->Description(D->CompilationFirstPassOption())->Option().c_str()); } } } else { optionString->setText(""); shortDescription->setText(""); editorDescription->setText(""); } /* QString n; n.setNum(OD->DescriptionNumber()); */ } CompilerOptionInfo::~CompilerOptionInfo() { } |