*
kWidth=
".Width";
58, m_TextCellAttrEdit()
60, m_FloatCellAttrEdit()
61, m_CmdProccessor(cmdProccessor)
62, m_EventHandler(*this)
64SetAttrProvider(
newwxGridCellAttrProvider);
74 static boolregistered =
false;
81 "Assign Value to a Column",
84 "Command shows dialog for assigning value to a whole column of a table");
87 "Copy values of Column to another Column",
90 "Copy values of Column to another Column");
118wxArrayString strings2;
120strings2.push_back(wxString::FromUTF8(it->c_str()));
123wxGridCellAttr* attr =
newwxGridCellAttr();
124attr->SetEditor(
newwxGridCellChoiceEditor(strings2));
125attr->SetReadOnly(
false);
126SetColAttr(attr, (
int)
i);
138wxGrid* oldGrid = GetView();
140oldGrid->PopEventHandler();
142wxGridTableBase::SetView(
grid);
160 grid->SetColSize((
int)
i, width);
203 return static_cast<int>(
m_Selected.size());
216 returnwxEmptyString;
223wxString s = wxGridTableBase::GetRowLabelValue(
row);
227 if(!
label.empty())
237 returnwxEmptyString;
241 returnwxString::FromUTF8(s.c_str());
247 returnwxEmptyString;
251 returnwxString::FromUTF8(
m_TableData->GetHtmlValue(
row, col).c_str());
254 returnwxString::FromUTF8(s.c_str());
265 if(wxGRID_VALUE_STRING == typeName)
268 if(wxGRID_VALUE_NUMBER == typeName)
271 if(wxGRID_VALUE_FLOAT == typeName)
284 if(wxGRID_VALUE_STRING == typeName &&
288 if(wxGRID_VALUE_NUMBER == typeName &&
292 if(wxGRID_VALUE_FLOAT == typeName &&
315 if(
row< 0 || col < 0) {
447 m_IntCellAttr->SetRenderer(
newwxGridCellNumberRenderer());
514vector<size_t>::iterator it =
526wxGridTableMessage
msg(
this,
527wxGRIDTABLE_NOTIFY_COLS_INSERTED,
528 static_cast<int>(index),
531GetView()->ProcessTableMessage(
msg);
535GetView()->SetColSize((
int)index, colWidth);
552wxGridTableMessage
msg(
this,
553wxGRIDTABLE_NOTIFY_COLS_DELETED,
554 static_cast<int>(index),
557GetView()->ProcessTableMessage(
msg);
594 for(
size_t i= 0;
i< rows; ++
i) {
608 if(colums.size() > colCount)
611 for(
size_t i= 0;
i< colums.size(); ++
i) {
612 size_tcol = colums[
i];
615 if(!col_set.
insert(col).second)
628 else if(sortColumn.first <
m_TableData->GetColsCount()) {
711 size_tmin_row_idx = (size_t)-1;
712 size_tselected_idx = (size_t)-1;
730 size_tnext_row_idx = (size_t)-1;
731 size_tselected_idx = (size_t)-1;
740 if(selected_idx != (
size_t)-1)
752 size_tprev_row_idx = 0;
753 size_tselected_idx = (size_t)-1;
762 if(selected_idx != (
size_t)-1)
806vector<size_t> vis_columns;
813vector<int> vis_columns_i;
816 if(!vis_columns_i.empty()) {
817 for(
size_t i= 0;
i< vis_columns_i.size(); ++
i)
818vis_columns.push_back(vis_columns_i[
i]);
837vector<int> vis_columns_i;
845 intwidth = GetView()->GetColSize((
int)
i);
862 if(m_CmdProccessor) {
878 if(dlg.ShowModal() == wxID_OK && m_Adapter.m_CmdProccessor) {
881m_Adapter.m_CmdProccessor->Execute(
command);
894 if(dlg.ShowModal() == wxID_OK && m_Adapter.m_CmdProccessor) {
897m_Adapter.m_CmdProccessor->Execute(
command);
IEditCommand * GetEditCommand()
static bool CanAssignColumn(ITableData &table)
static bool CanCopyColumn(ITableData &table)
IEditCommand * GetEditCommand()
CRegistryWriteView GetWriteView(const string §ion)
get a read-write view at a particular level.
static CGuiRegistry & GetInstance()
access the application-wide singleton
CRegistryReadView GetReadView(const string §ion) const
get a read-only view at a particular level.
class CRegistryReadView provides a nested hierarchical view at a particular key.
int GetInt(const string &key, int default_val=0) const
access a named key at this level, with no recursion
void GetIntVec(const string &key, vector< int > &val) const
void Set(const string &key, int val)
access a named key at this level, with no recursion
static void Sort(ITableData &tableData, size_t column, size_t *begin, size_t *end, bool descending=false)
CUICommandRegistry is a centralized registry where all application commands should be registered.
static CUICommandRegistry & GetInstance()
the main instance associated with the application
wxMenu * CreateMenu(const SwxMenuItemRec *items)
create a menu from a static definition (see WX_*_MENU macros)
int RegisterCommand(CUICommand *cmd)
assumes ownership of the given object returns a command id (useful when registry is used for auto id ...
void OnUpdateCopyColumn(wxUpdateUIEvent &event)
void OnCopyColumn(wxCommandEvent &event)
void OnAssignColumnValue(wxCommandEvent &event)
void OnUpdateAssignColumnValue(wxUpdateUIEvent &event)
CwxGridTableAdapter & m_Adapter
bool x_ColToTableData(int &col)
int x_LoadColumnWidth(const string &label)
vector< size_t > m_SelectedRowToTable
maps from index in m_Selected to table (ITableData) index
vector< size_t > m_TableToRow
maps from ITableData index to row position in display
wxGridCellAttr * x_GetIntRendererAttr(bool allowEdit)
bool x_CoordsToTableData(int &row, int &col)
wxGridCellAttr * m_HtmlCellAttrR
wxGridCellAttr * x_GetHtmlCellAttrR()
bool x_RowToTableData(int &row)
virtual void SetValueAsDouble(int row, int col, double value)
virtual void LoadSettings()
virtual void SetSelection(const vector< size_t > &query_sel)
virtual long GetValueAsLong(int row, int col)
virtual bool IsColumnShown(size_t col) const
void x_SaveColumnWidth(const string &label, int width)
bool x_ValidateColumns(const vector< size_t > &colums) const
virtual void SetValueAsLong(int row, int col, long value)
wxGridCellAttr * x_GetHtmlCellAttrL()
wxGridCellAttr * m_TextCellAttrEdit
wxGridCellAttr * m_FloatCellAttr
virtual void SetValue(int row, int col, const wxString &value)
ICommandProccessor * m_CmdProccessor
wxGridCellAttr * m_IntCellAttr
virtual double GetValueAsDouble(int row, int col)
string GetRegPath() const
virtual size_t GetOriginalRow(size_t queryRow) const
virtual void SaveSettings() const
wxGridCellAttr * x_GetFloatRendererAttr(bool allowEdit)
CwxGridTableAdapter(ITableData &tableData, ICommandProccessor *cmdProccessor)
vector< size_t > m_SelectedTableToRow
maps from ITableData index to index in m_Selected array
wxGridCellAttr * m_HtmlCellAttrL
vector< size_t > m_RowToTable
maps from row position in display to table (ITableData) index
wxGridCellAttr * x_GetDefaultRendererAttr(bool allowEdit)
virtual void IterateSelection(int dir)
wxGridCellAttr * m_FloatCellAttrEdit
virtual int GetNumberCols()
virtual void SortByColumn(TSortColumn sortColumn)
CEventHandler m_EventHandler
virtual wxString GetValue(int row, int col)
virtual void SetView(wxGrid *grid)
void x_UpdateSelectedIndices()
virtual wxString GetColLabelValue(int col)
virtual bool CanGetValueAs(int row, int col, const wxString &typeName)
virtual bool CanSetValueAs(int row, int col, const wxString &typeName)
virtual wxString GetRowLabelValue(int row)
wxString GetHtmlValue(int row, int col)
wxGridCellAttr * m_DefaultCellAttr
virtual int GetNumberRows()
virtual void ShowColumn(size_t col, bool show)
virtual size_t GetCurrentRow(size_t queryRow) const
wxGridCellAttr * m_IntCellAttrEdit
Undo/Redo interface for editing operations.
virtual void Execute(IEditCommand *command, wxWindow *window=0)=0
vector< size_t > m_Selected
vector< size_t > m_VisibleColumns
size_t m_CurrentSelection
CIRef< ITableData > m_TableData
pair< size_t, ESort > TSortColumn
virtual void SetSelection(const vector< size_t > &query_sel)
iterator_bool insert(const value_type &val)
static const char *const strings[]
#define ITERATE(Type, Var, Cont)
ITERATE macro to sequence through container elements.
#define END_NCBI_SCOPE
End previously defined NCBI scope.
#define BEGIN_NCBI_SCOPE
Define ncbi namespace.
static const char label[]
unsigned int
A callback function used to compare two keys in a database.
const GenericPointer< typename T::ValueType > T2 value
ViewerWindowBase::OnEditMenu ViewerWindowBase::OnJustification EVT_MENU(MID_SHOW_GEOM_VLTNS, ViewerWindowBase::OnShowGeomVltns) EVT_MENU(MID_FIND_PATTERN
static SLJIT_INLINE sljit_ins msg(sljit_gpr r, sljit_s32 d, sljit_gpr x, sljit_gpr b)
#define row(bind, expected)
#define WX_DEFINE_MENU(name)
New macros for defining menus for use with CUICommandRegistry.
#define WX_SUBMENU(label)
#define WX_MENU_SEPARATOR_L(label)
#define WX_MENU_ITEM(cmd)
wxMenu * CreateMenu(const CMenuItem *item)
Creates a wxMenu object replicating the structure of CMenuItem.
wxString ToWxString(const string &s)
static const char * kVisibleColumns
static const char * kWidth
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4