本文整理汇总了C++中MultiColumnList::getRowCount方法的典型用法代码示例。如果您正苦于以下问题:C++ MultiColumnList::getRowCount方法的具体用法?C++ MultiColumnList::getRowCount怎么用?C++ MultiColumnList::getRowCount使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类MultiColumnList
的用法示例。
在下文中一共展示了MultiColumnList::getRowCount方法的8个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: sprintf
bool Demo6Sample::handleContentsChanged(const CEGUI::EventArgs& e)
{
using namespace CEGUI;
// get access to required widgets
MultiColumnList* mcl = static_cast<MultiColumnList*>(WindowManager::getSingleton().getWindow("Demo6/MainList"));
Window* colText = WindowManager::getSingleton().getWindow("Demo6/ControlPanel/ColCount");
Window* rowText = WindowManager::getSingleton().getWindow("Demo6/ControlPanel/RowCount");
std::string tmp;
char buff[16];
// update the column count
tmp = "Current Column Count: ";
sprintf(buff, "%d", mcl->getColumnCount());
tmp += buff;
colText->setText(tmp);
// update the row count
tmp = "Current Row Count: ";
sprintf(buff, "%d", mcl->getRowCount());
tmp += buff;
rowText->setText(tmp);
// event was handled.
return true;
}
示例2: sprintf
bool Demo6Sample::handleContentsChanged(const CEGUI::EventArgs& args)
{
using namespace CEGUI;
// get access to required widgets
MultiColumnList* mcl = static_cast<MultiColumnList*>(static_cast<const WindowEventArgs&>(args).window->getRootWindow()->getChild("MainList"));
Window* colText = static_cast<const WindowEventArgs&>(args).window->getRootWindow()->getChild("ControlPanel/SetItemPanel/ColCount");
Window* rowText = static_cast<const WindowEventArgs&>(args).window->getRootWindow()->getChild("ControlPanel/SetItemPanel/RowCount");
std::string tmp;
char buff[16];
// update the column count
tmp = "Current Column Count: ";
sprintf(buff, "%d", mcl->getColumnCount());
tmp += buff;
colText->setText(tmp.c_str());
// update the row count
tmp = "Current Row Count: ";
sprintf(buff, "%d", mcl->getRowCount());
tmp += buff;
rowText->setText(tmp.c_str());
// event was handled.
return true;
}
示例3: ListboxTextItem
static void
sdl_update_roadbook(struct navigation *nav)
{
using namespace CEGUI;
extern Window* myRoot;
struct navigation_list *list;
list=navigation_list_new(nav);
// First, update the 'Navigation Tip' on the main window
try {
struct attr attr;
item_attr_get(navigation_list_get_item(list), attr_navigation_speech, &attr);
WindowManager::getSingleton().getWindow("Navit/Routing/Tips")->setText(attr.u.str);
}
catch (CEGUI::Exception& e)
{
fprintf(stderr,"CEGUI Exception occured: \n%s\n", e.getMessage().c_str());
printf("Missing control!...\n");
}
// Then, update the whole roadbook
try {
/* Currently we use the 'Navit' text to display the roadbook, until Mineque design a button for that
if(! WindowManager::getSingleton().getWindow("OSD/RoadbookButton")->isVisible()){
WindowManager::getSingleton().getWindow("OSD/RoadbookButton")->show();
}
*/
MultiColumnList* mcl = static_cast<MultiColumnList*>(WindowManager::getSingleton().getWindow("Roadbook"));
mcl->resetList();
item *item;
struct attr attr;
list=navigation_list_new(nav);
while ((item=navigation_list_get_item(list))) {
// printf("SDL : %s\n", str);
mcl->addRow();
item_attr_get(item, attr_navigation_short, &attr);
ListboxTextItem* itemListbox = new ListboxTextItem(attr.u.str);
itemListbox->setSelectionBrushImage("TaharezLook", "MultiListSelectionBrush");
mcl->setItem(itemListbox, 0, mcl->getRowCount()-1);
}
navigation_list_destroy(list);
}
catch (CEGUI::Exception& e)
{
fprintf(stderr,"CEGUI Exception occured: \n%s\n", e.getMessage().c_str());
printf("Missing control!...\n");
}
}
示例4: handleMouseEnters
bool handleMouseEnters(const CEGUI::EventArgs& event)
{
// FIXME this whole function could maybe be removed
const CEGUI::WindowEventArgs& we = static_cast<const CEGUI::WindowEventArgs&>(event);
// FIXME theses variables should be shared
extern CEGUI::OpenGLRenderer* renderer;
extern CEGUI::Window* myRoot;
using namespace CEGUI;
myRoot->getChild("Navit/Keyboard")->getChild("Navit/Keyboard/Input")->setText("");
MultiColumnList* mcl = static_cast<MultiColumnList*>(WindowManager::getSingleton().getWindow("DestinationWindow/Listbox"));
String senderID = we.window->getName();
if (senderID == "DestinationWindow/CountryEditbox"){
// First, clean off the Street and Town Editbox
extern Window* myRoot;
Window* town_edit = static_cast<Window*>(myRoot->getChild("DestinationWindow")->getChild("DestinationWindow/TownEditbox"));
town_edit->setText("");
Window* street_edit = static_cast<Window*>(myRoot->getChild("DestinationWindow")->getChild("DestinationWindow/StreetEditbox"));
street_edit->setText("");
SDL_dest.current_search=SRCH_COUNTRY;
} else if (senderID == "DestinationWindow/TownEditbox"){
// First, clean off the Street Editbox
extern Window* myRoot;
Window* street_edit = static_cast<Window*>(myRoot->getChild("DestinationWindow")->getChild("DestinationWindow/StreetEditbox"));
street_edit->setText("");
SDL_dest.current_search=SRCH_TOWN;
} else if (senderID == "DestinationWindow/StreetEditbox"){
// First, make sure the user selected an entry in the town choice. If he hadn't, select the first for him.
if(SDL_dest.current_search==SRCH_TOWN){
if (mcl->getRowCount()>0)
{
handleItemSelect(0);
}
}
SDL_dest.current_search=SRCH_STREET;
}
}
示例5: ButtonGo
bool ButtonGo(const CEGUI::EventArgs& event)
{
using namespace CEGUI;
MultiColumnList* mcl = static_cast<MultiColumnList*>(WindowManager::getSingleton().getWindow("AdressSearch/Listbox"));
// First, make sure the user selected an entry in the town choice. If he hadn't, select the first for him.
if(SDL_dest.current_search==SRCH_TOWN){
if (mcl->getRowCount()>0)
{
handleItemSelect(0);
}
}
Window* Dest_x = static_cast<Window*>(WindowManager::getSingleton().getWindow("AdressSearch/Dest_x"));
Window* Dest_y = static_cast<Window*>(WindowManager::getSingleton().getWindow("AdressSearch/Dest_y"));
extern struct navit *sdl_gui_navit;
route_to(atoi(Dest_x->getText().c_str()),atoi(Dest_y->getText().c_str()));
return true;
}
示例6: handle_destination_change
void handle_destination_change(){
using namespace CEGUI;
struct search_param *search=&search_param;
struct search_list_result *res;
MultiColumnList* mcl = static_cast<MultiColumnList*>(WindowManager::getSingleton().getWindow("AdressSearch/Listbox"));
if (SDL_dest.current_search==SRCH_COUNTRY)
{
Editbox* country_edit = static_cast<Editbox*>(WindowManager::getSingleton().getWindow("AdressSearch/CountryEditbox"));
String content=country_edit->getText();
mcl->resetList();
dbg(0,"Starting a country search : %s\n",content.c_str());
search->attr.type=attr_country_all;
// FIXME the following codeblock could be shared between country, town and street search
search->attr.u.str=(char *)content.c_str();
search_list_search(search->sl, &search->attr, 1);
while((res=search_list_get_result(search->sl))) {
ListboxTextItem* itemListbox = new ListboxTextItem((CEGUI::utf8*)(res->country->name));
itemListbox->setSelectionBrushImage("TaharezLook", "MultiListSelectionBrush");
mcl->addRow(itemListbox,0);
}
} else if (SDL_dest.current_search==SRCH_TOWN)
{
Editbox* town_edit = static_cast<Editbox*>(WindowManager::getSingleton().getWindow("AdressSearch/TownEditbox"));
String content=town_edit->getText();
mcl->resetList();
if(strlen(content.c_str())<4){
} else {
dbg(0,"town searching for %s\n",content.c_str());
search->attr.type=attr_town_name;
search->attr.u.str=(char *)content.c_str();
search_list_search(search->sl, &search->attr, 1);
while((res=search_list_get_result(search->sl))) {
ListboxTextItem* itemListbox = new ListboxTextItem((CEGUI::utf8*)(res->town->name));
itemListbox->setSelectionBrushImage("TaharezLook", "MultiListSelectionBrush");
mcl->addRow(itemListbox,0);
char x [256];
sprintf(x,"%li",res->c->x);
ListboxTextItem* xitem = new ListboxTextItem(x);
char y [256];
sprintf(y,"%li",res->c->y);
ListboxTextItem* yitem = new ListboxTextItem(y);
try
{
mcl->setItem(xitem, 3, mcl->getRowCount()-1);
mcl->setItem(yitem, 4, mcl->getRowCount()-1);
}
// something went wrong, so cleanup the ListboxTextItem.
catch (InvalidRequestException)
{
// delete item;
}
}
}
} else if (SDL_dest.current_search==SRCH_STREET)
{
Editbox* street_edit = static_cast<Editbox*>(WindowManager::getSingleton().getWindow("AdressSearch/StreetEditbox"));
String content=street_edit->getText();
if(strlen(content.c_str())<1){
} else {
// dbg(1,"street searching for %s\n",content.c_str());
search->attr.type=attr_street_name;
search->attr.u.str=(char *)content.c_str();
mcl->resetList();
search_list_search(search->sl, &search->attr, 1);
while((res=search_list_get_result(search->sl))) {
ListboxTextItem* itemListbox = new ListboxTextItem((CEGUI::utf8*)(res->street->name));
itemListbox->setSelectionBrushImage("TaharezLook", "MultiListSelectionBrush");
mcl->addRow(itemListbox,0);
//.........这里部分代码省略.........
示例7: render
void FalagardMultiColumnList::render()
{
MultiColumnList* w = (MultiColumnList*)d_window;
const ListHeader* header = w->getListHeader();
const Scrollbar* vertScrollbar = w->getVertScrollbar();
const Scrollbar* horzScrollbar = w->getHorzScrollbar();
// render general stuff before we handle the items
cacheListboxBaseImagery();
//
// Render list items
//
Vector3f itemPos;
Sizef itemSize;
Rectf itemClipper, itemRect;
// calculate position of area we have to render into
Rectf itemsArea(getListRenderArea());
// set up initial positional details for items
itemPos.d_y = itemsArea.top() - vertScrollbar->getScrollPosition();
itemPos.d_z = 0.0f;
const float alpha = w->getEffectiveAlpha();
// loop through the items
for (uint i = 0; i < w->getRowCount(); ++i)
{
// set initial x position for this row.
itemPos.d_x = itemsArea.left() - horzScrollbar->getScrollPosition();
// calculate height for this row.
itemSize.d_height = w->getHighestRowItemHeight(i);
// loop through the columns in this row
for (uint j = 0; j < w->getColumnCount(); ++j)
{
// allow item to use full width of the column
itemSize.d_width = CoordConverter::asAbsolute(header->getColumnWidth(j), header->getPixelSize().d_width);
ListboxItem* item = w->getItemAtGridReference(MCLGridRef(i,j));
// is the item for this column set?
if (item)
{
// calculate destination area for this item.
itemRect.left(itemPos.d_x);
itemRect.top(itemPos.d_y);
itemRect.setSize(itemSize);
itemClipper = itemRect.getIntersection(itemsArea);
// skip this item if totally clipped
if (itemClipper.getWidth() == 0)
{
itemPos.d_x += itemSize.d_width;
continue;
}
// draw this item
item->draw(w->getGeometryBuffer(), itemRect, alpha, &itemClipper);
}
// update position for next column.
itemPos.d_x += itemSize.d_width;
}
// update position ready for next row
itemPos.d_y += itemSize.d_height;
}
}
示例8: ListboxTextItem
static void
sdl_update_roadbook(struct navigation *nav)
{
using namespace CEGUI;
struct map *map;
struct map_rect *mr;
if (! nav)
return;
map=navigation_get_map(nav);
if (! map)
return;
mr=map_rect_new(map, NULL);
if (! mr)
return;
// First, ensure the navigation tip is visible. quick workaround for when resuming a destination
WindowManager::getSingleton().getWindow("Navit/Routing/Tips")->show();
// update the 'Navigation Tip' on the main window
try {
struct attr attr;
item_attr_get(map_rect_get_item(mr), attr_navigation_speech, &attr);
map_rect_destroy(mr);
mr=map_rect_new(map, NULL);
WindowManager::getSingleton().getWindow("Navit/Routing/Tips")->setText((CEGUI::utf8*)(attr.u.str));
}
catch (CEGUI::Exception& e)
{
fprintf(stderr,"CEGUI Exception occured: \n%s\n", e.getMessage().c_str());
printf("Missing control!...\n");
}
// Then, update the whole roadbook
try {
/* Currently we use the 'Navit' text to display the roadbook, until Mineque design a button for that
if(! WindowManager::getSingleton().getWindow("OSD/RoadbookButton")->isVisible()){
WindowManager::getSingleton().getWindow("OSD/RoadbookButton")->show();
}
*/
MultiColumnList* mcl = static_cast<MultiColumnList*>(WindowManager::getSingleton().getWindow("Roadbook"));
mcl->resetList();
item *item;
struct attr attr;
while ((item=map_rect_get_item(mr))) {
mcl->addRow();
item_attr_get(item, attr_navigation_short, &attr);
ListboxTextItem* itemListbox = new ListboxTextItem(attr.u.str);
itemListbox->setSelectionBrushImage("TaharezLook", "MultiListSelectionBrush");
mcl->setItem(itemListbox, 0, mcl->getRowCount()-1);
}
map_rect_destroy(mr);
}
catch (CEGUI::Exception& e)
{
dbg(0,"CEGUI Exception occured: \n%s\n", e.getMessage().c_str());
dbg(0,"Missing control!\n");
}
}