Activity for James King

  • James King James King posted a comment on discussion General Discussion

    okay thanks! I'm quite happy editing nfo files so I'll do this. cheers! feature request to include a button/menu option for this in MC ;)

  • James King James King posted a comment on discussion General Discussion

    I mostly prefer using tvdb for scraper but I have a couple of shows where some of the specials are missing on tvdb and listed on tmdb. I can't seem to change scraper to tmdb though without changing it for my entire library, am I missing something? I can see it's possible to have different scrapers for different root folders but I don't really want to move some of my library to a different folder just for them to be scraped the way I want. I've tried running rescraper wizard > tmdb id, but this doesn't...

  • James King James King posted a comment on discussion Help

    aha - looks like this might be an issue then. thanks, looks like I will have to manually Refresh() as needed

  • James King James King posted a comment on discussion Help

    actually thinking about it I can probably just follow the treelistview IsExpanding events to follow nodes as they expand, and then subscribe to each objects PropertyUpdated event as they do. shouldn't take more than a few lines of code

  • James King James King modified a comment on discussion Help

    yes, it will work, and it's a whole lot of extra code if I can simply use INotifyPropertyUpdated to do it. the objects themselves already handle everything with regards to reflecting the disk/directory structure, each object has a FileSystemWatcher that watches for changes in its own directory, and it reloads its child objects as necessary. all of this already works, the object.Children property (which the ChildGetter delegate returns) already holds the correct information if changes are made on...

  • James King James King posted a comment on discussion Help

    yes, it will work, and it's a whole lot of extra code if I can simply use INotifyPropertyUpdated to do it. the objects themselves already handle everything with regards to reflecting the disk/directory structure, each object has a FileSystemWatcher that watches for changes in its own directory, and it reloads its child objects as necessary. all of this already works the whole point of objectlistview is to get away from the model of presenting a dictionary of key/value pairs which reflect a separate...

  • James King James King modified a comment on discussion Help

    unfortunately I'm not easily able to notice a change in the model objects, because my code does not know about most of the model objects - the only model objects my code knows about are the roots (the top level) of the treelistview (in this case, a list of drive letters). all of the child objects are created by and owned by their parent objects, they are returned using the ChildGetter delegate (which itself returns a property Children which is a List<> of objects), none of the objects know about...

  • James King James King posted a comment on discussion Help

    unfortunately I'm not able to notice a change in the model objects, because my code does not know about most of the model objects - the only model objects my code knows about are the roots (the top level) of the treelistview (in this case, a list of drive letters). all of the child objects are created by and owned by their parent objects, they are returned using the ChildGetter delegate (which itself returns a property Children which is a List<> of objects), none of the objects know about each other...

  • James King James King modified a comment on discussion Help

    I have a treelistview with objects that implement INotifyPropertyUpdated, and the event PropertyChanged is invoked when an object's children have been changed, my intent here being that the treelistview will refresh the model and reload the model's children using the ChildGetter delegate to show the changes despite setting UseNotifyPropertyChanged = true on the treelistview, and checking and confirming that the PropertyChanged event is fired when I expect it to be, nothing changes in the treelistview...

  • James King James King posted a comment on discussion Help

    I have a treelistview with objects that implement INotifyPropertyUpdated, and the event PropertyChanged is invoked when an object's children have been changed, my intent here being that the treelistview will refresh the model and reload the model's children using the ChildGetter delegate to show the changes despite setting UseNotifyPropertyChanged = true on the treelistview, and checking and confirming that the PropertyChanged event is fired when I expect it to be, nothing changes in the treelistview...

  • James King James King posted a comment on discussion Open Discussion

    I've got a small function that allows the user to modify all selected rows with a single choice works fine for most usage, selecting 20 or 50 or 1000 rows or whatever this is a simple OLV with no images, it's not a treeview or a datalistview or anything, it's just a simple objectlistview with about 7 columns, a handful of simple delegates to handle string formatting, row grouping, a filter, and there is one editable cell which edits with a dropdown selection box there is also a context menu with...

  • James King James King posted a comment on discussion General Discussion

    realised that was giving me "." and ".." folders, so rather than deal with those in my application loop, I have modified that block of code as follows. this seems to be working, and my file/folder enumerating is absolutely racing through now. honestly this is taking something like 15-20% the time it used to. incredible! thanks so much for your help on this if (hasCurrent || !advanceNext) { while ((((FileAttributes)findData.dwFileAttributes & FileAttributes.Directory) == FileAttributes.Directory)...

  • James King James King posted a comment on discussion General Discussion

    okay well I'm not really sure I understand that specific change, but I commented out that segment of code that skips over directories, and that works, I'm getting directories and files all in one go with all the info attached. sorted!

  • James King James King posted a comment on discussion General Discussion

    hmm one thought that instantly comes to mind - I need to get the info from each folder same as the files, as in I need the CreationTime and LastWriteTime need to be returned from the folders does the existing FindNextFile() which wraps WIN32_FIND_DATA get this same information from folders as it does from files? if so then I think I should be okay adapting this

  • James King James King posted a comment on discussion General Discussion

    thanks - but my function doesn't scan into subfolders at all, it only scans the top level folder, to return all files and folders, so this isn't going to work as no matching files would be returned from subfolders. if I did try to go down that road, the function would then be scanning many thousands of additional files for no purpose other than to find their containing folders. in fact this would then produce many layers of subfolders when I'm only looking for the subfolders of the top level, so...

  • James King James King posted a comment on discussion General Discussion

    That's useful to know I was picking over the FastFileInfo code last night and I notice that it does actually get all files and folders from the target, then it skips over the folders before returning the files only my project needs to get information for all the files and all the folders - currently I'm using FastFileInfo to enumerate over the files then System.IO to enumerate over the folders. It's very clearly fetching the same set of information two times (this is to a UNC share over a VPN over...

  • James King James King posted a comment on discussion General Discussion

    can this be adapted to also provide a faster alternative to GetDirectories()?

  • James King James King modified a comment on discussion Open Discussion

    I'm trying to quickly modify the default enum editor so that it only displays certain values (the enum has about 10 values, but on each row of my OLV only 2-3 values need to be available, depending on the other data) I'm just trying to get something functional and I'll probably come back to this to make it nicer in the future, for now I just want it to work I've used a delegate to set up a new combobox which I've populated the way I need, but I can't get a value back from it - I've used an aspectputter...

  • James King James King modified a comment on discussion Open Discussion

    I'm trying to quickly modify the default enum editor so that it only displays certain values (the enum has about 10 values, but on each row of my OLV only 2-3 values need to be available, depending on the other data) I'm just trying to get something functional and I'll probably come back to this to make it nicer in the future, for now I just want it to work I've used a delegate to set up a new combobox which I've populated the way I need, but I can't get a value back from it - I've used an aspectputter...

  • James King James King modified a comment on discussion Open Discussion

    I'm trying to quickly modify the default enum editor so that it only displays certain values (the enum has about 10 values, but on each row of my OLV only 2-3 values need to be available, depending on the other data) I'm just trying to get something functional and I'll probably come back to this to make it nicer in the future, for now I just want it to work I've used a delegate to set up a new combobox which I've populated the way I need, but I can't get a value back from it - I've used an aspectputter...

  • James King James King posted a comment on discussion Open Discussion

    I'm trying to quickly modify the default enum editor so that it only displays certain values (the enum has about 10 values, but on each row of my OLV only 2-3 values need to be available, depending on the other data) I'm just trying to get something functional and I'll probably come back to this to make it nicer in the future, for now I just want it to work I've used a delegate to set up a new combobox which I've populated the way I need, but I can't get a value back from it - I've used an aspectputter...

  • James King James King modified a comment on discussion Open Discussion

    nevermind - I was trying to start and open the actual OLV library and not the demo project (doesn't matter which one you're looking at, it's the "start project" selected in the toolbar that matters)

  • James King James King modified a comment on discussion Open Discussion

    nevermind - I was building the actual OLV library and not the demo

  • James King James King posted a comment on discussion Open Discussion

    yeah I did that and it builds successfully without errors, but those errors on the designer view remain, and the project won't run. are they supposed to run or be viewable in designer? it's kind of hard to know if going through the code of a particular demo is going to be useful without being able to see what the demo actually does

  • James King James King posted a comment on discussion Open Discussion

    Not sure what's going wrong here - I'm trying to open the demos to see how a few things are done I notice there's separate versions for 2005, 2008, 2010, 2012, well I'm using 2019 so I try opening the 2012 one This is what I get

  • James King James King posted a comment on discussion Open Discussion

    okay thanks is there any documentation that explains this? do I need to add the newThing both to the list and to the control? like things.Add(newThing); olv.AddObject(newThing); And will this be a general rule, any additions I will need to add to my List and also to the control? Where I am with this is at the end of "getting started". Everything made sense so far, my "thing" class has a few delegates handling the string conversion, images, etc, all working fine, all making sense. I've had a look...

  • James King James King modified a comment on discussion Open Discussion

    // a list of things with one Thing in it List<Thing> things = new List<Thing>(); things.Add(new Thing("first thing")); olv.SetObjects(things); // this works fine Thing newThing = new Thing("second thing"); things.Add(newThing); // how do I make this appear? olv.RefreshObject(newThing); // this does nothing olv.RefreshObjects(things); // this does nothing

  • James King James King modified a comment on discussion Open Discussion

    // a list of things with one Thing in it List<Thing> things = new List<Thing>(); things.Add(new Thing("first thing")); olv.SetObjects(things); // this works fine Thing newThing = new Thing("second thing"); things.Add(newThing)); // how do I make this appear? olv.RefreshObject(newThing); // this does nothing olv.RefreshObjects(things); // this does nothing

  • James King James King posted a comment on discussion Open Discussion

    // a list of things with one Thing in it List<thing> things = new List<thing>(); things.Add(new Thing("first thing"));</thing></thing> olv.SetObjects(things); // this works fine Thing newThing = new Thing("second thing"); things.Add(newThing)); // how do I make this appear? olv.RefreshObject(newThing); // this does nothing olv.RefreshObjects(things); // this does nothing

  • James King James King modified a comment on discussion Open Discussion

    I'm confused. I've populated my object list and it's working fine I add more items to it, and they don't appear I've gone through the "cookbook" and seen brief references made to RefreshObject() and to AddObject() but these are just mentioned in passing and it's not clear how they are supposed to be used. It's really confusing because this seems like pretty fundamental stuff but I can't find any documentation on this at all? The only thing I can find that mentions RefreshObject() is something that...

  • James King James King posted a comment on discussion Open Discussion

    I'm confused. I've populated my object list and it's working fine I add more items to it, and they don't appear I've gone through the "cookbook" and seen brief references made to RefreshObject() and to AddObject() but these are just mentioned in passing and it's not clear how they are supposed to be used. It's really confusing because this seems like pretty fundamental stuff but I can't find any basic documentation on this at all? The only thing I can find that mentions RefreshObject() is some code...

  • James King James King posted a comment on discussion General Discussion

    that won't work, there are specific rules on TVDB for how specials are listed, and the series is locked. these are extras from the bluray that don't qualify as "specials" under the TVDB rules. regardless, I would like to include them in Kodi.

  • James King James King posted a comment on discussion General Discussion

    If we've got tv episodes that aren't listed in the database, is there any way to manually add these as new entries? I've got a bunch of extras I'd like to add as specials, which aren't in the tvdb database

  • James King James King posted a comment on discussion General Discussion

    what would actually be perfect would be a feature to lock any manually edited data from being overwritten when the movie is rescraped. so as well as specifically locking out certain fields altogether, if we've previously chosen certain artwork, or manually updated some other data (including the sort order) for a movie, then those changes get locked from rescraping by default (obviously you'd want to be able to turn this behaviour off as well). when data is manually edited, perhaps a small icon or...

  • James King James King posted a comment on discussion General Discussion

    this would be a very useful feature as things have changed over time, most of my library is missing bits of art or extra stuff here and there. some are missing trailers. some are missing actors folders. it's not consistent across the whole library. the easiest way to fix this is to select the entire library and "rescrape all" but then I lose the custom sort orders that I've put in manually for the big movie sets. the only other thing I can do is select the entire library and then individually rescrape...

1