Initial community commit
This commit is contained in:
parent
537bcbc862
commit
fc06254474
16440 changed files with 4239995 additions and 2 deletions
423
Src/Wasabi/api/wnd/wndclass/scrollbar.h
Normal file
423
Src/Wasabi/api/wnd/wndclass/scrollbar.h
Normal file
|
@ -0,0 +1,423 @@
|
|||
#ifndef __SCROLLBAR_H
|
||||
#define __SCROLLBAR_H
|
||||
|
||||
#include <api/wnd/virtualwnd.h>
|
||||
#include <tataki/region/region.h>
|
||||
#include <api/wnd/usermsg.h>
|
||||
#include <tataki/bitmap/autobitmap.h>
|
||||
|
||||
#define SCROLLBAR_FULL 65535
|
||||
|
||||
#define POS_NONE 0
|
||||
#define POS_LEFT 1
|
||||
#define POS_BUTTON 2
|
||||
#define POS_RIGHT 3
|
||||
|
||||
#define PAGE_NONE 0
|
||||
#define PAGE_DOWN 1
|
||||
#define PAGE_UP 2
|
||||
|
||||
#define DEFAULT_HEIGHT 16
|
||||
|
||||
#define SCROLLBAR_PARENT VirtualWnd
|
||||
|
||||
/**
|
||||
Class
|
||||
|
||||
@short
|
||||
@author Nullsoft
|
||||
@ver 1.0
|
||||
@see
|
||||
*/
|
||||
class ScrollBar : public SCROLLBAR_PARENT {
|
||||
public:
|
||||
|
||||
/**
|
||||
Method
|
||||
|
||||
@see
|
||||
@ret
|
||||
@param
|
||||
*/
|
||||
ScrollBar();
|
||||
|
||||
/**
|
||||
Method
|
||||
|
||||
@see
|
||||
@ret
|
||||
@param
|
||||
*/
|
||||
virtual ~ScrollBar();
|
||||
|
||||
virtual int onMouseMove (int x, int y);
|
||||
|
||||
/**
|
||||
Method
|
||||
|
||||
@see
|
||||
@ret
|
||||
@param
|
||||
*/
|
||||
virtual int onLeftButtonDown(int x, int y);
|
||||
|
||||
/**
|
||||
Method
|
||||
|
||||
@see
|
||||
@ret
|
||||
@param
|
||||
*/
|
||||
virtual int onLeftButtonUp(int x, int y);
|
||||
|
||||
/**
|
||||
Method
|
||||
|
||||
@see
|
||||
@ret
|
||||
@param
|
||||
*/
|
||||
virtual int onRightButtonDown(int x, int y);
|
||||
|
||||
/**
|
||||
Method
|
||||
|
||||
@see
|
||||
@ret
|
||||
@param
|
||||
*/
|
||||
virtual int onRightButtonUp(int x, int y);
|
||||
|
||||
/**
|
||||
Method
|
||||
|
||||
@see
|
||||
@ret
|
||||
@param
|
||||
*/
|
||||
virtual int onMouseWheelUp(int clicked, int lines);
|
||||
|
||||
/**
|
||||
Method
|
||||
|
||||
@see
|
||||
@ret
|
||||
@param
|
||||
*/
|
||||
virtual int onMouseWheelDown(int clicked, int lines);
|
||||
|
||||
/**
|
||||
Method
|
||||
|
||||
@see
|
||||
@ret
|
||||
@param
|
||||
*/
|
||||
virtual int onPaint(Canvas *canvas);
|
||||
|
||||
/**
|
||||
Method
|
||||
|
||||
@see
|
||||
@ret
|
||||
@param
|
||||
*/
|
||||
virtual int onResize();
|
||||
|
||||
/**
|
||||
Method
|
||||
|
||||
@see
|
||||
@ret
|
||||
@param
|
||||
*/
|
||||
virtual int onInit();
|
||||
|
||||
/**
|
||||
Method
|
||||
|
||||
@see
|
||||
@ret
|
||||
@param
|
||||
*/
|
||||
virtual void timerCallback(int id);
|
||||
|
||||
|
||||
/**
|
||||
Method
|
||||
|
||||
@see
|
||||
@ret
|
||||
@param
|
||||
*/
|
||||
virtual int wantDoubleClicks() { return 0; };
|
||||
|
||||
|
||||
virtual int onSetPosition(bool smooth=false);
|
||||
|
||||
virtual int onSetFinalPosition();
|
||||
|
||||
void setBitmaps(wchar_t *left, wchar_t *lpressed, wchar_t *lhilite,
|
||||
wchar_t *right, wchar_t *rpressed, wchar_t *rhilite,
|
||||
wchar_t *button, wchar_t *bpressed, wchar_t *bhilite);
|
||||
|
||||
void setBackgroundBitmaps(const wchar_t *left, const wchar_t *middle, const wchar_t *right);
|
||||
|
||||
void setPosition(int pos);
|
||||
|
||||
/**
|
||||
Method
|
||||
|
||||
@see
|
||||
@ret
|
||||
@param
|
||||
*/
|
||||
int getPosition();
|
||||
|
||||
/**
|
||||
Method
|
||||
|
||||
@see
|
||||
@ret
|
||||
@param
|
||||
*/
|
||||
int getHeight();
|
||||
|
||||
/**
|
||||
Method
|
||||
|
||||
@see
|
||||
@ret
|
||||
@param
|
||||
*/
|
||||
void setHeight(int newheight);
|
||||
|
||||
/**
|
||||
Method
|
||||
|
||||
@see
|
||||
@ret
|
||||
@param
|
||||
*/
|
||||
void setNPages(int n);
|
||||
|
||||
/**
|
||||
Method
|
||||
|
||||
@see
|
||||
@ret
|
||||
@param
|
||||
*/
|
||||
void gotoPage(int n);
|
||||
|
||||
/**
|
||||
Method
|
||||
|
||||
@see
|
||||
@ret
|
||||
@param
|
||||
*/
|
||||
void setUpDownValue(int newupdown);
|
||||
|
||||
/**
|
||||
Method
|
||||
|
||||
@see
|
||||
@ret
|
||||
@param
|
||||
*/
|
||||
void setVertical(bool isvertical);
|
||||
|
||||
/**
|
||||
Method
|
||||
|
||||
@see
|
||||
@ret
|
||||
@param
|
||||
*/
|
||||
int getWidth();
|
||||
|
||||
|
||||
/**
|
||||
Method
|
||||
|
||||
@see
|
||||
@ret
|
||||
@param
|
||||
*/
|
||||
virtual void freeResources();
|
||||
|
||||
/**
|
||||
Method
|
||||
|
||||
@see
|
||||
@ret
|
||||
@param
|
||||
*/
|
||||
virtual void reloadResources();
|
||||
|
||||
private:
|
||||
|
||||
/**
|
||||
Method
|
||||
|
||||
@see
|
||||
@ret
|
||||
@param
|
||||
*/
|
||||
void deleteResources();
|
||||
|
||||
/**
|
||||
Method
|
||||
|
||||
@see
|
||||
@ret
|
||||
@param
|
||||
*/
|
||||
int getMousePosition();
|
||||
|
||||
/**
|
||||
Method
|
||||
|
||||
@see
|
||||
@ret
|
||||
@param
|
||||
*/
|
||||
void calcOverlapping();
|
||||
|
||||
/**
|
||||
Method
|
||||
|
||||
@see
|
||||
@ret
|
||||
@param
|
||||
*/
|
||||
void calcXPosition();
|
||||
|
||||
/**
|
||||
Method
|
||||
|
||||
@see
|
||||
@ret
|
||||
@param
|
||||
*/
|
||||
void calcPosition();
|
||||
|
||||
/**
|
||||
Method
|
||||
|
||||
@see
|
||||
@ret
|
||||
@param
|
||||
*/
|
||||
void handlePageUpDown();
|
||||
|
||||
/**
|
||||
Method
|
||||
|
||||
@see
|
||||
@ret
|
||||
@param
|
||||
*/
|
||||
int checkPageUpDown();
|
||||
|
||||
/**
|
||||
Method
|
||||
|
||||
@see
|
||||
@ret
|
||||
@param
|
||||
*/
|
||||
void handleUpDown();
|
||||
|
||||
/**
|
||||
Method
|
||||
|
||||
@see
|
||||
@ret
|
||||
@param
|
||||
*/
|
||||
int checkUpDown();
|
||||
|
||||
/**
|
||||
Method
|
||||
|
||||
@see
|
||||
@ret
|
||||
@param
|
||||
*/
|
||||
int pageUp();
|
||||
|
||||
/**
|
||||
Method
|
||||
|
||||
@see
|
||||
@ret
|
||||
@param
|
||||
*/
|
||||
int pageDown();
|
||||
|
||||
/**
|
||||
Method
|
||||
|
||||
@see
|
||||
@ret
|
||||
@param
|
||||
*/
|
||||
int upDown(int which);
|
||||
|
||||
/**
|
||||
Method
|
||||
|
||||
@see
|
||||
@ret
|
||||
@param
|
||||
*/
|
||||
void setPrivatePosition(int pos, bool signal=true, bool smooth=false);
|
||||
|
||||
/**
|
||||
Method
|
||||
|
||||
@see
|
||||
@ret
|
||||
@param
|
||||
*/
|
||||
void loadBmps();
|
||||
|
||||
AutoSkinBitmap bmpleft, bmplpressed, bmplhilite,
|
||||
bmpright, bmprpressed, bmprhilite,
|
||||
bmpbutton, bmpbpressed, bmpbhilite,
|
||||
bmpbackgroundleft, bmpbackgroundmiddle, bmpbackgroundright;
|
||||
|
||||
RegionI *leftrgn, *rightrgn, *buttonrgn;
|
||||
int position;
|
||||
|
||||
int moving;
|
||||
int lefting;
|
||||
int righting;
|
||||
int clicked;
|
||||
|
||||
int buttonx;
|
||||
|
||||
int curmouseposition;
|
||||
int clickmouseposition;
|
||||
int height;
|
||||
|
||||
int shiftleft, shiftright;
|
||||
POINT clickpos;
|
||||
int clickbuttonx;
|
||||
int pageing;
|
||||
int firstdelay;
|
||||
int timer;
|
||||
int npages;
|
||||
int pageway;
|
||||
int updown;
|
||||
int timer2;
|
||||
int insetpos;
|
||||
|
||||
int vertical;
|
||||
int lastx, lasty;
|
||||
};
|
||||
|
||||
|
||||
#endif
|
Loading…
Add table
Add a link
Reference in a new issue