Skip to content
This repository was archived by the owner on Nov 6, 2025. It is now read-only.

Commit f527158

Browse files
committed
V2.1: make CB7 a separate control option; fix dialog layout; add PHZ and GGB as tied to ZIP; fix typo preventing CB7 from working
1 parent 9256be3 commit f527158

File tree

7 files changed

+58
-18
lines changed

7 files changed

+58
-18
lines changed

CBXManager/CBXManager.rc

Lines changed: 14 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -23,35 +23,36 @@ FONT 8, "MS Shell Dlg 2", 400, 0, 1
2323
}
2424

2525
// X,Y,W,H
26-
IDD_MAINDLG DIALOG 0, 0, 190, 265
26+
IDD_MAINDLG DIALOG 0, 0, 190, 271
2727
STYLE DS_SETFONT | WS_BORDER | WS_CAPTION | WS_DLGFRAME | WS_SYSMENU
2828
CAPTION "DarkThumbs Manager"
2929
FONT 8, "Ms Shell Dlg"
3030
{
31-
LTEXT "DarkThumbs V2.0 - Oct 2024", IDC_VERSION_DESC, 30, 4, 145, 10, SS_LEFT, WS_EX_TRANSPARENT
31+
LTEXT "DarkThumbs V2.1 - May 2025", IDC_VERSION_DESC, 30, 4, 145, 10, SS_LEFT, WS_EX_TRANSPARENT
3232

33-
GROUPBOX "File types", IDC_TH_GROUP, 10, 15, 170, 120
33+
GROUPBOX "File types", IDC_TH_GROUP, 10, 15, 170, 163
3434

3535
AUTOCHECKBOX "CBR Image Archives", IDC_CB_CBR, 20, 28, 150, 10
3636
AUTOCHECKBOX "CBZ Image Archives", IDC_CB_CBZ, 20, 43, 145, 10
3737
AUTOCHECKBOX "EPUB ebooks", IDC_CB_EPUB, 20, 58, 150, 10
3838
AUTOCHECKBOX "FB2 ebooks", IDC_CB_FB, 20, 73, 150, 10
3939
AUTOCHECKBOX "Kindle ebooks (MOBI, AZW, AZW3)", IDC_CB_MOBI, 20, 88, 150, 10
4040
AUTOCHECKBOX "RAR Archives", IDC_CB_RAR, 20, 103, 150, 10
41-
AUTOCHECKBOX "ZIP Archives", IDC_CB_ZIP, 20, 118, 150, 10
41+
AUTOCHECKBOX "ZIP Archives (ZIP, PHZ, GGB)", IDC_CB_ZIP, 20, 118, 150, 10
4242
AUTOCHECKBOX "7z Archives", IDC_CB_7Z, 20, 133, 150, 10 // V2.0
43-
AUTOCHECKBOX "DJVU", IDC_CB_DJVU, 20, 145, 150, 10 // V2.0
43+
AUTOCHECKBOX "CB7 Image Archives", IDC_CB_CB7, 20, 148, 150, 10 // V2.1
44+
AUTOCHECKBOX "DJVU (DJVU, DJV)", IDC_CB_DJVU, 20, 163, 150, 10 // V2.0
4445

45-
GROUPBOX "Advanced", IDC_SORT_ADVOPTGROUP, 10, 165, 170, 70
46+
GROUPBOX "Advanced", IDC_SORT_ADVOPTGROUP, 10, 181, 170, 70
4647

47-
AUTOCHECKBOX "Skip Scanslation files", IDC_CB_SKIP, 20, 177, 155, 8
48-
AUTOCHECKBOX "Sort images alphabetically", IDC_CB_SORT, 20, 192, 155, 8
49-
AUTOCHECKBOX "Prefer 'cover' file", IDC_CB_COVER, 30, 207, 140, 8
50-
AUTOCHECKBOX "Show archive indicator", IDC_CB_SHOWICON, 20, 222, 150, 8
48+
AUTOCHECKBOX "Skip Scanslation files", IDC_CB_SKIP, 20, 193, 155, 8
49+
AUTOCHECKBOX "Sort images alphabetically", IDC_CB_SORT, 20, 208, 155, 8
50+
AUTOCHECKBOX "Prefer 'cover' file", IDC_CB_COVER, 30, 223, 140, 8
51+
AUTOCHECKBOX "Show archive indicator", IDC_CB_SHOWICON, 20, 238, 150, 8
5152

52-
DEFPUSHBUTTON "OK", IDOK, 10, 240, 50, 14
53-
PUSHBUTTON "Cancel", IDCANCEL, 70, 240, 50, 14
54-
PUSHBUTTON "Apply", IDC_APPLY, 130, 240, 50, 14
53+
DEFPUSHBUTTON "OK", IDOK, 10, 253, 50, 14
54+
PUSHBUTTON "Cancel", IDCANCEL, 70, 253, 50, 14
55+
PUSHBUTTON "Apply", IDC_APPLY, 130, 253, 50, 14
5556
}
5657

5758

CBXManager/MainDlg.cpp

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -97,6 +97,7 @@ void CMainDlg::InitUI()
9797
Button_SetCheck(GetDlgItem(IDC_CB_FB), m_reg.HasTH(CBX_FB2));
9898
Button_SetCheck(GetDlgItem(IDC_CB_7Z), m_reg.HasTH(CBX_7Z));
9999
Button_SetCheck(GetDlgItem(IDC_CB_DJVU), m_reg.HasTH(CBX_DJVU));
100+
Button_SetCheck(GetDlgItem(IDC_CB_CB7), m_reg.HasTH(CBX_CB7)); // V2.1
100101

101102
Button_SetCheck(GetDlgItem(IDC_CB_SHOWICON), m_reg.IsShowIconOpt());//CBX_SHOWICON
102103
Button_SetCheck(GetDlgItem(IDC_CB_SORT), m_reg.IsSortOpt());//CBX_SORT
@@ -151,6 +152,17 @@ void CMainDlg::OnApplyImpl()
151152
bRefresh=TRUE;
152153
m_reg.SetHandlers(CBX_ZIP, bRet);
153154
}
155+
if (bRet != m_reg.HasTH(CBX_PHZ))
156+
{
157+
bRefresh = TRUE;
158+
m_reg.SetHandlers(CBX_PHZ, bRet);
159+
}
160+
if (bRet != m_reg.HasTH(CBX_GGB))
161+
{
162+
bRefresh = TRUE;
163+
m_reg.SetHandlers(CBX_GGB, bRet);
164+
}
165+
154166
bRet = (BST_CHECKED == Button_GetCheck(GetDlgItem(IDC_CB_EPUB)));
155167
if (bRet != m_reg.HasTH(CBX_EPUB))
156168
{
@@ -214,6 +226,12 @@ void CMainDlg::OnApplyImpl()
214226
bRefresh = TRUE;
215227
m_reg.SetHandlers(CBX_DJV, bRet);
216228
}
229+
bRet = (BST_CHECKED == Button_GetCheck(GetDlgItem(IDC_CB_CB7))); // V2.1
230+
if (bRet != m_reg.HasTH(CBX_CB7))
231+
{
232+
bRefresh = TRUE;
233+
m_reg.SetHandlers(CBX_CB7, bRet);
234+
}
217235

218236
if (bRefresh)
219237
{

CBXManager/RegManager.h

Lines changed: 11 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,10 @@
3030
#define CBX_7ZIP_KEY _T("SOFTWARE\\Classes\\.7Z\\shellex\\{BB2E617C-0920-11d1-9A0B-00C04FC2D6C1}")
3131
#define CBX_DJVU_KEY _T("SOFTWARE\\Classes\\.DJVU\\shellex\\{BB2E617C-0920-11d1-9A0B-00C04FC2D6C1}")
3232
#define CBX_DJV_KEY _T("SOFTWARE\\Classes\\.DJV\\shellex\\{BB2E617C-0920-11d1-9A0B-00C04FC2D6C1}")
33-
33+
#define CBX_CB7TH_KEY _T("SOFTWARE\\Classes\\.CB7\\shellex\\{BB2E617C-0920-11d1-9A0B-00C04FC2D6C1}")
34+
#define CBX_PHZ_KEY _T("SOFTWARE\\Classes\\.PHZ\\shellex\\{BB2E617C-0920-11d1-9A0B-00C04FC2D6C1}")
35+
#define CBX_GGB_KEY _T("SOFTWARE\\Classes\\.GGB\\shellex\\{BB2E617C-0920-11d1-9A0B-00C04FC2D6C1}")
36+
3437
// infotip handler keys
3538
#define CBX_ZIPIH_KEY _T("SOFTWARE\\Classes\\.ZIP\\shellex\\{00021500-0000-0000-C000-000000000046}")
3639
#define CBX_CBZIH_KEY _T("SOFTWARE\\Classes\\.CBZ\\shellex\\{00021500-0000-0000-C000-000000000046}")
@@ -53,6 +56,9 @@
5356
#define CBX_7Z 10 // V2.0
5457
#define CBX_DJVU 11 // V2.0
5558
#define CBX_DJV 12 // V2.0
59+
#define CBX_CB7 13 // V2.1
60+
#define CBX_PHZ 14 // V2.1
61+
#define CBX_GGB 15 // V2.1
5662

5763
#define SORT_KEY L"NoSort"
5864
#define SKIP_KEY L"SkipScanlation"
@@ -188,6 +194,10 @@ class CRegManager
188194
case CBX_7Z: return CBX_7ZIP_KEY;
189195
case CBX_DJVU: return CBX_DJVU_KEY;
190196
case CBX_DJV: return CBX_DJV_KEY;
197+
case CBX_CB7: return CBX_CB7TH_KEY; // V2.1
198+
case CBX_PHZ: return CBX_PHZ_KEY; // V2.1
199+
case CBX_GGB: return CBX_GGB_KEY; // V2.1
200+
191201
default:break;
192202
}
193203
return NULL;

CBXManager/resource.h

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -25,3 +25,4 @@
2525
#define IDC_CB_COVER 57688
2626
#define IDC_CB_7Z 57689 // V2.0
2727
#define IDC_CB_DJVU 57690 // V2.0
28+
#define IDC_CB_CB7 57691 // V2.1

CBXShell/CBXShellClass.h

Lines changed: 10 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -73,7 +73,16 @@ class ATL_NO_VTABLE CCBXShell :
7373
STDMETHOD(Extract)(HBITMAP* phBmpThumbnail)
7474
{
7575
HRESULT res = m_cbx.OnExtract(phBmpThumbnail);
76-
if (res != S_OK) logit(L"*****Fail");
76+
if (res != S_OK)
77+
{
78+
logit(L"*****Fail");
79+
}
80+
else
81+
{
82+
BITMAP bm;
83+
GetObject(*phBmpThumbnail, (int)sizeof(bm), &bm);
84+
logit(_T(" img hw (%d, %d)"), bm.bmHeight, bm.bmWidth);
85+
}
7786
return res;
7887
}
7988
// IExtractImage2

CBXShell/cbxArchive.h

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -622,7 +622,8 @@ catch (...)
622622
#endif
623623
if (StrEqual(szExt, _T(".fb2"))) return CBXTYPE_FB;
624624
if (StrEqual(szExt, _T(".7z"))) return CBXTYPE_7Z;
625-
if (StrEqual(szExt, _T(".cbz"))) return CBXTYPE_7Z;
625+
if (StrEqual(szExt, _T(".cb7"))) return CBXTYPE_7Z;
626+
if (StrEqual(szExt, _T(".ggb"))) return CBXTYPE_ZIP;
626627

627628

628629
return CBXTYPE_NONE;

DarkThumbsSetup_x64/DarkThumbsSetup_x64.vdproj

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -298,14 +298,14 @@
298298
"Name" = "8:Microsoft Visual Studio"
299299
"ProductName" = "8:DarkThumbs"
300300
"ProductCode" = "8:{7E34E65E-4A72-4AD7-8C0D-AED276C06B51}"
301-
"PackageCode" = "8:{CF218567-B94E-4FFF-B5E9-57C2FE46D214}"
301+
"PackageCode" = "8:{16AD5380-2B2E-4963-B5D6-AD3AF12A605D}"
302302
"UpgradeCode" = "8:{AF24A565-E9E1-4A07-B720-56F2F458A4DD}"
303303
"AspNetVersion" = "8:2.0.50727.0"
304304
"RestartWWWService" = "11:FALSE"
305305
"RemovePreviousVersions" = "11:TRUE"
306306
"DetectNewerInstalledVersion" = "11:TRUE"
307307
"InstallAllUsers" = "11:TRUE"
308-
"ProductVersion" = "8:2.0"
308+
"ProductVersion" = "8:2.1"
309309
"Manufacturer" = "8:DarkThumbs"
310310
"ARPHELPTELEPHONE" = "8:"
311311
"ARPHELPLINK" = "8:"

0 commit comments

Comments
 (0)