( I have posted a similiar question in wine-users,
don't flame me for doing so, just thinking about this
some more, perhaps it may be more a developer question
)
Ok, I have a windows app, that runs under wine fine -
not quite. This app has a form, with many text field
edit boxes on. Quite often these edit boxes already
have text values, ie. they are not empty - there is a
database behind the form.
Anyway, the form shows on the screen, but the text
within the edit fields is invisible, until you
activate each edit box component. When you leave one
edit box to the next, the text remains visible.
It seems like the repainting is not working, on
initial startup of the form.
As a way to debug this database app ( I don't have the
source code for it ) I wrote a real basic form app in
Visual Studio, with two edit boxes, with data in each.
Now this basic app shows the text values immediately
on startup. So there must be something different that
the database app is not doing.
I then ran wine using 'wine --debugmsg +edit
programname' for both app's.
I see both logging 'Creating ANSI edit control, style
= xxxxx'
but the style reference is different between apps - I
am not sure if this the cause or not.
The problem app reports style = 54011104 and the basic
app shows style = 50010080.
Can somebody explain what this style reference means
and how do I force an app to use a certain style of
edit box ?
What other wine class debugmsg types should I use to
narrow down the source of this problem ?
Is there anyway I can check to see how the database
app is repainting text within the text edit components
?
Regards
Doug Herbert.
__________________________________
Do you Yahoo!?
Yahoo! SiteBuilder - Free, easy-to-use web site design software
http://sitebuilder.yahoo.com
Hello!
Here are the steps needed to setup a MinGW on a Red Hat Linux like rpm
based system (Fedora Core, Mandrake Linux, ... should probably work even
on a SuSE Linux)
* Download the mingw-binutils and mingw-gcc srpm's from
http://ftp.redhat.com/pub/contrib/libc6/SRPMS/
* Download the mingw-3.0-1.src.rpm srpm from
http://ftp.redhat.com/pub/contrib/libc6/noarch/SRPMS/
* Build the mingw and mingw-binutils rpm's (rpmbuild --rebuild
$SRPM) and install them.
* After the above step you can build the mingw-gcc rpm too. Install
it.
* That's almost everything: you need this patch for wine's configure
to make it find your mingw binaries.
* For instructions how to build the Wine tests for Windows see the
Wine Documentation.
You may want to try your local Red Hat mirror for the above srpm's.
This info can be found also on http://people.redhat.com/mstefani/wine/
Hope this helps
bye
michael
--
Michael Stefaniuc Tel.: +49-711-96437-199
System Administration Fax.: +49-711-96437-111
Red Hat GmbH Email: mstefani(a)redhat.com
Hauptstaetterstr. 58 http://www.redhat.de/
D-70178 Stuttgart
If DGA is not available, Wine falls back to creating offscreen primary surface
and blitting all changes to the screen. It knows which part of the surface
might have changed by watching unlock calls.
However, as Jukka Heinonen pointed out in his message posted on 17.10.2001,
the update logic in asynchronous mode (when SYNC_UPDATE is not defined, which
is the default) is broken: "(...)if more than one lock/unlock pair happens
between update thread blits, display might not be updated correctly".
Synchronous mode on the other hand, causes applications, which constantly
lock and unlock big areas just to change a few pixels, run very slow.
As this bug prevents me from playing "Warlords: Battlecry", I decided to do
something about it.
Here are my changes:
- User_add_dirty_rect is now an asynchronous equivalent of
User_copy_to_screen. It adds the rectangle to the list of dirty rectangles
and signal the update thread that there is some work to do.
- update thread calls User_get_dirty_rect to iterate over the list of dirty
rectangles
- current "naïve" algoritm keeps only one rectangle which is a union of all
dirty rectangles, so it tends to redraw too much, but better algoritms may be
implemented
- removed now unused lastlockrect variable, and the code which updates it
I attached the patch for your reviews, comments, suggestions.
The game is almost playable now, there are remaining issues with DirectMusic
(must be run with NODIRECTMUSIC switch or crashes) and windows managers (kwin
cannot raise the window, metacity complains that the window attributes do not
make sense).
--
Piotr Pawlow
mailto:[email protected]
Hello,
I spotted this bug while trying to fix mouse pointer trails problem in
Warlords Battlecry. All widths, heights and left/top coordinates are of DWORD
type, so substracting them from each other always give positive numbers. Thus
h and w are always >= 0, so DDERR_INVALIDRECT is returned only in a couple of
boundary cases.
I just added explicit casting to int where needed. It didn't fix the mouse
trails, but previously missing mouseover effect on icons at the main screen
appeared, so I guess it is a change in the right direction :)
Patch attached.
Hi
Where is decided if I release the mouse button if a mouse up or a mouse
click is generated? Is this time dependent? Or generally the same?
The misbehaving app uses a ownerdrawn, CListCtrl-derived list. When
I click on a cell not in the first column the cell gets selected. But on
wine I can see that the selection flashes shortly and disappears right
again (Surprisingly it works when I click in the first column. As my
application uses the same code for all columns it must be something
else.). After putting some debug messages in my code I found that
on Windows after the left-button-down event a left-button-click event
is generated, no matter how long I hold the button before releasing.
On wine there is no click event but a mouse up event. And the cell
flashes even when I hold the button, so it's not the releasing itself
that clears the selection.
The control is a bit quirky with moving focus around and handling events
specially. But still it works on Windows :) Now I'm a bit lost how I can
debug this. +mouse didn't show anything usefull. I guess the
generating and sending of the events is done in the wineserver.
Thankful for any hints.
bye Fabi
Implementation of TransparentBlt
This brings up an interesting thing however..it works perfectly under windows (tested on XP), but produces strange results under wine.
MaskBlt seems to be broken, but I'm not quite sure what the cause is yet
I figured I'd send this out incase the problem is obvious to anyone
On January 30, 2004 09:00 am, RemiAssailly(a)aol.com wrote:
> I don't understand you !
> Without that it does not work.
> With that, it works and graphic working is faster.
Maybe so, but it looks obviously incorrect. Not everything
that seems to fix problems is a real fix. You maybe hiding
a bigger issue. The fix as you sent it can't be right, but
you maybe on to something. Someone knowledgable in the area
should express a more informed opinion.
--
Dimi.
Hallo,
could it be that the site is overloaded?
> ping wine.codeweavers.com
PING wine.codeweavers.com (198.144.15.226) 56(84) bytes of data.
no reaction...
--
Uwe Bonnes bon(a)elektron.ikp.physik.tu-darmstadt.de
Institut fuer Kernphysik Schlossgartenstrasse 9 64289 Darmstadt
--------- Tel. 06151 162516 -------- Fax. 06151 164321 ----------
Hi,
I don't know if this is the place to ask this, but anyway here it goes:
I'm trying to debug a windows application using wine.
The app is compiled with mingw (www.mingw.org), and I tried using
-gstabs and -ggdb debug info but same problem happens.
The problem is:
1) Using winedbg as server for remote gdb debugger, when execution stops
(sigfault, or whatever), and I type 'bt' in the gdb client, no debug
info is shown, just lines like this one:
#0 0xdeaf1005 in ?? ()
2) Running 'wine <myapp.exe>' and then using gdb client to debug the
process with the 'attach' command, when execution stops (sigfault, or
whatever), and I type 'bt' in the gdb client, debug info IS shown, but
line numbering shows always just the first line in the function.
For example, say I have this function:
void f()
{
int a=123;
*(char *)0=a;
}
then when sigfault is caught, gdb shows backtrace like this:
#0 0x0040130b in f() () at f.cpp:2
even though exception occurs in line 4.
Either way, I can't debug a windows app correctly.
May I be doing something wrong.
I've read the docs and followed instructions for DDD, KDbg, and just
plain gbd.
I'm using latest wine 2004 rpm under Redhat 9.
Any help greatly appreciated.
Thanks,
Leo.
Hans Leidekker wrote:
> On Thursday 29 January 2004 01:01, Duane Clark wrote:
>
>>For some reason, a comment end is missing there. But otherwise, it seems
>>to work fine with the one important app I use file notification on.
>
>
> Which app is that?
Xilinx ISE, a program for use when designing with Xilinx chips.