本文整理汇总了C++中Fl_Choice::value方法的典型用法代码示例。如果您正苦于以下问题:C++ Fl_Choice::value方法的具体用法?C++ Fl_Choice::value怎么用?C++ Fl_Choice::value使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Fl_Choice
的用法示例。
在下文中一共展示了Fl_Choice::value方法的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: updateParameter
void onelabGroup::updateParameter(onelab::number &p)
{
Fl_Tree_Item *n = _tree->find_item(p.getName().c_str());
if(!n) {
addParameter(p);
return;
}
Fl_Group *grp = (Fl_Group *)n->widget();
// enumeration (display choices as value labels, not numbers)
if(p.getChoices().size() &&
p.getChoices().size() == p.getValueLabels().size()){
Fl_Choice *but = (Fl_Choice *)grp->child(0);
//std::vector<Fl_Menu_Item> menu;
//std::map<double, std::string> labels(p.getValueLabels());
//for(std::map<double, std::string>::iterator it = labels.begin();
// it != labels.end(); it++){
// char *str = strdup(it->second.c_str());
// _treeStrings.push_back(str);
// Fl_Menu_Item menuItem = {str, 0, 0, 0, 0};
// if(highlight) menuItem.labelcolor(c);
// menu.push_back(menuItem);
//}
//Fl_Menu_Item it = {0};
//menu.push_back(it);
//but->copy(&menu[0]);
for(unsigned int i = 0; i < p.getChoices().size(); i++){
if(p.getValue() == p.getChoices()[i]){
but->value(i);
break;
}
}
return;
}
// check box (boolean choice)
if(p.getChoices().size() == 2 &&
p.getChoices()[0] == 0 && p.getChoices()[1] == 1){
Fl_Check_Button *but = (Fl_Check_Button *)grp->child(0);
but->value(p.getValue());
return;
}
// non-editable value FIXME
if(p.getReadOnly()){
outputRange *but = (outputRange *)grp->child(0);;
but->value(p.getValue());
but->graph(p.getAttribute("Graph"));
return;
}
// general number input
inputRange *but = (inputRange *)grp->child(0);
but->value(p.getValue());
but->minimum(p.getMin());
but->maximum(p.getMax());
but->step(p.getStep());
but->choices(p.getChoices());
but->loop(p.getAttribute("Loop"));
but->graph(p.getAttribute("Graph"));
}
示例2: onelab_number_choice_cb
static void onelab_number_choice_cb(Fl_Widget *w, void *data)
{
if(!data) return;
std::string name((char*)data);
std::vector<onelab::number> numbers;
OnelabDatabase::instance()->get(numbers, name);
if(numbers.size()){
Fl_Choice *o = (Fl_Choice*)w;
std::vector<double> choices = numbers[0].getChoices();
onelab::number old = numbers[0];
if(o->value() < (int)choices.size()) numbers[0].setValue(choices[o->value()]);
setGmshOption(numbers[0]);
OnelabDatabase::instance()->set(numbers[0], std::string("localGUI"));
autoCheck(old, numbers[0]);
}
}
示例3: execute
//-----------------------------------------------------------------------------
void ChngDlg::execute(mglData *d)
{
char r[8]="3";
if(dx->value()) strcat(r,"x");
if(dy->value()) strcat(r,"y");
if(dz->value()) strcat(r,"z");
if(!r[0]) return;
if(type->value()==1) r[0] = '5';
if(type->value()==2) r[0] = ' ';
switch(kind->value())
{
case 0: d->Smooth(r); break;
case 1: d->CumSum(r); break;
case 2: d->Integral(r); break;
case 3: d->Diff(r); break;
case 4: d->Diff2(r); break;
case 5: d->Swap(r); break;
}
}
示例4: Point
Panner::Panner ( int X, int Y, int W, int H, const char *L ) :
Fl_Group( X, Y, W, H, L )
{
_bg_image = 0;
_bg_image_scaled = 0;
_bg_image_projection = 0;
// _projection = POLAR;
_points.push_back( Point( 1, 0 ) );
static float ranges[] = { 1,3,5,10,15 };
{ Fl_Choice *o = _range_choice = new Fl_Choice(X + 40,Y + H - 18,75,18,"Range:");
o->box(FL_UP_FRAME);
o->down_box(FL_DOWN_FRAME);
o->textsize(9);
o->labelsize(9);
o->align(FL_ALIGN_LEFT);
o->add("1 Meter",0,0,&ranges[0]);
o->add("3 Meters",0,0,&ranges[1]);
o->add("5 Meters",0,0,&ranges[2]);
o->add("10 Meters",0,0,&ranges[3]);
o->add("15 Meters",0,0,&ranges[4]);
o->value(_range_mode);
o->callback( cb_mode, this );
}
{ Fl_Choice *o = _projection_choice = new Fl_Choice(X + W - 75,Y + H - 18,75,18,"Projection:");
o->box(FL_UP_FRAME);
o->down_box(FL_DOWN_FRAME);
o->textsize(9);
o->labelsize(9);
o->align(FL_ALIGN_LEFT);
o->add("Spherical");
o->add("Planar");
o->value(_projection_mode);
o->callback( cb_mode, this );
}
end();
}
示例5: japtest
int japtest() {
Fl::set_font(FL_HELVETICA, "Kochi Mincho"); // uncomment for linux
Fl_Window *win = new Fl_Window(500,500,"Japanese Test");
Fl_Multiline_Output *output = new Fl_Multiline_Output(140,10,340,400,"Output\n産量\n[さんりょう]");
output->labelsize(22);
output->textsize(22);
Fl_Choice *choice = new Fl_Choice(140,output->y()+output->h()+10,340,30,"Choice\n取捨\n[しゅしゃ]");
choice->labelsize(22);
choice->textsize(22);
for ( int t=0; songnames[t]; t++ ) {
choice->add(songnames[t]);
output->insert(songnames[t]);
output->insert("\n");
}
choice->value(0);
win->resizable(win);
win->show();
return(Fl::run());
}
示例6: init_appendai_choices
void init_appendai_choices() {
Fl_Choice* o = new Fl_Choice(5, 145+40, 140, 20, "");
o->down_box(FL_DOWN_BOX);
std::shared_ptr<AppendAIPatch> aip = std::dynamic_pointer_cast<AppendAIPatch>(mods->get("aip"));
if(!aip->valid()) {
o->deactivate();
}
else {
std::map<std::string, unsigned> order;
auto entities = aip->entities();
{
int idx = 0;
for(unsigned entity : entities) {
order[AppendAIPatch::FriendlyName(entity)] = entity;
idx++;
}
if(choice_entity_map.empty()) {
idx = 0;
for(std::pair<std::string, unsigned> pair : order) {
choice_entity_map[idx] = pair.second;
idx++;
}
}
for(std::pair<std::string, unsigned> pair : order) {
o->add(pair.first.c_str());
}
}
o->value(o->find_item(order.begin()->first.c_str()));
}
entity_list = o;
}
示例7: strdup
// add a parameter number to the tree
Fl_Widget *onelabGroup::_addParameterWidget(onelab::number &p, int ww, int hh, Fl_Tree_Item *n, bool highlight, Fl_Color c)
{
char *path = strdup(getPath(n).c_str());
_treeStrings.push_back(path);
// enumeration (display choices as value labels, not numbers)
if(p.getChoices().size() &&
p.getChoices().size() == p.getValueLabels().size()){
Fl_Choice *but = new Fl_Choice(1, 1, ww, hh);
std::vector<Fl_Menu_Item> menu;
std::map<double, std::string> labels(p.getValueLabels());
for(std::map<double, std::string>::iterator it = labels.begin();
it != labels.end(); it++){
char *str = strdup(it->second.c_str());
_treeStrings.push_back(str);
Fl_Menu_Item menuItem = {str, 0, 0, 0, 0};
if(highlight) menuItem.labelcolor(c);
menu.push_back(menuItem);
}
Fl_Menu_Item it = {0};
menu.push_back(it);
but->copy(&menu[0]);
for(unsigned int i = 0; i < p.getChoices().size(); i++){
if(p.getValue() == p.getChoices()[i]){
but->value(i);
break;
}
}
but->callback(onelab_number_choice_cb, (void*)path);
but->align(FL_ALIGN_RIGHT);
if(p.getReadOnly()) but->deactivate();
return but;
}
// check box (boolean choice)
if(p.getChoices().size() == 2 &&
p.getChoices()[0] == 0 && p.getChoices()[1] == 1){
n->labelsize(FL_NORMAL_SIZE + 2);
Fl_Check_Button *but = new Fl_Check_Button(1, 1, ww / _widgetLabelRatio, hh);
but->box(FL_FLAT_BOX);
but->color(_tree->color());
but->value(p.getValue());
but->callback(onelab_number_check_button_cb, (void*)path);
if(highlight) but->color(c);
if(p.getReadOnly()) but->deactivate();
return but;
}
// non-editable value
if(p.getReadOnly()){
outputRange *but = new outputRange(1, 1, ww, hh);
//TODO but->callback(onelab_number_output_range_cb, (void*)path);
but->value(p.getValue());
but->align(FL_ALIGN_RIGHT);
but->graph(p.getAttribute("Graph"));
if(highlight) but->color(c);
return but;
}
// general number input
inputRange *but = new inputRange(1, 1, ww, hh, onelab::parameter::maxNumber(),
p.getAttribute("ReadOnlyRange") == "1");
but->value(p.getValue());
but->minimum(p.getMin());
but->maximum(p.getMax());
but->step(p.getStep());
but->choices(p.getChoices());
but->loop(p.getAttribute("Loop"));
but->graph(p.getAttribute("Graph"));
but->callback(onelab_number_input_range_cb, (void*)path);
but->when(FL_WHEN_RELEASE | FL_WHEN_ENTER_KEY);
but->align(FL_ALIGN_RIGHT);
if(highlight) but->color(c);
return but;
}
示例8: make_window
Fl_Group* FilterUI::make_window() {
{ filterui = new Fl_Group(0, 0, 275, 75);
filterui->box(FL_FLAT_BOX);
filterui->color(FL_LIGHT1);
filterui->selection_color(FL_BACKGROUND_COLOR);
filterui->labeltype(FL_NO_LABEL);
filterui->labelfont(1);
filterui->labelsize(14);
filterui->labelcolor(FL_FOREGROUND_COLOR);
filterui->user_data((void*)(this));
filterui->align(FL_ALIGN_TOP);
filterui->when(FL_WHEN_RELEASE);
{ filterparamswindow = new Fl_Group(0, 0, 275, 75, "Filter Parameters");
filterparamswindow->box(FL_PLASTIC_UP_BOX);
filterparamswindow->color(FL_CYAN);
filterparamswindow->labeltype(FL_ENGRAVED_LABEL);
filterparamswindow->labelsize(10);
filterparamswindow->align(FL_ALIGN_TOP|FL_ALIGN_INSIDE);
{ Fl_Choice* o = analogfiltertypechoice = new Fl_Choice(10, 50, 50, 15, "FilterType");
analogfiltertypechoice->tooltip("The Filter type");
analogfiltertypechoice->down_box(FL_BORDER_BOX);
analogfiltertypechoice->labelsize(10);
analogfiltertypechoice->textsize(10);
analogfiltertypechoice->callback((Fl_Callback*)cb_analogfiltertypechoice);
analogfiltertypechoice->align(FL_ALIGN_TOP_LEFT);
analogfiltertypechoice->menu(menu_analogfiltertypechoice);
o->value(pars->Ptype);
} // Fl_Choice* analogfiltertypechoice
{ Fl_Choice* o = svfiltertypechoice = new Fl_Choice(10, 50, 50, 15, "FilterType");
svfiltertypechoice->tooltip("The Filter type");
svfiltertypechoice->down_box(FL_BORDER_BOX);
svfiltertypechoice->labelsize(10);
svfiltertypechoice->textsize(10);
svfiltertypechoice->callback((Fl_Callback*)cb_svfiltertypechoice);
svfiltertypechoice->align(FL_ALIGN_TOP_LEFT);
svfiltertypechoice->menu(menu_svfiltertypechoice);
o->value(pars->Ptype);
} // Fl_Choice* svfiltertypechoice
{ Fl_Choice* o = filtertype = new Fl_Choice(10, 20, 60, 15, "Category");
filtertype->tooltip("The Category of the Filter (Analog/Formantic/etc.)");
filtertype->down_box(FL_BORDER_BOX);
filtertype->labelsize(10);
filtertype->textsize(10);
filtertype->callback((Fl_Callback*)cb_filtertype);
filtertype->align(FL_ALIGN_TOP_LEFT);
filtertype->menu(menu_filtertype);
o->value(pars->Pcategory);
} // Fl_Choice* filtertype
{ WidgetPDial* o = cfreqdial = new WidgetPDial(75, 25, 30, 30, "C.Freq");
cfreqdial->tooltip("Center Frequency of the Filter or the base position in the vowel\'s sequence");
cfreqdial->box(FL_ROUND_UP_BOX);
cfreqdial->color(FL_BACKGROUND_COLOR);
cfreqdial->selection_color(FL_INACTIVE_COLOR);
cfreqdial->labeltype(FL_NORMAL_LABEL);
cfreqdial->labelfont(0);
cfreqdial->labelsize(10);
cfreqdial->labelcolor(FL_FOREGROUND_COLOR);
cfreqdial->maximum(127);
cfreqdial->step(1);
cfreqdial->callback((Fl_Callback*)cb_cfreqdial);
cfreqdial->align(FL_ALIGN_BOTTOM);
cfreqdial->when(FL_WHEN_CHANGED);
o->value(pars->Pfreq);
} // WidgetPDial* cfreqdial
{ WidgetPDial* o = qdial = new WidgetPDial(110, 25, 30, 30, "Q");
qdial->tooltip("Filter resonance or bandwidth");
qdial->box(FL_ROUND_UP_BOX);
qdial->color(FL_BACKGROUND_COLOR);
qdial->selection_color(FL_INACTIVE_COLOR);
qdial->labeltype(FL_NORMAL_LABEL);
qdial->labelfont(0);
qdial->labelsize(10);
qdial->labelcolor(FL_FOREGROUND_COLOR);
qdial->maximum(127);
qdial->step(1);
qdial->callback((Fl_Callback*)cb_qdial);
qdial->align(FL_ALIGN_BOTTOM);
qdial->when(FL_WHEN_CHANGED);
o->value(pars->Pq);
} // WidgetPDial* qdial
{ WidgetPDial* o = freqtrdial = new WidgetPDial(215, 25, 30, 30, "freq.tr.");
freqtrdial->tooltip("Filter frequency tracking (left is negative, middle is 0, and right is positi\
ve)");
freqtrdial->box(FL_ROUND_UP_BOX);
freqtrdial->color(FL_BACKGROUND_COLOR);
freqtrdial->selection_color(FL_INACTIVE_COLOR);
freqtrdial->labeltype(FL_NORMAL_LABEL);
freqtrdial->labelfont(0);
freqtrdial->labelsize(10);
freqtrdial->labelcolor(FL_FOREGROUND_COLOR);
freqtrdial->maximum(127);
freqtrdial->step(1);
freqtrdial->callback((Fl_Callback*)cb_freqtrdial);
freqtrdial->align(FL_ALIGN_BOTTOM);
freqtrdial->when(FL_WHEN_CHANGED);
o->value(pars->Pfreqtrack);
} // WidgetPDial* freqtrdial
{ vsnsadial = new WidgetPDial(145, 25, 30, 30, "V.SnsA.");
vsnsadial->tooltip("Velocity sensing amount of the Filter");
vsnsadial->box(FL_ROUND_UP_BOX);
//.........这里部分代码省略.........
示例9: make_window
Fl_Double_Window* SUBnoteUI::make_window() {
{ SUBparameters = new Fl_Double_Window(735, 390, "SUBsynth Parameters");
SUBparameters->user_data((void*)(this));
{ Fl_Scroll* o = new Fl_Scroll(5, 140, 435, 245);
o->type(1);
o->box(FL_THIN_UP_BOX);
{ Fl_Pack* o = harmonics = new Fl_Pack(10, 145, 425, 235);
harmonics->type(1);
for (int i=0;i<MAX_SUB_HARMONICS;i++){h[i]=new SUBnoteharmonic(0,0,15,o->h(),"");h[i]->init(pars,i);}
harmonics->end();
} // Fl_Pack* harmonics
o->end();
} // Fl_Scroll* o
{ Fl_Button* o = new Fl_Button(625, 365, 105, 20, "Close");
o->box(FL_THIN_UP_BOX);
o->labelfont(1);
o->labelsize(11);
o->callback((Fl_Callback*)cb_Close);
} // Fl_Button* o
{ Fl_Group* o = new Fl_Group(5, 5, 215, 135, "AMPLITUDE");
o->box(FL_THIN_UP_FRAME);
o->labeltype(FL_EMBOSSED_LABEL);
o->labelfont(1);
o->align(FL_ALIGN_TOP|FL_ALIGN_INSIDE);
{ Fl_Value_Slider* o = vol = new Fl_Value_Slider(10, 25, 140, 15, "Vol");
vol->tooltip("Volume");
vol->type(5);
vol->box(FL_FLAT_BOX);
vol->labelsize(11);
vol->maximum(127);
vol->step(1);
vol->callback((Fl_Callback*)cb_vol);
vol->align(FL_ALIGN_RIGHT);
o->value(pars->PVolume);
} // Fl_Value_Slider* vol
{ Fl_Value_Slider* o = vsns = new Fl_Value_Slider(10, 45, 140, 15, "V.Sns");
vsns->tooltip("Velocity Sensing Function (rightmost to disable)");
vsns->type(5);
vsns->box(FL_FLAT_BOX);
vsns->labelsize(11);
vsns->maximum(127);
vsns->step(1);
vsns->callback((Fl_Callback*)cb_vsns);
vsns->align(FL_ALIGN_RIGHT);
o->value(pars->PAmpVelocityScaleFunction);
} // Fl_Value_Slider* vsns
{ WidgetPDial* o = pan = new WidgetPDial(185, 20, 30, 30, "Pan");
pan->tooltip("Panning (leftmost is Random)");
pan->box(FL_ROUND_UP_BOX);
pan->color(FL_BACKGROUND_COLOR);
pan->selection_color(FL_INACTIVE_COLOR);
pan->labeltype(FL_NORMAL_LABEL);
pan->labelfont(0);
pan->labelsize(10);
pan->labelcolor(FL_FOREGROUND_COLOR);
pan->maximum(127);
pan->step(1);
pan->callback((Fl_Callback*)cb_pan);
pan->align(FL_ALIGN_BOTTOM);
pan->when(FL_WHEN_CHANGED);
o->value(pars->PPanning);
} // WidgetPDial* pan
{ EnvelopeUI* o = ampenv = new EnvelopeUI(10, 65, 205, 70, "SUBsynth - Amplitude Envelope");
ampenv->box(FL_FLAT_BOX);
ampenv->color((Fl_Color)51);
ampenv->selection_color(FL_BACKGROUND_COLOR);
ampenv->labeltype(FL_NORMAL_LABEL);
ampenv->labelfont(0);
ampenv->labelsize(14);
ampenv->labelcolor(FL_FOREGROUND_COLOR);
ampenv->align(FL_ALIGN_WRAP|FL_ALIGN_INSIDE);
ampenv->when(FL_WHEN_RELEASE);
o->init(pars->AmpEnvelope,master);
ampenv->end();
} // EnvelopeUI* ampenv
o->end();
} // Fl_Group* o
{ Fl_Group* o = new Fl_Group(495, 325, 235, 35);
o->box(FL_THIN_UP_FRAME);
{ Fl_Counter* o = filterstages = new Fl_Counter(515, 340, 45, 15, "Filter Stages");
filterstages->tooltip("How many times the noise is filtered");
filterstages->type(1);
filterstages->labelfont(1);
filterstages->labelsize(10);
filterstages->minimum(1);
filterstages->maximum(5);
filterstages->step(1);
filterstages->textsize(10);
filterstages->callback((Fl_Callback*)cb_filterstages);
filterstages->align(FL_ALIGN_TOP);
o->value(pars->Pnumstages);
} // Fl_Counter* filterstages
{ Fl_Choice* o = magtype = new Fl_Choice(585, 340, 65, 15, "Mag.Type");
magtype->down_box(FL_BORDER_BOX);
magtype->labelfont(1);
magtype->labelsize(10);
magtype->textsize(11);
magtype->callback((Fl_Callback*)cb_magtype);
magtype->align(FL_ALIGN_TOP);
magtype->menu(menu_magtype);
//.........这里部分代码省略.........
示例10: scalemethod_cb
void ColorFltkMenu::scalemethod_cb(Fl_Widget *w, void *v) {
ColorFltkMenu *self = (ColorFltkMenu *)v;
Fl_Choice *choice = (Fl_Choice *)w;
self->app->colorscale_setmethod(choice->value());
}
示例11: makeTree
void makeTree()
{
Flu_Tree_Browser::Node* n;
// set the default leaf icon to be a blue dot
tree->leaf_icon( &blue_dot );
tree->clear();
tree->label( "Tree Browser Demo" );
//tree->select_under_mouse( true );
n = tree->get_root();
if( n ) n->branch_icons( &computer, &computer );
//tree->move_only_same_group( true );
/*
char buf[32];
for( int i = 0; i < 1000; i++ )
{
sprintf( buf, "%d", i );
tree->add( "/", buf );
}
return;
*/
n = tree->add( "/Customizable Icons!" );
if( n ) n->leaf_icon( &red_dot );
n = tree->add( "Text Entries!" );
if( n ) n->leaf_icon( NULL );
tree->add( "Identical Entries!" );
tree->add( "Identical Entries!" );
//n = tree->add( "/widgets!/" );
n = tree->add_branch( "/widgets!" );
n->always_open( true );
//n->branch_icon( NULL );
tree->add_branch( "two" );
n = tree->add( "/widgets!/text item" );
if( n ) n->leaf_icon( &text_doc );
tree->add( "two/four" );
n = tree->add( "/folders/six/123", "eight" );
if( n ) n->leaf_icon( &green_dot );
tree->add_leaf( "/folders/six/abc/" );
tree->add( "/folders/six/seven/" );
tree->add_leaf( "/uuu" );
tree->add( "/folders/zilch/" );
n = tree->find( "/folders" );
if( n ) n->collapse_icons( &arrow_closed, &arrow_open );
n = tree->add( "/branches/ten/eleven" );
printf( "Path %s\n", tree->find_path( n ) );
tree->add( "/two/this\\/that" ); // use the escape character for '/' (have to use \\ since the compiler automatically does escape replacement in strings)
n = tree->add( "/zoom/" );
if( n ) n->branch_icons( &cd_drive, &cd_drive );
tree->add( "zoom", "zurb" );
tree->add( "zoom", "zoom" );
tree->open( true );
// test the depth-first traversal interface
/*
printf( "----------------\n" );
n = tree->last();//tree->first();
while( n )
{
printf( "%s\n", n->label() );
n = n->previous();//n->next();
}
*/
//return;
Fl_Input *i = new Fl_Input( 0, 0, 100, 20 );
tree->add( "/input/", i );
Fl_Choice *c = new Fl_Choice( 0, 0, 100, 20 );
c->add( "one" );
c->add( "two" );
c->add( "three" );
c->add( "four" );
c->value( 0 );
n = tree->add( "/widgets!/choice", c );
if( n ) n->expand_to_width( true );
tree->leaf_icon( NULL );
Fl_Button *b = new Fl_Button( 0, 0, 100, 20, "Button" );
b->callback( button_callback );
tree->add( "/widgets!/Button", b, false );
printf( "Path %s\n", tree->find_path( b ) );
{
Fl_Check_Button *c = new Fl_Check_Button( 0, 0, 80, 20, "Check 1" );
n = tree->add( "/widgets!/Check1", c, false );
n->auto_label_color( true );
c = new Fl_Check_Button( 0, 0, 80, 20, "Check 2" );
n = tree->add( "/widgets!/Check2", c, true );
n->auto_label_color( true );
c = new Fl_Check_Button( 0, 0, 80, 20, "Check 3" );
n = tree->add( "/widgets!/Check3", c, true );
n->swap_label_and_widget( true );
//.........这里部分代码省略.........
示例12: initParamWindow
void initParamWindow() {
const int heightInput = 28;
const int wideLabel = 205;
const int wideInput = 130;
const int between = 5;
const int Ybetween = 3;
const int YbetweenMore = 6;
const int alignStyle = FL_ALIGN_INSIDE | FL_ALIGN_RIGHT;
const Fl_Boxtype inputStyle = FL_PLASTIC_DOWN_BOX;
int x = 10;
int y = 10;
const int wide = x+wideLabel+between+wideInput+x;
const int height = y + 14*(heightInput+Ybetween) - Ybetween + 9*YbetweenMore + y;
paramWindow = new Fl_Window( wide, height, _("Parameters") );
Fl_Group* win2 = new Fl_Group( 0, 0, wide, height );
paramWindow->resizable(win2);
{
Fl_Box* o = new Fl_Box( x, y, wideLabel, heightInput, _("Schema size:") );
o->align( alignStyle );
}
{
Fl_Value_Slider* o = new Fl_Value_Slider( x+wideLabel+between, y, wideInput, heightInput );
o->box(inputStyle);
o->type(FL_HORIZONTAL);
o->minimum(0);
o->maximum(1);
o->value(glito->getCloseEdge());
o->step(0.01);
o->callback( (Fl_Callback*)closeEdge_param, glito );
}
y += heightInput + Ybetween;
{
Fl_Box* o = new Fl_Box( x, y, wideLabel, heightInput, _("Preview Size:") );
o->align( alignStyle );
}
{
Fl_Value_Slider* o = new Fl_Value_Slider( x+wideLabel+between, y, wideInput, heightInput );
o->box(inputStyle);
o->type(FL_HORIZONTAL);
o->minimum(0);
o->maximum(1);
o->value(glito->getPreviewSize());
o->step(0.01);
o->callback( (Fl_Callback*)previewSize_param, glito );
}
y += heightInput + Ybetween + YbetweenMore;
{
Fl_Box* o = new Fl_Box( x, y, wideLabel, heightInput, _("Rotation shift (rad):") );
o->align( alignStyle );
}
{
Fl_Value_Slider* o = new Fl_Value_Slider( x+wideLabel+between, y, wideInput, heightInput );
o->box(inputStyle);
o->type(FL_HORIZONTAL);
o->minimum(0.002);
o->maximum(0.2);
o->value(glito->rotationShift);
o->step(0.001);
o->callback( (Fl_Callback*)rotationShift_param, glito );
}
y += heightInput + Ybetween + YbetweenMore;
{
Fl_Box* o = new Fl_Box( x, y, wideLabel, heightInput, _("Size of saved images:") );
o->align( alignStyle );
}
{
Fl_Int_Input* o = new Fl_Int_Input( x+wideLabel+between, y, wideInput/2-5, heightInput );
o->box(inputStyle);
o->value(IS::translate(glito->imageSavedWidth).c_str());
o->callback( (Fl_Callback*)imageSavedWidth_param, glito );
}
{
Fl_Box* o = new Fl_Box( x+wideLabel+between+wideInput/2-5, y, 10, heightInput, "x" );
o->align( FL_ALIGN_INSIDE | FL_ALIGN_CENTER );
}
{
Fl_Int_Input* o = new Fl_Int_Input( x+wideLabel+between+wideInput/2+5, y,
wideInput/2-5, heightInput );
o->box(inputStyle);
o->value(IS::translate(glito->imageSavedHeight).c_str());
o->callback( (Fl_Callback*)imageSavedHeight_param, glito );
}
y += heightInput + Ybetween;
{
Fl_Box* o = new Fl_Box( x, y, wideLabel, heightInput, _("Size of animations:") );
o->align( alignStyle );
}
{
Fl_Int_Input* o = new Fl_Int_Input( x+wideLabel+between, y, wideInput/2-5, heightInput );
o->box(inputStyle);
o->value(IS::translate(glito->animationSavedWidth).c_str());
o->callback( (Fl_Callback*)animationSavedWidth_param, glito );
}
{
Fl_Box* o = new Fl_Box( x+wideLabel+between+wideInput/2-5, y, 10, heightInput, "x" );
o->align( FL_ALIGN_INSIDE | FL_ALIGN_CENTER );
}
{
Fl_Int_Input* o = new Fl_Int_Input( x+wideLabel+between+wideInput/2+5, y,
wideInput/2-5, heightInput );
//.........这里部分代码省略.........
示例13: main
int main (int argc, char **argv) {
Fl_Window* w;
fl_init_locale_support("ewmconf", PREFIX"/share/locale");
readConfiguration();
{Fl_Window* o = new Fl_Window(320, 370, _("Window manager settings"));
w = o;
{Fl_Tabs* o = new Fl_Tabs(2, 5, 318, 325);
o->color((Fl_Color)16);
{Fl_Group* o = new Fl_Group(1, 29, 316, 295, _("&Titlebar"));
o->align(FL_ALIGN_TOP | FL_ALIGN_LEFT);
{Fl_Choice* o = new Fl_Choice(83, 13, 105, 22, _("Text align:")); o->begin();
o->callback((Fl_Callback*)cb_Text);
new Fl_Item(_("Left"));
new Fl_Item(_("Right"));
new Fl_Item(_("Center"));
o->value(title_align);
o->end();
}
{Fl_Value_Input* o = new Fl_Value_Input(243, 13, 60, 22, _("Height:"));
o->minimum(10);
o->maximum(50);
o->step(1);
o->value(20);
o->callback((Fl_Callback*)cb_Height);
o->value(title_height);
}
{Fl_Button* o = titlebarLabelColorButton = new Fl_Button(85, 55, 60, 20, _("Titlebar label color: "));
o->box(FL_DOWN_BOX);
o->callback((Fl_Callback*)cb_titlebarLabelColorButton);
o->align(132);
o->color((Fl_Color)title_normal_color_text);
}
{Fl_Button* o = titlebarColorButton = new Fl_Button(85, 120, 60, 20, _("Titlebar color: "));
o->box(FL_DOWN_BOX);
o->callback((Fl_Callback*)cb_titlebarColorButton);
o->align(132);
o->color((Fl_Color) title_normal_color);
}
{Fl_Group* o = new Fl_Group(153, 45, 160, 110);
{Fl_Button* o = titlebarActiveLabelColorButton = new Fl_Button(90, 10, 60, 20, _("Titlebar active label color: "));
o->box(FL_DOWN_BOX);
o->callback((Fl_Callback*)cb_titlebarActiveLabelColorButton);
o->align(132);
o->color((Fl_Color) title_active_color_text);
}
{Fl_Button* o = titlebarActiveColorButton = new Fl_Button(90, 75, 60, 20, _("Titlebar active color: "));
o->box(FL_DOWN_BOX);
o->callback((Fl_Callback*)cb_titlebarActiveColorButton);
o->align(132);
o->color((Fl_Color)title_active_color);
}
o->end();
}
{Fl_Choice* o = titlebarDrawGrad = new Fl_Choice(85, 157, 163, 23, _("Box type:")); o->begin();
o->callback((Fl_Callback*)cb_titlebarDrawGrad);
o->align(132);
new Fl_Item(_("Flat"));
new Fl_Item(_("Horizontal shade"));
new Fl_Item(_("Thin down"));
new Fl_Item(_("Up box"));
new Fl_Item(_("Down box"));
new Fl_Item(_("Plastic"));
o->value(title_draw_grad);
o->end();
}
{Fl_Check_Button* o = useThemeButton = new Fl_Check_Button(8, 220, 300, 20, _("&Use theme"));
o->callback((Fl_Callback*)cb_useThemeButton);
o->value(use_theme);
}
{Fl_Input* o = themePathInput = new Fl_Input(65, 247, 210, 23, _("Path:"));
o->callback((Fl_Callback*)cb_themePathInput);
o->deactivate();
themePathInput->value(theme_path);
}
{Fl_Button* o = browse_btn = new Fl_Button(280, 247, 25, 23, _("..."));
o->callback((Fl_Callback*)cb_browse_btn);
o->deactivate();
}
{Fl_Divider* o = new Fl_Divider(8, 190, 300, 25, _("label"));
o->color((Fl_Color)16);
}
{Fl_Divider* o = new Fl_Divider(8, 85, 297, 25, _("label"));
o->color((Fl_Color)16);
}
o->end();
}
{Fl_Group* o = new Fl_Group(3, 20, 310, 305, _("&Resizing"));
o->align(FL_ALIGN_TOP | FL_ALIGN_LEFT);
o->hide();
{Fl_Check_Button* o = animateButton = new Fl_Check_Button(10, 10, 300, 20, _("Animate size changes"));
o->value(1);
o->callback((Fl_Callback*)cb_animateButton);
o->value(animate);
}
{Fl_Value_Slider* o = animateSlider = new Fl_Value_Slider(70, 35, 235, 20, _("Speed:"));
o->type(Fl_Value_Slider::HORIZONTAL|Fl_Slider::TICK_ABOVE);
o->box(FL_DOWN_BOX);
o->text_size(10);
o->minimum(5);
//.........这里部分代码省略.........
示例14: repchooser_cb
static void repchooser_cb(Fl_Widget *w, void *v) {
Fl_Choice *c = (Fl_Choice *)w;
if (c->value())
((SaveTrajectoryFltkMenu *)v)->select_atoms(c->text());
}
示例15: style_cb
static void style_cb(Fl_Widget *w, void *v) {
Fl_Choice *choice = (Fl_Choice *)w;
VMDApp *app = (VMDApp *)v;
app->animation_set_style(choice->value());
}