JX Application Framework
Loading...
Searching...
No Matches
Public Member Functions | Protected Member Functions | List of all members
JXEditTable Class Referenceabstract

#include <JXEditTable.h>

Inheritance diagram for JXEditTable:
[legend]

Public Member Functions

 JXEditTable (const JCoordinate defRowHeight, const JCoordinate defColWidth, JXScrollbarSet *scrollbarSet, JXContainer *enclosure, const HSizingOption hSizing, const VSizingOption vSizing, const JCoordinate x, const JCoordinate y, const JCoordinate w, const JCoordinate h)
 
 ~JXEditTable () override
 
void HandleKeyPress (const JUtf8Character &c, const int keySym, const JXKeyModifiers &modifiers) override
 
virtual bool WantsInputFieldKey (const JUtf8Character &c, const int keySym, const JXKeyModifiers &modifiers) const
 
JXTEBaseGetEditMenuHandler () const
 
bool IsEditable (const JPoint &cell) const override
 
- Public Member Functions inherited from JXTable
 JXTable (const JCoordinate defRowHeight, const JCoordinate defColWidth, JXScrollbarSet *scrollbarSet, JXContainer *enclosure, const HSizingOption hSizing, const VSizingOption vSizing, const JCoordinate x, const JCoordinate y, const JCoordinate w, const JCoordinate h)
 
 ~JXTable () override
 
- Public Member Functions inherited from JXScrollableWidget
 JXScrollableWidget (JXScrollbarSet *scrollbarSet, JXContainer *enclosure, const HSizingOption hSizing, const VSizingOption vSizing, const JCoordinate x, const JCoordinate y, const JCoordinate w, const JCoordinate h)
 
 ~JXScrollableWidget () override
 
void AlwaysShowScrollbars (const bool alwaysShow=true)
 
bool GetScrollbars (JXScrollbar **hScrollbar, JXScrollbar **vScrollbar) const
 
void UpdateScrollbars ()
 
void ReadScrollSetup (std::istream &input)
 
void WriteScrollSetup (std::ostream &output) const
 
void HandleKeyPress (const JUtf8Character &c, const int key, const JXKeyModifiers &modifiers) override
 
DisplayState SaveDisplayState () const
 
void RestoreDisplayState (const DisplayState &state)
 
- Public Member Functions inherited from JXWidget
 ~JXWidget () override
 
void Deactivate () override
 
void Refresh () const override
 
void RefreshRect (const JRect &rect) const
 
void Redraw () const override
 
void RedrawRect (const JRect &rect) const
 
bool Focus ()
 
bool Unfocus ()
 
bool HasFocus () const
 
bool WillAcceptFocus () const
 
void SetSingleFocusWidget ()
 
virtual bool OKToUnfocus ()
 
bool WantsTab () const
 
bool WantsModifiedTab () const
 
bool WillAcceptShortcut () const
 
virtual void HandleShortcut (const int key, const JXKeyModifiers &modifiers)
 
JPoint GlobalToLocal (const JCoordinate x, const JCoordinate y) const override
 
JPoint LocalToGlobal (const JCoordinate x, const JCoordinate y) const override
 
void Place (const JCoordinate enclX, const JCoordinate enclY) override
 
void Move (const JCoordinate dx, const JCoordinate dy) override
 
void SetSize (const JCoordinate w, const JCoordinate h) override
 
void AdjustSize (const JCoordinate dw, const JCoordinate dh) override
 
HSizingOption GetHSizing () const
 
VSizingOption GetVSizing () const
 
void SetSizing (const HSizingOption hSizing, const VSizingOption vSizing)
 
void CenterWithinEnclosure (const bool adjustHoriz, const bool adjustVert)
 
void FitToEnclosure (const bool fitHoriz=true, const bool fitVert=true)
 
bool Scroll (const JCoordinate dx, const JCoordinate dy)
 
bool ScrollTo (const JCoordinate x, const JCoordinate y)
 
bool ScrollTo (const JPoint &pt)
 
bool ScrollToRect (const JRect &r)
 
bool ScrollToRectCentered (const JRect &r, const bool forceScroll)
 
JRect GetBoundsGlobal () const override
 
JRect GetFrameGlobal () const override
 
JRect GetApertureGlobal () const override
 
JSize GetBorderWidth () const
 
void SetBorderWidth (const JSize width)
 
JColorID GetCurrBackColor () const
 
JColorID GetBackColor () const
 
void SetBackColor (const JColorID color)
 
JColorID GetFocusColor () const
 
void SetFocusColor (const JColorID color)
 
JString ToString () const override
 
virtual JPoint GlobalToLocal (const JCoordinate x, const JCoordinate y) const=0
 
JPoint GlobalToLocal (const JPoint &pt) const
 
JRect GlobalToLocal (const JRect &r) const
 
virtual JPoint LocalToGlobal (const JCoordinate x, const JCoordinate y) const=0
 
JPoint LocalToGlobal (const JPoint &pt) const
 
JRect LocalToGlobal (const JRect &r) const
 
- Public Member Functions inherited from JXContainer
 ~JXContainer () override
 
bool IsAncestor (JXContainer *obj) const
 
virtual void Show ()
 
virtual void Hide ()
 
bool IsVisible () const
 
void SetVisible (const bool vis)
 
bool WouldBeVisible () const
 
virtual void Activate ()
 
bool IsActive () const
 
void SetActive (const bool active)
 
bool WouldBeActive () const
 
virtual void Suspend ()
 
virtual void Resume ()
 
bool IsSuspended () const
 
bool IsDNDSource () const
 
bool IsDNDTarget () const
 
JPoint GlobalToLocal (const JPoint &pt) const
 
JRect GlobalToLocal (const JRect &r) const
 
JPoint LocalToGlobal (const JPoint &pt) const
 
JRect LocalToGlobal (const JRect &r) const
 
JRect GetBounds () const
 
JCoordinate GetBoundsWidth () const
 
JCoordinate GetBoundsHeight () const
 
JRect GetFrame () const
 
JRect GetFrameLocal () const
 
JCoordinate GetFrameWidth () const
 
JCoordinate GetFrameHeight () const
 
JRect GetAperture () const
 
JCoordinate GetApertureWidth () const
 
JCoordinate GetApertureHeight () const
 
JXDisplayGetDisplay () const
 
JXWindowGetWindow () const
 
JXContainerGetEnclosure () const
 
JFontManagerGetFontManager () const
 
JXFontManagerGetXFontManager () const
 
JXSelectionManagerGetSelectionManager () const
 
JXDNDManagerGetDNDManager () const
 
JXMenuManagerGetMenuManager () const
 
JCursorIndex GetDefaultCursor () const
 
bool GetHint (JString *text) const
 
void SetHint (const JString &text)
 
void ClearHint ()
 
bool GetVisibleRectGlobal (const JRect &origRectG, JRect *visRectG) const
 
void ForEach (const std::function< void(JXContainer *)> &f, const bool recurse)
 
void ForEach (const std::function< void(const JXContainer *)> &f, const bool recurse) const
 
void ExpandToFitContent ()
 
virtual bool RunInternalFTC (const bool horizontal, JCoordinate *newSize)
 
JRect ComputePaddingForInternalFTC () const
 
bool FindContainer (const JPoint &ptG, JXContainer **container) const
 
virtual bool IsMenu () const
 
virtual bool IsMenuTable () const
 
- Public Member Functions inherited from JBroadcaster
 JBroadcaster ()
 
virtual ~JBroadcaster ()
 
JBroadcasteroperator= (const JBroadcaster &source)
 
bool HasSenders () const
 
JSize GetSenderCount () const
 
bool HasRecipients () const
 
JSize GetRecipientCount () const
 
template<class T >
void ListenTo (const JBroadcaster *sender, const std::function< void(const T &)> &f)
 
- Public Member Functions inherited from JTable
 JTable (const JCoordinate defRowHeight, const JCoordinate defColWidth, const JColorID borderColor, const JColorID selectionColor)
 
 ~JTable () override
 
void SetTableData (const JTableData *data)
 
JSize GetRowCount () const
 
JCoordinate GetRowHeight (const JIndex index) const
 
void SetRowHeight (const JIndex index, const JCoordinate rowHeight)
 
void SetAllRowHeights (const JCoordinate rowHeight)
 
JCoordinate GetDefaultRowHeight () const
 
void SetDefaultRowHeight (const JCoordinate defRowHeight)
 
JSize GetColCount () const
 
JCoordinate GetColWidth (const JIndex index) const
 
void SetColWidth (const JIndex index, const JCoordinate colWidth)
 
void SetAllColWidths (const JCoordinate colWidth)
 
JCoordinate GetDefaultColWidth () const
 
void SetDefaultColWidth (const JCoordinate defColWidth)
 
bool GetCell (const JPoint &pt, JPoint *cell) const
 
JRect GetCellRect (const JPoint &cell) const
 
JCoordinate GetRowTop (const JIndex index) const
 
JCoordinate GetColLeft (const JIndex index) const
 
JTableSelectionGetTableSelection ()
 
const JTableSelectionGetTableSelection () const
 
virtual bool IsSelectable (const JPoint &cell, const bool forExtend) const
 
void SelectSingleCell (const JPoint &cell, const bool scroll=true)
 
bool GetNextSelectableCell (JPoint *cell, const JPoint &delta, const bool forExtend) const
 
bool BeginEditing (const JPoint &cell, const bool scrollToCell=true)
 
bool ShiftEditing (const JCoordinate dx, const JCoordinate dy, const bool scrollToCell=true)
 
bool EndEditing ()
 
void CancelEditing ()
 
bool IsEditing () const
 
bool GetEditedCell (JPoint *editCell) const
 
void Print (JPagePrinter &p, const bool printRowHeader=true, const bool printColHeader=true)
 
void Print (JEPSPrinter &p, const bool printRowHeader=true, const bool printColHeader=true)
 
void DrawForPrint (JPainter &p, const JPoint &topLeft, const bool userPrintRowHeader, const bool userPrintColHeader)
 
void GetRowBorderInfo (JCoordinate *lineWidth, JColorID *color) const
 
void SetRowBorderInfo (const JCoordinate lineWidth, const JColorID color)
 
void GetColBorderInfo (JCoordinate *lineWidth, JColorID *color) const
 
void SetColBorderInfo (const JCoordinate lineWidth, const JColorID color)
 
JColorID GetSelectionColor () const
 
void SetSelectionColor (const JColorID color)
 
bool GetRowHeader (const JTable **table) const
 
void SetRowHeader (JTable *table)
 
bool GetColHeader (const JTable **table) const
 
void SetColHeader (JTable *table)
 
bool RowIndexValid (const JIndex index) const
 
bool ColIndexValid (const JIndex index) const
 
bool CellValid (const JPoint &cell) const
 
bool TableScrollToCell (const JPoint &cell, const bool centerInDisplay=false)
 
void RegisterAuxData (JTableData *auxData)
 
void RemoveAuxData (JTableData *auxData)
 

Protected Member Functions

bool CreateInputField (const JPoint &cell, const JRect &cellRect) override
 
void DeleteInputField () override
 
void PlaceInputField (const JCoordinate x, const JCoordinate y) override
 
void MoveInputField (const JCoordinate dx, const JCoordinate dy) override
 
void SetInputFieldSize (const JCoordinate w, const JCoordinate h) override
 
void ResizeInputField (const JCoordinate dw, const JCoordinate dh) override
 
virtual JXInputFieldCreateXInputField (const JPoint &cell, const JCoordinate x, const JCoordinate y, const JCoordinate w, const JCoordinate h)=0
 
virtual void PrepareDeleteXInputField ()=0
 
bool GetXInputField (JXInputField **inputField) const
 
JCoordinate GetMin1DVisibleWidth (const JPoint &cell) const override
 
- Protected Member Functions inherited from JXTable
void Draw (JXWindowPainter &p, const JRect &rect) override
 
bool HitSamePart (const JPoint &pt1, const JPoint &pt2) const override
 
void TableRefresh () override
 
void TableRefreshRect (const JRect &rect) override
 
void TableSetGUIBounds (const JCoordinate w, const JCoordinate h) override
 
void TableSetScrollSteps (const JCoordinate hStep, const JCoordinate vStep) override
 
void TableHeightChanged (const JCoordinate y, const JCoordinate delta) override
 
void TableHeightScaled (const JFloat scaleFactor) override
 
void TableRowMoved (const JCoordinate origY, const JSize height, const JCoordinate newY) override
 
void TableWidthChanged (const JCoordinate x, const JCoordinate delta) override
 
void TableWidthScaled (const JFloat scaleFactor) override
 
void TableColMoved (const JCoordinate origX, const JSize width, const JCoordinate newX) override
 
bool TableScrollToCellRect (const JRect &cellRect, const bool centerInDisplay=false) override
 
JCoordinate TableGetApertureWidth () const override
 
void BeginSelectionDrag (const JPoint &cell, const JXMouseButton button, const JXKeyModifiers &modifiers)
 
void ContinueSelectionDrag (const JPoint &pt, const JXKeyModifiers &modifiers)
 
bool HandleSelectionKeyPress (const JUtf8Character &c, const JXKeyModifiers &modifiers)
 
void Receive (JBroadcaster *sender, const Message &message) override
 
- Protected Member Functions inherited from JXScrollableWidget
bool ScrollForDrag (const JPoint &pt)
 
bool ScrollForWheel (const JXMouseButton button, const JXKeyModifiers &modifiers)
 
bool ScrollForWheel (const JXMouseButton button, const JXKeyModifiers &modifiers, JXScrollbar *hScrollbar, JXScrollbar *vScrollbar)
 
void SetHorizStepSize (const JCoordinate hStep)
 
void SetHorizPageStepContext (const JCoordinate hPageContext)
 
void SetVertStepSize (const JCoordinate vStep)
 
void SetVertPageStepContext (const JCoordinate vPageContext)
 
void SetHorizJumpToScrolltabModifiers (const bool ctrl, const bool meta)
 
void SetVertJumpToScrolltabModifiers (const bool ctrl, const bool meta)
 
void DrawBorder (JXWindowPainter &p, const JRect &frame) override
 
void HandleMouseDown (const JPoint &pt, const JXMouseButton button, const JSize clickCount, const JXButtonStates &buttonStates, const JXKeyModifiers &modifiers) override
 
void BoundsMoved (const JCoordinate dx, const JCoordinate dy) override
 
void BoundsResized (const JCoordinate dw, const JCoordinate dh) override
 
void ApertureMoved (const JCoordinate dx, const JCoordinate dy) override
 
void ApertureResized (const JCoordinate dw, const JCoordinate dh) override
 
void HandleDNDScroll (const JPoint &pt, const JXMouseButton scrollButton, const JXKeyModifiers &modifiers) override
 
- Protected Member Functions inherited from JXWidget
 JXWidget (JXContainer *enclosure, const HSizingOption hSizing, const VSizingOption vSizing, const JCoordinate x, const JCoordinate y, const JCoordinate w, const JCoordinate h)
 
void WantInput (const bool wantInput, const bool wantTab=false, const bool wantModifiedTab=false)
 
virtual void HandleFocusEvent ()
 
virtual void HandleUnfocusEvent ()
 
virtual void HandleWindowFocusEvent ()
 
virtual void HandleWindowUnfocusEvent ()
 
void UnlockBounds ()
 
void SetBounds (const JCoordinate w, const JCoordinate h)
 
void AdjustBounds (const JCoordinate dw, const JCoordinate dh)
 
void DrawBackground (JXWindowPainter &p, const JRect &frame) override
 
bool AcceptDrag (const JPoint &pt, const JXMouseButton button, const JXKeyModifiers &modifiers) override
 
JXDragPainterCreateDragInsidePainter ()
 
JXDragPainterCreateDragOutsidePainter ()
 
bool GetDragPainter (JXDragPainter **p) const
 
bool GetDragPainter (JPainter **p) const
 
void DeleteDragPainter ()
 
void BoundsMoved (const JCoordinate dx, const JCoordinate dy) override
 
void EnclosingBoundsMoved (const JCoordinate dx, const JCoordinate dy) override
 
void BoundsResized (const JCoordinate dw, const JCoordinate dh) override
 
void EnclosingBoundsResized (const JCoordinate dw, const JCoordinate dh) override
 
void FTCAdjustSize (const JCoordinate dw, const JCoordinate dh) override
 
bool BeginDND (const JPoint &pt, const JXButtonStates &buttonStates, const JXKeyModifiers &modifiers, JXSelectionData *data, JXDNDManager::TargetFinder *targetFinder=nullptr)
 
virtual void DNDInit (const JPoint &pt, const JXButtonStates &buttonStates, const JXKeyModifiers &modifiers)
 
virtual void GetSelectionData (JXSelectionData *data, const JString &id)
 
virtual void DNDFinish (const bool isDrop, const JXContainer *target)
 
virtual void DNDCompletelyFinished ()
 
virtual Atom GetDNDAction (const JXContainer *target, const JXButtonStates &buttonStates, const JXKeyModifiers &modifiers)
 
virtual void GetDNDAskActions (const JXButtonStates &buttonStates, const JXKeyModifiers &modifiers, JArray< Atom > *askActionList, JPtrArray< JString > *askDescriptionList)
 
virtual void HandleDNDResponse (const JXContainer *target, const bool dropAccepted, const Atom action)
 
bool WillAllowUnboundedScrolling () const
 
void ShouldAllowUnboundedScrolling (const bool allow)
 
- Protected Member Functions inherited from JXContainer
 JXContainer (JXWindow *window, JXContainer *enclosure)
 
 JXContainer (JXDisplay *display, JXWindow *window, JXContainer *enclosure)
 
void TurnOnBufferedDrawing ()
 
void DrawAll (JXWindowPainter &p, const JRect &frameG)
 
virtual void HandleMouseEnter ()
 
virtual void HandleMouseHere (const JPoint &pt, const JXKeyModifiers &modifiers)
 
virtual void HandleMouseLeave ()
 
virtual void HandleMouseDrag (const JPoint &pt, const JXButtonStates &buttonStates, const JXKeyModifiers &modifiers)
 
virtual void HandleMouseUp (const JPoint &pt, const JXMouseButton button, const JXButtonStates &buttonStates, const JXKeyModifiers &modifiers)
 
virtual bool WillAcceptDrop (const JArray< Atom > &typeList, Atom *action, const JPoint &pt, const Time time, const JXWidget *source)
 
virtual void HandleDNDEnter ()
 
virtual void HandleDNDHere (const JPoint &pt, const JXWidget *source)
 
virtual void HandleDNDLeave ()
 
virtual void HandleDNDDrop (const JPoint &pt, const JArray< Atom > &typeList, const Atom action, const Time time, const JXWidget *source)
 
bool DispatchClientMessage (const XClientMessageEvent &clientMessage)
 
virtual bool HandleClientMessage (const XClientMessageEvent &clientMessage)
 
void NotifyBoundsMoved (const JCoordinate dx, const JCoordinate dy)
 
void NotifyBoundsResized (const JCoordinate dw, const JCoordinate dh)
 
virtual bool IncludeInFTC () const
 
virtual bool NeedsInternalFTC () const
 
virtual JCoordinate GetFTCMinContentSize (const bool horizontal) const
 
virtual JRect GetFrameForFTC () const
 
bool GetEnclosedObjects (JPtrArrayIterator< JXContainer > **iter) const
 
void DeleteEnclosedObjects ()
 
void ShowCursor ()
 
void HideCursor ()
 
void SetDefaultCursor (const JCursorIndex index)
 
void DispatchCursor (const JPoint &ptG, const JXKeyModifiers &modifiers)
 
virtual void AdjustCursor (const JPoint &pt, const JXKeyModifiers &modifiers)
 
void DisplayCursor (const JCursorIndex index)
 
JXCursorAnimatorCreateCursorAnimator ()
 
JXCursorAnimatorGetCursorAnimator () const
 
void AnimateCursor () const
 
void RemoveCursorAnimator ()
 
void ActivateCursor (const JPoint &ptG, const JXKeyModifiers &modifiers)
 
void DeactivateCursor ()
 
std::ostream & GetFTCLog () const
 
virtual bool StealMouse (const int eventType, const JPoint &ptG, const JXMouseButton button, const unsigned int state)
 
- Protected Member Functions inherited from JBroadcaster
 JBroadcaster (const JBroadcaster &source)
 
void ListenTo (const JBroadcaster *sender)
 
void StopListening (const JBroadcaster *sender)
 
void ClearWhenGoingAway (const JBroadcaster *sender, void *pointerToMember)
 
void StopListening (const JBroadcaster *sender, const std::type_info &messageType)
 
template<class T >
void Send (JBroadcaster *recipient, const T &message)
 
template<class T >
void Broadcast (const T &message)
 
void SendWithFeedback (JBroadcaster *recipient, Message *message)
 
void BroadcastWithFeedback (Message *message)
 
virtual void ReceiveWithFeedback (JBroadcaster *sender, Message *message)
 
virtual void ReceiveGoingAway (JBroadcaster *sender)
 
- Protected Member Functions inherited from JTable
void TableRefreshCell (const JPoint &cell)
 
void TableRefreshCell (const JIndex row, const JIndex col)
 
void TableRefreshCellRect (const JRect &cellRect)
 
void TableRefreshRow (const JIndex index)
 
void TableRefreshCol (const JIndex index)
 
bool WillActLike1DList () const
 
void ShouldActLike1DList (const bool act1D=true)
 
void SetDrawOrder (const DrawOrder order)
 
void TableDraw (JPainter &p, const JRect &r, const bool drawLowerRightBorder=false)
 
virtual void TableDrawCell (JPainter &p, const JPoint &cell, const JRect &rect)=0
 
virtual void TablePrepareToDrawRow (const JIndex rowIndex, const JIndex firstCol, const JIndex lastCol)
 
virtual void TablePrepareToDrawCol (const JIndex colIndex, const JIndex firstRow, const JIndex lastRow)
 
bool Paginate (const JCoordinate pageWidth, const JCoordinate pageHeight, const bool userPrintRowHeader, JArray< JCoordinate > *rowBreakpts, bool *printRowHeader, const bool userPrintColHeader, JArray< JCoordinate > *colBreakpts, bool *printColHeader) const
 
void HilightIfSelected (JPainter &p, const JPoint &cell, const JRect &rect) const
 
void InsertRows (const JIndex index, const JSize count, const JCoordinate rowHeight=0)
 
void PrependRows (const JSize count, const JCoordinate rowHeight=0)
 
void AppendRows (const JSize count, const JCoordinate rowHeight=0)
 
void RemoveRow (const JIndex index)
 
void RemoveNextRows (const JIndex firstIndex, const JSize count)
 
void RemovePrevRows (const JIndex lastIndex, const JSize count)
 
void RemoveAllRows ()
 
void MoveRow (const JIndex origIndex, const JIndex newIndex)
 
void InsertCols (const JIndex index, const JSize count, const JCoordinate colWidth=0)
 
void PrependCols (const JSize count, const JCoordinate colWidth=0)
 
void AppendCols (const JSize count, const JCoordinate colWidth=0)
 
void RemoveCol (const JIndex index)
 
void RemoveNextCols (const JIndex firstIndex, const JSize count)
 
void RemovePrevCols (const JIndex lastIndex, const JSize count)
 
void RemoveAllCols ()
 
void MoveCol (const JIndex origIndex, const JIndex newIndex)
 
virtual bool ExtractInputData (const JPoint &cell)
 
virtual JCoordinate GetPrintHeaderHeight (JPagePrinter &p) const
 
virtual JCoordinate GetPrintFooterHeight (JPagePrinter &p) const
 
virtual void DrawPrintHeader (JPagePrinter &p, const JCoordinate headerHeight)
 
virtual void DrawPrintFooter (JPagePrinter &p, const JCoordinate footerHeight)
 
bool IsDraggingSelection () const
 
void SetSelectionBehavior (const bool allowMultiple, const bool allowDiscont)
 
void BeginSelectionDrag (const JPoint &cell, const bool extendSelection, const bool selectDiscont)
 
void ContinueSelectionDrag (const JPoint &cell)
 
void FinishSelectionDrag ()
 
bool HandleSelectionKeyPress (const JUtf8Character &key, const bool extendSelection)
 
void AdjustToTableData ()
 

Additional Inherited Members

- Public Types inherited from JXWidget
enum  HSizingOption {
  kFixedLeft ,
  kFixedRight ,
  kHElastic
}
 
enum  VSizingOption {
  kFixedTop ,
  kFixedBottom ,
  kVElastic
}
 
- Static Public Member Functions inherited from JXScrollableWidget
static void SkipScrollSetup (std::istream &input)
 
- Static Public Member Functions inherited from JXContainer
static void DebugExpandToFitContent (const bool horiz)
 
static void DebugExpandToFitContentExtras (const bool noop, const bool overlap)
 
- Static Public Attributes inherited from JXWidget
static const JUtf8BytekGotFocus = "GotFocus::JXWidget"
 
static const JUtf8BytekLostFocus = "LostFocus::JXWidget"
 
- Static Public Attributes inherited from JTable
static const JUtf8BytekRowHeightChanged = "RowHeightChanged::JTable"
 
static const JUtf8BytekAllRowHeightsChanged = "AllRowHeightsChanged::JTable"
 
static const JUtf8BytekRowsInserted = "RowsInserted::JTable"
 
static const JUtf8BytekRowsRemoved = "RowsRemoved::JTable"
 
static const JUtf8BytekRowMoved = "RowMoved::JTable"
 
static const JUtf8BytekRowBorderWidthChanged = "RowBorderWidthChanged::JTable"
 
static const JUtf8BytekColWidthChanged = "ColWidthChanged::JTable"
 
static const JUtf8BytekAllColWidthsChanged = "AllColWidthsChanged::JTable"
 
static const JUtf8BytekColsInserted = "ColsInserted::JTable"
 
static const JUtf8BytekColsRemoved = "ColsRemoved::JTable"
 
static const JUtf8BytekColMoved = "ColMoved::JTable"
 
static const JUtf8BytekColBorderWidthChanged = "ColBorderWidthChanged::JTable"
 
static const JUtf8BytekPrepareForTableDataMessage = "PrepareForTableDataMessage::JTable"
 
static const JUtf8BytekPrepareForTableDataChange = "PrepareForTableDataChange::JTable"
 
static const JUtf8BytekTableDataChanged = "TableDataChanged::JTable"
 
- Protected Types inherited from JTable
enum  DrawOrder {
  kDrawByRow ,
  kDrawByCol
}
 

Detailed Description

We implement most of the routines required to use JTable's editing
mechanism for in-place editing.  To use these routines, a derived class
only needs to override JTable::ExtractInputData() and the following
routines:

    CreateXInputField
        Create an input field to edit the specified cell and return
        the object as a JXInputField.

    PrepareDeleteXInputField
        Prepare for the active input field to be deleted.

Constructor & Destructor Documentation

◆ JXEditTable()

JXEditTable::JXEditTable ( const JCoordinate  defRowHeight,
const JCoordinate  defColWidth,
JXScrollbarSet scrollbarSet,
JXContainer enclosure,
const HSizingOption  hSizing,
const VSizingOption  vSizing,
const JCoordinate  x,
const JCoordinate  y,
const JCoordinate  w,
const JCoordinate  h 
)

◆ ~JXEditTable()

JXEditTable::~JXEditTable ( )
override

Member Function Documentation

◆ CreateInputField()

bool JXEditTable::CreateInputField ( const JPoint cell,
const JRect cellRect 
)
overrideprotectedvirtual

Derived class must override to create an input field for the given cell. The cell's rect is provided for convenience. The derived class must store the object so it can retrieve the information when ExtractInputData is called.

These functions are not pure virtual because not all derived classes will support editing, so they should not all be forced to implement these functions.

Reimplemented from JTable.

◆ CreateXInputField()

virtual JXInputField * JXEditTable::CreateXInputField ( const JPoint cell,
const JCoordinate  x,
const JCoordinate  y,
const JCoordinate  w,
const JCoordinate  h 
)
protectedpure virtual

◆ DeleteInputField()

void JXEditTable::DeleteInputField ( )
overrideprotectedvirtual

Deleting the input field during the event processing opens the possibility for very subtle bugs. The one that I had to track down involved deactivating a table with an active edit field. JXTEBase::Deactivate() first calls JXWidget::Deactivate() which causes loss of focus, which deletes the input field. JXTEBase then tries to perform additional processing on the deleted object!

Reimplemented from JTable.

◆ GetEditMenuHandler()

JXTEBase * JXEditTable::GetEditMenuHandler ( ) const

Returns JXTEBase* that can then be used for AppendEditMenu() or ShareEditMenu().

◆ GetMin1DVisibleWidth()

JCoordinate JXEditTable::GetMin1DVisibleWidth ( const JPoint cell) const
overrideprotectedvirtual

We want the caret to be visible, if possible.

Reimplemented from JTable.

Reimplemented in JXStyleTable.

◆ GetXInputField()

bool JXEditTable::GetXInputField ( JXInputField **  inputField) const
inlineprotected

Returns true if we have an active input field.

◆ HandleKeyPress()

void JXEditTable::HandleKeyPress ( const JUtf8Character c,
const int  keySym,
const JXKeyModifiers modifiers 
)
overridevirtual

Return - move down, TAB - move right, shift - opposite direction

Meta: arrows or keypad numbers move in obvious directions

Meta-Return: EndEditing()

Reimplemented from JXWidget.

Reimplemented in JXNamedTreeListWidget, and JXTreeListWidget.

◆ IsEditable()

bool JXEditTable::IsEditable ( const JPoint cell) const
overridevirtual

Derived classes should override this if there are some cells that cannot be edited.

Reimplemented from JTable.

Reimplemented in JXTreeListWidget.

◆ MoveInputField()

void JXEditTable::MoveInputField ( const JCoordinate  dx,
const JCoordinate  dy 
)
overrideprotectedvirtual

Reimplemented from JTable.

◆ PlaceInputField()

void JXEditTable::PlaceInputField ( const JCoordinate  x,
const JCoordinate  y 
)
overrideprotectedvirtual

Derived class must override to adjust the position or size of the input field.

Reimplemented from JTable.

Reimplemented in JXNamedTreeListWidget.

◆ PrepareDeleteXInputField()

virtual void JXEditTable::PrepareDeleteXInputField ( )
protectedpure virtual

◆ ResizeInputField()

void JXEditTable::ResizeInputField ( const JCoordinate  dw,
const JCoordinate  dh 
)
overrideprotectedvirtual

Reimplemented from JTable.

◆ SetInputFieldSize()

void JXEditTable::SetInputFieldSize ( const JCoordinate  w,
const JCoordinate  h 
)
overrideprotectedvirtual

Reimplemented from JTable.

Reimplemented in JXNamedTreeListWidget.

◆ WantsInputFieldKey()

bool JXEditTable::WantsInputFieldKey ( const JUtf8Character c,
const int  keySym,
const JXKeyModifiers modifiers 
) const
virtual

Returns true if it wants to preempt the input field from getting the key.


The documentation for this class was generated from the following files: