Overview
Examples
Screenshots
Comparisons
Applications
Download
Documentation
Tutorials
Bazaar
Status & Roadmap
FAQ
Authors & License
Forums
Funding Ultimate++
Search on this site











SourceForge.net Logo

ArrayCtrlCtrls2

 

Columns with widget factory - GetCtrl, different widgets in single column

 

 

main.cpp

 

#include <CtrlLib/CtrlLib.h>

 

using namespace Upp;

 

void WidgetFactory(int line, One<Ctrl>& x)

{

    if(line & 1)

        x.Create<EditString>();

    else

        x.Create<Option>().SetLabel("Line " + AsString(line));

}

 

GUI_APP_MAIN

{

    ArrayCtrl list;

    list.Appending().Removing();

    list.AddColumn("Text").Ctrls(WidgetFactory);

 

    for(int i = 0; i < 300; i++)

        list.Add(AsString(i));

    for(int i = 1; i < 300; i += 3)

        list.GetCtrl(i, 0)->Disable();

 

    list.SetLineCy(Draw::GetStdFontCy() + 8);

 

    TopWindow app;

    app.Add(list.SizePos());

    app.Sizeable();

    app.Run();

}

 

 

 

 

Do you want to contribute?