MacArthur, Ian (SELEX GALILEO, UK) wrote:
>> I try to create a tabed window,
>> with vertical tabas and horizontal text

        I'd think an Fl_Browser to the left of an Fl_Group would have
        the effect you're looking for, eg:

#include <FL/Fl.H>
#include <FL/Fl_Window.H>
#include <FL/Fl_Hold_Browser.H>
#include <FL/Fl_Group.H>
#include <FL/Fl_Button.H>

//
// Demonstrate a "vertical tabbed" window dialog
// erco 05/09/08
//

Fl_Window       *win = 0;
Fl_Hold_Browser *bro = 0;
Fl_Group        *grp[3] = { 0,0,0 };

void SelectGroup_CB(Fl_Widget*, void*) {
    // Show the 'selected' group
    for ( int t=0; t<3; t++ ) {
        if ( t == (bro->value()-1) ) { grp[t]->show(); }
        else                         { grp[t]->hide(); }
    }
}

int main() {
    win = new Fl_Window(600,400);

    // Browser to act as "tab selector"
    bro = new Fl_Hold_Browser(10,10,150,400-20);
    bro->add("Tab One");
    bro->add("Tab Two");
    bro->add("Tab Three");

    // Make three groups with different contents
    grp[0] = new Fl_Group(170,10,450-30,400-20);
    grp[0]->box(FL_ENGRAVED_BOX);
    grp[0]->color(9);
        new Fl_Button(230+0,190+0,100,20,"Group#1");
    grp[0]->end();

    grp[1] = new Fl_Group(170,10,450-30,400-20);
    grp[1]->box(FL_ENGRAVED_BOX);
    grp[1]->color(10);
        new Fl_Button(230+000,160+00,100,20,"Group#2");
        new Fl_Button(230+110,160+30,100,20,"Group#2");
    grp[1]->end();

    grp[2] = new Fl_Group(170,10,450-30,400-20);
    grp[2]->box(FL_ENGRAVED_BOX); grp[2]->color(12);
        new Fl_Button(230+000,130+00,100,20,"Group#3");
        new Fl_Button(230+110,130+30,100,20,"Group#3");
        new Fl_Button(230+220,130+60,100,20,"Group#3");
    grp[2]->end();

    // Set a callback for the browser, initialize first selection
    bro->callback(SelectGroup_CB);
    bro->select(2);
    SelectGroup_CB(0,0);                // (updates visible group based on our 
select()tion)

    win->show();
    return(Fl::run());
}
_______________________________________________
fltk mailing list
[email protected]
http://lists.easysw.com/mailman/listinfo/fltk

Reply via email to