Changeset 0b56def06755…
Parent a5d9d8f61d98…
by
Changes to 3 files · Browse files at 0b56def06755 Showing diff from parent a5d9d8f61d98 Diff from another changeset...
@@ -41,20 +41,14 @@ return S_FALSE;
char filterStatus = 0;
- if (myTortoiseClass == TORTOISE_OLE_ADDED)
+ if (myTortoiseClass == 'A')
filterStatus = 'A';
-
+
char status = 0;
if (!HgQueryDirstate(path, filterStatus, status))
return S_FALSE;
- if (myTortoiseClass == TORTOISE_OLE_ADDED && status == 'A')
- return S_OK;
- else if (myTortoiseClass == TORTOISE_OLE_MODIFIED && status == 'M')
- return S_OK;
- else if (myTortoiseClass == TORTOISE_OLE_UNCHANGED && status == 'C')
- return S_OK;
- else if (myTortoiseClass == TORTOISE_OLE_NOTINREPO && status == '?')
+ if (status == myTortoiseClass)
return S_OK;
return S_FALSE;
|
@@ -78,7 +78,7 @@ if (IsEqualIID(rclsid, CLSID_TortoiseHg0))
{
CDllRegSxClassFactory *pcf =
- new CDllRegSxClassFactory(TORTOISE_OLE_UNCHANGED);
+ new CDllRegSxClassFactory('C'); // clean
TDEBUG_TRACE("DllGetClassObject clsname = " << "CLSID_TortoiseHg0");
++InitStatus::inst().unchanged_;
return pcf->QueryInterface(riid, ppvOut);
@@ -86,7 +86,7 @@ else if (IsEqualIID(rclsid, CLSID_TortoiseHg1))
{
CDllRegSxClassFactory *pcf =
- new CDllRegSxClassFactory(TORTOISE_OLE_ADDED);
+ new CDllRegSxClassFactory('A'); // added
TDEBUG_TRACE("DllGetClassObject clsname = " << "CLSID_TortoiseHg1");
++InitStatus::inst().added_;
return pcf->QueryInterface(riid, ppvOut);
@@ -94,7 +94,7 @@ else if (IsEqualIID(rclsid, CLSID_TortoiseHg2))
{
CDllRegSxClassFactory *pcf =
- new CDllRegSxClassFactory(TORTOISE_OLE_MODIFIED);
+ new CDllRegSxClassFactory('M'); // modified
TDEBUG_TRACE("DllGetClassObject clsname = " << "CLSID_TortoiseHg2");
++InitStatus::inst().modified_;
return pcf->QueryInterface(riid, ppvOut);
@@ -102,7 +102,7 @@ else if (IsEqualIID(rclsid, CLSID_TortoiseHg6))
{
CDllRegSxClassFactory *pcf =
- new CDllRegSxClassFactory(TORTOISE_OLE_NOTINREPO);
+ new CDllRegSxClassFactory('?'); // not in repo
TDEBUG_TRACE("DllGetClassObject clsname = " << "CLSID_TortoiseHg6");
++InitStatus::inst().notinrepo_;
return pcf->QueryInterface(riid, ppvOut);
@@ -130,12 +130,12 @@}
-CDllRegSxClassFactory::CDllRegSxClassFactory(TortoiseOLEClass classToMake)
+CDllRegSxClassFactory::CDllRegSxClassFactory(char classToMake) :
+ myclassToMake(classToMake)
{
ThgCriticalSection cs(GetCriticalSection());
m_cRef = 0L;
g_cRefThisDll++;
- myclassToMake = classToMake;
}
@@ -202,12 +202,12 @@}
-CShellExt::CShellExt(TortoiseOLEClass tortoiseClass)
- : m_ppszFileUserClickedOn(0)
+CShellExt::CShellExt(char tortoiseClass) :
+ myTortoiseClass(tortoiseClass),
+ m_ppszFileUserClickedOn(0)
{
ThgCriticalSection cs(GetCriticalSection());
- myTortoiseClass = tortoiseClass;
m_cRef = 0L;
m_pDataObj = NULL;
|
@@ -5,25 +5,14 @@ #include <string>
-enum TortoiseOLEClass
-{
- TORTOISE_OLE_INVALID,
- TORTOISE_OLE_ADDED,
- TORTOISE_OLE_MODIFIED,
- TORTOISE_OLE_UNCHANGED,
- TORTOISE_OLE_IGNORED,
- TORTOISE_OLE_NOTINREPO,
-};
-
-
class CDllRegSxClassFactory: public IClassFactory
{
protected:
ULONG m_cRef;
- TortoiseOLEClass myclassToMake;
+ const char myclassToMake;
public:
- CDllRegSxClassFactory(TortoiseOLEClass);
+ explicit CDllRegSxClassFactory(char classToMake);
~CDllRegSxClassFactory();
static LPCRITICAL_SECTION GetCriticalSection();
@@ -42,7 +31,7 @@class CShellExt:
public IContextMenu3, IShellIconOverlayIdentifier, IShellExtInit
{
- TortoiseOLEClass myTortoiseClass;
+ const char myTortoiseClass;
protected:
ULONG m_cRef;
@@ -57,7 +46,7 @@ public:
static LPCRITICAL_SECTION GetCriticalSection();
- CShellExt(TortoiseOLEClass);
+ explicit CShellExt(char Class);
~CShellExt();
// IUnknown
|
Loading...