snes9x/gtk/src/gtk_preferences.h

51 lines
1.6 KiB
C
Raw Normal View History

/*****************************************************************************\
Snes9x - Portable Super Nintendo Entertainment System (TM) emulator.
This file is licensed under the Snes9x License.
For further information, consult the LICENSE file in the root directory.
\*****************************************************************************/
2010-09-25 17:46:12 +02:00
#ifndef __GTK_PREFERENCES_H
#define __GTK_PREFERENCES_H
#include "gtk_2_3_compat.h"
2010-09-25 17:46:12 +02:00
#include "gtk_s9x.h"
2010-09-26 11:19:15 +02:00
#include "gtk_builder_window.h"
2010-09-25 17:46:12 +02:00
gboolean snes9x_preferences_open (GtkWidget *widget,
gpointer data);
2010-09-26 11:19:15 +02:00
class Snes9xPreferences : public GtkBuilderWindow
2010-09-25 17:46:12 +02:00
{
public:
Snes9xPreferences (Snes9xConfig *config);
~Snes9xPreferences ();
void show ();
2010-09-25 17:46:12 +02:00
void bindings_to_dialog (int joypad);
int get_focused_binding ();
2010-09-25 17:46:12 +02:00
void store_binding (const char *string, Binding binding);
void browse_folder_dialog ();
2010-09-25 17:46:12 +02:00
int hw_accel_value (int combo_value);
int combo_value (int hw_accel);
void focus_next ();
void swap_with ();
void reset_current_joypad ();
void load_ntsc_settings ();
void store_ntsc_settings ();
void calibration_dialog ();
2010-09-25 17:46:12 +02:00
Snes9xConfig *config;
GtkToggleButton *last_toggled;
bool awaiting_key;
bool polling_joystick;
2010-09-25 17:46:12 +02:00
JoypadBinding pad[NUM_JOYPADS];
Binding shortcut[NUM_EMU_LINKS];
private:
void get_settings_from_dialog ();
void move_settings_to_dialog ();
unsigned int *mode_indices;
2010-09-25 17:46:12 +02:00
};
#endif /* __GTK_PREFERENCES_H */