void DrawWinBorder(UltimateContext *uc) { int active; unsigned long winbg; if(uc->frame == None) return; if((active = (uc == FocusWin))) { uc->flags |= ACTIVE_BORDER; } else { uc->flags &= ~ACTIVE_BORDER; } winbg = active ? TheScreen.ActiveBorder[TheScreen.desktop.ActiveWorkSpace] : TheScreen.InactiveBorder[TheScreen.desktop.ActiveWorkSpace]; XSetWindowBackground(disp, uc->border, winbg); XClearWindow(disp, uc->border); if(uc->title.win != None) { XSetWindowBackground(disp, uc->title.win, winbg); if(uc->title.name && (InitS.BorderTitleFlags & (active ? BT_ACTIVE_TITLE : BT_INACTIVE_TITLE))){ XRaiseWindow(disp,uc->title.win); DrawTitle(uc); } else { XLowerWindow(disp, uc->title.win); if(uc->flags & SHAPED) DrawTitle(uc); } } DrawFrameBevel(uc); }
void UpdateName(UltimateContext *uc) { char *name; if(!XFetchName(disp, uc->win, &name)) name = NULL; if(uc->title.name) XFree(uc->title.name); uc->title.name = name; if(uc->title.win != None){ if(uc->title.name) { int x, y, width, height; x = uc->title.x; y = uc->title.y; width = uc->title.width; height = uc->title.height; XResizeWindow(disp, uc->title.win, uc->title.width = (XTextWidth(TheScreen.TitleFont, uc->title.name, strlen(uc->title.name)) + (((InitS.BorderTitleFlags & BT_CENTER_TITLE) || (uc->flags & SHAPED)) ? 9 : 6)), uc->title.height = (TheScreen.TitleFont->ascent + TheScreen.TitleFont->descent + ((uc->flags & SHAPED) ? 6 : 3))); if((InitS.BorderTitleFlags & BT_CENTER_TITLE) || (uc->flags & SHAPED)) XMoveWindow(disp, uc->title.win, uc->title.x = ((uc->Attr.width - uc->title.width) / 2), uc->title.y = ((uc->flags & SHAPED) ? 0 : (uc->BorderWidth - TheScreen.FrameBevelWidth - 1) / 2 + TheScreen.FrameBevelWidth)); if((!((uc->title.width == width) && (uc->title.height == height) && (uc->title.x == x) && (uc->title.y == y))) && (uc->flags & SHAPED)) ShapeFrame(uc); DrawTitle(uc); } else XResizeWindow(disp,uc->title.win,0,0); } DBG(fprintf(TheScreen.errout,"Window Name: %s\n",uc->title.name);) }
void CPrintDlg::OnSize(UINT nType, int cx, int cy) { CDialogEx::OnSize(nType, cx, cy); if(cx ==0 && cy == 0) return; int nWidth = 0; //滚动条 if(m_nLength > cy - TITLE_HEIGHT){ m_scrollBarV.ShowScrollBar(TRUE); m_scrollBarV.MoveWindow(cx - SCROLL_WIDTH - RESIZE_GAP, TITLE_HEIGHT, SCROLL_WIDTH, cy - TITLE_HEIGHT - RESIZE_GAP, FALSE); m_scrollBarV.SetScrollRange(0, m_nLength - (cy - TITLE_HEIGHT)); nWidth = SCROLL_WIDTH; } else{ m_scrollBarV.ShowScrollBar(FALSE); m_nCurPos = 0; } m_scrollBarV.SetScrollPos(m_nCurPos); m_mdcBuf.ChangeBitmap(cx, cy); m_mdcBuf.FillSolidRect(0, 0, cx, cy, CLT_BK_COLOR); //重画标题栏 DrawTitle(cx,TITLE_HEIGHT); m_mdcBuf.BitBlt(0, 0, cx, TITLE_HEIGHT, &m_mdcTitle, 0, 0, SRCCOPY); m_mdcBuf.BitBlt((cx - nWidth - g_nRowWidth)/2, TITLE_HEIGHT, g_nRowWidth, cy - TITLE_HEIGHT, &m_mdcTable, 0, m_nCurPos, SRCCOPY); /*SCROLLINFO info; m_scrollBarV.GetScrollInfo(&info, SIF_ALL); info.nPage = cy - TITLE_HEIGHT; m_scrollBarV.SetScrollInfo(&info);*/ Invalidate(FALSE); }
void InformationState::DrawText() { DrawTitle(); DrawContent(); }
void cSkinCursesDisplayMenu::Flush(void) { if (cVideoDiskUsage::HasChanged(lastDiskUsageState)) DrawTitle(); cString date = DayDateTime(); osd->DrawText(ScOsdWidth - Utf8StrLen(date) - 2, 0, date, clrBlack, clrCyan, &Font); osd->Flush(); }
void TimeLogChart::OnPaint(wxPaintEvent &evt) { wxPaintDC dc(this); DrawAxis(dc); DrawTitle(dc); DrawCharts(dc); DrawLegends(dc); }
/***************************************************************** 関数名 : GameTitle 機能 : タイトルの処理 引数 : なし 出力 : ゲームの状態 *****************************************************************/ int GameTitle() { InitTitle(); while(gState == GAME_TITLE) { InputKey(); DrawTitle(); } return gState; }
void CHistoryView::OnMouseMove(UINT nFlags, CPoint point) { // TODO: Add your message handler code here and/or call default CClientDC dc(this); OnPrepareDC(&dc); DarwDenote(&dc,point); DrawTitle(&dc); CView::OnMouseMove(nFlags, point); }
/** *@brief Draws the Title Screen */ int StateTitle() { printf("In title screen\n"); SDL_RenderClear(GetRenderer()); UpdateTitleButtons(); DrawTitle(); NextFrame(); return 0; }
void do_redraw(char *userdata, GraphWin * wi) { if ( TransformCompute(wi) ) { DrawTitle(userdata, wi); DrawLegend(userdata, wi); DrawGridAndAxis(userdata, wi); DrawData(userdata, wi); DrawLabel(userdata, wi); } }
void CDreamSkinWindow::DrawItem(HDC hDC, SKINITEM *pItem, RECT rcItem, WCHAR *wstrTitle) { RECT rcClient = GetItemRectClient(pItem, rcItem); DrawBackground(hDC, rcItem, &pItem->skinBk); DrawBorder(hDC, &pItem->skinLBorder, &pItem->skinRBorder, &pItem->skinTBorder, &pItem->skinBBorder, rcItem); if (wstrTitle) DrawTitle(hDC, &pItem->skinTxt, rcClient, wstrTitle); }
HRGN CSkinWin::GetRegion(int w, int h) { CWnd *pWnd = CWnd::FromHandle(m_hWnd); CRect wr; pWnd->GetWindowRect(wr); //SKIN_SHANG 右边框 //wr.left+=m_BorderRightWidth; CRgn rgn; if ( m_bTrans ) { CDC *pDC = pWnd->GetDC(); CDC memDC; CMyBitmap bmp; CBitmap *obmp; memDC.CreateCompatibleDC(pDC); bmp.CreateCompatibleBitmap( pDC, w, m_TitleHeight ); obmp = memDC.SelectObject(&bmp); /* memDC.FillSolidRect( 0, 0, w, h, 0 ); DrawFrame( &memDC, 0, 0, w, h, 0 ); */ DrawTitle( &memDC, m_BorderLeftWidth , 0, wr.Width() - m_BorderRightWidth - m_BorderLeftWidth + 1, 0 ); DrawLeft( &memDC, 0, 0, m_bmpLeft.Height(), 0 ); //SKIN_SHANG 右边框 DrawRight( &memDC, wr.Width() - m_BorderRightWidth , 0, m_bmpRight.Height(), 0 ); memDC.SelectObject(obmp); //wyw memDC.DeleteDC(); pWnd->ReleaseDC( pDC ); rgn.CreateRectRgn( 0, m_TitleHeight, wr.Width(), wr.Height() ); HRGN hrgn = bmp.CreateRgnFromFile( m_colTrans ); CRgn newrgn; newrgn.CreateRectRgn( 0, m_TitleHeight, wr.Width(), wr.Height() ); newrgn.CombineRgn( &rgn, CRgn::FromHandle(hrgn), RGN_XOR ); //wyw bmp.DeleteObject(); DeleteObject(hrgn); rgn.DeleteObject(); return (HRGN)newrgn.Detach(); } else rgn.CreateRectRgn( 0, 0, wr.Width(), wr.Height() ); return (HRGN)rgn.Detach(); }
void CPrintGraph::BeginPrinting() { if(m_PrintOptions.m_bTitleOn) DrawTitle(); m_DC.SetViewportOrg(m_GraphOrigin.x, m_GraphOrigin.y); if(m_PrintOptions.m_bEquations) DrawEquationList(); }
BOOL CSkinWin::DrawFrame(CDC *pDC, int x, int y, int w, int h, int state, int title ) { //if ( title ) DrawTitle( pDC, x + m_BorderLeftWidth , y, w - m_BorderRightWidth - m_BorderLeftWidth + 1, state ); DrawLeft( pDC, x, y, h, state ); //SKIN_SHANG 右边框 DrawRight( pDC, x + w - m_BorderRightWidth , y, h, state ); DrawBottom( pDC, x + m_BorderLeftWidth, y + h - m_BorderBottomHeight, w - m_BorderRightWidth - m_BorderLeftWidth, state ); return TRUE; }
void mxExpressionSlider::redraw() { HWND wnd = (HWND)getHandle(); if ( !wnd ) return; HDC finalDC = GetDC( wnd ); if ( !finalDC ) return; RECT rc; GetClientRect( wnd, &rc ); int w = rc.right - rc.left; int h = rc.bottom - rc.top; HDC dc = CreateCompatibleDC( finalDC ); HBITMAP oldbm, bm; bm = CreateCompatibleBitmap( finalDC, w, h ); oldbm = (HBITMAP)SelectObject( dc, bm ); HBRUSH br = CreateSolidBrush( GetSysColor( COLOR_3DFACE ) ); FillRect( dc, &rc, br ); DeleteObject( br ); DrawTitle( dc ); DrawBar( dc ); // Draw slider for ( int i = ( m_bPaired ? 1 : 0 ); i >= 0 ; i-- ) { DrawThumb( i, dc ); } BitBlt( finalDC, 0, 0, w, h, dc, 0, 0, SRCCOPY ); SelectObject( dc, oldbm ); DeleteObject( bm ); DeleteDC( dc ); ReleaseDC( wnd, finalDC ); ValidateRect( wnd, &rc ); }
void pawsBorder::Draw() { if ( !draw ) return; frame = parent->GetScreenFrame(); if (title.Length()) DrawTitle(frame); // This adjusts the frame to preserve the title bar if present. if ( !usingGraphics ) { //if ( !justTitle ) // DrawFrame(frame); return; } ///////////////////////////// // Draw tiles across the top and bottom ///////////////////////////// borderImages[PAWS_BORDER_TOPLEFT]->Draw( frame.xmin - borderImages[PAWS_BORDER_TOPLEFT]->GetWidth(), frame.ymin - borderImages[PAWS_BORDER_TOPLEFT]->GetHeight() ); borderImages[PAWS_BORDER_BOTTOMLEFT]->Draw( frame.xmin - borderImages[PAWS_BORDER_BOTTOMLEFT]->GetWidth(), frame.ymax ); int locX, locY = frame.ymin - borderImages[PAWS_BORDER_TOPMIDDLE]->GetHeight(); for (locX = frame.xmin; locX < frame.xmax; locX += borderImages[PAWS_BORDER_TOPMIDDLE]->GetWidth() ) { borderImages[PAWS_BORDER_TOPMIDDLE]->Draw( locX, locY, csMin(borderImages[PAWS_BORDER_TOPMIDDLE]->GetWidth(),frame.xmax-locX), 0 ); borderImages[PAWS_BORDER_BOTTOMMIDDLE]->Draw( locX, frame.ymax, csMin(borderImages[PAWS_BORDER_BOTTOMMIDDLE]->GetWidth(),frame.xmax-locX), 0 ); } ///////////////////////////// // Draw tiles down the left and right ///////////////////////////// locX = frame.xmin - borderImages[PAWS_BORDER_LEFTMIDDLE]->GetWidth(); for (locY = frame.ymin; locY < frame.ymax; locY += borderImages[PAWS_BORDER_LEFTMIDDLE]->GetHeight() ) { borderImages[PAWS_BORDER_LEFTMIDDLE]->Draw( locX, locY, 0, csMin(borderImages[PAWS_BORDER_LEFTMIDDLE]->GetHeight(), frame.ymax-locY) ); borderImages[PAWS_BORDER_RIGHTMIDDLE]->Draw( frame.xmax, locY, 0, csMin(borderImages[PAWS_BORDER_RIGHTMIDDLE]->GetHeight(), frame.ymax-locY) ); } borderImages[PAWS_BORDER_TOPRIGHT]->Draw( frame.xmax, frame.ymin - borderImages[PAWS_BORDER_TOPRIGHT]->GetHeight() ); borderImages[PAWS_BORDER_BOTTOMRIGHT]->Draw( frame.xmax, frame.ymax ); }
void CBatmonContainer::Draw(const TRect& aRect) const { CWindowGc& gc=SystemGc(); gc.SetPenColor(TRgb::Color4K(0x048)); gc.SetPenStyle(CGraphicsContext::ESolidPen); gc.SetBrushColor(TRgb::Color4K(0x000)); gc.SetBrushStyle(CGraphicsContext::ESolidBrush); TRect rect=Rect(); gc.DrawRect(rect); DrawTitle(); DrawStatus(); DrawExitMark(); DrawPage(); }
void AS_Menu::Draw() { int row_x; int row_y = Screen::Instance().GetHeight() / 2 - 4 * m_font->GetTextHeight(GetModeText(0)); Renderer::Instance().SetBlendMode(Renderer::SOLID); Renderer::Instance().SetColor(180, 150, 150, 255); Renderer::Instance().DrawImage(m_background, 0, 0, 0, Screen::Instance().GetWidth(), Screen::Instance().GetHeight()); DrawTitle(); Renderer::Instance().SetBlendMode(Renderer::ALPHA); for (int i = 0; i < TOTAL_OPTIONS; i++) { row_x = Screen::Instance().GetWidth() / 2 - m_font->GetTextWidth(GetModeText(i)) / 2; if (m_option == i) Renderer::Instance().SetColor(255, 0, 127, 255); else Renderer::Instance().SetColor(255, 255, 255, 255); Renderer::Instance().DrawText(m_font, GetModeText(i), row_x, row_y + m_font->GetTextHeight(GetModeText(i))*i); row_y += m_font->GetTextHeight(GetModeText(i)); } }
LRESULT CDreamSkinStatic::OnPaint() { PAINTSTRUCT ps; HDC hPaintDC = ::BeginPaint(m_hWnd, &ps); ::SetBkMode(hPaintDC, TRANSPARENT); RECT rcClient; ::GetClientRect(m_hWnd, &rcClient); DrawBackground(hPaintDC, rcClient); DrawTitle(hPaintDC, rcClient); ::EndPaint(m_hWnd, &ps); return 0; }
//绘制标题栏 void CDBFrame::DrawCaption(CDC *pDC) { CRect rcWindow; GetWindowRect(&rcWindow); //画标题栏位图 CRect rcCaption(0,//m_rcSysBorder.left, m_rcSysBorder.top, rcWindow.Width(),// - m_rcSysBorder.right, m_rcSysBorder.top + m_imageCaption.Height()); if (m_bNcActivate) m_imageCaption.Render(pDC, rcCaption.TopLeft(), rcCaption.Size()); else m_imageCaptionNA.Render(pDC, rcCaption.TopLeft(), rcCaption.Size()); CRect rcTitle; GetTitleRect(rcTitle); DrawTitle(pDC, rcTitle); }
void TopMenuItem::Render(const Camera& curCamera) { menu_DrawQuad(0.f, 0.f, m_w, m_h, 1.f); float x = kHSpace; float y = m_h - kVSpace; for(int i = 0, c = GetChildren().size(); i < c; ++i) { auto child = GetChildren()[i]; float titlew,titleh; child->GetTitleDims(titlew, titleh); const Color* col = (GetPos() == i) ? &kTextSelColor : &kTextColor; if(child->HasFlag(MENUSTATE_Active)) col = &kTextActiveColor; child->DrawTitle(x, y, *col); x += 2.f * kHSpace + titlew; } for(auto child: GetChildren()) if(child->HasFlag(MENUSTATE_Active)) child->Render(curCamera); }
int main(int argc, char **argv) { MK_InitLibraries(); MK_LoadGfx(); Intro(); while(1)/// Infinite Loop /// { ExitForTheGame(); Play_Music(); switch(MenuIndex) { case 1: MainMenu(); break; case 2: InGame(); break; case 3: SelectMenu(); break; case 4: SelectSlot(); break; case 5: CreatingMenu(); break; case 6: SelectSlot2(); break; case 7: DrawTitle(); break; } ML_Refresh(); } return 0; }
void SubmenuMenuItem::Render(const Camera& curCamera) { menu_DrawQuad(m_x, m_y, m_w, m_h, 1.f); float penx = m_x + kHSpace; float peny = m_y + kVSpace; for(int i = 0, c = m_children.size(); i < c; ++i) { auto child = m_children[i]; float titlew,titleh; child->GetTitleDims(titlew, titleh); peny += titleh; const Color* col = (i == m_pos) ? &kTextSelColor : &kTextColor; if(child->HasFlag(MENUSTATE_Active)) col = &kTextActiveColor; child->DrawTitle(penx, peny, *col); peny += kVSpace; } for(auto child: m_children) if(child->HasFlag(MENUSTATE_Active)) child->Render(curCamera); }
int main() { TH1::AddDirectory(0); ModTDRStyle(); TCanvas* canv = new TCanvas("ma-tanb", "ma-tanb"); std::vector<TPad*> pads = OnePad(); contour2D("higgsCombinemhmax.MultiDimFit.mH120.root", "ma-tanb-contours.root", "mA", 70, 90, 1000, "tanb", 70, 1, 60); TLegend *legend = PositionedLegend(0.20, 0.12, 1, 0.03); drawContours(pads[0], "ma-tanb-contours.root", "m_{A} (GeV)", "tan#beta", legend); legend->Draw(); GetAxisHist(pads[0])->GetXaxis()->SetTitleOffset(1.); DrawCMSLogo(pads[0], "CMS", "Preliminary", 0, 0.045, 0.035, 1.2); DrawTitle(pads[0], "19.7 fb^{-1} (8 TeV) + 4.9 fb^{-1} (7 TeV)", 3); // drawTitle(pads[0], "H#rightarrow#tau#tau", 1); // pads[0]->SetLogx(1); // pads[0]->SetLogy(1); canv->Update(); pads[0]->RedrawAxis(); pads[0]->GetFrame()->Draw(); canv->Print(".pdf"); canv->Print(".png"); return 0; }
bool iupPlot::Render(cdCanvas* canvas) { if (!mRedraw) return true; // Shift the drawing area to the plot viewport cdCanvasOrigin(canvas, mViewport.mX, mViewport.mY); // There are no additional transformations set in the CD canvas, // all transformations are done here. cdCanvasClip(canvas, CD_CLIPAREA); // Draw the background, axis and grid restricted only by the viewport cdCanvasClipArea(canvas, 0, mViewport.mWidth - 1, 0, mViewport.mHeight - 1); // draw entire plot viewport DrawBackground(canvas); if (!mDataSetListCount) return true; cdCanvasNativeFont(canvas, IupGetAttribute(ih, "FONT")); ConfigureAxis(); if (!CalculateAxisRange()) return false; if (!CheckRange(mAxisX)) return false; if (!CheckRange(mAxisY)) return false; CalculateTitlePos(); // Must be before calculate margins CalculateTickSize(canvas, mAxisX.mTick); CalculateTickSize(canvas, mAxisY.mTick); CalculateMargins(canvas); iupPlotRect theDatasetArea; theDatasetArea.mX = mBack.mMargin.mLeft; theDatasetArea.mY = mBack.mMargin.mBottom; theDatasetArea.mWidth = mViewport.mWidth - mBack.mMargin.mLeft - mBack.mMargin.mRight; theDatasetArea.mHeight = mViewport.mHeight - mBack.mMargin.mTop - mBack.mMargin.mBottom; if (!CalculateTickSpacing(theDatasetArea, canvas)) return false; if (!CalculateXTransformation(theDatasetArea)) return false; if (!CalculateYTransformation(theDatasetArea)) return false; IFnC pre_cb = (IFnC)IupGetCallback(ih, "PREDRAW_CB"); if (pre_cb) pre_cb(ih, canvas); if (mBack.GetImage()) DrawBackgroundImage(canvas); if (!mGrid.DrawX(mAxisX.mTickIter, mAxisX.mTrafo, theDatasetArea, canvas)) return false; if (mGrid.mShowX) mGridMinor.DrawX(mAxisX.mTickIter, mAxisX.mTrafo, theDatasetArea, canvas); if (!mGrid.DrawY(mAxisY.mTickIter, mAxisY.mTrafo, theDatasetArea, canvas)) return false; if (mGrid.mShowY) mGridMinor.DrawY(mAxisY.mTickIter, mAxisY.mTrafo, theDatasetArea, canvas); if (!mAxisX.DrawX(theDatasetArea, canvas, mAxisY)) return false; if (!mAxisY.DrawY(theDatasetArea, canvas, mAxisX)) return false; if (mBox.mShow) mBox.Draw(theDatasetArea, canvas); // draw the datasets, legend, crosshair and selection restricted to the dataset area cdCanvasClipArea(canvas, theDatasetArea.mX, theDatasetArea.mX + theDatasetArea.mWidth - 1, theDatasetArea.mY, theDatasetArea.mY + theDatasetArea.mHeight - 1); IFniiddi drawsample_cb = (IFniiddi)IupGetCallback(ih, "DRAWSAMPLE_CB"); for (int ds = 0; ds < mDataSetListCount; ds++) { iupPlotDataSet* dataset = mDataSetList[ds]; if (drawsample_cb) { iupPlotSampleNotify inNotify = { ih, ds, drawsample_cb }; dataset->DrawData(mAxisX.mTrafo, mAxisY.mTrafo, canvas, &inNotify); } else dataset->DrawData(mAxisX.mTrafo, mAxisY.mTrafo, canvas, NULL); } if (mCrossHairH) DrawCrossHairH(theDatasetArea, canvas); else if (mCrossHairV) DrawCrossHairV(theDatasetArea, canvas); if (mShowSelectionBand) { if (mSelectionBand.mX < theDatasetArea.mX) { mSelectionBand.mWidth = mSelectionBand.mX + mSelectionBand.mWidth - theDatasetArea.mX; mSelectionBand.mX = theDatasetArea.mX; } if (mSelectionBand.mY < theDatasetArea.mY) { mSelectionBand.mHeight = mSelectionBand.mY + mSelectionBand.mHeight - theDatasetArea.mY; mSelectionBand.mY = theDatasetArea.mY; } if (mSelectionBand.mX + mSelectionBand.mWidth > theDatasetArea.mX + theDatasetArea.mWidth) mSelectionBand.mWidth = theDatasetArea.mX + theDatasetArea.mWidth - mSelectionBand.mX; if (mSelectionBand.mY + mSelectionBand.mHeight > theDatasetArea.mY + theDatasetArea.mHeight) mSelectionBand.mHeight = theDatasetArea.mY + theDatasetArea.mHeight - mSelectionBand.mY; mBox.Draw(mSelectionBand, canvas); } IFnC post_cb = (IFnC)IupGetCallback(ih, "POSTDRAW_CB"); if (post_cb) post_cb(ih, canvas); if (!DrawLegend(theDatasetArea, canvas, mLegend.mPos)) return false; // Draw title restricted only by the viewport cdCanvasClipArea(canvas, 0, mViewport.mWidth - 1, 0, mViewport.mHeight - 1); DrawTitle(canvas); if (!IupGetInt(ih, "ACTIVE")) DrawInactive(canvas); mRedraw = false; return true; }
//绘制框架 void CHistoryView::DrawFrameText(CDC* pDC) { CHistoryDoc* pHistoryDoc = (CHistoryDoc*)GetDocument(); //Draw矩形框 CPen pen( PS_SOLID,m_nPenWidth,RGB(255,0,0) ); CPen* pOldPen = pDC->SelectObject(&pen); pDC->SelectStockObject(NULL_BRUSH); pDC->Rectangle(&m_rectFrame); pDC->Rectangle(&m_rectTop); pDC->Rectangle(&m_rectMid); pDC->Rectangle(&m_rectBottom); pDC->SelectObject(&pOldPen); DrawTitle(pDC); //绘制数据 COLORREF colorOldText = pDC->SetTextColor( RGB(255, 255, 0) ); COLORREF colorOldBk = pDC->SetBkColor( RGB(0,0,0) ); int nSel = ( (CHistoryFrame*)GetParentFrame() )->GetSliderCtrlPos(); pHistoryDoc->GetPriceRange(nSel,m_nStockNumPerPage); CRect rect; CString str; rect.left = m_rectMid.left - 100; rect.right = m_rectMid.left - 5; rect.top = m_rectMid.top; rect.bottom = rect.top - 100; str.Format("%.4lf",pHistoryDoc->m_dbHiPrice); pDC->DrawText(str,&rect,DT_SINGLELINE | DT_RIGHT); //历史最高价 rect.left = m_rectMid.left - 100; rect.right = m_rectMid.left - 5; rect.top = m_rectMid.top; rect.bottom = m_rectMid.bottom; str.Format("%.4lf",pHistoryDoc->m_dbLowPrice); pDC->DrawText(str,&rect,DT_SINGLELINE | DT_BOTTOM | DT_RIGHT); //历史最低价 rect.left = m_rectMid.left - 100; rect.right = m_rectMid.left - 5; rect.top = (m_rectMid.top + m_rectMid.bottom) / 2 + 10; rect.bottom = rect.top - 100; double dbAverPrice = ( pHistoryDoc->m_dbHiPrice + pHistoryDoc->m_dbLowPrice ) / 2; str.Format("%.4lf",dbAverPrice); pDC->DrawText(str,&rect,DT_SINGLELINE | DT_RIGHT); //历史平均价 CPen pen1(PS_SOLID,m_nPenWidth,RGB(255,255,0)); CPen* pOldPen1 = pDC->SelectObject(&pen1); pDC->MoveTo(m_rectMid.left,rect.top); pDC->LineTo(m_rectMid.right,rect.top); pDC->SelectObject(pOldPen1); rect.left = m_rectMid.left; rect.right = m_rectMid.right; rect.top = m_rectMid.bottom; rect.bottom = m_rectBottom.top; str.Format("%s",pHistoryDoc->m_arrayHistoryInfo[nSel]->m_cDealDate); pDC->DrawText(str,&rect,DT_SINGLELINE | DT_LEFT); //交易日期 str.Format("%s",pHistoryDoc->m_arrayHistoryInfo[nSel + m_nStockNumPerPage - 1]->m_cDealDate); pDC->DrawText(str,&rect,DT_SINGLELINE | DT_RIGHT); //交易日期 pDC->SetTextColor( RGB(0, 255, 0) ); pDC->SetBkColor( RGB(0,0,0) ); rect.left = m_rectBottom.left - 100; rect.right = m_rectBottom.left - 5; rect.top = m_rectBottom.top; rect.bottom = m_rectBottom.bottom; str.Format("%d",pHistoryDoc->m_nHiQuantity); pDC->DrawText(str,&rect,DT_SINGLELINE | DT_RIGHT); //最大成交量 pDC->SetTextColor(colorOldText); pDC->SetBkColor(colorOldBk); }
int main(int argc, char* argv[]) { Json::Value const js = ch::MergedJson(argc, argv); TH1::AddDirectory(0); ModTDRStyle(); TCanvas canv(js.get("output", "scan").asCString(), ""); std::vector<TPad*> pads = OnePad(); std::vector<TLine *> lines; std::vector<Scan> scans; for (auto it = js["env"].begin(); it != js["env"].end(); ++it) { std::cout << (*it).asString() << "\n"; } std::string xvar = js.get("xvar", "r").asString(); std::string yvar = js.get("yvar", "2. * deltaNLL").asString(); bool re_zero_graphs = js.get("rezero", true).asBool(); double cross = js.get("crossing", 1.0).asFloat(); int precision = js.get("precision", 2).asInt(); std::set<std::string> draw; for (unsigned i = 0; i < js["draw"].size(); ++i) { draw.insert(js["draw"][i].asString()); } for (unsigned i = 0; i < js["scans"].size(); ++i) { Json::Value const sc_js = js["scans"][i]; if (!draw.count(sc_js["label"].asString())) continue; Scan scan; scan.file = sc_js["file"].asString(); scan.tree = sc_js["tree"].asString(); scan.color = sc_js["color"].asInt(); scan.label = sc_js["legend"].asString(); scans.push_back(scan); } if (scans.size() == 0) return 1; TLegend *leg = PositionedLegend(0.4, 0.15 * float(scans.size()) / 1.7, 2, 0.03); leg->SetTextSize(0.035); for (unsigned i = 0; i < scans.size(); ++i) { Scan & sc = scans[i]; TFile f(sc.file.c_str()); TTree *t = static_cast<TTree*>(f.Get(sc.tree.c_str())); sc.gr = new TGraph(TGraphFromTree(t, xvar, yvar)); sc.gr->Sort(); for (int j = 0; j < sc.gr->GetN(); ++j) { if (std::fabs(sc.gr->GetY()[j] - 0.) < 1E-5) sc.bestfit = sc.gr->GetX()[j]; } if (re_zero_graphs) ReZeroTGraph(sc.gr); auto x1 = GetCrossings(*(sc.gr), 1.0); TString res; if (x1.size() == 2) { sc.uncert = (x1[1]-x1[0])/2.0; std::cout << "Best fit is: " << sc.bestfit << " +/- " << sc.uncert << "\n"; lines.push_back(new TLine(x1[0], 0, x1[0], 1.0)); lines.back()->SetLineColor(sc.color); lines.back()->SetLineWidth(2); lines.push_back(new TLine(x1[1], 0, x1[1], 1.0)); lines.back()->SetLineColor(sc.color); lines.back()->SetLineWidth(2); res = TString::Format( TString::Format("%%.%if#pm%%.%if", precision, precision), sc.bestfit, sc.uncert); TString leg_text = "#splitline{"+sc.label+"}{"+res+"}"; sc.gr->SetLineColor(sc.color); sc.gr->SetLineWidth(3); leg->AddEntry(sc.gr, leg_text, "L"); } } TH1 *axis = CreateAxisHist(scans[0].gr, true); axis->GetXaxis()->SetTitle(js["x_axis_title"].asCString()); axis->GetYaxis()->SetTitle(js["y_axis_title"].asCString()); axis->Draw(); for (unsigned i = 0; i < scans.size(); ++i) { Scan & sc = scans[i]; sc.gr->Draw("LSAME"); } leg->Draw(); double xmin = axis->GetXaxis()->GetXmin(); double xmax = axis->GetXaxis()->GetXmax(); lines.push_back(new TLine(xmin, cross, xmax, cross)); lines.back()->SetLineColor(2); for (auto l : lines) l->Draw(); DrawCMSLogo(pads[0], "CMS", js["cms_label"].asString(), 0); DrawTitle(pads[0], js["title_right"].asString(), 3); canv.Update(); canv.SaveAs(".pdf"); canv.SaveAs(".png"); return 0; }
void MainMenu () { if (Key==27) GAME_TYPE=-1; if (MENU_SELECTED==11 && (Key==' ' || Arrow==28)) GAME_TYPE=-1; if (Key=='s' || Arrow=='P') MENU_SELECTED++; if (Key=='w' || Arrow=='H') MENU_SELECTED--; if (MENU_SELECTED<0) MENU_SELECTED=11; if (MENU_SELECTED>11) MENU_SELECTED=0; if (MENU_SELECTED==0 && (Key==' ' || Arrow==28)) { GAME_TYPE=1; GLOBAL_CHECKPOINT=0; return; } if (MENU_SELECTED==3 && (Key=='a' || Key=='d' || Arrow=='K' || Arrow=='M')) { if (GLOBAL_BACKGROUNDCOLOR==0) { GLOBAL_BACKGROUNDCOLOR=0x00ffffff; GLOBAL_FRONTCOLOR=0; } else { GLOBAL_BACKGROUNDCOLOR=0; GLOBAL_FRONTCOLOR=0x00ffffff; } } if (MENU_SELECTED==1) { if ((Key=='a' || Arrow=='K') && CURRENT_LEVEL>0) CURRENT_LEVEL--; if ((Key=='d' || Arrow=='M') && CURRENT_LEVEL<MAX_LEVEL) CURRENT_LEVEL++; HeroSides=LevelProps[CURRENT_LEVEL][2]; } if (MENU_SELECTED==2) { if ((Key=='a' || Arrow=='K') && COLOR_INDEX>0) COLOR_INDEX--; if ((Key=='d' || Arrow=='M') && COLOR_INDEX<6) COLOR_INDEX++; HeroColor=RAINBOW_TABLE [COLOR_INDEX][0]; GLOBAL_BLOCKCOLOR=RAINBOW_TABLE [COLOR_INDEX][1]; GLOBAL_BATUTCOLOR=RAINBOW_TABLE [COLOR_INDEX][2]; GLOBAL_PITCOLOR=RAINBOW_TABLE [COLOR_INDEX][3]; GLOBAL_FLAGCOLOR=RAINBOW_TABLE [COLOR_INDEX][4]; } if (MENU_SELECTED==7 && (Key=='a' || Key=='d' || Arrow=='K' || Arrow=='M')) { if (SAVE_FOLDER_TYPE==0) { SAVE_FOLDER_TYPE=1; } else { SAVE_FOLDER_TYPE=0; } } if (MENU_SELECTED==8 && (Key=='a' || Key=='d' || Arrow=='K' || Arrow=='M')) { int i=0; int j=0; for (i=0; i<Width; i++) { for (j=0; j<Height; j++) { BufferDraw[i][j]=GLOBAL_BACKGROUNDCOLOR; } } Update(); if (DRAW_TECH==0) { DRAW_TECH=1; } else { DRAW_TECH=0; } Update(); } if (MENU_SELECTED==9) { if ((Key=='a' || Arrow=='K') && Max_Speed>1) Max_Speed--; if ((Key=='d' || Arrow=='M') && Max_Speed<14) Max_Speed++; } if (MENU_SELECTED==4 && (Key==' ' || Arrow==28)) LoadData(); if (MENU_SELECTED==5 && (Key==' ' || Arrow==28)) SaveData(); if (MENU_SELECTED==6 && (Key==' ' || Arrow==28)) { if (CURRENT_LEVEL>=3) { DrawText (300,300,"error",GLOBAL_FRONTCOLOR); DrawText (30,320,"(choose level 0/1/2 to edit them)",GLOBAL_FRONTCOLOR); Update(); _ksys_delay(200); MENU_SELECTED=1; } else { GAME_TYPE=3; Panel=1; } } if (Key=='f' && CURRENT_LEVEL<3) { GAME_TYPE=3; Panel=1; } if (MENU_SELECTED==10 && (Key==' ' || Arrow==28)) GAME_TYPE=2; DrawTitle (60,100,GLOBAL_FRONTCOLOR); DrawText (100,300,"start game",GLOBAL_FRONTCOLOR); DrawText (100,320,"choose level < >",GLOBAL_FRONTCOLOR); IntToStr(CURRENT_LEVEL,NUMBER); DrawText (345,320,NUMBER,GLOBAL_FRONTCOLOR); DrawText (100,340,"hero color < >",GLOBAL_FRONTCOLOR); DrawText (330, 340, RAINBOW_NAME [COLOR_INDEX], GLOBAL_FRONTCOLOR); DrawText (100,360,"background color < >",GLOBAL_FRONTCOLOR); if (GLOBAL_BACKGROUNDCOLOR==0) { DrawText (430,360,"black",GLOBAL_FRONTCOLOR); } else { DrawText (430,360,"white",GLOBAL_FRONTCOLOR); } DrawText (100,400,"load game",GLOBAL_FRONTCOLOR); DrawText (100,420,"save game",GLOBAL_FRONTCOLOR); DrawText (100,440,"level editor",GLOBAL_FRONTCOLOR); DrawText (100,460,"saveload folder < >",GLOBAL_FRONTCOLOR); if (SAVE_FOLDER_TYPE==0) { DrawText (400,460,"local",GLOBAL_FRONTCOLOR); } else { DrawText (400,460,"usbhd0/1/",GLOBAL_FRONTCOLOR); } DrawText (100,480,"redraw technology < >",GLOBAL_FRONTCOLOR); if (DRAW_TECH==0) { DrawText (450,480,"frame",GLOBAL_FRONTCOLOR); } else { DrawText (450,480,"lines",GLOBAL_FRONTCOLOR); } DrawText (100,500,"max speed < >",GLOBAL_FRONTCOLOR); IntToStr(Max_Speed,NUMBER); DrawText (300,500,NUMBER,GLOBAL_FRONTCOLOR); DrawText (100,520,"help",GLOBAL_FRONTCOLOR); DrawText (100,540,"quit",GLOBAL_FRONTCOLOR); DrawText (20,580,"developed by e_shi games 2014",GLOBAL_FRONTCOLOR); if (MENU_SELECTED==0) DrawText (100,300,"start game",HeroColor); if (MENU_SELECTED==1) DrawText (100,320,"choose level < >",HeroColor); if (MENU_SELECTED==2) DrawText (100,340,"hero color < >",HeroColor); if (MENU_SELECTED==3) DrawText (100,360,"background color < >",HeroColor); if (MENU_SELECTED==4) DrawText (100,400,"load game",HeroColor); if (MENU_SELECTED==5) DrawText (100,420,"save game",HeroColor); if (MENU_SELECTED==6) DrawText (100,440,"level editor",HeroColor); if (MENU_SELECTED==7) DrawText (100,460,"saveload folder < >",HeroColor); if (MENU_SELECTED==8) DrawText (100,480,"redraw technology < >",HeroColor); if (MENU_SELECTED==9) DrawText (100,500,"max speed < >",HeroColor); if (MENU_SELECTED==10) DrawText (100,520,"help",HeroColor); if (MENU_SELECTED==11) DrawText (100,540,"quit",HeroColor); }
void cSkinReelDisplayReplay::SetTitle(const char *Title) { DrawTitle(Title); }
void CSkinWin::OnNcPaint(HRGN rgn1) { CWnd *pWnd = CWnd::FromHandle(m_hWnd); CDC * pDC = pWnd->GetWindowDC(); CRect wr; pWnd->GetWindowRect( wr ); //SKIN_SHANG 右边框 //wr.left+=m_BorderRightWidth; DWORD style = GetWindowLong( m_hWnd, GWL_STYLE ); DWORD nCaption = style & WS_CAPTION ; if (nCaption == 0) { //wyw pWnd->ReleaseDC(pDC); return; } //f ( (DWORD)rgn) //pDC->SelectClipRgn( CRgn::FromHandle(rgn) ); //m_bActive = GetActiveWindow() == m_hWnd; int state = 0; if ( m_bActive) state = 0; else state = 1; pDC->ExcludeClipRect(0, 0, wr.Width(), m_TitleHeight ); DrawFrame(pDC, 0, 0, wr.Width(), wr.Height(), state, 0); pDC->SelectClipRgn( NULL ); CDC memDC, *pNewDC; CMyBitmap bmp; CBitmap *obmp; memDC.CreateCompatibleDC( pDC ); bmp.CreateCompatibleBitmap( pDC, wr.Width(), m_TitleHeight ); obmp = memDC.SelectObject(&bmp); pNewDC = &memDC; DrawTitle( pNewDC, m_BorderLeftWidth , 0, wr.Width() - m_BorderRightWidth - m_BorderLeftWidth + 1, state ); DrawLeft( pNewDC, 0, 0, m_bmpLeft.Height(), state ); //SKIN_SHANG 右边框 DrawRight( pNewDC, wr.Width() - m_BorderRightWidth , 0, m_bmpRight.Height(), state ); CRgn newrgn; newrgn.CreateRectRgn( 0, 0, wr.Width(), wr.Height()); if ( m_bTrans ) { CRgn rgn; rgn.CreateRectRgn( 0, m_TitleHeight, wr.Width(), wr.Height() ); HRGN hrgn = bmp.CreateRgnFromFile( m_colTrans ); //wyw 防止内存增大 // newrgn.CombineRgn( &rgn, CRgn::FromHandle(hrgn), RGN_XOR); pDC->SelectClipRgn( &newrgn ); //wyw DeleteObject(hrgn); rgn.DeleteObject(); } else SetWindowRgn(m_hWnd, newrgn, FALSE); if (m_sysmenu){ if( m_downHitTest == HTCLOSE ) DrawButton( pNewDC, 0, 1 ); else if ( m_moveHitTest == HTCLOSE) DrawButton( pNewDC, 0, 2 ); else DrawButton( pNewDC, 0, 0 ); } /*if ( m_downHitTest == HTMAXBUTTON ) DrawButton( pNewDC, 1, 1 ); else if ( m_moveHitTest == HTMAXBUTTON) DrawButton( pNewDC, 1, 2 ); else DrawButton( pNewDC, 1, 0 ); if ( m_downHitTest == HTMINBUTTON ) DrawButton( pNewDC, 2, 1 ); else if ( m_moveHitTest == HTMINBUTTON) DrawButton( pNewDC, 2, 2 ); else DrawButton( pNewDC, 2, 0 ); // liub_modify 去除弹出面板(去掉按钮) if ( m_downHitTest == HTMINBUTTON ) DrawButton( pNewDC, 2, 1 ); else if ( m_moveHitTest == HTMINBUTTON) DrawButton( pNewDC, 2, 2 ); else DrawButton( pNewDC, 2, 0 ); */ if ( m_downHitTest == HTMINBUTTON ) DrawButton( pNewDC, 1, 1 ); else if ( m_moveHitTest == HTMINBUTTON) DrawButton( pNewDC, 1, 2 ); else DrawButton( pNewDC, 1, 0 ); int cx = GetSystemMetrics(SM_CXSMICON); int cy = GetSystemMetrics(SM_CYSMICON); HICON hi = (HICON)SendMessage( m_hWnd, WM_GETICON, ICON_SMALL, 0); if ( !hi ) { //#ifdef IDR_MAINFRAME hi = AfxGetApp()->LoadIcon(g_SetData.Main_szMainIcon); //#endif } //draw icon // ::DrawIconEx( pNewDC->GetSafeHdc(), m_BorderLeftWidth, 5, (HICON) // CopyImage( hi, IMAGE_ICON, // cx, cy, 0), cx, cy, 0, 0, DI_NORMAL); #if 0 //wyw //draw icon ::DrawIconEx( pNewDC->GetSafeHdc(), m_BorderLeftWidth, 5, (HICON) CopyImage( hi, IMAGE_ICON, cx, cy, 0), cx, cy, 0, 0, DI_NORMAL); #else if (NULL != hi) { HICON hIcon = (HICON)CopyImage( hi, IMAGE_ICON, cx, cy, 0); ASSERT(NULL != hIcon); ::DrawIconEx( pNewDC->GetSafeHdc(), m_BorderLeftWidth, 5, hIcon, cx, cy, 0, 0, DI_NORMAL); DestroyIcon(hIcon); } #endif //draw text if ( m_title.IsEmpty() ) pWnd->GetWindowText(m_title); if (m_bActive) pNewDC->SetTextColor( m_colTitle1 ); else pNewDC->SetTextColor( m_colTitle2 ); CFont font, *ofont; font.CreatePointFont( GetSystemMetrics(SM_CYSMCAPTION), _T("System") ); ofont = pNewDC->SelectObject(&font); pNewDC->SetBkMode(TRANSPARENT); pNewDC->DrawText( m_title, CRect( m_textShift, m_textShiftVer, wr.Width() - m_bmpTitle.Width() + m_titleoff2, m_TitleHeight ), DT_SINGLELINE | DT_LEFT | DT_VCENTER | DT_WORD_ELLIPSIS ); pNewDC->SelectObject(&font); pDC->BitBlt( 0, 0, wr.Width(), m_TitleHeight, pNewDC, 0, 0, SRCCOPY ); pDC->SelectClipRgn(NULL); //wyw memDC.SelectObject(obmp); #ifdef FEATURE_VERSION_ITELCO if(m_pHookedWnd == AfxGetMainWnd()) { pWnd = CWnd::FromHandle(m_hWnd); pDC = pWnd->GetWindowDC(); CRect rtWnd,rtTitle; pWnd->GetWindowRect(&rtWnd); CRect m_rtIcon; rtTitle.left = GetSystemMetrics(SM_CXFRAME); rtTitle.top = GetSystemMetrics(SM_CYFRAME); //rtTitle.right = rtWnd.right - rtWnd.left - GetSystemMetrics(SM_CXFRAME); rtTitle.bottom = rtTitle.top + GetSystemMetrics(SM_CYSIZE); m_rtIcon.left = rtTitle.left + 350; m_rtIcon.top = rtTitle.top - 1; //m_rtIcon.right = m_rtIcon.left + 323; //323 //m_rtIcon.bottom = m_rtIcon.top + 20; //25 HICON hLogInfo; hLogInfo = (HICON)::LoadImage(NULL, g_SetData.Main_szTitleLogoIcon, IMAGE_ICON, 248, 24, LR_LOADFROMFILE|LR_DEFAULTCOLOR); DWORD dword = GetLastError(); //IDR_MAINFRAME IDI_ICON_INFO BOOL BRes = ::DrawIconEx(pDC->m_hDC, m_rtIcon.left, m_rtIcon.top, hLogInfo, 0, 0, 0, NULL, DI_NORMAL); dword = GetLastError(); } #endif //wyw font.DeleteObject(); bmp.DeleteObject(); newrgn.DeleteObject(); memDC.DeleteDC(); pWnd->ReleaseDC(pDC); }