Source Code (Use browser search to find items of interest.)
Class Index
kcontrol'KCursorConfig (./kdebase/kcontrol/root/main.h:12)
class KCursorConfig : public KConfigWidget
{
Q_OBJECT
public:
QButtonGroup * qbg;
KCursorConfig( QWidget *parent=0, const char *name=0, bool init=FALSE );
~KCursorConfig();
void loadSettings();
void applySettings();
void setCustom(QString);
void GetSettings();
void saveParams();
void initCheck();
public slots:
void wastoggled(int);
void browseSelected();
protected:
virtual void resizeEvent(QResizeEvent *);
private:
const QCursor * cursors[numcursors];
QRadioButton * cnames[numcursors];
QPushButton * browse;
QPoint calcpos(int);
KConfig * config;
int mysel;
QString custom;
};
kcontrol'KCursorConfig::KCursorConfig() (./kdebase/kcontrol/root/main.cpp:34)
KCursorConfig::KCursorConfig(QWidget * parent,const char * name,bool init)
: KConfigWidget(parent,name)
{
qbg=0;
if(init)
dogui=false;
else
dogui=true;
if(dogui) {
browse=new QPushButton("Browse",this);
browse->show();
}
config=kapp->getConfig();
GetSettings();
if(init)
saveParams();
}
kcontrol'KCursorConfig::wastoggled() (./kdebase/kcontrol/root/main.cpp:55)
void KCursorConfig::wastoggled(int n)
{
mysel=n;
}
kcontrol'KCursorConfig::initCheck() (./kdebase/kcontrol/root/main.cpp:60)
void KCursorConfig::initCheck()
{
if(!squingle) {
cursors[0]=&Qt::arrowCursor;
cnames[0]=new QRadioButton("Arrow",this);
cursors[1]=&Qt::upArrowCursor;
cnames[1]=new QRadioButton("Up arrow",this);
cursors[2]=&Qt::crossCursor;
cnames[2]=new QRadioButton("Cross",this);
cursors[3]=&Qt::waitCursor;
cnames[3]=new QRadioButton("Wait",this);
cursors[4]=&Qt::ibeamCursor;
cnames[4]=new QRadioButton("Ibeam",this);
cursors[5]=&Qt::sizeVerCursor;
cnames[5]=new QRadioButton("Vertical size",this);
cursors[6]=&Qt::sizeHorCursor;
cnames[6]=new QRadioButton("Horizontal size",this);
cursors[7]=&Qt::sizeBDiagCursor;
cnames[7]=new QRadioButton("Diagonal 1",this);
cursors[8]=&Qt::sizeFDiagCursor;
cnames[8]=new QRadioButton("Diagonal 2",this);
cursors[9]=&Qt::sizeAllCursor;
cnames[9]=new QRadioButton("All size",this);
cursors[10]=&Qt::splitVCursor;
cnames[10]=new QRadioButton("Split V",this);
cursors[11]=&Qt::splitHCursor;
cnames[11]=new QRadioButton("Split H",this);
cursors[12]=&Qt::pointingHandCursor;
cnames[12]=new QRadioButton("Pointing hand",this);
cursors[13]=new QCursor(); // Default cursor if no custom
cnames[13]=new QRadioButton("Custom",this);
squingle=true;
}
}
kcontrol'KCursorConfig::resizeEvent() (./kdebase/kcontrol/root/main.cpp:95)
void KCursorConfig::resizeEvent(QResizeEvent * qre)
{
int loopc;
if(!squangle) {
initCheck();
qbg=new QButtonGroup();
connect(qbg,SIGNAL(clicked(int)),this,SLOT(wastoggled(int)));
connect(browse,SIGNAL(clicked()),this,SLOT(browseSelected()));
for(loopc=0;loopc<numcursors;loopc++) {
qbg->insert(cnames[loopc],loopc);
if(loopc==mysel) {
cnames[loopc]->toggle();
}
cnames[loopc]->show();
cnames[loopc]->setCursor(*cursors[loopc]);
}
squangle=true;
}
int ww=qre->size().width();
int hh=(qre->size().height())-40;
int xx=20;
int yy=20;
int midpos=ww/2;
int sizeit=(hh-20)/((numcursors+1)/2);
for(loopc=0;loopc<numcursors;loopc+=2) {
cnames[loopc]->setGeometry(xx,yy+(loopc/2*sizeit),midpos-40,sizeit-5);
if(loopc+1<numcursors) {
cnames[loopc+1]->setGeometry(xx+(midpos+20),yy+(loopc/2*sizeit),
ww-40,sizeit-5);
}
}
browse->move(20,qre->size().height()-40);
}
kcontrol'KCursorConfig::~KCursorConfig() (./kdebase/kcontrol/root/main.cpp:130)
KCursorConfig::~KCursorConfig()
{
if(qbg)
delete qbg;
}
kcontrol'KCursorConfig::setCustom() (./kdebase/kcontrol/root/main.cpp:136)
void KCursorConfig::setCustom(QString s)
{
printf("Loading %s\n",s.ascii());
custom=s;
QPixmap wuggle(s.ascii());
if(!wuggle.isNull()) {
// Colour cursors appear to be impossible, grr
QBitmap a;
QBitmap b;
a=wuggle;
if(wuggle.mask()) {
b=*wuggle.mask();
} else {
b=wuggle.createHeuristicMask();
}
delete cursors[13];
cursors[13]=new QCursor(a,b);
cnames[13]->setCursor(*cursors[13]);
}
}
kcontrol'KCursorConfig::GetSettings() (./kdebase/kcontrol/root/main.cpp:157)
void KCursorConfig::GetSettings()
{
initCheck();
config->setGroup("Root cursor");
mysel=config->readNumEntry("Cursor number",-1);
config->setGroup("Custom");
QString wibble;
wibble=config->readEntry("Bitmap","");
custom=wibble;
if(wibble!="") {
setCustom(wibble);
}
if(mysel==-1) {
mysel=5;
}
if(qbg)
qbg->setButton(mysel);
QApplication::desktop()->setCursor(*cursors[mysel]);
}
kcontrol'KCursorConfig::browseSelected() (./kdebase/kcontrol/root/main.cpp:177)
void KCursorConfig::browseSelected()
{
QString ret;
ret=KFileDialog::getOpenFileName();
if(ret) {
setCustom(ret);
}
}
kcontrol'KCursorConfig::saveParams() (./kdebase/kcontrol/root/main.cpp:186)
void KCursorConfig::saveParams()
{
config->setGroup("Root cursor");
config->writeEntry("Cursor number",mysel);
config->setGroup("Custom");
config->writeEntry("Bitmap",custom);
config->sync();
QApplication::desktop()->setCursor(*cursors[mysel]);
}
kcontrol'KCursorConfig::loadSettings() (./kdebase/kcontrol/root/main.cpp:196)
void KCursorConfig::loadSettings()
{
GetSettings();
}
kcontrol'KCursorConfig::applySettings() (./kdebase/kcontrol/root/main.cpp:201)
void KCursorConfig::applySettings()
{
saveParams();
}