Compare commits

...

4 Commits

Author SHA1 Message Date
Chris Cromer 942877d6d3
update version to 1.3.2 2020-04-19 15:13:24 -04:00
Chris Cromer 3db0d2f2e5
fix zoom buttons in picedit 2020-04-19 15:04:54 -04:00
Chris Cromer 52a4b3fe32
fix fill not updating canvas in vieweditor 2020-04-19 14:17:17 -04:00
Chris Cromer d3aa8a559e
fix win32 build 2020-04-19 14:05:05 -04:00
12 changed files with 45 additions and 22 deletions

2
README
View File

@ -1,4 +1,4 @@
QT AGI Studio, release 1.3.1 QT AGI Studio, release 1.3.2
About About
===== =====

View File

@ -1,5 +1,5 @@
.\" Hey, EMACS: -*- nroff -*- .\" Hey, EMACS: -*- nroff -*-
.TH AGISTUDIO 1 "May 1, 2019" "agistudio" "QT AGI Studio 1.3.1" .TH AGISTUDIO 1 "May 1, 2019" "agistudio" "QT AGI Studio 1.3.2"
.SH NAME .SH NAME
QT AGI Studio \- an AGI adventure game development environment QT AGI Studio \- an AGI adventure game development environment
.SH SYNOPSIS .SH SYNOPSIS

View File

@ -2,7 +2,7 @@
<HEAD> <HEAD>
<TITLE>TODO list</TITLE></HEAD> <TITLE>TODO list</TITLE></HEAD>
<BODY> <BODY>
<h1>TODO (QT AGI Studio v1.3.1)</h1> <h1>TODO (QT AGI Studio v1.3.2)</h1>
<i>This is not a development plan but rather an unsorted list of ideas. You are welcome to contribute. :-)</i> <i>This is not a development plan but rather an unsorted list of ideas. You are welcome to contribute. :-)</i>

View File

@ -1,3 +1,9 @@
agistudio (1.3.2-1) unstable; urgency=low
* New upstream release.
-- Chris Cromer <chris@cromer.cl> Sun, 19 Apr 2020 15:12:00 +0300
agistudio (1.3.1-1) unstable; urgency=low agistudio (1.3.1-1) unstable; urgency=low
* New upstream release. * New upstream release.

View File

@ -1,10 +1,10 @@
Summary: AGI integrated development environment Summary: AGI integrated development environment
Name: agistudio Name: agistudio
Version: 1.3.1 Version: 1.3.2
Release: 0 Release: 0
Copyright: GPL Copyright: GPL
Group: Development/Tools Group: Development/Tools
Source: agistudio-1.3.1.tar.gz Source: agistudio-1.3.2.tar.gz
URL: http://agistudio.sourceforge.net/ URL: http://agistudio.sourceforge.net/
%description %description
AGI (Adventure Game Interpreter) is the adventure game engine used by AGI (Adventure Game Interpreter) is the adventure game engine used by

View File

@ -1,3 +1,10 @@
Release notes for QT AGI Studio version 1.3.2 (2020-04-19)
- fixes
* fixed view editor fill not updating the canvas
* fixed pic edit not updating the canvas
* add some win32 fixes
Release notes for QT AGI Studio version 1.3.1 (2019-05-09) Release notes for QT AGI Studio version 1.3.1 (2019-05-09)
- fixes - fixes

View File

@ -1,6 +1,7 @@
TEMPLATE = app TEMPLATE = app
CONFIG = qt warn_on release thread CONFIG = qt warn_on release thread
#CONFIG = qt warn_on debug thread #CONFIG = qt warn_on debug thread
#CONFIG += static # win32 static linking
# DEFINES += QT_DLL QT_THREAD_SUPPORT # win32 # DEFINES += QT_DLL QT_THREAD_SUPPORT # win32
QMAKE_CXXFLAGS += -Wno-unused-result QMAKE_CXXFLAGS += -Wno-unused-result
HEADERS = agicommands.h \ HEADERS = agicommands.h \

View File

@ -302,8 +302,8 @@ int Game::from_template(string name)
struct _finddata_t c_file; struct _finddata_t c_file;
long hFile; long hFile;
if ((hFile = _findfirst(tmp, &c_file)) != -1L) do { if ((hFile = _findfirst(tmp, &c_file)) != -1L) do {
sprintf(tmp2,"%s/%s",templatedir.c_str(),c_file.name); sprintf(tmp,"%s/%s",templatedir.c_str(),c_file.name);
cfilename = tmp2; cfilename = tmp;
#else #else
glob_t globbuf; glob_t globbuf;
glob(tmp, 0, NULL, &globbuf); glob(tmp, 0, NULL, &globbuf);
@ -335,8 +335,8 @@ int Game::from_template(string name)
sprintf(tmp,"%s/src/*",templatedir.c_str()); sprintf(tmp,"%s/src/*",templatedir.c_str());
#ifdef _WIN32 #ifdef _WIN32
if ((hFile = _findfirst(tmp, &c_file)) != -1L) do { if ((hFile = _findfirst(tmp, &c_file)) != -1L) do {
sprintf(tmp2,"%s/src/%s",templatedir.c_str(),c_file.name); sprintf(tmp,"%s/src/%s",templatedir.c_str(),c_file.name);
cfilename = tmp2; cfilename = tmp;
#else #else
glob(tmp, 0, NULL, &globbuf); glob(tmp, 0, NULL, &globbuf);
for(i=0;i<(int)globbuf.gl_pathc;i++){ //copy template src subdirectory for(i=0;i<(int)globbuf.gl_pathc;i++){ //copy template src subdirectory

View File

@ -889,7 +889,7 @@ About::About(QWidget *parent, const char *name )
about->setTextFormat(Qt::RichText); about->setTextFormat(Qt::RichText);
about->setReadOnly(true); about->setReadOnly(true);
about->setText( about->setText(
"<center><b>QT AGI studio v. 1.3.1</b><br>" "<center><b>QT AGI studio v. 1.3.2</b><br>"
"http://agistudio.sourceforge.net/<br>" "http://agistudio.sourceforge.net/<br>"
"<br>" "<br>"
"<b>Authors:</b><br>" "<b>Authors:</b><br>"

View File

@ -606,6 +606,7 @@ void PicEdit::zoom_minus()
h = canvas->cur_h+4; h = canvas->cur_h+4;
canvas->resizeContents(w,h); canvas->resizeContents(w,h);
} }
canvas->update();
} }
@ -620,6 +621,7 @@ void PicEdit::zoom_plus()
h = canvas->cur_h+4; h = canvas->cur_h+4;
canvas->resizeContents(w,h); canvas->resizeContents(w,h);
} }
canvas->update();
} }
@ -902,7 +904,7 @@ void PCanvas::setPixsize(int s)
pixmap.resize(cur_w,cur_h); pixmap.resize(cur_w,cur_h);
QPainter p(&pixmap); QPainter p(&pixmap);
p.eraseRect(0,0,cur_w,cur_h); p.eraseRect(0,0,cur_w,cur_h);
update(); updatePainter(&p);
} }
//********************************************* //*********************************************
@ -984,11 +986,17 @@ void PCanvas::drawContents(QPainter* p,int ,int ,int ,int )
} }
//*********************************************
void PCanvas::update() void PCanvas::update()
{ {
QPainter p(&pixmap); QPainter p(&pixmap);
updatePainter(&p);
}
//*********************************************
void PCanvas::updatePainter(QPainter *p)
{
//QPainter p(&pixmap);
int x,y; int x,y;
byte c; byte c;
byte *data; byte *data;
@ -1000,11 +1008,11 @@ void PCanvas::update()
for(x=0;x<MAX_W;x+=2){ for(x=0;x<MAX_W;x+=2){
c=data[y*MAX_W+x]; c=data[y*MAX_W+x];
if((pic&&c==15)||(!pic&&c==4)){ //draw background instead of "empty" areas if((pic&&c==15)||(!pic&&c==4)){ //draw background instead of "empty" areas
p.fillRect(x*pixsize,y*pixsize,pixsize,pixsize,QColor(bgpix.pixel(x,y))); p->fillRect(x*pixsize,y*pixsize,pixsize,pixsize,QColor(bgpix.pixel(x,y)));
p.fillRect((x+1)*pixsize,y*pixsize,pixsize,pixsize,QColor(bgpix.pixel(x+1,y))); p->fillRect((x+1)*pixsize,y*pixsize,pixsize,pixsize,QColor(bgpix.pixel(x+1,y)));
} }
else{ else{
p.fillRect(x*pixsize,y*pixsize,pixsize*2,pixsize,egacolor[c]); p->fillRect(x*pixsize,y*pixsize,pixsize*2,pixsize,egacolor[c]);
} }
} }
} }
@ -1012,7 +1020,7 @@ void PCanvas::update()
else{ else{
for(y=0;y<MAX_HH;y++){ for(y=0;y<MAX_HH;y++){
for(x=0;x<MAX_W;x+=2){ for(x=0;x<MAX_W;x+=2){
p.fillRect(x*pixsize,y*pixsize,pixsize*2,pixsize,egacolor[data[y*MAX_W+x]]); p->fillRect(x*pixsize,y*pixsize,pixsize*2,pixsize,egacolor[data[y*MAX_W+x]]);
} }
} }
} }
@ -1030,11 +1038,11 @@ void PCanvas::update()
for(y=step*3;y<MAX_HH*pixsize;y+=step){ for(y=step*3;y<MAX_HH*pixsize;y+=step){
//pen.setBrush(QColor(255, 0, 0, 127)); //pen.setBrush(QColor(255, 0, 0, 127));
pen.setBrush(egacolor[i++]); pen.setBrush(egacolor[i++]);
p.setPen(pen); p->setPen(pen);
p.drawLine(0,y,MAX_W*pixsize,y); p->drawLine(0,y,MAX_W*pixsize,y);
pen.setBrush(QColor(0, 0, 0, 127)); pen.setBrush(QColor(0, 0, 0, 127));
p.setPen(pen); p->setPen(pen);
p.drawLine(0,y+1,MAX_W*pixsize,y+1); p->drawLine(0,y+1,MAX_W*pixsize,y+1);
} }
} }

View File

@ -80,6 +80,7 @@ public:
void load_bg(char *filename); void load_bg(char *filename);
void draw(int ResNum); void draw(int ResNum);
void update(); void update();
void updatePainter(QPainter *p);
void setSize(int w,int h); void setSize(int w,int h);
void setPixsize(int pixsize); void setPixsize(int pixsize);
protected: protected:

View File

@ -1838,8 +1838,8 @@ void Canvas::UpdateCel(int x,int y){
if(xn>=0&&xn<cur_w && yn>=0&&yn<cur_h){ if(xn>=0&&xn<cur_w && yn>=0&&yn<cur_h){
QPainter p(&pixmap);
if(viewedit->drawing_mode == V_DRAW){ if(viewedit->drawing_mode == V_DRAW){
QPainter p(&pixmap);
x=xn*2*pixsize; x=xn*2*pixsize;
y=yn*pixsize; y=yn*pixsize;