Source Code (Use browser search to find items of interest.)

Class Index

kcontrol'KDesktopConfig (./kdebase/kcontrol/kwm/desktop.h:41)

class KDesktopConfig : public KCModule
{
  Q_OBJECT

public:

  KDesktopConfig( QWidget *parent=0, const char* name=0 );
  ~KDesktopConfig( );

  void load();
  void save();
  void defaults();

public  slots:

  void setEBorders();
  void slotBrdrChanged(int);
  void slotWndwChanged(int);

  
private:

  bool getElectricBorders( void );
  int getElectricBordersDelay();
  bool getElectricBordersMovePointer( void );

  void setElectricBorders( bool );
  void setElectricBordersDelay( int );
  void setElectricBordersMovePointer( bool );

  int getBorderSnapZone();
  void setBorderSnapZone( int );
  
  int getWindowSnapZone();
  void setWindowSnapZone( int );

  QButtonGroup *ElectricBox;
  QCheckBox *enable, *movepointer;
  KIntNumInput *delays;
  QLabel *sec;

  QButtonGroup *MagicBox;
  KIntNumInput *BrdrSnap, *WndwSnap;
};

kcontrol'KDesktopConfig::~KDesktopConfig() (./kdebase/kcontrol/kwm/desktop.cpp:57)

KDesktopConfig::~KDesktopConfig ()
{
}

extern "C" {

kcontrol'KDesktopConfig::KDesktopConfig() (./kdebase/kcontrol/kwm/desktop.cpp:70)

KDesktopConfig::KDesktopConfig (QWidget * parent, const char *name)
  : KCModule (parent, name)
{

  QBoxLayout *lay = new QVBoxLayout(this, 5);

  ElectricBox = new QButtonGroup(i18n("Active desktop borders"),
				 this);

  QGridLayout *eLay = new QGridLayout(ElectricBox,5,3,10,5);
  eLay->addRowSpacing(0,10);
  eLay->setColStretch(0,0);
  eLay->setColStretch(1,1);

  enable= new
    QCheckBox(i18n("Enable active desktop borders"),
	      ElectricBox);
  eLay->addMultiCellWidget(enable,1,1,0,1);

  movepointer = new QCheckBox(i18n("Move pointer towards center after switch"),
                              ElectricBox);
  eLay->addMultiCellWidget(movepointer,2,2,0,1);

  delays = new KIntNumInput(10, ElectricBox);
  delays->setRange(0, MAX_EDGE_RES/10, 10, true);
  delays->setLabel(i18n("Desktop switch delay:"));
  eLay->addMultiCellWidget(delays,4,4,1,2);

  connect( enable, SIGNAL(clicked()), this, SLOT(setEBorders()));

  eLay->activate();

  lay->addWidget(ElectricBox,5);

  // Electric borders are not in kwin yet => disable controls
  enable->setEnabled(false);
  movepointer->setEnabled(false);
  delays->setEnabled(false);


  //CT 15mar98 - add EdgeResistance, BorderAttractor, WindowsAttractor config
  MagicBox = new QButtonGroup(i18n("Magic Borders"), this);

  eLay = new QGridLayout(MagicBox,4,3,10,5);
  eLay->addRowSpacing(0,10);
  eLay->addRowSpacing(2,10);
  eLay->setColStretch(0,0);
  eLay->setColStretch(1,0);
  eLay->setColStretch(2,1);

  BrdrSnap = new KIntNumInput(10, MagicBox);
  BrdrSnap->setRange( 0, MAX_BRDR_SNAP);
  BrdrSnap->setLabel(i18n("Border Snap Zone:"));
  BrdrSnap->setSuffix(i18n("pixels"));
  BrdrSnap->setSteps(1,1);
  eLay->addWidget(BrdrSnap,1,2);
  eLay->addRowSpacing(0,5);

  WndwSnap = new KIntNumInput(10, MagicBox);
  WndwSnap->setRange( 0, MAX_WNDW_SNAP);
  WndwSnap->setLabel( i18n("pixels"));
  eLay->addWidget(WndwSnap,3,2);
  lay->addWidget(MagicBox,5);

  load();

  connect( BrdrSnap, SIGNAL(valueChanged(int)), this, SLOT(slotBrdrChanged(int)));
  connect( WndwSnap, SIGNAL(valueChanged(int)), this, SLOT(slotWndwChanged(int)));
}


kcontrol'KDesktopConfig::slotBrdrChanged() (./kdebase/kcontrol/kwm/desktop.cpp:140)

void KDesktopConfig::slotBrdrChanged(int /* value */)
{
  emit changed(true);
}


kcontrol'KDesktopConfig::slotWndwChanged() (./kdebase/kcontrol/kwm/desktop.cpp:145)

void KDesktopConfig::slotWndwChanged(int /* value */)
{
  emit changed(true);
}


kcontrol'KDesktopConfig::setEBorders() (./kdebase/kcontrol/kwm/desktop.cpp:150)

void KDesktopConfig::setEBorders()
{
    delays->setEnabled(enable->isChecked());
    movepointer->setEnabled(enable->isChecked());
}


kcontrol'KDesktopConfig::getElectricBorders() (./kdebase/kcontrol/kwm/desktop.cpp:156)

bool KDesktopConfig::getElectricBorders()
{
    return  enable->isChecked();
}


kcontrol'KDesktopConfig::getElectricBordersDelay() (./kdebase/kcontrol/kwm/desktop.cpp:161)

int KDesktopConfig::getElectricBordersDelay()
{
    return delays->value();
}


kcontrol'KDesktopConfig::getElectricBordersMovePointer() (./kdebase/kcontrol/kwm/desktop.cpp:166)

bool KDesktopConfig::getElectricBordersMovePointer()
{
    return movepointer->isChecked();
}


kcontrol'KDesktopConfig::setElectricBordersMovePointer() (./kdebase/kcontrol/kwm/desktop.cpp:171)

void KDesktopConfig::setElectricBordersMovePointer(bool move){

  if(move){
    movepointer->setEnabled(true);
    movepointer->setChecked(true);
  }
  else{
    movepointer->setEnabled(false);
    movepointer->setChecked(false);
  }

  movepointer->setEnabled(enable->isChecked());

}


kcontrol'KDesktopConfig::setElectricBorders() (./kdebase/kcontrol/kwm/desktop.cpp:186)

void KDesktopConfig::setElectricBorders(bool b){
    enable->setChecked(b);
    setEBorders();
}


kcontrol'KDesktopConfig::setElectricBordersDelay() (./kdebase/kcontrol/kwm/desktop.cpp:191)

void KDesktopConfig::setElectricBordersDelay(int delay)
{
    delays->setValue(delay);
}



kcontrol'KDesktopConfig::getBorderSnapZone() (./kdebase/kcontrol/kwm/desktop.cpp:197)

int KDesktopConfig::getBorderSnapZone() {
  return BrdrSnap->value();
}


kcontrol'KDesktopConfig::setBorderSnapZone() (./kdebase/kcontrol/kwm/desktop.cpp:201)

void KDesktopConfig::setBorderSnapZone(int pxls) {
  BrdrSnap->setValue(pxls);
}


kcontrol'KDesktopConfig::getWindowSnapZone() (./kdebase/kcontrol/kwm/desktop.cpp:205)

int KDesktopConfig::getWindowSnapZone() {
  return WndwSnap->value();
}


kcontrol'KDesktopConfig::setWindowSnapZone() (./kdebase/kcontrol/kwm/desktop.cpp:209)

void KDesktopConfig::setWindowSnapZone(int pxls) {
  WndwSnap->setValue(pxls);
}


kcontrol'KDesktopConfig::load() (./kdebase/kcontrol/kwm/desktop.cpp:213)

void KDesktopConfig::load( void )
{
  int v;
  QString key;

  KConfig *config = new KConfig("kwinrc");
  config->setGroup( "Windows" );

/* Electric borders are not in kwin yet (?)
  v = config->readNumEntry(KWM_ELECTRIC_BORDER);
  setElectricBorders(v != -1);

  v = config->readNumEntry(KWM_ELECTRIC_BORDER_DELAY);
  setElectricBordersDelay(v);

  //CT 17mar98 re-allign this reading with the one in kwm  ("on"/"off")
  // matthias: this is obsolete now. Should be fixed in 1.1 with NoWarp, MiddleWarp, FullWarp
  key = config->readEntry(KWM_ELECTRIC_BORDER_MOVE_POINTER);
  if (key == "MiddleWarp")
    setElectricBordersMovePointer(TRUE);
*/
  //CT 15mar98 - magics
  v = config->readNumEntry(KWM_BRDR_SNAP_ZONE, KWM_BRDR_SNAP_ZONE_DEFAULT);
  if (v > MAX_BRDR_SNAP) setBorderSnapZone(MAX_BRDR_SNAP);
  else if (v < 0) setBorderSnapZone (0);
  else setBorderSnapZone(v);

  v = config->readNumEntry(KWM_WNDW_SNAP_ZONE, KWM_WNDW_SNAP_ZONE_DEFAULT);
  if (v > MAX_WNDW_SNAP) setWindowSnapZone(MAX_WNDW_SNAP);
  else if (v < 0) setWindowSnapZone (0);
  else setWindowSnapZone(v);
  //CT ---

  emit changed(false);
  delete config;
}


kcontrol'KDesktopConfig::save() (./kdebase/kcontrol/kwm/desktop.cpp:250)

void KDesktopConfig::save( void )
{
  int v;
//  bool bv;

  KConfig *config = new KConfig("kwinrc", false, false);
  config->setGroup( "Windows" );

/* Electric borders are not in kwin yet
  v = getElectricBordersDelay()>10?80*getElectricBordersDelay():800;
  if (getElectricBorders())
    config->writeEntry(KWM_ELECTRIC_BORDER,v);
  else
    config->writeEntry(KWM_ELECTRIC_BORDER,-1);


  config->writeEntry(KWM_ELECTRIC_BORDER_DELAY,getElectricBordersDelay());

  bv = getElectricBordersMovePointer();
  config->writeEntry(KWM_ELECTRIC_BORDER_MOVE_POINTER,bv?"MiddleWarp":"NoWarp");
*/

  //CT 15mar98 - magics
  v = getBorderSnapZone();
  config->writeEntry(KWM_BRDR_SNAP_ZONE,v);

  v = getWindowSnapZone();
  config->writeEntry(KWM_WNDW_SNAP_ZONE,v);

  config->sync();
  delete config;
}


kcontrol'KDesktopConfig::defaults() (./kdebase/kcontrol/kwm/desktop.cpp:283)

void KDesktopConfig::defaults( void )
{
  setWindowSnapZone(KWM_WNDW_SNAP_ZONE_DEFAULT);
  setBorderSnapZone(KWM_BRDR_SNAP_ZONE_DEFAULT);
}