QicsTable Documentation Set

QicsSelectionManager Class Reference

internal Manager for selections in the table More...

#include <QicsSelectionManager.h>

Inherits QObject, and Qics.

List of all members.

Public Types

enum  QicsSortMode { QicsStableSort = 0, QicsQuickSort }
enum  QicsCellOverflowBehavior { Clip = 0, Overflow, ToolTip }
enum  QicsCurrentCellStyle { Spreadsheet = 0, NormalSelected }
enum  QicsGridCellClipping { AllowPartial = 0, NoDisplayOnPartial, UseClippedSymbol }
enum  QicsGridType { TableGrid = 0, RowHeaderGrid, ColumnHeaderGrid }
enum  QicsHeaderType { RowHeader = 0, ColumnHeader }
enum  QicsIndexType { RowIndex, ColumnIndex }
enum  QicsLineStyle { None = 0, Plain, Raised, Sunken }
enum  QicsRepaintBehavior { RepaintOff = 0, RepaintOn = 1, RepaintCalcOnly = 2 }
enum  QicsScrollBarMode { Auto = 0, AlwaysOff, AlwaysOn }
enum  QicsScrollDirection {
  ScrollNone = 0, ScrollUp, ScrollDown, ScrollLeft,
  ScrollRight, ScrollToRow, ScrollToColumn
enum  QicsSelectionPolicy {
  SelectNone = 0, SelectSingle, SelectMultiple, SelectSingleRow,
enum  QicsSelectionType {
  SelectionNone = 0, SelectionBegin, SelectionDrag, SelectionEnd,
  SelectionExtend, SelectionAdd
enum  QicsSortOrder { Ascending = 0, Descending }
enum  QicsTableDisplayOption { DisplayNever = 0, DisplayAlways, DisplayFirstPage }
enum  QicsTraversalKeyEditBehavior { TraverseWithinCell = 0, TraverseBetweenCells }

Public Slots

void orderChanged (QicsIndexType, QVector< int >)
void deleteRows (int num, int start_position)
void deleteColumns (int num, int start_position)


void selectionListChanged (bool in_progress)
void selectionCellsChanged (QicsRegion)
void rowSelected (int row, bool selected)
void columnSelected (int col, bool selected)

Public Member Functions

QicsDataModeldataModel (void) const
void setDataModel (QicsDataModel *sm)
QicsStyleManager * styleManager (void) const
void setStyleManager (QicsStyleManager *sm)
void setGridInfo (QicsGridInfo *)
void addHeader (QicsHeaderGrid *hdr)
void removeHeader (QObject *hdr)
QicsSelectionListselectionList (void) const
void setSelectionList (const QicsSelectionList &sel_list)
void clearSelectionList (void)
QicsSelectionListselectionActionList (void) const
void addSelection (QicsSelection &selection)
QicsSelectionPolicy selectionPolicy (void) const
void setSelectionPolicy (QicsSelectionPolicy policy)
void processSelectionEvent (QicsSelectionType stype, int begin_row, int begin_col, int end_row, int end_col)
bool canSelectMultiple (void) const

Protected Types

typedef QVector< QicsGrid * > QicsGridPV
typedef QVector< QicsHeaderGrid * > QicsHeaderGridPV
enum  QicsSelectState { QicsSelectFalse, QicsSelectTrue, QicsSelectFalseRevert, QicsSelectTrueRevert }

Protected Member Functions

void beginSelection (int begin_row, int begin_col, int end_row, int end_col)
void dragSelection (int begin_row, int begin_col, int end_row, int end_col)
void extendSelection (int begin_row, int begin_col, int end_row, int end_col)
void addSelection (int begin_row, int begin_col, int end_row, int end_col)
void endSelection (int begin_row, int begin_col, int end_row, int end_col)
void deleteSelection (void)
void invalidateSelection (int begin_row, int begin_col, int end_row, int end_col)
void setSelectionProperty (const QicsSelection &selection, QicsSelectionManager::QicsSelectState sel)
void setSelectionProperty (int begin_row, int begin_col, int end_row, int end_col, QicsSelectionManager::QicsSelectState sel)
void setRowSelectionProperty (QicsGridInfo &, int row, QicsSelectionManager::QicsSelectState sel, QicsStyleManager *sm)
void setColumnSelectionProperty (QicsGridInfo &, int col, QicsSelectionManager::QicsSelectState sel, QicsStyleManager *sm)
void addToSelectionList (QicsSelection &sel)
QicsSelectionfindSelectionBlock (int anchor_row, int anchor_col)
void announceChanges (bool in_progress)

Protected Attributes

QicsStyleManager * myStyleManager
QicsSelection myCurrentSelection
QicsSelectState myCurrentDragAction
QicsHeaderGridPV myHeaderList
QicsRegion myAffectedRegion
QicsSelectionPolicy mySelectionPolicy
bool mySelectionChangedFlag

Detailed Description

internal Manager for selections in the table

QicsSelectionManager handles cell selection in the QicsTable widget. The object receives messages from the QicsGrid widget specifying selection actions that the user has taken. Selection actions can also be performed by the programmer through the QicsTable API.

When selection actions are made, the selection manager updates its internal state, and also updates the style manager so that affected cells have the correct QicsCellStyle::Selected state.

Member Enumeration Documentation

enum Qics::QicsCellOverflowBehavior [inherited]

Denotes the behavior of grids when handling cells whose contents cannot be displayed in the boundaries of the cell.

  • Clip Cell contents are clipped at the edges of the cell
  • Overflow The grid will attempt to overflow into adjacent cells
  • ToolTip The full contents of the cell will be displayed in a tooltip when the mouse pointer is hovered over the cell

enum Qics::QicsCurrentCellStyle [inherited]

Denotes the visual style that the current cell of the table will be drawn with.

  • Spreadsheet The current cell will be drawn with a solid border and will always use the cell's background color.
  • NormalSelected The current cell will be drawn the same as all other selected cells. The border will be as specified in the cell's border properties, and the background will be the cell's selected color.

enum Qics::QicsGridCellClipping [inherited]

Denotes the policy for displaying text that is too long to fit in its cell

  • AllowPartial Shows as much of the text as possible
  • NoDisplayOnPartial Do not display text if it cannot fit in the cell
  • UseClippedSymbol Display a clipped symbol at the end of the partial text

enum Qics::QicsGridType [inherited]

Specifies a type of grid object.

  • TableGrid A grid used to display normal table data
  • RowHeaderGrid A grid used to display row header data
  • ColumnHeaderGrid A grid used to display column header data

enum Qics::QicsHeaderType [inherited]

Specifies the type of table header.

  • HeaderRow A row header
  • HeaderColumn A column header

enum Qics::QicsIndexType [inherited]

Specifies the type of table index.

  • RowIndex A row index
  • ColumnIndex A column index

enum Qics::QicsLineStyle [inherited]

Denotes the style of lines and borders in the table widget.

  • None No line or border
  • Plain A simple, plain line or border
  • Raised A raised line (using shadows)
  • Sunken A sunken line (using shadows)

enum Qics::QicsRepaintBehavior [inherited]

Specifies the recalculation and repainting behavior of tables and grids.

  • RepaintOff Do not perform any drawing or dimension calculations
  • RepaintOn Draw as needed, keep all dimensions up to date
  • RepaintCalcOnly Do not draw, but keep all dimensions up to date

enum Qics::QicsScrollBarMode [inherited]

Specifies the various modes of QicsTable's scroll bars.

  • Auto QicsTable shows a scroll bar when the content is too large to fit and not otherwise.
  • AlwaysOff QicsTable never shows a scroll bar.
  • AlwaysOn QicsTable always shows a scroll bar.

enum Qics::QicsScrollDirection [inherited]

Denotes a direction for scrolling operations, or that an absolute scroll should occur.

  • ScrollNone no scroll allowed
  • ScrollUp scrolling up on a certain number of rows
  • ScrollDown scrolling down on a certain number of rows
  • ScrollLeft scrolling left on a certain number of columns
  • ScrollRight scrolling right on a certain number of columns
  • ScrollToRow scrolling up or down to a certain row
  • ScrollToColumn scrolling left or right to a certain column

enum Qics::QicsSelectionPolicy [inherited]

Denotes the selection policy for the table.

  • SelectNone no selection allowed
  • SelectSingle single cell selection
  • SelectionMultiple multiple cell selection (including non-contiguous regions)
  • SelectSingleRow selecting a cell selects the entire row, only one row can be selected
  • SelectMultipleRow selecting a cell selects the entire row, multiple rows can be selected

enum Qics::QicsSortMode [inherited]

Denotes the sort algorithm which is used

  • QicsStableSort Used non distructive, stable sort algorithm
  • QicsQuickSort Default quick sort algorithm.

enum Qics::QicsSortOrder [inherited]

Specifies whenever ordering should be ascending or descending.

  • Ascending Ascending order
  • Descending Descending order

enum Qics::QicsTableDisplayOption [inherited]

Specifies a printing display policy for elements of the table

  • DisplayNever Do not display the element when printing
  • DisplayAlways Always display the element when printing
  • DisplayFirstPage Display the element only when printing the first page of the table

enum Qics::QicsTraversalKeyEditBehavior [inherited]

Specifies the behavior of the traversal keys (left, right, up, down, etc) while editing a cell.

  • TraverseWithinCell Traversal keys move the text cursor within the edited cell.
  • TraverseBetweenCells Traversal keys move the current cell highlight between cells in the table.

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

All trademarks and copyrights on this page are properties of their respective owners.
The rest is copyright 1999-2006 Integrated Computer Solutions, Inc.