wxMaxima
Loading...
Searching...
No Matches
Data Structures | Macros | Functions
wxMaxima.h File Reference

This file declares the class wxMaxima that contains most of the program's logic. More...

#include "BuildConfig.h"
#include <vector>
#include "wxMaximaFrame.h"
#include "WXMXformat.h"
#include "Configuration.h"
#include "MathParser.h"
#include "MaximaIPC.h"
#include "MaximaCommandMenus.h"
#include "MaximaResponseReader.h"
#include "MaximaProcessManager.h"
#include "MaximaEvaluator.h"
#include "MaximaFileIO.h"
#include "MaximaOutputAppender.h"
#include "Dirstructure.h"
#include <wx/socket.h>
#include <wx/config.h>
#include <wx/process.h>
#include <wx/regex.h>
#include <wx/dnd.h>
#include <wx/txtstrm.h>
#include <wx/sckstrm.h>
#include <wx/buffer.h>
#include <wx/power.h>
#include <memory>
#include <unordered_map>
Include dependency graph for wxMaxima.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Structures

class  wxMaxima
 
class  wxMaxima::VersionNumber
 A version number that can be compared using "<" and ">". More...
 
struct  wxMaxima::ServerDeleter
 The Right Way to delete a wxSocketServer. More...
 

Macros

#define MAXIMAPOLLMSECS   2000
 How many milliseconds should we wait between polling for stdout+cpu power?
 

Functions

wxString ApplyAppearanceToApp (Configuration::Appearance appearance, bool logImmediately=true)
 Apply the chosen light/dark appearance to the native application chrome (menus, toolbars, sidebars, dialogs) via wxApp::SetAppearance(). This call itself is never deferred – only whether it logs its result immediately is (see logImmediately below); the appearance change has to happen synchronously, before the first top-level window is created.
 

Detailed Description

This file declares the class wxMaxima that contains most of the program's logic.

The worksheet is defined in the class MathCtrl instead and everything surrounding it in wxMaximaFrame.

Function Documentation

◆ ApplyAppearanceToApp()

wxString ApplyAppearanceToApp ( Configuration::Appearance  appearance,
bool  logImmediately = true 
)

Apply the chosen light/dark appearance to the native application chrome (menus, toolbars, sidebars, dialogs) via wxApp::SetAppearance(). This call itself is never deferred – only whether it logs its result immediately is (see logImmediately below); the appearance change has to happen synchronously, before the first top-level window is created.

No-op before wxWidgets 3.3. On Windows the native chrome only picks up the appearance when this is called during startup, before the first top-level window is created – so it must run early in MyApp::OnInit() and not only from wxMaxima::ConfigChanged() at runtime.

Returns a plain description of the result, suitable for wxLogMessage(), or an empty string if there's nothing to report. If logImmediately is true (the default), also logs it via wxLogMessage() before returning – pass false when called before any custom log target has been installed yet (as MyApp::OnInit() must, since it runs before m_logWindow exists), since wxLogMessage() with no custom target falls back to wx's own wxLogGui, which pops up a modal dialog for every message. The caller is then responsible for logging the returned message itself, once a real log target exists.