Initial commit
This commit is contained in:
197
MyCode/Gui/GraphBase.h
Normal file
197
MyCode/Gui/GraphBase.h
Normal file
@@ -0,0 +1,197 @@
|
||||
#ifndef GRAPHBASE_H_
|
||||
#define GRAPHBASE_H_
|
||||
|
||||
#include "gType.h"
|
||||
#include "GraphLow.h"
|
||||
|
||||
#define dmClear 0
|
||||
#define dmSolid 1
|
||||
|
||||
#define dICON16_COUNT 32
|
||||
#define dICON24_COUNT 24
|
||||
#define dICON32_COUNT 4
|
||||
|
||||
typedef enum
|
||||
{
|
||||
CENTER = 0x01, // Center mode
|
||||
RIGHT = 0x02, // Right mode
|
||||
LEFT = 0x03 // Left mode
|
||||
}Tdraw_string_aline_mode;
|
||||
|
||||
typedef struct{
|
||||
int x;
|
||||
int y;
|
||||
}TPoint;
|
||||
|
||||
typedef struct{
|
||||
float x;
|
||||
float y;
|
||||
}T2DPoint;
|
||||
|
||||
typedef enum{
|
||||
bvNone = 0,
|
||||
bvLowered,
|
||||
bvRaised,
|
||||
bvSpace
|
||||
}TBvStyle;
|
||||
|
||||
class TRect{
|
||||
public:
|
||||
int Left;
|
||||
int Top;
|
||||
int Right;
|
||||
int Bottom;
|
||||
int Width;
|
||||
int Height;
|
||||
TPoint CenterPoint;
|
||||
|
||||
public:
|
||||
void Set(int aLeft, int aTop, int aRight, int aBottom);
|
||||
void SetBySize(int aLeft, int aTop, int aWidth, int aHeight);
|
||||
void SetBy2Point(TPoint aPLT, TPoint aPRB);
|
||||
void SetLeftTop(int aL, int aT);
|
||||
void SetLeft(int aL);
|
||||
void SetTop(int aT);
|
||||
void SetRight(int aR);
|
||||
void SetBottom(int aB);
|
||||
void SetWidth(int aW);
|
||||
void SetHeight(int aH);
|
||||
};
|
||||
|
||||
class TCircle{
|
||||
public:
|
||||
TPoint Center;
|
||||
u32 Radius;
|
||||
|
||||
int PenWidth;
|
||||
u32 PenColor;
|
||||
int BrushStyle; //fsSolid=1; fsClear=0;
|
||||
u32 BrushColor;
|
||||
|
||||
private:
|
||||
void Plot4Points(int x, int y);
|
||||
void Plot4PointsFill(int x, int y);
|
||||
void Plot8Points(int x, int y);
|
||||
void Plot4PointsQuadrant(int x, int y, int quadrant);
|
||||
void Plot4PointsFillQuadrant(int x, int y, int quadrant);
|
||||
void Plot8PointsQuadrant(int x, int y, int quadrant);
|
||||
public:
|
||||
void Set(TPoint aCenter, s16 aRadius);
|
||||
void SetBySize(int aLeft, int aTop, int aWidth, int aHeight);
|
||||
|
||||
void Render(void);
|
||||
void Render2(void);
|
||||
void RenderQuadrant (int quadrant);
|
||||
|
||||
static void sPlot4Points(int cx, int cy, int x, int y, unsigned int aClr);
|
||||
static void sPlot4PointsFill(int cx, int cy, int x, int y, unsigned int aClr);
|
||||
static void sPlot8Points(int cx, int cy, int x, int y, unsigned int aClr, int IsFill);
|
||||
static void sRender(int x, int y, int aR, unsigned int aClr, int IsFill);
|
||||
static void sRender2(int x, int y, int aR, unsigned int aClr);
|
||||
|
||||
static void sPlot4PointsFillQuadrant(int ax, int ay, int x, int y,int quadrant, u32 aClr);
|
||||
static void sPlot8PointsFillQuadrant(int ax, int ay, int x, int y, int quadrant, u32 aClr);
|
||||
static void sPlot8PointsQuadrant(int ax, int ay, int x, int y, int quadrant,u32 aClr);
|
||||
static void sRenderQuadrant(int ax, int ay, int aR, int quadrant, u32 aClr, int IsFill); //draw circle
|
||||
};
|
||||
|
||||
class TImageList{
|
||||
public:
|
||||
unsigned int AddrInFlash;
|
||||
unsigned int AllDataSize; // N * 4K Bytes
|
||||
unsigned int DrawMode; // 0 = Clear 1 = Solid
|
||||
unsigned int TranparrentColor;
|
||||
|
||||
public:
|
||||
TImageList(void){
|
||||
AllDataSize = 102400;
|
||||
DrawMode = dmClear;
|
||||
TranparrentColor = 0xFFFFFFFF;
|
||||
}
|
||||
void SetData(unsigned int aSize, unsigned int aIndex);
|
||||
void LoadFromFlash(unsigned int aSize, unsigned int aIndex);
|
||||
void LoadFromFlash(void);
|
||||
void ClearAllFlash(void);
|
||||
void WriteToFlash(unsigned int Index);
|
||||
|
||||
void Render(unsigned int aSize, unsigned int aIndex, unsigned int aLeft, unsigned int aTop);
|
||||
void Render(unsigned int aSize, unsigned int aIndex, unsigned int aLeft, unsigned int aTop, unsigned int xLimit, unsigned int yLimit);
|
||||
|
||||
unsigned int GetSize16Count(void);
|
||||
unsigned int GetSize24Count(void);
|
||||
unsigned int GetSize32Count(void);
|
||||
};
|
||||
|
||||
class TImage{
|
||||
public:
|
||||
unsigned int AddrInFlash;
|
||||
unsigned int AllDataSize; // N * 4K Bytes
|
||||
unsigned int DrawMode; // 0 = Clear 1 = Solid
|
||||
unsigned int TranparrentColor;
|
||||
unsigned int Width;
|
||||
unsigned int Height;
|
||||
int Left;
|
||||
int Top;
|
||||
public:
|
||||
TImage(void){
|
||||
AllDataSize = 102400;
|
||||
DrawMode = dmClear;
|
||||
TranparrentColor = 0xFFFFFFFF;
|
||||
}
|
||||
void Init(int x, int y, unsigned int aA, unsigned int aW, unsigned int aH){
|
||||
Left = x;
|
||||
Top = y;
|
||||
AddrInFlash = aA;
|
||||
Width = aW;
|
||||
Height = aH;
|
||||
}
|
||||
void Render(unsigned int xLimit, unsigned int yLimit);
|
||||
};
|
||||
|
||||
|
||||
class TVScrollBar{
|
||||
public:
|
||||
static void sDrawByPoint(int x, int y, int Right, int Bottom, u32 aClr, u32 aBClr, int aItemsCount, int aLineCount, int aTopIndex);
|
||||
static void sDrawBySize(int x, int y, int aW, int aH, u32 aClr, u32 aBClr, int aItemsCount, int aLineCount, int aTopIndex);
|
||||
};
|
||||
|
||||
class TBevel{
|
||||
public:
|
||||
static void DrawRaised(int x, int y, int Right, int Bottom, u32 aClr, u32 aBClr, int aItemsCount, int aLineCount, int aTopIndex);
|
||||
static void DrawLowered(int x, int y, int Right, int Bottom, u32 aClr, u32 aBClr, int aItemsCount, int aLineCount, int aTopIndex);
|
||||
};
|
||||
|
||||
class TRoundBox{
|
||||
|
||||
};
|
||||
|
||||
class TCanvas{
|
||||
|
||||
};
|
||||
|
||||
class TProgressBar{
|
||||
public:
|
||||
static void sDrawByPoint(int x, int y, int Right, int Bottom, int aPercent, int aMax, u32 aClr, u32 aBClr, u32 aTClr);
|
||||
static void sDrawBySize(int x, int y, int aW, int aH, int aPercent, int aMax, u32 aClr, u32 aBClr, u32 aTClr);
|
||||
};
|
||||
|
||||
class TRoundSquare{
|
||||
public:
|
||||
static void sDrawBySize(int x, int y, int aW, int aH, int RoundR, u32 aClr, int Active);
|
||||
static void sSelected(int ax, int ay, int aW, int aH, int aThick, u32 aColor);
|
||||
};
|
||||
|
||||
class TRoundRect{
|
||||
public:
|
||||
static void sDrawBySize(int x, int y, int aW, int aH, int RoundR, u32 aClr, char *Text, int LeftSpace, u32 TextClr);
|
||||
};
|
||||
|
||||
class TTriangleLeftRight{
|
||||
public:
|
||||
static int sDrawByHight(int x, int y, int aH, unsigned int aClr);
|
||||
static int sDrawLeftByHight(int x, int y, int aH, unsigned int aClr);
|
||||
static int sDrawRightByHight(int x, int y, int aH, unsigned int aClr);
|
||||
};
|
||||
|
||||
|
||||
#endif
|
||||
Reference in New Issue
Block a user