LRESULT TChart::OnSeriesUpdate( WPARAM wParam, LPARAM lParam ) { if(SeriesDataWnd!=NULL) SeriesDataWnd->PostMessage(UM_SERIES_UPDATE,0,(LPARAM)&Series); CWnd* mainfrm=AfxGetMainWnd(); if(mainfrm!=NULL) mainfrm->PostMessage(UM_SERIES_UPDATE,0,(LPARAM)&Series); UpdateNow(REPAINT_DEFAULT); return 0; }
LRESULT TChart::OnChartShowAll( WPARAM wParam, LPARAM lParam ) { FindMinMax(); BottomAxis->SetInterval(BottomAxis->GetMinMax()); LeftAxis->SetInterval(LeftAxis->GetMinMax()); UpdateNow(REPAINT_DEFAULT); return 0; }
BOOL TChart::OnAREAZOOM( CPoint point ) { void *x; if((x=buffer.GainAcsess(WRITE))==NULL) return FALSE; BMPanvasGuard guard(x); BMPanvas& bmp(guard); ZoomAreaRect.BottomRight=Last.Mouse.Move; ZoomAreaRect.Draw(&bmp); UpdateNow(REPAINT_CUSTOM); return TRUE; }
void Interface::DisegnaRect( QPoint topLeft , QPoint bottomRight ) { Top_startX = QMIN(topLeft.x(), bottomRight.x()); Top_startY = QMIN(topLeft.y(), bottomRight.y()) ; int Bot_endX = QMAX(topLeft.x(), bottomRight.x()); int Bot_endY = QMAX(topLeft.y(), bottomRight.y()); QPoint topLefta( Top_startX , Top_startY ); QPoint bottomRighta( Bot_endX , Bot_endY ); QRect areaplace( topLefta, bottomRighta ); /* */ TagliaPoi = areaplace; /////////////////qDebug() << "####### TagliaPoi.width() " << TagliaPoi.height(); if (areaplace.width() > 9 ) { TagliaPoi = areaplace; QPen pen; pen.setStyle( Qt::SolidLine ); pen.setWidth( 2 ); if (ratio > 80 && ratio < 110) { pen.setWidth( 2 ); } if (ratio < 81) { pen.setWidth( 4 ); } if (ratio < 50) { pen.setWidth( 6 ); } if (ratio > 130) { pen.setWidth( 1 ); } pen.setColor( color1 ); QPixmap nuovo(original2.width(),original2.height()); QPainter painter; painter.begin(&nuovo); painter.setRenderHint(QPainter::Antialiasing); painter.drawPixmap(0,0,original2); painter.setPen( pen); /* penna */ painter.drawRect(areaplace); /* disegna */ painter.end(); display = nuovo; int newlarge = (original2.width()/cento)*ratio; wrapper->paint(QPixmap(display.scaledToWidth(newlarge,Qt::FastTransformation))); setCursor(Qt::CrossCursor); UpdateNow(); } }
void ImageWndPicWnd::OnPicWndErase() { if(org.HasImage()) { org.Destroy(); EraseAva(); UpdateNow(); CaptureButton.ShowWindow(SW_SHOW); DragAcceptFiles(true); } }
void DrawWidget::LoadState() { m_framework->LoadBookmarks(); if (!m_framework->LoadState()) ShowAll(); else { UpdateNow(); UpdateScaleControl(); } }
BOOL TChart::EndZOOMOUT( CPoint point ) { LogicRect zoomed; SimplePoint pntL; if(SeriesRender.IsInit()==FALSE) return FALSE; pntL=SeriesRender.ScreenToLogic(Frame->ScreenToClient(point)); zoomed=SeriesRender.ZoomOUT(pntL,2); LeftAxis->SetInterval(TChartInterval(zoomed.b,zoomed.t)); BottomAxis->SetInterval(TChartInterval(zoomed.l,zoomed.r)); UpdateNow(REPAINT_DEFAULT); return TRUE; }
void Interface::SetZoom( int percentual ) { //////////////qDebug() << "####### percentual " << percentual; if (original.isNull()) { return; } ////////////qDebug() << "####### percentual " << percentual; ratio = percentual; QRect screenSize = qApp->desktop()->availableGeometry(); int newlarge = (original.width()/cento)*percentual; display = original2.scaledToWidth(newlarge,Qt::FastTransformation); wrapper->paint(display); UpdateNow(); }
BOOL TChart::OnMOVE( CPoint point ) { CPoint dd; TChartInterval intrvl; SimplePoint pntF,pntL,shift; dd=Last.Mouse.Move-LastMouseMove; if(abs(dd.x)<20 && abs(dd.y)<30) return TRUE; pntF=SeriesRender.ScreenToLogic(LastMouseMove); pntL=SeriesRender.ScreenToLogic(Last.Mouse.Move); shift=pntL-pntF; intrvl=LeftAxis->GetInterval(); intrvl.Offset(-shift.y); LeftAxis->SetInterval(intrvl); intrvl=BottomAxis->GetInterval(); intrvl.Offset(-shift.x); BottomAxis->SetInterval(intrvl); UpdateNow(REPAINT_DEFAULT); LastMouseMove=Last.Mouse.Move; return TRUE; }
BOOL TChart::EndAREAZOOM( CPoint point ) { SimplePoint pntF,pntL; void *x; if(SeriesRender.IsInit()==FALSE) return FALSE; if((x=buffer.GainAcsess(WRITE))==NULL) return FALSE; { BMPanvasGuard guard(x); BMPanvas& bmp(guard); ZoomAreaRect.Erase(&bmp); } CRect zoom_area(Frame->ScreenToClient(Last.Left.BtnDown),Frame->ScreenToClient(point)); zoom_area.NormalizeRect(); pntF=SeriesRender.ScreenToLogic(zoom_area.TopLeft()); pntL=SeriesRender.ScreenToLogic(zoom_area.BottomRight()); LeftAxis->SetInterval(TChartInterval(pntL.y,pntF.y)); BottomAxis->SetInterval(TChartInterval(pntF.x,pntL.x)); UpdateNow(REPAINT_DEFAULT); return TRUE; }
void TChart::InitBasicElements() { ColorsStyle tempStyle; TChartElement *elmnt=NULL; TChartAxis *taxis=NULL; AxisStyle style; DestroyElements(); void *x; if((x=buffer.GainAcsess(WRITE))!=NULL) { GetClientRect(&DrawArea); BMPanvasGuard guard(x); BMPanvas& bmp(guard); bmp.Create(this,DrawArea.Width(),DrawArea.Height(),24); bmp.SetBkMode(TRANSPARENT); elmnt=new TChartBackground("Background"); elmnt->Create(this,ColorsStyle(RGB(140,140,140))); elmnt->SetVisible(true);RegisterChartElement(elmnt); Frame=new TChartFrame("Frame"); Frame->Create(this,ColorsStyle(RGB(80,80,80))); Frame->SetVisible(true); RegisterChartElement(Frame); style.axisVisbl=style.ticksVisbl=style.gridVisbl=TRUE; style.layout=LEFT_AXIS; style.tickstyle=TICK_OUT; style.gridColor.PColor=RGB(140,140,140); taxis=new TChartAxisVertical("LeftAxis"); taxis->Create(Frame,style); LeftAxis=taxis; RegisterChartElement(taxis); style.layout=BOTTOM_AXIS; taxis=new TChartAxisHorizontal("BottomAxis"); taxis->Create(Frame,style); BottomAxis=taxis; RegisterChartElement(taxis); style.layout=RIGHT_AXIS; style.ticksVisbl=style.gridVisbl=FALSE; taxis=new TChartAxisVertical("RightAxis"); taxis->Create(Frame,style); RegisterChartElement(taxis); style.layout=TOP_AXIS; taxis=new TChartAxisHorizontal("TopAxis"); taxis->Create(Frame,style); RegisterChartElement(taxis); if(LeftAxis!=NULL) LeftAxis->SetMinMax(MinMax.minY,MinMax.maxY); if(BottomAxis!=NULL) BottomAxis->SetMinMax(MinMax.minX,MinMax.maxX); sbuf.Create(this,Frame->DrawArea.Width(),Frame->DrawArea.Height(),24); AreaOfInterest tempArea; tempArea=Frame->DrawArea; tempArea.Proceed=&TChart::OnPlotDblClick; Clickers.Add(tempArea); tempArea=CRect(LeftAxis->End,LeftAxis->Beg); tempArea.left-=20; tempArea.Proceed=&TChart::OnAxisDblClick; Clickers.Add(tempArea); UpdateNow(REPAINT_DEFAULT); } }
LRESULT ImageWndPicWnd::OnCaptureReady( WPARAM wParam, LPARAM lParam ) { CString T; if(org.HasImage()) { SetStretchBltMode(ava.GetDC(),COLORONCOLOR); org.StretchTo(&ava,ava.Rgn,org.Rgn,SRCCOPY); HGDIOBJ tfont=ava.SelectObject(font1); ava.SetBkMode(TRANSPARENT); ava.SetTextColor(clRED); T="Camera capture"; ava.TextOut(0,0,T); T.Format("%dx%d",org.w,org.h); ava.TextOut(0,10,T); ava.SelectObject(tfont); UpdateNow(); CaptureButton.EnableWindow(TRUE); CaptureButton.ShowWindow(SW_HIDE); DragAcceptFiles(FALSE); } return 0; }
void ImageWndPicWnd::LoadPic(CString T) { if(org.LoadImage(T)==S_OK) { FileName=T; SetStretchBltMode(ava.GetDC(),COLORONCOLOR); org.StretchTo(&ava,ava.Rgn,org.Rgn,SRCCOPY); HGDIOBJ tfont=ava.SelectObject(font1); ava.SetBkMode(TRANSPARENT); ava.SetTextColor(clRED); ava.TextOut(0,0,T); T.Format("%dx%d",org.w,org.h); ava.TextOut(0,10,T); ava.SelectObject(tfont); CaptureButton.ShowWindow(SW_HIDE); DragAcceptFiles(FALSE); UpdateNow(); Parent->Ctrls.Xmax=org.w; Parent->Ctrls.UpdateData(); } else FileName=""; }
LRESULT TChart::OnSeriesDataImport( WPARAM wParam, LPARAM lParam ) { MessagesInspectorSubject* msg=(MessagesInspectorSubject*)lParam; void *x; BYTE t=0; if(msg) { if((x=Series.GainAcsess(WRITE))!=0) { SeriesProtector Protector(x); TSeriesArray& Series(Protector); for(int i=0;i<Series.GetSize();i++) { if(Series[i]->ImportData(msg,DO_NOT_DELETE_MSG)!=0) t++; } } delete msg; if(t) UpdateNow(REPAINT_DEFAULT); } return 0; }
void Interface::SetPic( const QString pic ) { origImageFilename = pic; QFileInfo ImageInfo(pic); fi = ImageInfo; QString ext = ImageInfo.completeSuffix(); ext.toUpper(); extension = ext.toAscii(); display = QPixmap(pic); original = QPixmap(pic); original2 = original; ///////////////QApplication::clipboard()->setImage(original.toImage(),QClipboard::Clipboard); wrapper->paint(display); spinBox_3->setValue(ratio); LargeReal = original.width(); HighteReal = original.height(); cento = 100.0; rotazione = 0; ratio = cento; CTRL_Pressed = false; moverecci = false; Top_startX = 0; QRect areaplace(QPoint(0,0),QPoint(0,0)); TagliaPoi = areaplace; UpdateNow(); /////////////////qDebug() << "####### size().width() " << size().width(); int nuovadim; if (LargeReal > size().width()) { nuovadim = ratio = (size().width()*cento) / LargeReal; ////////////qDebug() << "####### ratio sp " << nuovadim; spinBox_3->setValue(ratio); SetZoom(nuovadim); return; } }
LRESULT TChart::OnChartBufferUpdate( WPARAM wParam, LPARAM lParam ) { UpdateNow(REPAINT_DEFAULT); return 0; }
BOOL TChart::OnIDLEMOVE( CPoint point ) { InfoOnCanvas.DataInfoPoint=FrameRender.ScreenToLogic(point); UpdateNow(REPAINT_DEFAULT); return TRUE; }