00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
#ifndef FXCOLORWELL_H
00025
#define FXCOLORWELL_H
00026
00027
#ifndef FXFRAME_H
00028
#include "FXFrame.h"
00029
#endif
00030
00031
namespace FX {
00032
00033
00034
00035
enum {
00036
COLORWELL_OPAQUEONLY = 0x00008000,
00037
COLORWELL_SOURCEONLY = 0x00010000,
00038 COLORWELL_NORMAL =
JUSTIFY_NORMAL
00039 };
00040
00041
00042
00043
00044
00045
00046
00047
00048
00049
00050
00051
00052
00053
00054
00055
class FXAPI FXColorWell :
public FXFrame {
00056 FXDECLARE(FXColorWell)
00057 protected:
00058 FXColor wellColor[2];
00059 FXColor rgba;
00060 FXString tip;
00061 FXString help;
00062 protected:
00063 FXColorWell();
00064 static FXColor rgbaoverblack(FXColor clr);
00065 static FXColor rgbaoverwhite(FXColor clr);
00066 private:
00067 FXColorWell(const FXColorWell&);
00068 FXColorWell &operator=(const FXColorWell&);
00069 public:
00070
long onPaint(
FXObject*,FXSelector,
void*);
00071
long onLeftBtnPress(FXObject*,FXSelector,
void*);
00072
long onLeftBtnRelease(FXObject*,FXSelector,
void*);
00073
long onMiddleBtnPress(FXObject*,FXSelector,
void*);
00074
long onMiddleBtnRelease(FXObject*,FXSelector,
void*);
00075
long onKeyPress(FXObject*,FXSelector,
void*);
00076
long onKeyRelease(FXObject*,FXSelector,
void*);
00077
long onUngrabbed(FXObject*,FXSelector,
void*);
00078
long onMotion(FXObject*,FXSelector,
void*);
00079
long onBeginDrag(FXObject*,FXSelector,
void*);
00080
long onEndDrag(FXObject*,FXSelector,
void*);
00081
long onDragged(FXObject*,FXSelector,
void*);
00082
long onFocusIn(FXObject*,FXSelector,
void*);
00083
long onFocusOut(FXObject*,FXSelector,
void*);
00084
long onDNDEnter(FXObject*,FXSelector,
void*);
00085
long onDNDLeave(FXObject*,FXSelector,
void*);
00086
long onDNDMotion(FXObject*,FXSelector,
void*);
00087
long onDNDDrop(FXObject*,FXSelector,
void*);
00088
long onDNDRequest(FXObject*,FXSelector,
void*);
00089
long onSelectionLost(FXObject*,FXSelector,
void*);
00090
long onSelectionGained(FXObject*,FXSelector,
void*);
00091
long onSelectionRequest(FXObject*,FXSelector,
void*);
00092
long onChanged(FXObject*,FXSelector,
void*);
00093
long onCommand(FXObject*,FXSelector,
void*);
00094
long onClicked(FXObject*,FXSelector,
void*);
00095
long onDoubleClicked(FXObject*,FXSelector,
void*);
00096
long onTripleClicked(FXObject*,FXSelector,
void*);
00097
long onCmdSetValue(FXObject*,FXSelector,
void*);
00098
long onCmdSetIntValue(FXObject*,FXSelector,
void*);
00099
long onCmdGetIntValue(FXObject*,FXSelector,
void*);
00100
long onCmdColorWell(FXObject*,FXSelector,
void*);
00101
long onChgColorWell(FXObject*,FXSelector,
void*);
00102
long onCmdSetHelp(FXObject*,FXSelector,
void*);
00103
long onCmdGetHelp(FXObject*,FXSelector,
void*);
00104
long onCmdSetTip(FXObject*,FXSelector,
void*);
00105
long onCmdGetTip(FXObject*,FXSelector,
void*);
00106
long onQueryHelp(FXObject*,FXSelector,
void*);
00107
long onQueryTip(FXObject*,FXSelector,
void*);
00108 public:
00109 enum {
00110 ID_COLORDIALOG=FXFrame::ID_LAST,
00111 ID_LAST
00112 };
00113
public:
00114
00115
00116 FXColorWell(
FXComposite* p,FXColor clr=0,
FXObject* tgt=NULL,FXSelector sel=0,FXuint opts=COLORWELL_NORMAL,FXint x=0,FXint y=0,FXint w=0,FXint h=0,FXint pl=DEFAULT_PAD,FXint pr=DEFAULT_PAD,FXint pt=DEFAULT_PAD,FXint pb=DEFAULT_PAD);
00117
00118
00119
virtual void create();
00120
00121
00122
virtual void detach();
00123
00124
00125
virtual FXint getDefaultWidth();
00126
00127
00128
virtual FXint getDefaultHeight();
00129
00130
00131
virtual FXbool canFocus() const;
00132
00133
00134 virtual
void setFocus();
00135
00136
00137 virtual
void killFocus();
00138
00139
00140 void setRGBA(FXColor clr);
00141
00142
00143 FXColor getRGBA()
const {
return rgba; }
00144
00145
00146 void setHelpText(
const FXString& text){ help=text; }
00147
00148
00149
FXString getHelpText()
const {
return help; }
00150
00151
00152
void setTipText(
const FXString& text){ tip=text; }
00153
00154
00155 FXString getTipText()
const {
return tip; }
00156
00157
00158 FXbool isOpaqueOnly() const;
00159
00160
00161
void setOpaqueOnly(FXbool opaque);
00162
00163
00164 virtual
void save(FXStream& store) const;
00165
00166
00167 virtual
void load(FXStream& store);
00168
00169
00170 virtual ~FXColorWell();
00171 };
00172
00173 }
00174
00175 #endif