Laxkit
0.0.7.1
|
Panel of sliders to control various color channels. More...
Public Member Functions | |
ColorSliders (anXWindow *parnt, const char *nname, const char *ntitle, unsigned long nstyle, int nx, int ny, int nw, int nh, int brder, anXWindow *prev, unsigned long owner, const char *mes, int ctype, int nmax, int nstep, int c0, int c1, int c2, int c3=-1, int c4=-1) | |
virtual const char * | whattype () |
virtual int | init () |
virtual void | updateSliderRect () |
Respond to window resizes by updating where sliders, hex and old new are drawn in. | |
virtual int | Resize (int nw, int nh) |
Calls anXWindow::Resize, then Sync(0). | |
virtual int | MoveResize (int nx, int ny, int nw, int nh) |
Calls anXWindow::MoveResize, then Sync(0). | |
virtual void | Refresh () |
virtual void | DrawVertical (ScreenColor &color1, ScreenColor &color2, int x, int y, int w, int h, double pos, const char *text) |
virtual void | DrawHorizontal (ScreenColor &color1, ScreenColor &color2, int x, int y, int w, int h, double pos, const char *text) |
Each bar is drawn horizontally. | |
virtual void | DrawPos (int x, int y, int w, int h, double pos) |
virtual void | DrawOldNew (int x, int y, int w, int h, int horiz) |
virtual int | GetPos (int x, int y, double *pos, int *half) |
virtual int | LBDown (int x, int y, unsigned int state, int count, const LaxMouse *d) |
virtual int | LBUp (int x, int y, unsigned int state, const LaxMouse *d) |
virtual int | MBDown (int x, int y, unsigned int state, int count, const LaxMouse *d) |
virtual int | MBUp (int x, int y, unsigned int state, const LaxMouse *d) |
virtual int | RBDown (int x, int y, unsigned int state, int count, const LaxMouse *d) |
virtual int | RBUp (int x, int y, unsigned int state, const LaxMouse *d) |
virtual int | MouseMove (int mx, int my, unsigned int state, const LaxMouse *d) |
virtual int | WheelUp (int x, int y, unsigned int state, int count, const LaxMouse *d) |
virtual int | WheelDown (int x, int y, unsigned int state, int count, const LaxMouse *d) |
virtual int | CharInput (unsigned int ch, const char *buffer, int len, unsigned int state, const LaxKeyboard *d) |
virtual int | Event (const EventData *e, const char *mes) |
Respond to "hex" color event. | |
virtual void | Updated () |
virtual void | SetBar (int whichbar, double pos) |
virtual double | GetPosForBar (int whichbar) |
Return what the bar->pos should be, not what it actually contains. | |
virtual int | FindBar (int type) |
virtual int | EditHex () |
Start little window to edit the hex value. | |
Public Member Functions inherited from Laxkit::anXWindow | |
anXWindow (anXWindow *parnt, const char *nname, const char *ntitle, unsigned long nstyle, int xx, int yy, int ww, int hh, int brder, anXWindow *prev, unsigned long nowner, const char *nsend) | |
Constructor. | |
virtual | ~anXWindow () |
anXWindow destructor. Its X window should have been XDestroy'd before here. | |
virtual const char * | WindowTitle (int which=0) |
Return basically the name of the window. | |
virtual void | WindowTitle (const char *newtitle) |
Change the title of the window. This text would usually be displayed in the bar provided by a window manager. | |
virtual const char * | tooltip (int mouseid=0) |
By default, return win_tooltip. | |
virtual const char * | tooltip (const char *newtooltip) |
Replace the current tooltip, return the current tooltip (after replacing). | |
virtual anXWindow * | findChildWindowByTitle (const char *title) |
Find the first immediate child window that has win_title==title. | |
virtual anXWindow * | findChildWindowByName (const char *name) |
Find the first immediate child window that has win_name==name. | |
virtual int | Grayed () |
Return whether this window is grayed. | |
virtual int | Grayed (int g) |
Set the gray state of this window. Returns Grayed(void). | |
virtual int | preinit () |
virtual int | close () |
Called by anXApp from anXApp::destroywindow() when a window is to be destroyed. | |
virtual int | Idle (int tid=0) |
anXWindow::Idle() is an empty placeholeder. Just returns 1. | |
virtual Displayer * | MakeCurrent () |
virtual int | Needtodraw () |
Default is to return needtodraw. | |
virtual void | Needtodraw (int nntd) |
If 0, then the window does not need refreshing. Otherwise it does. | |
virtual int | deletenow () |
Return whether the window is allowed to be deleted. | |
virtual int | setWinStyle (unsigned int stylebit, int newvalue) |
Control various window related basic styling of win_style. | |
virtual int | getWinStyle (unsigned int stylebit) |
Currently, simply return win_style&stylebit. | |
virtual void | installColors (WindowColors *newcolors) |
Dec_count old and inc_count new. | |
virtual ShortcutHandler * | GetShortcuts () |
Return a ShortcutHandler that contains stacks of bound shortcuts and possible window actions. | |
virtual int | PerformAction (int action_number) |
virtual int | ExposeChange (ScreenEventData *e) |
Default behavior on Expose events is to call Needtodraw(1). | |
virtual int | DeviceChange (const DeviceEventData *e) |
virtual int | KeyUp (unsigned int ch, unsigned int state, const LaxKeyboard *kb) |
Called when a key is released. | |
virtual int | ButtonDown (int button, int x, int y, unsigned int state, int count, const LaxMouse *m) |
virtual int | ButtonUp (int button, int x, int y, unsigned int state, const LaxMouse *m) |
virtual int | FocusOn (const FocusChangeData *e) |
Increment win_active, and highlights the window's border, if the event refers to this window. | |
virtual int | FocusOff (const FocusChangeData *e) |
Decrements win_active, and de-highlights the window's border if win_active==0, if event is a real focus off. | |
virtual void | contentChanged () |
Windows may call this when their contents change. | |
virtual void | selectionChanged () |
Windows may call this when their selections change. | |
virtual anXWindow * | GetController () |
Return the window most relevant for tab control loops. | |
virtual int | SelectNextControl (const LaxDevice *d) |
Transfer focus to nextcontrol. | |
virtual int | SelectPrevControl (const LaxDevice *d) |
Transfer the focus to prevcontrol. | |
virtual void | ControlActivation (int on) |
Do special activation or not when controls are activated by tabbing. | |
virtual int | AddPrevControl (anXWindow *prev) |
virtual int | AddNextControl (anXWindow *next) |
virtual int | ConnectControl (anXWindow *towhat, int after=1) |
Connect towhat to this. Used for tab loops. | |
virtual int | CloseControlLoop () |
Close a tab loop. | |
virtual void | SetOwner (anXWindow *nowner, const char *mes=NULL, unsigned int send_mask=0) |
Set the new owner and control message. | |
virtual void | SetOwner (unsigned long nowner_id, const char *mes=NULL, unsigned int send_mask=0) |
virtual void | dump_out (FILE *f, int indent, int what, anObject *context) |
Simple dumping function. | |
virtual LaxFiles::Attribute * | dump_out_atts (LaxFiles::Attribute *att, int what, anObject *context) |
virtual void | dump_in_atts (LaxFiles::Attribute *att, int flag, anObject *context) |
Public Member Functions inherited from Laxkit::Tagged | |
virtual int | HasTag (const char *tag, int casematters) |
Return whether the tag exists. | |
virtual int | NumberOfTags () |
Return the number of tags, strangely enough. | |
virtual const char * | GetTag (int i) |
Return const pointer to the tag text for tag number i, where i==0 is the first tag. | |
virtual char * | GetAllTags () |
Return a new char[] with a space separated list of all the tags. | |
virtual int | InsertTags (const char *tags, int casematters) |
Insert tags from a string such as 'tag1 tag2 tag3 "tag with spaces" tag4'. | |
virtual int | InsertTag (const char *tag, int casematters) |
Insert tag if it doesn't exist already. | |
virtual int | RemoveTag (const char *tag) |
The tag must be an exact match. | |
virtual int | RemoveTag (int i) |
Remove tag number i. i must be in range [0..NumberOfTags()-1]. | |
virtual void | FlushTags () |
Public Member Functions inherited from LaxFiles::DumpUtility | |
virtual void | dump_in (FILE *f, int indent, int what, Laxkit::anObject *loadcontext, Attribute **att) |
Read in a file segment as an Attribute, and pass parsing duties to dump_in_atts. | |
virtual | ~DumpUtility () |
Empty virtual destructor. | |
Public Member Functions inherited from Laxkit::aDrawable | |
aDrawable (Drawable d=0) | |
virtual int | DrawableType () |
virtual int | ValidDrawable () |
Public Member Functions inherited from Laxkit::ColorBase | |
ColorBase (int ctype, int nmax, int c0, int c1, int c2, int c3=-1, int c4=-1) | |
virtual int | ColorChanged () |
Return 1 if the color array does not match the oldcolor array. Usually called after button up, compared to button down. | |
virtual void | Clamp () |
For each field, make sure it is in range [0..max]. | |
virtual void | RestoreColor () |
Revert colors to oldcolor. | |
virtual void | SetMax (int newmax) |
virtual void | SetRGB (int r, int g, int b, int a=-1) |
Set the channel when the value is >= 0. | |
virtual void | SetGray (int g, int a=-1) |
Set the channel when the value is >= 0. | |
virtual void | SetCMYK (int c, int m, int y, int k, int a=-1) |
Set the channel when the value is >= 0. | |
virtual void | SetHSV (int h, int s, int v, int a=-1) |
virtual void | SetRGB (double r, double g, double b, double a=-1) |
virtual void | SetGray (double g, double a=-1) |
virtual void | SetCMYK (double c, double m, double y, double k, double a=-1) |
virtual void | SetHSV (double h, double s, double v, double a=-1) |
virtual void | CMYK (double *cmyk) |
Fill cmyk[4] with double values. | |
virtual void | RGB (double *rgb) |
Fill rgb[3] with double values. | |
virtual void | HSV (double *hsv) |
Fill hsv[3] with double values. | |
virtual char * | HexValue (char *buffer) |
buffer must be at least 10 characters long, or you will segfault. | |
virtual int | SetHexValue (const char *hex) |
virtual int | Red () |
virtual int | Red (int r) |
virtual double | Redf (double r) |
virtual double | Redf () |
virtual int | Green () |
virtual int | Green (int g) |
virtual double | Greenf (double g) |
virtual double | Greenf () |
virtual int | Blue () |
virtual int | Blue (int b) |
virtual double | Bluef (double b) |
virtual double | Bluef () |
virtual int | Gray () |
virtual int | Gray (int g) |
virtual double | Grayf (double g) |
virtual double | Grayf () |
virtual int | Cyan () |
virtual int | Cyan (int c) |
virtual double | Cyanf (double c) |
virtual double | Cyanf () |
virtual int | Magenta () |
virtual int | Magenta (int m) |
virtual double | Magentaf (double m) |
virtual double | Magentaf () |
virtual int | Yellow () |
virtual int | Yellow (int y) |
virtual double | Yellowf (double y) |
virtual double | Yellowf () |
virtual int | Black () |
virtual int | Black (int k) |
virtual double | Blackf (double k) |
virtual double | Blackf () |
virtual int | Alpha () |
virtual int | Alpha (int a) |
virtual double | Alphaf (double a) |
virtual double | Alphaf () |
virtual int | Hue () |
virtual int | Hue (int h) |
virtual double | Huef (double h) |
virtual double | Huef () |
virtual int | Saturation () |
virtual int | Saturation (int s) |
virtual double | Saturationf (double s) |
virtual double | Saturationf () |
virtual int | Value () |
virtual int | Value (int v) |
virtual double | Valuef (double v) |
virtual double | Valuef () |
Public Attributes | |
int | gap |
double | step |
Public Attributes inherited from Laxkit::anXWindow | |
WindowColors * | win_colors |
anXApp * | app |
char * | win_name |
An arbitrary string to be used as an id. | |
char * | win_title |
The title of the window. | |
anXWindow * | win_parent |
int | win_screen |
unsigned long | win_style |
int | win_x |
int | win_y |
int | win_w |
int | win_h |
unsigned int | win_border |
int | win_pointer_shape |
Identifier for a stock mouse shape. | |
char | win_on |
Nonzero if the window is mapped. | |
char | win_active |
Should be positive when the window has a keyboard focus, 0 otherwise. | |
unsigned long | win_owner |
Who gets control messages from this window. | |
unsigned int | win_owner_send_mask |
char * | win_sendthis |
The type of message that gets sent to owner. | |
anXWindow * | nextcontrol |
anXWindow * | prevcontrol |
Public Attributes inherited from Laxkit::Tagged | |
int | sorttags |
Public Attributes inherited from Laxkit::ColorBase | |
int | colortype |
int | max |
int | oldcolor [5] |
int | color1 [5] |
int | color2 [5] |
int * | colors |
Protected Member Functions | |
virtual int | send () |
Protected Member Functions inherited from Laxkit::anXWindow | |
virtual int | deletekid (anXWindow *w) |
Purges child anXWindows from window's child stack. | |
virtual void | SwapBuffers () |
Swap buffers. This should be called from Refresh() if VIEWPORT_BACK_BUFFER is set in win_style. | |
virtual void | SetupBackBuffer () |
Initialize the backbuffer. |
Protected Attributes | |
ButtonDownInfo | buttondown |
IntRectangle | bwcolor |
IntRectangle | hue |
IntRectangle | sliders |
IntRectangle | hex |
IntRectangle | oldnew |
ScreenColor | curcolor |
ScreenColor | original_color |
PtrStack< ColorBarInfo > | bars |
int | current |
int | currenthalf |
int | mouseshape |
Protected Attributes inherited from Laxkit::anXWindow | |
char * | win_tooltip |
Convenience variable to hold the window's tooltip, if any. | |
int | needtodraw |
RefPtrStack< anXWindow > | _kids |
Stack of children of the window. | |
Protected Attributes inherited from Laxkit::Tagged | |
PtrStack< char > | list_of_tags |
Panel of sliders to control various color channels.
|
virtual |
Each bar is drawn horizontally.
pos is [0..1].
References Laxkit::coloravg(), Laxkit::draw_line(), Laxkit::drawing_function(), Laxkit::LAXOP_Over, Laxkit::LAXOP_Xor, Laxkit::pixelfromcolor(), and Laxkit::textout().
Screen coordinates x,y. half is 1 for upper half (absolute placement) or 0 for lower (for panning).
Return -1 for not on anything. Return -2 for hex, -3 for old, or -4 for new.
References Laxkit::PtrStack< T >::n.
|
virtual |
Return what the bar->pos should be, not what it actually contains.
Returns -1 for no such bar.
References Laxkit::PtrStack< T >::e, and Laxkit::PtrStack< T >::n.
|
virtual |
pos is clamped to [0..1].
References Laxkit::PtrStack< T >::e, and Laxkit::PtrStack< T >::n.
|
virtual |
Respond to window resizes by updating where sliders, hex and old new are drawn in.
Meaning, change the IntRectangles sliders, hex, and oldnew.
References Laxkit::getextent().
Referenced by MoveResize(), and Resize().