* Copyright 2007-2008 Haiku.
* Distributed under the terms of the MIT License.
*
* Authors:
* Oliver Ruiz Dorantes oliver.ruiz.dorantes_at_gmail.com
* Ryan Leavengood leavengood@gmail.com
* Fredrik ModΓ©en fredrik@modeen.se
*/
#ifndef _JOY_WIN_H
#define _JOY_WIN_H
#include <Window.h>
class BJoystick;
class BCheckBox;
class BStringView;
class BListView;
class PortItem;
class BButton;
class BEntry;
class BFile;
class JoyWin : public BWindow {
public:
JoyWin(BRect frame,const char *title);
virtual ~JoyWin();
virtual void MessageReceived(BMessage *message);
virtual bool QuitRequested();
private:
status_t _AddToList(BListView *list, uint32 command,
const char* rootPath, BEntry *rootEntry = NULL);
status_t _Calibrate();
status_t _PerformProbe(const char* path);
status_t _ApplyChanges();
status_t _GetSettings();
status_t _CheckJoystickExist(const char* path);
status_t _ShowProbeMesage(const char* str);
status_t _ShowCantFindFileMessage(const char* port);
void _ShowNoDeviceConnectedMessage(const char* joy,
const char* port);
void _ShowNoCompatibleJoystickMessage();
BString _FixPathToName(const char* port);
BString _BuildDisabledJoysticksFile();
PortItem* _GetSelectedItem(BListView* list);
void _SelectDeselectJoystick(BListView* list, bool enable);
int32 _FindStringItemInList(BListView *view,
PortItem *item);
BString _FindFilePathForSymLink(const char* symLinkPath,
PortItem *item);
status_t _FindStick(const char* name);
const char* _FindSettingString(const char* name, const char* strPath);
bool _GetLine(BString& string);
bool fSystemUsedSelect;
BJoystick* fJoystick;
BCheckBox* fCheckbox;
BStringView* fGamePortS;
BStringView* fConControllerS;
BListView* fGamePortL;
BListView* fConControllerL;
BButton* fCalibrateButton;
BButton* fProbeButton;
BFile* fFileTempProbeJoystick;
char fBuffer[4096];
off_t fPositionInBuffer;
ssize_t fAmtRead;
};
#endif