1 #ifndef NEO_CONTROL_TYPES_H
2 #define NEO_CONTROL_TYPES_H
13 Create(parent, text, r, p);
19 bool IsChecked()
const;
20 void SetChecked(
bool checked);
21 HBITMAP GetBitmap()
const;
22 void SetBitmap(HBITMAP bitmap);
32 Create(parent, text, r, p);
44 Create(parent, text, r, p);
56 Create(parent, text, r, p);
70 virtual HWND GetScrollBarHWND()
const = 0;
71 virtual int GetBarType()
const = 0;
74 int SetPos(
int pos,
bool redraw = TRUE);
76 bool GetRange(
int* minPos,
int* maxPos)
const;
77 bool SetRange(
int minPos,
int maxPos,
bool redraw = TRUE);
79 bool GetScrollInfo(SCROLLINFO& info)
const;
80 int SetScrollInfo(SCROLLINFO& info,
bool redraw = TRUE);
95 virtual HWND GetScrollBarHWND()
const override {
return GetHandle(); }
96 virtual int GetBarType()
const override {
return SB_CTL; }
110 virtual HWND GetScrollBarHWND()
const override {
return window; }
111 virtual int GetBarType()
const override {
return bar; }
141 Create(parent, text, r, p);
151 HBITMAP GetBitmap()
const;
152 HBITMAP SetBitmap(HBITMAP bitmap);
154 HCURSOR GetCursor()
const;
155 HCURSOR SetCursor(HCURSOR cursor);
157 HENHMETAFILE GetMetaFile()
const;
158 HENHMETAFILE SetMetaFile(HENHMETAFILE metafile);
160 HICON GetIcon()
const;
161 HICON SetIcon(HICON icon);
172 virtual HWND GetEditHWND()
const = 0;
176 virtual void Paste();
180 virtual bool CanUndo();
181 virtual bool CanRedo();
183 virtual void Replace(
int from,
int to,
const tstring& text);
184 virtual int GetLastPosition()
const;
185 virtual tstring GetTextRange(
int from,
int to);
186 virtual void GetSelection(
int& from,
int& to);
187 virtual void SetSelection(
int from,
int to);
188 virtual void SelectAll();
189 virtual void SelectNone();
191 virtual void SetMaxLength(
int len);
193 virtual void SetHint(
const tstring& hint);
194 virtual tstring GetHint()
const;
196 virtual void SetMargin(
int x);
197 virtual int GetMargin()
const;
199 void Remove(
int from,
int to) { Replace(from, to, tstring()); }
200 void SetInsertionPoint(
int pos) { SetSelection(pos, pos); }
201 void SetInsertionPointEnd() { SetInsertionPoint(GetLastPosition()); }
202 int GetInsertionPoint() {
int f,t; GetSelection(f, t);
return f; }
203 tstring GetTextSelection() {
return GetTextRange(0, -1); }
212 Create(parent, r, p);
218 virtual HWND GetEditHWND()
const override {
return GetHandle(); }
219 virtual int GetLastPosition()
const override;
221 int GetLineCount()
const;
222 int XYToPosition(
int x,
int y)
const;
223 bool PositionToXY(
int pos,
int& x,
int& y);
224 int GetLineLength(
int lineIndex);
225 tstring GetLineText(
int lineIndex);
227 bool IsReadOnly()
const;
228 void SetReadOnly(
bool readonly);
230 bool IsMultiLine()
const;
232 TCHAR GetPasswordChar();
233 void SetPasswordChar(TCHAR c);
244 virtual HWND GetListBoxHWND()
const = 0;
246 virtual void Clear();
247 virtual void Delete(
int i);
248 virtual void SetItemData(
int i,
void* itemData);
249 virtual void* GetItemData(
int i);
250 virtual int Append(
const tstring& item);
251 virtual int Append(
const tstring& item,
void* itemData);
252 virtual int Insert(
const tstring& item,
int i);
253 virtual int Insert(
const tstring& item,
int i,
void* itemData);
254 virtual void SetItem(
const tstring& item,
int i);
255 virtual tstring GetItem(
int i);
256 virtual int GetItemCount();
257 virtual bool IsEmpty();
258 virtual int Find(
const tstring& item);
261 virtual void SelectItem(
int i);
262 virtual void SelectNone();
263 virtual bool IsSelected(
int i);
264 virtual int GetSelectedIndex();
265 virtual tstring GetSelectedString();
274 Create(parent, r, p);
280 virtual HWND GetListBoxHWND()
const override {
return GetHandle(); }
282 virtual void SelectItem(
int i)
override;
283 virtual bool IsSelected(
int i)
override;
285 virtual std::vector<int> GetSelectedIndices();
286 bool SelectItem(
int i,
bool select);
287 bool HasMultiSelect();
296 Create(parent, r, p);
302 virtual HWND GetEditHWND()
const override;
305 virtual HWND GetListBoxHWND()
const override;
314 Create(parent, r, p);
319 void SetStepSize(
int step);
322 void Advance(
int delta);
324 void SetRange(
int min,
int max);
328 void SetPos(
int pos);
338 void SetMarquee(
bool marquee);
353 Rect GetPaneRect(
int i)
const;
354 void SetPanes(
const int* paneWidths,
int numPanes);
356 tstring GetPaneText(
int i)
const;
357 void SetPaneText(
int i,
const tstring& text,
int drawingOperation = 0);
359 HICON GetIcon(
int i)
const;
360 void SetIcon(
int i, HICON icon);
362 tstring GetHint(
int i)
const;
363 void SetHint(
int i,
const tstring& text);
375 Create(parent, r, p);
390 Create(parent, r, p);
404 ColumnData& GetFmt() { mask |= LVCF_FMT;
return *
this; }
405 ColumnData& SetFmt(
int pFmt) { mask |= LVCF_FMT; fmt = pFmt;
return *
this; }
406 ColumnData& GetWidth() { mask |= LVCF_WIDTH;
return *
this; }
407 ColumnData& SetWidth(
int width) { mask |= LVCF_WIDTH; cx = width;
return *
this; }
408 ColumnData& GetText(TCHAR* buffer,
int bufferSize) { mask |= LVCF_TEXT; pszText = buffer; cchTextMax = bufferSize;
return *
this; }
409 ColumnData& SetText(
const TCHAR* text) { mask |= LVCF_TEXT; pszText =
const_cast<TCHAR*
>(text);
return *
this; }
410 ColumnData& GetSubItem() { mask |= LVCF_SUBITEM;
return *
this; }
411 ColumnData& SetSubItem(
int subitem) { mask |= LVCF_SUBITEM; iSubItem = subitem;
return *
this; }
421 ItemData& Item(
int item,
int subItem) { iItem = item; iSubItem = subItem;
return *
this; }
422 ItemData& GetText(TCHAR* buffer,
int bufferSize) { mask |= LVIF_TEXT; pszText = buffer; cchTextMax = bufferSize;
return *
this; }
423 ItemData& SetText(
const TCHAR* text) { mask |= LVIF_TEXT; pszText =
const_cast<TCHAR*
>(text);
return *
this; }
424 ItemData& GetParam() { mask |= LVIF_PARAM;
return *
this; }
425 ItemData& SetParam(LPARAM param) { mask |= LVIF_PARAM; lParam = param;
return *
this; }
426 ItemData& GetState(UINT pStateMask) { mask |= LVIF_STATE; stateMask = pStateMask;
return *
this; }
427 ItemData& SetState(UINT pState, UINT pStateMask) { mask |= LVIF_STATE; state = pState; stateMask = pStateMask;
return *
this; }
430 int GetColumnCount()
const;
432 void GetColumn(
int index,
ColumnData& data)
const;
435 int InsertColumn(
int index,
ColumnData& data);
436 int InsertColumn(
int index,
const tstring& text,
int format = LVCFMT_LEFT,
int width = LVSCW_AUTOSIZE_USEHEADER);
438 int AppendColumn(
const tstring& text,
int format = LVCFMT_LEFT,
int width = LVSCW_AUTOSIZE_USEHEADER);
440 void DeleteColumn(
int index);
448 int GetColumnWidth(
int index)
const;
455 int GetItemCount()
const;
456 void SetItemCount(
int count);
467 void SetItem(
int index,
int column,
const tstring& text);
473 int InsertItem(
int index,
const tstring& text);
475 int AppendItem(
const tstring& text);
477 void DeleteItem(
int index);
479 UINT GetItemState(
int index, LPARAM stateMask)
const;
480 void SetItemState(
int index, UINT state, UINT stateMask);
482 tstring GetItemText(
int index,
int column = 0)
const;
483 void SetItemText(
const tstring& text,
int index,
int column = 0);
485 bool IsItemSelected(
int item)
const;
486 void SelectItem(
bool select,
int item);
488 HWND BeginEdit(
int index);
491 COLORREF GetBkColor()
const;
492 void SetBkColor(COLORREF color);
494 COLORREF GetTextColor()
const;
495 void SetTextColor(COLORREF color);
497 COLORREF GetTextBkColor()
const;
498 void SetTextBkColor(COLORREF color);
505 DWORD GetExtendedListStyle()
const;
506 void SetExtendedListStyle(DWORD style);
515 Create(parent, r, p);
520 Rect CalculateDisplayArea(
const RECT& windowRect)
const;
522 Rect CalculateWindowRect(
const RECT& displayArea)
const;
524 int GetItemCount()
const;
526 int InsertItem(
int index,
const TCITEM& item);
527 int InsertItem(
int index,
const tstring& text);
529 int AppendItem(
const tstring& text);
531 void DeleteItem(
int index);
533 void DeleteAllItems();
535 void GetItem(
int index, TCITEM& item)
const;
537 void SetItem(
int index, TCITEM& item);
538 void SetItem(
int index,
const tstring& text);
550 void SetMinTabWidth(
int width);
552 void SetPadding(
int width,
int height);
559 int GetSelection()
const;
560 int SetSelection(
int index);
571 void DeselectAll(
bool excludeFocus =
true);
void SetItem(ItemData &data)
Definition: ControlTypes.inl:978
void SetItemSize(int width, int height)
Set a fixed size for all tabs.
Definition: ControlTypes.inl:1189
Base class for standard Windows controls.
Definition: Control.h:73
Definition: ControlTypes.h:509
Definition: ControlTypes.h:290
void GetItem(ItemData &data)
Definition: ControlTypes.inl:973
void SetColumnWidth(int index, int width)
Definition: ControlTypes.inl:935
void Shrink()
Shrink the static so it has just enough room for it's text.
Definition: ControlTypes.inl:152
Common interface for ListBox and ComboBox.
Definition: ControlTypes.h:239
Definition: ControlTypes.h:38
TODO: needs methods.
Definition: ControlTypes.h:384
void EnsureVisible(int index, bool partialOk=false)
Definition: ControlTypes.inl:1091
Holds optional control parameters.
Definition: Control.h:10
Rect GetRectOnParent() const
Definition: WindowBase.inl:416
Common interface for TextBox and ComboBox.
Definition: ControlTypes.h:167
Definition: ControlTypes.h:342
Used to get or set values of a list item.
Definition: ControlTypes.h:417
void AutoSizeColumns(int col=-1)
Definition: ControlTypes.inl:945
int GetButtonFocus() const
In button mode (TCS_BUTTONS), the focused button may be different from the selected button...
Definition: ControlTypes.inl:1219
int GetRowCount() const
Only works with TCS_MULTILINE.
Definition: ControlTypes.inl:1204
Windows RECT structure with constructor.
Definition: Rect.h:108
Definition: ControlTypes.h:50
Definition: ControlTypes.h:135
Rect GetItemRect(int index) const
Definition: ControlTypes.inl:1182
int InsertItem(ItemData &data)
Definition: ControlTypes.inl:988
Definition: ControlTypes.h:206
void SetButtonFocus(int index)
Definition: ControlTypes.inl:1224
Used to get or set values of a list column.
Definition: ControlTypes.h:400
Definition: ControlTypes.h:308
Definition: ControlTypes.h:268