https://github.com/jrincayc/ucblogo-code
Revision 22340446dc6d5107825d86f853372c4f57972e27 authored by Dan Malec on 18 December 2020, 16:00:05 UTC, committed by Dan Malec on 18 December 2020, 17:31:53 UTC
* Builds and caches wxWidgets for three target platforms - Linux, OSX, Windows
* Builds on Linux, producing the PDF, source tar.gz, and source .zip
* Builds on OSX and Windows, leveraging the the PDF from the Linux build
* End state should be 5 artifacts - PDF, .tar.gx, .zip, .dmg, .exe

CD motivated changes:
* Allow overriding of MinGw bin directory and wxWidgets directory in makefile.msys
* Added -static flag to LDFLAGS in makefile.msys
* Removed -lctl3d32 from LIBS in makefile.msys
* Commented out makelib and Messages build targets in makefile.msys

6.2 specific changes:
* Added VERSION to config.h.msys
* Added -DHAVE_CONFIG_H to CFLAGS and CXXFLAGS in makefile.msys
* Updated OutputBaseFilename to ucblogo62setup in inno/ucblogo.iss
* Updated PDF/texi filename from usermanual.* to ucblogo.* in inno/ucblogo.iss and makefile.msys
1 parent 9193bdc
Raw File
Tip revision: 22340446dc6d5107825d86f853372c4f57972e27 authored by Dan Malec on 18 December 2020, 16:00:05 UTC
CD workflow - build (but do not release) release candidate artifacts.
Tip revision: 2234044
LogoFrame.h
#ifndef BASIC_H
#define BASIC_H
#include <wx/wx.h>
#include <wx/evtloop.h>
#include "logo.h"

// This is the Top level Application Class
class LogoApplication : public wxApp
{
  public:
	virtual bool OnInit();
	virtual int OnExit();
        virtual int OnRun();	
};

// This is the Event Manager for the logo application
// allows us to process events while waiting (single-thread wxLogo)

class LogoEventManager {
  public:
    LogoEventManager(LogoApplication *logoApp);
    void ProcessEvents(int force_yield = 0);
  private:
    LogoApplication *m_logoApp;
};

// This is the Top level frame for logo
class LogoFrame : public wxFrame
{
  public:
	LogoFrame( const wxChar *title,
                int xpos=50, int ypos=50,
                int width=900, int height=500);

        void AdjustSize();
	void SetUpEditMenu();
	void SetUpMenu();
	void OnPrintText(wxCommandEvent&);
	void OnPrintTextPrev(wxCommandEvent&);
        void OnSelectFont(wxCommandEvent&);
	void OnIncreaseFont(wxCommandEvent&);
	void OnDecreaseFont(wxCommandEvent&);
private:
	void OnQuit(wxCommandEvent& WXUNUSED(event));
	void OnSave(wxCommandEvent& WXUNUSED(event));
	void OnSaveAs(wxCommandEvent& WXUNUSED(event));
	void OnLoad(wxCommandEvent& WXUNUSED(event));
	void OnTurtlePrintPreview(wxCommandEvent& WXUNUSED(event));
	void DoStop(wxCommandEvent& WXUNUSED(event));
	void DoPause(wxCommandEvent& WXUNUSED(event));
	void DoPaste(wxCommandEvent&);
	void DoCopy(wxCommandEvent&);
	void OnPrintTurtle(wxCommandEvent&);
	
	void OnEditCloseAccept(wxCommandEvent& WXUNUSED(event));
	void OnEditCloseReject(wxCommandEvent& WXUNUSED(event));
	void OnEditPrint(wxCommandEvent& WXUNUSED(event));
	void OnEditCopy(wxCommandEvent& WXUNUSED(event));
	void OnEditCut(wxCommandEvent& WXUNUSED(event));
	void OnEditFind(wxCommandEvent& WXUNUSED(event));
	void OnEditFindNext(wxCommandEvent& WXUNUSED(event));
	void OnEditPaste(wxCommandEvent& WXUNUSED(event));
	void OnEditSave(wxCommandEvent& WXUNUSED(event));
	void OnEditLoad(wxCommandEvent& WXUNUSED(event));

        void OnCloseWindow(wxCloseEvent& event);
	
	DECLARE_EVENT_TABLE()
};


#endif
back to top