35 #ifdef CHECK_MEMORY_LEAKS 37 #endif // CHECK_MEMORY_LEAKS 110 FXIMPLEMENT(
MFXEditableTable, FXTable, MFXEditableTableMap, ARRAYNUMBER(MFXEditableTableMap))
114 FXSelector sel, FXuint opts,
115 FXint x, FXint y, FXint w, FXint h,
116 FXint pl, FXint pr, FXint pt, FXint pb)
117 : FXTable(p, tgt, sel, opts, x, y, w, h, pl, pr, pt, pb),
120 new FXTextField((FXComposite*)getParent(), 1,
this,
121 ID_EDITOR, FRAME_NORMAL | LAYOUT_EXPLICIT);
123 flags |= FLAG_ENABLED | FLAG_DROPTARGET;
133 FXTable::onLeftBtnPress(sender, sel, ptr);
140 FXTablePos* e = (FXTablePos*)ptr;
143 if (c == -1 || r == -1) {
146 killSelection(
false);
150 if (c >= 0 && r >= 0) {
161 FXTable::onLeftBtnRelease(sender, sel, ptr);
181 FXTableItem* it = item;
183 FXint x = getColumnX(
myEditedCol) + getRowHeader()->getWidth() + xpos;
184 FXint y = getRowY(
myEditedRow) + getColumnHeader()->getHeight() + ypos;
185 FXIcon* icon = item->getIcon();
187 x += icon->getWidth() + 4;
189 FXint vw = getViewportWidth();
190 if (vertical->shown()) {
191 vw -= vertical->getWidth();
205 }
else if (how ==
'A') {
224 FXString text =
myEditor->getText();
226 if (item->getText() == text) {
229 if (handle(item, FXSEL(SEL_COMMAND,
ID_EDITEND), &text)) {
231 handle(
this, FXSEL(SEL_CHANGED, 0), item);
239 if (!target->handle(
this, FXSEL(SEL_CHANGED,
ID_TEXT_CHANGED), (
void*) &edited)) {
268 FXEvent* e = (FXEvent*)ptr;
291 FXint key = ((FXEvent*)ptr)->code;
292 if ( key == KEY_Return || key == KEY_KP_Enter) {
297 return FXTable::onKeyRelease(sender, sel, ptr);
324 return FXTable::onRightBtnRelease(sender, sel, ptr);
332 return FXScrollArea::onHScrollerChanged(o, s, d);
339 return FXScrollArea::onVScrollerChanged(o, s, d);
346 return FXScrollArea::onHScrollerDragged(o, s, d);
353 return FXScrollArea::onVScrollerDragged(o, s, d);
360 return FXTable::onAutoScroll(o, s, d);
367 return FXTable::onUngrabbed(o, s, d);
374 return FXTable::onRightBtnPress(o, s, d);
381 return FXTable::onKeyPress(o, s, d);
388 return FXTable::onKeyRelease(o, s, d);
395 return FXTable::onFocusIn(o, s, d);
402 return FXTable::onFocusOut(o, s, d);
409 return FXTable::onSelectionLost(o, s, d);
416 return FXTable::onSelectionGained(o, s, d);
423 return FXTable::onSelectionRequest(o, s, d);
430 return FXTable::onClipboardLost(o, s, d);
437 return FXTable::onClipboardGained(o, s, d);
444 return FXTable::onClipboardRequest(o, s, d);
467 return FXTable::onCommand(o, s, d);
474 return FXTable::onUpdHorzGrid(o, s, d);
481 return FXTable::onUpdVertGrid(o, s, d);
488 return FXTable::onCmdHorzGrid(o, s, d);
495 return FXTable::onCmdVertGrid(o, s, d);
551 return FXTable::onCmdMoveLeft(o, s, d);
558 return FXTable::onCmdMoveRight(o, s, d);
565 return FXTable::onCmdMoveUp(o, s, d);
572 return FXTable::onCmdMoveDown(o, s, d);
579 return FXTable::onCmdMoveHome(o, s, d);
586 return FXTable::onCmdMoveEnd(o, s, d);
593 return FXTable::onCmdMoveTop(o, s, d);
600 return FXTable::onCmdMoveBottom(o, s, d);
607 return FXTable::onCmdMovePageDown(o, s, d);
614 return FXTable::onCmdMovePageUp(o, s, d);
622 return FXTable::onCmdSelectRowIndex(o, s, d);
645 return FXTable::onCmdSelectRow(o, s, d);
676 return FXTable::onCmdMark(o, s, d);
683 return FXTable::onCmdExtend(o, s, d);
long onCmdMoveTop(FXObject *o, FXSelector s, void *d)
long onUpdVertGrid(FXObject *o, FXSelector s, void *d)
long onEditEnd(FXObject *, FXSelector, void *)
long onCmdMark(FXObject *o, FXSelector s, void *d)
long onCmdSelectRow(FXObject *o, FXSelector s, void *d)
long onHScrollerChanged(FXObject *o, FXSelector s, void *d)
long onClipboardRequest(FXObject *o, FXSelector s, void *d)
virtual void editItem(FXTableItem *item, FXint how)
long onUpdDeleteColumn(FXObject *o, FXSelector s, void *d)
long onCmdSelectRowIndex(FXObject *o, FXSelector s, void *d)
long onCmdSelectColumnIndex(FXObject *o, FXSelector s, void *d)
long onCmdMovePageUp(FXObject *o, FXSelector s, void *d)
long onFocusIn(FXObject *o, FXSelector s, void *d)
long onCmdInsertColumn(FXObject *o, FXSelector s, void *d)
long onCmdMoveRight(FXObject *o, FXSelector s, void *d)
long onRightBtnPress(FXObject *o, FXSelector s, void *d)
long onCmdSelectCell(FXObject *o, FXSelector s, void *d)
FXTableItem * myEditedItem
long onDoubleClicked(FXObject *o, FXSelector s, void *d)
long onCmdInsertRow(FXObject *o, FXSelector s, void *d)
long onRightBtnRelease(FXObject *sender, FXSelector sel, void *ptr)
long onClipboardLost(FXObject *o, FXSelector s, void *d)
long onAutoScroll(FXObject *o, FXSelector s, void *d)
long onCmdVertGrid(FXObject *o, FXSelector s, void *d)
long onCmdDeleteRow(FXObject *o, FXSelector s, void *d)
long onCmdMoveBottom(FXObject *o, FXSelector s, void *d)
long onFocusOut(FXObject *o, FXSelector s, void *d)
long onCmdMoveHome(FXObject *o, FXSelector s, void *d)
long onCmdSelectAll(FXObject *o, FXSelector s, void *d)
long onCmdMovePageDown(FXObject *o, FXSelector s, void *d)
long onHScrollerDragged(FXObject *o, FXSelector s, void *d)
virtual void editCancel()
long onSelectionRequest(FXObject *o, FXSelector s, void *d)
long onTabKeyRelease(FXObject *o, FXSelector s, void *d)
long onSelectionLost(FXObject *o, FXSelector s, void *d)
FXDEFMAP(MFXEditableTable) MFXEditableTableMap[]
long onCmdMoveLeft(FXObject *o, FXSelector s, void *d)
long onLeftBtnRelease(FXObject *sender, FXSelector sel, void *ptr)
long onKeyRelease(FXObject *sender, FXSelector sel, void *ptr)
long onUpdDeleteRow(FXObject *o, FXSelector s, void *d)
long onVScrollerChanged(FXObject *o, FXSelector s, void *d)
long onClipboardGained(FXObject *o, FXSelector s, void *d)
long onSelectionGained(FXObject *o, FXSelector s, void *d)
long onCmdExtend(FXObject *o, FXSelector s, void *d)
long onCmdMoveEnd(FXObject *o, FXSelector s, void *d)
long onEditFocusOut(FXObject *, FXSelector, void *)
long onUngrabbed(FXObject *o, FXSelector s, void *d)
long onVScrollerDragged(FXObject *o, FXSelector s, void *d)
long onCommand(FXObject *o, FXSelector s, void *d)
long onCmdDeselectAll(FXObject *o, FXSelector s, void *d)
long onCmdSelectColumn(FXObject *o, FXSelector s, void *d)
long onTripleClicked(FXObject *o, FXSelector s, void *d)
long onLeftBtnPress(FXObject *sender, FXSelector sel, void *ptr)
void writeProtectCol(int col, bool val=true)
long onEditKeyPress(FXObject *, FXSelector, void *ptr)
long onCmdDeleteColumn(FXObject *o, FXSelector s, void *d)
long onCmdHorzGrid(FXObject *o, FXSelector s, void *d)
long onCmdMoveUp(FXObject *o, FXSelector s, void *d)
long onTabKeyPress(FXObject *o, FXSelector s, void *d)
long onUpdHorzGrid(FXObject *o, FXSelector s, void *d)
long onCmdMoveDown(FXObject *o, FXSelector s, void *d)
long onLeftBtnClicked(FXObject *sender, FXSelector sel, void *ptr)
std::set< int > myWriteProtectedCols