Code Search for Developers
 
 
  

playeroptionsdialog.h from FreePop at Krugle


Show playeroptionsdialog.h syntax highlighted

/***************************************************************************
                           playeroptionsdialog.h
                           -------------------
    begin                : Tue Nov 30 2004
    copyright            : (C) 2004 by Brendon Lloyd Higgins
    email                : bh_doc@users.sourceforge.net
 ***************************************************************************/

/***************************************************************************
 *                                                                         *
 *   This program is free software; you can redistribute it and/or modify  *
 *   it under the terms of the GNU General Public License as published by  *
 *   the Free Software Foundation; either version 2 of the License, or     *
 *   (at your option) any later version.                                   *
 *                                                                         *
 ***************************************************************************/

#ifndef PLAYEROPTIONSDIALOG_H_INCLUDED
#define PLAYEROPTIONSDIALOG_H_INCLUDED

#include <ClanLib/gui.h>

class Client;
class PlayerClient;

/**
 * Dialog to edit player's properties (name, colour, ...)
 */
class PlayerOptionsDialog: public CL_Window {
private:
    /**
     * The name field.
     */
    CL_InputBox name;

    /**
     * Slot for the close action.
     */
    CL_Slot slotClose;

    /**
     * Red colour slider.
     */
    CL_ScrollBar red;

    /**
     * Green colour slider.
     */
    CL_ScrollBar green;

    /**
     * Blue colour slider.
     */
    CL_ScrollBar blue;

    /**
     * Frame for colour preview.
     */
    CL_Frame colourBox;

    /**
     * Slider update slots to update colour preview.
     */
    CL_SlotContainer slotsPaintColour;

    /**
     * The player whose stats we're altering.
     */
    PlayerClient* player;

    /**
     * The apply signal.
     */
    CL_Signal_v0 mSigApply;
    
public:
    /**
     * Constructor.
     */
    PlayerOptionsDialog(const CL_Point& pos, CL_Component* parent,
                        PlayerClient* p);

    /**
     * Destructor.
     */
    ~PlayerOptionsDialog();

    /**
     * Get the current name value.
     */
    std::string getName() const;

    /**
     * Get the current colour value.
     */
    unsigned int getColour() const;

    /**
     * Get the apply signal.
     */
    CL_Signal_v0& sigApply();

private:
    /**
     * Handle a window close signal.
     */
    void onClose(CL_SlotParent_v0 &parent_handler);

    /**
     * Handle a signal to repaint the colour preview.
     */
    void onPaintColour();

    /**
     * Handle a slider moved signal.
     */
    void onSliderMoved(int v);
};

#endif /* ndef PLAYEROPTIONSDIALOG_H_INCLUDED */




See more files for this project here

FreePop

FreePop is a multi-platform tile-based game based on the great old game Populous 2 by Bullfrog Productions Ltd., but much improved.

Project homepage: http://sourceforge.net/projects/freepop
Programming language(s): C++
License: other

  Makefile.am
  client.cpp
  client.h
  clientmisc.cpp
  clientmisc.h
  clientstate.cpp
  clientstate.h
  connectstate.cpp
  connectstate.h
  cropsclient.cpp
  cropsclient.h
  entityclient.cpp
  entityclient.h
  entityclientfactory.cpp
  entityclientfactory.h
  firecolumnclient.cpp
  firecolumnclient.h
  gamestate.cpp
  gamestate.h
  loadstate.cpp
  loadstate.h
  mapclient.cpp
  mapclient.h
  maptileclient.cpp
  maptileclient.h
  messagebox.cpp
  messagebox.h
  oversprite.cpp
  oversprite.h
  paintable.cpp
  paintable.h
  pausefader.cpp
  pausefader.h
  peepclient.cpp
  peepclient.h
  peepmagnetclient.cpp
  peepmagnetclient.h
  playerclient.cpp
  playerclient.h
  playeroptionsdialog.cpp
  playeroptionsdialog.h
  rockclient.cpp
  rockclient.h
  swampclient.cpp
  swampclient.h
  townclient.cpp
  townclient.h
  treeclient.cpp
  treeclient.h
  worldclient.cpp
  worldclient.h