mirror of
https://github.com/Proxmark/proxmark3.git
synced 2025-02-24 23:54:42 +08:00
make grid function linux friendly
This commit is contained in:
parent
ebd7aaf9e7
commit
f4434ad226
6 changed files with 29 additions and 13 deletions
|
@ -9,6 +9,7 @@
|
|||
int GraphBuffer[MAX_GRAPH_TRACE_LEN];
|
||||
int GraphTraceLen;
|
||||
double CursorScaleFactor;
|
||||
int PlotGridX, PlotGridY;
|
||||
int CommandFinished;
|
||||
int offline;
|
||||
|
||||
|
|
|
@ -13,6 +13,7 @@ void ExitGraphics(void);
|
|||
extern int GraphBuffer[MAX_GRAPH_TRACE_LEN];
|
||||
extern int GraphTraceLen;
|
||||
extern double CursorScaleFactor;
|
||||
extern int PlotGridX, PlotGridY;
|
||||
extern int CommandFinished;
|
||||
extern int offline;
|
||||
|
||||
|
|
|
@ -86,7 +86,7 @@ ProxGuiQT::~ProxGuiQT(void)
|
|||
void ProxWidget::paintEvent(QPaintEvent *event)
|
||||
{
|
||||
QPainter painter(this);
|
||||
QPainterPath penPath, whitePath, greyPath, cursorAPath, cursorBPath;
|
||||
QPainterPath penPath, whitePath, greyPath, lightgreyPath, cursorAPath, cursorBPath;
|
||||
QRect r;
|
||||
QBrush brush(QColor(100, 255, 100));
|
||||
QPen pen(QColor(100, 255, 100));
|
||||
|
@ -116,6 +116,29 @@ void ProxWidget::paintEvent(QPaintEvent *event)
|
|||
painter.setPen(QColor(100, 100, 100));
|
||||
painter.drawPath(greyPath);
|
||||
|
||||
// plot X and Y grid lines
|
||||
int i;
|
||||
if ((PlotGridX > 0) && ((PlotGridX * GraphPixelsPerPoint) > 1)) {
|
||||
for(i = GraphStart; i < r.right(); i += (int)(PlotGridX * GraphPixelsPerPoint)) {
|
||||
//SelectObject(hdc, GreyPenLite);
|
||||
//MoveToEx(hdc, r.left + i, r.top, NULL);
|
||||
//LineTo(hdc, r.left + i, r.bottom);
|
||||
lightgreyPath.moveTo(r.left()+i,r.top());
|
||||
lightgreyPath.lineTo(r.left()+i,r.bottom());
|
||||
painter.drawPath(lightgreyPath);
|
||||
}
|
||||
}
|
||||
if ((PlotGridY > 0) && ((PlotGridY * GraphPixelsPerPoint) > 1)){
|
||||
for(i = 0; i < ((r.top() + r.bottom())>>1); i += (int)(PlotGridY * GraphPixelsPerPoint)) {
|
||||
lightgreyPath.moveTo(r.left(),zeroHeight + i);
|
||||
lightgreyPath.lineTo(r.right(),zeroHeight + i);
|
||||
painter.drawPath(lightgreyPath);
|
||||
lightgreyPath.moveTo(r.left(),zeroHeight - i);
|
||||
lightgreyPath.lineTo(r.right(),zeroHeight - i);
|
||||
painter.drawPath(lightgreyPath);
|
||||
}
|
||||
}
|
||||
|
||||
int startMax =
|
||||
(GraphTraceLen - (int)((r.right() - r.left() - 40) / GraphPixelsPerPoint));
|
||||
if(startMax < 0) {
|
||||
|
@ -127,7 +150,6 @@ void ProxWidget::paintEvent(QPaintEvent *event)
|
|||
|
||||
int absYMax = 1;
|
||||
|
||||
int i;
|
||||
for(i = GraphStart; ; i++) {
|
||||
if(i >= GraphTraceLen) {
|
||||
break;
|
||||
|
|
|
@ -2590,9 +2590,7 @@ static void CmdPlot(char *str)
|
|||
|
||||
static void CmdGrid(char *str)
|
||||
{
|
||||
int x = 0, y = 0;
|
||||
sscanf(str, "%i %i", &x, &y);
|
||||
SetGraphGrid(x, y);
|
||||
sscanf(str, "%i %i", &PlotGridX, &PlotGridY);
|
||||
RepaintGraphWindow();
|
||||
}
|
||||
|
||||
|
@ -2734,7 +2732,7 @@ static struct {
|
|||
{"flexdemod", CmdFlexdemod, 1, "Demodulate samples for FlexPass"},
|
||||
{"fpgaoff", CmdFPGAOff, 0, "Set FPGA off"},
|
||||
{"fskdemod", CmdFSKdemod, 1, "Demodulate graph window as a HID FSK"},
|
||||
{"grid", CmdGrid, 1, "grid x y, overlay grid on graph window, use zero value to turn off either"},
|
||||
{"grid", CmdGrid, 1, "<x> <y> -- overlay grid on graph window, use zero value to turn off either"},
|
||||
{"hexsamples", CmdHexsamples, 0, "<blocks> -- Dump big buffer as hex bytes"},
|
||||
{"hi14alist", CmdHi14alist, 0, "List ISO 14443a history"},
|
||||
{"hi14areader", CmdHi14areader, 0, "Act like an ISO14443 Type A reader"},
|
||||
|
|
|
@ -67,12 +67,6 @@ void ExecCmd(char *cmd)
|
|||
int CommandFinished;
|
||||
int offset = 64;
|
||||
|
||||
void SetGraphGrid(int x, int y)
|
||||
{
|
||||
PlotGridX = x;
|
||||
PlotGridY = y;
|
||||
}
|
||||
|
||||
static void ResizeCommandWindow(void)
|
||||
{
|
||||
int w, h;
|
||||
|
|
|
@ -13,12 +13,12 @@ void ShowGui();
|
|||
void HideGraphWindow(void);
|
||||
void ShowGraphWindow(void);
|
||||
void RepaintGraphWindow(void);
|
||||
void SetGraphGrid(int x, int y);
|
||||
void PrintToScrollback(char *fmt, ...);
|
||||
#define MAX_GRAPH_TRACE_LEN (1024*128)
|
||||
extern int GraphBuffer[MAX_GRAPH_TRACE_LEN];
|
||||
extern int GraphTraceLen;
|
||||
extern double CursorScaleFactor;
|
||||
extern int PlotGridX, PlotGridY;
|
||||
extern int CommandFinished;
|
||||
extern int offline;
|
||||
|
||||
|
|
Loading…
Reference in a new issue