xsi_griddata.h Source File
 
 
 
xsi_griddata.h
Go to the documentation of this file.
00001 //*****************************************************************************
00011 //*****************************************************************************
00012 
00013 #if (_MSC_VER > 1000) || defined(SGI_COMPILER)
00014 #pragma once
00015 #endif
00016 
00017 #ifndef __XSIGRIDDATA_H__
00018 #define __XSIGRIDDATA_H__
00019 
00020 #include <xsi_base.h>
00021 #include <xsi_ppgitem.h>
00022 #include <xsi_value.h>
00023 #include <xsi_bitarray.h>
00024 
00025 namespace XSI {
00026 struct CColor ;
00027 //*****************************************************************************
00180 //*****************************************************************************
00181 
00182 class GridWidget ;
00183 
00184 class SICPPSDKDECL GridData : public CBase
00185 {
00186 public:
00188         GridData();
00189 
00191         ~GridData();
00192 
00196         GridData(const CRef& in_ref);
00197 
00201         GridData(const GridData& in_obj);
00202 
00207         bool IsA( siClassID in_ClassID) const;
00208 
00212         siClassID GetClassID() const;
00213 
00218         GridData& operator=(const GridData& in_obj);
00219 
00225         GridData& operator=(const CRef& in_ref);
00226 
00231         CValueArray GetData() const;
00232 
00239         CStatus PutData( const CValueArray& in_items ) ;
00240 
00246         CStatus PutColumnCount( LONG in_val );
00247 
00251         LONG GetColumnCount() const ;
00252 
00258         CStatus PutRowCount( LONG in_val ) ;
00259 
00263         LONG GetRowCount() const ;
00264 
00272         CStatus PutCell(LONG in_Column, LONG in_Row, const CValue& in_CellValue);
00273 
00282         CStatus PutCell(const CString& in_ColumnLabel, const CString& in_RowLabel, const CValue& in_CellValue);
00283 
00290         CValue GetCell(LONG in_Column, LONG in_Row) const;
00291 
00301         CValue GetCell(const CString& in_ColumnLabel, const CString& in_RowLabel) const;
00307         CStatus PutColumnValues( LONG in_Column, const CValueArray & in_ColumnItems );
00313         CStatus PutColumnValues( const CString& in_ColumnLabel, const CValueArray & in_ColumnItems );
00314 
00319         CValueArray GetColumnValues(LONG in_Column ) const ;
00320 
00325         CValueArray GetColumnValues(const CString& in_ColumnLabel ) const ;
00326 
00332         CStatus PutRowValues( LONG in_Row, const CValueArray & in_RowItems );
00333 
00339         CStatus PutRowValues( const CString& in_RowLabel, const CValueArray & in_RowItems );
00340 
00345         CValueArray GetRowValues(LONG in_Row ) const ;
00346 
00351         CValueArray GetRowValues(const CString& in_RowLabel ) const ;
00352 
00361         CStatus PutRowLabel(LONG in_RowIndex, const CString& in_RowLabel );
00362 
00368         CString GetRowLabel(LONG in_RowIndex) const;
00369 
00378         CStatus PutColumnLabel(LONG in_ColumnIndex, const CString& in_ColumnLabel);
00379 
00385         CString GetColumnLabel(LONG in_ColumnIndex) const;
00386 
00393         CStatus BeginEdit();
00394 
00400         CStatus EndEdit();
00401 
00409         CStatus PutColumnType(LONG in_ColumnIndex, siGridWidgetColumnType in_Type );
00410 
00416         siGridWidgetColumnType GetColumnType( LONG in_ColumnIndex ) const;
00417 
00426         CStatus PutColumnComboItems(LONG in_ColumnIndex, const CValueArray& in_Items);
00427 
00433         CValueArray GetColumnComboItems(LONG in_ColumnIndex);
00434 
00440         GridWidget GetGridWidget() ;
00441 
00449         CStatus SetRowBackgroundColor( LONG in_Row, const CColor &in_Color );
00450 
00456         CColor GetRowBackgroundColor(LONG in_Row );
00457 
00466         CStatus SetIntColumnDef( LONG in_lColumnIndex, LONG in_lMin = INT_MIN, LONG in_lMax = INT_MAX, LONG in_lInc = 1 );
00467 
00476         CStatus GetIntColumnDef( LONG in_lColumnIndex, LONG &out_lMin, LONG &out_lMax, LONG &out_lInc ) const;
00477 
00487         CStatus SetFloatColumnDef( LONG in_lColumnIndex, double in_dMin = DBL_MIN, double in_dMax = DBL_MAX, double in_dInc = 1.0, short in_sDecimal = 2 ) ;
00488 
00498         CStatus GetFloatColumnDef( LONG in_lColumnIndex, double &out_dMin, double &out_dMax, double &out_dInc, short &out_sDecimal ) const;
00499 
00510         CStatus SetVectorColumnDef( LONG in_lColumnIndex, short in_sVectorSize, double in_dMin = DBL_MIN, double in_dMax = DBL_MAX, double in_dInc = 1.0, short in_sDecimal = 2 ) ;
00511 
00522         CStatus GetVectorColumnDef( LONG in_lColumnIndex, short &out_sVectorSize, double &out_dMin, double &out_dMax, double &out_dInc, short &out_sDecimal ) const;
00523 
00532         CStatus SetFileColumnDef( LONG in_lColumnIndex, const CString &in_csBrowseType = "File", const CString &in_csStartupPath = "/", const CString &in_csFilter = ".*" ) ;
00533 
00542         CStatus GetFileColumnDef( LONG in_lColumnIndex, CString& out_csBrowseType, CString& out_csStartupPath, CString& out_csFilter ) const;
00543 
00550         CStatus SetShaderBallColumnDef( LONG in_lColumnIndex, LONG in_lThumbnailSize = 28 ) ;
00551 
00558         CStatus GetShaderBallColumnDef( LONG in_lColumnIndex, LONG &out_lThumbnailSize ) const;
00559 
00565         CStatus SetImageClipColumnDef( LONG in_lColumnIndex, LONG in_lThumbnailSize = 28 );
00566 
00572         CStatus GetImageClipColumnDef( LONG in_lColumnIndex, LONG &out_lThumbnailSize ) const;
00573 
00579         CStatus InsertRow( LONG in_lRowIndex ) ;
00580 
00586         CStatus RemoveRow( LONG in_lRowIndex ) ;
00587 
00593         CStatus InsertColumn( LONG in_lColumnIndex ) ;
00594 
00600         CStatus RemoveColumn( LONG in_lColumnIndex ) ;
00601 
00609         CStatus SetCellBackgroundColor( LONG in_lCol, LONG in_lRow, const CColor &in_Color ) ;
00610 
00617         CColor GetCellBackgroundColor( LONG in_lCol, LONG in_lRow ) const ;
00618 
00625         CStatus SetColumnsVisibility( const CLongArray &in_alCols, bool in_bVisible ) ;
00626 
00633         CStatus SetRowsVisibility( const CLongArray &in_alRows, bool in_bVisible ) ;
00634 
00641         CStatus SetCellReadOnlyFlags( const CLongArray &in_alCells, bool in_bROFlag ) ;
00642 
00649         CStatus GetCellReadOnlyFlags( const CLongArray &in_alCells, CBitArray &out_aROFlags ) const;
00650 
00656         CStatus PutMultiSelectionMode( XSI::siGridDataMultiSelectionMode in_eSelectionMode ) ;
00657 
00662         XSI::siGridDataMultiSelectionMode GetMultiSelectionMode() const;
00663 
00669         CStatus PutReadOnly( bool in_bROFlag ) ;
00670 
00675         bool GetReadOnly() const;
00676 
00677 private:
00678 
00679         GridData * operator&() const;
00680         GridData * operator&();
00681 };
00682 
00683 };
00684 #endif // __XSIGRIDDATA_H__