mirror of
git://git.savannah.nongnu.org/eliot.git
synced 2024-11-17 07:48:27 +01:00
b7032e2d78
This simplifies the code in many places, and allows inheritance of the game mode classes (Training, Duplicate and FreeGame). - A Tile is no more an unsigned char, but a class: it should help supporting i18n of the game. The Dic library still uses unsigned chars though. - Improved the configure script, to enable/disable the compilation of some interfaces. - Added a ncurses interface, much nicer than the text one. The game mode and the number of players are currently hardcoded, it is not possible to change them interactively (yet). - Repaired the save/load functions. NOTE: The wxWindows interface compiles, but is completely broken. I'm afraid it needs a full rewrite (to support the various game modes in particular).
499 lines
16 KiB
C++
499 lines
16 KiB
C++
/* Eliot */
|
||
/* Copyright (C) 1999 Antoine Fraboulet */
|
||
/* Antoine.Fraboulet@free.fr */
|
||
/* */
|
||
/* This program is free software; you can redistribute it and/or modify */
|
||
/* it under the terms of the GNU General Public License as published by */
|
||
/* the Free Software Foundation; either version 2 of the License, or */
|
||
/* (at your option) any later version. */
|
||
/* */
|
||
/* This program is distributed in the hope that it will be useful, */
|
||
/* but WITHOUT ANY WARRANTY; without even the implied warranty of */
|
||
/* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the */
|
||
/* GNU General Public License for more details. */
|
||
/* */
|
||
/* You should have received a copy of the GNU General Public License */
|
||
/* along with this program; if not, write to the Free Software */
|
||
/* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA */
|
||
|
||
/* $Id: confdimdlg.cc,v 1.3 2005/02/05 11:14:56 ipkiss Exp $ */
|
||
|
||
#include "wx/printdlg.h"
|
||
|
||
#include "ewx.h"
|
||
|
||
#include "dic.h"
|
||
#include "game.h"
|
||
|
||
#include "configdb.h"
|
||
#include "printout.h"
|
||
#include "confdimdlg.h"
|
||
|
||
enum {
|
||
Button_Ok,
|
||
Button_Cancel,
|
||
Button_Printer,
|
||
Button_Page,
|
||
Button_Save,
|
||
Button_FontHeader,
|
||
Button_FontText
|
||
};
|
||
|
||
BEGIN_EVENT_TABLE(ConfDimDlg,wxDialog)
|
||
EVT_CLOSE (ConfDimDlg::OnCloseWindow)
|
||
EVT_BUTTON(Button_Ok, ConfDimDlg::OnButtonOk)
|
||
EVT_BUTTON(Button_Save, ConfDimDlg::OnButtonSave)
|
||
EVT_BUTTON(Button_Ok, ConfDimDlg::OnButtonOk)
|
||
EVT_BUTTON(Button_Cancel, ConfDimDlg::OnButtonCancel)
|
||
EVT_BUTTON(Button_Printer, ConfDimDlg::OnConfPrinter)
|
||
EVT_BUTTON(Button_Page, ConfDimDlg::OnConfPage)
|
||
EVT_BUTTON(Button_FontHeader, ConfDimDlg::OnConfFontHead)
|
||
EVT_BUTTON(Button_FontText, ConfDimDlg::OnConfFontText)
|
||
END_EVENT_TABLE()
|
||
|
||
|
||
static int
|
||
max(int i,int j)
|
||
{
|
||
return i>j ? i : j;
|
||
}
|
||
|
||
|
||
ConfDimDlg::ConfDimDlg(wxWindow* parent, wxPrintData pd, wxPageSetupData psd)
|
||
: wxDialog(parent,-1,wxT("Eliot : Impression"))
|
||
{
|
||
int i;
|
||
wxString choices[3];
|
||
choices[0] = wxT("gauche");
|
||
choices[1] = wxT("centr<EFBFBD>");
|
||
choices[2] = wxT("droite");
|
||
wxStaticText* Hcomment[5];
|
||
wxRect Hcommentrect[5];
|
||
wxRect Htitlerect[5];
|
||
wxRect Hjustrect[5];
|
||
wxRect Hspacesrect[5];
|
||
wxStaticText* Tcomment[5];
|
||
wxRect Tcommentrect[5];
|
||
wxRect Tdimrect[5];
|
||
wxStaticText* Tunit[5];
|
||
wxRect Tjustrect[5];
|
||
wxRect Tspacesrect[5];
|
||
|
||
printdata = pd;
|
||
pagesetupdata = psd;
|
||
|
||
//
|
||
// Head
|
||
// Hcomment Htitle Hjust Hspaces
|
||
// Text
|
||
// TComment Tdim Tjust Tspaces
|
||
//
|
||
|
||
#define VSPACE 10
|
||
#define HSPACE 5
|
||
|
||
// --------------
|
||
// Header Section
|
||
// --------------
|
||
#define HFONT wxPoint(HSPACE,VSPACE)
|
||
#define HCOMMENTY(i) (i==0 ? bfontheadrect.GetBottom() + VSPACE : \
|
||
VSPACE + Hcommentrect[i-1].GetBottom())
|
||
#define HCOMMENT(i) wxPoint(HSPACE,HCOMMENTY(i)+2)
|
||
#define HTITLE(i) wxPoint(2*HSPACE+max(Hcommentrect[0].GetRight(), \
|
||
Tcommentrect[0].GetRight()),HCOMMENTY(i))
|
||
#define HJUST(i) wxPoint(Htitlerect[0].GetRight() + HSPACE,HCOMMENTY(i))
|
||
#define HSPACES(i) wxPoint(Hjustrect[0].GetRight() + HSPACE,HCOMMENTY(i))
|
||
|
||
// ------------
|
||
// Text Section
|
||
// ------------
|
||
#define TFONT wxPoint(HSPACE, Hcommentrect[4].GetBottom() + 2*VSPACE)
|
||
#define TCOMMENTY(i) (i==0 ? bfonttextrect.GetBottom() + VSPACE : \
|
||
VSPACE + Tcommentrect[i-1].GetBottom())
|
||
#define TCOMMENT(i) wxPoint(HSPACE, TCOMMENTY(i)+2)
|
||
#define TDIM(i) wxPoint(2*HSPACE+max(Tcommentrect[0].GetRight(), \
|
||
Hcommentrect[0].GetRight()),TCOMMENTY(i))
|
||
#define TJUST(i) wxPoint(Htitlerect[0].GetRight() + HSPACE, TCOMMENTY(i))
|
||
#define TSPACES(i) wxPoint(Hjustrect[0].GetRight() + HSPACE, TCOMMENTY(i))
|
||
|
||
|
||
#define ESPSIZE wxSize(spacerect.GetRight() - spacerect.GetLeft(),-1)
|
||
|
||
|
||
wxStaticText* justif = new wxStaticText(this,-1,wxT("Justification"),wxPoint(0,0));
|
||
wxRect justifrect = justif->GetRect();
|
||
wxStaticText* space = new wxStaticText(this,-1,wxT("Espacement"),wxPoint(0,0));
|
||
wxRect spacerect = space->GetRect();
|
||
|
||
// heading, first part
|
||
bfontheader = new wxButton(this,Button_FontHeader,wxT("Caract<EFBFBD>res"),HFONT);
|
||
wxRect bfontheadrect = bfontheader->GetRect();
|
||
for(i=0; i<5; i++)
|
||
{
|
||
wxString txt;
|
||
txt << wxT("Titre colonne ") << (i+1);
|
||
Hcomment[i] = new wxStaticText(this,-1,txt,HCOMMENT(i));
|
||
Hcommentrect[i] = Hcomment[i]->GetRect();
|
||
}
|
||
|
||
// text, first part
|
||
bfonttext = new wxButton(this,Button_FontText,wxT("Caract<EFBFBD>res"),TFONT);
|
||
wxRect bfonttextrect = bfonttext->GetRect();
|
||
for(i=0; i<5; i++)
|
||
{
|
||
wxString txt;
|
||
txt << wxT("Texte colonne ") << (i+1);
|
||
Tcomment[i] = new wxStaticText(this,-1,txt,TCOMMENT(i),wxSize(-1,-1));
|
||
Tcommentrect[i] = Tcomment[i]->GetRect();
|
||
}
|
||
|
||
// heading, second part
|
||
for(i=0; i<5; i++)
|
||
{
|
||
Htitle[i] = new wxTextCtrl(this,-1,wxT(""),HTITLE(i),wxSize(100,-1));
|
||
Htitlerect[i] = Htitle[i]->GetRect();
|
||
Htitle[i]->SetToolTip(wxT("Texte du titre de la colonne"));
|
||
|
||
Hjust[i] = new wxChoice(this,-1,HJUST(i),wxSize(-1,-1),3,choices);
|
||
Hjustrect[i] = Hjust[i]->GetRect();
|
||
Hjust[i]->SetToolTip(wxT("Justification du titre de la colonne"));
|
||
|
||
Hspaces[i] = new wxTextCtrl(this,-1,wxT("00"),HSPACES(i),ESPSIZE);
|
||
Hspacesrect[i] = Hspaces[i]->GetRect();
|
||
Hspaces[i]->SetToolTip(wxT("Espacement des caract<63>res du titre"));
|
||
}
|
||
|
||
|
||
// text, second part
|
||
for(i=0; i<5; i++)
|
||
{
|
||
Tdim[i] = new wxTextCtrl(this,-1,wxT(""),TDIM(i),wxSize(50,-1));
|
||
Tdimrect[i] = Tdim[i]->GetRect();
|
||
Tdim[i]->SetToolTip(wxT("Dimension int<6E>rieure de la colonne (en mm)"));
|
||
|
||
Tunit[i] = new wxStaticText(this,-1,wxT("mm"),
|
||
wxPoint(Tdimrect[i].GetRight()+
|
||
HSPACE,TCOMMENTY(i)+2),
|
||
wxSize(-1,-1));
|
||
|
||
Tjust[i] = new wxChoice(this,-1,TJUST(i),wxSize(-1,-1),3,choices);
|
||
Tjustrect[i] = Tjust[i]->GetRect();
|
||
Tjust[i]->SetToolTip(wxT("Justification du texte de la colonne"));
|
||
|
||
Tspaces[i] = new wxTextCtrl(this,-1,wxT(""),TSPACES(i),ESPSIZE);
|
||
Tspacesrect[i] = Tspaces[i]->GetRect();
|
||
Tspaces[i]->SetToolTip(wxT("Espacement des caract<63>res"));
|
||
}
|
||
|
||
justif->Move(wxPoint(Tjustrect[0].GetLeft(),bfontheadrect.GetBottom()
|
||
- (justifrect.GetBottom() - justifrect.GetTop())));
|
||
justifrect = justif->GetRect();
|
||
space->Move(wxPoint(Tspacesrect[0].GetLeft(),justifrect.GetTop()));
|
||
spacerect = space->GetRect();
|
||
|
||
|
||
|
||
#define YPOS(i) (2*VSPACE + Tcommentrect[4].GetBottom() + \
|
||
i*(VSPACE+Tspacesrect[0].GetBottom()-Tspacesrect[0].GetTop()))
|
||
//#define YPOS(i) TCOMMENTY(i+1)
|
||
//#define COL2START (4*HSPACE + Tspacesrect[0].GetRight())
|
||
#define COL2START HSPACE
|
||
|
||
// 370x270 image
|
||
|
||
#define XPOSLEFT (HSPACE + max(dyh1textrect.GetRight(), \
|
||
max(dyt1textrect.GetRight(), dxbegintextrect.GetRight() )))
|
||
#define XPOSRIGHT (HSPACE + max(dyh2textrect.GetRight(), \
|
||
max(dyt2textrect.GetRight(), dxendtextrect.GetRight() )))
|
||
|
||
#define DYH1COMMENT wxPoint(COL2START, YPOS(0)+2)
|
||
#define DYH1TEXT wxPoint(XPOSLEFT, YPOS(0))
|
||
#define DYH1UNIT wxPoint(dyh1rect.GetRight() + HSPACE, YPOS(0))
|
||
|
||
#define DYH2COMMENT wxPoint(3*HSPACE + dyh1mmrect.GetRight(), YPOS(0)+2)
|
||
#define DYH2TEXT wxPoint(XPOSRIGHT, YPOS(0))
|
||
#define DYH2UNIT wxPoint(dyh2rect.GetRight() + HSPACE, YPOS(0))
|
||
|
||
#define DYT1COMMENT wxPoint(COL2START, YPOS(1)+2)
|
||
#define DYT1TEXT wxPoint(XPOSLEFT, YPOS(1))
|
||
#define DYT1UNIT wxPoint(dyt1rect.GetRight() + HSPACE, YPOS(1))
|
||
|
||
#define DYT2COMMENT wxPoint(3*HSPACE + dyt1mmrect.GetRight(), YPOS(1)+2)
|
||
#define DYT2TEXT wxPoint(XPOSRIGHT, YPOS(1))
|
||
#define DYT2UNIT wxPoint(dyt2rect.GetRight() + HSPACE, YPOS(1))
|
||
|
||
#define DXBEGINCOMMENT wxPoint(COL2START, YPOS(2)+2)
|
||
#define DXBEGINTEXT wxPoint(XPOSLEFT, YPOS(2))
|
||
#define DXBEGINUNIT wxPoint(dxbeginrect.GetRight() + HSPACE, YPOS(2))
|
||
|
||
#define DXENDCOMMENT wxPoint(3*HSPACE + dxbeginmmrect.GetRight(), YPOS(2)+2)
|
||
#define DXENDTEXT wxPoint(XPOSRIGHT, YPOS(2))
|
||
#define DXENDUNIT wxPoint(dxendrect.GetRight() + HSPACE, YPOS(2))
|
||
|
||
#define DIM wxSize(30,-1)
|
||
|
||
// Left part
|
||
wxStaticText* dyh1text = new wxStaticText(this,-1,wxT("Titre esp. sup."),DYH1COMMENT,wxSize(-1,-1));
|
||
wxRect dyh1textrect = dyh1text->GetRect();
|
||
wxStaticText* dyt1text = new wxStaticText(this,-1,wxT("Texte esp. sup."),DYT1COMMENT,wxSize(-1,-1));
|
||
wxRect dyt1textrect = dyt1text->GetRect();
|
||
wxStaticText* dxbegintext = new wxStaticText(this,-1,wxT("Texte esp. gauche."),DXBEGINCOMMENT,wxSize(-1,-1));
|
||
wxRect dxbegintextrect = dxbegintext->GetRect();
|
||
|
||
dyh1 = new wxTextCtrl(this,-1,wxT("00"),DYH1TEXT,DIM);
|
||
wxRect dyh1rect = dyh1->GetRect();
|
||
wxStaticText* dyh1mm = new wxStaticText(this,-1,wxT("mm"),DYH1UNIT,wxSize(-1,-1));
|
||
wxRect dyh1mmrect = dyh1mm->GetRect();
|
||
dyt1 = new wxTextCtrl(this,-1,wxT("00"),DYT1TEXT,DIM);
|
||
wxRect dyt1rect = dyt1->GetRect();
|
||
wxStaticText* dyt1mm = new wxStaticText(this,-1,wxT("mm"),DYT1UNIT,wxSize(-1,-1));
|
||
wxRect dyt1mmrect = dyt1mm->GetRect();
|
||
dxbegin = new wxTextCtrl(this,-1,wxT("00"),DXBEGINTEXT,DIM);
|
||
wxRect dxbeginrect = dxbegin->GetRect();
|
||
wxStaticText* dxbeginmm = new wxStaticText(this,-1,wxT("mm"),DXBEGINUNIT,wxSize(-1,-1));
|
||
wxRect dxbeginmmrect = dxbeginmm->GetRect();
|
||
|
||
// Right part
|
||
wxStaticText* dyh2text = new wxStaticText(this,-1,wxT("Titre esp. inf."),DYH2COMMENT,wxSize(-1,-1));
|
||
wxRect dyh2textrect = dyh2text->GetRect();
|
||
wxStaticText* dyt2text = new wxStaticText(this,-1,wxT("Texte esp. inf."),DYT2COMMENT,wxSize(-1,-1));
|
||
wxRect dyt2textrect = dyt2text->GetRect();
|
||
wxStaticText* dxendtext = new wxStaticText(this,-1,wxT("Texte esp. droit."),DXENDCOMMENT,wxSize(-1,-1));
|
||
wxRect dxendtextrect = dxendtext->GetRect();
|
||
|
||
dyh2 = new wxTextCtrl(this,-1,wxT("00"),DYH2TEXT,DIM);
|
||
wxRect dyh2rect = dyh2->GetRect();
|
||
wxStaticText* dyh2mm = new wxStaticText(this,-1,wxT("mm"),DYH2UNIT,wxSize(-1,-1));
|
||
wxRect dyh2mmrect = dyh2mm->GetRect();
|
||
dyt2 = new wxTextCtrl(this,-1,wxT("00"),DYT2TEXT,DIM);
|
||
wxRect dyt2rect = dyt2->GetRect();
|
||
wxStaticText* dyt2mm = new wxStaticText(this,-1,wxT("mm"),DYT2UNIT,wxSize(-1,-1));
|
||
wxRect dyt2mmrect = dyt2mm->GetRect();
|
||
dxend = new wxTextCtrl(this,-1,wxT("00"),DXENDTEXT,DIM);
|
||
wxRect dxendrect = dxend->GetRect();
|
||
wxStaticText* dxendmm = new wxStaticText(this,-1,wxT("mm"),DXENDUNIT,wxSize(-1,-1));
|
||
wxRect dxendmmrect = dxendmm->GetRect();
|
||
|
||
// shutdown warnings
|
||
{int t = dyh2mmrect.GetTop() + dyt2mmrect.GetTop() + dxendmmrect.GetTop(); t++; }
|
||
|
||
#define BHSPACE 1
|
||
#define BPOS (2*VSPACE + dxendrect.GetBottom())
|
||
|
||
#define BPRINTERPOINT wxPoint(COL2START,BPOS)
|
||
#define BPAGEPOINT wxPoint(bprinterrect.GetRight() + BHSPACE,BPOS)
|
||
#define BOKPOINT wxPoint(bcancelrect.GetLeft() - (bokrect.GetRight() \
|
||
- bokrect.GetLeft() + BHSPACE),BPOS)
|
||
#define CANCELWIDTH (bcancelrect.GetRight() - bcancelrect.GetLeft())
|
||
#define BCANCELPOINT wxPoint(Tspacesrect[0].GetRight() - CANCELWIDTH,BPOS)
|
||
//#define BCANCELPOINT wxPoint(dxendmmrect.GetRight() - CANCELWIDTH,BPOS)
|
||
|
||
bprinter = new wxButton(this,Button_Printer,wxT("Imprimante"),BPRINTERPOINT);
|
||
wxRect bprinterrect = bprinter->GetRect();
|
||
bprinter->SetToolTip(wxT("Configurer l'imprimante"));
|
||
|
||
bpage = new wxButton(this,Button_Page,wxT("Page"),BPAGEPOINT);
|
||
// wxRect bpagerect = bpage->GetRect();
|
||
bpage->SetToolTip(wxT("Configurer la taille de page"));
|
||
|
||
bcancel = new wxButton(this,Button_Cancel,wxT("Annuler"));
|
||
wxRect bcancelrect = bcancel->GetRect();
|
||
bcancel->Move(BCANCELPOINT);
|
||
bcancelrect = bcancel->GetRect();
|
||
bcancel->SetToolTip(wxT("Annuler les dernier changements et quitter"));
|
||
|
||
bok = new wxButton(this,Button_Ok,wxT("Quitter"));
|
||
wxRect bokrect = bok->GetRect();
|
||
bok->Move(BOKPOINT);
|
||
bokrect = bok->GetRect();
|
||
bok->SetToolTip(wxT("Enregistrer les changements et quitter"));
|
||
|
||
#define DLGWIDTH (bcancelrect.GetRight() + HSPACE)
|
||
#define DLGHEIGHT (bokrect.GetBottom() + VSPACE)
|
||
|
||
SetClientSize(DLGWIDTH,DLGHEIGHT);
|
||
readconf();
|
||
}
|
||
|
||
ConfDimDlg::~ConfDimDlg()
|
||
{
|
||
}
|
||
|
||
void
|
||
ConfDimDlg::set(wxTextCtrl *t, long val)
|
||
{
|
||
wxString str;
|
||
str << (int)val;
|
||
t->SetValue(str);
|
||
}
|
||
|
||
long
|
||
ConfDimDlg::get(wxTextCtrl* t)
|
||
{
|
||
wxString str;
|
||
str = t->GetValue();
|
||
return atoi(str.mb_str());
|
||
}
|
||
|
||
void
|
||
ConfDimDlg::readconf()
|
||
{
|
||
int i;
|
||
for(i=0; i<5; i++) {
|
||
Htitle[i]->SetValue(config.getNameH(i));
|
||
switch (config.getJustifH(i)) {
|
||
case LEFT: Hjust[i]->SetSelection(0); break;
|
||
case CENTER: Hjust[i]->SetSelection(1); break;
|
||
case RIGHT: Hjust[i]->SetSelection(2); break;
|
||
}
|
||
set(Hspaces[i],config.getSpacesH(i));
|
||
}
|
||
for(i=0; i<5; i++) {
|
||
wxString str;
|
||
str << (int)config.getDxText(i);
|
||
Tdim[i]->SetValue(str);
|
||
switch (config.getJustifT(i)) {
|
||
case LEFT: Tjust[i]->SetSelection(0); break;
|
||
case CENTER: Tjust[i]->SetSelection(1); break;
|
||
case RIGHT: Tjust[i]->SetSelection(2); break;
|
||
}
|
||
set(Tspaces[i],config.getSpacesT(i));
|
||
}
|
||
set(dyh1,config.getDyH1());
|
||
set(dyh2,config.getDyH2());
|
||
set(dyt1,config.getDyT1());
|
||
set(dyt2,config.getDyT2());
|
||
set(dxbegin,config.getDxBegin());
|
||
set(dxend,config.getDxEnd());
|
||
|
||
headfont = config.getFont(PRINTHFONT);
|
||
textfont = config.getFont(PRINTTFONT);
|
||
}
|
||
|
||
void
|
||
ConfDimDlg::writeconf()
|
||
{
|
||
int i;
|
||
for(i=0; i<5; i++) {
|
||
config.setNameH(i,Htitle[i]->GetValue());
|
||
switch (Hjust[i]->GetSelection()) {
|
||
case -1: break;
|
||
case 0: config.setJustifH(i,LEFT); break;
|
||
case 1: config.setJustifH(i,CENTER); break;
|
||
case 2: config.setJustifH(i,RIGHT); break;
|
||
}
|
||
config.setSpacesH(i,get(Hspaces[i]));
|
||
}
|
||
for(i=0; i<5; i++) {
|
||
wxString str;
|
||
str = Tdim[i]->GetValue();
|
||
config.setDxText(i, atoi(str.mb_str()));
|
||
switch (Tjust[i]->GetSelection()) {
|
||
case -1: break;
|
||
case 0: config.setJustifT(i,LEFT); break;
|
||
case 1: config.setJustifT(i,CENTER); break;
|
||
case 2: config.setJustifT(i,RIGHT); break;
|
||
}
|
||
config.setSpacesT(i,get(Tspaces[i]));
|
||
}
|
||
config.setDyH1(get(dyh1));
|
||
config.setDyH2(get(dyh2));
|
||
config.setDyT1(get(dyt1));
|
||
config.setDyT2(get(dyt2));
|
||
config.setDxBegin(get(dxbegin));
|
||
config.setDxEnd(get(dxend));
|
||
|
||
config.setFont(PRINTHFONT,headfont);
|
||
config.setFont(PRINTTFONT,textfont);
|
||
}
|
||
|
||
void
|
||
ConfDimDlg::OnCloseWindow(wxCloseEvent& event)
|
||
{
|
||
if (IsModal() == TRUE)
|
||
EndModal(1);
|
||
else
|
||
this->Destroy();
|
||
}
|
||
|
||
void
|
||
ConfDimDlg::OnButtonOk(wxCommandEvent& event)
|
||
{
|
||
writeconf();
|
||
if (IsModal() == TRUE)
|
||
EndModal(1);
|
||
else
|
||
this->Destroy();
|
||
}
|
||
|
||
void
|
||
ConfDimDlg::OnButtonCancel(wxCommandEvent &event)
|
||
{
|
||
if (IsModal() == TRUE)
|
||
EndModal(1);
|
||
else
|
||
this->Destroy();
|
||
}
|
||
|
||
void
|
||
ConfDimDlg::OnButtonSave(wxCommandEvent& event)
|
||
{
|
||
writeconf();
|
||
}
|
||
|
||
void
|
||
ConfDimDlg::OnConfPage(wxCommandEvent& event)
|
||
{
|
||
//#if defined(__WXGTK__)
|
||
pagesetupdata = printdata;
|
||
wxPageSetupDialog pageSetupDialog(this, &pagesetupdata);
|
||
pageSetupDialog.ShowModal();
|
||
printdata = pageSetupDialog.GetPageSetupData().GetPrintData();
|
||
pagesetupdata = pageSetupDialog.GetPageSetupData();
|
||
// #else
|
||
// wxPageSetupDialog pageSetupDialog(this, & pagesetupdata);
|
||
// pageSetupDialog.ShowModal();
|
||
// pagesetupdata = pageSetupDialog.GetPageSetupData();
|
||
// #endif
|
||
}
|
||
|
||
void
|
||
ConfDimDlg::OnConfPrinter(wxCommandEvent& event)
|
||
{
|
||
//#if defined(__WXGTK__)
|
||
wxPrintDialogData printDialogData(printdata);
|
||
wxPrintDialog printerDialog(this, & printDialogData);
|
||
printerDialog.GetPrintDialogData().SetSetupDialog(TRUE);
|
||
printerDialog.ShowModal();
|
||
printdata = printerDialog.GetPrintDialogData().GetPrintData();
|
||
// #else
|
||
// wxPrintDialog printerDialog(this, & printdata);
|
||
// printerDialog.GetPrintData().SetSetupDialog(TRUE);
|
||
// printerDialog.ShowModal();
|
||
// printdata = printerDialog.GetPrintData();
|
||
// #endif
|
||
}
|
||
|
||
void
|
||
ConfDimDlg::OnConfFontHead(wxCommandEvent& event)
|
||
{
|
||
headfont = config.ChooseFont((wxFrame*)this,headfont);
|
||
}
|
||
|
||
void
|
||
ConfDimDlg::OnConfFontText(wxCommandEvent& event)
|
||
{
|
||
textfont = config.ChooseFont((wxFrame*)this,textfont);
|
||
}
|
||
|
||
wxPrintData
|
||
ConfDimDlg::getPrintData()
|
||
{
|
||
return printdata;
|
||
}
|
||
|
||
wxPageSetupData
|
||
ConfDimDlg::getPageSetupData()
|
||
{
|
||
return pagesetupdata;
|
||
}
|