virtual LRESULT WndProc(HWND hWnd, UINT uMsg, WPARAM wParam, LPARAM lParam) { if ( uMsg == WM_USER+1 ) CreateCanvas(new KRasterFontView((const TCHAR *) lParam), "Raster Font"); if ( uMsg == WM_USER+2 ) CreateCanvas(new KTrueTypeFontView((const LOGFONT *) lParam, m_hInst), "TrueType Font"); return KMDIFrame::WndProc(hWnd, uMsg, wParam, lParam); }
// Overrides bool PowerTabView::OnCreate(wxDocument *doc, long flags) { //------Last Checked------// // - Jan 27, 2005 WXUNUSED(flags); MainFrame* mainFrame = GetMainFrame(); wxCHECK(mainFrame != NULL, false); m_frame = mainFrame->CreateChildFrame(doc, this); wxCHECK(m_frame != NULL, false); m_frame->SetTitle(wxT("PowerTabView")); m_canvas = CreateCanvas(this, m_frame); wxCHECK(m_canvas != NULL, false); #ifdef __X__ // X seems to require a forced resize int x, y; m_frame->GetSize(&x, &y); m_frame->SetSize(-1, -1, x, y); #endif m_frame->Show(true); Activate(true); return (true); }
ribi::QtDasWahreSchlagerfestCanvas::QtDasWahreSchlagerfestCanvas( const int width, const int height) : QtCanvas(CreateCanvas(width,height)), m_widget(CreateWidget(width,height)) { m_widget->m_signal_changed.connect( boost::bind(&ribi::QtDasWahreSchlagerfestCanvas::OnChanged,this)); OnChanged(); }
virtual BOOL OnCommand(WPARAM wParam, LPARAM lParam) { switch ( LOWORD(wParam) ) { case IDM_FILE_FONTFAMILY: CreateListViewCanvas(true); return TRUE; case IDM_FILE_FONT: CreateListViewCanvas(false); return TRUE; case IDM_FILE_CODEPAGE: CreateCanvas(new KCharSetView(), _T("Code Page")); return TRUE; case IDM_FILE_GLYPH: CreateCanvas(new KGlyphView(), _T("Glyph")); return TRUE; } return FALSE; }
//____________________________________________________________________ void Run(const char* fname="forward_multdists.root", UShort_t flags=kNormal) { // --- Open the file ----------------------------------------------- TString filename(fname); TFile* file = TFile::Open(filename.Data(), "READ"); if (!file) { Error("Run", "Failed to open \"%s\"", filename.Data()); return; } fPause = flags & kPause; // --- Make our canvas --------------------------------------------- TString pdfName(filename); pdfName.ReplaceAll(".root", ".pdf"); CreateCanvas(pdfName, flags & kLandscape); // --- Force MB for pp --------------------------------------------- TCollection* c = GetCollection(file, "ForwardMultSums"); // --- Make a Title page ------------------------------------------- DrawTitlePage(c); // --- Overview plots ---------------------------------------------- fBody->Divide(1,3); DrawInPad(fBody, 1, GetH1(c, "triggers"), "hist text30"); DrawInPad(fBody, 2, GetH1(c, "status"), "hist text30"); DrawInPad(fBody, 3, GetH1(c, "diagnostics"),"colz text"); PrintCanvas("Overview"); DrawSumCollection(c, "symmetric"); DrawSumCollection(c, "negative"); DrawSumCollection(c, "positive"); DrawSumCollection(c, "other"); c = GetCollection(file, "ForwardMultResults"); if (!c) { CloseCanvas(); return; } DrawResCollection(c, "symmetric"); DrawResCollection(c, "negative"); DrawResCollection(c, "positive"); DrawResCollection(c, "other"); CloseCanvas(); }
ribi::QtTestImageCanvasMainDialog::QtTestImageCanvasMainDialog(QWidget *parent) : QtHideAndShowDialog(parent), ui(new Ui::QtTestImageCanvasMainDialog), m_canvas(CreateCanvas()), m_qtcanvas{} { #ifndef NDEBUG Test(); #endif ui->setupUi(this); { assert(ui->verticalLayout); m_qtcanvas = new QtCanvas(m_canvas); ui->verticalLayout->addWidget(m_qtcanvas); } }
void TerrainTilesPanel::InitPanel(int numCols, int numRows) { //Recreate canvas CreateCanvas(numCols, numRows); //Fill with invalid TerrainTile FillTerrainTiles(InvalidTerrainTileId, ion::Vector2i(0, 0), ion::Vector2i(numCols - 1, numRows - 1)); //Redraw TerrainTiles on canvas PaintCollisionTerrainTiles(); //Recreate grid CreateGrid(numCols, numRows, numCols, numRows); //Centre camera and reset zoom ResetZoomPan(); }
ribi::maziak::QtMaziakCanvas::QtMaziakCanvas( const int size) : QtCanvas(CreateCanvas(size,size)), m_dialog(CreateWidget(size)), m_text_canvas{}, m_timer_enemy(new QTimer), m_timer_press_key(new QTimer), m_timer_show_solution(new QTimer), m_view_height(9), m_view_width(9) { m_text_canvas = boost::dynamic_pointer_cast<TextCanvas>(this->GetCanvas()); assert(m_text_canvas); m_dialog->m_signal_game_over.connect( boost::bind(&ribi::maziak::QtMaziakCanvas::OnGameOver,this) ); m_dialog->m_signal_game_won.connect( boost::bind(&ribi::maziak::QtMaziakCanvas::OnGameWon,this) ); m_dialog->m_signal_start_showing_solution.connect( boost::bind(&ribi::maziak::QtMaziakCanvas::OnTimerStartShowingSolution,this) ); m_timer_press_key->setInterval(100); m_timer_enemy->setInterval(1000); m_timer_show_solution->setInterval(5000); QObject::connect(m_timer_press_key.get(),&QTimer::timeout, this,&ribi::maziak::QtMaziakCanvas::OnTimerPressKey); QObject::connect(m_timer_enemy.get(),&QTimer::timeout, this,&ribi::maziak::QtMaziakCanvas::OnTimerEnemy); QObject::connect(m_timer_show_solution.get(),&QTimer::timeout, this,&ribi::maziak::QtMaziakCanvas::OnTimerStopShowingSolution); m_timer_press_key->start(); m_timer_enemy->start(); OnTimerPressKey(); }
ribi::QtTestDrawCanvasMainDialog::QtTestDrawCanvasMainDialog(QWidget *parent) : QtHideAndShowDialog(parent), ui(new Ui::QtTestDrawCanvasMainDialog), m_canvas(CreateCanvas()), m_surface_plot(new ribi::QtSurfacePlotWidget) { #ifndef NDEBUG Test(); #endif ui->setupUi(this); { assert(ui->verticalLayout); QtCanvas * const qtcanvas { new QtCanvas(m_canvas) }; ui->verticalLayout->addWidget(qtcanvas); ui->verticalLayout->addWidget(m_surface_plot); } { const double w = m_canvas->GetWidth(); const double h = m_canvas->GetHeight(); ui->box_circle_x->setValue(0.5 * w); ui->box_circle_y->setValue(0.5 * h); ui->box_circle_r->setValue(0.4 * h); ui->box_dot_x->setValue(0.5 * w); ui->box_dot_y->setValue(0.5 * h); ui->box_line_x1->setValue(0.25 * w); ui->box_line_y1->setValue(0.25 * h); ui->box_line_x2->setValue(0.75 * w); ui->box_line_y2->setValue(0.75 * h); } OnChanged(); }
void fill_stack_eventcategories(TString variable_name, TString data_name, std::vector<TString> signal_names, std::vector<TString> names){ TString canvas_name=variable_name+"_stack_canvas"; CreateCanvas(canvas_name,"",900,600); TString stack_name=variable_name+"_stack"; CreateStack(stack_name,""); int Nbkg=names.size(); vector<int> colors; colors.push_back(4); colors.push_back(9); colors.push_back(5); colors.push_back(419); colors.push_back(7); if(colors.size()<Nbkg) { cout << "please specify colors" << endl; return; } TLegend *L = new TLegend(0.6,0.57,0.89,0.89); L->SetFillColor(10); L->SetLineColor(10); L->SetLineWidth(0); for(int ibkg=0; ibkg<Nbkg; ibkg++){ TString histName=variable_name+names.at(ibkg); hName[histName]->SetFillColor(colors.at(ibkg)); stackName[stack_name]->Add(hName[histName]); L->AddEntry(hName[histName], names.at(ibkg)); } TString eventspad_name="eventspad_"+variable_name; TString ratiopad_name="ratiopad_"+variable_name; TPad *events_pad = new TPad(eventspad_name,"Events",0.0,0.3,1,1); TPad *ratio_pad = new TPad(ratiopad_name,"Ratio",0,0.,1,0.3); events_pad->SetTopMargin(0.1); events_pad->SetBottomMargin(0.05); ratio_pad->SetTopMargin(0.05); ratio_pad->SetBottomMargin(0.3); CName[canvas_name]->cd(); events_pad->Draw(); ratio_pad->Draw(); events_pad->cd(); gPad->SetLogy(); hName[variable_name+data_name]->GetYaxis()->SetTitleOffset(0.65); hName[variable_name+data_name]->GetYaxis()->SetTitleSize(0.08); hName[variable_name+data_name]->GetYaxis()->SetLabelSize(0.05); hName[variable_name+data_name]->GetXaxis()->SetLabelSize(0); hName[variable_name+data_name]->GetXaxis()->SetTitleSize(0); hName[variable_name+data_name]->SetMarkerSize(0.5); hName[variable_name+data_name]->SetMarkerStyle(20); hName[variable_name+data_name]->DrawCopy("E1"); stackName[stack_name]->DrawClone("histo same"); hName[variable_name+data_name]->DrawCopy("E1 same");// draw data on top of MC and MC on top of data, so that data will always be visible TLatex txt; txt.SetNDC(kTRUE); txt.DrawLatex(0.2,0.85,"S_{T} > 300 GeV"); txt.DrawLatex(0.4,0.75,"S_{T} > 500 GeV"); txt.DrawLatex(0.65,0.42,"S_{T} > 1000 GeV"); for(int isig=0; isig<signal_names.size();isig++){ TString sigName=variable_name+signal_names.at(isig); hName[sigName]->SetLineWidth(3); hName[sigName]->SetLineStyle(kDashed); hName[sigName]->SetLineColor(1+isig); L->AddEntry(hName[sigName], signal_names.at(isig)); hName[sigName]->DrawCopy("hist same"); } L->DrawClone("same"); ratio_pad->cd(); TString dataMC=variable_name+"_RatioDataMC"; hName[dataMC]->GetYaxis()->SetTitleOffset(0.45); hName[dataMC]->GetYaxis()->SetTitleSize(0.15); hName[dataMC]->GetYaxis()->SetTitleOffset(0.45); hName[dataMC]->GetYaxis()->SetLabelSize(0.08); hName[dataMC]->GetXaxis()->SetTitleSize(0.15); hName[dataMC]->GetXaxis()->SetLabelSize(0.12); hName[dataMC]->GetXaxis()->SetTitleSize(0.15); hName[dataMC]->DrawCopy("E1"); }
void draw_model_independent(){ for(int nJets=4; nJets<=8; nJets++){ for (int nb=0; nb<=2; nb++) { TLegend Leg(0.65,0.65,0.85,0.8); Leg.SetFillColor(10); Leg.SetBorderSize(0); Leg.SetLineColor(10); TString nameObs=Form("ModelIndependent_obs_nJets%d_nb%d",nJets,nb); TString nameExp=Form("ModelIndependent_exp_nJets%d_nb%d",nJets,nb); TString nameExp_1S=Form("ModelIndependent_exp_1sigma_nJets%d_nb%d",nJets,nb); TString nameExp_2S=Form("ModelIndependent_exp_2sigma_nJets%d_nb%d",nJets,nb); CreateCanvas(Form("ModelIndependent_Plots_nJets%d_%dbtags",nJets,nb), "", 600,600); CName[Form("ModelIndependent_Plots_nJets%d_%dbtags",nJets,nb)]->cd(); gPad->SetLogy(); grName[nameObs]->SetLineColor(kBlack); grName[nameExp]->SetLineColor(kBlack); grName["stop_xs_st_Acc0p5"]->SetLineColor(kRed); grName["stop_xs_st_Acc0p5"]->SetLineWidth(2); grName[nameExp]->SetLineStyle(kDashed); grName[nameExp_1S]->SetFillStyle(1001); grName[nameExp_2S]->SetFillStyle(1001); grName[nameExp_1S]->SetFillColor(3); grName[nameExp_2S]->SetFillColor(5); grName[nameExp_1S]->Draw("a3"); grName[nameExp_1S]->GetXaxis()->SetRangeUser(300,2000); grName[nameExp_1S]->GetYaxis()->SetRangeUser(0.05,20); grName[nameExp_1S]->GetXaxis()->SetNdivisions(6); //grName[nameExp_1S]->GetYaxis()->SetRangeUser(5,1.5*grName["squark_xs"]->Eval(300)); grName[nameExp_1S]->GetXaxis()->SetTitle("S_{T}^{min} (GeV)"); grName[nameExp_1S]->GetYaxis()->SetTitle("#sigma*A (fb)"); Leg.AddEntry(grName[nameObs],"observed","L"); Leg.AddEntry(grName[nameExp],"expected","L"); Leg.AddEntry(grName[nameExp_1S],"#pm 1SD","F"); TLatex txt; txt.SetNDC(kTRUE); grName[nameExp_1S]->Draw("a3"); grName[nameExp]->Draw("l same"); grName[nameObs]->Draw("l same"); //grName["stop_xs_st_Acc0p5"]->Draw("l same"); Leg.DrawClone(); txt.DrawLatex(0.5,0.8,Form("%d-jets, %d b-tags",nJets,nb)); draw_header(); gPad->RedrawAxis(); } } }
void draw_sensitivity(int mass){ CreateCanvas(Form("Limit_sensitivity_M%d",mass),"",600,600); CName[Form("Limit_sensitivity_M%d",mass)]->cd(); hName[Form("h_sensitivity_M%d_exp",mass)]->SetLineStyle(kDashed); hName[Form("h_sensitivity_M%d_obs",mass)]->SetLineWidth(2); hName[Form("h_sensitivity_M%d_exp_1sigmaP",mass)]->SetLineStyle(kDashed); hName[Form("h_sensitivity_M%d_exp_1sigmaM",mass)]->SetLineStyle(kDashed); hName[Form("h_sensitivity_M%d_exp_1sigmaP",mass)]->SetLineColor(kRed); hName[Form("h_sensitivity_M%d_exp_1sigmaM",mass)]->SetLineColor(kRed); hName[Form("h_sensitivity_M%d_exp",mass)]->SetMinimum(0); double max=1.5*hName[Form("h_sensitivity_M%d_exp_1sigmaP",mass)]->GetMaximum(); hName[Form("h_sensitivity_M%d_exp",mass)]->SetMaximum(max); hName[Form("h_sensitivity_M%d_exp",mass)]->Draw("histo"); hName[Form("h_sensitivity_M%d_obs",mass)]->Draw("histo same"); hName[Form("h_sensitivity_M%d_exp_1sigmaP",mass)]->Draw("histo same"); hName[Form("h_sensitivity_M%d_exp_1sigmaM",mass)]->Draw("histo same"); TLegend Leg(0.65,0.65,0.85,0.8); Leg.SetFillColor(10); Leg.SetBorderSize(0); Leg.SetLineColor(10); Leg.AddEntry(hName[Form("h_sensitivity_M%d_exp",mass)],"Expected","L" ); Leg.AddEntry(hName[Form("h_sensitivity_M%d_exp_1sigmaP",mass)],"#pm 1 #sigma","L"); Leg.AddEntry(hName[Form("h_sensitivity_M%d_obs",mass)],"Observed","L"); Leg.DrawClone(); TLatex txt; txt.SetNDC(kTRUE); txt.DrawLatex(0.62,0.85,Form("M_{#tilde{q}}=%d GeV",mass)); /* CreateGraph(Form("sensitivity_M%d_obs",mass) ); CreateGraph(Form("sensitivity_M%d_exp",mass) ); CreateGraph(Form("sensitivity_M%d_exp_1sigma",mass) ); CreateGraph(Form("sensitivity_M%d_exp_2sigma",mass) ); for(int i=0; i<grName[Form("sensitivity_M%d_exp",mass)]->GetN(); i++){ cout << " x: " << grName[Form("sensitivity_M%d_exp",mass)]->GetX()[i] << " "; cout << " y: " << grName[Form("sensitivity_M%d_exp",mass)]->GetY()[i] << endl; } grName[Form("sensitivity_M%d_obs",mass)]->SetLineStyle(kDashed); grName[Form("sensitivity_M%d_obs",mass)]->SetLineColor(kBlack); grName[Form("sensitivity_M%d_exp",mass)]->SetFillStyle(1001); grName[Form("sensitivity_M%d_exp_1sigma",mass)]->SetFillColor(419); grName[Form("sensitivity_M%d_exp",mass)]->Draw("ap"); int nJ=4; for(int i=0; i<15; i++){ TString label=Form("%d",nJ); if(nJ==8)label=Form("#geq %d",nJ); grName[Form("sensitivity_M%d_exp",mass)]->GetXaxis()->SetBinLabel(i+1,label); nJ++; if(nJ>8)nJ=4; } // grName[Form("sensitivity_M%d_exp",mass)]->GetXaxis()->SetRangeUser(4,24); // grName["xs_limit_1sigma"]->Draw("a3"); grName[Form("sensitivity_M%d_exp",mass)]->Draw("ap "); //grName["xs_limit_2sigma"]->Draw("a3 same"); grName[Form("sensitivity_M%d_obs",mass)]->Draw("p same"); */ }
void draw_plots(){ CreateCanvas(Form("Limit_Plot"),"",600,600); CName["Limit_Plot"]->cd(); gPad->SetLogy(); grName["squark_xs"]->SetLineColor(kBlack); grName["squark_xs"]->SetLineStyle(kDotted); grName["squark_xs"]->SetFillColor(46); grName["xs_exp_combined"]->SetLineColor(kBlack); grName["xs_obs_combined"]->SetLineColor(kBlack); grName["xs_exp_combined"]->SetLineStyle(kDashed); grName["xs_exp_combined_1sigma"]->SetFillStyle(1001); grName["xs_exp_combined_2sigma"]->SetFillStyle(1001); grName["xs_exp_combined_1sigma"]->SetFillColor(3); grName["xs_exp_combined_2sigma"]->SetFillColor(5); grName["xs_exp_combined_1sigma"]->Draw("a3"); grName["xs_exp_combined_2sigma"]->Draw("a3"); grName["xs_exp_combined_1sigma"]->GetXaxis()->SetRangeUser(300,900); grName["xs_exp_combined_2sigma"]->GetXaxis()->SetRangeUser(300,900); grName["xs_exp_combined_1sigma"]->GetYaxis()->SetRangeUser(5,1.5*grName["squark_xs"]->Eval(300)); grName["xs_exp_combined_2sigma"]->GetYaxis()->SetRangeUser(5,1.5*grName["squark_xs"]->Eval(300)); grName["xs_exp_combined_1sigma"]->GetXaxis()->SetTitle("M_{#tilde{q}} (GeV)"); grName["xs_exp_combined_1sigma"]->GetYaxis()->SetTitle("#sigma (fb)"); grName["xs_exp_combined_2sigma"]->GetXaxis()->SetTitle("M_{#tilde{q}} (GeV)"); grName["xs_exp_combined_2sigma"]->GetYaxis()->SetTitle("#sigma (fb)"); //grName["xs_exp_combined_2sigma"]->Draw("a3 same"); grName["xs_exp_combined_1sigma"]->Draw("a3"); grName["xs_exp_combined"]->Draw("l same"); grName["xs_obs_combined"]->Draw("l same"); grName["squark_xs"]->Draw("3 same"); grName["squark_xs"]->Draw("cx0 same"); grName["xs_exp_combined"]->Draw("l same"); grName["xs_obs_combined"]->Draw("l same"); TLegend Leg(0.6,0.5,0.85,0.67); Leg.SetFillColor(10); Leg.SetBorderSize(0); Leg.SetLineColor(10); Leg.AddEntry(grName["xs_exp_combined"],"Expected","L" ); Leg.AddEntry(grName["xs_obs_combined"],"Observed","L"); Leg.AddEntry(grName["xs_exp_combined_1sigma"],"#pm 1 #sigma_{ex}","f"); // Leg.AddEntry(grName["xs_exp_combined_2sigma"],"#pm 2 SD","f"); Leg.AddEntry(grName["squark_xs"],"#sigma_{#tilde{q}#tilde{q}} #pm 1 #sigma_{th} ","LF"); Leg.DrawClone(); //TLatex txt(0.4,0.85,"M_{#tilde{#chi}_{1}^{#pm}}=1/2#timesM_{#tilde{q}}, Br(#tilde{#chi}_{1}^{#pm}#rightarrowW^{#pm},#tilde{S})=1"); TLatex txt(0.6,0.85,"pp #rightarrow #tilde{q}_{L}#tilde{q}_{L}"); //TLatex txt1(0.2,0.3,"M_{ #tilde{#chi}_{1}^{#pm} }=1/2#timesM_{ #tilde{q} }"); TLatex txt1(0.2,0.3,"M_{ #tilde{#chi}_{1}^{#pm} }=1/2#timesM_{ #tilde{q} }"); TLatex txt2(0.2,0.2,"M_{#tilde{S}} = 100 GeV, M_{S} = 90 GeV"); //, Br(#tilde{#chi}_{1}^{#pm}#rightarrowW^{#pm},#tilde{S})=1"); txt.SetTextSize(0.045); txt.SetNDC(kTRUE); txt.DrawClone(); txt.DrawLatex(0.6,0.77,"#tilde{q}_{L}#rightarrow q #tilde{#chi}_{1}^{#pm}"); txt.DrawLatex(0.6,0.69,"#tilde{#chi}_{1}^{#pm}#rightarrow W^{#pm} #tilde{S}"); txt.DrawLatex(0.2,0.4,"#tilde{q}_{L}: #tilde{u}, #tilde{d}, #tilde{s}, #tilde{c}"); txt1.SetTextSize(0.045); txt1.SetNDC(kTRUE); txt2.SetTextSize(0.045); txt2.SetNDC(kTRUE); txt1.DrawClone(); txt2.DrawClone(); //txt.DrawLatex(0.4,0.75,"M_{#tilde{S}}=100 GeV, M_{S}=90 GeV"); CMS_lumi(CName["Limit_Plot"],2,10); //draw_header(); gPad->RedrawAxis(); }