Sophie

Sophie

distrib > Mandriva > 9.1 > ppc > media > main > by-pkgid > ca81b57b553ae75608ba0fc5e7925e4e > files > 481

libgtkmm1.2-devel-1.2.10-1mdk.ppc.rpm

/* $Id: combo.gen_h,v 1.51 2001/07/15 13:33:38 murrayc Exp $ */

/* combo.h
 *
 * Copyright (C) 1998-1999 The Gtk-- Development Team
 *
 * This library is free software; you can redistribute it and/or
 * modify it under the terms of the GNU Library General Public
 * License as published by the Free Software Foundation; either
 * version 2 of the License, or (at your option) any later version.
 *
 * This library is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
 * Library General Public License for more details.
 *
 * You should have received a copy of the GNU Library General Public
 * License along with this library; if not, write to the Free
 * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
 */

#include <gtk--/box.h>
#include <gtk--/entry.h>
#include <gtk--/button.h>
#include <gtk--/scrolledwindow.h>
#include <gtk--/window.h>
#include <gtk--/list.h>
#include <gtk--/item.h>
#include <gtk/gtkcombo.h>

namespace Gtk {

//: Combo widget
//- A combo is a compound widget which crosses a text entry area and a pull
//- down list.  It may allow text entry or it may just allow list
//- values depending on the settings.
//-
//- Access members allow altering of the widget components.
class Combo : public HBox
{


public:
  typedef Combo          CppObjectType;
  typedef GtkCombo            BaseObjectType;

public:
  //: Returns the underlaying gtk+ object.
  GtkCombo* gtkobj();
  const GtkCombo* gtkobj() const;

  //: Returns true if object is this type.
  static bool isA(Gtk::Object *object);

  virtual ~Combo();

private:

public:


  Combo();



  bool get_value_in_list() const;


  bool get_ok_if_empty() const;


  bool get_use_arrows() const;


  bool get_use_arrows_always() const;


  bool get_case_sensitive() const;

  //: Allow direct text entry.
  //- Whether the text in the entry must be or not be in the list.
  //-
  //- value: Set to true if the value must be in list.
  //-
  //- empty: Set to true if the text area is allowed to be empty.


  void set_value_in_list(bool value,bool empty);

  //: Set arrows keys to change value.
  //- Up and down will scroll through the list items.
  //- Useful when there is a small list of value that the
  //- list must have.
  //-
  //- arrows_on: true indicates the arrow keys scroll.


  void set_use_arrows(bool arrows_on);

  //: Set arrows keys to change if value not in list.
  //- Up and down will scroll through the list items but only
  //- change the current value if the text does not match a list item..
  //- Useful when there is a small list of value that the
  //- list must have.
  //-
  //- arrows_always: true indicates the value will change.


  void set_use_arrows_always(bool arrows_always);

  //: Sets list case sensitive.
  //- Determines if the list items and text comparisons for
  //- {set_use_arrows_always()} should be case sensitive.


  void set_case_sensitive(bool val);

  //: Set the current entry string.
  //- Call this function on an item if it isn't a label or you
  //- want it to have a different value to be displayed in the entry.


  void set_item_string(Gtk::Item& item,const nstring& item_value=0);

  //: Insert a list of items.
  void set_popdown_strings(const SArray &strings);

  //: Disables the activation of the combo.
  //- ????
  //- This does not appear to be possible to undo.  This seems
  //- like a bug or a private method!


  void disable_activate();

  // Allow access to parts of the combo.
  Gtk::Entry* get_entry() const;


  Gtk::Button* get_button() const;


  Gtk::ScrolledWindow* get_popup() const;


  Gtk::Window* get_popwin() const;


  Gtk::List* get_list() const;

protected:
  // impl functions

};



//+ PROPERTIES(Gtk_Combo)
//. name: entry
//. type: Gtk_Widget*
//. get:
//. set:
//. desc:

//. name: button
//. type: Gtk_Widget*
//. get:
//. set:
//. desc:

//. name: popup
//. type: Gtk_Widget*
//. get:
//. set:
//. desc:

//. name: popwin
//. type: Gtk_Widget*
//. get:
//. set:
//. desc:

//. name: list
//. type: Gtk_Widget*
//. get:
//. set:
//. desc:

//. name: entry_change_id
//. type: guint
//. get:
//. set:
//. desc:

//. name: list_change_id
//. type: guint
//. get:
//. set:
//. desc:

//. name: value_in_list
//. type: guint:1
//. get:
//. set:
//. desc:

//. name: ok_if_empty
//. type: guint:1
//. get:
//. set:
//. desc:

//. name: case_sensitive
//. type: guint:1
//. get:
//. set:
//. desc:

//. name: use_arrows
//. type: guint:1
//. get:
//. set:
//. desc:

//. name: use_arrows_always
//. type: guint:1
//. get:
//. set:
//. desc:

//. name: current_button
//. type: guint16
//. get:
//. set:
//. desc:

//. name: activate_id
//. type: guint
//. get:
//. set:
//. desc:

}