Skip to content

Commit

Permalink
Browse files Browse the repository at this point in the history
casts and iterator incrementer
  • Loading branch information
anaselli committed Jan 13, 2014
1 parent dabec02 commit 4ad993b
Showing 1 changed file with 55 additions and 0 deletions.
55 changes: 55 additions & 0 deletions swig/yui.i
Original file line number Diff line number Diff line change
Expand Up @@ -284,3 +284,58 @@ typedef std::vector<YItem *> YItemCollection;
#endif
int equals( YWidget *w ) { return ($self == w); }
}

%inline %{

/* C++-style cast */
YWidgetEvent* toYWidgetEvent(YEvent *event) {
return dynamic_cast<YWidgetEvent*>(event);
}

YKeyEvent* toYKeyEvent(YEvent *event) {
return dynamic_cast<YKeyEvent*>(event);
}

YMenuEvent* toYMenuEvent(YEvent *event) {
return dynamic_cast<YMenuEvent*>(event);
}

YCancelEvent* toYCancelEvent(YEvent *event) {
return dynamic_cast<YCancelEvent*>(event);
}

YDebugEvent* toYDebugEvent(YEvent *event) {
return dynamic_cast<YDebugEvent*>(event);
}
YTimeoutEvent* toYTimeoutEvent(YEvent *event) {
return dynamic_cast<YTimeoutEvent*>(event);
}

YTreeItem* toYTreeItem(YItem *item) {
return dynamic_cast<YTreeItem*>(item);
}

YTableItem* toYTableItem(YItem *item) {
return dynamic_cast<YTableItem*>(item);
}

YItem* toYItem(YItemIterator iter) {
return *iter;
}

YTableCell* toYTableCell(YTableCellIterator iter) {
return *iter;
}

/* C++ Iterators*/
YItemIterator incrYItemIterator( YItemIterator currentIterator) {
return ++currentIterator;
}

YTableCellIterator incrYTableCellIterator(YTableCellIterator currentIterator) {
return ++currentIterator;
}


%}

0 comments on commit 4ad993b

Please sign in to comment.