//****************************************************************************** // MIDIシーケンサーソフト『世界樹』 // 色選択コンボボックスクラス // (C)2002-2012 おーぷんMIDIぷろじぇくと/くず //****************************************************************************** // This library is free software; you can redistribute it and/or // modify it under the terms of the GNU Lesser General Public // License as published by the Free Software Foundation; either // version 2.1 of the License, or (at your option) any later version. // This library is distributed in the hope that it will be useful, // but WITHOUT ANY WARRANTY; without even the implied warranty of // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU // Lesser General Public License for more details. // You should have received a copy of the GNU Lesser General Public // License along with this library; if not, write to the Free Software // Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA #ifndef _COLORSELECTCOMBOBOX_H_ #define _COLORSELECTCOMBOBOX_H_ #define COLORSELECTCOMBOBOX_BLACK (RGB (0, 0, 0)) #define COLORSELECTCOMBOBOX_DARKRED (RGB (128, 0, 0)) #define COLORSELECTCOMBOBOX_DARKGREEN (RGB (0, 128, 0)) #define COLORSELECTCOMBOBOX_DARKYELLOW (RGB (128, 128, 0)) #define COLORSELECTCOMBOBOX_DARKBLUE (RGB (0, 0, 128)) #define COLORSELECTCOMBOBOX_DARKMAGENTA (RGB (128, 0, 128)) #define COLORSELECTCOMBOBOX_DARKCYAN (RGB (0, 128, 128)) #define COLORSELECTCOMBOBOX_DARKGRAY (RGB (128, 128, 128)) #define COLORSELECTCOMBOBOX_GRAY (RGB (192, 192, 192)) #define COLORSELECTCOMBOBOX_RED (RGB (255, 0, 0)) #define COLORSELECTCOMBOBOX_GREEN (RGB (0, 255, 0)) #define COLORSELECTCOMBOBOX_YELLOW (RGB (255, 255, 0) #define COLORSELECTCOMBOBOX_BLUE (RGB (0, 0, 255)) #define COLORSELECTCOMBOBOX_MAGENTA (RGB (255, 0, 255)) #define COLORSELECTCOMBOBOX_CYAN (RGB (0, 255, 255)) #define COLORSELECTCOMBOBOX_WHITE (RGB (255, 255, 255)) #define COLORSELECTCOMBOBOX_OTHER 0xFFFFFFFF class CColorSelectComboBox : public CComboBox { DECLARE_DYNCREATE (CColorSelectComboBox) //-------------------------------------------------------------------------- // 構築と破壊 //-------------------------------------------------------------------------- //-------------------------------------------------------------------------- // アトリビュート //-------------------------------------------------------------------------- protected: COLORREF m_clrCurColor; //-------------------------------------------------------------------------- // オーバーライド //-------------------------------------------------------------------------- protected: virtual BOOL PreCreateWindow (CREATESTRUCT&); virtual void MeasureItem (LPMEASUREITEMSTRUCT); virtual void DrawItem (LPDRAWITEMSTRUCT); //-------------------------------------------------------------------------- // オペレーション //-------------------------------------------------------------------------- public: BOOL SetCurColor (COLORREF clr); COLORREF GetCurColor () const { return m_clrCurColor; } void ClearSampleColor (); int AddSampleColor (COLORREF clr); COLORREF GetSampleColor (int nIndex) const; int SetSampleColor (int nIndex, COLORREF clr); //-------------------------------------------------------------------------- // メッセージマップ //-------------------------------------------------------------------------- protected: afx_msg void OnSelChange (); DECLARE_MESSAGE_MAP () }; #endif