1. The last character you selected should be remembered in an upcoming release, so if you select "all characters", it'll remember that between sessions.
2. I had this as an option in 1.5 - this will probably come back. The reason it isn't default, though, is that automatic focus eats input, so, say, if you're running and you open Sanity to check an item, the input field would focus and would be filled with "W"s, while you'd stop running.
3. I'm working on this as the target for my next commit. However, I'm using AceConsole which doesn't seem to facilitate that easily - there's no good way to provide a handler for unhandled items. There's a lot of work to be done on that front.
4. It'd be trivial enough to give you an option set that lets you specify which fields to separate collapsed fields by, which would let you customize it a bit further.
5. Sanity can't add tooltip info to tooltips it doesn't know about - it hooks all of the standard tooltip-show functions, but it doesn't know about other mods' custom tooltips.
Eagle:
Sanity doesn't update its view until the window is opened, but it does do a bag scan when your inventory changes. When looting or changing multiple items, these operations add up and get very expensive very quickly. However, I can't just elect to do that when the window is open because, say, what if I were to loot something and then log out without opening Sanity? That item wouldn't show up for my character when looking at my inventory for other characters.
That said, I'm working on optimizations in that area, and am actively concerned with reducing the lag introduced with multiple fast inventory changes.
calthas: Thanks for the error report! I'll see if I can figure out what's going on and get it knocked out.
[2006/12/27 17:35:06-966-x9239]: Sanity2\SanityMailbox.lua:48: attempt to index field '?' (a nil value)
Sanity2\SanityEvents.lua:3: in function `OnUpdate'
<string>:"SanityDummyFrame:OnUpdate":2: in function <[string "SanityDummyFrame:OnUpdate"]:1>
Some items counting in Bank were false also in tooltip.
At the moment as far as I can see, tags & categories are merged in the listing. Do you think you could add an option to split them ? I don't know what others think, but as far as I'm concerned I could use that. For instance I categorize my equipement (the one I use for real) as equipement, then I tag stuff for instance as FR, NR, etc).
Do you plan on adding icons to categories/tags ? That would be convenient :)
And finally, what about multiple tags ? Assigning them / searching for them ? I don't know if that would be something big to dev, but being able to list all pieces of Equipement tagged as X and Y would be useful.
That's all I can think of now. Aaaah, no. Drag & drop ? draging & dropping stuff to a tag/category to assign it...
Hm, I'll see about splitting categories and tags. Right now, I kinda use 'em interchangeably, so I guess I haven't had the need. I'll see about a toggle. ;)
I hadn't planned on adding icons to cats/tags, but that would be a fantastic addition.
I don't have any plans to change the search at the moment in the interest of simplicity, but it's something I amy consider in the future. At the moment, Sanity just builds a list of fields to search and looks for what you type in those fields. A more complex search would require tokenization of the fields and the search and various interpretation and all kinds of fun things that I'd like eventually, but don't have on my plate at the moment.
Drag and drop should already work, actually! Drag an item onto a category and tag and it should get put into that category or tag. You can only drag items that you have immediate access to, though, since the drag operation actually puts the item on your cursor. However, I'm going to see about possibly working around that at some point in the future.
Hm, I'll see about splitting categories and tags. Right now, I kinda use 'em interchangeably, so I guess I haven't had the need. I'll see about a toggle. ;)
That would be nice, but it's far from critical ;)
Quote from Antiarc »
I hadn't planned on adding icons to cats/tags, but that would be a fantastic addition.
Awesome, it would make the interface really great.
Quote from Antiarc »
I don't have any plans to change the search at the moment in the interest of simplicity, but it's something I amy consider in the future. At the moment, Sanity just builds a list of fields to search and looks for what you type in those fields. A more complex search would require tokenization of the fields and the search and various interpretation and all kinds of fun things that I'd like eventually, but don't have on my plate at the moment.
Yeah, that's what I thought. The downside of the current method is as far as I can see that if you use as a category/tag name a word that is part of the item's name/description/whatever, it will be found when searching for that tag/category.
But it would indeed be an amazing dev ^^
Quote from Antiarc »
Drag and drop should already work, actually! Drag an item onto a category and tag and it should get put into that category or tag. You can only drag items that you have immediate access to, though, since the drag operation actually puts the item on your cursor. However, I'm going to see about possibly working around that at some point in the future.
Oh, great. Maybe I was not able to see that due to my line 828 nil error.
Thanks for your very fast answers, I'll keep playing with Sanity and hope it will be my one and only inventory mod in the near future ;)
1. The last character you selected should be remembered in an upcoming release, so if you select "all characters", it'll remember that between sessions.
However I think that option "Select All Characters at open" would be more convinient. And that's because why.
Disclaimer: This is only my IMHO and I didn't insist that I'm right :)
There are two main pattern of using Sanity/Possesion.
1. Searching inventory of current character
2. Searching inventory of all characters
Third pattern - searching inventory of alt (alt describes here "not current char") - is much much rarer.
If you will make "Remember last character" setting saved per-char it would broke "Profile" feature. If you will make it saved per-realm it would mean that opening Char1 when Char1 is main char will lead to open Char1 by default on all other chars. I think it's not good :)
Best way IMHO would be make 3-way combobox like "Select current char", "Select last saved", "Select All Chars".
Quote from Antiarc »
2. I had this as an option in 1.5 - this will probably come back. The reason it isn't default, though, is that automatic focus eats input, so, say, if you're running and you open Sanity to check an item, the input field would focus and would be filled with "W"s, while you'd stop running.
Opt-in would be excelent!
Quote from Antiarc »
3. I'm working on this as the target for my next commit. However, I'm using AceConsole which doesn't seem to facilitate that easily - there's no good way to provide a handler for unhandled items. There's a lot of work to be done on that front.
Yes. AceConsole has some problem with it. May be there is some mechanism to handle errors by user-defined function? In this case any error command could be targeted as search string.
If there is no such handler may be it's time to ask AceConsole's autor to add one :)
Quote from Antiarc »
Sanity doesn't update its view until the window is opened, but it does do a bag scan when your inventory changes. When looting or changing multiple items, these operations add up and get very expensive very quickly. However, I can't just elect to do that when the window is open because, say, what if I were to loot something and then log out without opening Sanity? That item wouldn't show up for my character when looking at my inventory for other characters.
That said, I'm working on optimizations in that area, and am actively concerned with reducing the lag introduced with multiple fast inventory changes.
I'm not LUA expert but how about hooking to "PLAYER_LEAVING_WORLD" event? Of course it launches also when changing location but it's not big problem comparing to massive loot delay.
Regarding the PLAYER_LEAVING_WORLD, I've been thinking in that direction, actually. I've got a few things I'm going to benchmark for performance, but I think I should be able to cut down the scan time significantly in a number of ways.
Do you plan to add some sort of plugin framework? It would be nice because someone could make an export plugin. Sanity made my life easier as guild banker and it would make it even more if someone (or even i) writes an export plugin.
Hey Antiarc, I love this mod. I just discovered it yesterday and already I wonder how I managed without it :-)
I did some debugging last night about the Ticket #121 : Sanity: startup error. I've included my findings into the ticket comment. Also include is a workaround that fixed the problem for me.
[2007/01/05 19:09:28-337-x2]: Sanity2-2.0\SanityDisplay.lua:761: attempt to index a nil value
Sanity2-2.0\Sanity.lua:894: in function `Refresh'
Sanity2-2.0\Sanity.lua:599: in function `SetupItems'
Sanity2-2.0\Sanity.lua:700: in function `Toggle'
Sanity2-2.0\SanityDisplay.lua:419: in function `OnClick'
FuBarPlugin-2.0-23187:821: in function <...\Bartender3\libs\FuBarPlugin-2.0\FuBarPlugin-2.0.lua:819>
FuBar-2.0.22732\FuBar.lua:1140: in function <Interface\AddOns\FuBar\FuBar.lua:1138>
[2007/01/12 11:21:05-250-x45]: Sanity2-2.1\SanityItemCache.lua:140: bad argument #1 to 'pairs' (table expected, got number)
---
[2007/01/12 11:21:19-250-x1]: Sanity2-2.1\SanityItemCache.lua:230: attempt to index field 'BagInfo' (a nil value)
<in C code>: ?
AceEvent-2.0-23383 (Ace2):251: in function `TriggerEvent'
AceEvent-2.0-23383 (Ace2):962: in function <Interface\AddOns\Ace2\AceEvent-2.0\AceEvent-2.0.lua:955>
---
[2007/01/12 11:21:27-250-x8]: Sanity2-2.1\SanityItemCache.lua:230: attempt to index field 'BagInfo' (a nil value)
---
[2007/01/12 11:21:28-250-x6]: Sanity2-2.1\SanityItemCache.lua:140: bad argument #1 to 'pairs' (table expected, got number)
<in C code>: ?
<in C code>: in function `pcall'
FuBar-2.0.24665\FuBar.lua:631: in function <Interface\AddOns\FuBar\FuBar.lua:627>
FuBar-2.0.24665\FuBar.lua:913: in function `LoadPlugin'
FuBar-2.0.24665\FuBar.lua:1026: in function <Interface\AddOns\FuBar\FuBar.lua:1017>
<in C code>: ?
AceEvent-2.0-23383 (Ace2):427: in function <Interface\AddOns\Ace2\AceEvent-2.0\AceEvent-2.0.lua:403>
I'm trying to upgrade from build 22xxx to 24633 to no avail:
the problem is in this function:
function SanityItemCache:ADDON_LOADED()
for char,dummy in pairs(self.db.realm.chars) do
for k,v in pairs(dummy.Bags) do
for k2,v2 in pairs(v) do
setmetatable(v2,{__index = translate_index})
end
end
end
end
v is a number so pairs fails
p.s.
deleting wtf is not an option since I want to include sanity in my addon pack.
I just committed an update that I think should fix the DB problems. I changed the backend between 2.0.1 and 2.0.3, and thought I got the upgrade taken care of, but apparently I didn't try the newest and see if that fixes those errors.
1. The last character you selected should be remembered in an upcoming release, so if you select "all characters", it'll remember that between sessions.
2. I had this as an option in 1.5 - this will probably come back. The reason it isn't default, though, is that automatic focus eats input, so, say, if you're running and you open Sanity to check an item, the input field would focus and would be filled with "W"s, while you'd stop running.
3. I'm working on this as the target for my next commit. However, I'm using AceConsole which doesn't seem to facilitate that easily - there's no good way to provide a handler for unhandled items. There's a lot of work to be done on that front.
4. It'd be trivial enough to give you an option set that lets you specify which fields to separate collapsed fields by, which would let you customize it a bit further.
5. Sanity can't add tooltip info to tooltips it doesn't know about - it hooks all of the standard tooltip-show functions, but it doesn't know about other mods' custom tooltips.
Eagle:
Sanity doesn't update its view until the window is opened, but it does do a bag scan when your inventory changes. When looting or changing multiple items, these operations add up and get very expensive very quickly. However, I can't just elect to do that when the window is open because, say, what if I were to loot something and then log out without opening Sanity? That item wouldn't show up for my character when looking at my inventory for other characters.
That said, I'm working on optimizations in that area, and am actively concerned with reducing the lag introduced with multiple fast inventory changes.
calthas: Thanks for the error report! I'll see if I can figure out what's going on and get it knocked out.
[2006/12/27 17:35:06-966-x9239]: Sanity2\SanityMailbox.lua:48: attempt to index field '?' (a nil value)
Sanity2\SanityEvents.lua:3: in function `OnUpdate'
<string>:"SanityDummyFrame:OnUpdate":2: in function <[string "SanityDummyFrame:OnUpdate"]:1>
Some items counting in Bank were false also in tooltip.
Now and I have more question/feature request ^^
At the moment as far as I can see, tags & categories are merged in the listing. Do you think you could add an option to split them ? I don't know what others think, but as far as I'm concerned I could use that. For instance I categorize my equipement (the one I use for real) as equipement, then I tag stuff for instance as FR, NR, etc).
Do you plan on adding icons to categories/tags ? That would be convenient :)
And finally, what about multiple tags ? Assigning them / searching for them ? I don't know if that would be something big to dev, but being able to list all pieces of Equipement tagged as X and Y would be useful.
That's all I can think of now. Aaaah, no. Drag & drop ? draging & dropping stuff to a tag/category to assign it...
That's it for real this time ! ^^
I hadn't planned on adding icons to cats/tags, but that would be a fantastic addition.
I don't have any plans to change the search at the moment in the interest of simplicity, but it's something I amy consider in the future. At the moment, Sanity just builds a list of fields to search and looks for what you type in those fields. A more complex search would require tokenization of the fields and the search and various interpretation and all kinds of fun things that I'd like eventually, but don't have on my plate at the moment.
Drag and drop should already work, actually! Drag an item onto a category and tag and it should get put into that category or tag. You can only drag items that you have immediate access to, though, since the drag operation actually puts the item on your cursor. However, I'm going to see about possibly working around that at some point in the future.
That would be nice, but it's far from critical ;)
Awesome, it would make the interface really great.
Yeah, that's what I thought. The downside of the current method is as far as I can see that if you use as a category/tag name a word that is part of the item's name/description/whatever, it will be found when searching for that tag/category.
But it would indeed be an amazing dev ^^
Oh, great. Maybe I was not able to see that due to my line 828 nil error.
Thanks for your very fast answers, I'll keep playing with Sanity and hope it will be my one and only inventory mod in the near future ;)
To file a bug report/feature request, please go to http://www.wowace.com/trac/newticket?field_summary=Sanity%3A+&field_owner=Antiarc
To view outstanding bugs and feature requests, please go to http://www.wowace.com/trac/query?status=new&status=assigned&status=reopened&summary=%7ESanity&order=priority
However I think that option "Select All Characters at open" would be more convinient. And that's because why.
Disclaimer: This is only my IMHO and I didn't insist that I'm right :)
There are two main pattern of using Sanity/Possesion.
1. Searching inventory of current character
2. Searching inventory of all characters
Third pattern - searching inventory of alt (alt describes here "not current char") - is much much rarer.
If you will make "Remember last character" setting saved per-char it would broke "Profile" feature. If you will make it saved per-realm it would mean that opening Char1 when Char1 is main char will lead to open Char1 by default on all other chars. I think it's not good :)
Best way IMHO would be make 3-way combobox like "Select current char", "Select last saved", "Select All Chars".
Opt-in would be excelent!
Yes. AceConsole has some problem with it. May be there is some mechanism to handle errors by user-defined function? In this case any error command could be targeted as search string.
If there is no such handler may be it's time to ask AceConsole's autor to add one :)
I'm not LUA expert but how about hooking to "PLAYER_LEAVING_WORLD" event? Of course it launches also when changing location but it's not big problem comparing to massive loot delay.
I have reported the bug I'm having as #64, I hope it can be fixed soon as it's really blocking me from using Sanity.
I did some debugging last night about the Ticket #121 : Sanity: startup error. I've included my findings into the ticket comment. Also include is a workaround that fixed the problem for me.
I hope that will help some.
Best
Sanity2-2.0\Sanity.lua:894: in function `Refresh'
Sanity2-2.0\Sanity.lua:599: in function `SetupItems'
Sanity2-2.0\Sanity.lua:700: in function `Toggle'
Sanity2-2.0\SanityDisplay.lua:419: in function `OnClick'
FuBarPlugin-2.0-23187:821: in function <...\Bartender3\libs\FuBarPlugin-2.0\FuBarPlugin-2.0.lua:819>
FuBar-2.0.22732\FuBar.lua:1140: in function <Interface\AddOns\FuBar\FuBar.lua:1138>
---
after update today
---
[2007/01/12 11:21:19-250-x1]: Sanity2-2.1\SanityItemCache.lua:230: attempt to index field 'BagInfo' (a nil value)
<in C code>: ?
AceEvent-2.0-23383 (Ace2):251: in function `TriggerEvent'
AceEvent-2.0-23383 (Ace2):962: in function <Interface\AddOns\Ace2\AceEvent-2.0\AceEvent-2.0.lua:955>
---
[2007/01/12 11:21:27-250-x8]: Sanity2-2.1\SanityItemCache.lua:230: attempt to index field 'BagInfo' (a nil value)
---
[2007/01/12 11:21:28-250-x6]: Sanity2-2.1\SanityItemCache.lua:140: bad argument #1 to 'pairs' (table expected, got number)
<in C code>: ?
<in C code>: in function `pcall'
FuBar-2.0.24665\FuBar.lua:631: in function <Interface\AddOns\FuBar\FuBar.lua:627>
FuBar-2.0.24665\FuBar.lua:913: in function `LoadPlugin'
FuBar-2.0.24665\FuBar.lua:1026: in function <Interface\AddOns\FuBar\FuBar.lua:1017>
<in C code>: ?
AceEvent-2.0-23383 (Ace2):427: in function <Interface\AddOns\Ace2\AceEvent-2.0\AceEvent-2.0.lua:403>
---
:'( Was working perfectly the other day.
any idea?
the problem is in this function:
function SanityItemCache:ADDON_LOADED()
for char,dummy in pairs(self.db.realm.chars) do
for k,v in pairs(dummy.Bags) do
for k2,v2 in pairs(v) do
setmetatable(v2,{__index = translate_index})
end
end
end
end
v is a number so pairs fails
p.s.
deleting wtf is not an option since I want to include sanity in my addon pack.
all works, except the database has been wiped out during the upgrade.
not a good way to go for users of my addon pack, but I guess they will have to reacquire the data. at least no lua errors.