本文整理汇总了C++中wxDataViewEvent::GetColumn方法的典型用法代码示例。如果您正苦于以下问题:C++ wxDataViewEvent::GetColumn方法的具体用法?C++ wxDataViewEvent::GetColumn怎么用?C++ wxDataViewEvent::GetColumn使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类wxDataViewEvent
的用法示例。
在下文中一共展示了wxDataViewEvent::GetColumn方法的10个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: OnColumnItemToggled
void DIALOG_BOM_EDITOR::OnColumnItemToggled( wxDataViewEvent& event )
{
wxDataViewItem item = event.GetItem();
int row = m_columnListCtrl->ItemToRow( item );
int col = event.GetColumn();
if( row == wxNOT_FOUND || row < 0 || row >= (int) m_bom->ColumnCount() ) return;
BOM_COLUMN* bomColumn = m_bom->ColumnList.GetColumnByIndex( row );
if( nullptr == bomColumn ) return;
bool bValue = m_columnListCtrl->GetToggleValue( row, col );
switch ( col )
{
default:
break;
case 1: // Column visibility
bomColumn->SetVisible( bValue );
// Insert a new column
if( bValue )
{
m_bom->AddColumn( bomColumn );
}
else
{
m_bom->RemoveColumn( bomColumn );
}
break;
}
}
示例2: OnLayerSelection
void DIALOG_KEEPOUT_AREA_PROPERTIES::OnLayerSelection( wxDataViewEvent& event )
{
if( event.GetColumn() != 0 )
return;
int row = m_layers->ItemToRow( event.GetItem() );
wxVariant layerID;
m_layers->GetValue( layerID, row, 2 );
bool selected = m_layers->GetToggleValue( row, 0 );
m_zonesettings.m_Layers.set( ToLAYER_ID( layerID.GetInteger() ), selected );
}
示例3: OnKeyChanged
void TableSettings::OnKeyChanged(wxDataViewEvent& event)
{
Constraint *key = reinterpret_cast<Constraint*>( m_dvKeys->GetItemData( event.GetItem() ) );
if( key ) {
wxVariant val;
event.GetModel()->GetValue( val, event.GetItem(), event.GetColumn() );
if( ! val.IsNull() ) {
key->SetName( val.GetString() );
}
}
event.Skip();
}
示例4: SendColumnEvent
void wxTreeListCtrl::SendColumnEvent(wxEventType evt, wxDataViewEvent& eventDV)
{
wxTreeListEvent eventTL(evt, this, wxTreeListItem());
eventTL.SetColumn(eventDV.GetColumn());
if ( !ProcessWindowEvent(eventTL) )
{
eventDV.Skip();
return;
}
if ( !eventTL.IsAllowed() )
{
eventDV.Veto();
}
}
示例5: onTitleEdited
void MissionInfoEditDialog::onTitleEdited(wxDataViewEvent& ev)
{
wxutil::TreeModel::Row row(ev.GetItem(), *_missionTitleStore);
int titleNum = row[_missionTitleColumns.number].getInteger();
map::DarkmodTxt::TitleList list = _darkmodTxt->getMissionTitles();
assert(titleNum >= 0 && titleNum < static_cast<int>(list.size()));
if (ev.GetColumn() == _missionTitleColumns.title.getColumnIndex())
{
list[titleNum] = static_cast<std::string>(ev.GetValue());
_darkmodTxt->setMissionTitles(list);
}
}
示例6: OnValueChanged
/**
* @brief This callback is trigered when user click on checkbox - wants un/mark error.
* @param event just wxDataViewEvent
*/
void MemCheckOutputView::OnValueChanged(wxDataViewEvent& event)
{
// CL_DEBUG1(PLUGIN_PREFIX("MemCheckOutputView::OnValueChanged()"));
int col = GetColumnByName(_("Suppress"));
if(col == wxNOT_FOUND) {
return;
}
if(m_onValueChangedLocked || event.GetColumn() != col) return;
m_onValueChangedLocked = true;
wxVariant variant;
m_dataViewCtrlErrorsModel->GetValue(variant, event.GetItem(), col);
MarkTree(GetTopParent(event.GetItem()), variant.GetBool());
variant.GetBool() ? ++m_markedErrorsCount : --m_markedErrorsCount;
m_onValueChangedLocked = false;
}
示例7: OnLayerSelection
void DIALOG_NON_COPPER_ZONES_EDITOR::OnLayerSelection( wxDataViewEvent& event )
{
if( event.GetColumn() != 0 )
return;
int row = m_layers->ItemToRow( event.GetItem() );
if( m_layers->GetToggleValue( row, 0 ) )
{
wxVariant layerID;
m_layers->GetValue( layerID, row, 2 );
m_settings.m_CurrentZone_Layer = ToLAYER_ID( layerID.GetInteger() );
// Turn all other checkboxes off.
for( int ii = 0; ii < m_layers->GetItemCount(); ++ii )
{
if( ii != row )
m_layers->SetToggleValue( false, ii, 0 );
}
}
}
示例8: OnColumnHeaderlClick
//-----------------------------------------------------------------------------
void VTable::OnColumnHeaderlClick(wxDataViewEvent &event)
{
if (!mModel)
return;
auto clicked_column_no = event.GetColumn();
auto clicked_column = event.GetDataViewColumn();
// очистить всю сортировку и сделать сортировку в выбранном столбце
for (unsigned int i = 0; i < mModel->mFieldVec->GetChildQty(); ++i)
{
auto field = mModel->mFieldVec->at(i)->GetData();
if (i == clicked_column->GetModelColumn())
{
switch (field.mSort)
{
case -1: field.mSort = 0; break;
case 0: field.mSort = 1; break;
case 1: field.mSort = -1; break;
default:break;
}
mModel->mFieldVec->at(i)->SetData(field);
}
else if (field.mSort != 0)
{
field.mSort = 0;
mModel->mFieldVec->at(i)->SetData(field);
}
}
//auto itemLimit = mModel->GetClientSize().GetHeight() / mTableView->GetRowHeight() - 1;
//mModel->mPageLimit->SetData(itemLimit, true);
mModel->mPageNo->SetData(0, true);
mModel->Load();
//OnCmdLoad(wxCommandEvent(wxID_REFRESH));
}
示例9: OnColumnChanged
void TableSettings::OnColumnChanged(wxDataViewEvent& event)
{
Column *col = reinterpret_cast<Column*>(m_dvColumns->GetItemData( event.GetItem() ) );
if( col ) {
wxVariant val;
event.GetModel()->GetValue( val, event.GetItem(), event.GetColumn() );
if( ! val.IsNull() ) {
switch( event.GetColumn() ) {
case 0: {
// rename local columns in keys
SerializableList keys;
GetConstraints( keys, col->GetName() );
for(SerializableList::iterator it = keys.begin(); it != keys.end(); ++it ) {
Constraint *key = (Constraint*) *it;
if( key->GetType() == Constraint::primaryKey ) key->SetName( wxT("PK_") + val.GetString() );
key->SetLocalColumn( val.GetString() );
}
// rename table column
col->SetName( val.GetString() );
break;
}
case 1: {
col->SetType( m_pDbAdapter->GetDbTypeByName( val.GetString() ) );
break;
}
case 2: {
long s1, s2;
s1 = s2 = 0;
wxSscanf( val.GetString(), wxT("%ld,%ld"), &s1, &s2 );
IDbType *type = col->GetType();
if( type->HaveSize() ) type->SetSize( s1 );
else {
m_infobar->ShowMessage( wxT("This data type doesn't support size definition."), wxICON_WARNING );
Refresh();
}
if( type->HaveSize2() ) type->SetSize2( s1 );
else {
m_infobar->ShowMessage( wxT("This data type doesn't support size definition."), wxICON_WARNING );
Refresh();
}
break;
}
case 3: {
IDbType *type = col->GetType();
if( type->HaveNotNull() ) type->SetNotNull( val.GetBool() );
else {
m_infobar->ShowMessage( wxT("This data type doesn't support NOT NULL feature."), wxICON_WARNING );
Refresh();
}
break;
}
case 4: {
IDbType *type = col->GetType();
if( type->HaveAutoIncrement() ) type->SetAutoIncrement( val.GetBool() );
else {
m_infobar->ShowMessage( wxT("This data type doesn't support AUTOINCREMENT feature."), wxICON_WARNING );
Refresh();
}
break;
}
case 5: {
Constraint *key = GetConstraint( Constraint::primaryKey, col->GetName() );
if( key ) {
// remove primary key if exists
m_lstKeys.DeleteObject( key );
delete key;
} else {
// create new primary key
key = new Constraint( wxT("PK_") + col->GetName(),
col->GetName(),
Constraint::primaryKey,
Constraint::noAction,
Constraint::noAction );
m_lstKeys.Append( key );
}
break;
}
}
}
}
event.Skip();
UpdateView();
}
示例10: OnValueChanged
void MyFrame::OnValueChanged( wxDataViewEvent &event )
{
wxString title = m_music_model->GetTitle( event.GetItem() );
wxLogMessage( "wxEVT_DATAVIEW_ITEM_VALUE_CHANGED, Item Id: %s; Column: %d",
title, event.GetColumn() );
}