2001-05-02 16:59:28 -04:00
|
|
|
/****************************************************************************
|
|
|
|
*
|
2001-05-03 13:33:55 -04:00
|
|
|
* wxWindows HTML Applet Package
|
2001-05-02 16:59:28 -04:00
|
|
|
*
|
2001-06-12 14:52:03 -04:00
|
|
|
* Copyright (C) 1991-2001 SciTech Software, Inc.
|
|
|
|
* All rights reserved.
|
|
|
|
*
|
2001-05-02 16:59:28 -04:00
|
|
|
* ========================================================================
|
|
|
|
*
|
2001-06-12 14:52:03 -04:00
|
|
|
* The contents of this file are subject to the wxWindows License
|
|
|
|
* Version 3.0 (the "License"); you may not use this file except in
|
|
|
|
* compliance with the License. You may obtain a copy of the License at
|
|
|
|
* http://www.wxwindows.org/licence3.txt
|
2001-05-02 16:59:28 -04:00
|
|
|
*
|
|
|
|
* Software distributed under the License is distributed on an
|
|
|
|
* "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
|
|
|
|
* implied. See the License for the specific language governing
|
|
|
|
* rights and limitations under the License.
|
|
|
|
*
|
|
|
|
* ========================================================================
|
|
|
|
*
|
2001-05-03 13:33:55 -04:00
|
|
|
* Language: ANSI C++
|
|
|
|
* Environment: Any
|
2001-05-02 16:59:28 -04:00
|
|
|
*
|
|
|
|
* Description: Combobox wrapper. This header file defines the custom
|
2001-05-03 13:33:55 -04:00
|
|
|
* combo boxes used for this sample program.
|
2001-05-02 16:59:28 -04:00
|
|
|
*
|
|
|
|
****************************************************************************/
|
|
|
|
|
|
|
|
#ifndef __COMBOBOX_H
|
|
|
|
#define __COMBOBOX_H
|
|
|
|
|
|
|
|
/*--------------------------- Class Definitions ---------------------------*/
|
|
|
|
|
|
|
|
/****************************************************************************
|
|
|
|
REMARKS:
|
|
|
|
Defines a Custom ComboBox. This combobox is a portable implementation of
|
|
|
|
the msw combobox control. It is made of the wxWindows textctrl primitive and
|
2001-05-03 13:33:55 -04:00
|
|
|
the listbox primitive. This object does not create or display the controls,
|
2001-05-02 16:59:28 -04:00
|
|
|
it provides the relationship and underlying behavior layer for the primitives
|
|
|
|
allready created via wxDesigner.
|
|
|
|
****************************************************************************/
|
|
|
|
class ComboBox {
|
|
|
|
private:
|
2001-05-03 13:33:55 -04:00
|
|
|
int m_ListBoxId;
|
|
|
|
int m_TextCtrlId;
|
|
|
|
wxWindow *m_Parent;
|
|
|
|
wxListBox *m_ListBox;
|
|
|
|
wxTextCtrl *m_TextCtrl;
|
2001-05-02 16:59:28 -04:00
|
|
|
|
|
|
|
public:
|
2001-05-03 13:33:55 -04:00
|
|
|
// Constructor
|
|
|
|
ComboBox(wxWindow *parent, int,int);
|
2001-06-12 14:52:03 -04:00
|
|
|
|
2001-05-03 13:33:55 -04:00
|
|
|
// Returns the id of the listbox: listBoxId.
|
|
|
|
int GetListBoxId();
|
2001-06-12 14:52:03 -04:00
|
|
|
|
2001-05-03 13:33:55 -04:00
|
|
|
// Inserts: Used to insert items into the listbox
|
|
|
|
void Insert(const wxString& item, int pos);
|
|
|
|
void Insert(const wxString& item, int pos, void *clientData);
|
|
|
|
void Insert(const wxString& item, int pos, wxClientData *clientData);
|
|
|
|
void InsertItems(int nItems, const wxString *items, int pos);
|
|
|
|
void InsertItems(const wxArrayString& items, int pos);
|
2001-06-12 14:52:03 -04:00
|
|
|
|
2001-05-03 13:33:55 -04:00
|
|
|
// Sets: Used to set items in the combo box
|
|
|
|
void Set(int n, const wxString* items, void **clientData );
|
|
|
|
void Set(const wxArrayString& items, void **clientData);
|
|
|
|
int FindString(const wxString &s);
|
2001-06-12 14:52:03 -04:00
|
|
|
|
2001-05-03 13:33:55 -04:00
|
|
|
// Selections: Used to get/de/select items in the listbox
|
|
|
|
void Select(int n);
|
|
|
|
void Deselect(int n);
|
2001-06-12 14:52:03 -04:00
|
|
|
int GetSelection();
|
2001-05-03 13:33:55 -04:00
|
|
|
wxString GetStringSelection();
|
|
|
|
bool SetStringSelection(const wxString& s, bool select);
|
2001-06-12 14:52:03 -04:00
|
|
|
|
2001-05-03 13:33:55 -04:00
|
|
|
// Set the specified item at the first visible item or scroll to max
|
|
|
|
// range.
|
|
|
|
void SetFirstItem(int n);
|
|
|
|
void SetFirstItem(const wxString& s);
|
2001-06-12 14:52:03 -04:00
|
|
|
|
2001-05-03 13:33:55 -04:00
|
|
|
// Append items to the listbox
|
|
|
|
void Append(const wxString& item);
|
|
|
|
void Append(const wxString& item, void *clientData);
|
|
|
|
void Append(const wxString& item, wxClientData *clientData);
|
2001-06-12 14:52:03 -04:00
|
|
|
|
2001-05-03 13:33:55 -04:00
|
|
|
// Deleting items from the list box
|
2001-06-12 14:52:03 -04:00
|
|
|
void Clear();
|
2001-05-03 13:33:55 -04:00
|
|
|
void Delete(int n);
|
2001-06-12 14:52:03 -04:00
|
|
|
|
2001-05-03 13:33:55 -04:00
|
|
|
// OnChange event function (called from SDD dialog box code, see: dialog.h) Mimic
|
2001-06-12 14:52:03 -04:00
|
|
|
// msw combobox behavior: Click on listbox item it shows in textbox.
|
2001-05-03 13:33:55 -04:00
|
|
|
void OnChange(wxCommandEvent &event);
|
|
|
|
};
|
2001-05-02 16:59:28 -04:00
|
|
|
|
2001-05-03 13:33:55 -04:00
|
|
|
#endif // __COMBOBOX_H
|
2001-05-02 16:59:28 -04:00
|
|
|
|