ViewVC Help
View Directory | Revision Log | View Changeset | Root Listing
root/ns_dev/Python/NinoCode/Active_prgs
r1003
File Last Change
 ../
RelativitySearchReportBatched/ 1003 (9 days ago) by nino.borges: Adding some messagaing becase of issues wiht locating the saved search.
ITO_Report/ 554 (11 years ago) by nino.borges: made a small change so that it pulls from w and not t.
Concordance/ 562 (11 years ago) by nino.borges: Got rid of the yellow. Not sure what I was thinking here...
Summation/ 563 (11 years ago) by nino.borges: Added some code so that I can catch my own exception.
MCP/ 578 (11 years ago) by nino.borges: update before leaving
PDFExportToDataLoad/ 582 (11 years ago) by nino.borges: update before leaving
PrivDescriptionAssistant/ 619 (9 years ago) by nino.borges: Updated the date.
Relativity/ 623 (9 years ago) by nino.borges: version 1
SOW_Automator/ 639 (8 years ago) by nino.borges: Final versions before leaving AD.
MCP2/ 654 (6 years ago) by nino.borges: small changes
MusicUtilities/ 752 (4 years ago) by nino.borges: A simple program that will add the cover art to a folder of flac files but only ever on the thumb drive dir on the NAS. In this version I was trying to have the function call a subprocess on an entire dir, which didnt work. I'll switch to doing it file level instead.
Evidox/ 758 (4 years ago) by nino.borges: Final delivery with full name splitting to separate fields (as well as the combined)
Ledger/ 782 (3 years ago) by nino.borges: general usage update.
MediaUtilities/ 796 (2 years ago) by nino.borges: This program will compare VVV catalogs of the media drives on the NAS to those on Marty and display the duplicates issues and differences.
Stella/ 8 (13 years ago) by ninoborges: Initial Import
PyClock/ 8 (13 years ago) by ninoborges: Initial Import
compiled/ 8 (13 years ago) by ninoborges: Initial Import
Make_Admin/ 8 (13 years ago) by ninoborges: Initial Import
KPMG_menu_commands/ 8 (13 years ago) by ninoborges: Initial Import
Mp3Suff/ 8 (13 years ago) by ninoborges: Initial Import
MClock/ 8 (13 years ago) by ninoborges: Initial Import
pyvnc2swf-0.8.2/ 8 (13 years ago) by ninoborges: Initial Import
COM/ 8 (13 years ago) by ninoborges: Initial Import
Redgrave/ 986 (4 weeks ago) by nino.borges: A simple program that will call the method to export an STR from the current MAL
Gromulus/ 991 (2 weeks ago) by nino.borges: I meant to have this as the commit message for 1.5 but I had an issue wiht the message. so I added some spaces to the files to force another commit. Gromulus v1.5: user metadata save workflow, schema expansion, and UI refactor - Added user-editable game metadata workflow with explicit Save button (no autosave). - Added dirty-state tracking and Save/Discard/Cancel prompts when navigating away or closing with unsaved changes. - Added DB schema support for new metadata fields: - favorite_game - release_date, release_date_scraped - game_genre, game_genre_scraped - cooperative, cooperative_scraped - max_players, max_players_scraped - Wired UI to user-first metadata precedence with _scraped fallback for release date, genre, cooperative, max players, and description. - Added release date display/storage conversion: - GUI display MM-DD-YYYY - DB storage YYYY-MM-DD - Refactored main game info panel: - moved hash/file/No-Intro/TOSEC detail fields into Reports -> Game Properties modal - added compact TOSEC/NoIntro match indicators - added Favorite, Release Date, Genre, Cooperative, Max Players, Description, and User Notes controls - Enhanced artwork previews from prior update: - larger preview boxes - aspect-ratio-preserving scaling - click-to-open full-size modal viewer - Updated schema/documentation files to stay aligned: - models.py - Database Dictonary.md - canonical DB utility schema/migration logic
MusicDriveSync/ 994 (13 days ago) by nino.borges: Commit 1 Initial commit: Initial commit - MusicDriveSync MusicDriveSync is a wxPython desktop application for managing music on car thumb drives. The user maintains a large FLAC library on a NAS, organized as Artist/Album/Tracks. Rather than physically inserting drives to update them, each thumb drive has a corresponding folder on the NAS. The app lets the user browse the NAS library, see which tracks are already on a given drive (highlighted green), copy missing tracks to the drive folder, and remove tracks from it. Syncing to the physical drive is done separately via rsync. This initial commit includes a working application with the following: - config.py: reads and validates musicdrivesync.ini - MusicDriveSync_Lib.py: NAS library scanning with cache, drive folder scanning with progress callback, comparison index, copy and remove stubs - panels/LibraryPanel.py: wx.TreeCtrl-based library tree with green highlighting for tracks present on the active drive, Show Missing Only filter, and Copy Selected button - panels/DrivePanel.py: wx.TreeCtrl-based drive folder tree with Remove Selected button and confirmation dialog - main.py: top-level frame wiring drive selector, both panels, status bar progress during library and drive scans, path accessibility checks on startup --- Commit 2 Changelog and CLAUDE.md: Add changelog system, fix CLAUDE.md conflicts, and apply session bug fixes Introduces a changelog/ folder to track bugs, architectural decisions, and lessons learned across the life of the project. - changelog/CHANGELOG_INDEX.md: master index table for all entries - changelog/00001_arch.md: DataViewTreeCtrl to wx.TreeCtrl migration - changelog/00002_bug.md: missing drive scan progress feedback fix - changelog/00003_arch.md: library panel color logic reversal - CLAUDE.md: corrected two conflicts with the current codebase: color coding description updated (green = on drive, normal = needs copying); DataViewCtrl note replaced with TreeCtrl decision with pointer to changelog; UI layout diagram corrected; changelog folder added to project structure - panels/DrivePanel.py: converted from DataViewTreeCtrl to wx.TreeCtrl - MusicDriveSync_Lib.py: added progress_callback to ScanDriveFolder() - main.py: wired drive scan progress to status bar; added path accessibility checks at startup --- Commit 3 Fix Remove Selected: Fix Remove Selected, add safety guard, and document NAS read-only rule - Fixed "No tracks selected" on Remove and Copy buttons. Both panels were using TreeItemId.GetID() as a dict key which is unreliable across the wx layer. Replaced with wx.TreeCtrl's native SetItemData/GetItemData. The separate _item_data dict was removed from both panels entirely. See changelog/00004_bug.md. - Fixed 5-minute UI freeze after removing tracks. OnRemoveTracks was calling ScanDriveFolder() on the UI thread after every remove. Replaced with an in-memory filter of _drive_tracks using the list of removed relative paths. - Silent remove failures now surface as a warning dialog. - Added path prefix guard to RemoveTracksFromDrive(). Any file whose path does not begin with drive_path is unconditionally skipped. - Added Absolute Rules section to CLAUDE.md: the NAS music library is strictly read-only. The app may never delete or modify files there. - changelog/00004_bug.md: documents the SetItemData fix and lessons learned. --- Commit 4 Copy and Tools menu: Implement CopyTracksToDrive, add Tools menu with Empty Folder Report CopyTracksToDrive (MusicDriveSync_Lib.py): - Copies files preserving full folder structure relative to music_library_path (e.g. Compilations/Album/track.flac mirrors exactly on the drive folder) - Uses shutil.copy2 to preserve file timestamps and metadata - Skips files that already exist at the destination - Accepts a progress_callback(done, total) for status bar updates OnCopyTracks / _on_copy_complete (main.py): - Copy now runs in a background thread, no UI freeze for large selections - Status bar updates as each file is copied (e.g. "Copying to Taco... 3/12") - After completion, newly copied files are added to _drive_tracks in memory by reading their tags directly, no full rescan needed - Both panels disabled during copy and re-enabled on completion Tools menu (main.py): - Added Tools menu to the right of File in the menu bar - Empty Folder Report: scans the active drive folder and lists all subdirectories that contain no FLAC files (may still contain jpg/png etc.) - Results shown relative to drive root for readability - EmptyFolderReportDialog class added to main.py FindFoldersWithoutFlac (MusicDriveSync_Lib.py): - Two-pass walk: marks all dirs containing FLACs and their ancestors, then collects highest-level dirs with no FLACs using topdown pruning
GatherPathForBegNo.py 150 (13 years ago) by nino.borges: Added the DDSC Logo to the repository and gatherpathforbegno.py
ZipSize.py 232 (13 years ago) by nino.borges: changed expire date on chai v8 and 10. Added GatherSize to MCP lib.
Gather_RollFilm_Dirs.py 233 (13 years ago) by nino.borges: Added roll film dirs.
NativesToDataLoad.py 449 (12 years ago) by nino.borges: A simple app that will let me add natives with load files to a review tool.
Narco_Deficiency_Report.py 481 (12 years ago) by nino.borges: This program will help us crft the deviciency reports from Narco, post query.
HW_enumerator_Checker.py 529 (12 years ago) by nino.borges: A program to test the enumerations in the HW db.
john_muir_dataParser.py 553 (11 years ago) by nino.borges: a simple program that allowed me to parse a pdf and spreadsheet where the rows didnt line up at all.
eDiiToDAT.py 560 (11 years ago) by nino.borges: New program to convert eDiii to dat, so that it can be loaded into RL
PerligoDupeGroup.py 581 (11 years ago) by nino.borges: Add before leaving
HW_IproExtract.py 583 (11 years ago) by nino.borges: update before leaving
HW_IproExtract_B.py 584 (11 years ago) by nino.borges: update before leaving
ExcelEmptyRowRemover.py 595 (10 years ago) by nino.borges: This is after refactoring and is the version that I gave to app support and ESI
EmailDomainExtractor.py 621 (9 years ago) by nino.borges: a program for extracting email domains and outputting the unique values.
FamilyToRandomDict.py 622 (9 years ago) by nino.borges: version 1 of the program to randomize but keep family together
ClientStatAnalysis.py 640 (8 years ago) by nino.borges: minor changes in use
SplitTheCheck.py 653 (6 years ago) by nino.borges: simple program to play with splitting a check
Document_Oculus.py 667 (6 years ago) by nino.borges: Program to help in detection of near duplicates in paper world
HomeAutomationStatusReport.py 668 (6 years ago) by nino.borges: Creates an HTML report on the home systems and sends to website
directorySize.py 8 (13 years ago) by ninoborges: Initial Import
file_ext_rename.py 8 (13 years ago) by ninoborges: Initial Import
Commence_results.py 8 (13 years ago) by ninoborges: Initial Import
test_url2.pyw 8 (13 years ago) by ninoborges: Initial Import
winGuiAuto.py 8 (13 years ago) by ninoborges: Initial Import
FileExtReplace.py 8 (13 years ago) by ninoborges: Initial Import
Syncor.py 8 (13 years ago) by ninoborges: Initial Import
Gather_ImgDir_Sizes_OLD.py 8 (13 years ago) by ninoborges: Initial Import
Test_URL.py 8 (13 years ago) by ninoborges: Initial Import
itunes_lib.py 8 (13 years ago) by ninoborges: Initial Import
Nav_update.py 8 (13 years ago) by ninoborges: Initial Import
jpgToWeb.py 8 (13 years ago) by ninoborges: Initial Import
EB_FileRenamer.py 8 (13 years ago) by ninoborges: Initial Import
NS_MOTD_client.pyw 8 (13 years ago) by ninoborges: Initial Import
UnclMannys_OldestShare.py 8 (13 years ago) by ninoborges: Initial Import
pyrobocopy.py 8 (13 years ago) by ninoborges: Initial Import
CopyThese.py 8 (13 years ago) by ninoborges: Initial Import
GenericGUIAPP.py 8 (13 years ago) by ninoborges: Initial Import
Dii_creator.py 8 (13 years ago) by ninoborges: Initial Import
NS_MOTD_server.pyw 8 (13 years ago) by ninoborges: Initial Import
batesCompare.py 8 (13 years ago) by ninoborges: Initial Import
WakeOnLan.py 8 (13 years ago) by ninoborges: Initial Import
Wanda.py 8 (13 years ago) by ninoborges: Initial Import
Y_Map.py 8 (13 years ago) by ninoborges: Initial Import
PmwColor.py 8 (13 years ago) by ninoborges: Initial Import
Print_It_All.py 8 (13 years ago) by ninoborges: Initial Import
file_counter.py 8 (13 years ago) by ninoborges: Initial Import
pv_dest 8 (13 years ago) by ninoborges: Initial Import
moveup.py 8 (13 years ago) by ninoborges: Initial Import
EBStartUp.py 8 (13 years ago) by ninoborges: Initial Import
Pmw.py 8 (13 years ago) by ninoborges: Initial Import
doall.py 8 (13 years ago) by ninoborges: Initial Import
ImgDir_Cat_ForCLM.py 8 (13 years ago) by ninoborges: Initial Import
DisplayImage.py 8 (13 years ago) by ninoborges: Initial Import
NinoSystemsInfo.py 8 (13 years ago) by ninoborges: Initial Import
Reunitizer.py 8 (13 years ago) by ninoborges: Initial Import
peopleview_installer.py 8 (13 years ago) by ninoborges: Initial Import
Nino_Chat.py 8 (13 years ago) by ninoborges: Initial Import
AppendTiffExt.py 8 (13 years ago) by ninoborges: Initial Import
DirCompare.py 8 (13 years ago) by ninoborges: Initial Import
PmwBlt.py 8 (13 years ago) by ninoborges: Initial Import
Low_steve.py 8 (13 years ago) by ninoborges: Initial Import
URL_Grab.py 8 (13 years ago) by ninoborges: Initial Import
ImgInfoToDII.py 8 (13 years ago) by ninoborges: Initial Import
Abbyy_Automator.py 8 (13 years ago) by ninoborges: Initial Import
Wanda_lin.py 8 (13 years ago) by ninoborges: Initial Import
EarthClock-1.4.rar 8 (13 years ago) by ninoborges: Initial Import
catlogfiles.py 8 (13 years ago) by ninoborges: Initial Import
PS_Admin.py 8 (13 years ago) by ninoborges: Initial Import
CompareDirByHash.py 8 (13 years ago) by ninoborges: Initial Import
EB_FileRenamer_2.py 8 (13 years ago) by ninoborges: Initial Import
Personal_mbd.py 8 (13 years ago) by ninoborges: Initial Import
comicGrab.py 8 (13 years ago) by ninoborges: Initial Import
CleanOut_Share.py 8 (13 years ago) by ninoborges: Initial Import
Carry_cat.py 8 (13 years ago) by ninoborges: Initial Import
lgflcntr.py 8 (13 years ago) by ninoborges: Initial Import
mp3info.py 8 (13 years ago) by ninoborges: Initial Import
directorySize2.py 8 (13 years ago) by ninoborges: Initial Import
output0.tif 8 (13 years ago) by ninoborges: Initial Import
output1.tif 8 (13 years ago) by ninoborges: Initial Import
Gather_ImgDir_Sizes.py 8 (13 years ago) by ninoborges: Initial Import
StripComp.py 8 (13 years ago) by ninoborges: Initial Import
Upload.py 8 (13 years ago) by ninoborges: Initial Import
PS_Split_join.py 8 (13 years ago) by ninoborges: Initial Import
Vacation_Days.pyw 8 (13 years ago) by ninoborges: Initial Import
MacAddrGetter.py 8 (13 years ago) by ninoborges: Initial Import
Reassemble.py 8 (13 years ago) by ninoborges: Initial Import
winamp.py 8 (13 years ago) by ninoborges: Initial Import
PyBlade.py 8 (13 years ago) by ninoborges: Initial Import
LookInIPF.py 8 (13 years ago) by ninoborges: Initial Import
Nino.pyw 8 (13 years ago) by ninoborges: Initial Import
log_file.py 8 (13 years ago) by ninoborges: Initial Import
Sql_Get.py 8 (13 years ago) by ninoborges: Initial Import
find_username.py 8 (13 years ago) by ninoborges: Initial Import
Carrie.py 8 (13 years ago) by ninoborges: Initial Import
Gather_CD_Dirs_old.py 8 (13 years ago) by ninoborges: Initial Import
ifmerger.py 8 (13 years ago) by ninoborges: Initial Import
DII_Kreator.py 8 (13 years ago) by ninoborges: Initial Import
Nino.py 8 (13 years ago) by ninoborges: Initial Import
Gather_CD_Dirs.py 8 (13 years ago) by ninoborges: Initial Import
eRoom_MultiFileAdd.py 8 (13 years ago) by ninoborges: Initial Import
26 directories and 99 files shown