79 |
cycrow |
1 |
#ifndef EZLCD_H_INCLUDED_
|
|
|
2 |
#define EZLCD_H_INCLUDED_
|
|
|
3 |
|
|
|
4 |
#include "LCDManager.h"
|
|
|
5 |
#include "LCDOutput.h"
|
|
|
6 |
|
|
|
7 |
|
|
|
8 |
#include "EZ_LCD_Defines.h"
|
|
|
9 |
#include "EZ_LCD_Page.h"
|
|
|
10 |
|
|
|
11 |
|
|
|
12 |
class CEzLcd
|
|
|
13 |
{
|
|
|
14 |
public:
|
|
|
15 |
CEzLcd();
|
|
|
16 |
~CEzLcd();
|
|
|
17 |
CEzLcd(LPCTSTR pFriendlyName,
|
|
|
18 |
INT iWidth = LCD_DEFAULT_WIDTH,
|
|
|
19 |
INT iHeight = LCD_DEFAULT_HEIGHT);
|
|
|
20 |
|
|
|
21 |
HRESULT InitYourself(LPCTSTR pFriendlyName,
|
|
|
22 |
BOOL bIsAutoStartable = FALSE,
|
|
|
23 |
BOOL bIsPersistent = FALSE,
|
|
|
24 |
lgLcdConfigureContext * pConfigContext = NULL,
|
|
|
25 |
INT iWidth = LCD_DEFAULT_WIDTH,
|
|
|
26 |
INT iHeight = LCD_DEFAULT_HEIGHT);
|
|
|
27 |
|
|
|
28 |
|
|
|
29 |
// Adds one page
|
|
|
30 |
INT AddNewPage(VOID);
|
|
|
31 |
// Removes a page
|
|
|
32 |
INT RemovePage(INT iPageNumber);
|
|
|
33 |
// Returns the total number of pages
|
|
|
34 |
INT GetPageCount(VOID);
|
|
|
35 |
// Adds iNumberOfPages to the total of pages you've created
|
|
|
36 |
INT AddNumberOfPages(INT iNumberOfPages);
|
|
|
37 |
// Call this method prior to adjusting any control on a page
|
|
|
38 |
BOOL ModifyControlsOnPage(INT iPageNumber);
|
|
|
39 |
// Call this method to show a certain page on the LCD
|
|
|
40 |
BOOL ShowPage(INT iPageNumber);
|
|
|
41 |
|
|
|
42 |
// The methods below are used to add or modify a control on a certain page. Method
|
|
|
43 |
// ModifyControlsOnPage(INT pageNumber) must be called prior to using any of the following
|
|
|
44 |
// methods.
|
|
|
45 |
HANDLE AddText(LGObjectType type, LGTextSize size, INT iAlignment, INT iMaxLengthPixels);
|
|
|
46 |
HANDLE AddText(LGObjectType type, LGTextSize size, INT iAlignment, INT iMaxLengthPixels, INT iNumberOfLines);
|
|
|
47 |
HRESULT SetText(HANDLE hHandle, LPCTSTR pText);
|
242 |
cycrow |
48 |
HRESULT SetText(HANDLE hHandle, const std::wstring &pText);
|
79 |
cycrow |
49 |
|
|
|
50 |
HANDLE AddIcon(HICON hIcon, INT iSizeX, INT iSizeY);
|
|
|
51 |
|
|
|
52 |
HANDLE AddProgressBar(LGProgressBarType type);
|
|
|
53 |
HRESULT SetProgressBarPosition(HANDLE hHandle, FLOAT fPercentage);
|
|
|
54 |
HRESULT SetProgressBarSize(HANDLE hHandle, INT iWidth, INT iHeight);
|
|
|
55 |
|
|
|
56 |
HANDLE AddBitmap();
|
|
|
57 |
HRESULT SetBitmap(HANDLE hHandle, HBITMAP hBitmap);
|
|
|
58 |
|
|
|
59 |
HRESULT SetOrigin(HANDLE hHandle, INT iOriginX, INT iOriginY);
|
|
|
60 |
HRESULT SetVisible(HANDLE hHandle, BOOL bVisible);
|
|
|
61 |
HRESULT SetSpeed(HANDLE hHandle, DWORD speed);
|
|
|
62 |
|
|
|
63 |
BOOL IsConnected();
|
|
|
64 |
HRESULT SetAsForeground(BOOL bSetAsForeground);
|
|
|
65 |
HRESULT SetScreenPriority(DWORD dwPriority);
|
|
|
66 |
|
|
|
67 |
BOOL ButtonTriggered(INT iButton);
|
|
|
68 |
BOOL ButtonReleased(INT iButton);
|
|
|
69 |
BOOL ButtonIsPressed(INT iButton);
|
|
|
70 |
|
|
|
71 |
VOID Update();
|
|
|
72 |
|
|
|
73 |
virtual void OnLCDButtonDown(INT iButton);
|
|
|
74 |
virtual void OnLCDButtonUp(INT iButton);
|
|
|
75 |
|
|
|
76 |
protected:
|
|
|
77 |
INT m_iLcdWidth;
|
|
|
78 |
INT m_iLcdHeight;
|
|
|
79 |
TCHAR m_chFriendlyName[MAX_PATH];
|
|
|
80 |
CLCDOutput m_output;
|
|
|
81 |
CEzLcdPage * m_pActivePage;
|
|
|
82 |
LCD_PAGE_LIST m_LCDPageList;
|
|
|
83 |
INT m_iPageCount; // How many pages are there
|
|
|
84 |
INT m_iCurrentPageNumberShown;
|
|
|
85 |
BOOL m_bInitNeeded;
|
|
|
86 |
BOOL m_bInitSucceeded;
|
|
|
87 |
BOOL m_bButtonIsPressed[NUMBER_SOFT_BUTTONS];
|
|
|
88 |
BOOL m_bButtonWasPressed[NUMBER_SOFT_BUTTONS];
|
|
|
89 |
lgLcdConfigureContext * m_pConfigContext;
|
|
|
90 |
BOOL m_bIsPersistent;
|
|
|
91 |
BOOL m_bIsAutoStartable;
|
|
|
92 |
};
|
|
|
93 |
|
|
|
94 |
|
|
|
95 |
#endif
|