mirror of
git://git.code.sf.net/p/cdesktopenv/code
synced 2025-03-09 15:50:02 +00:00
dtwm: add a new feature -- window rename.
This commit is contained in:
parent
8ed81a67a7
commit
e201ef0a7b
49 changed files with 927 additions and 64 deletions
|
@ -700,6 +700,39 @@ indem im Dialogfenster 'Neustart' des Umgebungsmanagers die Option 'Standardsitz
|
||||||
festlegen' ausgewählt wird.</para>
|
festlegen' ausgewählt wird.</para>
|
||||||
<!-- MODULE SEConfirmLogoutWithChoiceDE SElogch.DEa -->
|
<!-- MODULE SEConfirmLogoutWithChoiceDE SElogch.DEa -->
|
||||||
</sect2>
|
</sect2>
|
||||||
|
<Sect2 Id="WMWindowRenameDialogDE">
|
||||||
|
<Title>Dialogfeld zum Umbenennen von Fenstern</Title>
|
||||||
|
<Para><Anchor Id="WindowRename">
|
||||||
|
</Para>
|
||||||
|
<Para>
|
||||||
|
Geben Sie den neuen Namen in das Textfeld ein (lassen Sie es leer, um
|
||||||
|
den Standardfenstertitel wiederherzustellen).
|
||||||
|
</Para>
|
||||||
|
<VariableList>
|
||||||
|
<VarListEntry>
|
||||||
|
<Term>OK</Term>
|
||||||
|
<ListItem>
|
||||||
|
<Para>
|
||||||
|
Benennen Sie das Fenster um und schließen Sie den Umbenennen Dialog.
|
||||||
|
</Para>
|
||||||
|
</ListItem>
|
||||||
|
</VarListEntry>
|
||||||
|
<VarListEntry>
|
||||||
|
<Term>Abbrechen</Term>
|
||||||
|
<ListItem>
|
||||||
|
<Para>
|
||||||
|
Brechen Sie das Umbenennen ab und schließen Sie den Umbenennen Dialog.
|
||||||
|
</Para>
|
||||||
|
</ListItem>
|
||||||
|
</VarListEntry>
|
||||||
|
<VarListEntry>
|
||||||
|
<Term>Hilfe</Term>
|
||||||
|
<ListItem>
|
||||||
|
<Para>Zeigt dieses Hilfethema an.</Para>
|
||||||
|
</ListItem>
|
||||||
|
</VarListEntry>
|
||||||
|
</VariableList>
|
||||||
|
</Sect2>
|
||||||
</sect1>
|
</sect1>
|
||||||
<sect1 id="ConfirmSessionCreateDE">
|
<sect1 id="ConfirmSessionCreateDE">
|
||||||
<title>Bestätigung der Sitzungserstellung<anchor id="ConfirmSessionCreation"></title>
|
<title>Bestätigung der Sitzungserstellung<anchor id="ConfirmSessionCreation"></title>
|
||||||
|
|
|
@ -814,6 +814,35 @@ to keep returning. Save a home session by choosing
|
||||||
Set Home Session in Style Manager's Startup dialog box.</Para>
|
Set Home Session in Style Manager's Startup dialog box.</Para>
|
||||||
<!-- MODULE SEConfirmLogoutWithChoiceDE SElogch.DEa -->
|
<!-- MODULE SEConfirmLogoutWithChoiceDE SElogch.DEa -->
|
||||||
</Sect2>
|
</Sect2>
|
||||||
|
<Sect2 Id="WMWindowRenameDialogDE">
|
||||||
|
<Title>Window Rename Dialog</Title>
|
||||||
|
<Para><Anchor Id="WindowRename">
|
||||||
|
</Para>
|
||||||
|
<Para>
|
||||||
|
Type the new name in the text field (leave it blank to restore the
|
||||||
|
default window title).
|
||||||
|
</Para>
|
||||||
|
<VariableList>
|
||||||
|
<VarListEntry>
|
||||||
|
<Term>OK</Term>
|
||||||
|
<ListItem>
|
||||||
|
<Para>Rename the window and close the rename dialog.</Para>
|
||||||
|
</ListItem>
|
||||||
|
</VarListEntry>
|
||||||
|
<VarListEntry>
|
||||||
|
<Term>Cancel</Term>
|
||||||
|
<ListItem>
|
||||||
|
<Para>Cancel renaming and close the rename dialog.</Para>
|
||||||
|
</ListItem>
|
||||||
|
</VarListEntry>
|
||||||
|
<VarListEntry>
|
||||||
|
<Term>Help</Term>
|
||||||
|
<ListItem>
|
||||||
|
<Para>Displays this help topic.</Para>
|
||||||
|
</ListItem>
|
||||||
|
</VarListEntry>
|
||||||
|
</VariableList>
|
||||||
|
</Sect2>
|
||||||
</Sect1>
|
</Sect1>
|
||||||
|
|
||||||
<Sect1 Id="ConfirmSessionCreateDE">
|
<Sect1 Id="ConfirmSessionCreateDE">
|
||||||
|
|
|
@ -670,6 +670,41 @@ Establecer sesión de inicio en el cuadro de diálogo Arranque
|
||||||
del Gestor de estilos.</para>
|
del Gestor de estilos.</para>
|
||||||
<!-- MODULE SEConfirmLogoutWithChoiceDE SElogch.DEa -->
|
<!-- MODULE SEConfirmLogoutWithChoiceDE SElogch.DEa -->
|
||||||
</sect2>
|
</sect2>
|
||||||
|
<Sect2 Id="WMWindowRenameDialogDE">
|
||||||
|
<Title>Cuadro de diálogo Cambiar nombre de ventana</Title>
|
||||||
|
<Para><Anchor Id="WindowRename">
|
||||||
|
</Para>
|
||||||
|
<Para>
|
||||||
|
Escriba el nuevo nombre en el campo de texto (déjalo en blanco para
|
||||||
|
restaurar el título de ventana predeterminado).
|
||||||
|
</Para>
|
||||||
|
<VariableList>
|
||||||
|
<VarListEntry>
|
||||||
|
<Term>OK</Term>
|
||||||
|
<ListItem>
|
||||||
|
<Para>
|
||||||
|
Cambie el nombre de la ventana y cierre el cuadro de diálogo de
|
||||||
|
cambio de nombre.
|
||||||
|
</Para>
|
||||||
|
</ListItem>
|
||||||
|
</VarListEntry>
|
||||||
|
<VarListEntry>
|
||||||
|
<Term>Cancelar</Term>
|
||||||
|
<ListItem>
|
||||||
|
<Para>
|
||||||
|
Cancele el cambio de nombre y cierre el cuadro de diálogo de cambio
|
||||||
|
de nombre.
|
||||||
|
</Para>
|
||||||
|
</ListItem>
|
||||||
|
</VarListEntry>
|
||||||
|
<VarListEntry>
|
||||||
|
<Term>Ayuda</Term>
|
||||||
|
<ListItem>
|
||||||
|
<Para>Muestra este tema de ayuda.</Para>
|
||||||
|
</ListItem>
|
||||||
|
</VarListEntry>
|
||||||
|
</VariableList>
|
||||||
|
</Sect2>
|
||||||
</sect1>
|
</sect1>
|
||||||
<sect1 id="ConfirmSessionCreateDE">
|
<sect1 id="ConfirmSessionCreateDE">
|
||||||
<title>Confirmación de la creación de una sesión <anchor
|
<title>Confirmación de la creación de una sesión <anchor
|
||||||
|
|
|
@ -731,6 +731,40 @@ session initiale dans la boîte de dialogue Lancement du Gestionnaire
|
||||||
de configuration.</para>
|
de configuration.</para>
|
||||||
<!-- MODULE SEConfirmLogoutWithChoiceDE SElogch.DEa -->
|
<!-- MODULE SEConfirmLogoutWithChoiceDE SElogch.DEa -->
|
||||||
</sect2>
|
</sect2>
|
||||||
|
<Sect2 Id="WMWindowRenameDialogDE">
|
||||||
|
<Title>Boîte de dialogue Renommer la fenêtre</Title>
|
||||||
|
<Para><Anchor Id="WindowRename">
|
||||||
|
</Para>
|
||||||
|
<Para>
|
||||||
|
Tapez le nouveau nom dans le champ de texte (laissez-le vide pour
|
||||||
|
restaurer le titre de fenêtre par défaut).
|
||||||
|
</Para>
|
||||||
|
<VariableList>
|
||||||
|
<VarListEntry>
|
||||||
|
<Term>OK</Term>
|
||||||
|
<ListItem>
|
||||||
|
<Para>
|
||||||
|
Renommez la fenêtre et fermez la boîte de dialogue de renommage.
|
||||||
|
</Para>
|
||||||
|
</ListItem>
|
||||||
|
</VarListEntry>
|
||||||
|
<VarListEntry>
|
||||||
|
<Term>Annuler</Term>
|
||||||
|
<ListItem>
|
||||||
|
<Para>
|
||||||
|
Annuler le changement de nom et fermez la boîte de dialogue de
|
||||||
|
changement de nom.
|
||||||
|
</Para>
|
||||||
|
</ListItem>
|
||||||
|
</VarListEntry>
|
||||||
|
<VarListEntry>
|
||||||
|
<Term>Aide</Term>
|
||||||
|
<ListItem>
|
||||||
|
<Para>Affiche l'aide.</Para>
|
||||||
|
</ListItem>
|
||||||
|
</VarListEntry>
|
||||||
|
</VariableList>
|
||||||
|
</Sect2>
|
||||||
</sect1>
|
</sect1>
|
||||||
<sect1 id="ConfirmSessionCreateDE">
|
<sect1 id="ConfirmSessionCreateDE">
|
||||||
<title>Confirmation de création de session<anchor id="ConfirmSessionCreation"></title>
|
<title>Confirmation de création de session<anchor id="ConfirmSessionCreation"></title>
|
||||||
|
|
|
@ -664,6 +664,40 @@ scegliere Impostare sessione iniziale nel riquadro di dialogo Avvio della
|
||||||
Gestione degli stili.</para>
|
Gestione degli stili.</para>
|
||||||
<!-- MODULE SEConfirmLogoutWithChoiceDE SElogch.DEa -->
|
<!-- MODULE SEConfirmLogoutWithChoiceDE SElogch.DEa -->
|
||||||
</sect2>
|
</sect2>
|
||||||
|
<Sect2 Id="WMWindowRenameDialogDE">
|
||||||
|
<Title>Finestra di dialogo Rinomina finestra</Title>
|
||||||
|
<Para><Anchor Id="WindowRename">
|
||||||
|
</Para>
|
||||||
|
<Para>
|
||||||
|
Digitare il nuovo nome nel campo di testo (lasciarlo vuoto per
|
||||||
|
ripristinare il titolo predefinito della finestra).
|
||||||
|
</Para>
|
||||||
|
<VariableList>
|
||||||
|
<VarListEntry>
|
||||||
|
<Term>OK</Term>
|
||||||
|
<ListItem>
|
||||||
|
<Para>
|
||||||
|
Rinominare la finestra e chiudere la finestra di dialogo Rinomina.
|
||||||
|
</Para>
|
||||||
|
</ListItem>
|
||||||
|
</VarListEntry>
|
||||||
|
<VarListEntry>
|
||||||
|
<Term>Annullare</Term>
|
||||||
|
<ListItem>
|
||||||
|
<Para>
|
||||||
|
Annulla la ridenominazione e chiudi la finestra di dialogo per la
|
||||||
|
ridenominazione.
|
||||||
|
</Para>
|
||||||
|
</ListItem>
|
||||||
|
</VarListEntry>
|
||||||
|
<VarListEntry>
|
||||||
|
<Term>Aiuto</Term>
|
||||||
|
<ListItem>
|
||||||
|
<Para>Visualizza queste informazioni di aiuto.</Para>
|
||||||
|
</ListItem>
|
||||||
|
</VarListEntry>
|
||||||
|
</VariableList>
|
||||||
|
</Sect2>
|
||||||
</sect1>
|
</sect1>
|
||||||
<sect1 id="confirmsessioncreatede">
|
<sect1 id="confirmsessioncreatede">
|
||||||
<title>Conferma della creazione di una sessione<anchor id="confirmsessioncreation"></title>
|
<title>Conferma della creazione di una sessione<anchor id="confirmsessioncreation"></title>
|
||||||
|
|
|
@ -764,6 +764,35 @@
|
||||||
[スタイル・マネージャの起動] ダイアログ・ボックスの [ホームセッションを設定] を選択して、ホーム・セッションを保存してください。</Para>
|
[スタイル・マネージャの起動] ダイアログ・ボックスの [ホームセッションを設定] を選択して、ホーム・セッションを保存してください。</Para>
|
||||||
<!-- MODULE SEConfirmLogoutWithChoiceDE SElogch.DEa -->
|
<!-- MODULE SEConfirmLogoutWithChoiceDE SElogch.DEa -->
|
||||||
</Sect2>
|
</Sect2>
|
||||||
|
<Sect2 Id="WMWindowRenameDialogDE">
|
||||||
|
<Title>ウィンドウの名前の変更・ダイアログ</Title>
|
||||||
|
<Para><Anchor Id="WindowRename">
|
||||||
|
</Para>
|
||||||
|
<Para>
|
||||||
|
テキストフィールドに新しい名前を入力します(空白のままにすると、
|
||||||
|
デフォルトのウィンドウ タイトルが復元されます)。
|
||||||
|
</Para>
|
||||||
|
<VariableList>
|
||||||
|
<VarListEntry>
|
||||||
|
<Term>了解</Term>
|
||||||
|
<ListItem>
|
||||||
|
<Para>ウィンドウの名前を変更し、名前の変更ダイアログを閉じます。</Para>
|
||||||
|
</ListItem>
|
||||||
|
</VarListEntry>
|
||||||
|
<VarListEntry>
|
||||||
|
<Term>取消し</Term>
|
||||||
|
<ListItem>
|
||||||
|
<Para>名前の変更をキャンセルし、名前の変更ダイアログを閉じます。</Para>
|
||||||
|
</ListItem>
|
||||||
|
</VarListEntry>
|
||||||
|
<VarListEntry>
|
||||||
|
<Term>ヘルプ</Term>
|
||||||
|
<ListItem>
|
||||||
|
<Para>ヘルプ・トピックを表示します。</Para>
|
||||||
|
</ListItem>
|
||||||
|
</VarListEntry>
|
||||||
|
</VariableList>
|
||||||
|
</Sect2>
|
||||||
</Sect1>
|
</Sect1>
|
||||||
|
|
||||||
<Sect1 Id="ConfirmSessionCreateDE">
|
<Sect1 Id="ConfirmSessionCreateDE">
|
||||||
|
|
|
@ -246,6 +246,12 @@ Dtwm*iconPlacement: Top Left
|
||||||
Dtwm*iconBoxGeometry: 1x4+16+20
|
Dtwm*iconBoxGeometry: 1x4+16+20
|
||||||
Dtwm*iconBoxSBDisplayPolicy: horizontal
|
Dtwm*iconBoxSBDisplayPolicy: horizontal
|
||||||
|
|
||||||
|
!####
|
||||||
|
!#
|
||||||
|
!# Specify the title for instant title dialog.
|
||||||
|
!#
|
||||||
|
!####
|
||||||
|
Dtwm*instantTitleDialogShell.title: %|nls-21-#Rename#|
|
||||||
|
|
||||||
!####
|
!####
|
||||||
!#
|
!#
|
||||||
|
|
|
@ -34,9 +34,9 @@ dtwm_SOURCES = WmCDInfo.c WmCDecor.c WmCEvent.c \
|
||||||
Clock.c DataBaseLoad.c PanelS.c \
|
Clock.c DataBaseLoad.c PanelS.c \
|
||||||
Parse.c PopupMenu.c Session.c \
|
Parse.c PopupMenu.c Session.c \
|
||||||
UI.c WmBackdrop.c WmFP.c \
|
UI.c WmBackdrop.c WmFP.c \
|
||||||
WmHelp.c WmIPC.c WmOL.c \
|
WmHelp.c WmIPC.c WmInstantTitle.c \
|
||||||
WmParse.c WmParseP.c WmPresence.c \
|
WmOL.c WmParse.c WmParseP.c \
|
||||||
WmWrkspace.c WmXSMP.c
|
WmPresence.c WmWrkspace.c WmXSMP.c
|
||||||
|
|
||||||
dtfplist_SOURCES = Print.c Parse.c DataBaseLoad.c WmParse.c Session.c
|
dtfplist_SOURCES = Print.c Parse.c DataBaseLoad.c WmParse.c Session.c
|
||||||
|
|
||||||
|
|
|
@ -1159,7 +1159,7 @@ void GetTextBox (ClientData *pcd, XRectangle *pBox)
|
||||||
fontList = CLIENT_TITLE_APPEARANCE(pcd).fontList;
|
fontList = CLIENT_TITLE_APPEARANCE(pcd).fontList;
|
||||||
else
|
else
|
||||||
fontList = CLIENT_APPEARANCE(pcd).fontList;
|
fontList = CLIENT_APPEARANCE(pcd).fontList;
|
||||||
textWidth = XmStringWidth(fontList, pcd->clientTitle);
|
textWidth = XmStringWidth(fontList, CLIENT_DISPLAY_TITLE(pcd));
|
||||||
|
|
||||||
offset = TitleBarHeight(pcd)/2;
|
offset = TitleBarHeight(pcd)/2;
|
||||||
|
|
||||||
|
@ -1227,6 +1227,7 @@ void DrawWindowTitle (ClientData *pcd, Boolean eraseFirst)
|
||||||
XRectangle textBox;
|
XRectangle textBox;
|
||||||
Window win;
|
Window win;
|
||||||
XmFontList fontList;
|
XmFontList fontList;
|
||||||
|
XmString title = CLIENT_DISPLAY_TITLE(pcd);
|
||||||
|
|
||||||
/* make sure there is a title bar first */
|
/* make sure there is a title bar first */
|
||||||
if (!(decoration & MWM_DECOR_TITLE))
|
if (!(decoration & MWM_DECOR_TITLE))
|
||||||
|
@ -1276,11 +1277,11 @@ void DrawWindowTitle (ClientData *pcd, Boolean eraseFirst)
|
||||||
}
|
}
|
||||||
|
|
||||||
#ifdef DT_LEFT_JUSTIFIED_TITLE
|
#ifdef DT_LEFT_JUSTIFIED_TITLE
|
||||||
WmDrawXmString(DISPLAY, win, fontList, pcd->clientTitle, clientGC,
|
WmDrawXmString(DISPLAY, win, fontList, title, clientGC,
|
||||||
textBox.x, textBox.y, textBox.width, &textBox,
|
textBox.x, textBox.y, textBox.width, &textBox,
|
||||||
((wmGD.frameStyle == WmSLAB) ? False : True));
|
((wmGD.frameStyle == WmSLAB) ? False : True));
|
||||||
#else /* DT_LEFT_JUSTIFIED_TITLE */
|
#else /* DT_LEFT_JUSTIFIED_TITLE */
|
||||||
WmDrawXmString(DISPLAY, win, fontList, pcd->clientTitle, clientGC,
|
WmDrawXmString(DISPLAY, win, fontList, title, clientGC,
|
||||||
textBox.x, textBox.y, textBox.width, &textBox,
|
textBox.x, textBox.y, textBox.width, &textBox,
|
||||||
True);
|
True);
|
||||||
#endif /* DT_LEFT_JUSTIFIED_TITLE */
|
#endif /* DT_LEFT_JUSTIFIED_TITLE */
|
||||||
|
|
|
@ -66,6 +66,7 @@
|
||||||
#include "WmIPC.h"
|
#include "WmIPC.h"
|
||||||
#include "WmIPlace.h"
|
#include "WmIPlace.h"
|
||||||
#include "WmIconBox.h"
|
#include "WmIconBox.h"
|
||||||
|
#include "WmInstantTitle.h"
|
||||||
#include "WmKeyFocus.h"
|
#include "WmKeyFocus.h"
|
||||||
#include "WmMenu.h"
|
#include "WmMenu.h"
|
||||||
#include "WmPresence.h"
|
#include "WmPresence.h"
|
||||||
|
@ -4514,6 +4515,25 @@ Boolean F_Workspace_Presence (String args, ClientData *pCD, XEvent *event)
|
||||||
|
|
||||||
} /* END OF FUNCTION F_Workspace_Presence */
|
} /* END OF FUNCTION F_Workspace_Presence */
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @brief This function pops up the instant title dialog.
|
||||||
|
*
|
||||||
|
* @param args
|
||||||
|
* @param pCD
|
||||||
|
* @param event
|
||||||
|
*
|
||||||
|
* @return False
|
||||||
|
*/
|
||||||
|
Boolean F_Rename (String args, ClientData *pCD, XEvent *event)
|
||||||
|
{
|
||||||
|
if (pCD && (pCD->dtwmFunctions & DtWM_FUNCTION_OCCUPY_WS))
|
||||||
|
{
|
||||||
|
InstantTitleShowDialog (pCD);
|
||||||
|
}
|
||||||
|
|
||||||
|
return False;
|
||||||
|
}
|
||||||
|
|
||||||
#ifdef DEBUG
|
#ifdef DEBUG
|
||||||
void
|
void
|
||||||
DumpWindowList ()
|
DumpWindowList ()
|
||||||
|
|
|
@ -93,6 +93,7 @@ extern Boolean F_Next_Workspace (String args, ClientData *pCD, XEvent *event);
|
||||||
extern Boolean F_Prev_Workspace (String args, ClientData *pCD, XEvent *event);
|
extern Boolean F_Prev_Workspace (String args, ClientData *pCD, XEvent *event);
|
||||||
extern Boolean F_Workspace_Presence (String args, ClientData *pCD,
|
extern Boolean F_Workspace_Presence (String args, ClientData *pCD,
|
||||||
XEvent *event);
|
XEvent *event);
|
||||||
|
extern Boolean F_Rename (String args, ClientData *pCD, XEvent *event);
|
||||||
#if defined(DEBUG)
|
#if defined(DEBUG)
|
||||||
extern Boolean F_ZZ_Debug (String, ClientData *, XEvent *);
|
extern Boolean F_ZZ_Debug (String, ClientData *, XEvent *);
|
||||||
#endif /* DEBUG */
|
#endif /* DEBUG */
|
||||||
|
|
|
@ -1106,6 +1106,19 @@ typedef struct _FrameInfo
|
||||||
|
|
||||||
} FrameInfo;
|
} FrameInfo;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @brief Specific data for instant title dialog
|
||||||
|
*/
|
||||||
|
typedef struct _InstantTitleData
|
||||||
|
{
|
||||||
|
Boolean widgetsInitialized;
|
||||||
|
struct _ClientData *pCDforClient;
|
||||||
|
Context contextForClient;
|
||||||
|
Widget dialogShellW;
|
||||||
|
Widget dialogBoxW;
|
||||||
|
Widget formW;
|
||||||
|
Widget textFieldW;
|
||||||
|
} InstantTitleData, *PtrInstantTitleData;
|
||||||
|
|
||||||
|
|
||||||
/*************************************<->*************************************
|
/*************************************<->*************************************
|
||||||
|
@ -1132,6 +1145,7 @@ typedef struct _WmScreenData
|
||||||
Widget confirmboxW[4];
|
Widget confirmboxW[4];
|
||||||
Widget wPanelist; /* panel object */
|
Widget wPanelist; /* panel object */
|
||||||
WsPresenceData presence; /* workspace presence dialog*/
|
WsPresenceData presence; /* workspace presence dialog*/
|
||||||
|
InstantTitleData instantTitleData; /* instant title dialog */
|
||||||
Widget switcherW; /* workspace switcher */
|
Widget switcherW; /* workspace switcher */
|
||||||
Widget switcherShellW; /* shell for ws switcher */
|
Widget switcherShellW; /* shell for ws switcher */
|
||||||
Window wmWorkspaceWin; /* holds wm properties */
|
Window wmWorkspaceWin; /* holds wm properties */
|
||||||
|
@ -1310,6 +1324,8 @@ typedef struct _WmScreenData *PtrScreenData;
|
||||||
/*
|
/*
|
||||||
#define ICON_DEFAULT_TITLE(pcd) ((pcd)->iconDefaultTitle)
|
#define ICON_DEFAULT_TITLE(pcd) ((pcd)->iconDefaultTitle)
|
||||||
*/
|
*/
|
||||||
|
#define ICON_DISPLAY_TITLE(pcd) \
|
||||||
|
((pcd)->instantTitle ? (pcd)->instantTitle : (pcd)->iconTitle)
|
||||||
#define ICON_DECORATION(pcd) ((pcd)->pSD->iconDecoration)
|
#define ICON_DECORATION(pcd) ((pcd)->pSD->iconDecoration)
|
||||||
#define ICON_HEIGHT(pcd) ((pcd)->pSD->iconHeight)
|
#define ICON_HEIGHT(pcd) ((pcd)->pSD->iconHeight)
|
||||||
#define ICON_WIDTH(pcd) ((pcd)->pSD->iconWidth)
|
#define ICON_WIDTH(pcd) ((pcd)->pSD->iconWidth)
|
||||||
|
@ -1465,6 +1481,8 @@ typedef struct _WmWorkspaceData *PtrWorkspaceData;
|
||||||
/*
|
/*
|
||||||
#define CLIENT_DEFAULT_TITLE(pcd) ((pcd)->pSD->clientDefaultTitle)
|
#define CLIENT_DEFAULT_TITLE(pcd) ((pcd)->pSD->clientDefaultTitle)
|
||||||
*/
|
*/
|
||||||
|
#define CLIENT_DISPLAY_TITLE(pcd) \
|
||||||
|
((pcd)->instantTitle ? (pcd)->instantTitle : (pcd)->clientTitle)
|
||||||
#define MAX_MAX_SIZE(pcd) ((pcd)->pSD->maximumMaximumSize)
|
#define MAX_MAX_SIZE(pcd) ((pcd)->pSD->maximumMaximumSize)
|
||||||
#define SHOW_RESIZE_CURSORS(pcd) ((pcd)->pSD->resizeCursors)
|
#define SHOW_RESIZE_CURSORS(pcd) ((pcd)->pSD->resizeCursors)
|
||||||
#define JOIN_BEVEL(pcd) ((pcd)->pSD->joinBevel)
|
#define JOIN_BEVEL(pcd) ((pcd)->pSD->joinBevel)
|
||||||
|
@ -1636,6 +1654,7 @@ typedef struct _ClientData
|
||||||
int monitorY; /* monitor Y loc */
|
int monitorY; /* monitor Y loc */
|
||||||
int monitorWidth; /* monitor width */
|
int monitorWidth; /* monitor width */
|
||||||
int monitorHeight; /* monitor height */
|
int monitorHeight; /* monitor height */
|
||||||
|
XmString instantTitle; /* instant title */
|
||||||
|
|
||||||
/* client window frame graphic data: */
|
/* client window frame graphic data: */
|
||||||
|
|
||||||
|
|
|
@ -38,6 +38,7 @@
|
||||||
#define WM_DT_WSRENAMEERROR_HELP_TOPIC "WSRENAMEERROR"
|
#define WM_DT_WSRENAMEERROR_HELP_TOPIC "WSRENAMEERROR"
|
||||||
#define WM_DT_ICONBOX_TOPIC "ICONBOX"
|
#define WM_DT_ICONBOX_TOPIC "ICONBOX"
|
||||||
#define WM_DT_WSPRESENCE_TOPIC "WSPRESENCE"
|
#define WM_DT_WSPRESENCE_TOPIC "WSPRESENCE"
|
||||||
|
#define WM_DT_WINDOWRENAME_TOPIC "WINDOWRENAME"
|
||||||
|
|
||||||
typedef struct _WmHelpTopicData
|
typedef struct _WmHelpTopicData
|
||||||
{
|
{
|
||||||
|
|
|
@ -868,7 +868,7 @@ void DrawIconTitle (ClientData *pcd)
|
||||||
|
|
||||||
/* paint the text */
|
/* paint the text */
|
||||||
WmDrawXmString(DISPLAY, ICON_FRAME_WIN(pcd), ICON_APPEARANCE(pcd).fontList,
|
WmDrawXmString(DISPLAY, ICON_FRAME_WIN(pcd), ICON_APPEARANCE(pcd).fontList,
|
||||||
pcd->iconTitle, iconGC,
|
ICON_DISPLAY_TITLE(pcd), iconGC,
|
||||||
textBox.x, textBox.y, textBox.width, &textBox, True);
|
textBox.x, textBox.y, textBox.width, &textBox, True);
|
||||||
|
|
||||||
} /* END OF FUNCTION DrawIconTitle */
|
} /* END OF FUNCTION DrawIconTitle */
|
||||||
|
@ -950,7 +950,7 @@ void RedisplayIconTitle (ClientData *pcd)
|
||||||
/* in with the new */
|
/* in with the new */
|
||||||
WmDrawXmString(DISPLAY, ICON_FRAME_WIN(pcd),
|
WmDrawXmString(DISPLAY, ICON_FRAME_WIN(pcd),
|
||||||
ICON_APPEARANCE(pcd).fontList,
|
ICON_APPEARANCE(pcd).fontList,
|
||||||
pcd->iconTitle, iconGC,
|
ICON_DISPLAY_TITLE(pcd), iconGC,
|
||||||
textBox.x, textBox.y, textBox.width, &textBox,
|
textBox.x, textBox.y, textBox.width, &textBox,
|
||||||
True);
|
True);
|
||||||
|
|
||||||
|
@ -1768,7 +1768,7 @@ void PaintActiveIconText (ClientData *pcd, Boolean erase)
|
||||||
|
|
||||||
WmDrawXmString(DISPLAY, pcd->pSD->activeIconTextWin,
|
WmDrawXmString(DISPLAY, pcd->pSD->activeIconTextWin,
|
||||||
ICON_APPEARANCE(pcd).fontList,
|
ICON_APPEARANCE(pcd).fontList,
|
||||||
pcd->iconTitle, iconGC,
|
ICON_DISPLAY_TITLE(pcd), iconGC,
|
||||||
textBox.x, textBox.y, textBox.width, &textBox, True);
|
textBox.x, textBox.y, textBox.width, &textBox, True);
|
||||||
|
|
||||||
|
|
||||||
|
@ -1821,7 +1821,7 @@ void ShowActiveIconText (ClientData *pcd)
|
||||||
|
|
||||||
/* set up geometry for the window */
|
/* set up geometry for the window */
|
||||||
|
|
||||||
XmStringExtent (ICON_APPEARANCE(pcd).fontList, pcd->iconTitle,
|
XmStringExtent (ICON_APPEARANCE(pcd).fontList, ICON_DISPLAY_TITLE(pcd),
|
||||||
&dWidth, &dHeight);
|
&dWidth, &dHeight);
|
||||||
|
|
||||||
activeIconTextHeight = (unsigned int) dHeight +
|
activeIconTextHeight = (unsigned int) dHeight +
|
||||||
|
@ -2004,7 +2004,7 @@ void MoveActiveIconText (ClientData *pcd)
|
||||||
if (pcd->pSD->activeIconTextWin && wmGD.activeIconTextDisplayed) {
|
if (pcd->pSD->activeIconTextWin && wmGD.activeIconTextDisplayed) {
|
||||||
/* set up geometry for the window */
|
/* set up geometry for the window */
|
||||||
|
|
||||||
XmStringExtent (ICON_APPEARANCE(pcd).fontList, pcd->iconTitle,
|
XmStringExtent (ICON_APPEARANCE(pcd).fontList, ICON_DISPLAY_TITLE(pcd),
|
||||||
&dWidth, &dHeight);
|
&dWidth, &dHeight);
|
||||||
|
|
||||||
activeIconTextHeight = (unsigned int) dHeight +
|
activeIconTextHeight = (unsigned int) dHeight +
|
||||||
|
|
|
@ -1240,6 +1240,7 @@ InitWmScreen (WmScreenData *pSD, int sNum)
|
||||||
pSD->presence.shellW = NULL;
|
pSD->presence.shellW = NULL;
|
||||||
pSD->presence.onScreen = False;
|
pSD->presence.onScreen = False;
|
||||||
pSD->presence.userDismissed = True;
|
pSD->presence.userDismissed = True;
|
||||||
|
pSD->instantTitleData.widgetsInitialized = False;
|
||||||
pSD->workspaceList = NULL;
|
pSD->workspaceList = NULL;
|
||||||
pSD->numWorkspaces = 0;
|
pSD->numWorkspaces = 0;
|
||||||
pSD->numWsDataAllocated = 0;
|
pSD->numWsDataAllocated = 0;
|
||||||
|
|
333
cde/programs/dtwm/WmInstantTitle.c
Normal file
333
cde/programs/dtwm/WmInstantTitle.c
Normal file
|
@ -0,0 +1,333 @@
|
||||||
|
/*
|
||||||
|
* CDE - Common Desktop Environment
|
||||||
|
*
|
||||||
|
* (c) Copyright 1993-2012 The Open Group
|
||||||
|
* (c) Copyright 2012-2022 CDE Project contributors, see
|
||||||
|
* CONTRIBUTORS for details
|
||||||
|
*
|
||||||
|
* These libraries and programs are free software; you can
|
||||||
|
* redistribute them and/or modify them under the terms of the GNU
|
||||||
|
* Lesser General Public License as published by the Free Software
|
||||||
|
* Foundation; either version 2 of the License, or (at your option)
|
||||||
|
* any later version.
|
||||||
|
*
|
||||||
|
* These libraries and programs are distributed in the hope that
|
||||||
|
* they will be useful, but WITHOUT ANY WARRANTY; without even the
|
||||||
|
* implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
|
||||||
|
* PURPOSE. See the GNU Lesser General Public License for more
|
||||||
|
* details.
|
||||||
|
*
|
||||||
|
* You should have received a copy of the GNU Lesser General Public
|
||||||
|
* License along with these libraries and programs; if not, write
|
||||||
|
* to the Free Software Foundation, Inc., 51 Franklin Street, Fifth
|
||||||
|
* Floor, Boston, MA 02110-1301 USA
|
||||||
|
*/
|
||||||
|
|
||||||
|
#include <Xm/DialogS.h>
|
||||||
|
#include <Xm/Form.h>
|
||||||
|
#include <Xm/Text.h>
|
||||||
|
#include <Xm/TextF.h>
|
||||||
|
#include <Dt/DialogBox.h>
|
||||||
|
#include <Dt/SharedProcs.h>
|
||||||
|
|
||||||
|
#include "WmGlobal.h"
|
||||||
|
#include "WmCDecor.h"
|
||||||
|
#include "WmError.h"
|
||||||
|
#include "WmHelp.h"
|
||||||
|
#include "WmIDecor.h"
|
||||||
|
#include "WmInstantTitle.h"
|
||||||
|
#include "WmPanelP.h"
|
||||||
|
#include "WmProperty.h"
|
||||||
|
#include "WmWinList.h"
|
||||||
|
#include "WmWrkspace.h"
|
||||||
|
|
||||||
|
extern XtPointer _XmStringUngenerate(XmString, XmStringTag,
|
||||||
|
XmTextType, XmTextType);
|
||||||
|
|
||||||
|
static void InstantTitleGetTitle(PtrInstantTitleData pITD) {
|
||||||
|
String value;
|
||||||
|
Widget textFieldW = pITD->textFieldW;
|
||||||
|
ClientData *pCD = pITD->pCDforClient;
|
||||||
|
XmString title = pITD->contextForClient == F_CONTEXT_ICON ?
|
||||||
|
ICON_DISPLAY_TITLE(pCD) : CLIENT_DISPLAY_TITLE(pCD);
|
||||||
|
|
||||||
|
if (!title) return;
|
||||||
|
|
||||||
|
value = _XmStringUngenerate(title, NULL, XmCHARSET_TEXT, XmCHARSET_TEXT);
|
||||||
|
|
||||||
|
if (!value) return;
|
||||||
|
|
||||||
|
XtVaSetValues(textFieldW, XmNvalue, value, NULL);
|
||||||
|
|
||||||
|
XtFree(value);
|
||||||
|
|
||||||
|
XtVaSetValues(textFieldW, XmNcursorPosition,
|
||||||
|
XmTextFieldGetLastPosition(textFieldW), NULL);
|
||||||
|
}
|
||||||
|
|
||||||
|
static void InstantTitleSetTitle(PtrInstantTitleData pITD) {
|
||||||
|
char *str = XmTextFieldGetString(pITD->textFieldW);
|
||||||
|
ClientData *pCD = pITD->pCDforClient;
|
||||||
|
Context context = pITD->contextForClient;
|
||||||
|
XmString *title = &pCD->instantTitle;
|
||||||
|
Window client = pCD->client;
|
||||||
|
Atom name = wmGD.xa__NET_WM_VISIBLE_NAME;
|
||||||
|
Atom iconName = wmGD.xa__NET_WM_VISIBLE_ICON_NAME;
|
||||||
|
|
||||||
|
if (*title) XmStringFree(*title);
|
||||||
|
|
||||||
|
_DtStripSpaces(str);
|
||||||
|
|
||||||
|
if (str[0]) {
|
||||||
|
*title = XmStringCreateLocalized(str);
|
||||||
|
SetUtf8String (DISPLAY, client, name, str);
|
||||||
|
SetUtf8String (DISPLAY, client, iconName, str);
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
*title = NULL;
|
||||||
|
XDeleteProperty(DISPLAY, client, name);
|
||||||
|
XDeleteProperty(DISPLAY, client, iconName);
|
||||||
|
}
|
||||||
|
|
||||||
|
XtFree(str);
|
||||||
|
|
||||||
|
if (context == F_CONTEXT_ICON || pCD->pSD->useIconBox)
|
||||||
|
RedisplayIconTitle(pCD);
|
||||||
|
|
||||||
|
if (context != F_CONTEXT_ICON) DrawWindowTitle(pCD, True);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @brief Hides the instant title dialog.
|
||||||
|
*
|
||||||
|
* @param pClientData
|
||||||
|
*/
|
||||||
|
void InstantTitleHideDialog(ClientData *pClientData) {
|
||||||
|
PtrInstantTitleData pITD = &pClientData->pSD->instantTitleData;
|
||||||
|
|
||||||
|
if (pITD->widgetsInitialized && pITD->pCDforClient == pClientData)
|
||||||
|
XtUnmanageChild(pITD->dialogBoxW);
|
||||||
|
}
|
||||||
|
|
||||||
|
static void InstantTitleButtonCB(Widget w, XtPointer client_data,
|
||||||
|
XtPointer call_data)
|
||||||
|
{
|
||||||
|
PtrInstantTitleData pITD = client_data;
|
||||||
|
DtDialogBoxCallbackStruct *cb = call_data;
|
||||||
|
|
||||||
|
switch (cb->button_position) {
|
||||||
|
case 1:
|
||||||
|
InstantTitleSetTitle(pITD);
|
||||||
|
|
||||||
|
case 2:
|
||||||
|
InstantTitleHideDialog(pITD->pCDforClient);
|
||||||
|
break;
|
||||||
|
|
||||||
|
case 3:
|
||||||
|
XtCallCallbacks(pITD->dialogBoxW, XmNhelpCallback, NULL);
|
||||||
|
break;
|
||||||
|
|
||||||
|
default:
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
static void InstantTitleWorkspaceModifyCB(Widget w, Atom atom_name, int type,
|
||||||
|
XtPointer client_data)
|
||||||
|
{
|
||||||
|
PtrInstantTitleData pITD = client_data;
|
||||||
|
ClientData *pCD = pITD->pCDforClient;
|
||||||
|
|
||||||
|
if (type == DtWSM_REASON_CURRENT &&
|
||||||
|
pITD->contextForClient == F_CONTEXT_ICON &&
|
||||||
|
XtIsManaged(pITD->dialogBoxW) && ClientInWorkspace(ACTIVE_WS, pCD))
|
||||||
|
InstantTitleShowDialog(pCD);
|
||||||
|
}
|
||||||
|
|
||||||
|
static Boolean InstantTitleMakeDialog(PtrInstantTitleData pITD) {
|
||||||
|
Cardinal n;
|
||||||
|
Arg args[10];
|
||||||
|
XmString buttonStrings[3];
|
||||||
|
Widget dialogShellW, dialogBoxW, formW, cancelW, textFieldW;
|
||||||
|
Boolean *widgetsInitialized = &pITD->widgetsInitialized;
|
||||||
|
|
||||||
|
if (*widgetsInitialized) return True;
|
||||||
|
|
||||||
|
n = 0;
|
||||||
|
|
||||||
|
XtSetArg(args[n], XmNallowShellResize, True); ++n;
|
||||||
|
XtSetArg(args[n], XmNmwmFunctions,
|
||||||
|
MWM_FUNC_ALL | MWM_FUNC_MINIMIZE | MWM_FUNC_MAXIMIZE); ++n;
|
||||||
|
|
||||||
|
dialogShellW = pITD->dialogShellW = XtCreatePopupShell(
|
||||||
|
"instantTitleDialogShell", xmDialogShellWidgetClass,
|
||||||
|
pITD->pCDforClient->pSD->screenTopLevelW1, args, n);
|
||||||
|
|
||||||
|
if (!dialogShellW) goto err;
|
||||||
|
|
||||||
|
if (!DtWsmAddWorkspaceModifiedCallback(dialogShellW,
|
||||||
|
InstantTitleWorkspaceModifyCB, pITD)) goto err;
|
||||||
|
|
||||||
|
buttonStrings[0] = XmStringCreateLocalized((char *)_DtOkString);
|
||||||
|
buttonStrings[1] = XmStringCreateLocalized((char *)_DtCancelString);
|
||||||
|
buttonStrings[2] = XmStringCreateLocalized((char *)_DtHelpString);
|
||||||
|
|
||||||
|
n = 0;
|
||||||
|
|
||||||
|
XtSetArg(args[n], XmNallowOverlap, False); ++n;
|
||||||
|
XtSetArg(args[n], XmNdefaultPosition, False); ++n;
|
||||||
|
XtSetArg(args[n], XmNbuttonCount, 3); ++n;
|
||||||
|
XtSetArg(args[n], XmNbuttonLabelStrings, buttonStrings); ++n;
|
||||||
|
|
||||||
|
dialogBoxW = pITD->dialogBoxW = _DtCreateDialogBox(dialogShellW,
|
||||||
|
"instantTitleDialogBox", args, n);
|
||||||
|
|
||||||
|
XmStringFree(buttonStrings[0]);
|
||||||
|
XmStringFree(buttonStrings[1]);
|
||||||
|
XmStringFree(buttonStrings[2]);
|
||||||
|
|
||||||
|
if (!dialogBoxW) goto err;
|
||||||
|
|
||||||
|
XtAddCallback(dialogBoxW, XmNcallback, InstantTitleButtonCB, pITD);
|
||||||
|
XtAddCallback(dialogBoxW, XmNhelpCallback, WmDtWmTopicHelpCB,
|
||||||
|
WM_DT_WINDOWRENAME_TOPIC);
|
||||||
|
|
||||||
|
cancelW = _DtDialogBoxGetButton(dialogBoxW, 2);
|
||||||
|
|
||||||
|
if (!cancelW) goto err;
|
||||||
|
|
||||||
|
n = 0;
|
||||||
|
|
||||||
|
XtSetArg(args[n], XmNautoUnmanage, False); ++n;
|
||||||
|
XtSetArg(args[n], XmNcancelButton, cancelW); ++n;
|
||||||
|
|
||||||
|
XtSetValues (dialogBoxW, args, n);
|
||||||
|
|
||||||
|
formW = pITD->formW = XmCreateForm(dialogBoxW, "instantTitleForm", NULL, 0);
|
||||||
|
|
||||||
|
if (!formW) goto err;
|
||||||
|
|
||||||
|
n = 0;
|
||||||
|
|
||||||
|
XtSetArg(args[n], XmNtopAttachment, XmATTACH_POSITION); ++n;
|
||||||
|
XtSetArg(args[n], XmNleftAttachment, XmATTACH_FORM); ++n;
|
||||||
|
XtSetArg(args[n], XmNrightAttachment, XmATTACH_FORM); ++n;
|
||||||
|
XtSetArg(args[n], XmNbottomAttachment, XmATTACH_NONE); ++n;
|
||||||
|
XtSetArg(args[n], XmNmaxLength, FILENAME_MAX); ++n;
|
||||||
|
|
||||||
|
textFieldW = pITD->textFieldW = XmCreateTextField(formW,
|
||||||
|
"instantTitleTextField", args, n);
|
||||||
|
|
||||||
|
if (!textFieldW) goto err;
|
||||||
|
|
||||||
|
XtManageChild(dialogShellW);
|
||||||
|
XtManageChild(dialogBoxW);
|
||||||
|
XtManageChild(formW);
|
||||||
|
XtManageChild(cancelW);
|
||||||
|
XtManageChild(textFieldW);
|
||||||
|
|
||||||
|
DtWsmRemoveWorkspaceFunctions(DISPLAY1, XtWindow(dialogShellW));
|
||||||
|
|
||||||
|
*widgetsInitialized = True;
|
||||||
|
|
||||||
|
return True;
|
||||||
|
|
||||||
|
err:
|
||||||
|
if (dialogShellW) {
|
||||||
|
XtDestroyWidget(dialogShellW);
|
||||||
|
*widgetsInitialized = False;
|
||||||
|
}
|
||||||
|
|
||||||
|
Warning(GETMESSAGE(88, 1, "1 Unable to create instant title dialog."));
|
||||||
|
|
||||||
|
return False;
|
||||||
|
}
|
||||||
|
|
||||||
|
static void InstantTitleSetPosition(PtrInstantTitleData pITD) {
|
||||||
|
int x, y;
|
||||||
|
Dimension height;
|
||||||
|
Cardinal n;
|
||||||
|
Arg args[10];
|
||||||
|
XFontStruct *font;
|
||||||
|
Window windowGroup;
|
||||||
|
Widget dialogShellW = pITD->dialogShellW;
|
||||||
|
Context context = pITD->contextForClient;
|
||||||
|
ClientData *pCD = pITD->pCDforClient;
|
||||||
|
WmScreenData *pSD = pCD->pSD;
|
||||||
|
|
||||||
|
XtVaGetValues(dialogShellW, XmNheight, &height, NULL);
|
||||||
|
|
||||||
|
if (wmGD.positionIsFrame) {
|
||||||
|
if (pSD->decoupleTitleAppearance)
|
||||||
|
font = pSD->clientTitleAppearance.font;
|
||||||
|
else
|
||||||
|
font = pSD->clientAppearance.font;
|
||||||
|
|
||||||
|
height += TEXT_HEIGHT(font) + (2 * pSD->frameBorderWidth);
|
||||||
|
}
|
||||||
|
|
||||||
|
GetSystemMenuPosition(pCD, &x, &y, height, context);
|
||||||
|
|
||||||
|
if (context == F_CONTEXT_ICON) {
|
||||||
|
if (pSD->useIconBox && P_ICON_BOX(pCD))
|
||||||
|
windowGroup = P_ICON_BOX(pCD)->pCD_iconBox->client;
|
||||||
|
else
|
||||||
|
windowGroup = XtUnspecifiedWindowGroup;
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
windowGroup = pCD->client;
|
||||||
|
}
|
||||||
|
|
||||||
|
n = 0;
|
||||||
|
|
||||||
|
XtSetArg(args[n], XmNx, x); ++n;
|
||||||
|
XtSetArg(args[n], XmNy, y); ++n;
|
||||||
|
XtSetArg(args[n], XmNtransientFor, NULL); ++n;
|
||||||
|
XtSetArg(args[n], XmNwindowGroup, windowGroup); ++n;
|
||||||
|
|
||||||
|
XtSetValues(dialogShellW, args, n);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @brief Shows the instant title dialog.
|
||||||
|
*
|
||||||
|
* @param pClientData
|
||||||
|
* @param context
|
||||||
|
*/
|
||||||
|
void InstantTitleShowDialog(ClientData *pClientData) {
|
||||||
|
Widget dialogBoxW, textFieldW;
|
||||||
|
Context context;
|
||||||
|
ClientData *pCD = pClientData->transientLeader ?
|
||||||
|
FindTransientTreeLeader(pClientData) : pClientData;
|
||||||
|
WmScreenData *pSD = pCD->pSD;
|
||||||
|
PtrInstantTitleData pITD = &pSD->instantTitleData;
|
||||||
|
|
||||||
|
switch (pCD->clientState) {
|
||||||
|
case MINIMIZED_STATE:
|
||||||
|
context = F_CONTEXT_ICON;
|
||||||
|
break;
|
||||||
|
case NORMAL_STATE:
|
||||||
|
case MAXIMIZED_STATE:
|
||||||
|
context = F_CONTEXT_WINDOW;
|
||||||
|
break;
|
||||||
|
default:
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
pITD->pCDforClient = pCD;
|
||||||
|
pITD->contextForClient = context;
|
||||||
|
|
||||||
|
if (!InstantTitleMakeDialog(pITD)) return;
|
||||||
|
|
||||||
|
InstantTitleGetTitle(pITD);
|
||||||
|
InstantTitleSetPosition(pITD);
|
||||||
|
|
||||||
|
dialogBoxW = pITD->dialogBoxW;
|
||||||
|
XtUnmanageChild(dialogBoxW);
|
||||||
|
XtManageChild(dialogBoxW);
|
||||||
|
|
||||||
|
textFieldW = pITD->textFieldW;
|
||||||
|
XmProcessTraversal(textFieldW, XmTRAVERSE_CURRENT);
|
||||||
|
XmTextSetSelection(textFieldW, 0, XmTextGetLastPosition(textFieldW),
|
||||||
|
CurrentTime);
|
||||||
|
}
|
32
cde/programs/dtwm/WmInstantTitle.h
Normal file
32
cde/programs/dtwm/WmInstantTitle.h
Normal file
|
@ -0,0 +1,32 @@
|
||||||
|
/*
|
||||||
|
* CDE - Common Desktop Environment
|
||||||
|
*
|
||||||
|
* (c) Copyright 1993-2012 The Open Group
|
||||||
|
* (c) Copyright 2012-2022 CDE Project contributors, see
|
||||||
|
* CONTRIBUTORS for details
|
||||||
|
*
|
||||||
|
* These libraries and programs are free software; you can
|
||||||
|
* redistribute them and/or modify them under the terms of the GNU
|
||||||
|
* Lesser General Public License as published by the Free Software
|
||||||
|
* Foundation; either version 2 of the License, or (at your option)
|
||||||
|
* any later version.
|
||||||
|
*
|
||||||
|
* These libraries and programs are distributed in the hope that
|
||||||
|
* they will be useful, but WITHOUT ANY WARRANTY; without even the
|
||||||
|
* implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
|
||||||
|
* PURPOSE. See the GNU Lesser General Public License for more
|
||||||
|
* details.
|
||||||
|
*
|
||||||
|
* You should have received a copy of the GNU Lesser General Public
|
||||||
|
* License along with these libraries and programs; if not, write
|
||||||
|
* to the Free Software Foundation, Inc., 51 Franklin Street, Fifth
|
||||||
|
* Floor, Boston, MA 02110-1301 USA
|
||||||
|
*/
|
||||||
|
|
||||||
|
#ifndef WMINSTANTTITLE_H
|
||||||
|
#define WMINSTANTTITLE_H
|
||||||
|
|
||||||
|
void InstantTitleHideDialog(ClientData *pClientData);
|
||||||
|
void InstantTitleShowDialog(ClientData *pClientData);
|
||||||
|
|
||||||
|
#endif
|
|
@ -50,6 +50,7 @@
|
||||||
#include "WmIDecor.h"
|
#include "WmIDecor.h"
|
||||||
#include "WmIconBox.h"
|
#include "WmIconBox.h"
|
||||||
#include "WmImage.h"
|
#include "WmImage.h"
|
||||||
|
#include "WmInstantTitle.h"
|
||||||
#include "WmKeyFocus.h"
|
#include "WmKeyFocus.h"
|
||||||
#include "WmPanelP.h" /* typedef needed in WmManage.h */
|
#include "WmPanelP.h" /* typedef needed in WmManage.h */
|
||||||
#include <Dt/Message.h>
|
#include <Dt/Message.h>
|
||||||
|
@ -957,6 +958,8 @@ void WithdrawWindow (ClientData *pCD)
|
||||||
pCD->pSD->presence.pCDforClient = NULL;
|
pCD->pSD->presence.pCDforClient = NULL;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
InstantTitleHideDialog (pCD);
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Check to see if the window is being unmanaged because the window
|
* Check to see if the window is being unmanaged because the window
|
||||||
* was destroyed.
|
* was destroyed.
|
||||||
|
@ -1136,6 +1139,11 @@ void WithdrawWindow (ClientData *pCD)
|
||||||
XmStringFree (pCD->iconTitle);
|
XmStringFree (pCD->iconTitle);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (pCD->instantTitle)
|
||||||
|
{
|
||||||
|
XmStringFree (pCD->instantTitle);
|
||||||
|
}
|
||||||
|
|
||||||
if (pCD->clientCmapCount > 0)
|
if (pCD->clientCmapCount > 0)
|
||||||
{
|
{
|
||||||
for (i = 0; i < pCD->clientCmapCount; i++)
|
for (i = 0; i < pCD->clientCmapCount; i++)
|
||||||
|
|
|
@ -323,14 +323,14 @@ wspSetWindowName(
|
||||||
if (pPres->contextForClient == F_CONTEXT_ICON)
|
if (pPres->contextForClient == F_CONTEXT_ICON)
|
||||||
{
|
{
|
||||||
XtSetArg (nameArgs[nameN], XmNlabelString,
|
XtSetArg (nameArgs[nameN], XmNlabelString,
|
||||||
pPres->pCDforClient->iconTitle); nameN++;
|
ICON_DISPLAY_TITLE(pPres->pCDforClient)); nameN++;
|
||||||
XtSetArg (labelArgs[labelN], XmNlabelString,
|
XtSetArg (labelArgs[labelN], XmNlabelString,
|
||||||
iconLabelString); labelN++;
|
iconLabelString); labelN++;
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
XtSetArg (nameArgs[nameN], XmNlabelString,
|
XtSetArg (nameArgs[nameN], XmNlabelString,
|
||||||
pPres->pCDforClient->clientTitle); nameN++;
|
CLIENT_DISPLAY_TITLE(pPres->pCDforClient)); nameN++;
|
||||||
XtSetArg (labelArgs[labelN], XmNlabelString,
|
XtSetArg (labelArgs[labelN], XmNlabelString,
|
||||||
windowLabelString); labelN++;
|
windowLabelString); labelN++;
|
||||||
}
|
}
|
||||||
|
|
|
@ -36,6 +36,7 @@
|
||||||
|
|
||||||
#include "WmGlobal.h"
|
#include "WmGlobal.h"
|
||||||
#include "WmICCC.h"
|
#include "WmICCC.h"
|
||||||
|
#include <limits.h>
|
||||||
#include <stdio.h>
|
#include <stdio.h>
|
||||||
#include <Dt/WsmP.h>
|
#include <Dt/WsmP.h>
|
||||||
#include <X11/Xatom.h>
|
#include <X11/Xatom.h>
|
||||||
|
@ -1887,6 +1888,55 @@ HasProperty (
|
||||||
|
|
||||||
} /* END OF FUNCTION HasProperty */
|
} /* END OF FUNCTION HasProperty */
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @brief This function calls XGetWindowProperty to get the UTF8_STRING
|
||||||
|
* property.
|
||||||
|
*
|
||||||
|
* @param display
|
||||||
|
* @param w
|
||||||
|
* @param property
|
||||||
|
*
|
||||||
|
* @return A string or NULL.
|
||||||
|
*/
|
||||||
|
char *GetUtf8String (Display *display, Window w, Atom property)
|
||||||
|
{
|
||||||
|
int actualFormat;
|
||||||
|
char *propReturn;
|
||||||
|
unsigned long nitems, leftover;
|
||||||
|
Atom actualType;
|
||||||
|
Atom reqType = wmGD.xa_UTF8_STRING;
|
||||||
|
|
||||||
|
if (XGetWindowProperty (display, w, property, 0L, USHRT_MAX, False, reqType,
|
||||||
|
&actualType, &actualFormat, &nitems, &leftover,
|
||||||
|
(unsigned char **) &propReturn) != Success)
|
||||||
|
goto err;
|
||||||
|
|
||||||
|
if (!nitems) goto err;
|
||||||
|
if (actualType != reqType) goto err;
|
||||||
|
|
||||||
|
return propReturn;
|
||||||
|
|
||||||
|
err:
|
||||||
|
if (propReturn) XFree (propReturn);
|
||||||
|
return NULL;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @brief This function calls XChangeProperty to set the UTF8_STRING property.
|
||||||
|
*
|
||||||
|
* @param display
|
||||||
|
* @param w
|
||||||
|
* @param property
|
||||||
|
* @param s
|
||||||
|
*/
|
||||||
|
void SetUtf8String (Display *display, Window w, Atom property, const char *s)
|
||||||
|
{
|
||||||
|
size_t len;
|
||||||
|
|
||||||
|
if (!(s && s[0])) return;
|
||||||
|
|
||||||
|
len = strnlen (s, USHRT_MAX);
|
||||||
|
|
||||||
|
XChangeProperty (display, w, property, wmGD.xa_UTF8_STRING, 8,
|
||||||
|
PropModeReplace, (unsigned char *)s, len);
|
||||||
|
}
|
||||||
|
|
|
@ -58,4 +58,6 @@ extern void SetCurrentWorkspaceProperty (WmScreenData *pSD);
|
||||||
extern void SetWorkspaceInfoProperty (WmWorkspaceData *pWS);
|
extern void SetWorkspaceInfoProperty (WmWorkspaceData *pWS);
|
||||||
extern void DeleteWorkspaceInfoProperty (WmWorkspaceData *pWS);
|
extern void DeleteWorkspaceInfoProperty (WmWorkspaceData *pWS);
|
||||||
extern char *WorkspacePropertyName (WmWorkspaceData *pWS);
|
extern char *WorkspacePropertyName (WmWorkspaceData *pWS);
|
||||||
|
extern char *GetUtf8String (Display *display, Window w, Atom property);
|
||||||
|
extern void SetUtf8String (Display *display, Window w, Atom property,
|
||||||
|
const char *s);
|
||||||
|
|
|
@ -194,6 +194,7 @@
|
||||||
#define WmNworkspaceController "workspaceController"
|
#define WmNworkspaceController "workspaceController"
|
||||||
#define WmNworkspacePresence "workspacePresence"
|
#define WmNworkspacePresence "workspacePresence"
|
||||||
#define WmNworkspaceSwitch "workspaceSwitch"
|
#define WmNworkspaceSwitch "workspaceSwitch"
|
||||||
|
#define WmNinstantTitle "instantTitle"
|
||||||
|
|
||||||
/* window manager client resource names: */
|
/* window manager client resource names: */
|
||||||
|
|
||||||
|
@ -356,6 +357,7 @@
|
||||||
#define WmCWorkspaceController "WorkspaceController"
|
#define WmCWorkspaceController "WorkspaceController"
|
||||||
#define WmCWorkspacePresence "WorkspacePresence"
|
#define WmCWorkspacePresence "WorkspacePresence"
|
||||||
#define WmCWorkspaceSwitch "WorkspaceSwitch"
|
#define WmCWorkspaceSwitch "WorkspaceSwitch"
|
||||||
|
#define WmCInstantTitle "InstantTitle"
|
||||||
|
|
||||||
/* window manager client resource names: */
|
/* window manager client resource names: */
|
||||||
|
|
||||||
|
|
|
@ -492,6 +492,11 @@ FunctionTableEntry functionTable[] = {
|
||||||
DtWM_FUNC_OCCUPY_WS,
|
DtWM_FUNC_OCCUPY_WS,
|
||||||
F_Remove,
|
F_Remove,
|
||||||
ParseWmFuncNoArg},
|
ParseWmFuncNoArg},
|
||||||
|
{"f.rename", F_CONTEXT_ROOT|F_CONTEXT_ICONBOX|F_SUBCONTEXT_IB_WICON,
|
||||||
|
CRS_ANY,
|
||||||
|
DtWM_FUNC_OCCUPY_WS,
|
||||||
|
F_Rename,
|
||||||
|
ParseWmFuncNoArg},
|
||||||
{"f.resize", F_CONTEXT_ICON|F_CONTEXT_ROOT|
|
{"f.resize", F_CONTEXT_ICON|F_CONTEXT_ROOT|
|
||||||
F_SUBCONTEXT_IB_IICON|F_SUBCONTEXT_IB_WICON,
|
F_SUBCONTEXT_IB_IICON|F_SUBCONTEXT_IB_WICON,
|
||||||
CRS_ANY,
|
CRS_ANY,
|
||||||
|
|
|
@ -164,6 +164,7 @@ char *builtinSystemMenu = BUILTINSYSTEMMENU;
|
||||||
Maximize _x f.maximize\n\
|
Maximize _x f.maximize\n\
|
||||||
Lower _L f.lower\n\
|
Lower _L f.lower\n\
|
||||||
no-label f.separator\n\
|
no-label f.separator\n\
|
||||||
|
\"Rename...\" _a f.rename\n\
|
||||||
\"Occupy Workspace...\" _O f.workspace_presence\n\
|
\"Occupy Workspace...\" _O f.workspace_presence\n\
|
||||||
\"Occupy All Workspaces\" _A f.occupy_all\n\
|
\"Occupy All Workspaces\" _A f.occupy_all\n\
|
||||||
\"Unoccupy Workspace\" _U f.remove\n\
|
\"Unoccupy Workspace\" _U f.remove\n\
|
||||||
|
@ -180,6 +181,7 @@ void InitBuiltinSystemMenu(void)
|
||||||
char *MinString = NULL;
|
char *MinString = NULL;
|
||||||
char *MaxString = NULL;
|
char *MaxString = NULL;
|
||||||
char *LowString = NULL;
|
char *LowString = NULL;
|
||||||
|
char *RenString = NULL;
|
||||||
char *OcpString = NULL;
|
char *OcpString = NULL;
|
||||||
char *OcaString = NULL;
|
char *OcaString = NULL;
|
||||||
char *RemString = NULL;
|
char *RemString = NULL;
|
||||||
|
@ -299,6 +301,21 @@ void InitBuiltinSystemMenu(void)
|
||||||
|
|
||||||
if (DtwmBehavior)
|
if (DtwmBehavior)
|
||||||
{
|
{
|
||||||
|
if(gotItAll)
|
||||||
|
{
|
||||||
|
tmpString = ((char *)GETMESSAGE(62, 70, "Rename\\.\\.\\. _a f.rename"));
|
||||||
|
if ((RenString =
|
||||||
|
(char *)XtMalloc ((unsigned int)
|
||||||
|
(strlen(tmpString) + 1))) == NULL)
|
||||||
|
{
|
||||||
|
Warning (((char *)GETMESSAGE(62, 14, "Insufficient memory for local default menu.")));
|
||||||
|
gotItAll = False;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
strcpy(RenString, tmpString);
|
||||||
|
}
|
||||||
|
}
|
||||||
if(gotItAll)
|
if(gotItAll)
|
||||||
{
|
{
|
||||||
tmpString = ((char *)GETMESSAGE(62, 55, "Occupy\\ Workspace\\.\\.\\. _O f.workspace_presence"));
|
tmpString = ((char *)GETMESSAGE(62, 55, "Occupy\\ Workspace\\.\\.\\. _O f.workspace_presence"));
|
||||||
|
@ -382,8 +399,8 @@ void InitBuiltinSystemMenu(void)
|
||||||
SizString, MinString, MaxString, LowString);
|
SizString, MinString, MaxString, LowString);
|
||||||
if (DtwmBehavior)
|
if (DtwmBehavior)
|
||||||
{
|
{
|
||||||
snprintf(dsmtemp, sizeof(dsmtemp), "%s%s\n%s\n%s\n no-label f.separator\n",
|
snprintf(dsmtemp, sizeof(dsmtemp), "%s%s\n%s\n%s\n%s\n no-label f.separator\n",
|
||||||
dsm, OcpString, OcaString, RemString);
|
dsm, RenString, OcpString, OcaString, RemString);
|
||||||
strcpy(dsm, dsmtemp);
|
strcpy(dsm, dsmtemp);
|
||||||
}
|
}
|
||||||
snprintf(dsmtemp, sizeof(dsmtemp), "%s%s\n}", dsm, CloString);
|
snprintf(dsmtemp, sizeof(dsmtemp), "%s%s\n}", dsm, CloString);
|
||||||
|
@ -422,6 +439,8 @@ void InitBuiltinSystemMenu(void)
|
||||||
XtFree(MaxString);
|
XtFree(MaxString);
|
||||||
if (LowString != NULL)
|
if (LowString != NULL)
|
||||||
XtFree(LowString);
|
XtFree(LowString);
|
||||||
|
if (RenString != NULL)
|
||||||
|
XtFree(RenString);
|
||||||
if (OcpString != NULL)
|
if (OcpString != NULL)
|
||||||
XtFree(OcpString);
|
XtFree(OcpString);
|
||||||
if (OcaString != NULL)
|
if (OcaString != NULL)
|
||||||
|
|
|
@ -221,6 +221,8 @@ InitClientData (Window clientWindow)
|
||||||
pCD->fullscreen = False;
|
pCD->fullscreen = False;
|
||||||
pCD->monitorSizeIsSet = False;
|
pCD->monitorSizeIsSet = False;
|
||||||
|
|
||||||
|
pCD->instantTitle = NULL;
|
||||||
|
|
||||||
for (i = 0; i < STRETCH_COUNT; ++i) pCD->clientStretchWin[i] = (Window)0L;
|
for (i = 0; i < STRETCH_COUNT; ++i) pCD->clientStretchWin[i] = (Window)0L;
|
||||||
|
|
||||||
return (pCD);
|
return (pCD);
|
||||||
|
@ -2201,11 +2203,7 @@ WmICCCMToXmString (XTextProperty *wmNameProp)
|
||||||
void
|
void
|
||||||
ProcessWmWindowTitle (ClientData *pCD, Boolean firstTime)
|
ProcessWmWindowTitle (ClientData *pCD, Boolean firstTime)
|
||||||
{
|
{
|
||||||
Atom actualType;
|
char *netStr;
|
||||||
int actualFormat;
|
|
||||||
unsigned long nitems;
|
|
||||||
unsigned long leftover;
|
|
||||||
char *netWmNameProp;
|
|
||||||
XTextProperty wmNameProp;
|
XTextProperty wmNameProp;
|
||||||
XmString title_xms = NULL;
|
XmString title_xms = NULL;
|
||||||
Window win = pCD->client;
|
Window win = pCD->client;
|
||||||
|
@ -2216,13 +2214,10 @@ ProcessWmWindowTitle (ClientData *pCD, Boolean firstTime)
|
||||||
(!firstTime || hasWmName || hasNetWmName))
|
(!firstTime || hasWmName || hasNetWmName))
|
||||||
{
|
{
|
||||||
if ((!firstTime || hasNetWmName) &&
|
if ((!firstTime || hasNetWmName) &&
|
||||||
XGetWindowProperty (DISPLAY, win, wmGD.xa__NET_WM_NAME, 0L,
|
(netStr = GetUtf8String (DISPLAY, win, wmGD.xa__NET_WM_NAME)))
|
||||||
1000000L, False, wmGD.xa_UTF8_STRING,
|
|
||||||
&actualType, &actualFormat, &nitems, &leftover,
|
|
||||||
(unsigned char **) &netWmNameProp) == Success)
|
|
||||||
{
|
{
|
||||||
title_xms = XmStringCreateLocalized (netWmNameProp);
|
title_xms = XmStringCreateLocalized (netStr);
|
||||||
XFree (netWmNameProp);
|
XFree (netStr);
|
||||||
}
|
}
|
||||||
else if ((!firstTime || hasWmName) &&
|
else if ((!firstTime || hasWmName) &&
|
||||||
XGetWMName(DISPLAY, win, &wmNameProp))
|
XGetWMName(DISPLAY, win, &wmNameProp))
|
||||||
|
@ -2275,6 +2270,14 @@ ProcessWmWindowTitle (ClientData *pCD, Boolean firstTime)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (firstTime && pCD->instantTitle == NULL &&
|
||||||
|
HasProperty (pCD, wmGD.xa__NET_WM_VISIBLE_NAME) &&
|
||||||
|
(netStr = GetUtf8String (DISPLAY, win, wmGD.xa__NET_WM_VISIBLE_NAME)))
|
||||||
|
{
|
||||||
|
pCD->instantTitle = XmStringCreateLocalized (netStr);
|
||||||
|
XFree (netStr);
|
||||||
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* If this is a tear-off menu, then make sure title text is not clipped
|
* If this is a tear-off menu, then make sure title text is not clipped
|
||||||
*/
|
*/
|
||||||
|
@ -2295,7 +2298,7 @@ ProcessWmWindowTitle (ClientData *pCD, Boolean firstTime)
|
||||||
/*
|
/*
|
||||||
* Calculations derived from GetTextBox() and GetFramePartInfo()
|
* Calculations derived from GetTextBox() and GetFramePartInfo()
|
||||||
*/
|
*/
|
||||||
minWidth = XmStringWidth(fontList, pCD->clientTitle) +
|
minWidth = XmStringWidth(fontList, CLIENT_DISPLAY_TITLE(pCD)) +
|
||||||
((pCD->dtwmBehaviors & DtWM_BEHAVIOR_SUBPANEL) ? 4 : 0) +
|
((pCD->dtwmBehaviors & DtWM_BEHAVIOR_SUBPANEL) ? 4 : 0) +
|
||||||
((decor & MWM_DECOR_MENU) ? boxdim : 0) +
|
((decor & MWM_DECOR_MENU) ? boxdim : 0) +
|
||||||
((decor & MWM_DECOR_MINIMIZE) ? boxdim : 0) +
|
((decor & MWM_DECOR_MINIMIZE) ? boxdim : 0) +
|
||||||
|
@ -2434,11 +2437,7 @@ FixSubpanelEmbeddedClientGeometry (ClientData *pCD)
|
||||||
void
|
void
|
||||||
ProcessWmIconTitle (ClientData *pCD, Boolean firstTime)
|
ProcessWmIconTitle (ClientData *pCD, Boolean firstTime)
|
||||||
{
|
{
|
||||||
Atom actualType;
|
char *netStr;
|
||||||
int actualFormat;
|
|
||||||
unsigned long nitems;
|
|
||||||
unsigned long leftover;
|
|
||||||
char *netWmIconNameProp;
|
|
||||||
XTextProperty wmIconNameProp;
|
XTextProperty wmIconNameProp;
|
||||||
XmString icon_xms = NULL;
|
XmString icon_xms = NULL;
|
||||||
Window win = pCD->client;
|
Window win = pCD->client;
|
||||||
|
@ -2450,13 +2449,10 @@ ProcessWmIconTitle (ClientData *pCD, Boolean firstTime)
|
||||||
(!firstTime || hasWmIconName || hasNetWmIconName))
|
(!firstTime || hasWmIconName || hasNetWmIconName))
|
||||||
{
|
{
|
||||||
if ((!firstTime || hasNetWmIconName) &&
|
if ((!firstTime || hasNetWmIconName) &&
|
||||||
XGetWindowProperty (DISPLAY, win, wmGD.xa__NET_WM_ICON_NAME, 0L,
|
(netStr = GetUtf8String (DISPLAY, win, wmGD.xa__NET_WM_ICON_NAME)))
|
||||||
1000000L, False, wmGD.xa_UTF8_STRING, &actualType,
|
|
||||||
&actualFormat, &nitems, &leftover,
|
|
||||||
(unsigned char **) &netWmIconNameProp) == Success)
|
|
||||||
{
|
{
|
||||||
icon_xms = XmStringCreateLocalized (netWmIconNameProp);
|
icon_xms = XmStringCreateLocalized (netStr);
|
||||||
XFree (netWmIconNameProp);
|
XFree (netStr);
|
||||||
}
|
}
|
||||||
else if ((!firstTime || hasWmIconName) &&
|
else if ((!firstTime || hasWmIconName) &&
|
||||||
XGetWMIconName (DISPLAY, win, &wmIconNameProp))
|
XGetWMIconName (DISPLAY, win, &wmIconNameProp))
|
||||||
|
@ -2498,6 +2494,14 @@ ProcessWmIconTitle (ClientData *pCD, Boolean firstTime)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (firstTime && pCD->instantTitle == NULL &&
|
||||||
|
HasProperty (pCD, wmGD.xa__NET_WM_VISIBLE_ICON_NAME) &&
|
||||||
|
(netStr = GetUtf8String (DISPLAY, win,
|
||||||
|
wmGD.xa__NET_WM_VISIBLE_ICON_NAME)))
|
||||||
|
{
|
||||||
|
pCD->instantTitle = XmStringCreateLocalized (netStr);
|
||||||
|
XFree (netStr);
|
||||||
|
}
|
||||||
} /* END OF FUNCTION ProcessWmIconTitle */
|
} /* END OF FUNCTION ProcessWmIconTitle */
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -44,6 +44,9 @@
|
||||||
#include "WmWrkspace.h"
|
#include "WmWrkspace.h"
|
||||||
#include <Dt/Session.h>
|
#include <Dt/Session.h>
|
||||||
|
|
||||||
|
extern XtPointer _XmStringUngenerate(XmString, XmStringTag,
|
||||||
|
XmTextType, XmTextType);
|
||||||
|
|
||||||
typedef struct _ProxyClientInfo
|
typedef struct _ProxyClientInfo
|
||||||
{
|
{
|
||||||
int screen;
|
int screen;
|
||||||
|
@ -72,6 +75,7 @@ static char *screenStr = "%s.screen";
|
||||||
static char *workspacesStr = "%s.workspaces";
|
static char *workspacesStr = "%s.workspaces";
|
||||||
static char *iconXPosStr = "%s.iconPos.x.%s";
|
static char *iconXPosStr = "%s.iconPos.x.%s";
|
||||||
static char *iconYPosStr = "%s.iconPos.y.%s";
|
static char *iconYPosStr = "%s.iconPos.y.%s";
|
||||||
|
static char *instantTitleStr = "%s.instantTitle";
|
||||||
|
|
||||||
/* Header for private database. */
|
/* Header for private database. */
|
||||||
static char *dbHeader = "\
|
static char *dbHeader = "\
|
||||||
|
@ -109,6 +113,9 @@ static void buildDBFileName(char [MAXPATHLEN], Boolean);
|
||||||
/* Get string of client's workspaces. */
|
/* Get string of client's workspaces. */
|
||||||
static char *getClientWorkspaces(ClientData *);
|
static char *getClientWorkspaces(ClientData *);
|
||||||
|
|
||||||
|
/* Get string of client's instant title. */
|
||||||
|
static char *getClientInstantTitle(ClientData *);
|
||||||
|
|
||||||
/* List-of-clients utilities. */
|
/* List-of-clients utilities. */
|
||||||
static Boolean addClientToList(ClientData ***, int *, ClientData *);
|
static Boolean addClientToList(ClientData ***, int *, ClientData *);
|
||||||
static int clientWorkspaceCompare(const void *, const void *);
|
static int clientWorkspaceCompare(const void *, const void *);
|
||||||
|
@ -292,6 +299,15 @@ getClientWorkspaces(ClientData *pCD)
|
||||||
return cwsP;
|
return cwsP;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static char *
|
||||||
|
getClientInstantTitle(ClientData *pCD)
|
||||||
|
{
|
||||||
|
if (!pCD->instantTitle) return NULL;
|
||||||
|
|
||||||
|
return _XmStringUngenerate(pCD->instantTitle, NULL, XmCHARSET_TEXT,
|
||||||
|
XmCHARSET_TEXT);
|
||||||
|
}
|
||||||
|
|
||||||
static Boolean
|
static Boolean
|
||||||
addClientToList(ClientData ***cdList, int *nClients, ClientData *pCD)
|
addClientToList(ClientData ***cdList, int *nClients, ClientData *pCD)
|
||||||
{
|
{
|
||||||
|
@ -421,6 +437,13 @@ findXSMPClientDBMatch(ClientData *pCD, char **workSpaceNamesP)
|
||||||
{
|
{
|
||||||
*workSpaceNamesP = XtNewString(resourcePtr);
|
*workSpaceNamesP = XtNewString(resourcePtr);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if ((resourcePtr = getXSMPResource(pCD, WMSAVE_INSTANT_TITLE,
|
||||||
|
instantTitleStr))
|
||||||
|
!= (char *)NULL)
|
||||||
|
{
|
||||||
|
pCD->instantTitle = XmStringCreateLocalized(resourcePtr);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Always return True for XSMP clients. */
|
/* Always return True for XSMP clients. */
|
||||||
|
@ -611,6 +634,13 @@ findProxyClientDBMatch(ClientData *pCD, char **workSpaceNamesP)
|
||||||
*workSpaceNamesP = XtNewString(resourcePtr);
|
*workSpaceNamesP = XtNewString(resourcePtr);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if ((resourcePtr =
|
||||||
|
getClientResource(proxyClientID, instantTitleStr))
|
||||||
|
!= (char *)NULL)
|
||||||
|
{
|
||||||
|
pCD->instantTitle = XmStringCreateLocalized(resourcePtr);
|
||||||
|
}
|
||||||
|
|
||||||
return True;
|
return True;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -722,6 +752,18 @@ saveXSMPClient(FILE *fp, ClientData *pCD)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (SAVE_RESOURCE(pCD, WMSAVE_INSTANT_TITLE))
|
||||||
|
{
|
||||||
|
char *title = getClientInstantTitle(pCD);
|
||||||
|
|
||||||
|
if (title)
|
||||||
|
{
|
||||||
|
fprintf(fp, instantTitleStr, clientID);
|
||||||
|
fprintf(fp, strArg, title);
|
||||||
|
XtFree(title);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
return True;
|
return True;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -737,6 +779,7 @@ saveProxyClient(FILE *fp, ClientData *pCD, int clientIDNum)
|
||||||
int clientX, clientY;
|
int clientX, clientY;
|
||||||
unsigned int clientWd, clientHt;
|
unsigned int clientWd, clientHt;
|
||||||
char *clientWorkspaces;
|
char *clientWorkspaces;
|
||||||
|
char *instantTitle;
|
||||||
|
|
||||||
if (!getProxyClientInfo(pCD, &proxyClientInfo))
|
if (!getProxyClientInfo(pCD, &proxyClientInfo))
|
||||||
return False;
|
return False;
|
||||||
|
@ -806,6 +849,14 @@ saveProxyClient(FILE *fp, ClientData *pCD, int clientIDNum)
|
||||||
XtFree(clientWorkspaces);
|
XtFree(clientWorkspaces);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
instantTitle = getClientInstantTitle(pCD);
|
||||||
|
if (instantTitle)
|
||||||
|
{
|
||||||
|
fprintf(fp, instantTitleStr, clientID);
|
||||||
|
fprintf(fp, strArg, instantTitle);
|
||||||
|
XtFree(instantTitle);
|
||||||
|
}
|
||||||
|
|
||||||
return True;
|
return True;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -49,6 +49,7 @@
|
||||||
#define WMSAVE_WORKSPACES (1L << 5)
|
#define WMSAVE_WORKSPACES (1L << 5)
|
||||||
#define WMSAVE_ICON_X (1L << 6)
|
#define WMSAVE_ICON_X (1L << 6)
|
||||||
#define WMSAVE_ICON_Y (1L << 7)
|
#define WMSAVE_ICON_Y (1L << 7)
|
||||||
|
#define WMSAVE_INSTANT_TITLE (1L << 8)
|
||||||
|
|
||||||
extern void AddSMCallbacks(void);
|
extern void AddSMCallbacks(void);
|
||||||
extern void ResignFromSM(void);
|
extern void ResignFromSM(void);
|
||||||
|
|
|
@ -1,4 +1,3 @@
|
||||||
|
|
||||||
$ "$TOG: dtwm.msg /main/6 1999/09/20 15:18:52 mgreess $";
|
$ "$TOG: dtwm.msg /main/6 1999/09/20 15:18:52 mgreess $";
|
||||||
|
|
||||||
$ *************************************<+>*************************************
|
$ *************************************<+>*************************************
|
||||||
|
@ -487,7 +486,7 @@ $ Messages 1, 3, 5, 7, 9, 11, 13, 15, 17 and 19 are not used.
|
||||||
$ Messages 2, 4, 6, 8, 10, 12, 14, 16, 18, 20 to 29, 31, 33 to 38, 66-68,
|
$ Messages 2, 4, 6, 8, 10, 12, 14, 16, 18, 20 to 29, 31, 33 to 38, 66-68,
|
||||||
$ go to an errorlog and do NOT need to be localized.
|
$ go to an errorlog and do NOT need to be localized.
|
||||||
$ Messages 30 and 39-47 are not used.
|
$ Messages 30 and 39-47 are not used.
|
||||||
$ Only messages 32, 48-57 and 59 need to be localized.
|
$ Only messages 32, 48-57, 59 and 70 need to be localized.
|
||||||
|
|
||||||
$ This message goes to an error file.
|
$ This message goes to an error file.
|
||||||
$ YOU DON'T NEED TO LOCALIZE THIS MESSAGE.
|
$ YOU DON'T NEED TO LOCALIZE THIS MESSAGE.
|
||||||
|
@ -629,6 +628,9 @@ $ YOU DON'T NEED TO LOCALIZE MESSAGES 66 TO 68.
|
||||||
67 Key bindings %s not found, using builtin key bindings\n
|
67 Key bindings %s not found, using builtin key bindings\n
|
||||||
68 Button bindings %s not found, using builtin button bindings\n
|
68 Button bindings %s not found, using builtin button bindings\n
|
||||||
|
|
||||||
|
$ This item renames the title of a window
|
||||||
|
70 Rename\\.\\.\\. _a f.rename
|
||||||
|
|
||||||
$set 70
|
$set 70
|
||||||
$ THIS COMMENT FOR DTWM TEAM ONLY -- WmWinInfo.c --
|
$ THIS COMMENT FOR DTWM TEAM ONLY -- WmWinInfo.c --
|
||||||
$ This entire set is written to an error file.
|
$ This entire set is written to an error file.
|
||||||
|
@ -784,6 +786,11 @@ $ Messages 5 and 6 are old. They are replaced by messaged 8 and 9.
|
||||||
8 There is already an icon of this name.
|
8 There is already an icon of this name.
|
||||||
9 Workspace Manager - Icon Action Error
|
9 Workspace Manager - Icon Action Error
|
||||||
|
|
||||||
|
$set 88
|
||||||
|
$ THIS COMMENT FOR DTWM TEAM ONLY -- WmInstantTitle.c --
|
||||||
|
$ This message goes to an error file.
|
||||||
|
$ YOU DON'T NEED TO LOCALIZE THIS MESSAGE.
|
||||||
|
1 Unable to create instant title dialog.
|
||||||
|
|
||||||
$set 99
|
$set 99
|
||||||
$ DO NOT TRANSLATE THESE MESSAGES
|
$ DO NOT TRANSLATE THESE MESSAGES
|
||||||
|
@ -793,4 +800,3 @@ $ These messages are used for the version information.
|
||||||
$quote "
|
$quote "
|
||||||
1 "@(#)version_goes_here"
|
1 "@(#)version_goes_here"
|
||||||
2 "\n@(#)_DtMessage catalog source $TOG: dtwm.msg /main/6 1999/09/20 15:18:52 mgreess $"
|
2 "\n@(#)_DtMessage catalog source $TOG: dtwm.msg /main/6 1999/09/20 15:18:52 mgreess $"
|
||||||
|
|
||||||
|
|
|
@ -94,3 +94,6 @@ $ Dtwm*FrontPanel*lowResFontList
|
||||||
19 -dt-interface system-medium-r-normal-xs*-*-*-*-*-*-*-*-*:
|
19 -dt-interface system-medium-r-normal-xs*-*-*-*-*-*-*-*-*:
|
||||||
$ Dtwm*icon*fontList
|
$ Dtwm*icon*fontList
|
||||||
20 -dt-interface system-medium-r-normal-s*-*-*-*-*-*-*-*-*:
|
20 -dt-interface system-medium-r-normal-s*-*-*-*-*-*-*-*-*:
|
||||||
|
|
||||||
|
$ Dtwm*instantTitleDialogShell.title
|
||||||
|
21 Rename
|
||||||
|
|
|
@ -114,3 +114,6 @@ $ Dtwm*FrontPanel*lowResFontList
|
||||||
$ Dtwm*icon*fontList
|
$ Dtwm*icon*fontList
|
||||||
|
|
||||||
20 "-dt-interface system-medium-r-normal-s*-*-*-*-*-*-*-*-*:"
|
20 "-dt-interface system-medium-r-normal-s*-*-*-*-*-*-*-*-*:"
|
||||||
|
|
||||||
|
$ Dtwm*instantTitleDialogShell.title
|
||||||
|
21 Umbenennen
|
||||||
|
|
|
@ -595,7 +595,8 @@ $ Messages 1, 3, 5, 7, 9, 11, 13, 15, 17 and 19 are not used.
|
||||||
$ Messages 2, 4, 6, 8, 10, 12, 14, 16, 18, 20 to 29, 31, 33 to 38, go to
|
$ Messages 2, 4, 6, 8, 10, 12, 14, 16, 18, 20 to 29, 31, 33 to 38, go to
|
||||||
$ an errorlog and do NOT need to be localized.
|
$ an errorlog and do NOT need to be localized.
|
||||||
$ Messages 30 and 39-47 are not used.
|
$ Messages 30 and 39-47 are not used.
|
||||||
$ Only messages 32, 48-57 and 59 need to be localized.
|
$ Only messages 32, 48-57, 59 and 70 need to be localized.
|
||||||
|
|
||||||
$ This message goes to an error file.
|
$ This message goes to an error file.
|
||||||
$ YOU DON'T NEED TO LOCALIZE THIS MESSAGE.
|
$ YOU DON'T NEED TO LOCALIZE THIS MESSAGE.
|
||||||
|
|
||||||
|
@ -753,6 +754,9 @@ $ YOU DON'T NEED TO LOCALIZE MESSAGES 66 TO 68.
|
||||||
|
|
||||||
68 "Button bindings %s not found, using builtin button bindings\n"
|
68 "Button bindings %s not found, using builtin button bindings\n"
|
||||||
|
|
||||||
|
$ This item renames the title of a window
|
||||||
|
70 Umbenennen\\.\\.\\. _a f.rename
|
||||||
|
|
||||||
$set 70 Redefine set#
|
$set 70 Redefine set#
|
||||||
|
|
||||||
$ THIS COMMENT FOR DTWM TEAM ONLY -- WmWinInfo.c --
|
$ THIS COMMENT FOR DTWM TEAM ONLY -- WmWinInfo.c --
|
||||||
|
@ -973,6 +977,12 @@ $ Messages 5 and 6 are old. They are replaced by messaged 8 and 9.
|
||||||
|
|
||||||
9 "Arbeitsbereichssteuerung - Fehler bei Symbolaktion"
|
9 "Arbeitsbereichssteuerung - Fehler bei Symbolaktion"
|
||||||
|
|
||||||
|
$set 88
|
||||||
|
$ THIS COMMENT FOR DTWM TEAM ONLY -- WmInstantTitle.c --
|
||||||
|
$ This message goes to an error file.
|
||||||
|
$ YOU DON'T NEED TO LOCALIZE THIS MESSAGE.
|
||||||
|
1 Unable to create instant title dialog.
|
||||||
|
|
||||||
$set 99 Redefine set#
|
$set 99 Redefine set#
|
||||||
|
|
||||||
$ DO NOT TRANSLATE THESE MESSAGES
|
$ DO NOT TRANSLATE THESE MESSAGES
|
||||||
|
|
|
@ -94,3 +94,6 @@ $ Dtwm*FrontPanel*lowResFontList
|
||||||
19 -dt-interface system-medium-r-normal-xs*-*-*-*-*-*-*-*-*:
|
19 -dt-interface system-medium-r-normal-xs*-*-*-*-*-*-*-*-*:
|
||||||
$ Dtwm*icon*fontList
|
$ Dtwm*icon*fontList
|
||||||
20 -dt-interface system-medium-r-normal-s*-*-*-*-*-*-*-*-*:
|
20 -dt-interface system-medium-r-normal-s*-*-*-*-*-*-*-*-*:
|
||||||
|
|
||||||
|
$ Dtwm*instantTitleDialogShell.title
|
||||||
|
21 Μετονομασία
|
||||||
|
|
|
@ -1,4 +1,3 @@
|
||||||
|
|
||||||
$ "$TOG: dtwm.msg /main/6 1999/09/20 15:18:52 mgreess $";
|
$ "$TOG: dtwm.msg /main/6 1999/09/20 15:18:52 mgreess $";
|
||||||
|
|
||||||
$ *************************************<+>*************************************
|
$ *************************************<+>*************************************
|
||||||
|
@ -483,7 +482,7 @@ $ Messages 1, 3, 5, 7, 9, 11, 13, 15, 17 and 19 are not used.
|
||||||
$ Messages 2, 4, 6, 8, 10, 12, 14, 16, 18, 20 to 29, 31, 33 to 38, 66-68,
|
$ Messages 2, 4, 6, 8, 10, 12, 14, 16, 18, 20 to 29, 31, 33 to 38, 66-68,
|
||||||
$ go to an errorlog and do NOT need to be localized.
|
$ go to an errorlog and do NOT need to be localized.
|
||||||
$ Messages 30 and 39-47 are not used.
|
$ Messages 30 and 39-47 are not used.
|
||||||
$ Only messages 32, 48-57 and 59 need to be localized.
|
$ Only messages 32, 48-57, 59 and 70 need to be localized.
|
||||||
|
|
||||||
$ This message goes to an error file.
|
$ This message goes to an error file.
|
||||||
$ YOU DON'T NEED TO LOCALIZE THIS MESSAGE.
|
$ YOU DON'T NEED TO LOCALIZE THIS MESSAGE.
|
||||||
|
@ -625,6 +624,9 @@ $ YOU DON'T NEED TO LOCALIZE MESSAGES 66 TO 68.
|
||||||
67 Key bindings %s not found, using builtin key bindings\n
|
67 Key bindings %s not found, using builtin key bindings\n
|
||||||
68 Button bindings %s not found, using builtin button bindings\n
|
68 Button bindings %s not found, using builtin button bindings\n
|
||||||
|
|
||||||
|
$ This item renames the title of a window
|
||||||
|
70 Μετονομασία\\.\\.\\. _a f.rename
|
||||||
|
|
||||||
$set 70
|
$set 70
|
||||||
$ THIS COMMENT FOR DTWM TEAM ONLY -- WmWinInfo.c --
|
$ THIS COMMENT FOR DTWM TEAM ONLY -- WmWinInfo.c --
|
||||||
$ This entire set is written to an error file.
|
$ This entire set is written to an error file.
|
||||||
|
@ -780,6 +782,11 @@ $ Messages 5 and 6 are old. They are replaced by messaged 8 and 9.
|
||||||
8 Υπάρχει ήδη ένα εικονίδιο με αυτό το όνομα.
|
8 Υπάρχει ήδη ένα εικονίδιο με αυτό το όνομα.
|
||||||
9 Διαχειριστής επιφάνειας εργασίας - Σφάλμα ενέργειας εικονιδίου
|
9 Διαχειριστής επιφάνειας εργασίας - Σφάλμα ενέργειας εικονιδίου
|
||||||
|
|
||||||
|
$set 88
|
||||||
|
$ THIS COMMENT FOR DTWM TEAM ONLY -- WmInstantTitle.c --
|
||||||
|
$ This message goes to an error file.
|
||||||
|
$ YOU DON'T NEED TO LOCALIZE THIS MESSAGE.
|
||||||
|
1 Unable to create instant title dialog.
|
||||||
|
|
||||||
$set 99
|
$set 99
|
||||||
$ DO NOT TRANSLATE THESE MESSAGES
|
$ DO NOT TRANSLATE THESE MESSAGES
|
||||||
|
|
|
@ -114,3 +114,6 @@ $ Dtwm*FrontPanel*lowResFontList
|
||||||
$ Dtwm*icon*fontList
|
$ Dtwm*icon*fontList
|
||||||
|
|
||||||
20 "-dt-interface system-medium-r-normal-s*-*-*-*-*-*-*-*-*:"
|
20 "-dt-interface system-medium-r-normal-s*-*-*-*-*-*-*-*-*:"
|
||||||
|
|
||||||
|
$ Dtwm*instantTitleDialogShell.title
|
||||||
|
21 Renombrar
|
||||||
|
|
|
@ -591,7 +591,8 @@ $ Messages 1, 3, 5, 7, 9, 11, 13, 15, 17 and 19 are not used.
|
||||||
$ Messages 2, 4, 6, 8, 10, 12, 14, 16, 18, 20 to 29, 31, 33 to 38, 66-68,
|
$ Messages 2, 4, 6, 8, 10, 12, 14, 16, 18, 20 to 29, 31, 33 to 38, 66-68,
|
||||||
$ go to an errorlog and do NOT need to be localized.
|
$ go to an errorlog and do NOT need to be localized.
|
||||||
$ Messages 30 and 39-47 are not used.
|
$ Messages 30 and 39-47 are not used.
|
||||||
$ Only messages 32, 48-57 and 59 need to be localized.
|
$ Only messages 32, 48-57, 59 and 70 need to be localized.
|
||||||
|
|
||||||
$ This message goes to an error file.
|
$ This message goes to an error file.
|
||||||
$ YOU DON'T NEED TO LOCALIZE THIS MESSAGE.
|
$ YOU DON'T NEED TO LOCALIZE THIS MESSAGE.
|
||||||
|
|
||||||
|
@ -749,6 +750,9 @@ $ YOU DON'T NEED TO LOCALIZE MESSAGES 66 TO 68.
|
||||||
|
|
||||||
68 "No se han encontrado las asignaciones de botones %s, se utilizan las asignaciones de botones incorporadas\n"
|
68 "No se han encontrado las asignaciones de botones %s, se utilizan las asignaciones de botones incorporadas\n"
|
||||||
|
|
||||||
|
$ This item renames the title of a window
|
||||||
|
70 Renombrar\\.\\.\\. _a f.rename
|
||||||
|
|
||||||
$set 70 Redefine set#
|
$set 70 Redefine set#
|
||||||
|
|
||||||
$ THIS COMMENT FOR DTWM TEAM ONLY -- WmWinInfo.c --
|
$ THIS COMMENT FOR DTWM TEAM ONLY -- WmWinInfo.c --
|
||||||
|
@ -967,6 +971,12 @@ $ Messages 5 and 6 are old. They are replaced by messaged 8 and 9.
|
||||||
|
|
||||||
9 "Gestor de Espacios de Trabajos - Error Acción Icono"
|
9 "Gestor de Espacios de Trabajos - Error Acción Icono"
|
||||||
|
|
||||||
|
$set 88
|
||||||
|
$ THIS COMMENT FOR DTWM TEAM ONLY -- WmInstantTitle.c --
|
||||||
|
$ This message goes to an error file.
|
||||||
|
$ YOU DON'T NEED TO LOCALIZE THIS MESSAGE.
|
||||||
|
1 Unable to create instant title dialog.
|
||||||
|
|
||||||
$set 99 Redefine set#
|
$set 99 Redefine set#
|
||||||
|
|
||||||
$ DO NOT TRANSLATE THESE MESSAGES
|
$ DO NOT TRANSLATE THESE MESSAGES
|
||||||
|
|
|
@ -114,3 +114,6 @@ $ Dtwm*FrontPanel*lowResFontList
|
||||||
$ Dtwm*icon*fontList
|
$ Dtwm*icon*fontList
|
||||||
|
|
||||||
20 "-dt-interface system-medium-r-normal-s*-*-*-*-*-*-*-*-*:"
|
20 "-dt-interface system-medium-r-normal-s*-*-*-*-*-*-*-*-*:"
|
||||||
|
|
||||||
|
$ Dtwm*instantTitleDialogShell.title
|
||||||
|
21 Renommer
|
||||||
|
|
|
@ -591,7 +591,8 @@ $ Messages 1, 3, 5, 7, 9, 11, 13, 15, 17 and 19 are not used.
|
||||||
$ Messages 2, 4, 6, 8, 10, 12, 14, 16, 18, 20 to 29, 31, 33 to 38, 66-68,
|
$ Messages 2, 4, 6, 8, 10, 12, 14, 16, 18, 20 to 29, 31, 33 to 38, 66-68,
|
||||||
$ go to an errorlog and do NOT need to be localized.
|
$ go to an errorlog and do NOT need to be localized.
|
||||||
$ Messages 30 and 39-47 are not used.
|
$ Messages 30 and 39-47 are not used.
|
||||||
$ Only messages 32, 48-57 and 59 need to be localized.
|
$ Only messages 32, 48-57, 59 and 70 need to be localized.
|
||||||
|
|
||||||
$ This message goes to an error file.
|
$ This message goes to an error file.
|
||||||
$ YOU DON'T NEED TO LOCALIZE THIS MESSAGE.
|
$ YOU DON'T NEED TO LOCALIZE THIS MESSAGE.
|
||||||
|
|
||||||
|
@ -749,6 +750,9 @@ $ YOU DON'T NEED TO LOCALIZE MESSAGES 66 TO 68.
|
||||||
|
|
||||||
68 "Button bindings %s not found, using builtin button bindings\n"
|
68 "Button bindings %s not found, using builtin button bindings\n"
|
||||||
|
|
||||||
|
$ This item renames the title of a window
|
||||||
|
70 Renommer\\.\\.\\. _a f.rename
|
||||||
|
|
||||||
$set 70 Redefine set#
|
$set 70 Redefine set#
|
||||||
|
|
||||||
$ THIS COMMENT FOR DTWM TEAM ONLY -- WmWinInfo.c --
|
$ THIS COMMENT FOR DTWM TEAM ONLY -- WmWinInfo.c --
|
||||||
|
@ -965,6 +969,12 @@ $ Messages 5 and 6 are old. They are replaced by messaged 8 and 9.
|
||||||
|
|
||||||
9 "Gestionnaire de l'espace de travail - Erreur d'action sur icône"
|
9 "Gestionnaire de l'espace de travail - Erreur d'action sur icône"
|
||||||
|
|
||||||
|
$set 88
|
||||||
|
$ THIS COMMENT FOR DTWM TEAM ONLY -- WmInstantTitle.c --
|
||||||
|
$ This message goes to an error file.
|
||||||
|
$ YOU DON'T NEED TO LOCALIZE THIS MESSAGE.
|
||||||
|
1 Unable to create instant title dialog.
|
||||||
|
|
||||||
$set 99 Redefine set#
|
$set 99 Redefine set#
|
||||||
|
|
||||||
$ DO NOT TRANSLATE THESE MESSAGES
|
$ DO NOT TRANSLATE THESE MESSAGES
|
||||||
|
|
|
@ -94,3 +94,6 @@ $ Dtwm*FrontPanel*lowResFontList
|
||||||
19 -dt-interface system-medium-r-normal-xs*-*-*-*-*-*-*-*-*:
|
19 -dt-interface system-medium-r-normal-xs*-*-*-*-*-*-*-*-*:
|
||||||
$ Dtwm*icon*fontList
|
$ Dtwm*icon*fontList
|
||||||
20 -dt-interface system-medium-r-normal-s*-*-*-*-*-*-*-*-*:
|
20 -dt-interface system-medium-r-normal-s*-*-*-*-*-*-*-*-*:
|
||||||
|
|
||||||
|
$ Dtwm*instantTitleDialogShell.title
|
||||||
|
21 Cambiare nome
|
||||||
|
|
|
@ -1,4 +1,3 @@
|
||||||
|
|
||||||
$ "$TOG: dtwm.msg /main/6 1999/09/20 15:20:44 mgreess $";
|
$ "$TOG: dtwm.msg /main/6 1999/09/20 15:20:44 mgreess $";
|
||||||
|
|
||||||
$ *************************************<+>*************************************
|
$ *************************************<+>*************************************
|
||||||
|
@ -487,7 +486,7 @@ $ Messages 1, 3, 5, 7, 9, 11, 13, 15, 17 and 19 are not used.
|
||||||
$ Messages 2, 4, 6, 8, 10, 12, 14, 16, 18, 20 to 29, 31, 33 to 38, 66-68,
|
$ Messages 2, 4, 6, 8, 10, 12, 14, 16, 18, 20 to 29, 31, 33 to 38, 66-68,
|
||||||
$ go to an errorlog and do NOT need to be localized.
|
$ go to an errorlog and do NOT need to be localized.
|
||||||
$ Messages 30 and 39-47 are not used.
|
$ Messages 30 and 39-47 are not used.
|
||||||
$ Only messages 32, 48-57 and 59 need to be localized.
|
$ Only messages 32, 48-57, 59 and 70 need to be localized.
|
||||||
|
|
||||||
$ This message goes to an error file.
|
$ This message goes to an error file.
|
||||||
$ YOU DON'T NEED TO LOCALIZE THIS MESSAGE.
|
$ YOU DON'T NEED TO LOCALIZE THIS MESSAGE.
|
||||||
|
@ -629,6 +628,9 @@ $ YOU DON'T NEED TO LOCALIZE MESSAGES 66 TO 68.
|
||||||
67 Key bindings %s not found, using builtin key bindings\n
|
67 Key bindings %s not found, using builtin key bindings\n
|
||||||
68 Button bindings %s not found, using builtin button bindings\n
|
68 Button bindings %s not found, using builtin button bindings\n
|
||||||
|
|
||||||
|
$ This item renames the title of a window
|
||||||
|
70 Cambiare\\ nome\\.\\.\\. _a f.rename
|
||||||
|
|
||||||
$set 70
|
$set 70
|
||||||
$ THIS COMMENT FOR DTWM TEAM ONLY -- WmWinInfo.c --
|
$ THIS COMMENT FOR DTWM TEAM ONLY -- WmWinInfo.c --
|
||||||
$ This entire set is written to an error file.
|
$ This entire set is written to an error file.
|
||||||
|
@ -784,6 +786,11 @@ $ Messages 5 and 6 are old. They are replaced by messaged 8 and 9.
|
||||||
8 Esiste già un'icona con il nome specificato.
|
8 Esiste già un'icona con il nome specificato.
|
||||||
9 Gestione dello spazio di lavoro - Errore nell'azione sull'icona
|
9 Gestione dello spazio di lavoro - Errore nell'azione sull'icona
|
||||||
|
|
||||||
|
$set 88
|
||||||
|
$ THIS COMMENT FOR DTWM TEAM ONLY -- WmInstantTitle.c --
|
||||||
|
$ This message goes to an error file.
|
||||||
|
$ YOU DON'T NEED TO LOCALIZE THIS MESSAGE.
|
||||||
|
1 Unable to create instant title dialog.
|
||||||
|
|
||||||
$set 99
|
$set 99
|
||||||
$ DO NOT TRANSLATE THESE MESSAGES
|
$ DO NOT TRANSLATE THESE MESSAGES
|
||||||
|
@ -793,4 +800,3 @@ $ These messages are used for the version information.
|
||||||
$quote "
|
$quote "
|
||||||
1 "@(#)version_goes_here"
|
1 "@(#)version_goes_here"
|
||||||
2 "\n@(#)_DtMessage catalog source $TOG: dtwm.msg /main/6 1999/09/20 15:20:44 mgreess $"
|
2 "\n@(#)_DtMessage catalog source $TOG: dtwm.msg /main/6 1999/09/20 15:20:44 mgreess $"
|
||||||
|
|
||||||
|
|
|
@ -88,3 +88,6 @@ $ Dtwm*FrontPanel*lowResFontList
|
||||||
19 -dt-interface system-medium-r-normal-xs*-*-*-*-*-*-*-*-*:
|
19 -dt-interface system-medium-r-normal-xs*-*-*-*-*-*-*-*-*:
|
||||||
$ Dtwm*icon*fontList
|
$ Dtwm*icon*fontList
|
||||||
20 -dt-interface system-medium-r-normal-s*-*-*-*-*-*-*-*-*:
|
20 -dt-interface system-medium-r-normal-s*-*-*-*-*-*-*-*-*:
|
||||||
|
|
||||||
|
$ Dtwm*instantTitleDialogShell.title
|
||||||
|
21 名前の変更
|
||||||
|
|
|
@ -1,4 +1,3 @@
|
||||||
|
|
||||||
$ "$TOG: dtwm.msg /main/7 1999/09/20 15:21:12 mgreess $";
|
$ "$TOG: dtwm.msg /main/7 1999/09/20 15:21:12 mgreess $";
|
||||||
|
|
||||||
$ *************************************<+>*************************************
|
$ *************************************<+>*************************************
|
||||||
|
@ -485,7 +484,7 @@ $ Messages 1, 3, 5, 7, 9, 11, 13, 15, 17 and 19 are not used.
|
||||||
$ Messages 2, 4, 6, 8, 10, 12, 14, 16, 18, 20 to 29, 31, 33 to 38, 66-68,
|
$ Messages 2, 4, 6, 8, 10, 12, 14, 16, 18, 20 to 29, 31, 33 to 38, 66-68,
|
||||||
$ go to an errorlog and do NOT need to be localized.
|
$ go to an errorlog and do NOT need to be localized.
|
||||||
$ Messages 30 and 39-47 are not used.
|
$ Messages 30 and 39-47 are not used.
|
||||||
$ Only messages 32, 48-57 and 59 need to be localized.
|
$ Only messages 32, 48-57, 59 and 70 need to be localized.
|
||||||
|
|
||||||
$ This message goes to an error file.
|
$ This message goes to an error file.
|
||||||
$ YOU DON'T NEED TO LOCALIZE THIS MESSAGE.
|
$ YOU DON'T NEED TO LOCALIZE THIS MESSAGE.
|
||||||
|
@ -627,6 +626,9 @@ $ YOU DON'T NEED TO LOCALIZE MESSAGES 66 TO 68.
|
||||||
67 Key bindings %s not found, using builtin key bindings\n
|
67 Key bindings %s not found, using builtin key bindings\n
|
||||||
68 Button bindings %s not found, using builtin button bindings\n
|
68 Button bindings %s not found, using builtin button bindings\n
|
||||||
|
|
||||||
|
$ This item renames the title of a window
|
||||||
|
70 名前の変更\\.\\.\\. _a f.rename
|
||||||
|
|
||||||
$set 70
|
$set 70
|
||||||
$ THIS COMMENT FOR DTWM TEAM ONLY -- WmWinInfo.c --
|
$ THIS COMMENT FOR DTWM TEAM ONLY -- WmWinInfo.c --
|
||||||
$ This entire set is written to an error file.
|
$ This entire set is written to an error file.
|
||||||
|
@ -783,6 +785,11 @@ $ Messages 5 and 6 are old. They are replaced by messaged 8 and 9.
|
||||||
8 この名前のアイコンがすでに存在します。
|
8 この名前のアイコンがすでに存在します。
|
||||||
9 ワークスペース・マネージャ - アイコン・アクション・エラー
|
9 ワークスペース・マネージャ - アイコン・アクション・エラー
|
||||||
|
|
||||||
|
$set 88
|
||||||
|
$ THIS COMMENT FOR DTWM TEAM ONLY -- WmInstantTitle.c --
|
||||||
|
$ This message goes to an error file.
|
||||||
|
$ YOU DON'T NEED TO LOCALIZE THIS MESSAGE.
|
||||||
|
1 Unable to create instant title dialog.
|
||||||
|
|
||||||
$set 99
|
$set 99
|
||||||
$ DO NOT TRANSLATE THESE MESSAGES
|
$ DO NOT TRANSLATE THESE MESSAGES
|
||||||
|
@ -792,4 +799,3 @@ $ These messages are used for the version information.
|
||||||
$quote "
|
$quote "
|
||||||
1 "@(#)version_goes_here"
|
1 "@(#)version_goes_here"
|
||||||
2 "\n@(#)_DtMessage catalog source $TOG: dtwm.msg /main/7 1999/09/20 15:21:12 mgreess $"
|
2 "\n@(#)_DtMessage catalog source $TOG: dtwm.msg /main/7 1999/09/20 15:21:12 mgreess $"
|
||||||
|
|
||||||
|
|
|
@ -96,3 +96,6 @@ $ 19 -hp-batang-medium-r-normal--16-*-c-*:
|
||||||
$ Dtwm*icon*fontList
|
$ Dtwm*icon*fontList
|
||||||
$ 20 -hp-batang-medium-r-normal--16-*-c-*:
|
$ 20 -hp-batang-medium-r-normal--16-*-c-*:
|
||||||
20 -dt-interface system-medium-r-normal-s*-*-*-*-*-*-*-*-*:
|
20 -dt-interface system-medium-r-normal-s*-*-*-*-*-*-*-*-*:
|
||||||
|
|
||||||
|
$ Dtwm*instantTitleDialogShell.title
|
||||||
|
21 이름 바꾸기
|
||||||
|
|
|
@ -1,4 +1,3 @@
|
||||||
|
|
||||||
$ "$XConsortium: dtwm.msg /main/3 1995/11/08 13:19:16 rswiston $";
|
$ "$XConsortium: dtwm.msg /main/3 1995/11/08 13:19:16 rswiston $";
|
||||||
|
|
||||||
$ *************************************<+>*************************************
|
$ *************************************<+>*************************************
|
||||||
|
@ -462,6 +461,7 @@ $ Messages 2, 4, 6, 8, 10, 12, 14, 16, 18, 20 to 29, 31, 33 to 38, 66-68,
|
||||||
$ go to an errorlog and do NOT need to be localized.
|
$ go to an errorlog and do NOT need to be localized.
|
||||||
$ Messages 30 and 39-47 are not used.
|
$ Messages 30 and 39-47 are not used.
|
||||||
$ Only messages 32, 48-57 and 59 need to be localized.
|
$ Only messages 32, 48-57 and 59 need to be localized.
|
||||||
|
$ Only messages 32, 48-57, 59 and 70 need to be localized.
|
||||||
|
|
||||||
$ This message goes to an error file.
|
$ This message goes to an error file.
|
||||||
$ YOU DON'T NEED TO LOCALIZE THIS MESSAGE.
|
$ YOU DON'T NEED TO LOCALIZE THIS MESSAGE.
|
||||||
|
@ -603,6 +603,9 @@ $ YOU DON'T NEED TO LOCALIZE MESSAGES 66 TO 68.
|
||||||
67 키 묶기 %s을(를) 찾을 수 없습니다. 내장된 키 묶기를 사용합니다.
|
67 키 묶기 %s을(를) 찾을 수 없습니다. 내장된 키 묶기를 사용합니다.
|
||||||
68 단추 묶기 %s을(를) 찾을 수 없습니다. 내장된 단추 묶기를 사용합니다.
|
68 단추 묶기 %s을(를) 찾을 수 없습니다. 내장된 단추 묶기를 사용합니다.
|
||||||
|
|
||||||
|
$ This item renames the title of a window
|
||||||
|
70 이름\\ 바꾸기\\.\\.\\. _a f.rename
|
||||||
|
|
||||||
$set 70
|
$set 70
|
||||||
$ THIS COMMENT FOR DTWM TEAM ONLY -- WmWinInfo.c --
|
$ THIS COMMENT FOR DTWM TEAM ONLY -- WmWinInfo.c --
|
||||||
$ This entire set is written to an error file.
|
$ This entire set is written to an error file.
|
||||||
|
@ -758,6 +761,11 @@ $ Messages 5 and 6 are old. They are replaced by messaged 8 and 9.
|
||||||
8 이 이름의 아이콘이 이미 있습니다.
|
8 이 이름의 아이콘이 이미 있습니다.
|
||||||
9 작업장 관리자 - 아이콘 활동 오류
|
9 작업장 관리자 - 아이콘 활동 오류
|
||||||
|
|
||||||
|
$set 88
|
||||||
|
$ THIS COMMENT FOR DTWM TEAM ONLY -- WmInstantTitle.c --
|
||||||
|
$ This message goes to an error file.
|
||||||
|
$ YOU DON'T NEED TO LOCALIZE THIS MESSAGE.
|
||||||
|
1 Unable to create instant title dialog.
|
||||||
|
|
||||||
$set 99
|
$set 99
|
||||||
$ DO NOT TRANSLATE THESE MESSAGES
|
$ DO NOT TRANSLATE THESE MESSAGES
|
||||||
|
@ -767,4 +775,3 @@ $ These messages are used for the version information.
|
||||||
$quote "
|
$quote "
|
||||||
1 "@(#)version_goes_here"
|
1 "@(#)version_goes_here"
|
||||||
2 "\n@(#)_DtMessage catalog source $XConsortium: dtwm.msg /main/3 1995/11/08 13:19:16 rswiston $"
|
2 "\n@(#)_DtMessage catalog source $XConsortium: dtwm.msg /main/3 1995/11/08 13:19:16 rswiston $"
|
||||||
|
|
||||||
|
|
|
@ -88,3 +88,6 @@ $ Dtwm*FrontPanel*lowResFontList
|
||||||
19 -dt-interface system-medium-r-normal-xs*-*-*-*-*-*-*-*-*:
|
19 -dt-interface system-medium-r-normal-xs*-*-*-*-*-*-*-*-*:
|
||||||
$ Dtwm*icon*fontList
|
$ Dtwm*icon*fontList
|
||||||
20 -dt-interface system-medium-r-normal-s*-*-*-*-*-*-*-*-*:
|
20 -dt-interface system-medium-r-normal-s*-*-*-*-*-*-*-*-*:
|
||||||
|
|
||||||
|
$ Dtwm*instantTitleDialogShell.title
|
||||||
|
21 Byt namn
|
||||||
|
|
|
@ -1,4 +1,3 @@
|
||||||
|
|
||||||
$ "$XConsortium: dtwm.msg /main/4 1995/12/08 09:39:59 rswiston $";
|
$ "$XConsortium: dtwm.msg /main/4 1995/12/08 09:39:59 rswiston $";
|
||||||
|
|
||||||
$ *************************************<+>*************************************
|
$ *************************************<+>*************************************
|
||||||
|
@ -462,7 +461,7 @@ $ Messages 1, 3, 5, 7, 9, 11, 13, 15, 17 and 19 are not used.
|
||||||
$ Messages 2, 4, 6, 8, 10, 12, 14, 16, 18, 20 to 29, 31, 33 to 38, 66-68,
|
$ Messages 2, 4, 6, 8, 10, 12, 14, 16, 18, 20 to 29, 31, 33 to 38, 66-68,
|
||||||
$ go to an errorlog and do NOT need to be localized.
|
$ go to an errorlog and do NOT need to be localized.
|
||||||
$ Messages 30 and 39-47 are not used.
|
$ Messages 30 and 39-47 are not used.
|
||||||
$ Only messages 32, 48-57 and 59 need to be localized.
|
$ Only messages 32, 48-57, 59 and 70 need to be localized.
|
||||||
|
|
||||||
$ This message goes to an error file.
|
$ This message goes to an error file.
|
||||||
$ YOU DON'T NEED TO LOCALIZE THIS MESSAGE.
|
$ YOU DON'T NEED TO LOCALIZE THIS MESSAGE.
|
||||||
|
@ -604,6 +603,9 @@ $ YOU DON'T NEED TO LOCALIZE MESSAGES 66 TO 68.
|
||||||
67 Key bindings %s not found, using builtin key bindings\n
|
67 Key bindings %s not found, using builtin key bindings\n
|
||||||
68 Button bindings %s not found, using builtin button bindings\n
|
68 Button bindings %s not found, using builtin button bindings\n
|
||||||
|
|
||||||
|
$ This item renames the title of a window
|
||||||
|
70 Byt\\ namn\\.\\.\\. _a f.rename
|
||||||
|
|
||||||
$set 70
|
$set 70
|
||||||
$ THIS COMMENT FOR DTWM TEAM ONLY -- WmWinInfo.c --
|
$ THIS COMMENT FOR DTWM TEAM ONLY -- WmWinInfo.c --
|
||||||
$ This entire set is written to an error file.
|
$ This entire set is written to an error file.
|
||||||
|
@ -759,6 +761,11 @@ $ Messages 5 and 6 are old. They are replaced by messaged 8 and 9.
|
||||||
8 Det finns redan en ikon med detta namn.
|
8 Det finns redan en ikon med detta namn.
|
||||||
9 Arbetsytehanterare - fel vid ikonfunktion
|
9 Arbetsytehanterare - fel vid ikonfunktion
|
||||||
|
|
||||||
|
$set 88
|
||||||
|
$ THIS COMMENT FOR DTWM TEAM ONLY -- WmInstantTitle.c --
|
||||||
|
$ This message goes to an error file.
|
||||||
|
$ YOU DON'T NEED TO LOCALIZE THIS MESSAGE.
|
||||||
|
1 Unable to create instant title dialog.
|
||||||
|
|
||||||
$set 99
|
$set 99
|
||||||
$ DO NOT TRANSLATE THESE MESSAGES
|
$ DO NOT TRANSLATE THESE MESSAGES
|
||||||
|
@ -768,4 +775,3 @@ $ These messages are used for the version information.
|
||||||
$quote "
|
$quote "
|
||||||
1 "@(#)version_goes_here"
|
1 "@(#)version_goes_here"
|
||||||
2 "\n@(#)_DtMessage catalog source $XConsortium: dtwm.msg /main/4 1995/12/08 09:39:59 rswiston $"
|
2 "\n@(#)_DtMessage catalog source $XConsortium: dtwm.msg /main/4 1995/12/08 09:39:59 rswiston $"
|
||||||
|
|
||||||
|
|
|
@ -88,3 +88,6 @@ $ Dtwm*FrontPanel*lowResFontList
|
||||||
19 -dt-interface system-medium-r-normal-xs*-*-*-*-*-*-*-*-*:
|
19 -dt-interface system-medium-r-normal-xs*-*-*-*-*-*-*-*-*:
|
||||||
$ Dtwm*icon*fontList
|
$ Dtwm*icon*fontList
|
||||||
20 -dt-interface system-medium-r-normal-s*-*-*-*-*-*-*-*-*:
|
20 -dt-interface system-medium-r-normal-s*-*-*-*-*-*-*-*-*:
|
||||||
|
|
||||||
|
$ Dtwm*instantTitleDialogShell.title
|
||||||
|
21 换名
|
||||||
|
|
|
@ -1,4 +1,3 @@
|
||||||
|
|
||||||
$ "$XConsortium: dtwm.msg /main/3 1995/11/08 13:53:27 rswiston $";
|
$ "$XConsortium: dtwm.msg /main/3 1995/11/08 13:53:27 rswiston $";
|
||||||
|
|
||||||
$ *************************************<+>*************************************
|
$ *************************************<+>*************************************
|
||||||
|
@ -463,7 +462,7 @@ $ Messages 1, 3, 5, 7, 9, 11, 13, 15, 17 and 19 are not used.
|
||||||
$ Messages 2, 4, 6, 8, 10, 12, 14, 16, 18, 20 to 29, 31, 33 to 38, 66-68,
|
$ Messages 2, 4, 6, 8, 10, 12, 14, 16, 18, 20 to 29, 31, 33 to 38, 66-68,
|
||||||
$ go to an errorlog and do NOT need to be localized.
|
$ go to an errorlog and do NOT need to be localized.
|
||||||
$ Messages 30 and 39-47 are not used.
|
$ Messages 30 and 39-47 are not used.
|
||||||
$ Only messages 32, 48-57 and 59 need to be localized.
|
$ Only messages 32, 48-57, 59 and 70 need to be localized.
|
||||||
|
|
||||||
$ This message goes to an error file.
|
$ This message goes to an error file.
|
||||||
$ YOU DON'T NEED TO LOCALIZE THIS MESSAGE.
|
$ YOU DON'T NEED TO LOCALIZE THIS MESSAGE.
|
||||||
|
@ -604,6 +603,9 @@ $ YOU DON'T NEED TO LOCALIZE MESSAGES 66 TO 68.
|
||||||
67 Key bindings %s not found, using builtin key bindings\n
|
67 Key bindings %s not found, using builtin key bindings\n
|
||||||
68 Button bindings %s not found, using builtin button bindings\n
|
68 Button bindings %s not found, using builtin button bindings\n
|
||||||
|
|
||||||
|
$ This item renames the title of a window
|
||||||
|
70 换名\\.\\.\\. _a f.rename
|
||||||
|
|
||||||
$set 70
|
$set 70
|
||||||
$ THIS COMMENT FOR DTWM TEAM ONLY -- WmWinInfo.c --
|
$ THIS COMMENT FOR DTWM TEAM ONLY -- WmWinInfo.c --
|
||||||
$ This entire set is written to an error file.
|
$ This entire set is written to an error file.
|
||||||
|
@ -760,6 +762,11 @@ $ Messages 5 and 6 are old. They are replaced by messaged 8 and 9.
|
||||||
8 已经有一个此名字的图标了。
|
8 已经有一个此名字的图标了。
|
||||||
9 工作空间管理程序 - 图标动作出错
|
9 工作空间管理程序 - 图标动作出错
|
||||||
|
|
||||||
|
$set 88
|
||||||
|
$ THIS COMMENT FOR DTWM TEAM ONLY -- WmInstantTitle.c --
|
||||||
|
$ This message goes to an error file.
|
||||||
|
$ YOU DON'T NEED TO LOCALIZE THIS MESSAGE.
|
||||||
|
1 Unable to create instant title dialog.
|
||||||
|
|
||||||
$set 99
|
$set 99
|
||||||
$ DO NOT TRANSLATE THESE MESSAGES
|
$ DO NOT TRANSLATE THESE MESSAGES
|
||||||
|
@ -769,4 +776,3 @@ $ These messages are used for the version information.
|
||||||
$quote "
|
$quote "
|
||||||
1 "@(#)version_goes_here"
|
1 "@(#)version_goes_here"
|
||||||
2 "\n@(#)_DtMessage catalog source $XConsortium: dtwm.msg /main/3 1995/11/08 13:53:27 rswiston $"
|
2 "\n@(#)_DtMessage catalog source $XConsortium: dtwm.msg /main/3 1995/11/08 13:53:27 rswiston $"
|
||||||
|
|
||||||
|
|
|
@ -88,3 +88,6 @@ $ Dtwm*FrontPanel*lowResFontList
|
||||||
19 -dt-interface user-medium-r-normal-s*-*-*-*-*-*-*-*-*:
|
19 -dt-interface user-medium-r-normal-s*-*-*-*-*-*-*-*-*:
|
||||||
$ Dtwm*icon*fontList
|
$ Dtwm*icon*fontList
|
||||||
20 -dt-interface user-medium-r-normal-s*-*-*-*-*-*-*-*-*:
|
20 -dt-interface user-medium-r-normal-s*-*-*-*-*-*-*-*-*:
|
||||||
|
|
||||||
|
$ Dtwm*instantTitleDialogShell.title
|
||||||
|
21 改名
|
||||||
|
|
|
@ -1,4 +1,3 @@
|
||||||
|
|
||||||
$ "$XConsortium: dtwm.msg /main/3 1995/11/08 14:09:06 rswiston $";
|
$ "$XConsortium: dtwm.msg /main/3 1995/11/08 14:09:06 rswiston $";
|
||||||
|
|
||||||
$ *************************************<+>*************************************
|
$ *************************************<+>*************************************
|
||||||
|
@ -462,7 +461,7 @@ $ Messages 1, 3, 5, 7, 9, 11, 13, 15, 17 and 19 are not used.
|
||||||
$ Messages 2, 4, 6, 8, 10, 12, 14, 16, 18, 20 to 29, 31, 33 to 38, 66-68,
|
$ Messages 2, 4, 6, 8, 10, 12, 14, 16, 18, 20 to 29, 31, 33 to 38, 66-68,
|
||||||
$ go to an errorlog and do NOT need to be localized.
|
$ go to an errorlog and do NOT need to be localized.
|
||||||
$ Messages 30 and 39-47 are not used.
|
$ Messages 30 and 39-47 are not used.
|
||||||
$ Only messages 32, 48-57 and 59 need to be localized.
|
$ Only messages 32, 48-57, 59 and 70 need to be localized.
|
||||||
|
|
||||||
$ This message goes to an error file.
|
$ This message goes to an error file.
|
||||||
$ YOU DON'T NEED TO LOCALIZE THIS MESSAGE.
|
$ YOU DON'T NEED TO LOCALIZE THIS MESSAGE.
|
||||||
|
@ -604,6 +603,9 @@ $ YOU DON'T NEED TO LOCALIZE MESSAGES 66 TO 68.
|
||||||
67 Key bindings %s not found, using builtin key bindings\n
|
67 Key bindings %s not found, using builtin key bindings\n
|
||||||
68 Button bindings %s not found, using builtin button bindings\n
|
68 Button bindings %s not found, using builtin button bindings\n
|
||||||
|
|
||||||
|
$ This item renames the title of a window
|
||||||
|
70 改名\\.\\.\\. _a f.rename
|
||||||
|
|
||||||
$set 70
|
$set 70
|
||||||
$ THIS COMMENT FOR DTWM TEAM ONLY -- WmWinInfo.c --
|
$ THIS COMMENT FOR DTWM TEAM ONLY -- WmWinInfo.c --
|
||||||
$ This entire set is written to an error file.
|
$ This entire set is written to an error file.
|
||||||
|
@ -759,6 +761,11 @@ $ Messages 5 and 6 are old. They are replaced by messaged 8 and 9.
|
||||||
8 已有圖像使用該名稱。
|
8 已有圖像使用該名稱。
|
||||||
9 工作空間管理者 - 圖像動作錯誤
|
9 工作空間管理者 - 圖像動作錯誤
|
||||||
|
|
||||||
|
$set 88
|
||||||
|
$ THIS COMMENT FOR DTWM TEAM ONLY -- WmInstantTitle.c --
|
||||||
|
$ This message goes to an error file.
|
||||||
|
$ YOU DON'T NEED TO LOCALIZE THIS MESSAGE.
|
||||||
|
1 Unable to create instant title dialog.
|
||||||
|
|
||||||
$set 99
|
$set 99
|
||||||
$ DO NOT TRANSLATE THESE MESSAGES
|
$ DO NOT TRANSLATE THESE MESSAGES
|
||||||
|
@ -768,4 +775,3 @@ $ These messages are used for the version information.
|
||||||
$quote "
|
$quote "
|
||||||
1 "@(#)version_goes_here"
|
1 "@(#)version_goes_here"
|
||||||
2 "\n@(#)_DtMessage catalog source $XConsortium: dtwm.msg /main/3 1995/11/08 14:09:06 rswiston $"
|
2 "\n@(#)_DtMessage catalog source $XConsortium: dtwm.msg /main/3 1995/11/08 14:09:06 rswiston $"
|
||||||
|
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue