home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
OS/2 Shareware BBS: 10 Tools
/
10-Tools.zip
/
ocl150a.zip
/
OCL
/
Samples
/
GTakPM
/
Source
/
GTPMWinControl.cpp
< prev
next >
Wrap
C/C++ Source or Header
|
1996-08-12
|
2KB
|
82 lines
// GTakPM
// (c) Benjamin Stein 1994
// All Rights Reserved
// GTPMWinControl.cpp
// $Header: W:/Projects/OCL/Samples/GTakPM/Source/rcs/GTPMWinControl.cpp 1.50 1996/08/11 23:48:09 B.STEIN Release $
#include "..\Source\GTakPM.hpp"
BOOL GTPMWin::control(MPARAM mp1, MPARAM mp2)
{
switch(SHORT1FROMMP(mp1))
{
case OBUTTONBAR_MOVEOVER:
statline->setText((PSZ) PVOIDFROMMP(mp2));
wasOutOfContainer = TRUE;
break;
case GTPM_DRIVECNR:
switch(SHORT2FROMMP(mp1))
{
case CN_EXPANDTREE:
case CN_COLLAPSETREE: {
pDirInfo record = Drives->queryEmphasis();
if (!record)
break;
if ((SHORT2FROMMP(mp1) == CN_EXPANDTREE) && (!record->wasExpanded)) {
record->wasExpanded = TRUE;
expander.run(); }
if (record->rc.pszTree[1] == ':')
break;
record->expanded = !record->expanded;
if (record->expanded)
record->rc.hptrIcon =
record->selected ? Drives->openfolderS_ico.hptr : Drives->openfolder_ico.hptr;
else
record->rc.hptrIcon =
record->selected ? Drives->folderS_ico.hptr : Drives->folder_ico.hptr;
break; }
case CN_ENTER: {
pDirInfo record = Drives->queryEmphasis();
pDirInfo parent;
if (!record)
break;
parent = Drives->queryRecord(record, CMA_PARENT, CMA_ITEMORDER);
record->selected = !record->selected;
Drives->select.run();
updateListbox(record->dirItem->fullName);
if ((!parent) && (record->selected))
addInclude(record->dirItem->fullName);
else if (((parent) && (parent->selected)) && (!record->selected))
addExclude(record->dirItem->fullName);
else if (((parent) && (!parent->selected)) && (record->selected))
addInclude(record->dirItem->fullName);
break; }
case CN_EMPHASIS: {
PNOTIFYRECORDEMPHASIS pne = (PNOTIFYRECORDEMPHASIS) mp2;
pDirInfo record = Drives->queryEmphasis();
if ((!pne) ||
(!(pne->fEmphasisMask & CRA_SELECTED)) ||
(!record))
break;
Files->scanDirectory << record->dirItem->fullName;
Files->populate.run();
break; }
}
break;
default:
return(FALSE);
}
return(TRUE);
}
// end of source