Menu

Conversion to wxpython 3/wxphoenix

Mat L
2017-01-06
2017-01-10
  • Mat L

    Mat L - 2017-01-06

    I am making progress converting to the latest wx. I am also de-funking the source code. I haven't been looking in there for a while, but it's chock full of old garbage junk code where things don't make sense. In terms of the UI, that is. All those sizers and positioning of objects etc. Even the menu names are strange hah hah. too bad you can't make frames modal anymore. I will look into that.

     
  • Mat L

    Mat L - 2017-01-06

    ok now you can open a file, view the data in rows, save the file and edit the file. Next I'll get data searching and most of the dialogs fixed. They are all custom. Then I'll work on fixing up the UI. It needs some love because I obviously didn't understand it yet at that point when I wrote it and never looked at it again. The non modal frames are really irritating me though. No solution to that yet.

     
  • Mat L

    Mat L - 2017-01-08

    Things are coming together at last. Now the data options dialog works, so you can pick a different header row or delimiter. I got rid of most of the deprecations in the code and lots of the garbage code and trash calls to extra UI crap. Knowing what you are doing in UI coding is handy... should have really read the documentation on sizer functions/methods earlier. Like 10 years ago.

     
  • Mat L

    Mat L - 2017-01-08

    Finding things in the CSV file is the next area to tackle. It works in data finding and headers, but not in the grid dialog. Should be easy. After that, everything should be working, I just have to spend lots of time going over the entire codebase and fixing some outstanding issues. Like why I used those globals and stupid crap like that.

     
  • Mat L

    Mat L - 2017-01-08

    perhaps now I have got rid of all the deprecations and errors. Program is working great again! way better than when I had initially created it. there's only one serious problem, and that's the lack of grid.Deselect(row). It really hurts the way I select the matches in the grid. If the coders don't put that ability back in, I will have to create a custom indicator. Ugh. you can't tell which rows you have already selected then unselected!

     
  • Mat L

    Mat L - 2017-01-09

    Conversion will be complete once I hear back about the deselect problem. Could take a while. Eventually I will be forced to changed the interface if I don't get a resolution.

     
  • Mat L

    Mat L - 2017-01-10

    wow, there are very few code lines I haven't touched now. I put all my latest knowledge of the popup menus into the find grid code. Now there are separate defs for each popup item except reverse which doesn't need one. Makes finding the code or adding new code way easier. Also I just added more code to complete the row selection interface the way I wanted without DeselectRow. The UI is getting alot of polish and it looks far better. I posted a new screenshot. Probably going to consider putting EXPAND style on a few things.

     
  • Mat L

    Mat L - 2017-02-13

    after I get the latest wxphoenix installed the grid.Deselect(row) will be back. I'll try it out!

     

    Last edit: Mat L 2017-02-13
  • Mat L

    Mat L - 2017-02-14

    ok! In an excellent turn of events, my bug report for phoenix was accepted and DeselectRow is back in action! So I altered the time-wasting code, and now it only uses that one line, instead of the crazy loops and re-selections of all the rows.

     
  • Mat L

    Mat L - 2017-02-14

    yes, it seems the code which assigns the data in the grid needs a little..uhhh love? It was always looking strange to me, but it was so complex over the years I forgot what it actually does. So many tries and excepts! ifs and elses! woah!

     
  • Mat L

    Mat L - 2017-02-15

    ok, I reviewed the code and determined it's meaning. Those try excepts were hiding some garbage code with clever uhhh hackings. It was replicated in the refreshheaders function as well. Same junk code. when I removed the junk it revealed some more nasties I had been glossing over with try except...oh my! That batch of coding was definitely a garbage haul. I wonder how it got in there and stayed around for so long? I suppose at some point you forget about it...either that or it's blocked from your mind because it's so terrible.

     
  • Mat L

    Mat L - 2017-02-15

    mmmmm really been working on the nasties now. Looking at the code I wrote, I suppose I can forgive myself because this was the first python project I wrote...but seriously now. Lots of it was just garbage glossed over, so I am looking at the main code blocks in the program. The underpinnings need work now that the dialogs are almost all fixed up. Erasing a column added extra \n in there. Yikes. All the testing I had done was with erasing invalid rows from the database tables. I suppose this part never really got tested. But now I just have lots of spare time to test it. Some of the programs functions probably need a real life check, because lots of the things I was doing to data isn't something everyone needs/understands. The program was great when you couldn't edit the data lol but after I had changed it to edit the data, things went nuts.

     
  • Mat L

    Mat L - 2017-02-15

    ok I fixed the formatting errors that were introduced by erasing a column. Next I'll make sure the selection and filter of the column picks the one you had selected and erases it. I already fixed it's formatting errors. thinking of renaming the function that drops a range. Not much distinction between them.

     
  • Mat L

    Mat L - 2017-02-26

    the change to wxphoenix is complete, but I will ask about the makemodal for frames. That feature doesn't exist anymore, but I considered it important for the frame. I can make the frame close itself if you go back to the main window, I suppose. A dialog will not work.

     
  • Mat L

    Mat L - 2017-02-26

    well I went with the suggestion on github and used windowdisabler. Works the same-ish! Definitely makes a frame modal.

     

Log in to post a comment.

Want the latest updates on software, tech news, and AI?
Get latest updates about software, tech news, and AI from SourceForge directly in your inbox once a month.