#include <wx/timer.h>
#endif
-#ifdef NO_GUI
+#if defined(NO_GUI) || defined(__UNIX__)
#if wxUSE_IOSTREAMH
#include <iostream.h>
#include <fstream.h>
int passNumber = 1;
#ifndef NO_GUI
+
+#if wxUSE_HELP
wxHelpController *HelpInstance = NULL;
+#endif // wxUSE_HELP
#ifdef __WXMSW__
static char *ipc_buffer = NULL;
void ShowOptions(void);
#ifdef NO_GUI
+
+extern char *wxBuffer; // we must init it, otherwise tex2rtf will crash
+
int main(int argc, char **argv)
#else
wxMenuBar *menuBar = NULL;
RefName = new char[300];
int n = 1;
-
+
// Read input/output files
if (argc > 1)
{
}
#ifdef NO_GUI
+ wxBuffer = new char[1500];
+ // this is done in wxApp, but NO_GUI version doesn't call it :-(
+
if (!InputFile || !OutputFile)
{
cout << "Tex2RTF: input or output file is missing.\n";
ShowOptions();
exit(1);
}
+
#endif
if (InputFile)
{
frame->textWindow = new wxTextCtrl(frame, -1, "", wxPoint(-1, -1), wxSize(-1, -1), wxTE_READONLY|wxTE_MULTILINE);
(*frame->textWindow) << "Welcome to Julian Smart's LaTeX to RTF converter.\n";
-// ShowOptions();
+// ShowOptions();
+#if wxUSE_HELP
HelpInstance = new wxHelpController();
HelpInstance->Initialize("tex2rtf");
+#endif // wxUSE_HELP
/*
* Read macro/initialisation file
*
*/
-
+
wxString path;
if ((path = TexPathList.FindValidPath(MacroFile)) != "")
ReadCustomMacros((char*) (const char*) path);
else if (convertMode == TEX_XLP) strcat(buf, "XLP");
strcat(buf, " mode.");
frame->SetStatusText(buf, 1);
-
+
frame->Show(TRUE);
return TRUE;
}
* Read macro/initialisation file
*
*/
-
+
wxString path;
if ((path = TexPathList.FindValidPath(MacroFile)) != "")
ReadCustomMacros((char*) (const char*) path);
// Return the main frame window
return TRUE;
#else
+ delete[] wxBuffer;
return FALSE;
#endif
}
+#ifndef NO_GUI
int MyApp::OnExit()
{
wxNode *node = CustomMacroList.First();
delete TheTex2RTFServer;
wxDDECleanUp();
#endif
+
+#if wxUSE_HELP
delete HelpInstance;
+#endif // wxUSE_HELP
// TODO: this simulates zero-memory leaks!
// Otherwise there are just too many...
return 0;
}
-
+#endif
void ShowOptions(void)
{
char buf[100];
void MyFrame::OnHelp(wxCommandEvent& event)
{
+#if wxUSE_HELP
HelpInstance->LoadFile();
HelpInstance->DisplayContents();
+#endif // wxUSE_HELP
}
void MyFrame::OnAbout(wxCommandEvent& event)
char extensionBuf[10];
char wildBuf[10];
strcpy(wildBuf, "*.");
- char *path = NULL;
+ wxString path;
if (OutputFile)
path = wxPathOnly(OutputFile);
else if (InputFile)
path = wxPathOnly(InputFile);
-
+
switch (convertMode)
{
case TEX_RTF:
if(strlen( sName) > 5)
sName[5] = '\0'; // that should do!
}
-
+
sprintf(ContentsName, "%s.con", FileRoot);
sprintf(TmpContentsName, "%s.cn1", FileRoot);
sprintf(TmpFrameContentsName, "%s.frc", FileRoot);
if (wxFileExists(RefName))
ReadTexReferences(RefName);
-
+
bool success = FALSE;
if (InputFile && OutputFile)
{
if (!ipc_buffer)
ipc_buffer = new char[1000];
-
+
return new Tex2RTFConnection(ipc_buffer, 4000);
}
else
/*
* Connection
*/
-
+
Tex2RTFConnection::Tex2RTFConnection(char *buf, int size):wxDDEConnection(buf, size)
{
}
}
else if (strcmp(firstArg, "EXIT") == 0)
{
- if (frame && frame->OnClose())
- delete frame;
+ if (frame) frame->Close();
}
else if (strcmp(firstArg, "MINIMIZE") == 0 || strcmp(firstArg, "ICONIZE") == 0)
{
#endif
+#ifndef NO_GUI
+#ifndef __WXGTK__
+//void wxObject::Dump(ostream& str)
+//{
+// if (GetClassInfo() && GetClassInfo()->GetClassName())
+// str << GetClassInfo()->GetClassName();
+// else
+// str << "unknown object class";
+//}
+#endif
+#endif