View Issue Details
|ID||Project||Category||View Status||Date Submitted||Last Update|
|0000283||DarkRadiant||General||public||01.05.2007 14:34||03.01.2010 18:21|
|Target Version||1.1.0||Fixed in Version||1.1.0|
|Summary||0000283: Undo includes texture-to-clipboard function|
|Description||Possibly by design, but I don't think it really adds much benefit and actually causes some annoyance (I thought I'd found another problem with the current selection situation, but I think it's actually this instead).|
-Have two brushes, textured differently.
-Pick up the texture from brush A. Apply it to brush face B with ctrl-MMB (or brush with ctrl-alt-MMB).
-Ctrl-Z/undo the texture paste.
-Now try to reapply the same texture again - although the previous action was pasting, and although the status bar shows the original texture in the clipboard (groovy, I never noticed that... duh), the texture is not applied to brush B.
|Tags||No tags attached.|
|Yes, I did this on purpose. As soon as you hit "Undo" the ShaderClipboard is cleared. The reason is that I can't be sure that the Undo operation doesn't delete the source brush, leaving an invalid reference in the Clipboard, which would crash DarkRadiant as soon as you try to paste the shader (from the now non-existent object).|
The clipboard depends on the source brush existing in order to function? That sounds like a problem in itself. Let me try something...
Okay, it didn't crash, but if I create two brushes, pick up the texture from the first, and then delete the first (certainly a normal operation bound to happen now and again while building areas), the clipboard texture is in fact lost. Shouldn't there just be a reference to the texture itself and not the brush, which would clear up both of these (admittedly minor) issues?
Of course it doesn't crash, because I took care that the Clipboard is cleared on object deletion as well. ;)
I chose to just store a reference, because I need more than just the shadername to perform the more complex projections/natural texture stuff. A patch has just its texture coords, whereas a brush has a so-called "TexDef", which is a matrix among a few other things.
I didn't want to copy and store those data structures into the ShaderClipboard as the reference itself is sufficient. If you think that this is impractical, I can go the way of copying all those values into the clipboard as well.
Not sure, kinda hard to decide. On the one hand, it was something that I thought (for quite some time now - I only just figured it out today) was an actual problem with selection or copy/paste. On the other hand, it's a relatively minor inconvenience to have the texture cleared (at least it doesn't crash).
Perhaps we should suspend it (perhaps indefinitely). At least it'll be there if there's ever nothing else in the queue.
|This issue seems to be an annoyance, reopened and assigned to myself.|
|01.05.2007 14:34||SneaksieDave||New Issue|
|01.05.2007 17:08||greebo||Note Added: 0000604|
|01.05.2007 17:08||greebo||Assigned To||=> SneaksieDave|
|01.05.2007 17:08||greebo||Status||new => feedback|
|01.05.2007 17:51||SneaksieDave||Note Added: 0000607|
|01.05.2007 17:52||SneaksieDave||Note Edited: 0000607|
|01.05.2007 18:21||greebo||Note Added: 0000608|
|01.05.2007 18:21||greebo||Note Edited: 0000608|
|01.05.2007 18:40||SneaksieDave||Note Added: 0000609|
|01.05.2007 18:40||SneaksieDave||Status||feedback => suspended|
|16.08.2007 07:10||greebo||Note Added: 0000733|
|16.08.2007 07:10||greebo||Assigned To||SneaksieDave => greebo|
|16.08.2007 07:10||greebo||Status||suspended => assigned|
|17.12.2009 18:34||greebo||Status||assigned => resolved|
|17.12.2009 18:34||greebo||Fixed in Version||=> 1.1.0|
|17.12.2009 18:34||greebo||Resolution||open => fixed|
|17.12.2009 18:34||greebo||Projection||none => minor fix|
|17.12.2009 18:34||greebo||ETA||none => < 1 day|
|17.12.2009 18:34||greebo||Build||=> 5093|
|17.12.2009 18:34||greebo||Target Version||=> 1.1.0|
|03.01.2010 18:21||SneaksieDave||Status||resolved => closed|