OGL fixes for wxMotif; added Set/GetClientData to wxMenu in wxMSW/wxMotif/wxStubs.

Sorry, I may be overwriting changes Robert made due to a file copying error.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@971 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
Julian Smart
1998-11-08 22:35:18 +00:00
parent d18ed59a36
commit 3dd4e4e05c
36 changed files with 192 additions and 233 deletions

View File

@@ -16,9 +16,9 @@ utils/ogl/samples/ogledit/*.def
utils/ogl/samples/ogledit/*.xbm
utils/ogl/samples/ogledit/makefile*
utils/ogl/samples/ogledit/*.txt
utils/ogl/samples/ogledit/*.ico
utils/ogl/samples/ogledit/*.bmp
utils/ogl/samples/ogledit/*.xpm
utils/ogl/samples/ogledit/bitmaps/*.bmp
utils/ogl/samples/ogledit/bitmaps/*.gif
utils/ogl/samples/ogledit/bitmaps/*.xbm

View File

@@ -1,79 +1,20 @@
#
# File: makefile.unx
# Author: Julian Smart
# Created: 1993
# Created: 1998
# Updated:
# Copyright: (c) 1993, AIAI, University of Edinburgh
# Copyright: (c) 1998 Julian Smart
#
# "%W% %G%"
#
# Makefile for docview example (UNIX).
# Makefile for OGLEdit example (UNIX).
WXDIR = ../../../..
PROGRAM=ogledit
# All common UNIX compiler flags and options are now in
# this central makefile.
include $(WXDIR)/src/make.env
OBJECTS=$(PROGRAM).o doc.o view.o palette.o
OGLDIR = $(WXDIR)/utils/ogl
OGLINC = $(OGLDIR)/src
OGLLIB = $(OGLDIR)/lib/libogl$(GUISUFFIX).a
EXTRACPPFLAGS=-I$(WXDIR)/utils/ogl/src
EXTRALDLIBS=-logl$(GUISUFFIX)
OBJECTS = $(OBJDIR)/ogledit.$(OBJSUFF) $(OBJDIR)/view.$(OBJSUFF) $(OBJDIR)/doc.$(OBJSUFF) $(OBJDIR)/palette.$(OBJSUFF)
include ../../../../src/makeprog.env
LDFLAGS = $(XLIB) -L$(WXDIR)/lib -L$(OGLDIR)/lib -L$(MFDIR)/lib
XVIEWLDLIBS = -logl_ol -lwx_ol -lxview -lolgx -lX11 -lm $(COMPLIBS)
MOTIFLDLIBS = -logl_motif -lwx_motif -lXm -lXt -lX11 -lm $(COMPLIBS)
HPLDLIBS = -logl_motif -lwx_hp -lXm -lXt -lX11 -lm $(COMPLIBS)
CPPFLAGS = -I$(OGLINC) -I$(PROLOGINC) -I$(MFINC) $(XINCLUDE) $(INC) $(GUI) -DDEBUG='$(DEBUG)' $(DEBUGFLAGS) $(WARN) $(OPTIONS) -DPROLOGIO
.SUFFIXES:
all: $(OBJDIR) ogledit$(GUISUFFIX)
wx_motif:
cd $(WXDIR)/src/x; $(MAKE) -f makefile.unx motif
wx_ol:
cd $(WXDIR)/src/x; $(MAKE) -f makefile.unx xview
motif:
$(MAKE) -f makefile.unx GUISUFFIX=_motif GUI=-Dwx_motif GUISUFFIX=_motif OPT='$(OPT)' LDLIBS='$(MOTIFLDLIBS)' OPTIONS='$(OPTIONS)' DEBUG='$(DEBUG)' WARN='$(WARN)' XLIB='$(XLIB)' XINCLUDE='$(XINCLUDE)' XVIEW_LINK=
xview:
$(MAKE) -f makefile.unx GUI=-Dwx_xview GUISUFFIX=_ol CC=$(CC) OPTIONS='$(OPTIONS)' DEBUG='$(DEBUG)' WARN='$(WARN)' XLIB='$(XLIB)' XINCLUDE='$(XINCLUDE)'
hp:
$(MAKE) -f makefile,unx GUI=-Dwx_motif GUISUFFIX=_hp CC=CC DEBUG='' WARN='-w' \
XINCLUDE='$(HPXINCLUDE)' XLIB='$(HPXLIB)' XVIEW_LINK='' LDLIBS='$(HPLDLIBS)'
$(OBJDIR):
mkdir $(OBJDIR)
ogledit$(GUISUFFIX): $(OBJECTS) $(WXLIB)
$(CC) $(LDFLAGS) -o ogledit$(GUISUFFIX) $(OBJECTS) $(XVIEW_LINK) $(LDLIBS)
$(OBJDIR)/ogledit.$(OBJSUFF): ogledit.$(SRCSUFF) ogledit.h doc.h view.h palette.h
$(CC) -c $(CPPFLAGS) -o $@ ogledit.$(SRCSUFF)
$(OBJDIR)/doc.$(OBJSUFF): doc.$(SRCSUFF) doc.h
$(CC) -c $(CPPFLAGS) -o $@ doc.$(SRCSUFF)
$(OBJDIR)/view.$(OBJSUFF): view.$(SRCSUFF) view.h
$(CC) -c $(CPPFLAGS) -o $@ view.$(SRCSUFF)
$(OBJDIR)/palette.$(OBJSUFF): palette.$(SRCSUFF) palette.h
$(CC) -c $(CPPFLAGS) -o $@ palette.$(SRCSUFF)
clean_motif:
$(MAKE) -f makefile.unx GUISUFFIX=_motif cleanany
clean_ol:
$(MAKE) -f makefile.unx GUISUFFIX=_ol cleanany
clean_hp:
$(MAKE) -f makefile.unx GUISUFFIX=_hp cleanany
cleanany:
rm -f $(OBJECTS) ogledit(GUISUFFIX) core

View File

@@ -33,6 +33,10 @@
#include "doc.h"
#include "view.h"
#if defined(__WXGTK__) || defined(__WXMOTIF__)
#include "ogl.xpm"
#endif
// A macro needed for some compilers (AIX) that need 'main' to be defined
// in the application itself.
IMPLEMENT_APP(MyApp)
@@ -63,12 +67,7 @@ bool MyApp::OnInit(void)
frame = new MyFrame(myDocManager, NULL, "OGLEdit Demo", wxPoint(0, 0), wxSize(500, 400), wxDEFAULT_FRAME_STYLE);
//// Give it an icon
#ifdef __WXMSW__
frame->SetIcon(wxIcon("ogl_icn"));
#endif
#ifdef __X__
frame->SetIcon(wxIcon("ogl.xbm"));
#endif
frame->SetIcon(wxICON(ogl));
//// Make a menubar
wxMenu *file_menu = new wxMenu;

View File

@@ -1,4 +1,4 @@
ogl_icn ICON ogl.ico
ogl ICON ogl.ico
TOOL1 BITMAP "bitmaps/tool1.bmp"
TOOL2 BITMAP "bitmaps/tool2.bmp"

View File

@@ -24,7 +24,7 @@
#include <wx/wx.h>
#endif
#include <wx/tbar95.h>
#include <wx/toolbar.h>
#include <ctype.h>
#include <stdlib.h>
@@ -35,6 +35,15 @@
#include "ogledit.h"
#include "palette.h"
// Include pixmaps
#if defined(__WXGTK__) || defined(__WXMOTIF__)
#include "bitmaps/arrow.xpm"
#include "bitmaps/tool1.xpm"
#include "bitmaps/tool2.xpm"
#include "bitmaps/tool3.xpm"
#include "bitmaps/tool4.xpm"
#endif
/*
* Object editor tool palette
*
@@ -82,13 +91,12 @@ EditorToolPalette *MyApp::CreatePalette(wxFrame *parent)
wxBitmap PaletteTool3("TOOL3");
wxBitmap PaletteTool4("TOOL4");
wxBitmap PaletteArrow("ARROWTOOL");
#endif
#ifdef __X__
wxBitmap PaletteTool1(tool1_bits, tool1_width, tool1_height);
wxBitmap PaletteTool2(tool2_bits, tool2_width, tool2_height);
wxBitmap PaletteTool3(tool3_bits, tool3_width, tool3_height);
wxBitmap PaletteTool4(tool4_bits, tool4_width, tool4_height);
wxBitmap PaletteArrow(arrow_bits, arrow_width, arrow_height);
#elif defined(__WXGTK__) || defined(__WXMOTIF__)
wxBitmap PaletteTool1(tool1_xpm);
wxBitmap PaletteTool2(tool2_xpm);
wxBitmap PaletteTool3(tool3_xpm);
wxBitmap PaletteTool4(tool4_xpm);
wxBitmap PaletteArrow(arrow_xpm);
#endif
EditorToolPalette *palette = new EditorToolPalette(parent, wxPoint(0, 0), wxSize(-1, -1), wxTB_HORIZONTAL);

View File

@@ -77,7 +77,7 @@ void DiagramView::OnDraw(wxDC *dc)
/* You might use THIS code if you were scaling
* graphics of known size to fit on the page.
*/
float w, h;
int w, h;
// We need to adjust for the graphic size, a formula will be added
float maxX = 900;

View File

@@ -24,9 +24,7 @@
#include <wx/wx.h>
#endif
#ifdef PROLOGIO
#include <wx/wxexpr.h>
#endif
#if wxUSE_IOSTREAMH
#include <iostream.h>
@@ -1827,8 +1825,8 @@ void wxShape::WriteRegions(wxExpr *clause)
// region1 = (regionName regionText x y width height minWidth minHeight proportionX proportionY
// formatMode fontSize fontFamily fontStyle fontWeight textColour)
wxExpr *regionExpr = new wxExpr(wxExprList);
regionExpr->Append(new wxExpr(wxExprString, (region->m_regionName ? region->m_regionName : "")));
regionExpr->Append(new wxExpr(wxExprString, (region->m_regionText ? region->m_regionText : "")));
regionExpr->Append(new wxExpr(wxExprString, region->m_regionName));
regionExpr->Append(new wxExpr(wxExprString, region->m_regionText));
regionExpr->Append(new wxExpr(region->m_x));
regionExpr->Append(new wxExpr(region->m_y));
@@ -1846,10 +1844,10 @@ void wxShape::WriteRegions(wxExpr *clause)
regionExpr->Append(new wxExpr((long)(region->m_font ? region->m_font->GetFamily() : wxDEFAULT)));
regionExpr->Append(new wxExpr((long)(region->m_font ? region->m_font->GetStyle() : wxDEFAULT)));
regionExpr->Append(new wxExpr((long)(region->m_font ? region->m_font->GetWeight() : wxNORMAL)));
regionExpr->Append(new wxExpr(wxExprString, region->m_textColour ? region->m_textColour : "BLACK"));
regionExpr->Append(new wxExpr(wxExprString, region->m_textColour));
// New members for pen colour/style
regionExpr->Append(new wxExpr(wxExprString, region->m_penColour ? region->m_penColour : "BLACK"));
regionExpr->Append(new wxExpr(wxExprString, region->m_penColour));
regionExpr->Append(new wxExpr((long)region->m_penStyle));
// Formatted text:

View File

@@ -10,6 +10,7 @@
/////////////////////////////////////////////////////////////////////////////
#ifdef __GNUG__
#pragma implementation "basicp.h"
#endif
// For compilers that support precompilation, includes "wx.h".
@@ -23,9 +24,7 @@
#include <wx/wx.h>
#endif
#ifdef PROLOGIO
#include <wx/wxexpr.h>
#endif
#if wxUSE_IOSTREAMH
#include <iostream.h>

View File

@@ -24,9 +24,7 @@
#include <wx/wx.h>
#endif
#ifdef PROLOGIO
#include <wx/wxexpr.h>
#endif
#include "basic.h"
#include "basicp.h"

View File

@@ -24,9 +24,7 @@
#include <wx/wx.h>
#endif
#ifdef PROLOGIO
#include <wx/wxexpr.h>
#endif
#if wxUSE_IOSTREAMH
#include <iostream.h>

View File

@@ -24,9 +24,7 @@
#include <wx/wx.h>
#endif
#ifdef PROLOGIO
#include <wx/wxexpr.h>
#endif
#include "basic.h"
#include "basicp.h"
@@ -1716,7 +1714,7 @@ void wxDivisionShape::EditEdge(int side)
// Popup menu
void wxDivisionShape::PopupMenu(double x, double y)
{
oglPopupDivisionMenu->SetClientData((char *)this);
oglPopupDivisionMenu->SetClientData((void *)this);
if (m_leftSide)
oglPopupDivisionMenu->Enable(DIVISION_MENU_EDIT_LEFT_EDGE, TRUE);
else

View File

@@ -24,9 +24,7 @@
#include <wx/wx.h>
#endif
#ifdef PROLOGIO
#include <wx/wxexpr.h>
#endif
#include "basic.h"
#include "constrnt.h"

View File

@@ -24,9 +24,7 @@
#include <wx/wx.h>
#endif
#ifdef PROLOGIO
#include <wx/wxexpr.h>
#endif
#include "basic.h"
#include "basicp.h"

View File

@@ -11,6 +11,7 @@
#ifdef __GNUG__
#pragma implementation "drawn.h"
#pragma implementation "drawnp.h"
#endif
// For compilers that support precompilation, includes "wx.h".
@@ -24,9 +25,7 @@
#include <wx/wx.h>
#endif
#ifdef PROLOGIO
#include <wx/wxexpr.h>
#endif
#include "basic.h"
#include "basicp.h"

View File

@@ -11,6 +11,7 @@
#ifdef __GNUG__
#pragma implementation "lines.h"
#pragma implementation "linesp.h"
#endif
// For compilers that support precompilation, includes "wx.h".
@@ -24,9 +25,7 @@
#include <wx/wx.h>
#endif
#ifdef PROLOGIO
#include <wx/wxexpr.h>
#endif
#if wxUSE_IOSTREAMH
#include <iostream.h>
@@ -1424,7 +1423,7 @@ void wxLineShape::WriteAttributes(wxExpr *clause)
head_list->Append(new wxExpr((long)head->GetArrowEnd()));
head_list->Append(new wxExpr(head->GetXOffset()));
head_list->Append(new wxExpr(head->GetArrowSize()));
head_list->Append(new wxExpr(wxExprString, (head->GetName() ? head->GetName() : "")));
head_list->Append(new wxExpr(wxExprString, head->GetName()));
head_list->Append(new wxExpr(head->GetId()));
// New members of wxArrowHead

View File

@@ -1,125 +1,42 @@
#
# File: makefile.unx
# Author: Julian Smart
# Created: 1996
# Created: 1998
# Updated:
# Copyright: (c) 1996 Julian Smart
# Copyright: (c) 1998
#
# "%W% %G%"
#
# Makefile for object graphics library (UNIX).
# Makefile for OGL library, Unix
WXDIR = ../../..
include ../../../src/make.env
# All common UNIX compiler flags and options are now in
# this central makefile.
include $(WXDIR)/src/make.env
OGLLIB=$(WXDIR)/lib/libogl$(GUISUFFIX).a
PRODIR = $(WXDIR)/utils/prologio
PROINC = $(PRODIR)/src
PROLIB = $(PRODIR)/lib/libproio$(GUISUFFIX).a
LIB_CPP_SRC=\
\
basic.o\
basic2.o\
canvas.o\
ogldiag.o\
lines.o\
misc.o\
divided.o\
constrnt.o\
composit.o\
drawn.o\
bmpshape.o\
mfutils.o
MFDIR = $(WXDIR)/utils/mfutils
MFINC = $(MFDIR)/src
all: $(OGLLIB)
OGLDIR = $(WXDIR)/utils/ogl
OGLLIB = $(OGLDIR)/lib/libogl$(GUISUFFIX).a
# Define library objects
OBJECTS=\
$(LIB_CPP_SRC:.cpp=.o)
OBJECTS = $(OBJDIR)/basic.o $(OBJDIR)/basic2.o $(OBJDIR)/canvas.o $(OBJDIR)/lines.o $(OBJDIR)/misc.o\
$(OBJDIR)/divided.o $(OBJDIR)/constrnt.o $(OBJDIR)/composit.o $(OBJDIR)/drawn.o\
$(OBJDIR)/bitmap.o $(OBJDIR)/ogldiag.o
CPPFLAGS = -I$(PROINC) -I$(MFINC) $(XINCLUDE) $(INC) $(GUI) -DDEBUG='$(DEBUG)' $(DEBUGFLAGS) $(WARN) $(OPTIONS) -DPROLOGIO
all: $(OBJDIR) $(OGLLIB)
.SUFFIXES:
wx:
cd $(WXDIR)/src/x; $(MAKE) -f makefile.unx OPT=$(OPT) GUI=$(GUI)
motif:
$(MAKE) -f makefile.unx GUI=-Dwx_motif OPT=$(OPT) GUISUFFIX=_motif LDLIBS='$(MOTIFLDLIBS)' XVIEW_LINK=
xview:
$(MAKE) -f makefile.unx GUI=-Dwx_xview OPT=$(OPT) GUISUFFIX=_ol
hp:
$(MAKE) -f makefile.unx GUI=-Dwx_motif GUISUFFIX=_hp CC=CC DEBUG='$(DEBUG)' DEBUGFLAGS='-g' OPT='' WARN='-w' \
XINCLUDE='$(HPXINCLUDE)' XLIB='$(HPXLIB)' XVIEW_LINK='' \
LDLIBS='$(HPLDLIBS)'
$(OBJDIR):
mkdir $(OBJDIR)
$(OGLLIB): $(OBJECTS)
rm -f $@
$(OGLLIB) : $(OBJECTS)
ar $(AROPTIONS) $@ $(OBJECTS)
$(RANLIB) $@
$(OBJDIR)/basic.o: basic.$(SRCSUFF) basic.h lines.h misc.h canvas.h
$(CC) -c $(CPPFLAGS) -o $@ basic.$(SRCSUFF)
$(OBJDIR)/basic2.o: basic2.$(SRCSUFF) basic.h lines.h misc.h canvas.h
$(CC) -c $(CPPFLAGS) -o $@ basic2.$(SRCSUFF)
$(OBJDIR)/canvas.o: canvas.$(SRCSUFF) basic.h misc.h canvas.h
$(CC) -c $(CPPFLAGS) -o $@ canvas.$(SRCSUFF)
$(OBJDIR)/lines.o: lines.$(SRCSUFF) basic.h misc.h canvas.h lines.h
$(CC) -c $(CPPFLAGS) -o $@ lines.$(SRCSUFF)
$(OBJDIR)/misc.o: misc.$(SRCSUFF) basic.h misc.h constrnt.h
$(CC) -c $(CPPFLAGS) -o $@ misc.$(SRCSUFF)
$(OBJDIR)/divided.o: divided.$(SRCSUFF) basic.h misc.h canvas.h divided.h
$(CC) -c $(CPPFLAGS) -o $@ divided.$(SRCSUFF)
$(OBJDIR)/constrnt.o: constrnt.$(SRCSUFF) basic.h constrnt.h
$(CC) -c $(CPPFLAGS) -o $@ constrnt.$(SRCSUFF)
$(OBJDIR)/composit.o: composit.$(SRCSUFF) basic.h misc.h canvas.h constrnt.h composit.h
$(CC) -c $(CPPFLAGS) -o $@ composit.$(SRCSUFF)
$(OBJDIR)/drawn.o: drawn.$(SRCSUFF) basic.h misc.h canvas.h drawn.h drawnp.h
$(CC) -c $(CPPFLAGS) -o $@ drawn.$(SRCSUFF)
$(OBJDIR)/bitmap.o: bitmap.$(SRCSUFF) basic.h misc.h canvas.h bitmap.h
$(CC) -c $(CPPFLAGS) -o $@ bitmap.$(SRCSUFF)
$(OBJDIR)/ogldiag.o: ogldiag.$(SRCSUFF) basic.h misc.h canvas.h bitmap.h ogldiag.h
$(CC) -c $(CPPFLAGS) -o $@ ogldiag.$(SRCSUFF)
HTMLDIR=/home/hardy/html/wx/manuals
docs: ps xlp
ps: $(OGLDIR)/docs/ogl.ps
xlp: $(OGLDIR)/docs/ogl.xlp
html: $(HTMLDIR)/ogl/ogl_contents.html
$(OGLDIR)/docs/ogl.xlp: $(OGLDIR)/docs/classes.tex $(OGLDIR)/docs/ogl.tex $(OGLDIR)/docs/topics.tex $(OGLDIR)/docs/changes.tex $(OGLDIR)/docs/intro.tex
cd ../docs; tex2rtf ogl.tex tmp.xlp -xlp -twice
sed -e "s/WXHELPCONTENTS/OGL Manual/g" < $(OGLDIR)/docs/tmp.xlp > $(OGLDIR)/docs/ogl.xlp
/bin/rm -f $(OGLDIR)/docs/tmp.xlp
$(HTMLDIR)/ogl/ogl_contents.html: $(OGLDIR)/docs/classes.tex $(OGLDIR)/docs/ogl.tex $(OGLDIR)/docs/topics.tex $(OGLDIR)/docs/changes.tex $(OGLDIR)/docs/intro.tex
cd ../docs; tex2rtf ogl.tex $(HTMLDIR)/ogl/ogl -twice -html
$(OGLDIR)/docs/ogl.dvi: $(OGLDIR)/docs/ogl.tex $(OGLDIR)/docs/classes.tex $(OGLDIR)/docs/topics.tex $(OGLDIR)/docs/changes.tex $(OGLDIR)/docs/intro.tex
cd $(OGLDIR)/docs; latex ogl; latex ogl; makeindex ogl; latex ogl; \
$(OGLDIR)/docs/ogl.ps: $(OGLDIR)/docs/ogl.dvi
cd $(OGLDIR)/docs; dvips -f -r < ogl.dvi > ogl.ps
cleaneach:
rm -f $(OBJECTS) $(OGLLIB) core
clean_motif:
$(MAKE) -f makefile.unx GUISUFFIX=_motif cleaneach
clean_ol:
$(MAKE) -f makefile.unx GUISUFFIX=_ol cleaneach
clean_hp:
$(MAKE) -f makefile.unx GUISUFFIX=_hp cleaneach
clean:
rm -f $(OBJECTS) $(OGLLIB)

View File

@@ -24,9 +24,7 @@
#include <wx/wx.h>
#endif
#ifdef PROLOGIO
#include <wx/wxexpr.h>
#endif
#include <wx/types.h>

View File

@@ -24,9 +24,7 @@
#include <wx/wx.h>
#endif
#ifdef PROLOGIO
#include <wx/wxexpr.h>
#endif
#if wxUSE_IOSTREAMH
#include <iostream.h>