| 
    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().