kcApp.cpp: Changed console from splitter window to tab window.
This commit is contained in:
parent
95978d21f7
commit
13b910ac6f
@ -64,7 +64,7 @@
|
||||
kcApp::kcApp(cmCtx_t* ctx, cmPrH_t prH, cmTsMp1cH_t printqH, int w, int h, const cmChar_t* title, cmAiH_t aiH, int argc, char* argv[] )
|
||||
: Fl_Double_Window(w, h,title),
|
||||
_ctx(ctx),_prH(prH),_aiH(aiH),
|
||||
_menu(NULL),_splt(NULL),_con(NULL),_tabs(NULL),_mstr_grp(NULL),
|
||||
_menu(NULL),_con(NULL),_tabs(NULL),_mstr_grp(NULL),
|
||||
_as_btn(NULL),_ai_btn(NULL),_ao_btn(NULL),_pgm_btn(NULL),
|
||||
_ss_btn(NULL),_sr_btn(NULL),_ena_chk(NULL),
|
||||
_pageList(NULL),_ctlList(NULL),
|
||||
@ -82,22 +82,16 @@ kcApp::kcApp(cmCtx_t* ctx, cmPrH_t prH, cmTsMp1cH_t printqH, int w, int h, const
|
||||
// and a horizontal splitter on the bottom
|
||||
begin();
|
||||
_createMenu(w,kMenuH);
|
||||
_splt = new Fl_HSplitter(0, kMenuH, w, h-kStatusH-kMenuH, h-kStatusH-kMenuH-100);
|
||||
end();
|
||||
|
||||
// Create a text display object for console output andvadd it to the lower splitter area
|
||||
Fl_Text_Buffer* buf = new Fl_Text_Buffer();
|
||||
_con = new Fl_Text_Display(_splt->container2->x(),_splt->container2->y(),_splt->container2->w(),_splt->container2->h());
|
||||
_con->buffer(buf);
|
||||
_splt->container2->add(_con);
|
||||
|
||||
// Create a tab view and added it to the upper splitter area
|
||||
_tabs = new Fl_Tabs(_splt->container1->x(),_splt->container1->y(),_splt->container1->w(),_splt->container1->h());
|
||||
add(_tabs = new Fl_Tabs(this->x(),this->y()+kMenuH,this->w(),this->h()-kMenuH));
|
||||
_tabs->callback(_s_tab_cb,this);
|
||||
_tabs->end();
|
||||
_splt->container1->add(_tabs);
|
||||
|
||||
int tx,ty,th,tw;
|
||||
int tx=x(),ty=y(),th=this->w(),tw=this->h();
|
||||
_tabs->client_area(tx,ty,tw,th);
|
||||
|
||||
// Create the 'Setup' tab group
|
||||
@ -105,23 +99,28 @@ kcApp::kcApp(cmCtx_t* ctx, cmPrH_t prH, cmTsMp1cH_t printqH, int w, int h, const
|
||||
_tabs->add(setup_grp);
|
||||
_createSetupDlg(setup_grp);
|
||||
|
||||
// Create the console window
|
||||
Fl_Group* con_grp = new Fl_Group(tx,ty,tw,th,"Console");
|
||||
_tabs->add(con_grp);
|
||||
Fl_Text_Buffer* buf = new Fl_Text_Buffer();
|
||||
_con = new Fl_Text_Display(tx,ty,tw,th);
|
||||
_con->buffer(buf);
|
||||
con_grp->add(_con);
|
||||
|
||||
// Create the master group
|
||||
_tabs->add(_mstr_grp = new Fl_Group(tx,ty,tw,th,"Master"));
|
||||
|
||||
|
||||
// Create an empty tab group and make it resizable
|
||||
// to prevent the other tab groups from being resizable.
|
||||
Fl_Group* wdgt = new Fl_Group(tx,ty+30,1,1);
|
||||
_tabs->add(wdgt);
|
||||
_tabs->resizable(wdgt); // make other tabs non-resizable
|
||||
|
||||
|
||||
// make the splitter the resizable group element (thereby making the menu non-resizable).
|
||||
// see:http://fltk.org/articles.php?L415+I0+T+M1000+P1
|
||||
resizable(_splt);
|
||||
resizable(_tabs);
|
||||
show(argc, argv);
|
||||
|
||||
|
||||
// direct all output to the console window
|
||||
cmRptSetup(&_ctx->rpt,_s_print,_s_print, this);
|
||||
cmTsMp1cSetCbFunc(_printqH, _s_print_queue_cb, this );
|
||||
@ -141,7 +140,6 @@ kcApp::~kcApp()
|
||||
void kcApp::resize(int x, int y, int w, int h)
|
||||
{
|
||||
Fl_Double_Window::resize(x, y, w, h);
|
||||
_splt->resize(0, kMenuH, w, h-kStatusH);
|
||||
cmPrefsPathSetInt(_prH,"appWndW",w);
|
||||
cmPrefsPathSetInt(_prH,"appWndH",h);
|
||||
}
|
||||
|
@ -290,7 +290,6 @@ private:
|
||||
cmAiH_t _aiH;
|
||||
|
||||
Fl_Menu_Bar* _menu;
|
||||
Fl_HSplitter* _splt;
|
||||
Fl_Text_Display* _con;
|
||||
Fl_Tabs* _tabs;
|
||||
Fl_Group* _mstr_grp;
|
||||
|
Loading…
Reference in New Issue
Block a user