Files
Mozilla/mozilla/cmd/xfe/src/URLBar.h
ramiro%netscape.com 19a0b04a4d Add clearText().
git-svn-id: svn://10.0.0.236/trunk@10268 18797224-902f-48f8-a5cc-f745e15eee43
1998-09-17 14:20:06 +00:00

138 lines
3.6 KiB
C++

/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 2 -*-
*
* The contents of this file are subject to the Netscape Public License
* Version 1.0 (the "NPL"); you may not use this file except in
* compliance with the NPL. You may obtain a copy of the NPL at
* http://www.mozilla.org/NPL/
*
* Software distributed under the NPL is distributed on an "AS IS" basis,
* WITHOUT WARRANTY OF ANY KIND, either express or implied. See the NPL
* for the specific language governing rights and limitations under the
* NPL.
*
* The Initial Developer of this code under the NPL is Netscape
* Communications Corporation. Portions created by Netscape are
* Copyright (C) 1998 Netscape Communications Corporation. All Rights
* Reserved.
*/
/*
URLBar.h -- The text field chrome above an HTMLView, used in
BrowserFrames.
Created: Chris Toshok <toshok@netscape.com>, 1-Nov-96.
*/
#ifndef _xfe_urlbar_h
#define _xfe_urlbar_h
#include "structs.h"
#include "icons.h"
#include "LocationDrag.h"
#include "ToolbarDrop.h"
#include "Button.h"
#include "ToolboxItem.h"
#define URLBAR_POPUP
#ifdef URLBAR_POPUP
#include "PopupMenu.h"
#endif
class XFE_Logo;
class XFE_URLBar : public XFE_ToolboxItem
{
public:
XFE_URLBar(XFE_Frame * parent_frame,
XFE_Toolbox * parent_toolbox,
History_entry * first_entry = NULL);
virtual ~XFE_URLBar();
void recordURL(URL_Struct *url); // add the url to the drop down.
void setURLString(URL_Struct *url); // set the text's value to the url.
static void clearAll();
static const char *navigateToURL; // callback invoked when the user
// selects (or types) a new url
Widget getBookMarkButton ();
Widget getProxyIcon ();
Widget getUrlLabel ();
Widget getFormWidget ();
// Quickfile menu spec
static MenuSpec quickfile_menu_spec[];
void clearText();
protected:
virtual void update() {}
private:
XmString m_editedLabelString;
XmString m_uneditedLabelString;
XmString m_netsiteLabelString;
XFE_Frame * m_parentFrame;
XFE_Button * m_bookmarkButton;
XFE_Button * m_locationProxyIcon;
Widget m_locationLabel;
Widget m_urlComboBox;
XP_Bool m_labelBeingFrobbed;
XFE_LocationDrag * m_proxyIconDragSite;
XFE_QuickfileDrop * m_bookmarkDropSite;
#ifdef URLBAR_POPUP
XFE_PopupMenu *m_popup;
static MenuSpec ccp_popup_spec[];
void doPopup(XEvent *event);
// Callbacks and event handlers
static void comboBoxButtonPressEH (Widget,XtPointer,XEvent *,Boolean *);
#endif
XP_Bool readUserHistory();
XP_Bool saveUserHistory();
static XP_Bool eraseUserHistory();
void frob_label(XP_Bool edited_p, XP_Bool netsite_p);
void url_text(XtPointer);
static void url_text_cb(Widget, XtPointer, XtPointer);
void url_text_modify();
static void url_text_modify_cb(Widget, XtPointer, XtPointer);
void url_text_selection(XtPointer);
static void url_text_selection_cb(Widget, XtPointer, XtPointer);
static void source_drop_func(fe_dnd_Source *src, fe_dnd_Message msg, void *closure);
void createBookmarkButton (Widget);
void createProxyIcon (Widget);
void createUrlComboBox (Widget,History_entry *);
// URL label resource tricks
static XtResource _urlLabelResources[];
// Tear off support for the bookmark cascade
static void bookmarkCascadeTearCB (Widget, XtPointer, XtPointer);
void handleBookmarkCascadeTear (XP_Bool torn);
static void frameTitleChangedCB (Widget, XtPointer, XtPointer);
void handleFrameTitleChanged (String title);
XFE_CALLBACK_DECL(_recordURL) // add the url to the drop down.
XFE_CALLBACK_DECL(_clearAll) // clear all urls from the drop down.
};
#endif /* _xfe_urlbar_h */