kcApp.h/cpp, kcMain.cpp Added use of preference file.
This commit is contained in:
parent
662d12cc62
commit
82fff39f11
@ -61,9 +61,9 @@
|
||||
#define TIMER_PERIOD (1.0/20.0) // 50ms
|
||||
|
||||
|
||||
kcApp::kcApp(cmCtx_t* ctx, cmTsMp1cH_t printqH, int w, int h, const cmChar_t* title, cmAiH_t aiH, int argc, char* argv[] )
|
||||
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),_aiH(aiH),
|
||||
_ctx(ctx),_prH(prH),_aiH(aiH),
|
||||
_menu(NULL),_splt(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),
|
||||
@ -142,6 +142,8 @@ 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);
|
||||
}
|
||||
|
||||
void kcApp::tlCtlNewTimeLineFile( tlCtl* tlCtl, const cmChar_t* fn )
|
||||
|
@ -25,13 +25,8 @@ class Fl_Progress;
|
||||
kMemFailKmRC,
|
||||
kFileSysFailKmRC,
|
||||
kQueueFailKmRC,
|
||||
kTextSysFailKmRC,
|
||||
|
||||
kPrefsNotFoundKmRC,
|
||||
kPrefWriteFailKmRC,
|
||||
kPrefLoadFailKmRC,
|
||||
kPrefFailKmRC,
|
||||
kPrefSetFailKmRC,
|
||||
kTextSysFailKmRC,
|
||||
kPrefsFailKmRC,
|
||||
kMlistLoadFailKmRC,
|
||||
kJsonFailKmRC,
|
||||
kDeserialFailKmRC,
|
||||
@ -44,7 +39,7 @@ class kcApp : public Fl_Double_Window, public tlCtlRspdr
|
||||
public:
|
||||
typedef unsigned kcKmRC_t;
|
||||
|
||||
kcApp(cmCtx_t* ctx, cmTsMp1cH_t printQH, int w, int h, const cmChar_t* title, cmAiH_t aiH, int argc, char* argv[] );
|
||||
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[] );
|
||||
virtual ~kcApp();
|
||||
|
||||
void resize(int x, int y, int w, int h);
|
||||
@ -278,6 +273,7 @@ private:
|
||||
|
||||
|
||||
cmCtx_t* _ctx;
|
||||
cmPrH_t _prH;
|
||||
cmAiH_t _aiH;
|
||||
|
||||
Fl_Menu_Bar* _menu;
|
||||
|
@ -22,6 +22,7 @@
|
||||
#include "cmThread.h"
|
||||
#include "cmText.h"
|
||||
#include "cmFileSys.h"
|
||||
#include "cmPrefs.h"
|
||||
#include "cmDspValue.h"
|
||||
#include "cmMsgProtocol.h"
|
||||
#include "cmAudDspIF.h"
|
||||
@ -36,6 +37,12 @@
|
||||
#include "tlCtl.h"
|
||||
#include "kcApp.h"
|
||||
|
||||
enum
|
||||
{
|
||||
kAppWndW = 1600,
|
||||
kAppWndH = 750
|
||||
};
|
||||
|
||||
kcApp* kcAppPtr = NULL;
|
||||
|
||||
|
||||
@ -57,20 +64,33 @@ cmRC_t handleStatusMsg( void* cbDataPtr, const cmAudioSysStatus_t* r, const doub
|
||||
cmRC_t handleUiMsg( void* cbDataPtr, const cmDspUiHdr_t* r )
|
||||
{ kcAppPtr->_handleUiMsg(r); return cmOkRC;}
|
||||
|
||||
cmPrRC_t kcInitPrefs( cmCtx_t* ctx, cmPrH_t* prH )
|
||||
{
|
||||
cmPrRC_t rc = kOkPrRC;
|
||||
|
||||
if((rc = cmPrefsInit(ctx, prH, NULL, NULL, NULL, NULL )) != kOkPrRC )
|
||||
return rc;
|
||||
|
||||
unsigned flags = 0;
|
||||
cmPrefsCreateInt(*prH, 1, "appWndW", flags, kAppWndW );
|
||||
cmPrefsCreateInt(*prH, 2, "appWndH", flags, kAppWndH );
|
||||
|
||||
return cmPrefsRC(*prH);
|
||||
}
|
||||
|
||||
int main( int argc, char* argv[] )
|
||||
{
|
||||
cmCtx_t ctx;
|
||||
cmTsMp1cH_t printqH = cmTsMp1cNullHandle;
|
||||
int appWndW = 1600;
|
||||
int appWndH = 750;
|
||||
const char* appPrefDir = "kc";
|
||||
const char* appTitle = "KC Console";
|
||||
bool memDebugFl = cmDEBUG_FL;
|
||||
bool memDebugFl = false; //cmDEBUG_FL;
|
||||
unsigned memPadByteCnt = memDebugFl ? 8 : 0;
|
||||
unsigned memAlignByteCnt = 16;
|
||||
unsigned memFlags = memDebugFl ? (kTrackMmFl | kDeferFreeMmFl | kFillUninitMmFl) : 0;
|
||||
cmAdlH_t adlH = cmAdlNullHandle;
|
||||
cmAiH_t aiH = cmAiNullHandle;
|
||||
cmPrH_t prH = cmPrNullHandle;
|
||||
cmAdIfDispatch_t r;
|
||||
|
||||
cmCtxSetup(&ctx,appTitle,print,print,NULL,memPadByteCnt,memAlignByteCnt,memFlags);
|
||||
@ -90,6 +110,10 @@ int main( int argc, char* argv[] )
|
||||
if( cmTsInitialize(&ctx) != kOkTxRC )
|
||||
cmErrMsg(&ctx.err,kTextSysFailKmRC,"Text system initialization failed.");
|
||||
|
||||
// iniitalize the preferences
|
||||
if( kcInitPrefs(&ctx,&prH) != kOkPrRC )
|
||||
cmErrMsg(&ctx.err,kPrefsFailKmRC,"Preference initializatkion failed.");
|
||||
|
||||
// create the print queue
|
||||
if( cmTsMp1cCreate( &printqH, 8192, print_queue_cb, NULL, NULL ) != kOkThRC )
|
||||
cmErrMsg(&ctx.err,kQueueFailKmRC,"Print queue creation failed.");
|
||||
@ -108,8 +132,10 @@ int main( int argc, char* argv[] )
|
||||
|
||||
if( cmErrLastRC(&ctx.err) == kOkKmRC )
|
||||
{
|
||||
|
||||
kcAppPtr = new kcApp(&ctx, printqH, appWndW, appWndH, appTitle, aiH, argc, argv);
|
||||
int appWndW = cmPrefsIntDef(prH,"appWndW", kAppWndW);
|
||||
int appWndH = cmPrefsIntDef(prH,"appWndH", kAppWndH);
|
||||
|
||||
kcAppPtr = new kcApp(&ctx, prH, printqH, appWndW, appWndH, appTitle, aiH, argc, argv);
|
||||
|
||||
cmAudDspLocalSendSetup(adlH);
|
||||
|
||||
@ -139,6 +165,15 @@ int main( int argc, char* argv[] )
|
||||
if( cmTsMp1cDestroy(&printqH) != kOkThRC )
|
||||
cmErrMsg(&ctx.err,kQueueFailKmRC,"Print queue destroy failed.");
|
||||
|
||||
// write the preferences file
|
||||
if( cmPrefsIsDirty(prH) )
|
||||
if( cmPrefsWrite(prH,cmPrefsFileName(prH)) != kOkPrRC )
|
||||
cmErrMsg(&ctx.err,kPrefsFailKmRC,"Preferences save failed.");
|
||||
|
||||
// finalize the preferences file
|
||||
if( cmPrefsFinalize(&prH) != kOkPrRC )
|
||||
cmErrMsg(&ctx.err,kPrefsFailKmRC,"Preference finalize failed.");
|
||||
|
||||
// finalize the text system
|
||||
if( cmTsFinalize() != kOkTxRC )
|
||||
cmErrMsg(&ctx.err,kTextSysFailKmRC,"Text system finalization failed.");
|
||||
|
Loading…
Reference in New Issue
Block a user