# knowledge of the CeCILL-B license and that you accept its terms.
# ------------------------------------------------------------------------ */
+//__asm__(".symver fcntl64,fcntl64@GLIBC_2.27");
#ifdef _USE_WXWIDGETS_
+
+#include <exception>
+
//==========================================================================
// WITH WX
//==========================================================================
bbtk::StaticInitTime::PrintObjectListInfo = true;
}
- debug = ( parser.Found(_T("d")) );
- quiet = ( parser.Found(_T("q")) );
- help = ( parser.Found(_T("h")) );
- graphical_dialog = ( parser.Found(_T("wxcommandlineg")) );
- text_dialog = ( parser.Found(_T("t")) );
- no_console = ( parser.Found(_T("N")) );
-
+ debug = ( parser.Found(_T("d")) );
+ quiet = ( parser.Found(_T("q")) );
+ help = ( parser.Found(_T("h")) );
+
+//EED 2017-09-16 Migration wxWidgets 2.8 to 3.0
+#if wxMAJOR_VERSION <= 2
+ graphical_dialog = ( parser.Found(_T("wxcommandlineg")) );
+#else
+ printf("EED Warnning. WxProcessCmdLine::Process g wxcommandlineg \n");
+ graphical_dialog = ( parser.Found(_T("g")) );
+#endif
+
+ text_dialog = ( parser.Found(_T("t")) );
+ no_console = ( parser.Found(_T("N")) );
if (quiet) bbtk::MessageManager::SetMessageLevel("max",0);
if (debug) bbtk::MessageManager::SetMessageLevel("all",9);
((input_file.size() == 0) &&
(!no_console) &&
(!usage) ) );
-
+
}
//==========================================================================
-
-
-
//==========================================================================
// The `main program' equivalent, creating the windows and returning the
// main frame
bool wxBBIApp::OnInit( )
{
+
//Borrame
//FILE *ff; ff = fopen ("/tmp/wt.log","a+"); fprintf(ff,"EED wxBBIApp::OnInit\n"); fclose(ff);
setlocale(LC_NUMERIC, "C");
#endif
-
if (cmd.quiet) bbtk::MessageManager::SetMessageLevel("max",0);
if (cmd.debug) bbtk::MessageManager::SetMessageLevel("all",9);
//printf ("EED bbi wxBBIApp::OnInit .....................\n");
//cmd.input_file.push_back("/home/davila/Borrame/testwt.bbs");
-
bbtk::WxGUIConsole *I = new bbtk::WxGUIConsole(0,_T("bbi"),wxSize(800,600));
SetTopWindow(I);
if (cmd.console) I->Show(true);
std::vector<std::string>::const_iterator i;
bool error = false;
+
for (i=cmd.input_file.begin(); i!=cmd.input_file.end(); ++i)
{
error = ! I->InterpretFile(*i);
I->GetInterpreter()->GetExecuter()->GetFactory()->PrintHelpDescriptor("workspace",package,false);
}
+
/*
std::cout << "soe="<<show_on_error <<std::endl;
std::cout << "con="<<console<<std::endl;
// you need to use the linker option "/subsystem:console" and the following code:
int main(int argc, char* argv[])
{
-
//Borrame
//FILE *ff; ff = fopen ("/tmp/wt.log","a+"); fprintf(ff,"EED main C\n"); fclose(ff);
- return WinMain(::GetModuleHandle(NULL), NULL, ::GetCommandLine(), SW_SHOWNORMAL);
+ // EED 2018-07-16
+ char buffer[1500];
+ wcstombs(buffer , ::GetCommandLine() , 1500 );
+ return WinMain(::GetModuleHandle(NULL), NULL, buffer , SW_SHOWNORMAL);
+ // return WinMain(::GetModuleHandle(NULL), NULL, ::GetCommandLine(), SW_SHOWNORMAL);
}
+
#else
//==========================================================================
// OTHER ( Linux... )
int main(int argc, char* argv[])
{
-
//Borrame
//FILE *ff; ff = fopen ("/tmp/wt.log","a+"); fprintf(ff,"EED main A\n"); fclose(ff);
if (!cmdline.proceed) return 0;
- if (cmdline.no_console)
+ if (cmdline.no_console)
{
// std::cout << "main NC"<<std::endl;
// Interpreter
bool error = false;
for (i=cmdline.input_file.begin();
i!=cmdline.input_file.end(); ++i)
- {
- error = ! I->InterpretFile(*i);
- if (error) break;
- }
- if (help_on_script)
- {
- I->SetNoExecMode(false);
- std::string package;
- I->GetExecuter()->GetFactory()->PrintHelpDescriptor("workspace",
+ {
+ error = ! I->InterpretFile(*i);
+ if (error) break;
+ }
+ if (help_on_script)
+ {
+ I->SetNoExecMode(false);
+ std::string package;
+ I->GetExecuter()->GetFactory()->PrintHelpDescriptor("workspace",
package,
false);
- }
- if (cmdline.input_file.size()==0)
- I->CommandLineInterpreter();
-
+ }
+ if (cmdline.input_file.size()==0)
+ {
+ I->CommandLineInterpreter();
+ } // if cmdline.input_file.size
//
- }
- else
- {
+ } else {
wxEntry(argc, argv);
- }
+ } // if cmdline.no_console
}