• Skip to content
  • Skip to link menu
KDE 4.1 API Reference
  • KDE API Reference
  • API Reference
  • Sitemap
  • Contact Us
 

KWin

atoms.cpp

Go to the documentation of this file.
00001 /********************************************************************
00002  KWin - the KDE window manager
00003  This file is part of the KDE project.
00004 
00005 Copyright (C) 1999, 2000 Matthias Ettrich <ettrich@kde.org>
00006 Copyright (C) 2003 Lubos Lunak <l.lunak@kde.org>
00007 
00008 This program is free software; you can redistribute it and/or modify
00009 it under the terms of the GNU General Public License as published by
00010 the Free Software Foundation; either version 2 of the License, or
00011 (at your option) any later version.
00012 
00013 This program is distributed in the hope that it will be useful,
00014 but WITHOUT ANY WARRANTY; without even the implied warranty of
00015 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00016 GNU General Public License for more details.
00017 
00018 You should have received a copy of the GNU General Public License
00019 along with this program.  If not, see <http://www.gnu.org/licenses/>.
00020 *********************************************************************/
00021 
00022 #include "atoms.h"
00023 #include "utils.h"
00024 #include <assert.h>
00025 
00026 namespace KWin
00027 {
00028 
00029 Atoms::Atoms()
00030     {
00031 
00032     const int max = 50;
00033     Atom* atoms[max];
00034     char* names[max];
00035     Atom atoms_return[max];
00036     int n = 0;
00037 
00038     atoms[n] = &kwin_running;
00039     names[n++] = (char *) "KWIN_RUNNING";
00040 
00041     atoms[n] = &wm_protocols;
00042     names[n++] = (char *) "WM_PROTOCOLS";
00043 
00044     atoms[n] = &wm_delete_window;
00045     names[n++] = (char *) "WM_DELETE_WINDOW";
00046 
00047     atoms[n] = &wm_take_focus;
00048     names[n++] = (char *) "WM_TAKE_FOCUS";
00049 
00050     atoms[n] = &wm_change_state;
00051     names[n++] = (char *) "WM_CHANGE_STATE";
00052 
00053     atoms[n] = &wm_client_leader;
00054     names[n++] = (char *) "WM_CLIENT_LEADER";
00055 
00056     atoms[n] = &wm_window_role;
00057     names[n++] = (char *) "WM_WINDOW_ROLE";
00058 
00059     atoms[n] = &wm_state;
00060     names[n++] = (char *) "WM_STATE";
00061 
00062     atoms[n] = &sm_client_id;
00063     names[n++] = (char *) "SM_CLIENT_ID";
00064 
00065     atoms[n] = &motif_wm_hints;
00066     names[n++] = (char *) "_MOTIF_WM_HINTS";
00067 
00068     atoms[n] = &net_wm_context_help;
00069     names[n++] = (char *) "_NET_WM_CONTEXT_HELP";
00070 
00071     atoms[n] = &net_wm_ping;
00072     names[n++] = (char *) "_NET_WM_PING";
00073 
00074     atoms[n] = &kde_wm_change_state;
00075     names[n++] = (char *) "_KDE_WM_CHANGE_STATE";
00076 
00077     atoms[n] = &net_wm_user_time;
00078     names[n++] = (char *) "_NET_WM_USER_TIME";
00079     atoms[n] = &kde_net_wm_user_creation_time;
00080     names[n++] = (char *) "_KDE_NET_WM_USER_CREATION_TIME";
00081 
00082     atoms[n] = &kde_system_tray_embedding;
00083     names[n++] = (char*) "_KDE_SYSTEM_TRAY_EMBEDDING";
00084     
00085     atoms[n] = &net_wm_take_activity;
00086     names[n++] = (char*) "_NET_WM_TAKE_ACTIVITY";
00087     
00088     atoms[n] = &net_wm_window_opacity;
00089     names[n++] = (char*) "_NET_WM_WINDOW_OPACITY";
00090 
00091     Atom fake;
00092     atoms[n] = &fake;
00093     names[n++] = (char *) "_DT_SM_WINDOW_INFO";
00094     
00095     atoms[n] = &xdnd_aware;
00096     names[n++] = (char*) "XdndAware";
00097     atoms[n] = &xdnd_position;
00098     names[n++] = (char*) "XdndPosition";
00099     
00100     atoms[n] = &net_frame_extents;
00101     names[n++] = (char*) "_NET_FRAME_EXTENTS";
00102     atoms[n] = &kde_net_wm_frame_strut;
00103     names[n++] = (char*) "_KDE_NET_WM_FRAME_STRUT";
00104     
00105     atoms[n] = &net_wm_sync_request_counter;
00106     names[n++] = (char*) "_NET_WM_SYNC_REQUEST_COUNTER";
00107 
00108     atoms[n] = &net_wm_sync_request;
00109     names[n++] = (char*) "_NET_WM_SYNC_REQUEST";
00110 
00111     assert( n <= max );
00112 
00113     XInternAtoms( display(), names, n, false, atoms_return );
00114     for (int i = 0; i < n; i++ )
00115         *atoms[i] = atoms_return[i];
00116     }
00117 
00118 } // namespace

KWin

Skip menu "KWin"
  • Main Page
  • Namespace List
  • Class Hierarchy
  • Alphabetical List
  • Class List
  • File List
  • Namespace Members
  • Class Members
  • Related Pages

API Reference

Skip menu "API Reference"
  • KWin
  •   KWin Libraries
  • Libraries
  •   libkworkspace
  •   libplasma
  •   libsolidcontrol
  •   libtaskmanager
  • Plasma
  •   Animators
  •   Applets
  •   Engines
  • Solid Modules
Generated for API Reference by doxygen 1.5.4
This website is maintained by Adriaan de Groot and Allen Winter.
KDE® and the K Desktop Environment® logo are registered trademarks of KDE e.V. | Legal